/* One content rail, with smaller reading measures inside it. */
:root{--rail:72rem;--edge:clamp(1.25rem,4vw,3.5rem);--frame:min(var(--rail),calc(100% - 2 * var(--edge)));--block:clamp(2.75rem,5.6vw,5rem);--ink:var(--text);--action:#d6ff3f}
.home-frame > section:not(.studio-close),
.home-page .footer-grid,.home-page .footer-bottom,.blog-page main,.legal-page main,.study,body>.legal-foot{width:var(--frame);max-width:var(--rail);margin-inline:auto;padding-inline:0}
.nav,.nav.is-scrolled{padding-inline:max(var(--edge),calc((100% - var(--rail))/2));background:var(--bg);border-bottom:1px solid var(--line);backdrop-filter:none}
.nav.is-hidden{transform:none}
.nav-links{gap:clamp(.7rem,1.5vw,1.5rem)}
.nav-links a,.menu-links a{text-decoration:none}
.nav-links a[aria-current],.nav-links a.is-active,.menu-links a[aria-current],.legal-foot a[aria-current]{color:var(--text);text-decoration:underline;text-decoration-color:var(--text);text-decoration-thickness:2px;text-underline-offset:.5em}
.menu{padding-top:calc(var(--nav-h) + 1.5rem);padding-bottom:2rem;overflow-y:auto;justify-content:flex-start;gap:1.5rem}
.menu-links{row-gap:.65rem;flex:none;margin-block:auto}
.menu-links a[aria-current]{text-underline-offset:.12em}
.menu-foot{position:static;flex:none}
@media(max-width:720px){.menu-links{margin-block:0}.menu-foot{margin-top:auto}}
.home-page .nav-cta[aria-current] .btn-text{text-decoration:underline;text-underline-offset:.25em}
.home-frame [id]{scroll-margin-top:calc(var(--nav-h) + 1rem)}
.home-frame .founder-intro{padding:calc(var(--nav-h) + var(--block)) 0 var(--block);border:0}
.home-frame .founder-layout{grid-template-columns:minmax(0,1fr) minmax(240px,32%);gap:clamp(2rem,5.5vw,5rem)}
.home-frame .founder-picture{width:100%}
.home-frame .founder-picture img{aspect-ratio:1/.95;object-position:50% 38%}
.home-frame .founder-words h1{font-size:clamp(3.25rem,6.35vw,5.6rem);letter-spacing:-.055em}
.home-frame .founder-words>p{margin:1.4rem 0 1.55rem;max-width:49ch}
.home-block{padding:var(--block) 0;border-top:1px solid var(--line)}
.home-block h2,.case-faq h2{font:650 clamp(2rem,3.6vw,3.35rem)/1.06 var(--font-display);letter-spacing:-.045em;text-wrap:balance;text-transform:none}
.home-block h3{font:630 clamp(1.13rem,1.6vw,1.5rem)/1.24 var(--font-display);letter-spacing:-.025em}
.home-block p{line-height:1.58;color:var(--muted)}
.home-split,.home-contact{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.85fr);gap:clamp(2rem,6vw,5rem);align-items:start}
.home-split>h2,.home-contact>h2{max-width:15ch}
.project-spread{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.25rem,3vw,2.5rem);margin-top:clamp(1.6rem,3vw,2.5rem)}
.project-feature{display:block;color:var(--text);min-width:0}.project-feature:hover h3,.project-more a:hover strong,.offer-lines a:hover h3{text-decoration:underline;text-underline-offset:.18em}
.project-image{height:clamp(13.5rem,22vw,18rem);display:grid;place-items:center;overflow:hidden;padding:1.1rem;background:#e8e4d9}
.project-feature:first-child .project-image{background:#dce7ee}
.project-image img{height:100%;width:100%;object-fit:contain;min-height:0}
.project-name{display:flex;align-items:baseline;justify-content:space-between;margin:.95rem 0 .25rem}
.project-feature p{max-width:49ch}
.project-more,.offer-lines,.process-lines{margin:0;padding:0;list-style:none}
.project-more{display:grid;grid-template-columns:1fr 1fr;column-gap:clamp(1.25rem,3vw,2.5rem);margin-top:1.65rem}
.project-more a{padding:.9rem 0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:.15rem 1rem}
.project-more strong{font-size:1.06rem}.project-more span{grid-column:1;color:var(--muted);font-size:.94rem}.project-more i{grid-column:2;grid-row:1/3;font-style:normal}
.offer-lines li,.process-lines li{border-bottom:1px solid var(--line)}
.offer-lines a{display:grid;grid-template-columns:1fr auto;gap:.25rem .7rem;padding:.95rem 0}.offer-lines li:first-child a,.process-lines li:first-child{padding-top:0}
.offer-lines p{grid-column:1;font-size:.96rem;max-width:63ch}.offer-lines a>span{grid-column:2;grid-row:1/3}
.process-lines{counter-reset:step}.process-lines li{display:flex;gap:1rem;padding:1.15rem 0;counter-increment:step}.process-lines li::before{content:counter(step,decimal-leading-zero);font:.83rem/1.8 var(--font-body);color:var(--muted)}
.process-lines p{margin-top:.35rem;max-width:59ch}
.home-person>p,.home-contact>div>p{max-width:57ch;color:var(--text);font-size:1.08rem}
.home-person figure{margin:1.55rem 0 0;padding-top:1.3rem;border-top:1px solid var(--line)}.home-person blockquote{font:500 clamp(1.1rem,1.7vw,1.45rem)/1.4 var(--font-body);max-width:48ch}.home-person figcaption{display:flex;align-items:center;gap:.7rem;margin-top:.9rem;color:var(--muted);font-size:.9rem}.home-person img{border-radius:50%;object-fit:cover}
.question-list{border-top:1px solid var(--line)}.question-list details{border-bottom:1px solid var(--line)}.question-list summary,.booking-disclosure>summary{list-style:none;cursor:pointer}.question-list summary::-webkit-details-marker,.booking-disclosure>summary::-webkit-details-marker{display:none}
.question-list summary{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding:1rem 0;font-size:1.06rem;font-weight:600;line-height:1.45}.question-list summary::after{content:"+";flex:none;color:var(--muted);font:1.1rem var(--font-body)}.question-list details[open] summary::after{content:"−"}
.question-list details>p{max-width:64ch;margin:0 0 1.1rem;line-height:1.6;color:var(--muted)}
.case-faq{margin-block:2.75rem}.case-faq h2{font-size:clamp(1.55rem,2.5vw,2.35rem);margin:0 0 1.1rem}
.contact-address{display:inline-block;margin:.9rem 0 1.15rem;text-decoration:underline;text-underline-offset:.2em;overflow-wrap:anywhere}
.booking-disclosure>summary{display:table;padding:.85rem 1.15rem;background:var(--action);color:#141411;font-weight:650}.booking-disclosure>summary::after{content:" ↓"}.booking-disclosure[open]>summary::after{content:" ↑"}
.home-contact .calendly-block{margin:1rem 0 0;max-width:100%;width:100%}.home-contact .calendly-placeholder{min-height:0;text-align:start;align-items:flex-start;padding:1.25rem;gap:.65rem}.home-contact .calendly-placeholder h3{font-size:1.05rem}.home-contact .calendly-placeholder.is-loaded{padding:0}
.home-page>.footer{padding:2.5rem 0 0}.home-page .footer-bottom{margin-top:2rem}.home-page .footer-grid{gap:1.5rem}
.home-page .footer-watermark{padding-inline:var(--gutter);white-space:nowrap}
.blog-page main>.legal-foot,.legal-page main>.legal-foot{width:100%}.legal-doc{max-width:78ch;margin-inline:auto}.study~.legal-foot{padding-inline:0}
:root[data-theme=light]{color-scheme:light;--bg:#fff;--bg-2:#f5f5f1;--surface:#f4f4ef;--text:#171916;--muted:#4e554e;--line:#ccd0c9;--line-soft:#dde0da;--acid:#3a5410;--acid-soft:#f0f4e5}
[data-theme=light] .noise{display:none}
[data-theme=light] .founder-words h1 em,[data-theme=light] .study h1 span{color:var(--text)}
[data-theme=light] .btn-acid,[data-theme=light] .study-cta{background:var(--action);border-color:var(--action);color:#171916}
[data-theme=light] .btn-acid::before{background:var(--text)}[data-theme=light] .btn-acid:hover{color:white}
[data-theme=light] .btn-ghost::before,[data-theme=light] .study .btn:before,[data-theme=light] .post-body a:hover,[data-theme=light] .blog-row:hover,[data-theme=light] .lang-menu a:hover{background:var(--action)}
[data-theme=light] .lang-menu{background:var(--bg);border-color:var(--line)}
[data-theme=light] .nav-logo-img,[data-theme=light] .footer-logo-img{filter:brightness(0)}
[data-theme=light] .work-result i{background:#767f72}[data-theme=light] .work-result p:last-of-type i{background:var(--acid)}
[data-theme=light] .study-cta .btn{background:#171916;color:white}[data-theme=light] .study-cta .btn:hover{color:#171916}
[data-theme=light] .outline{color:var(--text);-webkit-text-stroke:0}
@media(max-width:900px){.home-split,.home-contact{grid-template-columns:minmax(0,1fr) minmax(0,1.55fr);gap:2rem}}
@media(max-width:720px){.home-split,.home-contact,.project-spread,.project-more{grid-template-columns:1fr}.home-split,.home-contact{gap:1.45rem}.home-block h2{max-width:24ch}.home-frame .founder-intro{padding-top:calc(var(--nav-h) + 1.7rem)}.home-frame .founder-layout{gap:1.4rem}.home-frame .founder-words h1{font-size:clamp(2.65rem,10.5vw,4.2rem)}.home-frame .founder-picture{max-width:none}.home-frame .founder-picture img{aspect-ratio:2;object-position:50% 32%}.project-image{height:clamp(12rem,50vw,18rem)}.project-spread{row-gap:1.5rem}}
.home-offer .offer-lines,.home-method .process-lines{margin-top:clamp(1.45rem,3vw,2.3rem)}
.home-offer .offer-lines{border-top:1px solid var(--line)}
.home-offer .offer-lines a{grid-template-columns:minmax(12rem,.85fr) minmax(0,1.4fr) auto;align-items:baseline;gap:1.5rem;padding:1.05rem 0}
.home-offer .offer-lines p{grid-column:2;font-size:1rem}.home-offer .offer-lines a>span{grid-column:3;grid-row:1}
.home-method .process-lines{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1.25rem,3.5vw,3.5rem)}
.home-method .process-lines li{display:block;border-top:1px solid var(--line);border-bottom:0;padding:.9rem 0 0}
.home-method .process-lines li::before{display:block;margin-bottom:.75rem}
.case-study-page>.legal-foot{width:var(--frame);max-width:var(--rail);padding-inline:0}
.nav-cta .btn-text{white-space:nowrap}
[data-theme=light] ::selection{background:#d6ff3f;color:#171916}
@media(max-width:720px){.home-offer .offer-lines a{grid-template-columns:1fr auto;gap:.3rem .8rem;padding:.9rem 0}.home-offer .offer-lines p{grid-column:1}.home-offer .offer-lines a>span{grid-column:2;grid-row:1/3}.home-method .process-lines{grid-template-columns:1fr;gap:.9rem}.home-method .process-lines li{display:flex;gap:1rem}.home-method .process-lines li::before{margin:0}.menu{overflow-y:auto;justify-content:flex-start;gap:1rem}.menu-links a{font-size:clamp(1.45rem,6.5vw,2.15rem)}}

@media(min-width:340px) and (max-width:720px){.home-page .footer-grid{grid-template-columns:1fr 1fr;gap:1.5rem 1rem}.home-page .footer-brand,.home-page .footer-grid>.footer-col:last-child{grid-column:1/-1}.home-page .footer-grid>.footer-col:last-child{display:flex;flex-flow:row wrap;align-items:baseline;gap:.5rem 1rem}.home-page .footer-grid>.footer-col:last-child .meta-label{width:100%}.home-page .footer-bottom{padding-bottom:0}}
