:root{
  --emerald:#0E4D3B; --emerald-2:#0A3A2C; --leaf:#3F8F63; --gold:#C9A04A; --gold-soft:#F3E8CC;
  --bg:#FFFFFF; --surface:#F3F6F3; --surface-2:#E7EEE9; --ink:#102019; --muted:#51635A; --line:#DCE5DF;
  --on-emerald:#F4F8F5; --card:#FFFFFF; --shadow:0 18px 40px -22px rgba(14,77,59,.35);
  --display:"Bricolage Grotesque", "Segoe UI", system-ui, sans-serif;
  --body:"Figtree", "Segoe UI", system-ui, -apple-system, sans-serif;
  --mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;
  --radius:18px; --maxw:1180px;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    color-scheme:dark;
    --emerald:#1C6B53; --emerald-2:#0F3F31; --leaf:#6CC194; --gold:#DDB864; --gold-soft:#3A3120;
    --bg:#0B1411; --surface:#111E19; --surface-2:#172821; --ink:#E6EFEA; --muted:#9DB2A7; --line:#22362D;
    --on-emerald:#F1F7F3; --card:#13221C; --shadow:0 18px 40px -22px rgba(0,0,0,.7);
  }
}
:root[data-theme="dark"]{
  color-scheme:dark;
  --emerald:#1C6B53; --emerald-2:#0F3F31; --leaf:#6CC194; --gold:#DDB864; --gold-soft:#3A3120;
  --bg:#0B1411; --surface:#111E19; --surface-2:#172821; --ink:#E6EFEA; --muted:#9DB2A7; --line:#22362D;
  --on-emerald:#F1F7F3; --card:#13221C; --shadow:0 18px 40px -22px rgba(0,0,0,.7);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:16.5px;line-height:1.6;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:var(--display);line-height:1.08;margin:0;text-wrap:balance;letter-spacing:-.02em}
p{margin:0}
a{color:inherit}
img{max-width:100%;display:block}
.wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:clamp(16px,4vw,32px)}
.eyebrow{font-family:var(--mono);font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--emerald);display:inline-flex;align-items:center;gap:10px}
.eyebrow::before{content:"";width:22px;height:2px;background:var(--gold);border-radius:2px}
.lead{font-size:clamp(17px,1.6vw,19.5px);color:var(--muted);max-width:62ch}
:focus-visible{outline:none;box-shadow:0 0 0 2px var(--bg),0 0 0 5px var(--emerald);border-radius:6px}

