@font-face{font-family:Boldonse;src:url('assets/Boldonse.woff2') format('woff2'),url('assets/Boldonse.woff') format('woff');font-display:swap;font-weight:400}
.home{--display:Boldonse,Impact,sans-serif;--yellow:#f7dd0e;--orange:#f28123;line-height:1.7}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.home header{height:84px;padding:0 5%;gap:26px}.home .wordmark{font:800 34px/1 Manrope,sans-serif;letter-spacing:-2px}.home .wordmark span{font-size:8px;margin-left:3px}.home nav{gap:32px}.home .language{font:600 13px Manrope,sans-serif;background:none;border:0;padding:5px;white-space:nowrap}.home .language strong{font-weight:800}
.home .scroll-scene{height:100svh;min-height:650px}.home .hero-sticky{position:relative;height:100svh;min-height:650px;padding:150px 5% 34px;justify-content:flex-start;gap:50px}.home .hero-sticky h1{font:400 clamp(40px,10.7vw,170px)/1.3726635514 var(--display);letter-spacing:-.045em;margin:0 auto;text-align:center;max-width:100%;width:100%}.home h1>span{display:block;white-space:nowrap}.home .scroll-cue{position:absolute;bottom:34px;left:50%;transform:translateX(-50%);font-size:8px;letter-spacing:.7px;white-space:nowrap}.home .progress{width:209px;margin-top:12px}.home .balloon{filter:drop-shadow(0 12px 8px #450c3320)}.home .letter-0{left:2%;top:25%;width:22vw}.home .letter-1{left:18%;top:37%;width:27vw}.home .letter-2{left:43%;top:27%;width:24vw}.home .letter-3{left:65%;top:38%;width:12vw}.home .letter-4{left:76%;top:28%;width:22.5vw}
.home .about{position:relative;background:var(--pink) url('assets/about-background.svg') center/cover no-repeat;padding:80px 9.4%;min-height:min(55.8vw,810px);display:grid;align-items:center}.home .about-grid{position:relative;display:grid;grid-template-columns:1.1fr 1fr;gap:14%;align-items:center;padding:0;max-width:1400px;margin:auto}.home .greeting{position:relative;padding:0;display:flex;flex-direction:column;align-items:center}.home .greeting h2{font:400 clamp(40px,6.484375vw,100px)/1.4096385542 var(--display);letter-spacing:-.055em;color:var(--paper);text-align:center}.script{display:block;height:auto;max-width:100%}.home .greeting-script{width:91%;margin-top:clamp(-64px,-4.0625vw,-24px);margin-left:0}.home .about-copy{max-width:490px}.home .about-copy p{font-size:16px;line-height:1.8;margin:0 0 28px}.home .about-copy .lead{font-size:28px;line-height:1.35;letter-spacing:-1px;margin-bottom:32px}.home .lead strong{display:block;font-size:1.2em;font-weight:800;letter-spacing:-1px}.outline-button{display:inline-flex;align-items:center;justify-content:center;border:1px solid #f6f5edbb;border-radius:40px;padding:10px 30px;min-height:50px;font-size:15px;font-weight:700;transition:background .2s,color .2s}.outline-button:hover{background:var(--paper);color:var(--pink)}.home .polaroid{position:absolute;z-index:4;width:min(24vw,320px);left:40%;top:-14%;margin:0;pointer-events:none;opacity:0;transform:translateY(100px) rotate(10deg) scale(.9);transition:opacity .5s ease,transform .65s cubic-bezier(.16,1,.3,1);visibility:hidden}.home .polaroid img{display:block;width:100%;height:auto;box-shadow:0 25px 50px #50123745}.home .polaroid.is-visible{visibility:visible;opacity:1;transform:translateY(0) rotate(-8deg) scale(1)}.home .polaroid.is-leaving{visibility:visible;opacity:0;transform:translateY(-60px) rotate(-12deg) scale(.96);transition:opacity .5s ease,transform .5s ease}
.home .work{padding:75px 5% 85px}.home .work-title{font:400 clamp(26px,4.65vw,70px)/1.2 var(--display);letter-spacing:-.055em;white-space:nowrap;margin-bottom:45px}.home .work-title>span{color:var(--pink)}.home .work-grid{gap:20px}.home .work-card{aspect-ratio:370.664/494.219;padding:25px;position:relative;justify-content:flex-end;transition:transform .35s,box-shadow .35s}.home .work-card:hover{transform:translateY(-7px);box-shadow:0 18px 32px #17171715}.home .email{background:var(--pink);color:var(--paper)}.home .digital{background:var(--ink);color:var(--paper)}.home .print{background:var(--orange);color:var(--ink)}.home .card-title{position:absolute;left:25px;right:25px;top:34%}.home .card-title>span{display:block;font:400 clamp(25px,3.4vw,52px)/1 var(--display);letter-spacing:-.045em;color:var(--yellow)}.home .digital .card-title>span{color:#ff61b7}.home .card-title>.script{margin-top:-2px}.home .email .script{width:69%}.home .digital .script{width:44%}.home .print .script{width:58%}.home .card-bottom{font-size:11px;line-height:1.5;padding-top:23px;min-height:60px;border-color:#f6f5ed88}.home .print .card-bottom{border-color:#17171788}.home .plus{font-size:25px}.home .contact{background:var(--pink) url('assets/contact-background.svg') center/cover no-repeat;min-height:min(55.8vw,810px);padding:135px 5% 30px;display:flex;flex-direction:column;justify-content:space-between}.home .contact-main{text-align:center;margin:auto;width:100%}.home .contact h2{font:400 clamp(50px,7.7vw,116px)/1.3 var(--display);letter-spacing:-.055em;margin:0;color:var(--paper)}.home .contact-script{width:65%;max-width:820px;margin:-38px auto 42px}.home .contact footer{margin-top:90px;padding:0;border:0;font-size:14px;letter-spacing:0}.home footer nav{font-size:14px}.home footer>a:last-child{width:auto;text-align:left;font-size:14px}.home footer nav a{font-size:14px}
@media(max-width:1000px){.home .about{padding:80px 7%}.home .about-grid{gap:10%}.home .about-copy p{font-size:14px}.home .about-copy .lead{font-size:25px}.home .lead strong{font-size:1.15em}.home .greeting h2{font-size:6.484375vw}.home .work{padding-top:65px}.home .contact{padding-top:100px}.home .hero-sticky h1{font-size:10.7vw}}
@media(max-width:600px){.home header{height:72px;padding:0 6%;gap:12px}.home .wordmark{font-size:27px}.home nav{gap:13px;font-size:11px}.home .language{font-size:10px;padding:0}.home .hero-sticky{padding:110px 6% 70px;min-height:520px;gap:0}.home .hero-sticky h1{font-size:10.7vw;line-height:1.3726635514;letter-spacing:-.04em}.home .letter-0{top:33%}.home .letter-1{top:41%}.home .letter-2{top:33%}.home .letter-3{top:42%}.home .letter-4{top:35%}.home .scroll-cue{bottom:35px;font-size:7px}.home .about{padding:65px 7%;min-height:0;background-position:38% center}.home .about-grid{grid-template-columns:1fr;gap:40px}.home .greeting{padding:0 0 15px}.home .greeting h2{font-size:16vw}.home .greeting-script{width:78%;max-width:360px;margin-top:-39px}.home .about-copy{max-width:none}.home .about-copy p{font-size:15px;margin-bottom:24px}.home .about-copy .lead{font-size:27px}.home .polaroid{width:45vw;left:46%;top:-7%;max-width:230px}.home .work{padding:55px 6%}.home .work-title{font-size:8.5vw;white-space:normal;line-height:1.18;margin-bottom:35px}.home .work-grid{grid-template-columns:1fr;gap:18px}.home .work-card{aspect-ratio:1.12;min-height:300px;padding:26px}.home .card-title{left:26px;top:27%}.home .card-title>span{font-size:10.7vw}.home .email .script{width:54%}.home .digital .script{width:34%}.home .print .script{width:45%}.home .card-bottom{font-size:12px}.home .contact{min-height:580px;padding:80px 6% 28px;background-position:60% center}.home .contact h2{font-size:12.8vw;line-height:1.3}.home .contact-script{width:100%;margin:-20px auto 35px}.home .contact footer{flex-direction:column;align-items:start;gap:24px;margin-top:75px}.home footer nav{margin-left:0;gap:24px}.home footer nav a{font-size:13px}}
@media(max-width:360px){.home header{gap:9px;padding:0 4%}.home nav{gap:9px}.home .wordmark{font-size:24px}}
@media(prefers-reduced-motion:reduce){.home .scroll-scene{height:100svh}.home .polaroid{transition:none;transform:rotate(-8deg)}.home .polaroid.is-leaving{transform:rotate(-8deg)}.home .work-card:hover{transform:none}}
@media(max-width:600px){.home .hero-sticky h1{margin-top:18svh}}

/* A single, natural viewport of scrolling; no pinned extra runway. */
.home .balloons{animation:none}.home .balloon{transition:opacity .65s ease,transform .75s cubic-bezier(.16,1,.3,1)}
@keyframes balloons-arrive{from{opacity:0;translate:0 70px}to{opacity:1;translate:0 0}}
.home .work-title{position:relative}
.home .work-title>span{position:relative;display:inline-block}
.home.motion-enhanced .section-enter{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .85s cubic-bezier(.16,1,.3,1);transition-delay:var(--enter-delay,0ms)}
.home.motion-enhanced .section-enter.in-view{opacity:1;transform:translateY(0)}
.home.motion-enhanced .work-card.in-view:hover{transform:translateY(-7px);transition-delay:0ms}
.home.motion-enhanced .contact-script.section-enter{transform:translateY(18px) rotate(-2deg);transform-origin:center}
.home.motion-enhanced .contact-script.in-view{transform:translateY(0) rotate(0)}
.home .contact .outline-button{transition:background .2s,color .2s,box-shadow .25s}
.home .contact .outline-button:hover{box-shadow:0 0 0 6px #f6f5ed20}
.home.paused .section-enter{opacity:1;transform:none}.home.paused .balloons{animation:none}
@media(max-width:600px){.home .scroll-scene{min-height:520px}.home .hero-sticky h1{margin-top:15svh}.home .about-grid{width:100%}}
@media(prefers-reduced-motion:reduce){.home .balloons{animation:none}.home.motion-enhanced .section-enter{opacity:1;transform:none}.home .work-title>span::after{transition:none}.home .work-card.in-view:hover{transform:none}}

/* Keep the scroll invitation clear beneath the headline and balloons. */
.home .hero-sticky{padding-top:clamp(110px,17.65svh,150px)}
.home .hero-sticky h1{font-size:min(10.7vw,calc((100svh - 270px) / 4.118));line-height:1.3726635514}
.home .scroll-cue{bottom:40px;padding:10px 14px;background:transparent;z-index:5}
.home .about-copy p{ text-wrap:pretty }
.home .about-copy .lead{text-wrap:balance}
.home .work{position:relative;isolation:isolate}
.home .work-title,.home .work-grid{position:relative;z-index:2}
.home .plus{position:relative;display:grid;place-items:center;width:26px;height:28px;flex-shrink:0}
.home .card-plus{transition:opacity .2s,transform .3s}
.home .card-arrow{position:absolute;opacity:0;transform:translateY(6px);transition:opacity .2s,transform .3s}
.home .work-card:is(:hover,:focus-visible) .card-plus{opacity:0;transform:rotate(90deg) scale(.6)}
.home .work-card:is(:hover,:focus-visible) .card-arrow{opacity:1;transform:translateY(0)}
.home .flower-stage{position:absolute;inset:0;overflow:hidden;z-index:3;pointer-events:none}
.home .scroll-flower{position:absolute;right:-70px;top:0;width:clamp(190px,25vw,320px);aspect-ratio:1;opacity:0;transform:translate3d(0,200px,0) rotate(-14deg);will-change:transform,opacity}
.home .scroll-flower video{display:none}.home .scroll-flower canvas{display:block;width:100%;height:100%;object-fit:contain}
@media(max-width:600px){.home .scroll-flower{width:180px;right:-48px;top:0}.home .scroll-cue{bottom:34px}.home .hero-sticky h1{font-size:10.7vw}}
@media(hover:none){.home .card-plus{display:none}.home .card-arrow{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.home .scroll-flower{will-change:auto}.home .card-arrow,.home .card-plus{transition:none}}
@media(max-width:600px){.home .work-title{width:calc(100% - 100px);line-height:1.35}.home .work-title>span{display:inline}}

.home .progress{height:2px;background:linear-gradient(90deg,var(--pink),var(--orange));border-radius:2px}
.home .progress span{background:linear-gradient(90deg,var(--pink),var(--orange));height:2px}
