/* Generated from styles.css. Design bases: 1920 / 1024 / 390; spacing grid: 8. Edit source, then npm run build. */@font-face{font-family:Leon;src:url("/site-assets/migration-d6b61b25bf4eeac0-Leon-ProductRegular.woff2?v=4e849f6d8a2694b2") format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Leon;src:url("/site-assets/migration-7995d15c3cca9148-Leon-ProductBold.woff2?v=ccd4bb660c03ff2a") format('woff2');font-weight:700;font-display:swap}
:root{--paper:#fffefc;--ink:#252525;--dark:#570e40;--pink:#ef75aa;--pink-text:#b82a70;--lime:#c5df80;--turquoise:#c5df80;--gold:#e6dfcb;--mint:#edf3d9;--blush:#fae8ef;--muted:#68615f;--line:#dfd9d5;--gutter:5.41666667vw;--display:Leon,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:1.66666667vw}body{margin:0;background:var(--paper);color:var(--ink);font:0.98958333vw/1.7 Leon,Arial,sans-serif;-webkit-font-smoothing:antialiased}h1,h2,h3,p,figure{margin:0}h1,h2{font-family:var(--display);font-weight:700;line-height:1.08;letter-spacing:-.035em;text-wrap:balance}h1{font-size:clamp(2.8125vw,6.5vw,4.89583333vw)}h2{font-size:clamp(2.1875vw,4.65vw,3.54166667vw)}p+p{margin-top:1.25vw}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}button{font:inherit;color:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:0.15625vw solid var(--dark);outline-offset:0.3125vw}.site-header a:focus-visible,.site-footer a:focus-visible,.hero a:focus-visible,.handoff a:focus-visible{outline-color:var(--dark)}.wrap{width:min(79.16666667vw,100%);padding-inline:var(--gutter);margin-inline:auto}.lead{font-size:clamp(1.19791667vw,2vw,1.51041667vw);line-height:1.55}.micro{font-size:0.72916667vw;line-height:1.65;color:var(--muted);max-width:19.79166667vw}
.button{display:inline-flex;align-items:center;justify-content:center;gap:1.25vw;min-height:2.8125vw;padding:0.83333333vw 1.25vw;background:var(--dark);color:white;border:0.05208333vw solid transparent;border-radius:26.04166667vw;font-size:0.88541667vw;line-height:1.5;transition:background .2s,transform .2s}.button>span{font-size:1.04166667vw}.button:hover{background:#742052;transform:translateY(-0.10416667vw)}.text-link{display:inline-flex;align-items:center;gap:1.25vw;padding:0.41666667vw 0;border-bottom:0.05208333vw solid currentColor;min-height:2.29166667vw;font-size:0.9375vw}.text-link:hover{color:var(--dark)}.skip{position:fixed;right:1.04166667vw;top:-5.20833333vw;background:var(--ink);color:white;padding:0.83333333vw;z-index:100}.skip:focus{top:0.78125vw}
.site-header{background:var(--paper);color:var(--ink);border-bottom:0.05208333vw solid var(--line)}.header{height:5.10416667vw;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1.66666667vw;position:relative}.logo{grid-column:2;grid-row:1}.logo img{width:5.72916667vw;filter:grayscale(1) brightness(.35)}.header nav{grid-column:1;grid-row:1;display:flex;gap:1.25vw;font-size:0.78125vw}.header nav a{padding-block:0.83333333vw;color:var(--muted)}.header nav a:hover,.header nav a[aria-current=page]{color:var(--ink)}.header nav a[aria-current=page]{text-decoration:underline;text-decoration-color:var(--pink);text-underline-offset:0.41666667vw}.header-cta{grid-column:3;grid-row:1;justify-self:end;display:flex;align-items:center;gap:1.25vw;font-size:0.78125vw;padding:0.41666667vw 1.25vw;border:0.05208333vw solid #570e4040;color:var(--dark);border-radius:26.04166667vw;transition:background .2s}.header-cta:hover{background:var(--blush)}.menu-toggle{display:none}
/* The supplied Instagram palette, original faceted texture and local brand fonts. */
.hero{position:relative;isolation:isolate;padding-top:2.91666667vw;padding-bottom:0.83333333vw;color:var(--ink);text-align:center}
.hero-texture{position:absolute;inset:0 0 7.55208333vw;z-index:-2;background:#f2e8da}
.hero-texture::after{content:'';position:absolute;inset:65% 0 0;background:linear-gradient(transparent,var(--paper))}
.hero-copy{max-width:59.89583333vw}.hero h1{font-size:clamp(3.125vw,5.8vw,4.375vw);line-height:1.04;letter-spacing:-.035em}.hero h1 span{display:block}.hero h1 .hero-accent{color:var(--pink-text)}
.hero .lead{font-size:1.04166667vw;line-height:1.6;max-width:29.16666667vw;margin:1.66666667vw auto 0;color:var(--ink)}.hero-action{margin-top:1.25vw}.hero .micro{font-size:0.67708333vw;max-width:20.83333333vw;margin:0.83333333vw auto 0}

.split{display:grid;grid-template-columns:1.1fr 1fr;gap:9.16666667vw;align-items:start}.split>div{max-width:25.52083333vw}
/* Existing illustrations and scroll choreography remain unchanged. */
.gather-section .split h2{position:relative;isolation:isolate}.gather-section .small-lead{max-width:20.3125vw}
.thinking{padding-block:4.58333333vw 6.25vw}.thinking-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:7.91666667vw;align-items:center}.thinking h2{margin-bottom:1.66666667vw}.thinking .lead{margin-bottom:1.25vw;max-width:20.3125vw}.thinking-grid>div>p:last-child{color:var(--muted)}.thinking-path{list-style:none;padding:1.25vw 0;margin:0;border-block:0.05208333vw solid var(--line)}.thinking-path li{font-size:clamp(1.19791667vw,2.25vw,1.71875vw);padding:0.83333333vw 0;display:flex;align-items:baseline;gap:1.25vw;line-height:1.4}.thinking-path li:nth-child(2){margin-right:0.83333333vw}.thinking-path li:nth-child(3){margin-right:1.66666667vw}.thinking-path li:nth-child(4){margin-right:2.5vw}.thinking-path li:nth-child(5){margin-right:3.33333333vw}.thinking-path li>span{font-size:0.72916667vw;color:var(--muted);direction:ltr;flex:0 0 1.04166667vw}.thinking-path li:last-child{font-weight:700}
.process{padding-block:1.66666667vw 6.66666667vw}.process-intro{max-width:41.66666667vw;margin-inline:auto;text-align:center}.process-intro h2{position:relative;isolation:isolate;margin-bottom:1.66666667vw}.process-intro .heading-accent{color:var(--pink-text)}.process-intro>div{max-width:31.25vw;margin-inline:auto}.process-intro p{font-size:1.04166667vw}.process-intro p+p{color:var(--muted);margin-top:0.83333333vw}.timeline{--progress:1;list-style:none;position:relative;margin:3.75vw 0 0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1.66666667vw}.timeline::before,.timeline::after{content:'';position:absolute;top:0.72916667vw;right:0.41666667vw;left:calc((100% - 6.25vw)/5 - 0.41666667vw);height:0.10416667vw;background:var(--line)}.timeline::after{background:var(--ink);transform:scaleX(var(--progress));transform-origin:right}.timeline li{position:relative;padding-top:2.5vw;z-index:1}.timeline li::before{content:'';position:absolute;top:0.36458333vw;right:0;width:0.83333333vw;height:0.83333333vw;border-radius:50%;background:var(--paper);border:0.10416667vw solid #92978e}.timeline li.is-active::before{background:var(--lime);border-color:var(--ink)}.timeline li>span{font-family:var(--display);font-weight:700;font-size:1.61458333vw;line-height:1.1;display:block;min-height:3.64583333vw;max-width:10.9375vw}.timeline li:first-child>span{font-size:2.76041667vw;line-height:1}.timeline p{font-size:0.88541667vw;margin-top:0.83333333vw;line-height:1.5}.timeline small{font-size:0.72916667vw;display:block;color:var(--muted);margin-top:0.41666667vw;line-height:1.5}
/* A lime canvas echoes the project mockups in the Instagram feed. */
.handoff{padding-bottom:6.25vw}.handoff-panel{display:grid;grid-template-columns:1.15fr 1fr;gap:5vw;padding:3.33333333vw;background:var(--mint) url("/site-assets/migration-fe8c15fb5597ab0e-facets-lime.webp?v=c1fa0d63c5d67943") center/cover;border-radius:0.9375vw;align-items:center;color:var(--ink);overflow:hidden}.handoff h2{margin-bottom:1.66666667vw;color:var(--ink);font-size:clamp(2.1875vw,4.25vw,3.22916667vw)}.handoff p{color:var(--muted);font-size:0.9375vw}.handoff .lead{margin-top:1.66666667vw;max-width:26.5625vw;font-size:1.25vw;color:var(--ink)}.handoff-visual{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:19.79166667vw}.handoff-visual img{width:min(17.96875vw,100%);height:auto;transform:rotate(-9deg)}.handoff-visual span{font-size:0.78125vw;color:var(--muted);margin-top:0.83333333vw}
.case-section{padding-block:0 3.75vw}.case-intro{display:grid;grid-template-columns:1.35fr 1fr;gap:10vw;margin-bottom:2.91666667vw}.case-intro h2{font-size:clamp(1.97916667vw,4.25vw,3.22916667vw)}.case-intro>div{max-width:20.83333333vw;padding-top:0.41666667vw}.case-intro p{font-size:0.98958333vw}.case-intro .text-link{margin-top:1.25vw}.project-image{display:block}.project-browser{border-radius:0.625vw;overflow:hidden;background:var(--blush);padding:2.08333333vw 2.08333333vw 0}.project-browser-top{height:1.77083333vw;padding-inline:0.83333333vw;display:flex;align-items:center;justify-content:space-between;direction:ltr;background:white;color:#6b6b68;font-size:0.625vw;border-radius:0.36458333vw 0.36458333vw 0 0;border-bottom:0.05208333vw solid #ddd}.project-browser-top span:first-child{font-size:0.41666667vw;letter-spacing:0.15625vw}.project-image img{width:100%;background:#f8f8f8}.project-image>span{display:block;font-size:0.78125vw;padding-top:0.83333333vw}.project-image:hover>span{text-decoration:underline;text-underline-offset:0.26041667vw}.case-follow{display:grid;grid-template-columns:1fr 1fr;gap:15vw;padding-top:2.5vw}.case-follow>p:first-child{max-width:23.4375vw;font-size:0.98958333vw}.case-follow .lead{font-family:var(--display);font-weight:700;font-size:1.97916667vw;line-height:1.2;margin:0}.testimonial-slot{margin-top:1.66666667vw;border-right:0.10416667vw solid var(--pink);padding:0.41666667vw 1.25vw;color:var(--muted);font-size:0.72916667vw}.testimonial-slot code{display:block;font:0.57291667vw/1.7 Arial,sans-serif;direction:ltr;text-align:right;overflow-wrap:anywhere;margin-top:0.41666667vw}
.about{padding-block:4.58333333vw 6.66666667vw;display:grid;grid-template-columns:1fr 1fr;gap:10vw;align-items:center}.portrait{height:31.25vw;background:var(--blush);display:flex;align-items:end;justify-content:center;position:relative;border-radius:0.67708333vw;transform:rotate(-2deg);isolation:isolate}.portrait::before{content:'';position:absolute;inset:0;background:var(--blush) url("/site-assets/migration-ab72bd88e9cb5ce1-facets-pink.webp?v=be43028bc192a605") center/cover;border-radius:0.67708333vw;transform:rotate(7deg);z-index:-1}.portrait img{height:100%;width:100%;max-width:100%;object-fit:cover;object-position:center;position:relative;border-radius:0.67708333vw}.about-copy h2,.standalone-about h1{font-size:clamp(2.08333333vw,4.3vw,3.33333333vw);margin-bottom:1.66666667vw}.about-copy>p{font-size:1.04166667vw}.listening{margin-block:1.66666667vw}.listening p:first-child{font-family:var(--display);font-weight:700;font-size:clamp(1.66666667vw,3.15vw,2.39583333vw);line-height:1.15;color:var(--pink-text)}.listening p:last-child{font-size:1.09375vw;color:var(--muted);line-height:1.6;margin-top:0.83333333vw}.about-copy strong{font-weight:400}.about-copy>.button{margin-top:1.66666667vw}
.decision-panels{display:grid;grid-template-columns:1fr 1fr;gap:1.25vw;padding-bottom:6.66666667vw}.not-ready,.pricing{padding:2.5vw;background:var(--blush);color:var(--ink);border-radius:0.83333333vw}.not-ready h2,.pricing h2{font-size:clamp(1.97916667vw,3.5vw,2.70833333vw);color:var(--ink);max-width:25.52083333vw;line-height:1.08}.not-ready>div,.pricing>div{margin-top:1.66666667vw}.not-ready>div>p:first-child,.pricing>div>p:first-child{font-size:0.9375vw;color:var(--muted)}.not-ready .lead,.pricing .lead{font-size:1.30208333vw;line-height:1.5;margin-top:1.25vw}.pricing>div>p:last-child{font-size:0.88541667vw;color:var(--muted)}
.pricing{background:#f3efe6}.closing{background:var(--blush) url("/site-assets/migration-ab72bd88e9cb5ce1-facets-pink.webp?v=be43028bc192a605") center/cover;padding-block:4.58333333vw}.closing-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:7.08333333vw;align-items:center}.closing h2{font-size:clamp(2.34375vw,5.05vw,3.85416667vw)}.closing p{font-size:1.25vw;margin-top:1.25vw}.closing-action{justify-self:end}.closing .button{background:var(--dark);color:white;font-size:0.9375vw}.closing .button:hover{background:#742052}.whatsapp{display:block;width:fit-content;margin:1.25vw auto 0;font-size:0.78125vw;text-decoration:underline;text-underline-offset:0.3125vw;color:var(--ink)}.site-footer{background:var(--paper);color:var(--ink);border-top:0.05208333vw solid var(--line)}.footer{padding-block:2.5vw;display:flex;align-items:center;justify-content:space-between;gap:1.66666667vw;font-size:0.78125vw}.footer img{width:5.41666667vw;filter:grayscale(1) brightness(.35)}.footer p{color:var(--muted)}.footer>a:last-child{border-bottom:0.05208333vw solid var(--line);padding-bottom:0.41666667vw}.mobile-cta{display:none}
/* The same display/body pairing and palette carry through the inner pages. */
.page-intro{padding-top:4.58333333vw;padding-bottom:5.83333333vw;min-height:70vh}.page-intro>h1{margin-bottom:1.66666667vw;max-width:57.29166667vw}.page-intro>.lead{max-width:37.5vw;font-size:1.40625vw}.page-intro>.project-image,.page-intro>.browser-frame{margin-block:3.33333333vw}.page-intro>.project-image{background:var(--blush);padding:1.66666667vw;border-radius:0.625vw}.page-intro>.button{margin-top:3.33333333vw}.page-intro>.timeline{margin-block:4.16666667vw 0}.prose{max-width:38.54166667vw;margin-block:3.75vw;margin-right:auto}.prose h2{font-size:2.1875vw;margin:2.08333333vw 0 1.25vw}.prose p{font-size:1.04166667vw}.back-link{margin-bottom:1.66666667vw;font-size:0.83333333vw}.browser-frame{border:0.05208333vw solid var(--line);border-radius:0.46875vw;overflow:hidden;background:white;box-shadow:0 1.04166667vw 2.34375vw #3939390a}.browser-frame img{width:100%}.browser-bar{display:flex;justify-content:space-between;font-size:0.67708333vw;background:var(--blush);padding:0.83333333vw 1.25vw}.browser-bar span{font-size:0.46875vw;letter-spacing:0.15625vw}.browser-scroll{max-height:29.6875vw;height:42vw;overflow:auto;overscroll-behavior:contain;scrollbar-color:var(--ink) #eee}.browser-scroll:focus-visible{outline-offset:-0.20833333vw}.preview-hint{font-size:0.78125vw;color:var(--muted);margin-top:-2.08333333vw}.case-story{max-width:39.58333333vw;margin-inline:auto}.case-story h2{margin-top:3.33333333vw;margin-bottom:1.25vw;font-size:2.60416667vw}.case-story .button{margin-top:2.5vw}.standalone-about{padding-top:4.58333333vw}.contact-intro{max-width:67.70833333vw}.contact-intro>p{max-width:37.5vw}.contact-choice{margin-top:2.08333333vw}.setup-status{font-size:0.78125vw;color:var(--muted);max-width:25vw;margin-top:1.25vw}.secondary-contact{margin-top:3.75vw;padding-top:2.08333333vw;border-top:0.05208333vw solid var(--line)}.secondary-contact h2{font-size:1.97916667vw;margin-bottom:1.25vw}.editorial-empty{margin-top:4.16666667vw;border-right:0.15625vw solid var(--pink);padding:0.83333333vw 1.66666667vw}.editorial-empty h2{font-size:2.08333333vw;margin-bottom:0.83333333vw}.post{max-width:55.20833333vw;padding-block:4.16666667vw 6.66666667vw}.post h1{margin-block:1.66666667vw;font-size:clamp(2.5vw,6vw,4.42708333vw)}.post-deck{font-size:1.40625vw;color:var(--muted)}.post-body{max-width:37.5vw;margin-top:3.75vw}.post-body h2{font-size:2.1875vw;margin-block:2.5vw 1.25vw}.post-body blockquote{margin:2.08333333vw 0;padding:1.25vw 1.25vw;border-right:0.15625vw solid var(--pink);font-size:1.45833333vw}.template-label{margin-top:2.08333333vw;font-size:0.72916667vw;color:var(--muted)}
@media(min-width:761px) and (max-width:1100px){.header{gap:1.25vw}.header nav{gap:0.83333333vw;font-size:0.72916667vw}.logo img{width:4.94791667vw}.header-cta{gap:0.83333333vw;padding-inline:0.83333333vw;font-size:0.72916667vw}.thinking-grid{gap:5vw}.thinking h2{font-size:2.39583333vw}.thinking-path li{font-size:1.30208333vw;gap:0.83333333vw}.thinking-path li:nth-child(n){margin-right:0}.timeline{gap:1.25vw}.timeline::before,.timeline::after{left:calc((100% - 4.16666667vw)/5 - 0.41666667vw)}.timeline li>span{font-size:1.40625vw;min-height:3.38541667vw}.timeline li:first-child>span{font-size:2.34375vw}.timeline p{font-size:0.83333333vw}.handoff-panel{padding:2.08333333vw;gap:4.16666667vw}.handoff-visual{min-height:17.1875vw}.about{gap:5.83333333vw}.portrait{height:26.04166667vw}.case-intro{gap:5.83333333vw}.not-ready,.pricing{padding:1.66666667vw}.closing-layout{gap:4.16666667vw}.closing .button{font-size:0.83333333vw;padding-inline:1.25vw}}
@media(max-width:760px){
body{font-size:0.9375vw}.header{height:4.42708333vw;display:flex;gap:0.83333333vw}.logo{order:0;margin-left:auto}.logo img{width:4.47916667vw}.header-cta{order:1;font-size:0.67708333vw;gap:0.41666667vw;padding:0.41666667vw 0.83333333vw}.menu-toggle{display:flex;align-items:center;gap:0.41666667vw;border:0;background:none;font-size:0.72916667vw;padding:0.41666667vw 0;order:2;color:var(--ink)}.menu-toggle span{font-size:0.72916667vw}.header nav{display:none;position:absolute;top:4.42708333vw;left:0;right:0;z-index:30;background:var(--paper);padding:1.25vw var(--gutter) 1.66666667vw;border-bottom:0.05208333vw solid var(--line);flex-direction:column;gap:0.41666667vw;box-shadow:0 1.04166667vw 1.30208333vw #0002}.header nav.is-open{display:flex}.header nav a{min-height:2.5vw}.hero{padding-top:2.08333333vw;padding-bottom:0}.hero-texture{bottom:4.6875vw;background-position:58% center}.hero h1{font-size:clamp(1.82291667vw,8.6vw,3.33333333vw);line-height:1.08;letter-spacing:-.035em}.hero .lead{font-size:0.9375vw;line-height:1.6;margin-top:1.25vw;max-width:22.91666667vw}.hero-action{margin-top:1.25vw}.hero .button{font-size:0.83333333vw;padding:0.83333333vw 1.25vw;min-height:2.65625vw}.hero .micro{font-size:0.625vw;margin-top:0.83333333vw;max-width:16.40625vw}h2{font-size:2.23958333vw}.split{grid-template-columns:1fr;gap:1.25vw}.thinking{padding-block:0.83333333vw 4.16666667vw}.thinking-grid{grid-template-columns:1fr;gap:1.66666667vw}.thinking h2{margin-bottom:1.25vw}.thinking .lead{font-size:1.19791667vw}.thinking-path{padding-block:0.83333333vw}.thinking-path li{font-size:1.25vw;padding-block:0.83333333vw;gap:0.83333333vw}.thinking-path li>span{font-size:0.625vw}.thinking-path li:nth-child(2){margin-right:0.41666667vw}.thinking-path li:nth-child(3){margin-right:0.83333333vw}.thinking-path li:nth-child(4){margin-right:1.25vw}.thinking-path li:nth-child(5){margin-right:1.66666667vw}.process{padding-block:1.66666667vw 4.16666667vw}.process-intro h2{margin-bottom:1.25vw}.process-intro p{font-size:0.9375vw}.timeline{display:block;margin-top:2.08333333vw;margin-right:0.41666667vw;padding:0}.timeline::before,.timeline::after{top:0.9375vw;bottom:0.41666667vw;right:0.36458333vw;left:auto;height:auto;width:0.10416667vw}.timeline::after{transform:scaleY(var(--progress));transform-origin:top}.timeline li{padding:0 2.08333333vw 1.66666667vw;min-height:6.14583333vw}.timeline li:last-child{padding-bottom:0;min-height:0;background:var(--paper)}.timeline li::before{top:0.67708333vw;right:0;width:0.83333333vw;height:0.83333333vw}.timeline li>span{font-size:1.66666667vw;min-height:0;max-width:none}.timeline li:first-child>span{font-size:2.8125vw}.timeline li:first-child::before{top:0.9375vw}.timeline p{font-size:0.88541667vw;margin-top:0.41666667vw}.timeline small{font-size:0.72916667vw;margin-top:0.41666667vw}.handoff{padding-bottom:4.16666667vw}.handoff-panel{grid-template-columns:1fr;gap:0.83333333vw;padding:1.66666667vw 1.25vw;border-radius:0.52083333vw}.handoff h2{font-size:2.08333333vw;margin-bottom:1.25vw}.handoff p{font-size:0.88541667vw}.handoff .lead{font-size:1.14583333vw;margin-top:1.25vw}.handoff-visual{min-height:13.02083333vw}.handoff-visual img{width:12.5vw}.handoff-visual span{font-size:0.72916667vw;margin-top:0}.case-section{padding-bottom:1.66666667vw}.case-intro{grid-template-columns:1fr;gap:1.25vw;margin-bottom:1.66666667vw}.case-intro h2{font-size:2.08333333vw}.case-intro>div{padding:0}.case-intro p{font-size:0.9375vw}.case-intro .text-link{margin-top:1.25vw;font-size:0.88541667vw}.project-browser{padding:0.83333333vw 0.83333333vw 0;border-radius:0.41666667vw}.project-browser-top{height:1.25vw;padding-inline:0.41666667vw;font-size:0.52083333vw}.project-browser-top span:first-child{font-size:0.3125vw}.project-image>span{font-size:0.67708333vw;padding-top:0.83333333vw}.case-follow{grid-template-columns:1fr;gap:1.25vw;padding-top:1.66666667vw}.case-follow>p:first-child{font-size:0.9375vw}.case-follow .lead{font-size:1.82291667vw}.testimonial-slot{margin-top:1.66666667vw;font-size:0.67708333vw;padding-inline:0.83333333vw}.testimonial-slot code{font-size:0.52083333vw}.about{grid-template-columns:1fr;gap:2.5vw;padding-block:2.91666667vw 4.16666667vw}.portrait{height:22.91666667vw;max-width:22.39583333vw;width:calc(100% - 1.04166667vw);margin:auto;border-radius:0.52083333vw}.about-copy h2,.standalone-about h1{font-size:2.23958333vw;margin-bottom:1.25vw}.about-copy>p{font-size:0.9375vw}.listening{margin-block:1.25vw}.listening p:first-child{font-size:1.66666667vw}.listening p:last-child{font-size:1.04166667vw}.decision-panels{grid-template-columns:1fr;gap:0.83333333vw;padding-bottom:4.16666667vw}.not-ready,.pricing{padding:1.66666667vw 1.25vw;border-radius:0.52083333vw}.not-ready h2,.pricing h2{font-size:1.97916667vw}.not-ready>div,.pricing>div{margin-top:1.25vw}.not-ready>div>p:first-child,.pricing>div>p:first-child{font-size:0.88541667vw}.not-ready .lead,.pricing .lead{font-size:1.19791667vw;margin-top:1.25vw}.pricing>div>p:last-child{font-size:0.83333333vw}.closing{padding-block:3.33333333vw}.closing-layout{grid-template-columns:1fr;gap:1.66666667vw}.closing h2{font-size:2.34375vw}.closing p{font-size:1.19791667vw;margin-top:1.25vw}.closing-action{justify-self:start}.closing .button{font-size:0.83333333vw;padding-inline:1.25vw}.whatsapp{font-size:0.72916667vw;margin:1.25vw 0 0}.footer{flex-wrap:wrap;gap:1.25vw;padding-block:1.66666667vw 5.41666667vw;font-size:0.67708333vw}.footer img{width:4.58333333vw}.footer p{max-width:7.8125vw}.footer>a:last-child{display:none}.mobile-cta{position:fixed;bottom:0.72916667vw;left:1.04166667vw;right:1.04166667vw;z-index:20;display:flex;align-items:center;justify-content:center;gap:1.25vw;padding:0.83333333vw 1.25vw;background:var(--dark);color:white;border:0.05208333vw solid #ffffff66;border-radius:0.41666667vw;box-shadow:0 0.20833333vw 0.78125vw #0002;font-size:0.88541667vw;min-height:2.60416667vw;transform:translateY(6.25vw);transition:transform .25s;padding-bottom:max(0.83333333vw,env(safe-area-inset-bottom))}.mobile-cta.is-visible{transform:translateY(0)}.page-intro{padding-block:2.5vw 4.16666667vw}.page-intro>h1{font-size:2.60416667vw}.page-intro>.lead{font-size:1.25vw}.page-intro>.project-image,.page-intro>.browser-frame{margin-block:2.08333333vw}.page-intro>.project-image{padding:0.83333333vw}.page-intro>.timeline{margin-top:2.5vw}.prose{margin-block:2.5vw}.prose h2{font-size:1.875vw}.prose p{font-size:0.9375vw}.page-intro .split h2{font-size:1.97916667vw}.standalone-about{padding-top:2.91666667vw}.contact-intro .button{font-size:0.83333333vw;gap:0.83333333vw}.browser-scroll{height:14.58333333vw}.preview-hint{margin-top:-1.25vw;font-size:0.67708333vw}.case-story h2{font-size:1.97916667vw}.case-story .button{font-size:0.83333333vw;padding-inline:1.25vw;gap:0.83333333vw}.post{padding-block:2.5vw 4.16666667vw}.post-deck{font-size:1.19791667vw}.editorial-empty{padding-right:1.25vw}.editorial-empty h2{font-size:1.875vw}
}
@media(max-width:360px){.header{gap:0.41666667vw}.header-cta{font-size:0.625vw;padding:0.41666667vw 0.41666667vw;gap:0.41666667vw}.logo img{width:3.64583333vw}.menu-toggle{font-size:0.67708333vw;gap:0.41666667vw}.hero .button,.closing .button,.contact-intro .button,.about-copy>.button,.case-story .button,.page-intro>.button{font-size:0.72916667vw;gap:0.83333333vw;padding-inline:0.83333333vw}.hero h1{font-size:1.66666667vw}.hero .lead{font-size:0.88541667vw}.portrait{height:19.53125vw}.thinking-path li{font-size:1.14583333vw}.handoff-panel,.not-ready,.pricing{padding-inline:1.25vw}.handoff h2,.not-ready h2,.pricing h2{font-size:1.82291667vw}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
@media (max-width: 1024px){:root{--paper:#fffefc;--ink:#252525;--dark:#570e40;--pink:#ef75aa;--pink-text:#b82a70;--lime:#c5df80;--turquoise:#c5df80;--gold:#e6dfcb;--mint:#edf3d9;--blush:#fae8ef;--muted:#68615f;--line:#dfd9d5;--gutter:6.25vw;--display:Leon,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:3.125vw}body{margin:0;background:var(--paper);color:var(--ink);font:1.85546875vw/1.7 Leon,Arial,sans-serif;-webkit-font-smoothing:antialiased}h1,h2,h3,p,figure{margin:0}h1,h2{font-family:var(--display);font-weight:700;line-height:1.08;letter-spacing:-.035em;text-wrap:balance}h1{font-size:clamp(5.2734375vw,6.5vw,9.1796875vw)}h2{font-size:clamp(4.1015625vw,4.65vw,6.640625vw)}p+p{margin-top:2.34375vw}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}button{font:inherit;color:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:0.29296875vw solid var(--dark);outline-offset:0.5859375vw}.site-header a:focus-visible,.site-footer a:focus-visible,.hero a:focus-visible,.handoff a:focus-visible{outline-color:var(--dark)}.wrap{width:min(148.4375vw,100%);padding-inline:var(--gutter);margin-inline:auto}.lead{font-size:clamp(2.24609375vw,2vw,2.83203125vw);line-height:1.55}.micro{font-size:1.3671875vw;line-height:1.65;color:var(--muted);max-width:37.109375vw}
.button{display:inline-flex;align-items:center;justify-content:center;gap:2.34375vw;min-height:5.2734375vw;padding:1.5625vw 2.34375vw;background:var(--dark);color:white;border:0.09765625vw solid transparent;border-radius:48.828125vw;font-size:1.66015625vw;line-height:1.5;transition:background .2s,transform .2s}.button>span{font-size:1.953125vw}.button:hover{background:#742052;transform:translateY(-0.1953125vw)}.text-link{display:inline-flex;align-items:center;gap:2.34375vw;padding:0.78125vw 0;border-bottom:0.09765625vw solid currentColor;min-height:4.296875vw;font-size:1.7578125vw}.text-link:hover{color:var(--dark)}.skip{position:fixed;right:1.953125vw;top:-9.765625vw;background:var(--ink);color:white;padding:1.5625vw;z-index:100}.skip:focus{top:1.46484375vw}
.site-header{background:var(--paper);color:var(--ink);border-bottom:0.09765625vw solid var(--line)}.header{height:9.5703125vw;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:3.125vw;position:relative}.logo{grid-column:2;grid-row:1}.logo img{width:10.7421875vw;filter:grayscale(1) brightness(.35)}.header nav{grid-column:1;grid-row:1;display:flex;gap:2.34375vw;font-size:1.46484375vw}.header nav a{padding-block:1.5625vw;color:var(--muted)}.header nav a:hover,.header nav a[aria-current=page]{color:var(--ink)}.header nav a[aria-current=page]{text-decoration:underline;text-decoration-color:var(--pink);text-underline-offset:0.78125vw}.header-cta{grid-column:3;grid-row:1;justify-self:end;display:flex;align-items:center;gap:2.34375vw;font-size:1.46484375vw;padding:0.78125vw 2.34375vw;border:0.09765625vw solid #570e4040;color:var(--dark);border-radius:48.828125vw;transition:background .2s}.header-cta:hover{background:var(--blush)}.menu-toggle{display:none}
/* The supplied Instagram palette, original faceted texture and local brand fonts. */
.hero{position:relative;isolation:isolate;padding-top:5.46875vw;padding-bottom:1.5625vw;color:var(--ink);text-align:center}
.hero-texture{position:absolute;inset:0 0 14.16015625vw;z-index:-2;background:#f2e8da}
.hero-texture::after{content:'';position:absolute;inset:65% 0 0;background:linear-gradient(transparent,var(--paper))}
.hero-copy{max-width:112.3046875vw}.hero h1{font-size:clamp(5.859375vw,5.8vw,8.203125vw);line-height:1.04;letter-spacing:-.035em}.hero h1 span{display:block}.hero h1 .hero-accent{color:var(--pink-text)}
.hero .lead{font-size:1.953125vw;line-height:1.6;max-width:54.6875vw;margin:3.125vw auto 0;color:var(--ink)}.hero-action{margin-top:2.34375vw}.hero .micro{font-size:1.26953125vw;max-width:39.0625vw;margin:1.5625vw auto 0}

.split{display:grid;grid-template-columns:1.1fr 1fr;gap:9.375vw;align-items:start}.split>div{max-width:47.8515625vw}
/* Existing illustrations and scroll choreography remain unchanged. */
.gather-section .split h2{position:relative;isolation:isolate}.gather-section .small-lead{max-width:38.0859375vw}
.thinking{padding-block:8.59375vw 11.71875vw}.thinking-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:7.8125vw;align-items:center}.thinking h2{margin-bottom:3.125vw}.thinking .lead{margin-bottom:2.34375vw;max-width:38.0859375vw}.thinking-grid>div>p:last-child{color:var(--muted)}.thinking-path{list-style:none;padding:2.34375vw 0;margin:0;border-block:0.09765625vw solid var(--line)}.thinking-path li{font-size:clamp(2.24609375vw,2.25vw,3.22265625vw);padding:1.5625vw 0;display:flex;align-items:baseline;gap:2.34375vw;line-height:1.4}.thinking-path li:nth-child(2){margin-right:1.5625vw}.thinking-path li:nth-child(3){margin-right:3.125vw}.thinking-path li:nth-child(4){margin-right:4.6875vw}.thinking-path li:nth-child(5){margin-right:6.25vw}.thinking-path li>span{font-size:1.3671875vw;color:var(--muted);direction:ltr;flex:0 0 1.953125vw}.thinking-path li:last-child{font-weight:700}
.process{padding-block:3.125vw 12.5vw}.process-intro{max-width:78.125vw;margin-inline:auto;text-align:center}.process-intro h2{position:relative;isolation:isolate;margin-bottom:3.125vw}.process-intro .heading-accent{color:var(--pink-text)}.process-intro>div{max-width:58.59375vw;margin-inline:auto}.process-intro p{font-size:1.953125vw}.process-intro p+p{color:var(--muted);margin-top:1.5625vw}.timeline{--progress:1;list-style:none;position:relative;margin:7.03125vw 0 0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:3.125vw}.timeline::before,.timeline::after{content:'';position:absolute;top:1.3671875vw;right:0.78125vw;left:calc((100% - 11.71875vw)/5 - 0.78125vw);height:0.1953125vw;background:var(--line)}.timeline::after{background:var(--ink);transform:scaleX(var(--progress));transform-origin:right}.timeline li{position:relative;padding-top:4.6875vw;z-index:1}.timeline li::before{content:'';position:absolute;top:0.68359375vw;right:0;width:1.5625vw;height:1.5625vw;border-radius:50%;background:var(--paper);border:0.1953125vw solid #92978e}.timeline li.is-active::before{background:var(--lime);border-color:var(--ink)}.timeline li>span{font-family:var(--display);font-weight:700;font-size:3.02734375vw;line-height:1.1;display:block;min-height:6.8359375vw;max-width:20.5078125vw}.timeline li:first-child>span{font-size:5.17578125vw;line-height:1}.timeline p{font-size:1.66015625vw;margin-top:1.5625vw;line-height:1.5}.timeline small{font-size:1.3671875vw;display:block;color:var(--muted);margin-top:0.78125vw;line-height:1.5}
/* A lime canvas echoes the project mockups in the Instagram feed. */
.handoff{padding-bottom:11.71875vw}.handoff-panel{display:grid;grid-template-columns:1.15fr 1fr;gap:4.6875vw;padding:6.25vw;background:var(--mint) url("/site-assets/migration-fe8c15fb5597ab0e-facets-lime.webp?v=c1fa0d63c5d67943") center/cover;border-radius:1.7578125vw;align-items:center;color:var(--ink);overflow:hidden}.handoff h2{margin-bottom:3.125vw;color:var(--ink);font-size:clamp(4.1015625vw,4.25vw,6.0546875vw)}.handoff p{color:var(--muted);font-size:1.7578125vw}.handoff .lead{margin-top:3.125vw;max-width:49.8046875vw;font-size:2.34375vw;color:var(--ink)}.handoff-visual{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:37.109375vw}.handoff-visual img{width:min(33.69140625vw,100%);height:auto;transform:rotate(-9deg)}.handoff-visual span{font-size:1.46484375vw;color:var(--muted);margin-top:1.5625vw}
.case-section{padding-block:0 7.03125vw}.case-intro{display:grid;grid-template-columns:1.35fr 1fr;gap:10.15625vw;margin-bottom:5.46875vw}.case-intro h2{font-size:clamp(3.7109375vw,4.25vw,6.0546875vw)}.case-intro>div{max-width:39.0625vw;padding-top:0.78125vw}.case-intro p{font-size:1.85546875vw}.case-intro .text-link{margin-top:2.34375vw}.project-image{display:block}.project-browser{border-radius:1.171875vw;overflow:hidden;background:var(--blush);padding:3.90625vw 3.90625vw 0}.project-browser-top{height:3.3203125vw;padding-inline:1.5625vw;display:flex;align-items:center;justify-content:space-between;direction:ltr;background:white;color:#6b6b68;font-size:1.171875vw;border-radius:0.68359375vw 0.68359375vw 0 0;border-bottom:0.09765625vw solid #ddd}.project-browser-top span:first-child{font-size:0.78125vw;letter-spacing:0.29296875vw}.project-image img{width:100%;background:#f8f8f8}.project-image>span{display:block;font-size:1.46484375vw;padding-top:1.5625vw}.project-image:hover>span{text-decoration:underline;text-underline-offset:0.48828125vw}.case-follow{display:grid;grid-template-columns:1fr 1fr;gap:14.84375vw;padding-top:4.6875vw}.case-follow>p:first-child{max-width:43.9453125vw;font-size:1.85546875vw}.case-follow .lead{font-family:var(--display);font-weight:700;font-size:3.7109375vw;line-height:1.2;margin:0}.testimonial-slot{margin-top:3.125vw;border-right:0.1953125vw solid var(--pink);padding:0.78125vw 2.34375vw;color:var(--muted);font-size:1.3671875vw}.testimonial-slot code{display:block;font:1.07421875vw/1.7 Arial,sans-serif;direction:ltr;text-align:right;overflow-wrap:anywhere;margin-top:0.78125vw}
.about{padding-block:8.59375vw 12.5vw;display:grid;grid-template-columns:1fr 1fr;gap:10.15625vw;align-items:center}.portrait{height:58.59375vw;background:var(--blush);display:flex;align-items:end;justify-content:center;position:relative;border-radius:1.26953125vw;transform:rotate(-2deg);isolation:isolate}.portrait::before{content:'';position:absolute;inset:0;background:var(--blush) url("/site-assets/migration-ab72bd88e9cb5ce1-facets-pink.webp?v=be43028bc192a605") center/cover;border-radius:1.26953125vw;transform:rotate(7deg);z-index:-1}.portrait img{height:100%;width:100%;max-width:100%;object-fit:cover;object-position:center;position:relative;border-radius:1.26953125vw}.about-copy h2,.standalone-about h1{font-size:clamp(3.90625vw,4.3vw,6.25vw);margin-bottom:3.125vw}.about-copy>p{font-size:1.953125vw}.listening{margin-block:3.125vw}.listening p:first-child{font-family:var(--display);font-weight:700;font-size:clamp(3.125vw,3.15vw,4.4921875vw);line-height:1.15;color:var(--pink-text)}.listening p:last-child{font-size:2.05078125vw;color:var(--muted);line-height:1.6;margin-top:1.5625vw}.about-copy strong{font-weight:400}.about-copy>.button{margin-top:3.125vw}
.decision-panels{display:grid;grid-template-columns:1fr 1fr;gap:2.34375vw;padding-bottom:12.5vw}.not-ready,.pricing{padding:4.6875vw;background:var(--blush);color:var(--ink);border-radius:1.5625vw}.not-ready h2,.pricing h2{font-size:clamp(3.7109375vw,3.5vw,5.078125vw);color:var(--ink);max-width:47.8515625vw;line-height:1.08}.not-ready>div,.pricing>div{margin-top:3.125vw}.not-ready>div>p:first-child,.pricing>div>p:first-child{font-size:1.7578125vw;color:var(--muted)}.not-ready .lead,.pricing .lead{font-size:2.44140625vw;line-height:1.5;margin-top:2.34375vw}.pricing>div>p:last-child{font-size:1.66015625vw;color:var(--muted)}
.pricing{background:#f3efe6}.closing{background:var(--blush) url("/site-assets/migration-ab72bd88e9cb5ce1-facets-pink.webp?v=be43028bc192a605") center/cover;padding-block:8.59375vw}.closing-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:7.03125vw;align-items:center}.closing h2{font-size:clamp(4.39453125vw,5.05vw,7.2265625vw)}.closing p{font-size:2.34375vw;margin-top:2.34375vw}.closing-action{justify-self:end}.closing .button{background:var(--dark);color:white;font-size:1.7578125vw}.closing .button:hover{background:#742052}.whatsapp{display:block;width:fit-content;margin:2.34375vw auto 0;font-size:1.46484375vw;text-decoration:underline;text-underline-offset:0.5859375vw;color:var(--ink)}.site-footer{background:var(--paper);color:var(--ink);border-top:0.09765625vw solid var(--line)}.footer{padding-block:4.6875vw;display:flex;align-items:center;justify-content:space-between;gap:3.125vw;font-size:1.46484375vw}.footer img{width:10.15625vw;filter:grayscale(1) brightness(.35)}.footer p{color:var(--muted)}.footer>a:last-child{border-bottom:0.09765625vw solid var(--line);padding-bottom:0.78125vw}.mobile-cta{display:none}
/* The same display/body pairing and palette carry through the inner pages. */
.page-intro{padding-top:8.59375vw;padding-bottom:10.9375vw;min-height:70vh}.page-intro>h1{margin-bottom:3.125vw;max-width:107.421875vw}.page-intro>.lead{max-width:70.3125vw;font-size:2.63671875vw}.page-intro>.project-image,.page-intro>.browser-frame{margin-block:6.25vw}.page-intro>.project-image{background:var(--blush);padding:3.125vw;border-radius:1.171875vw}.page-intro>.button{margin-top:6.25vw}.page-intro>.timeline{margin-block:7.8125vw 0}.prose{max-width:72.265625vw;margin-block:7.03125vw;margin-right:auto}.prose h2{font-size:4.1015625vw;margin:3.90625vw 0 2.34375vw}.prose p{font-size:1.953125vw}.back-link{margin-bottom:3.125vw;font-size:1.5625vw}.browser-frame{border:0.09765625vw solid var(--line);border-radius:0.87890625vw;overflow:hidden;background:white;box-shadow:0 1.953125vw 4.39453125vw #3939390a}.browser-frame img{width:100%}.browser-bar{display:flex;justify-content:space-between;font-size:1.26953125vw;background:var(--blush);padding:1.5625vw 2.34375vw}.browser-bar span{font-size:0.87890625vw;letter-spacing:0.29296875vw}.browser-scroll{max-height:55.6640625vw;height:42vw;overflow:auto;overscroll-behavior:contain;scrollbar-color:var(--ink) #eee}.browser-scroll:focus-visible{outline-offset:-0.390625vw}.preview-hint{font-size:1.46484375vw;color:var(--muted);margin-top:-3.90625vw}.case-story{max-width:74.21875vw;margin-inline:auto}.case-story h2{margin-top:6.25vw;margin-bottom:2.34375vw;font-size:4.8828125vw}.case-story .button{margin-top:4.6875vw}.standalone-about{padding-top:8.59375vw}.contact-intro{max-width:126.953125vw}.contact-intro>p{max-width:70.3125vw}.contact-choice{margin-top:3.90625vw}.setup-status{font-size:1.46484375vw;color:var(--muted);max-width:46.875vw;margin-top:2.34375vw}.secondary-contact{margin-top:7.03125vw;padding-top:3.90625vw;border-top:0.09765625vw solid var(--line)}.secondary-contact h2{font-size:3.7109375vw;margin-bottom:2.34375vw}.editorial-empty{margin-top:7.8125vw;border-right:0.29296875vw solid var(--pink);padding:1.5625vw 3.125vw}.editorial-empty h2{font-size:3.90625vw;margin-bottom:1.5625vw}.post{max-width:103.515625vw;padding-block:7.8125vw 12.5vw}.post h1{margin-block:3.125vw;font-size:clamp(4.6875vw,6vw,8.30078125vw)}.post-deck{font-size:2.63671875vw;color:var(--muted)}.post-body{max-width:70.3125vw;margin-top:7.03125vw}.post-body h2{font-size:4.1015625vw;margin-block:4.6875vw 2.34375vw}.post-body blockquote{margin:3.90625vw 0;padding:2.34375vw 2.34375vw;border-right:0.29296875vw solid var(--pink);font-size:2.734375vw}.template-label{margin-top:3.90625vw;font-size:1.3671875vw;color:var(--muted)}
@media(min-width:761px) and (max-width:1100px){.header{gap:2.34375vw}.header nav{gap:1.5625vw;font-size:1.3671875vw}.logo img{width:9.27734375vw}.header-cta{gap:1.5625vw;padding-inline:1.5625vw;font-size:1.3671875vw}.thinking-grid{gap:4.6875vw}.thinking h2{font-size:4.4921875vw}.thinking-path li{font-size:2.44140625vw;gap:1.5625vw}.thinking-path li:nth-child(n){margin-right:0}.timeline{gap:2.34375vw}.timeline::before,.timeline::after{left:calc((100% - 7.8125vw)/5 - 0.78125vw)}.timeline li>span{font-size:2.63671875vw;min-height:6.34765625vw}.timeline li:first-child>span{font-size:4.39453125vw}.timeline p{font-size:1.5625vw}.handoff-panel{padding:3.90625vw;gap:3.90625vw}.handoff-visual{min-height:32.2265625vw}.about{gap:6.25vw}.portrait{height:48.828125vw}.case-intro{gap:6.25vw}.not-ready,.pricing{padding:3.125vw}.closing-layout{gap:3.90625vw}.closing .button{font-size:1.5625vw;padding-inline:2.34375vw}}
@media(max-width:760px){
body{font-size:1.7578125vw}.header{height:8.30078125vw;display:flex;gap:1.5625vw}.logo{order:0;margin-left:auto}.logo img{width:8.3984375vw}.header-cta{order:1;font-size:1.26953125vw;gap:0.78125vw;padding:0.78125vw 1.5625vw}.menu-toggle{display:flex;align-items:center;gap:0.78125vw;border:0;background:none;font-size:1.3671875vw;padding:0.78125vw 0;order:2;color:var(--ink)}.menu-toggle span{font-size:1.3671875vw}.header nav{display:none;position:absolute;top:8.30078125vw;left:0;right:0;z-index:30;background:var(--paper);padding:2.34375vw var(--gutter) 3.125vw;border-bottom:0.09765625vw solid var(--line);flex-direction:column;gap:0.78125vw;box-shadow:0 1.953125vw 2.44140625vw #0002}.header nav.is-open{display:flex}.header nav a{min-height:4.6875vw}.hero{padding-top:3.90625vw;padding-bottom:0}.hero-texture{bottom:8.7890625vw;background-position:58% center}.hero h1{font-size:clamp(3.41796875vw,8.6vw,6.25vw);line-height:1.08;letter-spacing:-.035em}.hero .lead{font-size:1.7578125vw;line-height:1.6;margin-top:2.34375vw;max-width:42.96875vw}.hero-action{margin-top:2.34375vw}.hero .button{font-size:1.5625vw;padding:1.5625vw 2.34375vw;min-height:4.98046875vw}.hero .micro{font-size:1.171875vw;margin-top:1.5625vw;max-width:30.76171875vw}h2{font-size:4.19921875vw}.split{grid-template-columns:1fr;gap:2.34375vw}.thinking{padding-block:1.5625vw 7.8125vw}.thinking-grid{grid-template-columns:1fr;gap:3.125vw}.thinking h2{margin-bottom:2.34375vw}.thinking .lead{font-size:2.24609375vw}.thinking-path{padding-block:1.5625vw}.thinking-path li{font-size:2.34375vw;padding-block:1.5625vw;gap:1.5625vw}.thinking-path li>span{font-size:1.171875vw}.thinking-path li:nth-child(2){margin-right:0.78125vw}.thinking-path li:nth-child(3){margin-right:1.5625vw}.thinking-path li:nth-child(4){margin-right:2.34375vw}.thinking-path li:nth-child(5){margin-right:3.125vw}.process{padding-block:3.125vw 7.8125vw}.process-intro h2{margin-bottom:2.34375vw}.process-intro p{font-size:1.7578125vw}.timeline{display:block;margin-top:3.90625vw;margin-right:0.78125vw;padding:0}.timeline::before,.timeline::after{top:1.7578125vw;bottom:0.78125vw;right:0.68359375vw;left:auto;height:auto;width:0.1953125vw}.timeline::after{transform:scaleY(var(--progress));transform-origin:top}.timeline li{padding:0 3.90625vw 3.125vw;min-height:11.5234375vw}.timeline li:last-child{padding-bottom:0;min-height:0;background:var(--paper)}.timeline li::before{top:1.26953125vw;right:0;width:1.5625vw;height:1.5625vw}.timeline li>span{font-size:3.125vw;min-height:0;max-width:none}.timeline li:first-child>span{font-size:5.2734375vw}.timeline li:first-child::before{top:1.7578125vw}.timeline p{font-size:1.66015625vw;margin-top:0.78125vw}.timeline small{font-size:1.3671875vw;margin-top:0.78125vw}.handoff{padding-bottom:7.8125vw}.handoff-panel{grid-template-columns:1fr;gap:1.5625vw;padding:3.125vw 2.34375vw;border-radius:0.9765625vw}.handoff h2{font-size:3.90625vw;margin-bottom:2.34375vw}.handoff p{font-size:1.66015625vw}.handoff .lead{font-size:2.1484375vw;margin-top:2.34375vw}.handoff-visual{min-height:24.4140625vw}.handoff-visual img{width:23.4375vw}.handoff-visual span{font-size:1.3671875vw;margin-top:0}.case-section{padding-bottom:3.125vw}.case-intro{grid-template-columns:1fr;gap:2.34375vw;margin-bottom:3.125vw}.case-intro h2{font-size:3.90625vw}.case-intro>div{padding:0}.case-intro p{font-size:1.7578125vw}.case-intro .text-link{margin-top:2.34375vw;font-size:1.66015625vw}.project-browser{padding:1.5625vw 1.5625vw 0;border-radius:0.78125vw}.project-browser-top{height:2.34375vw;padding-inline:0.78125vw;font-size:0.9765625vw}.project-browser-top span:first-child{font-size:0.5859375vw}.project-image>span{font-size:1.26953125vw;padding-top:1.5625vw}.case-follow{grid-template-columns:1fr;gap:2.34375vw;padding-top:3.125vw}.case-follow>p:first-child{font-size:1.7578125vw}.case-follow .lead{font-size:3.41796875vw}.testimonial-slot{margin-top:3.125vw;font-size:1.26953125vw;padding-inline:1.5625vw}.testimonial-slot code{font-size:0.9765625vw}.about{grid-template-columns:1fr;gap:4.6875vw;padding-block:5.46875vw 7.8125vw}.portrait{height:42.96875vw;max-width:41.9921875vw;width:calc(100% - 1.953125vw);margin:auto;border-radius:0.9765625vw}.about-copy h2,.standalone-about h1{font-size:4.19921875vw;margin-bottom:2.34375vw}.about-copy>p{font-size:1.7578125vw}.listening{margin-block:2.34375vw}.listening p:first-child{font-size:3.125vw}.listening p:last-child{font-size:1.953125vw}.decision-panels{grid-template-columns:1fr;gap:1.5625vw;padding-bottom:7.8125vw}.not-ready,.pricing{padding:3.125vw 2.34375vw;border-radius:0.9765625vw}.not-ready h2,.pricing h2{font-size:3.7109375vw}.not-ready>div,.pricing>div{margin-top:2.34375vw}.not-ready>div>p:first-child,.pricing>div>p:first-child{font-size:1.66015625vw}.not-ready .lead,.pricing .lead{font-size:2.24609375vw;margin-top:2.34375vw}.pricing>div>p:last-child{font-size:1.5625vw}.closing{padding-block:6.25vw}.closing-layout{grid-template-columns:1fr;gap:3.125vw}.closing h2{font-size:4.39453125vw}.closing p{font-size:2.24609375vw;margin-top:2.34375vw}.closing-action{justify-self:start}.closing .button{font-size:1.5625vw;padding-inline:2.34375vw}.whatsapp{font-size:1.3671875vw;margin:2.34375vw 0 0}.footer{flex-wrap:wrap;gap:2.34375vw;padding-block:3.125vw 10.15625vw;font-size:1.26953125vw}.footer img{width:8.59375vw}.footer p{max-width:14.6484375vw}.footer>a:last-child{display:none}.mobile-cta{position:fixed;bottom:1.3671875vw;left:1.953125vw;right:1.953125vw;z-index:20;display:flex;align-items:center;justify-content:center;gap:2.34375vw;padding:1.5625vw 2.34375vw;background:var(--dark);color:white;border:0.09765625vw solid #ffffff66;border-radius:0.78125vw;box-shadow:0 0.390625vw 1.46484375vw #0002;font-size:1.66015625vw;min-height:4.8828125vw;transform:translateY(11.71875vw);transition:transform .25s;padding-bottom:max(1.5625vw,env(safe-area-inset-bottom))}.mobile-cta.is-visible{transform:translateY(0)}.page-intro{padding-block:4.6875vw 7.8125vw}.page-intro>h1{font-size:4.8828125vw}.page-intro>.lead{font-size:2.34375vw}.page-intro>.project-image,.page-intro>.browser-frame{margin-block:3.90625vw}.page-intro>.project-image{padding:1.5625vw}.page-intro>.timeline{margin-top:4.6875vw}.prose{margin-block:4.6875vw}.prose h2{font-size:3.515625vw}.prose p{font-size:1.7578125vw}.page-intro .split h2{font-size:3.7109375vw}.standalone-about{padding-top:5.46875vw}.contact-intro .button{font-size:1.5625vw;gap:1.5625vw}.browser-scroll{height:27.34375vw}.preview-hint{margin-top:-2.34375vw;font-size:1.26953125vw}.case-story h2{font-size:3.7109375vw}.case-story .button{font-size:1.5625vw;padding-inline:2.34375vw;gap:1.5625vw}.post{padding-block:4.6875vw 7.8125vw}.post-deck{font-size:2.24609375vw}.editorial-empty{padding-right:2.34375vw}.editorial-empty h2{font-size:3.515625vw}
}
@media(max-width:360px){.header{gap:0.78125vw}.header-cta{font-size:1.171875vw;padding:0.78125vw 0.78125vw;gap:0.78125vw}.logo img{width:6.8359375vw}.menu-toggle{font-size:1.26953125vw;gap:0.78125vw}.hero .button,.closing .button,.contact-intro .button,.about-copy>.button,.case-story .button,.page-intro>.button{font-size:1.3671875vw;gap:1.5625vw;padding-inline:1.5625vw}.hero h1{font-size:3.125vw}.hero .lead{font-size:1.66015625vw}.portrait{height:36.62109375vw}.thinking-path li{font-size:2.1484375vw}.handoff-panel,.not-ready,.pricing{padding-inline:2.34375vw}.handoff h2,.not-ready h2,.pricing h2{font-size:3.41796875vw}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}}
@media (max-width: 767px){:root{--paper:#fffefc;--ink:#252525;--dark:#570e40;--pink:#ef75aa;--pink-text:#b82a70;--lime:#c5df80;--turquoise:#c5df80;--gold:#e6dfcb;--mint:#edf3d9;--blush:#fae8ef;--muted:#68615f;--line:#dfd9d5;--gutter:6.15384615vw;--display:Leon,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:8.20512821vw}body{margin:0;background:var(--paper);color:var(--ink);font:4.87179487vw/1.7 Leon,Arial,sans-serif;-webkit-font-smoothing:antialiased}h1,h2,h3,p,figure{margin:0}h1,h2{font-family:var(--display);font-weight:700;line-height:1.08;letter-spacing:-.035em;text-wrap:balance}h1{font-size:clamp(13.84615385vw,6.5vw,24.1025641vw)}h2{font-size:clamp(10.76923077vw,4.65vw,17.43589744vw)}p+p{margin-top:6.15384615vw}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}button{font:inherit;color:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:0.76923077vw solid var(--dark);outline-offset:1.53846154vw}.site-header a:focus-visible,.site-footer a:focus-visible,.hero a:focus-visible,.handoff a:focus-visible{outline-color:var(--dark)}.wrap{width:min(389.74358974vw,100%);padding-inline:var(--gutter);margin-inline:auto}.lead{font-size:clamp(5.8974359vw,2vw,7.43589744vw);line-height:1.55}.micro{font-size:3.58974359vw;line-height:1.65;color:var(--muted);max-width:97.43589744vw}
.button{display:inline-flex;align-items:center;justify-content:center;gap:6.15384615vw;min-height:13.84615385vw;padding:4.1025641vw 6.15384615vw;background:var(--dark);color:white;border:0.25641026vw solid transparent;border-radius:128.20512821vw;font-size:4.35897436vw;line-height:1.5;transition:background .2s,transform .2s}.button>span{font-size:5.12820513vw}.button:hover{background:#742052;transform:translateY(-0.51282051vw)}.text-link{display:inline-flex;align-items:center;gap:6.15384615vw;padding:2.05128205vw 0;border-bottom:0.25641026vw solid currentColor;min-height:11.28205128vw;font-size:4.61538462vw}.text-link:hover{color:var(--dark)}.skip{position:fixed;right:5.12820513vw;top:-25.64102564vw;background:var(--ink);color:white;padding:4.1025641vw;z-index:100}.skip:focus{top:3.84615385vw}
.site-header{background:var(--paper);color:var(--ink);border-bottom:0.25641026vw solid var(--line)}.header{height:25.12820513vw;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8.20512821vw;position:relative}.logo{grid-column:2;grid-row:1}.logo img{width:28.20512821vw;filter:grayscale(1) brightness(.35)}.header nav{grid-column:1;grid-row:1;display:flex;gap:6.15384615vw;font-size:3.84615385vw}.header nav a{padding-block:4.1025641vw;color:var(--muted)}.header nav a:hover,.header nav a[aria-current=page]{color:var(--ink)}.header nav a[aria-current=page]{text-decoration:underline;text-decoration-color:var(--pink);text-underline-offset:2.05128205vw}.header-cta{grid-column:3;grid-row:1;justify-self:end;display:flex;align-items:center;gap:6.15384615vw;font-size:3.84615385vw;padding:2.05128205vw 6.15384615vw;border:0.25641026vw solid #570e4040;color:var(--dark);border-radius:128.20512821vw;transition:background .2s}.header-cta:hover{background:var(--blush)}.menu-toggle{display:none}
/* The supplied Instagram palette, original faceted texture and local brand fonts. */
.hero{position:relative;isolation:isolate;padding-top:14.35897436vw;padding-bottom:4.1025641vw;color:var(--ink);text-align:center}
.hero-texture{position:absolute;inset:0 0 37.17948718vw;z-index:-2;background:#f2e8da}
.hero-texture::after{content:'';position:absolute;inset:65% 0 0;background:linear-gradient(transparent,var(--paper))}
.hero-copy{max-width:294.87179487vw}.hero h1{font-size:clamp(15.38461538vw,5.8vw,21.53846154vw);line-height:1.04;letter-spacing:-.035em}.hero h1 span{display:block}.hero h1 .hero-accent{color:var(--pink-text)}
.hero .lead{font-size:5.12820513vw;line-height:1.6;max-width:143.58974359vw;margin:8.20512821vw auto 0;color:var(--ink)}.hero-action{margin-top:6.15384615vw}.hero .micro{font-size:3.33333333vw;max-width:102.56410256vw;margin:4.1025641vw auto 0}

.split{display:grid;grid-template-columns:1.1fr 1fr;gap:8.20512821vw;align-items:start}.split>div{max-width:125.64102564vw}
/* Existing illustrations and scroll choreography remain unchanged. */
.gather-section .split h2{position:relative;isolation:isolate}.gather-section .small-lead{max-width:100vw}
.thinking{padding-block:22.56410256vw 30.76923077vw}.thinking-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:8.20512821vw;align-items:center}.thinking h2{margin-bottom:8.20512821vw}.thinking .lead{margin-bottom:6.15384615vw;max-width:100vw}.thinking-grid>div>p:last-child{color:var(--muted)}.thinking-path{list-style:none;padding:6.15384615vw 0;margin:0;border-block:0.25641026vw solid var(--line)}.thinking-path li{font-size:clamp(5.8974359vw,2.25vw,8.46153846vw);padding:4.1025641vw 0;display:flex;align-items:baseline;gap:6.15384615vw;line-height:1.4}.thinking-path li:nth-child(2){margin-right:4.1025641vw}.thinking-path li:nth-child(3){margin-right:8.20512821vw}.thinking-path li:nth-child(4){margin-right:12.30769231vw}.thinking-path li:nth-child(5){margin-right:16.41025641vw}.thinking-path li>span{font-size:3.58974359vw;color:var(--muted);direction:ltr;flex:0 0 5.12820513vw}.thinking-path li:last-child{font-weight:700}
.process{padding-block:8.20512821vw 32.82051282vw}.process-intro{max-width:205.12820513vw;margin-inline:auto;text-align:center}.process-intro h2{position:relative;isolation:isolate;margin-bottom:8.20512821vw}.process-intro .heading-accent{color:var(--pink-text)}.process-intro>div{max-width:153.84615385vw;margin-inline:auto}.process-intro p{font-size:5.12820513vw}.process-intro p+p{color:var(--muted);margin-top:4.1025641vw}.timeline{--progress:1;list-style:none;position:relative;margin:18.46153846vw 0 0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8.20512821vw}.timeline::before,.timeline::after{content:'';position:absolute;top:3.58974359vw;right:2.05128205vw;left:calc((100% - 30.76923077vw)/5 - 2.05128205vw);height:0.51282051vw;background:var(--line)}.timeline::after{background:var(--ink);transform:scaleX(var(--progress));transform-origin:right}.timeline li{position:relative;padding-top:12.30769231vw;z-index:1}.timeline li::before{content:'';position:absolute;top:1.79487179vw;right:0;width:4.1025641vw;height:4.1025641vw;border-radius:50%;background:var(--paper);border:0.51282051vw solid #92978e}.timeline li.is-active::before{background:var(--lime);border-color:var(--ink)}.timeline li>span{font-family:var(--display);font-weight:700;font-size:7.94871795vw;line-height:1.1;display:block;min-height:17.94871795vw;max-width:53.84615385vw}.timeline li:first-child>span{font-size:13.58974359vw;line-height:1}.timeline p{font-size:4.35897436vw;margin-top:4.1025641vw;line-height:1.5}.timeline small{font-size:3.58974359vw;display:block;color:var(--muted);margin-top:2.05128205vw;line-height:1.5}
/* A lime canvas echoes the project mockups in the Instagram feed. */
.handoff{padding-bottom:30.76923077vw}.handoff-panel{display:grid;grid-template-columns:1.15fr 1fr;gap:4.1025641vw;padding:16.41025641vw;background:var(--mint) url("/site-assets/migration-fe8c15fb5597ab0e-facets-lime.webp?v=c1fa0d63c5d67943") center/cover;border-radius:4.61538462vw;align-items:center;color:var(--ink);overflow:hidden}.handoff h2{margin-bottom:8.20512821vw;color:var(--ink);font-size:clamp(10.76923077vw,4.25vw,15.8974359vw)}.handoff p{color:var(--muted);font-size:4.61538462vw}.handoff .lead{margin-top:8.20512821vw;max-width:130.76923077vw;font-size:6.15384615vw;color:var(--ink)}.handoff-visual{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:97.43589744vw}.handoff-visual img{width:min(88.46153846vw,100%);height:auto;transform:rotate(-9deg)}.handoff-visual span{font-size:3.84615385vw;color:var(--muted);margin-top:4.1025641vw}
.case-section{padding-block:0 18.46153846vw}.case-intro{display:grid;grid-template-columns:1.35fr 1fr;gap:10.25641026vw;margin-bottom:14.35897436vw}.case-intro h2{font-size:clamp(9.74358974vw,4.25vw,15.8974359vw)}.case-intro>div{max-width:102.56410256vw;padding-top:2.05128205vw}.case-intro p{font-size:4.87179487vw}.case-intro .text-link{margin-top:6.15384615vw}.project-image{display:block}.project-browser{border-radius:3.07692308vw;overflow:hidden;background:var(--blush);padding:10.25641026vw 10.25641026vw 0}.project-browser-top{height:8.71794872vw;padding-inline:4.1025641vw;display:flex;align-items:center;justify-content:space-between;direction:ltr;background:white;color:#6b6b68;font-size:3.07692308vw;border-radius:1.79487179vw 1.79487179vw 0 0;border-bottom:0.25641026vw solid #ddd}.project-browser-top span:first-child{font-size:2.05128205vw;letter-spacing:0.76923077vw}.project-image img{width:100%;background:#f8f8f8}.project-image>span{display:block;font-size:3.84615385vw;padding-top:4.1025641vw}.project-image:hover>span{text-decoration:underline;text-underline-offset:1.28205128vw}.case-follow{display:grid;grid-template-columns:1fr 1fr;gap:14.35897436vw;padding-top:12.30769231vw}.case-follow>p:first-child{max-width:115.38461538vw;font-size:4.87179487vw}.case-follow .lead{font-family:var(--display);font-weight:700;font-size:9.74358974vw;line-height:1.2;margin:0}.testimonial-slot{margin-top:8.20512821vw;border-right:0.51282051vw solid var(--pink);padding:2.05128205vw 6.15384615vw;color:var(--muted);font-size:3.58974359vw}.testimonial-slot code{display:block;font:2.82051282vw/1.7 Arial,sans-serif;direction:ltr;text-align:right;overflow-wrap:anywhere;margin-top:2.05128205vw}
.about{padding-block:22.56410256vw 32.82051282vw;display:grid;grid-template-columns:1fr 1fr;gap:10.25641026vw;align-items:center}.portrait{height:153.84615385vw;background:var(--blush);display:flex;align-items:end;justify-content:center;position:relative;border-radius:3.33333333vw;transform:rotate(-2deg);isolation:isolate}.portrait::before{content:'';position:absolute;inset:0;background:var(--blush) url("/site-assets/migration-ab72bd88e9cb5ce1-facets-pink.webp?v=be43028bc192a605") center/cover;border-radius:3.33333333vw;transform:rotate(7deg);z-index:-1}.portrait img{height:100%;width:100%;max-width:100%;object-fit:cover;object-position:center;position:relative;border-radius:3.33333333vw}.about-copy h2,.standalone-about h1{font-size:clamp(10.25641026vw,4.3vw,16.41025641vw);margin-bottom:8.20512821vw}.about-copy>p{font-size:5.12820513vw}.listening{margin-block:8.20512821vw}.listening p:first-child{font-family:var(--display);font-weight:700;font-size:clamp(8.20512821vw,3.15vw,11.79487179vw);line-height:1.15;color:var(--pink-text)}.listening p:last-child{font-size:5.38461538vw;color:var(--muted);line-height:1.6;margin-top:4.1025641vw}.about-copy strong{font-weight:400}.about-copy>.button{margin-top:8.20512821vw}
.decision-panels{display:grid;grid-template-columns:1fr 1fr;gap:6.15384615vw;padding-bottom:32.82051282vw}.not-ready,.pricing{padding:12.30769231vw;background:var(--blush);color:var(--ink);border-radius:4.1025641vw}.not-ready h2,.pricing h2{font-size:clamp(9.74358974vw,3.5vw,13.33333333vw);color:var(--ink);max-width:125.64102564vw;line-height:1.08}.not-ready>div,.pricing>div{margin-top:8.20512821vw}.not-ready>div>p:first-child,.pricing>div>p:first-child{font-size:4.61538462vw;color:var(--muted)}.not-ready .lead,.pricing .lead{font-size:6.41025641vw;line-height:1.5;margin-top:6.15384615vw}.pricing>div>p:last-child{font-size:4.35897436vw;color:var(--muted)}
.pricing{background:#f3efe6}.closing{background:var(--blush) url("/site-assets/migration-ab72bd88e9cb5ce1-facets-pink.webp?v=be43028bc192a605") center/cover;padding-block:22.56410256vw}.closing-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:6.15384615vw;align-items:center}.closing h2{font-size:clamp(11.53846154vw,5.05vw,18.97435897vw)}.closing p{font-size:6.15384615vw;margin-top:6.15384615vw}.closing-action{justify-self:end}.closing .button{background:var(--dark);color:white;font-size:4.61538462vw}.closing .button:hover{background:#742052}.whatsapp{display:block;width:fit-content;margin:6.15384615vw auto 0;font-size:3.84615385vw;text-decoration:underline;text-underline-offset:1.53846154vw;color:var(--ink)}.site-footer{background:var(--paper);color:var(--ink);border-top:0.25641026vw solid var(--line)}.footer{padding-block:12.30769231vw;display:flex;align-items:center;justify-content:space-between;gap:8.20512821vw;font-size:3.84615385vw}.footer img{width:26.66666667vw;filter:grayscale(1) brightness(.35)}.footer p{color:var(--muted)}.footer>a:last-child{border-bottom:0.25641026vw solid var(--line);padding-bottom:2.05128205vw}.mobile-cta{display:none}
/* The same display/body pairing and palette carry through the inner pages. */
.page-intro{padding-top:22.56410256vw;padding-bottom:28.71794872vw;min-height:70vh}.page-intro>h1{margin-bottom:8.20512821vw;max-width:282.05128205vw}.page-intro>.lead{max-width:184.61538462vw;font-size:6.92307692vw}.page-intro>.project-image,.page-intro>.browser-frame{margin-block:16.41025641vw}.page-intro>.project-image{background:var(--blush);padding:8.20512821vw;border-radius:3.07692308vw}.page-intro>.button{margin-top:16.41025641vw}.page-intro>.timeline{margin-block:20.51282051vw 0}.prose{max-width:189.74358974vw;margin-block:18.46153846vw;margin-right:auto}.prose h2{font-size:10.76923077vw;margin:10.25641026vw 0 6.15384615vw}.prose p{font-size:5.12820513vw}.back-link{margin-bottom:8.20512821vw;font-size:4.1025641vw}.browser-frame{border:0.25641026vw solid var(--line);border-radius:2.30769231vw;overflow:hidden;background:white;box-shadow:0 5.12820513vw 11.53846154vw #3939390a}.browser-frame img{width:100%}.browser-bar{display:flex;justify-content:space-between;font-size:3.33333333vw;background:var(--blush);padding:4.1025641vw 6.15384615vw}.browser-bar span{font-size:2.30769231vw;letter-spacing:0.76923077vw}.browser-scroll{max-height:146.15384615vw;height:42vw;overflow:auto;overscroll-behavior:contain;scrollbar-color:var(--ink) #eee}.browser-scroll:focus-visible{outline-offset:-1.02564103vw}.preview-hint{font-size:3.84615385vw;color:var(--muted);margin-top:-10.25641026vw}.case-story{max-width:194.87179487vw;margin-inline:auto}.case-story h2{margin-top:16.41025641vw;margin-bottom:6.15384615vw;font-size:12.82051282vw}.case-story .button{margin-top:12.30769231vw}.standalone-about{padding-top:22.56410256vw}.contact-intro{max-width:333.33333333vw}.contact-intro>p{max-width:184.61538462vw}.contact-choice{margin-top:10.25641026vw}.setup-status{font-size:3.84615385vw;color:var(--muted);max-width:123.07692308vw;margin-top:6.15384615vw}.secondary-contact{margin-top:18.46153846vw;padding-top:10.25641026vw;border-top:0.25641026vw solid var(--line)}.secondary-contact h2{font-size:9.74358974vw;margin-bottom:6.15384615vw}.editorial-empty{margin-top:20.51282051vw;border-right:0.76923077vw solid var(--pink);padding:4.1025641vw 8.20512821vw}.editorial-empty h2{font-size:10.25641026vw;margin-bottom:4.1025641vw}.post{max-width:271.79487179vw;padding-block:20.51282051vw 32.82051282vw}.post h1{margin-block:8.20512821vw;font-size:clamp(12.30769231vw,6vw,21.79487179vw)}.post-deck{font-size:6.92307692vw;color:var(--muted)}.post-body{max-width:184.61538462vw;margin-top:18.46153846vw}.post-body h2{font-size:10.76923077vw;margin-block:12.30769231vw 6.15384615vw}.post-body blockquote{margin:10.25641026vw 0;padding:6.15384615vw 6.15384615vw;border-right:0.76923077vw solid var(--pink);font-size:7.17948718vw}.template-label{margin-top:10.25641026vw;font-size:3.58974359vw;color:var(--muted)}
@media(min-width:761px) and (max-width:1100px){.header{gap:6.15384615vw}.header nav{gap:4.1025641vw;font-size:3.58974359vw}.logo img{width:24.35897436vw}.header-cta{gap:4.1025641vw;padding-inline:4.1025641vw;font-size:3.58974359vw}.thinking-grid{gap:4.1025641vw}.thinking h2{font-size:11.79487179vw}.thinking-path li{font-size:6.41025641vw;gap:4.1025641vw}.thinking-path li:nth-child(n){margin-right:0}.timeline{gap:6.15384615vw}.timeline::before,.timeline::after{left:calc((100% - 20.51282051vw)/5 - 2.05128205vw)}.timeline li>span{font-size:6.92307692vw;min-height:16.66666667vw}.timeline li:first-child>span{font-size:11.53846154vw}.timeline p{font-size:4.1025641vw}.handoff-panel{padding:10.25641026vw;gap:4.1025641vw}.handoff-visual{min-height:84.61538462vw}.about{gap:6.15384615vw}.portrait{height:128.20512821vw}.case-intro{gap:6.15384615vw}.not-ready,.pricing{padding:8.20512821vw}.closing-layout{gap:4.1025641vw}.closing .button{font-size:4.1025641vw;padding-inline:6.15384615vw}}
@media(max-width:760px){
body{font-size:4.61538462vw}.header{height:21.79487179vw;display:flex;gap:4.1025641vw}.logo{order:0;margin-left:auto}.logo img{width:22.05128205vw}.header-cta{order:1;font-size:3.33333333vw;gap:2.05128205vw;padding:2.05128205vw 4.1025641vw}.menu-toggle{display:flex;align-items:center;gap:2.05128205vw;border:0;background:none;font-size:3.58974359vw;padding:2.05128205vw 0;order:2;color:var(--ink)}.menu-toggle span{font-size:3.58974359vw}.header nav{display:none;position:absolute;top:21.79487179vw;left:0;right:0;z-index:30;background:var(--paper);padding:6.15384615vw var(--gutter) 8.20512821vw;border-bottom:0.25641026vw solid var(--line);flex-direction:column;gap:2.05128205vw;box-shadow:0 5.12820513vw 6.41025641vw #0002}.header nav.is-open{display:flex}.header nav a{min-height:12.30769231vw}.hero{padding-top:10.25641026vw;padding-bottom:0}.hero-texture{bottom:23.07692308vw;background-position:58% center}.hero h1{font-size:clamp(8.97435897vw,8.6vw,16.41025641vw);line-height:1.08;letter-spacing:-.035em}.hero .lead{font-size:4.61538462vw;line-height:1.6;margin-top:6.15384615vw;max-width:112.82051282vw}.hero-action{margin-top:6.15384615vw}.hero .button{font-size:4.1025641vw;padding:4.1025641vw 6.15384615vw;min-height:13.07692308vw}.hero .micro{font-size:3.07692308vw;margin-top:4.1025641vw;max-width:80.76923077vw}h2{font-size:11.02564103vw}.split{grid-template-columns:1fr;gap:6.15384615vw}.thinking{padding-block:4.1025641vw 20.51282051vw}.thinking-grid{grid-template-columns:1fr;gap:8.20512821vw}.thinking h2{margin-bottom:6.15384615vw}.thinking .lead{font-size:5.8974359vw}.thinking-path{padding-block:4.1025641vw}.thinking-path li{font-size:6.15384615vw;padding-block:4.1025641vw;gap:4.1025641vw}.thinking-path li>span{font-size:3.07692308vw}.thinking-path li:nth-child(2){margin-right:2.05128205vw}.thinking-path li:nth-child(3){margin-right:4.1025641vw}.thinking-path li:nth-child(4){margin-right:6.15384615vw}.thinking-path li:nth-child(5){margin-right:8.20512821vw}.process{padding-block:8.20512821vw 20.51282051vw}.process-intro h2{margin-bottom:6.15384615vw}.process-intro p{font-size:4.61538462vw}.timeline{display:block;margin-top:10.25641026vw;margin-right:2.05128205vw;padding:0}.timeline::before,.timeline::after{top:4.61538462vw;bottom:2.05128205vw;right:1.79487179vw;left:auto;height:auto;width:0.51282051vw}.timeline::after{transform:scaleY(var(--progress));transform-origin:top}.timeline li{padding:0 10.25641026vw 8.20512821vw;min-height:30.25641026vw}.timeline li:last-child{padding-bottom:0;min-height:0;background:var(--paper)}.timeline li::before{top:3.33333333vw;right:0;width:4.1025641vw;height:4.1025641vw}.timeline li>span{font-size:8.20512821vw;min-height:0;max-width:none}.timeline li:first-child>span{font-size:13.84615385vw}.timeline li:first-child::before{top:4.61538462vw}.timeline p{font-size:4.35897436vw;margin-top:2.05128205vw}.timeline small{font-size:3.58974359vw;margin-top:2.05128205vw}.handoff{padding-bottom:20.51282051vw}.handoff-panel{grid-template-columns:1fr;gap:4.1025641vw;padding:8.20512821vw 6.15384615vw;border-radius:2.56410256vw}.handoff h2{font-size:10.25641026vw;margin-bottom:6.15384615vw}.handoff p{font-size:4.35897436vw}.handoff .lead{font-size:5.64102564vw;margin-top:6.15384615vw}.handoff-visual{min-height:64.1025641vw}.handoff-visual img{width:61.53846154vw}.handoff-visual span{font-size:3.58974359vw;margin-top:0}.case-section{padding-bottom:8.20512821vw}.case-intro{grid-template-columns:1fr;gap:6.15384615vw;margin-bottom:8.20512821vw}.case-intro h2{font-size:10.25641026vw}.case-intro>div{padding:0}.case-intro p{font-size:4.61538462vw}.case-intro .text-link{margin-top:6.15384615vw;font-size:4.35897436vw}.project-browser{padding:4.1025641vw 4.1025641vw 0;border-radius:2.05128205vw}.project-browser-top{height:6.15384615vw;padding-inline:2.05128205vw;font-size:2.56410256vw}.project-browser-top span:first-child{font-size:1.53846154vw}.project-image>span{font-size:3.33333333vw;padding-top:4.1025641vw}.case-follow{grid-template-columns:1fr;gap:6.15384615vw;padding-top:8.20512821vw}.case-follow>p:first-child{font-size:4.61538462vw}.case-follow .lead{font-size:8.97435897vw}.testimonial-slot{margin-top:8.20512821vw;font-size:3.33333333vw;padding-inline:4.1025641vw}.testimonial-slot code{font-size:2.56410256vw}.about{grid-template-columns:1fr;gap:12.30769231vw;padding-block:14.35897436vw 20.51282051vw}.portrait{height:112.82051282vw;max-width:110.25641026vw;width:calc(100% - 5.12820513vw);margin:auto;border-radius:2.56410256vw}.about-copy h2,.standalone-about h1{font-size:11.02564103vw;margin-bottom:6.15384615vw}.about-copy>p{font-size:4.61538462vw}.listening{margin-block:6.15384615vw}.listening p:first-child{font-size:8.20512821vw}.listening p:last-child{font-size:5.12820513vw}.decision-panels{grid-template-columns:1fr;gap:4.1025641vw;padding-bottom:20.51282051vw}.not-ready,.pricing{padding:8.20512821vw 6.15384615vw;border-radius:2.56410256vw}.not-ready h2,.pricing h2{font-size:9.74358974vw}.not-ready>div,.pricing>div{margin-top:6.15384615vw}.not-ready>div>p:first-child,.pricing>div>p:first-child{font-size:4.35897436vw}.not-ready .lead,.pricing .lead{font-size:5.8974359vw;margin-top:6.15384615vw}.pricing>div>p:last-child{font-size:4.1025641vw}.closing{padding-block:16.41025641vw}.closing-layout{grid-template-columns:1fr;gap:8.20512821vw}.closing h2{font-size:11.53846154vw}.closing p{font-size:5.8974359vw;margin-top:6.15384615vw}.closing-action{justify-self:start}.closing .button{font-size:4.1025641vw;padding-inline:6.15384615vw}.whatsapp{font-size:3.58974359vw;margin:6.15384615vw 0 0}.footer{flex-wrap:wrap;gap:6.15384615vw;padding-block:8.20512821vw 26.66666667vw;font-size:3.33333333vw}.footer img{width:22.56410256vw}.footer p{max-width:38.46153846vw}.footer>a:last-child{display:none}.mobile-cta{position:fixed;bottom:3.58974359vw;left:5.12820513vw;right:5.12820513vw;z-index:20;display:flex;align-items:center;justify-content:center;gap:6.15384615vw;padding:4.1025641vw 6.15384615vw;background:var(--dark);color:white;border:0.25641026vw solid #ffffff66;border-radius:2.05128205vw;box-shadow:0 1.02564103vw 3.84615385vw #0002;font-size:4.35897436vw;min-height:12.82051282vw;transform:translateY(30.76923077vw);transition:transform .25s;padding-bottom:max(4.1025641vw,env(safe-area-inset-bottom))}.mobile-cta.is-visible{transform:translateY(0)}.page-intro{padding-block:12.30769231vw 20.51282051vw}.page-intro>h1{font-size:12.82051282vw}.page-intro>.lead{font-size:6.15384615vw}.page-intro>.project-image,.page-intro>.browser-frame{margin-block:10.25641026vw}.page-intro>.project-image{padding:4.1025641vw}.page-intro>.timeline{margin-top:12.30769231vw}.prose{margin-block:12.30769231vw}.prose h2{font-size:9.23076923vw}.prose p{font-size:4.61538462vw}.page-intro .split h2{font-size:9.74358974vw}.standalone-about{padding-top:14.35897436vw}.contact-intro .button{font-size:4.1025641vw;gap:4.1025641vw}.browser-scroll{height:71.79487179vw}.preview-hint{margin-top:-6.15384615vw;font-size:3.33333333vw}.case-story h2{font-size:9.74358974vw}.case-story .button{font-size:4.1025641vw;padding-inline:6.15384615vw;gap:4.1025641vw}.post{padding-block:12.30769231vw 20.51282051vw}.post-deck{font-size:5.8974359vw}.editorial-empty{padding-right:6.15384615vw}.editorial-empty h2{font-size:9.23076923vw}
}
@media(max-width:360px){.header{gap:2.05128205vw}.header-cta{font-size:3.07692308vw;padding:2.05128205vw 2.05128205vw;gap:2.05128205vw}.logo img{width:17.94871795vw}.menu-toggle{font-size:3.33333333vw;gap:2.05128205vw}.hero .button,.closing .button,.contact-intro .button,.about-copy>.button,.case-story .button,.page-intro>.button{font-size:3.58974359vw;gap:4.1025641vw;padding-inline:4.1025641vw}.hero h1{font-size:8.20512821vw}.hero .lead{font-size:4.35897436vw}.portrait{height:96.15384615vw}.thinking-path li{font-size:5.64102564vw}.handoff-panel,.not-ready,.pricing{padding-inline:6.15384615vw}.handoff h2,.not-ready h2,.pricing h2{font-size:8.97435897vw}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}}
/* Generated from project-stack.css. Design bases: 1920 / 1024 / 390; spacing grid: 8. Edit source, then npm run build. *//* One complete project per card. Without JS, every project stays readable. */
.project-deck { overflow: clip; }
.project-deck__heading { text-align: center; }
.project-deck .scs-stack {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 2.08333333vw;
  padding: 4.16666667vw 0 2.08333333vw;
}
.project-deck .scs-card {
  position: relative;
  justify-self: center;
  align-self: start;
  width: min(39.58333333vw, 86vw);
  padding: 0;
  border: 0.05208333vw solid rgba(81, 1, 54, .22);
  border-radius: 0.9375vw;
  background: var(--white);
  color: var(--ink);
  box-shadow: 0 0.9375vw 2.1875vw -1.35416667vw rgba(81, 1, 54, .4);
  transform-origin: 50% 60%;
}
.project-deck.is-ready .scs-stack { gap: 0; touch-action: pan-y; }
.project-deck.is-interactive .scs-card { cursor: grab; user-select: none; -webkit-user-select: none; }
.project-deck.is-dragging .scs-card { cursor: grabbing; }
.project-deck.is-ready .scs-card { grid-area: 1 / 1; align-self: stretch; transition: none; }
.project-deck.is-moving .scs-card { will-change: transform; }
.project-deck .scs-photo {
  aspect-ratio: 16 / 10;
  overflow: hidden;
  margin: 0;
  border-radius: 0.88541667vw 0.88541667vw 0 0;
  border-bottom: 0.05208333vw solid rgba(81, 1, 54, .08);
  background: #f5f3ed;
  line-height: 0;
  pointer-events: none;
}
.project-deck .scs-photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  -webkit-user-drag: none;
}
.project-deck [data-project-id="naama"] .scs-photo img { object-position: 90% center; }
.project-deck .scs-copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.41666667vw;
  padding: 1.25vw 1.66666667vw 1.25vw;
  text-align: right;
}
.project-deck .scs-copy :is(h2,h3) {
  margin: 0;
  font-size: 1.14583333vw;
  line-height: 1.2;
  letter-spacing: -.025em;
  text-wrap: balance;
}
.project-deck .scs-copy p { margin: 0; font-size: 0.83333333vw; line-height: 1.5; }
.project-deck .scs-copy .button { margin-top: 0.41666667vw; padding: 0.41666667vw 1.25vw; font-size: 0.72916667vw; min-height: 2.29166667vw; }
.project-deck .scs-nav { display: flex; align-items: center; justify-content: center; gap: 1.25vw; padding: 0 1.25vw 0.83333333vw; }
.project-deck .scs-nav[hidden] { display: none; }
.project-deck .scs-shuffle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.41666667vw;
  min-height: 2.5vw;
  padding: 0.83333333vw 1.25vw;
  border: 0;
  border-radius: 0.52083333vw;
  background: var(--rose);
  color: var(--plum);
  font-size: 0.88541667vw;
  font-weight: 600;
  transition: transform .2s, background .2s;
}
.project-deck .scs-shuffle:hover { background: var(--rose-deep); }
.project-deck .scs-shuffle:active { transform: scale(.95); }
.project-deck .scs-shuffle svg { width: 1.09375vw; height: 1.09375vw; fill: none; stroke: currentColor; stroke-width: 1.7; }
.project-deck .scs-counter { font-size: 0.83333333vw; color: var(--ink-soft); direction: ltr; min-width: 4ch; }
.project-deck:focus-visible { outline: 0.10416667vw solid var(--plum); outline-offset: -0.20833333vw; }
.project-deck__sr { position: absolute; width: 0.05208333vw; height: 0.05208333vw; padding: 0; margin: -0.05208333vw; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
@media (max-width: 767px) {
  .project-deck .scs-stack { padding-top: 2.08333333vw; padding-bottom: 1.66666667vw; }
  .project-deck .scs-card { width: calc(100% - 2.5vw); padding: 0; border-radius: 0.72916667vw; }
  .project-deck .scs-photo { border-radius: 0.67708333vw 0.67708333vw 0 0; }
  .project-deck .scs-copy { padding: 0.83333333vw 0.83333333vw 0.83333333vw; gap: 0.41666667vw; }
  .project-deck .scs-copy :is(h2,h3) { font-size: 0.98958333vw; }
  .project-deck .scs-copy p { font-size: 0.78125vw; }
}
@media (prefers-reduced-motion: reduce) {
  .project-deck .scs-card, .project-deck .scs-shuffle { transition: none; }
}
@media (max-width: 1024px) {/* One complete project per card. Without JS, every project stays readable. */
.project-deck { overflow: clip; }
.project-deck__heading { text-align: center; }
.project-deck .scs-stack {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 3.90625vw;
  padding: 4.6875vw 0 3.90625vw;
}
.project-deck .scs-card {
  position: relative;
  justify-self: center;
  align-self: start;
  width: min(74.21875vw, 86vw);
  padding: 0;
  border: 0.09765625vw solid rgba(81, 1, 54, .22);
  border-radius: 1.7578125vw;
  background: var(--white);
  color: var(--ink);
  box-shadow: 0 1.7578125vw 4.1015625vw -2.5390625vw rgba(81, 1, 54, .4);
  transform-origin: 50% 60%;
}
.project-deck.is-ready .scs-stack { gap: 0; touch-action: pan-y; }
.project-deck.is-interactive .scs-card { cursor: grab; user-select: none; -webkit-user-select: none; }
.project-deck.is-dragging .scs-card { cursor: grabbing; }
.project-deck.is-ready .scs-card { grid-area: 1 / 1; align-self: stretch; transition: none; }
.project-deck.is-moving .scs-card { will-change: transform; }
.project-deck .scs-photo {
  aspect-ratio: 16 / 10;
  overflow: hidden;
  margin: 0;
  border-radius: 1.66015625vw 1.66015625vw 0 0;
  border-bottom: 0.09765625vw solid rgba(81, 1, 54, .08);
  background: #f5f3ed;
  line-height: 0;
  pointer-events: none;
}
.project-deck .scs-photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  -webkit-user-drag: none;
}
.project-deck [data-project-id="naama"] .scs-photo img { object-position: 90% center; }
.project-deck .scs-copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.78125vw;
  padding: 2.34375vw 3.125vw 2.34375vw;
  text-align: right;
}
.project-deck .scs-copy :is(h2,h3) {
  margin: 0;
  font-size: 2.1484375vw;
  line-height: 1.2;
  letter-spacing: -.025em;
  text-wrap: balance;
}
.project-deck .scs-copy p { margin: 0; font-size: 1.5625vw; line-height: 1.5; }
.project-deck .scs-copy .button { margin-top: 0.78125vw; padding: 0.78125vw 2.34375vw; font-size: 1.3671875vw; min-height: 4.296875vw; }
.project-deck .scs-nav { display: flex; align-items: center; justify-content: center; gap: 2.34375vw; padding: 0 2.34375vw 1.5625vw; }
.project-deck .scs-nav[hidden] { display: none; }
.project-deck .scs-shuffle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.78125vw;
  min-height: 4.6875vw;
  padding: 1.5625vw 2.34375vw;
  border: 0;
  border-radius: 0.9765625vw;
  background: var(--rose);
  color: var(--plum);
  font-size: 1.66015625vw;
  font-weight: 600;
  transition: transform .2s, background .2s;
}
.project-deck .scs-shuffle:hover { background: var(--rose-deep); }
.project-deck .scs-shuffle:active { transform: scale(.95); }
.project-deck .scs-shuffle svg { width: 2.05078125vw; height: 2.05078125vw; fill: none; stroke: currentColor; stroke-width: 1.7; }
.project-deck .scs-counter { font-size: 1.5625vw; color: var(--ink-soft); direction: ltr; min-width: 4ch; }
.project-deck:focus-visible { outline: 0.1953125vw solid var(--plum); outline-offset: -0.390625vw; }
.project-deck__sr { position: absolute; width: 0.09765625vw; height: 0.09765625vw; padding: 0; margin: -0.09765625vw; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
@media (max-width: 767px) {
  .project-deck .scs-stack { padding-top: 3.90625vw; padding-bottom: 3.125vw; }
  .project-deck .scs-card { width: calc(100% - 4.6875vw); padding: 0; border-radius: 1.3671875vw; }
  .project-deck .scs-photo { border-radius: 1.26953125vw 1.26953125vw 0 0; }
  .project-deck .scs-copy { padding: 1.5625vw 1.5625vw 1.5625vw; gap: 0.78125vw; }
  .project-deck .scs-copy :is(h2,h3) { font-size: 1.85546875vw; }
  .project-deck .scs-copy p { font-size: 1.46484375vw; }
}
@media (prefers-reduced-motion: reduce) {
  .project-deck .scs-card, .project-deck .scs-shuffle { transition: none; }
} }
@media (max-width: 767px) {/* One complete project per card. Without JS, every project stays readable. */
.project-deck { overflow: clip; }
.project-deck__heading { text-align: center; }
.project-deck .scs-stack {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 10.25641026vw;
  padding: 12.30769231vw 0 10.25641026vw;
}
.project-deck .scs-card {
  position: relative;
  justify-self: center;
  align-self: start;
  width: min(194.87179487vw, 86vw);
  padding: 0;
  border: 0.25641026vw solid rgba(81, 1, 54, .22);
  border-radius: 4.61538462vw;
  background: var(--white);
  color: var(--ink);
  box-shadow: 0 4.61538462vw 10.76923077vw -6.66666667vw rgba(81, 1, 54, .4);
  transform-origin: 50% 60%;
}
.project-deck.is-ready .scs-stack { gap: 0; touch-action: pan-y; }
.project-deck.is-interactive .scs-card { cursor: grab; user-select: none; -webkit-user-select: none; }
.project-deck.is-dragging .scs-card { cursor: grabbing; }
.project-deck.is-ready .scs-card { grid-area: 1 / 1; align-self: stretch; transition: none; }
.project-deck.is-moving .scs-card { will-change: transform; }
.project-deck .scs-photo {
  aspect-ratio: 16 / 10;
  overflow: hidden;
  margin: 0;
  border-radius: 4.35897436vw 4.35897436vw 0 0;
  border-bottom: 0.25641026vw solid rgba(81, 1, 54, .08);
  background: #f5f3ed;
  line-height: 0;
  pointer-events: none;
}
.project-deck .scs-photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  -webkit-user-drag: none;
}
.project-deck [data-project-id="naama"] .scs-photo img { object-position: 90% center; }
.project-deck .scs-copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2.05128205vw;
  padding: 6.15384615vw 8.20512821vw 6.15384615vw;
  text-align: right;
}
.project-deck .scs-copy :is(h2,h3) {
  margin: 0;
  font-size: 5.64102564vw;
  line-height: 1.2;
  letter-spacing: -.025em;
  text-wrap: balance;
}
.project-deck .scs-copy p { margin: 0; font-size: 4.1025641vw; line-height: 1.5; }
.project-deck .scs-copy .button { margin-top: 2.05128205vw; padding: 2.05128205vw 6.15384615vw; font-size: 3.58974359vw; min-height: 11.28205128vw; }
.project-deck .scs-nav { display: flex; align-items: center; justify-content: center; gap: 6.15384615vw; padding: 0 6.15384615vw 4.1025641vw; }
.project-deck .scs-nav[hidden] { display: none; }
.project-deck .scs-shuffle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 2.05128205vw;
  min-height: 12.30769231vw;
  padding: 4.1025641vw 6.15384615vw;
  border: 0;
  border-radius: 2.56410256vw;
  background: var(--rose);
  color: var(--plum);
  font-size: 4.35897436vw;
  font-weight: 600;
  transition: transform .2s, background .2s;
}
.project-deck .scs-shuffle:hover { background: var(--rose-deep); }
.project-deck .scs-shuffle:active { transform: scale(.95); }
.project-deck .scs-shuffle svg { width: 5.38461538vw; height: 5.38461538vw; fill: none; stroke: currentColor; stroke-width: 1.7; }
.project-deck .scs-counter { font-size: 4.1025641vw; color: var(--ink-soft); direction: ltr; min-width: 4ch; }
.project-deck:focus-visible { outline: 0.51282051vw solid var(--plum); outline-offset: -1.02564103vw; }
.project-deck__sr { position: absolute; width: 0.25641026vw; height: 0.25641026vw; padding: 0; margin: -0.25641026vw; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
@media (max-width: 767px) {
  .project-deck .scs-stack { padding-top: 10.25641026vw; padding-bottom: 8.20512821vw; }
  .project-deck .scs-card { width: calc(100% - 12.30769231vw); padding: 0; border-radius: 3.58974359vw; }
  .project-deck .scs-photo { border-radius: 3.33333333vw 3.33333333vw 0 0; }
  .project-deck .scs-copy { padding: 4.1025641vw 4.1025641vw 4.1025641vw; gap: 2.05128205vw; }
  .project-deck .scs-copy :is(h2,h3) { font-size: 4.87179487vw; }
  .project-deck .scs-copy p { font-size: 3.84615385vw; }
}
@media (prefers-reduced-motion: reduce) {
  .project-deck .scs-card, .project-deck .scs-shuffle { transition: none; }
} }
/* Generated from design-tokens.css. Design bases: 1920 / 1024 / 390; spacing grid: 8. Edit source, then npm run build. *//* ==========================================================================
   Web by Miri — global styles (v2: Instagram palette, reference composition)
   Colors were sampled from the Instagram post originals. Fonts are the
   Talent FS and SKF Fresco web files from the brand fonts folder.
   ========================================================================== */

@font-face {
  font-family: 'Talent';
  src: url("/site-assets/migration-9da90a47d1115171-TalentFS-Regular.woff2?v=13e7b3be7c222deb") format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Talent';
  src: url("/site-assets/migration-4014ee897f16bc64-TalentFS-Demibold.woff2?v=d3932980ce91f852") format('woff2');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

:root {
  /* Brand */
  --plum: #510136;
  --plum-2: #6E2B57;
  --plum-3: #3A0126;
  --pink: #F84898;
  --rose: #F3C0C9;
  --rose-soft: #F9DDE3;
  --rose-deep: #F2A2BA;
  --lime: #B0F800;
  --lime-soft: #DDE8A3;
  --lime-pale: #EDF5C8;
  --lavender: #DCCFEA;
  --lavender-soft: #EFE7F5;
  --turquoise: #82FFF2;
  --cream: #FBF6EF;
  --sand: #F3ECE4;
  --sand-deep: #E8DDD0;
  --white: #FFFFFF;

  /* Text */
  --ink: #1F0E17;
  --ink-soft: #5A4553;          /* 8:1 on cream, 5.4:1 on rose */
  --ink-mute: #7A6573;          /* 4.9:1 on cream */
  --on-plum: #FBF6EF;
  --on-plum-soft: rgba(251, 246, 239, .78);
  --line: rgba(31, 14, 23, .14);
  --line-strong: rgba(31, 14, 23, .32);
  --line-on-plum: rgba(251, 246, 239, .2);

  /* Older names still used by inner-page styles */
  --paper: var(--cream);
  --mint: var(--lime-pale);
  --blush: var(--rose-soft);

  --font: 'Talent', 'Arial Hebrew', 'Heebo', Arial, sans-serif;
  --font-script: var(--font);
  --fw-bold: 600;

  --fs-display: clamp(1.95833333vw, 0.58333333vw + 6.5vw, 5.41666667vw);
  --fs-h2: clamp(1.83333333vw, 0.91666667vw + 3.7vw, 4.08333333vw);
  --fs-h3: clamp(1.20833333vw, 0.95833333vw + 1vw, 1.79166667vw);
  --fs-lead: clamp(1vw, 0.875vw + .55vw, 1.33333333vw);
  --fs-body: clamp(0.88333333vw, 0.83333333vw + .2vw, 1vw);
  --fs-small: 0.79166667vw;

  --gutter: 3.75vw;
  --maxw: 70.83333333vw;
  --section: 10.83333333vw;
  --header-h: 4.16666667vw;
  --radius: 0.83333333vw;
  --radius-lg: 1.25vw;
  --radius-xl: 1.66666667vw;

  /* Design-space steps; the build emits each as vw at the device reference. */
  --space-8: 0.41666667vw;
  --space-16: 0.83333333vw;
  --space-24: 1.25vw;
  --space-32: 1.66666667vw;
  --space-40: 2.08333333vw;
  --space-48: 2.5vw;
  --space-64: 3.33333333vw;
  --space-80: 4.16666667vw;
  --space-96: 5vw;
  --space-128: 6.66666667vw;

  --ease-out: cubic-bezier(.22, .61, .36, 1);
  --ease-in-out: cubic-bezier(.65, 0, .35, 1);
  --ease-pop: cubic-bezier(.34, 1.45, .64, 1);

  --shadow-soft: 0 0.05208333vw 0.10416667vw rgba(31, 14, 23, .06), 0 0.625vw 1.66666667vw -0.72916667vw rgba(81, 1, 54, .28);
  --shadow-lift: 0 0.10416667vw 0.20833333vw rgba(31, 14, 23, .06), 0 1.45833333vw 3.33333333vw -1.35416667vw rgba(81, 1, 54, .45);
}

@media (max-width: 767px) {
  :root { --header-h: 3.54166667vw; }
}

/* Shared brand: the Claude palette and sans-serif type across all eight pages. */
:root { --display: var(--font); --dark: var(--plum); --muted: var(--ink-soft); --pink-text: #B02468; }
@media (max-width: 1024px) {/* ==========================================================================
   Web by Miri — global styles (v2: Instagram palette, reference composition)
   Colors were sampled from the Instagram post originals. Fonts are the
   Talent FS and SKF Fresco web files from the brand fonts folder.
   ========================================================================== */

:root {
  /* Brand */
  --plum: #510136;
  --plum-2: #6E2B57;
  --plum-3: #3A0126;
  --pink: #F84898;
  --rose: #F3C0C9;
  --rose-soft: #F9DDE3;
  --rose-deep: #F2A2BA;
  --lime: #B0F800;
  --lime-soft: #DDE8A3;
  --lime-pale: #EDF5C8;
  --lavender: #DCCFEA;
  --lavender-soft: #EFE7F5;
  --turquoise: #82FFF2;
  --cream: #FBF6EF;
  --sand: #F3ECE4;
  --sand-deep: #E8DDD0;
  --white: #FFFFFF;

  /* Text */
  --ink: #1F0E17;
  --ink-soft: #5A4553;          /* 8:1 on cream, 5.4:1 on rose */
  --ink-mute: #7A6573;          /* 4.9:1 on cream */
  --on-plum: #FBF6EF;
  --on-plum-soft: rgba(251, 246, 239, .78);
  --line: rgba(31, 14, 23, .14);
  --line-strong: rgba(31, 14, 23, .32);
  --line-on-plum: rgba(251, 246, 239, .2);

  /* Older names still used by inner-page styles */
  --paper: var(--cream);
  --mint: var(--lime-pale);
  --blush: var(--rose-soft);

  --font: 'Talent', 'Arial Hebrew', 'Heebo', Arial, sans-serif;
  --font-script: var(--font);
  --fw-bold: 600;

  --fs-display: clamp(3.671875vw, 1.09375vw + 6.5vw, 10.15625vw);
  --fs-h2: clamp(3.4375vw, 1.71875vw + 3.7vw, 7.65625vw);
  --fs-h3: clamp(2.265625vw, 1.796875vw + 1vw, 3.359375vw);
  --fs-lead: clamp(1.875vw, 1.640625vw + .55vw, 2.5vw);
  --fs-body: clamp(1.65625vw, 1.5625vw + .2vw, 1.875vw);
  --fs-small: 1.484375vw;

  --gutter: 4.6875vw;
  --maxw: 132.8125vw;
  --section: 13.28125vw;
  --header-h: 7.8125vw;
  --radius: 1.5625vw;
  --radius-lg: 2.34375vw;
  --radius-xl: 3.125vw;

  /* Design-space steps; the build emits each as vw at the device reference. */
  --space-8: 0.78125vw;
  --space-16: 1.5625vw;
  --space-24: 2.34375vw;
  --space-32: 3.125vw;
  --space-40: 3.90625vw;
  --space-48: 4.6875vw;
  --space-64: 6.25vw;
  --space-80: 7.8125vw;
  --space-96: 9.375vw;
  --space-128: 12.5vw;

  --ease-out: cubic-bezier(.22, .61, .36, 1);
  --ease-in-out: cubic-bezier(.65, 0, .35, 1);
  --ease-pop: cubic-bezier(.34, 1.45, .64, 1);

  --shadow-soft: 0 0.09765625vw 0.1953125vw rgba(31, 14, 23, .06), 0 1.171875vw 3.125vw -1.3671875vw rgba(81, 1, 54, .28);
  --shadow-lift: 0 0.1953125vw 0.390625vw rgba(31, 14, 23, .06), 0 2.734375vw 6.25vw -2.5390625vw rgba(81, 1, 54, .45);
}

@media (max-width: 767px) {
  :root { --header-h: 6.640625vw; }
}

/* Shared brand: the Claude palette and sans-serif type across all eight pages. */
:root { --display: var(--font); --dark: var(--plum); --muted: var(--ink-soft); --pink-text: #B02468; }
}
@media (max-width: 767px) {/* ==========================================================================
   Web by Miri — global styles (v2: Instagram palette, reference composition)
   Colors were sampled from the Instagram post originals. Fonts are the
   Talent FS and SKF Fresco web files from the brand fonts folder.
   ========================================================================== */

:root {
  /* Brand */
  --plum: #510136;
  --plum-2: #6E2B57;
  --plum-3: #3A0126;
  --pink: #F84898;
  --rose: #F3C0C9;
  --rose-soft: #F9DDE3;
  --rose-deep: #F2A2BA;
  --lime: #B0F800;
  --lime-soft: #DDE8A3;
  --lime-pale: #EDF5C8;
  --lavender: #DCCFEA;
  --lavender-soft: #EFE7F5;
  --turquoise: #82FFF2;
  --cream: #FBF6EF;
  --sand: #F3ECE4;
  --sand-deep: #E8DDD0;
  --white: #FFFFFF;

  /* Text */
  --ink: #1F0E17;
  --ink-soft: #5A4553;          /* 8:1 on cream, 5.4:1 on rose */
  --ink-mute: #7A6573;          /* 4.9:1 on cream */
  --on-plum: #FBF6EF;
  --on-plum-soft: rgba(251, 246, 239, .78);
  --line: rgba(31, 14, 23, .14);
  --line-strong: rgba(31, 14, 23, .32);
  --line-on-plum: rgba(251, 246, 239, .2);

  /* Older names still used by inner-page styles */
  --paper: var(--cream);
  --mint: var(--lime-pale);
  --blush: var(--rose-soft);

  --font: 'Talent', 'Arial Hebrew', 'Heebo', Arial, sans-serif;
  --font-script: var(--font);
  --fw-bold: 600;

  --fs-display: clamp(9.64102564vw, 2.87179487vw + 6.5vw, 26.66666667vw);
  --fs-h2: clamp(9.02564103vw, 4.51282051vw + 3.7vw, 20.1025641vw);
  --fs-h3: clamp(5.94871795vw, 4.71794872vw + 1vw, 8.82051282vw);
  --fs-lead: clamp(4.92307692vw, 4.30769231vw + .55vw, 6.56410256vw);
  --fs-body: clamp(4.34871795vw, 4.1025641vw + .2vw, 4.92307692vw);
  --fs-small: 3.8974359vw;

  --gutter: 6.15384615vw;
  --maxw: 348.71794872vw;
  --section: 28.71794872vw;
  --header-h: 20.51282051vw;
  --radius: 4.1025641vw;
  --radius-lg: 6.15384615vw;
  --radius-xl: 8.20512821vw;

  /* Design-space steps; the build emits each as vw at the device reference. */
  --space-8: 2.05128205vw;
  --space-16: 4.1025641vw;
  --space-24: 6.15384615vw;
  --space-32: 8.20512821vw;
  --space-40: 10.25641026vw;
  --space-48: 12.30769231vw;
  --space-64: 16.41025641vw;
  --space-80: 20.51282051vw;
  --space-96: 24.61538462vw;
  --space-128: 32.82051282vw;

  --ease-out: cubic-bezier(.22, .61, .36, 1);
  --ease-in-out: cubic-bezier(.65, 0, .35, 1);
  --ease-pop: cubic-bezier(.34, 1.45, .64, 1);

  --shadow-soft: 0 0.25641026vw 0.51282051vw rgba(31, 14, 23, .06), 0 3.07692308vw 8.20512821vw -3.58974359vw rgba(81, 1, 54, .28);
  --shadow-lift: 0 0.51282051vw 1.02564103vw rgba(31, 14, 23, .06), 0 7.17948718vw 16.41025641vw -6.66666667vw rgba(81, 1, 54, .45);
}

@media (max-width: 767px) {
  :root { --header-h: 17.43589744vw; }
}

/* Shared brand: the Claude palette and sans-serif type across all eight pages. */
:root { --display: var(--font); --dark: var(--plum); --muted: var(--ink-soft); --pink-text: #B02468; }
}
/* Generated from studio-theme.css. Design bases: 1920 / 1024 / 390; spacing grid: 8. Edit source, then npm run build. */body { font-family: var(--font); font-size: var(--fs-body); line-height: 1.6; }
h1,h2,h3,strong,b { font-family: var(--font); font-weight: var(--fw-bold); }
button,input,textarea { font-family: var(--font); }
.button,.header-cta { border-radius: 0.52083333vw; }
.button { font-weight: 600; }
.header { height: 4.58333333vw; }
.header nav { font-size: 0.83333333vw; }
.logo img { filter: none; }
.site-footer { background: var(--plum-3); color: var(--cream); }
.footer img { filter: grayscale(1) brightness(0) invert(1); }
.footer p { color: var(--on-plum-soft); }
.site-footer a:focus-visible { outline-color: var(--lime); }
.site-footer .footer > a:last-child { border-color: var(--line-on-plum); }

/* Claude's background semicircles, with no circle behind the hero lettering. */
.home-blend .site-header { background: var(--plum); color: var(--cream); border-color: var(--line-on-plum); }
.home-blend .logo img { filter: grayscale(1) brightness(0) invert(1); }
.home-blend .header nav a { color: var(--on-plum-soft); }
.home-blend .header nav a:hover,.home-blend .header nav a[aria-current] { color: var(--cream); }
.home-blend .header-cta { color: var(--cream); border-color: var(--line-on-plum); }
.home-blend .header-cta:hover { background: var(--plum-2); }
.home-blend .menu-toggle { color: var(--cream); }
.home-blend .site-header :focus-visible { outline-color: var(--lime); }
.home-blend .hero { padding-block: 4.16666667vw 1.25vw; color: var(--cream); background: var(--plum-3); border-radius: 0 0 1.04166667vw 1.04166667vw; overflow: hidden; }
.home-blend .hero-texture { inset: 0; background: radial-gradient(70% 55% at 50% 22%,rgba(110,43,87,.7),transparent 72%),linear-gradient(180deg,var(--plum),var(--plum-3)); }
.home-blend .hero-texture { pointer-events: none; }
.home-blend .hero-texture::after { inset: 0; opacity: 1; background-image: linear-gradient(to right,rgba(251,246,239,.075) 0.05208333vw,transparent 0.05208333vw),linear-gradient(to bottom,rgba(251,246,239,.075) 0.05208333vw,transparent 0.05208333vw); background-size: clamp(5.72916667vw,13.3vw,10vw) clamp(5.72916667vw,13.3vw,10vw); background-position: center top; -webkit-mask-image: radial-gradient(ellipse 80% 90% at 50% 38%,#000 25%,transparent 78%); mask-image: radial-gradient(ellipse 80% 90% at 50% 38%,#000 25%,transparent 78%); }
.hero-pin { position: absolute; width: clamp(1.35416667vw,3.2vw,2.39583333vw); height: clamp(0.67708333vw,1.6vw,1.19791667vw); border-radius: 5.15625vw 5.15625vw 0 0; background: var(--pink); }
.hero-pin--one { top: 34%; right: 8%; }
.hero-pin--two { top: 29%; left: 9%; background: var(--lime); border-radius: 0 0 5.15625vw 5.15625vw; }
.hero-pin--three { top: 52%; left: 5%; background: var(--lavender); }
.hero-pin--four { top: 47%; right: 13%; border-radius: 0 0 5.15625vw 5.15625vw; }
.home-blend .hero-copy { max-width: 65.10416667vw; }
.home-blend .hero h1 { font-size: clamp(2.1875vw,6.5vw,5.10416667vw); line-height: 1.02; letter-spacing: -.025em; }
.home-blend .hero h1 .hero-accent { color: inherit; }
.home-blend .hero .lead { color: var(--cream); font-size: clamp(0.98958333vw,1.5vw,1.19791667vw); max-width: 28.64583333vw; line-height: 1.5; }
.home-blend .hero .micro { color: var(--on-plum-soft); font-size: 0.72916667vw; }
.home-blend .hero .button { background: var(--lime); color: var(--plum); min-height: 2.91666667vw; }
.home-blend .hero .button:hover { background: var(--lime-soft); }
.home-blend .hero :is(a,button):focus-visible,.home-blend .sc-root:focus-visible { outline-color: var(--lime); }
.sc-label { font-family: var(--font); }
.sc-label { font-weight: 600; }
.home-blend .sc-card { border-radius: 0.625vw; background: var(--cream); box-shadow: 0 1.04166667vw 2.08333333vw -1.25vw #13000d; }
.home-blend .sc-photo,.home-blend .sc-card-link { border-radius: 0.36458333vw; }

/* Namespaced components share typography and spacing, not legacy selectors. */
.cm-section { font-size: var(--fs-body); line-height: 1.6; }
.home-blend main > section + section { margin-top: var(--section); }
.home-blend main > .cm-gather { margin-top: 0; }
:where(.cm-section) :where(p,figure,blockquote,ul,ol,h2,h3) { margin: 0; }
:where(.cm-section) p + p { margin-top: 0; }
:where(.cm-section) :where(ul[role=list],ol[role=list]) { padding: 0; list-style: none; }
.cm-section svg { display: block; max-width: 100%; }
.cm-container { width: 100%; max-width: calc(var(--maxw) + var(--gutter)*2); padding-inline: var(--gutter); margin-inline: auto; }
.cm-h2 { font-size: var(--fs-h2); line-height: 1.04; letter-spacing: -.02em; }
.cm-display { font-size: var(--fs-display); line-height: 1.02; letter-spacing: -.025em; }
.cm-lead { font-size: var(--fs-lead); line-height: 1.48; }
.cm-link { display: inline-flex; align-items: center; gap: 0.41666667vw; min-height: 2.29166667vw; padding-block: 0.41666667vw; border-bottom: 0.05208333vw solid currentColor; }
.cm-link:hover { color: var(--plum-2); }
.cm-link svg { width: 1.04166667vw; height: 1.04166667vw; flex: none; }
.cm-btn { display: inline-flex; align-items: center; justify-content: center; gap: 0.83333333vw; min-height: 2.91666667vw; padding: 0.83333333vw 1.25vw; border-radius: 0.52083333vw; background: var(--plum); color: var(--cream); font-weight: 600; line-height: 1.3; transition: background .2s,transform .2s; }
.cm-btn:hover { background: var(--plum-2); transform: translateY(-0.10416667vw); }
.cm-btn svg { flex: none; }
.cm-section .cm-spot { white-space: normal; }
.cm-section .cm-spot::before { content: none; }
.cm-gather__list { font-size: clamp(0.88541667vw,1.4vw,1.09375vw); max-width: 28ch; }
.cm-gather__word { background-image: none; }
.cm-gather__result .cm-marker::before { content: none; }
.cm-step { border-radius: 0.52083333vw; }
.cm-board { border: 0.05208333vw solid rgba(81,1,54,.12); }
.cm-board__paper { background-image: linear-gradient(#5101360a 0.05208333vw,transparent 0.05208333vw),linear-gradient(90deg,#5101360a 0.05208333vw,transparent 0.05208333vw); background-size: 1.25vw 1.25vw; }
.cm-kit__mark { border-radius: 12%; }
.cm-story__rect { border-radius: 0.83333333vw; }
.cm-decision-dots i { height: 0.20833333vw; width: 1.25vw; border-radius: 0.10416667vw; }
.home-blend .case-section { padding-bottom: 0; }
.home-blend .cm-story { padding-block: 1.25vw; }
.home-blend .cm-final { margin-top: 8.75vw; }
.cm-final .cm-marker::before { background: var(--lime-soft); }
.cta-quiet .mobile-cta,.interaction-quiet .mobile-cta { transform: translateY(6.25vw); }

/* Before JS (or with it disabled), the same material remains readable. */
.cm-board:not(.is-ready) { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.25vw; align-content: center; padding: 7%; }
.cm-board:not(.is-ready) :is(.cm-wf,.cm-bh,.cm-bq) { display: none; }
.cm-board:not(.is-ready) .cm-bw { position: relative; inset: auto; white-space: normal; font-size: clamp(0.67708333vw,1.5vw,1.14583333vw); }
.cm-step:disabled { cursor: default; opacity: 1; }

@media (max-width: 767px) {
  .header { height: 4.0625vw; }
  .header nav { top: 4.0625vw; }
  .home-blend .header nav { background: var(--plum); }
  .home-blend .hero { padding-top: 2.08333333vw; padding-bottom: 2.91666667vw; background: var(--cream); border-radius: 0; }
  .home-blend .hero-texture { bottom: calc(57vw - 1.04166667vw); border-radius: 0; }
  .hero-pin { display: none; }
  .home-blend .hero h1 { font-size: clamp(1.66666667vw,8.8vw,3.33333333vw); }
  .home-blend .hero .lead { font-size: 0.9375vw; }
  .home-blend .hero .micro { font-size: 0.67708333vw; }
  .home-blend .hero .button { min-height: 2.70833333vw; }
  .cm-h2 { font-size: clamp(1.77083333vw,8.3vw,2.55208333vw); }
  .cm-final .cm-display,.cm-ready .cm-display { font-size: clamp(2.1875vw,10vw,3.4375vw); }
  .cm-final .cm-link { font-size: 0.83333333vw; }
  .cm-btn { font-size: 0.88541667vw; padding-inline: 0.83333333vw; }
  .cm-gather__pin { padding-block: 1.66666667vw; }
  .cm-gather__list { max-width: none; font-size: 0.88541667vw; }
  .cm-board { border-radius: 0.72916667vw; }
  .cm-steps { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0.41666667vw; }
  .cm-steps__item:last-child { grid-column: 1 / -1; }
  .cm-steps__owner { display: none; }
  .cm-step { min-height: 4.0625vw; height: 100%; padding: 0.83333333vw 0.83333333vw 0.83333333vw; border: 0.05208333vw solid var(--line); }
  .cm-step::before { display: none; }
  .cm-step__label { font-size: 0.67708333vw; }
  .cm-step__line { font-size: 0.9375vw; }
  .cm-step__timer { inset-inline: 0.72916667vw; bottom: 0.26041667vw; height: 0.10416667vw; }
  .cm-board:not(.is-ready) { gap: 0.83333333vw 0.83333333vw; }
  .cm-board:not(.is-ready) .cm-bw { font-size: 0.72916667vw; }
  .standalone-about .portrait { width: calc(100% - 2.5vw); }
}
@media (prefers-reduced-motion: reduce) {
  .cm-section *, .cm-section *::before, .cm-section *::after { transition: none !important; animation: none !important; }
}

/* Standalone project pages show the supplied project image without cropping. */
.project-detail__name { margin: 1.66666667vw 0 0.83333333vw; color: var(--ink-soft); }
.project-detail__image { margin-top: 2.08333333vw; }
.project-detail__image img { width: 100%; height: auto; border-radius: 0.625vw; }


/* A centered typographic scene: readable first, enlarged by scrolling, then copy. */
.cm-ready { background: var(--lime-soft); }
.cm-ready .cm-ready__inner {
  width: 100%; max-width: none; min-height: 80svh;
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  gap: 2.08333333vw; padding: 3.75vw var(--gutter); text-align: center;
}
.cm-ready .cm-ready__title {
  position: relative; color: var(--plum-3);
  width: min(46.875vw, 86vw); max-width: 15ch; margin: 0;
  font-size: clamp(2.08333333vw, 6.5vw, 4.79166667vw); line-height: 1.04; text-wrap: balance;
}
.cm-ready .cm-ready__text {
  width: min(34.375vw, 86vw); max-width: none; margin: 0;
  display: grid; gap: 1.25vw; text-wrap: pretty;
}
.cm-ready .cm-ready__text .cm-lead { font-size: clamp(1.09375vw, 2.5vw, 1.77083333vw); line-height: 1.45; }
.cm-ready--zoom { height: var(--ready-height, 280svh); position: relative; }
.cm-ready--zoom .cm-ready__inner {
  position: sticky; top: 0; height: 100svh; min-height: 0; padding: 0;
  display: grid; place-items: center; gap: 0; overflow: hidden; isolation: isolate;
}
.cm-ready--zoom .cm-ready__title, .cm-ready--zoom .cm-ready__text { grid-area: 1 / 1; will-change: transform, opacity; }
.cm-ready--zoom .cm-ready__title { pointer-events: none; will-change: auto; }
/* Stay hidden even before the scroll timeline starts or after it rewinds. */
.cm-ready--zoom .cm-ready__text { color: var(--cream); opacity: 0; }
@media (max-width: 767px) {
  .cm-ready--zoom { --ready-height: 260svh; }
  .cm-ready .cm-ready__title { font-size: clamp(2.08333333vw, 10vw, 3.4375vw); }
  .cm-ready .cm-ready__text { width: min(29.6875vw, 84vw); gap: 1.25vw; }
  .cm-ready__line { display: block; white-space: nowrap; }
}

.cm-ready__word { white-space: nowrap; }
.cm-ready__glyph { display: inline-block; letter-spacing: 0; }
.cm-ready__backdrop { display: none; }
.cm-ready--zoom .cm-ready__backdrop { display: block; z-index: 0; opacity: 0; }
.cm-ready--zoom .cm-ready__title, .cm-ready--zoom .cm-ready__text { position: relative; z-index: 1; }
.cm-ready__backdrop .hero-pin--one { top: 23%; }
.cm-ready__backdrop .hero-pin--three { top: 72%; }
.cm-ready__backdrop .hero-pin--four { top: 76%; }

/* The next real section covers the stationary paragraph like a rising page. */
.cm-ready--wipe { height: calc(var(--ready-height, 280svh) + 100svh); }
.home-blend main > .cm-ready--wipe + .cm-price {
  position: relative; z-index: 2;
  margin-top: -100svh; min-height: 100svh;
  padding-block: 4.58333333vw 5vw;
  background: var(--cream);
}

/* Keep the thinking board and all five controls visible during scroll scrubbing. */
/* ScrollTrigger measures pins with instant scroll resets. CSS smooth scrolling
   can leave stale bounds when the page opens at a deep anchor. Button navigation
   still requests its own smooth movement explicitly. */
html:has(body.home-blend) { scroll-behavior: auto; }
.cm-think__track { margin-top: 4.58333333vw; }
.cm-think__track .cm-think__body { margin-top: 0; }
.cm-think--scroll { min-height: 420svh; }
.cm-think--scroll > .cm-container {
  position: sticky;
  top: calc(var(--header-h) + 0.625vw);
}
.cm-think--scroll .cm-think__body { background: var(--cream); }
.cm-think--scroll .cm-step__timer { display: none; }
@media (max-width: 1023px) {
  .cm-think--scroll .cm-think__body { gap: 1.25vw; }
  .cm-think--scroll .cm-board {
    width: min(100%, 27.08333333vw, calc((100svh - 18.75vw) * 1.3333));
    aspect-ratio: 4 / 3; justify-self: center;
  }
  .cm-think--scroll .cm-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.41666667vw; }
  .cm-think--scroll .cm-steps__item:last-child { grid-column: 1 / -1; }
  .cm-think--scroll .cm-steps__owner { display: none; }
  .cm-think--scroll .cm-step { min-height: 3.75vw; height: 100%; padding: 0.41666667vw 0.83333333vw; border: 0.05208333vw solid var(--line); }
  .cm-think--scroll .cm-step::before { display: none; }
  .cm-think--scroll .cm-step__label { font-size: 0.67708333vw; }
  .cm-think--scroll .cm-step__line { font-size: 0.9375vw; }
}
@media (max-width: 767px) {
  .cm-think--scroll > .cm-container { top: 4.58333333vw; }
  .cm-think--scroll .cm-think__head { gap: 0.83333333vw; }
  .cm-think--scroll .cm-think__track { margin-top: 1.25vw; }
  .cm-think--scroll .cm-think__body { gap: 0.83333333vw; }
  .cm-think--scroll .cm-step { min-height: 3.54166667vw; }
  /* The shared footer has an old inline gap with an undefined unit. */
  .site-footer .footer nav { gap: 0.41666667vw 0.83333333vw !important; }
}
@media (max-width: 1024px) {body { font-family: var(--font); font-size: var(--fs-body); line-height: 1.6; }
h1,h2,h3,strong,b { font-family: var(--font); font-weight: var(--fw-bold); }
button,input,textarea { font-family: var(--font); }
.button,.header-cta { border-radius: 0.9765625vw; }
.button { font-weight: 600; }
.header { height: 8.59375vw; }
.header nav { font-size: 1.5625vw; }
.logo img { filter: none; }
.site-footer { background: var(--plum-3); color: var(--cream); }
.footer img { filter: grayscale(1) brightness(0) invert(1); }
.footer p { color: var(--on-plum-soft); }
.site-footer a:focus-visible { outline-color: var(--lime); }
.site-footer .footer > a:last-child { border-color: var(--line-on-plum); }

/* Claude's background semicircles, with no circle behind the hero lettering. */
.home-blend .site-header { background: var(--plum); color: var(--cream); border-color: var(--line-on-plum); }
.home-blend .logo img { filter: grayscale(1) brightness(0) invert(1); }
.home-blend .header nav a { color: var(--on-plum-soft); }
.home-blend .header nav a:hover,.home-blend .header nav a[aria-current] { color: var(--cream); }
.home-blend .header-cta { color: var(--cream); border-color: var(--line-on-plum); }
.home-blend .header-cta:hover { background: var(--plum-2); }
.home-blend .menu-toggle { color: var(--cream); }
.home-blend .site-header :focus-visible { outline-color: var(--lime); }
.home-blend .hero { padding-block: 4.6875vw 2.34375vw; color: var(--cream); background: var(--plum-3); border-radius: 0 0 1.953125vw 1.953125vw; overflow: hidden; }
.home-blend .hero-texture { inset: 0; background: radial-gradient(70% 55% at 50% 22%,rgba(110,43,87,.7),transparent 72%),linear-gradient(180deg,var(--plum),var(--plum-3)); }
.home-blend .hero-texture { pointer-events: none; }
.home-blend .hero-texture::after { inset: 0; opacity: 1; background-image: linear-gradient(to right,rgba(251,246,239,.075) 0.09765625vw,transparent 0.09765625vw),linear-gradient(to bottom,rgba(251,246,239,.075) 0.09765625vw,transparent 0.09765625vw); background-size: clamp(10.7421875vw,13.3vw,18.75vw) clamp(10.7421875vw,13.3vw,18.75vw); background-position: center top; -webkit-mask-image: radial-gradient(ellipse 80% 90% at 50% 38%,#000 25%,transparent 78%); mask-image: radial-gradient(ellipse 80% 90% at 50% 38%,#000 25%,transparent 78%); }
.hero-pin { position: absolute; width: clamp(2.5390625vw,3.2vw,4.4921875vw); height: clamp(1.26953125vw,1.6vw,2.24609375vw); border-radius: 9.66796875vw 9.66796875vw 0 0; background: var(--pink); }
.hero-pin--one { top: 34%; right: 8%; }
.hero-pin--two { top: 29%; left: 9%; background: var(--lime); border-radius: 0 0 9.66796875vw 9.66796875vw; }
.hero-pin--three { top: 52%; left: 5%; background: var(--lavender); }
.hero-pin--four { top: 47%; right: 13%; border-radius: 0 0 9.66796875vw 9.66796875vw; }
.home-blend .hero-copy { max-width: 122.0703125vw; }
.home-blend .hero h1 { font-size: clamp(4.1015625vw,6.5vw,9.5703125vw); line-height: 1.02; letter-spacing: -.025em; }
.home-blend .hero h1 .hero-accent { color: inherit; }
.home-blend .hero .lead { color: var(--cream); font-size: clamp(1.85546875vw,1.5vw,2.24609375vw); max-width: 53.7109375vw; line-height: 1.5; }
.home-blend .hero .micro { color: var(--on-plum-soft); font-size: 1.3671875vw; }
.home-blend .hero .button { background: var(--lime); color: var(--plum); min-height: 5.46875vw; }
.home-blend .hero .button:hover { background: var(--lime-soft); }
.home-blend .hero :is(a,button):focus-visible,.home-blend .sc-root:focus-visible { outline-color: var(--lime); }
.sc-label { font-family: var(--font); }
.sc-label { font-weight: 600; }
.home-blend .sc-card { border-radius: 1.171875vw; background: var(--cream); box-shadow: 0 1.953125vw 3.90625vw -2.34375vw #13000d; }
.home-blend .sc-photo,.home-blend .sc-card-link { border-radius: 0.68359375vw; }

/* Namespaced components share typography and spacing, not legacy selectors. */
.cm-section { font-size: var(--fs-body); line-height: 1.6; }
.home-blend main > section + section { margin-top: var(--section); }
.home-blend main > .cm-gather { margin-top: 0; }
:where(.cm-section) :where(p,figure,blockquote,ul,ol,h2,h3) { margin: 0; }
:where(.cm-section) p + p { margin-top: 0; }
:where(.cm-section) :where(ul[role=list],ol[role=list]) { padding: 0; list-style: none; }
.cm-section svg { display: block; max-width: 100%; }
.cm-container { width: 100%; max-width: calc(var(--maxw) + var(--gutter)*2); padding-inline: var(--gutter); margin-inline: auto; }
.cm-h2 { font-size: var(--fs-h2); line-height: 1.04; letter-spacing: -.02em; }
.cm-display { font-size: var(--fs-display); line-height: 1.02; letter-spacing: -.025em; }
.cm-lead { font-size: var(--fs-lead); line-height: 1.48; }
.cm-link { display: inline-flex; align-items: center; gap: 0.78125vw; min-height: 4.296875vw; padding-block: 0.78125vw; border-bottom: 0.09765625vw solid currentColor; }
.cm-link:hover { color: var(--plum-2); }
.cm-link svg { width: 1.953125vw; height: 1.953125vw; flex: none; }
.cm-btn { display: inline-flex; align-items: center; justify-content: center; gap: 1.5625vw; min-height: 5.46875vw; padding: 1.5625vw 2.34375vw; border-radius: 0.9765625vw; background: var(--plum); color: var(--cream); font-weight: 600; line-height: 1.3; transition: background .2s,transform .2s; }
.cm-btn:hover { background: var(--plum-2); transform: translateY(-0.1953125vw); }
.cm-btn svg { flex: none; }
.cm-section .cm-spot { white-space: normal; }
.cm-section .cm-spot::before { content: none; }
.cm-gather__list { font-size: clamp(1.66015625vw,1.4vw,2.05078125vw); max-width: 28ch; }
.cm-gather__word { background-image: none; }
.cm-gather__result .cm-marker::before { content: none; }
.cm-step { border-radius: 0.9765625vw; }
.cm-board { border: 0.09765625vw solid rgba(81,1,54,.12); }
.cm-board__paper { background-image: linear-gradient(#5101360a 0.09765625vw,transparent 0.09765625vw),linear-gradient(90deg,#5101360a 0.09765625vw,transparent 0.09765625vw); background-size: 2.34375vw 2.34375vw; }
.cm-kit__mark { border-radius: 12%; }
.cm-story__rect { border-radius: 1.5625vw; }
.cm-decision-dots i { height: 0.390625vw; width: 2.34375vw; border-radius: 0.1953125vw; }
.home-blend .case-section { padding-bottom: 0; }
.home-blend .cm-story { padding-block: 2.34375vw; }
.home-blend .cm-final { margin-top: 10.15625vw; }
.cm-final .cm-marker::before { background: var(--lime-soft); }
.cta-quiet .mobile-cta,.interaction-quiet .mobile-cta { transform: translateY(11.71875vw); }

/* Before JS (or with it disabled), the same material remains readable. */
.cm-board:not(.is-ready) { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 2.34375vw; align-content: center; padding: 7%; }
.cm-board:not(.is-ready) :is(.cm-wf,.cm-bh,.cm-bq) { display: none; }
.cm-board:not(.is-ready) .cm-bw { position: relative; inset: auto; white-space: normal; font-size: clamp(1.26953125vw,1.5vw,2.1484375vw); }
.cm-step:disabled { cursor: default; opacity: 1; }

@media (max-width: 767px) {
  .header { height: 7.6171875vw; }
  .header nav { top: 7.6171875vw; }
  .home-blend .header nav { background: var(--plum); }
  .home-blend .hero { padding-top: 3.90625vw; padding-bottom: 5.46875vw; background: var(--cream); border-radius: 0; }
  .home-blend .hero-texture { bottom: calc(57vw - 1.953125vw); border-radius: 0; }
  .hero-pin { display: none; }
  .home-blend .hero h1 { font-size: clamp(3.125vw,8.8vw,6.25vw); }
  .home-blend .hero .lead { font-size: 1.7578125vw; }
  .home-blend .hero .micro { font-size: 1.26953125vw; }
  .home-blend .hero .button { min-height: 5.078125vw; }
  .cm-h2 { font-size: clamp(3.3203125vw,8.3vw,4.78515625vw); }
  .cm-final .cm-display,.cm-ready .cm-display { font-size: clamp(4.1015625vw,10vw,6.4453125vw); }
  .cm-final .cm-link { font-size: 1.5625vw; }
  .cm-btn { font-size: 1.66015625vw; padding-inline: 1.5625vw; }
  .cm-gather__pin { padding-block: 3.125vw; }
  .cm-gather__list { max-width: none; font-size: 1.66015625vw; }
  .cm-board { border-radius: 1.3671875vw; }
  .cm-steps { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0.78125vw; }
  .cm-steps__item:last-child { grid-column: 1 / -1; }
  .cm-steps__owner { display: none; }
  .cm-step { min-height: 7.6171875vw; height: 100%; padding: 1.5625vw 1.5625vw 1.5625vw; border: 0.09765625vw solid var(--line); }
  .cm-step::before { display: none; }
  .cm-step__label { font-size: 1.26953125vw; }
  .cm-step__line { font-size: 1.7578125vw; }
  .cm-step__timer { inset-inline: 1.3671875vw; bottom: 0.48828125vw; height: 0.1953125vw; }
  .cm-board:not(.is-ready) { gap: 1.5625vw 1.5625vw; }
  .cm-board:not(.is-ready) .cm-bw { font-size: 1.3671875vw; }
  .standalone-about .portrait { width: calc(100% - 4.6875vw); }
}
@media (prefers-reduced-motion: reduce) {
  .cm-section *, .cm-section *::before, .cm-section *::after { transition: none !important; animation: none !important; }
}

/* Standalone project pages show the supplied project image without cropping. */
.project-detail__name { margin: 3.125vw 0 1.5625vw; color: var(--ink-soft); }
.project-detail__image { margin-top: 3.90625vw; }
.project-detail__image img { width: 100%; height: auto; border-radius: 1.171875vw; }


/* A centered typographic scene: readable first, enlarged by scrolling, then copy. */
.cm-ready { background: var(--lime-soft); }
.cm-ready .cm-ready__inner {
  width: 100%; max-width: none; min-height: 80svh;
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  gap: 3.90625vw; padding: 7.03125vw var(--gutter); text-align: center;
}
.cm-ready .cm-ready__title {
  position: relative; color: var(--plum-3);
  width: min(87.890625vw, 86vw); max-width: 15ch; margin: 0;
  font-size: clamp(3.90625vw, 6.5vw, 8.984375vw); line-height: 1.04; text-wrap: balance;
}
.cm-ready .cm-ready__text {
  width: min(64.453125vw, 86vw); max-width: none; margin: 0;
  display: grid; gap: 2.34375vw; text-wrap: pretty;
}
.cm-ready .cm-ready__text .cm-lead { font-size: clamp(2.05078125vw, 2.5vw, 3.3203125vw); line-height: 1.45; }
.cm-ready--zoom { height: var(--ready-height, 280svh); position: relative; }
.cm-ready--zoom .cm-ready__inner {
  position: sticky; top: 0; height: 100svh; min-height: 0; padding: 0;
  display: grid; place-items: center; gap: 0; overflow: hidden; isolation: isolate;
}
.cm-ready--zoom .cm-ready__title, .cm-ready--zoom .cm-ready__text { grid-area: 1 / 1; will-change: transform, opacity; }
.cm-ready--zoom .cm-ready__title { pointer-events: none; will-change: auto; }
/* Stay hidden even before the scroll timeline starts or after it rewinds. */
.cm-ready--zoom .cm-ready__text { color: var(--cream); opacity: 0; }
@media (max-width: 767px) {
  .cm-ready--zoom { --ready-height: 260svh; }
  .cm-ready .cm-ready__title { font-size: clamp(3.90625vw, 10vw, 6.4453125vw); }
  .cm-ready .cm-ready__text { width: min(55.6640625vw, 84vw); gap: 2.34375vw; }
  .cm-ready__line { display: block; white-space: nowrap; }
}

.cm-ready__word { white-space: nowrap; }
.cm-ready__glyph { display: inline-block; letter-spacing: 0; }
.cm-ready__backdrop { display: none; }
.cm-ready--zoom .cm-ready__backdrop { display: block; z-index: 0; opacity: 0; }
.cm-ready--zoom .cm-ready__title, .cm-ready--zoom .cm-ready__text { position: relative; z-index: 1; }
.cm-ready__backdrop .hero-pin--one { top: 23%; }
.cm-ready__backdrop .hero-pin--three { top: 72%; }
.cm-ready__backdrop .hero-pin--four { top: 76%; }

/* The next real section covers the stationary paragraph like a rising page. */
.cm-ready--wipe { height: calc(var(--ready-height, 280svh) + 100svh); }
.home-blend main > .cm-ready--wipe + .cm-price {
  position: relative; z-index: 2;
  margin-top: -100svh; min-height: 100svh;
  padding-block: 6.25vw 7.03125vw;
  background: var(--cream);
}

/* Keep the thinking board and all five controls visible during scroll scrubbing. */
/* ScrollTrigger measures pins with instant scroll resets. CSS smooth scrolling
   can leave stale bounds when the page opens at a deep anchor. Button navigation
   still requests its own smooth movement explicitly. */
html:has(body.home-blend) { scroll-behavior: auto; }
.cm-think__track { margin-top: 6.25vw; }
.cm-think__track .cm-think__body { margin-top: 0; }
.cm-think--scroll { min-height: 420svh; }
.cm-think--scroll > .cm-container {
  position: sticky;
  top: calc(var(--header-h) + 1.171875vw);
}
.cm-think--scroll .cm-think__body { background: var(--cream); }
.cm-think--scroll .cm-step__timer { display: none; }
@media (max-width: 1023px) {
  .cm-think--scroll .cm-think__body { gap: 2.34375vw; }
  .cm-think--scroll .cm-board {
    width: min(100%, 50.78125vw, calc((100svh - 35.15625vw) * 1.3333));
    aspect-ratio: 4 / 3; justify-self: center;
  }
  .cm-think--scroll .cm-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.78125vw; }
  .cm-think--scroll .cm-steps__item:last-child { grid-column: 1 / -1; }
  .cm-think--scroll .cm-steps__owner { display: none; }
  .cm-think--scroll .cm-step { min-height: 7.03125vw; height: 100%; padding: 0.78125vw 1.5625vw; border: 0.09765625vw solid var(--line); }
  .cm-think--scroll .cm-step::before { display: none; }
  .cm-think--scroll .cm-step__label { font-size: 1.26953125vw; }
  .cm-think--scroll .cm-step__line { font-size: 1.7578125vw; }
}
@media (max-width: 767px) {
  .cm-think--scroll > .cm-container { top: 8.59375vw; }
  .cm-think--scroll .cm-think__head { gap: 1.5625vw; }
  .cm-think--scroll .cm-think__track { margin-top: 2.34375vw; }
  .cm-think--scroll .cm-think__body { gap: 1.5625vw; }
  .cm-think--scroll .cm-step { min-height: 6.640625vw; }
  /* The shared footer has an old inline gap with an undefined unit. */
  .site-footer .footer nav { gap: 0.78125vw 1.5625vw !important; }
} }
@media (max-width: 767px) {body { font-family: var(--font); font-size: var(--fs-body); line-height: 1.6; }
h1,h2,h3,strong,b { font-family: var(--font); font-weight: var(--fw-bold); }
button,input,textarea { font-family: var(--font); }
.button,.header-cta { border-radius: 2.56410256vw; }
.button { font-weight: 600; }
.header { height: 22.56410256vw; }
.header nav { font-size: 4.1025641vw; }
.logo img { filter: none; }
.site-footer { background: var(--plum-3); color: var(--cream); }
.footer img { filter: grayscale(1) brightness(0) invert(1); }
.footer p { color: var(--on-plum-soft); }
.site-footer a:focus-visible { outline-color: var(--lime); }
.site-footer .footer > a:last-child { border-color: var(--line-on-plum); }

/* Claude's background semicircles, with no circle behind the hero lettering. */
.home-blend .site-header { background: var(--plum); color: var(--cream); border-color: var(--line-on-plum); }
.home-blend .logo img { filter: grayscale(1) brightness(0) invert(1); }
.home-blend .header nav a { color: var(--on-plum-soft); }
.home-blend .header nav a:hover,.home-blend .header nav a[aria-current] { color: var(--cream); }
.home-blend .header-cta { color: var(--cream); border-color: var(--line-on-plum); }
.home-blend .header-cta:hover { background: var(--plum-2); }
.home-blend .menu-toggle { color: var(--cream); }
.home-blend .site-header :focus-visible { outline-color: var(--lime); }
.home-blend .hero { padding-block: 10.25641026vw 6.15384615vw; color: var(--cream); background: var(--plum-3); border-radius: 0 0 5.12820513vw 5.12820513vw; overflow: hidden; }
.home-blend .hero-texture { inset: 0; background: radial-gradient(70% 55% at 50% 22%,rgba(110,43,87,.7),transparent 72%),linear-gradient(180deg,var(--plum),var(--plum-3)); }
.home-blend .hero-texture { pointer-events: none; }
.home-blend .hero-texture::after { inset: 0; opacity: 1; background-image: linear-gradient(to right,rgba(251,246,239,.075) 0.25641026vw,transparent 0.25641026vw),linear-gradient(to bottom,rgba(251,246,239,.075) 0.25641026vw,transparent 0.25641026vw); background-size: clamp(28.20512821vw,13.3vw,49.23076923vw) clamp(28.20512821vw,13.3vw,49.23076923vw); background-position: center top; -webkit-mask-image: radial-gradient(ellipse 80% 90% at 50% 38%,#000 25%,transparent 78%); mask-image: radial-gradient(ellipse 80% 90% at 50% 38%,#000 25%,transparent 78%); }
.hero-pin { position: absolute; width: clamp(6.66666667vw,3.2vw,11.79487179vw); height: clamp(3.33333333vw,1.6vw,5.8974359vw); border-radius: 25.38461538vw 25.38461538vw 0 0; background: var(--pink); }
.hero-pin--one { top: 34%; right: 8%; }
.hero-pin--two { top: 29%; left: 9%; background: var(--lime); border-radius: 0 0 25.38461538vw 25.38461538vw; }
.hero-pin--three { top: 52%; left: 5%; background: var(--lavender); }
.hero-pin--four { top: 47%; right: 13%; border-radius: 0 0 25.38461538vw 25.38461538vw; }
.home-blend .hero-copy { max-width: 320.51282051vw; }
.home-blend .hero h1 { font-size: clamp(10.76923077vw,6.5vw,25.12820513vw); line-height: 1.02; letter-spacing: -.025em; }
.home-blend .hero h1 .hero-accent { color: inherit; }
.home-blend .hero .lead { color: var(--cream); font-size: clamp(4.87179487vw,1.5vw,5.8974359vw); max-width: 141.02564103vw; line-height: 1.5; }
.home-blend .hero .micro { color: var(--on-plum-soft); font-size: 3.58974359vw; }
.home-blend .hero .button { background: var(--lime); color: var(--plum); min-height: 14.35897436vw; }
.home-blend .hero .button:hover { background: var(--lime-soft); }
.home-blend .hero :is(a,button):focus-visible,.home-blend .sc-root:focus-visible { outline-color: var(--lime); }
.sc-label { font-family: var(--font); }
.sc-label { font-weight: 600; }
.home-blend .sc-card { border-radius: 3.07692308vw; background: var(--cream); box-shadow: 0 5.12820513vw 10.25641026vw -6.15384615vw #13000d; }
.home-blend .sc-photo,.home-blend .sc-card-link { border-radius: 1.79487179vw; }

/* Namespaced components share typography and spacing, not legacy selectors. */
.cm-section { font-size: var(--fs-body); line-height: 1.6; }
.home-blend main > section + section { margin-top: var(--section); }
.home-blend main > .cm-gather { margin-top: 0; }
:where(.cm-section) :where(p,figure,blockquote,ul,ol,h2,h3) { margin: 0; }
:where(.cm-section) p + p { margin-top: 0; }
:where(.cm-section) :where(ul[role=list],ol[role=list]) { padding: 0; list-style: none; }
.cm-section svg { display: block; max-width: 100%; }
.cm-container { width: 100%; max-width: calc(var(--maxw) + var(--gutter)*2); padding-inline: var(--gutter); margin-inline: auto; }
.cm-h2 { font-size: var(--fs-h2); line-height: 1.04; letter-spacing: -.02em; }
.cm-display { font-size: var(--fs-display); line-height: 1.02; letter-spacing: -.025em; }
.cm-lead { font-size: var(--fs-lead); line-height: 1.48; }
.cm-link { display: inline-flex; align-items: center; gap: 2.05128205vw; min-height: 11.28205128vw; padding-block: 2.05128205vw; border-bottom: 0.25641026vw solid currentColor; }
.cm-link:hover { color: var(--plum-2); }
.cm-link svg { width: 5.12820513vw; height: 5.12820513vw; flex: none; }
.cm-btn { display: inline-flex; align-items: center; justify-content: center; gap: 4.1025641vw; min-height: 14.35897436vw; padding: 4.1025641vw 6.15384615vw; border-radius: 2.56410256vw; background: var(--plum); color: var(--cream); font-weight: 600; line-height: 1.3; transition: background .2s,transform .2s; }
.cm-btn:hover { background: var(--plum-2); transform: translateY(-0.51282051vw); }
.cm-btn svg { flex: none; }
.cm-section .cm-spot { white-space: normal; }
.cm-section .cm-spot::before { content: none; }
.cm-gather__list { font-size: clamp(4.35897436vw,1.4vw,5.38461538vw); max-width: 28ch; }
.cm-gather__word { background-image: none; }
.cm-gather__result .cm-marker::before { content: none; }
.cm-step { border-radius: 2.56410256vw; }
.cm-board { border: 0.25641026vw solid rgba(81,1,54,.12); }
.cm-board__paper { background-image: linear-gradient(#5101360a 0.25641026vw,transparent 0.25641026vw),linear-gradient(90deg,#5101360a 0.25641026vw,transparent 0.25641026vw); background-size: 6.15384615vw 6.15384615vw; }
.cm-kit__mark { border-radius: 12%; }
.cm-story__rect { border-radius: 4.1025641vw; }
.cm-decision-dots i { height: 1.02564103vw; width: 6.15384615vw; border-radius: 0.51282051vw; }
.home-blend .case-section { padding-bottom: 0; }
.home-blend .cm-story { padding-block: 6.15384615vw; }
.home-blend .cm-final { margin-top: 22.56410256vw; }
.cm-final .cm-marker::before { background: var(--lime-soft); }
.cta-quiet .mobile-cta,.interaction-quiet .mobile-cta { transform: translateY(30.76923077vw); }

/* Before JS (or with it disabled), the same material remains readable. */
.cm-board:not(.is-ready) { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 6.15384615vw; align-content: center; padding: 7%; }
.cm-board:not(.is-ready) :is(.cm-wf,.cm-bh,.cm-bq) { display: none; }
.cm-board:not(.is-ready) .cm-bw { position: relative; inset: auto; white-space: normal; font-size: clamp(3.33333333vw,1.5vw,5.64102564vw); }
.cm-step:disabled { cursor: default; opacity: 1; }

@media (max-width: 767px) {
  .header { height: 20vw; }
  .header nav { top: 20vw; }
  .home-blend .header nav { background: var(--plum); }
  .home-blend .hero { padding-top: 10.25641026vw; padding-bottom: 14.35897436vw; background: var(--cream); border-radius: 0; }
  .home-blend .hero-texture { bottom: calc(57vw - 5.12820513vw); border-radius: 0; }
  .hero-pin { display: none; }
  .home-blend .hero h1 { font-size: clamp(8.20512821vw,8.8vw,16.41025641vw); }
  .home-blend .hero .lead { font-size: 4.61538462vw; }
  .home-blend .hero .micro { font-size: 3.33333333vw; }
  .home-blend .hero .button { min-height: 13.33333333vw; }
  .cm-h2 { font-size: clamp(8.71794872vw,8.3vw,12.56410256vw); }
  .cm-final .cm-display,.cm-ready .cm-display { font-size: clamp(10.76923077vw,10vw,16.92307692vw); }
  .cm-final .cm-link { font-size: 4.1025641vw; }
  .cm-btn { font-size: 4.35897436vw; padding-inline: 4.1025641vw; }
  .cm-gather__pin { padding-block: 8.20512821vw; }
  .cm-gather__list { max-width: none; font-size: 4.35897436vw; }
  .cm-board { border-radius: 3.58974359vw; }
  .cm-steps { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 2.05128205vw; }
  .cm-steps__item:last-child { grid-column: 1 / -1; }
  .cm-steps__owner { display: none; }
  .cm-step { min-height: 20vw; height: 100%; padding: 4.1025641vw 4.1025641vw 4.1025641vw; border: 0.25641026vw solid var(--line); }
  .cm-step::before { display: none; }
  .cm-step__label { font-size: 3.33333333vw; }
  .cm-step__line { font-size: 4.61538462vw; }
  .cm-step__timer { inset-inline: 3.58974359vw; bottom: 1.28205128vw; height: 0.51282051vw; }
  .cm-board:not(.is-ready) { gap: 4.1025641vw 4.1025641vw; }
  .cm-board:not(.is-ready) .cm-bw { font-size: 3.58974359vw; }
  .standalone-about .portrait { width: calc(100% - 12.30769231vw); }
}
@media (prefers-reduced-motion: reduce) {
  .cm-section *, .cm-section *::before, .cm-section *::after { transition: none !important; animation: none !important; }
}

/* Standalone project pages show the supplied project image without cropping. */
.project-detail__name { margin: 8.20512821vw 0 4.1025641vw; color: var(--ink-soft); }
.project-detail__image { margin-top: 10.25641026vw; }
.project-detail__image img { width: 100%; height: auto; border-radius: 3.07692308vw; }


/* A centered typographic scene: readable first, enlarged by scrolling, then copy. */
.cm-ready { background: var(--lime-soft); }
.cm-ready .cm-ready__inner {
  width: 100%; max-width: none; min-height: 80svh;
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  gap: 10.25641026vw; padding: 18.46153846vw var(--gutter); text-align: center;
}
.cm-ready .cm-ready__title {
  position: relative; color: var(--plum-3);
  width: min(230.76923077vw, 86vw); max-width: 15ch; margin: 0;
  font-size: clamp(10.25641026vw, 6.5vw, 23.58974359vw); line-height: 1.04; text-wrap: balance;
}
.cm-ready .cm-ready__text {
  width: min(169.23076923vw, 86vw); max-width: none; margin: 0;
  display: grid; gap: 6.15384615vw; text-wrap: pretty;
}
.cm-ready .cm-ready__text .cm-lead { font-size: clamp(5.38461538vw, 2.5vw, 8.71794872vw); line-height: 1.45; }
.cm-ready--zoom { height: var(--ready-height, 280svh); position: relative; }
.cm-ready--zoom .cm-ready__inner {
  position: sticky; top: 0; height: 100svh; min-height: 0; padding: 0;
  display: grid; place-items: center; gap: 0; overflow: hidden; isolation: isolate;
}
.cm-ready--zoom .cm-ready__title, .cm-ready--zoom .cm-ready__text { grid-area: 1 / 1; will-change: transform, opacity; }
.cm-ready--zoom .cm-ready__title { pointer-events: none; will-change: auto; }
/* Stay hidden even before the scroll timeline starts or after it rewinds. */
.cm-ready--zoom .cm-ready__text { color: var(--cream); opacity: 0; }
@media (max-width: 767px) {
  .cm-ready--zoom { --ready-height: 260svh; }
  .cm-ready .cm-ready__title { font-size: clamp(10.25641026vw, 10vw, 16.92307692vw); }
  .cm-ready .cm-ready__text { width: min(146.15384615vw, 84vw); gap: 6.15384615vw; }
  .cm-ready__line { display: block; white-space: nowrap; }
}

.cm-ready__word { white-space: nowrap; }
.cm-ready__glyph { display: inline-block; letter-spacing: 0; }
.cm-ready__backdrop { display: none; }
.cm-ready--zoom .cm-ready__backdrop { display: block; z-index: 0; opacity: 0; }
.cm-ready--zoom .cm-ready__title, .cm-ready--zoom .cm-ready__text { position: relative; z-index: 1; }
.cm-ready__backdrop .hero-pin--one { top: 23%; }
.cm-ready__backdrop .hero-pin--three { top: 72%; }
.cm-ready__backdrop .hero-pin--four { top: 76%; }

/* The next real section covers the stationary paragraph like a rising page. */
.cm-ready--wipe { height: calc(var(--ready-height, 280svh) + 100svh); }
.home-blend main > .cm-ready--wipe + .cm-price {
  position: relative; z-index: 2;
  margin-top: -100svh; min-height: 100svh;
  padding-block: 16.41025641vw 12.30769231vw;
  background: var(--cream);
}

/* Keep the thinking board and all five controls visible during scroll scrubbing. */
/* ScrollTrigger measures pins with instant scroll resets. CSS smooth scrolling
   can leave stale bounds when the page opens at a deep anchor. Button navigation
   still requests its own smooth movement explicitly. */
html:has(body.home-blend) { scroll-behavior: auto; }
.cm-think__track { margin-top: 12.30769231vw; }
.cm-think__track .cm-think__body { margin-top: 0; }
.cm-think--scroll { min-height: 420svh; }
.cm-think--scroll > .cm-container {
  position: sticky;
  top: calc(var(--header-h) + 3.07692308vw);
}
.cm-think--scroll .cm-think__body { background: var(--cream); }
.cm-think--scroll .cm-step__timer { display: none; }
@media (max-width: 1023px) {
  .cm-think--scroll .cm-think__body { gap: 6.15384615vw; }
  .cm-think--scroll .cm-board {
    width: min(100%, 133.33333333vw, calc((100svh - 92.30769231vw) * 1.3333));
    aspect-ratio: 4 / 3; justify-self: center;
  }
  .cm-think--scroll .cm-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2.05128205vw; }
  .cm-think--scroll .cm-steps__item:last-child { grid-column: 1 / -1; }
  .cm-think--scroll .cm-steps__owner { display: none; }
  .cm-think--scroll .cm-step { min-height: 18.46153846vw; height: 100%; padding: 2.05128205vw 4.1025641vw; border: 0.25641026vw solid var(--line); }
  .cm-think--scroll .cm-step::before { display: none; }
  .cm-think--scroll .cm-step__label { font-size: 3.33333333vw; }
  .cm-think--scroll .cm-step__line { font-size: 4.61538462vw; }
}
@media (max-width: 767px) {
  .cm-think--scroll > .cm-container { top: 22.56410256vw; }
  .cm-think--scroll .cm-think__head { gap: 4.1025641vw; }
  .cm-think--scroll .cm-think__track { margin-top: 6.15384615vw; }
  .cm-think--scroll .cm-think__body { gap: 4.1025641vw; }
  .cm-think--scroll .cm-step { min-height: 17.43589744vw; }
  /* The shared footer has an old inline gap with an undefined unit. */
  .site-footer .footer nav { gap: 2.05128205vw 4.1025641vw !important; }
} }
/* Generated from media-frames.css. Design bases: 1920 / 1024 / 390; spacing grid: 8. Edit source, then npm run build. *//* One concentric frame: outer 24 = inner 16 + inset 8 design units. */
:root {
  --frame-padding: 0.41666667vw;
  --frame-radius: 1.25vw;
  --frame-inner-radius: 0.83333333vw;
}
.project-case__browser,
.project-case__browser--recording,
.project-case__phone {
  padding: var(--frame-padding);
  border: 0;
  border-radius: var(--frame-radius);
}
.project-case__browser,
.project-case__browser--recording {
  outline: 0.05208333vw solid var(--line);
  background: var(--cream);
}
.project-case__browser > .project-case__video-stage,
.project-case__browser > img,
.project-case__phone-screen {
  overflow: hidden;
  border-radius: var(--frame-inner-radius);
}
.project-case__browser > img { display: block; width: 100%; }
.project-case__browser-top { border-radius: var(--frame-inner-radius) var(--frame-inner-radius) 0 0; }
.project-case__browser-top + img { border-radius: 0 0 var(--frame-inner-radius) var(--frame-inner-radius); }
.project-case__phone-preview::before,
.project-case__phone-preview::after { border-radius: var(--frame-radius); }
.project-case__mobile-recording { border-width: var(--frame-padding); border-radius: var(--frame-radius); }
@media (max-width: 1024px) {/* One concentric frame: outer 24 = inner 16 + inset 8 design units. */
:root {
  --frame-padding: 0.78125vw;
  --frame-radius: 2.34375vw;
  --frame-inner-radius: 1.5625vw;
}
.project-case__browser,
.project-case__browser--recording,
.project-case__phone {
  padding: var(--frame-padding);
  border: 0;
  border-radius: var(--frame-radius);
}
.project-case__browser,
.project-case__browser--recording {
  outline: 0.09765625vw solid var(--line);
  background: var(--cream);
}
.project-case__browser > .project-case__video-stage,
.project-case__browser > img,
.project-case__phone-screen {
  overflow: hidden;
  border-radius: var(--frame-inner-radius);
}
.project-case__browser > img { display: block; width: 100%; }
.project-case__browser-top { border-radius: var(--frame-inner-radius) var(--frame-inner-radius) 0 0; }
.project-case__browser-top + img { border-radius: 0 0 var(--frame-inner-radius) var(--frame-inner-radius); }
.project-case__phone-preview::before,
.project-case__phone-preview::after { border-radius: var(--frame-radius); }
.project-case__mobile-recording { border-width: var(--frame-padding); border-radius: var(--frame-radius); }
}
@media (max-width: 767px) {/* One concentric frame: outer 24 = inner 16 + inset 8 design units. */
:root {
  --frame-padding: 2.05128205vw;
  --frame-radius: 6.15384615vw;
  --frame-inner-radius: 4.1025641vw;
}
.project-case__browser,
.project-case__browser--recording,
.project-case__phone {
  padding: var(--frame-padding);
  border: 0;
  border-radius: var(--frame-radius);
}
.project-case__browser,
.project-case__browser--recording {
  outline: 0.25641026vw solid var(--line);
  background: var(--cream);
}
.project-case__browser > .project-case__video-stage,
.project-case__browser > img,
.project-case__phone-screen {
  overflow: hidden;
  border-radius: var(--frame-inner-radius);
}
.project-case__browser > img { display: block; width: 100%; }
.project-case__browser-top { border-radius: var(--frame-inner-radius) var(--frame-inner-radius) 0 0; }
.project-case__browser-top + img { border-radius: 0 0 var(--frame-inner-radius) var(--frame-inner-radius); }
.project-case__phone-preview::before,
.project-case__phone-preview::after { border-radius: var(--frame-radius); }
.project-case__mobile-recording { border-width: var(--frame-padding); border-radius: var(--frame-radius); }
}