/* Header */
.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:color-mix(in srgb,var(--bg) 86%,transparent);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid var(--line)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;height:72px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.mark{width:44px;height:44px;border-radius:13px;background:var(--emerald);display:grid;place-items:center;position:relative;flex:none}
.mark span{font-family:var(--display);font-weight:800;color:var(--on-emerald);font-size:15px;letter-spacing:.02em}
.mark::after{content:"";position:absolute;top:7px;right:7px;width:7px;height:7px;border-radius:50% 0 50% 50%;background:var(--gold);transform:rotate(-45deg)}
.brand b{font-family:var(--display);font-size:19px;font-weight:800;letter-spacing:-.01em;display:block;line-height:1.1}
.brand small{display:block;font-size:11.5px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-weight:600}
.nav{display:flex;align-items:center;gap:4px}
.nav a{text-decoration:none;font-weight:600;font-size:15px;padding:9px 13px;border-radius:999px;color:var(--muted);transition:color .2s,background .2s}
.nav a:hover{color:var(--ink);background:var(--surface)}
.nav a[aria-current="page"]{color:var(--emerald);background:var(--surface-2)}
:root[data-theme="dark"] .nav a[aria-current="page"]{color:var(--leaf)}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .nav a[aria-current="page"]{color:var(--leaf)}}
:root[data-theme="dark"] .eyebrow,:root[data-theme="dark"] .manifest .tag,:root[data-theme="dark"] .mk .flag{color:var(--leaf)}
:root[data-theme="dark"] :focus-visible{box-shadow:0 0 0 2px var(--bg),0 0 0 5px var(--gold)}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .eyebrow,:root:not([data-theme="light"]) .manifest .tag,:root:not([data-theme="light"]) .mk .flag{color:var(--leaf)} :root:not([data-theme="light"]) :focus-visible{box-shadow:0 0 0 2px var(--bg),0 0 0 5px var(--gold)}}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font:600 15.5px/1 var(--body);padding:15px 22px;border-radius:999px;border:0;cursor:pointer;text-decoration:none;transition:transform .2s,box-shadow .2s,background .2s}
.btn-primary{background:var(--emerald);color:var(--on-emerald);box-shadow:var(--shadow)}
.btn-primary:hover{transform:translateY(-2px);background:var(--emerald-2)}
.btn-gold{background:var(--gold);color:#1B1606}
.btn-gold:hover{transform:translateY(-2px)}
.btn-ghost{background:transparent;color:var(--ink);border:1.5px solid var(--line)}
.btn-ghost:hover{border-color:var(--leaf)}
.btn svg{width:18px;height:18px}
.top .btn{padding:12px 18px;font-size:14.5px}
.menu-btn{display:none;background:var(--surface);border:1px solid var(--line);border-radius:12px;width:44px;height:44px;cursor:pointer;color:var(--ink)}
.menu-btn svg{width:22px;height:22px;margin:auto}
@media (max-width:980px){
  .nav{display:none;position:absolute;left:0;right:0;top:72px;flex-direction:column;align-items:stretch;background:var(--bg);border-bottom:1px solid var(--line);padding:12px clamp(16px,4vw,32px) 20px;gap:2px}
  .nav.open{display:flex}
  .nav a{padding:13px 14px;border-radius:12px}
  .menu-btn{display:grid}
  .top .cta-top{display:none}
}

/* Pages */
.page{animation:pageIn .5s ease both}
@keyframes pageIn{from{opacity:.35;transform:translateY(10px)}to{opacity:1;transform:none}}
section{padding-block:clamp(56px,8vw,104px)}
.section-head{display:grid;gap:16px;margin-bottom:clamp(32px,5vw,52px);max-width:760px}
.section-head h2{font-size:clamp(30px,4.2vw,48px);font-weight:700}
.tint{background:var(--surface)}

/* Hero */
.hero{padding-block:clamp(40px,6vw,80px) clamp(56px,8vw,96px);position:relative;overflow:hidden}
.hero .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(32px,5vw,64px);align-items:center}
.hero h1{isolation:isolate;font-size:clamp(44px,7vw,86px);font-weight:800;letter-spacing:-.035em;line-height:.98}
.hero h1 em{font-style:normal;color:var(--emerald);position:relative;white-space:nowrap}
:root[data-theme="dark"] .hero h1 em{color:var(--leaf)}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .hero h1 em{color:var(--leaf)}}
.hero h1 em::after{content:"";position:absolute;left:0;right:0;bottom:.06em;height:.14em;background:var(--gold);opacity:.55;border-radius:4px;z-index:-1}
.hero-copy{display:grid;gap:26px;min-width:0}
.hero .wrap > *{min-width:0}
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chip{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:14.5px;padding:9px 15px;border-radius:999px;background:var(--surface);border:1px solid var(--line)}
.chip i{width:8px;height:8px;border-radius:50%;background:var(--gold)}
.actions{display:flex;flex-wrap:wrap;gap:12px}
.hero-meta{font-family:var(--mono);font-size:12.5px;color:var(--muted);letter-spacing:.04em;display:flex;flex-wrap:wrap;gap:6px 18px}
.mosaic{display:grid;grid-template-columns:1.1fr 1fr;grid-template-rows:1fr 1fr;gap:14px;height:clamp(380px,46vw,560px);position:relative}
.mosaic figure{margin:0;border-radius:24px;overflow:hidden;position:relative;background:var(--surface-2)}
.mosaic figure:first-child{grid-row:1/3}
.mosaic img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s ease}
.mosaic figure:hover img{transform:scale(1.05)}
.mosaic figcaption{position:absolute;left:12px;bottom:12px;font-family:var(--mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;background:rgba(10,30,22,.72);color:#F4F8F5;padding:6px 10px;border-radius:8px;backdrop-filter:blur(6px)}
.manifest{position:absolute;left:-28px;bottom:28px;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:16px 18px;box-shadow:var(--shadow);width:min(270px,70%);display:grid;gap:10px;animation:float 6s ease-in-out infinite}
.manifest .row{display:flex;justify-content:space-between;gap:10px;font-size:13px;border-bottom:1px dashed var(--line);padding-bottom:7px}
.manifest .row:last-child{border:0;padding:0}
.manifest .row span{color:var(--muted);font-family:var(--mono);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase}
.manifest .row b{font-weight:600;text-align:right}
.manifest .tag{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--emerald);font-weight:500}
@keyframes float{50%{transform:translateY(-8px)}}
@media (max-width:900px){
  .hero .wrap{grid-template-columns:1fr}
  .manifest{left:12px}
}

/* Intro band */
.intro{display:grid;grid-template-columns:1fr 1.2fr;gap:clamp(28px,5vw,72px);align-items:start}
.intro h2{font-size:clamp(30px,4vw,46px);font-weight:700}
.intro .body{display:grid;gap:18px;color:var(--muted);font-size:17.5px}
.intro .body strong{color:var(--ink)}
.signature{font-family:var(--display);font-weight:700;font-size:21px;color:var(--emerald);padding-top:8px;border-top:1px solid var(--line)}
:root[data-theme="dark"] .signature{color:var(--leaf)}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .signature{color:var(--leaf)}}
@media (max-width:860px){.intro{grid-template-columns:1fr}}

