@import "https://fonts.googleapis.com/css2?family=Archivo:wght@400;500;600;700;800&display=swap";:root{--bg:#fbfafd;--ink:#1f1b33;--lav:#7b68ae;--lav-deep:#4f3f86;--mustard:#d9a126;--panel:#eeeaf6;--rule:#4f3f8638;--gutter:clamp(20px, 5vw, 56px);--ease-out:cubic-bezier(.23, 1, .32, 1);--font:"Archivo", system-ui, -apple-system, "Segoe UI", sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font:400 17px / 1.6 var(--font);-webkit-font-smoothing:antialiased;margin:0}img{max-width:100%;height:auto;display:block}a{color:var(--lav-deep)}:focus-visible{outline:3px solid var(--mustard);outline-offset:3px}.skip{background:var(--ink);color:#fff;z-index:50;padding:10px 14px;position:absolute;top:0;left:-999px}.skip:focus{top:12px;left:12px}.wrap{padding-inline:var(--gutter);max-width:1320px;margin-inline:auto}.site-header{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;gap:16px;padding-block:18px;display:flex}.brand{color:var(--ink);align-items:center;gap:12px;font-weight:700;text-decoration:none;display:inline-flex}.brand img{object-fit:contain;border-radius:8px;width:48px;height:48px}.site-nav{gap:22px;display:flex}.site-nav a{color:var(--ink);font-size:15px;font-weight:500;text-decoration:none}.site-nav a:hover{color:var(--lav-deep);text-underline-offset:4px;text-decoration:underline}.hero{padding-block:clamp(48px,9vw,120px) clamp(40px,6vw,80px);position:relative;overflow:clip}.tk-title{font:800 clamp(2.3rem, 9.4vw, 8.8rem) / .92 var(--font);letter-spacing:-.035em;text-transform:uppercase;margin:0}.tk-line{white-space:nowrap;display:block}.tk-line:nth-child(2){padding-left:4vw}.tk-line--accent{color:var(--lav);text-transform:none;letter-spacing:-.03em;font-style:italic}.tk-title .ts__word{white-space:nowrap;display:inline-block}.tk-title .ts__char{will-change:transform;display:inline-block}.hero-meta{grid-template-columns:minmax(0,1fr);align-items:end;gap:20px;margin-top:clamp(28px,4vw,48px);display:grid}.hero-lead{max-width:40ch;margin:0;font-size:1.15rem;line-height:1.55}.cta{background:var(--mustard);min-height:52px;color:var(--ink);transition:background-color .2s var(--ease-out);border:0;border-radius:0;justify-content:center;align-items:center;padding:0 26px;font-weight:700;text-decoration:none;display:inline-flex}.cta:hover{background:#c58e14}.hero-figure{background:var(--panel);margin:clamp(28px,4vw,48px) 0 0;position:relative;overflow:hidden}.hero-pass{pointer-events:none;opacity:0;mix-blend-mode:soft-light;background:linear-gradient(102deg,#0000 30%,#d9a1268c 48%,#7b68ae8c 54%,#0000 70%);position:absolute;inset:0 -40%}.hero-figure img{aspect-ratio:4/3;object-fit:cover;width:100%;height:auto}.section{padding-block:clamp(56px,9vw,120px)}.kicker{font:600 13px / 1 var(--font);letter-spacing:.14em;text-transform:uppercase;color:var(--lav-deep);margin-bottom:14px;display:block}.section-title{font:700 clamp(2rem, 5vw, 3.6rem) / 1.05 var(--font);letter-spacing:-.02em;border-top:1px solid var(--rule);margin:0 0 clamp(28px,4vw,48px);padding-top:22px}.sc-list{gap:18px;display:grid}.sc-card{position:relative}.sc-inner{background:var(--panel);border-top:3px solid var(--lav);gap:22px;padding:clamp(22px,3vw,40px);display:grid}.sc-card:nth-child(2) .sc-inner{border-top-color:var(--mustard);background:#f5eff9}.sc-card:nth-child(3) .sc-inner{border-top-color:var(--lav-deep)}.sc-num{font:700 14px / 1 var(--font);color:var(--lav-deep);letter-spacing:.1em;margin:0 0 12px}.sc-text h3{font:700 clamp(1.7rem, 3.2vw, 2.6rem) / 1.08 var(--font);letter-spacing:-.015em;text-wrap:balance;margin:0 0 12px}.sc-text p{max-width:44ch;margin:0;line-height:1.6}.sc-inner img{aspect-ratio:3/2;object-fit:cover;width:100%}@media (width>=900px){.hero-meta{grid-template-columns:minmax(0,1fr) auto}.sc-list{gap:0}.sc-card{top:calc(14svh + var(--i,0) * 18px);position:sticky}.sc-card:last-child{position:relative}.sc-inner{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:center;gap:48px;min-height:58svh}.sc-inner img{aspect-ratio:4/3}.sc-mark{height:0;display:block}}@media (width<=899px){.sc-mark{display:none}.tk-line:nth-child(2){padding-left:0}.site-nav{display:none}}.studio-gallery,.enquiry{background:var(--panel)}.enquiry-grid{grid-template-columns:minmax(0,1fr);gap:40px;display:grid}.enquiry-copy h2{font:700 clamp(2rem, 5vw, 3.4rem) / 1.05 var(--font);letter-spacing:-.02em;margin:0 0 16px}.enquiry-copy p{max-width:42ch;margin:0 0 14px}.form{background:var(--bg);border-top:3px solid var(--mustard);gap:18px;padding:clamp(20px,3vw,36px);display:grid}.field{gap:8px;display:grid}.field label,.field .label{font-size:15px;font-weight:600}.field input,.field select,.field textarea{width:100%;font:400 17px / 1.4 var(--font);color:var(--ink);background:#fff;border:1.5px solid #b9b0d4;border-radius:0;padding:13px 14px}.field textarea{resize:vertical;min-height:140px}.field input:focus,.field select:focus,.field textarea:focus{outline:3px solid var(--mustard);outline-offset:1px;border-color:var(--lav-deep)}.field .err{color:#9b1c1c;font-size:14px}.form-error{color:#9b1c1c;font-weight:600}.form .cta{cursor:pointer;border:0;justify-self:start}.form .cta[disabled]{opacity:.6;cursor:default}.thanks{border-top:3px solid var(--mustard);background:#fff;padding:24px;font-size:1.1rem}.site-footer{border-top:1px solid var(--rule);padding-block:36px 110px}.foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;display:flex}.foot a{color:var(--ink);min-height:44px;padding:12px 8px;display:inline-block}.foot p{margin:0}.legal{max-width:70ch;padding-block:clamp(48px,8vw,96px)}.legal h1{font:800 clamp(2.4rem, 6vw, 4rem) / 1.05 var(--font);letter-spacing:-.02em;margin:0 0 24px}.legal h2{font:700 1.4rem / 1.2 var(--font);margin:36px 0 10px}.legal p{margin:0 0 14px}.js .reveal{opacity:0;transition:opacity .7s var(--ease-out), transform .7s var(--ease-out);transform:translateY(24px)}.js .reveal.is-in{opacity:1;transform:none}@media (width>=900px){.enquiry-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.hero-figure img{aspect-ratio:16/9}}[data-intro=line]{display:inline-block}@supports (translate:0) and (scale:1){.intro [data-intro]{animation-duration:.9s;animation-timing-function:var(--ease-out);animation-delay:calc(.12s + var(--i,0) * .11s);animation-fill-mode:backwards}.intro [data-intro=settle]{animation-name:hi-settle;animation-duration:1.2s;animation-delay:0s}.intro [data-intro=line]{animation-name:hi-rise}.intro [data-intro=late]{animation-name:hi-arrive;animation-duration:.7s;animation-delay:calc(.7s + var(--i,0) * 90ms)}}@keyframes hi-settle{0%{filter:blur(6px);scale:1.06}to{filter:blur();scale:1}}@keyframes hi-rise{0%{opacity:.4;clip-path:inset(-.3em -.3em .32em);translate:0 .42em}to{opacity:1;clip-path:inset(-.3em);translate:0}}@keyframes hi-arrive{0%{opacity:.4;translate:0 .6rem}to{opacity:1;translate:0}}@supports (animation-timeline:view()){.hero{view-timeline:--hd block}.js-motion .hero-figure{animation:linear both hd-dolly;animation-timeline:--hd;animation-range:exit}.js-motion .hero-pass{animation:linear both hd-pass;animation-timeline:--hd;animation-range:exit exit 90%}.js-motion .hero-meta{animation:linear both hd-copy;animation-timeline:--hd;animation-range:exit exit 70%}@media (width>=900px){.js-motion .tk-line{animation:linear both hd-split-a;animation-timeline:--hd;animation-range:exit exit 80%}.js-motion .tk-line:nth-child(2n){animation-name:hd-split-b}}}@keyframes hd-dolly{to{transform:translateY(6%)scale(1.07)}}@keyframes hd-pass{0%{opacity:0;transform:translate(-22%)}35%{opacity:1}to{opacity:.2;transform:translate(26%)}}@keyframes hd-copy{0%,20%{opacity:1;transform:none}to{opacity:0;transform:translateY(-6vh)}}@keyframes hd-split-a{to{transform:translate(-5vw,-6vh)}}@keyframes hd-split-b{to{transform:translate(6vw,-3vh)}}@media (width>=900px){@supports (animation-timeline:view()){.sc-list{timeline-scope:--sc-1, --sc-2}.sc-mark:first-of-type{view-timeline:--sc-1 block}.sc-mark:nth-of-type(2){view-timeline:--sc-2 block}.js-motion .sc-card:not(:last-child) .sc-inner{transform-origin:50% 0;animation:linear both sc-back;animation-range:cover 25% cover 85%}.js-motion .sc-card:first-of-type .sc-inner{animation-timeline:--sc-1}.js-motion .sc-card:nth-of-type(2) .sc-inner{animation-timeline:--sc-2}}}@keyframes sc-back{to{transform:scale(.94)}}.break{margin:0;position:relative}.break img{object-fit:cover;width:100%;height:clamp(260px,42vw,520px)}.break figcaption{left:var(--gutter);background:var(--mustard);max-width:22ch;color:var(--ink);font:700 clamp(1.2rem, 2.6vw, 2rem) / 1.1 var(--font);letter-spacing:-.01em;padding:14px 18px;position:absolute;bottom:clamp(18px,3vw,40px)}.steps{border-top:1px solid var(--rule);gap:0;display:grid}.step{border-bottom:1px solid var(--rule);grid-template-columns:64px minmax(0,1fr);align-items:baseline;gap:18px;padding-block:22px;display:grid}.step-n{font:800 1.6rem / 1 var(--font);color:var(--lav-deep)}.step h3{font:700 1.3rem / 1.2 var(--font);margin:0 0 6px}.step p{max-width:52ch;margin:0}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.js .reveal{opacity:1!important;transform:none!important}.sc-card{position:relative!important;top:auto!important}}
