/* Higher Wave — shared styles for every page */
:root{
  --ink:#13303A;      /* deep lake */
  --lake:#2D5D6B;     /* open water */
  --birch:#EDF0EC;    /* birch bark */
  --paper:#F8FAF7;    /* page */
  --granite:#55625D;  /* shield rock */
  --sun:#E2AC45;      /* sunrise on the water */
  --mist:#A9BBB5;
  --line:rgba(19,48,58,.16);
  --display:"Archivo",system-ui,sans-serif;
  --body:"Source Serif 4",Georgia,serif;
  --max:1120px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink);font-family:var(--body);font-size:1.125rem;line-height:1.68}
img{max-width:100%;display:block}
a{color:inherit}
:focus-visible{outline:3px solid var(--sun);outline-offset:3px}
.wrap{max-width:var(--max);margin:0 auto;padding:0 20px}
.measure{max-width:36em}
p+p{margin-top:1em}

h1,h2,h3,.btn,.nav,.wordmark,.kicker,.form input,.form button{font-family:var(--display)}
h1{font-variation-settings:"wdth" 125;font-weight:800;font-size:clamp(2.5rem,7.2vw,5.6rem);line-height:.98;letter-spacing:-.02em}
h2{font-variation-settings:"wdth" 115;font-weight:750;font-size:clamp(1.8rem,3.8vw,2.8rem);line-height:1.06;letter-spacing:-.01em}
h3{font-variation-settings:"wdth" 110;font-weight:700;font-size:1.4rem;line-height:1.2}
h2+p,h3+p{margin-top:16px}
.kicker{font-weight:600;font-size:1rem;color:var(--lake);margin-bottom:14px}

/* Header */
.site-head{background:var(--ink);color:var(--birch)}
.site-head .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px 24px;padding-top:18px;padding-bottom:18px;flex-wrap:wrap}
.wordmark{font-weight:800;font-variation-settings:"wdth" 125;font-size:1.3rem;text-decoration:none;letter-spacing:-.01em;display:flex;align-items:center;gap:10px}
.wordmark svg{width:34px;height:14px}
.nav{display:flex;gap:6px 22px;flex-wrap:wrap;font-size:.98rem;font-weight:500}
.nav a{text-decoration:none;opacity:.82}
.nav a:hover,.nav a[aria-current="page"]{opacity:1;text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:2px;text-decoration-color:var(--sun)}

