:root{--ink:#0d0d0d;--paper:#f2f0eb;--acid:#ff5a1f;--line:#0d0d0d2e;--muted:#77736c}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font-family:Manrope,Arial,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit}.cursor-glow{pointer-events:none;z-index:20;background:radial-gradient(circle,#ff5a1f1f,#0000 68%);border-radius:50%;width:320px;height:320px;position:fixed;transform:translate(-50%,-50%)}.nav{z-index:50;color:#fff;justify-content:space-between;align-items:center;height:88px;padding:0 4vw;transition:all .3s;display:flex;position:fixed;top:0;left:0;right:0}.nav.scrolled{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0d0d0deb;height:70px}.brand{letter-spacing:.03em;flex-direction:column;font-family:Anton,sans-serif;font-size:24px;line-height:.72;display:flex}.brand small{letter-spacing:.58em;margin-top:8px;font:700 8px Manrope}.nav-links{text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:32px;font-size:12px;font-weight:700;display:flex}.nav-links a{transition:all .2s}.nav-links a:hover{color:var(--acid)}.nav-cta{border:1px solid #ffffff80;border-radius:100px;padding:12px 18px}.menu-button{background:0;border:0;display:none}.hero{color:#fff;background:#171717;height:100svh;min-height:680px;position:relative;overflow:hidden}.hero-image{object-fit:cover;width:100%;height:100%;animation:12s ease-out both heroZoom}.hero-shade{background:linear-gradient(90deg,#000000c9 0%,#00000047 60%,#0000007a),linear-gradient(#0000 52%,#0009);position:absolute;inset:0}.hero-content{position:absolute;inset:auto 4vw 8vh}.eyebrow,.section-tag{text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:700}.eyebrow{color:#fff;margin-bottom:22px}.eyebrow:before,.section-tag:before{content:"";background:var(--acid);width:28px;height:2px;margin:0 12px 3px 0;display:inline-block}.hero h1,.section-pad h2,.about h2,.contact h2{letter-spacing:-.02em;margin:0;font-family:Anton,sans-serif;font-weight:400;line-height:.87}.hero h1{font-size:clamp(70px,11vw,180px)}h1 em,.contact em{color:var(--acid);font-style:normal}.hero-bottom{justify-content:space-between;align-items:end;margin-top:32px;display:flex}.hero-bottom p{color:#ddd;max-width:470px;font-size:15px;line-height:1.6}.round-link{border:1px solid #ffffff8c;border-radius:50%;place-items:center;width:64px;height:64px;font-size:24px;transition:all .3s;display:grid}.round-link:hover{background:var(--acid);border-color:var(--acid);transform:translateY(5px)}.hero-index{letter-spacing:.18em;writing-mode:vertical-rl;font-size:9px;position:absolute;bottom:3vh;right:4vw}.section-pad{padding:130px 4vw}.section-tag{color:var(--muted);margin:0 0 38px}.manifesto{grid-template-columns:1fr 4fr;gap:3vw;display:grid}.manifesto h2{grid-column:2;font-size:clamp(48px,7vw,110px)}.manifesto h2 span{color:#0000;-webkit-text-stroke:1px var(--ink)}.manifesto-copy{grid-column:2;max-width:620px;margin:35px 0 0 35%;font-size:18px;line-height:1.7}.work{color:#fff;background:#111}.section-head{justify-content:space-between;align-items:end;gap:40px;margin-bottom:55px;display:flex}.section-head h2{font-size:clamp(55px,7vw,105px)}.work .section-tag,.work .project-meta{color:#aaa}.filters{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.filters button{color:#aaa;text-transform:uppercase;cursor:pointer;background:0 0;border:1px solid #3c3c3c;border-radius:50px;padding:9px 15px;font-size:11px}.filters button.active,.filters button:hover{background:var(--acid);border-color:var(--acid);color:#fff}.project-grid{grid-template-columns:repeat(12,1fr);gap:18px;display:grid}.project{aspect-ratio:3/4;cursor:pointer;background:#252525;grid-column:span 4;position:relative;overflow:hidden}.project.wide{aspect-ratio:16/9;grid-column:span 8}.project img{object-fit:cover;width:100%;height:100%;transition:transform .7s,filter .4s}.project:after{content:"";background:linear-gradient(#0000 45%,#000c);position:absolute;inset:0}.project:hover img{filter:saturate(1.15);transform:scale(1.045)}.project-copy{z-index:2;justify-content:space-between;align-items:end;display:flex;position:absolute;bottom:22px;left:24px;right:24px}.project h3{margin:0;font:400 clamp(26px,3vw,46px) Anton}.project-meta{text-transform:uppercase;letter-spacing:.12em;font-size:10px}.play{background:var(--acid);border-radius:50%;place-items:center;width:48px;height:48px;padding-left:3px;display:grid}.head-copy{max-width:430px;color:var(--muted);line-height:1.7}.services h2{font-size:clamp(60px,9vw,130px)}.service-list{border-top:1px solid var(--line)}.service{border-bottom:1px solid var(--line);grid-template-columns:8% 34% 1fr auto;align-items:center;gap:20px;padding:30px 0;transition:all .25s;display:grid}.service:hover{background:#e8e5df;padding-left:16px}.service>span{color:var(--muted);font-size:11px}.service h3{margin:0;font:400 clamp(28px,4vw,54px) Anton}.service p{color:var(--muted);max-width:450px}.service i{color:var(--acid);font-size:30px;font-style:normal}.about{color:#fff;background:#161616;grid-template-columns:1.15fr 1fr;display:grid}.about-image{min-height:850px;position:relative;overflow:hidden}.about-image img{object-fit:cover;width:100%;height:100%}.about-image span{letter-spacing:.2em;font-size:10px;position:absolute;bottom:25px;left:25px}.about-copy{flex-direction:column;justify-content:center;display:flex}.about-copy h2{margin-bottom:50px;font-size:clamp(75px,9vw,140px)}.about-copy>p:not(.section-tag){color:#aaa;max-width:550px;line-height:1.8}.text-link{text-transform:uppercase;border-bottom:1px solid #555;justify-content:space-between;margin-top:30px;padding:22px 0;font-size:12px;font-weight:700;display:flex}.text-link span{color:var(--acid);font-size:22px}.contact{background:var(--acid);color:#0d0d0d}.contact .section-tag{color:#351207}.contact .section-tag:before{background:#111}.contact h2{font-size:clamp(65px,11vw,170px)}.contact h2 em{color:var(--paper)}.contact-row{border-top:1px solid #0006;justify-content:space-between;margin-top:65px;padding-top:25px;font-weight:700;display:flex}.contact-row a:hover{text-decoration:underline}footer{color:#888;text-transform:uppercase;letter-spacing:.08em;background:#0d0d0d;justify-content:space-between;align-items:center;padding:50px 4vw;font-size:10px;display:flex}footer .brand{color:#fff;font-size:20px}footer div{gap:25px;display:flex}.player{color:#fff;background:#0b0b0b;border:0;width:min(94vw,1200px);max-width:none;padding:0;overflow:visible}.player::backdrop{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000000eb}.player video{background:#000;width:100%;max-height:78vh;display:block}.player-close{color:#fff;cursor:pointer;background:0;border:0;font-size:35px;position:absolute;top:-48px;right:0}.player-info{text-transform:uppercase;justify-content:space-between;padding:20px 4px;display:flex}.player-info p{margin:0;font:30px Anton}.player-info span{color:#999;font-size:11px}.reveal{opacity:0;transition:opacity .8s,transform .8s;transform:translateY(36px)}.reveal.visible{opacity:1;transform:none}@keyframes heroZoom{0%{transform:scale(1.08)}to{transform:scale(1)}}@media (max-width:850px){.cursor-glow{display:none}.nav{height:70px}.menu-button{width:36px;height:30px;display:block;position:relative}.menu-button span{background:#fff;width:28px;height:2px;transition:all .25s;position:absolute;left:3px}.menu-button span:first-child{top:9px}.menu-button span:last-child{top:19px}.menu-button.open span:first-child{transform:translateY(5px)rotate(45deg)}.menu-button.open span:last-child{transform:translateY(-5px)rotate(-45deg)}.nav-links{background:#111;flex-direction:column;align-items:flex-start;padding:30px 4vw;display:none;position:fixed;inset:70px 0 auto}.nav-links.open{display:flex}.hero h1{font-size:clamp(62px,20vw,105px)}.hero-bottom{align-items:center}.hero-bottom p{max-width:75%}.section-pad{padding:90px 5vw}.manifesto{display:block}.manifesto-copy{margin:30px 0 0}.section-head{display:block}.filters{justify-content:flex-start;margin-top:30px}.project-grid{display:block}.project,.project.wide{aspect-ratio:4/5;margin-bottom:15px}.service{grid-template-columns:10% 1fr auto}.service p{display:none}.about{grid-template-columns:1fr}.about-image{min-height:620px}.contact-row,footer{flex-direction:column;align-items:flex-start;gap:25px}footer div{flex-wrap:wrap}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}}.legal-page{color:#fff;background:#111}.legal-page .nav{background:#111}.legal-main{max-width:900px;margin:auto;padding:160px 5vw 100px}.legal-main h1{margin:0 0 60px;font:400 clamp(55px,8vw,100px) Anton}.legal-main h2{margin:45px 0 15px;font:400 28px Anton}.legal-main p,.legal-main li{color:#aaa;line-height:1.8}.legal-main a{color:var(--acid)}.about-mathieu{color:var(--ink);background:#e8e5df}.about-mathieu .about-copy>p:not(.section-tag){color:#615e58}.about-mathieu .text-link{border-color:#aaa}.about-mathieu .about-image img{object-position:center 28%;filter:contrast(1.05)}.about-mathieu .about-image:after{content:"";pointer-events:none;background:linear-gradient(#0000 55%,#00000061);position:absolute;inset:0}.about-mathieu .about-image span{z-index:2;color:#fff}.service{cursor:pointer}.service:focus-visible{outline:2px solid var(--acid);outline-offset:5px}.service-modal{background:var(--paper);width:min(92vw,900px);max-width:none;color:var(--ink);border:0;padding:60px}.service-modal::backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000d6}.service-modal-close{cursor:pointer;background:0 0;border:0;font-size:34px;position:absolute;top:18px;right:25px}.service-number{color:var(--acid);letter-spacing:.15em;font-size:11px;font-weight:700}.service-modal h2{margin:22px 0 30px;font:400 clamp(52px,8vw,96px)/.9 Anton}.service-intro{color:#615e58;max-width:720px;font-size:19px;line-height:1.7}.service-details{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:45px;margin-top:40px;padding-top:30px;display:grid}.service-details span{text-transform:uppercase;letter-spacing:.14em;margin-bottom:15px;font-size:10px;font-weight:700;display:block}.service-details ul{color:#615e58;margin:0;padding-left:18px;line-height:1.9}.service-details p{color:#615e58;margin:0;line-height:1.8}.service-contact{border-top:1px solid var(--line);text-transform:uppercase;justify-content:space-between;margin-top:35px;padding-top:25px;font-size:12px;font-weight:700;display:flex}.service-contact b{color:var(--acid);font-size:22px}.service-contact:hover{color:var(--acid)}.showreel-rotation{border-top:1px solid #333;justify-content:space-between;align-items:center;margin-top:28px;padding-top:22px;display:flex}.showreel-rotation>div{align-items:center;gap:12px;display:flex}.showreel-rotation p{color:#888;letter-spacing:.14em;margin:0;font-size:10px}.showreel-rotation b{color:#fff}.rotation-dot{background:var(--acid);border-radius:50%;width:8px;height:8px;animation:2s infinite rotationPulse;box-shadow:0 0 #ff5a1fb3}.showreel-rotation button{color:#fff;text-transform:uppercase;letter-spacing:.08em;cursor:pointer;background:0 0;border:1px solid #444;border-radius:100px;padding:11px 16px;font-size:10px;font-weight:700}.showreel-rotation button:hover{background:var(--acid);border-color:var(--acid)}.showreel-rotation button span{margin-left:15px;font-size:16px}@keyframes rotationPulse{70%{box-shadow:0 0 0 8px #ff5a1f00}to{box-shadow:0 0 #ff5a1f00}}.showreel-stage{position:relative}.showreel-arrow{z-index:8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;cursor:pointer;background:#0a0a0ab8;border:1px solid #fff9;border-radius:50%;place-items:center;width:58px;height:58px;font-size:25px;transition:all .25s;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.showreel-prev{left:-29px}.showreel-next{right:-29px}.showreel-arrow:hover{background:var(--acid);border-color:var(--acid);transform:translateY(-50%)scale(1.08)}.showreel-arrow:active{transform:translateY(-50%)scale(.96)}@media (max-width:850px){.showreel-arrow{width:48px;height:48px}.showreel-prev{left:-12px}.showreel-next{right:-12px}}.wedding-banner{color:#fff;background:#221b18;height:clamp(430px,65vw,780px);display:block;position:relative;overflow:hidden}.wedding-banner video{object-fit:cover;width:100%;height:100%;transition:transform 1s}.wedding-banner:hover video{transform:scale(1.025)}.wedding-shade{background:linear-gradient(90deg,#0000009e,#00000014 62%),linear-gradient(#0000 45%,#0000008c);position:absolute;inset:0}.wedding-content{grid-template-columns:1fr auto;align-items:end;display:grid;position:absolute;inset:auto 4vw 7%}.wedding-content>p{text-transform:uppercase;letter-spacing:.2em;grid-column:1/-1;margin:0 0 18px;font-size:10px}.wedding-content h2{letter-spacing:-.02em;margin:0;font:400 clamp(90px,17vw,260px)/.78 Anton}.wedding-link{text-transform:uppercase;letter-spacing:.08em;border:1px solid #fff9;border-radius:100px;align-self:end;padding:15px 20px;font-size:10px;font-weight:700}.wedding-link b{color:var(--acid);margin-left:18px;font-size:19px}.wedding-banner:hover .wedding-link{color:#111;background:#fff}@media (max-width:700px){.wedding-content{display:block}.wedding-content h2{font-size:25vw}.wedding-link{align-items:center;margin-top:28px;display:inline-flex}.wedding-banner{height:70vh;min-height:520px}}@media (max-width:650px){.service-modal{padding:45px 25px 30px}.service-details{grid-template-columns:1fr;gap:25px}}.team{color:#fff;background:#161616}.team .section-head h2{font:400 clamp(60px,8vw,120px)/.88 Anton}.team .head-copy{color:#aaa}.team-grid{grid-template-columns:1fr 1fr;gap:22px;display:grid}.team-member{min-width:0}.team-photo{background:#292929;height:min(65vw,720px);position:relative;overflow:hidden}.team-photo:after{content:"";background:linear-gradient(#0000 55%,#0000008c);position:absolute;inset:0}.team-photo img{object-fit:cover;width:100%;height:100%;transition:transform .7s}.team-member:first-child .team-photo img{object-position:center 50%}.team-member:last-child .team-photo img{object-position:center 25%}.team-member:hover .team-photo img{transform:scale(1.025)}.team-photo span{z-index:2;letter-spacing:.18em;font-size:10px;font-weight:700;position:absolute;bottom:22px;left:24px}.team-copy{padding:28px 4px}.team-copy .section-tag{margin-bottom:18px}.team-copy h3{margin:0 0 18px;font:400 clamp(38px,5vw,70px) Anton}.team-copy>p:last-child{color:#aaa;max-width:580px;line-height:1.75}.team-link{border-color:#555;margin-top:25px}@media (max-width:700px){.team-grid{grid-template-columns:1fr}.team-photo{height:125vw;max-height:720px}}
