/* site.css — the public face. Typography-led on purpose: a new company with no photography library
   looks far better in confident type and space than in stock images of strangers shaking hands. */
:root{
  --brand:#0E4F49; --brand-dk:#0B3D38; --brand-lt:#2F7D74; --brass:#9A7326; --brass-lt:#C9A257;
  --ground:#F1F0EC; --paper:#FFFFFF; --ink:#131B1A; --muted:#4A5654; --faint:#7E8886; --rule:#DCDAD2;
  --display:'Archivo',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,system-ui,sans-serif;
  --serif:'Fraunces',Georgia,'Times New Roman',serif;
}
@media (prefers-color-scheme:dark){:root{
  --ground:#0C1413; --paper:#141D1C; --ink:#EDEBE4; --muted:#A3AFAC; --faint:#77837F; --rule:#25302E;
  --brand:#5FB5AA; --brand-dk:#0B3D38; --brass:#C9A257;}}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
body{background:var(--ground);color:var(--ink);font:16px/1.6 var(--display);-webkit-font-smoothing:antialiased}
.wrap{max-width:1120px;margin:0 auto;padding:0 26px}
a{color:inherit}

/* hero ------------------------------------------------------------------ */
.hero{background:var(--brand-dk);color:#F1F0EC;padding:76px 0 84px;position:relative;overflow:hidden}
.hero::after{content:"";position:absolute;right:-140px;top:-120px;width:520px;height:520px;border-radius:50%;
  background:radial-gradient(circle at 30% 30%,rgba(201,162,87,.22),transparent 62%);pointer-events:none}
.hero .eyebrow{font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--brass-lt);font-weight:600;margin-bottom:20px}
.hero h1{font-size:clamp(36px,5.6vw,62px);line-height:1.03;letter-spacing:-.032em;font-weight:700;max-width:17ch;text-wrap:balance}
.hero h1 em{font-family:var(--serif);font-style:italic;font-weight:300;letter-spacing:-.01em}
.hero p.lede{margin-top:22px;font-size:clamp(17px,2vw,20px);line-height:1.55;color:#BFD6D2;max-width:56ch}
.cta{display:inline-flex;align-items:center;gap:10px;background:var(--brass);color:#12100B;text-decoration:none;
  font-weight:600;padding:14px 26px;border-radius:7px;margin-top:32px;font-size:16px}
.cta:hover{background:var(--brass-lt)}
.cta.ghost{background:transparent;color:#F1F0EC;border:1px solid rgba(241,240,236,.35);margin-left:10px}
.cta.ghost:hover{border-color:#F1F0EC;background:rgba(241,240,236,.06)}
.hero .facts{display:flex;gap:44px;flex-wrap:wrap;margin-top:52px;padding-top:26px;border-top:1px solid rgba(241,240,236,.16)}
.hero .facts div b{display:block;font-size:26px;font-weight:700;letter-spacing:-.02em}
.hero .facts div span{font-size:13px;color:#A8CFC9}

/* sections -------------------------------------------------------------- */
section.band{padding:74px 0}
section.band.paper{background:var(--paper)}
.kicker{font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--brass);font-weight:600;margin-bottom:14px}
h2.big{font-size:clamp(26px,3.4vw,38px);line-height:1.12;letter-spacing:-.025em;font-weight:700;max-width:20ch;text-wrap:balance}
h2.big em{font-family:var(--serif);font-style:italic;font-weight:300}
.sub{color:var(--muted);margin-top:14px;max-width:62ch;font-size:17px}

.grid3{display:grid;gap:1px;background:var(--rule);border:1px solid var(--rule);border-radius:10px;overflow:hidden;margin-top:40px}
@media(min-width:820px){.grid3{grid-template-columns:repeat(3,1fr)}}
.grid3 article{background:var(--paper);padding:30px 26px}
.grid3 h3{font-size:17px;font-weight:600;margin-bottom:9px;letter-spacing:-.01em}
.grid3 p{color:var(--muted);font-size:15px}
.grid3 .n{font-family:var(--serif);font-style:italic;font-size:15px;color:var(--brass);margin-bottom:14px;display:block}

/* fleet ----------------------------------------------------------------- */
.fleet{display:grid;gap:18px;margin-top:40px}
@media(min-width:760px){.fleet{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1040px){.fleet{grid-template-columns:repeat(3,1fr)}}
.car{background:var(--paper);border:1px solid var(--rule);border-radius:11px;padding:26px}
.car .cls{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--brass);font-weight:600}
.car h3{font-size:21px;font-weight:700;letter-spacing:-.02em;margin:8px 0 4px}
.car .egs{color:var(--faint);font-size:13.5px;font-style:italic;font-family:var(--serif)}
.car p{color:var(--muted);font-size:14.5px;margin-top:14px}
.cap{display:flex;gap:22px;margin-top:20px;padding-top:16px;border-top:1px solid var(--rule)}
.cap div{font-size:13px;color:var(--muted)}
.cap b{display:block;font-size:19px;color:var(--ink);font-weight:700;letter-spacing:-.01em}

/* closing --------------------------------------------------------------- */
.close{background:var(--brand);color:#F1F0EC;border-radius:12px;padding:48px 40px;margin:74px 0;text-align:center}
.close h2{font-size:clamp(24px,3vw,34px);letter-spacing:-.025em;font-weight:700;text-wrap:balance}
.close h2 em{font-family:var(--serif);font-style:italic;font-weight:300}
.close p{color:#BFD6D2;margin-top:14px;max-width:52ch;margin-inline:auto}
footer.site{border-top:1px solid var(--rule);padding:34px 0 56px;color:var(--faint);font-size:13.5px}
footer.site .brandf{display:flex;align-items:center;font-weight:700;color:var(--ink);margin-bottom:10px}

/* The shared nav is injected into every page and inherits whatever that page's CSS says. On the
   public site it was arriving as underlined default links with the Partners menu colliding with the
   one beside it, so it gets styled here rather than left to chance. */
.site-nav{display:flex;align-items:center;gap:22px;flex-wrap:wrap;font-size:14.5px;font-weight:500}
.site-nav a{color:var(--muted);text-decoration:none;white-space:nowrap}
.site-nav a:hover{color:var(--brand)}
.site-nav .nav-sep{display:none}
.site-nav .nav-cta,.site-nav .btn-accent{
  background:var(--brand);color:#F1F0EC;padding:9px 18px;border-radius:6px;font-weight:600}
.site-nav .nav-cta:hover,.site-nav .btn-accent:hover{background:var(--brand-dk);color:#fff}
.site-nav .nav-group summary{
  color:var(--muted);cursor:pointer;list-style:none;font-weight:500;white-space:nowrap}
.site-nav .nav-group summary::-webkit-details-marker{display:none}
.site-nav .nav-group summary::after{content:" ▾";font-size:10px;opacity:.6}
.site-nav .nav-group[open] summary{color:var(--brand)}
.site-nav .nav-menu{
  position:absolute;z-index:40;margin-top:10px;background:var(--paper);border:1px solid var(--rule);
  border-radius:8px;padding:8px;min-width:190px;box-shadow:0 12px 32px rgba(19,27,26,.13);
  display:flex;flex-direction:column;gap:2px}
.site-nav .nav-menu a{padding:8px 12px;border-radius:5px;font-size:14px}
.site-nav .nav-menu a:hover{background:var(--ground)}
.site-nav .nav-muted{color:var(--faint)}
@media(max-width:720px){.site-nav{gap:14px;font-size:13.5px}}