/* Hero */
.hero{background:var(--ink);color:var(--birch);padding-top:64px;overflow:hidden}
.hero .kicker{color:var(--sun)}
.lede{font-size:clamp(1.15rem,2vw,1.35rem);margin-top:26px;max-width:33em;color:#D3DDD9}
.hero .actions{margin-top:34px}
.wave{display:block;width:100%;height:auto;margin-top:56px}
.wave path{fill:none;stroke:var(--sun);stroke-width:3;stroke-linecap:round;stroke-dasharray:2000;stroke-dashoffset:2000;animation:draw 2.6s cubic-bezier(.4,0,.2,1) .3s forwards}
@keyframes draw{to{stroke-dashoffset:0}}
@media (prefers-reduced-motion:reduce){.wave path{animation:none;stroke-dashoffset:0}html{scroll-behavior:auto}}

.hero-split{display:grid;grid-template-columns:1.25fr .75fr;gap:56px;align-items:center}
@media (max-width:860px){.hero-split{grid-template-columns:1fr;gap:40px}}

/* Buttons */
.actions{display:flex;gap:12px;flex-wrap:wrap}
.btn{display:inline-block;font-weight:650;font-size:1rem;padding:14px 24px;border-radius:999px;text-decoration:none;border:2px solid transparent;cursor:pointer;line-height:1.2;transition:background .15s}
.btn-sun{background:var(--sun);color:var(--ink)}
.btn-sun:hover{background:#EDC064}
.btn-line{border-color:currentColor;background:transparent;color:inherit}
.btn-line:hover{background:rgba(127,127,127,.12)}
.btn-ink{background:var(--ink);color:var(--birch)}
.btn-ink:hover{background:var(--lake)}

/* Sections */
.section{padding:88px 0}
.section-tight{padding:64px 0}
.bg-birch{background:var(--birch)}
.bg-ink{background:var(--ink);color:var(--birch)}
.bg-ink .kicker{color:var(--sun)}

/* Two doors */
.doors{display:grid;grid-template-columns:1fr 1fr}
.door{padding:76px clamp(20px,6vw,80px)}
.door-bjj{background:var(--lake);color:var(--birch)}
.door-bjj .kicker{color:var(--sun)}
.door-body{background:var(--birch)}
.door p{max-width:30em}
.door .actions{margin-top:30px}
@media (max-width:860px){.doors{grid-template-columns:1fr}.door{padding:60px 20px}}

.ticks{list-style:none;margin-top:22px;display:grid;gap:10px}
.ticks li{position:relative;padding-left:30px}
.ticks li::before{content:"";position:absolute;left:0;top:.72em;width:18px;height:2px;background:var(--sun)}
.door-body .ticks li::before,.bg-birch .ticks li::before,.light .ticks li::before{background:var(--lake)}

/* Book */
.book-grid{display:grid;grid-template-columns:auto 1fr;gap:56px;align-items:center}
@media (max-width:760px){.book-grid{grid-template-columns:1fr;gap:36px}}
.cover{width:220px;aspect-ratio:2/3;background:var(--ink);color:var(--birch);border-radius:3px 8px 8px 3px;padding:26px 22px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:inset 6px 0 0 rgba(0,0,0,.25),14px 18px 0 -2px var(--sun)}
.cover-title{font-family:var(--display);font-variation-settings:"wdth" 125;font-weight:800;font-size:2.05rem;line-height:.95;letter-spacing:-.02em}
.cover-author{font-family:var(--display);font-weight:500;font-size:.9rem;opacity:.85}
.cover svg{width:100%;height:auto}
.cover path{fill:none;stroke:var(--sun);stroke-width:4;stroke-linecap:round}
.cover-lg{width:min(280px,70vw)}
.cover-lg .cover-title{font-size:2.6rem}

/* Links row */
.channels{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:36px;border-top:2px solid var(--ink)}
.channel{padding:24px 24px 24px 0;text-decoration:none;display:block}
.channel+.channel{padding-left:24px;border-left:1px solid var(--line)}
.channel h3{font-size:1.2rem}
.channel p{font-size:1rem;color:var(--granite);margin-top:6px}
.channel:hover h3{text-decoration:underline;text-underline-offset:5px;text-decoration-color:var(--sun);text-decoration-thickness:2px}
@media (max-width:760px){.channels{grid-template-columns:1fr}.channel,.channel+.channel{padding:20px 0;border-left:0;border-bottom:1px solid var(--line)}}

/* About */
.about{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:start}
@media (max-width:760px){.about{grid-template-columns:1fr;gap:32px}}
.portrait{background:var(--lake);aspect-ratio:4/5;border-radius:6px;overflow:hidden;max-width:420px}
.portrait img{width:100%;height:100%;object-fit:cover}

/* Signup forms (Kit) */
.form{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px;max-width:600px}
.form input{flex:1 1 200px;font-size:1rem;padding:14px 20px;border-radius:999px;border:2px solid rgba(237,240,236,.35);background:transparent;color:inherit;min-width:0}
.form input::placeholder{color:var(--mist)}
.form input:focus{border-color:var(--sun);outline:none}
.form button{flex:0 0 auto}
.light .form input{border-color:rgba(19,48,58,.3)}
.light .form input::placeholder{color:var(--granite)}
.light .form input:focus{border-color:var(--lake)}
.fine{font-size:.92rem;color:var(--mist);margin-top:14px}
.light .fine{color:var(--granite)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Steps (real sequences only) */
.steps{list-style:none;counter-reset:s;display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin-top:40px}
.steps li{counter-increment:s;border-top:2px solid var(--ink);padding-top:18px}
.steps li::before{content:counter(s);font-family:var(--display);font-weight:800;font-variation-settings:"wdth" 125;font-size:2.4rem;line-height:1;color:var(--lake);display:block;margin-bottom:10px}
.steps p{font-size:1.02rem;margin-top:8px}
@media (max-width:760px){.steps{grid-template-columns:1fr;gap:28px}}

/* Footer */
.site-foot{background:var(--ink);color:var(--mist);padding:40px 0;font-size:.95rem;border-top:1px solid rgba(237,240,236,.12)}
.site-foot .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
.site-foot a{text-decoration:none}
.site-foot a:hover{color:var(--birch)}
.site-foot nav{display:flex;gap:18px;flex-wrap:wrap}

@media (max-width:860px){.cover-lg{width:200px}.cover-lg .cover-title{font-size:2.1rem}}