/* Cards */
.grid{display:grid;gap:18px}
.g4{grid-template-columns:repeat(4,1fr)}
.g3{grid-template-columns:repeat(3,1fr)}
.g2{grid-template-columns:repeat(2,1fr)}
@media (max-width:1000px){.g4{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(2,1fr)}}
@media (max-width:600px){.g4,.g3,.g2{grid-template-columns:1fr}}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:26px;display:grid;gap:12px;align-content:start;transition:transform .25s,box-shadow .25s,border-color .25s}
.card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:color-mix(in srgb,var(--leaf) 40%,var(--line))}
.card h3{font-size:21px;font-weight:700}
.card p{color:var(--muted);font-size:15.5px}
.ico{width:48px;height:48px;border-radius:14px;background:var(--gold-soft);display:grid;place-items:center;color:var(--emerald)}
:root[data-theme="dark"] .ico{color:var(--gold)}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .ico{color:var(--gold)}}
.ico svg{width:24px;height:24px}

/* Category strip on home */
.cats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.cat{position:relative;border-radius:20px;overflow:hidden;aspect-ratio:4/3;max-width:100%;text-decoration:none;color:#fff;background:var(--emerald)}
.cat img{width:100%;height:100%;object-fit:cover;transition:transform .8s}
.cat:hover img{transform:scale(1.06)}
.cat::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(6,24,18,.82))}
.cat span{position:absolute;left:16px;bottom:14px;right:16px;z-index:1;font-family:var(--display);font-weight:700;font-size:19px;line-height:1.15}
@media (max-width:860px){.cats{grid-template-columns:repeat(2,1fr)}}

