/* Shared refinements: one alignment system across every page. */
.hero-art img{width:84%;height:84%;max-width:440px}
.faq-list{width:min(100%,660px);max-width:660px;margin-inline:auto;border:0}
.faq-item{border:0;border-bottom:1px solid #e4e8ef}
.faq-item:first-child{border-top:0}
.faq-item summary{display:grid;grid-template-columns:minmax(0,1fr) 22px;align-items:center;justify-content:initial;gap:20px;width:100%;padding:22px 0;font-size:16px;line-height:1.5}
.faq-item summary>span{width:22px;height:22px;margin:0;justify-self:end;font-size:22px;line-height:1;display:grid;place-items:center}
.faq-item>div{padding:0 42px 22px 0}.faq-item p{font-size:14px;line-height:1.85;max-width:none}
.showcase-section{padding:48px 24px 0}.showcase-section .contact-showcase{margin:0;width:100%}.showcase-section video{display:block;width:100%;height:auto;max-height:740px;object-fit:contain;background:#f5f6f8;border-radius:6px}.showcase-section figcaption{margin-top:12px;text-align:center}
/* Large words sit on the page plane; the cards rotate above them. */
.twist-section{height:340vh}
.twist-stage{height:calc(100svh - 88px);min-height:580px;display:block;padding:0;isolation:isolate;position:sticky;top:88px;overflow:hidden}
.twist-caption{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:0;padding-bottom:50px;pointer-events:none}
.twist-caption .eyebrow{margin-bottom:20px;font-size:11px}
.twist-caption h2,.twist-caption h2 em{font-size:clamp(64px,8.8vw,128px);line-height:1.02;letter-spacing:-.055em;opacity:1}
.twist-caption h2 br{display:block}.twist-caption h2 em:before{content:none}
.spiral{position:absolute;inset:0;width:100%;height:100%;margin:0;z-index:2;overflow:hidden;pointer-events:none}
.approach-action{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);z-index:3}.approach-action:hover{transform:translateX(-50%)}
.spiral-card.process-twist-card{width:230px;height:212px;padding:22px}
/* Pale stack backs, fine lime edges and the same white framing as the reference. */
.deck-peek{background:#fff;border:6px solid #fff;border-radius:5px;box-shadow:0 -1px 0 #f0f2f4,0 -8px 24px #24314e04;top:calc(var(--peek)*-9px);left:calc(var(--peek)*9px);right:calc(var(--peek)*9px)}
.deck-peek:before{content:'';position:absolute;top:1px;left:5px;right:5px;height:1px;background:#d8ed8e;opacity:calc(.85 - var(--peek)*.11)}
.deck-card{transition:none!important;transform-origin:50% 50%;backface-visibility:hidden}
.deck-cards{perspective:1500px;transform-style:preserve-3d;isolation:auto}
.content-icon{display:block;width:24px;height:24px;flex:none;color:var(--blue)}
.icon-badge{display:block;color:var(--blue)}.icon-badge .content-icon{width:24px;height:24px}
.catalog-art .icon-badge{color:#c6cfef;z-index:1}.catalog-art .content-icon{color:#d5dcff}
.service-catalog{grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 24px;padding-top:64px!important}
.catalog-heading{grid-column:1/-1;max-width:700px;margin-bottom:0}.catalog-heading h2{font-size:38px;line-height:1.15}.catalog-heading>p{font-size:14px;line-height:1.85;max-width:530px;margin-top:20px}
.catalog-art{height:270px}.catalog-art img{max-width:260px}.catalog-copy{max-width:none}.catalog-copy h2{font-size:26px;line-height:1.2;min-height:2.4em;max-width:none}.catalog-copy p{font-size:clamp(11px,1vw,14px);line-height:1.8;max-width:none}.catalog-copy ul{min-height:58px;align-content:flex-start}
.studio-inner-hero{display:block}.studio-inner-hero>div{max-width:1000px}.studio-inner-hero h1{font-size:clamp(42px,4.3vw,62px);max-width:950px}
.studio-intro{grid-template-columns:minmax(200px,300px) minmax(0,680px);gap:64px;align-items:start;justify-content:start}
.studio-intro .studio-portrait{width:100%;max-width:300px;justify-self:start}.studio-portrait img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;object-position:center 20%;border-radius:6px}.studio-biography>div+div{margin-top:24px}.studio-biography .eyebrow{margin-bottom:16px}
.ebook-layout{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:48px;align-items:stretch}
.ebook-art{height:100%;min-height:0;max-height:none;object-fit:cover;position:absolute;inset:0}
.ebook-image-frame{position:relative;min-width:0;border-radius:6px;overflow:hidden;background:#f5f7f4}
.ebook-signup{height:auto;align-self:stretch}
.ebook-chapters{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;max-width:none}.ebook-copy{max-width:none}.ebook-chapters article{padding:22px 18px}.ebook-chapters h3{font-size:18px;line-height:1.3;margin-top:20px}.ebook-chapters p{font-size:12px;line-height:1.8;margin-top:14px}.ebook-chapters .content-icon{width:26px;height:26px}
.experience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 24px;align-items:start}.experience-grid .cs-visual-story{display:flex;flex-direction:column;gap:22px;margin:0;min-width:0}.experience-grid .cs-story-copy{width:100%}.experience-grid .cs-story-copy h3{font-size:25px;line-height:1.2}.experience-grid .cs-story-copy p{max-width:none;font-size:13px;line-height:1.85;margin-top:16px;min-height:5.55em}.experience-grid figure{width:100%;margin:0;order:-1}.experience-grid .cs-story-copy h3>span{margin-bottom:16px}.experience-grid figcaption{display:none}.experience-grid .cs-shot img{aspect-ratio:4/3;object-fit:contain}.cs-decision-icon small,.cs-delivery-number{display:none}
@media(min-width:701px) and (max-width:1050px){.service-catalog{grid-template-columns:repeat(2,minmax(0,1fr))}.experience-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ebook-chapters{grid-template-columns:repeat(3,minmax(0,1fr))}.catalog-copy p{font-size:13px}.catalog-copy p br{display:none}}
@media(max-width:700px){
.hero-art img{width:86%;height:86%;max-width:340px}
.faq-list{max-width:100%}.faq-item summary{font-size:14px;line-height:1.55;gap:14px;padding:20px 0}.faq-item>div{padding:0 36px 20px 0}.faq-item p{font-size:12px;line-height:1.85}
.showcase-section{padding:40px 20px 0}.showcase-section .contact-showcase{margin:0}
.twist-section{height:360vh}.twist-stage{top:76px;height:calc(100svh - 76px);min-height:520px;padding:0;display:block}.twist-caption{inset:0;padding:0 0 42px}.twist-caption .eyebrow{font-size:9px}.twist-caption h2,.twist-caption h2 em{font-size:clamp(42px,11vw,65px);line-height:1.06}.spiral{position:absolute;inset:0;height:100%;width:100%;overflow:hidden}.spiral-card.process-twist-card{width:205px;height:212px;padding:20px}.process-twist-card h3{font-size:19px}.approach-action{bottom:26px;left:50%;transform:translateX(-50%);white-space:nowrap}
.deck-cards{transform:none}.deck-peek{left:calc(var(--peek)*7px);right:calc(var(--peek)*7px);top:calc(var(--peek)*-8px);border-width:5px}
.service-catalog{grid-template-columns:1fr;gap:36px;padding-top:40px!important}.catalog-heading{margin-bottom:0}.catalog-heading h2{font-size:30px}.catalog-heading>p{font-size:13px;margin-top:20px}.catalog-art{height:280px}.catalog-copy h2{font-size:27px;min-height:0}.catalog-copy p{font-size:clamp(10px,3vw,13px)}.catalog-copy ul{min-height:0}.catalog-copy .eyebrow{font-size:8px}
.studio-inner-hero{display:block}.studio-inner-hero h1{font-size:39px}.studio-intro{grid-template-columns:1fr;gap:30px}.studio-intro .studio-portrait{max-width:230px}.studio-biography>div+div{margin-top:20px}
.ebook-layout{grid-template-columns:1fr;gap:24px}.ebook-image-frame{aspect-ratio:1.1;height:auto}.ebook-art{height:100%;width:100%;object-fit:cover}.ebook-chapters{grid-template-columns:1fr;gap:16px}.ebook-chapters article{display:grid;grid-template-columns:26px minmax(0,1fr);gap:0 16px;padding:22px}.ebook-chapters h3{margin:0;font-size:19px}.ebook-chapters p{grid-column:2;margin-top:12px}.ebook-chapters .content-icon{width:24px;height:24px}
.experience-grid{grid-template-columns:1fr;gap:32px}.experience-grid .cs-story-copy h3{font-size:25px}.experience-grid .cs-story-copy p{min-height:0;font-size:13px}.experience-grid .cs-visual-story{gap:22px}
}
@media(prefers-reduced-motion:reduce){.twist-section{height:auto}.twist-stage{height:auto;min-height:0;position:relative;top:0;padding:40px 0;overflow:visible}.twist-caption{position:relative;inset:auto;padding:0}.twist-caption h2,.twist-caption h2 em{font-size:42px}.spiral{position:relative;inset:auto;height:auto;overflow:visible;margin:30px 0}.approach-action{position:relative;inset:auto;transform:none;margin:24px auto 0}.approach-action:hover{transform:none}.deck-peeks{display:none}}
@media(min-width:1051px){.ebook-chapters h3{font-size:clamp(13px,1.25vw,18px);white-space:nowrap}}
.deck-cards{transform-style:flat;isolation:isolate}.deck-peeks{z-index:0}
@media(max-width:700px){.twist-caption h2,.twist-caption h2 em{font-size:clamp(48px,16vw,60px)}.twist-caption h2{max-width:100%}}
