  :root{
    --ink:#0B1118; --ink-2:#101C2E; --paper:#EFE6D3; --paper-60:rgba(239,230,211,.62); --paper-30:rgba(239,230,211,.30);
    --brass:#A67C3D; --blue:#2B4A6F;
    --display:"Cormorant Garamond",Georgia,serif; --mono:"IBM Plex Mono",ui-monospace,monospace; --sans:"IBM Plex Sans",system-ui,Arial,sans-serif;
  }
  *{box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--sans);font-weight:300;line-height:1.6;overflow-x:hidden}
  /* the seabed: one large field, panned by scroll */
  .sea{position:fixed;inset:-20vh -20vw;z-index:0;background:url("/assets/bathymetry.svg") center/cover no-repeat;will-change:transform;pointer-events:none}
  .sea::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 30%,rgba(11,17,24,0) 0%,rgba(11,17,24,.55) 70%,rgba(11,17,24,.85) 100%)}
  main{position:relative;z-index:1}
  section{min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding:12vh 8vw;max-width:1100px}
  .label{font-family:var(--mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--brass)}
  h1{font-family:var(--display);font-weight:400;font-size:clamp(36px,7vw,92px);line-height:1;margin:.3em 0 .25em;letter-spacing:-.01em}
  h2{font-family:var(--display);font-weight:400;font-size:clamp(30px,4.6vw,56px);line-height:1.05;margin:.3em 0 .5em}
  .line{font-family:var(--display);font-style:italic;font-size:clamp(20px,2.4vw,30px);color:var(--paper-60);max-width:34ch;margin:0 0 2.2em}
  .rule{width:64px;height:1px;background:var(--brass);margin:1.2em 0 1.6em}
  p{max-width:62ch;font-size:clamp(16px,1.25vw,19px);color:var(--paper)}
  .muted{color:var(--paper-60)}
  .moves{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:2.2rem 3rem;margin-top:1rem}
  .move .label{display:block;margin-bottom:.5rem}
  .move h3{font-family:var(--display);font-weight:500;font-size:26px;margin:0 0 .4rem;line-height:1.15}
  .move p{font-size:16px;color:var(--paper-60);margin:0}
  .move.before{max-width:62ch;margin:1rem 0 2.6rem}
  .num{font-family:var(--mono);color:var(--paper)}
  .lanes{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:2rem;margin-top:.5rem}
  .lane h3{font-family:var(--display);font-weight:500;font-size:24px;margin:0 0 .3rem}
  .lane p{font-size:16px;color:var(--paper-60)}
  a{color:var(--paper);text-decoration:none;border-bottom:1px solid var(--brass)}
  a:hover{color:var(--brass)}
  .contact .links a{font-family:var(--mono);font-size:16px;margin-right:1.8rem}
  /* proof line and the door */
  .proof{font-family:var(--mono);font-size:clamp(13px,1.05vw,15px);letter-spacing:.04em;line-height:1.7;color:var(--paper);max-width:62ch;margin:0 0 2em}
  .proof .num{color:var(--brass)}
  .btn{display:inline-block;font-family:var(--mono);font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);background:var(--paper);border:1px solid var(--paper);padding:14px 22px;border-radius:2px;cursor:pointer;line-height:1.2}
  .btn:hover{background:var(--brass);border-color:var(--brass);color:var(--ink)}
  .door{display:grid;gap:1.5rem;max-width:62ch;margin-top:1.2rem}
  .door label{display:block;font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--brass);margin-bottom:.55rem}
  .door textarea,.door input{width:100%;background:rgba(11,17,24,.92);border:1px solid rgba(239,230,211,.22);border-radius:2px;color:var(--paper);font-family:var(--sans);font-weight:300;font-size:16px;padding:12px 14px;outline:none}
  .door textarea{min-height:84px;resize:vertical}
  .door textarea:focus,.door input:focus{border-color:var(--brass)}
  .door .row{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:1rem}
  .door .small{font-size:15px;margin:0}
  .door .note{font-family:var(--mono);font-size:13px;color:var(--brass);margin:0;min-height:1.2em}
  .door .book{display:none}
  nav .long{display:inline} nav .short{display:none}
  @media (max-width:640px){ nav .long{display:none} nav .short{display:inline} }
  nav{position:fixed;top:0;left:0;right:0;z-index:2;background:linear-gradient(rgba(11,17,24,.96) 55%,rgba(11,17,24,0));display:flex;justify-content:space-between;align-items:center;padding:18px 8vw;font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase}
  nav a{border:0;color:var(--paper-60)} nav a:hover{color:var(--paper)}
  nav .brand{color:var(--paper);display:flex;align-items:center}
  nav .logo{height:34px;width:auto;opacity:.92}
  nav .links a{margin-left:1.6rem}
  footer{position:relative;z-index:1;padding:4vh 8vw 6vh;font-family:var(--mono);font-size:12px;color:var(--paper-30);letter-spacing:.06em}
  @media (max-width:640px){ nav .links a{margin-left:1rem} section{padding:14vh 6vw} }
  @media (prefers-reduced-motion:reduce){ .sea{transform:none !important} html{scroll-behavior:auto} }
