/* ============================================================
   CONTACT · follows the homepage design language (the neural cut)
   ============================================================ */
:root{
  --brand:#0d7f49; --brand-hi:#2fb872;
  --product:#ce2a6c; --product-hi:#ee5b95;
  --neutral:#8b8f98;
  --night:#0b0c0e; --night-2:#131417; --night-line:#26282d;
  --day:#fafaf8; --day-raised:#fff; --day-line:#e7e7e3;
  --ink:#16171a; --ink-muted:#5b5e66; --ink-subtle:#8b8e96;
  --w-ink:#f5f6f7; --w-muted:#a8acb4; --w-subtle:#71757e;
  --font:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --mono:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
  --r:12px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--night);color:var(--w-ink);font-family:var(--font);
  font-size:1.0625rem;line-height:1.55;-webkit-font-smoothing:antialiased;
  min-height:100vh;display:flex;flex-direction:column}
h1,h2,h3,p{margin:0}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
img,svg{display:block}
.wrap{max-width:1200px;margin-inline:auto;padding-inline:24px}

/* header — same as home */
.hdr{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--night) 78%,transparent);
  backdrop-filter:blur(12px);border-bottom:1px solid var(--night-line)}
.hdr .wrap{display:flex;align-items:center;justify-content:space-between;width:100%;height:60px}
.mark{font-size:1.125rem;font-weight:600;letter-spacing:-.03em;color:#fff}
.mark span{color:var(--brand-hi)}
.hdr nav{display:flex;gap:28px;align-items:center}
.hdr nav a{font-size:.9375rem;color:var(--w-muted);transition:color .15s}
.hdr nav a:hover{color:var(--w-ink)}
.hdr nav a.on{color:var(--w-ink)}
.hdr nav a.cta{color:var(--w-ink);border:1px solid var(--night-line);border-radius:999px;padding:7px 16px}
.hdr nav a.cta:hover{border-color:var(--brand-hi)}
.menu-toggle{display:none;width:42px;height:42px;border:1px solid rgba(255,255,255,.14);border-radius:12px;
  align-items:center;justify-content:center;flex-direction:column;gap:6px;padding:0;
  transition:background .2s,border-color .2s,transform .2s}
.menu-toggle:hover{border-color:var(--brand-hi);transform:translateY(-1px)}
.menu-toggle span{width:18px;height:1.5px;background:currentColor;transition:transform .2s}
.menu-toggle[aria-expanded="true"]{background:var(--brand);border-color:var(--brand);color:#fff}
.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(3.75px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-3.75px) rotate(-45deg)}
.mobile-menu{display:none}
@media(max-width:720px){
  .hdr nav{display:none}.menu-toggle{display:flex}
  .mobile-menu{position:fixed;top:72px;right:24px;width:min(300px,calc(100vw - 48px));z-index:49;display:grid;
    background:linear-gradient(145deg,rgba(22,24,27,.98),rgba(11,12,14,.98));padding:10px;
    border:1px solid color-mix(in srgb,var(--brand-hi) 22%,rgba(255,255,255,.1));border-radius:18px;
    box-shadow:0 28px 70px rgba(0,0,0,.42),0 3px 14px rgba(0,0,0,.24);
    backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);visibility:hidden;opacity:0;
    transform:translateY(-8px) scale(.97);transform-origin:top right;pointer-events:none;
    transition:opacity .2s ease,transform .25s cubic-bezier(.2,.8,.2,1),visibility .2s}
  .mobile-menu::before{content:"";position:absolute;right:18px;top:-6px;width:12px;height:12px;
    background:#15171a;border-left:1px solid color-mix(in srgb,var(--brand-hi) 22%,rgba(255,255,255,.1));
    border-top:1px solid color-mix(in srgb,var(--brand-hi) 22%,rgba(255,255,255,.1));transform:rotate(45deg)}
  .mobile-menu.open{visibility:visible;opacity:1;transform:none;pointer-events:auto}
  .mobile-menu a{display:grid;grid-template-columns:30px 1fr 18px;align-items:center;min-height:52px;
    padding:0 12px;border-radius:11px;font-size:1rem;font-weight:600;letter-spacing:-.015em;
    transition:background .16s,color .16s,transform .16s}
  .mobile-menu a::before{font-family:var(--mono);font-size:.625rem;letter-spacing:.08em;color:var(--w-subtle)}
  .mobile-menu a:nth-child(1)::before{content:"01"}.mobile-menu a:nth-child(2)::before{content:"02"}
  .mobile-menu a:nth-child(3)::before{content:"03"}.mobile-menu a:nth-child(4)::before{content:"04"}
  .mobile-menu a::after{content:"↗";font-size:.875rem;color:var(--w-subtle)}
  .mobile-menu a:hover,.mobile-menu a:focus-visible{background:rgba(47,184,114,.12);color:var(--brand-hi);transform:translateX(2px)}
  .mobile-menu a[aria-current="page"]{background:rgba(47,184,114,.12);color:var(--brand-hi)}
  .mobile-menu a[aria-current="page"]::after{content:"●";font-size:.5rem;color:var(--brand-hi)}
}

