@font-face{font-family:'DM Sans';src:url('/assets/dm-sans-variable.ttf') format('truetype');font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url('/assets/inter-400.ttf');font-weight:400;font-display:swap}@font-face{font-family:Inter;src:url('/assets/inter-500.ttf');font-weight:500;font-display:swap}@font-face{font-family:Inter;src:url('/assets/inter-600.ttf');font-weight:600;font-display:swap}
:root{--canvas:#000;--surface:#141416;--elevated:#1c1c1e;--text:#f5f5f7;--secondary:#a7a7ad;--border:#38383c;--focus:#8ac6ff;--success:#b6e3c4;--control-radius:999px;--card-radius:20px;--gutter:90px;font-size:16px;font-optical-sizing:none;font-variation-settings:'opsz' 14}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--canvas);color:var(--text);font:400 1.0625rem/1.588235 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}p,h1,h2,h3,figure,ul{margin:0}p{color:var(--secondary)}h1{font-size:5.75rem;line-height:1.043478;font-weight:500;letter-spacing:-.045em}h2{font-size:3rem;line-height:1.125;font-weight:500;letter-spacing:-.03em}h3{font-size:1.5rem;line-height:1.333333;font-weight:500}hr{border:0;background:var(--border);height:1px;width:100%;margin:0}.container{width:calc(100% - var(--gutter)*2);max-width:1260px;margin-inline:auto}.section{padding-block:96px}.stack{display:flex;flex-direction:column;align-items:flex-start;gap:32px;min-width:0}.stack>*{max-width:100%}.surface{background:var(--surface)}.eyebrow{font-size:.875rem;line-height:1.428571;font-weight:500;color:var(--focus)}.muted,.small{color:var(--secondary)}.small{font-size:.875rem;line-height:1.5}.lead{font-size:1.25rem;line-height:1.5}.measure{max-width:800px}.measure-wide{max-width:1040px}.bright{color:var(--text)}
.header{display:flex;justify-content:space-between;align-items:center;padding-block:28px;gap:32px}.logo{display:flex;align-items:center;min-height:44px;width:160px;flex-shrink:0}.logo img{display:block;width:160px;height:auto}nav{display:flex;gap:32px;align-items:center;font-size:.875rem;line-height:1.5}nav a{display:flex;align-items:center;min-height:44px}nav a:hover{text-decoration:underline;text-underline-offset:5px}.portfolio-return{font-size:1rem;color:var(--secondary);font-weight:500}.mobile-label{display:none}.action{display:flex;justify-content:center;align-items:center;min-height:56px;border-radius:var(--control-radius);padding:15px 16px;font-size:1.0625rem;line-height:1.411765;font-weight:500;text-align:center}.primary{color:#000;background:linear-gradient(90deg,#0a84ff,#3fa9ff);border:0}.secondary{background:var(--elevated);border:1px solid var(--border)}a.action:hover,button:hover{filter:brightness(.94)}a.action:active,button:active{filter:brightness(.88)}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}section,main{scroll-margin-top:24px}main:focus{outline:none}.skip{position:absolute;left:24px;top:12px;padding:12px;background:var(--elevated);z-index:10;transform:translateY(-200%);min-height:48px}.skip:focus{transform:none}
.hero-grid{display:flex;flex-direction:column;align-items:center;gap:64px;width:100%}.hero-copy{width:100%;align-items:center;text-align:center;gap:24px}.hero-copy h1{max-width:1100px}.hero-copy .lead{max-width:740px}.hero-copy .small{max-width:1100px}.actions{display:flex;justify-content:center;gap:16px;width:100%;max-width:580px}.actions .primary{width:244px}.actions .secondary{width:268px}.product-stage{width:100%;background:#0e0e10;border:1px solid #242428;border-radius:20px;padding:40px;display:flex;justify-content:center;align-items:center;gap:40px}.stage-copy{width:250px;flex-shrink:0;font-size:1.75rem;line-height:1.285714;font-weight:500;color:#a6a6ab}
.preview{font-family:Inter,Arial,sans-serif;font-variation-settings:normal;width:390px;max-width:100%;flex:none;display:flex;flex-direction:column;gap:16px}.preview .eyebrow{font-size:.75rem;line-height:1.5;font-weight:600}.preview figcaption{font-size:.75rem;line-height:1.5;font-weight:600}.phone{background:#000;width:100%;border:1px solid var(--border);border-radius:36px;padding:24px 20px;display:flex;flex-direction:column;gap:20px}.preview-controls{display:flex;justify-content:space-between;font-size:.875rem;line-height:1.5}.preview-controls span:nth-child(2){color:var(--secondary)}.progress{display:flex;gap:8px}.progress i{display:block;flex:1;height:6px;background:var(--border);border-radius:3px}.progress i:first-child{background:#0a84ff}.pattern{padding:32px;min-height:430px;background:var(--surface);border-radius:24px;display:flex;flex-direction:column;gap:24px}.pattern .small{margin-top:8px}.preview-title{font-size:1.4375rem;line-height:1.391304;font-weight:600;color:var(--text)}.drawn{pointer-events:none;border-radius:16px;font-weight:600}
.grid{display:grid;width:100%;gap:24px}.three{grid-template-columns:repeat(3,minmax(0,1fr))}.two{grid-template-columns:repeat(2,minmax(0,1fr));gap:64px}.features article{padding:32px 24px;border-radius:20px;display:flex;flex-direction:column;gap:16px}.steps{gap:48px}.steps article{display:flex;flex-direction:column;gap:20px}.steps .eyebrow{padding-bottom:20px;border-bottom:1px solid var(--border)}#the-app .stack{gap:40px}#how-it-works .stack{gap:48px}.sample-grid{display:grid;grid-template-columns:minmax(0,500fr) minmax(0,620fr);gap:80px;width:100%;align-items:start}.sample-intro{gap:24px}.quiz{background:var(--canvas);border-radius:20px;padding:40px;gap:24px}.japanese{width:100%;text-align:center;padding-top:24px}ruby{ruby-align:center;font-size:4.5rem;line-height:1.083333;font-weight:500;font-family:'DM Sans','Hiragino Sans','Yu Gothic',sans-serif}rt{font-size:1.0625rem;font-weight:400;line-height:1.588235;color:var(--secondary);letter-spacing:0}.answers{display:flex;gap:12px;width:100%}.answers button{flex:1;min-width:0}.answer.correct{border:2px solid var(--success)}.answer.retry{border:2px solid var(--focus)}.correct-text{color:var(--success)}[hidden]{display:none!important}.teaser .action{min-width:350px}.footer{gap:24px}.footer nav{gap:24px;flex-wrap:wrap}.engineering-hero .stack{gap:28px}.engineering-hero h1{max-width:1100px}.technologies{display:flex;flex-wrap:wrap;gap:32px;list-style:none;padding:0;font-size:.875rem;line-height:1.5}.deep .stack{gap:40px}.stories .stack{gap:20px}.flow{background:var(--surface);border-radius:20px;padding:32px;gap:24px!important;width:100%}.flow .grid{gap:32px}.flow .grid .stack{gap:12px}.flow h3,.invariants h3{font-size:1.25rem;line-height:1.3}.invariants{gap:64px}.invariants .stack{gap:16px}.receipt{color:var(--text);font-size:1.5rem;line-height:1.333333;font-weight:500}.receipt-section .action{min-width:244px}
@media(max-width:1199px){:root{--gutter:40px}h1{font-size:4rem;line-height:1.0625}.grid,.sample-grid{grid-template-columns:1fr;gap:40px}.stage-copy{display:none}.product-stage{flex-direction:column}.actions{flex-direction:column;max-width:none}.actions .action{width:100%}.hero-copy .lead{max-width:740px}.answers{flex-direction:column}.features article{padding:24px}.invariants{gap:32px}.teaser .action,.receipt-section .action{width:100%;min-width:0}.flow .grid{gap:24px}.header{gap:24px}.header nav{gap:24px}}
@media(max-width:639px){:root{--gutter:24px}h1{font-size:clamp(2rem,11.282vw,2.75rem);line-height:1.090909;letter-spacing:-.03em}h2{font-size:2rem;line-height:1.1875}.desktop-break{display:none}.header{flex-direction:column;align-items:flex-start;padding-block:24px;gap:12px}.header .wide-nav{display:none}.desktop-label{display:none}.mobile-label{display:inline}.header nav{gap:24px;min-height:44px}.section{padding-block:56px}.hero-grid{gap:40px}.product-stage{padding:24px 0}.actions{gap:24px}.phone{padding:24px 16px}.pattern{padding:28px;gap:21px;min-height:377px}.preview-title{font-size:1.25rem;line-height:1.4}.quiz{padding:24px;gap:20px}.sample-intro{gap:24px}.technologies{gap:16px}.flow{padding:24px}.receipt{font-size:1.25rem;line-height:1.4}.stories{gap:32px}.deep .stack{gap:32px}.flow .grid .stack{gap:12px}#the-app .stack{gap:40px}#how-it-works .stack{gap:48px}}
@media(max-width:359px){:root{--gutter:20px}.pattern{padding:20px}.preview-title{font-size:1.125rem}.hero-copy .eyebrow{font-size:.8125rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
/* Reflow navigation and long editorial words under text enlargement. */
.header,nav{flex-wrap:wrap}.header nav{max-width:100%}h1,h2,h3{overflow-wrap:break-word}
body,button{font-optical-sizing:none;font-variation-settings:'opsz' 14}
@media(max-width:639px){.hero-copy h1{font-size:clamp(2rem,10.769vw,2.625rem)}.hero-copy h1 .desktop-break{display:initial}}

.legal .container{max-width:720px;gap:24px;overflow-wrap:anywhere}.legal h1{font-size:clamp(2rem,5vw,3.5rem);line-height:1.12;letter-spacing:-.03em}.legal h2{font-size:1.5rem;line-height:1.3;letter-spacing:-.015em;margin-top:24px}.legal p,.legal li{line-height:1.75}.legal ul{padding-left:24px;color:var(--secondary)}.legal li+li{margin-top:12px}
