/* Page compositions built from the shared KDS primitives. */
.page-intro{padding-block:2.75rem 2.5rem;border-bottom:1px solid var(--line)}.page-intro h1{font-size:clamp(2.75rem,5vw,5.25rem);font-weight:400;line-height:1.06;letter-spacing:-.055em;max-width:1100px;margin-top:1.3rem}.page-intro>p:last-child{max-width:690px;color:var(--muted);font-size:1.125rem;margin-top:1.5rem}.page-end{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding-block:2.5rem;border-top:1px solid var(--line)}.page-end p{font-size:1rem;color:var(--muted);max-width:650px}.not-found{padding-block:4rem}.not-found h1{font-size:clamp(3rem,5vw,5rem);font-weight:400;line-height:1.1;letter-spacing:-.05em;margin-top:1rem}.not-found p{max-width:600px;color:var(--muted);margin-top:1.5rem}.not-found .button{margin-top:2rem}.not-found .related-links{margin-top:1.5rem}
@media(max-width:700px){.page-intro{padding-block:2rem}.page-intro h1{font-size:clamp(2.5rem,9.5vw,4rem)}.page-intro>p:last-child{font-size:1rem}.page-end{align-items:start;flex-direction:column;gap:1rem}}
.explanation{padding:1.6rem 1.8rem;background:#efede6;margin:0;min-width:0}.diagram-kicker{font-size:.8125rem;color:var(--muted);margin-bottom:1.5rem}.flow-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}.flow-step{position:relative;min-width:0;border-top:1px solid var(--line);padding-top:.7rem}.flow-index{font-size:.75rem;color:var(--muted)}.flow-step h3,.flow-foundation h3,.flow-branches h3,.flow-destination h3{font-size:1.0625rem;line-height:1.25;letter-spacing:-.015em;font-weight:600;margin:.6rem 0 .8rem}.flow-step p,.flow-foundation p,.flow-branches p,.flow-destination p{font-size:.875rem;line-height:1.5;color:var(--muted)}.explanation svg{fill:none;stroke:currentColor;stroke-width:1;overflow:visible}.interface-outline,.connect-outline{width:100%;max-width:140px;height:68px;margin-bottom:.5rem}.explanation figcaption{font-size:.8125rem;color:var(--muted);border-top:1px solid var(--line);padding-top:1rem;margin-top:1.5rem}.flow-foundation{text-align:center;border-block:1px solid var(--line);padding:.5rem 1rem 1rem}.branch-lines{width:100%;height:24px}.flow-branches{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));text-align:center;gap:1rem}.flow-destination{text-align:center;margin-top:1.2rem}.flow-destination>span{font-size:1.5rem}.source-list{list-style:none;font-size:.8125rem;color:var(--muted)}.source-list li{padding:.35rem 0;border-bottom:1px solid var(--line)}.image-placeholder{min-width:0;margin:0}.placeholder-surface{aspect-ratio:16/10;background:#efede6;border:1px solid var(--line);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:.2rem;padding:1.2rem;font-size:.8125rem;color:var(--muted)}.portrait .placeholder-surface{aspect-ratio:9/16}.placeholder-surface strong{color:var(--ink);font-weight:500}.placeholder-surface small{margin-top:.5rem}.placeholder-cross{font-size:1.4rem;font-weight:300;margin-bottom:.4rem}.image-placeholder figcaption{font-size:.8125rem;color:var(--muted);line-height:1.5;margin-top:.65rem}
@media(max-width:600px){.explanation{padding:1.3rem}.flow-three{grid-template-columns:1fr;gap:1.3rem}.flow-step{display:grid;grid-template-columns:1.4rem minmax(0,1fr);gap:0 .6rem}.flow-index{grid-row:1/5;padding-top:.6rem}.flow-step p,.flow-step svg,.flow-step ul{grid-column:2}.flow-step h3{font-size:1.125rem}.flow-branches{grid-template-columns:1fr;text-align:left;gap:.8rem;padding-top:1rem}.flow-branches>div{border-left:1px solid var(--line);padding-left:1rem}.branch-lines{display:none}.flow-branches h3{margin-top:0}.flow-destination{text-align:left;border-top:1px solid var(--line);padding-top:.8rem}}
/* Home: five beats, with intentional changes of scale and composition. */
.page-home .hero{min-height:calc(100dvh - 108px);padding-block:2.5rem 1.5rem;gap:2rem}.page-home .hero h1{margin-top:1.5rem;max-width:1240px;font-size:clamp(3.25rem,min(6.55vw,11svh),7.4rem)}.page-home .hero-bottom{margin-top:auto;padding-top:2.5rem;grid-template-columns:1fr 1.1fr}.page-home p.hero-intro{font-size:1.125rem;line-height:1.6;max-width:580px;margin-left:auto;color:var(--muted)}.section-topline{display:grid;grid-template-columns:1fr 2fr auto;gap:2rem;align-items:start;margin-bottom:2.5rem}.section-topline h2,.approach-heading h2,.closing-cta h2{font-size:clamp(2rem,3.4vw,3.5rem);font-weight:400;line-height:1.08;letter-spacing:-.045em}.section-topline .eyebrow{padding-top:.5rem}.section-topline>.text-link{align-self:end}.needs-section,.home-proof,.approach-section{padding-block:4.75rem;border-top:1px solid var(--line)}.need-paths{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem}.need-paths>a{display:grid;grid-template-columns:1.2rem 1fr auto;gap:.65rem;padding-top:1.3rem;min-width:0}.path-number{font-size:.75rem;color:var(--muted);padding-top:.3rem}.need-paths h3{font-size:1.65rem;font-weight:400;line-height:1.18;letter-spacing:-.025em}.need-paths p{font-size:1rem;color:var(--muted);margin-top:1.15rem;max-width:320px}.need-paths a:hover h3{text-decoration:underline;text-underline-offset:5px}.path-arrow{font-size:1.2rem}.support-line{font-size:.9375rem;color:var(--muted);margin-top:2rem}.support-line a,.experience-line a,.closing-cta p a{text-decoration:underline;text-underline-offset:4px;color:var(--ink)}.proof-layout{display:grid;grid-template-columns:1.7fr 1fr;gap:3rem}.proof-layout article{min-width:0}.proof-image img{width:100%;height:auto;border:1px solid var(--line);object-fit:contain;background:#efede6}.proof-image figcaption{font-size:.8125rem;color:var(--muted);margin-top:.8rem}.proof-layout h3{font-size:1.55rem;font-weight:400;letter-spacing:-.025em;line-height:1.25;margin-top:1rem}.proof-lead h3{font-size:2rem}.proof-layout h3 a{display:flex;justify-content:space-between;gap:1rem}.proof-layout h3 a:hover{text-decoration:underline;text-underline-offset:5px}.proof-layout p{font-size:1rem;color:var(--muted);margin-top:.8rem;max-width:530px}.proof-support{display:grid;gap:2.5rem}.proof-support .proof-image img{max-height:200px;object-fit:contain}.approach-heading{display:grid;grid-template-columns:1fr 1.2fr 1.2fr;gap:2rem;align-items:start}.approach-heading>p:last-child{font-size:1rem;color:var(--muted);max-width:410px}.approach-steps{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;margin-top:2.5rem}.approach-steps li{padding-top:1rem;min-width:0}.approach-steps span{font-size:.8125rem;color:var(--muted)}.approach-steps h3{font-size:1.5rem;font-weight:400;margin:.6rem 0}.approach-steps p{font-size:1rem;color:var(--muted);max-width:320px}.experience-line{font-size:.875rem;color:var(--muted);margin-top:2rem;max-width:790px}.closing-cta{display:flex;justify-content:space-between;align-items:center;gap:2rem;padding-block:3rem;border-top:1px solid var(--line)}.closing-cta h2{font-size:clamp(1.8rem,2.7vw,2.8rem)}.closing-cta .button{flex-shrink:0}.closing-cta p{font-size:1rem;color:var(--muted);margin-top:1rem;max-width:620px}.fragment-target{scroll-margin-top:2rem}
.services-editorial{padding-block:0}.service-block{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:3rem;align-items:start;padding-block:3.75rem;border-bottom:1px solid var(--line)}.service-copy{min-width:0;max-width:490px}.service-copy h2{font-size:clamp(1.9rem,2.7vw,2.8rem);font-weight:400;line-height:1.12;letter-spacing:-.035em;margin-block:1rem 1.2rem}.service-copy>p:not(.eyebrow){font-size:1rem;color:var(--muted)}.service-copy>.service-scope,.service-copy>.service-limits{font-size:.875rem!important;margin-top:1.2rem}.related-links{display:flex;flex-direction:column;gap:.55rem;margin-top:1.3rem;font-size:.875rem}.related-links a{text-decoration:underline;text-underline-offset:4px;width:fit-content}.support-service{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:2rem;padding-block:3rem;align-items:start}.support-service h2{font-size:1.75rem;font-weight:400;line-height:1.2;letter-spacing:-.03em}.support-service>p:last-child{font-size:1rem;color:var(--muted)}.discovery-block .platform-context{display:block;border:0;padding:0;margin:1.5rem 0 0}.discovery-block .platform-context>p{font-size:.8125rem}.discovery-block .platform-context>p>span{display:block}.discovery-block .platform-context>ul{margin-top:1rem;max-width:none;justify-content:flex-start;gap:1.1rem;list-style:none}.discovery-block .platform-context>ul>li{flex:0 0 3rem}.platform-mark{width:3rem;height:3rem;object-fit:contain;opacity:.25}.platform-mark-note{font-size:.75rem;color:var(--muted)}
/* Keep the first view self-contained; spare desktop height sits before the lower row. */
@media(min-width:1024px) and (min-height:720px){.page-home .hero{justify-content:flex-start;padding-block:1.5rem 1.5rem}.page-home .hero h1{margin-top:0}.page-home .hero-bottom{padding-top:0}}
@media(max-width:899px){.page-home .hero{min-height:calc(100dvh - 96px);padding-block:2rem 3rem}.page-home .hero h1{font-size:clamp(3rem,7.8vw,5rem)}.page-home .hero-bottom{display:flex;flex-direction:column-reverse;gap:1.5rem;margin-top:auto;padding-top:2rem}.page-home p.hero-intro{margin:0;font-size:1rem;max-width:650px}.section-topline{grid-template-columns:1fr;gap:1rem}.section-topline h2 br{display:none}.needs-section,.home-proof,.approach-section{padding-block:3rem}.need-paths{grid-template-columns:1fr;gap:1.5rem}.need-paths>a{grid-template-columns:1.5rem 1fr auto}.need-paths h3{font-size:1.6rem}.need-paths h3 br{display:none}.need-paths p{margin-top:.5rem;max-width:600px}.proof-layout{grid-template-columns:1fr;gap:2.5rem}.proof-support{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}.proof-support .proof-image img{height:auto;max-height:none;aspect-ratio:16/10}.approach-heading{grid-template-columns:1fr;gap:1.2rem}.approach-heading h2 br{display:none}.approach-heading>p:last-child{max-width:640px}.service-block{grid-template-columns:1fr;gap:2rem;padding-block:2.75rem}.service-copy{max-width:700px}.support-service{grid-template-columns:1fr;gap:1rem}.closing-cta{align-items:start}.closing-cta h2 br{display:none}}
@media(max-width:600px){.page-home .hero h1{font-size:clamp(2.75rem,9.6vw,4.15rem);line-height:1.055}.proof-support{grid-template-columns:1fr}.proof-lead h3{font-size:1.65rem}.proof-support .proof-image img{aspect-ratio:auto}.approach-steps{grid-template-columns:1fr;gap:1.5rem}.approach-steps li{display:grid;grid-template-columns:1.5rem 1fr;gap:0 .6rem}.approach-steps span{padding-top:.85rem}.approach-steps p{grid-column:2}.closing-cta{flex-direction:column;gap:1.5rem;padding-block:2.5rem}}
/* Guides are reading spaces, not another promotional landing page. */
.guide-intro{padding-block:3rem 2.5rem;border-bottom:1px solid var(--line)}.guide-intro h1{font-size:clamp(2.5rem,4.3vw,4.8rem);font-weight:400;line-height:1.08;letter-spacing:-.05em;max-width:1040px;margin-block:1.25rem 1.6rem}.guide-intro>p:not(.eyebrow){max-width:770px;color:var(--muted);font-size:1.125rem}.guide-intro .guide-meta{font-size:.8125rem!important;margin-top:1.25rem}.guide-layout{display:grid;grid-template-columns:220px minmax(0,760px);gap:clamp(2rem,6vw,6rem);align-items:start;padding-block:3rem 4rem}.guide-contents{font-size:.875rem;display:flex;flex-direction:column;gap:.75rem;position:sticky;top:2rem}.guide-contents>p{font-size:.75rem;color:var(--muted);margin-bottom:.5rem}.guide-contents a{border-bottom:1px solid var(--line);padding-bottom:.6rem}.guide-copy{min-width:0;font-size:1.0625rem}.guide-copy section+section{margin-top:3rem;padding-top:2.5rem;border-top:1px solid var(--line)}.guide-copy h2{font-size:clamp(1.75rem,2.4vw,2.3rem);font-weight:400;line-height:1.15;letter-spacing:-.03em;margin-bottom:1.3rem}.guide-copy h3{font-size:1.125rem;font-weight:600;line-height:1.3}.guide-copy p{margin-bottom:1.15rem}.guide-copy a:not(.button){text-decoration:underline;text-underline-offset:3px}.guide-copy ul,.guide-copy ol{padding-left:1.3rem}.guide-copy li{margin-block:.75rem}.guide-copy .caption,.source-note{font-size:.8125rem;color:var(--muted)}.decision-aid{background:#efede6;padding:1.5rem;margin-block:1.5rem}.decision-aid dl,.brief-sheet,.worked-sequence{margin:1.2rem 0 1.5rem}.decision-aid dl>div,.brief-sheet>div,.worked-sequence>div{display:grid;grid-template-columns:1fr 2.3fr;gap:1.5rem;border-top:1px solid var(--line);padding-block:1rem}.guide-copy dt{font-size:.9375rem;font-weight:600}.guide-copy dd{margin:0;font-size:1rem;color:var(--muted)}.brief-sheet{border:1px solid var(--line);padding:0 1.5rem}.brief-sheet>div:first-child{border-top:0}.comparison-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 2rem;margin-block:1.5rem}.comparison-list>div{border-top:1px solid var(--line);padding-top:1rem}.comparison-list p{font-size:.9375rem;color:var(--muted);margin-top:.6rem}.guide-next{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 2rem;margin-top:2rem}.guide-copy .source-note{border-top:1px solid var(--line);padding-top:1.5rem;margin-top:3rem}.stage-list{margin-bottom:1.5rem}
@media(max-width:899px){.guide-layout{grid-template-columns:1fr;gap:2.5rem;padding-block:2rem 3rem}.guide-contents{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem 1.5rem}.guide-contents>p{grid-column:1/-1}.guide-intro{padding-block:2rem}.guide-copy{font-size:1rem}}
@media(max-width:500px){.guide-contents{grid-template-columns:1fr}.guide-copy h2 br{display:none}.decision-aid dl>div,.brief-sheet>div,.worked-sequence>div{grid-template-columns:1fr;gap:.5rem}.comparison-list{grid-template-columns:1fr}.decision-aid,.brief-sheet{padding-inline:1.2rem}}
/* Work: a compact index, three purposeful cases, then quieter supporting evidence. */
.project-index-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0 1.5rem;padding-block:1.5rem 2.5rem}.project-index-list a{padding:1rem 0;border-bottom:1px solid var(--line);font-size:.9375rem;line-height:1.35;min-width:0}.project-index-list strong{font-weight:500;display:block}.project-index-list span{display:block;font-size:.75rem;color:var(--muted);margin-top:.35rem}.project-index-list a:hover strong{text-decoration:underline;text-underline-offset:4px}.work-editorial>article{border-top:1px solid var(--line);padding-block:3.5rem}.work-editorial .project-entry,.case-feature{display:grid;grid-template-columns:1fr 1.8fr;gap:1.5rem 3rem}.case-heading h2,.case-row h2{font-size:clamp(2rem,3.2vw,3.2rem);font-weight:400;letter-spacing:-.045em;line-height:1.12;margin-top:.75rem}.case-heading .app-project-title{margin-top:.8rem}.case-heading .app-project-title h2{margin:0}.project-stage{font-size:.8125rem;color:var(--muted);margin-top:.9rem;line-height:1.5}.case-summary h3,.case-row h3{font-size:1.4rem;line-height:1.25;font-weight:400;letter-spacing:-.025em;margin-bottom:1rem}.case-summary>p,.case-row-copy>p:not(.eyebrow){font-size:1rem;line-height:1.65;max-width:680px;color:var(--muted)}.case-summary>.case-note{font-size:.875rem;margin-top:.85rem}.case-capabilities{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:.6rem 1.7rem;font-size:.8125rem;color:var(--muted);padding-block:.8rem;border-block:1px solid var(--line)}.case-summary .case-capabilities{margin-block:1.2rem}.case-extra{grid-column:1/-1;display:grid;grid-template-columns:150px minmax(0,430px);gap:2rem;align-items:center}.case-extra p{font-size:.875rem;color:var(--muted)}.case-extra a{display:inline-block;text-decoration:underline;text-underline-offset:3px;margin-top:.6rem}.case-evidence-single{grid-column:2;max-width:610px;width:100%}.case-evidence-pair{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem;align-items:start}.case-context{font-size:.875rem;color:var(--muted);margin-block:1.2rem}.case-context summary{cursor:pointer;list-style:revert;width:fit-content;text-decoration:underline;text-underline-offset:4px}.case-context summary:focus-visible{outline:2px solid var(--ink);outline-offset:4px}.case-context p{margin-top:.8rem;max-width:650px}.case-row{display:grid;grid-template-columns:1fr 1.15fr;gap:2rem 4rem;align-items:start}.case-row-copy h3,.case-row-copy>.project-summary{margin-top:1.2rem}.case-row-copy .text-link{margin-top:1.3rem}.case-row-image figure{margin:0}.case-row-image img{width:100%;height:auto;object-fit:contain;border:1px solid var(--line);aspect-ratio:auto}.case-row-image figcaption,.coachkit-gallery figcaption{font-size:.8125rem;line-height:1.5;color:var(--muted);margin-top:.7rem}.case-row-image figcaption span+span{margin-left:1rem}.case-row-image .website-capture>img{width:101.304348%;max-width:none;border:0;height:auto;aspect-ratio:auto}.case-detail-grid{grid-column:1/-1;display:grid;grid-template-columns:1fr 3.2fr 1fr;gap:1.5rem;max-width:760px;margin-left:auto;width:100%}.case-detail-grid .placeholder-surface{min-height:13.75rem;height:auto;aspect-ratio:auto}.case-detail-grid figcaption{font-size:.75rem}.project-notes-heading{padding-block:2.5rem;border-top:1px solid var(--ink)}.project-notes-heading h2{font-size:2rem;font-weight:400;letter-spacing:-.04em;line-height:1.15;margin-top:1rem}.case-note-row{display:grid;grid-template-columns:1fr 1.8fr;gap:3rem}.case-note-row h3{font-size:1.6rem;font-weight:400;line-height:1.2;letter-spacing:-.025em}.case-note-row>p{font-size:1rem;color:var(--muted);max-width:680px}.work-editorial>.case-note-row{padding-block:2rem}.studio-opening{display:grid;grid-template-columns:1.2fr 1fr;gap:4rem;padding-block:3.5rem}.studio-statement{font-size:clamp(2rem,3.6vw,3.5rem);line-height:1.12;letter-spacing:-.04em}.studio-opening h2,.studio-principles h2{font-size:1.5rem;line-height:1.25;font-weight:400;letter-spacing:-.025em;margin-bottom:1rem}.studio-opening p:not(.studio-statement),.studio-principles p{font-size:1rem;color:var(--muted);max-width:540px}.studio-opening p+p{margin-top:1rem}.studio-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.5rem;padding-bottom:3rem}.studio-principles>div{border-top:1px solid var(--line);padding-top:1rem}.studio-principles h2{margin-top:1.3rem}.studio-reading{display:flex;flex-wrap:wrap;align-items:baseline;gap:1rem 2rem;padding-block:1.5rem 3rem;font-size:1rem;color:var(--muted)}
@media(max-width:899px){.project-index-list{grid-template-columns:repeat(3,minmax(0,1fr))}.work-editorial .project-entry,.case-feature{grid-template-columns:1fr;gap:1.5rem}.case-evidence-single{grid-column:1}.case-evidence-pair{grid-template-columns:1fr 1fr}.case-row{gap:2rem;grid-template-columns:1fr 1fr}.case-detail-grid{max-width:100%}.studio-opening{gap:2.5rem}.studio-principles{gap:1.5rem}}
@media(max-width:700px){.project-index-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1.25rem}.work-editorial>article{padding-block:2.5rem}.case-row,.case-note-row,.studio-opening,.studio-principles{grid-template-columns:1fr;gap:1.5rem}.case-evidence-pair{grid-template-columns:1fr}.case-evidence-pair>.image-placeholder{max-width:430px}.case-extra{grid-template-columns:110px minmax(0,1fr);gap:1.2rem}.case-detail-grid{grid-template-columns:1fr 2fr;gap:1.2rem}.case-detail-grid .placeholder-surface{min-height:13.125rem;height:auto}.case-detail-grid>.image-placeholder:last-child{max-width:140px}.case-capabilities{gap:.5rem 1rem}.case-heading h2,.case-row h2{font-size:2.25rem}.studio-opening{padding-block:2.5rem}.studio-statement br{display:none}}
@media(max-width:380px){.case-extra{grid-template-columns:1fr}.small-mobile-slot{max-width:130px}.case-detail-grid{grid-template-columns:1fr 1.6fr}.case-detail-grid .placeholder-surface{padding:.6rem;font-size:.75rem}}
/* Contact presentation preserves the existing form and its fail-closed enhancement. */
.contact-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:4rem;padding-block:2.5rem 4rem;align-items:start}.contact-layout:has(form[hidden]){grid-template-columns:minmax(0,750px)}.contact-form-section:has(form[hidden]){display:none}.contact-form{max-width:850px}.contact-form[hidden]{display:none}.contact-form h2{font-size:clamp(1.8rem,3vw,2.5rem);font-weight:400;line-height:1.15;letter-spacing:-.035em;margin-top:.75rem}.contact-form-note{max-width:680px;color:var(--muted);font-size:.9375rem;line-height:1.6;margin:1rem 0 1.8rem}.contact-form-note a,.contact-privacy-link a{text-decoration:underline;text-underline-offset:.16em}.contact-privacy-link{font-size:.875rem;line-height:1.5;color:var(--muted);margin:.75rem 0 0}.contact-field-pair{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.contact-form label{display:block;font-size:.9rem;font-weight:600;margin:0 0 .65rem}.contact-form input,.contact-form textarea{display:block;width:100%;border: 1px solid var(--muted);border-radius:0;background:transparent;padding:.9rem 1rem;color:inherit;font:inherit;margin:0 0 1.5rem}.contact-form textarea{resize:vertical;min-height:10rem}.contact-form input:focus-visible,.contact-form textarea:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.contact-form .button{margin-top:1.3rem}.contact-form .button:disabled{opacity:.45;cursor:not-allowed}.contact-feedback{min-height:1.5em;font-size:.95rem;line-height:1.6;max-width:680px;margin-top:1rem}.contact-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}#contact-widget{max-width:100%;min-width:0}.contact-aside{border-left:1px solid var(--line);padding-left:2rem;min-width:0}.contact-aside h2{margin-bottom:1rem;font-size:1.3rem;font-weight:400;line-height:1.3;letter-spacing:-.02em}.contact-email{display:inline-block;max-width:100%;overflow-wrap:anywhere;font-size:clamp(1.1rem,1.6vw,1.5rem);line-height:1.5;border-bottom:1px solid var(--ink);margin-block:1rem 1.5rem}.contact-aside p{font-size:.9375rem;color:var(--muted);margin-bottom:1.2rem}.contact-layout:has(form[hidden]) .contact-aside{border-left:0;padding-left:0}
.privacy-copy{padding-block:1.5rem 4rem}.privacy-copy>section{display:grid;grid-template-columns:1fr 2.3fr;gap:3rem;border-bottom:1px solid var(--line);padding-block:2rem}.privacy-copy h2{font-size:1.3rem;font-weight:400;line-height:1.3;letter-spacing:-.025em}.privacy-copy p{font-size:1rem;line-height:1.7;color:var(--muted);max-width:750px}.privacy-copy p+p{margin-top:1rem}.privacy-copy a{color:var(--ink);text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
@media(max-width:899px){.contact-layout{grid-template-columns:1fr;gap:2rem}.contact-aside{border-left:0;border-top:1px solid var(--line);padding:1.5rem 0 0}.contact-email{font-size:1.4rem}.privacy-copy>section{grid-template-columns:1fr;gap:1rem}}
@media(max-width:640px){.contact-field-pair{grid-template-columns:1fr;gap:0}.contact-layout{padding-block:2rem 3rem}.guide-contents a{min-height:44px}}

.case-evidence-pair>.image-placeholder .placeholder-surface{aspect-ratio:1456/934}

@media(max-width:600px){.case-detail-grid{grid-template-columns:1fr;max-width:25rem;margin-left:0}.case-detail-grid>.portrait{max-width:12rem;width:100%}.case-detail-grid>.image-placeholder:last-child{max-width:12rem}}
/* Content-led colour rhythm, with each band serving a distinct visitor task. */
.band>.needs-section,.band>.approach-section{border-top:0}.needs-section .section-topline{grid-template-columns:1fr 2fr;margin-bottom:2rem}.needs-section .section-topline h2{font-size:clamp(1.9rem,2.8vw,2.8rem)}
.page-home .hero-intro{font-size:1.0625rem;line-height:1.6;max-width:590px;margin-left:auto;color:var(--muted)}.hero-intro .hero-offer{font-size:clamp(1.4rem,2.1vw,1.75rem);line-height:1.25;letter-spacing:-.025em;color:var(--ink);margin-bottom:1rem}.connection-line{font-size:1rem;margin-top:2rem;max-width:720px}.needs-section .support-line{margin-top:1rem}
.discovery-visual{--ink:#20201e;--muted:#64645d;--line:#c4c3b9;background:var(--paper);color:var(--ink);padding:1.8rem}.discovery-visual .explanation{background:transparent;padding:0}.plain-example{padding-bottom:1.5rem;margin-bottom:1.5rem;border-bottom:1px solid var(--line)}.plain-example>p:not(.eyebrow){font-size:1.4rem;line-height:1.35;letter-spacing:-.025em;margin-block:.8rem}.plain-example>span{display:block;font-size:.875rem;color:var(--muted);line-height:1.6}.discovery-visual .platform-context{padding-top:1.5rem;border-top:0}.band>.service-block{border-bottom:0}.services-editorial>.band .support-service{padding-block:3.25rem}
.case-facts{margin:0}.case-facts>div{display:grid;grid-template-columns:7.25rem minmax(0,1fr);gap:1rem;padding-block:.75rem;border-top:1px solid var(--line)}.case-facts dt{font-size:.8125rem;line-height:1.5;font-weight:600}.case-facts dd{margin:0;font-size:1rem;line-height:1.6;color:var(--muted)}.project-notes{padding-bottom:2rem}.project-notes .case-note-row{padding-block:1.75rem;border-top:1px solid var(--line)}.project-notes-heading{border-top:0}.project-index-list{padding-block:1rem 2rem}.work-editorial>article:first-child{border-top:0}
.studio-principles{padding-block:3.5rem}.studio-reading{padding-block:1.75rem}.studio-statement{max-width:600px}
.contact-aside,.contact-layout:has(form[hidden]) .contact-aside{border:0;padding:2rem}.contact-form input,.contact-form textarea{background:var(--paper)}
.guide-copy .brief-sheet,.guide-copy .worked-sequence{background:var(--stone);border:0;padding:0 1.5rem}.guide-copy .decision-aid{background:var(--stone)}.worked-sequence>div:first-child{border-top:0}.technical-detail{border-block:1px solid var(--line);padding-block:1rem}.technical-detail summary{cursor:pointer;font-size:1rem;font-weight:500}.technical-detail summary:focus-visible{outline:2px solid var(--ink);outline-offset:4px}.technical-detail>div{padding-top:1.3rem}.technical-detail p:last-child{margin-bottom:0}
.band>.page-intro{border-bottom:0}.privacy-copy{max-width:1200px}.privacy-copy>section{grid-template-columns:1fr 2.1fr}.privacy-copy .privacy-endnote{padding:1.75rem;border:0;margin-top:2rem}.privacy-copy p{max-width:68ch}
@media(max-width:899px){.needs-section .section-topline{grid-template-columns:1fr}.page-home .hero-intro{margin-left:0;font-size:1rem;max-width:650px}.studio-principles{grid-template-columns:1fr;padding-block:2.5rem;gap:1.8rem}.studio-principles>div{display:grid;grid-template-columns:1fr 1.7fr;column-gap:2rem}.studio-principles>div>.eyebrow{grid-column:1/-1}.studio-principles h2{margin-top:.8rem}.studio-principles p{margin-top:.8rem}.privacy-copy>section{grid-template-columns:1fr}.contact-aside,.contact-layout:has(form[hidden]) .contact-aside{padding:1.5rem}}
@media(max-width:600px){.need-paths h3{font-size:1.4rem}.discovery-visual{padding:1.3rem}.case-facts>div{grid-template-columns:1fr;gap:.3rem}.studio-principles>div{display:block}.guide-copy .brief-sheet,.guide-copy .worked-sequence{padding-inline:1.2rem}.privacy-copy .privacy-endnote{padding:1.3rem}.page-home .hero-offer br{display:none}}
/* A quiet signature below the hero introduction; the fuller invitation stays below. */
.hero-platforms{margin-top:1.35rem}.hero-platform-label{font-size:.8125rem;line-height:1.5;color:var(--muted);margin-bottom:.65rem}.hero-platforms>ul{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:clamp(.65rem,1.2vw,1.2rem);align-items:center;min-width:0;width:100%;max-width:28rem}.hero-platforms>ul>li{min-width:0}.hero-platforms .platform-mark{width:2.25rem;height:2.25rem;max-width:100%;opacity:.1}
@media(min-width:1024px) and (min-height:720px) and (max-height:820px){.page-home .hero{gap:1.25rem;padding-block:1rem 1.5rem}}
@media(max-width:480px){.hero-platforms>ul{grid-template-columns:repeat(4,minmax(0,1fr));max-width:17rem;gap:.8rem 1.1rem}}

/* A useful review invitation, with a visibly illustrative report and one next step. */
.visibility-review{padding-block:4.75rem}.visibility-review-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(2rem,5vw,5rem);align-items:start}.review-introduction,.review-example{min-width:0}.review-introduction h2{font-size:clamp(2rem,3.1vw,3.2rem);font-weight:400;line-height:1.12;letter-spacing:-.04em;max-width:23ch;margin-top:1rem}.review-lede{font-size:1.125rem;line-height:1.6;color:var(--muted);max-width:43ch;margin-top:1.4rem}.review-options{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin:2rem 0 0}.review-options dt{font-size:.9375rem;font-weight:600;line-height:1.5}.review-options dd{font-size:.9375rem;line-height:1.6;color:var(--muted);margin:.6rem 0 0}.review-example{background:var(--stone);padding:clamp(1.4rem,3vw,2.4rem)}.review-example h3{font-size:clamp(1.3rem,2vw,1.65rem);line-height:1.25;font-weight:400;letter-spacing:-.025em;margin-top:1rem}.review-example-context{font-size:.8125rem;line-height:1.5;color:var(--muted);margin-top:.5rem}.review-example dl{display:grid;gap:1.25rem;margin-top:1.7rem}.review-example dt{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem 1rem;font-size:.8125rem;line-height:1.5;font-weight:600}.review-example dt span{font-weight:400;color:var(--muted)}.review-example dd{font-size:.9375rem;line-height:1.6;margin:.35rem 0 0;color:var(--muted)}.review-next{display:flex;align-items:center;justify-content:space-between;gap:2rem;margin-top:2.5rem}.review-steps{list-style:none;display:flex;align-items:flex-start;gap:1.5rem;margin:0;padding:0}.review-steps li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.45rem .8rem;max-width:11rem;min-width:0;font-size:.9375rem;line-height:1.45}.review-step-number{grid-column:1/-1;font-size:.75rem;color:var(--muted)}.review-step-arrow{color:var(--muted)}.review-next>.button{flex-shrink:0}
@media(max-width:1100px){.review-options{grid-template-columns:1fr;gap:1.2rem}.review-next{align-items:flex-start;flex-direction:column;gap:1.8rem}}
@media(max-width:899px){.visibility-review-grid{grid-template-columns:1fr;gap:2rem}.visibility-review{padding-block:3rem}.review-introduction h2{max-width:25ch}.review-options{grid-template-columns:1fr 1fr;max-width:44rem}.review-example{max-width:44rem}.review-next{margin-top:2rem}}
@media(max-width:600px){.review-options{grid-template-columns:1fr;gap:1.2rem}.review-lede{font-size:1rem}.review-steps{flex-direction:column;gap:1rem}.review-steps li{grid-template-columns:1.4rem minmax(0,1fr);max-width:none;gap:.6rem}.review-step-number{grid-column:auto;padding-top:.15rem}.review-step-arrow{display:none}.review-next{gap:1.7rem}.review-example{padding:1.4rem}}

