@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Manrope:wght@400;500;600;700&family=Syne:wght@600;700&display=swap');
:root{--red:#ed1c24;--black:#070707;--panel:#111;--line:#292929;--text:#f5f2ed;--muted:#a7a4a0}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--text);font:15px/1.6 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.header{height:88px;display:flex;align-items:center;gap:42px;padding:0 5vw;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20;background:rgba(7,7,7,.92);backdrop-filter:blur(15px)}.brand{font:700 19px/1 'Manrope';letter-spacing:.08em}.brand span{color:var(--red)}.brand small{display:block;color:#777;font:500 8px/1.7 'DM Sans';letter-spacing:.2em}.header nav{display:flex;gap:30px;margin-left:auto;color:#c9c6c1}.header nav a:hover{color:#fff}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--red);padding:15px 23px;color:#fff;border:0;font-weight:600;cursor:pointer}.button.compact{padding:11px 17px}.menu{display:none}.hero{min-height:720px;padding:120px 8vw 70px;position:relative;overflow:hidden;background:radial-gradient(circle at 78% 40%,#3d0a0c 0,transparent 28%),linear-gradient(135deg,#070707 60%,#140707)}.hero:after{content:'';position:absolute;width:520px;height:520px;border:1px solid #642026;border-radius:50%;right:7vw;top:85px;box-shadow:0 0 90px #b20e1930,inset 0 0 70px #b20e1920}.eyebrow{color:var(--red);font-weight:600;font-size:11px;letter-spacing:.2em}.hero h1,.section h2,.catalogue h2,.detail h1,.contact h1,.cta h2{font:500 clamp(44px,7vw,104px)/.98 'Manrope';letter-spacing:-.055em;margin:28px 0}.hero h1{max-width:1100px;position:relative;z-index:2}.hero h1 em,.impact h2 em,.contact h1 em{font-style:normal;color:#777}.hero>p{color:var(--muted);font-size:19px;max-width:620px}.actions{display:flex;align-items:center;gap:30px;margin-top:40px}.text-link{font-weight:600}.hero-orbit{position:absolute;right:10vw;bottom:75px;width:360px;display:grid;grid-template-columns:1fr 1fr;gap:8px;color:#7d7873;font-size:10px;letter-spacing:.2em}.proof{display:grid;grid-template-columns:2fr repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:0 5vw}.proof>p,.proof>div{padding:28px;border-right:1px solid var(--line);margin:0}.proof strong{font:600 34px 'Manrope';display:block}.proof span{color:var(--muted);font-size:12px}.section,.catalogue{padding:110px 7vw}.section-head{display:grid;grid-template-columns:1.35fr 1fr;gap:9vw;align-items:end;margin-bottom:60px}.section-head h2,.impact h2{font-size:clamp(42px,5vw,72px);margin-bottom:0}.section-head>p{color:var(--muted);font-size:17px}.solution-grid,.impact-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.solution-grid article,.impact-grid>div{padding:35px 35px 60px 0;border-right:1px solid var(--line)}.solution-grid article+article,.impact-grid>div+div{padding-left:35px}.solution-grid b,.impact-grid b{color:var(--red);font-size:11px}.solution-grid h3,.impact-grid h3{font:500 25px 'Manrope';margin:45px 0 14px}.solution-grid p,.impact-grid p{color:var(--muted)}.catalogue{background:#0c0c0c}.search{border-bottom:1px solid #555;display:flex;align-items:center;gap:20px}.search span{font-size:11px;color:#777;text-transform:uppercase;letter-spacing:.15em}.search input{background:none;border:0;color:#fff;padding:15px 0;font-size:16px;outline:0;width:100%}.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:35px}.filters button{background:#141414;color:#aaa;border:1px solid #292929;padding:10px 16px;cursor:pointer}.filters button.active,.filters button:hover{background:var(--red);border-color:var(--red);color:#fff}.concept-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#282828}.concept-card{background:#0c0c0c}.concept-card a{display:block;height:100%}.media{height:280px;overflow:hidden;position:relative;background:#171717}.media img{width:100%;height:100%;object-fit:cover;filter:saturate(.75);transition:.45s}.concept-card:hover img{transform:scale(1.04);filter:saturate(1)}.media>span{position:absolute;top:15px;right:15px;background:#080808c9;padding:4px 8px;font-size:10px}.media-fallback{height:100%;display:flex;align-items:center;justify-content:center;color:#3b3b3b;font:600 32px 'Manrope';background:radial-gradient(circle,#261010,#111 70%)}.card-copy{padding:26px 25px 32px}.card-copy small{color:var(--red);text-transform:uppercase;letter-spacing:.12em}.card-copy h3{font:500 24px/1.2 'Manrope';margin:12px 0}.card-copy p{color:#999;min-height:72px}.card-copy .text-link{display:block;margin-top:22px}.empty{text-align:center;color:#999}.impact{background:#111}.cta{padding:110px 7vw;background:var(--red);text-align:center}.cta .eyebrow{color:#210000}.cta h2{font-size:clamp(45px,6vw,84px)}.button.light{background:#fff;color:#111}footer{display:grid;grid-template-columns:2fr 2fr 1fr 1fr;gap:30px;padding:55px 6vw;color:#aaa;border-top:1px solid var(--line)}.detail{display:grid;grid-template-columns:1fr 1fr;min-height:680px}.detail-copy{padding:90px 7vw}.back{display:block;color:#999;margin-bottom:70px}.detail h1{font-size:clamp(48px,6vw,84px)}.lead{font-size:20px;color:#bcb9b4}.tags{display:flex;gap:8px;margin-top:25px}.tags span{border:1px solid #444;padding:7px 12px;font-size:11px;text-transform:uppercase}.detail-media{min-height:600px;background:#141414}.detail-media img{height:100%;width:100%;object-fit:cover}.contact{display:grid;grid-template-columns:1.1fr .9fr;gap:9vw;padding:100px 8vw}.contact h1{font-size:clamp(48px,6vw,82px)}.contact>div>p{max-width:560px;color:#aaa;font-size:18px}.contact>div>a{display:block;font-size:18px;margin-top:12px}.contact form,.editor form{display:grid;gap:18px}.contact label,.editor label{display:grid;gap:6px;color:#999;font-size:12px}.contact input,.contact textarea,.editor input,.editor textarea,.editor select,.login input{background:#121212;border:1px solid #333;color:#fff;padding:14px;font:inherit}.admin-body{background:#0b0b0b;padding:40px}.login{max-width:420px;margin:15vh auto;display:grid;gap:16px;padding:40px;background:#121212}.admin-header{display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:auto}.admin-header h1{margin:5px 0}.admin-main{max-width:1200px;margin:35px auto;display:grid;grid-template-columns:1fr 1fr;gap:30px}.editor,.admin-list{background:#121212;padding:30px}.editor fieldset{border:1px solid #333;display:flex;gap:15px}.admin-list>a{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid #292929}.admin-list small{color:#888}.success{color:#76d69b}.error{color:#ff7676}
@media(max-width:850px){.header{height:70px;padding:0 20px}.header>.button{display:none}.menu{display:block;margin-left:auto;background:none;border:0;color:#fff}.header nav{display:none;position:absolute;top:70px;left:0;right:0;background:#111;padding:25px;flex-direction:column}.header nav.open{display:flex}.hero{min-height:650px;padding:90px 25px}.hero:after{width:330px;height:330px;right:-160px;top:140px}.hero-orbit{display:none}.proof{grid-template-columns:1fr 1fr;padding:0}.proof>p{grid-column:1/-1}.section,.catalogue{padding:75px 24px}.section-head,.detail,.contact,.admin-main{grid-template-columns:1fr}.solution-grid,.impact-grid{grid-template-columns:1fr}.solution-grid article,.solution-grid article+article,.impact-grid>div,.impact-grid>div+div{padding:30px 0;border-right:0;border-bottom:1px solid var(--line)}.concept-grid{grid-template-columns:1fr}.media{height:340px}.proof>div{padding:20px}.detail-copy{padding:55px 24px}.detail-media{min-height:400px;order:-1}footer{grid-template-columns:1fr 1fr}.contact{padding:70px 24px}.admin-body{padding:15px}}

/* Brand navigation, motion and mobile concept-feed experience */
.brand img{width:154px;height:58px;object-fit:contain}.nav-group{position:relative}.nav-group>a i{font-style:normal;color:#777}.submenu{position:absolute;top:28px;left:-20px;min-width:250px;background:#111;border:1px solid #333;padding:10px;opacity:0;visibility:hidden;transform:translateY(8px);transition:.22s}.nav-group:hover .submenu,.nav-group:focus-within .submenu{opacity:1;visibility:visible;transform:none}.submenu a{display:block;padding:10px 12px}.submenu a:hover{background:#1d1d1d}.hero h1,.hero>p,.hero .actions{animation:rise .8s both}.hero>p{animation-delay:.12s}.hero .actions{animation-delay:.22s}.hero:after{animation:pulse 4s ease-in-out infinite}.concept-card{position:relative;opacity:0;transform:translateY(24px);transition:opacity .6s,transform .6s}.concept-card.visible{opacity:1;transform:none}@keyframes rise{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}@keyframes pulse{50%{transform:scale(1.04);box-shadow:0 0 140px #b20e1950,inset 0 0 90px #b20e1930}}
@media(max-width:850px){body{overflow:hidden}.header{height:64px;padding:0 16px;position:fixed;width:100%;background:linear-gradient(#070707e8,transparent);border:0}.brand img{width:125px;height:46px}.menu{background:#0008;border:1px solid #ffffff33;padding:7px 10px}.header nav{top:64px;left:10px;right:10px}.submenu{position:static;opacity:1;visibility:visible;transform:none;border:0;border-left:1px solid #444;margin:8px 0 5px;display:none}.nav-group:focus-within .submenu{display:block}.hero,.proof,#solutions,.impact,.cta,footer,.catalogue>.section-head{display:none}.catalogue{padding:0;background:#000}.filters{position:fixed;z-index:12;top:70px;left:10px;right:0;flex-wrap:nowrap;overflow:auto;margin:0;padding-right:20px;scrollbar-width:none}.filters button{white-space:nowrap;background:#090909bf;backdrop-filter:blur(10px);border-color:#ffffff25;border-radius:30px;padding:8px 13px}.concept-grid{display:block;height:100dvh;overflow-y:auto;scroll-snap-type:y mandatory;background:#000}.concept-card{height:100dvh;scroll-snap-align:start;overflow:hidden;opacity:1;transform:none}.concept-card[hidden]{display:none}.concept-card>a{height:100%}.media{height:100%;position:absolute;inset:0}.media:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 38%,#000 96%)}.media img{filter:saturate(.95);animation:mobileZoom 12s ease-in-out infinite alternate}.media>span{top:118px}.card-copy{position:absolute;z-index:3;left:0;right:0;bottom:20px;padding:24px}.card-copy small{color:#fff;background:var(--red);padding:5px 8px}.card-copy h3{font-size:32px;margin-top:15px}.card-copy p{font-size:14px;color:#ddd;min-height:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.card-copy .text-link{display:inline-block;background:#fff;color:#111;padding:9px 12px}.detail,.contact,.admin-main{grid-template-columns:1fr}@keyframes mobileZoom{from{transform:scale(1)}to{transform:scale(1.08)}}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Cinematic featured slider */
.hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);gap:5vw;align-items:center;padding-top:80px}.hero-copy{position:relative;z-index:2}.hero-slider{height:560px;position:relative;z-index:2;overflow:hidden;border:1px solid #ffffff20;background:#111;box-shadow:0 30px 90px #000}.hero-slide{position:absolute;inset:0;opacity:0;transform:scale(1.06);transition:opacity .8s,transform 1.2s;pointer-events:none}.hero-slide.active{opacity:1;transform:scale(1);pointer-events:auto}.hero-slide:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 45%,#050505e8)}.hero-slide img{width:100%;height:100%;object-fit:cover}.hero-slide>div{position:absolute;z-index:2;left:30px;right:75px;bottom:30px}.hero-slide small{color:#ff666b;text-transform:uppercase;letter-spacing:.14em}.hero-slide strong{display:block;font:500 30px/1.15 'Manrope';margin-top:7px}.slider-next{position:absolute;z-index:4;right:24px;bottom:27px;width:46px;height:46px;border-radius:50%;border:1px solid #ffffff77;background:#080808a6;color:#fff;font-size:20px;cursor:pointer}.slider-progress{position:absolute;z-index:4;left:30px;right:30px;top:25px;height:2px;background:#ffffff38}.slider-progress i{display:block;height:100%;background:var(--red);animation:sliderTimer 5s linear}@keyframes sliderTimer{from{width:0}to{width:100%}}.mobile-actions,.feed-progress,.swipe-hint{display:none}
@media(max-width:1100px) and (min-width:851px){.hero{grid-template-columns:1fr 420px;padding-left:5vw;padding-right:5vw}.hero-slider{height:500px}.hero h1{font-size:65px}}
@media(max-width:850px){.hero{display:none}.mobile-actions{position:absolute;z-index:5;right:18px;bottom:28px;display:grid;gap:10px}.mobile-actions a{width:58px;height:58px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#111d;border:1px solid #ffffff44;font-size:10px;text-align:center}.mobile-actions a:last-child{background:var(--red);border-color:var(--red)}.card-copy{right:65px}.feed-progress{display:block;position:fixed;z-index:13;right:6px;top:145px;bottom:105px;width:2px;background:#ffffff36}.feed-progress i{display:block;width:100%;height:1.4%;background:var(--red);transition:height .25s}.feed-progress span{position:absolute;right:7px;bottom:-30px;width:70px;text-align:right;font-size:9px;letter-spacing:.15em}.swipe-hint{display:block;position:fixed;z-index:10;left:24px;bottom:7px;margin:0;color:#ffffff70;font-size:9px;letter-spacing:.12em;text-transform:uppercase;animation:hint 2s ease-in-out infinite}.concept-card:first-child .media:before{content:'FEATURED EXPERIENCE';position:absolute;z-index:3;left:24px;top:130px;color:#fff;font-size:9px;letter-spacing:.16em}@keyframes hint{50%{transform:translateY(-4px);color:#fff}}}
.honeypot{position:absolute!important;left:-9999px!important}.form-success{padding:50px;background:#111;align-self:start}.form-success h2{font:500 48px 'Manrope';margin:12px 0}.admin-thumb{width:160px;height:110px;object-fit:cover;border:1px solid #333}
.solution-hero{padding:130px 8vw 110px;min-height:650px;background:radial-gradient(circle at 85% 30%,#4a0d12,transparent 30%)}.solution-hero h1{font:500 clamp(52px,7vw,100px)/1 'Manrope';letter-spacing:-.055em;max-width:1100px;margin:25px 0}.solution-hero p{font-size:20px;color:var(--muted);max-width:720px;margin-bottom:35px}.experience-info{display:grid;grid-template-columns:1fr 1fr;gap:10vw;padding:100px 8vw;border-top:1px solid var(--line);background:#0d0d0d}.experience-info.dark{background:#151515}.experience-info.requirements{background:#f0ede7;color:#111}.experience-info h2{font:500 clamp(40px,5vw,70px)/1 'Manrope';letter-spacing:-.05em;margin:25px 0}.experience-info ul{list-style:none;margin:0;padding:0;border-top:1px solid #555}.experience-info li{padding:17px 0;border-bottom:1px solid #333;font-size:16px}.experience-info li:before{content:'+';color:var(--red);margin-right:14px}.gallery-grid{display:grid;grid-template-columns:2fr 1fr;gap:12px}.gallery-grid img{width:100%;height:340px;object-fit:cover}.gallery-grid img:first-child{grid-row:span 2;height:692px}.related{padding-top:90px}
@media(max-width:850px){.solution-hero{padding:110px 24px 70px;min-height:600px}.experience-info{grid-template-columns:1fr;padding:70px 24px;gap:25px}.gallery-grid{grid-template-columns:1fr}.gallery-grid img,.gallery-grid img:first-child{height:300px;grid-row:auto}.related{padding:70px 24px}.detail .actions{align-items:flex-start;flex-direction:column}}
.admin-actions{display:flex;gap:12px}.danger{background:#3a1113;color:#ff9da0;border:1px solid #6b2327;padding:12px 18px;cursor:pointer}.login img{width:170px;margin-bottom:15px}

/* 2026 Perspective Showcase homepage */
.header{position:fixed;top:0;left:0;right:0;background:linear-gradient(180deg,#050505e8,transparent);border:0;z-index:50}.perspective{height:100vh;min-height:720px;background:#070707;position:relative;overflow:hidden}.perspective:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 52% 50%,#3d0c10 0,transparent 30%),linear-gradient(90deg,transparent 49.95%,#ffffff12 50%,transparent 50.05%)}.perspective-stage{height:100%;display:grid;grid-template-columns:15% 44% 41%;align-items:center;padding:100px 5vw 45px;position:relative}.perspective-counter{align-self:start;margin-top:8vh;display:flex;align-items:flex-end;gap:9px}.perspective-counter strong{font:400 clamp(70px,9vw,140px)/.75 'Manrope';letter-spacing:-.08em}.perspective-counter span{color:#777;font-size:18px}.perspective-meta{position:absolute;left:5vw;bottom:80px}.perspective-meta p{margin:10px 0 0;text-transform:uppercase;letter-spacing:.12em;color:#c8c3bd}.perspective-images{height:min(70vh,720px);position:relative;perspective:1600px}.perspective-image{position:absolute;inset:0;opacity:0;transform:translate3d(0,60px,-250px) rotateY(-8deg) scale(.88);transition:opacity .7s,transform 1s cubic-bezier(.16,1,.3,1);pointer-events:none;overflow:hidden}.perspective-image.active{opacity:1;transform:translate3d(0,0,0) rotateY(0) scale(1);pointer-events:auto}.perspective-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.9);transition:transform 1.2s}.perspective-image:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 55%,#050505dc)}.perspective-image:hover img{transform:scale(1.035)}.perspective-image>span{position:absolute;z-index:2;right:24px;bottom:24px;border:1px solid #ffffff66;border-radius:50%;width:86px;height:86px;display:flex;align-items:center;justify-content:center;text-align:center;font-size:10px;text-transform:uppercase}.perspective-copy{padding-left:5vw;position:relative;z-index:2}.perspective-copy>.eyebrow{display:block;margin-bottom:38px}.perspective-titles{position:relative;min-height:220px}.perspective-title{position:absolute;margin:0;font:500 clamp(58px,7vw,112px)/.88 'Manrope';letter-spacing:-.065em;max-width:650px;opacity:0;transform:translateY(60px) rotateX(-20deg);transform-origin:bottom;transition:.7s cubic-bezier(.16,1,.3,1)}.perspective-title.active{opacity:1;transform:none}.perspective-descriptions{position:relative;min-height:100px;max-width:540px}.perspective-description{position:absolute;color:#aaa;font-size:17px;opacity:0;transform:translateY(15px);transition:.55s .14s}.perspective-description.active{opacity:1;transform:none}.perspective-actions{display:flex;align-items:center;gap:9px;margin-top:25px}.perspective-actions button{width:48px;height:48px;border-radius:50%;border:1px solid #555;background:#111;color:#fff;cursor:pointer}.perspective-actions button:hover{background:var(--red);border-color:var(--red)}.perspective-actions a{margin-left:14px;text-transform:uppercase;letter-spacing:.12em;font-size:10px}.perspective-categories{position:absolute;left:22%;bottom:28px;display:flex;gap:28px;color:#625f5b;font-size:9px;letter-spacing:.18em}.perspective-progress{position:absolute;bottom:0;left:0;right:0;height:3px;background:#222}.perspective-progress i{display:block;background:var(--red);height:100%;width:10%;transition:width .55s}.manifesto{padding:130px 7vw;background:#efede7;color:#0a0a0a;display:grid;grid-template-columns:1.3fr .7fr;gap:8vw}.manifesto .eyebrow{grid-column:1/-1}.manifesto h2{font:500 clamp(54px,7vw,105px)/.92 'Manrope';letter-spacing:-.065em;margin:15px 0}.manifesto>p{font-size:20px;align-self:end}.manifesto-stats{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #bbb;margin-top:55px}.manifesto-stats div{padding:30px 0;border-right:1px solid #bbb}.manifesto-stats strong{font:500 50px 'Manrope';display:block}.manifesto-stats span{color:#666}.solution-portals{padding:120px 7vw}.portal-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #333}.portal-grid>a{min-height:480px;padding:30px;display:flex;flex-direction:column;justify-content:space-between;border-right:1px solid #333;position:relative;overflow:hidden}.portal-grid>a:before{content:'';position:absolute;inset:0;background:linear-gradient(145deg,transparent,#4c0b0f);opacity:0;transition:.4s}.portal-grid>a:hover:before{opacity:1}.portal-grid>a>*{position:relative}.portal-grid span,.portal-grid small{color:var(--red);font-size:10px;letter-spacing:.13em}.portal-grid h3{font:500 37px/1.05 'Manrope';letter-spacing:-.045em}.portal-grid p{color:#999}.portal-grid b{font-size:30px}.experience-gallery{background:#0b0b0b;padding:120px 5vw}.gallery-intro{display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;align-items:end;margin-bottom:45px}.gallery-intro h2{font:500 clamp(52px,6vw,88px)/.95 'Manrope';letter-spacing:-.06em;margin:20px 0 0}.gallery-wall{grid-template-columns:repeat(12,1fr);gap:12px;background:transparent}.gallery-wall .concept-card{grid-column:span 4;opacity:1;transform:none;border:1px solid #252525;background:#101010}.gallery-wall .concept-card:nth-child(8n+1),.gallery-wall .concept-card:nth-child(8n+6){grid-column:span 8}.gallery-wall .concept-card:nth-child(8n+1) .media,.gallery-wall .concept-card:nth-child(8n+6) .media{height:460px}.gallery-wall .concept-card:nth-child(8n+4),.gallery-wall .concept-card:nth-child(8n+5){grid-column:span 6}.gallery-wall .media{height:310px}.gallery-wall .card-copy p{min-height:0}.capabilities{padding:130px 7vw;background:#121212}.capabilities h2{font:500 clamp(54px,7vw,98px)/.93 'Manrope';letter-spacing:-.06em;margin:25px 0 70px}.capabilities>div{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #383838}.capabilities article{padding:35px 25px 30px 0;border-right:1px solid #383838}.capabilities article+article{padding-left:25px}.capabilities b{color:var(--red)}.capabilities h3{font:500 24px 'Manrope';margin-top:55px}.capabilities p{color:#999}.feed-progress,.swipe-hint{display:none}
@media(max-width:1050px) and (min-width:851px){.perspective-stage{grid-template-columns:12% 44% 44%;padding-left:3vw;padding-right:3vw}.perspective-title{font-size:64px}.perspective-image>span{width:68px;height:68px}.gallery-wall .concept-card{grid-column:span 6}.gallery-wall .concept-card:nth-child(n){grid-column:span 6}}
@media(max-width:850px){html,body{height:100%;overflow:hidden}.header{height:64px;background:linear-gradient(#050505e8,transparent)}.perspective,.manifesto,.solution-portals,.capabilities,.cta,footer,.gallery-intro{display:none}.experience-gallery{padding:0;height:100dvh;background:#000}.experience-gallery .filters{position:fixed;z-index:40;top:70px;left:10px;right:0;display:flex;flex-wrap:nowrap;overflow:auto;margin:0;padding-right:20px}.gallery-wall{display:block;height:100dvh;overflow-y:auto;scroll-snap-type:y mandatory}.gallery-wall .concept-card,.gallery-wall .concept-card:nth-child(n){height:100dvh;scroll-snap-align:start;border:0}.gallery-wall .concept-card[hidden]{display:none}.gallery-wall .concept-card>a{height:100%}.gallery-wall .media,.gallery-wall .concept-card:nth-child(n) .media{position:absolute;inset:0;height:100%}.gallery-wall .media:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 38%,#000 96%)}.gallery-wall .media img{width:100%;height:100%;object-fit:cover;animation:mobileZoom 12s ease-in-out infinite alternate}.gallery-wall .card-copy{position:absolute;z-index:3;left:0;right:68px;bottom:24px;padding:24px}.gallery-wall .card-copy small{color:#fff;background:var(--red);padding:5px 8px}.gallery-wall .card-copy h3{font-size:32px}.gallery-wall .card-copy p{color:#ddd;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.gallery-wall .text-link{display:none}.feed-progress{display:block;position:fixed;z-index:45;right:6px;top:145px;bottom:105px;width:2px;background:#ffffff35}.feed-progress i{display:block;background:var(--red);width:100%;height:2%}.feed-progress span{position:absolute;right:8px;bottom:-28px;width:70px;text-align:right;font-size:9px}.swipe-hint{display:block;position:fixed;z-index:30;left:24px;bottom:7px;color:#ffffff80;font-size:9px;letter-spacing:.12em;text-transform:uppercase}.mobile-actions{display:grid}.concept-card:first-child .media:before{content:'FEATURED INTERACTION';position:absolute;z-index:3;left:24px;top:130px;color:#fff;font-size:9px;letter-spacing:.16em}}

/* Locked showcase homepage and linked experience library */
.filters>a{background:#141414;color:#aaa;border:1px solid #292929;padding:10px 16px;cursor:pointer}.filters>a.active,.filters>a:hover{background:var(--red);border-color:var(--red);color:#fff}
@media(min-width:851px){body.home-perspective{height:100vh;overflow:hidden}.home-perspective main{height:100vh;overflow:hidden}.home-perspective .perspective{height:100vh;min-height:0}.home-perspective .manifesto,.home-perspective .solution-portals,.home-perspective .experience-gallery,.home-perspective .capabilities,.home-perspective .cta,.home-perspective footer{display:none!important}}
@media(max-width:850px){body:not(.home-perspective):not(.experience-feed){height:auto;overflow:auto}.experience-feed .category-hero{display:none}.experience-feed .filters>a{white-space:nowrap;background:#090909bf;backdrop-filter:blur(10px);border-color:#ffffff25;border-radius:30px;padding:8px 13px}}

/* Continuous vertical Perspective reel */
.reel-showcase{background:#090909;color:#f5f2ed}.reel-showcase:before{background:radial-gradient(circle at 50% 48%,#4b0c11 0,transparent 27%),linear-gradient(90deg,transparent 23.9%,#ffffff16 24%,transparent 24.1%,transparent 66%,#ffffff16 66.1%,transparent 66.2%)}
.reel-layout{height:100%;display:grid;grid-template-columns:24% 42% 34%;position:relative;padding-top:88px}.reel-left,.reel-right{position:relative;z-index:3;padding:5.5vh 3.3vw 4.5vh}.reel-left{display:flex;flex-direction:column}.reel-count{display:flex;align-items:flex-end;gap:9px;margin-top:20vh}.reel-count strong{font:400 clamp(74px,8vw,132px)/.72 'Manrope';letter-spacing:-.085em}.reel-count span{font:500 17px 'Manrope';color:#777}.reel-category{display:flex;align-items:center;gap:10px;margin-top:28px;color:#d6d1ca;text-transform:uppercase;letter-spacing:.14em;font-size:10px}.reel-category i{display:block;width:20px;height:2px;background:var(--red)}.reel-brandline{margin-top:auto;display:grid;gap:3px}.reel-brandline span{font:600 11px 'Manrope';letter-spacing:.16em}.reel-brandline small{color:#6c6965;font-size:8px;letter-spacing:.19em}
.reel-centre{position:relative;min-width:0}.reel-viewport{position:absolute;inset:0;overflow:hidden;mask-image:linear-gradient(transparent 0,#000 14%,#000 86%,transparent 100%)}.reel-track{position:absolute;left:5%;right:5%;top:50%;transform:translateY(calc(-23vh - (var(--active-index) * 49vh)));transition:transform .9s cubic-bezier(.16,1,.3,1);will-change:transform}.reel-card{height:46vh;min-height:310px;margin-bottom:3vh;display:block;position:relative;overflow:hidden;background:#171717;opacity:.2;transform:scale(.91);transition:opacity .65s,transform .9s cubic-bezier(.16,1,.3,1),filter .65s;filter:grayscale(.65)}.reel-card.active{opacity:1;transform:scale(1);filter:none;box-shadow:0 35px 80px #0009}.reel-card img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s}.reel-card.active:hover img{transform:scale(1.035)}.reel-card:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 50%,#050505d9)}.reel-card-title{position:absolute;z-index:2;left:24px;right:80px;bottom:22px;font:500 clamp(22px,2.3vw,40px)/1 'Manrope';letter-spacing:-.035em}.reel-open{position:absolute;z-index:2;right:20px;bottom:23px;font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:#ddd}.reel-year,.reel-mode{position:absolute;z-index:4;top:50%;font-size:9px;letter-spacing:.16em;color:#aaa}.reel-year{left:-29px;transform:translate(-100%,-50%)}.reel-mode{right:-35px;transform:translate(100%,-50%)}
.reel-right{display:flex;flex-direction:column}.reel-topline{display:flex;align-items:center;justify-content:space-between;color:#777;font-size:9px;letter-spacing:.12em}.reel-topline a{background:var(--red);color:#fff;padding:12px 17px;font-weight:600}.reel-index{margin-top:8vh;display:grid;max-width:390px}.reel-index button{display:grid;grid-template-columns:32px 1fr;gap:10px;text-align:left;border:0;background:none;color:#54514e;padding:5px 0;font:500 clamp(11px,1vw,15px)/1.15 'Manrope';text-transform:uppercase;cursor:pointer;transition:.3s}.reel-index button span{font-size:8px;color:#494643}.reel-index button:hover{color:#bdb8b1}.reel-index button.active{color:#fff;transform:translateX(10px)}.reel-index button.active span{color:var(--red)}.reel-description{margin-top:auto;max-width:420px}.reel-description>span{font-size:8px;color:var(--red);letter-spacing:.17em}.reel-description p{color:#9c9892;font-size:13px;line-height:1.5;margin:8px 0 14px;min-height:40px}.reel-description a{font-size:9px;text-transform:uppercase;letter-spacing:.13em}.reel-showcase .perspective-progress{z-index:8}.reel-showcase .perspective-progress i{width:10%}
@media(max-width:1100px) and (min-width:851px){.reel-layout{grid-template-columns:20% 47% 33%}.reel-left,.reel-right{padding-left:2vw;padding-right:2vw}.reel-count strong{font-size:76px}.reel-index{margin-top:5vh}.reel-index button{font-size:11px}.reel-description p{font-size:11px}.reel-year,.reel-mode{display:none}}

/* Reference-matched editorial proportions */
@media(min-width:851px){
 body.home-perspective{background:#f1eee7;color:#111}
 .home-perspective .header{height:82px;padding:0 max(4vw,calc((100vw - 1500px)/2));background:#f1eee7;color:#111;border-bottom:1px solid #d7d2c9;backdrop-filter:none;display:grid;grid-template-columns:170px minmax(0,1fr) auto;gap:32px}
 .home-perspective .brand img{filter:invert(1);width:142px;height:52px}
 .home-perspective .header nav{color:#222;gap:27px;margin-left:0;margin-right:190px;justify-self:end}
 .home-perspective .header nav a:hover{color:var(--red)}
 .home-perspective .submenu{background:#f1eee7;border-color:#c8c2b8;color:#111;box-shadow:0 18px 45px #332b201f}
 .home-perspective .submenu a:hover{background:#e5e0d7}
 .home-perspective .header>.button{padding:13px 19px;white-space:nowrap;position:absolute;top:18px;right:4vw}
 .reel-showcase{background:#f1eee7;color:#111}
 .reel-showcase:before{background:linear-gradient(90deg,transparent 24.95%,#cfc8bd 25%,transparent 25.08%,transparent 65%,#cfc8bd 65.08%,transparent 65.16%)}
 .reel-layout{height:100%;max-width:1500px;margin:auto;padding-top:82px;grid-template-columns:25% 40% 35%}
 .reel-left,.reel-right{padding:4.5vh 2.7vw 3.5vh}
 .reel-count{margin-top:23vh}
 .reel-count strong{font-size:clamp(70px,6.3vw,112px);color:#0b0b0b}
 .reel-count span{color:#555}
 .reel-category{color:#181818;margin-top:24px}
 .reel-brandline small,.reel-topline,.reel-description p{color:#746f67}
 .reel-centre{border-left:1px solid #d3cdc3;border-right:1px solid #d3cdc3}
 .reel-viewport{mask-image:linear-gradient(transparent 0,#000 12%,#000 88%,transparent 100%)}
 .reel-track{left:12%;right:12%;top:40%;transform:translateY(calc(-17vh - (var(--active-index) * 37vh)))}
 .reel-card{height:34vh;min-height:270px;margin-bottom:3vh;background:#d9d3ca;opacity:.17;transform:scale(.96);filter:grayscale(.45);box-shadow:none}
 .reel-card.active{opacity:1;box-shadow:0 24px 55px #4a40332b}
 .reel-card:after{background:linear-gradient(transparent 73%,#09090975)}
 .reel-card-title{display:none}
 .reel-open{right:16px;bottom:14px;color:#fff}
 .reel-year{left:-14px;color:#26231f}
 .reel-mode{display:none}
 .reel-right{padding-left:3.4vw}
 .reel-topline{font-weight:600}
 .reel-topline a{padding:11px 15px}
 .reel-index{margin-top:7vh;max-width:330px;gap:0}
 .reel-index button{grid-template-columns:28px 1fr;padding:4px 0;color:#aaa39a;font-size:clamp(10px,.86vw,13px);line-height:1.05}
 .reel-index button span{color:#a69f96}
 .reel-index button:hover{color:#5d5851}
 .reel-index button.active{color:#111;transform:translateX(7px);font-weight:700}
 .reel-description{max-width:360px;padding-bottom:1vh;margin-top:5vh}
 .reel-description p{font-size:12px;line-height:1.45;margin:6px 0 10px;min-height:34px}
 .reel-description a{color:#111;font-weight:600}
 .reel-showcase .perspective-progress{background:#d4cec4}
}
@media(max-width:1200px) and (min-width:851px){
 .reel-layout{grid-template-columns:22% 44% 34%}
 .reel-left,.reel-right{padding-left:2vw;padding-right:2vw}
 .reel-track{left:9%;right:9%}
 .reel-index{margin-top:5vh}
 .reel-index button{font-size:10px;padding:3px 0}
 .reel-mode,.reel-year{display:none}
}

@media(min-width:851px){.reel-track{transform:translateY(var(--track-shift,-17vh))}}

/* Atmospheric black/red homepage depth */
@media(min-width:851px){
 body.home-perspective{background:linear-gradient(135deg,#030303 0%,#130305 48%,#070707 100%)}
 .home-perspective .header{background:linear-gradient(90deg,rgba(5,5,5,.98),rgba(23,3,6,.96) 54%,rgba(6,6,6,.98));box-shadow:0 12px 45px #0008}
 .reel-showcase{isolation:isolate;background:linear-gradient(125deg,#040404 0%,#0b0506 32%,#180307 58%,#060606 100%)}
 .reel-showcase:before{z-index:-2;background:radial-gradient(circle at 14% 32%,rgba(139,8,18,.22),transparent 28%),radial-gradient(circle at 50% 42%,rgba(218,10,25,.28),transparent 24%),radial-gradient(circle at 91% 78%,rgba(105,5,15,.24),transparent 27%),linear-gradient(90deg,transparent 24.95%,rgba(255,255,255,.12) 25%,transparent 25.08%,transparent 65%,rgba(255,255,255,.11) 65.08%,transparent 65.16%)}
 .reel-showcase:after{content:'';position:absolute;z-index:-1;width:46vw;height:58vh;left:27%;top:19%;border-radius:50%;background:radial-gradient(ellipse,rgba(237,28,36,.18),rgba(115,3,12,.08) 40%,transparent 70%);filter:blur(36px);pointer-events:none;animation:reelAura 9s ease-in-out infinite alternate}
 .reel-left{background:linear-gradient(110deg,rgba(0,0,0,.36),transparent 75%)}
 .reel-right{background:linear-gradient(250deg,rgba(0,0,0,.3),transparent 78%)}
 .reel-centre{background:linear-gradient(180deg,rgba(255,255,255,.018),rgba(75,0,7,.055),rgba(0,0,0,.08))}
}
@keyframes reelAura{0%{transform:translate3d(-3%,-2%,0) scale(.96);opacity:.72}100%{transform:translate3d(4%,3%,0) scale(1.08);opacity:1}}
@media(prefers-reduced-motion:reduce){.reel-showcase:after{animation:none}}

/* Magik Touch palette: reference motion, original black/red identity */
@media(min-width:851px){
 body.home-perspective{background:#070707;color:#f5f2ed}
 .home-perspective .header{background:#080808;color:#fff;border-bottom-color:#262626}
 .home-perspective .brand img{filter:none}
 .home-perspective .header nav{color:#c8c5c0}
 .home-perspective .header nav a:hover{color:#fff}
 .home-perspective .submenu{background:#101010;border-color:#303030;color:#fff;box-shadow:0 18px 45px #000b}
 .home-perspective .submenu a:hover{background:#1c1c1c}
 .reel-showcase{background:#070707;color:#f5f2ed}
 .reel-showcase:before{background:radial-gradient(circle at 46% 42%,#3c080c 0,transparent 24%),linear-gradient(90deg,transparent 24.95%,#292929 25%,transparent 25.08%,transparent 65%,#292929 65.08%,transparent 65.16%)}
 .reel-count strong{color:#fff}
 .reel-count span{color:#777}
 .reel-category{color:#e3dfda}
 .reel-brandline small,.reel-topline,.reel-description p{color:#88837d}
 .reel-centre{border-left-color:#292929;border-right-color:#292929}
 .reel-card{background:#171717;opacity:.15;filter:grayscale(.65) brightness(.6)}
 .reel-card.active{opacity:1;filter:none;box-shadow:0 24px 65px #000;border:1px solid #3a2929}
 .reel-year{color:#aaa}
 .reel-index button{color:#55514e}
 .reel-index button span{color:#4d4946}
 .reel-index button:hover{color:#aaa49e}
 .reel-index button.active{color:#fff}
 .reel-description a{color:#fff}
 .reel-showcase .perspective-progress{background:#242424}
}

/* Readable experience index and image-hover details */
@media(min-width:851px){
 .reel-card.active{z-index:2;opacity:1!important;filter:none!important}
 .reel-card.active img{filter:brightness(1.18) saturate(1.08);opacity:1}
 .reel-card:after{background:linear-gradient(transparent 62%,#050505e8);opacity:.18;transition:opacity .35s}
 .reel-card:hover:after,.reel-card:focus-visible:after{opacity:1}
 .reel-hover-copy{position:absolute;z-index:4;left:24px;right:72px;bottom:22px;display:grid;gap:7px;color:#fff;opacity:0;transform:translateY(16px);transition:opacity .35s,transform .35s;pointer-events:none}
 .reel-hover-copy strong{font:600 clamp(22px,2vw,34px)/1.05 'Manrope';letter-spacing:-.035em}
 .reel-hover-copy small{font-size:12px;line-height:1.45;color:#dedad4;max-width:520px}
 .reel-card:hover .reel-hover-copy,.reel-card:focus-visible .reel-hover-copy{opacity:1;transform:none}
 .reel-card:hover .reel-open,.reel-card:focus-visible .reel-open{color:var(--red)}
 .reel-index{max-width:440px;margin-top:6vh}
 .reel-index button{grid-template-columns:32px 1fr;padding:6px 0;font-size:clamp(14px,1.08vw,19px);color:#8a8580;line-height:1.08;letter-spacing:-.015em}
 .reel-index button span{font-size:10px;padding-top:3px}
 .reel-index button.active{color:#fff;transform:translateX(9px)}
 .reel-all-link{display:inline-block;margin-top:5vh;color:#fff;font-size:10px;text-transform:uppercase;letter-spacing:.14em;font-weight:600}
 .reel-all-link:hover{color:var(--red)}
}
@media(max-width:1200px) and (min-width:851px){
 .reel-index{margin-top:4vh}
 .reel-index button{padding:4px 0;font-size:13px}
 .reel-all-link{margin-top:3vh}
}

@media(min-width:851px){
 body.home-perspective{background:linear-gradient(135deg,#030303 0%,#130305 48%,#070707 100%)}
 .home-perspective .header{background:linear-gradient(90deg,rgba(5,5,5,.98),rgba(23,3,6,.96) 54%,rgba(6,6,6,.98))}
 .home-perspective .header{grid-template-columns:220px minmax(0,1fr) auto}
 .home-perspective .brand img{width:190px;height:68px}
 .reel-showcase{background:linear-gradient(125deg,#040404 0%,#0b0506 32%,#180307 58%,#060606 100%)}
 .reel-showcase:before{background:radial-gradient(circle at 14% 32%,rgba(139,8,18,.22),transparent 28%),radial-gradient(circle at 50% 42%,rgba(218,10,25,.28),transparent 24%),radial-gradient(circle at 91% 78%,rgba(105,5,15,.24),transparent 27%),linear-gradient(90deg,transparent 24.95%,rgba(255,255,255,.12) 25%,transparent 25.08%,transparent 65%,rgba(255,255,255,.11) 65.08%,transparent 65.16%)}
 .reel-topline{display:grid;gap:11px;align-items:start;justify-content:stretch}
 .reel-topline>span{color:#a59f99;font-size:9px;letter-spacing:.15em}
 .reel-topline p{max-width:410px;margin:0;color:#d5d0ca;font-size:13px;line-height:1.48;letter-spacing:0;text-transform:none}
 .reel-scroll-hint{position:absolute;left:2.7vw;bottom:112px;margin:0;color:#8d8882;font-size:9px;letter-spacing:.15em;text-transform:uppercase;animation:scrollCue 2.2s ease-in-out infinite}
 .reel-scroll-hint b{display:inline-block;margin-right:8px;color:var(--red);font-size:14px}
 .reel-index{margin-top:3.5vh}
 .home-perspective .header nav{margin-right:245px}
 .home-perspective .header>.button{font-size:13px}
}
@keyframes scrollCue{50%{transform:translateY(5px);color:#d2cdc7}}
@media(max-height:760px) and (min-width:851px){.reel-topline{gap:6px}.reel-topline p{font-size:10px;line-height:1.35}.reel-index{margin-top:2vh}.reel-index button{padding:3px 0;font-size:12px}.reel-all-link{margin-top:2vh}.reel-scroll-hint{bottom:94px}}
@media(max-width:1300px) and (min-width:851px){.home-perspective .header nav{gap:17px;margin-right:215px}.home-perspective .header>.button{font-size:11px;padding-left:14px;padding-right:14px}}

@media(min-width:851px){
 .home-perspective .header nav{margin-right:155px}
 .home-perspective .header>.button{font-size:16px;padding:14px 27px}
 .reel-topline p{max-width:480px;font-size:18px;line-height:1.48;font-weight:500;color:#f1ede8}
 .reel-index{max-width:500px;margin-top:3vh}
 .reel-index button{grid-template-columns:34px 1fr;padding:7px 0;font-size:clamp(18px,1.24vw,24px);line-height:1.04}
 .reel-index button span{font-size:10px;padding-top:4px}
}
@media(max-height:760px) and (min-width:851px){
 .reel-topline p{font-size:13px;line-height:1.35}
 .reel-index{margin-top:1.5vh}
 .reel-index button{padding:3px 0;font-size:14px}
 .reel-all-link{margin-top:1.5vh}
}
@media(max-width:1300px) and (min-width:851px){.home-perspective .header nav{margin-right:135px}.home-perspective .header>.button{font-size:14px;padding-left:20px;padding-right:20px}}

/* Curved reel panels and moving concept timeline */
@media(min-width:851px){
 .reel-card{clip-path:polygon(3% 0,97% 0,100% 100%,0 100%);border-radius:48% 48% 3px 3px / 5% 5% 2px 2px;transform-origin:50% 0}
 .reel-card.active{clip-path:polygon(1.5% 0,98.5% 0,100% 100%,0 100%);border-radius:48% 48% 3px 3px / 4% 4% 2px 2px}
 .reel-index{transform:translateY(var(--index-shift,0));transition:transform .75s cubic-bezier(.16,1,.3,1)}
 .reel-index button{transition:color .35s,opacity .35s,transform .55s,margin .55s}
 .reel-index button.past{color:#56514e;opacity:.42;transform:translateX(-5px)}
 .reel-index button.active{margin-bottom:34px;opacity:1;transform:translateX(9px)}
 .reel-index button.future{opacity:.72}
}
@media(max-height:760px) and (min-width:851px){.reel-index button.active{margin-bottom:20px}}

@media(min-width:851px){
 .reel-index-window{height:min(55vh,610px);margin-top:3vh;overflow:hidden;padding:7px 0 16px;mask-image:linear-gradient(to bottom,transparent 0,#000 5%,#000 96%,transparent 100%)}
 .reel-index{margin-top:0!important;max-width:520px}
 .reel-index button{padding:10px 0}
 .reel-index button.active{margin-bottom:42px}
 .reel-all-link{margin-top:auto;margin-bottom:2vh}
}
@media(max-height:760px) and (min-width:851px){
 .reel-index-window{height:47vh;margin-top:1.5vh;padding-top:4px}
 .reel-index button{padding:4px 0}
 .reel-index button.active{margin-bottom:24px}
 .reel-all-link{margin-top:auto;margin-bottom:0}
}

@media(min-width:851px){
 .reel-card,.reel-card.active{border-radius:0;clip-path:polygon(.4% 1%,15% .4%,35% 0,65% 0,85% .4%,99.6% 1%,99.3% 20%,98.9% 40%,98.8% 50%,98.9% 60%,99.3% 80%,99.6% 99%,85% 99.6%,65% 100%,35% 100%,15% 99.6%,.4% 99%,.7% 80%,1.1% 60%,1.2% 50%,1.1% 40%,.7% 20%)}
}

/* Simple corporate catalogue for inner experience pages */
@media(min-width:851px){
 .category-library{background:#080808}
 .category-library .header{background:rgba(7,7,7,.96);border-bottom:1px solid #272727}
 .category-library .category-hero{min-height:470px;padding:145px 7vw 75px;background:radial-gradient(circle at 82% 30%,rgba(153,8,17,.3),transparent 30%),linear-gradient(125deg,#070707,#130507 62%,#080808)}
 .category-library .category-hero h1{font-size:clamp(58px,6vw,92px);max-width:1200px;margin:20px 0}
 .category-library .category-hero p{font-size:18px;max-width:720px;margin-bottom:28px}
 .category-library .experience-gallery{padding:80px 5vw 110px;background:#0a0a0a}
 .category-library .gallery-intro{grid-template-columns:1fr .75fr;gap:7vw;align-items:end;margin-bottom:35px}
 .category-library .gallery-intro h2{font-size:clamp(42px,4.6vw,68px);line-height:.98;margin-top:15px}
 .category-library .filters{margin:0 0 32px;gap:9px}
 .category-library .filters>a{padding:11px 18px;border-radius:2px}
 .category-library .gallery-wall{display:grid;height:auto;overflow:visible;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;background:transparent;scroll-snap-type:none}
 .category-library .gallery-wall .concept-card,.category-library .gallery-wall .concept-card:nth-child(n){grid-column:auto;height:auto;min-height:0;border:1px solid #292929;background:#101010;opacity:1;transform:none;overflow:hidden;transition:transform .35s,border-color .35s,box-shadow .35s}
 .category-library .gallery-wall .concept-card:hover{transform:translateY(-6px);border-color:#5b2528;box-shadow:0 22px 55px #0008}
 .category-library .gallery-wall .concept-card>a{height:auto}
 .category-library .gallery-wall .media,.category-library .gallery-wall .concept-card:nth-child(n) .media{position:relative;inset:auto;height:auto;aspect-ratio:4/3}
 .category-library .gallery-wall .media:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 72%,rgba(0,0,0,.5))}
 .category-library .gallery-wall .media img{width:100%;height:100%;object-fit:cover;filter:saturate(.88);animation:none;transition:transform .55s,filter .55s}
 .category-library .gallery-wall .concept-card:hover img{transform:scale(1.035);filter:saturate(1.05)}
 .category-library .gallery-wall .card-copy{position:relative;inset:auto;padding:24px 24px 28px}
 .category-library .gallery-wall .card-copy small{display:inline-block;color:var(--red);background:transparent;padding:0;font-size:9px;letter-spacing:.14em}
 .category-library .gallery-wall .card-copy h3{font-size:clamp(22px,1.7vw,29px);margin:11px 0 12px}
 .category-library .gallery-wall .card-copy p{min-height:68px;color:#a9a5a0;font-size:14px;line-height:1.55;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
 .category-library .gallery-wall .text-link{display:inline-block;margin-top:15px;color:#fff;text-transform:uppercase;font-size:9px;letter-spacing:.14em}
 .category-library .mobile-actions,.category-library .feed-progress,.category-library .swipe-hint{display:none}
}
@media(max-width:1100px) and (min-width:851px){.category-library .gallery-wall{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Layered inner-page experience journey */
@media(min-width:851px){
 .category-spotlight{height:min(82vh,820px);min-height:650px;position:relative;overflow:hidden;background:#090909}
 .spotlight-slide{position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity .8s}
 .spotlight-slide.active{opacity:1;pointer-events:auto}
 .spotlight-slide:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#050505 5%,rgba(5,5,5,.88) 36%,rgba(5,5,5,.2) 70%,rgba(5,5,5,.72)),linear-gradient(0deg,#070707 0,transparent 42%)}
 .spotlight-slide>img{width:100%;height:100%;object-fit:cover;filter:saturate(.85);transform:scale(1.03);transition:transform 6s ease}
 .spotlight-slide.active>img{transform:scale(1)}
 .spotlight-slide>div{position:absolute;z-index:2;left:7vw;top:50%;transform:translateY(-43%);max-width:690px}
 .spotlight-slide h1{font:500 clamp(58px,6.5vw,104px)/.92 'Manrope';letter-spacing:-.06em;margin:22px 0}
 .spotlight-slide p{font-size:18px;color:#c1bdb7;max-width:590px}
 .spotlight-reel{display:inline-block;margin-left:24px;font-size:10px;text-transform:uppercase;letter-spacing:.14em}
 .spotlight-nav{position:absolute;z-index:5;right:6vw;bottom:45px;display:flex;align-items:center;gap:15px}
 .spotlight-nav button{width:48px;height:48px;border:1px solid #666;border-radius:50%;background:#080808a8;color:#fff;cursor:pointer}
 .spotlight-nav button:hover{background:var(--red);border-color:var(--red)}
 .spotlight-nav span{font-size:10px;letter-spacing:.14em}

 .editorial-concepts{padding:120px 5vw;background:#efe9de;color:#0a0a0a;display:grid;grid-template-columns:.72fr 1.6fr;gap:6vw;align-items:start}
 .editorial-intro{position:sticky;top:120px;padding-bottom:50px}
 .editorial-intro h2{font:600 clamp(54px,5.5vw,88px)/.91 'Manrope';letter-spacing:-.055em;margin:25px 0}
 .editorial-intro p{font-size:17px;color:#5f5a53;max-width:470px}
 .editorial-intro>a{display:inline-block;margin-top:25px;background:#0a0a0a;color:#fff;padding:17px 22px;font-weight:600}
 .editorial-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
 .editorial-card{min-height:430px;border:1px solid #cbc3b7;padding:32px;display:flex;flex-direction:column;position:relative;background:rgba(255,255,255,.18);transition:background .35s,transform .35s}
 .editorial-card:nth-child(3n+1){background:#e5ded2}
 .editorial-card:hover{background:#fff;transform:translateY(-5px)}
 .editorial-number{align-self:flex-end;color:var(--red);font:600 18px 'Manrope'}
 .editorial-card h3{font:600 clamp(27px,2.1vw,38px)/1.08 'Manrope';letter-spacing:-.04em;margin:30px 0 25px}
 .editorial-card p{color:#5d5851;min-height:70px}
 .editorial-card ul{list-style:none;padding:18px 0 0;margin:auto 0 25px;border-top:1px solid #cbc3b7}
 .editorial-card li{padding:7px 0;color:#302e2a}.editorial-card li:before{content:'•';color:var(--red);margin-right:10px}
 .editorial-card b{display:flex;width:48px;height:48px;align-items:center;justify-content:center;background:#0a0a0a;color:#fff;font-size:22px}

 .horizontal-concepts{position:relative;background:#080808;color:#fff}
 .horizontal-sticky{position:sticky;top:0;height:100vh;overflow:hidden;padding:105px 0 50px}
 .horizontal-heading{padding:0 6vw 35px;display:grid;grid-template-columns:1fr 1fr;align-items:end}
 .horizontal-heading h2{font:500 clamp(58px,6vw,94px)/.9 'Manrope';letter-spacing:-.06em;margin:15px 0 0}
 .horizontal-heading p{justify-self:end;color:#999}
 .horizontal-track{display:flex;gap:24px;width:max-content;padding:0 6vw;will-change:transform;transform:translate3d(var(--horizontal-x,0px),0,0)}
 .horizontal-card{width:min(42vw,620px);flex:0 0 auto;position:relative;background:#121212;border:1px solid #292929;padding-bottom:25px}
 .horizontal-card img{width:100%;height:42vh;min-height:300px;object-fit:cover;filter:saturate(.85)}
 .horizontal-card small{display:block;color:var(--red);font-size:9px;letter-spacing:.14em;text-transform:uppercase;margin:20px 24px 0}
 .horizontal-card h3{font:500 clamp(27px,2.5vw,42px)/1 'Manrope';letter-spacing:-.04em;margin:10px 24px 20px}
 .horizontal-card>span{margin:0 24px;font-size:9px;letter-spacing:.14em;text-transform:uppercase}

 .client-marquee{padding:110px 0;background:#efe9de;color:#0a0a0a;overflow:hidden;text-align:center}
 .client-marquee h2{font:600 clamp(50px,5.5vw,86px)/.94 'Manrope';letter-spacing:-.055em;margin:22px auto 60px;max-width:1050px}
 .logo-marquee{border-top:1px solid #cbc3b7;border-bottom:1px solid #cbc3b7;overflow:hidden}
 .logo-marquee>div{display:flex;width:max-content;animation:logoFlow 28s linear infinite}
 .logo-marquee span{width:260px;height:130px;display:flex;align-items:center;justify-content:center;border-right:1px solid #cbc3b7;font:700 23px 'Manrope';letter-spacing:.05em;color:#413d37}
 @keyframes logoFlow{to{transform:translateX(-50%)}}
}
@media(max-width:1100px) and (min-width:851px){.editorial-concepts{grid-template-columns:1fr}.editorial-intro{position:relative;top:auto}.horizontal-card{width:55vw}}
@media(max-width:850px){.category-spotlight,.editorial-concepts,.horizontal-concepts,.client-marquee{display:none}}
@media(prefers-reduced-motion:reduce){.logo-marquee>div{animation:none}.spotlight-slide>img{transition:none}}

/* Upward-scrolling concept showcase */
@media(min-width:851px){
 .explore-steps{height:calc(100vh + (var(--step-count) * 72vh));position:relative;background:linear-gradient(135deg,#080808,#180508 58%,#090909);color:#fff}
 .explore-sticky{position:sticky;top:105px;height:min(68vh,640px);min-height:0;overflow:hidden;display:grid;grid-template-columns:29% 71%;padding:0 2.4vw}
 .explore-intro{position:relative;padding:3.2vh 3vw 2.8vh 2.6vw;border:1px solid #3b2428;border-right:0}
 .explore-intro h2{font:500 clamp(40px,3.8vw,62px)/.91 'Manrope';letter-spacing:-.06em;margin:19px 0 15px}
 .explore-intro p{max-width:300px;color:#aaa4a0;font-size:14px;line-height:1.5}
 .explore-intro>strong{position:absolute;left:2.6vw;bottom:2vh;font:500 clamp(52px,5.1vw,84px)/1 'Manrope';letter-spacing:-.07em}
 .explore-intro>strong span{color:#fff}
 .explore-stage{position:relative;overflow:hidden;border:1px solid #3b2428}
 .explore-step{position:absolute;inset:0;display:grid;grid-template-columns:52% 48%;color:#fff;background:linear-gradient(125deg,#100708,#21070b);opacity:0;transform:translateY(105%);transition:transform .78s cubic-bezier(.16,1,.3,1),opacity .45s;pointer-events:none}
 .explore-step.active{opacity:1;transform:translateY(0);pointer-events:auto;z-index:2}
 .explore-step.past{opacity:0;transform:translateY(-105%);z-index:1}
 .explore-step.future{opacity:0;transform:translateY(105%);z-index:0}
 .explore-image{height:100%;overflow:hidden;background:#111}
 .explore-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.88) brightness(.88);transition:transform 1.1s cubic-bezier(.16,1,.3,1),filter .5s}
 .explore-step.active .explore-image img{transform:scale(1.025);filter:saturate(1) brightness(.94)}
 .explore-copy{padding:3.2vh 3.3vw;display:flex;flex-direction:column;border-left:1px solid #41252a;background:radial-gradient(circle at 85% 15%,rgba(237,28,36,.17),transparent 31%),linear-gradient(145deg,#15090a,#25070c)}
 .explore-copy small{color:#ff3b43;font-size:10px;letter-spacing:.16em;text-transform:uppercase}
 .explore-copy h3{font:600 clamp(28px,2.6vw,44px)/.98 'Manrope';letter-spacing:-.05em;margin:2.5vh 0 15px}
 .explore-copy>p{color:#bbb4ae;font-size:14px;line-height:1.48;max-width:450px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
 .explore-copy>div{margin-top:auto;padding-top:26px;border-top:1px solid #543138;display:grid;gap:12px}
 .explore-copy>div span{color:#ff6269;font-size:9px;letter-spacing:.15em}
 .explore-copy>div b{font-size:16px;color:#eee9e4}
 .explore-copy em{margin-top:auto;color:#fff;font-style:normal;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
}
@media(max-width:1100px) and (min-width:851px){.explore-sticky{grid-template-columns:34% 66%}.explore-step{grid-template-columns:50% 50%}.explore-copy{padding-left:3vw;padding-right:3vw}}
@media(max-width:850px){.explore-steps{display:none}}
@media(prefers-reduced-motion:reduce){.explore-step{transition:none}.explore-image img{transition:none}}

/* Horizontal ideas gallery with lightweight displacement-inspired hover */
@media(min-width:851px){
 .ideas-showcase{height:calc(142vh + (var(--idea-count) * 38vw));position:relative;background:linear-gradient(135deg,#080808,#160407 60%,#080808);color:#fff}
 .ideas-heading{min-height:48vh;display:grid;grid-template-columns:1.15fr .7fr;gap:8vw;align-items:end;padding:115px 5vw 55px}
 .ideas-sticky{position:sticky;top:86px;height:calc(100vh - 86px);min-height:604px;overflow:hidden;padding:28px 0 36px}
 .ideas-heading h2{font:500 clamp(48px,5vw,82px)/.91 'Manrope';letter-spacing:-.06em;margin:20px 0 0}
 .ideas-heading>p{max-width:490px;color:#aaa4a0;font-size:15px;line-height:1.55;margin-bottom:7px}
 .ideas-track{display:flex;gap:28px;width:max-content;padding:0 5vw;transform:translate3d(var(--ideas-x,0px),0,0);will-change:transform}
 .ideas-card{width:min(43vw,680px);flex:0 0 auto;color:#fff}
 .ideas-media{height:55vh;max-height:520px;min-height:350px;position:relative;overflow:hidden;background:#140609;border:1px solid #3b2428;isolation:isolate}
 .ideas-media>img{width:100%;height:100%;object-fit:cover;filter:saturate(.85) brightness(.9);transition:transform .75s cubic-bezier(.16,1,.3,1),filter .5s}
 .ideas-media .ideas-echo{position:absolute;inset:0;z-index:2;opacity:0;mix-blend-mode:screen;filter:saturate(1.8) contrast(1.25) sepia(.2) hue-rotate(320deg);pointer-events:none}
 .ideas-media:after{content:'';position:absolute;z-index:3;inset:0;background:linear-gradient(110deg,transparent 25%,rgba(237,28,36,.28) 48%,transparent 68%);transform:translateX(-120%);pointer-events:none}
 .ideas-card:hover .ideas-media>img:first-child{transform:scale(1.055);filter:saturate(1.06) brightness(.93)}
 .ideas-card:hover .ideas-echo{animation:ideasGlitch .72s steps(2,end) both}
 .ideas-card:hover .ideas-media:after{animation:ideasSweep .8s ease both}
 .ideas-media small{position:absolute;z-index:5;left:22px;top:22px;padding:9px 13px;border-radius:30px;background:#090909e8;color:#fff;font-size:10px;letter-spacing:.12em;text-transform:uppercase}
 .ideas-media span{position:absolute;z-index:5;right:22px;bottom:20px;color:#fff;font-size:10px;letter-spacing:.14em;opacity:0;transform:translateY(12px);transition:.35s}
 .ideas-card:hover .ideas-media span{opacity:1;transform:none}
 .ideas-meta{display:flex;align-items:start;justify-content:space-between;gap:25px;padding:18px 2px 0}
 .ideas-meta h3{font:600 clamp(25px,2.25vw,38px)/1 'Manrope';letter-spacing:-.045em;margin:0}
 .ideas-meta b{color:#ff3e46;font:600 14px 'Manrope';white-space:nowrap}
 .ideas-progress{position:absolute;left:5vw;right:5vw;bottom:17px;height:2px;background:#332327}
 .ideas-progress i{display:block;width:var(--ideas-progress,0%);height:100%;background:var(--red)}
 @keyframes ideasGlitch{0%{opacity:0;clip-path:inset(0 0 100% 0);transform:translate(0)}25%{opacity:.6;clip-path:inset(12% 0 58% 0);transform:translate(-14px,3px)}50%{opacity:.38;clip-path:inset(48% 0 22% 0);transform:translate(12px,-2px)}75%{opacity:.48;clip-path:inset(70% 0 7% 0);transform:translate(-7px,2px)}100%{opacity:0;clip-path:inset(0);transform:translate(0)}}
 @keyframes ideasSweep{0%{transform:translateX(-120%)}100%{transform:translateX(120%)}}
}
@media(max-width:1100px) and (min-width:851px){.ideas-card{width:55vw}.ideas-heading{grid-template-columns:1fr .75fr}}
@media(max-width:850px){.ideas-showcase{display:none}}
@media(prefers-reduced-motion:reduce){.ideas-track{transform:none}.ideas-card:hover .ideas-echo,.ideas-card:hover .ideas-media:after{animation:none}.ideas-media>img{transition:none}}

/* Typography-led inner hero expanding into a full-width concept film */
@media(min-width:851px){
 .category-intro-reveal{--intro-progress:0;--intro-width:58vw;--intro-height:35vh;--intro-media-bottom:-38vh;--intro-copy-opacity:1;--intro-label-opacity:1;--intro-copy-y:0;--intro-radius:20px;height:225vh;position:relative;background:radial-gradient(circle at 18% 48%,rgba(237,28,36,.12),transparent 27%),linear-gradient(135deg,#080808,#170407 58%,#080808);color:#fff}
 .intro-reveal-sticky{position:sticky;top:86px;height:calc(100vh - 86px);overflow:hidden}
 .intro-reveal-copy{position:absolute;z-index:2;inset:0;padding:7vh 5vw 5vh;display:grid;grid-template-columns:39% 61%;align-items:center;gap:4vw;opacity:var(--intro-copy-opacity);transform:translateY(var(--intro-copy-y));pointer-events:none}
 .intro-statement{align-self:center;padding-top:1vh}
 .intro-reveal-copy h1{font:700 clamp(46px,5.05vw,88px)/.93 'Syne','Manrope',sans-serif;letter-spacing:-.055em;text-transform:uppercase;margin:3vh 0 0;max-width:1050px}
 .intro-reveal-copy h1 i{font-style:normal;color:var(--red);font-weight:400}
 .intro-statement>div{display:grid;grid-template-columns:1fr auto;gap:3vw;align-items:end;margin-top:5vh}
 .intro-reveal-copy p{max-width:510px;color:#bbb5af;font-size:16px;line-height:1.55}
 .intro-reveal-copy a{color:#fff;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;pointer-events:auto;white-space:nowrap}
 .intro-reveal-media{position:absolute;z-index:3;left:50%;bottom:var(--intro-media-bottom);width:var(--intro-width);height:var(--intro-height);transform:translateX(-50%);overflow:hidden;background:#120609;border-radius:var(--intro-radius);box-shadow:0 -18px 70px #0008}
 .intro-motion-mark{width:min(29vw,430px);aspect-ratio:1;position:relative;justify-self:center;perspective:900px;transform-style:preserve-3d;animation:markFloat 5s ease-in-out infinite}
 .intro-motion-mark:before{content:'';position:absolute;inset:10%;border:1px solid #612028;border-radius:50%;box-shadow:0 0 80px rgba(237,28,36,.18)}
 .intro-motion-mark span{position:absolute;width:24%;aspect-ratio:1;background:linear-gradient(145deg,#f1242d,#5f070d 58%,#111);border:1px solid rgba(255,255,255,.18);box-shadow:14px 18px 35px #0008;transform:rotateX(58deg) rotateZ(45deg);animation:tilePulse 3.8s ease-in-out infinite alternate}
 .intro-motion-mark span:nth-child(1){left:38%;top:8%}.intro-motion-mark span:nth-child(2){left:18%;top:27%;animation-delay:-.4s}.intro-motion-mark span:nth-child(3){left:46%;top:31%;animation-delay:-.8s}.intro-motion-mark span:nth-child(4){left:67%;top:38%;animation-delay:-1.2s}.intro-motion-mark span:nth-child(5){left:27%;top:51%;animation-delay:-1.6s}.intro-motion-mark span:nth-child(6){left:53%;top:57%;animation-delay:-2s}.intro-motion-mark span:nth-child(7){left:10%;top:60%;animation-delay:-2.4s}.intro-motion-mark span:nth-child(8){left:38%;top:76%;animation-delay:-2.8s}.intro-motion-mark span:nth-child(9){left:72%;top:68%;animation-delay:-3.2s}
 .intro-motion-mark b{position:absolute;width:8px;height:8px;left:8%;top:4%;border-radius:50%;background:var(--red);box-shadow:0 0 24px var(--red);animation:markDot 3s ease-in-out infinite}
 .motion-interactive span{width:15%;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ff555b,#b10813 42%,#240207 70%);transform:none;box-shadow:0 0 30px rgba(237,28,36,.3);animation:nodePulse 2.8s ease-in-out infinite alternate}
 .motion-interactive:after{content:'';position:absolute;inset:18%;border:1px dashed #7f252c;border-radius:50%;animation:markSpin 14s linear infinite}
 .motion-video span{width:42%;height:18%;aspect-ratio:auto;background:linear-gradient(100deg,rgba(237,28,36,.8),rgba(63,3,10,.25));border:1px solid #ed1c24;box-shadow:0 14px 35px #0008;transform:skewY(-8deg);animation:frameShift 3.5s ease-in-out infinite alternate}
 .motion-video span:nth-child(odd){left:16%}.motion-video span:nth-child(even){left:45%}.motion-video span:nth-child(1){top:13%}.motion-video span:nth-child(2){top:22%}.motion-video span:nth-child(3){top:32%}.motion-video span:nth-child(4){top:41%}.motion-video span:nth-child(5){top:51%}.motion-video span:nth-child(6){top:60%}.motion-video span:nth-child(7){top:70%}.motion-video span:nth-child(8){top:79%}.motion-video span:nth-child(9){top:88%}
 .motion-photo span{left:50%!important;top:50%!important;background:transparent;border:2px solid rgba(237,28,36,.7);border-radius:50%;box-shadow:inset 0 0 30px rgba(237,28,36,.13),0 0 24px rgba(237,28,36,.12);transform:translate(-50%,-50%) rotate(var(--angle));animation:aperture 5s ease-in-out infinite alternate}
 .motion-photo span:nth-child(1){width:16%;--angle:10deg}.motion-photo span:nth-child(2){width:23%;--angle:30deg}.motion-photo span:nth-child(3){width:30%;--angle:50deg}.motion-photo span:nth-child(4){width:37%;--angle:70deg}.motion-photo span:nth-child(5){width:44%;--angle:90deg}.motion-photo span:nth-child(6){width:51%;--angle:110deg}.motion-photo span:nth-child(7){width:58%;--angle:130deg}.motion-photo span:nth-child(8){width:65%;--angle:150deg}.motion-photo span:nth-child(9){width:72%;--angle:170deg}
 .motion-all span{width:11%;border-radius:3px;transform:none;background:linear-gradient(145deg,#ff3840,#51070d);animation:constellation 4s ease-in-out infinite alternate}
 .intro-reveal-media>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;filter:saturate(.88) brightness(.78);animation:introFilm 16s infinite;transform:scale(1.05)}
 .intro-reveal-media>img:nth-of-type(1){animation-delay:0s}.intro-reveal-media>img:nth-of-type(2){animation-delay:4s}.intro-reveal-media>img:nth-of-type(3){animation-delay:8s}.intro-reveal-media>img:nth-of-type(4){animation-delay:12s}
 .intro-film-shade{position:absolute;z-index:2;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.78),transparent 48%),linear-gradient(90deg,rgba(63,0,7,.35),transparent 50%)}
 .intro-reveal-media>span,.intro-reveal-media>p,.intro-reveal-media>b{position:absolute;z-index:3;color:#fff}
 .intro-reveal-media>span{left:28px;top:25px;color:#ff4b53;font-size:9px;letter-spacing:.16em}
 .intro-reveal-media>p{left:28px;right:120px;bottom:24px;margin:0;font:600 clamp(18px,1.7vw,28px)/1.2 'Manrope'}
 .intro-reveal-media>b{right:25px;bottom:27px;font-size:8px;letter-spacing:.14em;opacity:var(--intro-label-opacity)}
 @keyframes introFilm{0%{opacity:0;transform:scale(1.08)}5%,23%{opacity:1}28%,100%{opacity:0}23%{transform:scale(1)}}
 @keyframes markFloat{50%{transform:translateY(-12px) rotate(.8deg)}}
 @keyframes markDot{50%{transform:translate(16px,-7px);opacity:.45}}
 @keyframes tilePulse{to{transform:rotateX(58deg) rotateZ(45deg) translate3d(7px,-8px,18px);filter:brightness(1.18)}}
 @keyframes nodePulse{to{transform:scale(1.24);filter:brightness(1.25)}}
 @keyframes markSpin{to{transform:rotate(360deg)}}
 @keyframes frameShift{to{transform:skewY(8deg) translateX(13px);filter:brightness(1.25)}}
 @keyframes aperture{to{transform:translate(-50%,-50%) rotate(55deg) scale(.9);border-color:rgba(255,255,255,.55)}}
 @keyframes constellation{to{transform:translate(12px,-13px) rotate(25deg);border-radius:50%;filter:brightness(1.3)}}
}
@media(max-width:1100px) and (min-width:851px){.intro-reveal-copy{grid-template-columns:34% 66%;gap:3vw}.intro-reveal-copy h1{font-size:5.4vw}.intro-motion-mark{width:27vw}}
@media(max-width:850px){.category-intro-reveal{display:none}}
@media(prefers-reduced-motion:reduce){.intro-reveal-media>img{animation:none;opacity:0}.intro-reveal-media>img:first-child{opacity:1}.intro-reveal-copy,.intro-reveal-media{transform:none}.intro-motion-mark,.intro-motion-mark b{animation:none}}

/* Company and team */
.about-page{background:#080808}.about-hero{min-height:calc(100vh - 88px);padding:105px 5vw 70px;background:radial-gradient(circle at 78% 18%,rgba(237,28,36,.18),transparent 27%),linear-gradient(135deg,#080808,#170407 62%,#090909);overflow:hidden}.about-hero-title{display:grid;grid-template-columns:.42fr 1fr;align-items:start}.about-hero h1{font:700 clamp(64px,8.4vw,150px)/.82 'Syne','Manrope',sans-serif;letter-spacing:-.075em;text-transform:uppercase;margin:38px 0 75px;grid-column:1/-1}.about-hero h1 em{font-style:normal;color:#ff363e}.about-manifesto{display:grid;grid-template-columns:1.1fr .75fr;gap:8vw;margin:0 0 65px 35vw}.about-manifesto h2{font:600 clamp(28px,3vw,50px)/1.08 'Manrope';letter-spacing:-.045em;margin:0}.about-manifesto p{color:#aaa5a0;font-size:16px;margin:0}.about-collage{display:grid;grid-template-columns:1.1fr .8fr 1fr .72fr;gap:14px;align-items:end}.about-collage figure{height:360px;margin:0;position:relative;overflow:hidden;background:#151515}.about-collage figure:nth-child(2),.about-collage figure:nth-child(4){height:290px}.about-collage img{width:100%;height:100%;object-fit:cover;filter:grayscale(.35) saturate(.75);transition:.6s}.about-collage figure:hover img{transform:scale(1.045);filter:none}.about-collage figcaption{position:absolute;left:16px;bottom:14px;padding:5px 9px;background:#080808d9;font-size:9px;letter-spacing:.12em;text-transform:uppercase}
.about-story{padding:120px 6vw;display:grid;grid-template-columns:1fr 1fr;gap:10vw;background:#eee8dc;color:#0b0b0b}.about-story h2,.about-direction h2,.about-team h2{font:600 clamp(52px,5.5vw,92px)/.92 'Manrope';letter-spacing:-.06em;margin:25px 0}.about-story>div:last-child{padding-top:55px}.about-story p{font-size:18px;line-height:1.65;color:#4f4a44}.about-story a{display:inline-block;margin-top:25px;padding-bottom:5px;border-bottom:2px solid var(--red);font-weight:700}.about-direction{padding:120px 6vw;background:linear-gradient(135deg,#080808,#1c0509)}.about-direction-head{display:grid;grid-template-columns:.45fr 1fr;align-items:start}.about-direction-head h2{grid-column:1/-1}.about-principles{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #3a282b;margin-top:55px}.about-principles article{padding:38px 40px 25px 0;border-right:1px solid #3a282b;min-height:300px}.about-principles article+article{padding-left:40px}.about-principles b{color:var(--red);font-size:12px}.about-principles h3{font:600 30px 'Manrope';margin:55px 0 18px}.about-principles p{color:#aaa5a0;font-size:16px}.about-team{padding:125px 5vw;background:#0b0b0b}.about-team-head{display:grid;grid-template-columns:1.35fr .65fr;gap:8vw;align-items:end;margin-bottom:70px}.about-team-head p{color:#aaa5a0;font-size:17px;max-width:470px}.team-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:55px 18px}.team-member:nth-child(4n+2),.team-member:nth-child(4n+4){padding-top:75px}.team-photo{height:420px;position:relative;overflow:hidden;background:#161616}.team-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,transparent 48%,rgba(237,28,36,.34));opacity:0;transition:.45s}.team-photo img{width:100%;height:100%;object-fit:cover;filter:grayscale(.65) saturate(.7);transition:.6s cubic-bezier(.16,1,.3,1)}.team-member:hover img{transform:scale(1.045);filter:grayscale(0) saturate(.95)}.team-member:hover .team-photo:after{opacity:1}.team-photo span{position:absolute;z-index:2;right:14px;top:14px;padding:5px 8px;background:#080808d9;color:#ff4c53;font-size:9px}.team-member h3{font:600 clamp(22px,1.8vw,31px)/1 'Manrope';letter-spacing:-.035em;margin:18px 0 7px}.team-member>p{color:#8e8984;margin:0;font-size:12px;letter-spacing:.12em;text-transform:uppercase}.about-cta{background:radial-gradient(circle at 78% 20%,rgba(237,28,36,.3),transparent 30%),linear-gradient(125deg,#080808,#35060c 55%,#110205)}
@media(max-width:1100px){.team-grid{grid-template-columns:repeat(3,1fr)}.team-member:nth-child(n){padding-top:0}.about-manifesto{margin-left:20vw}}
@media(max-width:850px){.about-hero{padding:70px 24px 45px;min-height:auto}.about-hero-title{display:block}.about-hero h1{font-size:16vw;margin:28px 0 45px}.about-manifesto{display:block;margin:0 0 40px}.about-manifesto h2{margin-bottom:20px}.about-collage{grid-template-columns:1fr 1fr}.about-collage figure,.about-collage figure:nth-child(n){height:260px}.about-story,.about-direction{padding:75px 24px;grid-template-columns:1fr}.about-story>div:last-child{padding-top:0}.about-direction-head{display:block}.about-principles{grid-template-columns:1fr}.about-principles article,.about-principles article+article{padding:28px 0;border-right:0;border-bottom:1px solid #3a282b;min-height:0}.about-principles h3{margin:28px 0 12px}.about-team{padding:75px 24px}.about-team-head{grid-template-columns:1fr;margin-bottom:45px}.team-grid{grid-template-columns:1fr 1fr;gap:35px 12px}.team-photo{height:300px}.team-member h3{font-size:20px}}
@media(max-width:520px){.about-collage figure,.about-collage figure:nth-child(n){height:210px}.team-grid{grid-template-columns:1fr}.team-photo{height:410px}}

/* Global social links */
footer{grid-template-columns:1.6fr 1.6fr 1.1fr auto auto;align-items:start}.footer-social{display:flex;gap:9px}.footer-social a{width:42px;height:42px;border:1px solid #3b3b3b;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#101010;transition:background .3s,border-color .3s,transform .3s}.footer-social a:hover{background:var(--red);border-color:var(--red);transform:translateY(-3px)}.footer-social img{width:17px;height:17px;object-fit:contain}.footer-copy{white-space:nowrap;margin-top:10px}
@media(max-width:1100px){footer{grid-template-columns:1fr 1fr 1fr}.footer-copy{grid-column:3}.footer-social{grid-column:1/3}}
@media(max-width:650px){footer{grid-template-columns:1fr}.footer-social,.footer-copy{grid-column:auto}.footer-social{margin-top:4px}.footer-copy{white-space:normal}}

/* Mobile-first experience refinements */
.nav-toggle{display:none}
@media(max-width:850px){
 .header .menu{min-width:58px;min-height:44px;padding:9px 12px;font-weight:600}
 .header nav.open{max-height:calc(100dvh - 74px);overflow-y:auto;padding:18px 20px 24px;gap:4px;border:1px solid #302326;background:rgba(9,7,8,.98);box-shadow:0 25px 55px #000b}
 .header nav.open>a,.header nav.open .nav-group>a{display:flex;align-items:center;min-height:48px;font-size:17px}
 .header nav.open .nav-group{display:grid;grid-template-columns:1fr 48px;border-bottom:1px solid #2d2526}
 .header nav.open .nav-group>a i{display:none}
 .nav-toggle{display:flex;align-items:center;justify-content:center;width:48px;height:48px;align-self:start;background:none;border:0;color:#fff;font-size:24px}
 .header nav.open .submenu{grid-column:1/-1;position:static;display:none;opacity:1;visibility:visible;transform:none;margin:0 0 10px;padding:0 0 6px 13px;border:0;border-left:1px solid var(--red);background:transparent}
 .header nav.open .nav-group.submenu-open .submenu{display:block}
 .header nav.open .submenu a{min-height:42px;display:flex;align-items:center;padding:7px 12px;color:#aaa5a0;font-size:14px}

 .filters{padding-bottom:8px;overscroll-behavior-x:contain;scroll-snap-type:x proximity}
 .filters:after{content:'';flex:0 0 30px}
 .filters>a,.filters>button{scroll-snap-align:center;min-height:40px}
 .experience-gallery:after,.catalogue:after{content:'';position:fixed;z-index:39;right:0;top:64px;width:34px;height:64px;pointer-events:none;background:linear-gradient(90deg,transparent,#050505)}
 .gallery-wall .card-copy,.card-copy{left:max(0px,env(safe-area-inset-left));right:76px;bottom:max(38px,env(safe-area-inset-bottom));padding:20px 18px}
 .gallery-wall .card-copy h3,.card-copy h3{font-size:clamp(29px,8.6vw,38px);line-height:1.03;margin:13px 0 8px}
 .gallery-wall .card-copy p,.card-copy p{-webkit-line-clamp:2;font-size:13px;line-height:1.45;margin:0}
 .mobile-actions{right:14px;bottom:max(54px,calc(env(safe-area-inset-bottom) + 46px));gap:8px}
 .mobile-actions a{width:54px;height:54px}
 .feed-progress{bottom:max(126px,calc(env(safe-area-inset-bottom) + 112px))}
 .swipe-hint{bottom:max(9px,env(safe-area-inset-bottom));left:18px}

 body.concept-page{background:#080707}
 .concept-page .breadcrumbs{min-height:42px;padding:10px 18px;margin-top:64px;font-size:9px}
 .concept-page .concept-detail-hero{position:relative;display:block;height:calc(100svh - 106px);min-height:610px;overflow:hidden;background:#080707}
 .concept-page .detail-media{position:absolute;inset:0;display:block;height:100%;min-height:0;order:0}
 .concept-page .detail-media:after{background:linear-gradient(180deg,rgba(4,4,4,.04) 12%,rgba(4,4,4,.12) 38%,rgba(4,4,4,.96) 78%,#070707 100%)}
 .concept-page .detail-media img{width:100%;height:100%;object-fit:cover;object-position:center top;filter:saturate(.95) brightness(.86)}
 .concept-page .detail-copy{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:24px 20px max(24px,env(safe-area-inset-bottom));display:block}
 .concept-page .back{display:none}
 .concept-page .detail h1{max-width:94%;font-size:clamp(42px,12.5vw,60px);line-height:.91;margin:12px 0 13px}
 .concept-page .lead{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;max-width:94%;font-size:14px;line-height:1.45;margin:0;color:#ded8d2}
 .concept-page .tags{margin-top:12px;gap:5px;overflow-x:auto;scrollbar-width:none}.concept-page .tags span{flex:none;padding:5px 8px;font-size:9px;background:#090909b8}
 .concept-page .actions{flex-direction:row;align-items:center;gap:16px;margin-top:15px}.concept-page .actions .button{padding:11px 15px;font-size:12px}.concept-page .actions .text-link{font-size:11px}

 .concept-page .experience-info,.concept-answers,.concept-suitability,.concept-locations,.concept-faq{padding:52px 20px;gap:24px}
 .concept-page .experience-info h2,.concept-answers h2,.concept-suitability h2,.concept-locations h2,.concept-faq h2{font-size:clamp(36px,10.5vw,46px);margin:14px 0;line-height:.95}
 .concept-page .experience-info li{padding:14px 8px 14px 28px;font-size:14px;line-height:1.45}
 .concept-answers .answer-intro>p{font-size:14px}.concept-answers li{grid-template-columns:34px 1fr;gap:10px;padding:17px 0}.concept-answers h3{font-size:19px}.concept-answers li p{font-size:13px;line-height:1.45}
 .concept-suitability .suitability-list p{padding:16px 0;font-size:20px}
 .concept-page .gallery.section{padding:52px 20px}.concept-page .gallery .section-head{margin-bottom:25px}.concept-page .gallery-grid{display:flex;overflow-x:auto;gap:10px;scroll-snap-type:x mandatory}.concept-page .gallery-grid img{flex:0 0 84vw;height:58vw;object-fit:cover;scroll-snap-align:start}

 .concept-locations{display:block}.concept-locations>div:first-child>p{font-size:14px}
 .location-link-grid{display:flex;overflow-x:auto;gap:10px;margin-top:25px;padding:2px 1px 12px;border:0;scroll-snap-type:x mandatory;scrollbar-width:none}
 .location-link-grid a,.location-link-grid a:nth-child(even){flex:0 0 72%;min-height:104px;padding:17px;border:1px solid #3a2b2e;background:linear-gradient(145deg,#130d0e,#23070b);scroll-snap-align:start}
 .location-link-grid strong{font-size:21px}.location-link-grid span{font-size:10px;line-height:1.4}
 .concept-faq summary{padding:18px 36px 18px 0;font-size:16px}.concept-faq details p{padding-right:15px;font-size:13px}

 .concept-page .related{padding:52px 20px 62px}.concept-page .related .section-head{grid-template-columns:1fr auto;margin-bottom:26px}.concept-page .related .section-head h2{font-size:44px;margin:10px 0}.concept-page .related-all{justify-self:start;font-size:9px}
 .concept-page .related .concept-grid{display:flex;height:auto;overflow-x:auto;gap:12px;scroll-snap-type:x mandatory;background:transparent;scrollbar-width:none}
 .concept-page .related .concept-card{flex:0 0 82vw;height:auto;scroll-snap-align:start;border:1px solid #302326;background:#100c0d}
 .concept-page .related .media{height:54vw;max-height:270px}.concept-page .related .media img{animation:none}
 .concept-page .related .card-copy{position:relative;left:auto;right:auto;bottom:auto;padding:18px}.concept-page .related .card-copy h3{font-size:25px}.concept-page .related .card-copy p{-webkit-line-clamp:2;font-size:12px}
 .concept-page .cta{padding:58px 20px}.concept-page .cta h2{font-size:43px}

 .about-team{padding:65px 18px}.about-team-head{margin-bottom:35px}.team-grid{grid-template-columns:1fr 1fr;gap:28px 10px}.team-photo{height:58vw;max-height:260px}.team-member h3{font-size:17px;margin-top:11px}.team-member>p{font-size:9px;line-height:1.35}
}
@media(max-width:370px){.concept-page .detail h1{font-size:40px}.concept-page .lead{-webkit-line-clamp:2}.concept-page .actions{margin-top:11px}.concept-page .concept-detail-hero{min-height:570px}}

/* Compact, catalogue-driven concept detail pages */
.concept-page{background:#080808}
.concept-page .concept-detail-hero{height:calc(100vh - 88px);min-height:590px;max-height:850px;grid-template-columns:46% 54%;border-bottom:1px solid #2f2022;background:radial-gradient(circle at 22% 25%,rgba(237,28,36,.08),transparent 30%),#080808}
.concept-page .detail-copy{padding:4.5vh 5vw 4vh;display:flex;min-width:0;flex-direction:column;justify-content:center}
.concept-page .back{margin:0 0 4vh;color:#aaa49e;font-size:13px}
.concept-page .detail h1{font:600 clamp(48px,5.1vw,82px)/.91 'Syne','Manrope',sans-serif;letter-spacing:-.06em;margin:2.3vh 0}
.concept-page .lead{max-width:690px;margin:0;color:#bcb6b0;font-size:clamp(15px,1.18vw,19px);line-height:1.55;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}
.concept-page .tags{margin-top:2.2vh;flex-wrap:wrap}
.concept-page .actions{margin-top:2.7vh;gap:24px}
.concept-page .detail-media{min-height:0;height:100%;overflow:hidden;position:relative;background:radial-gradient(circle at 70% 25%,rgba(237,28,36,.13),transparent 32%),linear-gradient(145deg,#080808,#17070a)}
.concept-page .detail-media:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,8,8,.35),transparent 24%),linear-gradient(0deg,rgba(8,8,8,.18),transparent 35%);pointer-events:none}
.concept-page .detail-media img{object-fit:contain;object-position:center top;filter:saturate(.92) brightness(.94)}
.concept-page .experience-info{padding:90px 8vw;gap:8vw;background:linear-gradient(135deg,#090909,#130506);border-bottom:1px solid #2f2022}
.concept-page .experience-info h2{font:500 clamp(45px,5vw,76px)/.96 'Manrope';letter-spacing:-.055em;margin:24px 0}
.concept-page .experience-info ul{margin:0;padding:0;list-style:none;border-top:1px solid #373031}
.concept-page .experience-info li{position:relative;padding:22px 12px 22px 34px;border-bottom:1px solid #373031;font-size:17px;color:#e9e4de}
.concept-page .experience-info li:before{content:'+';position:absolute;left:0;color:var(--red)}
.concept-page .experience-info.dark{background:radial-gradient(circle at 80% 18%,rgba(237,28,36,.13),transparent 28%),linear-gradient(135deg,#080808,#180508)}
.concept-page .experience-info.requirements{background:linear-gradient(135deg,#151112,#21070b);color:#fff}
.concept-page .related{padding:85px 6vw 100px;background:#090909}
.concept-page .related .section-head{align-items:end;margin-bottom:42px}
.concept-page .related-all{justify-self:end;padding-bottom:5px;border-bottom:1px solid var(--red);font-size:11px;font-weight:700;letter-spacing:.11em;text-transform:uppercase}
.concept-page .cta{background:radial-gradient(circle at 78% 25%,rgba(237,28,36,.3),transparent 29%),linear-gradient(125deg,#080808 0%,#33050b 55%,#110205 100%);color:#fff;border-top:1px solid #432328}
.concept-page .cta .eyebrow{color:#ff5a61}

@media(max-height:730px) and (min-width:851px){
 .concept-page .concept-detail-hero{min-height:520px}
 .concept-page .detail-copy{padding-top:3vh;padding-bottom:3vh}
 .concept-page .back{margin-bottom:2.5vh}
 .concept-page .detail h1{font-size:clamp(42px,4.5vw,68px);margin:1.7vh 0}
 .concept-page .lead{-webkit-line-clamp:4;font-size:15px}
 .concept-page .tags{margin-top:1.5vh}.concept-page .actions{margin-top:2vh}
}
@media(max-width:850px){
 body.concept-page{overflow:auto}
 .concept-page .header{position:sticky;background:rgba(7,7,7,.95);border-bottom:1px solid #292929}
 .concept-page .concept-detail-hero{height:auto;max-height:none;min-height:0;display:grid;grid-template-columns:1fr}
 .concept-page .detail-media{display:block;order:-1;height:48vh;min-height:330px}
 .concept-page .detail-copy{padding:42px 24px 55px;display:block}
 .concept-page .back{margin-bottom:30px}.concept-page .detail h1{font-size:clamp(45px,13vw,68px);margin:20px 0}
 .concept-page .lead{display:block;overflow:visible;font-size:16px}
 .concept-page .actions{align-items:flex-start;flex-direction:column;margin-top:30px}
 .concept-page .experience-info{display:grid;grid-template-columns:1fr;padding:70px 24px;gap:25px}
 .concept-page .experience-info h2{font-size:46px}.concept-page .experience-info li{font-size:15px;padding-top:17px;padding-bottom:17px}
 .concept-page .related{display:block;padding:70px 24px}.concept-page .related .section-head{display:grid;grid-template-columns:1fr;margin-bottom:35px}
 .concept-page .related-all{justify-self:start}.concept-page .related .concept-grid{display:grid;height:auto;overflow:visible;grid-template-columns:1fr;gap:1px}
 .concept-page .related .concept-card{height:auto;min-height:0;overflow:visible}.concept-page .related .concept-card>a{height:auto}
 .concept-page .related .media{position:relative;height:300px}.concept-page .related .card-copy{position:relative;bottom:auto;padding:24px}
 .concept-page .related .card-copy p{display:block}.concept-page .cta{display:block;padding:75px 24px}
}

/* Search-readable navigation, answer blocks and city service pages */
.breadcrumbs{min-height:42px;padding:12px 5vw;display:flex;align-items:center;gap:9px;overflow:hidden;border-bottom:1px solid #282124;background:#090909;color:#807b76;font-size:10px;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.breadcrumbs a{color:#bab5af}.breadcrumbs a:hover{color:#fff}.breadcrumbs span:last-child{overflow:hidden;text-overflow:ellipsis}
.concept-page .concept-detail-hero{height:calc(100vh - 130px)}
.concept-answers,.concept-suitability,.concept-locations,.concept-faq,.location-planning,.location-directory{padding:100px 7vw;display:grid;grid-template-columns:.78fr 1.22fr;gap:9vw;border-bottom:1px solid #332226}
.concept-answers{background:#eee8dc;color:#0b0b0b}.concept-answers h2,.concept-suitability h2,.concept-locations h2,.concept-faq h2,.location-planning h2,.location-directory h2,.location-category h2{font:600 clamp(45px,5vw,78px)/.94 'Manrope';letter-spacing:-.06em;margin:24px 0}.concept-answers .answer-intro>p{max-width:450px;color:#57514a;font-size:17px}.concept-answers ol{list-style:none;margin:0;padding:0;border-top:1px solid #bbb2a6}.concept-answers li{display:grid;grid-template-columns:55px 1fr;gap:20px;padding:24px 0;border-bottom:1px solid #c8bfb3}.concept-answers li>b{color:var(--red);font-size:11px}.concept-answers h3{font:600 24px 'Manrope';margin:0 0 6px}.concept-answers li p{color:#5b554e;margin:0}
.concept-suitability{background:radial-gradient(circle at 80% 20%,rgba(237,28,36,.13),transparent 28%),linear-gradient(135deg,#080808,#170407)}.suitability-list{border-top:1px solid #3d2c2f}.suitability-list p{font:500 clamp(22px,2vw,31px) 'Manrope';margin:0;padding:24px 0;border-bottom:1px solid #3d2c2f}
.concept-locations{background:#0b0b0b}.concept-locations>div:first-child>p{max-width:530px;color:#aaa5a0;font-size:16px}.location-link-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #3a2b2e}.location-link-grid a{display:flex;flex-direction:column;padding:20px 18px 21px 0;border-bottom:1px solid #3a2b2e}.location-link-grid a:nth-child(even){padding-left:18px;border-left:1px solid #3a2b2e}.location-link-grid strong{font:600 21px 'Manrope'}.location-link-grid span{color:#918b86;font-size:11px;margin-top:4px}.location-link-grid a:hover strong{color:#ff454d}
.concept-faq{background:linear-gradient(135deg,#100a0b,#22070b)}.concept-faq details{border-top:1px solid #493036;padding:0}.concept-faq details:last-child{border-bottom:1px solid #493036}.concept-faq summary{cursor:pointer;list-style:none;padding:23px 45px 23px 0;font:600 19px 'Manrope';position:relative}.concept-faq summary:after{content:'+';position:absolute;right:8px;color:var(--red)}.concept-faq details[open] summary:after{content:'−'}.concept-faq details p{margin:0;padding:0 45px 24px 0;color:#aaa5a0;max-width:720px}
.location-hub-hero,.location-hero{padding:105px 7vw 95px;background:radial-gradient(circle at 80% 22%,rgba(237,28,36,.22),transparent 28%),linear-gradient(135deg,#080808,#190508 62%,#090909)}.location-hub-hero h1,.location-hero h1{font:700 clamp(58px,7.2vw,118px)/.88 'Syne','Manrope',sans-serif;letter-spacing:-.07em;text-transform:uppercase;margin:30px 0}.location-hub-hero p,.location-hero p{max-width:720px;color:#b7b1ab;font-size:18px}.location-hero .button{margin-top:25px}.location-directory{background:#eee8dc;color:#0b0b0b}.location-directory-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid #bbb2a6}.location-directory-grid a{display:flex;flex-direction:column;padding:24px;border-bottom:1px solid #bbb2a6}.location-directory-grid a:nth-child(even){border-left:1px solid #bbb2a6}.location-directory-grid small{color:#8b262b;text-transform:uppercase;font-size:9px;letter-spacing:.14em}.location-directory-grid strong{font:600 31px 'Manrope';margin:8px 0}.location-directory-grid span{color:#5c554e;font-size:12px}
.location-planning{background:#eee8dc;color:#0b0b0b}.location-planning>div:last-child{padding-top:55px}.location-planning p{font-size:18px;line-height:1.65;color:#4f4943}.location-category{padding:95px 6vw;background:#0a0a0a;border-bottom:1px solid #342326}.location-category:nth-of-type(even){background:linear-gradient(135deg,#0b0909,#170608)}.location-category-head{display:grid;grid-template-columns:1fr .65fr;gap:8vw;align-items:end;margin-bottom:45px}.location-category-head p{color:#aaa5a0;font-size:16px}.location-category .concept-grid{background:#2b2022}.location-faq{border-top:1px solid #38262a}.location-cta{background:radial-gradient(circle at 78% 25%,rgba(237,28,36,.3),transparent 29%),linear-gradient(125deg,#080808,#33050b 55%,#110205)}.footer-location-link{display:inline-block;margin-top:12px;color:#fff;border-bottom:1px solid #8c252b}
.reel-seo-title{font:600 clamp(15px,1.15vw,19px)/1.35 'Manrope';letter-spacing:-.02em;margin:11px 0 8px;max-width:520px;text-transform:none}.reel-topline .reel-seo-title+p{margin-top:0}
.home-locations{padding:100px 7vw;display:grid;grid-template-columns:.85fr 1.15fr;gap:9vw;background:linear-gradient(135deg,#0a0a0a,#190508);border-top:1px solid #342326}.home-locations h2{font:600 clamp(48px,5vw,78px)/.94 'Manrope';letter-spacing:-.06em;margin:24px 0}.home-locations>div:first-child p{color:#aaa5a0;max-width:540px}.home-location-links{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #422d31}.home-location-links a{display:flex;justify-content:space-between;padding:20px 15px 20px 0;border-bottom:1px solid #422d31;font:600 19px 'Manrope'}.home-location-links a:nth-child(even){padding-left:15px;border-left:1px solid #422d31}.home-location-links span{color:var(--red)}
@media(max-width:850px){
 .breadcrumbs{padding:10px 18px;margin-top:64px}.concept-page .concept-detail-hero{height:auto}
 .concept-answers,.concept-suitability,.concept-locations,.concept-faq,.location-planning,.location-directory{padding:70px 24px;grid-template-columns:1fr;gap:35px}
 .concept-answers h2,.concept-suitability h2,.concept-locations h2,.concept-faq h2,.location-planning h2,.location-directory h2,.location-category h2{font-size:45px}
 .location-link-grid,.location-directory-grid{grid-template-columns:1fr}.location-link-grid a:nth-child(even),.location-directory-grid a:nth-child(even){padding-left:0;border-left:0}.location-directory-grid a{padding-left:0;padding-right:0}
 .location-hub-hero,.location-hero{padding:70px 24px}.location-hub-hero h1,.location-hero h1{font-size:13vw}.location-planning>div:last-child{padding-top:0}
 .location-category{padding:70px 24px}.location-category-head{grid-template-columns:1fr;gap:20px}.location-category .concept-grid{display:grid;height:auto;overflow:visible}.location-category .concept-card{height:auto;overflow:visible}.location-category .media{position:relative;height:300px}.location-category .card-copy{position:relative;bottom:auto}.location-category .card-copy p{display:block}
 .locations-page,.location-page{overflow:auto}.locations-page .header,.location-page .header{position:sticky;background:rgba(7,7,7,.95)}.location-page .cta{display:block;padding:75px 24px}.home-locations{display:none}
}

/* Inner-page refinements: visible controls, Magik palette and quieter conversion panel */
@media(min-width:851px){
 .spotlight-nav{right:5vw;bottom:110px}
 .spotlight-nav button{background:rgba(5,5,5,.82);border-color:rgba(255,255,255,.62);box-shadow:0 8px 25px #0008}

 .editorial-concepts{background:radial-gradient(circle at 12% 22%,rgba(211,12,28,.2),transparent 27%),linear-gradient(135deg,#070707 0%,#180508 54%,#090909 100%);color:#fff}
 .editorial-intro p{color:#aaa5a0}
 .editorial-intro>a{background:var(--red);color:#fff}
 .editorial-card,.editorial-card:nth-child(3n+1){min-height:0;padding:0 0 27px;overflow:hidden;border-color:#3a2428;background:linear-gradient(145deg,#151112,#21070b);color:#fff}
 .editorial-card:hover{background:linear-gradient(145deg,#211315,#31080e);border-color:#7c252d}
 .editorial-media{height:230px;overflow:hidden;background:#111}
 .editorial-media img{width:100%;height:100%;object-fit:cover;filter:saturate(.82) brightness(.86);transition:transform .5s,filter .5s}
 .editorial-card:hover .editorial-media img{transform:scale(1.035);filter:saturate(1.04) brightness(.96)}
 .editorial-number{position:absolute;z-index:2;right:20px;top:18px;padding:7px 9px;background:#080808d9;color:#ff3038}
 .editorial-card h3{margin:25px 28px 15px;font-size:clamp(25px,1.9vw,34px)}
 .editorial-card>p{min-height:54px;margin:0 28px;color:#aaa4a0;font-size:14px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
 .editorial-card ul{margin:20px 28px 19px;padding-top:13px;border-top-color:#4b3034}
 .editorial-card li{padding:0;color:#d1ccc7;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 .editorial-card b{margin-left:28px;background:var(--red)}

 .horizontal-media{position:relative;overflow:hidden}
 .horizontal-media:after{content:'';position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.9));pointer-events:none}
 .horizontal-card .horizontal-media h3{position:absolute;z-index:2;left:25px;right:25px;bottom:23px;margin:0;color:#fff;font-size:clamp(28px,2.5vw,43px);text-shadow:0 3px 20px #000;line-height:1}
 .horizontal-card .horizontal-media img{display:block}

 .category-library .cta{background:radial-gradient(circle at 78% 28%,rgba(237,28,36,.32),transparent 29%),linear-gradient(125deg,#080808 0%,#32050b 55%,#110205 100%);color:#fff}
 .category-library .cta .eyebrow{color:#ff6269}
}

/* Final mobile cascade overrides — intentionally last */
@media(max-width:850px){
 .concept-page .breadcrumbs{padding:10px 18px;margin-top:0}
 .concept-page .concept-detail-hero{position:relative;display:block;height:calc(100svh - 106px);min-height:610px;max-height:none;overflow:hidden}
 .concept-page .detail-media{position:absolute;inset:0;display:block;order:0;width:100%;height:100%;min-height:0}
 .concept-page .detail-media:after{background:linear-gradient(180deg,rgba(4,4,4,.04) 12%,rgba(4,4,4,.12) 38%,rgba(4,4,4,.96) 78%,#070707 100%)}
 .concept-page .detail-media img{width:100%;height:100%;object-fit:cover;object-position:center top}
 .concept-page .detail-copy{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:24px 20px max(24px,env(safe-area-inset-bottom));display:block}
 .concept-page .back{display:none}.concept-page .detail h1{font-size:clamp(42px,12.5vw,60px);line-height:.91;margin:12px 0 13px}
 .concept-page .lead{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:14px;line-height:1.45}
 .concept-page .actions{flex-direction:row;align-items:center;margin-top:15px}
 .concept-page .experience-info,.concept-answers,.concept-suitability,.concept-locations,.concept-faq{padding:52px 20px;gap:24px}
 .concept-page .related{display:block;padding:52px 20px 62px}.concept-page .related .section-head{grid-template-columns:1fr;margin-bottom:26px}
 .concept-page .related .concept-grid{display:flex;height:auto;overflow-x:auto;overflow-y:hidden;grid-template-columns:none;gap:12px;background:transparent;scroll-snap-type:x mandatory}
 .concept-page .related .concept-card{flex:0 0 82vw;height:auto;min-height:0;overflow:visible;scroll-snap-align:start}.concept-page .related .concept-card>a{height:auto}
 .concept-page .related .media{position:relative;inset:auto;height:54vw;max-height:270px}.concept-page .related .card-copy{position:relative;left:auto;right:auto;bottom:auto;padding:18px}
 .concept-locations{display:block}.location-link-grid{display:flex;grid-template-columns:none;overflow-x:auto;gap:10px;margin-top:25px;padding:2px 1px 12px;border:0;scroll-snap-type:x mandatory}
 .location-link-grid a,.location-link-grid a:nth-child(even){flex:0 0 72%;min-height:104px;padding:17px;border:1px solid #3a2b2e;scroll-snap-align:start}
 .experience-feed .experience-gallery,.experience-feed .gallery-wall,.experience-feed .gallery-wall .concept-card,.experience-feed .gallery-wall .concept-card:nth-child(n){height:calc(100dvh - 106px)}
 .experience-feed .feed-progress{top:150px;bottom:max(105px,calc(env(safe-area-inset-bottom) + 92px))}
}

/* Cleaner mobile reels and reliable inner-page scrolling */
@media(max-width:850px){
 html{overflow:auto}
 html:has(body.concept-page),html:has(body.about-page),html:has(body.location-page),html:has(body.locations-page){height:auto;overflow-y:auto;overscroll-behavior-y:auto}
 body.concept-page,body.about-page,body.location-page,body.locations-page{height:auto;min-height:100%;overflow-y:auto!important;overscroll-behavior-y:auto;touch-action:pan-y}

 .home-perspective .header,.experience-feed .header{height:62px;padding:0 14px;background:linear-gradient(#050505ee,rgba(5,5,5,.55),transparent)}
 .home-perspective .brand img,.experience-feed .brand img{width:116px;height:43px}
 .home-perspective .header .menu,.experience-feed .header .menu{min-width:50px;min-height:38px;padding:6px 9px;font-size:13px;background:#0909099c}

 .home-perspective .filters,.experience-feed .filters{top:65px;gap:6px;padding:0 26px 8px 4px}
 .home-perspective .filters>a,.home-perspective .filters>button,.experience-feed .filters>a,.experience-feed .filters>button{min-height:34px;padding:6px 11px;font-size:11px;border-radius:18px;background:rgba(9,9,9,.76)}
 .home-perspective .filters .active,.experience-feed .filters .active{background:var(--red);border-color:var(--red);color:#fff}

 .gallery-wall .media>span,.home-perspective .media>span{display:none}
 .gallery-wall .card-copy,.home-perspective .card-copy{left:0;right:0;bottom:max(72px,calc(env(safe-area-inset-bottom) + 60px));padding:16px 20px 12px}
 .gallery-wall .card-copy small,.home-perspective .card-copy small{display:inline;padding:0;background:none;color:#ff3a42;font-size:9px;letter-spacing:.15em}
 .gallery-wall .card-copy h3,.home-perspective .card-copy h3{max-width:94%;font-size:clamp(28px,8.2vw,36px);line-height:1;margin:9px 0 7px}
 .gallery-wall .card-copy p,.home-perspective .card-copy p{max-width:92%;font-size:12px;line-height:1.4;-webkit-line-clamp:1;color:#d0cbc6}
 .gallery-wall .media:after,.home-perspective .media:after{background:linear-gradient(transparent 48%,rgba(0,0,0,.22) 61%,#030303 100%)}

 .mobile-actions{left:20px;right:auto;bottom:max(24px,calc(env(safe-area-inset-bottom) + 14px));display:flex;gap:7px}
 .mobile-actions a{width:auto;height:36px;min-width:62px;padding:0 14px;border-radius:19px;background:#111d;border-color:#ffffff38;font-size:10px}
 .mobile-actions a:last-child{background:var(--red);border-color:var(--red)}
 .feed-progress{display:block;top:auto!important;right:18px!important;bottom:max(35px,calc(env(safe-area-inset-bottom) + 25px))!important;width:auto!important;height:auto!important;background:none!important}
 .feed-progress i{display:none!important}.feed-progress span{position:static!important;display:block;width:auto!important;color:#c8c2bc;font-size:9px;letter-spacing:.12em}
 .swipe-hint{left:auto;right:18px;bottom:max(12px,env(safe-area-inset-bottom));font-size:8px;transition:opacity .25s}
 body.feed-used .swipe-hint{opacity:0;pointer-events:none}
 .concept-card:first-child .media:before{top:114px;left:20px;font-size:8px;opacity:.65}
}

/* Global WhatsApp contact */
.whatsapp-connect{position:fixed;z-index:95;right:26px;bottom:26px;display:flex;align-items:center;gap:10px;min-height:52px;padding:0 18px 0 14px;border:1px solid rgba(255,255,255,.22);border-radius:28px;background:#20a85a;color:#fff;font:700 13px/1 'DM Sans',sans-serif;box-shadow:0 14px 35px rgba(0,0,0,.42);transition:transform .2s,background .2s,box-shadow .2s}.whatsapp-connect svg{width:27px;height:27px;flex:none}.whatsapp-connect:hover{transform:translateY(-3px);background:#25bd66;box-shadow:0 18px 42px rgba(0,0,0,.52)}.whatsapp-connect:focus-visible{outline:3px solid #fff;outline-offset:3px}
@media(max-width:850px){.whatsapp-connect{right:14px;bottom:max(91px,calc(env(safe-area-inset-bottom) + 82px));width:48px;height:48px;min-height:48px;padding:0;justify-content:center;border-radius:50%;box-shadow:0 10px 28px rgba(0,0,0,.5)}.whatsapp-connect svg{width:26px;height:26px}.whatsapp-connect span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}}
