.hero-window .hero-copy{width:49%;padding-right:2vw}.hero-window .hero-copy h1{font-size:clamp(4rem,7.2vw,7.6rem);max-width:8ch}.hero-window .hero-copy h1 em{font-size:.7em;line-height:.92;display:block;white-space:nowrap}.creative-social{padding-block:clamp(4.5rem,7vw,7rem)}.creative-head.compact h2{font-size:clamp(3.6rem,6vw,6.5rem);margin:2.4rem 0}.shelf-viewport{position:relative;overflow:hidden;padding:1.5rem 0}.shelf-viewport:before,.shelf-viewport:after{content:"";position:absolute;z-index:3;top:0;bottom:0;width:8vw;pointer-events:none}.shelf-viewport:before{left:0;background:linear-gradient(90deg,var(--cream),transparent)}.shelf-viewport:after{right:0;background:linear-gradient(-90deg,var(--cream),transparent)}.shelf-track{display:flex;align-items:center;gap:1rem;width:max-content;animation:shelfMove 110s linear infinite}.shelf-viewport:hover .shelf-track{animation-play-state:paused}.shelf-card{width:clamp(13rem,20vw,19rem);flex:none;background:#fff;border-radius:1.5rem;overflow:hidden;box-shadow:0 .8rem 2rem #3d250d1c;border:1px solid #0002}.shelf-top,.shelf-bottom{height:3.2rem;display:flex;align-items:center;justify-content:space-between;padding:0 .9rem;font-size:.7rem}.shelf-top span{font:italic 1rem var(--serif)}.shelf-top i{font-style:normal}.shelf-card>img{width:100%;aspect-ratio:4/5;object-fit:cover}.shelf-bottom{font-size:1rem}@keyframes shelfMove{to{transform:translateX(-50%)}}.instagram-cta{height:clamp(42rem,78vw,62rem);padding-block:0;overflow:hidden;display:grid;grid-template-columns:.8fr 1.2fr;align-items:center}.insta-copy{position:relative;z-index:2;max-width:36rem}.insta-copy h2{font-size:clamp(3.8rem,6.5vw,7rem);margin:2rem 0}.insta-copy p{font:1.1rem/1.6 var(--serif);margin:0 0 2rem}.vertical-social{height:100%;display:grid;grid-template-columns:repeat(2,minmax(12rem,1fr));gap:1rem;overflow:hidden;transform:rotate(3deg);padding-inline:1rem}.vertical-lane{overflow:hidden}.vertical-lane>div{display:flex;flex-direction:column;gap:1rem;will-change:transform}.vertical-lane img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:1.25rem;box-shadow:0 1rem 2rem #0004}.vertical-lane.up>div{animation:streamUp 42s linear infinite}.vertical-lane.down>div{animation:streamDown 46s linear infinite;transform:translateY(-50%)}@keyframes streamUp{to{transform:translateY(-50%)}}@keyframes streamDown{to{transform:translateY(0)}}.floating:before{background-size:148% auto!important}.floating:hover:before{background-size:160% auto!important}.floating{overflow:visible}
@media(max-width:800px){.hero-window .hero-copy{width:64%}.instagram-cta{grid-template-columns:1fr 1fr}.vertical-social{grid-template-columns:1fr}.vertical-lane.down{display:none}.creative-head.compact h2{font-size:15vw}}@media(max-width:560px){.hero-window .hero-copy{width:100%;padding-bottom:7rem}.hero-window .hero-copy h1{font-size:15vw;max-width:7ch}.hero-window .hero-copy h1 em{font-size:.66em}.instagram-cta{height:auto;min-height:58rem;grid-template-columns:1fr;padding-top:5rem}.vertical-social{height:32rem;margin-top:2rem}.shelf-card{width:13rem}}@media(prefers-reduced-motion:reduce){.shelf-track,.vertical-lane>div{animation:none!important}}
/* Hero: headline contained entirely in the light side of the photograph. */
.hero-window .hero-copy{width:43%;padding-right:3vw}
.hero-window .hero-copy h1{font-size:clamp(3.5rem,6.25vw,6.5rem);max-width:7.4ch}
.hero-window .hero-copy h1 em{font-size:.62em;line-height:.94;max-width:100%}
@media(max-width:800px){.hero-window .hero-copy{width:58%}.hero-window .hero-copy h1{font-size:clamp(3.2rem,10vw,5.2rem)}}
@media(max-width:560px){.hero-window .hero-copy{width:100%;padding-right:0;padding-bottom:7rem}.hero-window .hero-copy h1{font-size:14vw;max-width:7ch}.hero-window .hero-copy h1 em{font-size:.64em}}

/* Feed 4:5 — preserve every original artwork without cropping. */
.creative-social{padding-block:clamp(2.75rem,4.5vw,4.5rem);overflow:hidden}
.creative-social .creative-head{margin-bottom:.25rem}
.creative-head.compact h2{font-size:clamp(2.8rem,4.8vw,5rem);line-height:.86;margin:1.25rem 0}
.creative-head.compact>p{max-width:28rem;font-size:.9rem;line-height:1.5}
.shelf-viewport{padding:.65rem 0 1rem}
.shelf-track{gap:.85rem}
.shelf-card{width:clamp(10rem,14vw,13.5rem);border-radius:1rem;background:#f8f3e7}
.shelf-top,.shelf-bottom{height:2.25rem;padding-inline:.65rem}
.shelf-top span{font-size:.72rem}
.shelf-card>img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:contain;object-position:center;background:#eee7d8}
.shelf-bottom{font-size:.75rem}
@media(max-width:560px){.creative-social{padding-block:2.5rem}.creative-head.compact h2{font-size:11vw}.shelf-card{width:9.5rem}.shelf-top,.shelf-bottom{height:2rem}}

/* Instagram: compact copy and uncropped 4:5 posts. */
.instagram-cta{grid-template-columns:.72fr 1.28fr;column-gap:clamp(1rem,3vw,3rem)}
.insta-copy{width:100%;max-width:31rem;padding-right:1rem}
.insta-copy h2{font-size:clamp(3.25rem,5.25vw,5.75rem);line-height:.86;letter-spacing:-.045em;margin:1.5rem 0}
.insta-copy h2 .keep-line{white-space:nowrap}
.insta-copy p{max-width:25rem}
.vertical-social{min-width:0}
.vertical-lane img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:initial;object-position:initial;background:transparent}
@media(max-width:800px){.instagram-cta{grid-template-columns:.9fr 1.1fr}.insta-copy h2{font-size:clamp(2.7rem,7vw,4.5rem)}}
@media(max-width:560px){.instagram-cta{grid-template-columns:1fr}.insta-copy{max-width:none;padding-right:0}.insta-copy h2{font-size:12vw}.vertical-lane img{aspect-ratio:auto}}

/* Tighter vertical rhythm without changing the section layouts. */
.creative-social{padding-top:clamp(2.25rem,3.5vw,3.5rem);padding-bottom:clamp(2.25rem,3.5vw,3.5rem)}
.instagram-cta{height:clamp(35rem,59vw,48rem);min-height:0}
.final{padding-top:clamp(4rem,6vw,6rem);padding-bottom:clamp(4rem,6vw,6rem)}
.final h2{font-size:clamp(3.6rem,7vw,7rem);line-height:.82;margin:1.8rem 0 2.2rem}
.final h2 em{display:inline-block;white-space:nowrap}
@media(max-width:560px){.instagram-cta{height:auto;min-height:48rem;padding-top:3.5rem}.final{padding-block:3.75rem}.final h2{font-size:12vw;line-height:.86}.final h2 em{white-space:nowrap}}

/* Overscan the tilted Instagram lanes so no corner reveals an empty gap. */
.instagram-cta{position:relative;overflow:hidden;isolation:isolate}
.vertical-social{height:calc(100% + 10rem);margin-block:-5rem;overflow:hidden;align-self:stretch}
.vertical-lane{height:100%;overflow:hidden}
.vertical-lane>div{min-height:max-content}
@media(max-width:560px){.vertical-social{height:38rem;margin-top:-1rem;margin-bottom:-3rem}.instagram-cta{overflow:hidden}}

/* Modern luminous gradient on service hover. */
.services .service-list article{position:relative;overflow:hidden;background-position:0 50%;background-size:180% 180%;transition:padding .35s ease,color .35s ease,background-position .65s ease,box-shadow .35s ease}
.services .service-list article:hover{background-image:linear-gradient(115deg,#f4b20b 0%,#e88905 38%,#ffd75a 72%,#d96b08 100%);background-position:100% 50%;color:var(--ink);box-shadow:inset 0 1px 0 #fff6a780,inset 0 -1px 0 #7d360440,0 .75rem 2.4rem #e8890524}
