/* ══════════════════════════════════════════════════════════
   CASCADE CLEAN — Shared Stylesheet
══════════════════════════════════════════════════════════ */
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;background:#0a1628;}
body{font-family:'Inter',sans-serif;background:#fff;color:#0a1628;overflow-x:hidden;}

/* Removed page transitions */

/* No page transitions — instant SPA swap with prefetched images */

/* Home-only transition (used by SPA nav when target is index.html) */
.page-leaving-home{
  animation:leave-home .28s ease-in forwards !important;
  pointer-events:none;
}
@keyframes leave-home{
  from{opacity:1;transform:scale(1);filter:blur(0);}
  to{opacity:0;transform:scale(1.025);filter:blur(3px);}
}
.page-arrived-home{
  animation:arrive-home .42s cubic-bezier(.2,.7,.2,1) both;
}
@keyframes arrive-home{
  from{opacity:0;transform:scale(.985);filter:blur(2px);}
  to{opacity:1;transform:none;filter:blur(0);}
}
a{text-decoration:none;color:inherit;}

/* ── NAV ── */
.nav{
  position:fixed;top:0;left:0;right:0;z-index:999;
  height:58px;padding:0 60px;
  display:flex;align-items:center;justify-content:space-between;
  transition:background .3s,box-shadow .3s;
}
.nav.stuck,.nav.solid{background:rgba(8,14,30,.97);box-shadow:0 1px 0 rgba(255,255,255,.06);}
.nav-logo{display:flex;align-items:center;}
.nav-logo img{height:42px;width:auto;display:block;}
.nav-right{display:flex;align-items:center;gap:50px;flex:1;justify-content:flex-end;}
.nav-right a.lnk{color:rgba(255,255,255,.62);font-size:.88rem;font-weight:600;transition:color .2s;position:relative;letter-spacing:.02em;}
.nav-right a.lnk:hover{color:#fff;}
.nav-right a.lnk.active{color:#fff;}
.nav-right a.lnk.active::after{content:'';position:absolute;left:0;right:0;bottom:-19px;height:2px;background:#3b82f6;}
.nav-cta{
  background:linear-gradient(180deg,#3b82f6,#2563eb);color:#fff;font-size:.76rem;font-weight:800;
  padding:10px 18px;border-radius:5px;letter-spacing:.04em;text-transform:uppercase;
  box-shadow:0 4px 14px rgba(37,99,235,.45),inset 0 1px 0 rgba(255,255,255,.18);
  transition:transform .15s,box-shadow .2s,background .2s;
  display:inline-flex;align-items:center;gap:6px;
}
.nav-cta:hover{background:linear-gradient(180deg,#4f8ff7,#2563eb);transform:translateY(-1px);box-shadow:0 6px 18px rgba(37,99,235,.55);}

/* Mobile menu button */
.nav-burger{display:none;background:transparent;border:none;cursor:pointer;width:28px;height:28px;flex-direction:column;justify-content:center;gap:5px;padding:0;}
.nav-burger span{display:block;width:22px;height:2px;background:#fff;}

/* ── HERO (home only) ── */
.hero{
  min-height:100vh;background:#0a1628;
  position:relative;display:flex;align-items:center;
  padding:0 60px;overflow:hidden;color:#fff;
}
.hero-bg-img{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:78% 55%;
  z-index:0;filter:contrast(1.1) saturate(1.1) brightness(1.15);
}
.hero-bg-overlay{
  position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(100deg,rgba(8,14,28,.92) 0%,rgba(8,14,28,.75) 32%,rgba(8,14,28,.18) 65%,rgba(8,14,28,0) 100%);
}
.hero::before{
  content:'';position:absolute;inset:0;pointer-events:none;z-index:2;
  }
.hero-layout{
  position:relative;z-index:3;
  display:block;max-width:1100px;margin:0 auto;width:100%;padding-top:58px;
}
.hero-layout > div{max-width:880px;}
.hero-flag{
  position:absolute;top:84px;right:60px;z-index:3;
  display:flex;align-items:center;gap:7px;
  background:rgba(255,255,255,.96);color:#0a1628;
  font-size:.56rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;
  padding:7px 14px;border-radius:30px;
  box-shadow:0 6px 22px rgba(0,0,0,.32);
}
.hero-flag::before{content:'★';color:#2563eb;font-size:.7rem;}
.hero-credit{
  position:absolute;bottom:18px;left:60px;z-index:3;
  font-size:.55rem;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.42);
  display:flex;align-items:center;gap:6px;
}
.hero-credit::before{content:'';width:14px;height:1px;background:rgba(255,255,255,.32);}
@media(max-width:680px){
  .hero-flag{top:70px;right:14px;font-size:.5rem;padding:5px 10px;}
  .hero-credit{left:20px;bottom:14px;font-size:.48rem;}
}
.hero-eyebrow{font-size:.58rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,.3);margin-bottom:18px;display:flex;align-items:center;gap:9px;}
.hero-eyebrow::before{content:'';width:20px;height:1px;background:rgba(255,255,255,.25);}
.hero-h1{font-size:clamp(4.2rem,9vw,7.4rem);font-weight:900;line-height:.9;text-transform:uppercase;letter-spacing:-.025em;color:#fff;margin-bottom:28px;}
.hero-h1 .blue{color:#3b82f6;}
.hero-p{font-size:.86rem;color:rgba(255,255,255,.62);line-height:1.74;margin-bottom:28px;max-width:430px;font-style:italic;text-shadow:0 1px 4px rgba(0,0,0,.3);}
.hero-btns{display:flex;gap:11px;margin-bottom:46px;flex-wrap:wrap;}
.hbtn-b{
  background:linear-gradient(180deg,#3b82f6,#2563eb);color:#fff;font-size:.8rem;font-weight:800;
  padding:14px 24px;border-radius:6px;border:none;cursor:pointer;font-family:'Inter',sans-serif;
  display:inline-flex;align-items:center;gap:8px;text-transform:uppercase;letter-spacing:.07em;
  box-shadow:0 8px 22px rgba(37,99,235,.45),inset 0 1px 0 rgba(255,255,255,.18);
  transition:transform .15s,box-shadow .2s,background .2s;
}
.hbtn-b:hover{background:linear-gradient(180deg,#4f8ff7,#2563eb);transform:translateY(-2px);box-shadow:0 12px 28px rgba(37,99,235,.6),inset 0 1px 0 rgba(255,255,255,.22);}
.hbtn-b:active{transform:translateY(0);}
.hbtn-g{background:rgba(255,255,255,.08);color:#fff;font-size:.82rem;font-weight:800;padding:13px 22px;border-radius:6px;border:2px solid rgba(255,255,255,.55);cursor:pointer;font-family:'Inter',sans-serif;transition:background .2s,border-color .2s,transform .15s;display:inline-flex;align-items:center;letter-spacing:.04em;backdrop-filter:blur(4px);}
.hbtn-g:hover{background:rgba(255,255,255,.14);border-color:#fff;transform:translateY(-1px);}
.hero-stats{display:flex;gap:36px;}
.hero-stats{display:flex;gap:36px;flex-wrap:nowrap;align-items:flex-start;}
.hstat{flex:0 0 auto;min-width:0;}
.hstat .n{font-size:1.75rem;font-weight:900;color:#3b82f6;display:block;line-height:1;margin-bottom:6px;}
.hstat .n.ck-n{font-size:1.85rem;line-height:1;}
.hstat .l{font-size:.68rem;font-weight:700;color:rgba(255,255,255,.55);text-transform:uppercase;letter-spacing:.11em;display:block;white-space:nowrap;}
.hstat .sub{font-size:.6rem;font-weight:700;color:#3b82f6;letter-spacing:.12em;text-transform:uppercase;display:block;margin-top:6px;opacity:.95;white-space:nowrap;}

/* Amped-up hero CTA */
.hero-cta{
  font-size:.95rem !important;padding:17px 30px !important;
  animation:hero-cta-pulse 2.4s ease-in-out infinite;
}
@keyframes hero-cta-pulse{
  0%,100%{box-shadow:0 8px 22px rgba(37,99,235,.45),0 0 0 0 rgba(59,130,246,.45),inset 0 1px 0 rgba(255,255,255,.18);}
  50%{box-shadow:0 10px 28px rgba(37,99,235,.55),0 0 0 14px rgba(59,130,246,0),inset 0 1px 0 rgba(255,255,255,.18);}
}
.hero-cta:hover{animation-play-state:paused;}
.hero-photo{position:relative;}
.hero-photo img{width:100%;height:380px;object-fit:cover;border-radius:4px;display:block;}
.li-badge{position:absolute;top:11px;left:11px;background:#fff;color:#0a1628;font-size:.56rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:5px 10px;border-radius:20px;display:flex;align-items:center;gap:5px;}
.li-badge::before{content:'★';color:#2563eb;}

/* ── PAGE HERO (subpages) ── */
.phero{
  background:#0a1628;color:#fff;padding:138px 60px 78px;position:relative;overflow:hidden;
}
.phero::before{
  content:'';position:absolute;inset:0;pointer-events:none;
  }
.phero-wrap{max-width:1100px;margin:0 auto;position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end;}
.crumb{font-size:.58rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.32);margin-bottom:22px;display:flex;align-items:center;gap:10px;}
.crumb a{transition:color .2s;}
.crumb a:hover{color:#fff;}
.crumb .sep{color:rgba(255,255,255,.16);}
.crumb .here{color:#3b82f6;}
.phero-h1{font-size:clamp(2.3rem,5.5vw,4rem);font-weight:900;line-height:.95;text-transform:uppercase;letter-spacing:-.02em;color:#fff;margin-bottom:14px;}
.phero-h1 .blue{color:#3b82f6;}
.phero-sub{font-size:.86rem;color:rgba(255,255,255,.48);line-height:1.7;max-width:480px;}

/* ── TICKER ── */
.ticker{background:#0c1a30;padding:10px 0;overflow:hidden;border-top:1px solid rgba(59,130,246,.15);border-bottom:1px solid rgba(59,130,246,.15);}
.ticker-track{display:inline-flex;white-space:nowrap;animation:roll 30s linear infinite;}
.ti{font-size:.63rem;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:rgba(255,255,255,.3);padding:0 20px;flex-shrink:0;display:flex;align-items:center;gap:8px;}
.ti::after{content:'·';color:rgba(59,130,246,.48);font-size:1rem;}
@keyframes roll{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* ── SHARED ── */
.lbl{font-size:.56rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#2563eb;margin-bottom:11px;display:flex;align-items:center;gap:8px;}
.lbl::before{content:'—';font-weight:700;}
.lbl.w{color:#3b82f6;}.lbl.w::before{color:#3b82f6;}
.h2{font-size:clamp(1.9rem,3vw,2.55rem);font-weight:800;line-height:1.1;color:#0a1628;}
.h2.w{color:#fff;}
.two{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:start;margin-bottom:52px;}
.sdesc{font-size:.82rem;color:#6b7280;line-height:1.7;}
.sdesc.w{color:rgba(255,255,255,.37);}
.wrap{max-width:1100px;margin:0 auto;}

/* ── SERVICES section (cards) ── */
.s-svc{background:#fff;padding:92px 60px;}
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#e5e7eb;border:1px solid #e5e7eb;border-radius:4px;overflow:hidden;}
.sc{background:#fff;padding-bottom:24px;text-align:left;display:block;color:inherit;}
.sc-img{width:100%;height:200px;object-fit:cover;display:block;}
.sc-body{padding:18px 18px 0;}
.sc-n{font-size:.53rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#9ca3af;margin-bottom:6px;display:block;}
.sc-title{font-size:.96rem;font-weight:800;color:#0a1628;margin-bottom:8px;}
.sc-desc{font-size:.78rem;color:#6b7280;line-height:1.65;margin-bottom:14px;}
.sc-link{font-size:.65rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:#0a1628;display:inline-flex;align-items:center;gap:5px;border-bottom:1px solid #0a1628;padding-bottom:1px;transition:gap .2s;}
.sc-link:hover{gap:9px;}

/* ── ABOUT light section ── */
.s-about{background:#f4f5f7;padding:92px 60px;}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start;}
.about-main p{font-size:.85rem;color:#374151;line-height:1.82;margin-bottom:16px;}
.about-main p:last-child{margin-bottom:0;}
.svc-details{display:flex;flex-direction:column;gap:32px;}
.svc-detail{border-left:2px solid #2563eb;padding-left:18px;}
.svc-detail h4{font-size:.9rem;font-weight:800;color:#0a1628;margin-bottom:7px;}
.svc-detail p{font-size:.8rem;color:#6b7280;line-height:1.72;margin:0;}

/* ── FOUNDERS / dark band ── */
.s-founders{background:#0a1628;padding:92px 60px;position:relative;overflow:hidden;}
.s-founders::before{content:'';position:absolute;inset:0;pointer-events:none;}
.founders-grid{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;}
.fdesc{font-size:.82rem;color:rgba(255,255,255,.42);line-height:1.72;margin-bottom:26px;max-width:430px;}
.f-chips{display:flex;gap:12px;margin-bottom:26px;flex-wrap:wrap;}
.f-chip{border:1px solid rgba(255,255,255,.12);border-radius:3px;padding:11px 16px;flex:1;min-width:140px;max-width:180px;}
.f-chip-n{font-size:.52rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#3b82f6;margin-bottom:5px;display:block;}
.f-chip-name{font-size:.84rem;font-weight:800;color:#fff;}
.btn-ow{background:transparent;color:#fff;font-size:.72rem;font-weight:700;padding:11px 20px;border-radius:4px;border:1.5px solid rgba(255,255,255,.2);cursor:pointer;font-family:'Inter',sans-serif;display:inline-flex;align-items:center;gap:7px;text-transform:uppercase;letter-spacing:.08em;transition:border-color .2s;}
.btn-ow:hover{border-color:#fff;}
.f-frame{border:1px solid rgba(255,255,255,.09);border-radius:3px;overflow:hidden;background:rgba(255,255,255,.025);max-width:380px;margin-left:auto;}
.f-frame-img{width:100%;height:auto;max-height:420px;object-fit:cover;object-position:center 30%;display:block;}
.f-frame{max-width:380px;margin-left:auto;}
.f-frame-placeholder{height:360px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:rgba(255,255,255,.025);}
.f-frame-placeholder span{font-size:.58rem;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.16);}
.f-frame-bar{display:flex;justify-content:space-between;padding:9px 13px;border-top:1px solid rgba(255,255,255,.07);}
.f-frame-bar span{font-size:.51rem;letter-spacing:.07em;text-transform:uppercase;color:rgba(255,255,255,.18);}
.f-frame-cap{padding:7px 13px;border-top:1px solid rgba(255,255,255,.05);font-size:.52rem;letter-spacing:.07em;text-transform:uppercase;color:rgba(255,255,255,.16);display:flex;align-items:center;gap:6px;}
.f-frame-cap::before{content:'◀';font-size:.46rem;}

/* ── BEFORE/AFTER ── */
.s-work{background:#fff;padding:92px 60px;}
.ba-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;}
.ba{border-radius:4px;overflow:hidden;border:1px solid #e5e7eb;cursor:col-resize;user-select:none;}
.ba-stage{position:relative;height:340px;}
.ba-after,.ba-before{position:absolute;inset:0;background-size:cover;background-position:center;}
.ba-before{clip-path:inset(0 50% 0 0);}
.ba-line{position:absolute;top:0;bottom:0;left:50%;width:2px;background:#fff;transform:translateX(-50%);z-index:5;pointer-events:none;}
.ba-knob{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:34px;height:34px;border-radius:50%;background:#fff;box-shadow:0 2px 12px rgba(0,0,0,.3);display:flex;align-items:center;justify-content:center;z-index:6;pointer-events:none;}
.ba-knob svg{width:16px;height:16px;fill:#374151;}
.ba-labels{position:absolute;top:9px;inset-x:9px;left:9px;right:9px;display:flex;justify-content:space-between;z-index:7;pointer-events:none;}
.ba-label{background:rgba(0,0,0,.5);color:#fff;font-size:.54rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:3px 8px;border-radius:3px;}
.ba-foot{padding:14px 15px;border-top:1px solid #f3f4f6;}
.ba-foot h4{font-size:.85rem;font-weight:800;color:#0a1628;margin-bottom:2px;}
.ba-foot p{font-size:.7rem;color:#9ca3af;}
.ba-link{color:#2563eb;font-weight:700;letter-spacing:.04em;text-transform:uppercase;font-size:.62rem;border-bottom:1px solid #2563eb;padding-bottom:1px;margin-left:4px;transition:opacity .2s;}
.ba-link:hover{opacity:.7;}

/* Home page services-as-sliders grid (3 col) */
.svc-ba-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.svc-ba-grid .ba-stage{height:240px;}
@media(max-width:900px){
  .svc-ba-grid{grid-template-columns:1fr;}
}

/* ── REVIEWS dark ── */
.s-reviews{background:#0a1628;padding:92px 60px;position:relative;overflow:hidden;}
.s-reviews::before{content:'';position:absolute;inset:0;pointer-events:none;}
.rev-wrap{position:relative;z-index:1;}
.rev-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.rc{background:rgba(255,255,255,.042);border:1px solid rgba(255,255,255,.07);border-radius:3px;padding:24px 20px;}
.rc-q{font-size:.79rem;color:rgba(255,255,255,.63);line-height:1.76;margin-bottom:20px;font-style:italic;}
.rc-name{font-size:.63rem;font-weight:700;color:#3b82f6;letter-spacing:.07em;text-transform:uppercase;margin-bottom:3px;}
.rc-loc{font-size:.56rem;color:rgba(255,255,255,.2);text-transform:uppercase;letter-spacing:.1em;}

/* ── CTA band ── */
.s-cta{position:relative;padding:92px 60px;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;overflow:hidden;}
.cta-bg{position:absolute;inset:0;z-index:0;background:linear-gradient(to right,rgba(5,10,24,.96) 40%,rgba(5,10,24,.72) 100%),#0a1628;}
.cta-bg::after{content:'';position:absolute;inset:0;pointer-events:none;}
.cta-l{position:relative;z-index:1;}
.cta-l h2{font-size:clamp(1.75rem,2.8vw,2.3rem);font-weight:800;color:#fff;line-height:1.14;margin-bottom:13px;}
.cta-l p{font-size:.81rem;color:rgba(255,255,255,.42);line-height:1.7;margin-bottom:24px;max-width:360px;}
.cta-btns{display:flex;gap:10px;flex-wrap:wrap;}
.cb-blue{
  background:linear-gradient(180deg,#3b82f6,#2563eb);color:#fff;font-size:.82rem;font-weight:800;
  padding:14px 24px;border-radius:6px;border:none;cursor:pointer;font-family:'Inter',sans-serif;
  text-transform:uppercase;letter-spacing:.06em;display:inline-flex;align-items:center;gap:8px;
  box-shadow:0 8px 22px rgba(37,99,235,.45),inset 0 1px 0 rgba(255,255,255,.18);
  transition:transform .15s,box-shadow .2s,background .2s;
}
.cb-blue:hover{background:linear-gradient(180deg,#4f8ff7,#2563eb);transform:translateY(-2px);box-shadow:0 12px 28px rgba(37,99,235,.6),inset 0 1px 0 rgba(255,255,255,.22);}
.cb-blue:active{transform:translateY(0);}
.cb-ghost{background:transparent;color:#fff;font-size:.75rem;font-weight:600;padding:11px 18px;border-radius:5px;border:1.5px solid rgba(255,255,255,.24);cursor:pointer;font-family:'Inter',sans-serif;transition:border-color .2s;display:inline-flex;align-items:center;}
.cb-ghost:hover{border-color:#fff;}
.cta-r{position:relative;z-index:1;}
.area-box{background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.09);border-radius:5px;padding:24px;}
.area-tag{font-size:.53rem;font-weight:700;letter-spacing:.17em;text-transform:uppercase;color:#4ecdc4;margin-bottom:9px;display:block;}
.area-box h4{font-size:.93rem;font-weight:800;color:#fff;margin-bottom:15px;}
.areas{display:grid;grid-template-columns:1fr 1fr;gap:5px 18px;margin-bottom:17px;}
.areas span{font-size:.75rem;color:rgba(255,255,255,.42);display:flex;align-items:center;gap:5px;}
.areas span::before{content:'◦';color:#3b82f6;}
.hrs-tag{font-size:.53rem;font-weight:700;letter-spacing:.17em;text-transform:uppercase;color:#4ecdc4;margin-bottom:6px;display:block;}
.hrs{font-size:.75rem;color:rgba(255,255,255,.32);line-height:1.6;}

/* ── FOOTER ── */
footer{background:#060c1c;padding:52px 60px 26px;}
.foot-grid{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:160px 1fr 1fr 1fr;gap:44px;margin-bottom:36px;align-items:start;}
.foot-logo{display:flex;align-items:flex-start;}
.foot-logo img{height:90px;width:auto;display:block;}
.foot-mtn{font-size:2rem;line-height:1;}
.foot-brand{font-size:.56rem;font-weight:900;color:#0a1628;letter-spacing:.08em;text-transform:uppercase;text-align:center;line-height:1.3;}
.foot-sub{font-size:.44rem;font-weight:600;color:#6b7280;letter-spacing:.1em;text-transform:uppercase;text-align:center;}
footer h5{font-size:.58rem;font-weight:700;text-transform:uppercase;letter-spacing:.13em;color:rgba(255,255,255,.34);margin-bottom:13px;}
footer ul{list-style:none;}
footer ul li{margin-bottom:8px;}
footer ul li a{color:rgba(255,255,255,.26);font-size:.77rem;transition:color .2s;}
footer ul li a:hover{color:rgba(255,255,255,.68);}
.foot-contact p{font-size:.77rem;color:rgba(255,255,255,.26);margin-bottom:7px;line-height:1.5;}
.foot-contact a{color:rgba(255,255,255,.26);transition:color .2s;}
.foot-contact a:hover{color:rgba(255,255,255,.66);}
.foot-bottom{max-width:1100px;margin:0 auto;padding-top:20px;border-top:1px solid rgba(255,255,255,.06);font-size:.67rem;color:rgba(255,255,255,.14);text-align:center;}

/* ══════════════════════════════════════════════════════════
   SIGNATURE CARE PLANS PAGE
══════════════════════════════════════════════════════════ */
.s-plans-intro{background:#f4f5f7;padding:92px 60px;}
.intro-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:60px;align-items:start;}
.intro-points{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#e5e7eb;border:1px solid #e5e7eb;border-radius:4px;overflow:hidden;}
.ip{background:#f4f5f7;padding:26px 24px;}
.ip-n{font-size:.55rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#3b82f6;margin-bottom:11px;}
.ip h4{font-size:.95rem;font-weight:800;color:#0a1628;margin-bottom:7px;}
.ip p{font-size:.78rem;color:#6b7280;line-height:1.7;}

.s-plans{background:#fff;padding:92px 60px;}
.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:stretch;}
.plan{
  position:relative;background:#fff;border:1px solid #e5e7eb;border-radius:6px;
  display:flex;flex-direction:column;
  transition:transform .25s ease, box-shadow .25s ease;overflow:hidden;
}
.plan:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(10,22,40,.09);}
.plan-stripe{height:5px;background:linear-gradient(90deg,#93c5fd,#3b82f6);}
.plan-cascade .plan-stripe{background:linear-gradient(90deg,#3b82f6,#1d4ed8);height:7px;}
.plan-summit .plan-stripe{background:linear-gradient(90deg,#1e3a8a,#0a1628,#1d4ed8);height:5px;}
.plan.featured{border-color:#2563eb;box-shadow:0 14px 38px rgba(37,99,235,.18);transform:translateY(-6px);}
.plan.featured:hover{transform:translateY(-10px);}
.plan-flag{
  position:absolute;top:14px;right:14px;background:#2563eb;color:#fff;
  font-size:.54rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase;
  padding:5px 11px;border-radius:30px;
}
.plan-head{padding:30px 28px 0;}
.plan-tier{font-size:.55rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#9ca3af;margin-bottom:10px;display:block;}
.plan-name{font-size:1.8rem;font-weight:900;color:#0a1628;letter-spacing:-.02em;line-height:1;margin-bottom:6px;}
.plan-tag{font-size:.82rem;color:#6b7280;font-style:italic;margin-bottom:18px;}

/* Pricing block */
.plan-price{
  display:flex;align-items:center;gap:14px;
  padding:14px 16px;border-radius:8px;background:#f9fafb;border:1px solid #e5e7eb;
  margin-bottom:18px;
}
.plan-price-tag{font-size:.55rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#9ca3af;}
.plan-price-line{font-size:.92rem;font-weight:800;color:#0a1628;}

/* Discount badge — Cascade + Summit */
.plan-discount{
  background:linear-gradient(180deg,#3b82f6,#2563eb);
  border:1.5px solid #1d4ed8;
  padding:18px 22px;
  position:relative;overflow:hidden;
  box-shadow:0 12px 28px rgba(37,99,235,.45),inset 0 1px 0 rgba(255,255,255,.22);
  animation:plan-pulse 2.6s ease-in-out infinite;
}
.plan-discount::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(circle at 20% 30%, rgba(255,255,255,.28), transparent 55%);
  pointer-events:none;
}
.plan-discount-num{
  font-size:3.8rem;font-weight:900;line-height:1;letter-spacing:-.04em;
  color:#fff;
  position:relative;z-index:1;
  display:inline-flex;align-items:flex-start;
  text-shadow:0 3px 14px rgba(0,0,0,.22);
}
.plan-discount-pct{font-size:1.9rem;font-weight:900;line-height:1;margin-top:6px;margin-left:2px;color:#fff;}
.plan-discount-lbl{
  font-size:.62rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;
  color:#fff;line-height:1.25;position:relative;z-index:1;
  opacity:.95;
}

@keyframes plan-pulse{
  0%,100%{box-shadow:0 12px 28px rgba(37,99,235,.45),0 0 0 0 rgba(59,130,246,.5),inset 0 1px 0 rgba(255,255,255,.22);}
  50%{box-shadow:0 12px 32px rgba(37,99,235,.55),0 0 0 12px rgba(59,130,246,0),inset 0 1px 0 rgba(255,255,255,.22);}
}

/* Summit gets a deeper navy + brighter sheen */
.summit-discount{
  background:linear-gradient(180deg,#3b82f6,#1e3a8a);
  border-color:#1e3a8a;
  box-shadow:0 14px 32px rgba(30,58,138,.5),inset 0 1px 0 rgba(255,255,255,.22);
}
.summit-discount::before{
  background:radial-gradient(circle at 20% 30%, rgba(255,255,255,.35), transparent 55%);
}
.summit-discount .plan-discount-num,.summit-discount .plan-discount-pct,.summit-discount .plan-discount-lbl{color:#fff;}

/* Subtle animated shine across discount badges */
.plan-discount::after{
  content:'';position:absolute;top:0;bottom:0;left:-40%;width:40%;
  background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.6) 50%,transparent 70%);
  animation:plan-shine 4.5s ease-in-out infinite;
  pointer-events:none;
}
@keyframes plan-shine{
  0%,55%{transform:translateX(0);}
  70%{transform:translateX(360%);}
  100%{transform:translateX(360%);}
}
.plan-body{padding:0 28px;flex:1;}
.plan-line{display:flex;align-items:baseline;justify-content:space-between;padding:14px 0;border-top:1px solid #e5e7eb;border-bottom:1px solid #e5e7eb;margin-bottom:18px;}
.plan-cadence-tag{font-size:.55rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#9ca3af;}
.plan-cadence{font-size:1rem;font-weight:800;color:#0a1628;}
.plan-best{margin-bottom:20px;}
.plan-best-tag{font-size:.55rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#3b82f6;margin-bottom:6px;display:block;}
.plan-best p{font-size:.78rem;color:#374151;line-height:1.6;}
.plan-list{list-style:none;margin-bottom:24px;}
.plan-list li{font-size:.78rem;color:#374151;padding:8px 0;display:flex;align-items:flex-start;gap:10px;border-bottom:1px solid #f3f4f6;line-height:1.5;}
.plan-list li:last-child{border-bottom:none;}
.plan-list li::before{
  content:'✓';color:#2563eb;font-weight:900;font-size:.7rem;
  width:16px;height:16px;border-radius:50%;background:#eff6ff;
  display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px;
}
.plan-foot{padding:0 28px 28px;display:flex;flex-direction:column;gap:8px;}
.plan-cta{width:100%;justify-content:center;}
.plan-quote-line{font-size:.62rem;color:#9ca3af;letter-spacing:.06em;text-align:center;text-transform:uppercase;font-weight:600;}

/* COMPARISON MATRIX */
.s-plan-matrix{background:#0a1628;color:#fff;padding:92px 60px;}
.matrix{border:1px solid rgba(255,255,255,.08);border-radius:6px;overflow:hidden;background:rgba(255,255,255,.025);}
.matrix-head,.matrix-row{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;}
.matrix-head{background:rgba(255,255,255,.04);border-bottom:1px solid rgba(255,255,255,.08);}
.matrix-row{border-bottom:1px solid rgba(255,255,255,.05);}
.matrix-row:last-child{border-bottom:none;}
.m-cell{padding:18px 22px;font-size:.82rem;color:rgba(255,255,255,.78);display:flex;align-items:center;justify-content:center;text-align:center;border-left:1px solid rgba(255,255,255,.04);}
.m-cell:first-child{border-left:none;}
.matrix-head .m-cell{font-weight:800;color:#fff;font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;padding:18px 22px;}
.m-cell.m-feature{justify-content:flex-start;text-align:left;color:rgba(255,255,255,.6);font-weight:500;}
.matrix-head .m-cell.m-feature{color:rgba(255,255,255,.4);}
.m-cell.featured{color:#3b82f6;font-weight:700;background:rgba(59,130,246,.07);}
.m-cell .ck{color:#3b82f6;font-weight:900;font-size:1rem;}

@media(max-width:900px){
  .s-plans-intro,.s-plans,.s-plan-matrix{padding-left:20px;padding-right:20px;}
  .s-plans-intro,.s-plans,.s-plan-matrix{padding-top:64px;padding-bottom:64px;}
  .intro-grid{grid-template-columns:1fr;gap:32px;}
  .intro-points{grid-template-columns:1fr;}
  .plan-grid{grid-template-columns:1fr;}
  .plan.featured{transform:none;}
  .plan.featured:hover{transform:translateY(-4px);}
  .matrix-head,.matrix-row{grid-template-columns:1.4fr .9fr .9fr .9fr;}
  .m-cell{padding:14px 12px;font-size:.7rem;}
  .matrix-head .m-cell{font-size:.55rem;padding:14px 12px;}
}

/* ── MODAL ── */
.overlay{display:none;position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.65);backdrop-filter:blur(5px);align-items:center;justify-content:center;padding:20px;}
.overlay.open{display:flex;}
.modal{background:#fff;border-radius:10px;padding:38px;width:100%;max-width:430px;animation:pop .22s ease;}
@keyframes pop{from{opacity:0;transform:scale(.95) translateY(8px);}to{opacity:1;transform:none;}}
.modal h3{font-size:1.3rem;font-weight:800;color:#0a1628;margin-bottom:4px;}
.m-sub{font-size:.76rem;color:#9ca3af;margin-bottom:20px;}
label{display:block;font-size:.65rem;font-weight:700;color:#374151;text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;}
input,select,textarea{width:100%;padding:9px 12px;border:1.5px solid #e5e7eb;border-radius:5px;font-family:'Inter',sans-serif;font-size:.875rem;color:#111;background:#f9fafb;margin-bottom:11px;outline:none;transition:border-color .2s;}
input:focus,select:focus,textarea:focus{border-color:#3aada4;background:#fff;}
textarea{height:72px;resize:none;}
.m-foot{display:flex;gap:10px;margin-top:4px;}
.m-cancel{background:none;border:1.5px solid #e5e7eb;color:#6b7280;padding:10px 17px;border-radius:5px;cursor:pointer;font-family:'Inter',sans-serif;font-size:.8rem;}
.m-send{
  flex:1;background:linear-gradient(180deg,#3b82f6,#2563eb);color:#fff;border:none;padding:13px;
  border-radius:6px;cursor:pointer;font-family:'Inter',sans-serif;font-size:.9rem;font-weight:800;
  letter-spacing:.04em;text-transform:uppercase;
  box-shadow:0 6px 18px rgba(37,99,235,.4),inset 0 1px 0 rgba(255,255,255,.18);
  transition:transform .15s,box-shadow .2s,background .2s;
}
.m-send:hover{background:linear-gradient(180deg,#4f8ff7,#2563eb);transform:translateY(-1px);box-shadow:0 10px 24px rgba(37,99,235,.55);}

/* ── STICKY QUOTE BAR (top of page, slides in on scroll) ── */
.quote-bar{
  position:fixed;top:0;left:0;right:0;z-index:1500;
  background:#0a1628;color:#fff;
  padding:12px 60px;
  transform:translateY(-110%);
  transition:transform .35s cubic-bezier(.2,.7,.2,1);
  box-shadow:0 6px 22px rgba(0,0,0,.28);
  border-bottom:1px solid rgba(59,130,246,.18);
}
.quote-bar.visible{transform:translateY(0);}
.qb-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:1280px;margin:0 auto;}
.qb-title{flex:1;min-width:0;}
.qb-h{font-size:1.05rem;font-weight:800;letter-spacing:-.005em;line-height:1.15;}
.qb-sub{font-size:.66rem;color:rgba(255,255,255,.55);letter-spacing:.08em;margin-top:3px;text-transform:uppercase;font-weight:600;}
.qb-actions{display:flex;align-items:center;gap:14px;flex-shrink:0;}
.qb-phone{
  font-size:.82rem;font-weight:700;color:rgba(255,255,255,.85);letter-spacing:.02em;
  transition:color .15s;white-space:nowrap;
}
.qb-phone:hover{color:#3b82f6;}
.qb-cta{
  background:linear-gradient(180deg,#3b82f6,#2563eb);color:#fff;border:none;
  padding:12px 22px;border-radius:6px;font-weight:800;cursor:pointer;
  font-family:'Inter',sans-serif;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;
  display:inline-flex;align-items:center;gap:8px;flex-shrink:0;white-space:nowrap;
  box-shadow:0 6px 18px rgba(37,99,235,.45),inset 0 1px 0 rgba(255,255,255,.18);
  transition:transform .15s,box-shadow .2s,background .2s;
}
.qb-cta:hover{background:linear-gradient(180deg,#4f8ff7,#2563eb);transform:translateY(-1px);box-shadow:0 10px 24px rgba(37,99,235,.55);}
.qb-arrow{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;background:rgba(255,255,255,.18);border-radius:50%;font-size:.62rem;}

/* Push the main nav down when bar is visible */
body.qb-visible nav.nav{top:70px;}
nav.nav{transition:top .35s cubic-bezier(.2,.7,.2,1);}

/* Hide the floating pill while the bar is showing (avoid double CTA) */
body.qb-visible .fab-quote{display:none;}

@media(max-width:980px){
  .quote-bar{padding:10px 18px;}
  .qb-h{font-size:.92rem;}
  .qb-sub{font-size:.55rem;}
  .qb-cta{padding:9px 14px;font-size:.7rem;}
  body.qb-visible nav.nav{top:60px;}
}
@media(max-width:680px){
  .qb-phone{display:none;}
  .qb-sub{display:none;}
}
@media(max-width:480px){
  .qb-title{display:none;}
  .qb-cta{flex:1;justify-content:center;}
}

/* ── FLOATING QUOTE PILL (sticky CTA on every page) ── */
.fab-quote{
  position:fixed;bottom:22px;right:22px;z-index:998;
  background:linear-gradient(180deg,#3b82f6,#2563eb);color:#fff;
  font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
  padding:14px 22px;border-radius:999px;border:none;cursor:pointer;
  font-family:'Inter',sans-serif;
  display:inline-flex;align-items:center;gap:8px;
  box-shadow:0 14px 36px rgba(37,99,235,.5),0 0 0 5px rgba(59,130,246,.16),inset 0 1px 0 rgba(255,255,255,.2);
  transition:transform .18s,box-shadow .25s;
  animation:fab-pulse 2.6s ease-in-out infinite;
}
.fab-quote:hover{
  transform:translateY(-3px) scale(1.03);
  box-shadow:0 18px 44px rgba(37,99,235,.65),0 0 0 6px rgba(59,130,246,.22),inset 0 1px 0 rgba(255,255,255,.25);
  animation-play-state:paused;
}
.fab-quote::after{content:'→';font-weight:900;}
@keyframes fab-pulse{
  0%,100%{box-shadow:0 14px 36px rgba(37,99,235,.5),0 0 0 5px rgba(59,130,246,.16),inset 0 1px 0 rgba(255,255,255,.2);}
  50%{box-shadow:0 14px 36px rgba(37,99,235,.55),0 0 0 12px rgba(59,130,246,0),inset 0 1px 0 rgba(255,255,255,.2);}
}
@media(max-width:520px){
  .fab-quote{bottom:14px;right:14px;padding:12px 18px;font-size:.7rem;letter-spacing:.05em;}
}
.overlay.open ~ .fab-quote{display:none;}

/* ── INLINE QUOTE STRIP (mid-page CTA) ── */
.quote-strip{
  background:#0c1a30;padding:30px 60px;
  border-top:1px solid rgba(59,130,246,.18);
  border-bottom:1px solid rgba(59,130,246,.18);
  position:relative;overflow:hidden;
}
.quote-strip::before{
  content:'';position:absolute;inset:0;pointer-events:none;
  }
.qs-inner{
  position:relative;max-width:1100px;margin:0 auto;
  display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap;
}
.qs-text{flex:1;min-width:240px;}
.qs-tag{font-size:.55rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:#3b82f6;display:flex;align-items:center;gap:9px;margin-bottom:6px;}
.qs-tag::before{content:'';width:18px;height:1px;background:#3b82f6;}
.qs-head{font-size:1.05rem;font-weight:800;color:#fff;line-height:1.3;letter-spacing:-.005em;}
.qs-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;}
.qs-call{font-size:.78rem;font-weight:700;color:rgba(255,255,255,.6);letter-spacing:.05em;}
.qs-call b{color:#fff;}
@media(max-width:680px){
  .quote-strip{padding:26px 20px;}
  .qs-head{font-size:.95rem;}
}

/* Success state inside modal */
.m-success{text-align:center;padding:14px 0;}
.m-check{width:54px;height:54px;border-radius:50%;background:#dcfce7;color:#16a34a;font-size:1.7rem;display:flex;align-items:center;justify-content:center;margin:0 auto 14px;}
.m-success h4{font-size:1.1rem;color:#0a1628;font-weight:800;margin-bottom:6px;}
.m-success p{font-size:.8rem;color:#6b7280;line-height:1.6;margin-bottom:16px;}
.m-success .row{display:flex;flex-direction:column;gap:6px;font-size:.78rem;color:#374151;}

/* ══════════════════════════════════════════════════════════
   PAGE-SPECIFIC EXTENSIONS
══════════════════════════════════════════════════════════ */

/* SERVICES PAGE — alternating service blocks */
.svc-block{padding:92px 60px;}
.svc-block:nth-child(even){background:#f4f5f7;}
.svc-row{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;}
.svc-block:nth-child(even) .svc-row{direction:rtl;}
.svc-block:nth-child(even) .svc-row > *{direction:ltr;}
.svc-num{font-size:.6rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:#2563eb;margin-bottom:14px;display:flex;align-items:center;gap:10px;}
.svc-num::before{content:'';width:30px;height:1px;background:#2563eb;}
.svc-h3{font-size:clamp(1.7rem,2.6vw,2.2rem);font-weight:800;line-height:1.1;color:#0a1628;margin-bottom:14px;letter-spacing:-.01em;}
.svc-lead{font-size:.92rem;color:#374151;line-height:1.75;margin-bottom:22px;max-width:480px;}
.svc-list{list-style:none;margin-bottom:28px;}
.svc-list li{font-size:.82rem;color:#374151;padding:10px 0;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;gap:12px;}
.svc-list li::before{content:'';width:18px;height:18px;border-radius:50%;background:#2563eb;flex-shrink:0;position:relative;}
.svc-list li::after{content:'✓';position:absolute;color:#fff;font-size:.62rem;font-weight:900;margin-left:4px;}
.svc-list li{position:relative;}
.svc-img-wrap{position:relative;}
.svc-img-wrap img{width:100%;height:480px;object-fit:cover;border-radius:5px;display:block;}
.svc-img-tag{position:absolute;top:14px;left:14px;background:rgba(10,22,40,.86);color:#fff;font-size:.55rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:6px 11px;border-radius:3px;backdrop-filter:blur(6px);}
.svc-btn-row{display:flex;gap:11px;flex-wrap:wrap;}

/* PROCESS steps */
.s-process{background:#fff;padding:92px 60px;border-top:1px solid #f3f4f6;}
.proc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#e5e7eb;border:1px solid #e5e7eb;border-radius:4px;overflow:hidden;}
.proc-step{background:#fff;padding:30px 24px;}
.proc-n{font-size:2.4rem;font-weight:900;color:#3b82f6;line-height:1;margin-bottom:14px;letter-spacing:-.03em;}
.proc-step h4{font-size:.95rem;font-weight:800;color:#0a1628;margin-bottom:8px;}
.proc-step p{font-size:.76rem;color:#6b7280;line-height:1.65;}

/* WORK PAGE — gallery and broader grid */
.gal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:48px;}
.gal-card{position:relative;border-radius:4px;overflow:hidden;border:1px solid #e5e7eb;cursor:pointer;}
.gal-card img{width:100%;height:230px;object-fit:cover;display:block;transition:transform .5s ease;}
.gal-card:hover img{transform:scale(1.04);}
.gal-meta{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(10,22,40,.94),transparent);color:#fff;padding:30px 16px 14px;}
.gal-meta h5{font-size:.82rem;font-weight:800;margin-bottom:2px;}
.gal-meta span{font-size:.6rem;color:rgba(255,255,255,.55);letter-spacing:.1em;text-transform:uppercase;}

.stat-band{background:#0a1628;padding:60px 60px;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06);position:relative;overflow:hidden;}
.stat-band::before{content:'';position:absolute;inset:0;pointer-events:none;}
.stat-grid{position:relative;max-width:1100px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:40px;}
.stat .n{font-size:2.4rem;font-weight:900;color:#3b82f6;display:block;line-height:1;margin-bottom:6px;letter-spacing:-.02em;}
.stat .l{font-size:.6rem;font-weight:700;color:rgba(255,255,255,.4);text-transform:uppercase;letter-spacing:.12em;}

/* ABOUT PAGE — values grid */
.s-values{background:#fff;padding:92px 60px;}
.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#e5e7eb;border:1px solid #e5e7eb;border-radius:4px;overflow:hidden;margin-top:48px;}
.val{background:#fff;padding:32px 26px;}
.val-num{font-size:.55rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#3b82f6;margin-bottom:12px;}
.val h4{font-size:1rem;font-weight:800;color:#0a1628;margin-bottom:8px;}
.val p{font-size:.8rem;color:#6b7280;line-height:1.7;}

/* CONTACT PAGE */
.s-contact{background:#fff;padding:92px 60px;}
.contact-grid{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:start;}
.contact-form-wrap{background:#0a1628;color:#fff;padding:42px 38px;border-radius:6px;position:relative;overflow:hidden;}
.contact-form-wrap::before{content:'';position:absolute;inset:0;pointer-events:none;}
.contact-form-wrap > *{position:relative;}
.contact-form-wrap h3{font-size:1.4rem;font-weight:800;margin-bottom:6px;color:#fff;}
.contact-form-wrap .m-sub{color:rgba(255,255,255,.42);margin-bottom:22px;}
.contact-form-wrap label{color:rgba(255,255,255,.6);}
.contact-form-wrap input,.contact-form-wrap select,.contact-form-wrap textarea{
  background:rgba(255,255,255,.06);border:1.5px solid rgba(255,255,255,.12);color:#fff;
}
.contact-form-wrap input:focus,.contact-form-wrap select:focus,.contact-form-wrap textarea:focus{
  border-color:#3b82f6;background:rgba(255,255,255,.09);
}
.contact-form-wrap input::placeholder,.contact-form-wrap textarea::placeholder{color:rgba(255,255,255,.32);}
.contact-form-wrap select option{background:#fff;color:#111;}

/* ── CUSTOM DROPDOWN COMPONENT ── */
.dd{position:relative;margin-bottom:11px;}
.dd-trigger{
  width:100%;padding:11px 16px;border-radius:6px;
  background:rgba(255,255,255,.06);
  border:1.5px solid rgba(255,255,255,.12);
  color:#fff;font-family:'Inter',sans-serif;font-size:.875rem;
  display:flex;align-items:center;justify-content:space-between;
  cursor:pointer;text-align:left;
  transition:border-color .2s ease,background .2s ease,box-shadow .2s ease;
}
.dd-trigger:hover{border-color:rgba(59,130,246,.45);background:rgba(255,255,255,.08);}
.dd.open .dd-trigger{
  border-color:#3b82f6;background:rgba(255,255,255,.09);
  box-shadow:0 0 0 3px rgba(59,130,246,.18);
}
.dd-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:rgba(255,255,255,.5);transition:color .15s;}
.dd-label.has-value{color:#fff;}
.dd-chev{
  width:14px;height:10px;color:rgba(255,255,255,.5);flex-shrink:0;margin-left:10px;
  transition:transform .28s cubic-bezier(.4,0,.2,1),color .2s;
}
.dd.open .dd-chev{transform:rotate(180deg);color:#3b82f6;}

.dd-panel{
  position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:50;
  background:#0f1f3a;border:1px solid rgba(59,130,246,.22);border-radius:7px;
  box-shadow:0 18px 44px rgba(0,0,0,.5),0 0 0 1px rgba(0,0,0,.18);
  overflow:hidden;
  opacity:0;transform:translateY(-10px) scale(.97);transform-origin:top center;
  pointer-events:none;
  transition:opacity .2s ease, transform .26s cubic-bezier(.4,0,.2,1);
}
.dd.open .dd-panel{opacity:1;transform:translateY(0) scale(1);pointer-events:auto;}
.dd-opt{
  padding:12px 16px;color:rgba(255,255,255,.78);cursor:pointer;
  font-size:.85rem;font-weight:500;
  display:flex;align-items:center;gap:11px;
  border-bottom:1px solid rgba(255,255,255,.04);
  transition:background .15s ease, color .15s ease, padding-left .15s ease;
}
.dd-opt:last-child{border-bottom:none;}
.dd-opt:hover{background:rgba(59,130,246,.12);color:#fff;padding-left:20px;}
.dd-opt.selected{color:#3b82f6;background:rgba(59,130,246,.08);font-weight:600;}
.dd-opt-ico{
  width:6px;height:6px;border-radius:50%;background:rgba(59,130,246,.5);
  flex-shrink:0;font-size:0;color:transparent;display:inline-block;
  transition:background .15s,transform .15s;
}
.dd-opt:hover .dd-opt-ico,.dd-opt.selected .dd-opt-ico{background:#3b82f6;transform:scale(1.4);}

/* Light variant (used on white backgrounds) */
.dd.light .dd-trigger{background:#f9fafb;border-color:#e5e7eb;color:#111;}
.dd.light .dd-trigger:hover{border-color:#2563eb;background:#fff;}
.dd.light.open .dd-trigger{border-color:#2563eb;background:#fff;box-shadow:0 0 0 3px rgba(37,99,235,.14);}
.dd.light .dd-label{color:#9ca3af;}
.dd.light .dd-label.has-value{color:#111;}
.dd.light .dd-chev{color:#9ca3af;}
.dd.light.open .dd-chev{color:#2563eb;}
.dd.light .dd-panel{background:#fff;border-color:#e5e7eb;box-shadow:0 18px 44px rgba(10,22,40,.14);}
.dd.light .dd-opt{color:#374151;border-color:#f3f4f6;}
.dd.light .dd-opt:hover{background:rgba(37,99,235,.07);color:#0a1628;}
.dd.light .dd-opt.selected{color:#2563eb;background:rgba(37,99,235,.06);}

.contact-side h3{font-size:1.05rem;font-weight:800;color:#0a1628;margin-bottom:6px;}
.contact-side .lbl{margin-top:0;}
.contact-block{margin-bottom:32px;padding-bottom:28px;border-bottom:1px solid #e5e7eb;}
.contact-block:last-child{border-bottom:none;}
.contact-row{display:flex;align-items:flex-start;gap:14px;margin-bottom:14px;}
.contact-ico{width:34px;height:34px;border-radius:6px;background:#eff6ff;color:#2563eb;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:800;}
.contact-row h5{font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:#9ca3af;margin-bottom:3px;}
.contact-row p,.contact-row a{font-size:.85rem;color:#0a1628;line-height:1.5;display:block;}
.contact-row a:hover{color:#2563eb;}

/* FAQ */
.s-faq{background:#f4f5f7;padding:92px 60px;}
.faq-list{margin-top:36px;display:flex;flex-direction:column;gap:1px;background:#e5e7eb;border:1px solid #e5e7eb;border-radius:4px;overflow:hidden;}
.faq{background:#fff;padding:22px 26px;cursor:pointer;}
.faq summary{font-size:.92rem;font-weight:700;color:#0a1628;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:'+';font-size:1.4rem;font-weight:300;color:#3b82f6;transition:transform .2s;}
.faq[open] summary::after{content:'−';}
.faq p{font-size:.82rem;color:#6b7280;line-height:1.72;margin-top:12px;}

/* Service area visual */
.map-box{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;padding:34px;height:100%;display:flex;flex-direction:column;}
.map-box h4{font-size:1rem;font-weight:800;color:#0a1628;margin-bottom:6px;}
.map-box .areas{margin-top:16px;}
.map-box .areas span{color:#374151;}
.map-box .areas span::before{color:#2563eb;}

/* ══════════════════════════════════════════════════════════
   RESPONSIVE
══════════════════════════════════════════════════════════ */
@media(max-width:900px){
  .nav{padding:0 18px;}
  .nav-right{display:none;position:absolute;top:58px;left:0;right:0;background:rgba(8,14,30,.98);flex-direction:column;align-items:stretch;gap:0;padding:14px 0;border-top:1px solid rgba(255,255,255,.06);}
  .nav-right.open{display:flex;}
  .nav-right a.lnk{padding:13px 22px;font-size:.86rem;}
  .nav-right a.lnk.active::after{display:none;}
  .nav-right .nav-cta{margin:8px 22px;text-align:center;}
  .nav-burger{display:flex;}

  .hero,.s-svc,.s-about,.s-founders,.s-work,.s-reviews,.s-cta,.svc-block,.s-process,.s-values,.s-contact,.s-faq,.phero,.stat-band{padding-left:20px;padding-right:20px;}
  .hero,.s-svc,.s-about,.s-founders,.s-work,.s-reviews,.s-cta,.svc-block,.s-process,.s-values,.s-contact,.s-faq{padding-top:64px;padding-bottom:64px;}
  .phero{padding-top:118px;padding-bottom:50px;}
  .hero-layout{grid-template-columns:1fr;padding-top:44px;}
  .hero-photo{display:none;}
  .two,.svc-grid,.ba-grid,.rev-grid,.s-cta,.founders-grid,.about-grid,.phero-wrap,.svc-row,.proc-grid,.values-grid,.contact-grid,.gal-grid,.stat-grid{grid-template-columns:1fr;}
  .stat-grid{gap:28px;}
  .proc-grid,.values-grid{grid-template-columns:1fr 1fr;}
  .svc-img-wrap img{height:280px;}
  .svc-block:nth-child(even) .svc-row{direction:ltr;}
  footer{padding:44px 20px 22px;}
  .foot-grid{grid-template-columns:1fr 1fr;gap:24px;}
}
@media(max-width:520px){
  .proc-grid,.values-grid{grid-template-columns:1fr;}
  .foot-grid{grid-template-columns:1fr;}
  .hero-stats{flex-wrap:wrap;gap:22px;}
}
