/* ============================================================
   VARADA NEXUS — PUBLIC SITE DESIGN SYSTEM
   Premium "Obsidian Aurum" pre-release edition
   Near-black ink canvas · champagne gold accents · glass
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Playfair+Display:ital,wght@0,600;0,700;1,600;1,700&display=swap');

:root{
  /* --- core canvas (dark blue gradient) --- */
  --bg:            #050609;
  --bg-2:          #07080d;
  --bg-3:          #090a0f;
  --bg-elev:       #0a0b10;
  --bg-panel:      #0b0c12;

  /* --- glass surfaces (blue tinted) --- */
  --surface:       rgba(230,200,126,.055);
  --surface-2:     rgba(230,200,126,.10);
  --surface-3:     rgba(230,200,126,.15);

  /* --- lines --- */
  --border:        rgba(230,200,126,.20);
  --border-soft:   rgba(230,200,126,.10);
  --border-gold:   rgba(217,185,110,.28);

  /* --- text --- */
  --text:          #f7f4ec;
  --text-2:        #c9c5b8;
  --text-3:        #9b9788;

  /* --- accents --- */
  --accent:        #e6c87e;
  --accent-2:      #c39a44;
  --accent-soft:   rgba(230,200,126,.15);
  --gold:          #e0c274;
  --gold-2:        #d9b45f;
  --gold-soft:     rgba(224,194,116,.14);

  /* --- gradients --- */
  --grad-head:     linear-gradient(180deg,#ffffff 32%,#cfe0ff 100%);
  --grad-accent:   linear-gradient(135deg,#f7e7b0,#c39a44 55%,#c39a44);
  --grad-gold:     linear-gradient(120deg,#f6e6ad 0%,#e0c274 42%,#c39a44 100%);
  --grad-blue:     linear-gradient(135deg,#e0c274 0%,#c39a44 45%,#e6c87e 100%);
  --grad-canvas:   radial-gradient(1200px 720px at 72% -8%, rgba(230,200,126,.20), transparent 58%),
                   radial-gradient(900px 620px at 12% 6%, rgba(195,154,68,.12), transparent 60%),
                   linear-gradient(165deg,#050609 0%,#07080d 40%,#050609 72%,#040508 100%);

  --font-serif:    "Playfair Display",Georgia,"Times New Roman",serif;
  --radius:        22px;
  --radius-lg:     30px;
  --nav-h:         56px;
  --ease:          cubic-bezier(.22,.61,.14,1);
  --font: "Manrope",-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Inter","Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --shadow-lg:     0 40px 120px rgba(0,0,0,.7);
  --shadow-blue:   0 30px 80px rgba(112,82,28,.35);
  --shadow-soft:   0 2px 8px rgba(0,0,0,.3),0 18px 50px rgba(0,0,0,.45);
}

/* premium body rendering */
body{letter-spacing:-.005em}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  font-family:var(--font);
  background:var(--bg);
  color:var(--text);
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
::selection{background:rgba(230,200,126,.38)}

/* ------------------------------------------------ ambient / canvas */
.ambient{
  position:fixed;inset:0;z-index:-2;pointer-events:none;
  background:var(--grad-canvas);
}
.ambient::before{
  content:"";position:absolute;inset:0;
  background:
    radial-gradient(760px 520px at 82% 82%, rgba(230,200,126,.14), transparent 60%),
    radial-gradient(680px 480px at 18% 108%, rgba(195,154,68,.10), transparent 62%),
    radial-gradient(560px 420px at 60% 42%, rgba(224,194,116,.05), transparent 60%);
}
.ambient::after{
  content:"";position:absolute;inset:0;
  background-image:
    radial-gradient(rgba(230,200,126,.055) 1px, transparent 1px),
    radial-gradient(rgba(224,194,116,.035) 1px, transparent 1px);
  background-size:36px 36px,28px 28px;
  background-position:0 0,14px 18px;
  mask-image:linear-gradient(180deg,rgba(0,0,0,.55),transparent 42%,rgba(0,0,0,.7) 92%);
}

/* ------------------------------------------------ nav */
.site-nav{
  position:fixed;top:0;left:0;right:0;z-index:1000;
  height:var(--nav-h);
  background:rgba(6,7,11,.55);
  -webkit-backdrop-filter:saturate(1.7) blur(24px);
  backdrop-filter:saturate(1.7) blur(24px);
  border-bottom:1px solid transparent;
  transition:background .4s var(--ease), border-color .4s var(--ease), box-shadow .4s var(--ease);
}
.site-nav.scrolled{
  background:rgba(6,7,11,.86);
  border-bottom-color:var(--border-soft);
  box-shadow:0 12px 40px rgba(0,0,0,.5);
}
.nav-inner{
  max-width:1320px;margin:0 auto;height:100%;
  display:flex;align-items:center;justify-content:space-between;
  padding:0 clamp(20px,3.4vw,44px);
}
.nav-brand{display:flex;align-items:center;gap:12px;min-width:0}
.nav-brand img{height:34px;width:auto;max-width:54px;border-radius:7px;object-fit:contain}
.nav-brand .b-name{font-size:14px;font-weight:600;letter-spacing:.3em;text-transform:uppercase;white-space:nowrap}
.nav-brand .b-name .gold-text{margin-left:2px}
.nav-brand .b-sub{display:block;font-size:9.5px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--text-3);margin-top:-2px}
.nav-links{display:flex;align-items:center;gap:27px}
.nav-links a{
  font-size:13px;color:var(--text-2);font-weight:400;letter-spacing:.01em;
  position:relative;transition:color .25s;
}
.nav-links a:not(.nav-cta)::after{
  content:"";position:absolute;left:0;right:0;bottom:-6px;height:1.5px;
  background:var(--grad-gold);transform:scaleX(0);transform-origin:left;
  transition:transform .3s var(--ease);border-radius:2px;
}
.nav-links a:not(.nav-cta):hover::after,
.nav-links a.active:not(.nav-cta)::after{transform:scaleX(1)}
.nav-links a:hover{color:var(--text)}
.nav-links a.active{color:var(--text)}
.nav-links a.nav-cta{
  color:#0a0805;background:var(--grad-gold);
  border:1px solid rgba(224,194,116,.5);
  padding:7px 17px;border-radius:99px;font-weight:600;
  box-shadow:0 6px 20px rgba(201,154,68,.28);
  transition:transform .25s,box-shadow .25s;
}
.nav-links a.nav-cta::after{display:none}
.nav-links a.nav-cta:hover{transform:translateY(-1px);box-shadow:0 10px 30px rgba(201,154,68,.4)}
.nav-toggle{
  display:none;background:none;border:0;cursor:pointer;
  width:40px;height:40px;position:relative;
}
.nav-toggle span{
  position:absolute;left:10px;right:10px;height:1.5px;background:var(--text);
  transition:transform .35s var(--ease),opacity .25s;
}
.nav-toggle span:nth-child(1){top:15px}
.nav-toggle span:nth-child(2){top:21px}
.nav-toggle span:nth-child(3){top:27px}
body.menu-open .nav-toggle span:nth-child(1){transform:translateY(6px) rotate(45deg)}
body.menu-open .nav-toggle span:nth-child(2){opacity:0}
body.menu-open .nav-toggle span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

@media (max-width:860px){
  .nav-toggle{display:block}
  .nav-links{
    position:fixed;top:var(--nav-h);left:0;right:0;
    flex-direction:column;align-items:flex-start;gap:0;
    background:rgba(6,7,11,.97);
    -webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);
    border-bottom:1px solid var(--border-soft);
    padding:10px 26px 22px;
    transform:translateY(-8px);opacity:0;pointer-events:none;
    transition:opacity .3s var(--ease),transform .3s var(--ease);
  }
  body.menu-open .nav-links{opacity:1;transform:none;pointer-events:auto}
  .nav-links a{font-size:17px;padding:14px 0;width:100%;border-bottom:1px solid var(--border-soft)}
  .nav-links a:not(.nav-cta)::after{display:none}
  .nav-links a.nav-cta{border:0;background:none;color:var(--gold);padding:14px 0;border-radius:0;box-shadow:none;border-bottom:1px solid var(--border-soft)}
}

/* ------------------------------------------------ typography */
.eyebrow{
  display:inline-block;font-size:12px;font-weight:600;
  letter-spacing:.24em;text-transform:uppercase;
  color:var(--gold);margin-bottom:18px;
  position:relative;
}
.eyebrow.gold{color:var(--gold)}
.eyebrow.blue{color:var(--accent)}

.gold-text{
  background:var(--grad-gold);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
}

.display{
  font-family:var(--font-serif);
  font-size:clamp(42px,7.2vw,86px);
  font-weight:700;line-height:1.13;letter-spacing:-.01em;
  padding-bottom:.12em;margin-bottom:-.08em;
  background:var(--grad-head);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
}
.headline{
  font-family:var(--font-serif);
  font-size:clamp(30px,4.4vw,52px);
  font-weight:700;line-height:1.18;letter-spacing:-.008em;
  padding-bottom:.12em;margin-bottom:-.08em;
  background:var(--grad-head);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
}
.sub{
  font-size:clamp(17px,2vw,21px);color:var(--text-2);
  font-weight:400;line-height:1.55;letter-spacing:.002em;
  max-width:680px;
}
.lede{font-size:17px;color:var(--text-2);line-height:1.75;max-width:760px}

/* ------------------------------------------------ layout */
main{display:block}
.wrap{max-width:1320px;margin:0 auto;padding:0 clamp(20px,3.4vw,44px)}
.wrap-narrow{max-width:900px;margin:0 auto;padding:0 clamp(20px,3.4vw,44px)}
.section{padding:clamp(72px,8vw,124px) 0}
.section-tight{padding:clamp(52px,6vw,80px) 0}
.section-head{text-align:center;max-width:800px;margin:0 auto 64px}
.section-head .sub{margin:18px auto 0}
.divider{height:1px;background:linear-gradient(90deg,transparent,var(--border),var(--border-gold),var(--border),transparent);max-width:1320px;margin:0 auto}

/* ultra-wide screens: allow the shell to breathe */
@media (min-width:1700px){
  .nav-inner,.wrap,.divider{max-width:1480px}
  .hero-media{max-width:1480px}
}

/* ------------------------------------------------ hero */
.hero{
  min-height:88vh;
  display:flex;flex-direction:column;justify-content:center;align-items:center;
  text-align:center;padding:calc(var(--nav-h) + 92px) 24px 70px;
  position:relative;
}
.hero::before{
  content:"";position:absolute;left:50%;top:36%;transform:translate(-50%,-50%);
  width:min(920px,92vw);height:min(520px,60vh);z-index:-1;pointer-events:none;
  background:radial-gradient(closest-side,rgba(230,200,126,.20),rgba(230,200,126,.06) 55%,transparent 78%);
  filter:blur(6px);
}
.hero .sub{margin:26px auto 0}
.hero-actions{display:flex;gap:14px;margin-top:40px;flex-wrap:wrap;justify-content:center}
.hero-media{
  max-width:1320px;margin:-10px auto 0;padding:0 clamp(20px,3.4vw,44px);
}
.hero-media .frame{
  border-radius:var(--radius-lg);overflow:hidden;
  border:1px solid var(--border);
  box-shadow:var(--shadow-lg), 0 0 0 1px rgba(230,200,126,.05) inset;
  position:relative;
}
.hero-media .frame::after{
  content:"";position:absolute;inset:0;
  background:
    linear-gradient(180deg,rgba(5,6,9,.18) 0%,transparent 38%,rgba(5,6,9,.62) 100%),
    linear-gradient(135deg,rgba(230,200,126,.14),rgba(195,154,68,.07));
}
.hero-media img{width:100%;height:auto;object-fit:cover;max-height:560px}

/* subpage hero */
.page-hero{
  padding:calc(var(--nav-h) + 122px) 24px 90px;
  text-align:center;position:relative;
}
.page-hero::before{
  content:"";position:absolute;left:50%;top:44%;transform:translate(-50%,-50%);
  width:min(820px,92vw);height:360px;z-index:-1;pointer-events:none;
  background:radial-gradient(closest-side,rgba(230,200,126,.16),transparent 76%);
}
.page-hero .sub{margin:24px auto 0}
.page-hero .hero-actions{justify-content:center}

/* ------------------------------------------------ buttons */
.btn{
  display:inline-flex;align-items:center;gap:8px;
  font-size:15px;font-weight:600;letter-spacing:.01em;
  padding:13px 28px;border-radius:99px;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease),background .3s,border-color .3s;
  cursor:pointer;border:0;font-family:inherit;
}
.btn-primary{background:var(--grad-gold);color:#181206;box-shadow:0 10px 30px rgba(201,154,68,.28)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 16px 46px rgba(217,180,95,.42)}
.btn-accent{background:var(--grad-blue);color:#fff;box-shadow:0 10px 30px rgba(224,194,116,.35)}
.btn-accent:hover{transform:translateY(-2px);box-shadow:0 16px 44px rgba(230,200,126,.5)}
.btn-ghost{
  background:rgba(230,200,126,.06);color:var(--text);
  border:1px solid var(--border);backdrop-filter:blur(6px);
}
.btn-ghost:hover{background:rgba(230,200,126,.12);border-color:rgba(230,200,126,.4);transform:translateY(-2px)}
.link-arrow{color:var(--accent);font-size:15px;font-weight:500}
.link-arrow:hover{text-decoration:underline}

/* ------------------------------------------------ trust strip */
.trust-strip{
  border-top:1px solid var(--border-soft);
  border-bottom:1px solid var(--border-soft);
  padding:26px 0;overflow:hidden;position:relative;
  background:linear-gradient(180deg,rgba(230,200,126,.04),transparent);
}
.trust-strip .row{
  display:flex;gap:64px;width:max-content;
  animation:marquee 34s linear infinite;
}
.trust-strip .row span{
  font-size:13.5px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--text-3);white-space:nowrap;font-weight:500;
}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.trust-strip .row{animation:none}}

/* ------------------------------------------------ cards & grids */
.grid{display:grid;gap:18px}
.grid-2{grid-template-columns:repeat(2,1fr)}
.grid-3{grid-template-columns:repeat(3,1fr)}
.grid-4{grid-template-columns:repeat(4,1fr)}
@media (max-width:960px){.grid-4{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(2,1fr)}}
@media (max-width:620px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}

.card{
  background:linear-gradient(180deg,rgba(230,200,126,.07),rgba(230,200,126,.02));
  border:1px solid var(--border-soft);
  border-radius:var(--radius);
  padding:30px 28px;
  position:relative;overflow:hidden;
  transition:transform .45s var(--ease),border-color .45s,background .45s,box-shadow .45s;
}
.card::before{
  content:"";position:absolute;inset:0;opacity:0;pointer-events:none;
  background:radial-gradient(480px 220px at var(--mx,50%) var(--my,0%),rgba(230,200,126,.14),transparent 60%);
  transition:opacity .45s;
}
.card::after{
  content:"";position:absolute;top:0;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(230,200,126,.35),transparent);
  opacity:0;transition:opacity .45s;
}
.card:hover{
  transform:translateY(-6px);border-color:var(--border);
  background:linear-gradient(180deg,rgba(230,200,126,.11),rgba(230,200,126,.03));
  box-shadow:var(--shadow-blue);
}
.card:hover::before{opacity:1}
.card:hover::after{opacity:1}
.card h3{font-size:19px;font-weight:600;letter-spacing:-.01em;margin-bottom:9px;color:var(--text)}
.card p{font-size:14.5px;color:var(--text-2);line-height:1.65}
.card .card-icon{
  width:44px;height:44px;border-radius:13px;
  display:flex;align-items:center;justify-content:center;
  background:var(--accent-soft);color:var(--accent);
  border:1px solid rgba(230,200,126,.25);
  font-size:19px;margin-bottom:18px;
}
.card ul{list-style:none;margin-top:14px}
.card ul li{
  font-size:13.5px;color:var(--text-2);padding:5px 0 5px 20px;position:relative;
}
.card ul li::before{
  content:"";position:absolute;left:2px;top:13px;width:5px;height:5px;border-radius:99px;
  background:var(--accent);
}
a.card{display:block}
a.card .card-more{display:inline-block;margin-top:16px;font-size:13.5px;font-weight:600;color:var(--accent)}
a.card:hover .card-more{color:#f7e7b0}

/* feature panel (large) */
.panel{
  background:linear-gradient(180deg,rgba(230,200,126,.08),rgba(230,200,126,.02));
  border:1px solid var(--border-soft);
  border-radius:var(--radius-lg);
  padding:56px 52px;
  position:relative;overflow:hidden;
  box-shadow:0 30px 90px rgba(0,0,0,.4);
}
.panel.gold{
  border-color:var(--border-gold);
  background:
    radial-gradient(700px 300px at 90% -20%,rgba(224,194,116,.12),transparent 60%),
    linear-gradient(180deg,rgba(224,194,116,.06),rgba(230,200,126,.03));
}
@media (max-width:620px){.panel{padding:36px 26px}}

/* ------------------------------------------------ stats */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;text-align:center}
@media (max-width:860px){.stats{grid-template-columns:repeat(2,1fr)}}
.stat{
  padding:42px 16px;border-radius:var(--radius);
  background:linear-gradient(180deg,rgba(230,200,126,.07),rgba(230,200,126,.02));
  border:1px solid var(--border-soft);
  transition:transform .45s var(--ease),border-color .45s;
}
.stat:hover{transform:translateY(-4px);border-color:var(--border-gold)}
.stat .num{
  font-size:clamp(38px,4.5vw,56px);font-weight:700;letter-spacing:-.03em;line-height:1.15;padding-bottom:.08em;margin-bottom:-.08em;
  background:var(--grad-gold);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
  font-family:var(--font-serif);
}
.stat .lbl{margin-top:12px;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);font-weight:500}

