:root{--paper:#f7f5ef;--paper-light:#ffffff;--ink:#242421;--ink-deep:#242421;--muted:#626159;--accent:#f2b735;--line:#d9d5ca;--white:#fff;--focus:#242421;--wash:#f6e5bc;--on-dark:#f7f5ef;--muted-on-dark:#e1ddd2;--panel-dark:#33332e;--display:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;--body:"Avenir Next",Avenir,"Segoe UI",system-ui,sans-serif;--max:76rem;color-scheme:light}
*,*::before,*::after{box-sizing:border-box}html{scroll-padding-top:6rem;scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:1rem/1.65 var(--body);text-rendering:optimizeLegibility}main{min-width:0}img{display:block;max-width:100%;height:auto}a{color:inherit;text-underline-offset:.25em}button,input,select,textarea{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}p{max-width:65ch;margin:.4rem 0 1.2rem;text-wrap:pretty}h1,h2,h3,h4{margin:0 0 1rem;line-height:1.07;font-family:var(--display);font-weight:600;letter-spacing:-.035em;text-wrap:balance;overflow-wrap:anywhere}h1{max-width:17ch;font-size:clamp(2.8rem,5.7vw,5.5rem)}h2{max-width:20ch;font-size:clamp(2rem,3.7vw,3.5rem)}h3{font-size:1.55rem}em{color:var(--ink);font-weight:400}small,.fine{font-size:.875rem;line-height:1.6;color:var(--muted)}.fine{max-width:78ch}.wrap{width:min(calc(100% - 4rem),var(--max));margin-inline:auto}.eyebrow{display:block;margin:0 0 1.15rem;color:var(--ink);font:700 .875rem/1.4 var(--body);letter-spacing:.12em;text-transform:uppercase}.lede{font-size:clamp(1.05rem,1.45vw,1.24rem);color:var(--muted);max-width:47ch}.number{font-family:var(--display);font-size:1.5rem;color:var(--ink)}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--focus);outline-offset:4px}:where(h2,h3)[tabindex="-1"]:focus{outline:3px solid var(--focus);outline-offset:5px}.skip{position:fixed;top:-10rem;left:1rem;z-index:90;background:white;padding:.8rem 1rem}.skip:focus{top:1rem}section[id],article[id],[id="concept-note"]{scroll-margin-top:6rem}
.site-header{position:sticky;top:0;z-index:40;background:rgba(247,245,239,.98);border-bottom:1px solid var(--line)}.site-nav{position:relative;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;min-height:5rem}.brand{display:inline-flex;align-items:baseline;flex-wrap:wrap;gap:.2em;min-height:2.75rem;align-content:center;color:var(--ink-deep);font:800 1rem/1.25 var(--body);letter-spacing:-.045em;text-decoration:none}.brand span{color:var(--ink)}.brand .brand-dot{margin-left:-.15em}.site-nav nav{min-width:0}.desktop-links{list-style:none;display:flex;align-items:center;gap:1.5rem;margin:0;padding:0}.desktop-links a:not(.button){display:inline-flex;align-items:center;min-height:3rem;text-decoration:none;font-size:.88rem;font-weight:650}.desktop-links a[aria-current="page"]{color:var(--ink);text-decoration:underline}.button{display:inline-flex;justify-content:center;align-items:center;gap:1rem;min-height:3rem;max-width:100%;border:1px solid var(--ink);border-radius:99px;padding:.78rem 1.2rem;color:var(--ink);background:var(--accent);text-decoration:none;text-align:center;font:700 .88rem/1.4 var(--body);transition:background-color .2s,transform .2s cubic-bezier(.22,1,.36,1)}.button span[aria-hidden]{font-size:1.25rem;line-height:1}.button.alt{background:transparent;color:var(--ink)}.button:active{transform:translateY(1px)}.text-link{display:inline-flex;align-items:center;gap:.35rem;min-height:2.75rem;font-weight:750;font-size:.9rem}.mobile-menu{display:none}.site-footer{padding:3.5rem 0 1.5rem;border-top:1px solid var(--line);background:#eeece5}.footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem}.site-footer p{font-size:.9rem;margin:0 0 .4rem}.site-footer nav{display:flex;flex-wrap:wrap;align-content:start;justify-content:end;gap:.2rem 1.5rem}.site-footer nav a{display:inline-flex;align-items:center;min-height:2.75rem;font-size:.875rem;text-decoration:none}.footer-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-top:2.4rem;padding-top:1rem;border-top:1px solid var(--line);font-size:.875rem;color:var(--muted)}
.hero{padding:clamp(3rem,6vw,6rem) 0 4rem}.hero-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:5%;align-items:center}.hero-copy{min-width:0}.hero-copy h1{max-width:13ch}.hero-copy .lede{margin-top:1.5rem}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1.4rem;margin:2rem 0}.founder-inline{display:flex;align-items:center;gap:.9rem;margin-top:2.5rem;max-width:28rem}.founder-inline img{flex:0 0 3.4rem;width:3.4rem;height:4.2rem;object-fit:cover;border-radius:.4rem}.founder-inline p{font-size:.875rem;line-height:1.5;margin:0}.founder-inline strong,.founder-inline span{display:block}.founder-inline span{color:var(--muted);margin-top:.15rem}.hero-proof{min-width:0;border:1px solid var(--line);padding:.8rem;background:#f6e5bc;border-radius:.6rem .6rem 3rem .6rem}.proof-top{display:flex;justify-content:space-between;gap:1rem;padding:.4rem .2rem 1rem;font-size:.875rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.hero-work{display:block;border-radius:.3rem;overflow:hidden;background:var(--paper-light);text-decoration:none}.hero-work img{aspect-ratio:16/10;object-fit:contain;background:white}.hero-work>div{padding:1rem 1.1rem}.hero-work strong,.hero-work span{display:block}.hero-work strong{font-family:var(--display);font-size:1.2rem}.hero-work span{font-size:.875rem;color:var(--muted)}.proof-bottom{padding:1.8rem 1.2rem .8rem}.proof-bottom>span{font-size:.875rem}.proof-bottom strong{display:block;font:500 clamp(2rem,3.5vw,3.6rem)/.98 var(--display);letter-spacing:-.04em;margin:.4rem 0 1rem}.proof-bottom a{display:inline-flex;min-height:2.75rem;align-items:center;font-size:.875rem;font-weight:700}
.fit-section{padding:3rem 0 4rem}.fit-grid{display:grid;grid-template-columns:1fr 1fr;gap:5%;padding-top:3rem;border-top:1px solid var(--line)}.fit-grid h2{font-size:clamp(2rem,3vw,2.8rem)}.fit-options article{display:flex;gap:1.5rem;padding:.25rem 0 1.3rem}.fit-options article+article{padding-top:1.3rem;border-top:1px solid var(--line)}.fit-options h3{font:700 1.1rem/1.3 var(--body);letter-spacing:-.02em;margin-bottom:.5rem}.fit-options p{font-size:.92rem;color:var(--muted);margin:0}
.offer{padding:4.5rem 0;background:#f6e5bc;border-block:1px solid #d9cba6}.offer-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:8%}.offer-summary{min-width:0}.price{font:500 clamp(4rem,7vw,7rem)/1 var(--display);letter-spacing:-.07em;margin:1.8rem 0 1rem}.price small{display:block;font:500 .8rem/1.4 var(--body);letter-spacing:0;margin-top:.5rem}.price-context{font-size:.875rem;color:var(--muted)}.price-assurances{padding-left:1.25rem;font-size:.93rem;margin:1.4rem 0 1.8rem}.offer-summary>.fine{margin-top:1.2rem}.scope{min-width:0}.scope>h3{font-size:1.8rem}.scope>p{color:var(--muted);font-size:.93rem}.scope-label{font-weight:750;margin-top:1.5rem!important}.scope-snapshot{display:grid;grid-template-columns:1fr 1fr;gap:.65rem 1.4rem;padding:0;list-style:none}.scope-snapshot li{border-bottom:1px solid #cdbf9b;padding:.6rem 0;font-weight:650;font-size:.9rem}.scope-details{border-bottom:1px solid #cdbf9b}.scope-details ul{padding-left:1.2rem;font-size:.88rem}.scope-details li{padding-bottom:.4rem}summary{cursor:pointer;min-height:3rem;padding:.85rem 1.5rem .85rem 0;font-weight:650;line-height:1.45}summary::marker{color:var(--ink)}.scope>.fine{font-size:.875rem;margin-top:1rem}
.selected,.process-section,.faq-section,.contact-section{padding:clamp(3.5rem,6vw,6rem) 0}.section-head{display:grid;grid-template-columns:1.1fr .9fr;gap:7%;align-items:end;margin-bottom:2.5rem}.section-head p{color:var(--muted)}.selected-pair{display:grid;grid-template-columns:1.15fr .85fr;gap:2.5rem;align-items:center}.work-preview{display:block;background:#eeece5;border:1px solid var(--line);padding:.65rem;text-decoration:none;border-radius:.5rem}.work-preview img{aspect-ratio:16/10;object-fit:contain;background:#101012;border-radius:.2rem}.work-preview>div{display:grid;grid-template-columns:1fr auto;gap:.3rem;padding:1rem .5rem .4rem}.work-preview>div span:first-child{grid-column:1/-1;color:var(--muted);font-size:.875rem}.work-preview strong{font-family:var(--display);font-size:1.35rem}.lab-bridge{padding:1.5rem}.lab-bridge h3{font-size:2.2rem}.lab-bridge .fine{margin-top:1.2rem}.process-section{background:#eeece5}.process-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;padding:0;margin:2.5rem 0 3rem;gap:2rem}.process-list li{border-top:1px solid var(--line);padding-top:1rem}.process-list span{font-family:var(--display);color:var(--ink);font-size:1.4rem}.process-list h3{font:700 1rem/1.4 var(--body);margin:1.5rem 0 .6rem;letter-spacing:-.015em}.process-list p{font-size:.88rem;color:var(--muted)}.services-bridge{display:grid;grid-template-columns:1fr 1fr;gap:6%;padding-top:2.5rem;border-top:1px solid var(--line)}.services-bridge h3{font-size:2rem}.services-bridge .fine{font-size:.875rem}.faq-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:7%}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}.faq-list p{font-size:.91rem;color:var(--muted)}.contact-section{background:#f6e5bc}.contact-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:7%}.contact-email{display:inline-flex;align-items:center;min-height:3rem;margin:1rem 0;font-size:.98rem;font-weight:700;overflow-wrap:anywhere;max-width:100%}
form{min-width:0;background:var(--paper-light);border:1px solid #d9d5ca;padding:1.8rem;border-radius:.6rem}.form-kicker{font:600 1.55rem/1.2 var(--display);letter-spacing:-.02em}.form-intro,.privacy-note{font-size:.875rem;color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.field{min-width:0;margin-bottom:.75rem}label{display:block;font-size:.875rem;font-weight:650;margin-bottom:.4rem}.field-note{font-size:.875rem;font-weight:400;color:var(--muted)}input,select,textarea{width:100%;min-width:0;max-width:100%;min-height:2.9rem;border:1px solid #7d7b72;border-radius:.25rem;background:#ffffff;color:var(--ink);padding:.7rem;font-size:1rem}select{white-space:normal}textarea{resize:vertical;min-height:6rem}.field-error{display:block;font-size:.875rem;color:#8b2615;min-height:1rem}.field-error:empty{min-height:.25rem}.optional-details{margin-bottom:1rem}.optional-details summary{font-size:.88rem}.form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem}.status{font-size:.875rem;margin:.75rem 0 0;color:var(--ink);font-weight:600}.draft-panel{border-top:1px solid var(--line);margin-top:1.5rem;padding-top:1rem}.draft-panel textarea{font-size:.875rem;min-height:13rem;margin-bottom:1rem}.draft-panel .fine{margin:.8rem 0 0}
.page-intro{padding-top:clamp(3rem,7vw,6rem);padding-bottom:3rem}.intro-split{display:grid;grid-template-columns:1.1fr .9fr;align-items:end;gap:7%}.intro-split h1{font-size:clamp(3rem,6vw,5.8rem)}.intro-split>div p:last-child{margin-bottom:0}.gallery-section{padding-bottom:4rem}.gallery-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;border-block:1px solid var(--line);padding:1rem 0;margin-bottom:2.5rem}.gallery-toolbar>p{font-size:.875rem;color:var(--muted);margin:0}.filters{display:flex;flex-wrap:wrap;gap:.35rem}.filters button{min-height:2.75rem;border:1px solid transparent;background:transparent;border-radius:5rem;font-size:.875rem;color:var(--ink);padding:.55rem .8rem}.filters button[aria-pressed=true]{background:var(--accent);color:var(--ink);border-color:var(--ink)}.concept-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3.5rem 2rem}.concept-card{min-width:0}.concept-card-link{display:block;text-decoration:none}.concept-cover{position:relative;display:flex;flex-direction:column;justify-content:space-between;aspect-ratio:3/2;overflow:hidden;min-width:0;background:var(--cover);color:var(--cover-accent);padding:2rem;border-radius:.45rem}.concept-cover:has(img){padding:0}.concept-cover img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.22,1,.36,1)}.concept-cover strong{font:500 clamp(2rem,3.7vw,3.7rem)/1.02 var(--display);letter-spacing:-.045em;max-width:13ch}.cover-kicker{font-size:.875rem;text-transform:uppercase;letter-spacing:.1em;max-width:80%}.cover-line{width:25%;height:1px;background:currentColor;opacity:.6;margin-top:1.5rem}.cover-open{position:absolute;right:1rem;top:1rem;display:grid;place-items:center;border-radius:100%;width:2.7rem;height:2.7rem;background:var(--paper-light);color:var(--ink);font-size:1.3rem}.concept-caption{display:flex;justify-content:space-between;gap:1rem;padding:1.25rem .2rem 0}.concept-caption .eyebrow{font-size:.875rem;margin-bottom:.4rem}.concept-caption h2{font-size:1.65rem}.concept-caption p{font-size:.88rem;color:var(--muted);max-width:48ch}.case-count{font-family:var(--display);color:var(--muted);font-size:1.2rem}.closing-call{display:flex;justify-content:space-between;align-items:center;gap:2rem;padding-block:3rem 5rem}.closing-call h2{margin:0}.collection-label{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--line);padding:1.4rem 0;margin-bottom:2rem}.collection-label h2{font:700 .85rem/1.3 var(--body);margin:0;letter-spacing:.02em}.collection-label span{font-size:.875rem;color:var(--muted)}.experience{display:grid;grid-template-columns:1.1fr .9fr;gap:5%;align-items:center;margin-bottom:4rem}.experience-image{display:block;border:1px solid var(--line);padding:.6rem;background:#eeece5;border-radius:.4rem}.experience-image img{aspect-ratio:16/10;object-fit:contain;background:#fff;border-radius:.2rem}.experience-copy h2{font-size:clamp(1.8rem,3vw,2.7rem)}.experience-copy p{font-size:.92rem;color:var(--muted)}.experience-private{aspect-ratio:16/10;display:flex;flex-direction:column;justify-content:center;padding:2rem;background:#f6e5bc;border:1px solid #d9cba6}.experience-private strong{font:500 2.6rem/1.05 var(--display);letter-spacing:-.045em;margin-bottom:1rem}.experience-private>span:last-child{font-size:.875rem;color:var(--muted)}.work-collection>.fine{padding-bottom:2rem}.legal{max-width:52rem;padding-block:4rem 6rem}.legal h2{font-size:1.7rem;margin-top:2rem}.legal a{overflow-wrap:anywhere}
.study-page .case{padding:3.5rem 0 4rem;overflow:clip;scroll-margin-top:6rem}.study-page .case h1{font-family:var(--case-display);color:var(--case-fg);font-size:clamp(2.6rem,5vw,4.8rem);max-width:19ch}.study-page .case-head{gap:5%;margin-bottom:2rem}.study-page .campaign-line{font-size:clamp(1.8rem,3vw,3rem)}.case-toolbar{background:var(--paper-light);border-bottom:1px solid var(--line)}.case-toolbar>.wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.25rem 1.2rem;padding-block:.55rem}.case-toolbar a{display:inline-flex;align-items:center;min-height:2.75rem;font-size:.875rem;font-weight:700}.case-toolbar nav{display:flex;flex-wrap:wrap;gap:.2rem 1.3rem}.study-hero{margin:0 0 2rem;border-radius:.7rem;overflow:hidden}.study-hero img{width:100%;max-height:44rem;object-fit:contain;background:var(--case-panel)}.study-hero figcaption{padding:.7rem 1rem;font-size:.875rem;background:var(--case-panel);color:var(--case-soft)}.study-page .board{box-shadow:none}.study-page .case :where(.board,.brand-kit,.asset-details,.asset-detail){scroll-margin-top:6rem}.study-page .case :where(.brief-item,.launch-phase,.channel,.detail-panel,.surface,.browser,.browser-body,.kit-item,.asset-detail){min-width:0;overflow-wrap:anywhere}.study-page .case p{max-width:70ch}.study-page .case .source a{overflow-wrap:anywhere}.study-page .case .case-number a{min-width:1.5rem}.study-end{padding-block:2.5rem 4rem}.case-pagination{display:grid;grid-template-columns:1fr 1fr;gap:2rem;border-block:1px solid var(--line);padding:1.5rem 0;margin:2rem 0}.case-pagination a{display:block;text-decoration:none;min-height:3rem}.case-pagination a:last-child{text-align:right}.case-pagination small,.case-pagination strong{display:block}.case-pagination small{margin-bottom:.4rem}.case-pagination strong{font:600 1.3rem/1.3 var(--display)}
@media(hover:hover){.button:hover{background:var(--wash);color:var(--ink)}.button.alt:hover{background:var(--wash);color:var(--ink)}.text-link:hover,.site-footer a:hover{color:var(--ink);text-decoration:underline;text-decoration-thickness:2px}.concept-card-link:hover .concept-cover img{transform:scale(1.025)}.concept-card-link:hover h2{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.2em}}
@media(max-width:62rem){.desktop-links{gap:.9rem}.hero-grid{gap:2rem}.hero-copy h1{font-size:clamp(2.7rem,5.7vw,4.4rem)}.process-list{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-grid{gap:3rem}.form-grid{grid-template-columns:1fr}.concept-cover{padding:1.4rem}.experience{gap:2rem}}
@media(max-width:52rem){.wrap{width:calc(100% - 2rem)}.desktop-links{display:none}.site-nav{min-height:4.5rem;gap:1rem}.mobile-menu{display:block}.mobile-menu>summary{display:flex;justify-content:center;align-items:center;gap:.6rem;min-height:2.75rem;border:1px solid var(--line);border-radius:3rem;padding:.55rem .85rem;font-size:.875rem;list-style:none}.mobile-menu>summary::-webkit-details-marker{display:none}.mobile-menu[open]>summary span{transform:rotate(45deg)}.mobile-menu>ul{position:absolute;top:calc(100% + .35rem);right:0;left:0;z-index:50;max-height:calc(100dvh - 6rem);overflow-y:auto;overscroll-behavior:contain;list-style:none;margin:0;border:1px solid var(--line);border-radius:.7rem;background:var(--paper-light);padding:.5rem;box-shadow:0 .8rem 2rem #24242118}.mobile-menu li a{display:flex;min-height:2.8rem;align-items:center;padding:.65rem .85rem;font-size:.95rem;font-weight:650;text-decoration:none}.mobile-menu .button{margin-top:.3rem}.hero-grid,.fit-grid,.offer-grid,.section-head,.selected-pair,.faq-grid,.contact-grid,.intro-split,.experience{grid-template-columns:1fr}.hero{padding:2.6rem 0 2rem}.hero-copy h1{font-size:clamp(2.8rem,9vw,4.8rem);max-width:16ch}.hero-copy .lede{max-width:54ch}.hero-actions{margin:1.5rem 0}.founder-inline{margin-top:1.6rem}.hero-proof{margin-top:1rem;max-width:38rem}.proof-bottom{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:.6rem}.proof-bottom>span{grid-column:1/-1}.proof-bottom strong{font-size:2.5rem}.proof-bottom a{max-width:13ch}.fit-section{padding-block:2rem 3rem}.fit-grid{gap:1.5rem;padding-top:2rem}.offer{padding-block:3rem}.offer-grid{gap:2rem}.offer-summary>.fine{max-width:65ch}.price{font-size:5rem}.scope{border-top:1px solid #cdbf9b;padding-top:2rem}.section-head{gap:1rem;margin-bottom:1.5rem}.selected-pair{gap:1.8rem}.lab-bridge{padding:0}.faq-grid{gap:1.3rem}.contact-grid{gap:1.5rem}.form-grid{grid-template-columns:1fr 1fr}.intro-split{gap:1rem}.page-intro{padding-top:2.6rem}.gallery-toolbar{gap:.6rem}.gallery-toolbar>p{width:100%}.concept-gallery{gap:2rem 1.1rem}.concept-cover strong{font-size:2.1rem}.concept-caption h2{font-size:1.35rem}.experience{gap:1.5rem;margin-bottom:3rem}.experience-image{max-width:45rem}.experience-private{aspect-ratio:2/1}.footer-grid{grid-template-columns:1fr;gap:1.5rem}.site-footer nav{justify-content:start}.study-page .case{padding-top:2.5rem}.study-page .case-head{grid-template-columns:1fr;gap:1rem}.study-page .case .browser-title{font-size:clamp(1.6rem,6vw,2.6rem)}.study-page .case .surface.web{min-height:0}.study-page .case .browser-body{min-height:22rem}}
@media(max-width:36rem){.concept-gallery{grid-template-columns:1fr}.concept-cover strong{font-size:2.9rem}.concept-caption h2{font-size:1.6rem}.concept-cover{padding:1.6rem}.services-bridge{grid-template-columns:1fr;gap:1rem}.process-list{gap:1.3rem}.process-list h3{margin-top:.8rem}.form-grid{grid-template-columns:1fr}.contact-grid form{padding:1.2rem}.hero-actions .button{width:100%}.hero-actions{gap:.6rem}.hero-proof{border-bottom-right-radius:1.6rem}.proof-bottom{padding:1.4rem .4rem .5rem}.proof-bottom strong{font-size:2.1rem}.closing-call{display:grid;padding-block:2.5rem 3.5rem;gap:1rem}.scope-snapshot{gap:.4rem 1rem}.case-toolbar nav{gap:.2rem 1rem}.case-toolbar>.wrap{padding-block:.3rem}.case-pagination{gap:1rem}.case-pagination strong{font-size:1.1rem}.study-page .case .board{padding:.6rem}.study-page .case :where(.browser-name,.case-basis li){white-space:normal}.study-page .case .browser-bar{gap:.4rem}.site-footer{padding-top:2.5rem}.footer-bottom{font-size:.875rem}}
@media(max-height:25rem){.site-header{position:relative}.mobile-menu>ul{max-height:65vh}.case-toolbar{position:static}html{scroll-padding-top:1rem}section[id],article[id]{scroll-margin-top:1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.concept-cover img{transform:none!important}}
@media(forced-colors:active){.button,.concept-cover,.hero-proof,.experience-private{border:1px solid CanvasText}.button{color:ButtonText;background:ButtonFace}.filters button[aria-pressed=true]{border:2px solid ButtonText}.concept-cover{color:CanvasText}}
.concept-cover:has(img){aspect-ratio:16/9}.concept-cover img{object-fit:contain}.study-page .case{overflow:visible}.study-page .case :where(.surface,.browser){overflow:visible}.study-page .case .surface-link{border-radius:inherit}.study-page .case .surface::after{display:none}.study-page .case-word{max-width:100%;overflow:hidden}.study-page .case .surface{height:auto}.study-page .case .browser-body{overflow-wrap:anywhere}.study-page .case .case-basis li{max-width:100%}.study-page .site-header .brand{font-size:1rem}.study-page .site-header .brand span{color:var(--ink)}
/* Allow text to reflow without widening a grid track or hiding its content. */
body{overflow-wrap:anywhere}
:where(.hero-grid,.fit-grid,.offer-grid,.section-head,.selected-pair,.faq-grid,.contact-grid,.intro-split,.experience,.services-bridge,.footer-grid,.proof-bottom)>*{min-width:0}
.text-link,.proof-bottom a{max-width:100%;min-width:0}
.concept-cover:not(:has(img)){aspect-ratio:auto;min-height:clamp(18rem,32vw,26rem);gap:1.5rem}
.concept-cover strong{overflow-wrap:anywhere}
.study-page .case-word{right:0}
.study-page .case .board-spine{transform:none}
@media(max-width:52rem){.proof-bottom{grid-template-columns:minmax(0,1fr)}.proof-bottom a{max-width:none}.experience-private{aspect-ratio:auto;min-height:13rem}.study-page .case .surface{transform:none}}
@media(max-width:26rem){.scope-snapshot,.process-list,.case-pagination{grid-template-columns:minmax(0,1fr)}.case-pagination a:last-child{text-align:left}}
@media(max-width:26rem){.brand{font-size:.9rem}.site-nav{gap:.5rem}.mobile-menu>summary{padding-inline:.65rem}.process-list{grid-template-columns:1fr}.scope-snapshot{grid-template-columns:1fr}.proof-bottom{grid-template-columns:1fr}.proof-bottom a{max-width:none}.hero-copy h1{font-size:2.7rem}.study-page .site-header .brand{font-size:.9rem}}

/* Editorial polish: one visual hierarchy across the shared shell and case studies. */
.number{flex-shrink:0;white-space:nowrap}
.brand{min-width:0}
.mobile-menu>summary{white-space:nowrap}
@media(max-width:52rem){.site-nav{display:grid;grid-template-columns:minmax(0,1fr) auto}}
input,select,textarea{border-color:#7d7b72}
.price small,.collection-label h2{font-size:.875rem}
.site-header{top:.75rem;width:min(calc(100% - 2rem),80rem);margin:.75rem auto 0;border:1px solid var(--line);border-radius:3rem;box-shadow:0 .35rem 1.8rem #2424210b}
.site-nav.wrap{width:calc(100% - 2.5rem);min-height:4.5rem}
.button{padding:.55rem .6rem .55rem 1.15rem}
.button:not(:has(span[aria-hidden])){padding:.78rem 1.2rem}
.button span[aria-hidden]{display:grid;place-items:center;flex:0 0 1.9rem;width:1.9rem;height:1.9rem;border-radius:50%;background:var(--ink);color:var(--accent);transition:transform .25s cubic-bezier(.22,1,.36,1)}
.button.alt span[aria-hidden]{background:var(--ink);color:var(--paper-light)}
.hero-grid{grid-template-columns:1.06fr .94fr;gap:4%}
.hero-proof{border:0;border-radius:0;background:transparent;padding:0;align-self:center}
.proof-top{align-items:baseline;padding:0 0 .9rem;border-bottom:1px solid var(--line);margin-bottom:.8rem;font-size:.875rem;text-transform:none;letter-spacing:0}
.proof-top>a{font-weight:500;text-align:right}
.hero-work{background:#f6e5bc;border-radius:.4rem .4rem 2.5rem .4rem}
.hero-work img{aspect-ratio:16/9;object-fit:cover;background:var(--paper)}
.hero-work>div{padding:1.5rem 1.6rem 1.75rem}
.hero-work strong{font-size:clamp(1.9rem,2.7vw,2.65rem);line-height:1.07;letter-spacing:-.04em;margin:.5rem 0 .8rem}
.hero-work>div>span{font-size:.875rem}
.hero-work .proof-project-link{display:flex;justify-content:space-between;align-items:center;color:var(--ink);font-weight:700}
.hero-work .proof-project-link span{font-size:1.4rem;color:inherit}
.hero-proof>.fine{margin:1rem .25rem 0;font-size:.8125rem;line-height:1.55}
.founder-inline p{font-size:.875rem}
.fit-section{padding:1.5rem 0 4rem}
.fit-grid{grid-template-columns:.7fr 1.3fr;gap:5%;padding-top:2rem}
.fit-grid h2{font-size:clamp(1.6rem,2.2vw,2.1rem)}
.fit-options{display:grid;grid-template-columns:1fr 1fr;gap:2rem}
.fit-options article{padding:.25rem 0 0;gap:.85rem}
.fit-options article+article{padding:.25rem 0 0;border:0}
.fit-options p,.scope>p,.price-assurances,.scope-details ul,.process-list p,.faq-list p,.experience-copy p,.concept-caption p{font-size:1rem}
.price-context,.scope-snapshot li,.form-intro,.privacy-note{font-size:.875rem}
.selected-pair{grid-template-columns:1.4fr .6fr;gap:3rem}
.work-preview img{aspect-ratio:16/9}
.lab-bridge{padding:0}
.lab-bridge h3{font-size:clamp(1.8rem,2.6vw,2.7rem)}
.experience-text{border-block:1px solid var(--line);padding-block:2rem}
.experience-text .experience-private{aspect-ratio:auto;min-height:0;border:0;border-left:2px solid var(--accent);background:transparent;padding:.5rem 0 .5rem 1.5rem}
.experience-private strong{font-size:clamp(2rem,3.2vw,3rem);margin:0}
.experience-text .experience-copy h2{font-size:1.5rem}
.experience-image img{aspect-ratio:auto}
.concept-cover,.concept-cover:not(:has(img)){aspect-ratio:16/9;min-height:0}
.concept-caption .eyebrow,.collection-label span,.footer-bottom,.fine,small{font-size:.8125rem}
.footer-bottom .footer-concept-note{flex-basis:100%;max-width:85ch;margin:0;font-size:.8125rem;scroll-margin-top:6rem}
.footer-concept-note:focus-visible{outline:2px solid var(--focus);outline-offset:4px}
.concept-caption h2{max-width:none}
.study-hero{border-radius:.45rem;margin-bottom:2.5rem}
.study-hero img{max-height:36rem}
.study-hero figcaption{font-size:.8125rem}
.study-brief{padding:1rem 0 4rem}
.study-brief .launch-heading{margin-bottom:2rem}
.chapter-title{font-size:clamp(1.8rem,3vw,2.6rem);max-width:28ch;margin-bottom:1.5rem}
.study-page .case .launch-heading h2{font-size:clamp(2rem,4vw,3.4rem)}
.study-page .case .brand-kit,.study-page .case .asset-details{margin-top:3.5rem;padding-top:2rem;border-top:1px solid color-mix(in srgb,var(--case-fg) 30%,transparent)}
.study-page .case .brand-kit-head,.study-page .case .asset-details>h3{margin-bottom:1.5rem}
@media(hover:hover){.button:hover span[aria-hidden]{transform:rotate(8deg)}.hero-work img,.work-preview img{transition:filter .4s cubic-bezier(.22,1,.36,1)}.hero-work:hover img,.work-preview:hover img{filter:brightness(1.04)}.hero-work:hover .proof-project-link{text-decoration:underline;text-underline-offset:.25em}}
@media(min-width:52.001rem) and (prefers-reduced-motion:no-preference){.hero-copy{animation:studio-enter .65s cubic-bezier(.22,1,.36,1) both}.hero-proof{animation:studio-enter .85s .08s cubic-bezier(.22,1,.36,1) both}@keyframes studio-enter{from{opacity:.5;transform:translateY(.75rem)}to{opacity:1;transform:none}}}
@media(max-width:62rem){.fit-grid{grid-template-columns:1fr}.fit-options{margin-top:1rem}.selected-pair{gap:2rem}}
@media(max-width:52rem){.site-header{top:.5rem;margin-top:.5rem}.site-nav.wrap{width:calc(100% - 1.75rem);min-height:4rem}.hero-grid,.selected-pair{grid-template-columns:1fr}.hero-proof{max-width:45rem}.hero-work>div{padding:1.25rem}.hero-work strong{font-size:2.2rem}.hero-proof>.fine{margin-top:.75rem}.fit-grid{padding-top:1.5rem}.fit-section{padding:1.5rem 0 3rem}.lab-bridge{max-width:40rem}.study-brief{padding-bottom:2.5rem}.study-hero img{max-height:none}}
@media(max-width:36rem){.fit-options{grid-template-columns:1fr;gap:1.5rem}.proof-top{align-items:start;gap:.75rem}.site-header{width:calc(100% - 1rem)}.hero-work strong{font-size:2rem}.case-toolbar>.wrap{padding-block:.4rem}.case-toolbar nav{gap:.1rem 1rem}.experience-text .experience-private{padding-left:1rem}}
@media(max-height:25rem){.site-header{position:relative;top:0}}
@media(prefers-reduced-motion:reduce){.button span[aria-hidden]{transform:none!important}}

/* SLOgrowth: a plainspoken promise with an intentionally illustrative campaign. */
.brand{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:.08rem;padding-block:.35rem}
.brand .brand-name{font-size:1.3rem;line-height:1.05;letter-spacing:-.065em}
.site-header .brand .brand-name,.site-footer .brand .brand-name{color:var(--ink-deep)}
.brand-name>span{display:inline-block;white-space:nowrap;color:var(--ink);text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:.16em;text-underline-offset:.13em}
.brand .brand-descriptor{font-size:.875rem;font-weight:550;line-height:1.25;letter-spacing:.015em}
.site-header .brand .brand-descriptor,.site-footer .brand .brand-descriptor{color:var(--muted)}
.study-page .site-header .brand .brand-name{color:var(--ink-deep)}
.study-page .site-header .brand .brand-descriptor{color:var(--muted)}
.study-page .kit-item summary{grid-template-columns:minmax(0,1fr)}
.study-page .kit-palette{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));min-width:0}
.study-page .kit-palette i{width:100%;max-width:1.55rem;min-width:0;height:auto;aspect-ratio:1}
.hero-copy h1{max-width:15ch}
.growth-campaign{padding:clamp(3rem,6vw,6rem) 0;background:var(--ink);color:var(--on-dark)}
.campaign-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:8%;align-items:center}
.campaign-copy{min-width:0}
.campaign-copy .eyebrow{color:#f2b735}
.campaign-copy h2{font-size:clamp(2.8rem,5vw,4.7rem);max-width:13ch}
.campaign-copy .campaign-line{font:400 clamp(1.8rem,3vw,2.8rem)/1.12 var(--display);letter-spacing:-.025em;color:#f2b735;margin:1.5rem 0}
.campaign-copy>p:not([class]){color:#e1ddd2}
.campaign-copy .text-link:focus-visible{outline-color:#f2b735}
.campaign-copy .text-link:hover{color:#f2b735}
.growth-figure{min-width:0;margin:0;padding:.5rem;border:1px solid #7d7b72;border-radius:1.8rem;background:#33332e}
.growth-chart-core{padding:clamp(1rem,2.8vw,2rem);border-radius:1.3rem;background:var(--panel-dark);color:var(--on-dark);box-shadow:inset 0 1px 0 #ffffff16}
.growth-chart-heading{display:flex;flex-wrap:wrap;align-items:start;justify-content:space-between;gap:.75rem}
.growth-chart-heading .eyebrow{width:100%;margin:0;color:var(--accent)}
.growth-chart-heading h3{font-size:clamp(1.7rem,2.5vw,2.4rem);max-width:16ch;margin:0}
.chart-sketch{font-size:.8125rem;color:var(--muted-on-dark);border-bottom:1px solid #85857c;padding-bottom:.2rem}
.growth-plot{height:16rem;margin-top:2rem;border-bottom:1px solid #85857c;background:repeating-linear-gradient(to top,transparent 0,transparent calc(25% - 1px),#f7f5ef24 calc(25% - 1px),#f7f5ef24 25%);padding:0 .3rem}
.growth-bars{display:flex;align-items:end;gap:5%;height:100%;padding-top:.8rem}
.growth-bars>i{position:relative;display:block;flex:1;min-width:0;height:var(--bar);background:#85857c;border-radius:.3rem .3rem 0 0;transform-origin:bottom}
.growth-bars>.growth-new{background:#f2b735}
.growth-bars>.growth-peak{background:var(--accent)}
.growth-peak>span{position:absolute;inset:0 0 auto;display:block;text-align:center;font:400 clamp(1.4rem,4vw,2.5rem)/1.2 var(--body);color:var(--ink);padding-top:.3rem}
.growth-chart-labels{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:.75rem;font-size:.875rem;line-height:1.4}
.growth-chart-labels strong{color:var(--accent)}
.growth-figure figcaption{padding:.85rem .65rem .5rem;font-size:.8125rem;line-height:1.5;color:#e1ddd2}
@media(prefers-reduced-motion:no-preference){.growth-figure.is-visible .growth-bars>i{animation:growth-rise 1.1s var(--delay) cubic-bezier(.16,1,.3,1) both}.growth-figure.is-visible .growth-peak>span{animation:growth-arrive .6s 1.2s cubic-bezier(.16,1,.3,1) both}@keyframes growth-rise{0%{transform:scaleY(.04)}75%{transform:scaleY(1.06)}100%{transform:scaleY(1)}}@keyframes growth-arrive{from{opacity:0;transform:translateY(.6rem)}to{opacity:1;transform:translateY(0)}}}
@media(max-width:52rem){.campaign-grid{grid-template-columns:minmax(0,1fr);gap:2rem}.growth-figure{max-width:45rem}.brand .brand-name{font-size:1.15rem}.price{font-size:clamp(3rem,18vw,5rem)}}
@media(max-width:26rem){.site-nav.wrap{width:calc(100% - 1rem)}.mobile-menu>summary span{display:none}.brand .brand-name{font-size:1rem}.growth-plot{height:13rem}.growth-chart-labels{gap:.65rem}}

/* Give demo entry points the same prominence as the visual studies. */
.concept-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem 1rem;padding:.25rem .2rem 0}
.concept-actions .button{min-height:2.9rem}
.concept-card-link:focus-visible h2{text-decoration:underline;text-underline-offset:.2em}
.case-toolbar{position:sticky;top:var(--header-height,6rem);z-index:30}
.case-toolbar a:first-child{white-space:nowrap}
html:has(.study-page){scroll-padding-top:var(--header-height,6rem)}
.study-page :is(section[id],article[id],.board,.brand-kit,.asset-details,.asset-detail,.footer-concept-note){scroll-margin-top:calc(var(--toolbar-height,4rem) + 1rem)}
@media(max-width:36rem){.concept-actions{align-items:stretch}.concept-actions .button{width:100%}.case-toolbar>.wrap>a{display:none}.case-toolbar nav{justify-content:space-between;width:100%;gap:.15rem .7rem}.case-toolbar nav a{font-size:.8125rem}}
@media(max-height:25rem){.case-toolbar{position:static}html:has(.study-page){scroll-padding-top:1rem}.study-page :is(section[id],article[id],.board,.brand-kit,.asset-details,.asset-detail,.footer-concept-note){scroll-margin-top:1rem}}
@media(prefers-reduced-motion:reduce){.button:active,.button:hover,.button:hover span[aria-hidden]{transform:none!important}}