.home-proof .section-topline h2{font-size:clamp(1.8rem,2.8vw,2.8rem);max-width:30ch;line-height:1.15;text-wrap:balance}
/* Preserve native autocomplete while bringing its filled state into the KDS palette. */
.contact-form input:is(:autofill,:-webkit-autofill){background:var(--paper);box-shadow:0 0 0 1000px var(--paper) inset;-webkit-text-fill-color:var(--ink);caret-color:var(--ink)}
@media(forced-colors:active){.contact-form input:is(:autofill,:-webkit-autofill){box-shadow:none;-webkit-text-fill-color:CanvasText;caret-color:CanvasText}}

/* Services step labels do not need a decorative rule above them. */
.page-services .flow-step{border-top:0}

.page-services .service-copy h2{margin-top:0}

/* Owner-supplied portfolio captures share a calm, consistent viewing frame. */
.portfolio-shot{min-width:0;margin:0}.portfolio-shot-frame{display:flex;width:100%;height:clamp(15rem,32vw,26rem);overflow:hidden;border:1px solid var(--line);background:#fff;align-items:flex-start;justify-content:center}.portfolio-shot-frame .owner-screenshot{display:block;width:100%;height:100%;object-fit:contain;object-position:top center}.portfolio-shot figcaption{font-size:.8125rem;line-height:1.5;color:var(--muted);margin-top:.65rem}.portfolio-shot-stack{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(8rem,.75fr);gap:1.25rem;min-width:0;align-items:start}.portfolio-shot-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.portfolio-shot-grid-single{grid-template-columns:minmax(0,30rem);justify-content:start}.case-extra .portfolio-shot-frame{height:15rem}.case-detail-grid .portfolio-shot-frame{height:22rem}.portfolio-shot-medium .portfolio-shot-frame{height:clamp(16rem,26vw,22rem)}.portfolio-shot-small .portfolio-shot-frame{height:clamp(11rem,17vw,15rem)}.portfolio-shot-frame:focus-visible{outline:2px solid var(--ink);outline-offset:4px}.page-work .page-intro{border-bottom:0}#atomizer .case-capabilities{border-bottom:0}.page-work .closing-cta{border-top:0}
@media(max-width:700px){.portfolio-shot-grid{grid-template-columns:1fr}.portfolio-shot-frame{height:22rem}.portfolio-shot-stack{grid-template-columns:minmax(0,1.4fr) minmax(6.5rem,.7fr);gap:1rem}.portfolio-shot-medium .portfolio-shot-frame{height:18rem}.portfolio-shot-small .portfolio-shot-frame{height:12rem}.case-extra .portfolio-shot-frame{height:13rem}}
@media(max-width:380px){.portfolio-shot-frame{height:18rem}.portfolio-shot-medium .portfolio-shot-frame{height:16rem}.portfolio-shot-small .portfolio-shot-frame{height:11rem}}

/* A plain-language discovery story, grouped by meaning rather than divider lines. */
.diagram-discovery>h3{font-size:clamp(1.5rem,2.1vw,2rem);font-weight:400;line-height:1.2;letter-spacing:-.025em;max-width:26ch}.discovery-story{display:grid;gap:.65rem;list-style:none;margin:1.6rem 0 0;padding:0}.discovery-story>li{display:grid;grid-template-columns:1.3rem minmax(0,1fr);gap:.9rem;padding:1.2rem;min-width:0}.discovery-story>li:nth-child(2){background:var(--stone)}.discovery-story-number{font-size:.75rem;line-height:1.5;color:var(--muted);padding-top:.12rem}.discovery-story h4{font-size:1rem;line-height:1.4;font-weight:600;margin:0 0 .6rem}.discovery-story p{font-size:.9375rem;line-height:1.6;color:var(--muted)}.discovery-story .discovery-question{font-size:1.25rem;line-height:1.4;color:var(--ink);letter-spacing:-.02em;max-width:30ch}.discovery-story .discovery-example-note{font-size:.75rem;margin-top:.5rem}.discovery-facts{display:grid;gap:.25rem;list-style:none;margin:0 0 .75rem;padding:0;font-size:1rem;line-height:1.5}.discovery-channels{display:flex;flex-wrap:wrap;gap:.5rem 1.3rem;list-style:none;margin:0 0 .75rem;padding:0;font-size:1rem;line-height:1.5;font-weight:500}.discovery-visual .diagram-discovery figcaption{border:0;padding-top:0;margin-top:1.4rem;line-height:1.6}.discovery-visual .platform-context>p{font-size:.875rem}.discovery-visual .platform-context>p>span{font-size:.8125rem}
@media(max-width:600px){.discovery-story>li{padding:1rem;gap:.65rem}.discovery-story .discovery-question{font-size:1.125rem}.discovery-visual .platform-context>ul{gap:.85rem}.discovery-visual .platform-context>ul>li{flex-basis:2.5rem}.discovery-visual .platform-mark{width:2.5rem;height:2.5rem}}
