:root{--bg:#f6f6f3;--surface:#ecece7;--white:#fff;--ink:#15181b;--muted:rgba(21,24,27,.66);--faint:rgba(21,24,27,.5);--line:rgba(21,24,27,.12);--line2:rgba(21,24,27,.2);--accent:#1f6f73;--accent-text:#1a5f63;--accent-soft:#dcebea;--accent-ink:#7cc8c2;--error:#a3392c;--serif:Newsreader,Georgia,serif;--sans:Geist,system-ui,-apple-system,sans-serif;--mono:"Geist Mono",ui-monospace,monospace;--pad:clamp(18px,4vw,56px);--ease:cubic-bezier(.2,.8,.2,1)}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:80px}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.55;overflow-x:hidden}
a{color:var(--accent)}a:hover{color:var(--ink)}
::selection{background:rgba(31,111,115,.22)}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
img,svg{display:block}
button{font:inherit}
h1,h2,p{margin:0}
em{font-style:italic}
.serif{font-family:var(--serif)}
.mono{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.muted{color:var(--muted)}
.accent{color:var(--accent)}
.pretty{text-wrap:pretty}.balance{text-wrap:balance}

/* reveal */
.js .reveal{opacity:0;transform:translateY(24px);filter:blur(8px);transition:opacity 1.1s var(--ease),transform 1.1s var(--ease),filter 1.1s var(--ease);transition-delay:calc(var(--d,0) * 110ms)}
.js .reveal.in{opacity:1;transform:none;filter:none}

/* header */
.header{position:sticky;top:0;z-index:50;background:rgba(246,246,243,.88);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.header__bar{display:flex;align-items:center;gap:28px;padding:14px var(--pad)}
.brand{display:flex;flex:none;align-items:center;gap:10px;margin-right:auto;color:inherit;text-decoration:none;white-space:nowrap}
.brand:hover{color:inherit}
.brand__mark{flex:none;width:22px;height:22px;border-radius:50%;border:1.5px solid var(--ink);display:grid;place-items:center}
.brand__mark::after{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent)}
.brand__name{font-family:var(--serif);font-size:23px;letter-spacing:-.01em}
.nav{display:flex;gap:26px;font-size:14px}
.nav a{color:var(--muted);text-decoration:none}
.nav a:hover,.nav a[aria-current="page"]{color:var(--ink)}
.nav a[aria-current="page"]{color:var(--accent)}
.btn-dark{flex:none;background:var(--ink);color:var(--bg);text-decoration:none;font-size:14px;font-weight:500;padding:10px 18px;border-radius:999px;white-space:nowrap;transition:background .25s}
.btn-dark:hover{background:var(--accent);color:var(--bg)}
.burger{display:none;flex:none;width:44px;height:44px;border-radius:50%;border:1px solid var(--line2);background:transparent;cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:0}
.burger span{width:16px;height:1.5px;background:var(--ink);transition:transform .3s}
.menu-open .burger span:first-child{transform:translateY(3.25px) rotate(45deg)}
.menu-open .burger span:last-child{transform:translateY(-3.25px) rotate(-45deg)}
.mnav{display:none;flex-direction:column;padding:8px var(--pad) 24px;border-top:1px solid var(--line)}
.mnav a{font-family:var(--serif);font-size:30px;letter-spacing:-.02em;color:var(--muted);text-decoration:none;padding:12px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}
.mnav a::after{content:"→";font-size:18px;color:var(--faint)}
.mnav a[aria-current="page"]{color:var(--accent)}

/* hero */
.hero{position:relative;padding:clamp(64px,10vw,150px) var(--pad) clamp(56px,7vw,96px);display:flex;flex-direction:column;align-items:center;text-align:center}
.hero__grid{position:absolute;inset:0;pointer-events:none;opacity:.45;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:radial-gradient(ellipse at 50% 40%,#000 0%,transparent 62%);mask-image:radial-gradient(ellipse at 50% 40%,#000 0%,transparent 62%);animation:grid 9s linear infinite}
@keyframes grid{to{background-position:64px 64px}}
.hero>*:not(.hero__grid){position:relative}
.hero__kicker{display:flex;gap:12px;align-items:center;justify-content:center;flex-wrap:wrap;color:var(--muted);letter-spacing:.16em;margin-bottom:32px}
.pulse{width:7px;height:7px;border-radius:50%;background:var(--accent);animation:pulse 1.8s infinite}
@keyframes pulse{50%{opacity:.3;transform:scale(1.8)}}
.hero h1{font-family:var(--serif);font-weight:300;font-size:clamp(44px,7.4vw,112px);line-height:1;letter-spacing:-.035em;margin-bottom:28px;max-width:1100px;text-wrap:balance}
.hero h1 span{display:inline-block}
.hero__lead{font-size:clamp(16px,1.5vw,20px);max-width:600px;margin-bottom:44px;color:var(--muted);text-wrap:pretty}
.pill{width:100%;max-width:680px;display:flex;align-items:center;gap:12px;padding:8px 8px 8px 22px;border-radius:999px;border:1px solid var(--line2);background:var(--white);box-shadow:0 1px 0 var(--line),0 16px 40px -20px rgba(21,24,27,.25);text-decoration:none;color:inherit;text-align:left;transition:box-shadow .3s,transform .3s var(--ease)}
.pill:hover{color:inherit;transform:translateY(-2px);box-shadow:0 1px 0 var(--line),0 22px 50px -20px rgba(21,24,27,.3)}
.pill__text{flex:1;min-width:0;font-size:clamp(15px,1.4vw,18px);color:var(--muted)}
.pill__word{display:inline-block;color:var(--ink);font-weight:500}
.pill__btn{height:48px;padding:0 20px;border-radius:999px;background:var(--accent);color:var(--bg);display:flex;align-items:center;gap:10px;font-weight:500;font-size:15px;white-space:nowrap}
.hero__facts{display:flex;gap:10px 24px;flex-wrap:wrap;justify-content:center;margin-top:24px;color:var(--faint);letter-spacing:.06em}

/* marquee */
.marquee{border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;padding:16px 0}
.marquee__track{display:flex;width:max-content;animation:marquee 60s linear infinite}
@keyframes marquee{to{transform:translateX(-50%)}}
.marquee span{display:flex;align-items:center;gap:24px;padding-right:24px;font-family:var(--serif);font-size:clamp(19px,2vw,24px);font-style:italic;color:var(--muted);white-space:nowrap}
.marquee span::after{content:"";width:5px;height:5px;border-radius:50%;background:var(--accent)}

/* pillars */
.pillars{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));border-bottom:1px solid var(--line)}
.pillar{padding:clamp(32px,4vw,44px) var(--pad);border-right:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:-1px;display:flex;flex-direction:column;gap:12px}
.pillar__n{color:var(--accent-text);letter-spacing:.12em}
.pillar__t{font-family:var(--serif);font-size:clamp(28px,3vw,34px);letter-spacing:-.02em;line-height:1.1}
.pillar__b{color:var(--muted);font-size:15px;text-wrap:pretty}

/* sections */
.section{padding:clamp(72px,10vw,150px) var(--pad)}
.h2{font-family:var(--serif);font-weight:300;font-size:clamp(36px,5vw,76px);line-height:1.02;letter-spacing:-.03em;text-wrap:balance}

/* royalties */
.royalties{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:clamp(40px,6vw,100px);align-items:center}
.big90{display:flex;align-items:flex-start;line-height:.82;font-family:var(--serif);font-weight:300}
.big90__n{font-size:clamp(140px,20vw,300px);letter-spacing:-.06em}
.big90__p{font-size:clamp(50px,6vw,90px);color:var(--accent);margin-top:.2em}
.royalties h2{font-family:var(--serif);font-weight:400;font-size:clamp(28px,3vw,44px);line-height:1.1;letter-spacing:-.02em;margin:24px 0 16px;text-wrap:balance}
.royalties p{font-size:17px;color:var(--muted);max-width:480px;text-wrap:pretty}
.calc{border:1px solid var(--line);border-radius:20px;background:var(--white);overflow:hidden;min-width:0}
.calc__head{padding:24px clamp(20px,3vw,32px);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}
.calc__head .mono{color:var(--faint);letter-spacing:.12em}
.calc__gross{font-family:var(--serif);font-size:clamp(34px,4vw,44px);letter-spacing:-.02em}
.calc__body{padding:24px clamp(20px,3vw,32px) 28px;display:flex;flex-direction:column;gap:24px}
.calc input[type=range]{width:100%;margin:0;height:28px;cursor:pointer;accent-color:var(--accent)}
.bar{display:flex;height:10px;border-radius:999px;overflow:hidden;gap:3px}
.bar__you{width:0;background:var(--accent);border-radius:999px;transition:width 1.6s var(--ease)}
.bar.in .bar__you{width:90%}
.bar__us{flex:1;background:var(--line2);border-radius:999px}
.split{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));gap:1px;background:var(--line);border-radius:14px;overflow:hidden}
.split>div{background:var(--white);padding:16px 18px;display:flex;flex-direction:column;gap:4px}
.split .mono{font-size:11px;letter-spacing:.12em}
.split__v{font-family:var(--serif);font-size:30px;letter-spacing:-.02em}
.calc__note{font-size:14px;color:var(--faint)}

