:root{--pink:#ff4f9a;--yellow:#ffe23b;--ink:#0b0a0b;--paper:#fffaf7;--line:rgba(11,10,11,.18);--pad:clamp(1.25rem,4vw,4.5rem)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Montserrat",sans-serif;overflow-x:hidden}img,video{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit}.cursor-glow{position:fixed;width:30rem;height:30rem;border-radius:50%;background:radial-gradient(circle,rgba(255,79,154,.18),transparent 67%);transform:translate(-50%,-50%);pointer-events:none;z-index:20}
.site-header{height:5rem;padding:0 var(--pad);display:flex;align-items:center;justify-content:space-between;gap:2rem;background:rgba(255,250,247,.9);backdrop-filter:blur(15px);position:sticky;top:0;z-index:50;border-bottom:1px solid var(--line)}.wordmark{font-family:"Bebas Neue",sans-serif;font-size:clamp(1.3rem,2.1vw,1.8rem);letter-spacing:.04em;white-space:nowrap}.wordmark span{color:var(--pink)}nav{display:flex;gap:clamp(1rem,3vw,3rem);font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em}nav a{position:relative}nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-.4rem;height:2px;background:var(--pink);transition:right .25s}nav a:hover:after{right:0}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:2rem;border-radius:999px;background:var(--ink);color:white;padding:1.15rem 1.6rem;font-weight:700}.button-small{padding:.78rem 1.25rem;font-size:.8rem}
.film-hero{background:var(--ink);color:white}.film-wrap{height:calc(100svh - 5rem);min-height:35rem;position:relative;overflow:hidden}.hero-film{width:100%;height:100%;object-fit:cover}.film-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.18),transparent 52%,rgba(0,0,0,.68))}.film-kicker{position:absolute;top:var(--pad);left:var(--pad);margin:0;text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:700}.film-controls{position:absolute;left:var(--pad);right:var(--pad);bottom:1.7rem;display:flex;justify-content:space-between;align-items:center;font-size:.77rem;letter-spacing:.04em}.film-toggle{color:white;background:rgba(0,0,0,.38);border:1px solid rgba(255,255,255,.55);border-radius:999px;padding:.7rem 1rem;cursor:pointer}.film-toggle b{margin-left:.5rem}.hero-statement{background:var(--pink);color:var(--ink);padding:clamp(4rem,9vw,9rem) var(--pad);display:grid;grid-template-columns:minmax(0,1.65fr) minmax(16rem,.55fr);gap:clamp(2rem,7vw,8rem);align-items:end}.eyebrow{font-size:.72rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;margin:0 0 1.2rem}.hero-statement h1,.section-intro h2,.about h2,.services h2,.contact h2{font-family:"Bebas Neue",sans-serif;font-size:clamp(4.4rem,10vw,10rem);font-weight:400;line-height:.79;letter-spacing:-.02em;margin:0}.hero-statement em,.section-intro em,.about em,.services em,.contact em{display:block;font-family:"Allura",cursive;font-weight:400;text-transform:none;letter-spacing:0;line-height:.8}.hero-statement h1 em{color:var(--yellow);font-size:.8em;margin-left:8%}.hero-side{display:grid;gap:1.5rem;align-self:stretch;align-content:end;position:relative}.hero-camera{width:min(100%,22rem);justify-self:center;transform:rotate(5deg);filter:drop-shadow(0 1.2rem 1.2rem rgba(11,10,11,.2))}.hero-side>p{font-size:clamp(1rem,1.55vw,1.35rem);line-height:1.65;margin:0;max-width:30rem}.scroll-cue{font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em;display:flex;justify-content:space-between;border-bottom:2px solid;padding-bottom:.8rem}.scroll-cue span{font-size:1.2rem}
.projects{background:var(--yellow);color:var(--ink);padding:clamp(5rem,10vw,10rem) var(--pad)}.projects-heading{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(16rem,.55fr);gap:1.5rem 4rem;align-items:end;margin-bottom:clamp(3rem,6vw,6rem)}.projects-heading .eyebrow{grid-column:1/-1;margin-bottom:0}.projects-heading h2{font-family:"Bebas Neue",sans-serif;font-size:clamp(4.2rem,8vw,8rem);font-weight:400;line-height:.79;letter-spacing:-.02em;margin:0}.projects-heading h2 em{display:block;color:var(--pink);font-family:"Allura",cursive;font-weight:400;text-transform:none;letter-spacing:0;line-height:.8}.projects-heading>p:last-child{font-size:1rem;line-height:1.75;margin:0}.project-feature{display:grid;grid-template-columns:minmax(17rem,.72fr) minmax(19rem,1fr);gap:clamp(2.5rem,7vw,7rem);align-items:center;background:var(--ink);color:white;padding:clamp(1.2rem,3vw,2rem)}.project-film{position:relative;background:#161416;overflow:hidden;max-width:32rem;justify-self:center}.project-film video{display:block;width:100%;aspect-ratio:9/16;object-fit:cover;max-height:78svh}.project-film span{position:absolute;top:1rem;left:1rem;background:var(--pink);color:var(--ink);font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:.65rem .85rem;pointer-events:none}.project-story{max-width:43rem;padding:clamp(1rem,3vw,3rem) clamp(.25rem,2vw,2rem)}.project-meta{font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--yellow);margin:0 0 1.5rem}.project-story h3{font-family:"Bebas Neue",sans-serif;font-size:clamp(3.1rem,6vw,6rem);font-weight:400;line-height:.88;margin:0 0 1.6rem}.project-story>p:not(.project-meta){font-size:1rem;line-height:1.75;margin:0 0 2rem}.project-story blockquote{margin:0;padding:1.5rem 0 0;border-top:1px solid rgba(255,255,255,.35);font-family:"Montserrat",sans-serif;font-size:clamp(1.15rem,1.8vw,1.6rem);font-style:italic;font-weight:500;line-height:1.55;color:var(--pink)}.project-story cite{display:block;margin-top:1.2rem;font-family:"Montserrat",sans-serif;font-size:.7rem;font-style:normal;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:white}.project-feature+.project-feature{margin-top:clamp(2rem,5vw,5rem)}.project-feature-reverse .project-film{order:2}.project-feature-reverse .project-story{order:1}.project-note{padding:1.2rem 0 0;border-top:1px solid rgba(255,255,255,.35);color:var(--pink);font-size:.76rem!important;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.project-feature-wide{grid-template-columns:1fr;padding:clamp(1.2rem,3vw,2rem)}.project-feature-wide .project-film{max-width:none;width:100%}.project-feature-wide .project-film video{aspect-ratio:16/9;max-height:none}.project-feature-wide .project-story{display:grid;grid-template-columns:minmax(15rem,.72fr) minmax(17rem,1fr);gap:1rem clamp(2rem,5vw,5rem);max-width:none;padding:clamp(1rem,3vw,3rem)}.project-feature-wide .project-meta{grid-column:1/-1}.project-feature-wide h3{grid-row:2/4}.project-purpose{display:grid;gap:1rem}.project-purpose p{display:grid;grid-template-columns:2.4rem 1fr;gap:.8rem;margin:0;padding-top:1rem;border-top:1px solid rgba(255,255,255,.35);font-size:.9rem;line-height:1.55}.project-purpose b{color:var(--pink);font-family:"Bebas Neue",sans-serif;font-size:1.5rem;font-weight:400}.project-feature-dual{grid-template-columns:1fr}.project-feature-dual .project-story{display:grid;grid-template-columns:minmax(15rem,.72fr) minmax(17rem,1fr);gap:1rem clamp(2rem,5vw,5rem);max-width:none;padding:clamp(1rem,3vw,3rem)}.project-feature-dual .project-meta{grid-column:1/-1}.project-feature-dual h3{grid-row:2/4}.project-films{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1rem,3vw,2rem);justify-content:center}.project-films .project-film{width:100%;max-width:31rem}.project-films .project-film:first-child{justify-self:end}.project-films .project-film:last-child{justify-self:start}.project-films video{aspect-ratio:9/16;max-height:78svh}.brands{background:var(--ink);color:white;padding:clamp(5rem,10vw,10rem) 0;overflow:hidden}.section-intro{padding:0 var(--pad);display:grid;grid-template-columns:minmax(0,1.4fr) minmax(16rem,.55fr);gap:4rem;align-items:end;margin-bottom:clamp(3rem,7vw,6rem)}.section-intro .eyebrow{grid-column:1/-1}.section-intro h2{font-size:clamp(4.2rem,8vw,8rem)}.section-intro h2 em{color:var(--pink)}.brands .section-intro h2{grid-column:1}.brands .section-intro>p{grid-column:2}.section-intro>p:last-child{font-size:1rem;line-height:1.75;margin:0}.logo-marquee{display:grid;gap:clamp(2.5rem,4.5vw,4.5rem);transform:rotate(-1.5deg) scale(1.02)}.logo-row{display:flex;width:max-content;animation:marquee 34s linear infinite}.logo-row.reverse{animation-name:marquee-reverse}.logo-run{display:flex;align-items:center;gap:clamp(2.5rem,5vw,5rem);padding-right:clamp(2.5rem,5vw,5rem)}.logo-run figure{width:clamp(12rem,16vw,17rem);height:clamp(8rem,10vw,10rem);margin:0;padding:.6rem;display:flex;align-items:center;justify-content:center;background:transparent;overflow:hidden}.logo-run figure.dark,.logo-run figure.blush{background:transparent}.logo-run figure.needs-contrast{background:transparent}.logo-run figure.needs-contrast img{filter:drop-shadow(0 0 1px rgba(255,255,255,.95)) drop-shadow(0 0 1px rgba(255,255,255,.95)) drop-shadow(0 0 3px rgba(255,255,255,.55))}.logo-run img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center center;filter:drop-shadow(0 0 1px rgba(255,255,255,.28));mix-blend-mode:normal}.text-logo{background:transparent!important;color:var(--yellow)}.text-logo span{font-family:"Bebas Neue",sans-serif;font-size:2rem;line-height:.8;text-align:center}.text-logo b{color:var(--pink)}@keyframes marquee{to{transform:translateX(-50%)}}@keyframes marquee-reverse{from{transform:translateX(-50%)}to{transform:translateX(0)}}
.about{padding:clamp(5rem,10vw,10rem) var(--pad);display:grid;grid-template-columns:minmax(18rem,.75fr) minmax(0,1.25fr);gap:clamp(3rem,9vw,10rem);align-items:center;background:var(--paper)}.about-photo{position:relative}.about-photo:before{content:"";position:absolute;inset:-1rem 1rem 1rem -1rem;background:var(--pink);border-radius:2.2rem;transform:rotate(-3deg)}.about-photo img{position:relative;width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:2rem;filter:grayscale(100%);z-index:1}.about-photo span{position:absolute;right:-1.8rem;bottom:2rem;z-index:2;background:var(--ink);color:var(--yellow);padding:1.1rem 1.3rem;border-radius:1rem;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;line-height:1.6;transform:rotate(4deg)}.about h2{font-size:clamp(4.5rem,8vw,8rem)}.about h2 em{color:var(--pink)}.about-copy>p:not(.eyebrow){font-size:clamp(1rem,1.4vw,1.28rem);line-height:1.75;max-width:48rem}.about-copy .lead{font-weight:600;font-size:clamp(1.2rem,1.8vw,1.55rem)!important}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:3rem;padding-top:2rem;border-top:1px solid var(--line)}.stats span{font-size:.7rem;line-height:1.5;text-transform:uppercase;letter-spacing:.1em;font-weight:700}.stats b{display:block;font-family:"Bebas Neue",sans-serif;color:var(--pink);font-size:3.4rem;line-height:1}
.services{background:var(--pink);padding:clamp(5rem,10vw,10rem) var(--pad)}.services .section-intro{padding:0;margin-bottom:4rem}.services h2 em{color:white}.service-list{border-top:2px solid var(--ink)}.service-list article{display:grid;grid-template-columns:minmax(14rem,.75fr) 1fr;gap:2rem;align-items:center;border-bottom:1px solid rgba(11,10,11,.4);padding:clamp(1.6rem,3vw,2.8rem) 0}.service-list h3{color:var(--yellow);font-family:"Bebas Neue",sans-serif;font-size:clamp(2.8rem,5vw,5rem);line-height:1;margin:0}.service-list p{margin:0;line-height:1.7;max-width:34rem}
.contact{background:var(--ink);color:white;padding:clamp(5rem,10vw,9rem) var(--pad) 2rem}.contact h2{font-size:clamp(5rem,11vw,11rem);max-width:75rem}.contact h2 em{color:var(--pink);margin-left:7%}.contact-actions{display:flex;gap:1.25rem;align-items:center;margin:clamp(3rem,6vw,6rem) 0}.button-light{background:white;color:var(--ink);min-width:min(28rem,100%)}.instagram-link{font-size:clamp(1rem,2vw,1.4rem);border-bottom:2px solid var(--pink);padding:.8rem 0}.contact footer{border-top:1px solid rgba(255,255,255,.28);padding-top:2rem;display:grid;grid-template-columns:1fr auto auto;gap:2rem;align-items:end}.footer-mark{color:white}.contact footer p{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;margin:0}.reveal{opacity:0;transform:translateY(2rem);transition:opacity .65s ease,transform .65s ease}.reveal.in-view{opacity:1;transform:none}
@media(max-width:800px){.projects-heading,.project-feature{grid-template-columns:1fr}.projects-heading{gap:2rem}.projects-heading .eyebrow{grid-column:1}.project-feature{padding:1rem}.project-film{width:100%}.project-film video{max-height:none}.project-story{padding:2rem .5rem 1.5rem}.project-feature-reverse .project-film,.project-feature-reverse .project-story{order:initial}.project-feature-wide .project-story{grid-template-columns:1fr}.project-feature-wide .project-meta{grid-column:1}.project-feature-wide h3{grid-row:auto}.project-feature-wide .project-film video{aspect-ratio:16/9}.project-feature-dual .project-story{grid-template-columns:1fr}.project-feature-dual .project-meta{grid-column:1}.project-feature-dual h3{grid-row:auto}.project-films{grid-template-columns:1fr}.project-films .project-film:first-child,.project-films .project-film:last-child{justify-self:center}.project-films video{max-height:none}.cursor-glow{display:none}.site-header{height:4.25rem}.site-header nav{display:none}.button-small{padding:.7rem 1rem}.film-wrap{height:70svh;min-height:30rem}.film-controls>span{display:none}.hero-statement,.section-intro,.about{grid-template-columns:1fr}.hero-statement{padding-top:4rem}.hero-statement h1{font-size:clamp(4rem,20vw,6.5rem)}.hero-side>p{font-size:1rem}.hero-camera{width:min(70vw,16rem);margin:0 auto}.scroll-cue{grid-column:1}.section-intro{gap:2rem}.section-intro .eyebrow{grid-column:1}.brands .section-intro h2,.brands .section-intro>p{grid-column:1}.logo-run figure{width:10.5rem;height:7rem;border-radius:1.25rem}.about{gap:4rem}.about-photo{max-width:32rem}.about-photo span{right:-.5rem}.stats{gap:.5rem}.stats b{font-size:2.6rem}.service-list article{grid-template-columns:1fr;gap:.65rem}.service-list article p{grid-column:1}.contact-actions{align-items:flex-start;flex-direction:column}.contact footer{grid-template-columns:1fr;gap:1rem}.hero-statement h1 em,.contact h2 em{margin-left:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.logo-row{animation-play-state:paused}.reveal{opacity:1;transform:none;transition:none}}