/* stage */
.stage{position:relative;flex:1;display:flex;align-items:center;overflow:hidden;
  padding-block:72px}
#dots{position:absolute;inset:0;z-index:0}
.stage .wrap{position:relative;z-index:2;width:100%}
.klabel{display:inline-block;font-family:var(--mono);font-size:.6875rem;text-transform:uppercase;
  letter-spacing:.14em;color:var(--w-subtle);margin-bottom:18px}
h1{font-size:clamp(2.2rem,5vw,3.4rem);font-weight:650;letter-spacing:-.03em;line-height:1.06}
.lede{margin-top:18px;color:var(--w-muted);max-width:52ch}

/* two doors — translucent slabs, ownership colours */
.doors{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:44px}
@media(max-width:860px){.doors{grid-template-columns:1fr}}
.door{position:relative;border:1px solid var(--night-line);border-radius:var(--r);
  background:color-mix(in srgb,var(--night-2) 72%,transparent);backdrop-filter:blur(8px);
  padding:26px 26px 24px;transition:border-color .2s}
.door .who{font-family:var(--mono);font-size:.6875rem;text-transform:uppercase;letter-spacing:.12em}
.door.m .who{color:var(--product-hi)} .door.g .who{color:var(--brand-hi)}
.door.m:hover{border-color:color-mix(in srgb,var(--product) 55%,var(--night-line))}
.door.g:hover{border-color:color-mix(in srgb,var(--brand) 55%,var(--night-line))}
.door h2{margin-top:10px;font-size:1.35rem;font-weight:600;letter-spacing:-.02em}
.door p{margin-top:10px;color:var(--w-muted);font-size:.9375rem;max-width:40ch}
.door .go{display:inline-block;margin-top:18px;font-size:.9375rem;border:1px solid var(--night-line);
  border-radius:999px;padding:9px 18px;transition:border-color .2s,background .2s}
.door.m .go:hover{border-color:var(--product-hi)}
.door.g .go{background:var(--brand);border-color:var(--brand);color:#fff}
.door.g .go:hover{background:var(--brand-hi);border-color:var(--brand-hi)}

/* direct block */
.direct{margin-top:44px;display:flex;flex-wrap:wrap;gap:12px 36px;align-items:baseline;
  border-top:1px solid var(--night-line);padding-top:22px}
.direct .k{font-family:var(--mono);font-size:.6875rem;text-transform:uppercase;letter-spacing:.12em;
  color:var(--w-subtle);margin-right:10px}
.direct a{color:var(--w-muted);transition:color .15s}
.direct a:hover{color:var(--w-ink)}

/* footer — same as home */
.ftr{border-top:1px solid var(--night-line);padding-block:22px;font-size:.875rem;color:var(--w-subtle)}
.ftr .ft{display:flex;flex-wrap:wrap;gap:10px 28px;align-items:baseline;justify-content:space-between}