/* carry */
.carry{padding-top:0}
.carry__head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:40px}
.carry__head .h2{max-width:760px}
.carry__head p{font-size:17px;max-width:380px;color:var(--muted);text-wrap:pretty}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}
.card{padding:clamp(26px,3vw,36px) clamp(20px,3vw,32px) clamp(30px,3vw,40px);border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:12px;transition:background .3s}
.card:hover{background:var(--accent-soft)}
.card__n{font-family:var(--mono);font-size:12px;color:var(--faint)}
.card__t{font-family:var(--serif);font-size:clamp(24px,2.4vw,28px);letter-spacing:-.015em;line-height:1.15}
.card__b{font-size:15px;color:var(--muted);text-wrap:pretty}

/* process */
.process{background:var(--surface)}
.process .h2{max-width:820px;margin-bottom:clamp(36px,5vw,64px)}
.steps{border-top:1px solid var(--line2)}
.step{display:grid;grid-template-columns:120px minmax(0,1fr) minmax(0,1.2fr);gap:32px;align-items:baseline;padding:clamp(24px,3vw,36px) 0;border-bottom:1px solid var(--line2)}
.step__n{font-family:var(--mono);font-size:14px;color:var(--accent-text)}
.step__t{font-family:var(--serif);font-size:clamp(26px,2.6vw,38px);letter-spacing:-.02em;line-height:1.1}
.step__b{font-size:17px;color:var(--muted);text-wrap:pretty}