/* Product cards */
.products{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
@media (max-width:760px){.products{grid-template-columns:1fr}}
.prod{display:grid;grid-template-columns:200px 1fr;background:var(--card);border:1px solid var(--line);border-radius:22px;overflow:hidden;transition:box-shadow .25s,transform .25s}
.prod:hover{box-shadow:var(--shadow);transform:translateY(-3px)}
.prod .ph{position:relative;min-height:200px;background:var(--surface-2)}
.prod .ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.prod .ph.type{display:grid;place-items:center;padding:18px;background:radial-gradient(120% 90% at 20% 10%,var(--leaf),var(--emerald-2));color:#F4F8F5}
.prod .ph.type.gold{background:radial-gradient(120% 90% at 20% 10%,#E4C274,#8C6A22)}
.prod .ph.type b{font-family:var(--display);font-size:44px;font-weight:800;letter-spacing:-.03em;line-height:1;opacity:.95}
.prod .ph.type small{display:block;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;opacity:.85;margin-top:8px}
.prod .txt{padding:24px;display:grid;gap:10px;align-content:center}
.prod h3{font-size:22px;font-weight:700}
.prod p{color:var(--muted);font-size:15.5px}
.items{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.items li{list-style:none;font-size:13px;font-weight:600;padding:5px 11px;border-radius:999px;background:var(--surface);border:1px solid var(--line)}
.items{padding:0;margin-block:4px 0}
@media (max-width:480px){.prod{grid-template-columns:1fr}.prod .ph{min-height:180px}}
.note{display:flex;gap:16px;align-items:flex-start;border:1px dashed color-mix(in srgb,var(--gold) 70%,var(--line));background:color-mix(in srgb,var(--gold-soft) 55%,transparent);border-radius:18px;padding:20px 22px;margin-top:28px}
.note svg{flex:none;width:24px;height:24px;color:var(--gold)}
.note b{display:block;font-family:var(--display);font-size:17px;margin-bottom:2px}
.note p{color:var(--muted);font-size:15px}

/* Services */
.svc{display:grid;grid-template-columns:repeat(6,1fr);gap:18px}
.svc .card{grid-column:span 2}
.svc .card:nth-child(4),.svc .card:nth-child(5){grid-column:span 3}
.svc .card.feature{background:var(--emerald);color:var(--on-emerald);border-color:transparent}
.svc .card.feature p{color:color-mix(in srgb,var(--on-emerald) 80%,transparent)}
.svc .card.feature .ico{background:rgba(255,255,255,.12);color:var(--gold)}
@media (max-width:900px){.svc{grid-template-columns:1fr 1fr}.svc .card,.svc .card:nth-child(4),.svc .card:nth-child(5){grid-column:span 1}.svc .card:nth-child(5){grid-column:1/-1}}
@media (max-width:600px){.svc{grid-template-columns:1fr}}

/* Process */
.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:0;counter-reset:s;position:relative}
.step{padding:0 18px 0 0;display:grid;gap:10px;align-content:start;position:relative}
.step .n{font-family:var(--mono);font-weight:500;font-size:13px;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--emerald);color:var(--on-emerald);position:relative;z-index:1;box-shadow:0 0 0 6px var(--bg)}
.tint .step .n{box-shadow:0 0 0 6px var(--surface)}
.step::before{content:"";position:absolute;top:22px;left:44px;right:0;height:2px;background:repeating-linear-gradient(90deg,var(--gold) 0 8px,transparent 8px 14px)}
.step:last-child::before{display:none}
.step h3{font-size:18.5px;font-weight:700;margin-top:8px}
.step p{color:var(--muted);font-size:15px}
@media (max-width:900px){
  .steps{grid-template-columns:1fr;gap:26px}
  .step{grid-template-columns:44px 1fr;column-gap:18px;padding:0}
  .step .n{grid-row:1/3}
  .step h3{margin-top:10px}
  .step::before{top:44px;bottom:-26px;left:21px;right:auto;width:2px;height:auto;background:repeating-linear-gradient(180deg,var(--gold) 0 8px,transparent 8px 14px)}
}

/* Trade lanes */
.lanes{background:var(--emerald-2);color:var(--on-emerald);border-radius:28px;padding:clamp(24px,4vw,44px);display:grid;gap:28px;position:relative;overflow:hidden}
.lanes::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 80% at 85% 0%,rgba(201,160,74,.22),transparent 60%),radial-gradient(50% 70% at 0% 100%,rgba(63,143,99,.35),transparent 60%);pointer-events:none}
.lane{position:relative;display:grid;grid-template-columns:1fr auto 1.15fr auto 1fr;align-items:center;gap:14px}
.node{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);border-radius:18px;padding:18px;display:grid;gap:4px}
.node.hub{background:var(--gold);color:#1B1606;border-color:transparent}
.node .code{font-family:var(--mono);font-size:12px;letter-spacing:.14em;opacity:.8}
.node b{font-family:var(--display);font-size:22px;font-weight:700}
.node p{font-size:14px;opacity:.85}
.arrow{font-family:var(--mono);color:var(--gold);font-size:22px;letter-spacing:-2px}
.lanes .foot{position:relative;display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:15px;opacity:.9}
.lanes .foot b{color:var(--gold)}
@media (max-width:860px){.lane{grid-template-columns:1fr}.arrow{transform:rotate(90deg);justify-self:center}}

/* Split / about */
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,64px);align-items:center}
@media (max-width:860px){.split{grid-template-columns:1fr}}
.checks{display:grid;gap:12px;padding:0;margin:0}
.checks li{list-style:none;display:flex;gap:14px;align-items:flex-start;padding:14px 16px;background:var(--card);border:1px solid var(--line);border-radius:14px;font-weight:500}
.checks li svg{flex:none;width:22px;height:22px;color:var(--leaf);margin-top:1px}
.quote{font-family:var(--display);font-size:clamp(26px,3.4vw,40px);font-weight:700;line-height:1.15;letter-spacing:-.02em}
.quote span{color:var(--gold)}
.vm{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media (max-width:760px){.vm{grid-template-columns:1fr}}
.vm .card{padding:32px}
.vm .card:first-child{background:var(--emerald);color:var(--on-emerald);border-color:transparent}
.vm .card:first-child p{color:color-mix(in srgb,var(--on-emerald) 82%,transparent)}
.vm .card:first-child .eyebrow{color:var(--gold)}
.vm .card p{font-size:18px}
.page-hero{padding-block:clamp(48px,7vw,88px) clamp(28px,4vw,48px)}
.page.hero h1{isolation:isolate;font-size:clamp(38px,5.6vw,68px);font-weight:800;letter-spacing:-.03em;max-width:16ch}
.page-hero .wrap{display:grid;gap:20px}
.banner{height:clamp(180px,26vw,320px);border-radius:26px;overflow:hidden;margin-top:12px}
.banner img{width:100%;height:100%;object-fit:cover}

/* Markets */
.mk{display:grid;gap:10px;padding:26px;border-radius:20px;border:1px solid var(--line);background:var(--card)}
.mk .flag{font-family:var(--mono);font-size:12.5px;letter-spacing:.14em;color:var(--emerald);font-weight:500}
.mk h3{font-size:22px}
.mk p{color:var(--muted);font-size:15.5px}
.ambition{margin-top:28px;display:grid;grid-template-columns:auto 1fr;gap:22px;align-items:center;background:var(--surface);border-radius:22px;padding:26px 28px}
.ambition .ico{width:56px;height:56px}
.ambition p{font-size:18px}
.ambition small{display:block;color:var(--muted);font-size:14px;margin-top:6px}
@media (max-width:560px){.ambition{grid-template-columns:1fr}}

/* CTA */
.cta{background:var(--emerald);color:var(--on-emerald);border-radius:30px;padding:clamp(32px,5vw,60px);display:grid;grid-template-columns:1.4fr auto;gap:28px;align-items:center;position:relative;overflow:hidden}
.cta::after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;right:-120px;top:-180px;border:60px solid rgba(201,160,74,.18);pointer-events:none}
.cta h2{font-size:clamp(28px,3.8vw,44px);font-weight:700;position:relative}
.cta p{opacity:.85;margin-top:12px;max-width:52ch;position:relative}
.cta .actions{position:relative;z-index:1}
@media (max-width:760px){.cta{grid-template-columns:1fr}}