/* ------------------------------------------------ process steps */
.process{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;counter-reset:step}
@media (max-width:960px){.process{grid-template-columns:repeat(2,1fr)}}
@media (max-width:620px){.process{grid-template-columns:1fr}}
.step{
  counter-increment:step;
  background:linear-gradient(180deg,rgba(230,200,126,.06),rgba(230,200,126,.02));
  border:1px solid var(--border-soft);
  border-radius:var(--radius);padding:30px 26px;position:relative;
  transition:transform .45s var(--ease),border-color .45s;
}
.step:hover{transform:translateY(-4px);border-color:var(--border)}
.step::before{
  content:"0" counter(step);
  font-size:26px;font-weight:700;letter-spacing:.02em;font-family:var(--font-serif);
  background:var(--grad-gold);-webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
  display:block;margin-bottom:14px;
}
.step h3{font-size:17px;font-weight:600;margin-bottom:7px;letter-spacing:-.01em}
.step p{font-size:13.5px;color:var(--text-2);line-height:1.6}

/* ------------------------------------------------ checklist / timeline */
.checklist{list-style:none;margin-top:22px}
.checklist li{
  padding:13px 0 13px 34px;position:relative;
  font-size:15.5px;color:var(--text-2);
  border-bottom:1px solid var(--border-soft);
}
.checklist li:last-child{border-bottom:0}
.checklist li strong{color:var(--text);font-weight:600}
.checklist li::before{
  content:"";position:absolute;left:2px;top:19px;
  width:14px;height:8px;
  border-left:1.8px solid var(--accent);border-bottom:1.8px solid var(--accent);
  transform:rotate(-45deg);
}
.checklist.gold li::before{border-color:var(--gold)}

/* ------------------------------------------------ quote */
.quote{
  margin:44px 0 0;padding:38px 44px;
  border-radius:var(--radius-lg);
  background:
    radial-gradient(600px 240px at 88% -10%,rgba(224,194,116,.10),transparent 60%),
    linear-gradient(180deg,rgba(224,194,116,.06),rgba(230,200,126,.02));
  border:1px solid var(--border-gold);
  font-size:clamp(19px,2.4vw,25px);line-height:1.5;font-weight:500;letter-spacing:-.01em;
  position:relative;
}
.quote .attr{margin-top:20px;font-size:14px;font-weight:600;color:var(--gold);letter-spacing:.04em}
@media (max-width:620px){.quote{padding:28px 24px}}

/* ------------------------------------------------ testimonial */
.testimonial{
  background:linear-gradient(180deg,rgba(230,200,126,.06),rgba(230,200,126,.02));
  border:1px solid var(--border-soft);
  border-radius:var(--radius);padding:32px 30px;
  font-size:16px;line-height:1.6;color:var(--text);
}
.testimonial .who{margin-top:16px;font-size:13px;color:var(--text-3);letter-spacing:.06em;text-transform:uppercase;font-weight:500}

/* ------------------------------------------------ chips */
.chips{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.chip{
  font-size:13.5px;padding:9px 20px;border-radius:99px;
  border:1px solid var(--border);color:var(--text-2);
  background:var(--surface);letter-spacing:.02em;
  transition:color .25s,border-color .25s,background .25s;
}
.chip:hover{color:var(--text);border-color:var(--border-gold);background:var(--surface-2)}

/* ------------------------------------------------ CTA band */
.cta-band{
  text-align:center;padding:124px 24px;position:relative;overflow:hidden;
}
.cta-band::before{
  content:"";position:absolute;inset:0;z-index:-1;
  background:
    radial-gradient(720px 380px at 50% 116%,rgba(230,200,126,.22),transparent 70%),
    radial-gradient(520px 300px at 50% -10%,rgba(224,194,116,.08),transparent 66%);
}
.cta-band .sub{margin:20px auto 0}
.cta-band .hero-actions{justify-content:center}

/* ------------------------------------------------ split layout */
.split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
@media (max-width:860px){.split{grid-template-columns:1fr;gap:36px}}
.split .media{
  border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--border);
  box-shadow:var(--shadow-lg);
  position:relative;
}
.split .media::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:
    linear-gradient(180deg,rgba(5,6,9,.12),rgba(5,6,9,.45)),
    linear-gradient(135deg,rgba(230,200,126,.12),rgba(195,154,68,.06));
}
.split .media img{width:100%;height:100%;object-fit:cover}