/* voices */
.voices{display:flex;flex-direction:column;gap:clamp(32px,4vw,48px)}
.quote{min-height:260px}
.quote__q{font-family:var(--serif);font-weight:300;font-style:italic;font-size:clamp(28px,4vw,60px);line-height:1.14;letter-spacing:-.025em;max-width:1000px;text-wrap:balance}
.quote__by{margin-top:32px;display:flex;gap:12px;align-items:baseline;flex-wrap:wrap}
.quote__n{font-weight:500;font-size:17px}
.quote__r{color:var(--faint);letter-spacing:.08em}
.dots{display:flex;gap:8px}
.dots button{width:44px;height:44px;border-radius:50%;border:1px solid var(--line2);background:transparent;color:var(--ink);font-family:var(--mono);font-size:12px;cursor:pointer;transition:background .3s,color .3s}
.dots button[aria-pressed="true"]{background:var(--accent);color:var(--bg);border-color:var(--accent)}

/* cta */
.cta{margin:0 clamp(10px,2vw,24px);border-radius:clamp(20px,3vw,28px);padding:clamp(80px,11vw,160px) var(--pad);background:var(--ink);color:var(--bg);display:flex;flex-direction:column;align-items:center;text-align:center;position:relative;overflow:hidden}
.cta>*{position:relative}
.cta .ring{position:absolute;left:50%;top:50%;border-radius:50%;border:1px solid rgba(246,246,243,.1);pointer-events:none;animation:ring 6s ease-in-out infinite}
.cta .ring--1{width:900px;height:900px;margin:-450px 0 0 -450px}
.cta .ring--2{width:600px;height:600px;margin:-300px 0 0 -300px;animation-delay:1.5s}
@keyframes ring{0%,100%{transform:scale(.92);opacity:.4}50%{transform:scale(1.08);opacity:1}}
.cta h2{font-family:var(--serif);font-weight:300;font-size:clamp(44px,7vw,108px);line-height:1;letter-spacing:-.035em;margin-bottom:24px;max-width:1000px;text-wrap:balance}
.cta h2 em{color:var(--accent-ink)}
.cta p{font-size:18px;max-width:540px;margin-bottom:40px;color:rgba(246,246,243,.75);text-wrap:pretty}
.btn-mint{background:var(--accent-ink);color:var(--ink);text-decoration:none;font-weight:500;font-size:17px;padding:18px 34px;border-radius:999px;display:flex;gap:12px;align-items:center;transition:background .25s}
.btn-mint:hover{background:var(--bg);color:var(--ink)}
.cta__note{margin-top:20px;font-family:var(--mono);font-size:12px;letter-spacing:.08em;color:rgba(246,246,243,.6)}