/* Contact */
.contact{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(24px,4vw,48px);align-items:start}
@media (max-width:900px){.contact{grid-template-columns:1fr}}
.info{display:grid;gap:14px}
.info .card{padding:22px}
.info dt{font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--leaf)}
.info dd{margin:4px 0 0;font-weight:500}
.info dl{margin:0;display:grid;gap:16px}
.pending{display:inline-block;font-size:12.5px;font-weight:600;color:var(--muted);background:var(--surface);border:1px dashed var(--line);padding:3px 9px;border-radius:8px}
form.quote-form{background:var(--card);border:1px solid var(--line);border-radius:26px;padding:clamp(22px,3.5vw,36px);display:grid;gap:18px;box-shadow:var(--shadow)}
.form-head h2{font-size:30px}
.form-head p{color:var(--muted);margin-top:6px}
.fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.fields .full{grid-column:1/-1}
@media (max-width:560px){.fields{grid-template-columns:1fr}}
.f{display:grid;gap:6px}
.f label{font-size:13.5px;font-weight:600}
.f label span{color:var(--muted);font-weight:500}
.f input,.f select,.f textarea{font:inherit;font-size:15.5px;color:var(--ink);background:var(--bg);border:1.5px solid var(--line);border-radius:12px;padding:12px 14px;width:100%;transition:border-color .2s,box-shadow .2s}
.f textarea{min-height:120px;resize:vertical}
.f input:focus,.f select:focus,.f textarea:focus{outline:none;border-color:var(--leaf);box-shadow:0 0 0 4px color-mix(in srgb,var(--leaf) 18%,transparent)}
.qty{display:grid;grid-template-columns:1fr 130px;gap:8px}
.form-foot{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between}
.form-foot small{color:var(--muted);font-size:13px;max-width:40ch}
.done{display:grid;gap:10px;padding:22px;border-radius:16px;background:color-mix(in srgb,var(--leaf) 12%,transparent);border:1px solid color-mix(in srgb,var(--leaf) 40%,transparent)}
.done b{font-family:var(--display);font-size:20px}
.done p{color:var(--muted);font-size:15px}

