/* Art direction: phthalo, aubergine and black ruby. */
:root{--sage:#d7d1bd;--aubergine:#251326;--ruby:#35121f;--ivory:#f3f0e7}
.header{background:rgba(7,24,21,.96);color:var(--ivory);border-bottom-color:#d1d6c318}
.header.scrolled{border-color:#d1d6c328;box-shadow:0 8px 30px #00000020}
.header .brand-monogram{color:#eee9dc}.header .brand-monogram span{color:#a9ad96}
.header nav a:after{background:#dad2bc}.header .button{background:#eeeade;color:#102c24;border-color:#eeeade}
.header .button:hover{background:#dcd7c7}
.opening{position:relative;overflow:hidden;color:var(--ivory);background:radial-gradient(ellipse at 90% 5%,#24121e99,transparent 50%),linear-gradient(120deg,#081e1a,#0c2420 60%,#151b1b)}
.hero{position:relative;padding-top:50px;padding-bottom:65px;gap:62px}
.hero .eyebrow{color:#c8cfbd}.hero .brand-dot{background:#c8cfbd}
.hero h1{color:#f3f0e7;letter-spacing:-.055em}.hero h1 em{color:#d6d7c4}
.hero-intro{color:#bdc7bf}
.hero-actions .button{background:#ece8dc;color:#102a22;border-color:#ece8dc}
.hero-actions .button:hover{background:#dcd6c4;box-shadow:0 10px 35px #0005}
.hero-actions .text-link{color:#e5e6d8;border-bottom-color:#8c9f9177}.hero-actions .text-link:hover{color:white;border-bottom-color:#d4d4bf}
.offer-inline{color:#bdc7bf}.offer-inline strong{color:#e8eade}.offer-inline .rule{background:#94a89855}
.opening :focus-visible,.header :focus-visible{outline-color:#e9ddbd}
.hero-art{height:590px;border-radius:3px;padding:33px 30px 0;background:radial-gradient(ellipse at 10% 65%,#12453670,transparent 60%),radial-gradient(ellipse at 90% 30%,#431d303d,transparent 60%),linear-gradient(135deg,#0c211d,#121b1b 50%,#241320);border:1px solid #b8c3ac29;box-shadow:inset 0 0 80px #07120d50,0 20px 70px #0002}
.hero-art .art-top{padding-inline:0;align-items:center}.hero-art .wordmark{font-size:32px;color:#dddccc;position:relative;z-index:3}
.hero-art .art-index{color:#adb5a7;letter-spacing:.13em;font-size:7px}
.sculpture-scene{position:absolute;inset:56px 0 127px;isolation:isolate;perspective:1000px;pointer-events:none}
.dialogue-sculpture{width:100%;height:100%;object-fit:contain;position:relative;z-index:2;filter:drop-shadow(0 12px 25px #0003);animation:sculpture-drift 12s ease-in-out infinite;transform-origin:50% 75%}
.light-plane{position:absolute;width:32%;height:105%;top:-5%;filter:blur(32px);opacity:.65;transform:rotate(-25deg);animation:light-drift 18s ease-in-out infinite alternate}
.plane-ruby{right:4%;background:linear-gradient(180deg,transparent,#63243a40 40%,#30102d50,transparent);animation-delay:-7s}
.plane-violet{left:9%;background:linear-gradient(180deg,transparent,#43334c36 35%,#40694e26,transparent)}
.sculpture-floor{position:absolute;height:100px;bottom:-12px;left:10%;right:10%;background:radial-gradient(ellipse,#16372c50,transparent 70%);transform:rotateX(65deg)}
.scene-line{position:absolute;width:1px;height:70%;background:linear-gradient(transparent,#abb99e38,transparent);top:10%;z-index:0;transform:rotate(25deg)}
.scene-line-one{left:16%}.scene-line-two{right:15%;background:linear-gradient(transparent,#a17e9833,transparent)}
.hero-art .art-caption{left:32px;right:28px;bottom:116px;color:#e8e7da;font-size:26px;z-index:3}.hero-art .art-caption em{color:#c9cdbb;font-size:30px}
.hero-art .motion-control{border-color:#bec5ae50}.hero-art .motion-control:hover{background:#ddd5bc12}
.hero-art .art-person{background:#0c1f1ac9;border-top-color:#bdc1a933;color:#e8e9da;padding:23px 28px;z-index:4}
.hero-art .art-person div span{color:#b4c0b3}.hero-art .person-arrow{color:#c4ccba}
.intro-strip{border-color:#acbba02e;padding-top:28px;padding-bottom:32px}.intro-strip p{color:#aab8ad}.intro-strip strong{color:#e2e6d8}.intro-strip>div{color:#bdc8b8}
.service{background:radial-gradient(ellipse at 95% 10%,#32182990,transparent 55%),linear-gradient(125deg,#081f19,#101b1b 60%,#25121e)}
.service em{color:#d7d1bd}.service-copy>p:not(.eyebrow){color:#c7cfc0}.service-tags span{color:#ccd2c3;border-color:#b3bea33d}.connection-line{stroke:#aeb49d55}
.price-card{border-radius:3px;box-shadow:0 30px 85px #0005}
.studio-art{background:radial-gradient(ellipse at 90% 10%,#39182c99,transparent 70%),linear-gradient(140deg,#102e26,#101e1b);border-color:#87968555}
.studio-mark{color:#ebe8da}.studio-mark>span{color:#a5ad91}
.studio-art-bottom{color:#d1d4c1;background:#071b1655;border-top-color:#b5c1a533}.studio-art-bottom strong{color:#dedac9}
.studio-lines{border-radius:0;right:-130px;top:-115px;transform:rotate(29deg);border-color:#b3b6a027;box-shadow:0 0 0 24px #b3b6a000,0 0 0 25px #b3b6a01c,0 0 0 50px #b3b6a000,0 0 0 51px #b3b6a012,0 0 0 80px #b3b6a000,0 0 0 81px #b3b6a012}
.final-cta{background:radial-gradient(ellipse at 8% 100%,#123b3280,transparent 70%),linear-gradient(110deg,#0c2520,#1e1421 65%,#35131f)}
.final-cta em,.final-cta h2>span{color:#dcd3c1}.final-cta:after{border-radius:0;transform:rotate(-25deg);border-color:#d3bec115;box-shadow:0 0 0 70px #b68d9e05,0 0 0 140px #b68d9e04}
.final-row{border-top-color:#beb39d40}.final-row p{color:#d0cbbd}.button-light{background:#eeeade;color:#17362c}.button-light:hover{background:#dad5c6}
.mobile-booking{background:#091f1bf5;color:#efeddf;border-color:#b2b9a033}.mobile-booking small{color:#b8c2b4}.mobile-booking .button{background:#eeeade;color:#102b22;border-color:#eeeade}
@keyframes sculpture-drift{0%,100%{transform:translateY(0) rotate(-1.2deg)}50%{transform:translateY(-9px) rotate(1.2deg)}}
@keyframes light-drift{from{transform:translateX(-8px) rotate(-25deg);opacity:.45}to{transform:translateX(12px) rotate(-18deg);opacity:.85}}
@media(min-width:1600px){.hero-art{height:650px}.sculpture-scene{inset:65px 0 142px}}
@media(max-width:1100px){.hero{gap:35px}.hero-art{height:555px;padding:28px 24px 0}.hero-art .art-caption{left:27px;right:24px}.hero-art .art-person{padding:21px}}
@media(max-width:820px){.hero{gap:25px}.hero-art{height:535px;padding:28px 20px 0}.sculpture-scene{inset:68px -8px 150px}.hero-art .art-caption{left:22px;bottom:116px;font-size:23px}.hero-art .art-caption em{font-size:26px}.hero-art .art-person{padding:20px 16px}}
@media(max-width:600px){.hero{padding-top:33px;padding-bottom:34px;gap:34px}.hero-art{height:440px;border-radius:3px;padding:25px 24px 0}.hero-art .wordmark{font-size:28px}.hero-art .art-index{font-size:6px}.sculpture-scene{inset:50px 0 104px}.hero-art .art-caption{bottom:93px;left:24px;right:22px;font-size:21px}.hero-art .art-caption em{font-size:24px}.hero-art .art-person{padding:17px 22px}.hero-art .art-person div span{font-size:10px}.intro-strip{padding-bottom:26px}.price-card{border-radius:3px}}
@media(max-width:360px){.sculpture-scene{inset:53px -9px 126px}.hero-art .art-person{padding:17px}.hero-art .art-index{font-size:5px;letter-spacing:.08em}}
@media(prefers-reduced-motion:reduce){.dialogue-sculpture,.light-plane{animation:none}}
/* Keep text fully legible throughout scroll entrances. */
@keyframes reveal{from{opacity:1;transform:translateY(18px)}to{opacity:1;transform:none}}