/* footer */
.footer{padding:clamp(48px,6vw,64px) var(--pad) 32px}
.footer__top{display:flex;justify-content:space-between;align-items:flex-start;gap:40px;flex-wrap:wrap;padding-bottom:48px;border-bottom:1px solid var(--line)}
.footer__about{display:flex;flex-direction:column;gap:12px;max-width:320px}
.footer__about .brand__name{font-size:30px;letter-spacing:-.02em}
.footer__about span:last-child{font-size:15px;color:var(--muted)}
.footer__cols{display:flex;flex-wrap:wrap;gap:32px clamp(40px,6vw,88px);font-size:15px}
.footer__col{display:flex;flex-direction:column;gap:10px}
.footer__col .mono{font-size:11px;color:var(--faint)}
.footer__col a{color:inherit;text-decoration:none}
.footer__col a:hover{color:var(--accent)}
.footer__bottom{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:24px;font-family:var(--mono);font-size:12px;color:var(--faint)}

/* apply */
.apply{padding:clamp(48px,7vw,100px) var(--pad) clamp(72px,9vw,130px);display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:clamp(40px,6vw,96px);align-items:start}
.apply__intro{min-width:0;display:flex;flex-direction:column;gap:28px}
.badge{align-self:flex-start;border:1px solid rgba(31,111,115,.4);color:var(--accent-text);border-radius:999px;padding:9px 18px;letter-spacing:.16em}
.apply h1{font-family:var(--serif);font-weight:300;font-size:clamp(48px,6.4vw,96px);line-height:.98;letter-spacing:-.035em;text-wrap:balance}
.apply__lead{font-size:clamp(17px,1.5vw,20px);color:var(--muted);max-width:520px;text-wrap:pretty}
.benefits{display:flex;flex-direction:column;gap:22px;margin-top:8px}
.benefit{display:flex;gap:18px;align-items:flex-start}
.benefit__i{flex:none;width:52px;height:52px;border-radius:14px;background:var(--accent-soft);color:var(--accent-text);display:grid;place-items:center;font-family:var(--mono);font-size:13px;font-weight:500}
.benefit__t{display:block;font-family:var(--serif);font-size:24px;letter-spacing:-.01em;line-height:1.15;margin-bottom:4px}
.benefit__b{font-size:15px;color:var(--muted)}
.panel{min-width:0;background:var(--white);border:1.5px solid var(--ink);border-radius:22px;padding:clamp(24px,4vw,48px)}
.form{display:flex;flex-direction:column;gap:26px}
.row2{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:20px}
.field{display:flex;flex-direction:column;gap:10px}
.label{font-family:var(--mono);font-size:11px;letter-spacing:.16em;color:var(--muted)}
.label i{font-style:normal;color:rgba(21,24,27,.4)}
.input{width:100%;font:inherit;font-size:16px;padding:15px 18px;border-radius:14px;border:1px solid rgba(21,24,27,.14);background:var(--bg);color:var(--ink);outline:none;transition:border-color .2s,background .2s}
.input:focus{border-color:var(--accent);background:var(--white)}
.input::placeholder{color:rgba(21,24,27,.4)}
textarea.input{resize:vertical;min-height:150px}
.field.has-error .input{border-color:rgba(163,57,44,.7)}
.err{font-size:13px;color:var(--error);display:none}
.has-error .err{display:block}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{min-height:44px;padding:0 18px;border-radius:999px;font-size:15px;font-weight:500;cursor:pointer;border:1px solid rgba(21,24,27,.18);background:var(--white);color:var(--ink);transition:background .2s,color .2s,border-color .2s}
.chip:hover{border-color:var(--ink)}
.chip[aria-pressed="true"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.submit{margin-top:8px;width:100%;min-height:64px;border:0;border-radius:16px;background:var(--accent);color:var(--bg);font-size:19px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:12px;transition:background .25s}
.submit:hover{background:var(--ink)}
.form__note{font-size:13px;color:var(--faint);text-align:center}
.done{display:flex;flex-direction:column;gap:20px;padding:clamp(12px,3vw,32px) 0}
.done__tick{width:64px;height:64px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font-size:28px}
.done__h{font-family:var(--serif);font-weight:300;font-size:clamp(36px,4vw,52px);line-height:1.05;letter-spacing:-.025em}
.done__p{font-size:17px;color:var(--muted);text-wrap:pretty}
.done__p b{color:var(--ink);font-weight:500}
.linkbtn{border:0;background:none;padding:0;color:var(--accent);text-decoration:underline;cursor:pointer;font-size:inherit}
.done__actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px}
.btn-line{border:1px solid var(--line2);background:transparent;color:var(--ink);text-decoration:none;padding:14px 24px;border-radius:999px;font-size:15px;font-weight:500;cursor:pointer;transition:background .2s}
.btn-line:hover{background:var(--surface);color:var(--ink)}
.done__actions .btn-dark{padding:14px 24px;font-size:15px}
.fallback{border:1px solid rgba(21,24,27,.14);background:var(--bg);border-radius:18px;padding:clamp(18px,3vw,28px);display:flex;flex-direction:column;gap:18px}
.fallback__k{font-size:11px;letter-spacing:.16em;color:var(--error)}
.fallback__h{font-family:var(--serif);font-size:26px;letter-spacing:-.015em;line-height:1.15}
.fallback__p{font-size:15px;color:var(--muted)}
.mpart{display:flex;flex-direction:column;gap:8px}
.mpart__top{display:flex;justify-content:space-between;align-items:center;gap:12px}
.mpart__top .mono{font-size:11px;letter-spacing:.16em;color:rgba(21,24,27,.6)}
.copy{min-height:36px;padding:0 14px;border-radius:999px;border:1px solid rgba(21,24,27,.18);background:var(--white);color:var(--ink);font-size:13px;font-weight:500;cursor:pointer}
.copy.ok{background:var(--accent);color:var(--bg);border-color:var(--accent)}
.mpart__v{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:12px 14px;font-family:var(--mono);font-size:13px;line-height:1.6;white-space:pre-wrap;word-break:break-word;max-height:260px;overflow:auto}
.fallback__btns{display:flex;gap:10px;flex-wrap:wrap}
.fallback__btns a{padding:12px 20px;font-size:14px}

