.sound-content{display:none}.night-view .brand-content{display:none}.night-view .sound-content{display:block}
.sound-content .sound-hero h1{max-width:640px;font-size:clamp(52px,5.4vw,78px)}
.sound-content .hero .sub{max-width:495px}
.sound-section{padding:95px 0}.sound-content h2{max-width:800px}.sound-content .hl{color:#ffd5ba}
.sound-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:70px;align-items:center}
.sound-body{font-size:17px;line-height:1.8;margin-top:25px;max-width:560px;text-wrap:pretty}.sound-intro{font-size:17px;line-height:1.8;max-width:650px;margin-top:26px;text-wrap:pretty}
.sound-photo,.sound-wide-photo{margin:0}.sound-photo img{width:100%;height:520px;object-fit:cover;border-radius:0}
.sound-experience-layout{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center;margin-top:45px}.sound-experience-layout .sound-body:first-child{margin-top:0}
.sound-wide-photo img{width:100%;height:570px;object-fit:cover;object-position:center 30%;border-radius:0}
#sound-sessions,#sound-about,#sound-contact{color:#302032}#sound-sessions .hl,#sound-about .hl,#sound-contact .hl{color:#93483d}
.sound-offerings{margin-top:50px}.sound-offerings article{display:grid;grid-template-columns:.8fr 1.2fr;gap:65px;border-top:1px solid #49324f50;padding:32px 0 38px}.sound-content h3{font:300 34px/1.2 Argent,serif;margin:0 0 14px;text-wrap:balance}.sound-offerings p{font-size:17px;line-height:1.8;text-wrap:pretty}.sound-offerings .sound-duration{font-size:17px;max-width:280px}.sound-offerings a,.sound-text-link{font-size:18px;margin-top:24px;display:inline-block;text-decoration:underline;text-underline-offset:6px}.sound-note{font-size:18px;max-width:680px;margin-top:10px}
.sound-about{grid-template-columns:.8fr 1fr}.sound-about img{height:530px;object-position:center 35%}.sound-contact{padding-bottom:90px}.sound-contact h2{font-size:66px}.sound-content .email{border-color:#49324f50}
.sound-content section{scroll-margin-top:95px}.sound-quote blockquote{text-wrap:balance}.sound-quote cite{font:italic 18px/1.5 Argent,serif;text-transform:none;letter-spacing:.03em}
@media(max-width:899px){.sound-content .sound-hero h1{font-size:clamp(43px,8vw,60px)}.sound-split{gap:35px}.sound-photo img{height:400px}.sound-experience-layout{gap:35px}.sound-wide-photo img{height:490px}.sound-offerings article{gap:30px}}
@media(max-width:699px){.sound-section{padding:65px 0}.sound-split,.sound-about,.sound-experience-layout{grid-template-columns:1fr;gap:30px}.sound-offerings{margin-top:35px}.sound-offerings article{grid-template-columns:1fr;gap:20px;padding:28px 0}.sound-photo img{height:420px}.sound-wide-photo img{height:450px}.sound-body,.sound-intro,.sound-offerings p{font-size:16px}.sound-content .sound-hero{padding-bottom:36px}.sound-content #sound-practice{padding-top:32px}.sound-contact{padding-bottom:60px}}

@media(max-width:800px){.sound-contact h2{font-size:46px}}
#sound-audio-toggle{display:none;position:fixed;right:max(24px,env(safe-area-inset-right));bottom:max(22px,env(safe-area-inset-bottom));z-index:30;align-items:center;gap:9px;min-height:44px;padding:10px 16px;border:1px solid #ffffff45;border-radius:28px;background:rgba(10,6,18,.496);color:#fff8f4;backdrop-filter:blur(14px) saturate(1.4);-webkit-backdrop-filter:blur(14px) saturate(1.4);font:14px/1.4 Arial,sans-serif;cursor:pointer}
.night-view #sound-audio-toggle{display:inline-flex}#sound-audio-toggle:hover{background:rgba(10,6,18,.55)}#sound-audio-toggle:focus-visible{outline:2px solid #e0bcff;outline-offset:4px}#sound-audio-toggle svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}#sound-audio-toggle .audio-waves{display:none}#sound-audio-toggle.is-playing .audio-waves{display:initial}#sound-audio-toggle.is-playing .audio-mute{display:none}
@media(max-width:699px){#sound-audio-toggle{right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom))}}

.night-view .sound-hero .btn{background:linear-gradient(145deg,rgba(255,235,219,.3),rgba(255,213,186,.12));color:#ffd5ba;border:1px solid rgba(255,213,186,.5);backdrop-filter:blur(14px) saturate(1.4);-webkit-backdrop-filter:blur(14px) saturate(1.4);box-shadow:inset 0 1px 0 rgba(255,246,236,.3);transition:background .2s ease,border-color .2s ease}
.night-view .sound-hero .btn:hover{background:linear-gradient(145deg,rgba(255,235,219,.4),rgba(255,213,186,.22));border-color:rgba(255,213,186,.75)}
.night-view .sound-hero .btn:focus-visible{outline:2px solid #ffd5ba;outline-offset:4px}

.sound-particle-instrument{margin:0;min-width:0;align-self:center}.sound-particle-instrument canvas{display:block;width:100%;aspect-ratio:1;height:auto;min-height:0}

/* Keep the bowl slightly beyond the viewport edge at every width. */
.sound-particle-instrument{--bowl-size:1200px;position:relative;height:600px;pointer-events:none}
.sound-particle-instrument canvas{position:absolute;width:var(--bowl-size);max-width:none;height:var(--bowl-size);right:auto;left:calc(-1 * max(var(--page-inset),(100vw - 1140px)/2) - var(--bowl-size)*.29);top:calc(50% - 16px);transform:translateY(-50%) scaleX(-1) rotate(10deg);transform-origin:50% 62%}
@media(min-width:1500px){.sound-particle-instrument{--bowl-size:1450px}}
@media(max-width:1199px){.sound-particle-instrument{--bowl-size:760px}}
@media(max-width:899px){.sound-particle-instrument{--bowl-size:730px;height:480px}}
@media(max-width:699px){.sound-particle-instrument{--bowl-size:650px;height:440px}}
#sound-spectrum h2{color:#fff8f4;text-align:center;margin-inline:auto;max-width:960px}
.spectrum-intro{color:#fff8f4;max-width:750px;margin:30px auto 0;font-size:17px;line-height:1.8;text-wrap:pretty}
.spectrum-visual{position:relative;width:min(100%,650px);aspect-ratio:600/540;margin:30px auto 0}
#spectrum-particles{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.spectrum-choices button{position:absolute;transform:translate(-50%,-50%);background:transparent;border:0;color:#fff8f4;font:16px/1.45 Arial,sans-serif;padding:14px 8px;cursor:pointer;min-height:44px;border-radius:5px}
.spectrum-choices button:nth-child(1){left:32%;top:30%}.spectrum-choices button:nth-child(2){left:68%;top:30%}.spectrum-choices button:nth-child(3){left:32%;top:70%}.spectrum-choices button:nth-child(4){left:68%;top:70%}
.spectrum-choices button[aria-pressed=true]{color:#ffdfc6;text-decoration:underline;text-underline-offset:6px}.spectrum-choices button:focus-visible{outline:2px solid #ffdfc6;outline-offset:3px}
.spectrum-description{max-width:650px;margin:0 auto;min-height:185px}.sound-content .spectrum-description h3{font-size:28px;margin-bottom:14px}.spectrum-description p,.spectrum-references p{font-size:16px;line-height:1.8}
.spectrum-references{max-width:750px;margin:30px auto 0;border-top:1px solid #ffffff55;border-bottom:1px solid #ffffff55;padding:20px 0}.spectrum-references summary{cursor:pointer;font-size:16px;padding:8px 0}.spectrum-references summary:focus-visible{outline:2px solid #ffdfc6;outline-offset:4px}.spectrum-references p{margin:16px 0}.sound-content .spectrum-references h3{font-size:24px;margin-top:28px}.spectrum-references a{text-decoration:underline;text-underline-offset:4px}
@media(max-width:699px){.spectrum-intro{font-size:16px}.spectrum-choices button{font-size:13px;padding:12px 3px}.spectrum-description{min-height:245px}}
#sound-spectrum{color:#302032}#sound-spectrum .hl{color:#ffd5ba}.spectrum-choices button{color:#302032}.spectrum-choices button[aria-pressed=true]{color:#71382f}.spectrum-choices button:focus-visible,.spectrum-references summary:focus-visible{outline-color:#71382f}.spectrum-references{border-color:#49324f55}
.spectrum-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:55px;align-items:center;margin-top:40px}.spectrum-layout .spectrum-intro{margin:0}.spectrum-layout .spectrum-visual{margin:0;width:100%}
.spectrum-labels{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;transition:opacity .25s ease}.spectrum-labels text{font:18px Arial,sans-serif;fill:#302032;letter-spacing:.02em}.is-expanded .spectrum-labels{opacity:0}
.spectrum-choices button{width:23%;height:18%;padding:0;font-size:26px;text-decoration:none!important}.spectrum-choices button:nth-child(1){left:35%;top:30%}.spectrum-choices button:nth-child(2){left:65%;top:30%}.spectrum-choices button:nth-child(3){left:35%;top:70%}.spectrum-choices button:nth-child(4){left:65%;top:70%}
.spectrum-choices button[hidden],.spectrum-description[hidden]{display:none}
.spectrum-visual .spectrum-description{position:absolute;left:16%;top:50%;transform:translateY(-50%);width:68%;min-height:0;margin:0;text-align:center}.sound-content .spectrum-description h3{font-size:25px;margin-bottom:14px}.spectrum-description p{font-size:15px;line-height:1.65;text-wrap:pretty}.spectrum-close{display:block;margin:12px auto 0;width:44px;height:44px;border:0;background:transparent;color:#302032;font-size:28px;cursor:pointer}.spectrum-close:focus-visible{outline:2px solid #71382f;border-radius:50%}
@media(max-width:1099px){.spectrum-layout{grid-template-columns:1fr;gap:25px}.spectrum-layout .spectrum-visual{max-width:650px;margin:auto}.spectrum-layout .spectrum-intro{grid-row:1;max-width:750px;margin:auto}}
@media(max-width:599px){.spectrum-description p{font-size:12px;line-height:1.5}.sound-content .spectrum-description h3{font-size:21px;margin-bottom:8px}.spectrum-close{margin-top:3px}.spectrum-labels text{font-size:20px}}
@media(prefers-reduced-motion:reduce){.spectrum-labels{transition:none}}
/* Bring the opening sections together without shrinking the instrument. */
.sound-content #sound-practice{padding-top:28px;padding-bottom:36px}
.sound-content #sound-spectrum{padding-top:40px}
@media(max-width:899px){.sound-content .sound-hero{padding-bottom:24px}}
@media(max-width:699px){.sound-content #sound-practice{padding-top:16px;padding-bottom:24px}.sound-content #sound-spectrum{padding-top:28px}}

/* Normalize the supplied icons by their visible circular bounds. */
.spectrum-choices button,.spectrum-close{display:grid;place-items:center}
.spectrum-control-icon{position:relative;display:block;width:26px;height:26px;overflow:hidden;pointer-events:none}
.spectrum-control-icon img{position:absolute;max-width:none;height:auto}
.spectrum-control-plus img{width:36.449px;left:-4.860px;top:-5.255px}
.spectrum-control-minus img{width:34.667px;left:-4.333px;top:-4.333px}
/* Let content determine the hero height, eliminating unused space below it. */
.sound-content .sound-hero{height:auto;min-height:0;max-height:none;padding-bottom:32px}
.sound-content #sound-practice .sound-split{align-items:start}
@media(min-width:900px){.sound-content .sound-hero{padding-top:100px}.sound-content #sound-practice .sound-split>div{padding-top:24px}}

/* Soft light rather than stark white controls; rhythm comes from the dust clock. */
.spectrum-control-icon{opacity:calc(.52 + var(--spectrum-beat,0)*.18);filter:blur(.35px);transform:scale(calc(1 + var(--spectrum-beat,0)*.065));will-change:transform,opacity}
.spectrum-choices button:hover .spectrum-control-icon,.spectrum-close:hover .spectrum-control-icon,.spectrum-choices button:focus-visible .spectrum-control-icon,.spectrum-close:focus-visible .spectrum-control-icon{opacity:.85}
@media(prefers-reduced-motion:reduce){.spectrum-control-icon{transform:none;opacity:.65;will-change:auto}}

/* Mirror the practice composition, including its off-screen arm. */
@media(min-width:700px){
  #sound-practice .sound-split{grid-template-columns:minmax(0,.85fr) minmax(0,1fr)}
  #sound-practice .sound-particle-instrument{grid-column:1;grid-row:1}
  #sound-practice .sound-split>div{grid-column:2;grid-row:1}
}

/* Reduce the desktop gap after references by one-third (190px to 126px). */
@media(min-width:1100px){
  .sound-content #sound-spectrum{padding-bottom:63px}
  .sound-content #sound-experience{padding-top:63px}
}

/* Extend the dust canvas into the preceding section so grains can arrive from above. */
#spectrum-particles{display:none;position:fixed;inset:0;width:100vw;height:100vh;z-index:1;pointer-events:none}
.night-view #spectrum-particles{display:block}

.spectrum-intro p + p{margin-top:24px}

.spectrum-references ul{list-style:disc;padding-left:1.3em;margin:16px 0;font-size:16px;line-height:1.8}.spectrum-references li+li{margin-top:12px}

/* Keep the real session photograph crisp at its center, dissolving into the atmosphere. */
.sound-atmosphere-photo{position:relative;isolation:isolate;aspect-ratio:1/1.12}
.sound-photo-blend{position:absolute;inset:0;overflow:hidden;-webkit-mask-image:radial-gradient(ellipse closest-side at 54% 48%,#000 60%,rgba(0,0,0,.92) 72%,transparent 100%);mask-image:radial-gradient(ellipse closest-side at 54% 48%,#000 60%,rgba(0,0,0,.92) 72%,transparent 100%)}
.sound-atmosphere-photo .sound-photo-blend img{position:absolute;width:135%;max-width:none;height:135%;left:-35%;top:-15%;object-fit:cover;object-position:75% 50%;filter:saturate(.82) contrast(.96)}
.sound-photo-blend:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(140deg,rgba(177,154,231,.22),transparent 48%,rgba(255,194,151,.2));mix-blend-mode:soft-light}
.sound-photo-dust{position:absolute;inset:-8%;width:116%;height:116%;pointer-events:none}
@media(max-width:699px){.sound-atmosphere-photo{width:100%;max-width:500px;margin-inline:auto;aspect-ratio:1/1.12}}

/* The strategy cards, softened for the sound side. */
.sound-session-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch;padding:16px 0 24px}
.sound-offerings .session-card{display:flex;flex-direction:column;gap:0;min-width:0;min-height:0;margin:0;padding:32px 28px;border:1px solid #fff8f470;border-radius:18px;color:#302032;background:radial-gradient(135% 95% at 16% -4%,#ece2ff88,transparent 56%),radial-gradient(120% 120% at 94% 112%,#ffd5ba40,transparent 52%),linear-gradient(158deg,#cab9de,#b6a2cd);box-shadow:inset 0 1px 0 #ffffff55,0 20px 40px -22px #49324f55,0 0 36px -12px #d3beee55}
.sound-offerings .session-card:nth-child(1){transform:rotate(-2deg) translateY(4px)}
.sound-offerings .session-card:nth-child(2){transform:rotate(1deg) translateY(-6px)}
.sound-offerings .session-card:nth-child(3){transform:rotate(-1.5deg) translateY(4px)}
.sound-content .session-card h3{color:#302032;font-family:Argent,Georgia,serif;font-size:32px;line-height:1.12;min-height:2.24em;margin:0 0 14px;text-wrap:balance}
.sound-offerings .session-card p{font-size:16px;line-height:1.7;margin:0 0 18px;color:#302032;text-wrap:pretty}
.sound-offerings .session-card .session-meta{font-size:14px;font-weight:600;margin-bottom:24px}
.sound-offerings .session-card .session-price{margin:auto 0 0;padding-top:18px;font-weight:700;font-size:17px}
.sound-offerings .session-card:is(:hover,:focus-visible,.is-lit){transform:rotate(0) translateY(-10px);border-color:#fff8f4;filter:brightness(1.04);box-shadow:inset 0 1px 0 #ffffff88,0 26px 48px -24px #49324f66,0 0 55px -12px #e9d8ff99}
.session-card:focus-visible{outline:2px solid #694c85;outline-offset:5px}
@media(max-width:960px){.sound-session-cards{grid-template-columns:1fr;gap:22px;padding-top:0}.sound-offerings .session-card:nth-child(n){transform:none;margin:0;padding:28px}.sound-content .session-card h3{min-height:0}.sound-offerings .session-card .session-price{padding-top:4px}.sound-offerings .session-card:is(:hover,:focus-visible){transform:translateY(-4px)}}
@media(prefers-reduced-motion:reduce){.sound-offerings .session-card:nth-child(n){transform:none;transition:none}}

/* Broad, uneven nebula fade; the center keeps the face and hands clear. */
.sound-photo-blend{-webkit-mask-image:url('photo-nebula-mask.svg');mask-image:url('photo-nebula-mask.svg');-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}
.sound-photo-blend:before{content:"";position:absolute;inset:0;background:url('../../assets/sound/kristen-sound-session-retouched-v2.png') 75% 50%/135% 135% no-repeat;filter:blur(14px);opacity:.6}
.sound-atmosphere-photo .sound-photo-blend img{-webkit-mask-image:radial-gradient(ellipse at 65% 40%,#000 24%,#000b 45%,transparent 72%);mask-image:radial-gradient(ellipse at 65% 40%,#000 24%,#000b 45%,transparent 72%)}
/* Explicit easing avoids the inherited theme transition replacing transform easing. */
.sound-offerings .session-card{transition:transform 1.15s cubic-bezier(.22,.61,.36,1),box-shadow 1.2s ease,border-color 1s ease,filter 1.2s ease;will-change:transform}
.sound-offerings .session-card:is(:hover,:focus-visible,.is-lit){transform:rotate(0deg) translateY(-5px)}
@media(prefers-reduced-motion:reduce){.sound-offerings .session-card{transition:none;will-change:auto}.sound-offerings .session-card:is(:hover,:focus-visible,.is-lit){transform:none}}

/* Let the photographic atmosphere extend beyond its column into a longer fade. */
.sound-photo-blend{inset:-12% -26% -14% -18%;-webkit-mask-image:url('photo-nebula-mask.svg?v=2');mask-image:url('photo-nebula-mask.svg?v=2')}
.sound-atmosphere-photo .sound-photo-blend img{width:118%;height:118%;left:-18%;top:-6%;-webkit-mask-image:radial-gradient(ellipse at 65% 40%,#000 28%,#000b 50%,transparent 82%);mask-image:radial-gradient(ellipse at 65% 40%,#000 28%,#000b 50%,transparent 82%)}
.sound-photo-blend:before{background-size:118% 118%;filter:blur(23px);opacity:.52}
.sound-experience-layout>div{position:relative;z-index:2}
@media(max-width:699px){.sound-photo-blend{inset:-9% -12% -10% -12%}}

/* Shift the session subject toward the center without centering her. */
.sound-atmosphere-photo .sound-photo-blend img{left:-26%}
.sound-photo-blend:before{inset:auto;width:118%;height:118%;left:-26%;top:-6%;background-size:cover;background-position:75% 50%}
.sound-about{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.sound-about>div{position:relative;z-index:2}
.sound-about-photo{aspect-ratio:1/1.15}
.sound-about-photo .sound-photo-blend{inset:-10% -14% -12% -24%}
.sound-about-photo .sound-photo-blend img{width:100%;height:100%;left:0;top:0;object-position:center 40%;-webkit-mask-image:radial-gradient(ellipse at 47% 40%,#000 30%,#000b 53%,transparent 84%);mask-image:radial-gradient(ellipse at 47% 40%,#000 30%,#000b 53%,transparent 84%)}
.sound-about-photo .sound-photo-blend:before{width:100%;height:100%;left:0;top:0;background-image:url('../../assets/sound/kristen-in-nature.jpg');background-position:center 40%;background-size:cover}
@media(max-width:699px){.sound-about{grid-template-columns:1fr;gap:45px}.sound-about-photo .sound-photo-blend{inset:-9% -12% -10% -12%}}

/* Compact icon-only audio control on phones; keep its accessible action label. */
@media(max-width:800px){
  #sound-audio-toggle{width:44px;height:44px;min-height:44px;padding:0;justify-content:center;gap:0;border-radius:50%}
  #sound-audio-toggle span{display:none}
}
