
:root{
  --navy:#133965; --navy-deep:#081D36; --ink:#050F1F; --silk-hi:#1C4A7A;
  --gold:#D3A24F; --azure:#1B75BC; --slate:#6B8AA1; --bronze:#8C6C3F;
  --cream:#F5F1E8; --white:#fff; --gray:#1C1C1C;
  --gold-grad:linear-gradient(135deg,#f7e7bd 0%,#e3bd6f 38%,#D3A24F 62%,#a9772f 100%);
  --hairline:rgba(211,162,79,.22);
  --font-heading:'Oswald','Arial Narrow',Arial,sans-serif;
  --font-body:'Roboto Condensed','Arial Narrow',Arial,sans-serif;
  --font-serif:'Playfair Display',Georgia,serif;
  --card-radius:8px;
  --card-pad:28px;
  --card-light:linear-gradient(180deg,#ffffff 0%,#f3f7fa 100%);
  --card-light-border:rgba(19,57,101,.16);
  --card-dark:linear-gradient(145deg,rgba(19,57,101,.88),rgba(5,15,31,.94));
  --card-dark-border:rgba(211,162,79,.24);
  --card-shadow:0 18px 42px rgba(19,57,101,.12);
  --card-shadow-dark:0 22px 48px rgba(3,9,20,.38);
  --ease-in:cubic-bezier(.16,1,.3,1);
  --ease:cubic-bezier(.22,.61,.36,1);
  --maxw:1180px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth; overflow-x:hidden}
body{
  font-family:var(--font-body);
  color:var(--cream); background:var(--ink);
  line-height:1.62; -webkit-font-smoothing:antialiased; overflow-x:hidden;
}
/* ---------- background layers ---------- */
.bg-fixed{position:fixed; inset:0; z-index:-3;
  background:url('data:image/jpeg;base64,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') center/cover no-repeat; background-attachment:fixed;}
.bg-overlay{position:fixed; inset:0; z-index:-2;
  background:linear-gradient(125deg,rgba(5,15,30,.46),rgba(6,21,42,.58));}
.bg-vignette{position:fixed; inset:0; z-index:-2; pointer-events:none;
  background:radial-gradient(120% 120% at 70% 18%,transparent 40%,rgba(3,9,20,.55) 100%);}
.bg-grain{position:fixed; inset:0; z-index:-1; pointer-events:none; opacity:.05; mix-blend-mode:soft-light;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");}

/* ---------- typography helpers ---------- */
h1,h2,h3,.display{font-family:var(--font-heading); font-weight:700; line-height:1.02; letter-spacing:0; color:var(--white);}
h1{font-size:clamp(46px,7vw,94px);} h2{font-size:clamp(32px,4.6vw,64px);}
h3{font-size:clamp(21px,2.4vw,27px); font-weight:600;}
p{color:var(--cream); opacity:.92; font-size:clamp(15px,1.2vw,18px);}
.serif{font-family:var(--font-serif); font-style:italic; font-weight:700;
  background:var(--gold-grad); -webkit-background-clip:text; background-clip:text; color:transparent;}
.eyebrow{font-family:var(--font-body);font-weight:700;text-transform:uppercase;
letter-spacing:.32em;font-size:clamp(11px,1vw,13px);color:var(--slate);
display:inline-flex;align-items:center;gap:.55em;}

.eyebrow.center{justify-content:center;}

.eyebrow.center{justify-content:center;}
.gold-rule{height:1px;width:100px;margin:16px 0;position:relative;
background:linear-gradient(90deg,transparent 0%,rgba(248,233,189,.5) 15%,#D3A24F 50%,rgba(169,119,47,.6) 85%,transparent 100%);
opacity:.85;}
.gold-rule::after{display:none;}
.gold-rule.center{margin-inline:auto;}
.gold-rule.center{margin-inline:auto;}
.gold-text{background:var(--gold-grad); -webkit-background-clip:text; background-clip:text; color:transparent;}

/* ---------- layout ---------- */
.wrap{max-width:var(--maxw); margin:0 auto; padding:0 28px;}
section.block{padding:clamp(72px,9vw,128px) 0; position:relative;}
.lead{max-width:62ch;}
.center{text-align:center;}
.center .lead{margin-inline:auto;}
.section-light{background:#f8fafc; color:var(--gray); border-top:1px solid rgba(19,57,101,.08); border-bottom:1px solid rgba(19,57,101,.08);}
.section-light h2,.section-light h3{color:var(--navy);}
.section-light p{color:#30475e; opacity:1;}
.section-light .eyebrow{color:var(--bronze);}
.section-light .btn-ghost{color:var(--navy); border-color:rgba(19,57,101,.22); background:rgba(19,57,101,.03);}
.section-light .btn-ghost:hover{color:var(--navy); border-color:var(--gold);}
.section-light .panel{background:var(--card-light); border-color:var(--card-light-border); box-shadow:var(--card-shadow);}
.section-light .val{background:var(--card-light); border:1px solid var(--card-light-border); box-shadow:var(--card-shadow);}
.section-light .val h3{color:var(--navy);}
.section-light .val p{color:#405a72;}
.section-slate{background:linear-gradient(150deg,rgba(107,138,161,.18),rgba(19,57,101,.52) 45%,rgba(5,15,31,.72)); border-top:1px solid rgba(107,138,161,.18); border-bottom:1px solid rgba(211,162,79,.12);}
.section-ink{background:linear-gradient(145deg,rgba(28,28,28,.58),rgba(5,15,31,.72)); border-top:1px solid rgba(211,162,79,.12); border-bottom:1px solid rgba(107,138,161,.12);}

/* ---------- ribbon ---------- */
.ribbon{display:flex; height:8px; width:240px; transform:skewX(-30deg); overflow:hidden; border-radius:2px;}
.ribbon span{flex:1;} .ribbon .s1{background:var(--navy);} .ribbon .s2{background:var(--bronze);}
.ribbon .s3{background:var(--gold);} .ribbon .s4{background:var(--azure);} .ribbon .s5{background:var(--slate);}
.ribbon-rule{width:100%; height:8px; transform:skewX(-30deg); margin:0 auto;
  background:repeating-linear-gradient(90deg,var(--navy) 0 18%,var(--bronze) 18% 36%,var(--gold) 36% 54%,var(--azure) 54% 72%,var(--slate) 72% 90%); opacity:.7;}

/* ---------- corner motifs ---------- */
.dotgrid{position:absolute; width:88px; height:88px; opacity:.5; pointer-events:none;
  background-image:radial-gradient(var(--gold) 1.3px,transparent 1.3px); background-size:14px 14px;}
.diag-line{position:absolute; width:160px; height:1px; background:linear-gradient(90deg,transparent,var(--gold),transparent);
  opacity:.35; transform:rotate(-30deg); pointer-events:none;}

/* ---------- buttons ---------- */
.btn{position:relative; display:inline-flex; align-items:center; gap:.6em; cursor:pointer;
  font-family:var(--font-heading); font-weight:600; text-transform:uppercase; letter-spacing:.06em;
  font-size:15px; padding:15px 30px; border-radius:60px; border:1px solid transparent;
  text-decoration:none; transition:transform .4s var(--ease-in),box-shadow .4s var(--ease-in),background .3s,color .3s;}
.btn .arw{transition:transform .35s var(--ease);}
.btn:hover .arw{transform:translateX(5px);}
.btn-gold{background:var(--gold-grad); color:var(--ink);
  box-shadow:0 8px 26px rgba(211,162,79,.28), inset 0 1px 0 rgba(255,255,255,.55);}
.btn-gold:hover{transform:translateY(-2px); box-shadow:0 12px 30px rgba(211,162,79,.34), inset 0 1px 0 rgba(255,255,255,.6);}
.btn-ghost{background:rgba(255,255,255,.02); color:var(--cream); border-color:var(--hairline);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);}
.btn-ghost:hover{border-color:var(--gold); color:var(--white); transform:translateY(-2px);}

/* ---------- header ---------- */
header{position:sticky; top:0; z-index:50; backdrop-filter:blur(10px);
  background:linear-gradient(180deg,rgba(5,15,31,.9),rgba(5,15,31,.58)); border-bottom:1px solid rgba(211,162,79,.12);
  box-shadow:0 10px 30px rgba(0,0,0,.16);}
.scrollbar{position:fixed; top:0; left:0; height:3px; width:0; z-index:60;
  background:var(--gold-grad); box-shadow:0 0 8px rgba(211,162,79,.55);}
.nav{display:flex; align-items:center; justify-content:space-between; height:78px;}
.brand{display:flex; align-items:center; gap:16px; cursor:pointer; text-decoration:none;}
.brand .mark{width:52px; height:52px; flex:0 0 52px; display:grid; place-items:center;}
.brand .mark img{width:100%; height:100%; display:block; object-fit:contain;}
.brand .name{font-family:'Oswald',sans-serif; font-weight:700; letter-spacing:.5px; color:var(--white); font-size:20px; line-height:1.1;}
.brand .name small{display:block; font-family:'Roboto Condensed',sans-serif; font-weight:700;
  font-size:9.5px; letter-spacing:.31em; color:var(--slate); margin-top:5px;}
.menu{display:flex; align-items:center; gap:30px; list-style:none;}
.menu a{color:var(--cream); text-decoration:none; font-weight:700; font-size:14px;
  letter-spacing:.04em; text-transform:uppercase; opacity:.82; position:relative; padding:6px 0; cursor:pointer; background:none; border:none; font-family:inherit;}
.menu a::after{content:""; position:absolute; left:0; bottom:0; height:2px; width:0; background:var(--gold-grad); transition:width .35s var(--ease);}
.menu a:hover{opacity:1;} .menu a:hover::after,.menu a.active::after{width:100%;}
.menu a.active{opacity:1; color:var(--white);}
.nav .btn{padding:11px 22px; font-size:13px;}
.burger{display:none; flex-direction:column; gap:5px; background:none; border:0; cursor:pointer; padding:8px;}
.burger span{width:24px; height:2px; background:var(--cream); transition:.3s;}

/* ---------- pages / router ---------- */
.page{display:none;} .page.active{display:block; animation:pageIn .6s var(--ease-in);}
@keyframes pageIn{from{opacity:0; transform:translateY(14px);} to{opacity:1; transform:none;}}

/* ---------- hero ---------- */
.hero{position:relative; min-height:90vh; display:flex; align-items:center; justify-content:center; overflow:hidden;
  background-image:
    linear-gradient(180deg,rgba(5,15,31,.68) 0%,rgba(8,29,54,.78) 100%),
    url("../hero_background.png");
  background-size:cover; background-position:center center; background-repeat:no-repeat;}
.hero::after{content:""; position:absolute; inset:0; pointer-events:none; z-index:1;
  background:radial-gradient(ellipse at 50% 0%,rgba(211,162,79,.07) 0%,transparent 60%),
    radial-gradient(ellipse at 50% 100%,rgba(5,15,31,.45) 0%,transparent 55%);}

.hero-inner{position:relative; z-index:3; width:100%; max-width:920px; margin:0 auto; padding:100px 28px 80px;
  display:flex; flex-direction:column; align-items:center; text-align:center; gap:0;}
.hero-copy{max-width:860px; width:100%;}
.hero h1{margin:14px 0 8px;}
.hero h1 .ww{display:inline-block;}
.win-win{background:var(--gold-grad); -webkit-background-clip:text; background-clip:text; color:transparent; position:relative;}
.win-win::after{content:""; position:absolute; inset:0; background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.38) 50%,transparent 65%);
  -webkit-background-clip:text; background-clip:text; color:transparent; mix-blend-mode:overlay; animation:shimmer 7s linear infinite;}
@keyframes shimmer{0%{background-position:-200% 0;}100%{background-position:200% 0;}}
.hero p.lead{margin:18px 0 30px; max-width:68ch; margin-inline:auto; margin-top:18px; margin-bottom:30px;}
.hero-cta{display:flex; gap:14px; flex-wrap:wrap; justify-content:center;}
.hero-stats{display:flex; gap:30px; margin-top:42px; flex-wrap:wrap; justify-content:center;}
.hero-stats .stat{text-align:center;}
.hero-stats .stat .num{font-family:var(--font-heading); font-weight:700; font-size:clamp(30px,3.6vw,44px);
  background:var(--gold-grad); -webkit-background-clip:text; background-clip:text; color:transparent; line-height:1;}
.hero-stats .stat .lab{font-size:12px; text-transform:uppercase; letter-spacing:.16em; color:var(--slate); margin-top:6px;}
/* crest + team — hidden in new centered layout, kept in DOM for JS safety */
.hero-visual{display:none;}
.crest{position:absolute; left:50%; top:44%; width:min(360px,78%); transform:translate(-50%,-58%);
  z-index:1; filter:drop-shadow(0 0 28px rgba(211,162,79,.24)); animation:float 9s ease-in-out infinite;}
.crest svg{position:relative; width:100%; height:auto; display:block;}
.team{position:absolute; left:50%; top:56%; width:min(540px,96%); transform:translate(-50%,-42%); z-index:2;}
.team img{width:100%; height:auto; display:block; filter:drop-shadow(0 24px 40px rgba(3,9,20,.6));}
@keyframes float{0%,100%{transform:translate(-50%,-58%);}50%{transform:translate(-50%,calc(-58% - 8px));}}
@keyframes pulse{0%,100%{opacity:.7;}50%{opacity:1;}}
@keyframes spin{to{transform:rotate(360deg);}}

/* ---------- clients strip ---------- */
.clients-section,.clients-strip{position:relative; overflow:hidden; background:#f8fafc; color:var(--navy);
  border-top:1px solid rgba(19,57,101,.08); border-bottom:1px solid rgba(19,57,101,.08);
  padding:clamp(52px,6vw,76px) 0;}
.clients-head{text-align:center; max-width:700px; margin:0 auto 34px;}
.clients-head .eyebrow{color:var(--slate);}
.clients-head h2{color:var(--navy); margin-top:12px;}
.clients-head p{color:#34536f; opacity:1; max-width:58ch; margin:10px auto 0;}
.clients-head .gold-rule{margin-top:12px;}
.clients-marquee{position:relative; overflow:hidden; width:100%; max-width:100%; margin-top:18px;}
.clients-marquee::before,.clients-marquee::after{content:""; position:absolute; top:0; bottom:0; width:min(130px,10vw); z-index:2; pointer-events:none;}
.clients-marquee::before{left:0; background:linear-gradient(90deg,#f8fafc,rgba(248,250,252,0));}
.clients-marquee::after{right:0; background:linear-gradient(270deg,#f8fafc,rgba(248,250,252,0));}
.clients-track{display:flex; width:max-content; will-change:transform; animation:clientsScroll 70s linear infinite;}
.clients-group{display:flex; align-items:center; gap:64px; flex-shrink:0; padding-right:64px;}
.clients-marquee:hover .clients-track,.clients-track:hover{animation-play-state:paused;}
@keyframes clientsScroll{from{transform:translateX(0);}to{transform:translateX(-50%);}}
.client-logo-item{display:flex; align-items:center; justify-content:center; flex:0 0 auto; min-width:150px;}
.client-logo{display:block; max-width:180px; max-height:76px; width:auto; height:auto; object-fit:contain;}

/* ---------- inner page hero ---------- */
.inner-hero{position:relative; min-height:300px; display:grid; place-items:center; overflow:hidden;
  background-image:
    linear-gradient(90deg,rgba(5,15,31,.86),rgba(8,29,54,.72)),
    url("../pages_bg.png");
  background-size:cover; background-position:center; background-repeat:no-repeat;
  border-bottom:1px solid rgba(211,162,79,.16);}
.inner-hero::after{content:""; position:absolute; inset:0; pointer-events:none;
  background:radial-gradient(circle at 50% 42%,rgba(211,162,79,.10),transparent 28%);}
.inner-hero-copy{position:relative; z-index:1; width:min(900px,100%); padding:48px 24px; text-align:center;}
.inner-hero .eyebrow{color:var(--slate);}
.inner-hero h1{font-size:clamp(46px,6vw,78px); line-height:1; color:var(--white); margin-top:12px;}
.inner-hero .gold-rule{margin-top:18px;}
.inner-hero-sub{margin-top:20px; font-size:clamp(15px,1.6vw,18px); color:rgba(255,255,255,.82); max-width:60ch; margin-inline:auto; line-height:1.6;}

/* ---------- panels (lifted navy) ---------- */
.panel{background:linear-gradient(160deg,rgba(18,46,82,.55),rgba(9,29,54,.62));
  border:1px solid var(--card-dark-border); border-radius:var(--card-radius); position:relative; overflow:hidden;
  box-shadow:var(--card-shadow-dark), inset 0 1px 0 rgba(255,255,255,.04);}
.panel::before{content:""; position:absolute; top:0; left:24px; right:24px; height:4px; transform:skewX(-30deg);
  background:linear-gradient(90deg,var(--navy),var(--bronze),var(--gold),var(--azure),var(--slate)); opacity:.78;}
.silk{position:absolute; inset:0; pointer-events:none; opacity:.5;
  background:repeating-linear-gradient(115deg,transparent 0 38px,rgba(255,255,255,.025) 38px 39px);}

/* ---------- grids ---------- */
.grid{display:grid; gap:22px;}
.g2{grid-template-columns:repeat(2,1fr);} .g3{grid-template-columns:repeat(3,1fr);} .g4{grid-template-columns:repeat(4,1fr);}
.sec-head{margin-bottom:40px; max-width:720px;}
.sec-head.center{margin-inline:auto;}

/* ---------- service cards ---------- */
.svc{background:var(--card-light); border:1px solid var(--card-light-border); border-radius:var(--card-radius); padding:28px 26px 24px; position:relative; overflow:hidden;
  box-shadow:0 12px 28px rgba(19,57,101,.08), inset 0 1px 0 rgba(255,255,255,.88);
  transition:transform .45s var(--ease-in),box-shadow .45s var(--ease-in),border-color .35s; cursor:default;}
.svc::before{content:""; position:absolute; top:0; left:18px; right:18px; height:3px; transform:skewX(-30deg);
  background:linear-gradient(90deg,var(--navy),var(--gold),var(--bronze)); opacity:.82;}
.svc::after{content:""; position:absolute; left:0; bottom:0; height:3px; width:0;
  background:linear-gradient(90deg,var(--navy),var(--gold),var(--azure)); transition:width .5s var(--ease);}
.svc:hover{transform:translateY(-4px); border-color:rgba(211,162,79,.42); box-shadow:0 18px 40px rgba(19,57,101,.15), inset 0 1px 0 rgba(255,255,255,.9);}
.svc:hover::after{width:100%;}
.svc .no{display:inline-flex; align-items:center; min-height:28px; padding:5px 9px; border-radius:6px;
  background:linear-gradient(145deg,rgba(211,162,79,.18),rgba(140,108,63,.08)); border:1px solid rgba(211,162,79,.32);
  font-family:var(--font-heading); font-weight:700; font-size:13px; color:var(--bronze); letter-spacing:.1em;}
.svc h3{color:var(--navy); margin:14px 0 8px;}
.svc p{color:#314b65; opacity:1; font-size:15px;}
.svc .go{display:inline-flex; align-items:center; gap:.4em; margin-top:16px; color:var(--azure);
  font-weight:700; text-transform:uppercase; letter-spacing:.06em; font-size:13px;}
.svc .go .arw{transition:transform .35s var(--ease);} .svc:hover .go .arw{transform:translateX(4px);}
/* ===== SERVICES PAGE — sidebar + dark panel layout ===== */
.service-catalog .sec-head{max-width:800px;}
/* outer shell: sidebar left, categories right */
.svc-layout{display:grid; grid-template-columns:220px 1fr; gap:48px; align-items:start;}
/* sticky sidebar */
.svc-sidebar{position:sticky; top:96px; display:flex; flex-direction:column; gap:4px;}
.svc-sidebar-label{
  font-family:var(--font-body); font-weight:700; font-size:10px; letter-spacing:.28em;
  text-transform:uppercase; color:var(--slate); padding:0 12px 10px; border-bottom:1px solid rgba(211,162,79,.16); margin-bottom:6px;}
.svc-sidebar a{
  display:flex; align-items:center; gap:10px;
  padding:10px 12px; border-radius:6px; text-decoration:none;
  font-family:var(--font-body); font-weight:700; font-size:13px; color:#30475e;
  border:1px solid transparent; transition:.25s; line-height:1.25;}
.svc-sidebar a .cat-num{
  font-family:var(--font-heading); font-weight:700; font-size:11px;
  color:var(--gold); letter-spacing:.10em; flex:0 0 22px;}
.svc-sidebar a:hover{color:var(--navy); background:rgba(211,162,79,.08); border-color:rgba(211,162,79,.28);}
/* categories list */
.service-categories{display:flex; flex-direction:column; gap:28px;}
/* each category block — dark navy panel */
.service-category{
  position:relative; overflow:hidden; border-radius:10px; padding:0;
  background:linear-gradient(160deg,rgba(13,36,74,.94) 0%,rgba(5,15,31,.98) 100%);
  border:1px solid rgba(211,162,79,.20);
  box-shadow:0 20px 52px rgba(3,9,20,.32), inset 0 1px 0 rgba(255,255,255,.04);}
/* gold top ribbon per category */
.service-category::before{
  content:""; position:absolute; top:0; left:0; right:0; height:4px; z-index:2;
  background:repeating-linear-gradient(90deg,
    var(--navy) 0 18%,var(--bronze) 18% 36%,var(--gold) 36% 54%,
    var(--azure) 54% 72%,var(--slate) 72% 90%); opacity:.80;}
/* category header */
.service-category-head{
  display:grid; grid-template-columns:minmax(190px,.38fr) 1fr; gap:24px; align-items:start;
  padding:30px 32px 26px;
  background:linear-gradient(135deg,rgba(19,57,101,.52),rgba(8,29,54,.68));
  border-bottom:1px solid rgba(211,162,79,.14);}
.service-category-kicker{
  display:block; font-size:10px; text-transform:uppercase; letter-spacing:.28em;
  color:var(--gold); font-weight:700; margin-bottom:10px; font-family:var(--font-body);}
.service-category h3{font-size:clamp(22px,2.6vw,32px); color:var(--white); line-height:1.05;}
.service-category .category-desc{
  font-size:15px; color:var(--cream); opacity:.80; max-width:58ch; line-height:1.6;
  padding-top:4px;}
/* service cards grid inside category */
.service-grid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; padding:22px 28px 28px;}
/* service cards — dark slate on dark panel */
.service-category .svc{
  background:linear-gradient(145deg,rgba(19,57,101,.62),rgba(5,15,31,.80));
  border:1px solid rgba(211,162,79,.18);
  box-shadow:0 10px 28px rgba(3,9,20,.22), inset 0 1px 0 rgba(255,255,255,.04);
  padding:22px;}
.service-category .svc::before{opacity:.70;}
.service-category .svc h3{color:var(--white);}
.service-category .svc p{color:var(--cream); opacity:.82;}
.service-category .svc .no{color:var(--gold); background:linear-gradient(145deg,rgba(211,162,79,.14),rgba(140,108,63,.06)); border-color:rgba(211,162,79,.28);}
.service-category .svc .go{color:var(--gold);}
.service-category .svc:hover{
  border-color:rgba(211,162,79,.42);
  box-shadow:0 16px 38px rgba(3,9,20,.36), inset 0 1px 0 rgba(255,255,255,.06);}
/* Growth Package — full-width premium card */
.svc-growth-package{
  grid-column:1/-1;
  background:
    radial-gradient(circle at 88% 20%,rgba(211,162,79,.18),transparent 36%),
    linear-gradient(145deg,rgba(13,36,74,.82),rgba(5,15,31,.97));
  border:1px solid rgba(211,162,79,.42);
  box-shadow:0 24px 56px rgba(3,9,20,.40), inset 0 1px 0 rgba(255,255,255,.06);
  display:grid; grid-template-columns:1fr auto; gap:24px; align-items:center;}
.svc-growth-package::before{background:var(--gold-grad); opacity:.55;}
.svc-growth-package .no{background:var(--gold-grad); color:var(--ink); border:none; font-size:14px;}
.svc-growth-package h3{color:var(--white); font-size:clamp(22px,2.4vw,30px);}
.svc-growth-package p{color:var(--cream); opacity:.88; font-size:16px;}
.svc-growth-package .go{color:var(--gold); font-size:14px; font-weight:700; white-space:nowrap;}
/* mobile accordion */
.svc-acc-toggle{
  display:none; width:100%; text-align:left; background:none; border:none; cursor:pointer;
  padding:22px 28px; font-family:var(--font-heading); font-weight:700;
  font-size:clamp(18px,2vw,22px); color:var(--white); position:relative;
  align-items:center; justify-content:space-between; gap:12px;}
.svc-acc-toggle .acc-num{font-size:11px; color:var(--gold); letter-spacing:.14em; font-family:var(--font-body);}
.svc-acc-toggle .acc-icon{
  width:26px; height:26px; flex:0 0 26px; border-radius:50%;
  background:rgba(211,162,79,.12); border:1px solid rgba(211,162,79,.28);
  display:grid; place-items:center; transition:.35s; flex-shrink:0;}
.svc-acc-toggle .acc-icon::before,.svc-acc-toggle .acc-icon::after{
  content:""; position:absolute; background:var(--gold); border-radius:2px; transition:transform .35s;}
.svc-acc-toggle .acc-icon::before{width:12px; height:2px;}
.svc-acc-toggle .acc-icon::after{width:2px; height:12px;}
.service-category.acc-open .svc-acc-toggle .acc-icon::after{transform:scaleY(0);}
.svc-acc-body{transition:max-height .42s cubic-bezier(.22,.61,.36,1); overflow:hidden;}

/* ===== SERVICES PAGE — editorial category explorer ===== */
.services-explorer{
  background:
    radial-gradient(circle at 86% 10%,rgba(211,162,79,.13),transparent 30%),
    radial-gradient(circle at 8% 86%,rgba(27,117,188,.12),transparent 34%),
    linear-gradient(160deg,#0d2140 0%,#081D36 45%,#050F1F 100%);
  border-top:1px solid rgba(211,162,79,.18);
  border-bottom:1px solid rgba(211,162,79,.12);
  overflow:hidden;
}
.services-explorer-wrap{
  position:relative; display:grid; grid-template-columns:minmax(260px,300px) minmax(0,1fr);
  gap:30px; align-items:start;
}
.service-category-rail{
  position:sticky; top:96px; display:flex; flex-direction:column; gap:8px;
  padding:18px; border-radius:10px;
  background:
    linear-gradient(145deg,rgba(5,15,31,.82),rgba(13,36,74,.64)),
    repeating-linear-gradient(115deg,transparent 0 38px,rgba(255,255,255,.022) 38px 39px);
  border:1px solid rgba(211,162,79,.18);
  box-shadow:0 18px 52px rgba(3,9,20,.30), inset 0 1px 0 rgba(255,255,255,.04);
}
.service-category-rail::before{
  content:"Service categories"; color:var(--slate); font-size:10px; font-weight:700;
  letter-spacing:.28em; text-transform:uppercase; padding:0 2px 10px;
  border-bottom:1px solid rgba(211,162,79,.14); margin-bottom:4px;
}
.service-rail-btn{
  appearance:none; width:100%; min-height:46px; padding:11px 12px 11px 15px;
  border:1px solid transparent; border-left:3px solid transparent; border-radius:7px;
  background:rgba(5,15,31,.16); color:rgba(245,241,232,.72); cursor:pointer;
  font-family:var(--font-body); font-weight:700; font-size:14px; line-height:1.18; text-align:left;
  transition:color .25s,background .25s,border-color .25s,transform .25s;
}
.service-rail-btn:hover,.service-rail-btn:focus-visible{
  color:var(--white); background:rgba(211,162,79,.08); border-color:rgba(211,162,79,.18); outline:none;
}
.service-rail-btn[aria-selected="true"]{
  color:var(--gold); background:rgba(211,162,79,.11); border-left-color:var(--gold);
}
.service-mobile-picker{display:none;}
.service-category-panel{
  position:relative; overflow:hidden; border-radius:10px; padding:36px;
  background:
    radial-gradient(circle at 92% 4%,rgba(211,162,79,.06),transparent 30%),
    linear-gradient(135deg,rgba(13,36,74,.34),rgba(5,15,31,.66)),
    repeating-linear-gradient(115deg,transparent 0 38px,rgba(255,255,255,.014) 38px 39px);
  border:1px solid rgba(211,162,79,.16);
  box-shadow:0 24px 64px rgba(3,9,20,.30), inset 0 1px 0 rgba(255,255,255,.04);
}
.service-category-panel::before{
  content:""; position:absolute; top:0; left:0; right:0; height:4px;
  background:repeating-linear-gradient(90deg,var(--navy) 0 18%,var(--bronze) 18% 36%,var(--gold) 36% 54%,var(--azure) 54% 72%,var(--slate) 72% 90%);
  opacity:.82;
}
.service-category-panel::after{
  content:""; position:absolute; width:360px; height:360px; right:-150px; bottom:-170px;
  background:radial-gradient(circle,rgba(211,162,79,.10),transparent 62%);
  pointer-events:none;
}
.service-category-intro{
  position:relative; z-index:1; max-width:780px; padding:0 0 32px;
  margin-bottom:32px; background:transparent; border:0; border-bottom:1px solid rgba(211,162,79,.20);
  box-shadow:none;
}
.service-category-intro::after{
  content:""; position:absolute; left:0; bottom:-1px; width:96px; height:1px;
  background:linear-gradient(90deg,var(--gold),transparent);
}
.services-panel-label{
  display:inline-flex; align-items:center; gap:10px; color:var(--gold);
  font-size:11px; font-weight:700; letter-spacing:.26em; text-transform:uppercase;
}
.services-panel-label::before{content:""; width:28px; height:1px; background:var(--gold);}
.service-category-intro h3{
  margin-top:18px; color:var(--white); font-size:clamp(30px,3.2vw,44px);
  line-height:1.04; max-width:19ch;
}
.service-category-intro p{
  color:var(--cream); opacity:.84; font-size:17px; line-height:1.6; margin-top:20px; max-width:46ch;
}
.service-category-intro .btn{
  margin-top:22px; padding:12px 19px; min-height:0;
  box-shadow:0 12px 28px rgba(211,162,79,.16), inset 0 1px 0 rgba(255,255,255,.44);
}
.section-kicker{
  position:relative; z-index:1; display:flex; align-items:center; gap:12px;
  color:rgba(211,162,79,.86); font-size:10px; font-weight:700; letter-spacing:.26em;
  text-transform:uppercase; margin:0 0 18px;
}
.section-kicker::after{content:""; height:1px; flex:1; background:linear-gradient(90deg,rgba(211,162,79,.26),rgba(107,138,161,.10),transparent);}
.service-core{position:relative; z-index:1;}
.service-core-grid{
  display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px;
}
.service-core-card{
  position:relative; min-height:150px; padding:20px; border-radius:8px;
  background:
    linear-gradient(145deg,rgba(19,57,101,.38),rgba(5,15,31,.56));
  border:1px solid rgba(211,162,79,.12);
  box-shadow:0 10px 24px rgba(3,9,20,.14), inset 0 1px 0 rgba(255,255,255,.035);
  transition:transform .3s var(--ease-in),border-color .3s,background .3s;
}
.service-core-card:hover{
  transform:translateY(-2px); border-color:rgba(211,162,79,.24);
  background:linear-gradient(145deg,rgba(21,58,102,.46),rgba(5,15,31,.62));
}
.service-core-card h4{color:var(--white); font-size:21px; line-height:1.1; margin:0 0 10px;}
.service-core-card p{color:var(--cream); opacity:.78; font-size:14.5px; line-height:1.5;}
.service-included{position:relative; z-index:1; margin-top:34px;}
.service-included-list{
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:30px;
  border-top:1px solid rgba(245,241,232,.08);
}
.service-included-row{
  display:grid; grid-template-columns:auto 1fr; gap:12px; align-items:start;
  padding:14px 0; border-bottom:1px solid rgba(245,241,232,.08);
  transition:color .25s;
}
.service-included-marker{width:5px; height:5px; margin-top:8px; border-radius:50%; background:var(--gold); box-shadow:0 0 10px rgba(211,162,79,.28);}
.service-included-row h4{color:var(--cream); font-size:18px; line-height:1.12; margin-bottom:4px;}
.service-included-row p{color:var(--slate); font-size:14px; line-height:1.44;}
.service-included-row:hover h4{color:var(--white);}

.whatdo-layout{display:grid; grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr); gap:28px; align-items:stretch;}
.cmo-feature{min-height:560px; padding:34px; display:flex; flex-direction:column; justify-content:space-between;
  background:
    radial-gradient(circle at 86% 16%,rgba(211,162,79,.20),transparent 28%),
    linear-gradient(145deg,rgba(19,57,101,.72),rgba(5,15,31,.92));
  border:1px solid rgba(211,162,79,.32); box-shadow:0 28px 70px rgba(3,9,20,.34);}
.section-light .cmo-feature{background:
    radial-gradient(circle at 86% 16%,rgba(211,162,79,.20),transparent 28%),
    linear-gradient(145deg,rgba(19,57,101,.72),rgba(5,15,31,.92));
  border-color:rgba(211,162,79,.32); box-shadow:0 28px 70px rgba(3,9,20,.26);}
.section-light .cmo-feature h3{color:var(--white);}
.section-light .cmo-feature p{color:var(--cream); opacity:.9;}
.cmo-feature::before{content:""; position:absolute; top:0; left:34px; right:34px; height:5px; transform:skewX(-30deg);
  background:repeating-linear-gradient(90deg,var(--navy) 0 18%,var(--bronze) 18% 36%,var(--gold) 36% 54%,var(--azure) 54% 72%,var(--slate) 72% 90%);}
.cmo-feature .feature-kicker{display:flex; justify-content:space-between; gap:18px; align-items:flex-start;
  font-size:11px; text-transform:uppercase; letter-spacing:.22em; color:var(--gold); font-weight:700;}
.cmo-feature h3{font-size:clamp(42px,5vw,72px); line-height:.95; color:var(--white); max-width:9ch; margin-top:56px;}
.cmo-feature p{max-width:56ch; color:var(--cream); opacity:.9; font-size:17px; margin-top:18px;}
.cmo-map{position:relative; min-height:190px; margin:34px 0; border-radius:8px;
  background:linear-gradient(160deg,rgba(5,15,31,.58),rgba(19,57,101,.36)); border:1px solid rgba(211,162,79,.18); overflow:hidden;}
.cmo-map::before{content:""; position:absolute; inset:24px;
  background:repeating-linear-gradient(90deg,rgba(245,241,232,.06) 0 1px,transparent 1px 64px),
    repeating-linear-gradient(0deg,rgba(245,241,232,.04) 0 1px,transparent 1px 48px);}
.cmo-map::after{content:""; position:absolute; left:42px; right:42px; top:55%;
  height:3px; background:linear-gradient(90deg,var(--gold),var(--azure)); transform:skewY(-7deg); box-shadow:0 0 24px rgba(211,162,79,.28);}
.cmo-node{position:absolute; z-index:1; width:68px; height:68px; border-radius:8px; display:grid; place-items:center;
  color:var(--ink); background:var(--gold-grad); font-family:var(--font-heading); font-weight:700;
  box-shadow:0 12px 28px rgba(211,162,79,.18), inset 0 1px 0 rgba(255,255,255,.55);}
.cmo-node:nth-child(1){left:28px; top:28px;} .cmo-node:nth-child(2){left:50%; top:88px; transform:translateX(-50%);}
.cmo-node:nth-child(3){right:28px; top:46px;}
.cmo-feature-actions{display:flex; align-items:center; gap:18px; flex-wrap:wrap;}
.cmo-note{font-size:12px; text-transform:uppercase; letter-spacing:.18em; color:var(--slate);}
.service-rail{display:grid; gap:14px;}
.rail-card{position:relative; padding:20px 22px 18px 68px; min-height:116px; border-radius:8px;
  background:linear-gradient(145deg,rgba(18,46,82,.55),rgba(8,29,54,.72)); border:1px solid rgba(211,162,79,.16);
  transition:transform .4s var(--ease-in),border-color .3s,background .3s;}
.rail-card:hover{transform:translateY(-2px); border-color:rgba(211,162,79,.38); background:linear-gradient(145deg,rgba(21,58,102,.68),rgba(8,29,54,.8));}
.rail-card .no{position:absolute; left:20px; top:22px; font-family:var(--font-heading); font-weight:700; color:var(--gold); letter-spacing:.12em;}
.rail-card h3{color:var(--white); font-size:22px; line-height:1.05; margin-bottom:8px;}
.rail-card p{font-size:14.5px; color:var(--cream); opacity:.82; line-height:1.48;}
.rail-card .go{display:inline-flex; align-items:center; gap:.4em; color:var(--gold); font-size:12px; font-weight:700;
  text-transform:uppercase; letter-spacing:.08em; margin-top:12px;}
.rail-card .arw{transition:transform .35s var(--ease);} .rail-card:hover .arw{transform:translateX(4px);}

/* ---------- value cards ---------- */
.val{padding:28px; border-radius:var(--card-radius); position:relative; overflow:hidden;
  background:var(--card-dark);
  border:1px solid var(--card-dark-border); background-clip:padding-box;
  box-shadow:var(--card-shadow-dark), inset 0 1px 0 rgba(255,255,255,.04);
  transition:transform .45s var(--ease-in),border-color .35s,box-shadow .35s;}
.val::before{content:""; position:absolute; left:0; top:18px; bottom:18px; width:3px; border-radius:3px;
  background:var(--gold-grad); transform:scaleY(0); transform-origin:top; transition:transform .45s var(--ease);}
.val::after{content:""; position:absolute; inset:0; pointer-events:none;
  background:radial-gradient(circle at 86% 12%,rgba(211,162,79,.10),transparent 24%);}
.val:hover{transform:translateY(-4px); border-color:rgba(211,162,79,.42); box-shadow:0 26px 54px rgba(3,9,20,.42), inset 0 1px 0 rgba(255,255,255,.06);}
.val:hover::before{transform:scaleY(1);}
.val>*{position:relative; z-index:1;}
.val .ico{width:46px; height:46px; border-radius:6px; display:grid; place-items:center; margin-bottom:16px;
  background:linear-gradient(145deg,rgba(211,162,79,.22),rgba(140,108,63,.08)); border:1px solid rgba(211,162,79,.32);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10); transition:transform .45s var(--ease);}
.val:hover .ico{transform:translateY(-1px);}
.val .ico svg{width:24px; height:24px; stroke:var(--gold); fill:none; stroke-width:1.7;}
.val h3{color:var(--white); margin-bottom:8px;}
.val p{font-size:15px;}
.section-light .val::after{background:radial-gradient(circle at 86% 12%,rgba(211,162,79,.12),transparent 24%);}
.section-light .val .ico{background:linear-gradient(145deg,rgba(211,162,79,.20),rgba(19,57,101,.04)); border-color:rgba(211,162,79,.34);}
.panel .val[style*="background:none"]{background:linear-gradient(145deg,rgba(19,57,101,.88),rgba(5,15,31,.94))!important;
  border:1px solid rgba(211,162,79,.18)!important; box-shadow:0 12px 28px rgba(3,9,20,.22);}
.panel .val[style*="background:none"] h3{color:var(--white);}
.panel .val[style*="background:none"] p{color:var(--cream); opacity:.86;}

/* ---------- project cards ---------- */
.filters{display:flex; gap:10px; flex-wrap:wrap; margin-bottom:34px;}
.filters button{font-family:var(--font-body); font-weight:700; font-size:13px; letter-spacing:.05em;
  text-transform:uppercase; padding:9px 18px; border-radius:40px; cursor:pointer;
  color:var(--navy-deep); background:#ffffff;
  border:1px solid rgba(211,162,79,.45); transition:.3s; opacity:1;}
.filters button:hover{border-color:var(--gold); color:var(--navy); background:#fff8ee; box-shadow:0 4px 14px rgba(211,162,79,.16);}
.filters button.on{background:var(--gold-grad); color:var(--ink); border-color:transparent; box-shadow:0 6px 20px rgba(211,162,79,.28);}
/* ---- Project cards — image-dominant case-study style ---- */
.proj{
  position:relative; border-radius:12px; overflow:hidden;
  min-height:380px; height:390px; padding:0;
  display:grid; grid-template-rows:50% minmax(0,1fr) auto;
  background:rgba(4,20,38,.86);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  border:1px solid rgba(211,162,79,.14);
  box-shadow:0 20px 52px rgba(3,9,20,.36);
  transition:transform .45s var(--ease-in),box-shadow .45s var(--ease-in),border-color .3s;
  cursor:default;}
/* image fills card, overlaid */
.proj-media{
  position:absolute; inset:0;
  border-radius:inherit; overflow:hidden;
  border:none; aspect-ratio:unset; margin-top:0;
  box-shadow:none; z-index:0;
  background:
    radial-gradient(circle at center,rgba(211,162,79,.09),transparent 52%),
    rgba(255,255,255,.025);}
.proj-media img{
  position:absolute; top:34px; left:50%;
  width:min(78%,300px); height:145px; max-width:78%; max-height:145px;
  object-fit:contain; object-position:center;
  display:block; opacity:1; filter:saturate(1.02) contrast(1.03) drop-shadow(0 18px 34px rgba(0,0,0,.32));
  transform:translateX(-50%);
  transition:transform .7s var(--ease), opacity .5s;}
.proj:hover .proj-media img,.proj:focus-within .proj-media img{transform:translateX(-50%) scale(1.025); opacity:1;}
/* dark gradient overlay for text readability */
.proj::after{
  content:""; position:absolute; inset:0; z-index:1; pointer-events:none;
  background:
    linear-gradient(180deg,
      rgba(4,20,38,.02) 0%,
      rgba(4,20,38,.10) 38%,
      rgba(4,20,38,.58) 68%,
      rgba(4,20,38,.92) 100%);}
/* card content sits above overlay */
.proj-top{
  position:relative; z-index:2; grid-row:2; align-self:end;
  margin-top:0; padding:0 24px 0;
  display:flex; flex-direction:column; gap:10px;}
.proj .tag{
  display:inline-flex; width:max-content; padding:4px 10px; border-radius:4px;
  background:rgba(211,162,79,.14); border:1px solid rgba(211,162,79,.32);
  font-size:10px; letter-spacing:.26em; text-transform:uppercase; color:var(--gold); font-weight:700;}
.proj h3{
  color:var(--white); margin:0;
  font-size:clamp(20px,2.1vw,28px); line-height:1.05;
  text-shadow:0 2px 12px rgba(3,9,20,.55);}
.proj-desc{
  color:var(--cream); opacity:0; visibility:hidden; font-size:14.5px; line-height:1.45;
  max-width:36ch; max-height:0; margin:0; overflow:hidden;
  pointer-events:none; transform:translateY(8px); text-shadow:0 1px 10px rgba(3,9,20,.38);
  transition:opacity .28s var(--ease),visibility .28s var(--ease),transform .28s var(--ease),max-height .32s var(--ease);}
.proj:hover .proj-desc,.proj:focus-within .proj-desc{
  opacity:1; visibility:visible; max-height:4.5em; pointer-events:auto; transform:translateY(0);}
/* bottom bar with button + arrow */
.proj-foot{
  position:relative; z-index:2; grid-row:3;
  padding:18px 24px 22px;
  display:flex; align-items:center; justify-content:space-between; gap:12px;
  border-top:1px solid rgba(255,255,255,.08); margin-top:16px;}
.proj-more{
  font-family:var(--font-body); font-weight:700; font-size:11px;
  letter-spacing:.18em; text-transform:uppercase;
  color:var(--cream); opacity:.82;
  padding:8px 16px; border-radius:40px;
  border:1px solid rgba(245,241,232,.22);
  background:rgba(255,255,255,.04);
  cursor:pointer; transition:.3s;
  position:relative; z-index:2;}
.proj-more:hover{border-color:rgba(211,162,79,.6); color:var(--white); opacity:1; background:rgba(211,162,79,.08);}
/* circular arrow button */
.proj-arrow{
  width:40px; height:40px; flex:0 0 40px; border-radius:50%;
  display:grid; place-items:center;
  background:var(--gold-grad); border:none; cursor:pointer;
  box-shadow:0 6px 18px rgba(211,162,79,.28), inset 0 1px 0 rgba(255,255,255,.45);
  transition:transform .35s var(--ease-in),box-shadow .35s; position:relative; z-index:2;}
.proj-arrow svg{width:16px; height:16px; stroke:var(--ink); fill:none; stroke-width:2.2; transition:transform .3s var(--ease);}
.proj:hover .proj-arrow,.proj:focus-within .proj-arrow{transform:scale(1.08); box-shadow:0 8px 24px rgba(211,162,79,.36);}
.proj:hover .proj-arrow svg,.proj:focus-within .proj-arrow svg{transform:translateX(2px);}
.proj:hover,.proj:focus-within{transform:translateY(-6px); box-shadow:0 32px 70px rgba(3,9,20,.50); border-color:rgba(211,162,79,.42);}

/* ---------- project modal ---------- */
body.modal-open{overflow:hidden;}
/* ---- project modal ---- */
.project-modal{position:fixed; inset:0; z-index:100; display:none; place-items:center; padding:clamp(12px,3vw,40px);}
.project-modal.show{display:grid;}
.project-modal::before{content:""; position:absolute; inset:0; background:rgba(3,8,16,.80); backdrop-filter:blur(12px);}
.project-dialog{
  position:relative; width:min(960px,100%); max-height:calc(100vh - 48px); overflow:auto; scrollbar-gutter:stable;
  scrollbar-width:thin; scrollbar-color:rgba(211,162,79,.58) rgba(5,15,31,.78);
  background:linear-gradient(180deg,#081D36 0%,#050F1F 100%);
  border:1px solid rgba(211,162,79,.22); border-radius:12px;
  box-shadow:0 48px 140px rgba(0,0,0,.80), inset 0 1px 0 rgba(255,255,255,.04);}
.project-dialog::-webkit-scrollbar{width:11px;}
.project-dialog::-webkit-scrollbar-track{background:rgba(5,15,31,.78); border-radius:0 12px 12px 0;}
.project-dialog::-webkit-scrollbar-thumb{
  background:linear-gradient(180deg,rgba(211,162,79,.72),rgba(113,135,158,.58));
  border:3px solid rgba(5,15,31,.78); border-radius:999px;}
.project-dialog::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,rgba(211,162,79,.88),rgba(113,135,158,.74));}
/* close button */
.project-close{
  position:absolute; top:18px; right:32px; z-index:20;
  width:36px; height:36px; padding:0; border-radius:50%;
  display:grid; place-items:center;
  color:var(--ink); background:var(--gold-grad);
  border:1px solid rgba(255,255,255,.3);
  font-family:var(--font-heading); font-weight:700; font-size:13px;
  letter-spacing:.08em; cursor:pointer; text-transform:uppercase;
  box-shadow:0 6px 20px rgba(211,162,79,.28), inset 0 1px 0 rgba(255,255,255,.55);}
/* ---- media banner (replaces project-hero image-on-text layout) ---- */
.project-modal-media{
  position:relative; width:100%; overflow:hidden;
  aspect-ratio:16/5.6; border-radius:10px 10px 0 0; flex-shrink:0;}
.project-modal-media img{
  width:100%; height:100%; object-fit:cover; object-position:center;
  display:block; opacity:1; filter:saturate(1) contrast(1.02);}
/* soft gradient fading the image into the modal body */
.project-modal-media::after{
  content:""; position:absolute; inset:0; pointer-events:none;
  background:
    linear-gradient(180deg,rgba(5,15,31,0) 0%,rgba(5,15,31,.04) 70%,rgba(5,15,31,.18) 100%);}
/* ---- intro block: label + title + summary ---- */
.project-intro{
  padding:clamp(28px,4vw,48px) clamp(24px,5vw,64px) 0;
  border-bottom:1px solid rgba(245,241,232,.10);}
.project-modal .modal-label{
  display:inline-block; font-family:var(--font-body); font-weight:700;
  font-size:11px; letter-spacing:.30em; text-transform:uppercase;
  color:var(--gold); margin-bottom:14px;}
.project-modal .modal-title{
  font-family:var(--font-heading); font-weight:700; letter-spacing:0;
  font-size:clamp(34px,5vw,60px); line-height:1.0;
  color:var(--white); margin:0 0 16px;}
.project-modal .modal-summary{
  font-size:clamp(15px,1.3vw,18px); color:var(--cream); opacity:.88;
  max-width:64ch; line-height:1.62; padding-bottom:clamp(24px,3vw,40px);}
/* ---- body block: focus + meta + cta ---- */
.project-body{
  padding:clamp(28px,4vw,48px) clamp(24px,5vw,64px) clamp(36px,5vw,60px);
  background:linear-gradient(160deg,rgba(8,29,54,.50),rgba(5,15,31,.70));}
.project-body .focus-label{
  font-family:var(--font-body); font-weight:700; font-size:10px;
  letter-spacing:.30em; text-transform:uppercase; color:var(--slate);
  display:block; margin-bottom:10px;}
.project-body h3{
  font-size:clamp(26px,3.5vw,44px); color:var(--white); line-height:1.05;
  margin-bottom:14px; font-family:var(--font-heading); font-weight:700; letter-spacing:0;}
.project-body>.lead{
  max-width:68ch; margin-bottom:32px; color:var(--cream); opacity:.88;
  font-size:clamp(14px,1.2vw,17px);}
/* thin gold divider before meta */
.project-body .meta-divider{
  height:1px; margin-bottom:28px;
  background:linear-gradient(90deg,rgba(211,162,79,.50) 0%,rgba(211,162,79,.12) 60%,transparent 100%);}
.project-meta{
  display:grid; grid-template-columns:1fr 1fr; gap:28px;
  padding:0 0 30px; border-bottom:1px solid rgba(245,241,232,.12);}
.project-meta .k{
  display:block; color:var(--gold); font-size:10px; letter-spacing:.26em;
  text-transform:uppercase; font-weight:700; margin-bottom:10px;}
.project-meta p,.project-meta span:not(.k){
  font-size:clamp(14px,1.2vw,17px); color:var(--cream); opacity:.90; line-height:1.55;}
.project-body .btn{margin-top:28px;}
.project-case-meta{
  display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px;
  padding:0 0 28px; margin-bottom:28px; border-bottom:1px solid rgba(245,241,232,.12);}
.project-case-meta .k,.project-case-section .k{
  display:block; color:var(--gold); font-size:10px; letter-spacing:.26em;
  text-transform:uppercase; font-weight:700; margin-bottom:9px;}
.project-case-meta p{color:var(--cream); opacity:.9; line-height:1.5;}
.project-case-section{padding:0 0 26px; margin-bottom:26px; border-bottom:1px solid rgba(245,241,232,.10);}
.project-case-section h3{
  font-size:clamp(22px,2.5vw,34px); color:var(--white); line-height:1.08;
  margin:0 0 12px; font-family:var(--font-heading); font-weight:700; letter-spacing:0;}
.project-case-section p{color:var(--cream); opacity:.88; line-height:1.62; max-width:74ch;}
.project-case-section ul{display:grid; gap:9px; margin:0; padding:0; list-style:none;}
.project-case-section li{
  position:relative; color:var(--cream); opacity:.88; line-height:1.55; padding-left:18px;}
.project-case-section li::before{
  content:""; position:absolute; left:0; top:.7em; width:5px; height:5px; border-radius:50%; background:var(--gold);}
.project-feedback{
  padding:20px 22px; border-radius:8px; background:rgba(255,255,255,.04);
  border:1px solid rgba(211,162,79,.16);}
.project-feedback blockquote{margin:0; color:var(--cream); opacity:.9; line-height:1.6; font-size:17px;}
.project-feedback figcaption{margin-top:12px; color:var(--gold); font-weight:700; font-size:13px;}
.project-modal-cta{padding-top:2px;}

/* ---------- cta chip + band ---------- */
.cta-band{position:relative; overflow:hidden;
  background:linear-gradient(150deg,rgba(18,46,82,.6),rgba(8,29,54,.7));
  border-top:1px solid var(--hairline); border-bottom:1px solid var(--hairline);}
.cta-chip{display:inline-flex; align-items:center; gap:14px; padding:16px 22px; border-radius:8px;
  border:1px solid rgba(211,162,79,.52); background:linear-gradient(145deg,rgba(19,57,101,.58),rgba(5,15,31,.72));
  box-shadow:0 14px 34px rgba(3,9,20,.22), inset 0 1px 0 rgba(255,255,255,.05); transition:transform .4s var(--ease-in),border-color .3s;}
.cta-chip:hover{transform:translateY(-2px); border-color:rgba(211,162,79,.78);}
.cta-chip .tgt{width:30px; height:30px; flex:0 0 auto;}
.cta-chip .tgt svg{width:100%; height:100%; stroke:var(--gold); fill:none; stroke-width:1.6;}
.cta-chip b{display:block; color:var(--white); font-family:var(--font-heading); font-weight:600; letter-spacing:.02em;}
.cta-chip span{font-size:13px; color:var(--slate);}

/* ---------- about figure / quotes ---------- */
.about-fig{position:relative; border-radius:8px; overflow:hidden; min-height:380px;
  background-image:linear-gradient(160deg,rgba(5,15,31,.55),rgba(8,29,54,.45)),url("../hero_background.png");
  background-size:cover; background-position:center; background-repeat:no-repeat;
  border:1px solid var(--hairline);}
.about-fig .silk{opacity:.35;}
.about-fig .lockup{position:absolute; inset:0; display:grid; place-items:center; text-align:center;}
.about-fig .lockup svg{width:160px; filter:drop-shadow(0 0 30px rgba(211,162,79,.4));}
.about-logo{width:clamp(180px,60%,280px); max-width:280px; height:auto; object-fit:contain; filter:drop-shadow(0 0 24px rgba(211,162,79,.35)); display:block;}
.quote-support{margin-top:14px; font-size:13px; color:#405a72; line-height:1.55; border-top:1px solid rgba(19,57,101,.1); padding-top:12px;}
.about-services-grid{display:flex; flex-wrap:wrap; gap:10px; margin-top:32px;}
.svc-tag{display:inline-flex; align-items:center; padding:8px 18px; border-radius:4px; background:linear-gradient(145deg,rgba(19,57,101,.07),rgba(19,57,101,.03)); border:1px solid rgba(19,57,101,.16); color:var(--navy); font-family:var(--font-body); font-weight:700; font-size:13px; letter-spacing:.04em; text-transform:uppercase;}
.quote{padding:26px; border-radius:var(--card-radius); background:var(--card-light); border:1px solid var(--card-light-border);
  box-shadow:var(--card-shadow); position:relative; overflow:hidden;}
.quote::before{content:""; position:absolute; top:0; left:22px; right:22px; height:3px; transform:skewX(-30deg); background:var(--gold-grad);}
.quote p{color:var(--navy); opacity:1; font-size:17px; font-style:italic;}
.quote .who{margin-top:12px; font-weight:700; color:var(--bronze); text-transform:uppercase; letter-spacing:.08em; font-size:12px;}

/* ---------- FAQ ---------- */
.faq{border:1px solid rgba(211,162,79,.16); border-radius:var(--card-radius); margin-bottom:12px; padding:0 18px;
  background:linear-gradient(145deg,rgba(19,57,101,.60),rgba(5,15,31,.74)); box-shadow:0 14px 32px rgba(3,9,20,.22);
  transition:border-color .3s,background .3s;}
.faq.open,.faq:hover{border-color:rgba(211,162,79,.36); background:linear-gradient(145deg,rgba(19,57,101,.74),rgba(5,15,31,.84));}
.faq button{width:100%; text-align:left; background:none; border:0; cursor:pointer; color:var(--white);
  font-family:var(--font-heading); font-weight:600; font-size:clamp(18px,2vw,22px); padding:22px 50px 22px 0; position:relative; letter-spacing:.01em;}
.faq .tog{position:absolute; right:4px; top:50%; transform:translateY(-50%); width:26px; height:26px;}
.faq .tog::before,.faq .tog::after{content:""; position:absolute; top:50%; left:50%; background:var(--gold);
  transition:transform .35s var(--ease); border-radius:2px;}
.faq .tog::before{width:16px; height:2px; transform:translate(-50%,-50%);}
.faq .tog::after{width:2px; height:16px; transform:translate(-50%,-50%);}
.faq.open .tog::after{transform:translate(-50%,-50%) rotate(90deg) scaleX(0);}
.faq .ans{max-height:0; overflow:hidden; transition:max-height .45s var(--ease);}
.faq .ans p{padding:0 40px 24px 0; font-size:16px;}

/* ---------- contact / forms ---------- */
.contact-grid{display:grid; grid-template-columns:.9fr 1.1fr; gap:42px;}
.info-item{display:flex; gap:16px; padding:18px 0; border-bottom:1px solid rgba(211,162,79,.12);}
.info-item .ic{width:42px; height:42px; flex:0 0 auto; border-radius:6px; display:grid; place-items:center;
  background:linear-gradient(160deg,rgba(211,162,79,.16),rgba(211,162,79,.03)); border:1px solid var(--hairline);}
.info-item .ic svg{width:20px; height:20px; stroke:var(--gold); fill:none; stroke-width:1.7;}
.info-item .k{font-size:12px; text-transform:uppercase; letter-spacing:.16em; color:var(--slate);}
.info-item .v{color:var(--white); font-family:var(--font-heading); font-weight:500; font-size:18px;}
.form .row{display:grid; grid-template-columns:1fr 1fr; gap:16px;}
.field{margin-bottom:16px;}
.field label{display:block; font-size:12px; text-transform:uppercase; letter-spacing:.14em; color:var(--slate); margin-bottom:7px;}
.field input,.field select,.field textarea{width:100%; padding:13px 15px; border-radius:6px; color:var(--cream);
  background:rgba(5,15,31,.62); border:1px solid rgba(211,162,79,.20); font-family:var(--font-body); font-size:15px; transition:.25s;}
.field textarea{min-height:120px; resize:vertical;}
.field input:focus,.field select:focus,.field textarea:focus{outline:none; border-color:var(--gold);
  box-shadow:0 0 0 3px rgba(211,162,79,.18);}
.field select{appearance:none; cursor:pointer;}
.form-note{font-size:13px; color:var(--slate); margin-top:8px;}

/* ---------- footer ---------- */
footer{background:linear-gradient(180deg,rgba(5,15,31,.5),var(--ink)); border-top:1px solid rgba(211,162,79,.14); margin-top:0;}
.foot-top{display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:30px; padding:60px 0 40px;}
.globe-lock{display:flex; align-items:center; gap:12px;}
.globe-lock .br{color:var(--gold); font-size:24px; font-weight:700;}
.globe-lock svg{width:30px; height:30px; stroke:var(--gold); fill:none; stroke-width:1.5;}
.globe-lock img{width:36px; height:36px; object-fit:contain; display:block; flex:0 0 auto;}
.globe-lock .nm{font-family:var(--font-heading); font-weight:700; color:var(--white); font-size:18px; line-height:1.1;}
.foot-col h4{font-family:var(--font-body); font-weight:700; text-transform:uppercase; letter-spacing:.16em;
  font-size:12px; color:var(--slate); margin-bottom:16px;}
.foot-col a{display:block; color:var(--cream); opacity:.8; text-decoration:none; font-size:14px; padding:5px 0; cursor:pointer;}
.foot-col a:hover{opacity:1; color:var(--gold);}
.foot-bottom{border-top:1px solid rgba(211,162,79,.12); padding:22px 0; display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap;}
.foot-bottom p{font-size:12.5px; color:var(--slate); opacity:1;}

/* ---------- reveal ---------- */
.rv{opacity:0; transform:translateY(18px); transition:opacity .6s var(--ease-in),transform .6s var(--ease-in);}
.rv.in{opacity:1; transform:none;}
.d1{transition-delay:.06s;} .d2{transition-delay:.14s;} .d3{transition-delay:.22s;}
.d4{transition-delay:.30s;} .d5{transition-delay:.38s;} .d6{transition-delay:.46s;}


/* ---------- testimonials ---------- */
.testi-section{position:relative; padding:clamp(72px,9vw,128px) 0; overflow:hidden;}
.testi-track-wrap{overflow:hidden; width:100%; position:relative; margin-top:18px;}
.testi-track-wrap::before,.testi-track-wrap::after{content:""; position:absolute; top:0; bottom:0; width:120px; z-index:2; pointer-events:none;}
.testi-track-wrap::before{left:0; background:linear-gradient(90deg,var(--ink),transparent);}
.testi-track-wrap::after{right:0; background:linear-gradient(270deg,var(--ink),transparent);}
.testi-track{display:flex; gap:20px; width:max-content; will-change:transform;}
.testi-track.ltr{animation:scrollLTR 48s linear infinite;}
.testi-track.rtl{animation:scrollRTL 52s linear infinite;}
.testi-track:hover{animation-play-state:paused;}
@keyframes scrollLTR{0%{transform:translateX(0);}100%{transform:translateX(-50%);}}
@keyframes scrollRTL{0%{transform:translateX(-50%);}100%{transform:translateX(0);}}
.testi-card{flex:0 0 340px; background:var(--white);
  border:1px solid rgba(211,162,79,.24); border-radius:8px; padding:26px 24px 22px;
  box-shadow:0 18px 36px rgba(3,9,20,.24); transition:border-color .3s,transform .3s,box-shadow .3s; cursor:default; position:relative;}
.testi-card:hover{border-color:rgba(211,162,79,.58); transform:translateY(-3px); box-shadow:0 22px 44px rgba(3,9,20,.3);}
.testi-card::before{content:"“"; position:absolute; top:14px; right:20px; font-size:48px; line-height:1;
  font-family:var(--font-serif); color:var(--gold); opacity:.95; pointer-events:none;}
.testi-stars{display:flex; gap:3px; margin-bottom:14px;}
.testi-stars svg{width:13px; height:13px; fill:var(--gold); flex:0 0 auto;}
.testi-card p{font-size:14.5px; color:var(--navy); opacity:1; line-height:1.65; margin-bottom:18px;}
.testi-author{display:flex; align-items:center; gap:12px;}
.testi-avatar{width:34px; height:34px; border-radius:6px; flex:0 0 auto; display:grid; place-items:center;
  font-family:var(--font-heading); font-weight:700; font-size:12px; color:var(--ink); opacity:.88;}
.testi-author .who{line-height:1.25;}
.testi-author .who strong{color:var(--navy); font-size:14px; font-weight:700;}
.testi-author .who span{color:var(--azure); font-size:12px; display:block;}
.testi-gap{margin-top:20px;}

/* ---------- 2-step form ---------- */
.step-form{position:relative; min-height:340px;}
.form-step{display:none; animation:fadeSlide .45s var(--ease-in);}
.form-step.active{display:block;}
@keyframes fadeSlide{from{opacity:0;transform:translateX(20px);}to{opacity:1;transform:none;}}
.step-indicators{display:flex; align-items:center; gap:10px; margin-bottom:28px;}
.step-dot{width:8px; height:8px; border-radius:50%; background:rgba(211,162,79,.22); transition:.3s; flex:0 0 auto;}
.step-dot.on{background:var(--gold); width:22px; border-radius:4px; box-shadow:0 0 10px rgba(211,162,79,.5);}
.step-label{font-size:12px; text-transform:uppercase; letter-spacing:.16em; color:var(--slate); margin-left:4px;}
.budget-grid{display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:8px;}
.budget-btn{padding:16px 14px; border-radius:8px; border:1px solid rgba(211,162,79,.2);
  background:linear-gradient(145deg,rgba(19,57,101,.48),rgba(5,15,31,.64)); color:var(--cream); font-family:var(--font-body);
  font-weight:700; font-size:14px; cursor:pointer; transition:.3s; text-align:left; box-shadow:inset 0 1px 0 rgba(255,255,255,.04);}
.budget-btn:hover{border-color:var(--gold); color:var(--white); background:linear-gradient(145deg,rgba(19,57,101,.62),rgba(5,15,31,.72));}
.budget-btn.sel{border-color:var(--gold); background:rgba(211,162,79,.14); color:var(--white);
  box-shadow:0 0 0 3px rgba(211,162,79,.18);}
.budget-btn .bamt{display:block; font-family:var(--font-heading); font-weight:700; font-size:18px; color:var(--gold); margin-bottom:2px;}

/* ---------- improved contact ---------- */
.contact-page{background:linear-gradient(160deg,rgba(13,35,70,.0),rgba(5,15,31,.0));}
.contact-info-col{display:flex; flex-direction:column; gap:0;}
.info-item{display:flex; gap:16px; padding:20px 0; border-bottom:1px solid rgba(211,162,79,.1); align-items:flex-start;}
.info-item:first-child{padding-top:0;}
.info-item .ic{width:44px; height:44px; flex:0 0 auto; border-radius:6px; display:grid; place-items:center;
  background:linear-gradient(145deg,rgba(211,162,79,.18),rgba(211,162,79,.04)); border:1px solid rgba(211,162,79,.25);}
.info-item .ic svg{width:20px; height:20px; stroke:var(--gold); fill:none; stroke-width:1.7;}
.info-item .k{font-size:11px; text-transform:uppercase; letter-spacing:.18em; color:var(--slate); display:block; margin-bottom:3px;}
.info-item .v{color:var(--white); font-family:var(--font-heading); font-weight:500; font-size:19px;}
.form-panel{background:var(--card-dark);
  border:1px solid var(--card-dark-border); border-radius:var(--card-radius); padding:36px; backdrop-filter:blur(8px);
  box-shadow:var(--card-shadow-dark), inset 0 1px 0 rgba(255,255,255,.04); position:relative; overflow:hidden;}
.form-panel::before{content:""; position:absolute; top:0; left:28px; right:28px; height:4px; transform:skewX(-30deg);
  background:linear-gradient(90deg,var(--bronze),var(--gold),var(--azure)); opacity:.86;}
.form-panel h3{color:var(--white); font-family:var(--font-heading); font-size:22px; margin-bottom:6px;}
.form-panel .sub{color:var(--slate); font-size:14px; margin-bottom:24px;}

/* ---------- footer globe no-brackets ---------- */
.globe-lock .br{display:none;}

/* hero items reveal on load */
.hero .rv{opacity:1!important;transform:none!important;}
/* refined gold-rule and eyebrow feel premium */

/* ---- contact form v2 ---- */
.form-title{font-size:clamp(20px,2.2vw,28px);color:var(--white);margin-bottom:6px;line-height:1.15;}
.form-sub{color:var(--slate);font-size:14px;margin-bottom:20px;}
.cf-field{margin-bottom:15px;}
.cf-field label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.24em;
  color:var(--gold);margin-bottom:6px;font-weight:700;font-family:var(--font-body);}
.cf-field input{width:100%;padding:13px 16px;border-radius:6px;color:var(--cream);
  background:rgba(5,14,32,.65);border:1px solid rgba(211,162,79,.18);
  font-family:var(--font-body);font-size:15px;transition:.25s;}
.cf-field input:focus{outline:none;border-color:rgba(211,162,79,.7);
  box-shadow:0 0 0 3px rgba(211,162,79,.1);background:rgba(8,22,48,.85);}
.cf-field input::placeholder{color:rgba(107,138,161,.45);}
.cf-note{font-size:12px;color:var(--slate);margin-top:10px;letter-spacing:.02em;line-height:1.5;}
.step-label{font-size:10px;text-transform:uppercase;letter-spacing:.24em;color:var(--gold);margin-left:6px;font-weight:700;}
.budget-btn .bsub{display:block;font-size:12px;color:var(--slate);margin-top:2px;
  font-family:var(--font-body);font-weight:400;line-height:1.3;}
.budget-btn .bamt{display:block;font-family:var(--font-heading);font-weight:700;font-size:20px;
  background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent;line-height:1.15;margin-bottom:1px;}
.budget-btn{text-align:left;padding:15px 16px;}
/* fix the form-panel to be more premium */
.form-panel{background:var(--card-dark);
  border:1px solid var(--card-dark-border);border-radius:var(--card-radius);padding:32px;backdrop-filter:blur(10px);}
/* ---------- responsive ---------- */
@media(max-width:960px){
  .hero-inner{max-width:100%; padding:80px 24px 64px;}
  .hero-copy{max-width:100%;}
  .g4{grid-template-columns:repeat(2,1fr);} .g3{grid-template-columns:repeat(2,1fr);}
  .whatdo-layout{grid-template-columns:1fr;}
  .cmo-feature{min-height:500px;}
  .service-rail{grid-template-columns:repeat(2,1fr);}
  .svc-layout{grid-template-columns:1fr;}
  .svc-sidebar{display:none;}
  .service-category-head{grid-template-columns:1fr;}
  .services-explorer-wrap{grid-template-columns:1fr; gap:18px;}
  .service-category-rail{display:none;}
  .service-mobile-picker{
    display:block; padding:18px; border-radius:10px;
    background:linear-gradient(145deg,rgba(5,15,31,.78),rgba(13,36,74,.58));
    border:1px solid rgba(211,162,79,.18);
    box-shadow:0 14px 42px rgba(3,9,20,.24), inset 0 1px 0 rgba(255,255,255,.04);
  }
  .service-mobile-picker label{
    display:block; margin-bottom:10px; color:var(--slate); font-size:11px; font-weight:700;
    letter-spacing:.22em; text-transform:uppercase;
  }
  .service-mobile-picker select{
    width:100%; min-height:48px; padding:12px 42px 12px 14px; border-radius:7px;
    border:1px solid rgba(211,162,79,.28); color:var(--cream);
    background:rgba(5,15,31,.74); font-family:var(--font-body); font-weight:700; font-size:15px;
  }
  .service-mobile-picker select:focus{outline:none; border-color:rgba(211,162,79,.72); box-shadow:0 0 0 3px rgba(211,162,79,.12);}
  .service-category-panel{padding:34px;}
  .service-category-intro h3{max-width:18ch;}
  .service-core-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .service-included-list{grid-template-columns:repeat(2,minmax(0,1fr));}
  .clients-group{gap:48px; padding-right:48px;}
  .client-logo-item{min-width:130px;}
  .contact-grid{grid-template-columns:1fr;} .foot-top{grid-template-columns:1fr 1fr;}
}
@media(max-width:680px){
  .wrap{padding:0 20px;}
  section.block,.testi-section{padding:clamp(58px,14vw,86px) 0;}
  .sec-head{margin-bottom:32px;}
  .nav{height:74px;}
  .brand{gap:14px;}
  .brand .mark{width:44px; height:44px; flex-basis:44px;}
  .brand .name{font-size:19px;}
  .brand .name small{font-size:8.5px; letter-spacing:.28em; margin-top:4px;}
  .menu{position:fixed; inset:74px 0 auto 0; flex-direction:column; gap:0; background:rgba(5,15,31,.97);
    border-bottom:1px solid var(--hairline); padding:10px 0; transform:translateY(-130%); transition:transform .4s var(--ease); height:auto;}
  .menu.show{transform:translateY(0);}
  .menu li{width:100%; text-align:center;} .menu li a{display:block; padding:14px 0;}
  .nav>.btn{display:none;} .burger{display:flex;}
  .hero{min-height:auto; background-position:center top;}
  .hero-inner{padding:72px 20px 56px;}
  .hero-stats{gap:18px; margin-top:30px;}
  .hero-stats .stat{min-width:90px;}
  .g2,.g3,.g4{grid-template-columns:1fr;} .form .row{grid-template-columns:1fr;}
  .whatdo-layout,.service-rail{grid-template-columns:1fr;}
  .service-categories{gap:14px;}
  .service-category{padding:0;}
  /* mobile accordion: show toggle button, hide body by default */
  .svc-acc-toggle{display:flex;}
  .service-category-head{display:none;}
  .svc-acc-body{max-height:0;}
  .service-category.acc-open .svc-acc-body{max-height:9999px;}
  .service-category.acc-open .service-category-head{display:none;}
  .service-grid{grid-template-columns:1fr; gap:10px; padding:0 16px 18px;}
  .service-category .svc{padding:18px;}
  .svc-growth-package{grid-column:1; grid-template-columns:1fr;}
  .services-explorer-wrap{margin-inline:-20px; padding-inline:20px;}
  .service-category-panel{padding:28px 20px 30px; border-left:none; border-right:none; border-radius:0; margin-inline:-20px;}
  .service-category-intro{padding-bottom:24px; margin-bottom:22px;}
  .service-category-intro h3{font-size:clamp(30px,10vw,42px); max-width:14ch;}
  .service-category-intro p{font-size:16px;}
  .service-core-grid,.service-included-list{grid-template-columns:1fr;}
  .service-core-card{min-height:auto; padding:22px 20px;}
  .service-included{margin-top:28px;}
  .cmo-feature{min-height:auto; padding:24px;}
  .cmo-feature h3{margin-top:42px;}
  .cmo-map{min-height:160px;}
  .cmo-node{width:58px; height:58px; font-size:14px;}
  .rail-card{min-height:auto;}
  .foot-top{grid-template-columns:1fr;} .trust .wrap{gap:18px;}
  .panel,.form-panel{padding:24px;}
  .svc,.val,.quote{padding:24px;}
  .proj{min-height:340px; height:340px; padding:0;}
  .proj-media img{top:28px; width:min(74%,240px); height:116px; max-width:74%; max-height:116px;}
  .proj-top{padding:0 20px;}
  .proj-desc{font-size:14px; max-width:32ch;}
  .proj:hover .proj-desc,.proj:focus-within .proj-desc{max-height:4.1em;}
  .proj-foot{padding:14px 20px 18px;}
  .testi-track{gap:14px;}
  .testi-track-wrap::before,.testi-track-wrap::after{width:48px;}
  .testi-card{flex-basis:300px; padding:22px 20px 20px;}
  .testi-card p{font-size:14px;}
  .clients-section,.clients-strip{padding:40px 0;}
  .clients-head{margin-bottom:24px;}
  .clients-track{animation-duration:34s;}
  .clients-group{gap:36px; padding-right:36px;}
  .client-logo-item{min-width:104px;}
  .client-logo{max-width:124px; max-height:54px;}
  .inner-hero{min-height:240px;}
  .inner-hero-copy{padding:38px 20px;}
  .inner-hero h1{font-size:clamp(38px,12vw,56px);}
  .project-modal{padding:0;}
  .project-dialog{width:100%; max-height:100vh; min-height:100vh; border-radius:0; border-left:none; border-right:none;}
  .project-modal-media{aspect-ratio:16/7.2; border-radius:0;}
  .project-intro{padding:24px 20px 0;}
  .project-body{padding:24px 20px 44px;}
  .project-body h3{font-size:clamp(24px,8vw,38px);}
  .project-close{top:12px; right:18px; width:32px; height:32px; font-size:11px;}
  .project-meta{grid-template-columns:1fr; gap:22px;}
  .project-case-meta{grid-template-columns:1fr; gap:16px;}
  .project-feedback{padding:18px;}
  .budget-grid{grid-template-columns:1fr;}
}
@media(prefers-reduced-motion:reduce){
  *{animation:none!important; transition:none!important; scroll-behavior:auto!important;}
  .rv{opacity:1; transform:none;}
}

/* ===== HOMEPAGE RHYTHM OVERRIDES ===== */

/* 1. Our Clients — clean white/off-white */
.clients-section {
  background: #ffffff;
  border-top: 3px solid transparent;
  border-image: linear-gradient(90deg, transparent, #D3A24F 30%, #f7e7bd 50%, #D3A24F 70%, transparent) 1;
  border-bottom: 1px solid rgba(19,57,101,.10);
}

/* 2. Who We Are — premium dark navy section */
.who-we-are-section {
  background: linear-gradient(160deg, #0d2448 0%, #081D36 35%, #050F1F 65%, #081D36 100%);
  border-top: 3px solid transparent;
  border-image: linear-gradient(90deg, transparent 5%, rgba(211,162,79,.55) 30%, rgba(247,231,189,.7) 50%, rgba(211,162,79,.55) 70%, transparent 95%) 1;
  border-bottom: 1px solid rgba(211,162,79,.14);
}
.who-we-are-section h2 { color: var(--white); }
.who-we-are-section .eyebrow { color: var(--slate); }
.who-we-are-section p { color: var(--cream); opacity: .88; }
.who-we-are-section .lead { color: var(--cream); opacity: .88; }
.who-we-are-section .gold-rule { margin-bottom: 6px; }
/* Value cards stay navy glass — already dark on dark, bump border for visibility */
.who-we-are-section .val {
  background: linear-gradient(145deg, rgba(19,57,101,.72), rgba(5,15,31,.88));
  border: 1px solid rgba(211,162,79,.30);
  box-shadow: 0 22px 48px rgba(3,9,20,.36), inset 0 1px 0 rgba(255,255,255,.06);
}
.who-we-are-section .val h3 { color: var(--white); }
.who-we-are-section .val p { color: var(--cream); opacity: .86; }
/* Any panel wrapper inside Who We Are */
.who-we-are-section .panel {
  background: linear-gradient(160deg, rgba(19,57,101,.58), rgba(8,29,54,.72));
  border-color: rgba(211,162,79,.22);
}

/* 3. FPS Standard — deep navy/ink authoritative */
.fps-standard-section {
  background: linear-gradient(160deg, #081D36 0%, #050F1F 55%, #081D36 100%);
  border-top: 1px solid rgba(211,162,79,.18);
  border-bottom: 1px solid rgba(211,162,79,.14);
}
.fps-standard-section h2 { color: var(--white); }
.fps-standard-section .eyebrow { color: var(--slate); }
/* Standard cards = navy glass with gold badge */
.fps-standard-section .val {
  background: linear-gradient(145deg, rgba(19,57,101,.70), rgba(5,15,31,.86));
  border: 1px solid rgba(211,162,79,.22);
  box-shadow: 0 18px 44px rgba(3,9,20,.36), inset 0 1px 0 rgba(255,255,255,.05);
}
.fps-standard-section .val h3 { color: var(--white); }
.fps-standard-section .val p { color: var(--cream); opacity: .88; }

/* 4. What We Do — light bg, branded service cards */
.what-we-do-section {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background:
    radial-gradient(circle at 76% 18%, rgba(211,162,79,.09), transparent 30%),
    radial-gradient(circle at 14% 78%, rgba(27,117,188,.08), transparent 32%),
    linear-gradient(180deg, #fbfcff 0%, #edf2f7 100%);
  border-top: 1px solid rgba(19,57,101,.08);
  border-bottom: 1px solid rgba(19,57,101,.08);
}
.what-we-do-section::before,
.what-we-do-section::after,
.growth-areas-section::before,
.growth-areas-section::after,
.projects-showcase-section::before,
.projects-showcase-section::after,
.about-story-section::before,
.about-story-section::after,
.about-values-section::before,
.about-values-section::after {
  content: "";
  position: absolute;
  pointer-events: none;
  z-index: 0;
}
.what-we-do-section::before {
  width: min(680px, 58vw);
  height: 470px;
  left: -170px;
  bottom: 58px;
  opacity: .13;
  background:
    radial-gradient(circle at 12px 12px, rgba(211,162,79,.42) 1.1px, transparent 1.8px) 0 0 / 22px 22px,
    linear-gradient(135deg, rgba(5,15,31,.98), rgba(8,29,54,.91) 56%, rgba(19,57,101,.82));
  clip-path: polygon(0 0, 84% 0, 100% 100%, 16% 100%);
  transform: rotate(4deg);
}
.what-we-do-section::after {
  width: 46%;
  height: 2px;
  right: -8%;
  top: 178px;
  opacity: .42;
  background: var(--gold-grad);
  transform: rotate(-9deg);
  box-shadow: 0 0 22px rgba(211,162,79,.18);
}
.what-we-do-section > .wrap,
.growth-areas-section > .wrap,
.projects-showcase-section > .wrap,
.about-story-section > .wrap,
.about-values-section > .wrap {
  position: relative;
  z-index: 1;
}
.what-we-do-section > .wrap > .sec-head h2,
.what-we-do-section > .wrap > .sec-head .eyebrow ~ *,
.what-we-do-section h2 { color: var(--navy); }
.what-we-do-section > .wrap > .sec-head .eyebrow { color: var(--bronze); }
.what-we-do-section > .wrap > .sec-head p { color: #30475e; opacity: 1; }
/* CMO feature card — keep dark navy, reinforce on light section */
.what-we-do-section .cmo-feature {
  background:
    radial-gradient(circle at 86% 16%, rgba(211,162,79,.22), transparent 28%),
    linear-gradient(145deg, #0d2545 0%, #050F1F 100%);
  border: 1px solid rgba(211,162,79,.36);
  box-shadow: 0 32px 80px rgba(3,9,20,.38), inset 0 1px 0 rgba(255,255,255,.05);
}
.what-we-do-section .cmo-feature h3 { color: var(--white); }
.what-we-do-section .cmo-feature p { color: var(--cream); opacity: .92; }
/* Rail cards on light section — deep navy/slate, readable */
.what-we-do-section .rail-card {
  background: linear-gradient(145deg, rgba(13,36,74,.96), rgba(5,15,31,.98));
  border: 1px solid rgba(211,162,79,.22);
  box-shadow: 0 14px 36px rgba(3,9,20,.28), inset 0 1px 0 rgba(255,255,255,.04);
}
.what-we-do-section .rail-card:hover {
  background: linear-gradient(145deg, rgba(19,57,101,.98), rgba(8,29,54,.98));
  border-color: rgba(211,162,79,.42);
}
.what-we-do-section .rail-card h3 { color: var(--white); }
.what-we-do-section .rail-card p { color: var(--cream); opacity: .85; }
.what-we-do-section .rail-card .no { color: var(--gold); }
.what-we-do-section .rail-card .go { color: var(--gold); }

/* 5. What FPS Owns — dark navy technology panel */
.fps-owns-section {
  background: linear-gradient(145deg, #081D36 0%, #050F1F 60%, #133965 100%);
  border-top: 1px solid rgba(211,162,79,.20);
  border-bottom: 1px solid rgba(107,138,161,.12);
}
.fps-owns-section h2 { color: var(--white); }
.fps-owns-section h3 { color: var(--white); }
.fps-owns-section .eyebrow {
  font-size: clamp(13px, 1.3vw, 16px);
  letter-spacing: .22em;
  color: var(--gold);
  font-weight: 700;
  line-height: 1.05;
}

/* 6. Flagship Program — lifted slate/navy feature card */
.flagship-section {
  background: linear-gradient(150deg, rgba(19,57,101,.18) 0%, rgba(8,29,54,.28) 40%, rgba(107,138,161,.12) 100%),
              linear-gradient(180deg, #eef3f8 0%, #e6edf5 100%);
  border-top: 1px solid rgba(19,57,101,.12);
  border-bottom: 1px solid rgba(19,57,101,.10);
}
.flagship-section h2 { color: var(--navy); }
.flagship-section h3 { color: var(--navy); }
.flagship-section .eyebrow { color: var(--bronze); }
.flagship-section p { color: #30475e; opacity: 1; }
/* The panel inside flagship stays dark */
.flagship-section .panel h3 { color: var(--white); }
.flagship-section .panel p { color: var(--cream); opacity: .9; }

/* 7. Client Feedback (testimonials) — dark navy/ink */
.testi-section {
  background: linear-gradient(160deg, #050F1F 0%, #081D36 55%, #050F1F 100%);
  border-top: 1px solid rgba(211,162,79,.18);
  border-bottom: 1px solid rgba(211,162,79,.12);
}
/* Testimonial card improvements */
.testi-card {
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  border: 1px solid rgba(211,162,79,.30);
  box-shadow: 0 18px 45px rgba(5,15,31,.30), inset 0 1px 0 rgba(255,255,255,.92);
  color: var(--navy-deep);
}
.testi-card p { color: var(--navy-deep); opacity: .94; }
.testi-card::before { color: var(--gold); opacity: .95; text-shadow: 0 2px 10px rgba(211,162,79,.18); }
.testi-author .who strong { color: var(--ink); }
.testi-author .who span { color: var(--slate); opacity: 1; }
.testi-stars svg { fill: var(--gold); filter: drop-shadow(0 1px 2px rgba(211,162,79,.22)); }
.testi-avatar {
  background: var(--gold-grad) !important;
  color: var(--ink);
  border: 1px solid rgba(169,119,47,.34);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.55);
}
/* Fix fade gradients for dark bg */
.testi-track-wrap::before { background: linear-gradient(90deg, #050F1F, transparent); }
.testi-track-wrap::after  { background: linear-gradient(270deg, #050F1F, transparent); }

/* 8. Growth Areas — light, strategic tiles */
.growth-areas-section {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background:
    radial-gradient(circle at 12% 16%, rgba(211,162,79,.08), transparent 30%),
    radial-gradient(circle at 92% 84%, rgba(19,57,101,.09), transparent 34%),
    linear-gradient(180deg, #f8fafc 0%, #eef3f8 100%);
  border-top: 1px solid rgba(19,57,101,.08);
  border-bottom: 1px solid rgba(19,57,101,.08);
}
.growth-areas-section::before {
  width: min(620px, 52vw);
  height: 390px;
  right: -150px;
  top: 120px;
  opacity: .14;
  background: linear-gradient(145deg, rgba(8,29,54,.95), rgba(19,57,101,.72));
  clip-path: polygon(18% 0, 100% 12%, 82% 100%, 0 88%);
  transform: rotate(-5deg);
}
.growth-areas-section::after {
  width: 118%;
  height: 95px;
  left: -9%;
  bottom: 56px;
  opacity: .28;
  background:
    linear-gradient(104deg, transparent 0 35%, rgba(211,162,79,.58) 35.2%, rgba(247,231,189,.62) 35.7%, transparent 36.2% 68%, rgba(211,162,79,.46) 68.2%, transparent 68.8%),
    radial-gradient(circle at 13px 13px, rgba(19,57,101,.18) 1px, transparent 1.8px) 0 0 / 24px 24px;
  transform: skewY(4deg);
}
.growth-areas-section h2 { color: var(--navy); }
.growth-areas-section .eyebrow { color: var(--bronze); }
.growth-areas-section p { color: #30475e; opacity: 1; }
/* Growth tiles = light cards with gold accent */
.growth-card {
  background: linear-gradient(180deg, #ffffff 0%, #f3f7fb 100%);
  border: 1px solid rgba(19,57,101,.12);
  border-radius: var(--card-radius);
  padding: var(--card-pad);
  position: relative;
  overflow: hidden;
  box-shadow: 0 8px 24px rgba(19,57,101,.09), inset 0 1px 0 rgba(255,255,255,.9);
  transition: transform .4s var(--ease-in), box-shadow .4s var(--ease-in), border-color .3s;
}
.growth-card::before {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 3px;
  background: var(--gold-grad);
  opacity: .85;
}
.growth-card:hover {
  transform: translateY(-4px);
  border-color: rgba(211,162,79,.38);
  box-shadow: 0 18px 40px rgba(19,57,101,.14), inset 0 1px 0 rgba(255,255,255,.9);
}
.growth-card h3 { color: var(--navy); margin-bottom: 8px; }
.growth-card p { color: #314b65; opacity: 1; font-size: 15px; }
.growth-card .marker {
  display: inline-flex; align-items: center; justify-content: center;
  width: 38px; height: 38px; border-radius: 6px; margin-bottom: 14px;
  background: linear-gradient(145deg, rgba(211,162,79,.20), rgba(140,108,63,.06));
  border: 1px solid rgba(211,162,79,.30);
}
.growth-card .marker svg { width: 20px; height: 20px; stroke: var(--gold); fill: none; stroke-width: 1.8; }

/* Page-specific light section treatments */
.projects-showcase-section {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background:
    radial-gradient(circle at 84% 12%, rgba(211,162,79,.09), transparent 30%),
    radial-gradient(circle at 12% 88%, rgba(27,117,188,.08), transparent 36%),
    linear-gradient(180deg, #fbfcff 0%, #edf3f8 100%);
}
.projects-showcase-section::before {
  width: min(760px, 62vw);
  height: 470px;
  right: -210px;
  bottom: 92px;
  opacity: .15;
  background:
    radial-gradient(circle at 11px 11px, rgba(247,231,189,.42) 1px, transparent 1.7px) 0 0 / 22px 22px,
    linear-gradient(135deg, rgba(5,15,31,.96), rgba(8,29,54,.88) 48%, rgba(19,57,101,.74));
  clip-path: polygon(12% 8%, 100% 0, 88% 92%, 0 100%);
  transform: rotate(-3deg);
}
.projects-showcase-section::after {
  width: 52%;
  height: 2px;
  left: -9%;
  top: 256px;
  opacity: .40;
  background: var(--gold-grad);
  transform: rotate(7deg);
  box-shadow: 0 0 20px rgba(211,162,79,.16);
}
.projects-showcase-section .sec-head,
.projects-showcase-section .filters,
.projects-showcase-section #proj-all {
  position: relative;
  z-index: 1;
}
.about-story-section {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background:
    radial-gradient(circle at 72% 18%, rgba(211,162,79,.08), transparent 30%),
    linear-gradient(180deg, #f9fbfe 0%, #edf2f7 100%);
}
.about-story-section::before {
  width: min(560px, 48vw);
  height: 420px;
  left: -150px;
  top: 95px;
  opacity: .12;
  background: linear-gradient(140deg, rgba(5,15,31,.96), rgba(19,57,101,.74));
  clip-path: polygon(0 0, 86% 12%, 100% 100%, 12% 88%);
  transform: rotate(6deg);
}
.about-story-section::after {
  width: 34%;
  height: 110px;
  right: 4%;
  bottom: 38px;
  opacity: .22;
  background:
    linear-gradient(112deg, transparent 0 42%, rgba(211,162,79,.72) 42.2%, rgba(247,231,189,.72) 42.8%, transparent 43.4%),
    radial-gradient(circle at 12px 12px, rgba(19,57,101,.20) 1px, transparent 1.8px) 0 0 / 22px 22px;
  transform: skewY(-7deg);
}
.about-values-section {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background:
    radial-gradient(circle at 10% 20%, rgba(27,117,188,.07), transparent 28%),
    radial-gradient(circle at 90% 78%, rgba(211,162,79,.09), transparent 30%),
    linear-gradient(180deg, #fbfcff 0%, #eef3f8 100%);
}
.about-values-section::before {
  width: min(720px, 60vw);
  height: 320px;
  right: -170px;
  top: 112px;
  opacity: .11;
  background:
    radial-gradient(circle at 12px 12px, rgba(211,162,79,.46) 1px, transparent 1.8px) 0 0 / 24px 24px,
    linear-gradient(145deg, rgba(8,29,54,.92), rgba(19,57,101,.70));
  clip-path: polygon(10% 0, 100% 0, 90% 100%, 0 86%);
  transform: rotate(-4deg);
}
.about-values-section::after {
  width: 44%;
  height: 2px;
  left: 7%;
  bottom: 86px;
  opacity: .36;
  background: var(--gold-grad);
  transform: rotate(-8deg);
}
.about-values-section .val {
  background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(246,249,252,.96));
  border-color: rgba(211,162,79,.20);
}

/* 9. Set Up for Success CTA — strong deep navy */
.setup-success-section {
  background: linear-gradient(150deg, #081D36 0%, #050F1F 50%, #133965 100%);
  border-top: 3px solid transparent;
  border-image: linear-gradient(90deg, transparent, #D3A24F 30%, #f7e7bd 50%, #D3A24F 70%, transparent) 1;
}
.setup-success-section h2 { color: var(--white); }
.setup-success-section p { color: var(--cream); opacity: .9; }

/* ===== SECTION DIVIDER (ribbon rule between major zones) ===== */
.section-divider {
  width: 100%;
  height: 6px;
  background: repeating-linear-gradient(90deg,
    var(--navy) 0 18%,
    var(--bronze) 18% 36%,
    var(--gold) 36% 54%,
    var(--azure) 54% 72%,
    var(--slate) 72% 90%
  );
  opacity: .55;
  transform: skewX(-30deg);
  transform-origin: center;
}

/* ===== HOMEPAGE PACKAGE SECTION OVERRIDE ===== */
/* ===== SERVICE PACKAGES ===== */
.pkg-section{
  background:linear-gradient(170deg,#0a1f3a 0%,#081D36 50%,#050F1F 100%);
  border-top:1px solid rgba(211,162,79,.16);
  border-bottom:1px solid rgba(211,162,79,.10);
}
.pkg-grid{
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:20px;
  align-items:end;
  position:relative;
}
.pkg-card{
  position:relative;
  display:flex;
  flex-direction:column;
  background:linear-gradient(155deg,rgba(19,57,101,.78) 0%,rgba(8,29,54,.92) 55%,rgba(5,15,31,.97) 100%);
  border:1px solid rgba(211,162,79,.22);
  border-radius:12px;
  padding:32px 28px 28px;
  box-shadow:0 18px 48px rgba(3,9,20,.36), inset 0 1px 0 rgba(255,255,255,.04);
  transition:transform .32s var(--ease), box-shadow .32s var(--ease), border-color .32s;
  overflow:hidden;
}
.pkg-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 80% 10%,rgba(211,162,79,.10),transparent 50%);
  pointer-events:none;
}
.pkg-card:hover{
  transform:translateY(-6px);
  border-color:rgba(211,162,79,.38);
  box-shadow:0 26px 60px rgba(3,9,20,.44), inset 0 1px 0 rgba(255,255,255,.07);
}
/* Featured growth card */
.pkg-card.pkg-featured{
  background:
    radial-gradient(circle at 50% 0%,rgba(245,198,107,.18),transparent 34%),
    linear-gradient(155deg,rgba(28,86,135,.95) 0%,rgba(15,55,92,.94) 48%,rgba(7,28,54,.98) 100%);
  border:1px solid rgba(245,198,107,.65);
  border-radius:14px;
  box-shadow:
    0 28px 70px rgba(8,29,54,.32),
    0 0 0 1px rgba(245,198,107,.12),
    0 0 42px rgba(53,133,190,.22),
    inset 0 1px 0 rgba(255,255,255,.10);
  transform:translateY(-14px) scale(1.035);
  z-index:2;
}
.pkg-card.pkg-featured:hover{
  transform:translateY(-20px) scale(1.04);
  box-shadow:
    0 36px 88px rgba(8,29,54,.40),
    0 0 0 1px rgba(245,198,107,.22),
    0 0 60px rgba(53,133,190,.30),
    inset 0 1px 0 rgba(255,255,255,.12);
}
/* Best offer badge */
.pkg-badge{
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-family:var(--font-body);
  font-size:10px;
  font-weight:700;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--ink);
  background:var(--gold-grad);
  padding:5px 12px 5px 10px;
  border-radius:20px;
  margin-bottom:18px;
  box-shadow:0 2px 12px rgba(211,162,79,.36);
}
.pkg-badge svg{width:11px;height:11px;fill:var(--ink);flex-shrink:0;}
/* Package icon */
.pkg-icon{
  width:42px; height:42px;
  border-radius:10px;
  background:linear-gradient(145deg,rgba(211,162,79,.16),rgba(211,162,79,.06));
  border:1px solid rgba(211,162,79,.28);
  display:grid; place-items:center;
  margin-bottom:16px;
}
.pkg-icon svg{width:20px;height:20px;stroke:var(--gold);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
.pkg-featured .pkg-icon{
  background:linear-gradient(145deg,rgba(211,162,79,.26),rgba(211,162,79,.10));
  border-color:rgba(211,162,79,.46);
}
/* Package label */
.pkg-label{
  font-family:var(--font-body);
  font-size:10px; font-weight:700;
  letter-spacing:.28em; text-transform:uppercase;
  color:var(--slate);
  margin-bottom:6px;
}
.pkg-featured .pkg-label{color:var(--gold); opacity:.80;}
/* Package name */
.pkg-name{
  font-family:var(--font-heading);
  font-size:clamp(22px,2.2vw,28px);
  font-weight:700;
  color:var(--white);
  line-height:1.05;
  margin-bottom:10px;
}
/* Tagline */
.pkg-tagline{
  font-size:14px;
  color:var(--cream);
  opacity:.78;
  line-height:1.55;
  margin-bottom:14px;
}
/* Best for */
.pkg-bestfor{
  font-size:12px;
  color:var(--gold);
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.12em;
  margin-bottom:4px;
  font-family:var(--font-body);
}
.pkg-bestfor-text{
  font-size:13px;
  color:var(--cream);
  opacity:.68;
  line-height:1.5;
  margin-bottom:18px;
}
/* Divider */
.pkg-divider{
  height:1px;
  background:linear-gradient(90deg,rgba(211,162,79,.28),rgba(211,162,79,.06) 70%,transparent);
  margin-bottom:18px;
}
/* Feature list */
.pkg-features{
  list-style:none;
  display:flex;
  flex-direction:column;
  gap:9px;
  margin-bottom:24px;
  flex:1;
}
.pkg-features li{
  display:flex;
  align-items:flex-start;
  gap:9px;
  font-size:13.5px;
  color:var(--cream);
  opacity:.82;
  line-height:1.45;
}
.pkg-features li::before{
  content:"";
  display:block;
  flex-shrink:0;
  width:16px; height:16px;
  margin-top:1px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Ccircle cx='8' cy='8' r='7' fill='none' stroke='%23D3A24F' stroke-width='1.4'/%3E%3Cpath d='M5 8l2 2 4-4' stroke='%23D3A24F' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' fill='none'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-size:contain;
}
.pkg-featured .pkg-features li::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Ccircle cx='8' cy='8' r='7' fill='rgba(211,162,79,.18)' stroke='%23D3A24F' stroke-width='1.4'/%3E%3Cpath d='M5 8l2 2 4-4' stroke='%23D3A24F' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' fill='none'/%3E%3C/svg%3E");
}
/* CTA button */
.pkg-cta{
  display:block;
  text-align:center;
  padding:13px 20px;
  border-radius:8px;
  font-family:var(--font-heading);
  font-size:15px;
  font-weight:700;
  letter-spacing:.04em;
  text-decoration:none;
  cursor:pointer;
  transition:transform .22s var(--ease), box-shadow .22s;
  border:1px solid rgba(211,162,79,.40);
  background:linear-gradient(145deg,rgba(211,162,79,.12),rgba(211,162,79,.04));
  color:var(--gold);
}
.pkg-cta:hover{
  transform:translateY(-2px);
  border-color:rgba(211,162,79,.62);
  box-shadow:0 6px 20px rgba(211,162,79,.18);
}
.pkg-cta.pkg-cta-gold{
  background:var(--gold-grad);
  color:var(--ink);
  border:none;
  font-weight:700;
  box-shadow:0 4px 18px rgba(211,162,79,.32);
}
.pkg-cta.pkg-cta-gold:hover{
  transform:translateY(-3px);
  box-shadow:0 10px 30px rgba(211,162,79,.42);
}
/* Responsive */
@media(max-width:960px){
  .pkg-grid{grid-template-columns:1fr; gap:24px; align-items:stretch;}
  .pkg-card.pkg-featured{transform:none; scale:1;}
  .pkg-card.pkg-featured:hover{transform:translateY(-6px); scale:1;}
  .pkg-card:hover{transform:translateY(-4px);}
}
@media(max-width:680px){
  .pkg-grid{gap:18px;}
  .pkg-card{padding:24px 22px 22px;}
  .pkg-cta{padding:13px 16px;}
}

/* ===== HOMEPAGE PACKAGE SECTION LIGHT OVERRIDE ===== */
/* Must come after .pkg-section so the cascade is correct */
.home-packages-section{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:linear-gradient(170deg,#0a1f3a 0%,#081D36 50%,#050F1F 100%);
  border-top:1px solid rgba(211,162,79,.16);
  border-bottom:1px solid rgba(211,162,79,.10);
}
.home-packages-section::before,
.home-packages-section::after{
  content:"";
  position:absolute;
  pointer-events:none;
  z-index:0;
}
.home-packages-section::before{
  width:min(760px,66vw);
  height:520px;
  right:-180px;
  top:118px;
  opacity:.16;
  background:
    radial-gradient(circle at 12px 12px,rgba(211,162,79,.44) 1.2px,transparent 1.8px) 0 0/20px 20px,
    linear-gradient(135deg,rgba(5,15,31,.98),rgba(8,29,54,.94) 54%,rgba(19,57,101,.86));
  clip-path:polygon(18% 0,100% 0,82% 100%,0 100%);
  transform:rotate(-6deg);
  box-shadow:0 36px 90px rgba(5,15,31,.22);
}
.home-packages-section::after{
  width:125%;
  height:120px;
  left:-12%;
  bottom:84px;
  opacity:.30;
  background:
    linear-gradient(105deg,transparent 0 16%,rgba(211,162,79,.78) 16.2%,rgba(247,231,189,.80) 16.7%,transparent 17.2% 52%,rgba(211,162,79,.56) 52.2%,rgba(247,231,189,.58) 52.7%,transparent 53.2%),
    linear-gradient(176deg,transparent 30%,rgba(8,29,54,.15) 31%,rgba(8,29,54,.03) 55%,transparent 56%);
  transform:skewY(-6deg);
}
.home-packages-section > .wrap{
  position:relative;
  z-index:1;
}
/* Scope heading text only to the sec-head wrapper — does NOT bleed into dark cards */
.home-packages-section > .wrap > .sec-head .eyebrow{
  color:var(--gold);
}
.home-packages-section > .wrap > .sec-head h2{
  color:var(--white) !important;
}
.home-packages-section > .wrap > .sec-head .serif{
  background:var(--gold-grad);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
}
.home-packages-section > .wrap > .sec-head p{
  color:var(--cream) !important;
  opacity:.82 !important;
}
.home-packages-section .pkg-grid{
  z-index:1;
}
.home-packages-section .pkg-card{
  background:
    linear-gradient(122deg,rgba(255,255,255,.07),transparent 24%),
    radial-gradient(circle at 84% 10%,rgba(211,162,79,.18),transparent 34%),
    radial-gradient(circle at 8% 100%,rgba(27,117,188,.14),transparent 38%),
    linear-gradient(150deg,rgba(19,57,101,.92) 0%,rgba(8,29,54,.96) 48%,rgba(5,15,31,.99) 100%);
  border:1px solid rgba(211,162,79,.30);
  border-radius:var(--card-radius);
  box-shadow:
    0 24px 64px rgba(5,15,31,.30),
    inset 0 1px 0 rgba(255,255,255,.08);
}
.home-packages-section .pkg-card::before{
  inset:0 auto auto 0;
  width:100%;
  height:3px;
  background:linear-gradient(90deg,transparent,rgba(211,162,79,.38),rgba(247,231,189,.82),rgba(211,162,79,.42),transparent);
  opacity:1;
}
.home-packages-section .pkg-card::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:0;
  background:
    radial-gradient(circle at 11px 11px,rgba(245,241,232,.07) 1px,transparent 1.7px) 0 0/22px 22px,
    linear-gradient(124deg,transparent 0 54%,rgba(211,162,79,.10) 54.2%,rgba(211,162,79,.03) 55.1%,transparent 55.4%),
    linear-gradient(315deg,transparent 0 58%,rgba(255,255,255,.05) 58.2%,transparent 70%);
  opacity:.72;
}
.home-packages-section .pkg-card > *{
  position:relative;
  z-index:1;
}
.home-packages-section .pkg-card:hover{
  border-color:rgba(211,162,79,.50);
  box-shadow:
    0 30px 76px rgba(5,15,31,.38),
    0 0 0 1px rgba(211,162,79,.12),
    inset 0 1px 0 rgba(255,255,255,.10);
}
.home-packages-section .pkg-card.pkg-featured{
  background:
    radial-gradient(circle at 76% 6%,rgba(247,231,189,.28),transparent 34%),
    linear-gradient(122deg,rgba(211,162,79,.15),transparent 28%),
    radial-gradient(circle at 14% 94%,rgba(27,117,188,.18),transparent 40%),
    linear-gradient(150deg,rgba(22,62,116,.97) 0%,rgba(9,32,64,.99) 48%,rgba(5,15,31,1) 100%);
  border-color:rgba(211,162,79,.66);
  box-shadow:
    0 34px 88px rgba(5,15,31,.44),
    0 0 0 1px rgba(211,162,79,.28),
    0 0 48px rgba(211,162,79,.14),
    inset 0 1px 0 rgba(255,255,255,.11);
}
.home-packages-section .pkg-card.pkg-featured::before{
  height:4px;
  background:linear-gradient(90deg,transparent 4%,#a9772f,#f7e7bd,#D3A24F,#a9772f,transparent 96%);
}
.home-packages-section .pkg-card.pkg-featured::after{
  opacity:.88;
  background:
    radial-gradient(circle at 11px 11px,rgba(247,231,189,.08) 1px,transparent 1.8px) 0 0/20px 20px,
    linear-gradient(124deg,transparent 0 48%,rgba(211,162,79,.18) 48.2%,rgba(247,231,189,.08) 49.1%,transparent 49.5%),
    linear-gradient(315deg,transparent 0 62%,rgba(211,162,79,.09) 62.2%,transparent 75%);
}
.home-packages-section .pkg-badge{
  background:var(--gold-grad);
  color:var(--ink);
  border:1px solid rgba(247,231,189,.50);
  box-shadow:0 8px 22px rgba(211,162,79,.32), inset 0 1px 0 rgba(255,255,255,.36);
}
.home-packages-section .pkg-badge svg{
  fill:var(--ink);
}
.home-packages-section .pkg-icon{
  background:linear-gradient(145deg,rgba(211,162,79,.22),rgba(211,162,79,.07));
  border-color:rgba(211,162,79,.38);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07);
}
.home-packages-section .pkg-featured .pkg-icon{
  background:linear-gradient(145deg,rgba(211,162,79,.34),rgba(211,162,79,.10));
  border-color:rgba(247,231,189,.54);
}
.home-packages-section .pkg-label{
  color:rgba(107,138,161,.96);
}
.home-packages-section .pkg-featured .pkg-label{
  color:var(--gold);
  opacity:.96;
}
.home-packages-section .pkg-name{
  color:var(--white);
}
.home-packages-section .pkg-tagline,
.home-packages-section .pkg-bestfor-text,
.home-packages-section .pkg-features li{
  color:var(--cream);
}
.home-packages-section .pkg-tagline{opacity:.86;}
.home-packages-section .pkg-bestfor-text{opacity:.76;}
.home-packages-section .pkg-features li{opacity:.88;}
.home-packages-section .pkg-divider{
  background:linear-gradient(90deg,rgba(247,231,189,.34),rgba(211,162,79,.10) 64%,transparent);
}
.home-packages-section .pkg-cta{
  background:linear-gradient(145deg,rgba(211,162,79,.15),rgba(211,162,79,.05));
  border-color:rgba(211,162,79,.48);
  color:#f0cd82;
}
.home-packages-section .pkg-cta.pkg-cta-gold{
  background:var(--gold-grad);
  color:var(--ink);
  border:1px solid rgba(247,231,189,.44);
}
@media(max-width:960px){
  .what-we-do-section::before,
  .growth-areas-section::before,
  .projects-showcase-section::before,
  .about-story-section::before,
  .about-values-section::before{
    opacity:.08;
    width:88vw;
  }
  .what-we-do-section::after,
  .growth-areas-section::after,
  .projects-showcase-section::after,
  .about-story-section::after,
  .about-values-section::after{
    opacity:.18;
  }
  .home-packages-section::before{
    width:92vw;
    right:-48vw;
    top:180px;
    opacity:.10;
  }
  .home-packages-section::after{
    opacity:.18;
    bottom:36px;
  }
  .home-packages-section .pkg-card.pkg-featured,
  .home-packages-section .pkg-card.pkg-featured:hover{
    transform:none;
    scale:1;
  }
}
@media(max-width:680px){
  .what-we-do-section::before,
  .growth-areas-section::before,
  .projects-showcase-section::before,
  .about-story-section::before,
  .about-values-section::before{
    display:none;
  }
  .what-we-do-section::after,
  .growth-areas-section::after,
  .projects-showcase-section::after,
  .about-story-section::after,
  .about-values-section::after{
    opacity:.10;
    width:86%;
    height:70px;
  }
  .home-packages-section::before{
    display:none;
  }
  .home-packages-section::after{
    opacity:.12;
    bottom:22px;
    height:84px;
  }
  .home-packages-section .pkg-card::after{
    opacity:.52;
  }
}
.ft-tagline{white-space:nowrap; font-size:clamp(13px,1.1vw,15px); color:var(--cream); opacity:.82;}
@media(max-width:680px){.ft-tagline{white-space:normal; font-size:13px;}}