/* Skywell Aqua — main styles. Brand: 70% blue / 20% neutral / 10% gold. */
:root{
  --blue:#0084C3; --deep:#0A4D7A; --steel:#8FA8B8; --gold:#B8860B;
  --cream:#F7F5F1; --ink:#22282C; --white:#FFFFFF; --r:16px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Inter',sans-serif;color:var(--ink);background:var(--cream);line-height:1.7;font-size:16px;overflow-x:hidden}
h1,h2,h3,h4,h5,h6{font-family:'Poppins',sans-serif;line-height:1.25;color:var(--deep)}
img{max-width:100%;height:auto;display:block}
a{color:var(--blue);text-decoration:none}
a:hover{color:var(--deep)}
.wrap{max-width:1140px;margin:0 auto;padding:0 26px}
.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden}
.skip-link:focus{position:fixed;left:12px;top:12px;background:#fff;padding:10px 18px;z-index:9999;clip:auto;width:auto;height:auto}
section,.section{padding:84px 0;position:relative}
.eyebrow{font-family:'Poppins',sans-serif;font-weight:600;font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);display:inline-flex;align-items:center;gap:10px;margin-bottom:16px}
.eyebrow::before{content:"";width:34px;height:2px;background:var(--gold)}
.h2{font-size:clamp(26px,3.2vw,34px)}
.btn{display:inline-flex;align-items:center;gap:10px;font-family:'Poppins',sans-serif;font-weight:600;font-size:15.5px;padding:15px 28px;border-radius:999px;transition:.25s;border:2px solid transparent;cursor:pointer}
.btn-gold{background:var(--gold);color:#fff}
.btn-gold:hover{background:#9a7109;color:#fff;transform:translateY(-2px)}
.btn-ghost{border-color:rgba(255,255,255,.5);color:#fff}
.btn-ghost:hover{background:rgba(255,255,255,.12);color:#fff}
.btn-line{border-color:var(--gold);color:var(--gold);padding:11px 22px;font-size:14.5px;background:transparent}
.btn-line:hover{background:var(--gold);color:#fff}
.mark{background:linear-gradient(transparent 62%,rgba(184,134,11,.28) 62%)}
.ph{background:linear-gradient(150deg,#dbe6ee 0%,#b7cbda 100%);display:flex;flex-direction:column;gap:6px;align-items:center;justify-content:center;color:#57718a;font-size:13px;font-weight:600;text-align:center}

/* HEADER */
.site-header{position:sticky;top:0;z-index:1000;background:rgba(247,245,241,.92);backdrop-filter:blur(10px);border-bottom:1px solid rgba(10,77,122,.08)}
.nav{display:flex;align-items:center;justify-content:space-between;height:76px;gap:18px}
.brand .logo img{height:50px;width:auto}
.nav-list{display:flex;list-style:none;gap:4px}
.nav-list a{font-weight:500;font-size:14.5px;padding:9px 13px;border-radius:8px;color:var(--ink);display:block}
.nav-list a:hover{color:var(--blue)}
.nav-list .current-menu-item > a,.nav-list .current_page_item > a{color:var(--gold);box-shadow:inset 0 -3px 0 var(--gold)}
.menu-item-has-children{position:relative}
.sub-menu{position:absolute;top:100%;left:0;background:#fff;min-width:225px;border-radius:14px;box-shadow:0 16px 40px rgba(10,77,122,.16);padding:8px;opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s;list-style:none}
.menu-item-has-children:hover > .sub-menu,.menu-item-has-children:focus-within > .sub-menu{opacity:1;visibility:visible;transform:none}
.sub-menu a{font-size:14px;padding:10px 14px}
.sub-menu a:hover{background:var(--cream)}
.burger{display:none;background:none;border:none;font-size:25px;color:var(--deep);cursor:pointer}
/* HERO */
.hero{background:var(--deep);color:#fff;padding:0 0 150px;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;background:radial-gradient(900px 500px at 85% 10%,rgba(0,132,195,.35),transparent 60%),radial-gradient(700px 400px at 5% 90%,rgba(0,132,195,.18),transparent 60%)}
.hero .wrap{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:end;padding-top:80px}
.hero h1{color:#fff;font-size:clamp(36px,5.2vw,58px);font-weight:700;letter-spacing:-.01em;margin-bottom:20px}
.hero .sub{font-size:17.5px;color:rgba(255,255,255,.85);max-width:520px;margin-bottom:30px}
.hero-cta{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-bottom:14px}
.micro{font-size:13px;color:rgba(255,255,255,.65)}
.tank{border-radius:20px 20px 0 0;aspect-ratio:4/4.6;width:100%;box-shadow:0 -20px 70px rgba(0,0,0,.35)}
.hero::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:90px;background:var(--cream);clip-path:polygon(0 100%,0 55%,12% 38%,30% 52%,52% 30%,74% 46%,100% 28%,100% 100%)}
/* TRUST */
.trustwrap{position:relative;margin-top:-120px;z-index:5;margin-bottom:10px}
.trustcard{background:#fff;border-radius:22px;box-shadow:0 24px 60px rgba(10,77,122,.14);padding:34px 36px;display:grid;grid-template-columns:repeat(4,1fr);gap:26px}
.titem{display:flex;gap:14px;align-items:center}
.titem .ic{width:46px;height:46px;flex:none;border-radius:13px;background:linear-gradient(140deg,#e8f2f9,#d5e7f3);color:var(--deep);display:flex;align-items:center;justify-content:center;font-size:19px}
.titem strong{font-family:'Poppins',sans-serif;font-size:14.5px;color:var(--deep);display:block;line-height:1.3}
.titem span{font-size:12.5px;color:#77838d}
/* WHY */
.why-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:start}
.why-left{position:sticky;top:110px}
.wcard{background:#fff;border-radius:20px;padding:30px 30px 26px;box-shadow:0 12px 34px rgba(10,77,122,.08);margin-bottom:18px;display:flex;gap:20px;transition:.25s}
.wcard:hover{transform:translateX(6px)}
.wcard .num{font-family:'Poppins',sans-serif;font-weight:700;font-size:15px;color:var(--gold);border:2px solid rgba(184,134,11,.4);width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex:none}
.wcard h3{font-size:17.5px;margin-bottom:8px}
.wcard p{font-size:14.5px;color:#5a646d}
/* TABLES */
.vs-head{display:flex;align-items:end;justify-content:space-between;gap:30px;flex-wrap:wrap;margin-bottom:38px}
.vs-table{background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 16px 44px rgba(10,77,122,.10)}
.vs-table table{width:100%;border-collapse:collapse;font-size:14.5px}
.vs-table th{background:var(--deep);color:#fff;font-family:'Poppins',sans-serif;font-weight:600;text-align:left;padding:16px 22px;font-size:13.5px}
.vs-table th:nth-child(2){background:var(--blue)}
.vs-table td{padding:15px 22px;border-top:1px solid #efe9e1;vertical-align:top}
.vs-table td:first-child{font-weight:600;color:var(--deep);width:22%}
.vs-table td:nth-child(2){background:rgba(0,132,195,.05)}
.note{margin-top:18px;font-size:14.5px;color:#67737c;display:flex;gap:10px;align-items:center}
.note b{color:var(--gold)}
/* FLAGSHIP */
.flag{background:var(--deep);color:#fff;overflow:hidden}
.flag::before{content:"";position:absolute;inset:0;background:radial-gradient(800px 420px at 10% 15%,rgba(0,132,195,.30),transparent 55%)}
.flag .wrap{position:relative;display:grid;grid-template-columns:.92fr 1.08fr;gap:56px;align-items:center}
.flag h2{color:#fff}
.flag .desc{color:rgba(255,255,255,.84);margin-bottom:26px}
.checks{list-style:none;margin-bottom:30px;columns:2;column-gap:26px}
.checks li{break-inside:avoid;padding-left:32px;position:relative;margin-bottom:11px;color:rgba(255,255,255,.92);font-size:15px}
.checks li::before{content:"✓";position:absolute;left:0;top:1px;width:21px;height:21px;border-radius:50%;background:var(--gold);color:#fff;font-size:12px;display:flex;align-items:center;justify-content:center;font-weight:700}
.stamp{display:inline-block;background:var(--gold);color:#fff;font-family:'Poppins',sans-serif;font-weight:600;font-size:12px;padding:10px 16px;border-radius:12px;box-shadow:0 10px 24px rgba(184,134,11,.4);transform:rotate(-2deg)}
/* REVIEWS */
.revs .wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:start}
.revs .big{font-family:'Poppins',sans-serif;font-size:56px;font-weight:700;color:var(--deep);line-height:1}
.rev-list{display:grid;gap:16px}
.rev{background:#fff;border-radius:18px;padding:24px 26px;box-shadow:0 10px 30px rgba(10,77,122,.07);position:relative}
.rev p{font-size:14.5px;color:#3d464e;margin-bottom:12px}
.rev .who{font-size:13px;color:#8a949c}
.rev .who strong{color:var(--deep)}
.st{color:var(--gold);letter-spacing:2px;font-size:15px;margin-bottom:8px}
/* PROCESS */
.proc-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:44px}
.step .ph{aspect-ratio:4/3.2;border-radius:18px}
.step figcaption{margin-top:14px;display:flex;gap:12px;align-items:baseline}
.step .n{font-family:'Poppins',sans-serif;font-weight:700;color:var(--gold);font-size:13px;letter-spacing:.1em}
.step .t{font-family:'Poppins',sans-serif;font-weight:600;font-size:15px;color:var(--deep)}
/* OTHER PRODUCTS */
.ogrid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:38px}
.ocard{background:#fff;border-radius:18px;padding:26px;box-shadow:0 8px 24px rgba(10,77,122,.06);border-top:3px solid transparent;transition:.25s}
.ocard:hover{border-top-color:var(--gold);transform:translateY(-4px)}
.ocard h3{font-size:16.5px;margin-bottom:8px}
.ocard p{font-size:13.5px;color:#5a646d;margin-bottom:12px}
/* FAQ */
.faq-list{max-width:840px}
.faq-list details{background:#fff;border:1px solid #e9e2d8;border-radius:14px;margin-bottom:12px;overflow:hidden}
.faq-list summary{cursor:pointer;list-style:none;padding:19px 24px;font-family:'Poppins',sans-serif;font-weight:600;font-size:15.5px;color:var(--deep);display:flex;justify-content:space-between;align-items:center;gap:16px}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:"+";font-size:22px;color:var(--gold);transition:.2s}
.faq-list details[open] summary::after{transform:rotate(45deg)}
.faq-list details p{padding:0 24px 20px;color:#4a545c;font-size:14.5px}
/* CTA */
.cta-band{background:linear-gradient(120deg,var(--blue),#0aa0e0);color:#fff;text-align:center;overflow:hidden}
.cta-band::before,.cta-band::after{content:"";position:absolute;border-radius:50%;border:2px dashed rgba(255,255,255,.25)}
.cta-band::before{width:300px;height:300px;left:-90px;top:-90px}
.cta-band::after{width:420px;height:420px;right:-140px;bottom:-160px}
.cta-band h2{color:#fff;margin-bottom:12px}
.cta-band p{color:rgba(255,255,255,.9);margin-bottom:28px}
/* FORM */
.enquiry{background:#fff;border-radius:22px;box-shadow:0 16px 44px rgba(10,77,122,.10);padding:38px;max-width:640px}
.enquiry label{font-family:'Poppins',sans-serif;font-weight:600;font-size:14px;color:var(--deep);display:block;margin-bottom:6px}
.enquiry input,.enquiry select,.enquiry textarea{width:100%;padding:13px 16px;border:1.5px solid #e3dcd2;border-radius:12px;font-size:15px;font-family:inherit;margin-bottom:16px;background:var(--cream)}
.enquiry input:focus,.enquiry select:focus,.enquiry textarea:focus{outline:2px solid var(--blue);border-color:var(--blue)}
.trust-line{font-size:13px;color:#77838d;margin:4px 0 16px}
.form-note{padding:14px 18px;border-radius:12px;margin-bottom:18px;font-size:14.5px}
.form-note.ok{background:#e8f6ee;color:#1e7a47}
.form-note.err{background:#fdecec;color:#b03030}
/* CONTACT CARDS */
.ccards{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:20px}
.ccard{background:#fff;border-radius:18px;padding:28px;box-shadow:0 10px 30px rgba(10,77,122,.07)}
.ccard.feature{border:2px solid var(--gold)}
.ccard h3{font-size:17px;margin-bottom:8px}
.ccard p{font-size:14px;color:#5a646d;margin-bottom:16px}
/* BLOG/NEWS CARDS */
.pgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.pcard{background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 10px 30px rgba(10,77,122,.07);display:flex;flex-direction:column;transition:.25s}
.pcard:hover{transform:translateY(-5px)}
.pcard .thumb{aspect-ratio:16/10;background:linear-gradient(150deg,#dbe6ee,#b7cbda)}
.pcard .body{padding:22px;display:flex;flex-direction:column;flex:1}
.pcard .cat{font-size:11.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);font-family:'Poppins',sans-serif;margin-bottom:8px}
.pcard h3{font-size:17px;margin-bottom:10px;line-height:1.35}
.pcard h3 a{color:var(--deep)}
.pcard .ex{font-size:14px;color:#5a646d;flex:1}
.pcard .meta{font-size:12.5px;color:#8a949c;margin-top:14px}
/* FOOTER */
.site-footer{background:var(--deep);color:rgba(255,255,255,.85)}
.fgrid{display:grid;grid-template-columns:1.25fr 1fr 1.1fr;gap:44px;padding:64px 0 48px}
.fgrid h4{color:#fff;font-size:15px;margin-bottom:16px}
.footer-list{list-style:none}
.footer-list li{margin-bottom:9px;font-size:14px}
.footer-list a{color:rgba(255,255,255,.85)}
.footer-list a:hover{color:var(--gold)}
.flogo img{height:46px;width:auto;background:#fff;padding:7px 11px;border-radius:9px}
.ftagline{font-family:'Poppins',sans-serif;color:var(--gold);font-weight:600;margin-top:14px}
.badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.badges span{border:1px solid rgba(255,255,255,.25);border-radius:99px;padding:5px 13px;font-size:12px}
.follow-h{margin-top:20px}
.social{display:flex;gap:10px}
.social a{width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.12);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;transition:.2s;color:#fff}
.social a:hover{background:var(--gold)}
.copyright{border-top:1px solid rgba(255,255,255,.14);padding:20px 0;text-align:center;font-size:13px;color:rgba(255,255,255,.55)}
/* FLOATING WA */
.wa-float{position:fixed;bottom:24px;right:24px;display:flex;align-items:center;gap:10px;background:var(--gold);color:#fff;padding:13px 20px;border-radius:999px;font-family:'Poppins',sans-serif;font-weight:600;font-size:14px;box-shadow:0 10px 28px rgba(184,134,11,.45);z-index:1100;transition:.25s}
.wa-float:hover{transform:translateY(-3px);color:#fff}
.wa-float svg{width:20px;height:20px;fill:#fff}
/* PAGE HEAD */
.page-head{background:var(--deep);color:#fff;padding:64px 0 84px;overflow:hidden;position:relative}
.page-head::before{content:"";position:absolute;inset:0;background:radial-gradient(700px 380px at 80% 20%,rgba(0,132,195,.3),transparent 60%)}
.page-head .wrap{position:relative}
.page-head h1{color:#fff;font-size:clamp(30px,4.2vw,44px)}
.page-head .eyebrow{color:#F0C24B}
.page-head .eyebrow::before{background:#F0C24B}
.page-head p{color:rgba(255,255,255,.85);max-width:640px;margin-top:10px}
.breadcrumbs{font-size:13px;color:rgba(255,255,255,.6);margin-bottom:12px}
.breadcrumbs a{color:rgba(255,255,255,.75)}
/* CONTENT */
.entry-content{max-width:720px;margin:0 auto;font-size:16.5px}
.entry-content h2{margin:38px 0 14px}
.entry-content h3{margin:28px 0 12px}
.entry-content p{margin-bottom:18px}
.entry-content ul,.entry-content ol{margin:0 0 18px 22px}
.entry-content table{width:100%;border-collapse:collapse;font-size:14.5px;margin-bottom:20px;background:#fff}
.entry-content th{background:var(--deep);color:#fff;padding:12px 16px;text-align:left}
.entry-content td{padding:12px 16px;border-top:1px solid #efe9e1}
.takeaways{background:#fff;border-left:4px solid var(--gold);border-radius:12px;padding:22px 26px;margin:26px 0;box-shadow:0 8px 24px rgba(10,77,122,.06)}
.inline-cta{background:rgba(0,132,195,.06);border:1px solid rgba(0,132,195,.2);border-radius:14px;padding:20px 24px;margin:30px 0;font-size:15px}
/* RESPONSIVE */
@media(max-width:980px){
  .hero .wrap,.why-grid,.revs .wrap,.flag .wrap{grid-template-columns:1fr}
  .trustcard{grid-template-columns:repeat(2,1fr)}
  .ogrid,.proc-steps{grid-template-columns:repeat(2,1fr)}
  .pgrid,.ccards{grid-template-columns:1fr 1fr}
  .checks{columns:1}
  .nav-list{display:none;flex-direction:column;background:#fff;box-shadow:0 20px 40px rgba(10,77,122,.15);padding:16px 26px}
  .main-nav.open .nav-list{display:flex;position:absolute;left:0;right:0;top:76px}
  .sub-menu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;display:none;padding-left:14px}
  .menu-item-has-children.open > .sub-menu{display:block}
  .burger{display:block}
  .nav-cta{display:none}
  .why-left{position:static}
}
@media(max-width:560px){
  section,.section{padding:56px 0}
  .trustcard,.ogrid,.proc-steps,.pgrid,.ccards{grid-template-columns:1fr}
  .trustwrap{margin-top:-70px}
  .hero{padding-bottom:110px}
  .wa-float span{display:none}
  .wa-float{padding:14px}
}

/* =====================================================================
   GUTENBERG LAYOUT ADAPTATIONS — match the WP-rendered DOM.
   Grids apply to inner containers; section groups carry bg/padding.
   ===================================================================== */

/* Section paddings (no <section> tags in block content) */
.hero{padding:0 0 150px}
.why,.vs,.proc,.other{padding:84px 0;background:#fff}
.flag{padding:84px 0}
.revs{padding:84px 0}
.faq{padding:84px 0}
.cta-band{padding:64px 0}

/* Constrain inner containers of full-width section groups */
.hero>.wp-block-group__inner-container,
.vs>.wp-block-group__inner-container,
.flag>.wp-block-group__inner-container,
.revs>.wp-block-group__inner-container,
.proc>.wp-block-group__inner-container,
.other>.wp-block-group__inner-container,
.cta-band>.wp-block-group__inner-container,
.cta-inner>.wp-block-group__inner-container{max-width:1140px;margin:0 auto;padding:0 26px;position:relative}

/* HERO: 2-col grid on inner container */
.hero>.wp-block-group__inner-container{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:end;padding-top:90px;padding-bottom:0}
.hero>.wp-block-group__inner-container::after{content:"";position:absolute;left:-9999px}
.tank{border-radius:20px 20px 0 0;aspect-ratio:4/4.6;box-shadow:0 -20px 70px rgba(0,0,0,.35)}
.tank>.wp-block-group__inner-container{height:100%;display:flex;flex-direction:column;gap:6px;align-items:center;justify-content:center}

/* TRUST */
.trustwrap{position:relative;z-index:5;margin-top:-120px}
.trustwrap>.wp-block-group__inner-container{max-width:1140px;margin:0 auto;padding:0 26px}
.trustcard>.wp-block-group__inner-container{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;background:#fff;border-radius:22px;box-shadow:0 24px 60px rgba(10,77,122,.14);padding:34px 36px}

/* WHY */
.why-grid>.wp-block-group__inner-container{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:start}
.why-left{position:sticky;top:110px}
.wcard>.wp-block-group__inner-container{display:flex;gap:20px}
.wcard .num{margin:0}

/* FLAG */
.flag>.wp-block-group__inner-container{display:grid;grid-template-columns:.92fr 1.08fr;gap:56px;align-items:center;padding-top:84px;padding-bottom:84px}

/* REVIEWS */
.revs-grid>.wp-block-group__inner-container{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:start}
.rev>.wp-block-group__inner-container{display:block}

/* OTHER GRID */
.ogrid>.wp-block-group__inner-container{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:38px}

/* PROCESS */
.proc-steps>.wp-block-group__inner-container{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:44px}

/* FAQ */
.faq>.wp-block-group__inner-container{max-width:840px}

/* CTA */
.cta-band>.wp-block-group__inner-container,.cta-inner>.wp-block-group__inner-container{text-align:center}
.cta-band .wp-block-buttons{display:flex;justify-content:center}

/* Feature/ocard paragraph margins reset inside groups */
.ogrid p{margin:0 0 12px}
.wcard p{margin:0 0 8px}
.titem p{margin:0}

/* Responsive */
@media(max-width:980px){
  .hero>.wp-block-group__inner-container{grid-template-columns:1fr;gap:36px}
  .flag>.wp-block-group__inner-container{grid-template-columns:1fr}
  .revs-grid>.wp-block-group__inner-container{grid-template-columns:1fr}
  .why-grid>.wp-block-group__inner-container{grid-template-columns:1fr}
  .trustcard>.wp-block-group__inner-container{grid-template-columns:repeat(2,1fr)}
  .ogrid>.wp-block-group__inner-container{grid-template-columns:repeat(2,1fr)}
  .proc-steps>.wp-block-group__inner-container{grid-template-columns:repeat(2,1fr)}
  .checks{columns:1}
  .trustwrap{margin-top:-70px}
  .why-left{position:static}
}
@media(max-width:560px){
  .trustcard>.wp-block-group__inner-container,
  .ogrid>.wp-block-group__inner-container,
  .proc-steps>.wp-block-group__inner-container{grid-template-columns:1fr}
  .hero{padding-bottom:110px}
  .wa-float span{display:none}
  .wa-float{padding:14px}
}

/* Placeholder image groups */
.flag-img>.wp-block-group__inner-container{position:relative}
.flag-img .ph{aspect-ratio:4/4.2;border-radius:22px;box-shadow:0 24px 60px rgba(0,0,0,.35);color:#4d6b84}
.flag-img .stamp{position:absolute;right:20px;bottom:20px;margin:0}
.step .ph{aspect-ratio:4/3.2;border-radius:18px}

/* =====================================================================
   PREMIUM POLISH — transitions & micro-interactions (brand book)
   ===================================================================== */

/* Header: cleaner, animated underline on hover, shrink on scroll */
.site-header{transition:box-shadow .3s ease, background .3s ease}
.site-header.scrolled{background:rgba(247,245,241,.97);box-shadow:0 6px 24px rgba(10,77,122,.12)}
.site-header.scrolled .nav{height:64px}
.nav{transition:height .3s ease}
.nav-list a{position:relative;transition:color .25s ease}
.nav-list > li > a::after{content:"";position:absolute;left:13px;right:13px;bottom:4px;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
.nav-list > li > a:hover::after{transform:scaleX(1)}
.nav-list .current-menu-item > a::after,.nav-list .current_page_item > a::after{transform:scaleX(1)}
.sub-menu{border:1px solid rgba(10,77,122,.06)}
.sub-menu a{transition:background .2s ease,color .2s ease,padding-left .2s ease}
.sub-menu a:hover{padding-left:18px}

/* Buttons: glow + lift */
.btn{position:relative;transition:transform .25s ease,box-shadow .25s ease,background .25s ease,color .25s ease}
.btn-gold:hover{box-shadow:0 10px 28px rgba(184,134,11,.45)}
.btn-gold:active{transform:translateY(0) scale(.98)}

/* Scroll reveal (JS adds .in-view; reduced-motion respected) */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s cubic-bezier(.16,.84,.32,1)}
.reveal.in-view{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
  .reveal{opacity:1;transform:none;transition:none}
  html{scroll-behavior:auto}
}

/* Hero: gradient sheen + gentle float on tank */
.hero{animation:heroFade .9s ease both}
@keyframes heroFade{from{opacity:0}to{opacity:1}}
.tank{transition:transform .5s ease}
.tank:hover{transform:translateY(-6px)}
.hero .eyebrow{animation:fadeUp .8s .1s ease both}
.hero h1{animation:fadeUp .8s .2s ease both}
.hero .sub{animation:fadeUp .8s .3s ease both}
.hero .hero-cta{animation:fadeUp .8s .4s ease both}
@keyframes fadeUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

/* Cards: richer hover */
.wcard{position:relative;overflow:hidden}
.wcard::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--gold);transform:scaleY(0);transition:transform .3s ease;transform-origin:top}
.wcard:hover::before{transform:scaleY(1)}
.ocard{transition:transform .3s ease,box-shadow .3s ease,border-top-color .3s ease}
.ocard:hover{box-shadow:0 18px 44px rgba(10,77,122,.14)}

/* Table: premium row feel */
.vs-table td{transition:background .2s ease}
.vs-table tbody tr:hover td{background:rgba(0,132,195,.06)}

/* FAQ: smooth accordion */
.faq-list details{transition:border-color .25s ease,box-shadow .25s ease}
.faq-list details[open]{border-color:rgba(184,134,11,.45);box-shadow:0 10px 30px rgba(10,77,122,.08)}
.faq-list details p{animation:faqIn .3s ease}
@keyframes faqIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}

/* CTA band: button glow */
.cta-band .btn-gold{box-shadow:0 8px 24px rgba(184,134,11,.4)}

/* Footer links: slide on hover */
.footer-list a{transition:color .2s ease,padding-left .2s ease;display:inline-block}
.footer-list a:hover{padding-left:6px}

/* Floating WhatsApp: pulse ring */
@keyframes waPulse{0%{box-shadow:0 0 0 0 rgba(184,134,11,.5)}70%{box-shadow:0 0 0 16px rgba(184,134,11,0)}100%{box-shadow:0 0 0 0 rgba(184,134,11,0)}}
.wa-float{animation:waPulse 2.6s infinite}
@media(prefers-reduced-motion:reduce){.wa-float{animation:none}}

/* Placeholder panels: subtle inner gradient + label */
.ph{transition:filter .3s ease}
.ph:hover{filter:brightness(1.03)}

/* =====================================================================
   COLLISION FIXES — neutralize static-sample selectors in block DOM
   ===================================================================== */

/* Old rules put single inner-container child into 1 of N columns → narrow */
.why-grid,.ogrid,.proc-steps,.trustcard,.revs-grid{display:block}

/* Remove static wave divider (caused the cutoff band under hero) */
.hero::after{display:none}

/* Constrain sections missing it */
.why>.wp-block-group__inner-container{max-width:1140px;margin:0 auto;padding:84px 26px}
.faq>.wp-block-group__inner-container{max-width:840px;margin:0 auto;padding:84px 26px}
.ogrid>.wp-block-group__inner-container,.proc-steps>.wp-block-group__inner-container,
.trustcard>.wp-block-group__inner-container,.revs-grid>.wp-block-group__inner-container,
.why-grid>.wp-block-group__inner-container{width:100%}

/* Trust card: old rule styled outer as 4-col grid; keep it as the card */
.trustcard{display:block;background:#fff;border-radius:22px;box-shadow:0 24px 60px rgba(10,77,122,.14);padding:34px 36px}
.trustcard>.wp-block-group__inner-container{display:grid;grid-template-columns:repeat(4,1fr);gap:26px}
.trustwrap{margin-bottom:10px}
.titem>.wp-block-group__inner-container{display:flex;flex-direction:column;justify-content:center;gap:2px;border-left:3px solid rgba(184,134,11,.55);padding-left:14px}
.titem strong{display:block;font-family:'Poppins',sans-serif;font-size:14.5px;line-height:1.3;color:var(--deep)}
.titem span{font-size:12.5px;color:#77838d}
.titem p{margin:0}

/* WP buttons: brand them (WP defaults were overriding gold) */
.wp-block-button__link{border-radius:999px !important;font-family:'Poppins',sans-serif !important;font-weight:600 !important;font-size:15.5px !important;padding:15px 28px !important;background:var(--gold) !important;color:#fff !important;transition:transform .25s ease,box-shadow .25s ease,background .25s ease !important}
.wp-block-button__link:hover{background:#9a7109 !important;color:#fff !important;transform:translateY(-2px);box-shadow:0 10px 28px rgba(184,134,11,.45)}
.wp-block-button__link:active{transform:translateY(0) scale(.98)}
.wp-block-button.is-style-outline .wp-block-button__link{background:transparent !important;border:2px solid var(--gold);color:var(--gold) !important}
.wp-block-button.is-style-outline .wp-block-button__link:hover{background:var(--gold) !important;color:#fff !important}
.why,.faq{padding:0;background:#fff}
.faq>.wp-block-group__inner-container{padding-top:84px;padding-bottom:84px}
.why>.wp-block-group__inner-container{padding-top:84px;padding-bottom:84px}

/* FINAL MICRO-POLISH */
/* Hero H1 presence + tighter eyebrow spacing */
.hero h1{margin:0 0 18px;font-size:clamp(34px,4.6vw,54px)}
.hero-copy>.wp-block-group__inner-container>*+*{margin-top:0}
/* Breathing room between trust card and next section */
.why>.wp-block-group__inner-container{padding-top:96px}
/* Flagship stamp: pinned to image corner cleanly */
.flag-img{position:relative}
.flag-img .ph{width:100%}
/* Process tiles: label alignment */
.step p{margin:14px 0 0}
/* Consistent section rhythm */
.vs>.wp-block-group__inner-container,.proc>.wp-block-group__inner-container,.other>.wp-block-group__inner-container{padding-top:84px;padding-bottom:84px}
.flag>.wp-block-group__inner-container{padding-top:84px;padding-bottom:84px}

/* =====================================================================
   RANGE SECTION BACKGROUND + MOBILE HARDENING
   ===================================================================== */

/* Full Range: warm off-white band so the section has presence */
.other{background:var(--cream)}
.other .ocard{background:#fff;border-top:3px solid rgba(184,134,11,0)}
.other .ocard:hover{border-top-color:var(--gold)}
/* Process band stays white; give its tiles a visible edge */
.step .ph{border:1px solid rgba(10,77,122,.08)}

/* Mobile: horizontal scroll for tables instead of squish */
html,body{overflow-x:hidden}
.vs-table,.wp-block-table{overflow-x:auto;-webkit-overflow-scrolling:touch}
.vs-table table,.wp-block-table table{min-width:520px}

@media(max-width:560px){
  .hero>.wp-block-group__inner-container{padding-top:52px;gap:28px}
  .hero{padding-bottom:110px}
  .trustwrap{margin-top:-58px}
  .trustcard{padding:24px 20px}
  .trustcard>.wp-block-group__inner-container{gap:18px}
  .why>.wp-block-group__inner-container,.vs>.wp-block-group__inner-container,
  .flag>.wp-block-group__inner-container,.revs>.wp-block-group__inner-container,
  .proc>.wp-block-group__inner-container,.other>.wp-block-group__inner-container,
  .faq>.wp-block-group__inner-container{padding-left:20px;padding-right:20px}
  .why-grid>.wp-block-group__inner-container{gap:40px}
  .revs-grid>.wp-block-group__inner-container{gap:38px}
  .flag>.wp-block-group__inner-container{gap:34px}
  .revs-left .big{font-size:44px}
  .cta-band>.wp-block-group__inner-container{padding-top:48px;padding-bottom:48px}
}

/* Trust card: kill blank line from <br> after block strong */
.titem br{display:none}
.titem strong{margin-bottom:2px}
.titem span{line-height:1.35;display:block}

/* =====================================================================
   HERO BACKGROUND DESIGN RESTORED (glow + water wave at bottom)
   ===================================================================== */
.hero{position:relative;overflow:hidden;padding-bottom:0}
.hero>.wp-block-group__inner-container{position:relative;z-index:1;padding-bottom:150px}
.hero::before{content:"";position:absolute;inset:0;pointer-events:none;background:
 radial-gradient(900px 500px at 85% 10%,rgba(0,132,195,.35),transparent 60%),
 radial-gradient(700px 400px at 5% 90%,rgba(0,132,195,.18),transparent 60%)}
.hero::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:90px;background:var(--cream);
 clip-path:polygon(0 100%,0 55%,12% 38%,30% 52%,52% 30%,74% 46%,100% 28%,100% 100%);z-index:0}
/* trust card floats over the wave into the next section */
.trustwrap{margin-top:-150px}
.trustwrap>.wp-block-group__inner-container{position:relative;z-index:6}
.tank{position:relative;z-index:1}

/* Trust items: identical alignment for all four */
.titem>.wp-block-group__inner-container{justify-content:center;border-left:0;padding-left:0}
.titem{position:relative;padding-left:16px;min-height:52px;display:flex;align-items:center}
.titem::before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:3px;border-radius:3px;background:rgba(184,134,11,.55)}
.titem strong{margin-bottom:2px}

/* =====================================================================
   HERO: strengthen background design so it reads clearly
   ===================================================================== */
.hero{background:linear-gradient(165deg,#0d5a8f 0%,#0A4D7A 45%,#073a5c 100%)}
.hero::before{background:
 radial-gradient(1100px 620px at 85% 8%,rgba(0,132,195,.55),transparent 62%),
 radial-gradient(900px 500px at 0% 100%,rgba(0,132,195,.30),transparent 60%),
 radial-gradient(500px 300px at 45% 120%,rgba(127,196,236,.14),transparent 70%)}
.hero::after{height:110px;background:var(--cream);opacity:1;
 clip-path:polygon(0 100%,0 58%,12% 40%,30% 54%,52% 32%,74% 48%,100% 30%,100% 100%)}

/* Trust items: pixel-identical top-aligned typography */
.titem{display:block;padding-left:16px}
.titem::before{top:4px;bottom:auto;height:calc(100% - 8px)}
.titem>.wp-block-group__inner-container{display:block}
.titem strong{display:block;margin:0 0 3px;font-size:14.5px;line-height:1.25;font-family:'Poppins',sans-serif}
.titem span{display:block;font-size:12.5px;line-height:1.35}

/* =====================================================================
   ROOT FIX: WP flow-gap margins breaking our grids
   (first grid child has no margin; others get block-gap → misalignment)
   ===================================================================== */
.trustcard>.wp-block-group__inner-container>*>.wp-block-group__inner-container,
.trustcard>.wp-block-group__inner-container>*>.wp-block-group__inner-container>*,
.trustcard>.wp-block-group__inner-container>*>.wp-block-group__inner-container{margin-top:0 !important;margin-bottom:0 !important}

/* Trust: card shows 30px of hero (wave) below it, like the v2 sample */
.trustwrap{margin-top:-120px !important}

/* Uniform trust items: kill per-item flow margins completely */
.trustcard .titem,
.trustcard .titem>.wp-block-group__inner-container,
.trustcard .titem>.wp-block-group__inner-container>*{margin-top:0 !important;margin-bottom:0 !important}

/* Same flow-gap fix for every grid we own */
.why-grid>.wp-block-group__inner-container>*>.wp-block-group__inner-container,
.why-grid>.wp-block-group__inner-container>*{margin-top:0 !important}
.revs-grid>.wp-block-group__inner-container>*>.wp-block-group__inner-container,
.revs-grid>.wp-block-group__inner-container>*{margin-top:0 !important}
.ogrid>.wp-block-group__inner-container>*{margin-top:0 !important}
.proc-steps>.wp-block-group__inner-container>*{margin-top:0 !important}
.flag>.wp-block-group__inner-container>*{margin-top:0 !important}
.hero>.wp-block-group__inner-container>*{margin-top:0 !important}
.why-cards>.wp-block-group__inner-container>*+*{margin-top:22px !important}
.rev-list>.wp-block-group__inner-container>*+*{margin-top:20px !important}
.faq-list>.wp-block-group__inner-container>*+*{margin-top:12px !important}

/* =====================================================================
   FIXES: sticky broken by overflow-x:hidden; wave hidden by card overlap
   ===================================================================== */

/* overflow-x:clip doesn't create a scroll container → sticky works again */
html,body{overflow-x:clip}

/* Trust card overlaps only the flat bottom of the wave → curve visible */
.trustwrap{margin-top:-34px !important}

/* =====================================================================
   SECTION RHYTHM — no two adjacent bands share a background
   hero(marine+wave) → why(cream) → vs(white) → flag(marine) → revs(cream)
   → proc(white) → other(cream) → faq(white) → cta(skywell) → footer(marine)
   ===================================================================== */
.why{background:var(--cream)}
.vs{background:#fff}
/* Cards read clearly on the cream band */
.why .wcard{background:#fff}
.why-left .h2 .mark{background:linear-gradient(transparent 62%,rgba(184,134,11,.28) 62%)}

/* =====================================================================
   FIX: hero background invisible on first paint (compositing bug).
   Force own GPU layer; remove the fragile load animation.
   ===================================================================== */
.hero{animation:none;transform:translateZ(0);will-change:auto;isolation:isolate}
.hero>.wp-block-group__inner-container{transform:translateZ(0)}
.flag{transform:translateZ(0)}

/* =====================================================================
   HERO DECOR AS REAL ELEMENTS (immune to compositing/repaint bugs)
   ===================================================================== */
/* Neutralize the old pseudo-element decor entirely */
.hero::before,.hero::after{display:none !important}

/* Real decor layer */
.hero .hero-bg{position:absolute;inset:0;z-index:0;pointer-events:none;background:
 radial-gradient(1100px 620px at 85% 8%,rgba(0,132,195,.55),transparent 62%),
 radial-gradient(900px 500px at 0% 100%,rgba(0,132,195,.30),transparent 60%),
 radial-gradient(500px 300px at 45% 120%,rgba(127,196,236,.14),transparent 70%)}
.hero .hero-bg>.wp-block-group__inner-container{position:static}
.hero .ring1,.hero .ring2{position:absolute;border:2px dashed rgba(255,255,255,.16);border-radius:50%;background:transparent}
.hero .ring1{top:-70px;left:-70px;width:250px;height:250px}
.hero .ring2{bottom:40px;right:-90px;width:320px;height:320px}
.hero .hero-bg .wp-block-group__inner-container{margin:0}

/* Real SVG wave */
.hero .hero-wave{position:absolute;left:0;right:0;bottom:-1px;width:100%;height:110px;z-index:0;display:block}

/* Keep content + tank above the decor */
.hero>.wp-block-group__inner-container{position:relative;z-index:1}
.hero{overflow:hidden}

/* =====================================================================
   WAVE IN FLOW — deterministic rendering between hero and card
   ===================================================================== */
/* Old absolute wave CSS is moot; new composition: */
.trustwrap{margin-top:-110px !important}
.trustwave{display:block;width:100%;height:90px;position:relative;z-index:5;transform:translateZ(0)}
.trustcard{position:relative;z-index:6;margin-top:-14px}
.hero>.wp-block-group__inner-container{padding-bottom:150px}
/* Ring near bottom-right stays clear of the wave */
.hero .ring2{bottom:150px}

/* =====================================================================
   FINAL MOBILE FIXES — intentionally last so they win the cascade
   ===================================================================== */
@media(max-width:760px){
  /* Trust: 2x2 grid, never 4-across (was overflowing right) */
  .trustcard>.wp-block-group__inner-container{grid-template-columns:repeat(2,1fr) !important;gap:18px;padding:26px 22px}
  /* Footer: stack columns; long address wraps */
  .fgrid{grid-template-columns:1fr !important;gap:34px}
  .footer-list li,.fgrid p,.ftagline{overflow-wrap:anywhere}
  /* Hero: calmer, less crowded */
  .hero>.wp-block-group__inner-container{padding-top:44px;gap:30px}
  .hero h1{font-size:clamp(30px,8vw,38px);margin-bottom:14px}
  .hero .sub{font-size:15.5px}
  .hero .hero-bg .ring1,.hero .hero-bg .ring2{display:none}
  .tank{aspect-ratio:4/3.4}
  .hero>.wp-block-group__inner-container{padding-bottom:120px}
  /* Wave + card: smaller overlap, snug */
  .trustwrap{margin-top:-58px !important}
  .trustwave{height:56px}
  .trustcard{margin-top:-10px}
  /* Products/process grids stay 1-col; comparison table scrolls */
  .ogrid>.wp-block-group__inner-container,.proc-steps>.wp-block-group__inner-container{grid-template-columns:1fr !important}
  .vs-table .wp-block-table{max-width:100%}
}

/* =====================================================================
   INNER PAGE SECTIONS — same design system as home
   ===================================================================== */
.page-head .eyebrow{margin-bottom:10px}
.page-head .hero-sub{color:rgba(255,255,255,.85);font-size:17px;max-width:720px;margin-top:12px}
.page-body{padding:0 !important}
.page-body>.wrap{max-width:none;padding:0;margin:0}
.page-body .wrap>*{max-width:none}

.abt{padding:84px 0}
.abt>.wp-block-group__inner-container{max-width:1140px;margin:0 auto;padding:0 26px}
.abt-white{background:#fff}
.abt-cream{background:var(--cream)}
.abt-marine{background:linear-gradient(165deg,#0d5a8f 0%,#0A4D7A 45%,#073a5c 100%);color:#fff}
.abt-marine .h2,.abt-marine h2{color:#fff}
.abt-marine p{color:rgba(255,255,255,.88)}
.abt-marine .step .ph{border:1px solid rgba(255,255,255,.14)}
.abt-marine .step p{color:#fff}
.abt .h2{margin-bottom:16px}
.abt p{margin-bottom:0}
.abt p+p{margin-top:14px}
.abt .ogrid{margin-top:38px}
.abt-marine .proc-steps{margin-top:44px}
@media(max-width:760px){
  .abt{padding:56px 0}
  .abt>.wp-block-group__inner-container{padding-left:20px;padding-right:20px}
}

/* About: 3-up review grid */
.revgrid>.wp-block-group__inner-container{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:30px 0 18px;width:100%}
.revgrid .rev>.wp-block-group__inner-container{display:block}
@media(max-width:980px){.revgrid>.wp-block-group__inner-container{grid-template-columns:1fr}}

/* =====================================================================
   PRODUCT HERO: CTA inside the band; spec bar floats over it
   ===================================================================== */
.page-head{padding-bottom:96px}
.page-head .hero-sub{margin-bottom:0}
.page-head-cta{margin-top:22px}
.page-head-cta .btn{display:inline-block;padding:15px 28px;border-radius:999px;font-family:'Poppins',sans-serif;font-weight:600;font-size:15.5px;background:var(--gold);color:#fff;transition:transform .25s ease,box-shadow .25s ease,background .25s ease}
.page-head-cta .btn:hover{background:#9a7109;transform:translateY(-2px);box-shadow:0 10px 28px rgba(184,134,11,.45)}
.page-head-micro{color:rgba(255,255,255,.75);font-size:13px;margin-top:10px}
.abt-overlap{margin-top:-64px;position:relative;z-index:5}
.abt-overlap>.wp-block-group__inner-container{max-width:980px}
@media(max-width:760px){
  .page-head{padding-bottom:70px}
  .abt-overlap{margin-top:-46px}
}

/* =====================================================================
   MOBILE: SS/product page hardening
   ===================================================================== */
@media(max-width:560px){
  /* CTA buttons: full-width, stacked (no side-by-side overflow) */
  .wp-block-buttons{flex-direction:column !important;align-items:stretch}
  .wp-block-buttons .wp-block-button{width:100%}
  .wp-block-buttons .wp-block-button__link{display:block;text-align:center}
  /* CTA band inner padding */
  .cta-inner>.wp-block-group__inner-container{padding-left:20px;padding-right:20px}
  /* Hero band breathing room */
  .page-head .wrap{padding-left:20px;padding-right:20px}
  .page-head .hero-sub{font-size:15px}
  /* Tables: edge-to-edge scroll */
  .vs-table,.wp-block-table{margin-left:0;margin-right:0}
}

/* =====================================================================
   PRODUCT HERO GALLERY (native scroll-snap, no slider library)
   ===================================================================== */
.page-head{overflow:hidden;background:linear-gradient(165deg,#0d5a8f 0%,#0A4D7A 45%,#073a5c 100%)}
.page-head .wrap{position:relative;z-index:1}
.phero.has-gallery{display:grid;grid-template-columns:1.02fr .98fr;gap:48px;align-items:center;padding-top:64px;padding-bottom:96px}
.phero.has-gallery .page-head-cta{margin-bottom:0}
.phero-gallery-wrap{position:relative}
.hero-gallery{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;border-radius:20px;scrollbar-width:none;-webkit-overflow-scrolling:touch;transform:translateZ(0)}
.hero-gallery::-webkit-scrollbar{display:none}
.hg-slide{flex:0 0 100%;scroll-snap-align:center;margin:0}
.hg-slide img{width:100%;height:auto;aspect-ratio:4/3.4;object-fit:cover;border-radius:20px;display:block}
.hg-ph{aspect-ratio:4/3.4;border-radius:20px;display:flex;align-items:center;justify-content:center;color:#4d6b84;font-size:14px;font-family:'Poppins',sans-serif;letter-spacing:.04em}
.hg-dots{display:flex;gap:8px;justify-content:center;margin-top:16px}
.hg-dots button{width:8px;height:8px;border-radius:6px;border:0;background:rgba(255,255,255,.35);cursor:pointer;padding:0;transition:width .25s ease,background .25s ease}
.hg-dots button.on{background:var(--gold);width:22px}
.hg-arrow{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:50%;border:0;background:rgba(255,255,255,.94);color:var(--deep);font-size:22px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 18px rgba(0,0,0,.28);z-index:2;transition:transform .2s ease}
.hg-arrow:hover{transform:translateY(-50%) scale(1.07)}
.hg-prev{left:12px}
.hg-next{right:12px}
@media(max-width:760px){
  .phero.has-gallery{grid-template-columns:1fr;gap:30px;padding-top:48px;padding-bottom:80px}
  .hg-arrow{display:none}
  .hg-slide img,.hg-ph{aspect-ratio:4/3}
}

/* =====================================================================
   MOBILE TABLES: spec tables stack as cards; big tables scroll w/ bar
   ===================================================================== */
@media(max-width:560px){
  /* 2-column spec tables → stacked cards, fully visible */
  .specwrap .wp-block-table thead{display:none}
  .specwrap .wp-block-table tr{display:block;margin:0 0 12px;border:1px solid rgba(10,77,122,.12);border-radius:14px;overflow:hidden;box-shadow:0 4px 14px rgba(10,77,122,.06)}
  .specwrap .wp-block-table td{display:block;width:100%;border:0;text-align:left;font-size:14.5px}
  .specwrap .wp-block-table td:first-child{background:rgba(10,77,122,.06);font-weight:600;color:var(--deep);font-family:'Poppins',sans-serif;font-size:13px;letter-spacing:.02em}
  .specwrap>.wp-block-group__inner-container{padding:0}

  /* 3-4 column tables: visible scrollbar = clear swipe affordance */
  .vs-table .wp-block-table{overflow-x:auto;scrollbar-width:thin;scrollbar-color:rgba(10,77,122,.35) rgba(10,77,122,.08)}
  .vs-table .wp-block-table::-webkit-scrollbar{height:7px}
  .vs-table .wp-block-table::-webkit-scrollbar-track{background:rgba(10,77,122,.08);border-radius:4px}
  .vs-table .wp-block-table::-webkit-scrollbar-thumb{background:rgba(10,77,122,.35);border-radius:4px}
  .vs-table .wp-block-table table{min-width:540px}
}

/* Products hub: 3-col grid so 5 cards sit 3+2 with equal heights */
.ogrid-hub>.wp-block-group__inner-container{grid-template-columns:repeat(3,1fr);gap:22px}
.ogrid-hub .ocard{display:flex;flex-direction:column}
.ogrid-hub .ocard>.wp-block-group__inner-container{display:flex;flex-direction:column;flex:1}
.ogrid-hub .ocard p:last-child{margin-top:auto}
@media(max-width:980px){.ogrid-hub>.wp-block-group__inner-container{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.ogrid-hub>.wp-block-group__inner-container{grid-template-columns:1fr !important}}

/* Contact mini-FAQ (template) */
.faq-list details{background:#fff;border:1px solid rgba(10,77,122,.1);border-radius:14px;padding:16px 20px;margin:0 0 12px;cursor:pointer}
.faq-list summary{font-family:'Poppins',sans-serif;font-weight:600;color:var(--deep);font-size:15.5px;list-style:none;position:relative;padding-right:28px}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:"+";position:absolute;right:2px;top:0;font-size:18px;color:var(--gold);transition:transform .25s ease}
.faq-list details[open] summary::after{transform:rotate(45deg)}
.faq-list details p{margin:12px 0 0;color:#4a545c;font-size:14.5px;line-height:1.65}

/* =====================================================================
   CONTACT: airy visit-info rows + uniform reassurance strip
   ===================================================================== */
.visit-info{display:grid;gap:26px;margin:28px 0 26px;max-width:520px}
.vlabel{font-family:'Poppins',sans-serif;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin:0 0 6px}
.vitem p{margin:0;line-height:1.7;color:#4a545c;font-size:15px}
.vitem p strong{color:var(--deep)}
.reassure{display:flex;gap:44px;row-gap:18px;flex-wrap:wrap;justify-content:center}
.ritem{position:relative;padding-left:16px;display:flex;align-items:center;font-family:'Poppins',sans-serif;font-size:14px;color:var(--deep)}
.ritem::before{content:"";position:absolute;left:0;top:3px;bottom:3px;width:3px;border-radius:3px;background:rgba(184,134,11,.55)}
@media(max-width:760px){
  .reassure{justify-content:flex-start;gap:22px}
  .visit-info{gap:20px}
}

/* =====================================================================
   CONTACT: visit+form grid — stacks on mobile, form first (CRO)
   ===================================================================== */
.contact-visit-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:50px;align-items:start}
@media(max-width:760px){
  .contact-visit-grid{grid-template-columns:1fr;gap:44px}
  .cvisit-form{order:-1}
  .cvisit-form .sc-card{padding:24px 20px}
  .visit-info{margin:22px 0 22px}
}

/* Footer social: real brand icons */
.social a{display:flex;align-items:center;justify-content:center;width:38px;height:38px}
.social svg{width:17px;height:17px;fill:#c8d4dc;transition:fill .2s ease,transform .2s ease}
.social a:hover svg{fill:var(--gold);transform:translateY(-2px)}

/* Blog: featured post card */
.fcard{display:grid;grid-template-columns:1.05fr 1fr;gap:44px;align-items:center;background:#fff;border-radius:22px;box-shadow:0 24px 60px rgba(10,77,122,.12);overflow:hidden}
.fcard .fthumb{display:block;min-height:300px;background:linear-gradient(150deg,#dcebf5,#c9dfea)}
.fcard .fbody{padding:40px 44px 40px 0}
.fcard h2{margin:10px 0 12px;font-size:clamp(22px,2.6vw,30px)}
.fcard h2 a{color:var(--deep)}
.fcard .ex{color:#4a545c;line-height:1.7;margin-bottom:14px}
@media(max-width:860px){.fcard{grid-template-columns:1fr}.fcard .fbody{padding:28px 24px}.fcard .fthumb{min-height:220px}}

/* Blog article: TOC, brand note, anchor offsets */
.entry-content h2{scroll-margin-top:110px}
.toc-box{background:rgba(10,77,122,.05);border:1px solid rgba(10,77,122,.12);border-left:4px solid var(--gold);border-radius:14px;padding:18px 22px;margin:26px 0}
.toc-box .toc-title{font-family:'Poppins',sans-serif;font-weight:600;color:var(--deep);font-size:13px;letter-spacing:.1em;text-transform:uppercase;margin:0 0 10px}
.toc-box ul{margin:0;padding-left:18px}
.toc-box li{margin:5px 0}
.toc-box a{color:var(--deep);font-size:14.5px}
.toc-box a:hover{color:var(--gold)}
.brand-note{background:rgba(10,77,122,.05);border-left:4px solid var(--skywell);border-radius:12px;padding:14px 18px;color:#4a545c;font-size:14px}

/* News: prominent dates (trust signal) + category tags */
.ncard .ndate{font-family:'Poppins',sans-serif;font-weight:600;color:var(--skywell);font-size:14px;margin-top:12px}
.fcard .ndate{font-family:'Poppins',sans-serif;font-weight:600;color:var(--skywell);font-size:15px;margin:6px 0 10px}
.ncard .cat,.fcard .cat{color:var(--gold)}
