/* Pulse Works / motion direction: record sleeve, studio light, sound in motion. */
.hero{position:relative;isolation:isolate}.hero-atmosphere{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:-1}.ambient-light{position:absolute;width:560px;height:560px;border-radius:50%;background:radial-gradient(ellipse,rgba(191,133,42,.18),rgba(138,92,25,.065) 44%,transparent 67%);left:-280px;top:-60px;transform:translate3d(0,0,0)}.ambient-light.second{left:auto;right:-300px;top:150px;background:radial-gradient(ellipse,rgba(224,183,94,.13),transparent 66%)}.signal-lines{position:absolute;width:720px;height:460px;right:22%;top:21%;opacity:.11;color:var(--gold);transform:rotate(-15deg)}.signal-lines ellipse{fill:none;stroke:currentColor;stroke-width:1}.hero-copy{position:relative;z-index:2}.headline-line{display:block;overflow:hidden;padding-bottom:.11em;margin-bottom:-.11em}.headline-line>span{display:inline-block;transform-origin:left bottom}.hero h1{letter-spacing:-.035em}.hero h1 em{color:#e5bf73}.hero .eyebrow{display:flex;align-items:center;gap:14px}.signal-mark{display:inline-flex;align-items:center;gap:3px;height:18px}.signal-mark i{width:2px;height:6px;background:var(--gold);transform-origin:center}.signal-mark i:nth-child(2),.signal-mark i:nth-child(4){height:12px}.signal-mark i:nth-child(3){height:18px}.hero-photo{border:1px solid #8e743946;box-shadow:0 20px 70px #0006;isolation:isolate}.hero-photo:before{content:'';position:absolute;inset:12px;border:1px solid #f4f1e726;pointer-events:none;z-index:2}.hero-photo img{transform:scale(1.035);filter:brightness(.85) saturate(.82)}.hero-photo figcaption{bottom:29px;left:28px;right:28px}.studio-strip{position:relative;background:#1b1911}.studio-strip:before{content:'';position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,#ddbc73,transparent)}.hero-rate strong{color:#ead6a7}.hero-rate{border-left:2px solid #dab56b;padding-left:19px}.lead{background:radial-gradient(ellipse at 8% 50%,#30291870,transparent 60%),#12120f}.lead h2 em{display:inline-block}.price-card{position:relative;isolation:isolate;overflow:hidden;transition:border-color .25s,background-color .25s,box-shadow .25s}.price-card:after,.service-row:after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(280px circle at var(--spot-x,50%) var(--spot-y,50%),#dab66b1f,transparent 70%);opacity:0;transition:opacity .3s}.price-card.featured{background:linear-gradient(135deg,#302819,#191810);box-shadow:inset 0 3px #dbb86a}.price-card.featured:before{content:'';position:absolute;inset:0;pointer-events:none;border:1px solid #bd9c58a8}.price-card .price{letter-spacing:-.055em}.service-row{position:relative;isolation:isolate;transition:background .25s}.service-arrow{transition:transform .25s}.button{position:relative;isolation:isolate;overflow:hidden;transition:background .2s,box-shadow .2s,border-color .2s}.button:after{content:'';position:absolute;top:-30%;left:-80%;width:45%;height:160%;background:linear-gradient(110deg,transparent,#fff5,transparent);transform:skewX(-18deg);pointer-events:none;z-index:-1}.button span{transition:transform .25s}.button:active{transform:translateY(1px)}.textlink{position:relative;transition:color .2s,border-color .2s}.textlink:hover{border-color:var(--gold)}.section-heading h2,.studio-copy h2{position:relative}.studio-images img,.session-photo img{transition:filter .45s}.session-photo{overflow:hidden}.session-photo figure{overflow:hidden}.track{position:relative;transition:background .3s,border-color .3s;padding-inline:12px;margin-inline:-12px}.track.is-playing{background:linear-gradient(90deg,#d6ae5220,transparent);border-color:#957943}.track-number{display:flex;gap:8px;align-items:center}.play-meter{display:inline-flex;align-items:center;gap:2px;height:22px;width:18px;opacity:0;transition:opacity .3s}.play-meter i{width:2px;height:12px;background:#dcb86a;transform:scaleY(.3);transform-origin:center}.track.is-playing .play-meter{opacity:1}.track.is-playing .service-category{color:#f0d89c}.track{grid-template-columns:60px 1fr minmax(270px,390px)}.motion-toggle{display:inline-flex;align-items:center;margin-top:20px;border:1px solid #756746;background:#171610ed;color:#e2d5b9;border-radius:5px;padding:10px 13px;font-size:12px;min-height:44px;cursor:pointer}.motion-toggle[hidden]{display:none}.motion-toggle:hover{border-color:var(--gold);color:var(--ink)}.floating-booking{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:calc(16px + env(safe-area-inset-bottom));z-index:25;width:auto;max-width:calc(100vw - 32px);min-height:52px;margin:0;padding:16px 22px;gap:24px;white-space:nowrap;box-shadow:0 6px 28px #0008}.floating-booking:focus-visible{outline-color:var(--ink)}footer{padding-bottom:calc(100px + env(safe-area-inset-bottom))}
@keyframes studio-light{from{transform:translate3d(-4%,0,0) scale(.92)}to{transform:translate3d(28%,15%,0) scale(1.08)}}
@keyframes photo-drift{from{transform:scale(1.035) translate3d(0,0,0)}to{transform:scale(1.105) translate3d(-.8%,.6%,0)}}
@keyframes pulse-level{0%,100%{transform:scaleY(.35)}40%{transform:scaleY(1)}72%{transform:scaleY(.55)}}
@keyframes button-light{to{left:140%}}
.motion-on .hero.motion-visible .ambient-light{animation:studio-light 10s ease-in-out infinite alternate}.motion-on .hero.motion-visible .ambient-light.second{animation-delay:-6s;animation-duration:14s}.motion-on .hero.motion-visible .hero-photo img{animation:photo-drift 12s ease-in-out infinite alternate}.motion-on .hero.motion-visible .signal-mark i{animation:pulse-level 1.8s ease-in-out infinite}.motion-on .signal-mark i:nth-child(2){animation-delay:-.5s}.motion-on .signal-mark i:nth-child(3){animation-delay:-1.1s}.motion-on .signal-mark i:nth-child(4){animation-delay:-.8s}.motion-on .signal-mark i:nth-child(5){animation-delay:-.3s}.motion-on .is-playing.motion-visible .play-meter i{animation:pulse-level .7s ease-in-out infinite alternate}.motion-on .play-meter i:nth-child(2){animation-delay:-.2s}.motion-on .play-meter i:nth-child(3){animation-delay:-.45s}.motion-on .play-meter i:nth-child(4){animation-delay:-.1s}.page-hidden *, .motion-off *{animation-play-state:paused!important}.motion-off .play-meter i{transform:scaleY(.6)}
@media(hover:hover) and (pointer:fine){.motion-on .price-card:hover:after,.motion-on .service-row:hover:after{opacity:1}.price-card:hover{background-color:#272319;box-shadow:inset 0 2px var(--gold)}.service-row:hover .service-arrow{transform:translate(4px,-3px)}.button:hover{box-shadow:0 7px 30px #b58b352a}.button:hover span{transform:translate(3px,-2px)}.motion-on .button:hover:after{animation:button-light .65s ease-out}.studio-images img:hover{filter:brightness(1.1)}}
@media(max-width:850px){.track{grid-template-columns:38px 1fr}.track audio{grid-column:2/-1}.track-number{flex-direction:column;align-items:start;gap:5px}.signal-lines{right:-20%;width:620px}.hero .eyebrow{font-size:10px;gap:9px}}
@media(max-width:700px){.hero .eyebrow{font-size:10px;letter-spacing:.11em;gap:10px}.hero-atmosphere{inset:-10px 0}.ambient-light{width:460px;height:460px;left:-240px}.hero-photo:before{inset:9px}.hero-photo figcaption{left:22px;right:22px;bottom:23px}.hero-rate{padding-left:16px}.track{margin-inline:0;padding-inline:0}.play-meter{height:15px}.floating-booking{right:max(12px,env(safe-area-inset-right));bottom:calc(12px + env(safe-area-inset-bottom));padding:15px 18px;font-size:14px;gap:22px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.hero-photo img{transform:none}.headline-line>span{transform:none}}

/* Blend the supplied logo into the header without altering the source artwork. */
.brand img{mix-blend-mode:screen;border-radius:0;display:block}.brand{transition:opacity .25s}.brand:hover{opacity:.82}.button{border-radius:5px}.hero-photo{border-radius:8px}.hero-photo:before{border-radius:3px}.studio-images img,.session-photo figure,.service-photo img,.local-photo img{border-radius:6px}.price-grid{border-radius:7px;overflow:hidden}.service-options,.lead-link{border-radius:6px}.fields input,.fields select,.fields textarea{border-radius:4px}.preview-note,.error,.success{border-radius:0 4px 4px 0}.js #main-nav{border-radius:6px}.optional-fields summary{transition:color .25s}.optional-fields summary:hover{color:var(--gold)}
