.hero{position:relative;z-index:2;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:0 var(--gutter);text-align:center}.axis{position:absolute;left:0;right:0;top:50%;height:1px;background:var(--hair);transform:scaleX(0);transform-origin:left;z-index:0}.hero-meta{position:absolute;top:5.5rem;left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;font-family:var(--mono);font-size:.75rem;letter-spacing:.08em;color:var(--graphite)}.hero-meta .sq{color:var(--signal)}.hero-stage{position:relative;z-index:1;width:100%}.hero-eq{display:flex;justify-content:center;align-items:baseline;font-weight:600;letter-spacing:-.02em;line-height:1;font-size:clamp(1.5rem,4.6vw,3.4rem);color:var(--ink)}.hero-eq .eq{color:var(--signal);margin:0 .5em;font-weight:640}.hero-eq .term{display:inline-block}.hero-h{margin-top:clamp(1.2rem,3.5vh,2.6rem);font-weight:680;letter-spacing:-.035em;line-height:.94;font-size:clamp(3.2rem,13vw,12rem)}.hero-h .mask{display:block;overflow:hidden;padding-bottom:.18em;margin-bottom:-.18em}.hero-h .line{display:inline-block}.hero-h .line--solved{position:relative}.hero-h .dot{display:inline-block;color:var(--signal)}.js-anim .hero-h .dot{color:var(--ink)}.hero-sub{margin:clamp(1.6rem,4vh,2.6rem) auto 0;max-width:52ch;color:var(--graphite);font-size:clamp(1rem,1.25vw,1.15rem);line-height:1.55}.hero-foot{position:absolute;bottom:1.5rem;left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;align-items:flex-end;font-family:var(--mono);font-size:.68rem;letter-spacing:.08em;color:var(--graphite)}.scroll-hint{display:flex;align-items:center;gap:.6rem;font-family:var(--sans);font-size:.85rem;letter-spacing:0;text-transform:none}.js-anim .axis{transform:scaleX(0)}.js-anim .hero-eq .term--l{opacity:0;transform:translate(-.6em)}.js-anim .hero-eq .term--r{opacity:0;transform:translate(.6em)}.js-anim .hero-eq .eq{opacity:0;transform:scale(.55)}.js-anim .hero-h .line{transform:translateY(115%)}.js-anim .hero-sub>span{opacity:0}.wedge{position:relative;z-index:2;padding:clamp(7rem,16vh,13rem) var(--gutter);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,3fr);gap:var(--gutter)}@media(max-width:900px){.wedge{grid-template-columns:1fr;gap:2.5rem}}.notes{font-family:var(--mono);font-size:.7rem;letter-spacing:.06em;color:var(--graphite);line-height:2}.notes b{color:var(--signal);font-weight:400}.wedge-h{font-size:clamp(2rem,5vw,4.6rem);font-weight:640;letter-spacing:-.03em;line-height:1.08;max-width:16ch}.wedge-sub{margin-top:2.25rem;color:var(--graphite);max-width:54ch;font-size:clamp(1rem,1.2vw,1.15rem);line-height:1.6}.proofs{position:relative;z-index:2;padding:clamp(4rem,9vh,7rem) var(--gutter) clamp(5rem,11vh,9rem)}.proofs-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:1rem}.proofs-count{font-family:var(--mono);font-size:.68rem;letter-spacing:.06em;color:var(--graphite)}.case{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2rem,5vw,5.5rem);align-items:center;padding:clamp(3rem,7vh,6rem) 0;border-top:1px solid var(--hair)}.case-idx{font-family:var(--mono);font-size:.72rem;letter-spacing:.06em;color:var(--signal)}.case-idx-total{color:var(--graphite)}.case-status{margin-left:.9rem;padding:.2rem .5rem;border:1px solid var(--hair);color:var(--graphite);font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.case-name{font-size:clamp(2rem,4.6vw,3.8rem);font-weight:640;letter-spacing:-.03em;line-height:1;margin-top:1rem}.case-name a{color:inherit;text-decoration:none;transition:color .3s}@media(hover:hover){.case-name a:hover{color:var(--signal)}}.case-tags{font-family:var(--mono);font-size:.68rem;letter-spacing:.05em;color:var(--graphite);margin-top:1rem}.case-desc{color:var(--graphite);font-size:clamp(1rem,1.2vw,1.12rem);line-height:1.6;margin-top:1.4rem;max-width:42ch}.case-actions{display:flex;flex-wrap:wrap;gap:1.25rem 2.25rem;margin-top:1.9rem}.case-act{display:inline-flex;align-items:center;gap:.5rem;position:relative;padding:.5rem 0;min-height:44px;font-family:var(--sans);font-size:.98rem;font-weight:500;letter-spacing:-.005em;color:var(--ink)}.case-act .ar{width:1em;height:1em;vertical-align:middle;color:var(--signal)}.case-act:after{content:"";position:absolute;left:0;bottom:.55rem;width:100%;height:1px;background:var(--signal);transform:scaleX(0);transform-origin:right;transition:transform .4s cubic-bezier(.65,0,.35,1)}.case-act:hover:after{transform:scaleX(1);transform-origin:left}.case-act--web{color:var(--graphite)}.case-act--web:after{background:var(--hair);transform:scaleX(1);transform-origin:left}@media(hover:hover){.case-act--web:hover{color:var(--ink)}.case-act--web:hover:after{background:var(--signal)}}.case-act--web .ar{transition:transform .35s cubic-bezier(.65,0,.35,1)}@media(hover:hover){.case-act--web:hover .ar{transform:translate(.15em,-.15em)}}.case-media{position:relative;display:block;overflow:hidden;aspect-ratio:4/3;border:1px solid var(--hair);background:#e9e6de}.case-media img{width:100%;height:100%;object-fit:cover;display:block}@media(hover:hover){.case-media img{transition:transform .6s cubic-bezier(.65,0,.35,1)}a.case-media:hover img{transform:scale(1.04)}}@media(max-width:820px){.case{grid-template-columns:1fr;gap:1.6rem;padding:clamp(2.5rem,6vh,4rem) 0}.case-media{order:-1;aspect-ratio:3/2}.case-desc{max-width:none}}.case-cta{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:1rem;padding:clamp(2.5rem,5vh,3.5rem) 0;border-top:1px solid var(--hair);border-bottom:1px solid var(--hair)}.cc-label{font-family:var(--mono);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--graphite)}.cc-title{font-size:clamp(2rem,5vw,3.8rem);font-weight:640;letter-spacing:-.03em;line-height:1;transition:color .35s;display:inline-flex;align-items:center;gap:.35em}.cc-title .ar{width:.72em;height:.72em;color:var(--signal);transition:transform .35s cubic-bezier(.65,0,.35,1)}.case-cta:hover .cc-title{color:var(--signal)}@media(hover:hover){.case-cta:hover .cc-title .ar{transform:translate(.12em,-.12em)}}.sides{position:relative;z-index:2;padding:clamp(6rem,13vh,10rem) var(--gutter)}.sides-eq{margin-top:3.5rem;display:grid;grid-template-columns:1fr auto 1fr;align-items:start;gap:clamp(2rem,5vw,5rem)}.side-h{font-size:clamp(1.4rem,2.6vw,2.2rem);font-weight:620;letter-spacing:-.02em;padding-bottom:1.4rem;margin-bottom:1.4rem;border-bottom:1px solid var(--hair)}.side ul{list-style:none}.side li{padding:1.1rem 0;border-bottom:1px solid var(--hair)}.cap-name{display:block;font-size:clamp(1.05rem,1.5vw,1.35rem);color:var(--ink);letter-spacing:-.01em}.cap-desc{display:block;margin-top:.35rem;max-width:36ch;font-size:clamp(.85rem,1vw,.95rem);color:var(--graphite);line-height:1.45}.sides-op{font-size:clamp(2.5rem,6vw,5rem);font-weight:680;color:var(--signal);line-height:1;align-self:center}.sides-sum{margin-top:2.75rem;font-size:clamp(1.2rem,2.4vw,2rem);font-weight:600;letter-spacing:-.02em}@media(max-width:760px){.sides-eq{grid-template-columns:1fr;gap:1.5rem}.sides-op{justify-self:start;font-size:2.4rem}}.cta{position:relative;z-index:2;padding:clamp(7rem,18vh,15rem) var(--gutter);text-align:center}.qed{font-weight:680;letter-spacing:-.03em;font-size:clamp(4rem,14vw,14rem);line-height:1;display:inline-block}.qed span{color:var(--signal)}.cta .mask{display:inline-block;overflow:hidden;vertical-align:top}.cta .kicker{display:block;margin:2.5rem 0 1.5rem;font-family:var(--sans);font-size:clamp(1rem,1.2vw,1.15rem);letter-spacing:-.005em;color:var(--graphite)}.cta-link{display:inline-block;position:relative;font-size:clamp(1.6rem,4.5vw,4rem);font-weight:600;letter-spacing:-.015em;line-height:1.1;padding:.4rem .8rem}.cta-link .ul{position:absolute;left:.8rem;right:.8rem;bottom:.25rem;height:3px;background:var(--signal);transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.65,0,.35,1)}.cta-link:hover .ul{transform:scaleX(1)}.cta-extra{margin-top:3rem}.cta-more{display:inline-flex;align-items:center;gap:.55rem;font-family:var(--sans);font-size:.98rem;letter-spacing:-.005em;color:var(--graphite);border:1px solid var(--hair);padding:.85rem 1.4rem;transition:color .3s,border-color .3s}.cta-more .ar{width:1em;height:1em;color:var(--signal);transition:transform .35s cubic-bezier(.65,0,.35,1)}@media(hover:hover){.cta-more:hover{color:var(--ink);border-color:var(--signal)}.cta-more:hover .ar{transform:translate(.2em)}}
