:root{--sky:#2E9BE6;--aqua:#12B3A6;--green:#16B364;--green-dark:#0E9152;--ink:#0B2545;--ink-soft:#3D5372;--mist:#F2FAFE;--mist-2:#E7F4FB;--sun:#FFC94D;--line:#DCEAF3;--grad:linear-gradient(120deg,#2E9BE6 0%,#12B3A6 100%);--grad-soft:linear-gradient(120deg,#EAF6FE 0%,#E4F7F3 100%);--radius:18px;--shadow-sm:0 4px 16px rgba(11,37,69,.06);--shadow:0 18px 45px -20px rgba(11,37,69,.28)}

/* base scoping */
body{--e-global-color-primary:#0B2545}
.bwc h1,.bwc h2,.bwc h3,.bwc h4,.bwc-heading .elementor-heading-title{font-family:'Space Grotesk',sans-serif !important;letter-spacing:-.02em;line-height:1.12}
.bwc,.bwc .elementor-widget-text-editor,.bwc p{font-family:'Inter',sans-serif}

/* eyebrow */
.bwc-eyebrow .elementor-heading-title{display:inline-flex;align-items:center;gap:8px;font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:var(--aqua)}
.bwc-eyebrow.light .elementor-heading-title{color:#EAF9FF}

/* buttons: shine sweep */
.bwc-btn .elementor-button,.bwc-btn a.elementor-button{position:relative;overflow:hidden;border-radius:100px !important;font-family:'Space Grotesk',sans-serif;font-weight:600;transition:transform .25s ease,box-shadow .25s ease}
.bwc-btn .elementor-button::after{content:"";position:absolute;top:0;left:0;width:60%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);transform:translateX(-120%) skewX(-18deg);transition:transform .7s ease;pointer-events:none}
.bwc-btn .elementor-button:hover{transform:translateY(-2px)}
.bwc-btn .elementor-button:hover::after{transform:translateX(220%) skewX(-18deg)}
.bwc-btn-primary .elementor-button{background:var(--green) !important;color:#fff !important;box-shadow:0 12px 26px -10px rgba(22,179,100,.7)}
.bwc-btn-primary .elementor-button:hover{background:var(--green-dark) !important}
.bwc-btn-ghost .elementor-button{background:rgba(255,255,255,.14) !important;color:#fff !important;border:1.5px solid rgba(255,255,255,.55) !important}
.bwc-btn-ghost .elementor-button:hover{background:rgba(255,255,255,.24) !important}
.bwc-btn-outline .elementor-button{background:#fff !important;color:var(--ink) !important;border:1.5px solid var(--line) !important;box-shadow:var(--shadow-sm)}
.bwc-btn-outline .elementor-button:hover{border-color:var(--aqua) !important;color:var(--aqua) !important}

/* hero */
.bwc-hero{background:var(--grad) !important;position:relative;overflow:hidden}
.bwc-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(900px 420px at 78% 8%,rgba(255,255,255,.32),transparent 60%);pointer-events:none}
.bwc-hero .elementor-heading-title{color:#fff !important;font-size:clamp(2.4rem,5.6vw,4rem)}
.bwc-hero .bwc-lead .elementor-text-editor{color:rgba(255,255,255,.92) !important;font-size:1.12rem}
.bwc-hero-badges .elementor-icon-list-item{color:rgba(255,255,255,.92) !important}
.bwc-hero-badges .elementor-icon-list-icon svg,.bwc-hero-badges .elementor-icon-list-icon i{color:#EAF9FF !important;fill:#EAF9FF !important}

/* frosted glass panel */
.bwc-glass{background:rgba(255,255,255,.16) !important;backdrop-filter:blur(16px) saturate(150%);-webkit-backdrop-filter:blur(16px) saturate(150%);border:1px solid rgba(255,255,255,.4) !important;border-radius:24px !important;box-shadow:0 40px 80px -30px rgba(3,25,55,.55)}
.bwc-glass img{border-radius:16px}

/* trust strip */
.bwc-trust{background:#fff !important;border:1px solid var(--line) !important;border-radius:var(--radius) !important;box-shadow:var(--shadow);margin-top:-70px;position:relative;z-index:5}
.bwc-trust .elementor-heading-title{color:var(--ink)}
.bwc-trust-num .elementor-heading-title{font-family:'Space Grotesk';font-size:1.5rem;font-weight:700}
.bwc-trust-lbl .elementor-heading-title{font-size:.82rem;color:var(--ink-soft);font-weight:400}
.bwc-stars .elementor-heading-title{color:var(--sun);font-size:1.1rem;letter-spacing:1px}

/* section shells */
.bwc-section{padding-top:86px;padding-bottom:86px}
.bwc-mist{background:var(--mist) !important}
.bwc-h-lg .elementor-heading-title{font-size:clamp(1.9rem,4vw,2.7rem)}
.bwc-h-xl .elementor-heading-title{font-size:clamp(2.2rem,5.2vw,3.6rem)}
.bwc-muted .elementor-text-editor{color:var(--ink-soft)}
.bwc-lead .elementor-text-editor{font-size:1.12rem;color:var(--ink-soft)}

/* generic card */
.bwc-card{background:#fff !important;border:1px solid var(--line) !important;border-radius:var(--radius) !important;box-shadow:var(--shadow-sm);overflow:hidden;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;height:100%}
.bwc-card:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:#CDE6F3}
.bwc-card img{transition:transform .6s ease}
.bwc-card:hover img{transform:scale(1.05)}

/* icon-box benefits */
.bwc-benefit .elementor-icon{width:56px;height:56px;border-radius:15px;background:var(--grad-soft);display:grid;place-items:center;margin-bottom:6px}
.bwc-benefit .elementor-icon svg,.bwc-benefit .elementor-icon i{color:var(--aqua);width:28px;height:28px;font-size:26px}
.bwc-benefit .elementor-icon-box-title{font-family:'Space Grotesk';font-size:1.28rem;color:var(--ink);margin:14px 0 6px}
.bwc-benefit .elementor-icon-box-description{color:var(--ink-soft)}

/* service tag */
.bwc-tag .elementor-heading-title{font-family:'Space Grotesk';font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--green)}

/* testimonials */
.bwc-tst .elementor-star-rating{color:var(--sun)}
.bwc-tst .bwc-quote .elementor-text-editor{color:var(--ink);font-size:1rem}
.bwc-avatar .elementor-heading-title{width:46px;height:46px;border-radius:50%;background:var(--grad);display:grid;place-items:center;color:#fff;font-family:'Space Grotesk';font-weight:700;font-size:.95rem}

/* how it works steps */
.bwc-step .bwc-num .elementor-heading-title{font-family:'Space Grotesk';font-weight:700;font-size:2.2rem;background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}

/* CTA band */
.bwc-cta{background:var(--grad) !important;border-radius:26px !important;overflow:hidden;position:relative}
.bwc-cta::before{content:"";position:absolute;inset:0;background:radial-gradient(600px 300px at 20% 120%,rgba(255,255,255,.22),transparent 60%);pointer-events:none}
.bwc-cta .elementor-heading-title{color:#fff !important}
.bwc-cta .elementor-text-editor{color:rgba(255,255,255,.92) !important}

/* page hero (inner pages) */
.bwc-pagehero{background:var(--grad-soft) !important;border-bottom:1px solid var(--line)}

/* FAQ (native accordion restyle) */
.bwc-faq .elementor-accordion .elementor-accordion-item{border:1px solid var(--line);border-radius:12px;margin-bottom:12px;overflow:hidden;background:#fff}
.bwc-faq .elementor-tab-title{font-family:'Space Grotesk';font-weight:600;color:var(--ink);border:none !important}
.bwc-faq .elementor-tab-title.elementor-active{color:var(--aqua)}
.bwc-faq .elementor-tab-content{color:var(--ink-soft);border:none !important}

/* listings filter */
.bwc-filter{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin:8px 0 24px}
.bwc-filter button{font-family:'Space Grotesk';font-weight:500;font-size:.92rem;padding:9px 20px;border-radius:100px;border:1.5px solid var(--line);background:#fff;color:var(--ink-soft);cursor:pointer;transition:.2s}
.bwc-filter button:hover{border-color:var(--aqua);color:var(--aqua)}
.bwc-filter button.active{background:var(--grad);color:#fff;border-color:transparent}
.bwc-hide{display:none !important}
.bwc-cat{position:absolute;top:14px;left:14px;z-index:2;background:rgba(11,37,69,.72);color:#fff;font-family:'Space Grotesk';font-size:.72rem;font-weight:600;padding:6px 12px;border-radius:100px}

/* contact info items */
.bwc-info .elementor-icon-box-wrapper{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px 18px;display:flex;gap:14px;align-items:flex-start}
.bwc-info .elementor-icon{width:44px;height:44px;border-radius:12px;background:var(--grad-soft);display:grid;place-items:center}
.bwc-info .elementor-icon svg,.bwc-info .elementor-icon i{color:var(--aqua)}
.bwc-info .elementor-icon-box-title{font-family:'Space Grotesk';font-size:.95rem;margin-bottom:2px}
.bwc-info .elementor-icon-box-description{color:var(--ink-soft);font-size:.92rem}

/* WPForms styling */
.bwc-formcard{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}
.bwc-formcard .wpforms-field-label{font-family:'Space Grotesk';font-weight:600;font-size:.9rem;color:var(--ink)}
.bwc-formcard input,.bwc-formcard textarea{border:1.5px solid var(--line) !important;border-radius:12px !important;background:var(--mist) !important;padding:13px 15px !important}
.bwc-formcard input:focus,.bwc-formcard textarea:focus{border-color:var(--aqua) !important;background:#fff !important;box-shadow:0 0 0 4px rgba(18,179,166,.12) !important}
.bwc-formcard button[type=submit]{background:var(--green) !important;border:none !important;border-radius:100px !important;font-family:'Space Grotesk' !important;font-weight:600 !important;padding:14px 28px !important;transition:.25s}
.bwc-formcard button[type=submit]:hover{background:var(--green-dark) !important;transform:translateY(-2px)}

/* header / footer (XPRO) */
.bwc-header{background:rgba(255,255,255,.82) !important;backdrop-filter:saturate(160%) blur(14px);-webkit-backdrop-filter:saturate(160%) blur(14px);border-bottom:1px solid var(--line)}
.bwc-footer{background:var(--ink) !important}
.bwc-footer .elementor-heading-title,.bwc-footer .elementor-icon-list-text{color:#fff}
.bwc-footer a,.bwc-footer .elementor-icon-list-text{color:#9DB4D0 !important}
.bwc-footer a:hover{color:var(--aqua) !important}

/* CSS grid utilities on Elementor containers */
.bwc-grid2>.e-con-inner,.bwc-grid3>.e-con-inner,.bwc-grid4>.e-con-inner,.bwc-split>.e-con-inner,.bwc-herogrid>.e-con-inner,.bwc-contactgrid>.e-con-inner{display:grid;gap:24px;width:100%}
.bwc-grid2>.e-con-inner{grid-template-columns:repeat(2,1fr)}
.bwc-grid3>.e-con-inner{grid-template-columns:repeat(3,1fr)}
.bwc-grid4>.e-con-inner{grid-template-columns:repeat(4,1fr)}
.bwc-split>.e-con-inner{grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.bwc-herogrid>.e-con-inner{grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}
.bwc-contactgrid>.e-con-inner{grid-template-columns:1.05fr .95fr;gap:40px;align-items:start}
@media(max-width:1024px){.bwc-grid4>.e-con-inner{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.bwc-split>.e-con-inner,.bwc-herogrid>.e-con-inner,.bwc-contactgrid>.e-con-inner{grid-template-columns:1fr}}
@media(max-width:767px){.bwc-grid2>.e-con-inner,.bwc-grid3>.e-con-inner,.bwc-grid4>.e-con-inner{grid-template-columns:1fr}}

.bwc-grid5>.e-con-inner{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}
@media(max-width:900px){.bwc-grid5>.e-con-inner{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.bwc-grid5>.e-con-inner{grid-template-columns:repeat(2,1fr)}}
.bwc-btnrow{flex-wrap:wrap !important}
.bwc-trust{padding:26px 30px}
.bwc-trustcell,.bwc-tstwho{text-align:center}
.bwc-float{align-items:center;gap:12px;margin-top:12px}
.bwc-float .elementor-star-rating{font-size:16px}
.bwc-logo .elementor-heading-title{font-family:'Space Grotesk';font-weight:700;font-size:1.15rem;color:var(--ink)}
.bwc-logo .elementor-heading-title a{color:var(--ink)}
.bwc-header-inner>.e-con-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:nowrap}
.bwc-tstwho{display:flex !important;flex-direction:row !important;align-items:center;gap:12px;text-align:left;margin-top:auto}
.bwc-tstwho>.e-con-inner{display:flex;flex-direction:row;align-items:center;gap:12px}
.bwc-avatar .elementor-heading-title{width:46px;height:46px;line-height:46px;text-align:center}
.bwc-cta-inner{text-align:center;align-items:center}
.bwc-glassimg img{width:100%;object-fit:cover;border-radius:16px}

.bwc-center{text-align:center}
.bwc-center .elementor-heading-title,.bwc-center .elementor-text-editor{margin-left:auto;margin-right:auto;max-width:62ch}
.bwc-svc-title .elementor-heading-title{font-size:1.22rem;margin-top:8px}
.bwc-tst-name .elementor-heading-title{font-family:'Space Grotesk';font-size:1rem;color:var(--ink)}
.bwc-checklist{margin:6px 0 18px}
.bwc-checklist .elementor-icon-list-icon svg,.bwc-checklist .elementor-icon-list-icon i{color:var(--green)}
.bwc-checklist .elementor-icon-list-text{color:var(--ink-soft)}
.bwc-statnum .elementor-heading-title{font-family:'Space Grotesk';font-size:2rem;color:var(--aqua);line-height:1}
.bwc-statrow>.e-con-inner{display:flex;gap:40px;flex-wrap:wrap}
.bwc-pagehero{padding:72px 0 60px}
.bwc-pagehero .elementor-heading-title{color:var(--ink)}
.bwc-step-num .elementor-heading-title{font-family:'Space Grotesk';font-weight:700;font-size:2.2rem;background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;line-height:1}
.bwc-step-title .elementor-heading-title{font-size:1.15rem;margin:10px 0 6px}
.bwc-svcimg img{width:100%;height:172px;object-fit:cover}
.bwc-splitimg img{width:100%;object-fit:cover;border-radius:18px;box-shadow:var(--shadow)}

.bwc-footergrid>.e-con-inner{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:40px}
@media(max-width:900px){.bwc-footergrid>.e-con-inner{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.bwc-footergrid>.e-con-inner{grid-template-columns:1fr}}
.bwc-footlogo .elementor-heading-title,.bwc-footlogo .elementor-heading-title a{color:#fff !important;font-size:1.2rem}
.bwc-footabout .elementor-text-editor{color:#9DB4D0 !important;font-size:.94rem;max-width:34ch;margin:14px 0 18px}
.bwc-footer .elementor-heading-title{color:#fff}
.bwc-footlinks .elementor-text-editor a{display:block;color:#9DB4D0 !important;padding:5px 0;text-decoration:none}
.bwc-footlinks .elementor-text-editor a:hover{color:var(--aqua) !important}
.bwc-navwrap{align-items:center;gap:18px}
.bwc-header{padding:14px 0}
.bwc-follow .elementor-heading-title{font-family:'Space Grotesk';color:var(--ink);margin:22px 0 12px}
.bwc-portfolio{margin-top:12px}
.bwc-copy{border-top:1px solid rgba(255,255,255,.1);margin-top:40px;padding-top:20px}
.bwc-copy .elementor-text-editor{color:#7FA0C4;font-size:.86rem}

/* ===== XPRO Header (doc 20) — anchored to stable wrapper ===== */
.elementor-20{background:rgba(255,255,255,.85) !important;backdrop-filter:saturate(160%) blur(14px);-webkit-backdrop-filter:saturate(160%) blur(14px);border-bottom:1px solid var(--line)}
.elementor-20 > .e-con,.elementor-20 .e-con.e-parent{padding-top:14px;padding-bottom:14px}
.elementor-20 .e-con-boxed > .e-con-inner{display:flex !important;flex-direction:row;align-items:center;justify-content:space-between;gap:20px;width:100%}
.elementor-20 .e-con-boxed > .e-con-inner > .e-con{display:flex !important;flex-direction:row;align-items:center;gap:18px;width:auto;flex:0 0 auto}
@media(max-width:768px){.elementor-20 .e-con-boxed > .e-con-inner{flex-wrap:wrap;justify-content:center}}

/* ===== XPRO Footer (doc 21) — anchored to stable wrapper ===== */
.elementor-21{background:#0B2545 !important}
.elementor-21 > .e-con,.elementor-21 .e-con.e-parent{padding-top:60px;padding-bottom:24px}
.elementor-21 .e-con-boxed:first-child > .e-con-inner{display:grid !important;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:40px;width:100%}
@media(max-width:900px){.elementor-21 .e-con-boxed:first-child > .e-con-inner{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.elementor-21 .e-con-boxed:first-child > .e-con-inner{grid-template-columns:1fr}}
.elementor-21 .elementor-heading-title{color:#fff !important}
.elementor-21 .elementor-widget-text-editor,.elementor-21 .elementor-text-editor,.elementor-21 .elementor-text-editor p{color:#9DB4D0 !important}
.elementor-21 .bwc-footlinks .elementor-text-editor a,.elementor-21 .bwc-footlinks a{color:#9DB4D0 !important;display:block;padding:5px 0;text-decoration:none}
.elementor-21 .bwc-footlinks .elementor-text-editor a:hover{color:var(--aqua) !important}
.elementor-21 .e-con-boxed:last-child > .e-con-inner{border-top:1px solid rgba(255,255,255,.1);padding-top:20px;margin-top:24px}
.elementor-21 .e-con-boxed:last-child .elementor-text-editor{color:#7FA0C4 !important;font-size:.86rem}

/* ===== Logo lockup (header + footer) ===== */
.bwc-logo-wrap>.e-con-inner,.bwc-logo-wrap{display:flex !important;flex-direction:row !important;align-items:center;gap:11px}
.bwc-logomark .elementor-icon{width:40px;height:40px;border-radius:11px;background:var(--grad);display:grid;place-items:center;box-shadow:0 8px 18px -8px rgba(46,155,230,.8)}
.bwc-logomark .elementor-icon i,.bwc-logomark .elementor-icon svg{color:#fff !important;fill:#fff;font-size:19px}
.bwc-logotext .elementor-heading-title{font-family:'Space Grotesk';font-weight:700;font-size:1.14rem;color:var(--ink) !important;line-height:1.1}
.bwc-logotext .elementor-heading-title a{color:var(--ink) !important}
.bwc-logotag .elementor-heading-title{font-family:'Inter';font-weight:500;font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft) !important;margin-top:-1px}
/* phone link in header */
.bwc-phone .elementor-button{background:transparent !important;color:var(--ink) !important;padding:6px 4px !important;box-shadow:none !important;font-family:'Space Grotesk';font-weight:600;transform:none !important}
.bwc-phone .elementor-button::after{display:none !important}
.bwc-phone .elementor-button-icon,.bwc-phone .elementor-button i,.bwc-phone .elementor-button svg{color:var(--green) !important;fill:var(--green)}
/* nav active pill */
.elementor-20 .current-menu-item>a,.elementor-20 .current_page_item>a{background:var(--mist-2) !important;color:var(--aqua) !important;border-radius:100px}
/* footer logo lockup on dark */
.elementor-21 .bwc-logotext .elementor-heading-title,.elementor-21 .bwc-logotext a{color:#fff !important}
.elementor-21 .bwc-logotag .elementor-heading-title{color:#7FA0C4 !important}

@media(max-width:768px){.bwc-phone{display:none !important}}

/* ===== Hero glass floating rating card (Image 1) ===== */
.bwc-glass{position:relative;overflow:visible}
.bwc-float{position:absolute;left:-18px;bottom:20px;background:#fff !important;border:1px solid var(--line);border-radius:16px;padding:14px 18px !important;box-shadow:0 30px 70px -25px rgba(11,37,69,.45);z-index:4}
.bwc-float>.e-con-inner{display:flex;flex-direction:row;align-items:center;gap:14px}
.bwc-stars-gold .elementor-heading-title{color:#FFC94D !important;font-size:.95rem;letter-spacing:2px;line-height:1}
.bwc-float-num .elementor-heading-title{font-family:'Space Grotesk';font-weight:700;font-size:1.5rem;line-height:1;color:var(--ink) !important}
.bwc-float-lbl .elementor-heading-title{font-size:.78rem;color:var(--ink-soft) !important;font-weight:400;font-family:'Inter'}
.bwc-float-r{border-left:1px solid var(--line);padding-left:13px}
@media(max-width:900px){.bwc-float{left:10px;right:10px;bottom:12px;justify-content:center}}

/* responsive grids handled by Elementor container; small helpers */
@media(max-width:767px){.bwc-trust{margin-top:-40px}.bwc-section{padding-top:56px;padding-bottom:56px}}
@media(prefers-reduced-motion:reduce){*{transition:none !important;animation:none !important}}