/* ------------------------------------------------ team */
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
@media (max-width:960px){.team-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:620px){.team-grid{grid-template-columns:1fr}}
.person{
  background:linear-gradient(180deg,rgba(230,200,126,.07),rgba(230,200,126,.02));
  border:1px solid var(--border-soft);
  border-radius:var(--radius);padding:34px 26px;text-align:center;
  cursor:pointer;
  transition:transform .45s var(--ease),border-color .45s,background .45s,box-shadow .45s;
}
.person:hover{
  transform:translateY(-6px);border-color:var(--border);
  background:linear-gradient(180deg,rgba(230,200,126,.11),rgba(230,200,126,.03));
  box-shadow:var(--shadow-blue);
}
.person .avatar{
  width:96px;height:96px;border-radius:50%;margin:0 auto 20px;
  overflow:hidden;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(160deg,#1a2c4d,#0a0b10);
  border:1px solid var(--border);
  font-size:26px;font-weight:600;color:var(--text-2);letter-spacing:.04em;
}
.person .avatar img{width:100%;height:100%;object-fit:cover}
.person .p-name{font-size:17px;font-weight:600;letter-spacing:-.01em}
.person .p-role{font-size:13px;color:var(--accent);margin-top:4px;font-weight:500}
.person.lead .p-role{color:var(--gold)}
.person .tags{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-top:16px}
.person .tags span{
  font-size:11px;padding:4px 11px;border-radius:99px;
  background:var(--surface-2);color:var(--text-2);letter-spacing:.03em;
}
.person.lead{grid-column:1/-1;max-width:520px;margin:0 auto;width:100%;
  border-color:var(--border-gold);
  background:
    radial-gradient(500px 220px at 50% -20%,rgba(224,194,116,.12),transparent 60%),
    linear-gradient(180deg,rgba(224,194,116,.05),rgba(230,200,126,.02));
}
.person.lead .avatar{width:120px;height:120px;border-color:rgba(224,194,116,.45)}

/* modal */
.modal{
  position:fixed;inset:0;z-index:2000;display:none;
  align-items:center;justify-content:center;padding:22px;
  background:rgba(3,8,20,.72);
  -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
}
.modal.open{display:flex}
.modal-card{
  background:linear-gradient(180deg,#0e1b34,#0a1428);
  border:1px solid var(--border);
  border-radius:var(--radius-lg);max-width:460px;width:100%;
  padding:44px 38px;text-align:center;position:relative;
  box-shadow:var(--shadow-lg);
  animation:modalIn .35s var(--ease);
}
@keyframes modalIn{from{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:none}}
.modal-card .avatar{
  width:110px;height:110px;border-radius:50%;margin:0 auto 22px;overflow:hidden;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(160deg,#1a2c4d,#0a0b10);border:1px solid var(--border);
  font-size:30px;font-weight:600;color:var(--text-2);
}
.modal-card .avatar img{width:100%;height:100%;object-fit:cover}
.modal-card h3{font-size:22px;font-weight:600;letter-spacing:-.01em}
.modal-card .role{color:var(--accent);font-size:14px;font-weight:500;margin:6px 0 18px}
.modal-card p{font-size:14.5px;color:var(--text-2);line-height:1.7}
.modal-close{
  position:absolute;top:16px;right:16px;width:34px;height:34px;border-radius:50%;
  background:var(--surface-2);border:0;color:var(--text);font-size:16px;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  transition:background .25s;
}
.modal-close:hover{background:var(--surface-3)}
body.modal-open{overflow:hidden}

/* ------------------------------------------------ forms */
.form-panel{
  background:linear-gradient(180deg,rgba(230,200,126,.07),rgba(230,200,126,.02));
  border:1px solid var(--border-soft);
  border-radius:var(--radius-lg);padding:46px 42px;
  box-shadow:0 30px 90px rgba(0,0,0,.35);
}
@media (max-width:620px){.form-panel{padding:32px 22px}}
.field{margin-bottom:18px;text-align:left}
.field label{
  display:block;font-size:12.5px;font-weight:500;letter-spacing:.1em;
  text-transform:uppercase;color:var(--text-3);margin-bottom:8px;
}
.field input,.field textarea,.field select{
  width:100%;font-family:inherit;font-size:15.5px;color:var(--text);
  background:rgba(230,200,126,.06);
  border:1px solid var(--border);border-radius:14px;
  padding:14px 16px;outline:none;
  -webkit-appearance:none;appearance:none;
  transition:border-color .25s,background .25s,box-shadow .25s;
}
.field input:focus,.field textarea:focus,.field select:focus{
  border-color:var(--accent);background:rgba(230,200,126,.10);
  box-shadow:0 0 0 4px rgba(230,200,126,.16);
}
.field input::placeholder,.field textarea::placeholder{color:var(--text-3)}
/* Native dropdown option popup: force solid dark bg + light text
   (translucent select backgrounds make the OS popup fall back to white,
   which rendered light option text invisibly on white). */
select option,select optgroup{background-color:#0b0c12;color:#f7f4ec}
.form-panel .btn{width:100%;justify-content:center;margin-top:8px}
.form-note{font-size:12.5px;color:var(--text-3);margin-top:16px;text-align:center}
.error-text{color:#ff7a7a;font-size:13.5px;min-height:18px;margin-top:12px;text-align:center}

/* login page */
.auth-wrap{
  min-height:100vh;display:flex;align-items:center;justify-content:center;
  padding:calc(var(--nav-h) + 40px) 22px 60px;
}
.auth-card{
  width:100%;max-width:420px;
  background:linear-gradient(180deg,rgba(230,200,126,.08),rgba(230,200,126,.03));
  border:1px solid var(--border);
  border-radius:var(--radius-lg);
  padding:48px 40px;text-align:center;
  -webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);
  box-shadow:var(--shadow-lg);
}
@media (max-width:480px){.auth-card{padding:38px 26px}}
.auth-card .logo{width:52px;height:52px;border-radius:14px;margin:0 auto 22px}
.auth-card h1{font-size:26px;font-weight:700;letter-spacing:-.02em}
.auth-card .sub{font-size:14.5px;margin:8px auto 30px}
.pw-wrap{position:relative}
.pw-wrap .pw-toggle{
  position:absolute;right:14px;top:50%;transform:translateY(-50%);
  background:none;border:0;color:var(--accent);font-size:12.5px;font-weight:500;
  cursor:pointer;letter-spacing:.04em;
}
.auth-links{margin-top:26px;font-size:13.5px}
.auth-links a{color:var(--accent)}
.auth-links a:hover{text-decoration:underline}

/* ------------------------------------------------ footer */
.site-footer{
  border-top:1px solid var(--border-soft);
  padding:66px 0 40px;margin-top:40px;
  background:linear-gradient(180deg,transparent,rgba(230,200,126,.04));
}
.footer-grid{
  display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:38px;
}
@media (max-width:860px){.footer-grid{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.footer-grid{grid-template-columns:1fr}}
.footer-brand{display:flex;align-items:flex-start;gap:12px}
.footer-brand img{height:36px;width:auto;max-width:58px;border-radius:7px;object-fit:contain}
.footer-brand .fb-name{font-size:15px;font-weight:600}
.footer-brand p{font-size:13px;color:var(--text-3);margin-top:8px;line-height:1.7;max-width:280px}
.footer-col h4{
  font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;
  color:var(--text-3);margin-bottom:16px;
}
.footer-col a{
  display:block;font-size:13.5px;color:var(--text-2);padding:5px 0;
  transition:color .25s;
}
.footer-col a:hover{color:var(--text)}
.footer-bottom{
  margin-top:52px;padding-top:26px;border-top:1px solid var(--border-soft);
  display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;
  font-size:12.5px;color:var(--text-3);
}

/* ------------------------------------------------ reveal animations */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.reveal.in{opacity:1;transform:none}
.reveal-d1{transition-delay:.08s}
.reveal-d2{transition-delay:.16s}
.reveal-d3{transition-delay:.24s}
.reveal-d4{transition-delay:.32s}
@media (prefers-reduced-motion:reduce){
  .reveal{opacity:1;transform:none;transition:none}
  html{scroll-behavior:auto}
}

/* ============================================================
   OBSIDIAN AURUM — PRE-RELEASE ART DIRECTION
   ============================================================ */
:root{
  --bg:#050609;--bg-2:#07080d;--bg-3:#090a0f;--bg-elev:#0a0b10;--bg-panel:#07080d;
  --surface:rgba(230,200,126,.035);--surface-2:rgba(230,200,126,.07);--surface-3:rgba(230,200,126,.11);
  --border:rgba(230,200,126,.18);--border-soft:rgba(230,200,126,.10);--border-gold:rgba(230,200,126,.22);
  --text:#f7f4ec;--text-2:#c9c5b8;--text-3:#9b9788;--muted:#8d8a7e;
  --accent:#e6c87e;--accent-2:#c39a44;--accent-soft:rgba(230,200,126,.11);
  --gold:#e6c87e;--gold-2:#c39a44;--gold-soft:rgba(230,200,126,.12);
  --grad-head:linear-gradient(180deg,#fffdf7 22%,#e9e4d7 100%);
  --grad-accent:linear-gradient(120deg,#f7e7b0,#e0c274 45%,#c39a44);
  --grad-gold:linear-gradient(120deg,#f7e7b0,#e0c274 45%,#c39a44);
  --grad-blue:linear-gradient(120deg,#f7e7b0,#e0c274 45%,#c39a44);
  --grad-canvas:radial-gradient(900px 620px at 78% 4%,rgba(230,200,126,.075),transparent 62%),linear-gradient(165deg,#050609 0%,#07080d 46%,#040508 100%);
  --nav-h:64px;--shadow-lg:0 44px 120px rgba(0,0,0,.72);--shadow-blue:0 28px 75px rgba(0,0,0,.52),0 0 44px rgba(195,154,68,.08);
}

html{background:#050609;scroll-padding-top:80px}
body{background:#050609;color:var(--text);font-family:"Manrope",sans-serif}
::selection{background:rgba(230,200,126,.25);color:#fffdf7}
.ambient{background:var(--grad-canvas)}
.ambient::before{background:radial-gradient(680px 480px at 12% 82%,rgba(230,200,126,.055),transparent 64%)}
.ambient::after{background-image:radial-gradient(rgba(230,200,126,.05) .7px,transparent .7px);background-size:34px 34px;opacity:.45}

.site-nav{height:64px;background:rgba(6,7,11,.4);border-bottom:1px solid rgba(230,200,126,.08);backdrop-filter:blur(18px) saturate(1.2)}
.site-nav.scrolled{background:rgba(6,7,11,.85);border-bottom-color:rgba(230,200,126,.16);box-shadow:0 14px 50px rgba(0,0,0,.38)}
.nav-brand .b-name{font-size:13px;font-weight:700;letter-spacing:.34em}
.nav-brand .b-sub{color:#8d8a7e;letter-spacing:.28em}
.nav-links{gap:clamp(15px,1.75vw,27px)}
.nav-links a{font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:#aaa698}
.nav-links a:hover,.nav-links a.active{color:#f7f4ec}
.nav-links a.nav-cta{color:#0a0805;padding:9px 17px;box-shadow:0 9px 30px rgba(195,154,68,.22),0 0 28px rgba(230,200,126,.08)}
.nav-drop{background:rgba(7,8,13,.96)!important;border-color:rgba(230,200,126,.16)!important;box-shadow:0 28px 70px rgba(0,0,0,.68)!important}

.display,.headline,h1,h2{font-family:"Playfair Display",Georgia,serif}
.display{font-size:clamp(52px,7.6vw,116px);line-height:.94;letter-spacing:-.035em}
.headline{font-size:clamp(36px,4.6vw,64px);line-height:1.02;letter-spacing:-.025em}
.gold-text{font-style:italic}
/* Keep the two words in the wordmark typographically identical; only Nexus changes colour. */
.nav-brand .b-name .gold-text{
  font-family:inherit;
  font-size:inherit;
  font-style:normal;
  font-weight:inherit;
  letter-spacing:inherit;
  text-transform:inherit;
}
.eyebrow{font-size:12px;font-weight:700;letter-spacing:.42em;color:#e6c87e;margin-bottom:22px}
.sub{color:#c9c5b8}.lede{color:#b9b5a8}.section-head .sub{color:#9b9788}

.hero{min-height:100svh;align-items:flex-start;justify-content:flex-end;text-align:left;padding:calc(64px + clamp(64px,8vh,104px)) clamp(24px,7vw,108px) clamp(64px,8vh,92px);isolation:isolate;overflow:hidden}
.hero::before{z-index:-1;inset:0;width:auto;height:auto;transform:none;background:linear-gradient(90deg,rgba(5,6,9,.99) 0%,rgba(5,6,9,.93) 27%,rgba(5,6,9,.66) 51%,rgba(5,6,9,.24) 76%,rgba(5,6,9,.12) 100%),linear-gradient(0deg,rgba(5,6,9,.94) 0%,rgba(5,6,9,.22) 38%,rgba(5,6,9,.38) 100%);filter:none}
.hero::after{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(circle at var(--hx,78%) var(--hy,30%),rgba(230,200,126,.08),transparent 22%);pointer-events:none}
.hero .display{font-size:clamp(52px,5.3vw,80px);line-height:.95;max-width:980px;text-wrap:balance}.hero .sub{margin:25px 0 0;max-width:660px;font-size:clamp(16px,1.45vw,19px);line-height:1.62}.hero .hero-actions{justify-content:flex-start;margin-top:30px}
.hero-bg{position:absolute;inset:0;z-index:-3;overflow:hidden}
.hero-bg img{width:100%;height:100%;object-fit:cover;object-position:58% center;filter:saturate(.82) contrast(1.07) brightness(.72);animation:aurumKenBurns 22s ease-in-out infinite alternate;transform-origin:68% 52%}
@keyframes aurumKenBurns{from{transform:scale(1.02)}to{transform:scale(1.14)}}
body.home .hero-media{display:none}
.hero-ornament{position:absolute;right:clamp(32px,7vw,112px);top:19%;width:clamp(110px,14vw,210px);aspect-ratio:1;border:1px solid rgba(230,200,126,.24);border-radius:50%;z-index:1;opacity:.78;box-shadow:inset 0 0 70px rgba(230,200,126,.025),0 0 70px rgba(230,200,126,.025);pointer-events:none}
.hero-ornament::before{content:"";position:absolute;inset:17%;border:1px solid rgba(230,200,126,.1);border-radius:50%}
.hero-ornament::after{content:"";position:absolute;width:9px;height:9px;border-radius:50%;top:9%;right:18%;background:#f7e7b0;box-shadow:0 0 10px #e6c87e,0 0 34px rgba(230,200,126,.85);animation:aurumPulse 2.8s ease-in-out infinite}
@keyframes aurumPulse{50%{transform:scale(1.65);opacity:.62}}
.scroll-hint{position:absolute;right:clamp(22px,4vw,64px);bottom:36px;display:flex;align-items:center;gap:14px;color:#9b9788;font-size:10px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;writing-mode:vertical-rl}
.scroll-hint::after{content:"";width:1px;height:62px;background:linear-gradient(#e6c87e,transparent);animation:scrollLine 2s ease-in-out infinite;transform-origin:top}
@keyframes scrollLine{0%,100%{transform:scaleY(.25);opacity:.3}50%{transform:scaleY(1);opacity:1}}

.page-hero{padding:calc(64px + clamp(110px,15vw,190px)) 24px clamp(82px,10vw,130px);background:radial-gradient(650px 330px at 50% 38%,rgba(230,200,126,.065),transparent 72%);overflow:hidden}
.page-hero::after{content:"";position:absolute;width:420px;height:420px;border:1px solid rgba(230,200,126,.08);border-radius:50%;right:-180px;top:18%;pointer-events:none}

.btn{font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:14px 27px}
.btn-primary{background:var(--grad-gold);color:#0a0805;box-shadow:0 12px 36px rgba(195,154,68,.26),0 0 24px rgba(230,200,126,.08)}
.btn-primary:hover{box-shadow:0 18px 50px rgba(195,154,68,.38),0 0 36px rgba(230,200,126,.12)}
.btn-ghost{background:rgba(230,200,126,.015);color:#e6c87e;border:1px solid rgba(230,200,126,.35)}
.btn-ghost:hover{background:rgba(230,200,126,.09);border-color:rgba(230,200,126,.55)}

.trust-strip{border-color:rgba(230,200,126,.17);background:#050609;padding:22px 0}
.trust-strip .row{gap:0}.trust-strip .row span{display:flex;align-items:center;color:#b9b4a5;font-size:11px;font-weight:700;letter-spacing:.28em;padding:0 34px}
.trust-strip .row span::after{content:"";width:5px;height:5px;border-radius:50%;background:#e6c87e;margin-left:68px;box-shadow:0 0 14px rgba(230,200,126,.8);animation:aurumPulse 2.4s ease-in-out infinite}

.section{padding:clamp(88px,10vw,150px) 0}.divider{background:linear-gradient(90deg,transparent,rgba(230,200,126,.22),transparent)}
.card,.step,.stat,.testimonial,.form-panel{background:linear-gradient(160deg,rgba(230,200,126,.05),transparent 64%),#07080d;border:1px solid rgba(230,200,126,.13);border-radius:20px;transform-style:preserve-3d;will-change:transform}
.card{padding:34px 30px;min-height:190px}.card:hover,.step:hover{border-color:rgba(230,200,126,.28);box-shadow:0 28px 70px rgba(0,0,0,.48),0 0 44px rgba(195,154,68,.055)}
.card h3,.step h3{font-family:"Playfair Display",Georgia,serif;font-size:21px;color:#f7f4ec}.card p,.step p{color:#a9a597}
.card::before{background:radial-gradient(440px 230px at var(--mx,50%) var(--my,0%),rgba(230,200,126,.11),transparent 62%)}
.card::after{content:attr(data-index);top:22px;right:24px;left:auto;width:auto;height:auto;background:none!important;opacity:1!important;font-family:"Playfair Display",Georgia,serif;font-style:italic;font-size:18px;color:#e6c87e}
.card-more,a.card .card-more,.link-arrow{color:#e6c87e}
.step::before{font-style:italic;font-size:30px}.step{min-height:200px;padding:34px 28px}
.panel{background:linear-gradient(160deg,rgba(230,200,126,.055),transparent 66%),#07080d;border-color:rgba(230,200,126,.14);box-shadow:0 38px 100px rgba(0,0,0,.45)}
.panel.gold{background:radial-gradient(700px 320px at 92% 0,rgba(230,200,126,.1),transparent 60%),linear-gradient(160deg,rgba(230,200,126,.055),transparent 70%),#07080d}
.founder-portrait,.frame{border-color:rgba(230,200,126,.18)!important}.founder-portrait::after{border-color:rgba(230,200,126,.38)!important}
.stat .num{font-family:"Playfair Display",Georgia,serif;font-size:clamp(54px,6.5vw,86px);font-style:italic}.stat .lbl{color:#8d8a7e;letter-spacing:.2em}

.story-section .wrap{display:grid;grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr);gap:clamp(50px,8vw,130px);align-items:start}
.story-section .section-head{position:sticky;top:64px;min-height:calc(100vh - 64px);display:flex;flex-direction:column;justify-content:center;text-align:left;margin:0}
.story-section .section-head .sub{margin:22px 0 0}.story-section .grid{grid-template-columns:1fr;gap:22px}.story-section .card{min-height:260px;display:flex;flex-direction:column;justify-content:flex-end;padding:42px}
.story-section .card h3{font-size:clamp(26px,3vw,38px)}

[data-rv],.reveal{opacity:0;transform:translate3d(0,30px,0);transition:opacity 1s cubic-bezier(.22,.61,.14,1),transform 1s cubic-bezier(.22,.61,.14,1)}
[data-rv].in,.reveal.in{opacity:1;transform:none}.reveal-d1{transition-delay:.11s}.reveal-d2{transition-delay:.22s}.reveal-d3{transition-delay:.33s}.reveal-d4{transition-delay:.44s}
[data-plx].in,[data-plx]:not(.reveal){transform:translate3d(0,var(--plx-y,0),0)}
.image-reveal{clip-path:inset(0 100% 0 0);transition:clip-path 1.3s cubic-bezier(.22,.61,.14,1)}.image-reveal.in{clip-path:inset(0)}
.image-reveal img{transition:transform 1.8s cubic-bezier(.22,.61,.14,1)}.image-reveal.in img{transform:scale(1.001)}
.site-footer{background:#040508;border-top:1px solid rgba(230,200,126,.14)}
.footer-grid{grid-template-columns:1.4fr .75fr 1fr .75fr}.footer-col{border-top:1px solid rgba(230,200,126,.15);padding-top:22px}.footer-col h4{color:#e6c87e;font-size:11px;font-weight:800;letter-spacing:.3em;text-transform:uppercase}.footer-col a{color:#9b9788}.footer-col a:hover{color:#e6c87e}
.footer-bottom{border-top-color:rgba(230,200,126,.1);color:#777468}

@media(max-width:1100px){.nav-links{gap:13px}.nav-links a{font-size:10px;letter-spacing:.08em}}
@media(max-width:860px){
  .nav-links{top:64px;background:rgba(5,6,9,.98);border-bottom-color:rgba(230,200,126,.15)}
  .nav-links a{font-size:14px;letter-spacing:.12em}.hero{padding-left:24px;padding-right:24px}.hero-ornament{opacity:.6;right:-45px;top:18%}
  .story-section .wrap{display:block}.story-section .section-head{position:relative;top:auto;min-height:0;text-align:center;margin:0 auto 54px}.story-section .section-head .sub{margin:20px auto 0}.story-section .card{min-height:210px}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
  .display{font-size:clamp(48px,15vw,74px)}.headline{font-size:clamp(34px,10.5vw,48px)}.hero{min-height:100svh;padding:128px 24px 72px}.hero .display{font-size:clamp(48px,12.8vw,64px);line-height:.96}.hero .sub{font-size:15px;line-height:1.58}.hero-bg img{object-position:64% center}.scroll-hint{display:none}.hero-ornament{width:130px;right:-38px;top:16%}
  .section{padding:82px 0}.card,.step{min-height:0}.story-section .card{padding:30px;min-height:190px}.footer-grid{grid-template-columns:1fr}.footer-col{margin-top:8px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}.hero-bg img,.hero-ornament::after,.scroll-hint::after,.trust-strip .row,.trust-strip .row span::after{animation:none!important}
  [data-rv],.reveal,.image-reveal{opacity:1!important;transform:none!important;clip-path:inset(0)!important;transition:none!important}
}

/* founder hero portrait */
.founder-hero{
  padding:calc(var(--nav-h) + 100px) 24px 80px;
}
.founder-hero .split{align-items:center}
.founder-portrait{
  border-radius:var(--radius-lg);overflow:hidden;
  border:1px solid var(--border-gold);
  box-shadow:var(--shadow-lg);
  position:relative;max-width:440px;justify-self:center;width:100%;
}
.founder-portrait::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 58%,rgba(5,6,9,.55));
}
.founder-portrait img{width:100%;height:auto;display:block}
.founder-portrait::before{
  content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(180deg,rgba(5,6,9,.08),rgba(5,6,9,.3));
}

/* ------------------------------------------------ custom chat launcher */
.vx-chat-wrap{
  position:fixed;right:26px;bottom:26px;z-index:1500;
  display:flex;align-items:center;gap:12px;
  opacity:0;transform:translateY(14px);pointer-events:none;
  transition:opacity .3s var(--ease),transform .3s var(--ease);
}
.vx-chat-wrap.ready{opacity:1;transform:none;pointer-events:auto}
.vx-chat-wrap.hidden{opacity:0;transform:translateY(14px);pointer-events:none}
.vx-chat-tip{
  font-size:13.5px;font-weight:600;letter-spacing:.01em;color:var(--text);
  background:rgba(10,20,40,.82);border:1px solid var(--border);
  -webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
  padding:9px 16px;border-radius:99px;white-space:nowrap;
  box-shadow:0 12px 32px rgba(0,0,0,.45);
  opacity:0;transform:translateX(10px);pointer-events:none;
  transition:opacity .25s var(--ease),transform .25s var(--ease);
}
.vx-chat-wrap:hover .vx-chat-tip{opacity:1;transform:none}
.vx-chat{
  position:relative;flex:0 0 auto;
  width:64px;height:64px;border-radius:50%;border:0;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  background:var(--grad-gold);color:#12100a;
  box-shadow:0 14px 36px rgba(201,154,68,.42),0 0 0 1px rgba(224,194,116,.55) inset;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease);
}
.vx-chat::after{
  content:"";position:absolute;inset:-5px;border-radius:50%;
  border:1px solid rgba(224,194,116,.4);pointer-events:none;
}
.vx-chat-wrap.ready .vx-chat{animation:vxPulse 3.4s ease-in-out infinite}
.vx-chat:hover{transform:translateY(-3px) scale(1.05);box-shadow:0 20px 50px rgba(217,180,95,.6),0 0 0 1px rgba(224,194,116,.7) inset}
.vx-chat svg{width:29px;height:29px;display:block}
.vx-chat .vx-dot{
  position:absolute;top:1px;right:1px;width:15px;height:15px;border-radius:50%;
  background:#2fd07a;border:2.5px solid #0a1428;display:none;z-index:2;
}
.vx-chat.has-unread .vx-dot{display:block}
@keyframes vxPulse{
  0%,100%{box-shadow:0 14px 36px rgba(201,154,68,.42),0 0 0 0 rgba(224,194,116,.45),0 0 0 1px rgba(224,194,116,.55) inset}
  50%{box-shadow:0 14px 36px rgba(201,154,68,.42),0 0 0 14px rgba(224,194,116,0),0 0 0 1px rgba(224,194,116,.55) inset}
}
@media (prefers-reduced-motion:reduce){.vx-chat-wrap.ready .vx-chat{animation:none}}
@media (max-width:600px){
  .vx-chat-wrap{right:16px;bottom:16px}
  .vx-chat{width:56px;height:56px}
  .vx-chat svg{width:26px;height:26px}
  .vx-chat-tip{display:none}
}

/* ------------------------------------------------ services dropdown (nav) */
.nav-item{position:relative;display:flex;align-items:center}
.nav-drop-toggle{display:inline-flex;align-items:center}
.nav-caret{
  display:inline-block;width:6px;height:6px;margin-left:7px;
  border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;
  transform:rotate(45deg) translateY(-2px);transition:transform .25s var(--ease);
}
.nav-item:hover .nav-caret,.nav-item:focus-within .nav-caret{transform:rotate(-135deg) translateY(1px)}
.nav-drop{
  position:absolute;top:100%;left:50%;
  min-width:238px;padding:8px;
  background:rgba(9,18,38,.94);
  -webkit-backdrop-filter:saturate(1.6) blur(26px);backdrop-filter:saturate(1.6) blur(26px);
  border:1px solid var(--border-soft);border-radius:16px;
  box-shadow:0 30px 74px rgba(0,0,0,.62);
  opacity:0;visibility:hidden;pointer-events:none;
  transform:translateX(-50%) translateY(6px);
  transition:opacity .25s var(--ease),transform .25s var(--ease),visibility .25s;
  z-index:1200;
}
.nav-drop::before{content:"";position:absolute;top:-16px;left:0;right:0;height:16px}
.nav-item:hover .nav-drop,.nav-item:focus-within .nav-drop{
  opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(11px);
}
.nav-drop a{
  display:block;padding:10px 14px;border-radius:10px;
  font-size:13px;color:var(--text-2);letter-spacing:.01em;white-space:nowrap;
  transition:background .2s,color .2s;
}
.nav-drop a::after{display:none!important}
.nav-drop a:hover{background:var(--surface-2);color:var(--text)}
.nav-drop .nav-drop-all{
  color:var(--gold);font-weight:600;margin-top:5px;border-radius:0 0 9px 9px;
  border-top:1px solid var(--border-soft);
}
@media (max-width:860px){
  .nav-item{display:block;width:100%}
  .nav-caret{float:right;margin-top:8px}
  .nav-item:hover .nav-caret,.nav-item:focus-within .nav-caret{transform:rotate(45deg) translateY(-2px)}
  .nav-drop{
    position:static;opacity:0;visibility:hidden;pointer-events:none;
    transform:none;min-width:0;max-height:0;overflow:hidden;margin:0;padding:0 0 0 12px;
    background:none;border:0;box-shadow:none;border-radius:0;
    -webkit-backdrop-filter:none;backdrop-filter:none;
    transition:max-height .42s var(--ease),opacity .28s var(--ease),visibility .28s,padding .42s var(--ease);
  }
  .nav-item.services-open .nav-drop{opacity:1;visibility:visible;pointer-events:auto;max-height:650px;padding:2px 0 8px 12px}
  .nav-item.services-open .nav-caret{transform:rotate(-135deg) translateY(1px)}
  .nav-drop::before{display:none}
  .nav-item:hover .nav-drop,.nav-item:focus-within .nav-drop{transform:none}
  .nav-drop a{
    padding:12px 0 12px 14px;font-size:15px;border-radius:0;
    border-bottom:1px solid var(--border-soft);color:var(--text-2);
  }
  .nav-drop a:hover{background:none;color:var(--text)}
  .nav-drop .nav-drop-all{border-top:0;margin-top:0}
}

/* Mobile menu safety: hidden navigation must not retain an interactive hitbox.
   The nested Services dropdown enables pointer events for its open state, so
   explicitly lock the complete menu tree whenever the hamburger is closed. */
@media (max-width:860px){
  body:not(.menu-open) .nav-links{
    visibility:hidden!important;
    pointer-events:none!important;
    clip-path:inset(0 0 100% 0);
  }
  body:not(.menu-open) .nav-links *{
    pointer-events:none!important;
  }
  body.menu-open .nav-links{
    visibility:visible!important;
    pointer-events:auto!important;
    clip-path:inset(0);
    max-height:calc(100dvh - var(--nav-h));
    overflow-y:auto;
    overflow-x:hidden;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    padding-bottom:max(28px,env(safe-area-inset-bottom));
  }
  body.menu-open .nav-links .nav-drop,
  body.menu-open .nav-links .nav-drop *{
    pointer-events:none;
  }
  body.menu-open .nav-links .nav-item.services-open .nav-drop,
  body.menu-open .nav-links .nav-item.services-open .nav-drop *{pointer-events:auto}
  body.menu-open .nav-links a.nav-cta{
    width:100%;margin:18px 0 6px;padding:14px 22px;border:1px solid rgba(230,200,126,.5);
    border-radius:99px;background:var(--grad-gold);color:#0a0805;text-align:center;
    box-shadow:0 12px 34px rgba(195,154,68,.28);font-weight:800;
  }
}

/* ============================================================
   PREMIUM LAYER — motion, texture, depth
   ============================================================ */

/* --- living aurora background --- */
.ambient::before{animation:auroraDrift 30s ease-in-out infinite alternate}
@keyframes auroraDrift{
  0%{transform:translate3d(0,0,0) scale(1);opacity:.9}
  50%{transform:translate3d(-2.5%,1.5%,0) scale(1.08);opacity:1}
  100%{transform:translate3d(2%,-1.5%,0) scale(1.04);opacity:.85}
}

/* --- cinematic hero glow + cursor spotlight --- */
.hero::before{animation:heroBreathe 9s ease-in-out infinite alternate}
@keyframes heroBreathe{from{opacity:.75;transform:translate(-50%,-50%) scale(.98)}to{opacity:1;transform:translate(-50%,-50%) scale(1.05)}}
.hero{--hx:50%;--hy:32%}
.hero::after{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(420px 420px at var(--hx) var(--hy),rgba(120,170,255,.14),transparent 60%);
  opacity:0;transition:opacity .5s var(--ease);
}
.hero.spot::after{opacity:1}

/* --- Ken Burns on hero media --- */
.hero-media .frame{isolation:isolate}
.hero-media img{animation:kenburns 24s ease-in-out infinite alternate;transform-origin:60% 40%}
@keyframes kenburns{from{transform:scale(1.001)}to{transform:scale(1.07)}}

/* --- duotone cohesion on photography --- */
.hero-media img,.split .media img,.founder-portrait img{
  filter:saturate(1.05) contrast(1.04) brightness(.97);
}

/* --- gold sheen sweep on primary CTAs --- */
.btn-primary,.nav-cta{position:relative;overflow:hidden}
.btn-primary::before,.nav-cta::before{
  content:"";position:absolute;top:0;left:-140%;width:55%;height:100%;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);
  transform:skewX(-18deg);pointer-events:none;
}
.btn-primary:hover::before,.nav-cta:hover::before{animation:sheen .85s var(--ease)}
@keyframes sheen{from{left:-140%}to{left:160%}}

/* --- scroll progress bar --- */
.scroll-progress{
  position:fixed;top:0;left:0;height:2px;width:0;z-index:2000;
  background:var(--grad-gold);box-shadow:0 0 12px rgba(224,194,116,.7);
  transition:width .1s linear;pointer-events:none;
}

/* --- film-grain texture overlay --- */
body::after{
  content:"";position:fixed;inset:0;z-index:9990;pointer-events:none;
  opacity:.05;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  background-size:140px 140px;
}

/* --- magnetic button hook --- */
.btn.magnetic{will-change:transform}

@media (prefers-reduced-motion:reduce){
  .ambient::before,.hero::before,.hero-media img{animation:none!important}
  .btn-primary:hover::before,.nav-cta:hover::before{animation:none!important}
  .scroll-progress{transition:none}
}

/* Tawk: keep the whole widget hidden by default so the stock icon never
   flashes on load — we drive it with the custom gold button. Only reveal
   the maximized chat window once the user opens it (body.vx-chat-open). */
.tawk-min-container,
.tawk-max-container,
#tawkchat-minified-wrapper,
#tawkchat-minified-container,
#tawkchat-container,
iframe[title="chat widget"]{
  opacity:0!important;visibility:hidden!important;pointer-events:none!important;
}
body.vx-chat-open .tawk-max-container,
body.vx-chat-open #tawkchat-container,
body.vx-chat-open iframe[title="chat widget"]{
  opacity:1!important;visibility:visible!important;pointer-events:auto!important;
}

/* ============================================================
   ORG CHART — leadership tree flowchart
   ============================================================ */
.org-wrap{overflow-x:auto;padding:6px 4px 10px;-webkit-overflow-scrolling:touch}
.tree{display:flex;justify-content:center;min-width:max-content;margin:0 auto}
.tree ul{display:flex;justify-content:center;padding-top:28px;position:relative}
.tree li{
  list-style:none;position:relative;padding:28px 12px 0;
  display:flex;flex-direction:column;align-items:center;
}
.tree li::before,.tree li::after{
  content:"";position:absolute;top:0;right:50%;width:50%;height:28px;
  border-top:1px solid var(--border);
}
.tree li::after{right:auto;left:50%;border-left:1px solid var(--border)}
.tree li:only-child::before,.tree li:only-child::after{display:none}
.tree li:only-child{padding-top:0}
.tree li:first-child::before,.tree li:last-child::after{border:0}
.tree li:last-child::before{border-right:1px solid var(--border);border-radius:0 7px 0 0}
.tree li:first-child::after{border-radius:7px 0 0 0}
.tree ul ul::before{
  content:"";position:absolute;top:0;left:50%;width:0;height:28px;
  border-left:1px solid var(--border);
}

.org-node{
  width:184px;cursor:pointer;text-align:center;
  background:linear-gradient(180deg,rgba(230,200,126,.07),rgba(230,200,126,.02));
  border:1px solid var(--border-soft);border-radius:18px;padding:20px 16px;
  transition:transform .4s var(--ease),border-color .4s,background .4s,box-shadow .4s;
}
.org-node:hover{
  transform:translateY(-5px);border-color:var(--border);
  background:linear-gradient(180deg,rgba(230,200,126,.12),rgba(230,200,126,.03));
  box-shadow:var(--shadow-blue);
}
.org-node .avatar{
  width:66px;height:66px;border-radius:50%;margin:0 auto 12px;overflow:hidden;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(160deg,#1a2c4d,#0a0b10);border:1px solid var(--border);
  font-size:18px;font-weight:600;color:var(--text-2);letter-spacing:.03em;
}
.org-node .avatar img{width:100%;height:100%;object-fit:cover}
.org-node .p-name{font-size:15px;font-weight:600;letter-spacing:-.01em;line-height:1.25}
.org-node .p-role{font-size:12px;color:var(--accent);margin-top:4px;font-weight:500}
.org-node.lead{
  width:220px;border-color:var(--border-gold);
  background:
    radial-gradient(360px 160px at 50% -20%,rgba(224,194,116,.14),transparent 60%),
    linear-gradient(180deg,rgba(224,194,116,.06),rgba(230,200,126,.02));
}
.org-node.lead .avatar{width:84px;height:84px;border-color:rgba(224,194,116,.45)}
.org-node.lead .p-name{font-size:17px}
.org-node.lead .p-role{color:var(--gold)}

/* mobile: collapse to an indented vertical tree */
@media (max-width:820px){
  .org-wrap{overflow-x:visible}
  .tree,.tree ul{display:block;min-width:0}
  .tree > ul{padding:0}
  .tree ul ul{padding-top:0;margin-left:14px;padding-left:22px;border-left:1px solid var(--border)}
  .tree ul ul::before{display:none}
  .tree li{padding:12px 0 0 0;align-items:stretch}
  .tree li::after{display:none}
  .tree li::before{
    display:block;content:"";position:absolute;top:34px;left:-22px;width:22px;height:1px;
    border:0;background:var(--border);border-radius:0;
  }
  .tree > ul > li::before{display:none}
  .org-node,.org-node.lead{
    width:100%;text-align:left;display:flex;align-items:center;gap:14px;padding:14px 16px;
  }
  .org-node .avatar,.org-node.lead .avatar{margin:0;flex:0 0 auto}
}

/* ============================================================
   ORG CHART v2 — vertical cascade (premium)
   ============================================================ */
.org{display:flex;flex-direction:column;align-items:center;gap:90px}
.org .level{
  display:flex;justify-content:center;gap:clamp(18px,3vw,60px);
  position:relative;flex-wrap:wrap;
}
.org .level::before{
  content:"";position:absolute;top:-50px;height:50px;width:1px;
  background:rgba(230,200,126,.28);left:50%;transform:translateX(-50%);
}
.org .level:first-child::before{display:none}
.org .level-line{
  position:absolute;top:-50px;height:2px;width:78%;left:11%;border-radius:2px;
  background:linear-gradient(90deg,transparent,var(--accent),transparent);
  animation:orgLineFlow 3s linear infinite;
}
@keyframes orgLineFlow{0%,100%{opacity:.3}50%{opacity:1}}

.org .card{
  width:250px;padding:26px 22px;border-radius:18px;cursor:pointer;text-align:center;
  background:linear-gradient(180deg,rgba(230,200,126,.07),rgba(230,200,126,.02));
  border:1px solid var(--border-soft);position:relative;overflow:hidden;
  -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
  transition:transform .4s var(--ease),border-color .4s,background .4s,box-shadow .4s;
}
.org .card:hover{
  transform:translateY(-6px);border-color:var(--border);
  background:linear-gradient(180deg,rgba(230,200,126,.12),rgba(230,200,126,.03));
  box-shadow:var(--shadow-blue);
}
.org .card:active{transform:none!important}
.org .card.cmd{
  border-color:var(--border-gold);
  background:
    radial-gradient(360px 180px at 50% -10%,rgba(224,194,116,.15),transparent 60%),
    linear-gradient(180deg,rgba(224,194,116,.06),rgba(230,200,126,.02));
  box-shadow:0 40px 120px rgba(0,0,0,.5),0 0 60px rgba(224,194,116,.12);
}
.org .spotlight{z-index:5}
.org .spotlight-glow{
  position:absolute;width:260px;height:260px;left:50%;top:50%;z-index:0;
  background:radial-gradient(circle,rgba(224,194,116,.22),transparent 70%);
  transform:translate(-50%,-50%);opacity:.8;pointer-events:none;
  animation:orgPulse 3.5s infinite ease-in-out;
}
.org .card > *:not(.spotlight-glow){position:relative;z-index:1}
@keyframes orgPulse{0%,100%{opacity:.5;transform:translate(-50%,-50%) scale(1)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}}

.org .avatar{
  width:104px;height:104px;border-radius:50%;margin:0 auto 16px;overflow:hidden;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(160deg,#1a2c4d,#0a0b10);border:1px solid var(--border);
  font-size:23px;font-weight:600;color:var(--text-2);letter-spacing:.03em;
}
.org .card.cmd .avatar{width:120px;height:120px;border-color:rgba(224,194,116,.45)}
.org .avatar img{width:100%;height:100%;object-fit:cover}
.org .name{font-weight:600;font-size:17px;letter-spacing:-.01em;color:var(--text)}
.org .role{font-size:13px;color:var(--accent);margin-top:4px;font-weight:500}
.org .card.cmd .role{color:var(--gold)}
.org .desc{font-size:12.5px;color:var(--text-3);margin-top:6px}
.org .tags{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-top:14px}
.org .tags span{
  font-size:11px;padding:5px 11px;border-radius:99px;
  background:var(--surface-2);color:var(--text-2);letter-spacing:.02em;
}

@media (prefers-reduced-motion:reduce){
  .org .level-line{animation:none;opacity:.7}
  .org .spotlight-glow{animation:none}
}
@media (max-width:600px){
  .org{gap:60px}
  .org .card{width:100%;max-width:300px}
  .org .level::before{top:-34px;height:34px}
  .org .level-line{top:-34px}
}

/* ============================================================
   BLOG — listing + article
   ============================================================ */
.blog-status,.blog-empty{grid-column:1/-1;text-align:center;color:var(--text-3);padding:30px 0}
.blog-empty h3{font-size:20px;color:var(--text);margin-bottom:8px}
.blog-empty p{font-size:15px;color:var(--text-2)}
.blog-card{display:flex;flex-direction:column;padding:0;overflow:hidden}
.blog-card .blog-cover{margin:-1px -1px 0;border-radius:var(--radius) var(--radius) 0 0;overflow:hidden;aspect-ratio:16/9}
.blog-card .blog-cover img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}
.blog-card:hover .blog-cover img{transform:scale(1.05)}
.blog-card > :not(.blog-cover){padding-left:26px;padding-right:26px}
.blog-card .blog-meta{margin-top:22px}
.blog-card h3{margin:8px 0 0}
.blog-card p{margin-top:10px;flex:1}
.blog-card .card-more{margin:16px 0 26px}
.blog-card:not(:has(.blog-cover)) .blog-meta{margin-top:28px}
.blog-meta{font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);font-weight:500}
.blog-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}
.blog-tags span{font-size:11px;padding:5px 11px;border-radius:99px;background:var(--surface-2);color:var(--text-2);letter-spacing:.02em}

/* article */
.post-wrap{max-width:760px;margin:0 auto;padding:calc(var(--nav-h) + 70px) 24px 40px}
.post-back{display:inline-block;font-size:13.5px;color:var(--accent);margin-bottom:26px;font-weight:500}
.post-back:hover{text-decoration:underline}
.post-head{text-align:center;margin-bottom:34px}
.post-title{
  font-family:var(--font-serif);font-size:clamp(30px,5vw,50px);font-weight:700;
  line-height:1.16;letter-spacing:-.01em;margin:14px 0 0;
  background:var(--grad-head);-webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;padding-bottom:.08em;
}
.post-lede{font-size:18px;color:var(--text-2);line-height:1.6;margin:18px auto 0;max-width:640px}
.post-head .blog-tags{justify-content:center;margin-top:18px}
.post-cover{border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--border);box-shadow:var(--shadow-lg);margin-bottom:36px}
.post-cover img{width:100%;height:auto;display:block}
.post-body{font-size:17px;line-height:1.85;color:var(--text-2)}
.post-body h2{font-family:var(--font-serif);font-size:clamp(24px,3vw,32px);color:var(--text);font-weight:700;margin:40px 0 14px;letter-spacing:-.01em}
.post-body h3{font-size:20px;color:var(--text);font-weight:600;margin:30px 0 10px}
.post-body p{margin:0 0 20px}
.post-body a{color:var(--accent);text-decoration:underline}
.post-body ul,.post-body ol{margin:0 0 20px;padding-left:24px}
.post-body li{margin:8px 0}
.post-body img{border-radius:16px;margin:24px 0;border:1px solid var(--border-soft)}
.post-body blockquote{
  margin:28px 0;padding:20px 26px;border-left:2px solid var(--gold);
  background:linear-gradient(180deg,rgba(224,194,116,.06),rgba(230,200,126,.02));
  border-radius:0 14px 14px 0;color:var(--text);font-size:18px;line-height:1.6;
}
.post-body strong{color:var(--text)}
.post-body code{background:var(--surface-2);padding:2px 7px;border-radius:6px;font-size:.9em}

/* Final home-hero paint order: keep the source image and cover it edge-to-edge. */
body.home .hero::before{
  content:"";
  position:absolute;
  inset:0;
  left:0;top:0;
  width:100%;height:100%;
  transform:none!important;
  filter:none;
  border-radius:0;
  pointer-events:none;
  z-index:-1;
  background:
    linear-gradient(90deg,rgba(5,6,9,.98) 0%,rgba(5,6,9,.90) 28%,rgba(5,6,9,.65) 52%,rgba(5,6,9,.28) 76%,rgba(5,6,9,.16) 100%),
    linear-gradient(0deg,rgba(5,6,9,.94) 0%,rgba(5,6,9,.22) 44%,rgba(5,6,9,.44) 100%);
  animation:aurumOverlayBreathe 9s ease-in-out infinite alternate;
}
@keyframes aurumOverlayBreathe{from{opacity:.88}to{opacity:1}}
body.home .hero::after{
  inset:0;
  z-index:-1;
  background:radial-gradient(420px 420px at var(--hx,78%) var(--hy,30%),rgba(230,200,126,.075),transparent 62%);
}
body.home .hero-bg,body.home .hero-bg img{position:absolute;inset:0;width:100%;height:100%}
body.home .hero-bg img{object-fit:cover;object-position:center center}
body.home .hero{
  justify-content:flex-start;
  padding-top:clamp(270px,35vh,330px);
  padding-bottom:72px;
}
body.home .hero .sub{max-width:620px}
body.home .hero .display{line-height:1.04}
body.home .hero .hero-actions{
  position:static;
  right:auto;
  bottom:auto;
  margin-top:26px;
  z-index:3;
}
body.home .scroll-hint{
  left:50%;right:auto;bottom:20px;
  transform:translateX(-50%);
  flex-direction:column;
  gap:8px;
  writing-mode:horizontal-tb;
  white-space:nowrap;
}
body.home .scroll-hint::after{width:1px;height:32px}
@media(max-width:960px){
  body.home .hero{padding-top:clamp(160px,23vh,220px)}
  body.home .hero .hero-actions{position:static;margin-top:28px}
}
@media(max-width:620px){
  body.home .hero{padding-top:118px;padding-bottom:54px}
  body.home .hero .hero-actions{position:static;margin-top:24px}
}

/* ============================================================
   FOUNDER — EDITORIAL LEADERSHIP PAGE
   ============================================================ */
body.founder-page{background:#050609}
body.founder-page main{overflow:hidden}
body.founder-page .founder-hero{
  min-height:100svh;
  padding:calc(var(--nav-h) + 64px) 0 64px;
  position:relative;
  display:flex;
  align-items:center;
  isolation:isolate;
}
body.founder-page .founder-hero::before{
  content:"";position:absolute;inset:0;z-index:-2;pointer-events:none;
  background:
    radial-gradient(720px 620px at 78% 45%,rgba(230,200,126,.105),transparent 68%),
    linear-gradient(105deg,#050609 0%,#07080d 56%,#050609 100%);
}
body.founder-page .founder-hero::after{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.5;
  background:linear-gradient(90deg,transparent 49.95%,rgba(230,200,126,.09) 50%,transparent 50.05%);
}
body.founder-page .founder-hero .wrap{width:100%;max-width:1420px}
body.founder-page .founder-hero .split{grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);gap:clamp(64px,8vw,130px);min-height:calc(100svh - 192px)}
body.founder-page .founder-hero .display{font-size:clamp(64px,7.2vw,108px)!important;line-height:.94;max-width:760px}
body.founder-page .founder-hero .sub{max-width:650px;font-size:clamp(17px,1.45vw,20px);line-height:1.72;color:#bdb9ab}
body.founder-page .founder-hero .hero-actions{margin-top:34px}
body.founder-page .founder-portrait{
  max-width:510px;justify-self:end;border-radius:2px;overflow:visible;
  border:1px solid rgba(230,200,126,.26);background:#07080d;
  box-shadow:0 50px 120px rgba(0,0,0,.65),0 0 80px rgba(195,154,68,.06);
}
body.founder-page .founder-portrait::before{inset:0;z-index:1;background:linear-gradient(180deg,rgba(5,6,9,.02),transparent 48%,rgba(5,6,9,.88) 100%)}
body.founder-page .founder-portrait::after{inset:18px -18px -18px 18px;z-index:-1;border:1px solid rgba(230,200,126,.35);background:none}
body.founder-page .founder-portrait img{width:100%;height:min(68svh,680px);object-fit:cover;object-position:center top;filter:saturate(.72) contrast(1.07) brightness(.88)}
.founder-portrait-caption{position:absolute;left:30px;right:30px;bottom:28px;z-index:3;padding-top:18px;border-top:1px solid rgba(230,200,126,.3);display:flex;justify-content:space-between;align-items:flex-end;gap:20px}
.founder-portrait-caption span{font-size:10px;font-weight:800;letter-spacing:.3em;text-transform:uppercase;color:#e6c87e}
.founder-portrait-caption strong{font-family:"Playfair Display",Georgia,serif;font-size:20px;font-weight:600;color:#f7f4ec;text-align:right}
.founder-portrait-caption{display:none!important}
.founder-orbit{position:absolute;display:block;border:1px solid rgba(230,200,126,.16);border-radius:50%;pointer-events:none;z-index:0;box-shadow:inset 0 0 80px rgba(230,200,126,.02),0 0 70px rgba(230,200,126,.025)}
.founder-orbit::after{content:"";position:absolute;width:7px;height:7px;border-radius:50%;background:#f7e7b0;box-shadow:0 0 20px rgba(230,200,126,.8)}
.founder-orbit-large{width:clamp(260px,31vw,470px);aspect-ratio:1;right:-6%;top:11%}
.founder-orbit-large::after{left:14%;top:14%}
.founder-orbit-small{width:clamp(110px,13vw,190px);aspect-ratio:1;left:48%;bottom:8%}
.founder-orbit-small::after{right:4%;top:42%}
body.founder-page .founder-hero .split{position:relative;z-index:2}
body.founder-page .founder-hero [data-plx].in,
body.founder-page .founder-hero [data-plx]:not(.reveal){transform:translate3d(0,var(--plx-y,0),0)}

body.founder-page .founder-message{padding:clamp(110px,12vw,180px) 0}
body.founder-page .founder-message .wrap-narrow{max-width:1220px;display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(56px,9vw,140px);align-items:start}
.founder-message-heading{position:sticky;top:120px}
.founder-message-heading .headline{font-size:clamp(46px,5.3vw,74px);line-height:1.01}
.founder-message-copy{padding-top:42px;border-top:1px solid rgba(230,200,126,.2)}
.founder-message-copy .lede{font-size:18px;line-height:1.9;color:#c9c5b8;max-width:none}
body.founder-page .founder-message .quote{grid-column:1/-1;margin-top:54px;padding:clamp(42px,6vw,74px);font-family:"Playfair Display",Georgia,serif;font-style:italic;font-size:clamp(28px,3.8vw,52px);line-height:1.28;text-align:center;background:radial-gradient(600px 260px at 50% 0,rgba(230,200,126,.11),transparent 68%),#07080d}
body.founder-page .founder-message .quote::before{content:"“";display:block;font-size:84px;line-height:.45;color:#e6c87e;opacity:.55;margin-bottom:22px}
body.founder-page .founder-message .quote .attr{font-family:"Manrope",sans-serif;font-style:normal;font-size:11px;letter-spacing:.3em;text-transform:uppercase}

body.founder-page .founder-pillars{padding:30px 0 clamp(110px,12vw,170px)!important}
body.founder-page .founder-pillars .grid{gap:28px;align-items:stretch}
body.founder-page .founder-pillars .panel{border-radius:2px;padding:clamp(42px,5vw,68px);min-height:480px;display:flex;flex-direction:column;justify-content:flex-end}
body.founder-page .founder-pillars .panel::after{position:absolute;right:36px;top:24px;font-family:"Playfair Display",Georgia,serif;font-style:italic;font-size:72px;line-height:1;color:rgba(230,200,126,.18)}
body.founder-page .founder-pillars .panel:first-child::after{content:"01"}
body.founder-page .founder-pillars .panel:last-child::after{content:"02"}
body.founder-page .founder-pillars .panel:first-child{background:linear-gradient(145deg,rgba(230,200,126,.105),rgba(7,8,13,.92) 58%),#07080d;border-color:rgba(230,200,126,.26)}
body.founder-page .founder-pillars .checklist li{padding-top:15px;padding-bottom:15px}

body.founder-page .founder-scale{padding:0 0 clamp(110px,12vw,170px)!important}
body.founder-page .founder-scale .section-head{text-align:left;margin:0 0 56px;max-width:900px}
body.founder-page .founder-scale .grid{grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(230,200,126,.14);border:1px solid rgba(230,200,126,.14)}
body.founder-page .founder-scale .card{border:0;border-radius:0;min-height:310px;padding:38px 30px;display:flex;flex-direction:column;justify-content:flex-end;background:#07080d}
body.founder-page .founder-scale .card h3{font-size:clamp(22px,2.2vw,30px)}
body.founder-page .founder-scale .card::after{top:28px;right:auto;left:30px;font-size:24px}

body.founder-page .founder-journey{padding:0 0 clamp(120px,14vw,190px)!important}
body.founder-page .founder-journey .wrap-narrow{max-width:1120px}
body.founder-page .founder-journey .headline{font-size:clamp(46px,5.8vw,76px)}
.founder-timeline{position:relative;margin-top:64px!important;padding-left:0}
.founder-timeline::before{content:"";position:absolute;left:112px;top:0;bottom:0;width:1px;background:linear-gradient(#e6c87e,rgba(230,200,126,.12))}
.founder-timeline li{display:grid;grid-template-columns:88px 1fr;gap:52px;padding:28px 0 32px!important;border-bottom:1px solid rgba(230,200,126,.1)!important;font-size:17px;line-height:1.7}
.founder-timeline li::before{left:106px!important;top:35px!important;width:13px!important;height:13px!important;border:0!important;border-radius:50%!important;background:#e6c87e!important;transform:none!important;box-shadow:0 0 24px rgba(230,200,126,.55)}
.founder-timeline li strong{font-family:"Playfair Display",Georgia,serif;font-style:italic;font-size:22px;color:#e6c87e}

body.founder-page .founder-vision{padding:0 0 clamp(120px,14vw,190px)!important}
body.founder-page .founder-vision .panel{border-radius:2px;padding:clamp(58px,8vw,110px);min-height:520px;display:flex;flex-direction:column;justify-content:center;background:radial-gradient(800px 500px at 95% 15%,rgba(230,200,126,.14),transparent 65%),#07080d}
body.founder-page .founder-vision .headline{font-size:clamp(42px,5.4vw,72px)!important;max-width:900px}
body.founder-page .founder-vision .lede{max-width:820px;font-size:18px;line-height:1.85}
body.founder-page .cta-band{border-top:1px solid rgba(230,200,126,.11);padding:clamp(110px,12vw,170px) 24px}

@media(max-width:960px){
  body.founder-page .founder-scale .grid{grid-template-columns:repeat(2,1fr)}
  body.founder-page .founder-scale .card{min-height:250px}
}
@media(max-width:860px){
  body.founder-page .founder-hero{min-height:auto;padding-top:130px}
  body.founder-page .founder-hero .split{grid-template-columns:1fr;min-height:0;gap:58px}
  body.founder-page .founder-portrait{justify-self:start;max-width:520px}
  .founder-orbit-large{right:-28%;top:34%}.founder-orbit-small{left:72%;bottom:4%}
  body.founder-page .founder-message .wrap-narrow{grid-template-columns:1fr;gap:38px}
  .founder-message-heading{position:relative;top:auto}.founder-message-copy{padding-top:32px}
}
@media(max-width:620px){
  body.founder-page .founder-hero{padding:116px 0 72px}
  body.founder-page .founder-hero .display{font-size:clamp(52px,15vw,70px)!important}
  body.founder-page .founder-portrait img{height:62svh;max-height:580px}
  .founder-portrait-caption{left:20px;right:20px;bottom:20px;display:block}.founder-portrait-caption strong{display:block;text-align:left;margin-top:8px}
  body.founder-page .founder-pillars .grid,body.founder-page .founder-scale .grid{grid-template-columns:1fr}
  body.founder-page .founder-pillars .panel{min-height:390px;padding:34px 26px}
  body.founder-page .founder-scale .card{min-height:220px}
  .founder-timeline::before{left:16px}.founder-timeline li{display:block;padding:24px 0 28px 48px!important}.founder-timeline li::before{left:10px!important;top:31px!important}.founder-timeline li strong{display:block;margin-bottom:6px}
  body.founder-page .founder-message .quote{padding:48px 24px}
}

/* Founder cinematic atmosphere and scroll choreography */
.founder-orbit{display:none!important}
body.founder-page .founder-bg{position:absolute;inset:0;z-index:-4;overflow:hidden;pointer-events:none}
body.founder-page .founder-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,6,9,.82) 0%,rgba(5,6,9,.68) 39%,rgba(5,6,9,.28) 72%,rgba(5,6,9,.48) 100%),linear-gradient(0deg,rgba(5,6,9,.72),rgba(5,6,9,.08) 52%,rgba(5,6,9,.26))}
body.founder-page .founder-bg img{width:100%;height:100%;object-fit:cover;object-position:center;opacity:.78;filter:sepia(.1) saturate(.9) brightness(.88) contrast(1.08);animation:founderKenBurns 24s ease-in-out infinite alternate;will-change:transform}
@keyframes founderKenBurns{from{transform:scale(1.02) translate3d(0,0,0)}to{transform:scale(1.11) translate3d(-1.5%,1%,0)}}
body.founder-page .founder-hero::before{z-index:-3;background:radial-gradient(700px 540px at 76% 42%,rgba(230,200,126,.11),transparent 68%),linear-gradient(105deg,rgba(5,6,9,.8),rgba(7,8,13,.18))}
body.founder-page .founder-hero::after{z-index:-2;opacity:.65;background:linear-gradient(90deg,transparent 49.95%,rgba(230,200,126,.08) 50%,transparent 50.05%),radial-gradient(520px 360px at 82% 43%,rgba(230,200,126,.06),transparent 70%)}

.founder-motion{opacity:0;transition:opacity 1s cubic-bezier(.22,.61,.14,1),transform 1.15s cubic-bezier(.22,.61,.14,1),clip-path 1.3s cubic-bezier(.22,.61,.14,1);transition-delay:var(--founder-delay,0ms);will-change:opacity,transform,clip-path}
.founder-message-heading.founder-motion{transform:translate3d(-54px,20px,0)}
.founder-message-copy.founder-motion{transform:translate3d(54px,28px,0)}
.founder-message .quote.founder-motion{transform:translate3d(0,58px,0) scale(.965)}
.founder-pillars .panel.founder-motion{transform:translate3d(-58px,42px,0) rotateY(4deg)}
.founder-pillars .panel:nth-child(even).founder-motion{transform:translate3d(58px,42px,0) rotateY(-4deg)}
.founder-scale .section-head.founder-motion{transform:translate3d(0,42px,0)}
.founder-scale .card.founder-motion{transform:translate3d(0,64px,0) scale(.94)}
.founder-journey .eyebrow.founder-motion,.founder-journey .headline.founder-motion{transform:translate3d(-42px,0,0)}
.founder-timeline li.founder-motion{transform:translate3d(55px,0,0)}
.founder-vision .panel.founder-motion{clip-path:inset(0 100% 0 0);transform:translate3d(0,30px,0)}
.founder-page .cta-band > .founder-motion{transform:translate3d(0,48px,0)}
.founder-motion.founder-motion-in{opacity:1;transform:none!important;clip-path:inset(0)!important}

@media(max-width:860px){
  body.founder-page .founder-bg img{object-position:64% center}
  body.founder-page .founder-bg::after{background:linear-gradient(180deg,rgba(5,6,9,.75),rgba(5,6,9,.9) 48%,rgba(5,6,9,.96))}
}
@media(prefers-reduced-motion:reduce){
  body.founder-page .founder-bg img{animation:none}
  .founder-motion{opacity:1!important;transform:none!important;clip-path:none!important;transition:none!important}
}

/* Founder hero: portrait leads from the left, editorial story resolves on the right. */
@media(min-width:861px){
  body.founder-page .founder-hero .split{grid-template-columns:minmax(360px,.88fr) minmax(0,1.12fr)}
  body.founder-page .founder-hero .split > div:first-child{order:2;padding-left:clamp(12px,3vw,54px)}
  body.founder-page .founder-hero .founder-portrait{order:1;grid-column:auto;justify-self:start}
  body.founder-page .founder-hero .display,body.founder-page .founder-hero .sub{max-width:700px}
}

/* Keep the full boardroom composition visible rather than drifting into a tight crop. */
body.founder-page .founder-bg img{object-position:right center;animation:founderBackgroundDrift 26s ease-in-out infinite alternate}
@keyframes founderBackgroundDrift{from{transform:scale(1)}to{transform:scale(1.035) translate3d(-.4%,.25%,0)}}

/* ============================================================
   SERVICES — CINEMATIC CATALOGUE
   ============================================================ */
body.services-page .page-hero{position:relative;isolation:isolate;min-height:min(74svh,760px);display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;text-align:left;padding:calc(var(--nav-h) + 110px) max(24px,calc((100vw - 1280px)/2)) 110px;overflow:hidden}
body.services-page .services-hero-bg{position:absolute;inset:0;z-index:-3;overflow:hidden}
body.services-page .services-hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,6,9,.98),rgba(5,6,9,.78) 41%,rgba(5,6,9,.3) 78%),linear-gradient(0deg,rgba(5,6,9,.92),transparent 60%)}
body.services-page .services-hero-bg img{width:100%;height:100%;object-fit:cover;object-position:right center;filter:sepia(.22) saturate(.72) brightness(.78);animation:servicesCityDrift 25s ease-in-out infinite alternate}
@keyframes servicesCityDrift{from{transform:scale(1.02) translate3d(0,0,0)}to{transform:scale(1.09) translate3d(-1.4%,.5%,0)}}
body.services-page .page-hero .display{max-width:830px;line-height:1.01}
body.services-page .page-hero .sub{max-width:590px;margin:24px 0 0}
body.services-page .hero-media{width:min(1180px,calc(100% - 48px));margin:-64px auto 0;position:relative;z-index:3}
body.services-page .hero-media .frame{height:clamp(230px,30vw,390px);border-radius:2px}
body.services-page .hero-media .frame::after{content:"MULTI-SECTOR EXECUTION";position:absolute;left:28px;bottom:22px;font-size:10px;letter-spacing:.34em;font-weight:800;color:#e6c87e;z-index:2}
body.services-page .hero-media .frame img{object-position:left center;filter:sepia(.16) saturate(.7) brightness(.76)}
body.services-page .section:first-of-type{padding-top:clamp(110px,13vw,180px)!important}
body.services-page .service-catalogue-card{min-height:500px;padding:0 30px 30px;display:flex;flex-direction:column;overflow:hidden;border-radius:3px;background:#07080d;transform-style:preserve-3d;transition:transform .7s cubic-bezier(.22,.61,.14,1),border-color .5s,box-shadow .5s;animation-delay:var(--service-delay)}
body.services-page .service-catalogue-card::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 25%,rgba(5,6,9,.76) 58%,#07080d 100%);z-index:1;pointer-events:none}
body.services-page .service-catalogue-card::after{content:attr(data-index);position:absolute;right:22px;bottom:21px;z-index:3;font-family:"Playfair Display",Georgia,serif;font-style:italic;font-size:42px;color:rgba(230,200,126,.42)}
body.services-page .service-catalogue-card > :not(.service-card-media){position:relative;z-index:2}
body.services-page .service-catalogue-card h3{margin-top:auto;font-size:clamp(23px,2.1vw,31px)}
body.services-page .service-catalogue-card p{color:#d3cfc1}
body.services-page .service-catalogue-card ul{margin:16px 0 18px;padding-left:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:7px 13px;color:#a9a496;font-size:12px}
body.services-page .service-catalogue-card li::before{content:"•";color:#e6c87e;margin-right:7px}
body.services-page .service-card-media{position:absolute;inset:0;z-index:0;overflow:hidden}
body.services-page .service-card-media img{width:100%;height:100%;object-fit:cover;filter:grayscale(.38) sepia(.3) saturate(.75) brightness(.6);transition:transform 1.1s cubic-bezier(.22,.61,.14,1),filter .7s}
body.services-page .service-catalogue-card:hover{transform:translate3d(0,-11px,0) rotateX(1.5deg);border-color:rgba(230,200,126,.48);box-shadow:0 35px 78px rgba(0,0,0,.52),0 0 36px rgba(230,200,126,.09)}
body.services-page .service-catalogue-card:hover .service-card-media img{transform:scale(1.1);filter:grayscale(.15) sepia(.22) saturate(.9) brightness(.74)}
body.services-page .service-catalogue-card .card-more{color:#f1d789;letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:800}
body.services-page .stats{border:1px solid rgba(230,200,126,.16);background:rgba(230,200,126,.1);gap:1px}
body.services-page .stat{background:#07080d;padding:50px 28px}
body.services-page .chips{padding:32px;border:1px solid rgba(230,200,126,.14);background:linear-gradient(120deg,rgba(230,200,126,.08),transparent 52%)}
@media(max-width:760px){
  body.services-page .page-hero{min-height:650px;padding:150px 24px 80px}
  body.services-page .services-hero-bg img{object-position:35% center}
  body.services-page .hero-media{margin:-38px 24px 0;width:calc(100% - 48px)}
  body.services-page .service-catalogue-card{min-height:430px}
}
@media(prefers-reduced-motion:reduce){body.services-page .services-hero-bg img{animation:none}}

/* Make the city visual the complete hero, with a dedicated dark reading field for the copy. */
body.services-page .page-hero{min-height:100svh;padding-top:calc(var(--nav-h) + 120px);padding-bottom:100px}
body.services-page .services-hero-bg img{object-position:left center;filter:sepia(.18) saturate(.72) brightness(.82)}
body.services-page .services-hero-bg::after{background:linear-gradient(90deg,rgba(5,6,9,.98) 0%,rgba(5,6,9,.89) 44%,rgba(5,6,9,.57) 67%,rgba(5,6,9,.18) 100%),linear-gradient(0deg,rgba(5,6,9,.88),transparent 58%)}
body.services-page .page-hero::before{display:none}
body.services-page .services-hero-copy{position:relative;z-index:1;width:min(690px,59vw);padding:clamp(36px,5vw,68px);border:1px solid rgba(230,200,126,.14);border-left:2px solid rgba(230,200,126,.5);background:linear-gradient(105deg,rgba(5,6,9,.83),rgba(5,6,9,.44));-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);box-shadow:30px 0 90px rgba(5,6,9,.4)}
body.services-page .services-hero-copy .sub{margin-bottom:0}
body.services-page .hero-media{display:none}
@media(max-width:760px){body.services-page .page-hero{min-height:86svh;padding-top:135px}.services-page .services-hero-copy{width:100%;padding:32px 24px}.services-page .services-hero-bg img{object-position:35% center}}

/* Services hero copy stays clean and unboxed; the full-image gradient supplies contrast. */
body.services-page .services-hero-copy{padding:0;border:0;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none}
@media(max-width:760px){body.services-page .services-hero-copy{padding:0}}

/* Lift the city detail without losing the ink-and-gold contrast. */
body.services-page .services-hero-bg img{filter:sepia(.12) saturate(.9) brightness(1.04) contrast(1.06)}
body.services-page .services-hero-bg::after{background:linear-gradient(90deg,rgba(5,6,9,.9) 0%,rgba(5,6,9,.68) 43%,rgba(5,6,9,.31) 68%,rgba(5,6,9,.12) 100%),linear-gradient(0deg,rgba(5,6,9,.72),transparent 60%)}

/* The catalogue's legible image treatment is now its resting state. */
body.services-page .service-catalogue-card::after{display:none}
body.services-page .service-card-media img{filter:grayscale(.15) sepia(.22) saturate(.9) brightness(.74)}
body.services-page .service-catalogue-card::before{background:linear-gradient(to top,rgba(3,4,6,.98) 0%,rgba(3,4,6,.94) 30%,rgba(3,4,6,.72) 51%,rgba(3,4,6,.28) 71%,rgba(3,4,6,.03) 100%)}
body.services-page .service-catalogue-card h3,body.services-page .service-catalogue-card p,body.services-page .service-catalogue-card ul,body.services-page .service-catalogue-card .card-more{text-shadow:0 2px 12px rgba(0,0,0,.9)}
body.services-page .service-catalogue-card{min-height:560px;padding:0 32px 34px}
body.services-page .service-catalogue-card::before{background:linear-gradient(to top,rgba(3,4,6,1) 0%,rgba(3,4,6,.96) 37%,rgba(3,4,6,.7) 58%,rgba(3,4,6,.12) 82%,rgba(3,4,6,0) 100%)}
body.services-page .service-catalogue-card::before{opacity:1!important}

/* ============================================================
   SERVICE DETAIL PAGES — FULL-BLEED PARALLAX HERO
   ============================================================ */
body.service-detail-page .page-hero{min-height:100svh;isolation:isolate;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;text-align:left;padding:calc(var(--nav-h) + 110px) max(24px,calc((100vw - 1280px)/2)) 105px;overflow:hidden;background:none}
body.service-detail-page .detail-hero-bg{position:absolute;inset:0;z-index:-3;overflow:hidden}
body.service-detail-page .detail-hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,6,9,.97),rgba(5,6,9,.79) 42%,rgba(5,6,9,.38) 73%,rgba(5,6,9,.22)),linear-gradient(0deg,rgba(5,6,9,.9),transparent 64%)}
body.service-detail-page .detail-hero-bg img{width:100%;height:100%;object-fit:cover;object-position:center;filter:sepia(.15) saturate(.85) brightness(.82);animation:detailHeroDrift 24s ease-in-out infinite alternate;will-change:transform}
@keyframes detailHeroDrift{from{transform:scale(1.02)}to{transform:scale(1.1) translate3d(-1.3%,.8%,0)}}
body.service-detail-page .page-hero > :not(.detail-hero-bg){position:relative;z-index:1;max-width:760px}
body.service-detail-page .page-hero .display{line-height:1.02}
body.service-detail-page .page-hero .sub{margin:24px 0 0;max-width:680px}
body.service-detail-page .page-hero .hero-actions{justify-content:flex-start;margin-top:30px}
body.service-detail-page .page-hero .chip{border-color:rgba(230,200,126,.28);background:rgba(5,6,9,.48);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
body.service-detail-page .detail-hero-media{display:none}
body.service-detail-page .page-hero::before{display:none}
body.service-detail-page .page-hero::after{right:-150px;top:18%;width:440px;height:440px;border-color:rgba(230,200,126,.14)}
@media(max-width:760px){body.service-detail-page .page-hero{min-height:86svh;padding:130px 24px 72px}body.service-detail-page .detail-hero-bg img{object-position:center}body.service-detail-page .page-hero .display{font-size:clamp(45px,13vw,68px)!important}}
@media(prefers-reduced-motion:reduce){body.service-detail-page .detail-hero-bg img{animation:none}}

/* ============================================================
   CONTACT — EDITORIAL INQUIRY PAGE
   ============================================================ */
body.contact-page .contact-hero{min-height:min(83svh,850px);isolation:isolate;display:flex;align-items:flex-end;text-align:left;padding:calc(var(--nav-h) + 100px) max(24px,calc((100vw - 1280px)/2)) 112px;overflow:hidden}
body.contact-page .contact-hero-bg{position:absolute;inset:0;z-index:-2;overflow:hidden;background:#050609}
body.contact-page .contact-hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,6,9,.97) 0%,rgba(5,6,9,.82) 39%,rgba(5,6,9,.42) 72%,rgba(5,6,9,.46) 100%),linear-gradient(0deg,#050609,transparent 58%)}
body.contact-page .contact-hero-bg img{width:100%;height:100%;object-fit:cover;object-position:center;opacity:.75;filter:sepia(.22) saturate(.72) brightness(.68);animation:contactHeroDrift 25s ease-in-out infinite alternate}
@keyframes contactHeroDrift{from{transform:scale(1.02)}to{transform:scale(1.1) translate3d(-1.2%,.6%,0)}}
body.contact-page .contact-hero-copy{max-width:760px;position:relative;z-index:1}
body.contact-page .contact-hero .display{font-size:clamp(56px,7vw,102px);line-height:.96}
body.contact-page .contact-hero .sub{margin:26px 0 0;max-width:555px;font-size:clamp(17px,1.55vw,21px);line-height:1.7}
body.contact-page .contact-form-section{padding:clamp(110px,13vw,180px) 0 clamp(80px,10vw,130px)}
body.contact-page .contact-form-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(480px,1.2fr);gap:clamp(58px,9vw,150px);align-items:center}
body.contact-page .contact-form-intro{padding:36px 0;position:relative}
body.contact-page .contact-form-intro::before{content:"";position:absolute;left:-34px;top:0;width:1px;height:100%;background:linear-gradient(transparent,rgba(230,200,126,.62),transparent)}
body.contact-page .contact-form-intro .headline{margin:0;line-height:1.05}
body.contact-page .contact-form-intro .sub{max-width:395px;margin:24px 0 0;line-height:1.8}
body.contact-page .contact-form-panel{padding:clamp(34px,4.6vw,58px);border-radius:3px;background:radial-gradient(500px 320px at 100% 0,rgba(230,200,126,.12),transparent 67%),linear-gradient(145deg,rgba(230,200,126,.07),rgba(7,8,13,.92));border-color:rgba(230,200,126,.23);box-shadow:0 34px 100px rgba(0,0,0,.52),inset 0 1px rgba(255,255,255,.025)}
body.contact-page .contact-form-panel .field{margin-bottom:23px}
body.contact-page .contact-inquiry-form{position:relative}
body.contact-page .contact-inquiry-form::before{content:"";display:block;height:1px;margin-bottom:31px;background:linear-gradient(90deg,rgba(230,200,126,.52),rgba(230,200,126,.08) 58%,transparent)}
body.contact-page .contact-form-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}
body.contact-page .contact-field-wide{grid-column:1/-1}
body.contact-page .contact-form-panel .field{position:relative}
body.contact-page .contact-form-panel .field label{display:flex;align-items:center;gap:9px;color:#b9b5a8;font-size:10px;font-weight:800;letter-spacing:.19em}
body.contact-page .contact-form-panel .field label::before{content:"";width:5px;height:5px;border-radius:50%;background:#e6c87e;box-shadow:0 0 12px rgba(230,200,126,.75);transition:transform .3s,box-shadow .3s}
body.contact-page .contact-form-panel .field:focus-within label{color:#f1d789}
body.contact-page .contact-form-panel .field:focus-within label::before{transform:scale(1.55);box-shadow:0 0 20px rgba(230,200,126,.9)}
body.contact-page .contact-form-panel .field input,body.contact-page .contact-form-panel .field textarea{border-radius:2px;background:rgba(5,6,9,.66);border-color:rgba(230,200,126,.18);padding:15px 16px;transition:border-color .3s,box-shadow .3s,background .3s,transform .3s}
body.contact-page .contact-form-panel .field textarea{min-height:146px;resize:vertical}
body.contact-page .contact-form-panel .field input:focus,body.contact-page .contact-form-panel .field textarea:focus{border-color:rgba(230,200,126,.6);background:rgba(5,6,9,.88);box-shadow:0 0 0 4px rgba(230,200,126,.07)}
body.contact-page .contact-form-panel .field:focus-within input,body.contact-page .contact-form-panel .field:focus-within textarea{transform:translateY(-1px)}
body.contact-page .contact-form-panel .btn{width:100%;justify-content:center;margin-top:4px;min-height:54px;font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
body.contact-page .contact-form-panel .btn::after{content:"→";font-size:17px;line-height:1;margin-left:7px;transition:transform .3s}
body.contact-page .contact-form-panel .btn:hover::after{transform:translateX(5px)}
body.contact-page .contact-form-panel .form-note{margin:16px 0 0;text-align:center;font-size:12px;color:#8d8a7e}
body.contact-page .contact-channels{padding:0 0 clamp(110px,14vw,190px)}
body.contact-page .contact-channel-grid{gap:22px}
body.contact-page .contact-channel-grid .card{min-height:250px;padding:34px 30px 70px;background:linear-gradient(145deg,rgba(230,200,126,.075),rgba(7,8,13,.9) 62%);border-color:rgba(230,200,126,.16)}
body.contact-page .contact-channel-grid .card::before{opacity:1;background:radial-gradient(360px 220px at 100% 0,rgba(230,200,126,.11),transparent 72%)}
body.contact-page .contact-channel-grid .card::after{display:none!important}
body.contact-page .contact-channel-grid .card:hover{box-shadow:0 30px 68px rgba(0,0,0,.46),0 0 36px rgba(230,200,126,.08)}
body.contact-page .contact-channel-mark{display:block;font-family:"Playfair Display",Georgia,serif;font-style:italic;font-size:30px;color:#e6c87e;margin-bottom:48px}
body.contact-page .contact-channel-grid h3{font-size:27px}
body.contact-page .contact-channel-grid .card-more{position:absolute;left:30px;bottom:28px;color:#e6c87e;font-weight:800;letter-spacing:.12em;text-transform:uppercase;font-size:10px}
@media(max-width:860px){body.contact-page .contact-hero{min-height:78svh;padding:130px 24px 78px}body.contact-page .contact-form-layout{grid-template-columns:1fr;gap:38px}body.contact-page .contact-form-intro::before{left:0;width:100%;height:1px;background:linear-gradient(90deg,rgba(230,200,126,.65),transparent)}body.contact-page .contact-form-intro{padding-top:32px}.contact-page .contact-hero-bg img{object-position:65% center}}
@media(max-width:620px){body.contact-page .contact-hero .display{font-size:clamp(50px,14vw,68px)}body.contact-page .contact-form-section{padding-top:82px}.contact-page .contact-form-fields{grid-template-columns:1fr;gap:0}.contact-page .contact-field-wide{grid-column:auto}.contact-page .contact-channel-grid .card{min-height:225px}}
@media(prefers-reduced-motion:reduce){body.contact-page .contact-hero-bg img{animation:none}}

/* Team: remove redundant org intro and bring the profile dialog into Obsidian Aurum. */
body.team-page .team-org-intro-hidden{display:none}
body.team-page .org .card::after{display:none!important}
body.team-page .modal{background:rgba(4,5,8,.78);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}
body.team-page .modal-card{max-width:500px;padding:54px 46px;border-radius:3px;background:radial-gradient(500px 260px at 50% 0,rgba(230,200,126,.12),transparent 68%),linear-gradient(145deg,#0b0c10,#050609);border:1px solid rgba(230,200,126,.3);box-shadow:0 40px 120px rgba(0,0,0,.72),0 0 60px rgba(195,154,68,.1)}
body.team-page .modal-card .avatar{width:116px;height:116px;border-color:rgba(230,200,126,.5);background:#07080d;box-shadow:0 0 0 9px rgba(230,200,126,.06)}
body.team-page .modal-card h3{font-family:"Playfair Display",Georgia,serif;font-size:30px;color:#f7f4ec}
body.team-page .modal-card .role{color:#e6c87e;letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:800;margin:10px 0 24px}
body.team-page .modal-card p{color:#c9c5b8;font-size:15px;line-height:1.82}
body.team-page .modal-close{width:38px;height:38px;background:rgba(230,200,126,.09);border:1px solid rgba(230,200,126,.25);color:#e6c87e}
body.team-page .modal-close:hover{background:rgba(230,200,126,.2)}

/* Editorial team profile modal refinement. */
body.team-page .modal-card{max-width:760px;min-height:380px;display:grid;grid-template-columns:190px 1fr;grid-template-rows:auto auto 1fr;column-gap:44px;align-items:start;text-align:left;padding:56px 58px;background:radial-gradient(500px 330px at 0 100%,rgba(230,200,126,.09),transparent 70%),linear-gradient(135deg,#0b0c10,#050609)}
body.team-page .modal-card::before{content:"LEADERSHIP PROFILE";position:absolute;left:58px;top:30px;color:#e6c87e;font-size:10px;font-weight:800;letter-spacing:.32em}
body.team-page .modal-card .avatar{grid-row:1/4;align-self:center;width:170px;height:230px;border-radius:2px;margin:0;border-color:rgba(230,200,126,.42);box-shadow:14px 14px 0 rgba(230,200,126,.08)}
body.team-page .modal-card .avatar img{object-position:center top}
body.team-page .modal-card h3{margin-top:46px;font-size:clamp(28px,3vw,38px);line-height:1.05}
body.team-page .modal-card .role{margin:12px 0 24px;padding-bottom:20px;border-bottom:1px solid rgba(230,200,126,.24)}
body.team-page .modal-card p{margin:0;font-size:15px;line-height:1.85}
@media(max-width:620px){body.team-page .modal-card{display:block;min-height:0;padding:56px 28px 34px;text-align:center}.team-page .modal-card::before{left:28px}.team-page .modal-card .avatar{width:118px;height:118px;border-radius:50%;margin:0 auto 28px;box-shadow:0 0 0 8px rgba(230,200,126,.06)}.team-page .modal-card h3{margin-top:0}.team-page .modal-card .role{border-bottom:0;padding-bottom:0}}
body.services-page .service-catalogue-card h3{font-size:30px;line-height:1.05;margin-bottom:11px}
body.services-page .service-catalogue-card p{font-size:14px;line-height:1.5;margin-bottom:12px}
body.services-page .service-catalogue-card ul{font-size:13px;gap:9px 14px;margin:12px 0 20px}
body.services-page .service-catalogue-card .card-more{font-size:11px}

/* ============================================================
   LOGIN — SECURE COMMAND CENTRE
   ============================================================ */
body.login-page{background:#050609;overflow-x:hidden}
body.login-page::before{content:"";position:fixed;inset:var(--nav-h) 0 0;z-index:-3;background-image:linear-gradient(90deg,rgba(5,6,9,.88),rgba(5,6,9,.54) 45%,rgba(5,6,9,.34)),linear-gradient(0deg,rgba(5,6,9,.9),transparent 58%),url("/images/login-command-centre.png");background-size:cover;background-position:center;filter:saturate(.82) sepia(.12);animation:loginBackdropDrift 26s ease-in-out infinite alternate;transform:scale(1.025);will-change:transform}
body.login-page::after{content:"";position:fixed;inset:var(--nav-h) 0 0;z-index:-2;pointer-events:none;background:radial-gradient(650px 520px at 50% 48%,rgba(230,200,126,.09),transparent 68%),linear-gradient(90deg,rgba(5,6,9,.2),transparent 34%,rgba(5,6,9,.34))}
@keyframes loginBackdropDrift{from{transform:scale(1.025) translate3d(0,0,0)}to{transform:scale(1.09) translate3d(-1.2%,.4%,0)}}
body.login-page .ambient{display:none}
body.login-page .auth-wrap{position:relative;min-height:100svh;padding-top:calc(var(--nav-h) + 80px);padding-bottom:80px}
body.login-page .auth-card{position:relative;max-width:440px;padding:54px 46px 48px;border-radius:3px;border-color:rgba(230,200,126,.32);background:radial-gradient(360px 210px at 50% 0,rgba(230,200,126,.18),transparent 68%),linear-gradient(145deg,rgba(9,10,14,.93),rgba(5,6,9,.86));box-shadow:0 36px 120px rgba(0,0,0,.72),0 0 64px rgba(230,200,126,.1),inset 0 1px rgba(255,255,255,.045)}
body.login-page .auth-card::before{content:"";position:absolute;left:46px;right:46px;top:27px;height:1px;background:linear-gradient(90deg,transparent,rgba(230,200,126,.68),transparent)}
body.login-page .auth-card .logo{width:60px;height:60px;margin-bottom:18px;border-radius:0;object-fit:contain;filter:drop-shadow(0 0 16px rgba(230,200,126,.28))}
body.login-page .auth-kicker{display:block;margin:0 0 12px;color:#e6c87e;font-size:10px;font-weight:800;letter-spacing:.3em;text-transform:uppercase}
body.login-page .auth-card h1{font-family:"Playfair Display",Georgia,serif;font-size:clamp(29px,3vw,38px);line-height:1.05;color:#f7f4ec}
body.login-page .auth-card .sub{margin:12px auto 32px;color:#c9c5b8}
body.login-page .auth-card .field{margin-bottom:14px}
body.login-page .auth-card .field input{border-radius:2px;border-color:rgba(230,200,126,.2);background:rgba(5,6,9,.74);color:#f7f4ec;padding:16px 17px;transition:border-color .25s,box-shadow .25s,background .25s}
body.login-page .auth-card .field input:focus{border-color:rgba(230,200,126,.68);background:rgba(5,6,9,.93);box-shadow:0 0 0 4px rgba(230,200,126,.08)}
body.login-page .auth-card .field input::placeholder{color:#9b9788}
body.login-page .pw-wrap .pw-toggle{color:#aaa8a1;font-weight:700;letter-spacing:.06em;z-index:2}
body.login-page .pw-wrap .pw-toggle:hover,body.login-page .pw-wrap .pw-toggle:focus-visible{color:#f1efe8;outline:0}
body.login-page .auth-card #loginBtn{min-height:54px;margin-top:10px!important;letter-spacing:.17em;box-shadow:0 16px 38px rgba(195,154,68,.32)}
body.login-page .auth-links{margin-top:28px;padding-top:22px;border-top:1px solid rgba(230,200,126,.15)}
body.login-page .auth-links a{font-size:11px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
@media(max-width:620px){body.login-page::before{background-position:58% center}body.login-page .auth-wrap{padding:calc(var(--nav-h) + 54px) 20px 52px}body.login-page .auth-card{padding:46px 28px 38px}body.login-page .auth-card::before{left:28px;right:28px}}
@media(prefers-reduced-motion:reduce){body.login-page::before{animation:none}}

body.login-page .ems-welcome{position:fixed;inset:0;z-index:2500;display:grid;place-content:center;gap:15px;padding:28px;text-align:center;pointer-events:none;opacity:0;visibility:hidden;background:radial-gradient(560px 380px at 50% 48%,rgba(230,200,126,.12),transparent 70%),#050609;transition:opacity .42s ease,visibility 0s linear .42s}
body.login-page .ems-welcome::before{content:"";position:absolute;width:min(44vw,580px);aspect-ratio:1;border:1px solid rgba(230,200,126,.24);border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%) scale(.65);opacity:0}
body.login-page .ems-welcome-mark{position:relative;z-index:1;width:66px;height:66px;display:grid;place-items:center;margin:0 auto 5px;border:1px solid rgba(230,200,126,.5);border-radius:50%;font-family:"Playfair Display",Georgia,serif;font-style:italic;font-size:25px;color:#e6c87e;box-shadow:0 0 0 12px rgba(230,200,126,.05),0 0 32px rgba(230,200,126,.2)}
body.login-page .ems-welcome-eyebrow,body.login-page .ems-welcome-note,body.login-page .ems-welcome strong{position:relative;z-index:1}
body.login-page .ems-welcome-eyebrow{color:#e6c87e;font-size:10px;font-weight:800;letter-spacing:.32em;text-transform:uppercase}
body.login-page .ems-welcome strong{font-family:"Playfair Display",Georgia,serif;font-size:clamp(29px,4vw,54px);font-weight:600;color:#f7f4ec}
body.login-page .ems-welcome-note{color:#c9c5b8;font-size:14px}
body.login-page.ems-entering .ems-welcome{opacity:1;visibility:visible;transition:opacity .42s ease}
body.login-page.ems-entering .ems-welcome::before{animation:emsWelcomeRing .9s cubic-bezier(.22,.61,.14,1) both}
body.login-page.ems-entering .ems-welcome-mark,body.login-page.ems-entering .ems-welcome-eyebrow,body.login-page.ems-entering .ems-welcome strong,body.login-page.ems-entering .ems-welcome-note{animation:emsWelcomeContent 2.4s cubic-bezier(.22,.61,.14,1) both}
body.login-page.ems-entering .ems-welcome-eyebrow{animation-delay:.06s}body.login-page.ems-entering .ems-welcome strong{animation-delay:.12s}body.login-page.ems-entering .ems-welcome-note{animation-delay:.18s}
@keyframes emsWelcomeRing{from{transform:translate(-50%,-50%) scale(.65);opacity:0}to{transform:translate(-50%,-50%) scale(1);opacity:1}}
@keyframes emsWelcomeContent{0%{opacity:0;transform:translateY(14px);filter:blur(4px)}18%,68%{opacity:1;transform:translateY(0);filter:blur(0)}100%{opacity:0;transform:translateY(-10px);filter:blur(3px)}}
@media(prefers-reduced-motion:reduce){body.login-page .ems-welcome,body.login-page.ems-entering .ems-welcome{transition:none}body.login-page.ems-entering .ems-welcome::before{animation:none;transform:translate(-50%,-50%) scale(1);opacity:1}}

/* Keep the imagery on the document canvas itself. This avoids a negative
   stacking layer being painted behind the browser's page background. */
body.login-page{background-color:#050609;background-image:linear-gradient(90deg,rgba(5,6,9,.82),rgba(5,6,9,.48) 48%,rgba(5,6,9,.34)),linear-gradient(0deg,rgba(5,6,9,.9),transparent 60%),url("/images/login-command-centre.png");background-size:cover;background-position:center;background-attachment:fixed}
body.login-page::before,body.login-page::after{display:none}
body.login-page main{position:relative;z-index:1}
@media(max-width:620px){body.login-page{background-position:58% center;background-attachment:scroll}}

/* Home hero: retain the world-network artwork, without the upper-right orbit. */
body.home-page .hero::after,
body.home-page .hero-orbit,
body.home-page .hero-ring,
body.home-page .hero-ornament,
body.home-page .orbit{display:none!important}