/* contact */
.contact{padding:clamp(56px,8vw,120px) var(--pad) clamp(72px,9vw,130px);display:flex;flex-direction:column;align-items:center;text-align:center}
.contact h1{font-family:var(--serif);font-weight:300;font-size:clamp(56px,9vw,136px);line-height:.95;letter-spacing:-.04em;margin-bottom:24px}
.contact__lead{font-size:clamp(17px,1.6vw,21px);color:var(--muted);max-width:600px;margin-bottom:clamp(40px,6vw,72px);text-wrap:pretty}
.ccard{width:100%;max-width:680px;background:var(--white);border:1.5px solid var(--ink);border-radius:22px;padding:clamp(28px,5vw,64px);text-align:left}
.ccard__row{display:flex;flex-direction:column;gap:10px;padding:28px 0;border-bottom:1px solid rgba(21,24,27,.1)}
.ccard__row:first-child{padding-top:0}.ccard__row:last-child{padding-bottom:0;border-bottom:0}
.ccard .mono{font-size:11px;letter-spacing:.16em;color:rgba(21,24,27,.6)}
.ccard__entity{font-family:var(--serif);font-size:clamp(30px,3.6vw,42px);letter-spacing:-.02em;line-height:1.1}
.ccard__v{font-size:clamp(17px,1.6vw,20px)}
.ccard a{color:var(--accent);text-decoration:none;word-break:break-word}
.ccard a:hover{text-decoration:underline}
.contact__more{margin-top:40px;display:flex;gap:14px;align-items:center;flex-wrap:wrap;justify-content:center;color:var(--muted)}
.contact__more a{font-weight:500;text-decoration:none}

[hidden]{display:none!important}

@media (max-width:859px){
  .nav{display:none}
  .burger{display:flex}
  .menu-open .mnav{display:flex}
  .header__bar{gap:10px}
  .step{grid-template-columns:minmax(0,1fr);gap:10px}
}
@media (max-width:639px){
  .hide-sm{display:none}
  .header .btn-dark{font-size:13px;padding:9px 14px}
}
@media (max-width:399px){
  .apply-long{display:none}
}
@media (min-width:400px){
  .apply-short{display:none}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  .js .reveal{opacity:1;transform:none;filter:none}
}
