.elementor-kit-8{--e-global-color-primary:#215974;--e-global-color-secondary:#0F2530;--e-global-color-text:#6B7883;--e-global-color-accent:#2FC4D6;--e-global-color-bdblhov:#163B4F;--e-global-color-bdpanel:#14313D;--e-global-color-bdfoot:#0A1A22;--e-global-color-bdbrdrk:#24485A;--e-global-color-bdbrdsf:#1E3D4B;--e-global-color-bdbrdft:#1C3440;--e-global-color-bdsteel:#6994A8;--e-global-color-bdslate:#72798B;--e-global-color-bdgreyw:#5C6A74;--e-global-color-bdmuted:#8B959E;--e-global-color-bdlodk:#DFE0E5;--e-global-color-bdlodks:#B9C7CF;--e-global-color-bdmondk:#9FB6C2;--e-global-color-bdmonds:#7F96A3;--e-global-color-bdmonft:#8FA3AF;--e-global-color-bdlinkd:#CFE0E8;--e-global-color-bdwhite:#FFFFFF;--e-global-color-bdtint:#F4F7F9;--e-global-color-bdinput:#FBFBFC;--e-global-color-bdhair:#E6E9EC;--e-global-color-bdnavnk:#2B3A42;--e-global-color-bddash:#B9C1C9;--e-global-typography-primary-font-family:"Archivo";--e-global-typography-primary-font-size:62px;--e-global-typography-primary-font-weight:600;--e-global-typography-primary-line-height:1.04em;--e-global-typography-primary-letter-spacing:-0.025em;--e-global-typography-secondary-font-family:"Archivo";--e-global-typography-secondary-font-size:40px;--e-global-typography-secondary-font-weight:600;--e-global-typography-secondary-line-height:1.1em;--e-global-typography-secondary-letter-spacing:-0.02em;--e-global-typography-text-font-family:"IBM Plex Sans";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.62em;--e-global-typography-accent-font-family:"IBM Plex Mono";--e-global-typography-accent-font-size:11.5px;--e-global-typography-accent-font-weight:400;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-line-height:1.6em;--e-global-typography-accent-letter-spacing:0.14em;--e-global-typography-bdh3-font-family:"Archivo";--e-global-typography-bdh3-font-size:34px;--e-global-typography-bdh3-font-weight:600;--e-global-typography-bdh3-line-height:1.12em;--e-global-typography-bdh3-letter-spacing:-0.02em;--e-global-typography-bdh3ct-font-family:"Archivo";--e-global-typography-bdh3ct-font-size:36px;--e-global-typography-bdh3ct-font-weight:600;--e-global-typography-bdh3ct-line-height:1.12em;--e-global-typography-bdh3ct-letter-spacing:-0.02em;--e-global-typography-bdcard-font-family:"Archivo";--e-global-typography-bdcard-font-size:21px;--e-global-typography-bdcard-font-weight:600;--e-global-typography-bdcard-line-height:1.2em;--e-global-typography-bdtile-font-family:"Archivo";--e-global-typography-bdtile-font-size:19px;--e-global-typography-bdtile-font-weight:600;--e-global-typography-bdtile-line-height:1.25em;--e-global-typography-bdpill-font-family:"Archivo";--e-global-typography-bdpill-font-size:18px;--e-global-typography-bdpill-font-weight:600;--e-global-typography-bdpill-line-height:1.3em;--e-global-typography-bdlead-font-family:"IBM Plex Sans";--e-global-typography-bdlead-font-size:19px;--e-global-typography-bdlead-font-weight:300;--e-global-typography-bdlead-line-height:1.62em;--e-global-typography-bdbodylg-font-family:"IBM Plex Sans";--e-global-typography-bdbodylg-font-size:17px;--e-global-typography-bdbodylg-font-weight:300;--e-global-typography-bdbodylg-line-height:1.68em;--e-global-typography-bdbodymd-font-family:"IBM Plex Sans";--e-global-typography-bdbodymd-font-size:16.5px;--e-global-typography-bdbodymd-font-weight:300;--e-global-typography-bdbodymd-line-height:1.66em;--e-global-typography-bdbodysm-font-family:"IBM Plex Sans";--e-global-typography-bdbodysm-font-size:14.5px;--e-global-typography-bdbodysm-font-weight:400;--e-global-typography-bdbodysm-line-height:1.6em;--e-global-typography-bdbodyxs-font-family:"IBM Plex Sans";--e-global-typography-bdbodyxs-font-size:13.5px;--e-global-typography-bdbodyxs-font-weight:400;--e-global-typography-bdbodyxs-line-height:1.5em;--e-global-typography-bdbtn-font-family:"IBM Plex Sans";--e-global-typography-bdbtn-font-size:15px;--e-global-typography-bdbtn-font-weight:600;--e-global-typography-bdbtn-line-height:1.4em;--e-global-typography-bdnav-font-family:"IBM Plex Sans";--e-global-typography-bdnav-font-size:14.5px;--e-global-typography-bdnav-font-weight:500;--e-global-typography-bdnav-line-height:1.4em;--e-global-typography-bdmonoc-font-family:"IBM Plex Mono";--e-global-typography-bdmonoc-font-size:11px;--e-global-typography-bdmonoc-font-weight:400;--e-global-typography-bdmonoc-text-transform:uppercase;--e-global-typography-bdmonoc-line-height:1.6em;--e-global-typography-bdmonoc-letter-spacing:0.14em;--e-global-typography-bdmonos-font-family:"IBM Plex Mono";--e-global-typography-bdmonos-font-size:12px;--e-global-typography-bdmonos-font-weight:400;--e-global-typography-bdmonos-text-transform:uppercase;--e-global-typography-bdmonos-line-height:1.6em;--e-global-typography-bdmonos-letter-spacing:0.16em;--e-global-typography-bdsmall-font-family:"IBM Plex Sans";--e-global-typography-bdsmall-font-size:13px;--e-global-typography-bdsmall-font-weight:400;--e-global-typography-bdsmall-line-height:1.5em;color:#6B7883;font-family:"IBM Plex Sans", Sans-serif;font-size:16px;font-weight:400;line-height:1.62em;}.elementor-kit-8 button,.elementor-kit-8 input[type="button"],.elementor-kit-8 input[type="submit"],.elementor-kit-8 .elementor-button{background-color:#215974;font-family:"IBM Plex Sans", Sans-serif;font-size:15px;font-weight:600;color:#FFFFFF;border-radius:8px 8px 8px 8px;padding:16px 30px 16px 30px;}.elementor-kit-8 button:hover,.elementor-kit-8 button:focus,.elementor-kit-8 input[type="button"]:hover,.elementor-kit-8 input[type="button"]:focus,.elementor-kit-8 input[type="submit"]:hover,.elementor-kit-8 input[type="submit"]:focus,.elementor-kit-8 .elementor-button:hover,.elementor-kit-8 .elementor-button:focus{background-color:#163B4F;color:#FFFFFF;}.elementor-kit-8 e-page-transition{background-color:#FFBC7D;}.elementor-kit-8 a{color:#215974;text-decoration:none;}.elementor-kit-8 a:hover{color:#163B4F;}.elementor-kit-8 h1{color:#0F2530;font-family:"Archivo", Sans-serif;font-size:62px;font-weight:600;line-height:1.04em;letter-spacing:-0.025em;}.elementor-kit-8 h2{color:#0F2530;font-family:"Archivo", Sans-serif;font-size:40px;font-weight:600;line-height:1.1em;letter-spacing:-0.02em;}.elementor-kit-8 h3{color:#0F2530;font-family:"Archivo", Sans-serif;font-size:34px;font-weight:600;line-height:1.12em;}.elementor-kit-8 h4{color:#0F2530;font-family:"Archivo", Sans-serif;font-size:21px;font-weight:600;line-height:1.2em;}.elementor-kit-8 h5{color:#0F2530;font-family:"Archivo", Sans-serif;font-size:19px;font-weight:600;}.elementor-kit-8 h6{color:#0F2530;font-family:"Archivo", Sans-serif;font-size:18px;font-weight:600;}.elementor-kit-8 img{border-radius:0px 0px 0px 0px;}.elementor-kit-8 input:not([type="button"]):not([type="submit"]),.elementor-kit-8 textarea,.elementor-kit-8 .elementor-field-textual{font-family:"IBM Plex Sans", Sans-serif;font-size:15px;color:#0F2530;background-color:#FBFBFC;border-radius:8px 8px 8px 8px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1240px;}.e-con{--container-max-width:1240px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-8{--e-global-typography-primary-font-size:44px;--e-global-typography-secondary-font-size:32px;--e-global-typography-bdh3-font-size:28px;--e-global-typography-bdh3ct-font-size:30px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-8{--e-global-typography-primary-font-size:34px;--e-global-typography-secondary-font-size:27px;--e-global-typography-bdh3-font-size:24px;--e-global-typography-bdh3ct-font-size:26px;--e-global-typography-bdlead-font-size:17px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* =========================================================================
   BioDecon — design details Elementor's controls can't express directly.
   Everything here reads the --e-global-* variables that Elementor's
   Global Colors and Global Fonts produce, so changing a global in
   Site Settings still drives these rules.
   ========================================================================= */

/* ---------- Header ------------------------------------------------------ */
.bd-header { backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); }
.elementor-widget-image.bd-logo img,
.elementor-widget-image.bd-logo a img[src$=".svg"] { height: 44px; width: auto; max-width: none; }