/* Footer */
footer{background:var(--emerald-2);color:#DCE8E1;padding-block:56px 28px;margin-top:0}
:root[data-theme="dark"] footer{background:#07100D}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) footer{background:#07100D}}
footer .wrap{display:grid;gap:36px}
.fgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px}
@media (max-width:760px){.fgrid{grid-template-columns:1fr}}
footer .brand b{color:#fff}
footer .brand small{color:#A9C2B5}
footer .tagline{font-family:var(--display);font-size:22px;font-weight:700;color:#fff;margin-top:18px}
footer h4{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);font-weight:500;margin-bottom:14px}
footer ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}
footer ul a{text-decoration:none;opacity:.85}
footer ul a:hover{opacity:1;color:var(--gold)}
footer .legal{border-top:1px solid rgba(255,255,255,.12);padding-top:22px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:13.5px;opacity:.75}

.hero-copy > *{animation:rise .8s cubic-bezier(.2,.7,.2,1) both}
.hero-copy > *:nth-child(2){animation-delay:.08s}.hero-copy > *:nth-child(3){animation-delay:.16s}.hero-copy > *:nth-child(4){animation-delay:.24s}.hero-copy > *:nth-child(5){animation-delay:.32s}
@keyframes rise{from{opacity:.25;transform:translateY(18px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation:none!important;transition:none!important}html{scroll-behavior:auto}}
