
:root{--bg:#07070b;--ink:#f7f5fb;--muted:#aaa5b4;--muted2:#716d7b;--purple:#8e5cff;--purple2:#c1a4ff;--orange:#ff6b35;--line:rgba(255,255,255,.12);--panel:#101016;--shell:min(1540px,calc(100% - 72px));--header:82px;--ease:cubic-bezier(.2,.78,.2,1);--shadow:0 34px 100px rgba(0,0,0,.52)}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55;overflow-x:hidden}body::after{content:"";position:fixed;inset:0;z-index:2000;pointer-events:none;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.shell{width:var(--shell);margin-inline:auto}.skip-link{position:fixed;top:-100px;left:20px;z-index:5000;background:#fff;color:#000;padding:12px 18px;border-radius:10px}.skip-link:focus{top:16px}.scroll-progress{position:fixed;left:0;top:0;width:0;height:2px;background:linear-gradient(90deg,var(--purple),var(--purple2),var(--orange));z-index:5000}.cursor-light{position:fixed;width:460px;height:460px;border-radius:50%;background:radial-gradient(circle,rgba(142,92,255,.09),transparent 66%);transform:translate(-50%,-50%);pointer-events:none;z-index:0;opacity:0}.section{padding:140px 0}.eyebrow,.section-code{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--purple2);font-weight:800}.kicker{display:flex;gap:18px;align-items:center;font-size:.72rem;letter-spacing:.16em;font-weight:800;text-transform:uppercase}.kicker span+span{color:var(--muted)}em{font-style:normal;color:var(--purple2)}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:.95;letter-spacing:-.055em}h1{font-size:clamp(5rem,10vw,10rem)}h2{font-size:clamp(3rem,6.2vw,6.5rem)}h3{font-size:clamp(1.45rem,2.2vw,2.4rem)}p{color:var(--muted)}svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.button{display:inline-flex;align-items:center;gap:13px;justify-content:center;min-height:55px;padding:13px 22px;border-radius:999px;border:1px solid transparent;font-weight:850;font-size:.88rem;transition:.25s var(--ease)}.button svg{width:19px}.button-primary{background:#fff;color:#08080c}.button-primary:hover{background:var(--purple2);transform:translateY(-3px)}.button-ghost,.button-outline{border-color:var(--line);background:rgba(8,8,12,.25);backdrop-filter:blur(12px)}.button-ghost:hover,.button-outline:hover{border-color:var(--purple2);background:rgba(142,92,255,.12)}.button-light{background:#fff;color:#09090d}.text-link{font-weight:850;display:inline-flex;gap:14px}.text-link span{color:var(--purple2)}
.site-header{position:fixed;inset:0 0 auto;height:var(--header);z-index:1000;transition:.3s var(--ease);background:linear-gradient(180deg,rgba(4,4,7,.72),transparent)}.site-header.scrolled{height:72px;background:rgba(7,7,11,.9);backdrop-filter:blur(22px);border-bottom:1px solid var(--line)}.header-grid{height:100%;display:grid;grid-template-columns:280px 1fr auto;align-items:center;gap:34px}.brand img{width:255px}.main-nav{display:flex;justify-content:center;gap:30px}.main-nav a{font-size:.86rem;font-weight:760;color:#b4afbd;position:relative}.main-nav a:hover,.main-nav a.active{color:#fff}.main-nav a::after{content:"";position:absolute;left:0;right:100%;height:2px;bottom:-10px;background:var(--purple2);transition:.25s}.main-nav a.active::after,.main-nav a:hover::after{right:0}.header-actions{display:flex;align-items:center;gap:18px}.availability{font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:8px}.availability i{width:7px;height:7px;background:#62e59a;border-radius:50%;box-shadow:0 0 12px #62e59a}.header-cta{display:flex;align-items:center;gap:10px;border:1px solid rgba(193,164,255,.4);padding:11px 17px;border-radius:999px;font-weight:820;font-size:.82rem;background:rgba(142,92,255,.08)}.header-cta:hover{background:rgba(142,92,255,.2)}.header-cta svg{width:17px}.menu-toggle{display:none;border:0;background:transparent;color:#fff;width:44px;height:44px}.menu-toggle span{display:block;width:22px;height:2px;background:#fff;margin:5px auto;transition:.25s}.menu-toggle.open span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle.open span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
.hero-v8{min-height:100svh;position:relative;display:flex;align-items:flex-end;overflow:hidden}.hero-media,.hero-frame,.hero-shade,.hero-grid-overlay{position:absolute;inset:0}.hero-frame{opacity:0;transform:scale(1.05);transition:opacity 1.2s ease,transform 7s linear}.hero-frame.active{opacity:1;transform:scale(1)}.hero-frame img{width:100%;height:100%;object-fit:cover}.hero-shade{background:linear-gradient(90deg,rgba(5,5,8,.94) 0%,rgba(5,5,8,.55) 47%,rgba(5,5,8,.15) 100%),linear-gradient(0deg,rgba(5,5,8,.82),transparent 45%)}.hero-grid-overlay{opacity:.13;background-image:linear-gradient(rgba(255,255,255,.16) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.16) 1px,transparent 1px);background-size:160px 160px;mask-image:linear-gradient(90deg,#000,transparent 78%)}.hero-copy{position:relative;z-index:4;padding:calc(var(--header) + 85px) 0 10vh}.hero-copy h1{font-size:clamp(6rem,13vw,13.5rem);margin:22px 0 24px;max-width:7ch}.hero-intro{max-width:650px;font-size:clamp(1.05rem,1.5vw,1.35rem);color:#d4d0d9}.hero-buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.hero-index{position:absolute;z-index:5;right:45px;top:50%;display:grid;justify-items:center;gap:12px;font-size:.72rem;letter-spacing:.14em}.hero-index i{height:90px;width:1px;background:linear-gradient(var(--purple2),rgba(255,255,255,.15))}.hero-captions{position:absolute;z-index:5;right:100px;bottom:50px;width:310px}.hero-captions article{display:none;text-align:right}.hero-captions article.active{display:block}.hero-captions span{display:block;color:var(--purple2);font-size:.68rem;text-transform:uppercase;letter-spacing:.14em}.hero-captions strong{font-size:1.1rem}.hero-nav{position:absolute;z-index:6;left:50%;bottom:35px;display:flex;gap:8px}.hero-nav button{width:35px;height:3px;border:0;background:rgba(255,255,255,.3);padding:0;cursor:pointer}.hero-nav button.active{background:var(--purple2);width:65px}.signal-strip{overflow:hidden;border-block:1px solid var(--line);background:#0b0b10}.signal-track{display:flex;gap:30px;white-space:nowrap;min-width:max-content;padding:20px 0;animation:marquee 28s linear infinite;font-size:.76rem;text-transform:uppercase;letter-spacing:.14em;font-weight:800;color:#d6d1dc}.signal-track i{width:6px;height:6px;border-radius:50%;background:var(--purple)}@keyframes marquee{to{transform:translateX(-35%)}}
.intro-grid{display:grid;grid-template-columns:.28fr 1.4fr .55fr;gap:55px}.intro-copy h2{margin-bottom:30px}.intro-copy p{max-width:760px;font-size:1.15rem}.intro-facts{display:grid;align-content:end}.intro-facts div{padding:22px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:end}.intro-facts strong{font-size:2.4rem;letter-spacing:-.06em}.intro-facts span{font-size:.72rem;text-transform:uppercase;color:var(--muted);letter-spacing:.1em}.selected-work{padding:40px 0 150px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:45px}.section-heading h2{margin:10px 0 0}.section-heading>a{font-weight:850}.section-heading>a span{color:var(--purple2)}.editorial-grid{display:grid;grid-template-columns:1.15fr .85fr .7fr;grid-template-rows:420px 330px;gap:12px}.frame-card{position:relative;overflow:hidden;border-radius:4px;cursor:pointer;background:#111}.frame-card::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(4,4,7,.88),transparent 58%)}.frame-card img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}.frame-card:hover img{transform:scale(1.045)}.frame-card>div{position:absolute;z-index:2;left:24px;right:24px;bottom:20px}.frame-card span{font-size:.66rem;text-transform:uppercase;letter-spacing:.14em;color:var(--purple2)}.frame-card h3{font-size:1.55rem;margin:7px 0}.frame-a{grid-row:1/3}.frame-b{grid-column:2/4}.services-home{background:#0c0c12}.services-home-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:90px}.services-home-copy{position:sticky;top:130px;align-self:start}.services-home-copy h2{font-size:clamp(3rem,4.6vw,5rem);margin:22px 0}.services-home-copy p{max-width:520px}.service-stack{border-top:1px solid var(--line)}.service-line{display:grid;grid-template-columns:55px 1fr .7fr 30px;gap:25px;align-items:center;padding:34px 0;border-bottom:1px solid var(--line);transition:.25s}.service-line:hover{padding-left:15px;background:linear-gradient(90deg,rgba(142,92,255,.08),transparent)}.service-line>span{color:var(--purple2);font-size:.72rem}.service-line h3{font-size:2rem;margin:0}.service-line p{margin:0;font-size:.9rem}.service-line b{font-size:1.3rem}.sophie-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:100px;align-items:center}.sophie-photo{position:relative}.sophie-photo img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:50% 50% 8px 8px}.sophie-photo span{position:absolute;bottom:20px;left:20px;background:#09090d;padding:9px 13px;font-size:.68rem;letter-spacing:.12em}.sophie-copy h2{margin:18px 0 35px}.sophie-copy p{max-width:720px;font-size:1.06rem}.t112-feature{min-height:760px;position:relative;display:flex;align-items:center}.t112-bg,.t112-overlay{position:absolute;inset:0}.t112-bg img{width:100%;height:100%;object-fit:cover}.t112-overlay{background:linear-gradient(90deg,rgba(5,5,8,.96),rgba(5,5,8,.62),rgba(5,5,8,.16))}.t112-copy{position:relative;z-index:2}.t112-badge{display:inline-block;padding:8px 12px;border:1px solid rgba(193,164,255,.35);border-radius:999px;font-size:.67rem;letter-spacing:.12em;text-transform:uppercase}.t112-copy h2{font-size:clamp(5rem,11vw,12rem);margin:22px 0}.t112-copy p{max-width:620px;font-size:1.1rem;color:#d6d1db}.final-card{display:grid;grid-template-columns:1.1fr .7fr;gap:80px;padding:70px;border:1px solid var(--line);background:radial-gradient(circle at 85% 10%,rgba(142,92,255,.22),transparent 34%),#0d0d13}.final-card h2{font-size:clamp(3rem,5.2vw,5.7rem);margin:15px 0}.final-card>div:last-child{align-self:end}.final-card .button{margin-top:20px}
.page-hero-v8{min-height:82svh;position:relative;display:flex;align-items:flex-end}.page-hero-media,.page-hero-overlay{position:absolute;inset:0}.page-hero-media img{width:100%;height:100%;object-fit:cover}.page-hero-overlay{background:linear-gradient(90deg,rgba(5,5,8,.95),rgba(5,5,8,.5),rgba(5,5,8,.1)),linear-gradient(0deg,rgba(5,5,8,.8),transparent)}.page-hero-copy{position:relative;z-index:2;padding:var(--header) 0 9vh}.page-hero-copy h1{margin:24px 0}.page-hero-copy>p:last-child{font-size:1.2rem;color:#d7d2db}.service-index-head{display:grid;grid-template-columns:.35fr 1fr;gap:30px;margin-bottom:90px}.service-index-head h2{margin:0}.service-chapter{display:grid;grid-template-columns:70px .75fr 1.25fr;gap:45px;align-items:center;padding:90px 0;border-top:1px solid var(--line)}.service-chapter.reverse{grid-template-columns:70px 1.25fr .75fr}.service-chapter.reverse .service-image{grid-column:2;grid-row:1}.service-chapter.reverse .service-copy{grid-column:3}.service-number{font-size:.75rem;color:var(--purple2);align-self:start}.service-copy>span{font-size:.7rem;text-transform:uppercase;letter-spacing:.14em;color:var(--purple2)}.service-copy h3{font-size:clamp(2.7rem,4vw,4.7rem);margin:12px 0 25px}.service-copy p{font-size:1.04rem}.service-copy ul{list-style:none;padding:0;margin:30px 0;display:grid;grid-template-columns:1fr 1fr;gap:11px}.service-copy li{color:#d4d0da;font-size:.86rem}.service-copy li::before{content:"—";color:var(--purple2);margin-right:8px}.service-copy>a{font-weight:850}.service-image{height:620px;overflow:hidden}.service-image img{width:100%;height:100%;object-fit:cover;transition:.8s}.service-image:hover img{transform:scale(1.04)}.process-v8{background:#0d0d13}.process-grid-v8{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);margin-top:50px}.process-grid-v8 article{min-height:310px;padding:30px;border-right:1px solid var(--line)}.process-grid-v8 article:last-child{border:0}.process-grid-v8 span{color:var(--purple2);font-size:.72rem}.process-grid-v8 h3{margin-top:110px;font-size:1.7rem}.quote-strip{padding:42px 0;background:var(--purple);color:#fff}.quote-strip .shell{display:flex;justify-content:space-between;align-items:center}.quote-strip p{color:#fff;margin:0;font-size:1.7rem;font-weight:850;letter-spacing:-.04em}.quote-strip a{font-weight:850}
.about-hero-v8{padding:calc(var(--header) + 85px) 0 120px;background:radial-gradient(circle at 70% 10%,rgba(142,92,255,.16),transparent 30%)}.about-hero-grid{display:grid;grid-template-columns:1.1fr .75fr;gap:80px;align-items:end}.about-title h1{margin:25px 0}.about-title>p:last-child{max-width:650px;font-size:1.15rem}.about-photo{position:relative}.about-photo>img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:50% 50% 0 0}.about-stamp{position:absolute;left:-60px;bottom:50px;background:var(--purple);width:180px;height:180px;border-radius:50%;display:flex;align-items:center;justify-content:center;gap:10px}.about-stamp strong{font-size:5rem;line-height:1}.about-stamp span{font-size:.7rem;text-transform:uppercase}.story-grid{display:grid;grid-template-columns:.3fr 1.1fr .6fr;gap:60px}.story-copy h2{margin-bottom:35px}.story-copy p{font-size:1.08rem}.story-aside{align-self:end;border-left:1px solid var(--purple);padding-left:25px}.story-aside blockquote{margin:0;font-size:1.3rem;font-weight:750;letter-spacing:-.025em}.story-aside span{display:block;color:var(--muted);margin-top:16px}.brand-system{background:#0d0d13}.brand-system-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:85px;align-items:center}.brand-board img{width:100%;border:1px solid var(--line)}.brand-copy h2{margin:15px 0 30px}.brand-values{display:flex;flex-wrap:wrap;gap:8px;margin-top:32px}.brand-values span{border:1px solid var(--line);padding:9px 12px;border-radius:999px;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em}.timeline-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:60px;border-top:1px solid var(--line)}.timeline-grid article{padding:28px;border-right:1px solid var(--line);min-height:250px}.timeline-grid strong{font-size:2.5rem}.timeline-grid p{margin-top:90px}.t112-about{min-height:760px;position:relative;display:flex;align-items:center}.t112-about-media,.t112-about-overlay{position:absolute;inset:0}.t112-about-media img{width:100%;height:100%;object-fit:cover}.t112-about-overlay{background:linear-gradient(90deg,rgba(5,5,8,.95),rgba(5,5,8,.45))}.t112-about-copy{position:relative;z-index:2}.t112-about-copy h2{font-size:clamp(5rem,10vw,11rem);margin:20px 0}.t112-about-copy p{max-width:600px;font-size:1.1rem;color:#d7d2dc}
.portfolio-hero-v8{min-height:85svh;position:relative;display:flex;align-items:flex-end;overflow:hidden}.portfolio-wall,.portfolio-wall-overlay{position:absolute;inset:0}.portfolio-wall{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,1fr);gap:5px;transform:scale(1.04)}.portfolio-wall img{width:100%;height:100%;object-fit:cover}.portfolio-wall-overlay{background:linear-gradient(90deg,rgba(5,5,8,.95),rgba(5,5,8,.55),rgba(5,5,8,.3)),linear-gradient(0deg,rgba(5,5,8,.85),transparent)}.portfolio-hero-v8>.shell{position:relative;z-index:2;padding:var(--header) 0 8vh}.portfolio-hero-v8 h1{margin:25px 0}.portfolio-hero-v8>.shell>p:last-child{font-size:1.1rem;color:#d7d2db;max-width:620px}.portfolio-toolbar{position:sticky;top:72px;z-index:100;background:rgba(8,8,12,.92);backdrop-filter:blur(22px);border-block:1px solid var(--line)}.portfolio-toolbar>.shell{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:86px}.portfolio-counter{display:flex;align-items:baseline;gap:10px;white-space:nowrap}.portfolio-counter strong{font-size:2rem}.portfolio-counter span{font-size:.68rem;text-transform:uppercase;color:var(--muted);letter-spacing:.1em}.filter-bar{display:flex;gap:7px;overflow:auto;padding:12px 0}.filter-bar button{border:1px solid var(--line);background:transparent;color:var(--muted);padding:9px 13px;border-radius:999px;cursor:pointer;white-space:nowrap;font-size:.73rem;font-weight:800}.filter-bar button span{opacity:.55}.filter-bar button.active,.filter-bar button:hover{color:#fff;border-color:var(--purple);background:rgba(142,92,255,.12)}.portfolio-section{padding:35px 0 120px}.portfolio-grid-v8{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-flow:dense;gap:12px}.portfolio-tile{grid-column:span 4;min-height:470px;position:relative;overflow:hidden;cursor:pointer;background:#111}.portfolio-tile.wide{grid-column:span 8}.portfolio-tile.portrait{grid-row:span 2;min-height:760px}.portfolio-tile.standard:nth-child(6n+2){grid-column:span 5}.portfolio-tile.standard:nth-child(6n+3){grid-column:span 7}.portfolio-tile.hidden{display:none}.portfolio-tile img{width:100%;height:100%;object-fit:cover;transition:.8s var(--ease)}.portfolio-tile::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(4,4,7,.94),transparent 58%)}.portfolio-tile:hover img{transform:scale(1.045)}.tile-index{position:absolute;z-index:2;top:18px;right:18px;font-size:.65rem;letter-spacing:.1em;background:rgba(5,5,8,.5);padding:6px 8px;backdrop-filter:blur(10px)}.tile-info{position:absolute;z-index:2;left:24px;right:24px;bottom:20px}.tile-info span{font-size:.66rem;text-transform:uppercase;letter-spacing:.13em;color:var(--purple2)}.tile-info h2{font-size:1.8rem;margin:8px 0}.tile-info p{font-size:.85rem;margin:0;max-width:42ch}.portfolio-feed-status{text-align:center;color:var(--muted);padding:20px}.portfolio-end{padding-top:30px}
.contact-hero-v8{min-height:78svh;position:relative;display:flex;align-items:flex-end}.contact-hero-media,.contact-hero-overlay{position:absolute;inset:0}.contact-hero-media img{width:100%;height:100%;object-fit:cover}.contact-hero-overlay{background:linear-gradient(90deg,rgba(5,5,8,.95),rgba(5,5,8,.52),rgba(5,5,8,.18)),linear-gradient(0deg,rgba(5,5,8,.8),transparent)}.contact-hero-v8>.shell{position:relative;z-index:2;padding:var(--header) 0 8vh}.contact-hero-v8 h1{margin:25px 0}.contact-hero-v8>.shell>p:last-child{font-size:1.1rem;color:#d7d2db}.contact-layout{display:grid;grid-template-columns:.65fr 1.35fr;gap:90px;align-items:start}.contact-aside{position:sticky;top:120px}.contact-mail,.contact-note{display:grid;grid-template-columns:1fr auto;gap:5px;padding:22px 0;border-top:1px solid var(--line)}.contact-mail span,.contact-note span{font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.contact-mail strong,.contact-note strong{grid-column:1;font-size:1.05rem}.contact-mail b{grid-column:2;grid-row:1/3;align-self:center}.contact-aside>p{font-size:.88rem}.contact-mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:30px}.contact-mini-grid img{width:100%;height:190px;object-fit:cover}.contact-form-v8{padding:55px;border:1px solid var(--line);background:radial-gradient(circle at 90% 0%,rgba(142,92,255,.14),transparent 28%),#0d0d13}.contact-form-v8 h2{font-size:clamp(3rem,5vw,5rem);margin:15px 0 45px}.contact-form-v8 form{display:grid;gap:18px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact-form-v8 label{display:grid;gap:8px;color:#d5d1db;font-size:.78rem;font-weight:760}.contact-form-v8 input,.contact-form-v8 select,.contact-form-v8 textarea{width:100%;border:1px solid var(--line);background:#08080d;color:#fff;padding:15px 16px;outline:none;border-radius:0}.contact-form-v8 select option{color:#111}.contact-form-v8 input:focus,.contact-form-v8 select:focus,.contact-form-v8 textarea:focus{border-color:var(--purple2);box-shadow:0 0 0 3px rgba(142,92,255,.12)}.contact-form-v8 textarea{resize:vertical;min-height:170px}.consent{grid-template-columns:20px 1fr!important;align-items:start}.consent input{width:18px;height:18px;padding:0}.form-submit{display:flex;gap:20px;align-items:center;margin-top:10px}.form-submit p{font-size:.72rem;margin:0}.form-status{font-weight:800;color:var(--purple2)}.form-status.success{color:#62e59a}.form-status.error{color:#ff8066}.hp-field{position:absolute!important;left:-9999px!important}.contact-reel{overflow:hidden;padding-bottom:120px}.contact-reel>div{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;width:calc(100% + 80px);margin-left:-40px}.contact-reel img{width:100%;height:340px;object-fit:cover}.contact-reel img:nth-child(even){transform:translateY(45px)}
.legal-hero-v8{padding:calc(var(--header) + 110px) 0 90px;background:radial-gradient(circle at 70% 0%,rgba(142,92,255,.18),transparent 32%)}.legal-hero-v8 h1{margin:20px 0}.legal-copy{max-width:920px}.legal-copy h2{font-size:2rem;margin:50px 0 12px}.legal-copy p{font-size:1.03rem}.legal-copy a{color:var(--purple2)}.notfound-v8{min-height:100svh;display:flex;align-items:center;position:relative}.notfound-media,.notfound-overlay{position:absolute;inset:0}.notfound-media img{width:100%;height:100%;object-fit:cover}.notfound-overlay{background:linear-gradient(90deg,rgba(5,5,8,.98),rgba(5,5,8,.55))}.notfound-v8>.shell{position:relative;z-index:2}.notfound-v8>.shell>span{font-size:12rem;color:rgba(255,255,255,.09);font-weight:950;line-height:.7}.notfound-v8 h1{margin:25px 0}
.site-footer{padding:100px 0 28px;background:#050508;border-top:1px solid var(--line)}.footer-grid{display:grid;grid-template-columns:1.3fr .55fr .55fr .55fr;gap:70px}.footer-lead img{width:285px}.footer-lead h2{font-size:3.5rem;margin:45px 0 20px}.footer-links,.footer-meta{display:grid;align-content:start;gap:11px;color:var(--muted);font-size:.86rem}.footer-links strong,.footer-meta strong{color:#fff;margin-bottom:10px}.footer-links a:hover{color:var(--purple2)}.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:70px;padding-top:25px;border-top:1px solid var(--line);font-size:.72rem;color:var(--muted2)}.lightbox{position:fixed;inset:0;z-index:3000;background:rgba(3,3,6,.96);backdrop-filter:blur(22px);display:none;align-items:center;justify-content:center;padding:60px}.lightbox.open{display:flex}.lightbox figure{margin:0;max-width:min(1600px,90vw);max-height:90vh;position:relative}.lightbox img{max-height:78vh;max-width:100%;margin:auto;border:1px solid var(--line);box-shadow:var(--shadow)}.lightbox figcaption{text-align:center;margin-top:15px}.lightbox figcaption span{color:var(--purple2);font-size:.65rem;text-transform:uppercase;letter-spacing:.14em}.lightbox figcaption strong{display:block;font-size:1.2rem}.lightbox figcaption p{margin:4px 0;font-size:.82rem}.lightbox-close,.lightbox-prev,.lightbox-next{position:absolute;border:1px solid var(--line);background:rgba(12,12,18,.78);color:#fff;backdrop-filter:blur(12px);cursor:pointer;border-radius:50%;display:grid;place-items:center}.lightbox-close{right:25px;top:20px;width:48px;height:48px;font-size:1.7rem}.lightbox-prev,.lightbox-next{top:50%;transform:translateY(-50%);width:54px;height:54px;font-size:2rem}.lightbox-prev{left:25px}.lightbox-next{right:25px}.lightbox-loader{position:absolute;left:50%;top:40%;width:36px;height:36px;border:2px solid rgba(255,255,255,.2);border-top-color:var(--purple2);border-radius:50%;animation:spin .8s linear infinite;display:none}.lightbox.loading .lightbox-loader{display:block}@keyframes spin{to{transform:rotate(360deg)}}.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s var(--ease),transform .8s var(--ease)}.reveal.visible{opacity:1;transform:none}
@media(max-width:1200px){:root{--shell:min(100% - 48px,1300px)}.availability{display:none}.header-grid{grid-template-columns:245px 1fr auto}.brand img{width:230px}.intro-grid{grid-template-columns:.2fr 1fr}.intro-facts{grid-column:2}.editorial-grid{grid-template-columns:1fr 1fr;grid-template-rows:500px 320px 320px}.frame-a{grid-row:auto;grid-column:1/3}.frame-b{grid-column:auto}.services-home-grid,.sophie-grid,.about-hero-grid,.brand-system-grid{gap:55px}.portfolio-tile{grid-column:span 6}.portfolio-tile.wide{grid-column:span 6}.portfolio-tile.standard:nth-child(n){grid-column:span 6}.portfolio-tile.portrait{min-height:650px}.service-chapter,.service-chapter.reverse{grid-template-columns:50px 1fr}.service-image,.service-chapter.reverse .service-image{grid-column:2;grid-row:auto;height:540px}.service-chapter.reverse .service-copy{grid-column:2}.story-grid{grid-template-columns:.2fr 1fr}.story-aside{grid-column:2}.footer-grid{grid-template-columns:1fr 1fr}.footer-lead{grid-column:1/-1}}
@media(max-width:920px){:root{--header:72px}.header-grid{grid-template-columns:1fr auto}.brand img{width:220px}.main-nav{position:fixed;top:82px;left:20px;right:20px;display:grid;gap:4px;padding:22px;background:rgba(8,8,12,.98);border:1px solid var(--line);opacity:0;transform:translateY(-12px);pointer-events:none;transition:.25s;box-shadow:var(--shadow)}.main-nav.open{opacity:1;transform:none;pointer-events:auto}.main-nav a{padding:10px}.main-nav a::after{display:none}.header-cta{display:none}.menu-toggle{display:block}.hero-copy h1{font-size:clamp(5.3rem,17vw,9rem)}.hero-captions{display:none}.hero-index{right:20px}.intro-grid,.services-home-grid,.sophie-grid,.about-hero-grid,.story-grid,.brand-system-grid,.contact-layout{grid-template-columns:1fr}.intro-facts,.story-aside{grid-column:auto}.services-home-copy,.contact-aside{position:static}.service-line{grid-template-columns:45px 1fr 25px}.service-line p{display:none}.sophie-photo{max-width:650px}.t112-copy h2{font-size:8rem}.final-card{grid-template-columns:1fr}.service-index-head{grid-template-columns:1fr}.process-grid-v8{grid-template-columns:1fr 1fr}.process-grid-v8 article:nth-child(2){border-right:0}.process-grid-v8 article:nth-child(n+3){border-top:1px solid var(--line)}.about-stamp{left:auto;right:-10px}.timeline-grid{grid-template-columns:1fr 1fr}.timeline-grid article:nth-child(2){border-right:0}.portfolio-wall{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(3,1fr)}.portfolio-toolbar>.shell{display:block}.portfolio-counter{padding-top:12px}.portfolio-tile,.portfolio-tile.wide,.portfolio-tile.portrait,.portfolio-tile.standard:nth-child(n){grid-column:span 6;min-height:520px;grid-row:auto}.contact-form-v8{padding:38px}.footer-grid{grid-template-columns:1fr 1fr}.footer-lead{grid-column:1/-1}}
@media(max-width:660px){:root{--shell:calc(100% - 28px)}.section{padding:95px 0}.brand img{width:200px}.header-actions{gap:5px}.hero-v8{min-height:760px}.hero-copy{padding-bottom:15vh}.hero-copy h1{font-size:clamp(4.7rem,21vw,7.5rem)}.hero-intro{font-size:1rem}.hero-index{display:none}.hero-nav{left:14px;bottom:25px}.intro-grid{display:block}.intro-copy{margin-top:25px}.intro-copy h2{font-size:3.3rem}.intro-facts{margin-top:50px}.section-heading{display:block}.section-heading>a{display:inline-block;margin-top:18px}.editorial-grid{display:block}.frame-card{height:420px;margin-bottom:10px}.frame-a{height:560px}.services-home-grid{gap:45px}.service-line{grid-template-columns:35px 1fr 22px;padding:27px 0}.service-line h3{font-size:1.55rem}.sophie-photo img{border-radius:50% 50% 0 0}.t112-feature{min-height:650px}.t112-copy h2{font-size:5.2rem}.final-card{padding:35px 22px;gap:30px}.page-hero-v8{min-height:720px}.page-hero-copy h1{font-size:4.6rem}.service-chapter,.service-chapter.reverse{grid-template-columns:28px 1fr;gap:16px;padding:65px 0}.service-copy ul{grid-template-columns:1fr}.service-image{height:430px}.process-grid-v8{grid-template-columns:1fr}.process-grid-v8 article{border-right:0;border-top:1px solid var(--line)}.quote-strip .shell{display:block}.quote-strip a{display:inline-block;margin-top:15px}.about-title h1{font-size:4.8rem}.about-photo{max-width:520px}.about-stamp{width:130px;height:130px}.about-stamp strong{font-size:3.4rem}.story-copy h2{font-size:3.5rem}.timeline-grid{grid-template-columns:1fr}.timeline-grid article{border-right:0;border-top:1px solid var(--line)}.timeline-grid p{margin-top:45px}.t112-about{min-height:650px}.t112-about-copy h2{font-size:5rem}.portfolio-hero-v8{min-height:720px}.portfolio-hero-v8 h1{font-size:4.8rem}.portfolio-toolbar{top:72px}.portfolio-grid-v8{display:block}.portfolio-tile,.portfolio-tile.wide,.portfolio-tile.portrait,.portfolio-tile.standard:nth-child(n){min-height:0;aspect-ratio:4/5;margin-bottom:10px}.portfolio-tile.wide{aspect-ratio:16/11}.portfolio-tile.portrait{aspect-ratio:3/4}.filter-bar{padding-bottom:14px}.contact-hero-v8{min-height:690px}.contact-hero-v8 h1{font-size:4.8rem}.contact-form-v8{padding:28px 18px}.contact-form-v8 h2{font-size:3.3rem}.form-row{grid-template-columns:1fr}.form-submit{display:block}.form-submit p{margin-top:12px}.contact-mini-grid{display:none}.contact-reel>div{grid-template-columns:1fr 1fr;width:100%;margin:0}.contact-reel img{height:220px}.contact-reel img:nth-child(even){transform:none}.footer-grid{grid-template-columns:1fr}.footer-lead{grid-column:auto}.footer-lead h2{font-size:3rem}.footer-bottom{display:grid}.lightbox{padding:70px 10px}.lightbox-prev,.lightbox-next{top:auto;bottom:18px}.lightbox-prev{left:calc(50% - 60px)}.lightbox-next{right:calc(50% - 60px)}.notfound-v8>.shell>span{font-size:7rem}}
@media(pointer:coarse){.cursor-light{display:none}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}.signal-track{animation:none}}

/* Over SW — brand section without brand-board photo */
.page-about .brand-system{position:relative;overflow:hidden;background:radial-gradient(circle at 18% 30%,rgba(139,92,246,.16),transparent 32%),linear-gradient(180deg,#0d0d13 0%,#09090e 100%)}
.page-about .brand-system::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.024) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.024) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(90deg,#000,transparent 70%);pointer-events:none}
.page-about .brand-system-grid{position:relative;z-index:1;grid-template-columns:.9fr 1.1fr;gap:clamp(60px,8vw,130px);align-items:center}
.page-about .brand-signature{position:relative;isolation:isolate;min-height:570px;display:flex;flex-direction:column;justify-content:flex-end;padding:clamp(30px,4vw,58px);overflow:hidden;border:1px solid rgba(255,255,255,.1);background:linear-gradient(145deg,rgba(255,255,255,.05),rgba(255,255,255,.012));box-shadow:0 45px 100px rgba(0,0,0,.38)}
.page-about .brand-signature::before{content:"";position:absolute;inset:auto -18% -36% auto;width:72%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(151,98,255,.36),transparent 68%);filter:blur(18px);z-index:-1}
.page-about .brand-signature::after{content:"";position:absolute;inset:22px;border:1px solid rgba(255,255,255,.055);pointer-events:none}
.page-about .brand-signature-code{position:absolute;top:34px;left:38px;color:#b7aec4;font-size:.68rem;letter-spacing:.22em;text-transform:uppercase}
.page-about .brand-signature-mark{display:block;font-family:Poppins,Inter,sans-serif;font-size:clamp(10rem,22vw,20rem);font-weight:800;line-height:.68;letter-spacing:-.105em;background:linear-gradient(135deg,#fff 0 31%,#b894ff 48%,#7549ec 84%);-webkit-background-clip:text;background-clip:text;color:transparent;transform:translateX(-.05em);text-shadow:0 24px 75px rgba(111,67,220,.22)}
.page-about .brand-signature-line{display:grid;grid-template-columns:72px 1fr;align-items:center;gap:18px;margin-top:44px;color:#efeaf8;text-transform:uppercase;letter-spacing:.2em}
.page-about .brand-signature-line span{height:1px;background:linear-gradient(90deg,#a978ff,rgba(169,120,255,.12))}
.page-about .brand-signature-line small{font-size:.62rem;line-height:1.5}
.page-about .brand-orbit{position:absolute;right:-10%;top:-12%;width:52%;aspect-ratio:1;border:1px solid rgba(174,132,255,.28);border-radius:50%}
.page-about .brand-orbit::before,.page-about .brand-orbit::after{content:"";position:absolute;border:1px solid rgba(174,132,255,.13);border-radius:50%}
.page-about .brand-orbit::before{inset:14%}.page-about .brand-orbit::after{inset:30%}
.page-about .brand-copy h2{max-width:12ch}
.page-about .brand-copy>p:not(.eyebrow){max-width:610px;font-size:1.08rem}
@media(max-width:920px){.page-about .brand-system-grid{grid-template-columns:1fr}.page-about .brand-signature{min-height:440px}.page-about .brand-signature-mark{font-size:clamp(9rem,45vw,17rem)}}
@media(max-width:560px){.page-about .brand-signature{min-height:360px;padding:28px}.page-about .brand-signature-code{top:24px;left:28px}.page-about .brand-signature-line{grid-template-columns:42px 1fr;gap:12px;margin-top:34px}.page-about .brand-signature-line small{font-size:.52rem;letter-spacing:.13em}}
/* Over SW — bestaande fotografie in het merkblok */
.page-about .brand-feature-photo{position:relative;min-height:570px;margin:0;overflow:hidden;border:1px solid rgba(255,255,255,.1);background:#0b0b10;box-shadow:0 45px 100px rgba(0,0,0,.38)}
.page-about .brand-feature-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 42%,rgba(5,5,8,.88) 100%),linear-gradient(115deg,rgba(8,8,12,.15),transparent 55%);pointer-events:none}
.page-about .brand-feature-photo picture,.page-about .brand-feature-photo img{width:100%;height:100%;display:block}
.page-about .brand-feature-photo img{position:absolute;inset:0;object-fit:cover;object-position:center;transition:transform 1.1s var(--ease),filter .4s ease}
.page-about .brand-feature-photo:hover img{transform:scale(1.035);filter:saturate(1.06) contrast(1.03)}
.page-about .brand-feature-photo figcaption{position:absolute;z-index:2;left:clamp(24px,4vw,48px);right:clamp(24px,4vw,48px);bottom:clamp(22px,4vw,42px);display:flex;align-items:end;justify-content:space-between;gap:24px}
.page-about .brand-feature-photo figcaption span{font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--purple2);font-weight:800}
.page-about .brand-feature-photo figcaption strong{font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:#fff;text-align:right}
@media(max-width:920px){.page-about .brand-feature-photo{min-height:500px}}
@media(max-width:560px){.page-about .brand-feature-photo{min-height:420px}.page-about .brand-feature-photo figcaption{display:grid;gap:6px}.page-about .brand-feature-photo figcaption strong{text-align:left}}

/* =========================================================
   SW Mediaproducties — Contact v9
   ========================================================= */
.page-contact-v9{background:#07070b}
.page-contact-v9 .contact-v9-hero{min-height:900px;position:relative;display:flex;align-items:flex-end;overflow:hidden}
.page-contact-v9 .contact-v9-bg,.page-contact-v9 .contact-v9-shade,.page-contact-v9 .contact-v9-gridlines{position:absolute;inset:0}
.page-contact-v9 .contact-v9-bg img{width:100%;height:100%;object-fit:cover;object-position:center 48%}
.page-contact-v9 .contact-v9-shade{background:linear-gradient(90deg,rgba(5,5,8,.98) 0%,rgba(5,5,8,.82) 42%,rgba(5,5,8,.28) 72%,rgba(5,5,8,.2) 100%),linear-gradient(0deg,rgba(5,5,8,.92) 0%,transparent 58%)}
.page-contact-v9 .contact-v9-gridlines{opacity:.1;background-image:linear-gradient(rgba(255,255,255,.17) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.17) 1px,transparent 1px);background-size:150px 150px;mask-image:linear-gradient(90deg,#000 0 60%,transparent 90%)}
.page-contact-v9 .contact-v9-hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(340px,.65fr);gap:clamp(50px,7vw,120px);align-items:end;padding:calc(var(--header) + 110px) 0 95px}
.page-contact-v9 .contact-v9-copy{max-width:990px}
.page-contact-v9 .contact-v9-copy h1{font-size:clamp(5.2rem,8.8vw,10rem);max-width:9ch;margin:28px 0 35px}
.page-contact-v9 .contact-v9-intro{max-width:740px;color:#d7d2dd;font-size:clamp(1.05rem,1.45vw,1.34rem)}
.page-contact-v9 .contact-v9-pills{display:flex;gap:10px;flex-wrap:wrap;margin-top:36px}
.page-contact-v9 .contact-v9-pills span{display:flex;align-items:center;gap:9px;border:1px solid rgba(255,255,255,.16);background:rgba(8,8,12,.42);backdrop-filter:blur(12px);padding:9px 13px;border-radius:999px;color:#e7e3ec;font-size:.72rem;font-weight:800;letter-spacing:.04em}
.page-contact-v9 .contact-v9-pills i{width:6px;height:6px;border-radius:50%;background:#7eebae;box-shadow:0 0 10px #7eebae}
.page-contact-v9 .contact-desk-card{align-self:end;background:rgba(10,10,16,.8);backdrop-filter:blur(22px);border:1px solid rgba(255,255,255,.18);box-shadow:0 30px 90px rgba(0,0,0,.42);padding:30px}
.page-contact-v9 .contact-desk-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:18px;border-bottom:1px solid var(--line);text-transform:uppercase;letter-spacing:.14em;font-size:.68rem;color:#d8d3e0}
.page-contact-v9 .contact-desk-head b{color:#7eebae}
.page-contact-v9 .contact-desk-card>a,.page-contact-v9 .contact-desk-card>div:not(.contact-desk-head){position:relative;display:grid;gap:5px;padding:19px 0;border-bottom:1px solid var(--line)}
.page-contact-v9 .contact-desk-card small{font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.page-contact-v9 .contact-desk-card strong{font-size:1rem;letter-spacing:-.02em}
.page-contact-v9 .contact-desk-card>a>span{position:absolute;right:0;bottom:20px;color:var(--purple2)}
.page-contact-v9 .contact-desk-card>p{margin:20px 0 0;font-size:.78rem;line-height:1.7}

.page-contact-v9 .contact-v9-main{background:radial-gradient(circle at 80% 6%,rgba(142,92,255,.12),transparent 24%),#08080d}
.page-contact-v9 .contact-v9-layout{display:grid;grid-template-columns:minmax(300px,.62fr) minmax(0,1.38fr);gap:clamp(50px,7vw,110px);align-items:start}
.page-contact-v9 .contact-v9-aside{position:sticky;top:110px}
.page-contact-v9 .contact-v9-aside h2{font-size:clamp(3.4rem,5vw,5.8rem);margin:18px 0 40px}
.page-contact-v9 .contact-v9-steps{list-style:none;padding:0;margin:0 0 45px;border-top:1px solid var(--line)}
.page-contact-v9 .contact-v9-steps li{display:grid;grid-template-columns:44px 1fr;gap:18px;padding:23px 0;border-bottom:1px solid var(--line)}
.page-contact-v9 .contact-v9-steps li>span{color:var(--purple2);font-size:.73rem;font-weight:850;letter-spacing:.08em}
.page-contact-v9 .contact-v9-steps strong{font-size:1rem}
.page-contact-v9 .contact-v9-steps p{font-size:.84rem;margin:6px 0 0;line-height:1.65}
.page-contact-v9 .contact-v9-portrait{position:relative;margin:0 0 22px;overflow:hidden;aspect-ratio:1.55/1;border:1px solid var(--line);background:#111}
.page-contact-v9 .contact-v9-portrait::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(4,4,7,.92),transparent 65%)}
.page-contact-v9 .contact-v9-portrait img{width:100%;height:100%;object-fit:cover;object-position:center 38%}
.page-contact-v9 .contact-v9-portrait figcaption{position:absolute;z-index:2;left:18px;bottom:16px;display:grid}
.page-contact-v9 .contact-v9-portrait figcaption span{font-weight:850}
.page-contact-v9 .contact-v9-portrait figcaption strong{color:var(--purple2);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase}
.page-contact-v9 .contact-v9-security{display:grid;grid-template-columns:38px 1fr;gap:15px;padding:20px;border:1px solid rgba(126,235,174,.2);background:rgba(126,235,174,.035)}
.page-contact-v9 .contact-v9-security svg{width:27px;color:#7eebae}
.page-contact-v9 .contact-v9-security strong{display:block;font-size:.86rem}
.page-contact-v9 .contact-v9-security p{font-size:.76rem;margin:3px 0 0;line-height:1.55}

.page-contact-v9 .contact-form-v9{position:relative;border:1px solid rgba(255,255,255,.14);background:linear-gradient(160deg,rgba(255,255,255,.045),rgba(255,255,255,.015));box-shadow:0 40px 110px rgba(0,0,0,.38);padding:clamp(28px,4.5vw,70px)}
.page-contact-v9 .contact-form-v9::before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,var(--purple),var(--purple2),var(--orange))}
.page-contact-v9 .contact-form-v9-head{display:flex;justify-content:space-between;gap:30px;align-items:start;margin-bottom:54px}
.page-contact-v9 .contact-form-v9-head h2{font-size:clamp(3.1rem,5.1vw,6rem);margin:15px 0 0;max-width:10ch}
.page-contact-v9 .contact-form-v9-head>span{font-size:.72rem;letter-spacing:.17em;color:var(--muted);padding-top:8px}
.page-contact-v9 .contact-form-v9 form{display:grid;gap:50px}
.page-contact-v9 .contact-form-v9 fieldset{border:0;padding:0;margin:0;min-width:0}
.page-contact-v9 .contact-form-v9 legend{display:flex;align-items:center;gap:16px;width:100%;padding:0 0 23px;margin-bottom:25px;border-bottom:1px solid var(--line)}
.page-contact-v9 .contact-form-v9 legend span{display:grid;place-items:center;width:32px;height:32px;border:1px solid rgba(193,164,255,.34);color:var(--purple2);font-size:.68rem;font-weight:850}
.page-contact-v9 .contact-form-v9 legend strong{font-size:1.1rem}
.page-contact-v9 .contact-service-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.page-contact-v9 .contact-service-option{display:block;cursor:pointer}
.page-contact-v9 .contact-service-option>input{position:absolute;opacity:0;pointer-events:none}
.page-contact-v9 .contact-service-card{position:relative;min-height:150px;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto 1fr;gap:8px 16px;padding:22px;border:1px solid var(--line);background:#0a0a0f;transition:.24s var(--ease)}
.page-contact-v9 .contact-service-card>b{color:var(--purple2);font-size:.68rem}
.page-contact-v9 .contact-service-card>strong{font-size:1.04rem}
.page-contact-v9 .contact-service-card>small{grid-column:1/-1;color:var(--muted);font-size:.78rem;line-height:1.55}
.page-contact-v9 .contact-service-card>i{position:absolute;right:16px;bottom:15px;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--purple);font-style:normal;font-size:.68rem;opacity:0;transform:scale(.7);transition:.2s}
.page-contact-v9 .contact-service-option:hover .contact-service-card{transform:translateY(-3px);border-color:rgba(193,164,255,.42);background:#0e0d15}
.page-contact-v9 .contact-service-option>input:checked+.contact-service-card{border-color:var(--purple2);background:linear-gradient(145deg,rgba(142,92,255,.16),#0b0a11)}
.page-contact-v9 .contact-service-option>input:checked+.contact-service-card>i{opacity:1;transform:scale(1)}
.page-contact-v9 .contact-service-option:last-child{grid-column:1/-1}
.page-contact-v9 .contact-service-option:last-child .contact-service-card{min-height:110px}
.page-contact-v9 .contact-form-v9 label{display:grid;gap:9px;color:#d8d4df;font-size:.76rem;font-weight:780}
.page-contact-v9 .contact-form-v9 label>em{color:var(--orange)}
.page-contact-v9 .contact-form-v9 input,.page-contact-v9 .contact-form-v9 textarea{width:100%;border:1px solid var(--line);background:#07070b;color:#fff;padding:16px 17px;outline:none;border-radius:0;transition:.2s}
.page-contact-v9 .contact-form-v9 input::placeholder,.page-contact-v9 .contact-form-v9 textarea::placeholder{color:#5f5b67}
.page-contact-v9 .contact-form-v9 input:focus,.page-contact-v9 .contact-form-v9 textarea:focus{border-color:var(--purple2);box-shadow:0 0 0 3px rgba(142,92,255,.13);background:#09090e}
.page-contact-v9 .contact-form-v9 .form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
.page-contact-v9 .contact-urgency{display:grid;gap:10px;margin-top:17px}
.page-contact-v9 .contact-urgency>span{font-size:.76rem;font-weight:780;color:#d8d4df}
.page-contact-v9 .contact-urgency>div{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.page-contact-v9 .contact-urgency label{display:block;cursor:pointer}
.page-contact-v9 .contact-urgency input{position:absolute;opacity:0;pointer-events:none}
.page-contact-v9 .contact-urgency b{display:block;text-align:center;padding:13px 10px;border:1px solid var(--line);background:#09090e;color:#a9a4b1;font-size:.74rem;transition:.2s}
.page-contact-v9 .contact-urgency label:hover b{border-color:rgba(193,164,255,.4);color:#fff}
.page-contact-v9 .contact-urgency input:checked+b{background:rgba(142,92,255,.15);border-color:var(--purple2);color:#fff}
.page-contact-v9 .message-label{position:relative}
.page-contact-v9 .message-label textarea{min-height:210px;resize:vertical}
.page-contact-v9 .message-meter{position:absolute;right:14px;bottom:12px;color:#6e6977;font-size:.65rem;background:#07070b;padding:4px 6px}
.page-contact-v9 .consent{grid-template-columns:22px 1fr!important;align-items:start;margin-top:16px;font-size:.72rem!important;line-height:1.55}
.page-contact-v9 .consent input{width:18px!important;height:18px;padding:0!important;accent-color:var(--purple)}
.page-contact-v9 .consent a{color:var(--purple2);text-decoration:underline;text-underline-offset:3px}
.page-contact-v9 .contact-submit-v9{display:grid;grid-template-columns:auto 1fr;gap:20px;align-items:center;padding-top:28px;border-top:1px solid var(--line)}
.page-contact-v9 .contact-submit-v9 button{min-width:230px;border:0;cursor:pointer}
.page-contact-v9 .contact-submit-v9 button:disabled{opacity:.55;cursor:wait;transform:none}
.page-contact-v9 .contact-submit-v9 strong{font-size:.8rem}
.page-contact-v9 .contact-submit-v9 p{font-size:.7rem;margin:3px 0 0}
.page-contact-v9 .form-status{min-height:0;padding:0;border:0;font-size:.85rem;line-height:1.55}
.page-contact-v9 .form-status:not(:empty){padding:18px 20px;border:1px solid var(--line);background:#0b0b10}
.page-contact-v9 .form-status.success{border-color:rgba(98,229,154,.35);background:rgba(98,229,154,.055);color:#8df0b7}
.page-contact-v9 .form-status.warning{border-color:rgba(255,193,92,.35);background:rgba(255,193,92,.055);color:#ffd18a}
.page-contact-v9 .form-status.error{border-color:rgba(255,128,102,.35);background:rgba(255,128,102,.055);color:#ff9d8a}
.page-contact-v9 .form-status strong{display:block;color:inherit;font-size:1rem;margin-bottom:3px}

.page-contact-v9 .contact-v9-after{padding:130px 0;background:#0c0c12;border-block:1px solid var(--line)}
.page-contact-v9 .contact-v9-after-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:55px}
.page-contact-v9 .contact-v9-after-head h2{font-size:clamp(3.5rem,5.5vw,6.2rem);margin:0;max-width:10ch;text-align:right}
.page-contact-v9 .contact-v9-after-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.page-contact-v9 .contact-v9-after-grid article{min-height:300px;padding:32px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:linear-gradient(145deg,rgba(255,255,255,.025),transparent);transition:.25s}
.page-contact-v9 .contact-v9-after-grid article:hover{background:linear-gradient(145deg,rgba(142,92,255,.12),transparent);transform:translateY(-5px)}
.page-contact-v9 .contact-v9-after-grid span{color:var(--purple2);font-size:.7rem;font-weight:850}
.page-contact-v9 .contact-v9-after-grid h3{font-size:2rem;margin:95px 0 14px}
.page-contact-v9 .contact-v9-after-grid p{font-size:.9rem;max-width:34ch}
.page-contact-v9 .contact-reel-v9{padding:0;overflow:hidden}
.page-contact-v9 .contact-reel-v9>div{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;width:100%;margin:0}
.page-contact-v9 .contact-reel-v9 img{height:360px;object-fit:cover;transform:none!important;filter:saturate(.88) contrast(1.02);transition:.6s var(--ease)}
.page-contact-v9 .contact-reel-v9 img:hover{filter:saturate(1.1) contrast(1.04);transform:scale(1.025)!important}

@media(max-width:1100px){
  .page-contact-v9 .contact-v9-hero-grid{grid-template-columns:1fr;gap:45px}
  .page-contact-v9 .contact-desk-card{max-width:540px}
  .page-contact-v9 .contact-v9-layout{grid-template-columns:1fr}
  .page-contact-v9 .contact-v9-aside{position:static;display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start}
  .page-contact-v9 .contact-v9-aside>.section-code,.page-contact-v9 .contact-v9-aside>h2,.page-contact-v9 .contact-v9-steps{grid-column:1/-1}
  .page-contact-v9 .contact-v9-portrait,.page-contact-v9 .contact-v9-security{margin:0}
}
@media(max-width:760px){
  .page-contact-v9 .contact-v9-hero{min-height:820px}
  .page-contact-v9 .contact-v9-hero-grid{padding:calc(var(--header) + 80px) 0 60px}
  .page-contact-v9 .contact-v9-copy h1{font-size:clamp(4.4rem,18vw,7rem)}
  .page-contact-v9 .contact-v9-pills{display:grid;justify-items:start}
  .page-contact-v9 .contact-v9-aside{display:block}
  .page-contact-v9 .contact-v9-portrait{margin-bottom:16px}
  .page-contact-v9 .contact-form-v9{padding:34px 18px}
  .page-contact-v9 .contact-form-v9-head{display:block;margin-bottom:42px}
  .page-contact-v9 .contact-form-v9-head>span{display:none}
  .page-contact-v9 .contact-form-v9-head h2{font-size:3.6rem}
  .page-contact-v9 .contact-service-options{grid-template-columns:1fr}
  .page-contact-v9 .contact-service-option:last-child{grid-column:auto}
  .page-contact-v9 .contact-service-card,.page-contact-v9 .contact-service-option:last-child .contact-service-card{min-height:120px}
  .page-contact-v9 .contact-form-v9 .form-row{grid-template-columns:1fr}
  .page-contact-v9 .contact-urgency>div{grid-template-columns:1fr}
  .page-contact-v9 .contact-submit-v9{grid-template-columns:1fr}
  .page-contact-v9 .contact-submit-v9 button{width:100%}
  .page-contact-v9 .contact-v9-after{padding:90px 0}
  .page-contact-v9 .contact-v9-after-head{display:block}
  .page-contact-v9 .contact-v9-after-head h2{text-align:left;margin-top:18px;font-size:3.8rem}
  .page-contact-v9 .contact-v9-after-grid{grid-template-columns:1fr}
  .page-contact-v9 .contact-v9-after-grid article{min-height:240px}
  .page-contact-v9 .contact-v9-after-grid h3{margin-top:60px}
  .page-contact-v9 .contact-reel-v9>div{grid-template-columns:1fr 1fr}
  .page-contact-v9 .contact-reel-v9 img{height:230px}
}
@media(max-width:480px){
  .page-contact-v9 .contact-desk-card{padding:22px}
  .page-contact-v9 .contact-v9-copy h1{font-size:4.15rem}
  .page-contact-v9 .contact-form-v9-head h2{font-size:3.1rem}
  .page-contact-v9 .contact-v9-after-head h2{font-size:3.25rem}
}

/* ---------------------------------------------------------
   Contact v10.1 — normaal en overzichtelijk contactformulier
   --------------------------------------------------------- */
.page-contact-simple{background:#08080c}
.page-contact-simple .simple-contact-hero{padding:calc(var(--header) + 92px) 0 76px;border-bottom:1px solid var(--line);background:radial-gradient(circle at 78% 22%,rgba(142,92,255,.17),transparent 28%),linear-gradient(180deg,#0b0a11,#08080c)}
.page-contact-simple .simple-contact-hero-inner{max-width:1050px}
.page-contact-simple .simple-contact-hero h1{font-size:clamp(4rem,8vw,8.6rem);max-width:10ch;margin:20px 0 28px}
.page-contact-simple .simple-contact-hero>div>p:last-child{max-width:720px;color:#c5c0cb;font-size:clamp(1rem,1.4vw,1.24rem);line-height:1.7}
.page-contact-simple .simple-contact-section{padding:clamp(75px,9vw,140px) 0;background:radial-gradient(circle at 12% 24%,rgba(142,92,255,.08),transparent 26%),#08080c}
.page-contact-simple .simple-contact-grid{display:grid;grid-template-columns:minmax(320px,.72fr) minmax(0,1.28fr);gap:clamp(38px,7vw,105px);align-items:start}
.page-contact-simple .simple-contact-info{display:grid;gap:26px}
.page-contact-simple .simple-contact-photo{position:relative;overflow:hidden;aspect-ratio:1.28/1;border:1px solid var(--line);background:#101017}
.page-contact-simple .simple-contact-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,5,8,.42),transparent 58%);pointer-events:none}
.page-contact-simple .simple-contact-photo img{width:100%;height:100%;object-fit:cover;object-position:center 38%;display:block}
.page-contact-simple .simple-contact-copy{padding:10px 2px}
.page-contact-simple .simple-contact-copy h2{font-size:clamp(2.7rem,4vw,4.8rem);margin:14px 0 22px}
.page-contact-simple .simple-contact-copy>p:not(.section-code){max-width:47ch;color:#aaa5b0;line-height:1.75}
.page-contact-simple .simple-contact-details{display:grid;margin-top:32px;border-top:1px solid var(--line)}
.page-contact-simple .simple-contact-details>a,.page-contact-simple .simple-contact-details>div{display:grid;gap:5px;padding:20px 0;border-bottom:1px solid var(--line)}
.page-contact-simple .simple-contact-details span{font-size:.68rem;letter-spacing:.13em;text-transform:uppercase;color:#7f7986}
.page-contact-simple .simple-contact-details strong{font-size:1rem;color:#f6f3fa;word-break:break-word}
.page-contact-simple .simple-contact-details a:hover strong{color:var(--purple2)}
.page-contact-simple .simple-form-card{position:relative;padding:clamp(27px,4vw,58px);border:1px solid rgba(255,255,255,.14);background:linear-gradient(155deg,rgba(255,255,255,.05),rgba(255,255,255,.018));box-shadow:0 36px 100px rgba(0,0,0,.32)}
.page-contact-simple .simple-form-card:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,var(--purple),var(--purple2),var(--orange))}
.page-contact-simple .simple-form-head{padding-bottom:30px;margin-bottom:30px;border-bottom:1px solid var(--line)}
.page-contact-simple .simple-form-head h2{font-size:clamp(2.4rem,4vw,4.4rem);margin:13px 0 8px}
.page-contact-simple .simple-form-head>p:last-child{font-size:.8rem;color:#817b88}
.page-contact-simple .simple-form-card form{display:grid;gap:20px}
.page-contact-simple .simple-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.page-contact-simple .simple-form-card label{display:grid;gap:9px;color:#ded9e3;font-size:.78rem;font-weight:760}
.page-contact-simple .simple-form-card label em{color:var(--orange);font-style:normal}
.page-contact-simple .simple-form-card input,.page-contact-simple .simple-form-card select,.page-contact-simple .simple-form-card textarea{width:100%;border:1px solid rgba(255,255,255,.14);background:#09090e;color:#fff;border-radius:10px;padding:15px 16px;outline:none;transition:border-color .2s,box-shadow .2s,background .2s;font:inherit}
.page-contact-simple .simple-form-card select{appearance:auto}
.page-contact-simple .simple-form-card input::placeholder,.page-contact-simple .simple-form-card textarea::placeholder{color:#69636f}
.page-contact-simple .simple-form-card input:focus,.page-contact-simple .simple-form-card select:focus,.page-contact-simple .simple-form-card textarea:focus{border-color:var(--purple2);background:#0c0b12;box-shadow:0 0 0 3px rgba(142,92,255,.13)}
.page-contact-simple .simple-message-label{position:relative}
.page-contact-simple .simple-message-label textarea{min-height:210px;resize:vertical;padding-bottom:38px}
.page-contact-simple .simple-message-label small{position:absolute;right:13px;bottom:11px;padding:4px 6px;background:#09090e;color:#746e7a;font-size:.66rem;font-weight:500}
.page-contact-simple .simple-consent{grid-template-columns:22px 1fr!important;align-items:start;gap:11px!important;font-size:.72rem!important;font-weight:500!important;line-height:1.6;color:#aaa5b0!important}
.page-contact-simple .simple-consent input{width:18px!important;height:18px;padding:0!important;margin-top:2px;accent-color:var(--purple)}
.page-contact-simple .simple-consent a{color:var(--purple2);text-decoration:underline;text-underline-offset:3px}
.page-contact-simple .simple-form-submit{display:flex;justify-content:flex-start;padding-top:5px}
.page-contact-simple .simple-form-submit button{min-width:210px;border:0;cursor:pointer}
.page-contact-simple .simple-form-submit button:disabled{opacity:.56;cursor:wait;transform:none}
.page-contact-simple .form-status{min-height:0;padding:0;border:0;font-size:.85rem;line-height:1.55}
.page-contact-simple .form-status:not(:empty){padding:16px 18px;border:1px solid var(--line);background:#0b0b10;border-radius:8px}
.page-contact-simple .form-status.success{border-color:rgba(98,229,154,.35);background:rgba(98,229,154,.055);color:#8df0b7}
.page-contact-simple .form-status.warning{border-color:rgba(255,193,92,.35);background:rgba(255,193,92,.055);color:#ffd18a}
.page-contact-simple .form-status.error{border-color:rgba(255,128,102,.35);background:rgba(255,128,102,.055);color:#ff9d8a}
.page-contact-simple .form-status strong{display:block;color:inherit;font-size:.96rem;margin-bottom:3px}
@media (max-width:980px){.page-contact-simple .simple-contact-grid{grid-template-columns:1fr}.page-contact-simple .simple-contact-info{grid-template-columns:minmax(260px,.8fr) 1.2fr;align-items:start}.page-contact-simple .simple-contact-copy{padding-top:0}}
@media (max-width:680px){.page-contact-simple .simple-contact-hero{padding:calc(var(--header) + 65px) 0 58px}.page-contact-simple .simple-contact-hero h1{font-size:clamp(3.5rem,17vw,5.4rem)}.page-contact-simple .simple-contact-section{padding:70px 0}.page-contact-simple .simple-contact-info{grid-template-columns:1fr}.page-contact-simple .simple-form-card{padding:30px 18px}.page-contact-simple .simple-form-row{grid-template-columns:1fr}.page-contact-simple .simple-form-submit button{width:100%}.page-contact-simple .simple-contact-photo{aspect-ratio:1.35/1}}

/* =========================================================
   Mobile experience v16 — phone-first refinement
   ========================================================= */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--header) + 16px)}
body{min-width:320px}
a,button{-webkit-tap-highlight-color:transparent}
input,select,textarea{font-size:16px}
.mobile-dock{display:none}

@media(max-width:920px){
  :root{--header:calc(68px + env(safe-area-inset-top));--shell:calc(100% - 32px)}
  body{padding-bottom:calc(72px + env(safe-area-inset-bottom))}
  body.menu-open{overflow:hidden;touch-action:none}
  .site-header,.site-header.scrolled{height:var(--header);padding-top:env(safe-area-inset-top);background:rgba(7,7,11,.94);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);border-bottom:1px solid rgba(255,255,255,.1)}
  .header-grid{grid-template-columns:minmax(0,1fr) 52px;gap:10px}
  .brand{min-width:0;display:flex;align-items:center}
  .brand img{width:min(210px,68vw);height:auto;max-height:48px;object-fit:contain;object-position:left center}
  .header-actions{justify-self:end}
  .menu-toggle{display:grid;place-content:center;width:48px;height:48px;border:1px solid rgba(255,255,255,.12);border-radius:50%;background:rgba(255,255,255,.035);position:relative;z-index:3;cursor:pointer}
  .menu-toggle span{width:21px;margin:3px auto}
  .main-nav{position:fixed;z-index:2;inset:var(--header) 0 0;display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:0;padding:28px 20px calc(108px + env(safe-area-inset-bottom));background:radial-gradient(circle at 82% 12%,rgba(142,92,255,.2),transparent 32%),rgba(7,7,11,.985);border:0;border-top:1px solid rgba(255,255,255,.08);box-shadow:none;opacity:0;visibility:hidden;transform:translateY(-10px);pointer-events:none;overflow-y:auto;overscroll-behavior:contain;transition:opacity .24s ease,transform .24s ease,visibility .24s}
  .main-nav.open{opacity:1;visibility:visible;transform:none;pointer-events:auto}
  .main-nav a{display:flex;align-items:center;min-height:64px;padding:10px 6px;border-bottom:1px solid rgba(255,255,255,.09);font-size:clamp(1.35rem,6vw,1.85rem);font-weight:850;letter-spacing:-.035em;color:#d5d0dc}
  .main-nav a::before{content:"↗";order:2;margin-left:auto;color:var(--purple2);font-size:1rem;opacity:.55}
  .main-nav a.active{color:#fff}
  .main-nav a.active::before{opacity:1}
  .main-nav a::after{display:none}
  .header-cta,.availability{display:none}

  .mobile-dock{position:fixed;z-index:950;left:10px;right:10px;bottom:max(8px,env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(3,1fr);min-height:60px;padding:6px;border:1px solid rgba(255,255,255,.13);border-radius:20px;background:rgba(10,10,16,.9);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:0 18px 50px rgba(0,0,0,.45)}
  .mobile-dock a{display:grid;place-items:center;align-content:center;gap:2px;min-width:0;min-height:48px;border-radius:15px;color:#8f8998;font-size:.62rem;font-weight:750}
  .mobile-dock svg{width:20px;height:20px}
  .mobile-dock a.active{background:linear-gradient(145deg,rgba(142,92,255,.3),rgba(142,92,255,.1));color:#fff}

  .section{padding:88px 0}
  .section-heading{gap:22px}
  h1,h2,h3{overflow-wrap:break-word}
  p{overflow-wrap:anywhere}
  .kicker{flex-wrap:wrap;gap:8px 14px}
  .button{min-height:52px;padding:13px 18px}

  .hero-v8{min-height:max(720px,100svh);align-items:flex-end}
  .hero-frame img{object-position:58% center}
  .hero-shade{background:linear-gradient(0deg,rgba(5,5,8,.96) 0%,rgba(5,5,8,.7) 48%,rgba(5,5,8,.25) 100%),linear-gradient(90deg,rgba(5,5,8,.58),transparent)}
  .hero-grid-overlay{background-size:96px 96px;opacity:.08}
  .hero-copy{padding:calc(var(--header) + 56px) 0 112px}
  .hero-copy h1{font-size:clamp(3.85rem,18vw,6rem);line-height:.88;margin:18px 0 22px;max-width:6.5ch}
  .hero-intro{font-size:1rem;line-height:1.65;max-width:34ch}
  .hero-buttons{display:grid;grid-template-columns:1fr;max-width:380px;margin-top:26px}
  .hero-buttons .button{width:100%}
  .hero-nav{left:16px;bottom:86px}
  .hero-nav button{min-width:30px;height:4px;border-radius:4px}
  .hero-captions,.hero-index{display:none}
  .signal-track{padding:16px 0;gap:22px;font-size:.68rem;animation-duration:36s}

  .intro-grid{display:grid;grid-template-columns:1fr;gap:24px}
  .intro-copy h2{font-size:clamp(2.65rem,12vw,4.3rem);line-height:.98;margin:0 0 24px}
  .intro-copy p{font-size:1rem;line-height:1.75}
  .intro-facts{grid-column:auto;margin-top:22px}
  .intro-facts strong{font-size:2rem}
  .intro-facts span{text-align:right}

  .selected-work{padding:18px 0 88px}
  .section-heading{display:block;margin-bottom:28px}
  .section-heading h2{font-size:clamp(2.7rem,12vw,4.3rem)}
  .section-heading>a{display:inline-flex;margin-top:18px}
  .editorial-grid{display:grid;grid-template-columns:1fr;grid-template-rows:none;gap:10px}
  .frame-card,.frame-a,.frame-b,.frame-c,.frame-d{grid-column:auto;grid-row:auto;width:100%;height:auto;min-height:0;aspect-ratio:4/3;margin:0}
  .frame-a{aspect-ratio:4/5}
  .frame-card>div{left:17px;right:17px;bottom:15px}
  .frame-card h3{font-size:1.35rem}

  .services-home-grid{grid-template-columns:1fr;gap:42px}
  .services-home-copy{position:static}
  .services-home-copy h2{font-size:clamp(2.7rem,12vw,4.1rem)}
  .service-line{grid-template-columns:32px minmax(0,1fr) 22px;gap:10px 14px;padding:25px 0}
  .service-line h3{font-size:1.4rem;line-height:1.04}
  .service-line p{display:block;grid-column:2/4;font-size:.83rem;line-height:1.55;margin-top:-4px}
  .service-line b{font-size:1.1rem}

  .sophie-grid{grid-template-columns:1fr;gap:40px}
  .sophie-photo{max-width:560px;margin:auto}
  .sophie-photo img{border-radius:50% 50% 10px 10px}
  .sophie-copy h2{font-size:clamp(2.8rem,12vw,4.4rem);margin-bottom:24px}
  .sophie-copy p{font-size:1rem;line-height:1.7}

  .t112-feature,.t112-about{min-height:620px}
  .t112-bg img,.t112-about-media img{object-position:65% center}
  .t112-overlay,.t112-about-overlay{background:linear-gradient(0deg,rgba(5,5,8,.96),rgba(5,5,8,.55))}
  .t112-copy h2,.t112-about-copy h2{font-size:clamp(3.7rem,17vw,6rem);line-height:.9}
  .t112-copy p,.t112-about-copy p{font-size:1rem}
  .final-card{grid-template-columns:1fr;gap:22px;padding:30px 22px}
  .final-card h2{font-size:clamp(2.65rem,12vw,4rem)}
  .final-card .button{width:100%}

  .page-hero-v8{min-height:650px}
  .page-hero-media img{object-position:60% center}
  .page-hero-overlay{background:linear-gradient(0deg,rgba(5,5,8,.96),rgba(5,5,8,.42))}
  .page-hero-copy{padding:calc(var(--header) + 70px) 0 78px}
  .page-hero-copy h1{font-size:clamp(3.6rem,16vw,5.4rem);line-height:.9}
  .page-hero-copy>p:last-child{font-size:1rem;line-height:1.65}
  .service-index-head{grid-template-columns:1fr;gap:18px;margin-bottom:48px}
  .service-index-head h2{font-size:clamp(2.7rem,12vw,4.2rem)}
  .service-chapter,.service-chapter.reverse{display:grid;grid-template-columns:1fr;gap:20px;padding:58px 0}
  .service-number,.service-copy,.service-image,.service-chapter.reverse .service-image,.service-chapter.reverse .service-copy{grid-column:1!important;grid-row:auto!important}
  .service-number{order:0}
  .service-copy{order:1}
  .service-image{order:2;width:100%;height:auto;aspect-ratio:4/3}
  .service-copy h3{font-size:clamp(2.45rem,11vw,3.7rem);margin:10px 0 20px}
  .service-copy ul{grid-template-columns:1fr;margin:22px 0}
  .process-grid-v8{grid-template-columns:1fr}
  .process-grid-v8 article{min-height:220px;border-right:0;border-top:1px solid var(--line);padding:25px 20px}
  .process-grid-v8 h3{margin-top:52px}
  .quote-strip{padding:34px 0}
  .quote-strip .shell{display:block}
  .quote-strip p{font-size:1.35rem}
  .quote-strip a{display:inline-flex;margin-top:16px}

  .about-hero-v8{padding:calc(var(--header) + 55px) 0 82px}
  .about-hero-grid{grid-template-columns:1fr;gap:42px;align-items:start}
  .about-title h1{font-size:clamp(3.7rem,16vw,5.5rem);line-height:.9}
  .about-title>p:last-child{font-size:1rem;line-height:1.7}
  .about-photo{width:min(100%,520px);margin:auto}
  .about-stamp{left:auto;right:-5px;bottom:24px;width:118px;height:118px}
  .about-stamp strong{font-size:3rem}
  .story-grid{grid-template-columns:1fr;gap:32px}
  .story-copy h2{font-size:clamp(2.7rem,12vw,4.2rem)}
  .story-copy p{font-size:1rem;line-height:1.75}
  .story-aside{grid-column:auto;margin-top:8px}
  .brand-system-grid{grid-template-columns:1fr;gap:38px}
  .brand-copy h2{font-size:clamp(2.7rem,12vw,4.2rem)}
  .brand-feature-photo{min-height:0!important;aspect-ratio:4/3}
  .timeline-grid{grid-template-columns:1fr}
  .timeline-grid article{min-height:190px;border-right:0;border-top:1px solid var(--line);padding:23px 10px}
  .timeline-grid p{margin-top:38px}

  .portfolio-hero-v8{min-height:650px}
  .portfolio-wall{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr)}
  .portfolio-wall img:nth-child(n+5){display:none}
  .portfolio-wall-overlay{background:linear-gradient(0deg,rgba(5,5,8,.96),rgba(5,5,8,.52))}
  .portfolio-hero-v8>.shell{padding:calc(var(--header) + 70px) 0 75px}
  .portfolio-hero-v8 h1{font-size:clamp(3.7rem,16vw,5.5rem);line-height:.9}
  .portfolio-toolbar{top:var(--header)}
  .portfolio-toolbar>.shell{display:block;min-height:0;padding:13px 0 10px}
  .portfolio-counter{padding:0 2px 6px}
  .portfolio-counter strong{font-size:1.55rem}
  .filter-bar{gap:7px;margin-inline:-16px;padding:7px 16px 3px;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
  .filter-bar::-webkit-scrollbar{display:none}
  .filter-bar button{min-height:42px;padding:10px 14px}
  .portfolio-section{padding:18px 0 90px}
  .portfolio-grid-v8{display:grid;grid-template-columns:1fr;gap:10px}
  .portfolio-tile,.portfolio-tile.wide,.portfolio-tile.portrait,.portfolio-tile.standard:nth-child(n){grid-column:1;grid-row:auto;min-height:0;margin:0;aspect-ratio:4/3}
  .portfolio-tile.portrait{aspect-ratio:4/5}
  .portfolio-tile.wide{aspect-ratio:16/10}
  .tile-info{left:17px;right:17px;bottom:15px}
  .tile-info h2{font-size:1.5rem}
  .tile-info p{font-size:.78rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

  .page-contact-simple .simple-contact-hero{padding:calc(var(--header) + 48px) 0 58px}
  .page-contact-simple .simple-contact-hero h1{font-size:clamp(3.5rem,16vw,5.3rem);line-height:.9}
  .page-contact-simple .simple-contact-hero>div>p:last-child{font-size:1rem;line-height:1.7}
  .page-contact-simple .simple-contact-section{padding:72px 0}
  .page-contact-simple .simple-contact-grid{grid-template-columns:1fr;gap:44px}
  .page-contact-simple .simple-contact-info{grid-template-columns:1fr}
  .page-contact-simple .simple-contact-photo{aspect-ratio:4/3}
  .page-contact-simple .simple-contact-copy h2{font-size:clamp(2.7rem,12vw,4rem)}
  .page-contact-simple .simple-form-card{padding:30px 18px;border-radius:16px}
  .page-contact-simple .simple-form-head h2{font-size:clamp(2.5rem,11vw,3.7rem)}
  .page-contact-simple .simple-form-row{grid-template-columns:1fr}
  .page-contact-simple .simple-form-card input,.page-contact-simple .simple-form-card select,.page-contact-simple .simple-form-card textarea{min-height:52px;font-size:16px}
  .page-contact-simple .simple-form-card textarea{min-height:170px}
  .page-contact-simple .simple-form-submit button{width:100%;min-height:56px}
  .page-contact-simple .simple-consent{align-items:flex-start}

  .legal-hero-v8{padding:calc(var(--header) + 58px) 0 55px}
  .legal-hero-v8 h1{font-size:clamp(3.5rem,16vw,5.2rem)}
  .legal-copy h2{font-size:1.75rem;margin-top:38px}
  .legal-copy p{font-size:1rem;line-height:1.75}
  .notfound-v8>.shell>span{font-size:6rem}
  .notfound-v8 h1{font-size:clamp(3.2rem,15vw,5rem)}

  .site-footer{padding:72px 0 34px}
  .footer-grid{grid-template-columns:1fr;gap:38px}
  .footer-lead{grid-column:auto}
  .footer-lead img{width:min(270px,82vw)}
  .footer-lead h2{font-size:clamp(2.55rem,11vw,3.8rem);margin:30px 0 16px}
  .footer-links,.footer-meta{padding-top:22px;border-top:1px solid var(--line)}
  .footer-bottom{display:grid;gap:8px;margin-top:45px;padding-bottom:6px}

  .lightbox{padding:calc(70px + env(safe-area-inset-top)) 10px calc(94px + env(safe-area-inset-bottom));align-items:center}
  .lightbox figure{width:100%;max-width:100%;max-height:none}
  .lightbox img{max-height:64svh;width:auto;max-width:100%;object-fit:contain}
  .lightbox figcaption{padding:0 16px;margin-top:12px}
  .lightbox figcaption strong{font-size:1.05rem}
  .lightbox-close{top:calc(12px + env(safe-area-inset-top));right:12px;width:46px;height:46px}
  .lightbox-prev,.lightbox-next{top:auto;bottom:calc(18px + env(safe-area-inset-bottom));width:50px;height:50px}
  .lightbox-prev{left:calc(50% - 60px)}
  .lightbox-next{right:calc(50% - 60px)}
}

@media(max-width:420px){
  :root{--shell:calc(100% - 24px)}
  .brand img{width:min(188px,66vw)}
  .hero-copy h1{font-size:clamp(3.55rem,18vw,4.7rem)}
  .hero-copy{padding-bottom:108px}
  .section{padding:76px 0}
  .frame-card,.frame-a{aspect-ratio:4/5}
  .t112-copy h2,.t112-about-copy h2{font-size:3.65rem}
  .about-stamp{width:104px;height:104px}
  .about-stamp strong{font-size:2.6rem}
  .page-contact-simple .simple-form-card{padding:26px 14px}
}

@media(max-width:920px) and (orientation:landscape) and (max-height:560px){
  .mobile-dock{display:none}
  body{padding-bottom:0}
  .hero-v8{min-height:680px}
  .main-nav{padding-bottom:30px}
  .main-nav a{min-height:52px;font-size:1.2rem}
}
