/* MAN'S RUIN — first refinement. The photographs, typography and interactions
   share one quiet, nocturnal identity. Loaded after the original stylesheet. */
:root{--ease:cubic-bezier(.19,1,.22,1);--control-ease:cubic-bezier(.22,.8,.25,1.25)}
body{font-size:15px;line-height:2;letter-spacing:.045em}
html{scroll-padding-top:110px;scroll-padding-bottom:100px}
a,button,summary{scroll-margin-top:110px;scroll-margin-bottom:105px}
p{overflow-wrap:anywhere}
.site-header{background:linear-gradient(180deg,#101815ba,transparent);border-bottom-color:#eee0be1f}
.desktop-nav{font-size:12px;gap:26px}.sound-toggle{font-size:12px;min-height:44px;padding:8px 4px}.header-actions{gap:18px}
.button{font-size:15px;min-height:64px;border-radius:2px 12px 2px 2px;background-size:140% 100%;transition:transform .26s var(--control-ease),box-shadow .28s,background-position .5s}
.button-gold{background-image:linear-gradient(115deg,#e9dbb9,#c8a771 51%,#efdbb0);box-shadow:0 4px 0 #6b5737,0 14px 38px #090f0c55,inset 0 1px 0 #fff8}
.button small{font-size:12px;line-height:1.65}.button-small{font-size:12px;min-height:46px;padding:10px 16px}.button-outline{background:linear-gradient(125deg,#d0c49d12,#14271e70);border-color:#9d8e6c}
.button:hover{background-position:90% 50%}.button:focus-visible{outline-offset:7px}
.action-glyph{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;flex:0 0 28px;color:currentColor;vertical-align:middle;transition:transform .45s var(--ease),filter .45s}
.action-glyph svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round;overflow:visible}
.button .action-glyph{color:#3d3d2c}.button-outline .action-glyph,.text-link .action-glyph,.scene .action-glyph{color:var(--gold)}
.text-link .action-glyph{font-size:inherit}.text-link:hover .action-glyph{transform:translateX(5px) rotate(-8deg)}
a:hover>.action-glyph,.button:hover .action-glyph{filter:drop-shadow(0 0 6px #d8bc8755)}
.text-link{font-size:15px;min-height:54px}.hero-check-link{font-size:14px;min-height:46px}.hero-check-link span{font-size:24px}
/* A real, edge-to-edge photograph; the left light veil belongs to the copy. */
.hero{height:100svh;min-height:730px;max-height:1150px;background:#142019}
.hero-image{inset:0;width:100%;height:100%;left:0}
.hero-image img{object-position:50% 58%;filter:brightness(.81) saturate(.84);animation:mr-hero-photo 2.2s var(--ease) both;transform-origin:75% 58%}
.hero-shade{background:linear-gradient(90deg,#091611e8 0%,#0d1c15b8 28%,#0d191675 47%,#1017100d 76%),linear-gradient(0deg,#101816bd 0%,transparent 27%,transparent 77%,#050f0b75 100%)}
.hero-light{background:radial-gradient(ellipse at 28% 38%,#6f826e19,transparent 48%);animation:mr-light-arrives 2.4s var(--ease) both}
.hero-content{top:50%;left:7.7%;width:84%;transform:translateY(-43%)}
.hero h1{font-size:clamp(47px,5.65vw,88px);letter-spacing:.065em;line-height:1.48;text-shadow:0 4px 35px #07130fc9}
.hero h1 em{animation:mr-title-arrives 1.25s .12s var(--ease) both}.hero h1>span:nth-child(2) em{animation-delay:.3s}
.hero .eyebrow{font-size:12px;letter-spacing:.16em;margin-bottom:23px}.hero .eyebrow span{font-size:12px}
.hero-description{font-size:16px;line-height:2;letter-spacing:.09em;color:#f0eee2;margin-top:23px;text-shadow:0 2px 17px #000b}
.hero-enter{animation:hero-fade 1.15s .5s var(--ease) both}
.hero-cta{gap:28px;margin-top:27px}.hero-cta .button{min-width:310px;min-height:78px}
.hero-proof{display:flex;flex-wrap:wrap;gap:8px 19px;margin-top:22px;color:#e4ddc9;font-size:12px;line-height:1.7}
.hero-proof span{display:flex;align-items:center;gap:8px}.hero-proof span:before{content:'';width:3px;height:3px;background:var(--gold);box-shadow:0 0 8px #ead5a7;border-radius:50%}
.hero-bottom{bottom:25px;font-size:10px}.hero-bottom-label{font-size:12px}.scroll-link{min-height:44px;font-size:10px}.hero-side{font-size:10px;right:25px}
.intro-bar{min-height:83px;background:radial-gradient(ellipse at 40% 0,#3e514331,transparent 70%),linear-gradient(115deg,#1d2924,#131e19)}.intro-bar span{font-size:13px;line-height:1.7;padding:0 38px}
/* The walk into the clinic gives the page a visual rhythm before the questions. */
.section{padding-top:112px;padding-bottom:112px}.section-wide{padding-top:108px;padding-bottom:108px}
.eyebrow{font-size:12px;letter-spacing:.14em}.section-heading{margin-bottom:45px;align-items:end}.section-heading>p{font-size:15px;max-width:390px;line-height:1.95}
.about-section{gap:9%;padding-bottom:112px}.about-copy>p:not(.eyebrow):not(.lead){font-size:15px;line-height:2.15;color:#bdc4b7}.about-copy .lead{font-size:21px;line-height:1.8}.about-signatures{font-size:12px;gap:8px 14px}.image-note{font-size:15px}
.about-main img{filter:brightness(.87) saturate(.85)}.about-detail img{filter:brightness(.87)}.about-main figcaption{font-size:10px}.about-detail{box-shadow:0 17px 45px #0004}
.visit-section{position:relative;overflow:hidden;background:radial-gradient(ellipse at 75% 0,#4b5e3735,transparent 55%),linear-gradient(160deg,#18251d,#0d1713);border-top:1px solid #d8bc8722;border-bottom:1px solid #d8bc871a}
.visit-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:50px}.visit-heading>div{max-width:680px}.visit-heading>p{font-size:15px;line-height:2;max-width:350px;color:#b8c1ad}.visit-heading h2{font-size:clamp(32px,3.6vw,49px);line-height:1.6}
.visit-scenes{display:grid;grid-template-columns:1.1fr .84fr 1.1fr;align-items:start;gap:28px;position:relative}
.visit-scenes:before{content:'';position:absolute;inset:34px 0 auto;height:1px;background:linear-gradient(90deg,transparent,#c5b17d66 20%,#c5b17d66 80%,transparent)}
.visit-scene{position:relative;min-width:0;padding-top:65px}.visit-scene[data-stage="2"]{padding-top:118px}.visit-scene[data-stage="3"]{padding-top:90px}
.visit-scene>img{aspect-ratio:.91;width:100%;height:auto;object-fit:cover;filter:brightness(.82) saturate(.8);border:1px solid #c5b17d22}
.visit-scene[data-stage="2"]>img{aspect-ratio:.86}.visit-number{position:absolute;top:12px;left:0;display:flex;align-items:center;gap:12px;font-family:Georgia,serif;font-size:26px;color:#d6c092;line-height:1.4}
.visit-number:after{content:'';height:7px;width:7px;border:1px solid #d6c092;border-radius:50%;background:#1a271e;box-shadow:0 0 0 7px #16231b}
.visit-caption{position:relative;padding:24px 0 0}.visit-caption h3{font-family:var(--serif);font-size:25px;line-height:1.6;letter-spacing:.04em;color:#eee5d3}.visit-caption p{font-size:15px;line-height:1.95;color:#b8c3ae;margin-top:12px}
.concern-scenes{grid-template-columns:1.05fr 1.15fr 1fr;gap:20px;align-items:start}.scene{height:440px;box-shadow:0 8px 18px #14281a1c;transition:transform .35s var(--control-ease),box-shadow .35s,filter .35s}.scene-two{height:490px;margin-top:35px}.scene-three{margin-top:80px}.scene-content{inset:28px 24px}.scene h3{font-size:29px}.scene p{font-size:14px;line-height:1.85;margin-top:15px}.scene-no{font-size:11px}.scene-more{font-size:13px;padding-top:18px;gap:12px}.scene:after{background:linear-gradient(0deg,#0b1714f5 0%,#0b1714a3 33%,transparent 90%)}
/* Controls have a physical release, including text, photographs and disclosure rows. */
a:not(.button),button:not(.button),summary{transition:transform .26s var(--control-ease),filter .3s,box-shadow .3s,color .3s}
a:not(.button):active,button:not(.button):active,summary:active,a.is-pressed:not(.button),button.is-pressed:not(.button),summary.is-pressed{transform:translateY(2px) scale(.986);filter:brightness(1.07)}
.scene:active,.scene.is-pressed,.treatment-photo:active,.treatment-photo.is-pressed{transform:translateY(5px) scale(.98);box-shadow:inset 0 8px 25px #07140d99,0 1px 0 #060b08;filter:brightness(.91)}
.button:active,.button.is-pressed{transform:translateY(4px) scale(.982);box-shadow:0 0 0 #6b5737,inset 0 3px 11px #42331944}
.reservation-glint{position:absolute;inset:-60% -20%;pointer-events:none;background:linear-gradient(110deg,transparent 36%,#fff9 49%,transparent 62%);transform:translateX(-110%) rotate(6deg);animation:mr-book-glint .75s var(--ease) both;z-index:3}
.menu-toggle{min-width:44px;min-height:44px;align-items:center}.sound-toggle:active,.menu-toggle:active{transform:scale(.92)}
/* Five steps with a persistent moon and usable tap targets. No text overlays it. */
.check-section{grid-template-columns:.92fr 1.08fr;gap:9%;align-items:start;padding-top:108px;padding-bottom:108px;background:radial-gradient(ellipse at 24% 37%,#61765024,transparent 48%),linear-gradient(118deg,#17271e,#0f1814 72%)}
.check-text h2{font-size:clamp(34px,3.3vw,45px);max-width:none}.check-text>p:not(.eyebrow){font-size:15px;line-height:2;color:#bbc7b3}
.check-moon,#check-moon{position:relative;top:auto;right:auto;margin:24px auto 18px;width:250px;height:250px;opacity:1}.moon-core{height:155px;width:155px;transition:box-shadow 1.2s var(--ease),transform 1.2s var(--ease)}
#check-moon.is-complete .moon-core{box-shadow:0 0 55px #dfc58d4a,0 0 110px #d8b67527,inset -5px -5px 20px #70644355;transform:scale(1.06)}
#check-moon.is-complete .orbit-one{box-shadow:0 0 28px #e4c88c26;border-color:#d8bc8777}#check-moon.is-complete .orbit-two{border-color:#d8bc8755}
.check-meter>span+span{font-size:12px;letter-spacing:.07em}.check-text .check-note{font-size:12px!important;color:#a9b59f!important;line-height:1.85}.progress-track{height:3px;margin-top:11px}
.check-interaction{padding-top:7px;min-width:0}.check-game{position:relative;padding:32px;background:radial-gradient(ellipse at 85% 0,#96a16c14,transparent 55%),linear-gradient(130deg,#30412c50,#17271f4d);border:1px solid #d4c39736;border-radius:2px 25px 2px 2px;box-shadow:0 20px 60px #0002;transition:opacity .22s,transform .3s var(--ease)}
.check-game.is-changing{opacity:.35;transform:translateY(8px)}.check-step-header{display:flex;justify-content:space-between;align-items:center;gap:15px;color:#cdbb91;font-size:12px;margin-bottom:31px;line-height:1.7}
.check-step-dots{display:flex;gap:7px}.check-step-dots button{display:grid;place-items:center;padding:0;width:33px;height:33px;min-width:33px;border:1px solid #b9bc9e44;background:linear-gradient(140deg,#24382b,#19291f);border-radius:50%;font-family:Georgia,serif;font-size:13px;color:#b9c3ac}
.check-step-dots button.is-answered{color:#18251b;background:linear-gradient(125deg,#ddc99f,#a88e5c);border-color:#d4b97d}.check-step-dots button.is-current{border-color:#e2d4ae;box-shadow:0 0 0 4px #d9bd7b12,0 0 18px #d9bd7b17;color:#f2e0ba}
.check-step-dots button.is-current.is-answered{color:#18251b}.check-step-dots button:disabled{cursor:default;opacity:.65}
.check-question{font-family:var(--serif);font-size:clamp(24px,2.3vw,31px);line-height:1.85;letter-spacing:.035em;margin:0;color:#f1e8d4;min-height:114px}
.check-question-caption{font-size:14px;line-height:1.9;color:#adbaa4;margin-top:16px;min-height:54px}
.check-answer-row{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:28px}.check-answer{display:flex;align-items:center;justify-content:center;gap:10px;min-height:66px;padding:14px 12px;font-size:15px;line-height:1.6;border:1px solid #d5bd87;border-radius:2px 10px 2px 2px;background:linear-gradient(120deg,#e7d5ad,#bfa270 75%,#dbc491);color:#253021;box-shadow:0 4px 0 #75603e,inset 0 1px 0 #fff7}
.check-answer.secondary{background:linear-gradient(135deg,#3d50343d,#1c302280);border-color:#83916b8c;color:#d3dcc6;box-shadow:0 4px 0 #101b13}
.check-answer-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;border:1px solid currentColor;font-size:14px;line-height:1;flex-shrink:0}
.check-answer:hover{transform:translateY(-2px);box-shadow:0 6px 0 #75603e,0 12px 25px #0002}.check-answer.secondary:hover{box-shadow:0 6px 0 #101b13,0 12px 25px #0002}
.check-answer.is-pressed,.check-answer:active{transform:translateY(3px) scale(.98);box-shadow:0 0 0 #75603e,inset 0 3px 10px #0002}
.check-controls{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:21px}.check-back,.reset-button{background:transparent;font-size:12px;line-height:1.7;min-height:44px;padding:10px 1px;color:#bac5ac;border-bottom:1px solid #9cad7b55}.check-back:disabled{opacity:.35;cursor:default}.check-controls .reset-button{margin:0 0 0 auto}
.check-summary{margin-top:0}.check-summary.is-active{display:block;animation:mr-result-arrives .8s var(--ease) both}.check-summary h3{font-family:var(--serif);font-size:29px;line-height:1.75;color:#efdfbd}.check-summary p{font-size:15px;line-height:2;margin:18px 0;color:#bbc8b1}.check-summary .button{font-size:15px;min-height:68px;padding:17px 20px}
.check-complete-badge{display:inline-flex;align-items:center;gap:9px;padding:5px 12px;margin-bottom:18px;border:1px solid #d6bf8b66;border-radius:20px;font-size:12px;line-height:1.7;background:linear-gradient(120deg,#9b8b4f28,#d5b77a09);color:#ead7ac}.check-complete-badge:before{content:'';width:7px;height:7px;border-radius:50%;background:#d4bc84;box-shadow:0 0 12px #e7c480}
.check-result-links{display:grid;gap:10px;margin:22px 0}.check-result-card{display:block;padding:17px 18px;background:linear-gradient(125deg,#34483176,#1b2b2066);border:1px solid #a7b38a38;border-left:2px solid #c8ae78;border-radius:2px;min-height:65px;font-size:15px;line-height:1.7}.check-result-card strong{display:block;font-weight:500;color:#ead9b1}.check-result-card span,.check-result-card small{display:block;color:#b7c3ab;font-size:13px;line-height:1.9;margin-top:4px}.check-result-card:hover{border-color:#d3ba7f88;background:linear-gradient(125deg,#3f533783,#1b2b2066)}
.check-review-list{margin:20px 0 24px;border-top:1px solid #b6bf9e33}.check-review-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:11px 0;border-bottom:1px solid #b6bf9e26;font-size:13px;line-height:1.7;color:#bdc8b2}.check-review-row b,.check-review-row strong{font-size:12px;white-space:nowrap;color:#e0cca1;font-weight:400}.check-review-row button{font-size:12px;min-height:38px;padding:7px 0 7px 9px;background:none;color:#cdb88b;text-decoration:underline;text-underline-offset:4px}
.check-fallback{font-size:15px;line-height:2;color:#b9c5af;padding:24px;border:1px solid #b8aa7e44;background:linear-gradient(120deg,#273a2b,#15241b)}.check-fallback p{margin-bottom:20px}.check-fallback .button{font-size:15px}
.check-label{font-size:15px}.check-message{font-size:14px;line-height:1.9}.check-option{min-height:105px}.check-summary .check-note{font-size:12px}
.celebration-orbit{position:absolute;left:50%;top:50%;width:min(82vw,620px);height:min(82vw,620px);border:1px solid #e7ca8d8c;border-radius:50%;box-shadow:0 0 60px #dcc08033;animation:mr-orbit-bloom 2.1s var(--ease) both;pointer-events:none}.celebration-orbit:nth-of-type(2){animation-delay:.13s;width:min(65vw,470px);height:min(65vw,470px);border-style:dashed}.celebration-orbit:nth-of-type(3){animation-delay:.27s;width:min(40vw,300px);height:min(40vw,300px)}
/* Service and care information remains readable without becoming a document. */
.treatment-grid{gap:26px;align-items:stretch}.treatment-card{display:flex;flex-direction:column;background:linear-gradient(150deg,#30432c3d,#17251e20);box-shadow:0 12px 40px #0001}.treatment-photo{flex-shrink:0;transition:transform .3s var(--control-ease),box-shadow .3s,filter .3s}.treatment-photo img{filter:brightness(.89) saturate(.8)}.treatment-type{font-size:11px;text-shadow:0 1px 7px #000}.treatment-body{padding:25px 18px 17px;display:flex;flex-direction:column;flex:1}.treatment-en{font-size:13px}.treatment-body h3{font-size:24px;min-height:80px}.treatment-body>p{font-size:15px;line-height:1.95;min-height:94px;color:#b7c2ae}.treatment-body .price{margin-top:auto;padding-top:25px}.price small{font-size:13px}.price strong{font-size:33px}.treatment-body p.price-note{font-size:12px;line-height:1.85;min-height:44px}.treatment-body .text-link{font-size:14px;margin-top:14px}.treatment-note{font-size:12px;line-height:1.95}.menu-bottom .text-link{font-size:13px;gap:20px}.menu-bottom{gap:30px}
.approach-section{min-height:900px}.approach-inner{margin-left:44%;width:56%;padding:92px 6.5%}.approach-inner h2{font-size:clamp(38px,3.8vw,54px);line-height:1.6}.approach-inner>p:not(.eyebrow){font-size:15px;color:#c3ccba}.approach-points p{font-size:16px}.approach-points small{font-size:14px;line-height:1.9;color:#bac5ac}.approach-points>div>span{font-size:14px}
.care-outcomes{margin-top:27px;padding-top:8px;border-top:1px solid #c9b98a4d;display:grid;grid-template-columns:1fr 1fr;gap:22px}.care-outcome{padding-top:16px}.care-outcome h3{font-family:var(--serif);font-size:19px;line-height:1.8;color:#e7d6af}.care-outcome p{font-size:14px;line-height:1.95;color:#b0bea3;margin-top:8px}.care-outcome>span{font-size:12px;color:#b9a77a}
.director-copy>p:not(.eyebrow){font-size:15px;line-height:2.15}.director-name>span{font-size:13px}.director-name small{font-size:12px}.photo-caption{font-size:10px;text-shadow:0 1px 8px #000}.director-photo{height:640px}.director-photo img{filter:brightness(.9) saturate(.78)}.director-facts{display:flex;flex-wrap:wrap;gap:8px 16px;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:27px 0 17px;color:#cfc3a3;font-size:13px;line-height:1.85}.director-facts span:before{content:'';display:inline-block;width:4px;height:4px;background:#ba9e64;margin:0 9px 3px 0;border-radius:50%}
.voice blockquote{font-size:21px;line-height:1.95}.voice figcaption{font-size:12px}.voice-note{font-size:12px;line-height:1.9}.gallery-title p{font-size:14px}.gallery-strip figcaption{font-size:12px;letter-spacing:.1em}.gallery-strip figure:nth-child(2){margin-top:40px}.gallery-strip img{filter:brightness(.88) saturate(.84)}
.faq-section{gap:8%;padding-top:95px;padding-bottom:105px}.faq-section>div>p:not(.eyebrow){font-size:15px}.faq-list summary{font-size:15px;padding:26px 4px;gap:18px}.faq-list summary>span{font-size:13px}.faq-list details>p{font-size:15px;line-height:2;color:#bdc8b2;padding:0 22px 27px 36px}.faq-list details[open]{background:linear-gradient(100deg,#40503515,transparent)}
.access-data{margin:30px 0}.access-data>div{grid-template-columns:80px 1fr;gap:16px;padding:19px 0}.access-data dt{font-size:13px}.access-data dd{font-size:15px;line-height:1.85}.access-data dd small{font-size:12px;color:#adbba0}.access-note{font-size:14px;line-height:2}.access-links .button{font-size:14px;min-height:58px}.access-copy h2{font-size:37px}.access-photo{height:710px}.access-photo>img{filter:brightness(.82) saturate(.8)}
.closing-content>p:not(.eyebrow){font-size:16px;color:#d6ddcc}.closing-content .button{font-size:16px}.closing-phone{font-size:14px;min-height:44px;padding:8px 0}.site-footer nav{font-size:13px;gap:20px 32px}.site-footer nav a{padding:5px 0}.footer-bottom,.footer-bottom small,.footer-bottom>a{font-size:12px;line-height:1.7;color:#9faa92}.footer-bottom>a{min-height:44px;display:flex;align-items:center}.brand small{font-size:11px}
.detail-article>p{font-size:16px;line-height:2.2;color:#c0ccb6}.detail-article h2{font-size:30px}.detail-step p{font-size:15px;line-height:2.1}.detail-course small{font-size:13px}.detail-card>p{font-size:14px;line-height:1.95}.detail-card .button{font-size:14px;line-height:1.7;min-height:62px}.detail-note{font-size:12px!important;color:#b0bea3!important}.related-title{font-size:15px!important}.related-links .text-link{font-size:14px}.detail-back{font-size:14px;padding:12px 0}.detail-card .eyebrow{font-size:12px}.detail-hero .detail-subtitle{font-size:19px}
/* Reveal families: lamp light, a photograph uncovering, lettering, and cards.
   These only hide content while the enhancement script is running. */
.js-motion [data-reveal]{opacity:0;transform:translateY(25px);transition:opacity .85s var(--ease),transform 1.05s var(--ease),clip-path 1.1s var(--ease),filter 1s var(--ease)}
.js-motion [data-reveal="image"],.js-motion .about-images[data-reveal],.js-motion .director-photo[data-reveal],.js-motion .access-photo[data-reveal]{opacity:1;clip-path:inset(0 0 100% 0);transform:translateY(24px);filter:brightness(.55)}
.js-motion [data-reveal="image"].is-visible,.js-motion .about-images[data-reveal].is-visible,.js-motion .director-photo[data-reveal].is-visible,.js-motion .access-photo[data-reveal].is-visible{clip-path:inset(-15% -12% -15% -12%);transform:translateY(0);filter:brightness(1)}
.js-motion [data-reveal="title"]{transform:translateY(29px);clip-path:inset(0 0 55% 0)}.js-motion [data-reveal="title"].is-visible{clip-path:inset(0 0 -5% 0);transform:translateY(0);opacity:1}
.js-motion [data-reveal="light"]{filter:brightness(.35);transform:translateY(0)}.js-motion [data-reveal="light"].is-visible{filter:brightness(1);transform:none;opacity:1}
.js-motion [data-reveal="card"]{transform:translateY(40px) scale(.965);transform-origin:center bottom}.js-motion [data-reveal="card"].is-visible{transform:translateY(0) scale(1);opacity:1}
.js-motion [data-reveal="soft"]{transform:translateY(18px);transition-duration:.85s}.js-motion [data-reveal].is-visible{opacity:1;transform:translateY(0)}
.visit-scenes>[data-reveal]:nth-child(2){transition-delay:.15s}.visit-scenes>[data-reveal]:nth-child(3){transition-delay:.3s}
@keyframes mr-hero-photo{from{transform:scale(1.08);filter:brightness(.62) saturate(.65)}to{transform:scale(1);filter:brightness(.81) saturate(.84)}}
@keyframes mr-title-arrives{from{opacity:0;transform:translateY(108%) rotate(1.5deg);filter:blur(3px)}to{opacity:1;transform:translateY(0) rotate(0);filter:blur(0)}}
@keyframes mr-light-arrives{from{opacity:0;transform:translateX(-8%)}to{opacity:1;transform:translateX(0)}}
@keyframes mr-book-glint{to{transform:translateX(110%) rotate(6deg)}}
@keyframes mr-result-arrives{from{opacity:0;transform:translateY(22px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes mr-orbit-bloom{0%{opacity:0;transform:translate(-50%,-50%) scale(.12) rotate(-30deg)}18%{opacity:.8}100%{opacity:0;transform:translate(-50%,-50%) scale(1.6) rotate(35deg)}}
@media(min-width:1600px){.hero-image{inset:0;left:0;width:100%}.hero-content{left:max(8%,calc((100vw - 1340px)/2));width:84%}.hero h1{font-size:90px}}
@media(max-width:1150px){.desktop-nav{gap:17px;font-size:11px}.header-book{font-size:12px}.hero-content{left:6%}.hero h1{font-size:clamp(51px,6.2vw,72px)}.hero-cta{gap:20px}.hero-cta .button{min-width:300px}.hero-check-link{font-size:13px}.hero-bottom-label{font-size:11px}.scene h3{font-size:25px}.scene-content{inset:23px 20px}.scene p{font-size:14px}.scene-more{font-size:12px}.scene-three{margin-top:65px}.treatment-body{padding-left:13px;padding-right:13px}.treatment-body h3{font-size:21px}.treatment-body>p{font-size:14px;min-height:110px}.treatment-grid{gap:18px}.treatment-body p.price-note{min-height:44px}.price strong{font-size:28px}.price small{font-size:12px}.check-game{padding:27px}.check-section{gap:6%}.check-step-header{display:block}.check-step-dots{margin-top:13px}.approach-inner{margin-left:39%;width:61%}.director-photo{height:610px}.access-section{gap:7%}.access-copy h2{font-size:33px}.access-data>div{grid-template-columns:65px 1fr;gap:12px}.access-data dd{font-size:14px}.visit-scenes{gap:22px}.visit-caption h3{font-size:23px}}
@media(max-width:960px){.site-header{height:83px}.hero{min-height:760px}.hero-image{inset:0;left:0;width:100%}.hero h1{font-size:clamp(48px,7.5vw,68px)}.hero-content{left:6%;width:88%}.hero-shade{background:linear-gradient(90deg,#0a1712e6,#10201591 50%,#1020151a 100%),linear-gradient(0deg,#0e1916bd,transparent 40%,#06110c33)}.hero-bottom{font-size:10px}.hero-side{font-size:9px}.intro-bar span{font-size:12px;padding:0 24px}.section{padding-top:90px;padding-bottom:90px}.section-wide{padding-top:88px;padding-bottom:88px}.about-copy h2{font-size:34px}.about-copy .lead{font-size:19px}.about-copy>p:not(.eyebrow):not(.lead){font-size:15px}.about-main{height:550px}.about-detail{height:185px}.about-section{gap:7%}.section-heading{gap:28px}.section-heading>p{font-size:14px;max-width:310px}.scene h3{font-size:23px}.scene-content{inset:21px 18px}.scene p{font-size:13px}.scene-more{font-size:12px;gap:5px}.scene{height:450px}.scene-two{height:490px}.scene-three{margin-top:55px}.concern-scenes{gap:13px}.check-section{grid-template-columns:.88fr 1.12fr;padding-left:6%;padding-right:6%;gap:5%}.check-game{padding:24px 20px}.check-text h2{font-size:33px}.check-question{font-size:25px}.check-answer-row{grid-template-columns:1fr;gap:12px}.check-answer{min-height:57px}.check-question-caption{min-height:0}.check-moon,#check-moon{width:210px;height:210px}.moon-core{width:135px;height:135px}.treatment-grid{grid-template-columns:1fr;gap:26px}.treatment-card{display:grid;grid-template-columns:.8fr 1fr}.treatment-photo{aspect-ratio:auto;min-height:380px;height:100%}.treatment-body{padding:25px}.treatment-body h3{font-size:25px;min-height:0}.treatment-body>p{font-size:15px;min-height:0;margin-bottom:22px}.treatment-body .price{margin-top:0;padding-top:20px}.treatment-body p.price-note{font-size:12px;min-height:0;margin-bottom:0}.treatment-body .text-link{margin-top:7px}.price strong{font-size:33px}.price>span{font-size:28px}.treatment-type{font-size:10px}.approach-inner{margin-left:33%;width:67%;padding:85px 6%}.approach-section:after{background:linear-gradient(90deg,#0917113d,#0e1a14df 50%,#0a1512f5)}.approach-inner h2{font-size:44px}.director-section{gap:7%}.director-copy h2{font-size:33px}.director-copy>p:not(.eyebrow){font-size:15px}.director-photo{height:650px}.voice-grid{gap:24px}.voice blockquote{font-size:19px}.faq-section{grid-template-columns:.8fr 1.2fr;gap:6%}.faq-section h2{font-size:29px}.faq-list summary{gap:12px;font-size:15px}.faq-list details>p{padding-left:28px}.access-copy h2{font-size:29px}.access-data>div{display:block}.access-data dt{margin-bottom:5px;font-size:12px}.access-data dd{font-size:14px}.access-photo{height:740px}.visit-heading{gap:28px}.visit-heading>p{max-width:270px;font-size:14px}.visit-heading h2{font-size:34px}.visit-scenes{gap:18px}.visit-caption h3{font-size:23px}.visit-caption p{font-size:14px}.visit-scene[data-stage="2"]{padding-top:105px}.visit-scene[data-stage="3"]{padding-top:80px}.detail-content{grid-template-columns:1fr .65fr;gap:5%}.detail-card{padding:23px}.detail-card .button{font-size:13px;padding:15px}.detail-hero{padding-top:145px}}
@media(max-width:680px){
 html{scroll-padding-top:90px;scroll-padding-bottom:105px}body{font-size:15px}a,button,summary{scroll-margin-top:90px;scroll-margin-bottom:105px}
 .site-header{height:77px;padding:0 5.5%}.site-header.scrolled{height:69px}.brand b{font-size:21px}.brand small{font-size:10px}.brand-moon{width:24px;height:34px}.brand{gap:10px}.header-actions{gap:10px}.sound-toggle{font-size:12px;gap:4px;min-height:44px}.sound-toggle svg{width:16px;height:16px}.menu-toggle{width:44px;min-width:44px}.mobile-menu{height:calc(100dvh - 69px);padding:20px 7% calc(100px + env(safe-area-inset-bottom));gap:0;justify-content:flex-start}.mobile-menu a{font-size:19px;line-height:1.6;padding:15px 0;min-height:55px}
 .hero{min-height:min(780px,100svh);height:auto;max-height:none;display:flex;align-items:center;padding:139px 6% 101px;isolation:isolate}
 .hero-image{inset:0;left:0;width:100%}.hero-image img{object-position:63% 44%}.hero-shade{background:linear-gradient(90deg,#0c1913d6,#0d1c1480 53%,#0d19162e),linear-gradient(0deg,#102019db,transparent 47%,#0c191459 100%)}
 .hero-content{position:relative;inset:auto;width:100%;transform:none}.hero h1{font-size:clamp(35px,9.4vw,57px);line-height:1.56;letter-spacing:.025em}.hero h1>span{padding-bottom:1px}.hero .eyebrow{font-size:12px;letter-spacing:.07em;gap:7px;margin-bottom:21px;line-height:1.9;flex-wrap:wrap}.hero .eyebrow span{font-size:12px;letter-spacing:.02em;padding-left:10px;margin-left:2px}.hero-description{font-size:15px;line-height:1.95;margin-top:21px;letter-spacing:.055em}.hero-cta{gap:13px;margin-top:25px}.hero-cta .button{width:100%;max-width:395px;min-width:0;min-height:73px;padding:15px 20px;font-size:15px;gap:12px}.hero-cta .button small{font-size:12px}.hero-check-link{font-size:14px;gap:20px;padding:8px 0}.hero-proof{gap:7px 15px;margin-top:16px;font-size:12px;line-height:1.7}.hero-bottom{bottom:21px;left:6%;right:6%;font-size:10px;line-height:1.7;gap:18px}.hero-bottom>span:first-child{max-width:62%;letter-spacing:.08em}.hero-bottom i{margin:0 4px}.scroll-link{font-size:10px;gap:8px;white-space:nowrap}.hero-side{display:none}
 .intro-bar{padding:18px 16px;gap:13px 0;min-height:100px}.intro-bar span{font-size:12px;line-height:1.7;padding:0 10px;letter-spacing:.035em}
 .section,.section-wide{padding:76px 7%}.eyebrow{font-size:12px;letter-spacing:.1em;margin-bottom:18px}.section-heading{margin-bottom:31px}.section-heading h2{font-size:33px;line-height:1.6;letter-spacing:.04em}.section-heading>p{font-size:15px;line-height:1.95;max-width:none;margin-top:18px}
 .about-section{gap:70px;padding-top:57px}.about-images{margin-right:6px;padding-right:9px}.about-main{height:390px;width:91%}.about-detail{height:170px;width:63%;right:-4px;bottom:-39px}.about-main figcaption{font-size:10px;left:14px;bottom:19px}.image-note{font-size:12px;letter-spacing:.24em;right:-8px}.about-copy h2{font-size:35px;margin-bottom:23px}.about-copy .lead{font-size:20px}.about-copy>p:not(.eyebrow):not(.lead){font-size:15px;line-height:2.1}.about-signatures{font-size:12px;line-height:1.85;gap:7px 13px}.text-link{font-size:15px;line-height:1.8;gap:20px;max-width:none;min-height:57px}
 .visit-heading{display:block;margin-bottom:30px}.visit-heading h2{font-size:32px}.visit-heading>p{max-width:none;font-size:15px;line-height:1.95;margin-top:18px}.visit-scenes{display:flex;flex-direction:column;gap:34px;padding-left:24px}.visit-scenes:before{inset:0 auto 0 0;height:auto;width:1px;background:linear-gradient(180deg,#c5b17d66, #c5b17d66 85%,transparent)}.visit-scene,.visit-scene[data-stage="2"],.visit-scene[data-stage="3"]{padding-top:0;width:100%;display:block}.visit-scene>img,.visit-scene[data-stage="2"]>img{aspect-ratio:1.2}.visit-number{position:relative;inset:auto;margin-bottom:13px;font-size:25px;gap:11px}.visit-number:after{position:absolute;left:-28px;top:15px;box-shadow:0 0 0 5px #17241c}.visit-caption{padding-top:19px}.visit-caption h3{font-size:26px}.visit-caption p{font-size:15px;line-height:1.95;margin-top:9px}
 .concern-scenes{gap:18px}.scene,.scene-two,.scene-three{height:365px;margin:0}.scene-content{inset:25px}.scene h3{font-size:28px;line-height:1.6}.scene p{font-size:15px;line-height:1.9;margin-top:12px}.scene-no{font-size:12px}.scene-more{font-size:14px;padding-top:13px;margin-top:17px;gap:10px}.scene:after{background:linear-gradient(0deg,#0b1814f7, #0b1814a6 40%, transparent 95%),linear-gradient(90deg,#12271d33,transparent)}
 .check-section{display:block;padding:73px 7%;background:radial-gradient(ellipse at 50% 24%,#5676462a,transparent 50%),linear-gradient(150deg,#14271c,#102017)}.check-text h2{font-size:34px;max-width:none;margin-bottom:17px}.check-text>p:not(.eyebrow){font-size:15px;line-height:1.95}.check-moon,#check-moon{position:relative;top:auto;right:auto;left:auto;width:210px;height:210px;margin:24px auto 13px;opacity:1}.moon-core{height:128px;width:128px}.orbit-one{inset:14px}.star-one{top:36px;right:21px;font-size:15px}.star-two{bottom:39px;left:19px;font-size:20px}.star-three{bottom:8px;right:71px;font-size:11px}.check-meter{margin-top:0}.check-meter b{font-size:33px}.check-meter>span+span{font-size:12px;letter-spacing:.04em}.check-text .check-note{font-size:12px!important;line-height:1.9;margin-bottom:25px}.check-interaction{padding:0}.check-game{padding:26px 21px 22px}.check-step-header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:13px;margin-bottom:24px;font-size:12px}.check-step-dots{margin-top:0;gap:7px}.check-step-dots button{width:34px;height:34px;min-width:34px;font-size:14px}.check-question{font-size:clamp(24px,6.2vw,31px);line-height:1.8;min-height:102px;letter-spacing:.02em}.check-question-caption{font-size:15px;line-height:1.9;min-height:0;margin-top:14px}.check-answer-row{grid-template-columns:1fr;gap:13px;margin-top:25px}.check-answer{min-height:61px;font-size:16px;padding:15px;gap:12px}.check-answer-icon{width:23px;height:23px}.check-controls{gap:14px;margin-top:19px}.check-back,.reset-button{font-size:12px;line-height:1.6;min-height:44px}.check-summary h3{font-size:28px;line-height:1.7}.check-summary p{font-size:15px;line-height:1.95}.check-summary .button{font-size:15px;padding:16px 19px;gap:13px;min-height:70px}.check-complete-badge{font-size:12px;line-height:1.7}.check-result-card{font-size:15px;padding:17px}.check-result-card span,.check-result-card small{font-size:14px}.check-review-row{font-size:14px;gap:10px;padding:12px 0}.check-review-row strong,.check-review-row b{font-size:12px}.check-review-row button{min-height:44px;font-size:12px}.check-message{font-size:15px;line-height:1.9}.check-label{font-size:15px}.check-option{min-height:110px;padding:20px 10px;gap:12px}.check-index{font-size:12px}.check-fallback{font-size:15px;padding:23px}.check-fallback .button{font-size:15px}
 .treatment-grid{display:block}.treatment-card{display:flex;flex-direction:column;margin-bottom:31px}.treatment-photo{min-height:0;height:auto;aspect-ratio:1.24}.treatment-photo img{object-position:50% 51%}.treatment-card:nth-child(2) .treatment-photo img{object-position:50% 35%}.treatment-type{font-size:12px;top:18px;left:19px}.treatment-body{padding:23px 18px 18px}.treatment-en{font-size:13px;margin-bottom:10px}.treatment-body h3{font-size:25px;line-height:1.6;min-height:0}.treatment-body>p{font-size:15px;min-height:0;line-height:1.95;margin:15px 0 22px}.treatment-body .price{padding-top:19px;margin:0}.price strong{font-size:35px}.price>span{font-size:30px}.price small{font-size:13px}.treatment-body p.price-note{font-size:12px;line-height:1.9;min-height:0;margin-top:10px}.treatment-body .text-link{font-size:15px;margin-top:12px}.treatment-note{font-size:12px;line-height:1.9}.menu-bottom{display:block;margin-top:20px}.menu-bottom .text-link{font-size:14px;line-height:1.9;padding:14px 0;gap:20px}
 .approach-section{min-height:0;display:block;padding-top:190px}.approach-image img{object-position:30% top;filter:brightness(.75) saturate(.67)}.approach-section:after{background:linear-gradient(0deg,#0b1713 0%,#0d1a15f0 53%,#0b171380 79%,#0d1a1511 100%)}.approach-inner{margin:0;width:100%;padding:40px 8% 70px}.approach-inner h2{font-size:39px;line-height:1.6;letter-spacing:.04em}.approach-inner>p:not(.eyebrow){font-size:15px;line-height:2.1}.approach-points{margin-top:28px}.approach-points p{font-size:17px;line-height:1.9}.approach-points small{font-size:15px;line-height:1.9;margin-top:6px}.approach-points>div>span{font-size:13px}.care-outcomes{gap:20px;grid-template-columns:1fr;margin-top:23px}.care-outcome{padding-top:12px}.care-outcome h3{font-size:21px;line-height:1.7}.care-outcome p{font-size:15px;line-height:1.95}.care-outcome>span{font-size:12px}
 .director-section{gap:35px}.director-photo{height:430px}.photo-caption{font-size:10px}.director-copy h2{font-size:33px;line-height:1.65}.director-copy>p:not(.eyebrow){font-size:15px;line-height:2.1;margin-top:23px}.director-name>span{font-size:13px;line-height:1.9}.director-name small{font-size:12px;display:inline-block;margin-left:13px}.director-facts{font-size:13px;line-height:1.9;gap:8px 15px;padding:18px 0;margin-top:24px}
 .voice-grid{display:block}.voice{padding:22px 0 28px}.voice blockquote{font-size:21px;line-height:1.9;margin:10px 0 21px}.voice figcaption{font-size:12px;gap:15px}.voice-note{font-size:12px;line-height:1.95;margin-top:5px}.gallery-section{padding:63px 0 44px}.gallery-title{margin-bottom:27px}.gallery-title>span{font-size:28px}.gallery-title p{font-size:14px;line-height:1.9}.gallery-strip figure:nth-child(2){margin-top:0}.gallery-strip figcaption{font-size:12px;letter-spacing:.08em;line-height:1.8;margin:13px 0}
 .faq-section{display:block;padding-top:64px;padding-bottom:72px}.faq-section h2{font-size:32px}.faq-section>div>p:not(.eyebrow){font-size:15px;line-height:1.95}.faq-list{margin-top:28px}.faq-list summary{font-size:15px;line-height:1.9;gap:13px;padding:23px 2px}.faq-list summary>span{font-size:12px}.faq-list details>p{font-size:15px;line-height:2;padding:0 7px 24px 28px}
 .access-section{gap:34px;padding-top:63px}.access-photo{height:395px}.access-copy h2{font-size:32px}.access-photo-label{font-size:23px;left:25px;bottom:28px}.access-data{margin:23px 0}.access-data>div{display:grid;grid-template-columns:62px 1fr;gap:13px;padding:18px 0}.access-data dt{font-size:12px;line-height:1.9;margin:0}.access-data dd{font-size:15px;line-height:1.95}.access-data dd small{font-size:12px;margin:3px 0 9px}.access-note{font-size:15px;line-height:1.95}.access-links .button{font-size:15px;min-height:62px}.phone-link{font-size:29px;min-height:45px}
 .closing-section{min-height:0;padding:76px 7% 73px}.closing-content h2{font-size:30px;line-height:1.8}.closing-content>p:not(.eyebrow){font-size:15px;line-height:2;margin:23px 0 27px}.closing-content .button{font-size:15px;min-height:76px;padding:18px 19px;gap:12px}.closing-content .button small{font-size:12px}.closing-phone{font-size:13px;line-height:1.8;min-height:44px;margin-top:21px}.site-footer{padding:49px 7% calc(118px + env(safe-area-inset-bottom))}.site-footer nav{font-size:13px;gap:12px 24px;line-height:1.9;margin:26px 0}.footer-bottom{gap:11px;font-size:12px;line-height:1.8;padding-top:20px}.footer-bottom small,.footer-bottom>a{font-size:12px}.footer-bottom>a{min-height:44px;line-height:1.8}
 .mobile-reserve{min-height:59px;left:11px;right:11px;grid-template-columns:65px 1fr;bottom:max(10px,env(safe-area-inset-bottom));border-radius:2px 11px 2px 2px}.mobile-reserve>a{font-size:14px;line-height:1.7;gap:9px;padding:13px 9px;box-shadow:inset 0 1px 0 #fff6}.mobile-reserve>a.mobile-call{font-size:12px;gap:2px;padding:5px}.mobile-call svg{width:18px;height:18px}.mobile-reserve .action-glyph{width:24px;height:24px;flex-basis:24px}.mobile-reserve a:active,.mobile-reserve a.is-pressed{transform:translateY(2px) scale(.98);box-shadow:inset 0 4px 9px #37280f38}
 .detail-hero{padding:133px 7% 60px;min-height:435px}.detail-hero h1{font-size:32px;line-height:1.65}.detail-hero .eyebrow{font-size:12px;letter-spacing:.07em}.detail-hero .detail-subtitle{font-size:17px;line-height:1.9;max-width:none;margin-top:22px}.detail-content{display:flex;padding:48px 7% 70px;gap:32px}.detail-article>p{font-size:16px;line-height:2.15}.detail-article h2{font-size:26px;line-height:1.75}.detail-article .detail-quote{font-size:22px;line-height:1.95;padding-left:18px}.detail-step p{font-size:15px;line-height:2.1}.detail-step h2{font-size:23px}.detail-course h3{font-size:22px;line-height:1.7}.detail-course small{font-size:13px;line-height:1.9}.detail-card{width:100%;padding:26px}.detail-card>p{font-size:15px;line-height:2}.detail-card .eyebrow{font-size:12px}.detail-card .button{font-size:15px;padding:16px 18px;min-height:67px}.detail-note{font-size:12px!important}.related-title{font-size:15px!important}.related-links .text-link{font-size:15px}.detail-back{font-size:14px;line-height:1.8;min-height:44px;padding:10px 0}
 .js-motion [data-reveal]{transform:translateY(22px)}.js-motion [data-reveal="image"]{clip-path:inset(0 0 80% 0)}.js-motion [data-reveal].is-visible{transform:none}.concern-scenes>[data-reveal],.treatment-grid>[data-reveal],.voice-grid>[data-reveal],.visit-scenes>[data-reveal]{transition-delay:0s!important}
}
@media(max-width:360px){.site-header{padding:0 4.5%}.brand b{font-size:19px}.brand{gap:7px}.brand small{font-size:10px}.header-actions{gap:3px}.sound-toggle{font-size:12px}.hero{padding-top:125px;padding-bottom:96px;min-height:0}.hero h1{font-size:33px}.hero .eyebrow{font-size:12px;gap:6px}.hero .eyebrow span{font-size:12px;border:0;padding:0;margin:0}.hero-description{font-size:15px}.hero-cta .button{font-size:14px;padding-left:16px;padding-right:16px}.hero-proof{font-size:12px;gap:7px 10px}.hero-bottom{font-size:9px}.hero-bottom>span:first-child{max-width:58%}.intro-bar span{font-size:12px}.check-moon,#check-moon{width:190px;height:190px;right:auto;top:auto;opacity:1}.moon-core{width:117px;height:117px}.check-text h2{font-size:31px}.check-game{padding:23px 17px}.check-question{font-size:24px}.check-step-dots{gap:6px}.check-step-dots button{width:32px;height:32px;min-width:32px}.check-label{font-size:15px}.check-answer{font-size:15px}.check-step-header{gap:12px}.check-meter>span+span{font-size:12px}.scene h3{font-size:26px}.scene p{font-size:15px}.scene-content{inset:23px}.mobile-reserve>a{font-size:13px;gap:6px}.mobile-reserve{grid-template-columns:59px 1fr}.closing-content h2{font-size:28px}.access-data>div{display:block}.access-data dt{margin-bottom:4px}.access-data dd{font-size:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-motion [data-reveal],.js-motion [data-reveal="image"],.js-motion [data-reveal="title"],.js-motion [data-reveal="card"],.js-motion [data-reveal="light"],.js-motion .about-images[data-reveal],.js-motion .director-photo[data-reveal],.js-motion .access-photo[data-reveal]{opacity:1;transform:none;filter:none;clip-path:none}.hero h1 em,.hero-enter{opacity:1;transform:none;filter:none}.hero-light{opacity:1;transform:none}.hero-image img{transform:none;filter:brightness(.81) saturate(.84)}.celebration,.reservation-glint{display:none}.check-game.is-changing{opacity:1;transform:none}}
/* Final component contracts shared with the content and interaction modules. */
.check-question-caption{min-height:0;margin:0 0 13px;font-size:13px;line-height:1.7;letter-spacing:.09em;color:#d3ba86}.check-question-note{font-size:15px;line-height:1.9;color:#b0bea4;margin:19px 0 0}
.check-controls>span{font-size:12px;line-height:1.8;color:#a7b69b;text-align:right;max-width:220px}.check-answer{gap:7px;padding-left:10px;padding-right:10px}.check-answer>span:nth-child(2){flex:1}.check-answer>span:last-child{font-size:16px}.check-answer.is-selected{outline:2px solid #efddb0;outline-offset:4px}.check-question:focus{outline:none}.check-question:focus-visible{outline:1px solid #cfbc8766;outline-offset:7px}
.check-review{margin:22px 0 25px}.check-review>summary{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:54px;padding:12px 0;border-top:1px solid #c3bd9736;border-bottom:1px solid #c3bd9736;list-style:none;font-size:14px;color:#d4d9c6;cursor:pointer}.check-review>summary::-webkit-details-marker{display:none}.check-review>summary>span{color:var(--gold);font-size:22px;transition:transform .3s}.check-review[open]>summary>span{transform:rotate(45deg)}.check-review .check-review-list{margin:0 0 15px;border-top:0}.check-result-arrow{display:inline-block!important;font-size:21px!important;color:#e1c591!important;float:right;margin:0!important;padding-left:9px}.check-result-card{overflow:hidden}
#check-moon.is-pulsing .moon-core{animation:mr-moon-pulse .65s var(--ease)}.is-rebounding{animation:mr-control-release .35s var(--control-ease)}.scene.is-rebounding,.treatment-photo.is-rebounding{animation:mr-photo-release .42s var(--control-ease)}.button.is-rebounding{animation:mr-button-release .35s var(--control-ease)}
@keyframes mr-moon-pulse{0%{transform:scale(.96)}50%{transform:scale(1.07);box-shadow:0 0 55px #e4c99050}100%{transform:scale(1)}}
@keyframes mr-control-release{0%{transform:translateY(2px) scale(.985)}60%{transform:translateY(-1px) scale(1.005)}100%{transform:translateY(0) scale(1)}}
@keyframes mr-photo-release{0%{transform:translateY(5px) scale(.98)}60%{transform:translateY(-2px) scale(1.004)}100%{transform:translateY(0) scale(1)}}
@keyframes mr-button-release{0%{transform:translateY(4px) scale(.982)}60%{transform:translateY(-2px) scale(1.006)}100%{transform:translateY(0) scale(1)}}
.care-outcomes.section-wide{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:6%;padding-top:70px;padding-bottom:77px;background:linear-gradient(120deg,#e5e4d9,#f1ecdf 70%,#e4e1d2);color:#26372c;border-top:0;position:relative}
.care-outcomes.section-wide .care-outcome{position:relative;padding:0 0 0 23px;border-left:1px solid #8a906277}.care-outcomes.section-wide .care-outcome h3{font-size:26px;color:#26392c;line-height:1.7}.care-outcomes.section-wide .care-outcome p{font-size:15px;color:#586852;line-height:2;max-width:530px;margin-top:13px}.care-outcomes.section-wide .care-outcome>span{font-size:12px;color:#7b7955;letter-spacing:.1em;display:block;margin-bottom:12px}
.detail-article .detail-lead{font-family:var(--serif);font-size:21px;line-height:2;color:#dfd5ba;margin-bottom:34px}.detail-body>p{font-size:16px;line-height:2.2;color:#bdc9b3;margin:0 0 25px}.detail-article .detail-quote{margin:0 0 35px;border-color:#c6a870}.detail-figure{margin:32px 0 37px}.detail-article .detail-figure img{height:335px;margin:0;object-fit:cover;filter:brightness(.9) saturate(.8)}.detail-figure figcaption{font-size:12px;color:#acb99d;line-height:1.9;padding-top:12px;letter-spacing:.04em}
.detail-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:29px 0 14px;border-top:1px solid #aabb8f44;border-bottom:1px solid #aabb8f44;padding:20px 0;background:linear-gradient(100deg,#34452c25,transparent)}.detail-facts>div{padding:0 15px;border-right:1px solid #aabb8f33;min-width:0}.detail-facts>div:first-child{padding-left:0}.detail-facts>div:last-child{border:0}.detail-facts dt{font-size:12px;color:#afbd9e;line-height:1.8;margin-bottom:7px}.detail-facts dd{font-family:var(--serif);font-size:22px;line-height:1.7;color:#e8d8ad;margin:0;overflow-wrap:anywhere}.detail-facts-note{font-size:13px!important;color:#b2bea3!important;line-height:1.9!important}
.detail-audience{margin:30px 0}.detail-audience h2{font-size:25px;line-height:1.8}.detail-audience ul,.detail-consult ul{list-style:none;margin:18px 0 0;padding:0}.detail-audience li,.detail-consult li{position:relative;font-size:15px;line-height:2;color:#c1cbb3;padding:12px 0 12px 24px;border-top:1px solid #a9b58a29}.detail-audience li:before,.detail-consult li:before{content:'';position:absolute;left:1px;top:24px;width:6px;height:6px;border-radius:50%;border:1px solid #c1a46a;background:#c1a46a22}
.detail-process{list-style:none;margin:34px 0 43px;padding:0;display:grid;gap:32px;counter-reset:none}.detail-process>li{position:relative;border-bottom:1px solid #aabc8e33;padding-bottom:28px}.detail-article .detail-process>li>img{height:265px;margin:0 0 21px;object-fit:cover;filter:brightness(.88) saturate(.78)}.detail-process>li>div{position:relative;padding-left:52px}.detail-step-number{position:absolute;left:0;top:1px;color:#c9b27e;font-family:Georgia,serif;font-size:25px;line-height:1.8}.detail-process h2{font-size:25px;margin:0 0 13px;line-height:1.75}.detail-process p{font-size:15px;line-height:2.1;color:#c0cbb4}
.detail-consult{margin:38px 0;padding:29px;border:1px solid #c2b17c3d;background:radial-gradient(ellipse at 0 0,#7a89502a,transparent 70%),linear-gradient(135deg,#293a28,#18291e);border-radius:2px 20px 2px 2px}.detail-consult .eyebrow{font-size:12px;margin:0 0 13px;color:#c6b381}.detail-consult h2{font-size:27px;line-height:1.8;margin:0 0 15px}.detail-consult>p:not(.eyebrow){font-size:15px;line-height:2;color:#c3ceb5}.detail-consult li{font-size:15px}.detail-methods{margin:30px 0}.detail-methods ol{list-style:none;margin:0;padding:0}.detail-methods li{display:flex;gap:19px;padding:17px 0;border-top:1px solid #afbf9333}.detail-methods li>span{font-size:20px;font-family:Georgia,serif;color:#cbb481;line-height:1.8}.detail-methods li>p{font-size:15px;line-height:2.1;color:#c4ceb8}.detail-director{margin:27px 0;padding:20px 0;border-top:1px solid #a7b68a33;border-bottom:1px solid #a7b68a33;font-size:15px;color:#bac7ad}.detail-director strong{display:block;font-family:var(--serif);font-size:28px;font-weight:500;color:#e8d9b4;margin:5px 0}
.detail-course-grid{display:grid;gap:27px;margin:30px 0 32px}.detail-course-grid .detail-course{padding:0 24px 24px;border:1px solid #acbc8f33;background:linear-gradient(140deg,#2c3d2c66,#17251c66);overflow:hidden;box-shadow:0 8px 25px #0001}.detail-course-grid .detail-course>img{height:200px;width:calc(100% + 48px);max-width:none;margin:0 -24px 23px;object-fit:cover;filter:brightness(.87) saturate(.78);transition:transform .8s var(--ease)}.detail-course-grid .detail-course:hover>img{transform:scale(1.03)}.detail-course-grid h3{font-size:24px;line-height:1.75;display:flex;justify-content:space-between;gap:15px;align-items:center}.detail-course-grid .price{padding-top:17px;border-top:1px solid #aabd8e33;margin:18px 0 12px;justify-content:space-between}.detail-course-grid .detail-course>p{font-size:15px;line-height:2;color:#b9c8ac;margin-top:17px}.detail-course-grid .detail-course>p.detail-course-method{font-size:13px;line-height:1.95;color:#a9b99b;margin-top:12px}.detail-course-grid .detail-course>small{font-size:13px;line-height:1.8}.detail-course-more{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:14px;line-height:1.8;color:#d0bb88;margin-top:22px;padding-top:17px;border-top:1px solid #aabd8e33}
@media(max-width:960px){.detail-facts dd{font-size:19px}.detail-facts>div{padding:0 11px}.detail-process>li>div{padding-left:43px}.detail-process h2{font-size:23px}.detail-course-grid h3{font-size:22px}.detail-course-grid .detail-course{padding-left:20px;padding-right:20px}.detail-course-grid .detail-course>img{width:calc(100% + 40px);margin-left:-20px;margin-right:-20px;height:190px}.care-outcomes.section-wide{gap:5%;padding-top:61px;padding-bottom:65px}.care-outcomes.section-wide .care-outcome h3{font-size:24px}}
@media(max-width:680px){.check-question-caption{font-size:13px;margin-bottom:12px}.check-question-note{font-size:15px;line-height:1.95;margin-top:17px}.check-controls>span{font-size:12px;max-width:155px}.check-review>summary{font-size:14px;line-height:1.8}.check-answer{padding:15px 19px;gap:12px}.check-question{min-height:0}.check-game>.reset-button{font-size:12px;min-height:44px;margin-top:13px}.check-game>.check-message{font-size:13px;line-height:1.9;margin-top:22px;min-height:0}.care-outcomes.section-wide{grid-template-columns:1fr;padding:55px 7% 59px;gap:30px}.care-outcomes.section-wide .care-outcome{padding-left:20px}.care-outcomes.section-wide .care-outcome h3{font-size:24px;line-height:1.8}.care-outcomes.section-wide .care-outcome p{font-size:15px;line-height:2}.detail-article .detail-lead{font-size:20px;line-height:2;margin-bottom:28px}.detail-body>p{font-size:16px;line-height:2.15}.detail-article .detail-figure img{height:270px;margin:0}.detail-figure{margin:27px 0 32px}.detail-figure figcaption{font-size:12px;line-height:1.9}.detail-facts{grid-template-columns:1fr;padding:0;margin:26px 0 13px}.detail-facts>div,.detail-facts>div:first-child{display:grid;grid-template-columns:80px 1fr;gap:13px;padding:15px 0;border-right:0;border-bottom:1px solid #aabb8f33;align-items:baseline}.detail-facts>div:last-child{border-bottom:0}.detail-facts dt{font-size:13px;margin:0;line-height:1.9}.detail-facts dd{font-size:23px;line-height:1.7}.detail-facts-note{font-size:13px!important;line-height:1.9!important}.detail-audience h2{font-size:25px}.detail-audience li,.detail-consult li{font-size:15px;line-height:2;padding:13px 0 13px 23px}.detail-audience li:before,.detail-consult li:before{top:25px}.detail-process{gap:27px;margin-top:28px}.detail-article .detail-process>li>img{height:230px;margin:0 0 20px}.detail-process>li>div{padding-left:39px}.detail-step-number{font-size:23px;top:1px}.detail-process h2{font-size:23px;line-height:1.75;margin:0 0 12px}.detail-process p{font-size:15px;line-height:2.1}.detail-consult{padding:25px 21px;margin:31px 0}.detail-consult h2{font-size:26px;line-height:1.7}.detail-consult>p:not(.eyebrow){font-size:15px;line-height:2}.detail-consult .eyebrow{font-size:12px}.detail-methods li{gap:15px}.detail-methods li>p{font-size:15px;line-height:2.1}.detail-director{font-size:15px;line-height:2}.detail-director strong{font-size:27px}.detail-course-grid{gap:25px;margin:26px 0 30px}.detail-course-grid .detail-course{padding:0 20px 23px}.detail-course-grid .detail-course>img{height:200px;margin:0 -20px 20px;width:calc(100% + 40px)}.detail-course-grid h3{font-size:23px;line-height:1.75}.detail-course-grid .detail-course>p{font-size:15px;line-height:2}.detail-course-grid .detail-course>p.detail-course-method{font-size:14px;line-height:1.9}.detail-course-grid .detail-course>small{font-size:13px}.detail-course-more{font-size:14px;line-height:1.8}.detail-course-grid .price strong{font-size:31px}.detail-course-grid .price>span{font-size:27px}}
@media(prefers-reduced-motion:reduce){.is-rebounding,.scene.is-rebounding,.treatment-photo.is-rebounding,.button.is-rebounding,#check-moon.is-pulsing .moon-core{animation:none!important}.reservation-glint,.celebration-orbit{display:none}}
/* Individual transform properties keep the held state independent of reveal
   transforms, so photo links sink even on the frame they enter the viewport. */
:is(a,button,summary).is-pressed{translate:0 3px;scale:.985;transform:none!important}
.scene.is-pressed,.treatment-photo.is-pressed{translate:0 5px;scale:.98}
.button.is-pressed{translate:0 4px;scale:.982}
:is(a,button,summary).is-rebounding{transform:none!important}
@keyframes mr-control-release{0%{translate:0 3px;scale:.985}60%{translate:0 -1px;scale:1.005}100%{translate:0 0;scale:1}}
@keyframes mr-photo-release{0%{translate:0 5px;scale:.98}60%{translate:0 -2px;scale:1.004}100%{translate:0 0;scale:1}}
@keyframes mr-button-release{0%{translate:0 4px;scale:.982}60%{translate:0 -2px;scale:1.006}100%{translate:0 0;scale:1}}
@media(prefers-reduced-motion:reduce){:is(a,button,summary).is-rebounding{animation:none!important;translate:0 0;scale:1}}
@media(min-width:681px) and (max-height:800px){.hero h1{font-size:clamp(48px,5.2vw,68px)}.hero .eyebrow{margin-bottom:20px}.hero-description{margin-top:20px}.hero-cta{margin-top:24px}}

/* Align the final semantic markup with its component presentation. */
.detail-step{position:relative;padding-left:48px}
.detail-step>.detail-step-number{top:24px}
button.check-review-row{width:100%;background:transparent;text-align:left;min-height:54px;padding:14px 0}
button.check-review-row>span:last-child{font-size:12px;color:#e0cca1;text-align:right}
.care-outcomes .text-link,.care-outcomes .text-link .action-glyph{color:#536039}
@media(max-width:680px){.detail-step{padding-left:39px}button.check-review-row{gap:12px}.care-outcomes .outcome-note{font-size:12px!important}}
