:root{
  --ink:#221029;
  --ink-2:#32143a;
  --paper:#fffafb;
  --paper-2:#f5edf7;
  --plum:#672570;
  --violet:#8b2b9a;
  --pink:#cf5fd2;
  --lilac:#f2c8f2;
  --white:#fff;
  --muted:rgba(255,255,255,.64);
  --shadow:0 30px 90px rgba(33,0,40,.20);
  --radius:32px;
  --mx:50vw;
  --my:50vh;
  --page-bg:#24102a;
}
*{box-sizing:border-box}
html{scroll-behavior:auto;background:var(--ink)}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--page-bg);color:#fff;overflow-x:hidden;transition:background .8s ease}
body.nav-open{overflow:hidden}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
img{max-width:100%;display:block}
::selection{background:var(--pink);color:#1b001d}
.skip-link{position:fixed;left:1rem;top:-4rem;z-index:9999;padding:.8rem 1rem;background:#fff;color:#160019;border-radius:12px}.skip-link:focus{top:1rem}

.page-loader{position:fixed;inset:0;z-index:9998;display:grid;place-items:center;background:#120016;transition:opacity .5s ease,visibility .5s ease}.page-loader.hidden{opacity:0;visibility:hidden}.loader-mark{font-weight:900;letter-spacing:-.08em;font-size:clamp(4rem,12vw,10rem);background:linear-gradient(140deg,#fff,#cf5fd2,#6a0072);-webkit-background-clip:text;color:transparent}.loader-line{position:absolute;left:8vw;right:8vw;bottom:9vh;height:1px;background:rgba(255,255,255,.15);overflow:hidden}.loader-line span{display:block;width:40%;height:100%;background:#fff;animation:loading 1.2s ease-in-out infinite}@keyframes loading{from{transform:translateX(-120%)}to{transform:translateX(350%)}}
.page-transition{position:fixed;inset:0;background:linear-gradient(135deg,#32143a,#7b2c85,#d95bd7);z-index:9990;transform:scaleY(0);transform-origin:bottom;pointer-events:none}

#webgl{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;opacity:.6}
main,.site-header{position:relative;z-index:2}
.section-dark,.section-light{position:relative;overflow:hidden}.section-dark{color:#fff}.section-light{color:#1c0820;background:rgba(255,250,251,.98)}
.section-pad{width:min(1400px,100%);margin:auto;padding:clamp(5rem,9vw,9rem) clamp(1.25rem,5vw,5rem)}
.eyebrow{font-size:.73rem;letter-spacing:.22em;font-weight:800;margin:0 0 1.4rem;color:currentColor;opacity:.58}
.display{font-size:clamp(3.1rem,7vw,7.8rem);line-height:.92;letter-spacing:-.07em;margin:0;font-weight:800}.display em{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.055em;color:var(--pink)}
.large-copy{font-size:clamp(1.15rem,2.1vw,1.75rem);line-height:1.45;letter-spacing:-.025em;max-width:38rem;opacity:.78}
.reveal-lines,.reveal-text,.reveal-copy{will-change:transform,opacity}

.site-header{position:fixed;top:1rem;left:50%;transform:translateX(-50%);width:min(1400px,calc(100% - 2rem));height:70px;display:flex;align-items:center;justify-content:space-between;padding:0 .8rem 0 1rem;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:rgba(20,0,25,.38);backdrop-filter:blur(22px) saturate(150%);-webkit-backdrop-filter:blur(22px) saturate(150%);box-shadow:0 14px 45px rgba(0,0,0,.12);transition:.4s ease;z-index:200}.site-header.scrolled{background:rgba(20,0,25,.76);top:.6rem}.brand{display:flex;align-items:center;gap:.7rem;min-width:max-content}.brand-mark{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;font-weight:950;letter-spacing:-.08em;background:linear-gradient(145deg,#71157a,#d368d0);box-shadow:inset 0 0 0 1px rgba(255,255,255,.3),0 8px 25px rgba(202,87,205,.25)}.brand-copy{display:grid;line-height:1}.brand-copy b{font-size:.82rem;letter-spacing:.06em}.brand-copy small{font-size:.58rem;letter-spacing:.24em;opacity:.56;margin-top:.25rem}.site-nav{display:flex;align-items:center;gap:.35rem}.site-nav>a{padding:.8rem 1rem;font-size:.82rem;font-weight:700;letter-spacing:.01em;border-radius:999px;color:rgba(255,255,255,.8);transition:.25s}.site-nav>a:hover{color:#fff;background:rgba(255,255,255,.08)}.site-nav .nav-cta{background:#fff;color:#1a001d;padding:.86rem 1.15rem}.site-nav .nav-cta:hover{background:#efc8ef;color:#1a001d}.nav-toggle{display:none;width:48px;height:48px;border:0;border-radius:50%;background:rgba(255,255,255,.10);position:relative}.nav-toggle span{position:absolute;left:14px;right:14px;height:1.5px;background:#fff;transition:.25s}.nav-toggle span:first-child{top:19px}.nav-toggle span:last-child{top:27px}.nav-toggle[aria-expanded="true"] span:first-child{transform:translateY(4px) rotate(45deg)}.nav-toggle[aria-expanded="true"] span:last-child{transform:translateY(-4px) rotate(-45deg)}

.hero{min-height:100svh;display:grid;align-items:end;background:radial-gradient(circle at 70% 20%,rgba(197,82,201,.22),transparent 33%),linear-gradient(145deg,#130017 0%,#25002c 48%,#17001d 100%);isolation:isolate}.hero-shell{width:min(1400px,100%);margin:auto;padding:clamp(9rem,17vh,13rem) clamp(1.25rem,6vw,6rem) clamp(6rem,10vh,8rem);position:relative;z-index:3}.hero-kicker{font-size:.72rem;letter-spacing:.28em;font-weight:800;color:rgba(255,255,255,.54);margin-bottom:1.4rem}.hero-title{font-size:clamp(4.2rem,11vw,11rem);line-height:.78;letter-spacing:-.085em;margin:0;max-width:1100px;font-weight:900}.hero-line{display:block;transform-origin:left center}.accent-script{font-family:Georgia,"Times New Roman",serif;font-style:italic;font-weight:400;letter-spacing:-.06em;background:linear-gradient(90deg,#fff 0%,#efb6ef 40%,#b847bd 90%);-webkit-background-clip:text;color:transparent;padding-bottom:.08em}.hero-lede{font-size:clamp(1.05rem,2vw,1.55rem);line-height:1.5;max-width:42rem;color:rgba(255,255,255,.69);margin:2.2rem 0}.hero-actions{display:flex;gap:.8rem;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:1rem;padding:1rem 1.25rem;border-radius:999px;border:1px solid transparent;font-weight:800;font-size:.9rem;transition:.25s;cursor:pointer}.btn-primary{background:#fff;color:#18001c}.btn-primary:hover{background:#f3caf3}.btn-ghost{border-color:rgba(255,255,255,.24);background:rgba(255,255,255,.05);color:#fff;backdrop-filter:blur(12px)}.btn-dark{border:0;background:#1f0623;color:#fff}.hero-side-note{position:absolute;right:1.2rem;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:1.05rem;z-index:3}.hero-side-note span{writing-mode:vertical-rl;font-size:.56rem;letter-spacing:.23em;color:rgba(255,255,255,.35)}.scroll-indicator{position:absolute;right:clamp(1.3rem,5vw,5rem);bottom:2rem;z-index:3;display:flex;align-items:center;gap:.65rem;color:rgba(255,255,255,.4)}.scroll-indicator span{width:40px;height:1px;background:rgba(255,255,255,.35);overflow:hidden}.scroll-indicator span:after{content:"";display:block;width:40%;height:100%;background:#fff;animation:scrollLine 1.8s infinite ease-in-out}.scroll-indicator small{font-size:.55rem;letter-spacing:.2em}@keyframes scrollLine{0%{transform:translateX(-120%)}100%{transform:translateX(280%)}}
.hero-mesh{position:absolute;inset:-20%;z-index:0;background:radial-gradient(circle at 30% 20%,rgba(120,0,134,.75),transparent 25%),radial-gradient(circle at 70% 30%,rgba(235,109,221,.28),transparent 22%),radial-gradient(circle at 65% 75%,rgba(106,0,121,.5),transparent 22%);filter:blur(50px);animation:mesh 14s ease-in-out infinite alternate}@keyframes mesh{to{transform:translate3d(3%,-4%,0) scale(1.09) rotate(4deg)}}.light-orb{position:absolute;border-radius:50%;filter:blur(80px);mix-blend-mode:screen;opacity:.28;z-index:1}.light-a{width:25vw;height:25vw;background:#b648bb;right:10vw;top:10vh}.light-b{width:20vw;height:20vw;background:#6d28d9;left:15vw;bottom:0}.cloud{position:absolute;border-radius:50%;filter:blur(60px);background:rgba(255,255,255,.07);z-index:1}.cloud-a{width:42vw;height:14vw;right:-8vw;top:34vh;animation:cloud 18s ease-in-out infinite alternate}.cloud-b{width:32vw;height:12vw;left:6vw;top:15vh;animation:cloud 24s ease-in-out infinite alternate-reverse}@keyframes cloud{to{transform:translateX(6vw) translateY(3vh) scale(1.08)}}

.manifesto{background:linear-gradient(180deg,#fffafd,#f6eef8)}.manifesto-grid{display:grid;grid-template-columns:.6fr 2fr .65fr;gap:clamp(2rem,5vw,6rem);align-items:start}.manifesto-stat{align-self:end;border-top:1px solid rgba(37,9,41,.18);padding-top:1.2rem}.manifesto-stat strong{display:block;font-size:clamp(3.8rem,6vw,7rem);letter-spacing:-.08em}.manifesto-stat span{display:block;max-width:10rem;opacity:.55;font-size:.85rem;line-height:1.4}

.services-intro{background:linear-gradient(180deg,#1b0321,#110015)}.services-heading{display:grid;grid-template-columns:1.4fr .7fr;gap:4rem;align-items:end;padding-bottom:4rem}.service-stage{height:100vh;overflow:hidden}.service-track{display:flex;width:max-content;height:100%}.service-panel{width:100vw;height:100vh;position:relative;display:grid;grid-template-columns:90px minmax(0,1fr) minmax(320px,.8fr);align-items:center;padding:clamp(2rem,6vw,7rem);gap:clamp(1rem,4vw,4rem);overflow:hidden}.service-panel:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 78% 35%,rgba(255,255,255,.14),transparent 23%),linear-gradient(135deg,rgba(255,255,255,.035),transparent 45%);pointer-events:none}.service-no{align-self:start;margin-top:14vh;font-size:.7rem;letter-spacing:.3em;opacity:.45}.service-content{position:relative;z-index:2;max-width:680px}.service-kicker{font-size:.68rem;letter-spacing:.22em;font-weight:800;color:rgba(255,255,255,.58)}.service-content h3{font-size:clamp(3.8rem,7vw,8.2rem);line-height:.87;letter-spacing:-.075em;margin:1.4rem 0 2rem}.service-content p{font-size:clamp(1.05rem,1.55vw,1.35rem);line-height:1.55;color:rgba(255,255,255,.7);max-width:38rem}.service-content ul{list-style:none;padding:0;margin:2rem 0 0;display:flex;gap:.55rem;flex-wrap:wrap}.service-content li{border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);border-radius:999px;padding:.65rem .85rem;font-size:.72rem;color:rgba(255,255,255,.74);backdrop-filter:blur(12px)}.panel-events{background:linear-gradient(135deg,#210027,#5b0a66)}.panel-entertainment{background:linear-gradient(135deg,#130019,#7a116f)}.panel-sound{background:linear-gradient(135deg,#100014,#35125c)}.panel-dj{background:linear-gradient(135deg,#220025,#850f71)}.panel-catering{background:linear-gradient(135deg,#240a1f,#713447)}.panel-brand{background:linear-gradient(135deg,#13001b,#4b1b77)}.panel-marketing{background:linear-gradient(135deg,#1c001e,#681558)}
.service-visual{position:relative;z-index:1;width:min(38vw,520px);aspect-ratio:1;justify-self:end;filter:drop-shadow(0 45px 80px rgba(0,0,0,.25))}.visual-orbit{display:grid;place-items:center}.visual-orbit i{position:absolute;border:1px solid rgba(255,255,255,.24);border-radius:50%;inset:12%;animation:orbitSpin 12s linear infinite}.visual-orbit i:nth-child(2){inset:24%;animation-direction:reverse;animation-duration:8s}.visual-orbit i:nth-child(3){inset:38%;animation-duration:5s}.visual-orbit i:after{content:"";position:absolute;width:14px;height:14px;border-radius:50%;background:#fff;top:50%;left:-7px;box-shadow:0 0 25px #fff}.visual-orbit b{font-size:clamp(2.5rem,5vw,5rem);letter-spacing:-.06em}@keyframes orbitSpin{to{transform:rotate(360deg)}}
.visual-wave{display:flex;align-items:center;justify-content:center;gap:1.3rem}.visual-wave span{width:9px;border-radius:999px;background:linear-gradient(#fff,#dc76da);height:35%;animation:wave 1.1s ease-in-out infinite alternate}.visual-wave span:nth-child(2){animation-delay:.1s;height:58%}.visual-wave span:nth-child(3){animation-delay:.2s;height:80%}.visual-wave span:nth-child(4){animation-delay:.3s;height:95%}.visual-wave span:nth-child(5){animation-delay:.4s;height:70%}.visual-wave span:nth-child(6){animation-delay:.5s;height:48%}.visual-wave span:nth-child(7){animation-delay:.6s;height:26%}@keyframes wave{to{transform:scaleY(.25);opacity:.45}}
.visual-rings{display:grid;place-items:center}.visual-rings i{position:absolute;border:2px solid rgba(255,255,255,.32);border-radius:50%;animation:ringPulse 3.2s ease-out infinite}.visual-rings i:nth-child(1){inset:38%}.visual-rings i:nth-child(2){inset:28%;animation-delay:.6s}.visual-rings i:nth-child(3){inset:18%;animation-delay:1.2s}.visual-rings i:nth-child(4){inset:8%;animation-delay:1.8s}@keyframes ringPulse{0%{opacity:0;transform:scale(.75)}40%{opacity:1}100%{opacity:0;transform:scale(1.08)}}
.visual-disc{border-radius:50%;background:conic-gradient(from 30deg,#130014,#e36bdd,#220025,#fff,#5f0d6b,#130014);box-shadow:inset 0 0 0 2px rgba(255,255,255,.16);animation:discSpin 16s linear infinite;display:grid;place-items:center}.visual-disc:after{content:"";position:absolute;inset:16%;border-radius:50%;background:#160019;box-shadow:inset 0 0 45px rgba(255,255,255,.08)}.visual-disc i{position:absolute;inset:31%;border-radius:50%;background:#fff;z-index:2}.visual-disc b{z-index:3;color:#250028;font-weight:950;letter-spacing:-.08em}@keyframes discSpin{to{transform:rotate(360deg)}}
.visual-plate{border-radius:50%;background:radial-gradient(circle at 40% 35%,#fff 0 16%,#f2d7e6 17% 35%,#8c506e 36% 42%,#261020 43%);display:grid;place-items:center}.visual-plate:before{content:"";position:absolute;inset:-6%;border:1px solid rgba(255,255,255,.18);border-radius:50%}.visual-plate span{position:absolute;font-family:Georgia,serif;font-style:italic;color:#3a1830;text-align:center;font-size:clamp(1.4rem,3vw,3rem);z-index:2}.visual-prism i{position:absolute;inset:15%;clip-path:polygon(50% 0,100% 100%,0 100%);background:linear-gradient(135deg,rgba(255,255,255,.85),rgba(226,93,225,.25));mix-blend-mode:screen;transform-origin:50% 65%;animation:prism 8s ease-in-out infinite}.visual-prism i:nth-child(2){transform:rotate(120deg);opacity:.5;animation-delay:-2s}.visual-prism i:nth-child(3){transform:rotate(240deg);opacity:.35;animation-delay:-4s}@keyframes prism{50%{transform:rotate(35deg) scale(.82)}}
.visual-signal{display:grid;place-items:center}.visual-signal i{position:absolute;border:1px solid rgba(255,255,255,.25);border-radius:50%;inset:18%;animation:signal 3s ease-out infinite}.visual-signal i:nth-child(2){inset:8%;animation-delay:.8s}.visual-signal i:nth-child(3){inset:-2%;animation-delay:1.6s}.visual-signal b{font-size:clamp(2rem,4vw,4rem);letter-spacing:.18em}@keyframes signal{0%{opacity:0;transform:scale(.5)}30%{opacity:1}100%{opacity:0;transform:scale(1.2)}}

.breathe{background:radial-gradient(circle at 70% 50%,rgba(203,93,204,.12),transparent 28%),linear-gradient(180deg,#fffafd,#f8f0f9)}.breathe-grid{min-height:90vh;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:5vw}.breathe-stage{min-height:560px;display:grid;place-items:center;position:relative}.breath-circle{width:min(46vw,400px);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,#fff,#efccef 38%,#bb4cbc 75%,#772179);box-shadow:0 35px 120px rgba(126,22,135,.26),inset 0 0 55px rgba(255,255,255,.5);position:relative;z-index:3;transition:box-shadow .4s}.breath-circle.active{box-shadow:0 45px 160px rgba(198,68,199,.46),0 0 90px rgba(214,95,216,.35),inset 0 0 70px rgba(255,255,255,.65)}.breath-label{font-size:.7rem;letter-spacing:.28em;font-weight:900;color:#401043}.breath-orbit{position:absolute;border:1px solid rgba(107,24,115,.16);border-radius:50%;z-index:1}.orbit-one{width:min(58vw,510px);aspect-ratio:1}.orbit-two{width:min(70vw,610px);aspect-ratio:1;border-style:dashed;animation:orbitSpin 22s linear infinite}.lottie-pulse{position:absolute;width:min(76vw,650px);aspect-ratio:1;z-index:0;opacity:.5}

.specials{background:linear-gradient(180deg,#2b1233,#24102b)}.split-heading{display:grid;grid-template-columns:1.2fr .7fr;gap:5vw;align-items:end;margin-bottom:4rem}.expanders{display:flex;gap:.85rem;min-height:500px}.expander{flex:1;min-width:0;border-radius:28px;padding:1.4rem;display:flex;flex-direction:column;justify-content:space-between;border:1px solid rgba(255,255,255,.12);background:linear-gradient(160deg,rgba(255,255,255,.11),rgba(255,255,255,.035));backdrop-filter:blur(14px);overflow:hidden;position:relative;transition:flex .65s cubic-bezier(.2,.8,.2,1),background .4s;cursor:pointer}.expander:before{content:"";position:absolute;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,#d56bd4,transparent 65%);filter:blur(25px);right:-150px;bottom:-160px;opacity:.2;transition:.5s}.expander:hover:before,.expander.active:before{opacity:.55;transform:translate(-60px,-45px)}.expander.active{flex:2.4;background:linear-gradient(155deg,rgba(189,73,190,.26),rgba(255,255,255,.05))}.expander-no{font-size:.65rem;letter-spacing:.2em;opacity:.46}.expander>div{position:relative;z-index:2}.expander small{font-size:.62rem;letter-spacing:.18em;color:#d899d8}.expander h3{font-size:clamp(1.8rem,3.4vw,4rem);line-height:.93;letter-spacing:-.05em;margin:.8rem 0}.expander p{max-width:27rem;color:rgba(255,255,255,.65);line-height:1.55;opacity:0;transform:translateY(15px);transition:.35s}.expander.active p{opacity:1;transform:none}.expander>b{font-size:1.5rem;align-self:flex-end;opacity:.55}

.work{background:linear-gradient(180deg,#fffafd,#f8eff9)}.work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.work-card{display:grid;grid-template-columns:1.05fr .95fr;min-height:410px;background:#fff;border:1px solid rgba(49,11,54,.09);border-radius:30px;overflow:hidden;box-shadow:0 18px 60px rgba(47,12,50,.07);transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s}.work-card:hover{transform:translateY(-8px);box-shadow:0 28px 80px rgba(47,12,50,.13)}.work-art{position:relative;overflow:hidden;display:grid;place-items:end start;padding:1.6rem;isolation:isolate}.work-art:before,.work-art:after{content:"";position:absolute;border-radius:50%;filter:blur(20px);z-index:-1}.work-art:before{width:250px;height:250px;right:-70px;top:-70px;background:rgba(255,255,255,.28)}.work-art:after{width:200px;height:200px;left:-70px;bottom:-70px;background:rgba(0,0,0,.2)}.work-art>span{font-size:clamp(2.4rem,4vw,5rem);line-height:.82;letter-spacing:-.08em;color:#fff;font-weight:950}.work-art i{position:absolute;width:130px;height:130px;border:1px solid rgba(255,255,255,.36);border-radius:50%;right:1.5rem;top:1.5rem}.art-expo{background:linear-gradient(145deg,#200028,#79207f)}.art-kidz{background:linear-gradient(145deg,#4a1246,#d65cc8)}.art-private{background:linear-gradient(145deg,#3d162d,#a55c72)}.art-brand{background:linear-gradient(145deg,#1a153d,#6b35a5)}.work-meta{padding:1.5rem;display:flex;flex-direction:column;justify-content:flex-end}.work-meta small{font-size:.62rem;letter-spacing:.18em;font-weight:800;color:#7d4a81}.work-meta h3{font-size:clamp(1.7rem,2.4vw,2.7rem);letter-spacing:-.05em;margin:.7rem 0}.work-meta p{font-size:.92rem;line-height:1.55;color:#715d73}.work-tag{font-size:.66rem;letter-spacing:.08em;font-weight:800;padding-top:1.2rem;border-top:1px solid rgba(49,11,54,.09);margin-top:1rem;color:#512655}.verified-case{position:relative}.verified-case:after{content:"";position:absolute;inset:0;border:1px solid rgba(181,66,184,.30);border-radius:30px;pointer-events:none}

.ticker-section{background:#24102b;border-top:1px solid rgba(255,255,255,.09);border-bottom:1px solid rgba(255,255,255,.09);padding:1.4rem 0;overflow:hidden}.ticker-track{display:flex;align-items:center;gap:2rem;width:max-content;white-space:nowrap;will-change:transform}.ticker-track span{font-size:clamp(1.6rem,3vw,3.7rem);letter-spacing:-.045em;font-weight:800}.ticker-track i{font-style:normal;color:#d262d3;font-size:1rem}

.about{background:radial-gradient(circle at 25% 40%,rgba(194,70,199,.18),transparent 30%),linear-gradient(145deg,#120016,#220027)}.about-grid{display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:8vw;min-height:95vh}.about-logo-wrap{position:relative;max-width:520px;justify-self:center;border-radius:42px;padding:2rem;background:rgba(255,255,255,.94);box-shadow:0 50px 100px rgba(0,0,0,.25);transform:rotate(-2deg)}.about-logo-wrap img{width:100%;border-radius:24px}.logo-halo{position:absolute;inset:-15%;border-radius:50%;background:radial-gradient(circle,rgba(220,96,219,.28),transparent 66%);filter:blur(30px);z-index:-1}.about-copy>p:not(.eyebrow){color:rgba(255,255,255,.68);font-size:1.05rem;line-height:1.75;max-width:42rem}.values-row{display:flex;gap:.45rem;flex-wrap:wrap;margin-top:2rem}.values-row span{font-size:.61rem;letter-spacing:.15em;border:1px solid rgba(255,255,255,.14);padding:.6rem .75rem;border-radius:999px;color:rgba(255,255,255,.66)}

.process{background:linear-gradient(180deg,#fffafd,#f6edf7)}.process-list{list-style:none;margin:4rem 0 0;padding:0;border-top:1px solid rgba(37,9,41,.13)}.process-list li{display:grid;grid-template-columns:100px 1fr;align-items:center;border-bottom:1px solid rgba(37,9,41,.13);padding:1.5rem 0;transition:.3s}.process-list li:hover{padding-left:1rem;background:linear-gradient(90deg,rgba(204,91,205,.06),transparent)}.process-list>li>span{font-size:.65rem;letter-spacing:.22em;color:#8c5b90}.process-list h3{font-size:clamp(1.8rem,3vw,3.5rem);letter-spacing:-.05em;margin:0}.process-list p{margin:.4rem 0 0;color:#7d687f}

.contact{background:linear-gradient(150deg,#18001c,#2c0034);min-height:100vh;display:flex;flex-direction:column;justify-content:flex-end}.contact-light{position:absolute;width:60vw;height:60vw;border-radius:50%;background:radial-gradient(circle,rgba(211,92,211,.22),transparent 66%);right:-20vw;top:-25vw;filter:blur(20px)}.contact-inner{width:min(1400px,100%);margin:auto}.contact-title{font-size:clamp(4.2rem,10vw,11rem);line-height:.79;letter-spacing:-.09em;margin:0 0 4rem}.contact-title em{font-family:Georgia,serif;font-weight:400;color:#e48ee2}.contact-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid rgba(255,255,255,.12)}.contact-person{display:grid;grid-template-columns:1fr auto;gap:.8rem;padding:1.35rem 0;border-bottom:1px solid rgba(255,255,255,.12);position:relative}.contact-person:nth-child(odd){padding-right:2rem;border-right:1px solid rgba(255,255,255,.12)}.contact-person:nth-child(even){padding-left:2rem}.contact-person small{grid-column:1/-1;font-size:.6rem;letter-spacing:.18em;color:rgba(255,255,255,.4)}.contact-person span{font-size:clamp(1.2rem,2vw,2rem);letter-spacing:-.04em}.contact-person b{transition:.25s}.contact-person:hover b{transform:translate(5px,-5px)}.footer{display:flex;justify-content:space-between;gap:1rem;padding:1.2rem clamp(1.25rem,5vw,5rem);font-size:.65rem;letter-spacing:.05em;color:rgba(255,255,255,.38);border-top:1px solid rgba(255,255,255,.08)}

.cursor-dot,.cursor-ring{position:fixed;top:0;left:0;border-radius:50%;pointer-events:none;z-index:10000;mix-blend-mode:difference}.cursor-dot{width:6px;height:6px;background:#fff;margin:-3px 0 0 -3px}.cursor-ring{width:34px;height:34px;border:1px solid rgba(255,255,255,.75);margin:-17px 0 0 -17px;transition:width .2s,height .2s,margin .2s,background .2s}.cursor-ring.hovering{width:54px;height:54px;margin:-27px 0 0 -27px;background:rgba(255,255,255,.1)}

@media (max-width:1100px){
  .manifesto-grid{grid-template-columns:1fr 2fr}.manifesto-stat{grid-column:2}.service-panel{grid-template-columns:55px 1fr}.service-visual{position:absolute;right:-5vw;bottom:-10vh;width:45vw;opacity:.28}.work-card{grid-template-columns:1fr}.work-art{min-height:260px}.about-grid{grid-template-columns:1fr 1.2fr}.hero-side-note{display:none}
}
@media (max-width:800px){
  .site-header{height:62px}.brand-copy{display:none}.brand-mark{width:39px;height:39px}.nav-toggle{display:block}.site-nav{position:fixed;top:0;left:0;width:100%;height:100svh;background:rgba(16,0,19,.97);backdrop-filter:blur(24px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:2rem;gap:.4rem;opacity:0;visibility:hidden;transition:.3s;z-index:-1}.site-nav.open{opacity:1;visibility:visible}.site-nav>a{font-size:clamp(2.2rem,9vw,4rem);line-height:1;letter-spacing:-.05em}.site-nav .nav-cta{font-size:1rem;margin-top:1rem}
  .hero-shell{padding-top:9rem}.hero-title{font-size:clamp(4rem,19vw,7.4rem);line-height:.8}.hero-lede{margin-top:1.6rem}.scroll-indicator{display:none}.manifesto-grid,.services-heading,.breathe-grid,.split-heading,.about-grid{grid-template-columns:1fr}.manifesto-stat{grid-column:auto}.services-heading{gap:1rem}
  .service-stage{height:auto;overflow:visible}.service-track{display:block;width:auto;height:auto}.service-panel{width:100%;height:auto;min-height:90svh;grid-template-columns:1fr;padding:7rem 1.25rem 3rem}.service-no{position:absolute;top:2rem;right:1.2rem;margin:0}.service-content h3{font-size:clamp(3.8rem,16vw,6rem)}.service-visual{width:75vw;right:-20vw;bottom:-7vh}.service-content{padding-bottom:12rem}
  .breathe-stage{min-height:460px}.breath-circle{width:min(80vw,360px)}.orbit-one{width:min(92vw,450px)}.orbit-two{width:min(108vw,530px)}
  .expanders{flex-direction:column;min-height:auto}.expander,.expander.active{min-height:220px;flex:auto}.expander p{opacity:1;transform:none}.work-grid{grid-template-columns:1fr}.work-card{min-height:0}.work-art{min-height:280px}.about-logo-wrap{max-width:380px}.contact-actions{grid-template-columns:1fr}.contact-person:nth-child(odd),.contact-person:nth-child(even){padding:1.25rem 0;border-right:0}.footer{flex-direction:column}.process-list li{grid-template-columns:58px 1fr}.contact-title{font-size:clamp(4rem,19vw,7rem)}
}
@media (max-width:540px){.section-pad{padding-left:1.15rem;padding-right:1.15rem}.hero-title{font-size:clamp(3.7rem,18vw,5.9rem)}.hero-actions{flex-direction:column;align-items:stretch}.btn{width:100%}.display{font-size:clamp(3.1rem,14vw,5.5rem)}.work-art{min-height:230px}.work-meta{padding:1.3rem}.breathe-stage{min-height:400px}}
@media (hover:none),(pointer:coarse){.cursor-dot,.cursor-ring{display:none}.magnetic{transform:none!important}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}.page-loader{display:none}#webgl{display:none}}

/* ===== V2 REAL-MEDIA + LIVING PORTFOLIO LAYER ===== */
.hero-photo-field{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;opacity:.42;mix-blend-mode:screen}.hero-photo{position:absolute;margin:0;overflow:hidden;border-radius:32px;box-shadow:0 30px 100px rgba(0,0,0,.45);filter:saturate(.75) contrast(1.05)}.hero-photo img{width:100%;height:100%;object-fit:cover;display:block}.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(28,0,33,.05),rgba(22,0,26,.78))}.hero-photo-a{width:min(31vw,470px);height:62vh;right:8vw;top:13vh;transform:rotate(4deg)}.hero-photo-b{width:min(27vw,410px);height:46vh;right:31vw;top:33vh;transform:rotate(-5deg);opacity:.72}.hero-photo-c{width:min(20vw,300px);height:42vh;right:1vw;bottom:-3vh;transform:rotate(8deg);opacity:.62}.hero:after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#150018 0%,rgba(21,0,24,.94) 34%,rgba(21,0,24,.52) 67%,rgba(21,0,24,.74) 100%);pointer-events:none}.hero-mesh,.cloud,.light-orb{z-index:2}.hero-shell,.hero-side-note,.scroll-indicator{z-index:4}

.service-photo{position:absolute;right:4.5vw;top:13vh;width:min(31vw,510px);height:68vh;border-radius:34px;margin:0;overflow:hidden;z-index:1;box-shadow:0 40px 100px rgba(0,0,0,.28);transform:rotate(1.5deg);border:1px solid rgba(255,255,255,.15)}.service-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(12,0,16,.55) 100%)}.service-photo img{width:100%;height:100%;display:block;object-fit:cover;filter:saturate(.9) contrast(1.02)}.panel-entertainment .service-photo img{object-position:50% 42%}.panel-sound .service-photo img{object-position:50% 50%}.panel-marketing .service-photo img{object-fit:cover}.service-panel .service-visual{z-index:0;opacity:.18}.service-panel:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,0,18,.94) 0%,rgba(15,0,18,.7) 55%,rgba(15,0,18,.08) 100%);pointer-events:none;z-index:1}.service-content,.service-no{z-index:3}.service-no{position:relative}

.signature-brand{background:radial-gradient(circle at 70% 30%,rgba(197,57,188,.16),transparent 30%),linear-gradient(160deg,#1d0c22 0%,#2b1033 100%);overflow:hidden}.signature-stage{min-height:110vh;width:min(1500px,100%);margin:auto;padding:clamp(6rem,11vw,10rem) clamp(1.25rem,6vw,6rem);display:grid;grid-template-columns:minmax(290px,.85fr) 1.15fr;gap:clamp(2rem,7vw,7rem);align-items:center;position:relative}.signature-portrait{height:min(75vh,820px);border-radius:38px;overflow:hidden;position:relative;box-shadow:0 45px 140px rgba(0,0,0,.45);transform:rotate(-1.5deg)}.signature-portrait img,.signature-mini img{width:100%;height:100%;object-fit:cover;display:block}.portrait-caption{position:absolute;left:20px;bottom:20px;padding:.65rem .8rem;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(15,0,17,.45);backdrop-filter:blur(12px);font-size:.58rem;letter-spacing:.16em;font-weight:800}.signature-copy{position:relative;z-index:2}.miss-andy-mark{display:block;width:min(320px,65%);max-height:220px;object-fit:contain;object-position:left center;margin:0 0 1.2rem;filter:drop-shadow(0 12px 35px rgba(0,0,0,.32))}.signature-chips{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:2rem}.signature-chips span{padding:.7rem .85rem;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.055);border-radius:999px;font-size:.7rem;color:rgba(255,255,255,.78)}.signature-mini{position:absolute;width:190px;height:145px;overflow:hidden;border-radius:24px;border:1px solid rgba(255,255,255,.15);box-shadow:0 22px 70px rgba(0,0,0,.34);z-index:3}.signature-mini-a{left:clamp(15rem,36vw,35rem);bottom:6vh;transform:rotate(4deg)}.signature-mini-b{right:3vw;top:11vh;transform:rotate(-6deg)}

.photo-work-card{cursor:pointer;grid-template-columns:1fr;min-height:520px;position:relative;background:#130715;color:#fff;border-color:rgba(255,255,255,.08)}.photo-work-card .work-photo{margin:0;min-height:350px;position:relative;overflow:hidden}.photo-work-card .work-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(18,4,20,.45))}.photo-work-card .work-photo img{display:block;width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:transform .8s cubic-bezier(.2,.8,.2,1),filter .5s}.photo-work-card:hover .work-photo img{transform:scale(1.045);filter:saturate(1.08)}.work-open{position:absolute;right:18px;top:18px;z-index:2;padding:.65rem .8rem;background:rgba(20,0,23,.48);border:1px solid rgba(255,255,255,.19);border-radius:999px;backdrop-filter:blur(12px);font-size:.58rem;letter-spacing:.16em;font-weight:850}.photo-work-card .work-meta{background:linear-gradient(180deg,#18091a,#100711);padding:1.7rem}.photo-work-card .work-meta small{color:#d7a7db}.photo-work-card .work-meta p{color:#b9a8bc}.photo-work-card .work-tag{border-color:rgba(255,255,255,.09);color:#e1c7e4}.photo-work-card.verified-case:after{border-color:rgba(218,116,219,.38)}

.story-reel{padding-bottom:clamp(5rem,10vw,9rem);overflow:hidden}.story-head{display:grid;grid-template-columns:1.2fr .8fr;gap:4rem;align-items:end}.story-track{display:flex;gap:14px;padding:0 clamp(1.25rem,6vw,6rem) 1rem;overflow-x:auto;scrollbar-width:none;scroll-snap-type:x mandatory}.story-track::-webkit-scrollbar{display:none}.story-track figure{margin:0;flex:0 0 min(72vw,520px);height:min(64vh,650px);border-radius:32px;overflow:hidden;position:relative;scroll-snap-align:start;background:#210827}.story-track figure:nth-child(even){flex-basis:min(54vw,390px);height:min(55vh,560px);margin-top:7vh}.story-track img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s}.story-track figure:hover img{transform:scale(1.035)}.story-track figcaption{position:absolute;left:18px;bottom:18px;padding:.65rem .8rem;border-radius:999px;background:rgba(15,0,18,.53);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(12px);font-size:.6rem;letter-spacing:.12em;text-transform:uppercase}

.about-logo-wrap{overflow:visible}.about-proof{position:absolute;margin:0;right:-18%;bottom:-15%;width:48%;height:54%;border-radius:25px;overflow:hidden;border:6px solid #19051d;box-shadow:0 25px 70px rgba(0,0,0,.32);transform:rotate(5deg)}.about-proof img{width:100%;height:100%;object-fit:cover}

.project-modal{position:fixed;inset:0;z-index:80;background:rgba(7,2,8,.86);backdrop-filter:blur(20px);display:none;overflow:auto}.project-modal.open{display:block}.modal-close{position:fixed;right:22px;top:18px;z-index:3;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.09);color:#fff;font-size:1.8rem;cursor:pointer}.modal-shell{min-height:100vh;width:min(1400px,100%);margin:auto;padding:clamp(6rem,10vw,9rem) clamp(1.25rem,5vw,5rem);display:grid;grid-template-columns:minmax(300px,.68fr) 1.32fr;gap:clamp(2rem,5vw,5rem)}.modal-copy{position:sticky;top:7rem;align-self:start}.modal-copy h2{font-size:clamp(3.3rem,6vw,6.6rem);line-height:.88;letter-spacing:-.065em;margin:.7rem 0 1.4rem}.modal-copy>p:not(.eyebrow){font-size:1.05rem;line-height:1.65;color:#c7b9ca}.modal-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.5rem}.modal-tags span{padding:.65rem .75rem;border:1px solid rgba(255,255,255,.14);border-radius:999px;font-size:.65rem;color:#e7d7e9}.relationship-note{display:block;color:#96889a;line-height:1.5;margin-top:1.5rem}.modal-gallery{display:grid;gap:14px}.modal-gallery figure{margin:0;border-radius:28px;overflow:hidden;min-height:420px;background:#1e0d21}.modal-gallery img{width:100%;height:100%;max-height:80vh;object-fit:cover;display:block}.modal-gallery figure:nth-child(3n+2){margin-left:9%;}.modal-gallery figure:nth-child(3n){margin-right:12%}

body.modal-open{overflow:hidden}

@media(max-width:1100px){.hero-photo-a{right:2vw;width:36vw}.hero-photo-b{right:28vw}.service-photo{right:-3vw;width:38vw;opacity:.72}.signature-mini-b{display:none}.story-head{grid-template-columns:1fr}.about-proof{right:-6%;bottom:-10%}}
@media(max-width:800px){.hero-photo-field{opacity:.27}.hero-photo-a{width:70vw;height:48vh;right:-25vw;top:17vh}.hero-photo-b{width:58vw;height:34vh;right:26vw;top:53vh}.hero-photo-c{display:none}.hero:after{background:linear-gradient(180deg,rgba(21,0,24,.62),rgba(21,0,24,.88))}.service-panel:after{background:linear-gradient(180deg,rgba(15,0,18,.22) 0%,rgba(15,0,18,.86) 58%,rgba(15,0,18,.98) 100%)}.service-photo{width:100%;height:48%;right:0;top:0;border-radius:0;opacity:.58;border:0}.service-content{padding-top:28vh}.signature-stage{grid-template-columns:1fr;min-height:auto}.signature-portrait{height:62vh;max-height:640px}.signature-mini{display:none}.miss-andy-mark{width:min(280px,75%)}.story-track figure,.story-track figure:nth-child(even){flex-basis:82vw;height:58vh;margin-top:0}.modal-shell{grid-template-columns:1fr}.modal-copy{position:static}.modal-gallery figure,.modal-gallery figure:nth-child(3n+2),.modal-gallery figure:nth-child(3n){margin:0;min-height:300px}.about-proof{width:42%;height:42%;right:-4%;bottom:-7%}}
@media(max-width:540px){.photo-work-card{min-height:0}.photo-work-card .work-photo{min-height:310px}.story-track{padding-left:1rem;padding-right:1rem}.story-track figure,.story-track figure:nth-child(even){flex-basis:88vw;height:52vh;border-radius:24px}.signature-portrait{height:55vh;border-radius:26px}.modal-shell{padding-top:5.5rem}.modal-copy h2{font-size:3.2rem}}

/* ===== V2.1 CINEMATIC EXPERIENCE / UX RESTORATION ===== */
:root{--hero-accent:#df78dd;--hero-hot:#a72bac;--glass:rgba(21,3,24,.54)}

/* Hero: real photography first, motion layered on top. */
.hero-v3{min-height:100svh;align-items:center;background:#110012;overflow:hidden}
.hero-v3:after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(90deg,rgba(9,0,11,.95) 0%,rgba(12,0,15,.86) 38%,rgba(12,0,15,.36) 66%,rgba(12,0,15,.58) 100%),linear-gradient(0deg,rgba(9,0,11,.62),transparent 38%)}
.hero-cinema{position:absolute;inset:0;z-index:0;overflow:hidden;background:#130014}
.hero-reel-frame{position:absolute;inset:-2%;margin:0;opacity:0;transform:scale(1.08);will-change:opacity,transform;overflow:hidden}
.hero-reel-frame.is-active{opacity:1}
.hero-reel-frame img{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.96) contrast(1.04) brightness(.84)}
.hero-reel-frame:nth-child(1) img{object-position:62% 45%}.hero-reel-frame:nth-child(2) img{object-position:50% 42%}.hero-reel-frame:nth-child(3) img{object-position:70% 45%}.hero-reel-frame:nth-child(4) img{object-position:52% 35%}
.hero-cinema-shade{position:absolute;inset:0;z-index:4;background:radial-gradient(circle at var(--mx) var(--my),rgba(237,137,232,.10),transparent 24%),linear-gradient(180deg,rgba(20,0,23,.02),rgba(20,0,23,.3))}
.hero-grain{position:absolute;inset:-50%;z-index:5;opacity:.09;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.75'/%3E%3C/svg%3E");animation:grainShift .25s steps(2) infinite}
@keyframes grainShift{0%{transform:translate3d(0,0,0)}25%{transform:translate3d(2%,-1%,0)}50%{transform:translate3d(-1%,2%,0)}75%{transform:translate3d(1%,1%,0)}100%{transform:translate3d(-2%,-1%,0)}}
.hero-v3 .hero-mesh{z-index:1;opacity:.48;mix-blend-mode:screen}.hero-v3 .cloud,.hero-v3 .light-orb{z-index:3}.hero-shell-v3{z-index:6;align-self:center;padding-top:clamp(9rem,16vh,12rem);padding-bottom:clamp(12rem,22vh,17rem)}
.hero-title-v3{max-width:850px;font-size:clamp(4.3rem,9.2vw,9.8rem);line-height:.78;text-wrap:balance}.hero-title-v3 .accent-script{font-size:1.05em;padding-right:.06em}
.hero-v3 .hero-lede{max-width:39rem;color:rgba(255,255,255,.77);text-shadow:0 2px 18px rgba(0,0,0,.3)}
.hero-proof{display:flex;gap:0;margin-top:2.4rem;width:max-content;max-width:100%;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(16,0,19,.32);backdrop-filter:blur(18px);overflow:hidden}
.hero-proof span{display:grid;padding:.8rem 1rem;min-width:118px;border-right:1px solid rgba(255,255,255,.09)}.hero-proof span:last-child{border-right:0}.hero-proof b{font-size:1.15rem;letter-spacing:-.04em}.hero-proof small{font-size:.49rem;letter-spacing:.15em;opacity:.5;margin-top:.25rem;white-space:nowrap}
.hero-soundstage{position:absolute;z-index:7;right:clamp(2rem,5vw,6rem);bottom:clamp(3.5rem,7vh,6rem);width:min(38vw,590px);pointer-events:none;filter:drop-shadow(0 35px 70px rgba(0,0,0,.46));transform-origin:right bottom}
.hero-now-playing{display:flex;align-items:center;justify-content:flex-end;gap:.55rem;margin-top:.65rem;color:#fff}.hero-now-playing small{font-size:.48rem;letter-spacing:.18em;opacity:.48}.hero-now-playing b{font-size:.68rem;letter-spacing:.03em;min-width:132px;text-align:left}.live-dot{width:7px;height:7px;border-radius:50%;background:#f48cec;box-shadow:0 0 0 0 rgba(244,140,236,.55);animation:livePulse 1.7s ease-out infinite}@keyframes livePulse{70%{box-shadow:0 0 0 9px rgba(244,140,236,0)}100%{box-shadow:0 0 0 0 rgba(244,140,236,0)}}

/* Twin turntables: a deliberate motion signature, not decorative filler. */
.turntable-rig{position:relative;display:grid;grid-template-columns:1fr .32fr 1fr;gap:2.2%;align-items:center;width:100%;aspect-ratio:2.42/1;padding:3.2%;border-radius:26px;border:1px solid rgba(255,255,255,.16);background:linear-gradient(145deg,rgba(28,8,31,.88),rgba(9,3,12,.82));backdrop-filter:blur(16px) saturate(135%);box-shadow:inset 0 1px 0 rgba(255,255,255,.11),0 24px 70px rgba(0,0,0,.28);transform:perspective(900px) rotateX(7deg) rotateY(-4deg)}
.turntable{position:relative;aspect-ratio:1.18;border-radius:18px;background:linear-gradient(150deg,#251229,#0c080e);box-shadow:inset 0 0 0 1px rgba(255,255,255,.10),inset 0 -20px 45px rgba(0,0,0,.42)}
.platter{position:absolute;width:72%;aspect-ratio:1;border-radius:50%;left:8%;top:50%;transform:translateY(-50%);background:radial-gradient(circle,#09090b 0 9%,#1d1520 10% 13%,#080809 14% 100%);box-shadow:0 8px 20px rgba(0,0,0,.5),inset 0 0 0 4px #29202d;animation:platterSpin 2.55s linear infinite}
.deck-right .platter{animation-duration:2.2s;animation-direction:reverse}
.vinyl-groove{position:absolute;inset:5%;border-radius:50%;background:repeating-radial-gradient(circle,transparent 0 3px,rgba(255,255,255,.075) 3.5px 4px);box-shadow:inset 0 0 22px rgba(255,255,255,.025)}
.record-label{position:absolute;inset:35%;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,#f8d9f6,#d96fd7 47%,#7d1d87 100%);color:#1c041f;font-size:clamp(.42rem,.75vw,.72rem);font-weight:950;letter-spacing:-.08em;box-shadow:0 0 0 2px rgba(255,255,255,.22)}
@keyframes platterSpin{to{transform:translateY(-50%) rotate(360deg)}}
.tonearm{position:absolute;width:46%;height:5px;border-radius:999px;background:linear-gradient(90deg,#ddd,#8f8893);right:4%;top:16%;transform-origin:86% 50%;transform:rotate(52deg);box-shadow:0 2px 6px rgba(0,0,0,.45);animation:tonearmGroove 3.8s ease-in-out infinite alternate}.tonearm:after{content:"";position:absolute;width:12%;aspect-ratio:1;border-radius:50%;right:-2%;top:50%;transform:translateY(-50%);background:#5f5863;box-shadow:0 0 0 4px #151017}.tonearm i{position:absolute;width:18%;height:12px;left:-5%;top:50%;transform:translateY(-50%);background:#e7e2e8;border-radius:3px}@keyframes tonearmGroove{from{transform:rotate(50deg)}to{transform:rotate(57deg)}}
.mixer{align-self:stretch;display:flex;align-items:flex-end;justify-content:center;gap:7%;padding:22% 8% 13%;position:relative;border-radius:12px;background:linear-gradient(180deg,#251728,#0c0910);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
.mixer span{width:7%;height:45%;border-radius:999px;background:linear-gradient(to top,#9c2ca1,#f4a0ed);transform-origin:bottom;animation:eqBeat .78s ease-in-out infinite alternate}.mixer span:nth-child(2){animation-duration:.46s}.mixer span:nth-child(3){animation-duration:.61s}.mixer span:nth-child(4){animation-duration:.92s}.mixer span:nth-child(5){animation-duration:.54s}.mixer span:nth-child(6){animation-duration:.71s}@keyframes eqBeat{from{transform:scaleY(.24);opacity:.55}to{transform:scaleY(1);opacity:1}}
.mixer i{position:absolute;width:9px;height:9px;border-radius:50%;top:12%;background:#e775e1;box-shadow:0 0 10px rgba(231,117,225,.65)}.mixer i:nth-of-type(1){left:19%}.mixer i:nth-of-type(2){left:45%;background:#fff}.mixer i:nth-of-type(3){right:17%}

/* Bring the motion layer back above service photography. */
.service-panel .service-visual{position:absolute;z-index:5;opacity:1;right:3.5vw;bottom:4.5vh;width:min(20vw,310px);filter:drop-shadow(0 24px 55px rgba(0,0,0,.34));pointer-events:none}
.service-panel .visual-wave{height:155px;aspect-ratio:auto;border:1px solid rgba(255,255,255,.14);border-radius:24px;background:rgba(20,0,24,.44);backdrop-filter:blur(14px);padding:28px}
.service-panel .visual-rings,.service-panel .visual-orbit,.service-panel .visual-plate,.service-panel .visual-prism,.service-panel .visual-signal{padding:14px;border-radius:50%;background:rgba(17,0,20,.17);backdrop-filter:blur(8px)}
.service-turntables{width:min(36vw,530px)!important;right:2.5vw!important;bottom:3vh!important;background:transparent!important;padding:0!important;border-radius:0!important;backdrop-filter:none!important;aspect-ratio:auto!important}
.service-turntables .turntable-rig{transform:perspective(900px) rotateX(8deg) rotateY(-7deg) rotateZ(1deg)}
.service-panel:hover .service-photo img{transform:scale(1.025)}.service-photo img{transition:transform 1s cubic-bezier(.2,.8,.2,1),filter .5s}
.panel-dj .service-photo{filter:saturate(.88)}

/* Small contextual progress line makes the horizontal service journey easier to read. */
.service-stage:after{content:"SCROLL THROUGH 7 SERVICE WORLDS";position:absolute;z-index:8;left:clamp(1.25rem,6vw,6rem);bottom:1.25rem;font-size:.52rem;letter-spacing:.2em;color:rgba(255,255,255,.45);pointer-events:none}

/* Portfolio cards: stronger affordance without looking like generic cards. */
.photo-work-card{isolation:isolate}.photo-work-card:before{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;border-radius:30px;background:linear-gradient(120deg,transparent 35%,rgba(255,255,255,.10) 48%,transparent 60%);transform:translateX(-120%);transition:transform .8s cubic-bezier(.2,.8,.2,1)}.photo-work-card:hover:before{transform:translateX(120%)}
.photo-work-card:focus-visible{outline:3px solid #ce72cf;outline-offset:5px}

/* Project story: behaves like an in-site layer, with a real Back action. */
.project-modal{overscroll-behavior:contain;background:rgba(7,2,8,.94)}
.modal-toolbar{position:fixed;z-index:90;left:0;right:0;top:0;height:72px;padding:0 clamp(1rem,3vw,2.5rem);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.09);background:rgba(13,3,15,.74);backdrop-filter:blur(22px)}
.modal-back{display:inline-flex;align-items:center;gap:.55rem;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.07);color:#fff;border-radius:999px;padding:.72rem 1rem;font-size:.72rem;font-weight:800;cursor:pointer}.modal-back span{font-size:1rem}.modal-toolbar-label{font-size:.55rem;letter-spacing:.18em;color:rgba(255,255,255,.48)}
.modal-close{position:static;width:42px;height:42px;flex:0 0 42px;font-size:1.45rem;background:rgba(255,255,255,.08)}
.modal-shell{padding-top:clamp(7rem,11vw,10rem)}
body.modal-open{overflow:hidden;overscroll-behavior:none}

/* Light UX polish. */
.site-header{will-change:transform,background}.site-header.scrolled{box-shadow:0 18px 52px rgba(0,0,0,.22)}
.btn:focus-visible,.nav-toggle:focus-visible,.modal-back:focus-visible,.modal-close:focus-visible{outline:3px solid #f0a4ed;outline-offset:3px}

@media(max-width:1100px){
  .hero-soundstage{width:min(44vw,500px);right:2rem}.hero-title-v3{font-size:clamp(4.2rem,9.8vw,8rem)}
  .service-panel .service-visual{width:min(25vw,290px)}.service-turntables{width:min(42vw,480px)!important}
}
@media(max-width:800px){
  .hero-v3:after{background:linear-gradient(180deg,rgba(8,0,10,.28) 0%,rgba(9,0,11,.58) 37%,rgba(9,0,11,.96) 74%,#09000b 100%)}
  .hero-reel-frame{inset:0}.hero-reel-frame img{object-position:58% 28%;filter:saturate(.98) contrast(1.03) brightness(.83)}
  .hero-shell-v3{align-self:end;padding:8.2rem 1.15rem 14rem}.hero-title-v3{font-size:clamp(3.7rem,16.8vw,6.5rem);line-height:.8;max-width:100%}.hero-v3 .hero-lede{font-size:1rem;line-height:1.52;margin:1.5rem 0}
  .hero-proof{width:100%;border-radius:15px}.hero-proof span{min-width:0;flex:1;padding:.65rem .55rem}.hero-proof b{font-size:1rem}.hero-proof small{font-size:.43rem;letter-spacing:.08em;white-space:normal}
  .hero-soundstage{width:min(84vw,510px);right:1rem;bottom:2.1rem}.hero-now-playing{justify-content:flex-start}.turntable-rig{border-radius:18px;padding:2.7%}.turntable{border-radius:12px}
  .scroll-indicator{display:none}.hero-side-note{display:none}
  .service-stage:after{display:none}.service-panel .service-visual{width:46vw;right:1rem;bottom:1.3rem;opacity:.92}.service-turntables{width:86vw!important;right:7vw!important;bottom:1rem!important}.service-turntables .turntable-rig{transform:perspective(900px) rotateX(6deg) rotateY(-3deg)}
  .panel-dj .service-content{padding-bottom:16rem}
  .modal-toolbar{height:64px;padding:0 .8rem}.modal-toolbar-label{display:none}.modal-back{padding:.65rem .8rem}.modal-shell{padding-top:5.4rem}
}
@media(max-width:540px){
  .hero-shell-v3{padding-top:7rem;padding-bottom:12.8rem}.hero-title-v3{font-size:clamp(3.25rem,16.5vw,5.2rem)}.hero-actions{gap:.55rem}.hero-actions .btn{padding:.9rem 1rem;font-size:.8rem}.hero-proof{margin-top:1.35rem}
  .hero-soundstage{width:91vw;right:4.5vw;bottom:1.5rem}.hero-now-playing{margin-top:.35rem}.hero-now-playing b{font-size:.6rem}.hero-now-playing small{font-size:.43rem}
  .turntable-rig{gap:1.6%;padding:2.2%;border-radius:15px}.mixer i{width:6px;height:6px}.tonearm{height:3px}
  .service-panel .service-visual:not(.service-turntables){width:54vw;right:-4vw;bottom:1rem}.service-turntables{width:94vw!important;right:3vw!important}
  .modal-back{font-size:.67rem}.modal-close{width:38px;height:38px;flex-basis:38px}
}
@media(prefers-reduced-motion:reduce){.hero-grain{animation:none}.platter,.tonearm,.mixer span,.live-dot{animation:none}.hero-reel-frame:not(.is-active){display:none}}

/* ===== V2.4 FULL UI / UX AUDIT BASELINE =====
   One hierarchy, one motion budget, one stable interaction model. */
:root{
  --focus:#f0a4ed;
  --header-h:72px;
  --content-max:1400px;
}
html{scroll-padding-top:calc(var(--header-h) + 22px)}
section[id]{scroll-margin-top:calc(var(--header-h) + 22px)}
.page-loader,.page-transition{display:none!important}
:focus-visible{outline:3px solid var(--focus);outline-offset:4px}

/* Header / navigation */
.site-header{will-change:background,box-shadow;transition:top .28s ease,background .28s ease,box-shadow .28s ease,border-color .28s ease}
.site-header.scrolled{top:.6rem;background:rgba(18,0,22,.86);border-color:rgba(255,255,255,.18);box-shadow:0 18px 55px rgba(0,0,0,.25)}
.site-nav>a{position:relative}
.site-nav>a.is-active:not(.nav-cta){color:#fff;background:rgba(255,255,255,.08)}
.site-nav>a.is-active:not(.nav-cta):after{content:"";position:absolute;left:50%;bottom:.38rem;width:4px;height:4px;border-radius:50%;background:#e896e6;transform:translateX(-50%)}

/* Hero: copy first, real imagery second, turntables as a quiet signature. */
.hero-v3{min-height:100svh}
.hero-cinema{opacity:.96}
.hero-cinema-shade{background:linear-gradient(90deg,rgba(12,0,15,.91) 0%,rgba(12,0,15,.73) 43%,rgba(12,0,15,.33) 70%,rgba(12,0,15,.18) 100%),linear-gradient(180deg,rgba(7,0,9,.08),rgba(7,0,9,.52))}
.hero-grain{opacity:.055;animation-duration:.58s}
.hero-shell-v3{padding-top:clamp(8.5rem,15vh,11rem);padding-bottom:clamp(8.5rem,16vh,12rem)}
.hero-title-v3{max-width:930px;font-size:clamp(4.4rem,8.9vw,9.4rem);text-wrap:balance}
.hero-v3 .hero-lede{max-width:41rem;color:rgba(255,255,255,.84);font-size:clamp(1rem,1.6vw,1.32rem)}
.hero-actions{margin-top:.15rem}
.hero-proof{margin-top:1.8rem;background:rgba(14,2,16,.27);backdrop-filter:blur(9px);border-color:rgba(255,255,255,.10)}
.hero-soundstage{width:min(25vw,360px);right:clamp(1.2rem,3.2vw,3.8rem);bottom:clamp(2rem,4vh,3.2rem);opacity:.42;filter:drop-shadow(0 18px 38px rgba(0,0,0,.30))}
.hero-soundstage .turntable-rig{border-radius:16px;border-color:rgba(255,255,255,.08);background:linear-gradient(145deg,rgba(28,8,31,.50),rgba(9,3,12,.48));backdrop-filter:blur(6px) saturate(110%);box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 12px 34px rgba(0,0,0,.22)}
.hero-soundstage .platter{animation-duration:7.2s}.hero-soundstage .deck-right .platter{animation-duration:8.1s}.hero-soundstage .tonearm{animation-duration:12s}.hero-soundstage .mixer span{animation-duration:1.55s;opacity:.55}.hero-now-playing{opacity:.56}

/* Manifesto / section rhythm */
.manifesto-grid{align-items:center}
.manifesto-stat{align-self:center}
.split-heading,.services-heading{margin-bottom:clamp(2.5rem,5vw,4.5rem)}
.large-copy{max-width:40rem}

/* Service worlds: primary content wins every time. */
.service-stage{position:relative}
.service-progress-ui{position:absolute;z-index:20;left:clamp(1.2rem,3vw,3.4rem);bottom:1.25rem;display:flex;align-items:center;gap:.6rem;color:rgba(255,255,255,.58);pointer-events:none}
.service-progress-ui>span{font-size:.62rem;font-weight:850;letter-spacing:.1em}.service-progress-ui>i{width:64px;height:1px;background:linear-gradient(90deg,rgba(240,164,237,.85),rgba(255,255,255,.18))}.service-progress-ui>small{margin-left:.35rem;font-size:.47rem;letter-spacing:.18em;color:rgba(255,255,255,.38)}
.service-stage:after{display:none}
.service-panel{grid-template-columns:clamp(62px,5.8vw,92px) minmax(0,1.25fr) minmax(280px,.62fr);gap:clamp(1rem,3vw,3rem)}
.service-panel:after{background:linear-gradient(90deg,rgba(14,0,18,.98) 0%,rgba(14,0,18,.91) 46%,rgba(14,0,18,.52) 72%,rgba(14,0,18,.12) 100%)}
.service-no{z-index:7;align-self:center;margin-top:0;opacity:.92;color:#fff;font-size:clamp(1rem,1.3vw,1.3rem);font-weight:850;letter-spacing:-.03em}
.service-no:after{content:" / 07";font-size:.48rem;letter-spacing:.11em;color:rgba(255,255,255,.36);margin-left:.22rem}
.service-content{z-index:7;max-width:730px;text-shadow:0 3px 24px rgba(0,0,0,.14)}
.service-kicker{font-size:.63rem;letter-spacing:.16em;color:rgba(255,255,255,.62)}
.service-content h3{font-size:clamp(3.45rem,5.8vw,6.8rem);line-height:.88;margin:.82rem 0 1.1rem;max-width:730px}
.service-content p{max-width:35rem;font-size:clamp(1rem,1.12vw,1.15rem);line-height:1.58;color:rgba(255,255,255,.88);padding-left:.95rem;border-left:1px solid rgba(255,255,255,.22)}
.service-content ul{margin-top:1rem;gap:.28rem .9rem}
.service-content li{position:relative;border:0;background:none;border-radius:0;padding:.12rem 0 .12rem .78rem;backdrop-filter:none;color:rgba(255,255,255,.47);font-size:.64rem;letter-spacing:.02em}
.service-content li:before{content:"";position:absolute;left:0;top:.58em;width:4px;height:4px;border-radius:50%;background:rgba(236,165,235,.68)}
.service-photo{z-index:2;width:min(29vw,445px);height:65vh;opacity:.68;box-shadow:0 22px 58px rgba(0,0,0,.20);transform:rotate(.8deg)}
.service-photo:after{background:linear-gradient(180deg,rgba(9,0,11,.01) 28%,rgba(12,0,16,.60) 100%)}
.service-panel .service-visual{z-index:4;right:2.8vw;bottom:3.1vh;width:min(12vw,185px);opacity:.36;filter:drop-shadow(0 14px 30px rgba(0,0,0,.22));pointer-events:none}
.service-panel .visual-wave{height:92px;padding:15px;border-radius:15px;background:rgba(20,0,24,.18);backdrop-filter:blur(4px)}
.service-panel .visual-rings,.service-panel .visual-orbit,.service-panel .visual-plate,.service-panel .visual-prism,.service-panel .visual-signal{background:rgba(17,0,20,.04);backdrop-filter:none}
.service-turntables{width:min(19vw,285px)!important;right:2.8vw!important;bottom:2.7vh!important;opacity:.34!important}
.service-turntables .turntable-rig{border-radius:15px;border-color:rgba(255,255,255,.07);background:linear-gradient(145deg,rgba(28,8,31,.38),rgba(9,3,12,.36));backdrop-filter:blur(4px);transform:perspective(900px) rotateX(4deg) rotateY(-3deg) rotateZ(.2deg)}
.service-turntables .platter{animation-duration:8s}.service-turntables .deck-right .platter{animation-duration:8.8s}.service-turntables .tonearm{animation-duration:13s}.service-turntables .mixer span{animation-duration:1.7s;opacity:.5}

/* Interactive experience: calm, compact, purposeful. */
.breathe-grid{align-items:center}
.breathe-copy .btn{margin-top:.6rem}
.breathe-stage{isolation:isolate}
.breath-label{letter-spacing:.14em}

/* Signature concepts and portfolio */
.expander{min-height:470px;transition:flex .5s cubic-bezier(.2,.8,.2,1),background .35s,transform .35s}
.expander:hover{transform:translateY(-3px)}
.expander p{max-width:25rem}
.photo-work-card{min-height:500px;transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s}
.photo-work-card:before{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;border-radius:30px;background:linear-gradient(120deg,transparent 36%,rgba(255,255,255,.08) 49%,transparent 61%);transform:translateX(-125%);transition:transform .75s cubic-bezier(.2,.8,.2,1)}
.photo-work-card:hover:before{transform:translateX(125%)}
.photo-work-card:focus-visible{outline:3px solid var(--focus);outline-offset:5px}
.work-open{background:rgba(20,0,23,.56)}
.story-track{scroll-padding-inline:clamp(1rem,6vw,6rem);overscroll-behavior-inline:contain}
.story-track:focus-visible{outline:2px solid rgba(240,164,237,.85);outline-offset:-2px}
.story-track figure{box-shadow:0 22px 60px rgba(0,0,0,.18)}

/* Modal: consistent with browser Back and touch-safe. */
.project-modal{overscroll-behavior:contain;background:rgba(7,2,8,.95)}
.modal-toolbar{position:fixed;z-index:90;left:0;right:0;top:0;height:72px;padding:0 clamp(1rem,3vw,2.5rem);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.09);background:rgba(13,3,15,.78);backdrop-filter:blur(20px)}
.modal-back{display:inline-flex;align-items:center;gap:.55rem;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.07);color:#fff;border-radius:999px;padding:.72rem 1rem;font-size:.72rem;font-weight:800;cursor:pointer}
.modal-toolbar-label{font-size:.55rem;letter-spacing:.18em;color:rgba(255,255,255,.46)}
.modal-close{position:static;width:42px;height:42px;flex:0 0 42px;font-size:1.45rem;background:rgba(255,255,255,.08)}
.modal-shell{padding-top:clamp(7rem,11vw,10rem)}
body.modal-open{overflow:hidden;overscroll-behavior:none}

/* Contact: unmistakable conversion area. */
.contact-actions{border-top-color:rgba(255,255,255,.16)}
.contact-person{min-height:86px;align-items:center}
.contact-person small{color:rgba(255,255,255,.48)}
.contact-person span{color:rgba(255,255,255,.94)}
.contact-person:hover{background:linear-gradient(90deg,rgba(255,255,255,.04),transparent)}

/* Short desktop viewports: never crop service content inside the pinned chapter. */
@media (min-width:801px) and (max-height:760px){
  .service-panel{padding-top:4.5rem;padding-bottom:3.5rem}
  .service-content h3{font-size:clamp(3rem,5.2vw,5.5rem);margin:.65rem 0 .8rem}
  .service-content p{font-size:.96rem;line-height:1.48}
  .service-content ul{margin-top:.72rem}.service-content li{font-size:.59rem}
  .service-photo{top:14vh;height:61vh}
  .service-panel .service-visual{bottom:2vh}
}

@media(max-width:1100px){
  .hero-soundstage{width:min(28vw,330px);right:1.5rem}
  .service-panel .service-visual{width:min(16vw,175px)}
  .service-turntables{width:min(25vw,280px)!important}
}

@media(max-width:800px){
  :root{--header-h:64px}
  #webgl{display:none!important}
  .site-header{height:62px}
  .site-nav{z-index:190;padding:6.5rem 1.25rem 2rem;justify-content:flex-start;overflow:auto}
  .site-nav>a{width:100%;padding:.65rem .25rem;font-size:clamp(2rem,9vw,3.8rem)}
  .site-nav>a.is-active:not(.nav-cta){background:none}.site-nav>a.is-active:not(.nav-cta):after{left:auto;right:.2rem;bottom:50%;transform:translateY(50%);width:7px;height:7px}
  .nav-toggle{z-index:220}
  .hero-grain{animation:none;opacity:.02}.hero-mesh{filter:blur(24px)}
  .hero-v3:after{background:linear-gradient(180deg,rgba(8,0,10,.25) 0%,rgba(9,0,11,.56) 36%,rgba(9,0,11,.95) 72%,#09000b 100%)}
  .hero-reel-frame img{object-position:58% 28%;filter:saturate(.96) contrast(1.02) brightness(.82)}
  .hero-shell-v3{align-self:end;padding:7.6rem 1.15rem 7.2rem}
  .hero-title-v3{font-size:clamp(3.5rem,16vw,5.9rem);line-height:.8;max-width:100%}
  .hero-v3 .hero-lede{font-size:.98rem;line-height:1.5;margin:1.25rem 0}
  .hero-actions{gap:.5rem}.hero-actions .btn{padding:.9rem 1rem}
  .hero-proof{width:100%;border-radius:14px;margin-top:1.15rem}.hero-proof span{min-width:0;flex:1;padding:.62rem .48rem}.hero-proof b{font-size:.95rem}.hero-proof small{font-size:.41rem;letter-spacing:.06em;white-space:normal}
  .hero-soundstage{width:min(43vw,220px);right:.65rem;bottom:.55rem;opacity:.22}.hero-now-playing{display:none}.hero-soundstage .tonearm{animation:none}.hero-side-note,.scroll-indicator{display:none}

  .service-progress-ui{display:none}
  .service-panel{min-height:92svh;padding:5.8rem 1.15rem 2.2rem;grid-template-columns:1fr;gap:0}
  .service-panel:after{background:linear-gradient(180deg,rgba(13,0,16,.12) 0%,rgba(13,0,16,.56) 32%,rgba(13,0,16,.97) 55%,rgba(13,0,16,1) 100%)}
  .service-photo{width:100%;height:43%;right:0;top:0;border-radius:0;opacity:.60;border:0;transform:none;filter:none}
  .service-no{position:absolute;top:4.25rem;left:1.15rem;right:auto;font-size:.92rem;padding:.38rem .54rem;border:1px solid rgba(255,255,255,.11);border-radius:999px;background:rgba(12,0,15,.30);backdrop-filter:blur(5px)}
  .service-content{padding-top:22vh;padding-bottom:5.6rem;max-width:none}
  .service-kicker{font-size:.58rem;letter-spacing:.13em}
  .service-content h3{font-size:clamp(2.95rem,12.8vw,4.7rem);margin:.72rem 0 .9rem;max-width:100%}
  .service-content p{font-size:.96rem;line-height:1.55;padding-left:.72rem;max-width:33rem}
  .service-content ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.3rem .62rem;margin-top:.85rem}.service-content li{font-size:.60rem;line-height:1.35}
  .service-panel .service-visual:not(.service-turntables){width:28vw;right:-1vw;bottom:.45rem;opacity:.18}
  .service-turntables{width:43vw!important;right:-1vw!important;bottom:.4rem!important;opacity:.17!important}.service-turntables .tonearm{animation:none}
  .panel-dj .service-content{padding-bottom:5.8rem}

  .expanders{gap:.65rem}.expander,.expander.active{min-height:200px}.expander:hover{transform:none}
  .photo-work-card{min-height:0}.photo-work-card:hover{transform:none}.photo-work-card:hover .work-photo img{transform:none}
  .story-track figure,.story-track figure:nth-child(even){flex-basis:82vw;height:54vh;margin-top:0}
  .modal-toolbar{height:64px;padding:0 .75rem}.modal-toolbar-label{display:none}.modal-back{padding:.62rem .76rem}.modal-shell{padding-top:5.2rem}
  .contact-person{min-height:76px}
}

@media(max-width:540px){
  .hero-shell-v3{padding-top:7rem;padding-bottom:6.4rem}.hero-title-v3{font-size:clamp(3.15rem,15.8vw,5rem)}
  .hero-actions{flex-direction:column;align-items:stretch}.hero-actions .btn{width:100%}
  .hero-soundstage{width:46vw;opacity:.18}
  .service-content ul{grid-template-columns:1fr 1fr}
  .story-track{padding-left:1rem;padding-right:1rem}.story-track figure,.story-track figure:nth-child(even){flex-basis:88vw;height:50vh;border-radius:24px}
  .modal-back{font-size:.66rem}.modal-close{width:38px;height:38px;flex-basis:38px}
}

@media(hover:none),(pointer:coarse){
  .cursor-dot,.cursor-ring{display:none}.magnetic{transform:none!important}
  .service-panel:hover .service-photo img,.story-track figure:hover img{transform:none}
}
@media(prefers-reduced-motion:reduce){
  .hero-grain,.platter,.tonearm,.mixer span,.live-dot{animation:none!important}
  .hero-reel-frame:not(.is-active){display:none}
}


/* ===== V2.4.1 SCROLL + OPENING STABILITY =====
   The top of the site must feel immediate. Touch scrolling is always native,
   scroll-linked effects never compete with a gesture, and the hero retains
   atmosphere without asking the GPU to animate every layer at once. */

/* CSS-first launch motion: no late JS repaint/FOUC when CDN scripts arrive slowly. */
@keyframes laHeroLineIn{from{opacity:0;transform:translate3d(0,22px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@keyframes laHeroCopyIn{from{opacity:0;transform:translate3d(0,14px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
.hero-v3 .hero-line{animation:laHeroLineIn .72s cubic-bezier(.22,.75,.22,1) both}
.hero-v3 .hero-line:nth-child(1){animation-delay:.03s}
.hero-v3 .hero-line:nth-child(2){animation-delay:.09s}
.hero-v3 .hero-line:nth-child(3){animation-delay:.15s}
.hero-v3 .hero-kicker,.hero-v3 .hero-lede,.hero-v3 .hero-actions,.hero-v3 .hero-proof{animation:laHeroCopyIn .58s cubic-bezier(.22,.75,.22,1) both;animation-delay:.18s}

.hero-cinema{contain:paint}

/* Touch devices: the browser owns vertical movement. No expensive backdrop/blend
   effects are allowed to repaint the full viewport under the user's finger. */
@media (hover:none),(pointer:coarse){
  html,body{scroll-behavior:auto!important}
  body{transition:none!important}
  .hero-v3{touch-action:pan-y}
  .site-header{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:rgba(18,0,22,.90)}
  .site-header.scrolled{background:rgba(18,0,22,.95)}
  .site-nav{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
  .btn-ghost,.hero-proof,.hero-soundstage .turntable-rig,.service-no{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
  .hero-mesh,.cloud,.light-orb{animation:none!important;mix-blend-mode:normal!important}
  .hero-mesh{filter:blur(28px)!important;opacity:.32!important;transform:none!important}
  .cloud{filter:blur(44px)!important;opacity:.10!important;transform:none!important}
  .light-orb{filter:blur(55px)!important;opacity:.16!important}
  .hero-reel-frame{transform:none!important;will-change:opacity;transition:opacity var(--hero-reel-transition,.85s) ease}
  .hero-reel-frame img{filter:none!important;transform:none!important}
  .hero-cinema-shade{background:linear-gradient(180deg,rgba(8,0,10,.24) 0%,rgba(9,0,11,.58) 38%,rgba(9,0,11,.96) 74%,#09000b 100%)!important}
  .hero-soundstage{filter:none!important;transform:none!important}
  .hero-soundstage .turntable-rig{box-shadow:0 10px 24px rgba(0,0,0,.16)!important}
  body.is-scrolling .hero *,body.is-scrolling .service-visual *{animation-play-state:paused!important}
}

/* Phone-specific budget. Keep the turntable signature, but make it a quiet detail. */
@media(max-width:800px){
  .hero-shell-v3{padding-bottom:6.8rem}
  .hero-soundstage{width:min(38vw,190px);right:.7rem;bottom:.7rem;opacity:.16}
  .hero-proof{background:rgba(14,2,16,.44)}
  .hero-grain{display:none!important}
  .hero-cinema{transform:none!important}
  .service-panel{contain:paint}
}

@media(max-width:540px){
  .hero-shell-v3{padding-bottom:6.1rem}
  .hero-soundstage{width:39vw;opacity:.14}
}

/* Wide touch screens/tablets must never enter the desktop pinned horizontal
   service layout if the browser reports a coarse pointer. */
@media (min-width:801px) and (hover:none), (min-width:801px) and (pointer:coarse){
  .service-stage{height:auto!important;overflow:visible!important}
  .service-track{display:block!important;width:auto!important;height:auto!important;transform:none!important}
  .service-panel{width:100%!important;height:auto!important;min-height:88svh}
  .service-progress-ui{display:none!important}
}

@media(prefers-reduced-motion:reduce){
  .hero-v3 .hero-line,.hero-v3 .hero-kicker,.hero-v3 .hero-lede,.hero-v3 .hero-actions,.hero-v3 .hero-proof{animation:none!important}
}


/* ===== V2.5 CONFIGURABLE INTERACTIVE EXPERIENCE ===== */
#experience .breath-label{max-width:72%;text-align:center;line-height:1.35;word-break:normal}
#experience[data-experience-type="grounding"] .breath-circle{background:radial-gradient(circle at 35% 30%,#fff,#efe2fb 38%,#9a6bc3 74%,#503065);box-shadow:0 35px 120px rgba(80,48,101,.22),inset 0 0 55px rgba(255,255,255,.55)}
#experience[data-experience-type="grounding"] .orbit-two{animation-duration:34s}
#experience[data-experience-type="focus"] .breath-circle{background:radial-gradient(circle at 36% 30%,#fff,#dcecff 38%,#7c9bd8 72%,#324b7b);box-shadow:0 35px 120px rgba(50,75,123,.23),inset 0 0 55px rgba(255,255,255,.58)}
#experience[data-experience-type="focus"] .breath-label{letter-spacing:.08em}
#experience[data-experience-type="gratitude"] .breath-circle{background:radial-gradient(circle at 36% 30%,#fff,#ffe7d5 38%,#e29d75 74%,#844a42);box-shadow:0 35px 120px rgba(132,74,66,.22),inset 0 0 55px rgba(255,255,255,.58)}
#experience[data-experience-type="event_mood"] .breath-circle{background:radial-gradient(circle at 36% 30%,#fff,#f2d0f4 34%,#c45bc6 68%,#6d1f79);box-shadow:0 40px 140px rgba(126,31,137,.30),0 0 70px rgba(204,100,206,.18),inset 0 0 62px rgba(255,255,255,.6)}
#experience[data-experience-type="event_mood"] .orbit-one{border-color:rgba(153,43,165,.24)}
#experience[data-experience-type="event_mood"] .orbit-two{border-color:rgba(107,24,115,.24);animation-duration:16s}
#experience .breath-circle.active .breath-label{transform:translateZ(0)}
@media(max-width:640px){#experience .breath-label{max-width:78%;font-size:.64rem;letter-spacing:.09em}}

/* ===== V2.6 CREATIVE CONTROL PACKS ===== */
:root{
  --motion-factor:1;
  --hero-graphic-scale:1;
  --hero-graphic-opacity:1;
  --hero-graphic-x:0vw;
  --hero-graphic-y:0vh;
  --service-graphic-scale:1;
  --service-graphic-opacity:1;
  --ambient-intensity:1;
  --particle-opacity:.42;
  --hero-deck-spin-left:7.2s;
  --hero-deck-spin-right:8.1s;
  --service-deck-spin-left:8s;
  --service-deck-spin-right:8.8s;
}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* Story viewer must always sit above the persistent site navigation, including safe areas. */
.project-modal{z-index:1200!important}
.modal-toolbar{z-index:1220!important;padding-top:env(safe-area-inset-top);height:calc(72px + env(safe-area-inset-top))!important}
.modal-shell{padding-top:calc(clamp(7rem,11vw,10rem) + env(safe-area-inset-top))!important}
body.modal-open .site-header{opacity:0;visibility:hidden;pointer-events:none}
@media(max-width:800px){.modal-toolbar{height:calc(64px + env(safe-area-inset-top))!important}.modal-shell{padding-top:calc(5.6rem + env(safe-area-inset-top))!important}}

/* Animation Pack */
html[data-motion-master="off"] .hero-mesh,
html[data-motion-master="off"] .cloud,
html[data-motion-master="off"] .light-orb,
html[data-motion-master="off"] .service-visual *,
html[data-motion-master="off"] .hero-soundstage *,
html[data-motion-master="off"] .ticker-track,
html[data-motion-master="off"] .xp-scene *{animation-play-state:paused!important;transition-duration:.01ms!important}
html[data-motion-magnetic="off"] .magnetic{transform:none!important}
html[data-motion-cursor="off"] .cursor-dot,html[data-motion-cursor="off"] .cursor-ring{display:none!important}
html[data-motion-service-visuals="off"] .service-visual *{animation-play-state:paused!important}
html[data-motion-ticker="off"] .ticker-track{transform:none!important}
html[data-motion-expanders="off"] .expander,html[data-motion-expanders="off"] .expander:before,html[data-motion-expanders="off"] .expander p{transition:none!important}
html[data-motion-image-hover="off"] .photo-work-card:hover .work-photo img,html[data-motion-image-hover="off"] .service-panel:hover .service-photo img,html[data-motion-image-hover="off"] .story-track figure:hover img{transform:none!important;filter:none!important}
html[data-motion-experience="off"] .xp-scene *{animation-play-state:paused!important;transition:none!important}
html[data-motion-particles="off"] #webgl{display:none!important}
html.service-vertical-desktop .service-stage{height:auto!important;overflow:visible!important}
html.service-vertical-desktop .service-track{display:block!important;width:auto!important;height:auto!important;transform:none!important}
html.service-vertical-desktop .service-panel{width:100%!important;min-height:92vh;height:auto!important}
html.service-vertical-desktop .service-progress-ui{display:none!important}

/* Graphics Pack visibility and tuning. */
.hero-soundstage{scale:var(--hero-graphic-scale);opacity:var(--hero-graphic-opacity-computed,.42);translate:var(--hero-graphic-x) var(--hero-graphic-y)}
.hero-soundstage .deck-left .platter{animation-duration:var(--hero-deck-spin-left)!important}.hero-soundstage .deck-right .platter{animation-duration:var(--hero-deck-spin-right)!important}
.service-turntables .deck-left .platter{animation-duration:var(--service-deck-spin-left)!important}.service-turntables .deck-right .platter{animation-duration:var(--service-deck-spin-right)!important}
.service-panel .service-visual{scale:var(--service-graphic-scale);opacity:var(--service-graphic-opacity-desktop,.36)!important}
.hero-mesh,.light-orb,.cloud{opacity:var(--ambient-opacity,.28)}
#webgl{opacity:var(--particle-opacity)}
html[data-graphics-hero-mesh="off"] .hero-mesh,html[data-graphics-hero-lights="off"] .light-orb,html[data-graphics-hero-clouds="off"] .cloud,html[data-graphics-particles="off"] #webgl,html[data-graphics-hero-turntables="off"] .hero-soundstage{display:none!important}
html[data-graphics-service-graphics="off"] .service-panel .service-visual{display:none!important}
html[data-graphics-events-orbit="off"] .panel-events .visual-orbit,html[data-graphics-entertainment-wave="off"] .panel-entertainment .visual-wave,html[data-graphics-sound-rings="off"] .panel-sound .visual-rings,html[data-graphics-service-turntables="off"] .panel-dj .service-turntables,html[data-graphics-catering-plate="off"] .panel-catering .visual-plate,html[data-graphics-brand-prism="off"] .panel-brand .visual-prism,html[data-graphics-marketing-signal="off"] .panel-marketing .visual-signal{display:none!important}
@media(max-width:800px){.hero-soundstage{opacity:var(--hero-graphic-opacity-mobile,.22)}.service-panel .service-visual{opacity:var(--service-graphic-opacity-mobile,.18)!important}}
@media(max-width:540px){.hero-soundstage{opacity:var(--hero-graphic-opacity-phone,.16)}}

/* Experience Pack — every preset owns a distinct visual grammar. */
.experience-section{--xp-accent:#bd54bf;--xp-accent-2:#74277e;--xp-warm:#f2c3e8;background:radial-gradient(circle at 73% 45%,color-mix(in srgb,var(--xp-accent) 12%,transparent),transparent 30%),linear-gradient(180deg,#fffafd,#f8f0f9)}
.experience-section[data-experience-theme="violet"]{--xp-accent:#7659d7;--xp-accent-2:#34247e;--xp-warm:#d8d1ff}.experience-section[data-experience-theme="warm"]{--xp-accent:#e38a78;--xp-accent-2:#874341;--xp-warm:#ffe3cf}.experience-section[data-experience-theme="cool"]{--xp-accent:#6f9fd9;--xp-accent-2:#315d88;--xp-warm:#dceeff}.experience-section[data-experience-theme="gold"]{--xp-accent:#c69b4e;--xp-accent-2:#75571e;--xp-warm:#f8e7b7}
.experience-grid{min-height:90vh}.experience-stage{min-height:680px;position:relative;display:grid;place-items:center;isolation:isolate;perspective:1200px}.xp-visuals{position:absolute;inset:0 0 180px;isolation:isolate}.xp-scene{position:absolute;inset:0;display:grid;place-items:center;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .5s ease,visibility .5s}.xp-scene.is-active{opacity:1;visibility:visible}.xp-scene-label{position:absolute;bottom:8%;left:50%;transform:translateX(-50%);white-space:nowrap;font-size:.68rem;letter-spacing:.18em;color:#4c2850}.experience-section.xp-running .xp-scene.is-active{--xp-running:1}

/* Breath Halo */
.xp-breath-core{width:min(40vw,360px);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;position:relative;z-index:3;background:radial-gradient(circle at 34% 28%,#fff 0 8%,var(--xp-warm) 34%,var(--xp-accent) 72%,var(--xp-accent-2));box-shadow:0 40px 130px color-mix(in srgb,var(--xp-accent) 28%,transparent),inset 0 0 58px rgba(255,255,255,.58)}.xp-breath-core strong,.xp-breath-core span{font-size:.69rem;letter-spacing:.22em;font-weight:900;color:#3b143f}.xp-breath-ring{position:absolute;border:1px solid color-mix(in srgb,var(--xp-accent-2) 18%,transparent);border-radius:50%;aspect-ratio:1}.xp-breath-ring.ring-a{width:min(53vw,480px)}.xp-breath-ring.ring-b{width:min(65vw,580px);border-style:dashed;animation:orbitSpin var(--xp-breath-orbit-duration,24s) linear infinite}.xp-breathing .lottie-pulse{width:min(72vw,630px);opacity:.42}

/* Sensory Constellation */
.xp-grounding{background:radial-gradient(circle at center,color-mix(in srgb,var(--xp-accent) 10%,transparent),transparent 48%)}.xp-ground-center{width:170px;aspect-ratio:1;border-radius:50%;display:grid;place-content:center;text-align:center;gap:.45rem;background:#fff;box-shadow:0 25px 90px color-mix(in srgb,var(--xp-accent) 20%,transparent);z-index:4;border:1px solid color-mix(in srgb,var(--xp-accent) 24%,transparent)}.xp-ground-center small{font-size:.55rem;letter-spacing:.2em;color:#856988}.xp-ground-center strong{font-size:.72rem;letter-spacing:.12em;color:#35113a}.xp-ground-node{position:absolute;width:88px;height:88px;border-radius:24px;background:rgba(255,255,255,.74);border:1px solid color-mix(in srgb,var(--xp-accent) 25%,transparent);box-shadow:0 16px 45px rgba(62,22,67,.08);display:grid;place-content:center;text-align:center;gap:.15rem;z-index:3;transition:.4s}.xp-ground-node b{font-size:1.55rem;letter-spacing:-.06em;color:var(--xp-accent-2)}.xp-ground-node small{font-size:.5rem;letter-spacing:.16em;color:#745b76}.xp-ground-node.is-active{background:var(--xp-accent-2);transform:scale(1.08);box-shadow:0 18px 55px color-mix(in srgb,var(--xp-accent) 38%,transparent)}.xp-ground-node.is-active b,.xp-ground-node.is-active small{color:#fff}.node-1{top:7%;left:50%;transform:translateX(-50%)}.node-2{top:29%;right:8%}.node-3{bottom:8%;right:20%}.node-4{bottom:8%;left:20%}.node-5{top:29%;left:8%}.xp-ground-lines{position:absolute;width:82%;height:82%;overflow:visible;z-index:1}.xp-ground-lines path{fill:none;stroke:color-mix(in srgb,var(--xp-accent) 28%,transparent);stroke-width:.28;stroke-dasharray:2 3;animation:xpDash var(--xp-dash-duration,9s) linear infinite}@keyframes xpDash{to{stroke-dashoffset:-24}}

/* Focus Lens */
.xp-focus-frame{width:min(48vw,430px);aspect-ratio:1;border:1px solid color-mix(in srgb,var(--xp-accent) 25%,transparent);border-radius:50%;position:relative;display:grid;place-content:center;text-align:center;gap:.55rem;background:radial-gradient(circle,rgba(255,255,255,.98),rgba(255,255,255,.72) 54%,transparent 55%);box-shadow:0 30px 100px rgba(44,40,91,.10)}.xp-focus-frame>i{position:absolute;inset:9%;border:1px solid color-mix(in srgb,var(--xp-accent) 18%,transparent);border-radius:50%}.xp-focus-frame>i:nth-child(2){inset:22%;border-style:dashed;animation:orbitSpin var(--xp-focus-orbit-duration,20s) linear infinite reverse}.xp-focus-frame>i:nth-child(3){inset:35%;border-radius:22px;transform:rotate(45deg)}.xp-focus-frame>i:nth-child(4){inset:46%;border-color:var(--xp-accent)}.xp-focus-dot{position:absolute;inset:49%;border-radius:50%;background:var(--xp-accent);box-shadow:0 0 30px var(--xp-accent)}.xp-focus-frame strong{font-size:clamp(1rem,2vw,1.5rem);letter-spacing:.08em;color:#2d1732;z-index:2}.xp-focus-frame small{font-size:.48rem;letter-spacing:.18em;color:#826b85;z-index:2;margin-top:2.8rem}.xp-focus-meter{position:absolute;bottom:9%;width:min(56%,320px);height:4px;border-radius:999px;background:rgba(61,20,66,.09);overflow:hidden}.xp-focus-meter span{display:block;width:100%;height:100%;background:linear-gradient(90deg,var(--xp-accent-2),var(--xp-accent));transform:scaleX(0);transform-origin:left}

/* Gratitude Lanterns */
.xp-lanterns{display:flex;gap:clamp(1rem,3vw,2rem);align-items:flex-end;justify-content:center;width:100%;padding:0 4% 8%}.xp-lantern{width:min(26%,150px);height:250px;border-radius:80px 80px 24px 24px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;padding:1.6rem .8rem;background:linear-gradient(180deg,rgba(255,255,255,.97),color-mix(in srgb,var(--xp-warm) 72%,#fff));border:1px solid color-mix(in srgb,var(--xp-accent) 18%,transparent);box-shadow:0 30px 70px color-mix(in srgb,var(--xp-accent) 12%,transparent);position:relative;overflow:hidden;transition:.5s}.xp-lantern:before{content:"";position:absolute;width:90px;height:90px;border-radius:50%;top:28%;background:radial-gradient(circle,#fff,var(--xp-warm) 35%,transparent 70%);filter:blur(4px);opacity:.55}.xp-lantern:nth-child(2){height:310px}.xp-lantern span{font-size:.58rem;color:#927595;letter-spacing:.12em}.xp-lantern b{font-size:.72rem;letter-spacing:.14em;color:#422146;margin-top:.35rem}.xp-lantern.is-active{transform:translateY(-18px);box-shadow:0 35px 90px color-mix(in srgb,var(--xp-accent) 26%,transparent)}.xp-lantern.is-active:before{opacity:1;animation:lanternGlow var(--xp-lantern-duration,1.6s) ease-in-out infinite alternate}@keyframes lanternGlow{to{transform:scale(1.18)}}

/* Event Pulse */
.xp-event-mood{overflow:hidden}.xp-spotlight{position:absolute;top:-15%;left:50%;width:52%;height:95%;transform:translateX(-50%);clip-path:polygon(44% 0,56% 0,100% 100%,0 100%);background:linear-gradient(180deg,color-mix(in srgb,var(--xp-accent) 26%,transparent),transparent 82%);filter:blur(4px)}.xp-eq{position:absolute;left:12%;right:12%;bottom:22%;height:38%;display:flex;align-items:end;justify-content:center;gap:2.2%}.xp-eq i{flex:1;max-width:24px;height:var(--bar,55%);border-radius:999px 999px 4px 4px;background:linear-gradient(180deg,var(--xp-accent),var(--xp-accent-2));transform-origin:bottom;animation:xpEq var(--xp-eq-duration,1.15s) ease-in-out infinite alternate}.xp-eq i:nth-child(2n){--bar:78%;animation-delay:-.3s}.xp-eq i:nth-child(3n){--bar:38%;animation-delay:-.65s}.xp-eq i:nth-child(4n){--bar:92%;animation-delay:-.82s}@keyframes xpEq{to{transform:scaleY(.35)}}.xp-mood-words{position:absolute;left:9%;right:9%;bottom:9%;display:flex;justify-content:space-between}.xp-mood-words span{font-size:clamp(.62rem,1vw,.8rem);font-weight:900;letter-spacing:.14em;color:#6e4c72;opacity:.38;transition:.4s}.xp-mood-words span.is-active{opacity:1;color:var(--xp-accent-2);transform:translateY(-8px)}

/* Memory Mosaic */
.xp-mosaic{width:min(92%,560px);height:470px;display:grid;grid-template-columns:1.1fr .9fr;grid-template-rows:.9fr 1.1fr;gap:12px;transform:rotate(-1.5deg)}.xp-mosaic figure{margin:0;border-radius:30px;background-size:cover;background-position:center;box-shadow:0 22px 70px rgba(48,17,51,.13);position:relative;overflow:hidden;transform-style:preserve-3d}.xp-mosaic figure:nth-child(2),.xp-mosaic figure:nth-child(3){border-radius:80px 26px 26px 26px}.xp-mosaic figure span{position:absolute;left:16px;bottom:14px;color:#fff;font-size:.58rem;letter-spacing:.16em;font-weight:900}.xp-mosaic figure.is-active{outline:3px solid color-mix(in srgb,var(--xp-accent) 65%,#fff);outline-offset:4px}

/* Spotlight Reset */
.xp-spotlight-scene{overflow:hidden}.xp-stage-floor{position:absolute;left:10%;right:10%;bottom:14%;height:28%;border-radius:50%;border:1px solid color-mix(in srgb,var(--xp-accent) 25%,transparent);transform:perspective(500px) rotateX(68deg);background:radial-gradient(ellipse at center,color-mix(in srgb,var(--xp-accent) 13%,transparent),transparent 65%)}.xp-stage-floor i{position:absolute;inset:18%;border-radius:50%;border:1px solid color-mix(in srgb,var(--xp-accent) 18%,transparent)}.xp-stage-floor i:nth-child(2){inset:34%}.xp-stage-floor i:nth-child(3){inset:48%}.xp-stage-beam{position:absolute;top:-8%;left:50%;width:38%;height:87%;transform:translateX(-50%);clip-path:polygon(46% 0,54% 0,100% 100%,0 100%);background:linear-gradient(180deg,color-mix(in srgb,var(--xp-accent) 38%,transparent),transparent 82%);filter:blur(7px);transform-origin:top}.xp-stage-points{position:absolute;left:16%;right:16%;bottom:17%;display:flex;justify-content:space-between}.xp-stage-points span{width:88px;height:88px;border-radius:50%;display:grid;place-items:center;font-size:.56rem;font-weight:900;letter-spacing:.09em;background:#fff;border:1px solid color-mix(in srgb,var(--xp-accent) 20%,transparent);color:#624967;box-shadow:0 14px 35px rgba(40,16,45,.08);transition:.4s}.xp-stage-points span.is-active{background:var(--xp-accent-2);color:#fff;transform:translateY(-10px);box-shadow:0 18px 60px color-mix(in srgb,var(--xp-accent) 30%,transparent)}

/* Kinetic custom sequence */
.xp-custom{perspective:900px}.xp-word-tunnel{position:absolute;width:min(78%,460px);height:72%;transform-style:preserve-3d}.xp-word-tunnel span{position:absolute;inset:8%;border:1px solid color-mix(in srgb,var(--xp-accent) 24%,transparent);border-radius:30px;transform:translateZ(var(--z,0)) rotate(var(--r,0deg))}.xp-word-tunnel span:nth-child(1){--z:-120px;--r:-8deg}.xp-word-tunnel span:nth-child(2){--z:-60px;--r:6deg;inset:16%}.xp-word-tunnel span:nth-child(3){--z:0px;--r:-3deg;inset:24%}.xp-word-tunnel span:nth-child(4){--z:60px;--r:4deg;inset:32%;background:color-mix(in srgb,var(--xp-accent) 8%,transparent)}.xp-custom strong{z-index:3;font-size:clamp(1.5rem,4vw,3.5rem);letter-spacing:-.035em;color:#35113a;text-align:center;max-width:70%}.xp-custom small{position:absolute;bottom:10%;font-size:.52rem;letter-spacing:.18em;color:#876d89}

@media(max-width:800px){.experience-stage{min-height:500px}.xp-breath-core{width:min(72vw,340px)}.xp-ground-center{width:132px}.xp-ground-node{width:72px;height:72px;border-radius:20px}.node-2{right:2%}.node-5{left:2%}.xp-focus-frame{width:min(78vw,390px)}.xp-lanterns{gap:.65rem}.xp-lantern{width:29%;height:210px}.xp-lantern:nth-child(2){height:255px}.xp-mosaic{height:410px}.xp-stage-points{left:6%;right:6%}.xp-stage-points span{width:74px;height:74px}.xp-scene-label{bottom:4%}}
@media(max-width:540px){.experience-stage{min-height:430px}.xp-ground-node{width:64px;height:64px}.xp-ground-center{width:112px}.xp-ground-node b{font-size:1.2rem}.xp-mosaic{height:350px;gap:8px}.xp-mosaic figure{border-radius:22px}.xp-stage-points span{width:62px;height:62px;font-size:.48rem}.xp-lantern{height:185px;border-radius:55px 55px 20px 20px}.xp-lantern:nth-child(2){height:225px}}

/* V2.6 speed/opacity variables computed by the controllers (no fragile CSS multiplication). */
.hero-soundstage{opacity:var(--hero-graphic-opacity-computed,.42)}
.service-panel .service-visual{opacity:var(--service-graphic-opacity-desktop,.36)!important}
.hero-mesh,.light-orb,.cloud{opacity:var(--ambient-opacity,.28)}
.visual-orbit i{animation-duration:var(--orbit-duration,12s)!important}.visual-orbit i:nth-child(2){animation-duration:var(--orbit-duration-2,8s)!important}.visual-orbit i:nth-child(3){animation-duration:var(--orbit-duration-3,5s)!important}
.visual-wave span{animation-duration:var(--wave-duration,1.1s)!important}.visual-rings i{animation-duration:var(--ring-duration,3.2s)!important}.visual-prism i{animation-duration:var(--prism-duration,8s)!important}.visual-signal i{animation-duration:var(--signal-duration,3s)!important}.live-dot{animation-duration:var(--live-duration,1.7s)!important}.hero-mesh{animation-duration:var(--mesh-duration,14s)!important}.cloud-a{animation-duration:var(--cloud-duration,18s)!important}.cloud-b{animation-duration:var(--cloud-duration-b,24s)!important}
html[data-motion-image-hover="off"] .photo-work-card{transform:none!important}
@media(max-width:800px){.hero-soundstage{opacity:var(--hero-graphic-opacity-mobile,.22)}.service-panel .service-visual{opacity:var(--service-graphic-opacity-mobile,.18)!important}}
@media(max-width:540px){.hero-soundstage{opacity:var(--hero-graphic-opacity-phone,.16)}}

/* ===== v2.6 granular creative controls ===== */
html[data-motion-hero-ambient="off"] .hero-mesh,
html[data-motion-hero-ambient="off"] .hero .cloud{animation-play-state:paused!important}
html[data-motion-scroll-indicator="off"] .scroll-line{animation:none!important}
.hero-mesh{opacity:var(--hero-mesh-opacity,1)}
.hero .light-orb{opacity:var(--hero-lights-opacity,.28)}
.hero .cloud{opacity:var(--hero-clouds-opacity,.07)}
.cloud-a{animation-duration:var(--hero-cloud-duration-a,18s)!important}
.cloud-b{animation-duration:var(--hero-cloud-duration-b,24s)!important}
.panel-events .visual-orbit{scale:var(--graphic-orbit-scale-computed,1);opacity:var(--graphic-orbit-opacity-desktop,.36)!important}
.panel-entertainment .visual-wave{scale:var(--graphic-wave-scale-computed,1);opacity:var(--graphic-wave-opacity-desktop,.36)!important}
.panel-sound .visual-rings{scale:var(--graphic-rings-scale-computed,1);opacity:var(--graphic-rings-opacity-desktop,.36)!important}
.panel-dj .service-turntables{scale:var(--graphic-decks-scale-computed,1);opacity:var(--graphic-decks-opacity-desktop,.36)!important}
.panel-catering .visual-plate{scale:var(--graphic-plate-scale-computed,1);opacity:var(--graphic-plate-opacity-desktop,.36)!important}
.panel-brand .visual-prism{scale:var(--graphic-prism-scale-computed,1);opacity:var(--graphic-prism-opacity-desktop,.36)!important}
.panel-marketing .visual-signal{scale:var(--graphic-signal-scale-computed,1);opacity:var(--graphic-signal-opacity-desktop,.36)!important}
.panel-events .visual-orbit i{animation-duration:var(--graphic-orbit-duration-1,12s)!important}.panel-events .visual-orbit i:nth-child(2){animation-duration:var(--graphic-orbit-duration-2,8s)!important}.panel-events .visual-orbit i:nth-child(3){animation-duration:var(--graphic-orbit-duration-3,5s)!important}
.panel-entertainment .visual-wave span{animation-duration:var(--graphic-wave-duration,1.1s)!important}
.panel-sound .visual-rings i{animation-duration:var(--graphic-rings-duration,3.2s)!important}
.panel-brand .visual-prism i{animation-duration:var(--graphic-prism-duration,8s)!important}
.panel-marketing .visual-signal i{animation-duration:var(--graphic-signal-duration,3s)!important}
.panel-dj .service-turntables .deck-left .platter{animation-duration:var(--graphic-decks-left-duration,8s)!important}.panel-dj .service-turntables .deck-right .platter{animation-duration:var(--graphic-decks-right-duration,8.8s)!important}
.modal-toolbar .modal-close{position:relative!important;top:auto!important;right:auto!important;z-index:2!important;flex:0 0 auto}
@media(max-width:800px){
  .panel-events .visual-orbit{opacity:var(--graphic-orbit-opacity-mobile,.18)!important}.panel-entertainment .visual-wave{opacity:var(--graphic-wave-opacity-mobile,.18)!important}.panel-sound .visual-rings{opacity:var(--graphic-rings-opacity-mobile,.18)!important}.panel-dj .service-turntables{opacity:var(--graphic-decks-opacity-mobile,.18)!important}.panel-catering .visual-plate{opacity:var(--graphic-plate-opacity-mobile,.18)!important}.panel-brand .visual-prism{opacity:var(--graphic-prism-opacity-mobile,.18)!important}.panel-marketing .visual-signal{opacity:var(--graphic-signal-opacity-mobile,.18)!important}
}

/* Catering graphic gains its own controllable motion instrument. */
.visual-plate:after{content:"";position:absolute;width:10px;height:10px;border-radius:50%;left:50%;top:-7%;margin-left:-5px;background:rgba(255,255,255,.92);box-shadow:0 0 18px rgba(255,255,255,.65);transform-origin:5px calc(57% + 90px);animation:plateOrbit var(--graphic-plate-duration,12s) linear infinite}@keyframes plateOrbit{to{transform:rotate(360deg)}}
html[data-motion-master="off"] .visual-plate:after,html[data-motion-service-visuals="off"] .visual-plate:after{animation-play-state:paused!important}


/* ===== v2.7 Guided Experience Layer ===== */
.xp-guide-card{position:absolute;z-index:24;left:5%;right:5%;bottom:0;min-height:154px;padding:1.15rem 1.25rem 1rem;border-radius:28px;background:rgba(255,255,255,.82);border:1px solid color-mix(in srgb,var(--xp-accent) 20%,transparent);box-shadow:0 26px 70px rgba(45,18,48,.11);backdrop-filter:blur(16px);display:grid;grid-template-columns:1fr auto;grid-template-areas:"meta meta" "title time" "copy time" "bar bar";column-gap:1.2rem;align-content:center}.xp-guide-meta{grid-area:meta;display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.55rem;font-size:.52rem;font-weight:900;letter-spacing:.15em;color:#765a79}.xp-guide-card h3{grid-area:title;margin:0;color:#2f1433;font-size:clamp(1.08rem,1.8vw,1.45rem);letter-spacing:-.025em;line-height:1.06}.xp-guide-card p{grid-area:copy;margin:.4rem 0 0;color:#66536a;font-size:.92rem;line-height:1.55;max-width:620px}.xp-guide-progress{grid-area:bar;height:3px;margin-top:.95rem;border-radius:999px;overflow:hidden;background:color-mix(in srgb,var(--xp-accent) 10%,#eee)}.xp-guide-progress span{display:block;width:100%;height:100%;transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,var(--xp-accent-2),var(--xp-accent));transition:transform .45s ease}.xp-completion{position:absolute;z-index:30;inset:8% 6% 188px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(1.4rem,4vw,3rem);border-radius:36px;background:linear-gradient(145deg,rgba(255,255,255,.96),color-mix(in srgb,var(--xp-warm) 58%,#fff));border:1px solid color-mix(in srgb,var(--xp-accent) 20%,transparent);box-shadow:0 35px 100px color-mix(in srgb,var(--xp-accent) 18%,transparent);animation:xpCompleteIn .55s cubic-bezier(.2,.8,.2,1) both}.xp-completion[hidden]{display:none!important}.xp-completion small{font-size:.55rem;letter-spacing:.2em;font-weight:900;color:#8a698d}.xp-completion h3{margin:.55rem 0 .6rem;font-size:clamp(1.8rem,4vw,3.6rem);line-height:.96;letter-spacing:-.045em;color:#321437;max-width:700px}.xp-completion p{margin:0;max-width:660px;color:#66536a;line-height:1.6;font-size:clamp(.92rem,1.3vw,1.05rem)}.xp-completion b{margin-top:1rem;padding:.55rem .8rem;border-radius:999px;background:#fff;color:#46204b;font-size:.7rem;letter-spacing:.04em}.xp-completion-link{margin-top:1.25rem;color:var(--xp-accent-2);font-weight:900;font-size:.78rem;text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--xp-accent) 35%,transparent);padding-bottom:.2rem}.xp-completion-link:hover{border-color:var(--xp-accent-2)}@keyframes xpCompleteIn{from{opacity:0;transform:translateY(24px) scale(.98)}to{opacity:1;transform:none}}.experience-section.xp-complete .xp-visuals{opacity:.18;filter:blur(2px);transition:.5s}.experience-section.xp-running .xp-guide-card{box-shadow:0 28px 85px color-mix(in srgb,var(--xp-accent) 17%,transparent)}

/* Guest Journey — a path rather than an orb. */
.xp-journey-map{width:min(92%,600px);height:330px;display:grid;grid-template-columns:repeat(3,1fr);align-items:center;gap:1rem;position:relative}.xp-journey-route{position:absolute;left:12%;right:12%;top:50%;height:3px;background:linear-gradient(90deg,color-mix(in srgb,var(--xp-accent) 20%,transparent),var(--xp-accent),color-mix(in srgb,var(--xp-accent) 20%,transparent));border-radius:999px}.xp-journey-marker{position:absolute;left:0;top:50%;width:24px;height:24px;border-radius:50%;transform:translate(-50%,-50%);background:#fff;border:6px solid var(--xp-accent-2);box-shadow:0 0 0 8px color-mix(in srgb,var(--xp-accent) 13%,transparent),0 12px 30px rgba(45,18,48,.15)}.xp-journey-map article{position:relative;z-index:2;justify-self:center;width:min(100%,155px);aspect-ratio:1;border-radius:34px;padding:1rem;display:grid;place-content:center;text-align:center;background:rgba(255,255,255,.88);border:1px solid color-mix(in srgb,var(--xp-accent) 20%,transparent);box-shadow:0 22px 60px rgba(45,18,48,.09);transition:.45s}.xp-journey-map article:nth-of-type(2){transform:translateY(-54px)}.xp-journey-map article span{font-size:.56rem;letter-spacing:.15em;color:#987c9b}.xp-journey-map article b{margin:.35rem 0;font-size:.78rem;letter-spacing:.1em;color:#3e1943}.xp-journey-map article small{font-size:.45rem;letter-spacing:.13em;color:#8a718c}.xp-journey-map article.is-active{background:var(--xp-accent-2);transform:translateY(-10px) scale(1.05);box-shadow:0 28px 75px color-mix(in srgb,var(--xp-accent) 28%,transparent)}.xp-journey-map article:nth-of-type(2).is-active{transform:translateY(-64px) scale(1.05)}.xp-journey-map article.is-active span,.xp-journey-map article.is-active b,.xp-journey-map article.is-active small{color:#fff}

/* Tiny Win — stacked cards and a completion burst. */
.xp-win-stack{width:min(88%,520px);height:330px;position:relative}.xp-win-stack article{position:absolute;left:50%;top:50%;width:min(78%,390px);height:150px;margin:-75px 0 0 min(-39%,-195px);border-radius:30px;padding:1.25rem 1.4rem;display:grid;grid-template-columns:auto 1fr;grid-template-areas:"n title" "n sub";column-gap:1rem;align-content:center;background:rgba(255,255,255,.9);border:1px solid color-mix(in srgb,var(--xp-accent) 20%,transparent);box-shadow:0 22px 60px rgba(50,18,53,.1);transform:rotate(var(--r,0deg)) translateY(var(--y,0));transition:.45s}.xp-win-stack article:nth-child(1){--r:-7deg;--y:-72px}.xp-win-stack article:nth-child(2){--r:4deg;--y:0}.xp-win-stack article:nth-child(3){--r:-2deg;--y:72px}.xp-win-stack article span{grid-area:n;font-size:2.3rem;line-height:1;font-weight:900;color:color-mix(in srgb,var(--xp-accent) 55%,#fff)}.xp-win-stack article b{grid-area:title;font-size:1.05rem;letter-spacing:.08em;color:#3b173f}.xp-win-stack article small{grid-area:sub;font-size:.5rem;letter-spacing:.16em;color:#8e7190}.xp-win-stack article.is-active{z-index:4;background:var(--xp-accent-2);transform:rotate(0) translateY(var(--y,0)) scale(1.04)}.xp-win-stack article.is-active span,.xp-win-stack article.is-active b,.xp-win-stack article.is-active small{color:#fff}.xp-win-burst{position:absolute;inset:12%;pointer-events:none}.xp-win-burst i{position:absolute;left:50%;top:50%;width:8px;height:16px;border-radius:3px;background:var(--xp-accent);opacity:0}.experience-section.xp-celebrate .xp-win-burst i{animation:xpConfetti 1.4s cubic-bezier(.15,.75,.2,1) both}.xp-win-burst i:nth-child(2n){background:var(--xp-accent-2)}.xp-win-burst i:nth-child(3n){width:12px;height:12px;border-radius:50%}.xp-win-burst i:nth-child(1){--x:-190px;--y:-120px}.xp-win-burst i:nth-child(2){--x:-120px;--y:-180px}.xp-win-burst i:nth-child(3){--x:-45px;--y:-150px}.xp-win-burst i:nth-child(4){--x:45px;--y:-180px}.xp-win-burst i:nth-child(5){--x:120px;--y:-145px}.xp-win-burst i:nth-child(6){--x:190px;--y:-105px}.xp-win-burst i:nth-child(7){--x:-170px;--y:20px}.xp-win-burst i:nth-child(8){--x:170px;--y:25px}.xp-win-burst i:nth-child(9){--x:-105px;--y:110px}.xp-win-burst i:nth-child(10){--x:100px;--y:120px}.xp-win-burst i:nth-child(11){--x:-30px;--y:145px}.xp-win-burst i:nth-child(12){--x:40px;--y:155px}@keyframes xpConfetti{0%{opacity:0;transform:translate(0,0) rotate(0)}20%{opacity:1}100%{opacity:0;transform:translate(var(--x),var(--y)) rotate(540deg)}}

@media(max-width:800px){.experience-stage{min-height:650px}.xp-visuals{inset:0 0 220px}.xp-guide-card{left:0;right:0;min-height:194px;border-radius:26px;padding:1rem 1.05rem;grid-template-columns:1fr;grid-template-areas:"meta" "title" "copy" "bar"}.xp-guide-card h3{font-size:1.08rem}.xp-guide-card p{font-size:.86rem;line-height:1.5}.xp-completion{inset:5% 0 225px;border-radius:28px}.xp-journey-map{height:300px;gap:.45rem}.xp-journey-map article{width:105px;border-radius:24px;padding:.7rem}.xp-journey-map article:nth-of-type(2){transform:translateY(-38px)}.xp-journey-map article:nth-of-type(2).is-active{transform:translateY(-48px) scale(1.04)}.xp-win-stack{height:290px}.xp-win-stack article{height:120px;margin-top:-60px;border-radius:24px}.xp-win-stack article:nth-child(1){--y:-58px}.xp-win-stack article:nth-child(3){--y:58px}}
@media(max-width:540px){.experience-stage{min-height:610px}.xp-visuals{inset:0 0 232px}.xp-guide-card{min-height:210px}.xp-guide-meta{font-size:.46rem}.xp-guide-card p{font-size:.82rem}.xp-completion{inset:2% 0 238px;padding:1.15rem}.xp-completion h3{font-size:1.65rem}.xp-journey-map{width:100%;gap:.3rem}.xp-journey-map article{width:90px;border-radius:22px}.xp-journey-map article b{font-size:.65rem}.xp-journey-map article small{font-size:.39rem}.xp-win-stack article{width:88%;margin-left:-44%;padding:1rem}.xp-win-stack article span{font-size:1.8rem}.xp-win-stack article b{font-size:.9rem}}

/* ===== v2.8 Animated Experience Studio =====
   The exercise is the visual. Guidance supports it instead of replacing it. */
.experience-stage{--xp-guide-space:178px;min-height:720px;align-self:stretch}
.xp-visuals{inset:0 0 var(--xp-guide-space);border:1px solid color-mix(in srgb,var(--xp-accent) 14%,transparent);border-radius:42px;background:linear-gradient(145deg,rgba(255,255,255,.68),rgba(255,255,255,.24));box-shadow:0 30px 100px rgba(57,18,61,.07),inset 0 1px rgba(255,255,255,.75);overflow:hidden}
.xp-visuals:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 45%,color-mix(in srgb,var(--xp-accent) 9%,transparent),transparent 42%);opacity:.9;z-index:0}
.xp-scene{inset:1px;border-radius:41px;overflow:hidden}
.xp-scene>*{position:relative;z-index:2}
.xp-scene:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.28),transparent 22%,transparent 78%,rgba(255,255,255,.28))}
.xp-scene:not(.is-active) *{animation-play-state:paused!important}
.xp-mental-picture{position:absolute!important;z-index:12!important;left:50%;bottom:1.2rem;transform:translateX(-50%);width:min(84%,620px);margin:0;text-align:center;color:#5b3f5e;font-size:clamp(.62rem,.95vw,.78rem);line-height:1.45;letter-spacing:.035em;font-weight:700;text-wrap:balance;opacity:.8}
.xp-mental-picture:before{content:"MENTAL PICTURE";display:block;margin-bottom:.35rem;font-size:.43rem;letter-spacing:.2em;font-weight:900;color:color-mix(in srgb,var(--xp-accent-2) 72%,#7d6d80)}
.xp-next-move{position:absolute;z-index:28;left:50%;bottom:calc(var(--xp-guide-space) + 12px);transform:translateX(-50%);border:0;border-radius:999px;padding:.62rem .95rem;background:linear-gradient(135deg,var(--xp-accent-2),color-mix(in srgb,var(--xp-accent) 72%,#311037));color:#fff;font-size:.56rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;box-shadow:0 12px 30px color-mix(in srgb,var(--xp-accent) 26%,transparent);cursor:pointer;transition:transform .25s ease,box-shadow .25s ease,opacity .25s ease}
.xp-next-move span{display:inline-block;margin-left:.35rem;transition:transform .25s ease}.xp-next-move:hover{transform:translateX(-50%) translateY(-2px);box-shadow:0 16px 40px color-mix(in srgb,var(--xp-accent) 34%,transparent)}.xp-next-move:hover span{transform:translateX(3px)}
.xp-next-move[hidden]{display:none!important}
.experience-section.xp-running .xp-guide-card{transform:translateY(0);border-color:color-mix(in srgb,var(--xp-accent) 25%,transparent)}
.xp-guide-card{min-height:148px;background:linear-gradient(145deg,rgba(255,255,255,.9),rgba(255,255,255,.76));box-shadow:0 24px 64px rgba(45,18,48,.085)}
.xp-guide-card h3{max-width:720px}.xp-guide-card p{max-width:760px}

/* Breath Halo: a breathing field, not just a bubble. */
.xp-breath-sky{position:absolute!important;inset:0;z-index:0!important;overflow:hidden}.xp-breath-sky i{position:absolute;width:38%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--xp-accent) 12%,#fff),transparent 70%);filter:blur(10px);opacity:.55;animation:xpBreathDrift 11s ease-in-out infinite alternate}.xp-breath-sky i:nth-child(1){left:-8%;top:12%}.xp-breath-sky i:nth-child(2){right:-10%;top:18%;animation-delay:-3.7s}.xp-breath-sky i:nth-child(3){left:31%;bottom:-20%;animation-delay:-7s}@keyframes xpBreathDrift{to{transform:translate3d(7%,6%,0) scale(1.12)}}
.xp-breath-ring.ring-c{width:min(76vw,680px);border-style:dotted;opacity:.28;animation:orbitSpin 36s linear infinite reverse}.xp-breath-core{transition:box-shadow .5s ease}.xp-breath-core small{display:block;margin-top:.55rem;font-size:.42rem;letter-spacing:.18em;color:rgba(57,22,61,.62)}
.experience-section.xp-running .xp-breath-core{box-shadow:0 42px 140px color-mix(in srgb,var(--xp-accent) 34%,transparent),inset 0 0 68px rgba(255,255,255,.72)}

/* Sensory Constellation: attention travels around a living map. */
.xp-ground-orbit{position:absolute!important;z-index:1!important;left:50%;top:50%;border:1px dashed color-mix(in srgb,var(--xp-accent) 19%,transparent);border-radius:50%;transform:translate(-50%,-50%);animation:orbitSpin 24s linear infinite}.xp-ground-orbit.orbit-a{width:min(76%,540px);aspect-ratio:1}.xp-ground-orbit.orbit-b{width:min(58%,420px);aspect-ratio:1;animation-direction:reverse;animation-duration:17s;opacity:.55}.xp-ground-center i{display:block;width:9px;height:9px;border-radius:50%;margin:.1rem auto 0;background:var(--xp-accent);box-shadow:0 0 0 8px color-mix(in srgb,var(--xp-accent) 10%,transparent),0 0 28px var(--xp-accent);animation:xpCenterPulse 2.4s ease-in-out infinite}@keyframes xpCenterPulse{50%{transform:scale(1.3);box-shadow:0 0 0 14px transparent,0 0 40px var(--xp-accent)}}
.xp-ground-node:after{content:"";position:absolute;inset:-8px;border-radius:inherit;border:1px solid transparent;transition:.35s}.xp-ground-node.is-active:after{border-color:color-mix(in srgb,var(--xp-accent) 38%,transparent);box-shadow:0 0 0 8px color-mix(in srgb,var(--xp-accent) 8%,transparent)}

/* Focus Lens: distractions visibly fall outside the frame. */
.xp-focus{background:radial-gradient(circle at 50% 46%,rgba(255,255,255,.86),color-mix(in srgb,var(--xp-accent) 7%,#fff) 58%,rgba(255,255,255,.4))}
.xp-focus-distractions{position:absolute!important;inset:5%;z-index:1!important;pointer-events:none}.xp-focus-distractions span{position:absolute;padding:.38rem .54rem;border:1px solid color-mix(in srgb,var(--xp-accent) 13%,transparent);border-radius:999px;background:rgba(255,255,255,.44);color:#9a879b;font-size:.4rem;letter-spacing:.11em;font-weight:800;opacity:.5;animation:xpTabFloat 7s ease-in-out infinite alternate}.xp-focus-distractions span:nth-child(1){left:2%;top:16%}.xp-focus-distractions span:nth-child(2){left:46%;top:5%;animation-delay:-1.2s}.xp-focus-distractions span:nth-child(3){right:0;top:23%;animation-delay:-2.4s}.xp-focus-distractions span:nth-child(4){left:4%;bottom:16%;animation-delay:-3.5s}.xp-focus-distractions span:nth-child(5){right:2%;bottom:15%;animation-delay:-4.8s}.xp-focus-distractions span:nth-child(6){right:12%;top:49%;animation-delay:-5.6s}@keyframes xpTabFloat{to{transform:translate3d(7px,-8px,0)}}
.xp-focus-frame{width:min(62%,470px);box-shadow:0 30px 110px rgba(61,26,67,.09),0 0 0 18px rgba(255,255,255,.25)}.xp-focus-frame:before{content:"";position:absolute;inset:-14%;border-radius:50%;border:1px solid color-mix(in srgb,var(--xp-accent) 12%,transparent);animation:xpFocusBreathe 4.8s ease-in-out infinite}.xp-focus-frame:after{content:"";position:absolute;inset:-27%;border-radius:50%;border:1px solid color-mix(in srgb,var(--xp-accent) 8%,transparent)}@keyframes xpFocusBreathe{50%{transform:scale(.94);opacity:.45}}
.xp-focus[data-phase="1"] .xp-focus-frame,.xp-focus[data-phase="2"] .xp-focus-frame{box-shadow:0 32px 120px color-mix(in srgb,var(--xp-accent) 15%,transparent),0 0 0 24px rgba(255,255,255,.3)}
.xp-focus[data-phase="2"] .xp-focus-frame>i:nth-child(1){inset:14%}.xp-focus[data-phase="2"] .xp-focus-frame>i:nth-child(2){inset:28%}.xp-focus[data-phase="2"] .xp-focus-frame small{letter-spacing:.22em;color:#5d3d62}

/* Gratitude Lanterns: each reflection becomes a rising light. */
.xp-gratitude-sky{position:absolute!important;inset:0;z-index:0!important}.xp-gratitude-sky i{position:absolute;width:7px;height:7px;border-radius:50%;background:var(--xp-warm);box-shadow:0 0 18px var(--xp-accent);opacity:.35;animation:xpWarmStar 5s ease-in-out infinite alternate}.xp-gratitude-sky i:nth-child(1){left:14%;top:20%}.xp-gratitude-sky i:nth-child(2){left:29%;top:10%;animation-delay:-1s}.xp-gratitude-sky i:nth-child(3){right:28%;top:15%;animation-delay:-2s}.xp-gratitude-sky i:nth-child(4){right:13%;top:30%;animation-delay:-3s}.xp-gratitude-sky i:nth-child(5){left:49%;top:7%;animation-delay:-4s}@keyframes xpWarmStar{to{transform:translateY(-16px) scale(1.6);opacity:.8}}
.xp-lantern:after{content:"";position:absolute;left:50%;top:-34px;width:1px;height:36px;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--xp-accent) 22%,transparent))}.xp-lantern>i{position:absolute;left:50%;top:18%;width:42%;aspect-ratio:1;border-radius:50%;transform:translateX(-50%);background:radial-gradient(circle,#fff 0 18%,var(--xp-warm) 35%,transparent 72%);filter:blur(3px);opacity:.36}.xp-lantern.is-active>i{opacity:1;animation:lanternGlow var(--xp-lantern-duration,1.6s) ease-in-out infinite alternate}

/* Event Pulse: the room itself changes through arrival, connection and memory. */
.xp-event-mood{background:linear-gradient(180deg,rgba(255,255,255,.5),color-mix(in srgb,var(--xp-accent) 7%,#fff))}.xp-room-frame{position:absolute!important;z-index:1!important;left:12%;right:12%;top:12%;bottom:16%;border:1px solid color-mix(in srgb,var(--xp-accent) 13%,transparent);border-radius:36px;perspective:800px;overflow:hidden}.xp-room-frame span{position:absolute;left:50%;top:50%;height:1px;width:145%;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--xp-accent) 13%,transparent),transparent);transform-origin:center}.xp-room-frame span:nth-child(1){transform:translate(-50%,-50%) rotate(28deg)}.xp-room-frame span:nth-child(2){transform:translate(-50%,-50%) rotate(-28deg)}.xp-room-frame span:nth-child(3){top:auto;bottom:15%;transform:translateX(-50%)}
.xp-audience{position:absolute!important;z-index:5!important;left:15%;right:15%;bottom:18%;height:90px;display:flex;align-items:end;justify-content:space-between;gap:1%}.xp-audience i{display:block;width:18px;height:18px;border-radius:50% 50% 42% 42%;background:color-mix(in srgb,var(--xp-accent-2) 54%,#fff);opacity:.48;box-shadow:0 15px 0 5px color-mix(in srgb,var(--xp-accent-2) 18%,transparent)}.xp-audience i:nth-child(3n){height:22px;width:22px}.xp-audience i:nth-child(2n){transform:translateY(8px);opacity:.32}
.xp-event-mood[data-phase="1"] .xp-audience i{animation:xpAudienceLift 1.25s ease-in-out infinite alternate}.xp-event-mood[data-phase="2"] .xp-audience i{opacity:.28}@keyframes xpAudienceLift{to{transform:translateY(-9px)}}

/* Memory Mosaic: four details resolve into one held frame. */
.xp-memory-frame{position:absolute!important;z-index:1!important;inset:9% 13%;border:1px solid color-mix(in srgb,var(--xp-accent) 16%,transparent);border-radius:38px;display:grid;place-items:start center;padding-top:1rem;opacity:.15;transform:scale(.96);pointer-events:none}.xp-memory-frame span{font-size:.43rem;letter-spacing:.2em;color:#806683;font-weight:900}.xp-mosaic figure{transition:filter .5s ease,opacity .5s ease,transform .5s ease}.xp-mosaic figure.is-done{filter:saturate(.82) brightness(.94)}.xp-mosaic figure.is-active{z-index:5;box-shadow:0 26px 75px color-mix(in srgb,var(--xp-accent) 22%,transparent)}

/* Spotlight Reset: the visitor mentally walks onto a stage. */
.xp-stage-curtain{position:absolute!important;z-index:1!important;top:0;bottom:0;width:28%;background:linear-gradient(90deg,color-mix(in srgb,var(--xp-accent-2) 18%,transparent),transparent);opacity:.52;transition:transform .8s ease}.xp-stage-curtain.curtain-left{left:0;clip-path:polygon(0 0,100% 0,70% 100%,0 100%)}.xp-stage-curtain.curtain-right{right:0;transform:scaleX(-1);clip-path:polygon(0 0,100% 0,70% 100%,0 100%)}.xp-stage-silhouette{position:absolute!important;z-index:8!important;left:50%;bottom:27%;width:46px;height:92px;transform:translateX(-50%);opacity:.36}.xp-stage-silhouette:before{content:"";position:absolute;left:50%;top:0;width:28px;height:28px;border-radius:50%;transform:translateX(-50%);background:var(--xp-accent-2)}.xp-stage-silhouette:after{content:"";position:absolute;left:50%;top:30px;width:44px;height:62px;border-radius:22px 22px 12px 12px;transform:translateX(-50%);background:linear-gradient(180deg,var(--xp-accent-2),color-mix(in srgb,var(--xp-accent) 62%,#3a1740))}.xp-stage-silhouette i{position:absolute;left:50%;bottom:-9px;width:72px;height:16px;border-radius:50%;transform:translateX(-50%);background:radial-gradient(ellipse,color-mix(in srgb,var(--xp-accent) 26%,transparent),transparent 72%)}
.xp-spotlight-scene[data-phase="2"] .curtain-left{transform:translateX(-12%)}.xp-spotlight-scene[data-phase="2"] .curtain-right{transform:translateX(12%) scaleX(-1)}

/* Guest Journey: a route with three different mental environments. */
.xp-journey-ambient{position:absolute!important;inset:6%;z-index:0!important;overflow:hidden;border-radius:34px}.xp-journey-ambient i{position:absolute;top:10%;bottom:12%;width:34%;border-radius:40px;opacity:.18;filter:blur(1px);background:radial-gradient(circle at center,var(--xp-warm),transparent 72%)}.xp-journey-ambient i:nth-child(1){left:0;background:radial-gradient(circle at 30% 60%,color-mix(in srgb,var(--xp-accent) 18%,#fff),transparent 70%)}.xp-journey-ambient i:nth-child(2){left:33%;background:radial-gradient(circle at 50% 38%,color-mix(in srgb,var(--xp-accent) 26%,#fff),transparent 70%)}.xp-journey-ambient i:nth-child(3){right:0;background:radial-gradient(circle at 70% 60%,color-mix(in srgb,var(--xp-warm) 65%,#fff),transparent 70%)}
.xp-journey-route:before{content:"";position:absolute;inset:-9px 0;border-radius:999px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--xp-accent) 7%,transparent),transparent);filter:blur(5px)}
.xp-journey-map article.is-done{opacity:.6;transform:scale(.95)}.xp-journey-map article:nth-of-type(2).is-done{transform:translateY(-54px) scale(.95)}

/* Tiny Win: progress is pictured as a staircase rather than a score. */
.xp-win-path{position:absolute!important;z-index:1!important;left:16%;right:16%;bottom:18%;height:74px;display:flex;align-items:flex-end;justify-content:center;gap:12%}.xp-win-path i{width:54px;height:10px;border-radius:8px;background:linear-gradient(90deg,color-mix(in srgb,var(--xp-accent) 35%,#fff),var(--xp-accent));opacity:.18;box-shadow:0 10px 25px color-mix(in srgb,var(--xp-accent) 16%,transparent)}.xp-win-path i:nth-child(2){transform:translateY(-22px)}.xp-win-path i:nth-child(3){transform:translateY(-44px)}

/* Kinetic Sequence: words become rooms in a perspective tunnel. */
.xp-custom-orbit{position:absolute!important;z-index:1!important;inset:20%;border:1px dashed color-mix(in srgb,var(--xp-accent) 18%,transparent);border-radius:50%;animation:orbitSpin 16s linear infinite}.xp-custom-orbit i{position:absolute;width:8px;height:8px;border-radius:50%;background:var(--xp-accent);box-shadow:0 0 18px var(--xp-accent)}.xp-custom-orbit i:nth-child(1){left:50%;top:-4px}.xp-custom-orbit i:nth-child(2){right:7%;bottom:18%}.xp-custom-orbit i:nth-child(3){left:8%;bottom:20%}

/* Motion off means the exercise remains fully understandable, just still. */
html[data-motion-experience="off"] .xp-breath-sky i,html[data-motion-experience="off"] .xp-ground-orbit,html[data-motion-experience="off"] .xp-ground-center i,html[data-motion-experience="off"] .xp-focus-distractions span,html[data-motion-experience="off"] .xp-focus-frame:before,html[data-motion-experience="off"] .xp-gratitude-sky i,html[data-motion-experience="off"] .xp-lantern.is-active>i,html[data-motion-experience="off"] .xp-audience i,html[data-motion-experience="off"] .xp-custom-orbit{animation:none!important}

@media(max-width:800px){
  .experience-stage{--xp-guide-space:224px;min-height:690px}
  .xp-visuals{border-radius:32px}.xp-scene{border-radius:31px}
  .xp-next-move{bottom:calc(var(--xp-guide-space) + 10px);padding:.56rem .8rem;font-size:.5rem}
  .xp-mental-picture{bottom:1rem;width:88%;font-size:.61rem}.xp-mental-picture:before{font-size:.38rem}
  .xp-guide-card{min-height:202px}
  .xp-focus-frame{width:min(76vw,390px)}.xp-focus-distractions{inset:3%}.xp-focus-distractions span{font-size:.34rem;padding:.3rem .42rem}
  .xp-room-frame{left:7%;right:7%}.xp-audience{left:9%;right:9%}.xp-audience i{width:14px;height:14px}
  .xp-stage-silhouette{bottom:29%}
  .xp-memory-frame{inset:7% 6%}
}
@media(max-width:540px){
  .experience-stage{--xp-guide-space:234px;min-height:655px}
  .xp-visuals{border-radius:28px}.xp-scene{border-radius:27px}
  .xp-next-move{bottom:calc(var(--xp-guide-space) + 8px)}
  .xp-guide-card{min-height:214px;padding:1rem}
  .xp-focus-distractions span:nth-child(6){display:none}.xp-focus-frame{width:min(80vw,340px)}
  .xp-focus-frame small{font-size:.42rem}
  .xp-ground-orbit.orbit-a{width:88%}.xp-ground-orbit.orbit-b{width:70%}
  .xp-audience{left:6%;right:6%;gap:0}.xp-audience i{width:11px;height:11px;box-shadow:0 11px 0 3px color-mix(in srgb,var(--xp-accent-2) 18%,transparent)}
  .xp-journey-ambient{inset:4% 1%}
  .xp-mental-picture{font-size:.56rem;line-height:1.4}
}


/* ===== V2.9 BRAND / FAMILY / CLIENT PROOF ===== */
.brand-logo-mark{overflow:hidden;background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(251,239,251,.92));box-shadow:inset 0 0 0 1px rgba(255,255,255,.7),0 8px 28px rgba(202,87,205,.24)}
.brand-logo-mark img{width:88%;height:88%;object-fit:contain;filter:drop-shadow(0 3px 7px rgba(76,0,83,.12))}
.record-label{font-size:0;color:transparent;background:#fff url('assets/brand/la-mark.png') center/78% auto no-repeat}
.site-header{background:rgba(38,16,44,.48)}
.site-header.scrolled{background:rgba(43,18,50,.84)}

.clients-proof{overflow:hidden;position:relative;color:var(--ink)}
.clients-proof:before{content:"";position:absolute;width:38rem;height:38rem;border-radius:50%;right:-16rem;top:-18rem;background:radial-gradient(circle,rgba(207,95,210,.15),transparent 70%);pointer-events:none}
.clients-inner{position:relative;z-index:1}
.clients-heading{margin-bottom:clamp(2rem,5vw,4rem)}
.client-logo-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;border:1px solid rgba(45,15,49,.10);border-radius:28px;overflow:hidden;background:rgba(45,15,49,.10);box-shadow:0 28px 80px rgba(48,15,55,.08)}
.client-logo-tile{margin:0;min-height:150px;padding:1.6rem;display:grid;place-items:center;background:rgba(255,255,255,.86);position:relative;overflow:hidden;transition:transform .35s ease,background .35s ease}
.client-logo-tile:after{content:"";position:absolute;inset:auto 18% 0;height:2px;transform:scaleX(0);transform-origin:center;background:linear-gradient(90deg,transparent,var(--pink),transparent);transition:transform .35s ease}
.client-logo-tile img{width:100%;max-width:125px;max-height:58px;object-fit:contain;filter:grayscale(1);opacity:.72;transition:filter .35s ease,opacity .35s ease,transform .35s ease}
.client-logo-tile:hover{background:#fff;transform:translateY(-2px)}
.client-logo-tile:hover:after{transform:scaleX(1)}
.client-logo-tile:hover img{filter:grayscale(0);opacity:1;transform:scale(1.04)}

.family{position:relative;overflow:hidden;color:var(--ink);border-top:1px solid rgba(50,20,55,.07)}
.family:before{content:"";position:absolute;left:-12rem;bottom:-20rem;width:44rem;height:44rem;border-radius:50%;background:radial-gradient(circle,rgba(139,43,154,.12),transparent 68%);pointer-events:none}
.family-inner{position:relative;z-index:1}
.family-heading{margin-bottom:clamp(2.2rem,5vw,4.5rem)}
.family-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(1rem,2vw,1.4rem);align-items:start}
.family-member{grid-column:span 3;min-width:0;align-self:start;border:1px solid rgba(50,20,55,.10);border-radius:30px;overflow:hidden;background:rgba(255,255,255,.82);box-shadow:0 24px 70px rgba(48,15,55,.08);display:grid;grid-template-rows:auto auto;transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s ease}
.family-member-has-bio{grid-column:span 6}
.family-member:hover{transform:translateY(-6px);box-shadow:0 32px 90px rgba(48,15,55,.13)}
.family-member-featured{grid-column:1/-1;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);grid-template-rows:1fr;min-height:440px}
.family-member figure{margin:0;min-height:300px;overflow:hidden;position:relative;background:var(--paper-2)}
.family-member:not(.family-member-featured) figure{min-height:0;aspect-ratio:4/5}
.family-member figure:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(27,4,31,.16));pointer-events:none}
.family-member img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.family-member:hover img{transform:scale(1.035)}
.family-member>div{padding:clamp(1.35rem,2.5vw,2.2rem);display:flex;flex-direction:column;justify-content:flex-start}
.family-member-featured>div{justify-content:center}
.family-member small{font-size:.68rem;letter-spacing:.14em;font-weight:800;color:var(--violet);line-height:1.4}
.family-member h3{font-size:clamp(1.8rem,3vw,3.3rem);letter-spacing:-.055em;line-height:.95;margin:.65rem 0 1rem}
.family-member p{margin:0;color:rgba(34,16,41,.72);line-height:1.68;max-width:58ch}
.family-member:not(.family-member-featured) h3{margin-bottom:.8rem}

@media (max-width:1100px){.client-logo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.family-member,.family-member-has-bio{grid-column:span 6}.family-member-featured{grid-column:1/-1}}
@media (max-width:700px){
  .brand-logo-mark{width:41px;height:41px}
  .client-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr));border-radius:22px}
  .client-logo-tile{min-height:112px;padding:1rem}.client-logo-tile img{max-width:105px;max-height:48px}
  .family-grid{grid-template-columns:1fr}.family-member,.family-member-featured{grid-column:1;display:grid;grid-template-columns:1fr;grid-template-rows:auto auto;min-height:0;border-radius:24px}
  .family-member figure{min-height:340px;aspect-ratio:4/5}.family-member>div{padding:1.35rem}.family-member h3{font-size:2.2rem}
}
.client-logo-tile a{width:100%;height:100%;display:grid;place-items:center}
@media (min-width:1101px){.family-member:not(.family-member-featured){grid-column:span 3}.family-member.family-member-has-bio:not(.family-member-featured){grid-column:span 6}.family-grid .family-member:only-child{grid-column:1/-1;max-width:1100px}}

/* ===== V2.9 CMS BRAND TONE ===== */
:root{
  --theme-deep:#150819;
  --theme-dark:#221029;
  --theme-mid:#32143a;
  --theme-plum:#672570;
  --theme-violet:#8b2b9a;
  --theme-warm:#4b2037;
  --brand-mark-image:url('assets/brand/la-mark.png');
}
.record-label{background:#fff var(--brand-mark-image) center/78% auto no-repeat!important}
.hero{background:radial-gradient(circle at 70% 20%,color-mix(in srgb,var(--pink) 27%,transparent),transparent 33%),linear-gradient(145deg,var(--theme-deep) 0%,var(--theme-mid) 48%,var(--theme-dark) 100%)}
.services-intro{background:linear-gradient(180deg,var(--theme-mid),var(--theme-deep))}
.panel-events{background:linear-gradient(135deg,var(--theme-deep),color-mix(in srgb,var(--theme-plum) 82%,#25002b))}
.panel-entertainment{background:linear-gradient(135deg,var(--theme-deep),color-mix(in srgb,var(--theme-plum) 80%,#6e0c65))}
.panel-sound{background:linear-gradient(135deg,var(--theme-deep),color-mix(in srgb,var(--theme-violet) 52%,var(--theme-dark)))}
.panel-dj{background:linear-gradient(135deg,var(--theme-dark),color-mix(in srgb,var(--theme-plum) 74%,#7b0f69))}
.panel-catering{background:linear-gradient(135deg,var(--theme-dark),color-mix(in srgb,var(--theme-warm) 84%,#7a4050))}
.panel-brand{background:linear-gradient(135deg,var(--theme-deep),color-mix(in srgb,var(--theme-violet) 68%,var(--theme-dark)))}
.panel-marketing{background:linear-gradient(135deg,var(--theme-dark),color-mix(in srgb,var(--theme-plum) 76%,#5e1552))}
.specials{background:linear-gradient(180deg,color-mix(in srgb,var(--theme-mid) 92%,var(--theme-plum)),var(--theme-dark))}
.signature-brand{background:radial-gradient(circle at 70% 30%,color-mix(in srgb,var(--pink) 17%,transparent),transparent 30%),linear-gradient(160deg,var(--theme-dark) 0%,var(--theme-mid) 100%)}
.ticker-section{background:var(--theme-dark)}
.about{background:radial-gradient(circle at 25% 40%,color-mix(in srgb,var(--pink) 18%,transparent),transparent 30%),linear-gradient(145deg,var(--theme-deep),var(--theme-dark))}
.contact{background:linear-gradient(150deg,var(--theme-deep),var(--theme-mid))}
.photo-work-card{background:color-mix(in srgb,var(--theme-deep) 84%,#09050a)}
.photo-work-card .work-meta{background:linear-gradient(180deg,color-mix(in srgb,var(--theme-dark) 72%,#110712),color-mix(in srgb,var(--theme-deep) 82%,#080509))}
.story-track figure{background:var(--theme-dark)}
@media(max-width:800px){.hero:after{background:linear-gradient(180deg,color-mix(in srgb,var(--theme-deep) 62%,transparent),color-mix(in srgb,var(--theme-deep) 90%,transparent))}.service-panel:after{background:linear-gradient(180deg,color-mix(in srgb,var(--theme-deep) 22%,transparent) 0%,color-mix(in srgb,var(--theme-deep) 88%,transparent) 58%,var(--theme-deep) 100%)}}

/* V2.9.2 CMS logo-wall resilience */
.client-logo-fallback{display:grid;place-items:center;min-height:52px;padding:.65rem 1rem;text-align:center;font-weight:700;letter-spacing:.04em;color:var(--ink,#26132b)}

/* ================================================================
   v3.0.0 — Client Polish / Editorial Content Pass
   Scoped layout refinement only: no new scroll engines or persistent loops.
   ================================================================ */

/* Selected work: let an odd final story become a deliberate editorial feature. */
.work-photo{position:relative;overflow:hidden;min-height:300px;background:var(--theme-dark,#24102b)}
.work-photo>img:first-child{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s cubic-bezier(.2,.8,.2,1),filter .5s ease}
.work-card:hover .work-photo>img:first-child{transform:scale(1.025)}
.work-project-mark{position:absolute;left:18px;bottom:18px;z-index:3;width:min(42%,190px);padding:.35rem;border-radius:18px;background:rgba(255,255,255,.9);border:1px solid rgba(255,255,255,.8);box-shadow:0 12px 36px rgba(24,0,28,.2);overflow:hidden}
.work-project-mark img{display:block;width:100%;height:auto;border-radius:13px}
.work-card[data-project-id="karaoke-4-kids"] .work-meta{background:linear-gradient(145deg,#fff 0%,#fffaf1 55%,#fbf4ff 100%)}
@media(min-width:1101px){
  .work-grid>.work-card:last-child:nth-child(odd){grid-column:1/-1;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);min-height:480px}
  .work-grid>.work-card:last-child:nth-child(odd) .work-photo{min-height:480px}
  .work-grid>.work-card:last-child:nth-child(odd) .work-meta{padding:clamp(2rem,4vw,4rem)}
}

/* Proof photography reads like an editorial strip rather than a generic carousel. */
.story-track figure{isolation:isolate}
.story-track figure:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(14,0,18,.46));pointer-events:none;z-index:1}
.story-track figcaption{z-index:2;max-width:calc(100% - 36px);white-space:normal;line-height:1.25}

/* Project/sub-brand mark inside stories. */
.project-modal-brand{display:block;width:min(230px,65%);max-height:150px;object-fit:contain;object-position:left center;margin:.4rem 0 1.25rem;border-radius:18px;box-shadow:0 16px 44px rgba(0,0,0,.12)}
.project-modal-brand[hidden]{display:none!important}

/* Contact is now an intentional quick-action destination. */
.contact-inner{position:relative;z-index:2}
.contact-note{max-width:760px;margin:-2rem 0 3.1rem;color:rgba(255,255,255,.68);font-size:clamp(1rem,1.4vw,1.18rem);line-height:1.7}
.contact-actions{gap:0}
.contact-person{grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:1rem;min-height:104px;padding-top:1.15rem;padding-bottom:1.15rem;transition:background .25s ease,border-color .25s ease}
.contact-person-copy{display:flex;min-width:0;flex-direction:column;gap:.32rem}
.contact-person-copy small{grid-column:auto;color:rgba(255,255,255,.48)}
.contact-person-copy>span{display:block;min-width:0;overflow-wrap:anywhere;color:rgba(255,255,255,.96);font-size:clamp(1.05rem,1.8vw,1.72rem);letter-spacing:-.035em}
.contact-icon{width:44px;height:44px;border-radius:15px;display:grid;place-items:center;background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.12);transition:transform .25s ease,background .25s ease,border-color .25s ease}
.contact-icon svg{width:20px;height:20px;fill:currentColor;color:rgba(255,255,255,.9)}
.contact-whatsapp:hover .contact-icon{background:rgba(92,212,143,.18);border-color:rgba(92,212,143,.4);transform:translateY(-2px)}
.contact-email:hover .contact-icon,.contact-instagram:hover .contact-icon{background:rgba(224,134,222,.14);border-color:rgba(224,134,222,.38);transform:translateY(-2px)}
.contact-person>b{font-size:1.15rem;color:rgba(255,255,255,.6)}

/* Keep compact project marks and contact actions readable on touch/mobile. */
@media(max-width:800px){
  .work-project-mark{width:min(46%,170px);left:14px;bottom:14px;border-radius:15px}
  .contact-note{margin:-1.4rem 0 2.2rem}
  .contact-person{grid-template-columns:44px minmax(0,1fr) auto;min-height:88px;padding:1rem 0}
  .contact-icon{width:40px;height:40px;border-radius:13px}
  .contact-person-copy>span{font-size:1.05rem}
}

@media(max-width:540px){
  .work-project-mark{width:min(52%,160px)}
  .contact-note{font-size:.98rem;line-height:1.62}
  .contact-person{grid-template-columns:42px minmax(0,1fr) auto;gap:.8rem}
}

@media(prefers-reduced-motion:reduce){
  .work-photo>img:first-child,.contact-icon{transition:none!important}
}