.bd-region-switch { display: inline-flex; border: 1px solid #2C4652; border-radius: 999px; overflow: hidden; }
.elementor-kit-8 .bd-region-btn, .bd-region-switch .bd-region-btn {
	border: 0; cursor: pointer; padding: 4px 14px; background: transparent;
	color: var(--e-global-color-bdmonft);
	font-family: var(--e-global-typography-accent-font-family), monospace;
	font-size: 11px; letter-spacing: .08em; text-transform: uppercase; line-height: 1.7;
}
.elementor-kit-8 .bd-region-btn.is-active, .bd-region-switch .bd-region-btn.is-active { background: var(--e-global-color-bdlodk); color: var(--e-global-color-secondary); }

/* Underlined text link */
.bd-textlink .elementor-heading-title {
	display: inline-block; padding-bottom: 4px;
	border-bottom: 2px solid var(--e-global-color-bdlodk);
	transition: border-color .2s ease;
}
.bd-textlink:hover .elementor-heading-title { border-bottom-color: currentColor; }

/* ---------- Hero -------------------------------------------------------- */
.bd-hero-copy { max-width: 720px; margin-left: auto; width: 100%; }
.bd-hero-lead { max-width: 560px; }

.bd-hero-stage {
	position: relative;
	background: radial-gradient(120% 90% at 62% 42%, #22546B 0%, #14384A 46%, #0F2530 100%);
}
/* Scrim — keeps the H1 legible where the two cells meet. */
.bd-hero-stage::before {
	content: ""; position: absolute; inset: 0; z-index: 1;
	background: linear-gradient(90deg, rgba(15,37,48,.92) 0%, rgba(15,37,48,0) 38%);
}
/* Light pool behind the product. */
.bd-hero-stage::after {
	content: ""; position: absolute; left: 50%; top: 46%; transform: translate(-50%,-50%);
	width: 96%; padding-bottom: 96%; border-radius: 999px; z-index: 1;
	background: radial-gradient(circle, rgba(47,196,214,.22) 0%, rgba(47,196,214,0) 65%);
}
.bd-hero-product { position: relative; z-index: 2; margin-right: -2%; }
.bd-hero-product img {
	max-height: 660px; width: auto; max-width: 86%; display: block;
	filter: drop-shadow(0 40px 60px rgba(0,0,0,.45));
}
/* Caption is measured from the same edge as the product, so they cannot collide. */
.bd-hero-caption-wrap { position: absolute; left: 34px; bottom: 30px; z-index: 3; }
.bd-hero-caption {
	font-family: var(--e-global-typography-accent-font-family), monospace;
	font-size: 11px; letter-spacing: .12em; text-transform: uppercase; line-height: 1.6;
	color: var(--e-global-color-bdmondk);
}
.bd-hero-caption span { color: #6D8896; }

/* ---------- Industry tiles --------------------------------------------- */
.bd-tile { transition: background-color .2s ease; }
.bd-tile:hover { background-color: var(--e-global-color-bdtint); }
.bd-industry-card > .e-con-inner > .bd-tile:last-child,
.bd-industry-card > .bd-tile:last-child { border-right: 0 !important; }

/* ---------- Partner strip ---------------------------------------------- */
/* Flatten the listing wrappers so all logos share one flex row with R-BDS. */
.bd-partner-row { display: flex; flex-wrap: wrap; align-items: center; gap: 26px 32px; }
.bd-partner-grid,
.bd-partner-grid .elementor-widget-container,
.bd-partner-grid .jet-listing-grid,
.bd-partner-grid .jet-listing-grid__items { display: contents !important; }
.bd-partner-grid .jet-listing-grid__items > .jet-listing-grid__item {
	flex: 0 0 auto !important; width: auto !important; max-width: none !important;
	padding: 0 !important; margin: 0 !important;
}
.bd-partner-logo img,
.bd-partner-logo a img[src$=".svg"],
.bd-partner-rbds img {
	opacity: .62; filter: grayscale(1); width: auto; display: block;
	transition: opacity .25s ease, filter .25s ease;
}
.bd-partner-logo:hover img,
.bd-partner-rbds:hover img { opacity: 1; filter: grayscale(0); }

/* Heights are set per logo to match cap-height optically — do not normalise.
   Term IDs: 2 Bioquell · 3 Nanosonics · 4 PBSC · 5 Ecolab · 6 Medigenic · 7 Pharmagraph */
.bd-partner-grid [data-post-id="2"] img { height: 40px; }
.bd-partner-grid [data-post-id="3"] img { height: 38px; }
.bd-partner-grid [data-post-id="4"] img { height: 36px; }
.bd-partner-grid [data-post-id="5"] img { height: 30px; }
.bd-partner-grid [data-post-id="6"] img { height: 19px; }
.bd-partner-grid [data-post-id="7"] img { height: 17px; }
.bd-partner-rbds img { height: 46px; }

/* ---------- About ------------------------------------------------------- */
.bd-about-photo img {
	width: 100%; height: 268px; object-fit: cover; object-position: 50% 35%;
	border-radius: 12px; display: block;
}

/* ---------- Products: tabs + panels ------------------------------------ */
/* JetEngine sizes grid items with `flex: 0 0 calc(100%/var(--columns))` and
   gutters the wrapper with negative margins — both need unwinding here. */
.bd-tabs .jet-listing-grid__items,
.bd-panels .jet-listing-grid__items { margin: 0 !important; width: 100% !important; }

.bd-tabs .jet-listing-grid__items { display: flex !important; flex-wrap: wrap; gap: 10px; }
.bd-tabs .jet-listing-grid__items > .jet-listing-grid__item {
	flex: 0 0 auto !important; width: auto !important; max-width: none !important;
	padding: 0 !important; margin: 0 !important;
}
/* The tab box sizes to its label; the grid item then sizes to the box. */
.bd-tabs .bd-tab { width: max-content !important; }
/* Elementor sizes widgets inside a container with --container-widget-width:100%,
   which is circular when the container itself is sizing to max-content — so the
   tab label is given an explicit intrinsic width. */
.bd-tab-label { white-space: nowrap; width: max-content !important; }
.bd-tab-label .jet-listing-dynamic-field,
.bd-tab-label .jet-listing-dynamic-field__inline-wrap,
.bd-tab-label .jet-listing-dynamic-field__content { max-width: none; width: max-content; }
.bd-panels .jet-listing-grid__items > .jet-listing-grid__item {
	flex: 0 0 100% !important; width: 100% !important; max-width: 100% !important;
	padding: 0 !important; margin: 0 !important;
}

.bd-tab {
	padding: 13px 22px; cursor: pointer;
	border: 1px solid var(--e-global-color-bdbrdsf); border-bottom: 0;
	border-radius: 8px 8px 0 0; background: transparent;
	transition: background-color .2s ease, border-color .2s ease;
}
.bd-tab-label {
	font-family: var(--e-global-typography-bdnav-font-family), sans-serif;
	font-size: 14px; font-weight: 600; white-space: nowrap;
	color: var(--e-global-color-bdmondk);
}
.bd-tabs .jet-listing-grid__item.is-active .bd-tab {
	background: var(--e-global-color-bdpanel); border-color: var(--e-global-color-bdbrdrk);
}
.bd-tabs .jet-listing-grid__item.is-active .bd-tab-label { color: #FFFFFF; }

.bd-panels .jet-listing-grid__item { display: none; }
.bd-panels .jet-listing-grid__item.is-active { display: block; }

.bd-panel {
	background: var(--e-global-color-bdpanel);
	border: 1px solid var(--e-global-color-bdbrdrk);
	border-radius: 0 14px 14px 14px;
	overflow: hidden;
}
.bd-panel-eyebrow {
	font-family: var(--e-global-typography-accent-font-family), monospace;
	font-size: 11.5px; letter-spacing: .14em; text-transform: uppercase;
	color: var(--e-global-color-accent);
}
.elementor-kit-8 .bd-panel-heading h3,
.bd-panel-heading .jet-listing-dynamic-field__content,
.bd-panel-heading {
	font-family: var(--e-global-typography-bdh3-font-family), sans-serif;
	font-size: var(--e-global-typography-bdh3-font-size);
	font-weight: 600; line-height: 1.12; letter-spacing: -.02em;
	color: #FFFFFF; margin: 0;
}
.bd-panel-blurb {
	font-family: var(--e-global-typography-bdbodymd-font-family), sans-serif;
	font-size: 16.5px; line-height: 1.66; font-weight: 300;
	color: var(--e-global-color-bdlodks); max-width: 480px; margin: 0;
}
.bd-panel-bullets .jet-listing-dynamic-repeater__items {
	display: grid !important; gap: 12px; margin: 0; padding: 0; list-style: none;
}
.bd-panel-bullets .jet-listing-dynamic-repeater__item {
	display: flex; gap: 12px; align-items: flex-start; list-style: none;
	color: var(--e-global-color-bdlodk); font-size: 15px; line-height: 1.5;
}
.bd-panel-bullets .jet-listing-dynamic-repeater__item::before {
	content: ""; flex: 0 0 6px; width: 6px; height: 6px; margin-top: 7px;
	background: var(--e-global-color-bdsteel);
}

/* JetEngine's dynamic-field widgets shrink-wrap and centre inside the copy
   column; stretch them so the column reads as one left-aligned block. */
.bd-panel-left { align-items: stretch !important; }
.bd-panel-left > .elementor-widget { width: 100%; }

/* JetEngine's dynamic-field and repeater wrappers centre their contents by
   default; the panel copy column is left-aligned. */
.bd-panel-left, .bd-panel-left .elementor-widget { text-align: left; }
.bd-panel-left .jet-listing-dynamic-field,
.bd-panel-left .jet-listing-dynamic-field__inline-wrap,
.bd-panel-left .jet-listing-dynamic-field__content { justify-content: flex-start !important; text-align: left !important; }
.bd-panel-bullets .jet-listing-dynamic-repeater__items {
	padding: 0 !important; margin: 0 !important; justify-items: start !important;
}
.bd-panel-bullets .jet-listing-dynamic-repeater__item { margin: 0 !important; padding: 0 !important; }
.bd-panel-left .elementor-widget-button { align-self: flex-start; }
.bd-panel-left .elementor-button-wrapper { text-align: left !important; }

.bd-product-stage { position: relative; }
/* Product shots are cut-outs on white; multiply seats them on the stage. */
.bd-product-shot img {
	max-height: 380px; max-width: 100%; width: auto;
	object-fit: contain; mix-blend-mode: multiply; display: block;
}
.bd-product-caption {
	position: absolute; left: 28px; bottom: 24px;
	font-family: var(--e-global-typography-accent-font-family), monospace;
	font-size: 10.5px; letter-spacing: .14em; text-transform: uppercase;
	color: var(--e-global-color-text);
}
.bd-photo-pending {
	display: inline-block; padding: 10px 18px; border-radius: 999px;
	background: var(--e-global-color-bdtint);
	border: 1px dashed var(--e-global-color-bddash);
	font-family: var(--e-global-typography-accent-font-family), monospace;
	font-size: 12px; color: var(--e-global-color-text);
}
/* Hide the placeholder pill once a range has real photography. */
.bd-product-stage:has(.bd-product-shot img) .bd-photo-pending-wrap { display: none; }

/* ---------- Services ---------------------------------------------------- */
.bd-service { transition: background-color .2s ease; }
.bd-service:hover { background-color: var(--e-global-color-bdtint); }
.bd-service-body { flex: 1; }
.bd-service-cta { margin-top: auto; }

/* ---------- Case studies ------------------------------------------------ */
.bd-case { transition: border-color .2s ease; }
.bd-case:hover { border-color: var(--e-global-color-bdsteel) !important; }
.bd-case-image img { width: 100%; height: 220px; object-fit: cover; display: block; background: var(--e-global-color-bdlodk); }
.bd-case-1 .bd-case-image img { object-position: 50% 30%; }
.bd-case-2 .bd-case-image img { object-position: 50% 40%; }
.bd-case-3 .bd-case-image img { object-position: 50% 55%; }

.bd-accreditations { display: flex; flex-wrap: wrap; gap: 12px; }
.bd-accreditation {
	display: inline-block; padding: 12px 20px; border-radius: 8px;
	background: #FFFFFF; border: 1px dashed var(--e-global-color-bddash);
	font-family: var(--e-global-typography-accent-font-family), monospace;
	font-size: 11px; letter-spacing: .14em; text-transform: uppercase;
	color: var(--e-global-color-text);
}

/* ---------- Contact ----------------------------------------------------- */
/* Elementor's form grid uses negative wrapper margins + column padding;
   don't replace that with `gap`, or two 50% columns overflow and wrap. */
.bd-form .elementor-form-fields-wrapper { margin-left: -7px; margin-right: -7px; }
.bd-form .elementor-field-group { padding-left: 7px; padding-right: 7px; margin-bottom: 14px; }
.bd-form .elementor-field-group.elementor-field-type-submit { margin-bottom: 0; }
.elementor-kit-8 .bd-form .elementor-field-textual {
	background: var(--e-global-color-bdinput);
	border: 1px solid var(--e-global-color-bdlodk);
	border-radius: 8px; padding: 15px 16px; font-size: 15px;
}
.elementor-kit-8 .bd-form .elementor-field-textual:focus { outline: none; border-color: var(--e-global-color-primary); box-shadow: none; }
.bd-form ::placeholder { color: #9AA3AD; }
.bd-form-note { font-size: 13px; color: var(--e-global-color-bdmuted); margin-top: -6px; }
.bd-form-note a { color: var(--e-global-color-primary); }

.bd-region-block { display: none; }
.bd-region-block.is-active { display: flex; }
.bd-region-address { max-width: 320px; }

.bd-map {
	height: 150px; border-radius: 12px; margin-top: 26px;
	display: flex; align-items: center; justify-content: center;
	background: repeating-linear-gradient(45deg, #14313D 0 12px, #1B4254 12px 24px);
}
.bd-map span {
	font-family: var(--e-global-typography-accent-font-family), monospace;
	font-size: 11px; letter-spacing: .12em; text-transform: uppercase;
	color: var(--e-global-color-bdmondk);
	background: var(--e-global-color-secondary); padding: 6px 14px; border-radius: 999px;
}

/* ---------- Help widget ------------------------------------------------- */
/* The widget is position:fixed, so its mount point must not occupy layout. */
.bd-help-mount { position: absolute; width: 0; height: 0; padding: 0 !important; margin: 0 !important; }

.bd-help { position: fixed; right: 28px; bottom: 28px; z-index: 60; display: flex; flex-direction: column; align-items: flex-end; gap: 14px; }
.elementor-kit-8 .bd-help-btn, .bd-help .bd-help-btn {
	height: 60px; padding: 0 24px; border: 0; border-radius: 999px; cursor: pointer;
	background: var(--e-global-color-primary); color: #FFFFFF;
	font-family: var(--e-global-typography-bdbtn-font-family), sans-serif;
	font-size: 15px; font-weight: 600;
	display: inline-flex; align-items: center; gap: 10px;
	box-shadow: 0 16px 36px rgba(15,37,48,.3);
	transition: background-color .2s ease;
}
.elementor-kit-8 .bd-help-btn:hover, .bd-help .bd-help-btn:hover { background: var(--e-global-color-bdblhov); }
.bd-help-dot { width: 10px; height: 10px; border-radius: 999px; background: var(--e-global-color-accent); }
.bd-help-panel {
	width: 336px; max-width: calc(100vw - 40px); background: #FFFFFF;
	border: 1px solid var(--e-global-color-bdlodk); border-radius: 16px; overflow: hidden;
	box-shadow: 0 26px 60px rgba(15,37,48,.24);
}
.bd-help-head { background: var(--e-global-color-secondary); padding: 22px 24px; }
.bd-help-title { font-family: var(--e-global-typography-bdpill-font-family), sans-serif; font-size: 18px; font-weight: 600; color: #FFFFFF; }
.bd-help-sub { font-size: 13.5px; color: var(--e-global-color-bdmondk); margin-top: 4px; }
.bd-help-row {
	display: flex; align-items: center; justify-content: space-between; gap: 12px;
	padding: 18px 24px; border-bottom: 1px solid #EEF0F2; text-decoration: none;
	transition: background-color .2s ease;
}
.bd-help-row:last-child { border-bottom: 0; }
.bd-help-row:hover { background: var(--e-global-color-bdtint); }
.bd-help-row-title { display: block; font-size: 14.5px; font-weight: 600; color: var(--e-global-color-secondary); }
.bd-help-row-sub { display: block; font-size: 13px; color: var(--e-global-color-bdmuted); margin-top: 2px; }
.bd-help-arrow { font-family: var(--e-global-typography-accent-font-family), monospace; color: var(--e-global-color-bdsteel); }

/* ---------- Footer ------------------------------------------------------ */
.bd-copyright { font-size: 13px; color: #6D7F8A; }
.bd-footer-top > .e-con-inner > .e-con, .bd-footer-top > .e-con { align-self: flex-start; }

/* ---------- Scroll reveal ---------------------------------------------- */
.bd-reveal { opacity: 0; transform: translateY(22px); }
.bd-reveal.is-visible {
	opacity: 1; transform: none;
	transition: opacity .7s cubic-bezier(.2,.7,.2,1), transform .7s cubic-bezier(.2,.7,.2,1);
}
@media (prefers-reduced-motion: reduce) {
	.bd-reveal { opacity: 1; transform: none; }
	.bd-reveal.is-visible { transition: none; }
}

/* ---------- Responsive -------------------------------------------------- */
@media (max-width: 1024px) {
	.bd-hero-row   { flex-wrap: wrap !important; }
	.bd-hero-left  { flex-basis: 100% !important; }
	.bd-hero-stage { flex-basis: 100% !important; border-radius: 0 !important; min-height: 420px; }
	.bd-hero-copy  { max-width: none; }
	.bd-hero-product img { max-height: 420px; }
	.bd-panel, .bd-footer-top { flex-wrap: wrap !important; }
	.bd-panel-left, .bd-product-stage { flex-basis: 100% !important; }
	.bd-product-stage { border-left: 0 !important; border-top: 1px solid var(--e-global-color-bdbrdrk) !important; }
	.bd-utility-bar { justify-content: center; }
}

@media (max-width: 767px) {
	.bd-hero-caption-wrap { left: 20px; bottom: 18px; }
	.bd-help { right: 16px; bottom: 16px; }
	.elementor-kit-8 .bd-help-btn, .bd-help .bd-help-btn { height: 52px; padding: 0 18px; font-size: 14px; }
	.bd-tabs .jet-listing-grid__items { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 4px; }
	.bd-case-image img { height: 180px; }
	.bd-map { height: 120px; }
}/* End custom CSS */