/* Third refinement: three actual scenes and a clear next step. */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.hero-scenes{position:absolute;z-index:4;top:30px;right:6vw;width:345px;padding:15px;background:#20331ccc;border:1px solid #dce9cc55;border-radius:4px 24px 4px 4px;backdrop-filter:blur(14px)}.hero-scenes-label{display:block;font-size:10px;letter-spacing:.12em;color:#e0edcf;margin-bottom:11px}.hero-scenes-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.hero-scene-choice{display:block;border:1px solid #e3eddb55;border-radius:3px 12px 3px 3px;padding:0;overflow:hidden;background:#fffefa10;color:white;font-size:10px;text-align:left;box-shadow:0 3px 0 #10240f55;transition:transform .2s,border-color .2s,background .2s}.hero-scene-choice img{width:100%;height:52px;object-fit:cover;opacity:.7;transition:opacity .3s}.hero-scene-choice>span{display:block;padding:8px 7px;white-space:nowrap}.hero-scene-choice small{font-size:8px;opacity:.65;margin-right:5px}.hero-scene-choice[aria-pressed=true]{border-color:#d6ebc0;background:#78a24e77;box-shadow:0 0 0 1px #b7d69d}.hero-scene-choice[aria-pressed=true] img{opacity:1}.hero-scene-choice:active{transform:translateY(2px) scale(.97);box-shadow:inset 0 2px 7px #0004}.hero-scene-choice:focus-visible{outline-color:#d6ebc0;outline-offset:3px}.hero-scene-choice:disabled{opacity:.65}.hero.has-scene .hero-photo img{animation:none}.hero-photo img.scene-1{object-position:70% 45%}.hero-photo img.scene-2{object-position:70% 50%}.check-reading{margin-top:22px;background:linear-gradient(115deg,#eef4e4,#f9f5e9);border:1px solid #ccd9bb;border-radius:3px 22px 3px 3px;overflow:hidden;display:grid;grid-template-columns:100px 1fr}.check-reading>img{width:100%;height:100%;min-height:170px;object-fit:cover;object-position:45% center}.check-reading>div{padding:18px}.check-reading small{font-size:9px;color:#6a7e56}.check-reading h3{font-size:17px;line-height:1.6;margin:7px 0}.check-reading p{font-size:11px;line-height:1.9;color:#5d6b51}.check-reading .text-link{font-size:11px;gap:15px;margin-top:5px}.faq-search{background:radial-gradient(ellipse at 90% 0,#e0eacf,transparent 70%),#f1f4e9;padding:25px 28px;border:1px solid #d6dfca;border-radius:4px 30px 4px 4px;margin:0 0 25px}.faq-search label{display:block;font-size:16px;font-weight:700;margin-bottom:12px}.faq-search>div{display:flex;gap:8px}.faq-search input{min-width:0;width:100%;border:1px solid #b4c4a1;border-radius:7px;background:#fffefa;color:#293a25;font:inherit;font-size:15px;padding:12px 15px;min-height:49px;box-shadow:inset 0 2px 5px #243d1a0a}.faq-search input::placeholder{color:#78856f;font-size:13px}.search-clear{min-width:58px;border:1px solid #bac8aa;border-radius:7px;background:linear-gradient(120deg,#fffefa,#e5ecd9);color:#476039;font-size:12px;box-shadow:0 3px 0 #c9d4be}.search-clear:active{transform:translateY(2px);box-shadow:inset 0 2px 5px #243d1a22}.faq-search>p{font-size:10px;color:#65775b;margin-top:9px}.faq-empty{padding:32px 25px;background:linear-gradient(130deg,#f6f4e9,#eaf0df);border:1px solid #d4ddc8;border-radius:3px 25px 3px 3px}.faq-empty h2{font-size:22px}.faq-empty p{font-size:13px;margin-top:12px}.faq-empty .button{display:flex;max-width:300px;margin-top:24px}.faq-empty .text-link{display:block;font-size:12px}.faq-list details[open]{background:linear-gradient(100deg,#f2f6e9,transparent)}.faq-list details[open] summary{color:#38641f}.faq-list details{scroll-margin-top:100px}.faq-count{font-variant-numeric:tabular-nums}.faq-search input:focus-visible{outline:2px solid #478024;outline-offset:2px}
@media(max-width:1100px){.hero-scenes{width:288px;right:5vw}.hero-scene-choice>span{font-size:9px;padding:7px 5px}.hero-scene-choice small{margin-right:3px}.hero-scene-choice img{height:45px}}
@media(max-width:900px){.hero-scenes{width:auto;right:25px;top:22px;padding:11px}.hero-scenes-label{font-size:9px;margin-bottom:8px}.hero-scene-choice img{display:none}.hero-scene-choice>span{padding:8px;font-size:10px}.hero-scenes-buttons{gap:5px}.check-reading{grid-template-columns:80px 1fr}.check-reading>div{padding:15px}.check-reading h3{font-size:15px}}
@media(max-width:680px){.hero-scenes{left:25px;right:25px;top:17px;padding:10px 12px;background:#20331cb8;border-radius:4px 18px 4px 4px;max-width:340px}.hero-scenes-label{margin-bottom:6px;font-size:9px}.hero-scene-choice>span{padding:8px 5px;text-align:center;font-size:10px}.hero-scene-choice small{font-size:8px}.hero-photo img.scene-1{object-position:53% center}.hero-photo img.scene-2{object-position:48% center}.hero-photo-open{font-size:9px;max-width:calc(100% - 50px)}.check-reading{grid-template-columns:1fr}.check-reading>img{height:130px;min-height:0;object-position:center 45%}.check-reading>div{padding:15px 17px}.check-reading h3{font-size:17px}.check-reading p{font-size:12px}.check-reading .text-link{font-size:12px;min-height:44px}.faq-search{padding:20px 18px;border-radius:3px 23px 3px 3px}.faq-search label{font-size:14px}.faq-search input{font-size:16px;padding:10px 12px}.faq-search input::placeholder{font-size:11px}.search-clear{min-width:48px;font-size:11px}.faq-empty{padding:25px 20px}.faq-empty h2{font-size:19px}.faq-empty p{font-size:12px}.faq-page{padding-top:30px}.faq-search>p{font-size:9px}}
@media(max-width:360px){.hero-scenes{left:20px;right:20px;padding:9px 10px}.hero-scene-choice>span{font-size:9px}.hero-scene-choice small{display:none}.hero-photo-open{left:20px;max-width:calc(100% - 40px);font-size:8px}.hero-scenes-label{font-size:8px}}
@media(prefers-reduced-motion:reduce){.hero-scene-choice,.hero-scene-choice img{transition:none}}
/* Follow-up: coordinated treatment stories and comfortable touch controls. */
.hero h1{min-height:4.56em}.hero-description{min-height:4.2em}.hero-scenes-label{font-size:11px}.hero-scene-choice>span{font-size:11px}.hero-scene-choice{min-height:44px}.hero-link{min-height:44px}.hero-link:active,.hero-link.pressed,.text-link:active,.text-link.pressed{transform:translateY(2px);filter:brightness(.85)}
.faq-search .search-suggestions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:17px}.search-suggestions>span{font-size:11px;color:#5d7150;margin-right:3px}.search-suggestions button{border:1px solid #b7c8a8;padding:8px 13px;min-height:44px;color:#395d27;background:linear-gradient(130deg,#fffefa,#e8f0dc);border-radius:5px 17px 5px 5px;font-size:12px;box-shadow:0 3px 0 #ccd8c1;transition:transform .18s,box-shadow .18s}.search-suggestions button[aria-pressed=true]{color:white;background:linear-gradient(120deg,#5c8e39,#38631f);border-color:#478024}.search-suggestions button:active,.search-suggestions button.pressed{transform:translateY(2px) scale(.98);box-shadow:inset 0 2px 6px #223a1933}.faq-price-link{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding:15px 21px;margin:0 0 26px;border-left:3px solid #9d8b61;background:linear-gradient(100deg,#f4ecdf,#fffefa);border-radius:0 15px 15px 0}.faq-price-link>span{font-size:13px}.faq-price-link .text-link{margin:0;min-height:44px;font-size:13px}.faq-search>p{font-size:12px}.faq-count{font-size:12px}.faq-search label{line-height:1.7}
@media(max-width:1100px){.hero-scene-choice>span{font-size:10px}}
@media(max-width:680px){.hero h1{min-height:4.95em}.hero-description{min-height:4em}.hero-scenes{max-width:380px}.hero-scenes-label{font-size:10px}.hero-scene-choice>span{font-size:11px;padding:10px 5px}.hero-scene-choice small{display:none}.hero-photo-open{font-size:11px}.hero .hero-description{font-size:12px}.hero .actions{gap:12px}.hero-link{font-size:10px;white-space:nowrap}.search-suggestions>span{width:100%;font-size:11px}.search-suggestions button{font-size:12px;padding-inline:12px}.faq-search>p{font-size:11px}.faq-price-link{padding:13px 16px;margin-bottom:20px}.faq-price-link>span,.faq-price-link .text-link{font-size:12px}.faq-price-link .text-link{gap:15px}.mobile-contact{padding-bottom:max(8px,env(safe-area-inset-bottom))}.mobile-contact a{min-height:44px}body{padding-bottom:calc(70px + env(safe-area-inset-bottom))}}
@media(max-width:360px){.hero-scene-choice>span{font-size:10px}.hero-scenes-label{font-size:10px}.hero-photo-open{font-size:10px}.hero-link{font-size:9px}.hero .hero-description{font-size:11px}.hero .actions{gap:10px}}
@media(prefers-reduced-motion:reduce){.search-suggestions button{transition:none}}
/* A clearer visual introduction and consistent feedback across controls. */
.intro-scene{margin:0 0 26px;overflow:hidden;border-radius:3px 46px 3px 3px;box-shadow:0 12px 30px #354e2312}.intro-scene .scene-photo img{height:280px;min-height:0;object-position:center 46%}.intro-scene .scene-photo-label{font-size:13px}.intro-title{align-self:center}.service-at-glance{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 0;padding:0}.service-at-glance li{padding:8px 12px;border:1px solid #cad8bd;border-radius:5px 18px 5px 5px;background:linear-gradient(120deg,#f5f8ec,#e4edda);color:#3e602a;font-size:12px;font-weight:700}.service-at-glance+p{margin-top:18px!important}
button:not(:disabled),a,summary{transition:transform .18s,filter .18s,box-shadow .18s,background .25s}button:not(:disabled):active,a:active,summary:active{filter:brightness(.94)}.header nav a:active,footer a:active,.brand:active{transform:translateY(2px)}.hero-scene-choice:active,.hero-scene-choice.pressed,.search-clear:active,.search-clear.pressed{transform:translateY(2px) scale(.97);box-shadow:inset 0 2px 7px #13280e44}.image-zoom:active,.scene-photo:active,.gallery-open:active{box-shadow:inset 0 3px 16px #0b1a0b55}.hero-photo-open:active,.hero-photo-open.pressed{transform:translateY(2px) scale(.98)}
@media(min-width:681px) and (max-width:1100px){.hero-copy{max-width:68%;padding-top:105px}.hero h1{font-size:clamp(34px,4.4vw,48px)}.hero-description{font-size:14px}.hero-scenes{top:20px}.hero-photo-open{max-width:40%}.intro-scene .scene-photo img{height:235px}}
@media(max-width:680px){.intro-scene{margin-bottom:23px;border-radius:3px 32px 3px 3px}.intro-scene .scene-photo img{height:210px}.intro-scene .scene-photo-label{font-size:12px}.service-at-glance{margin-top:17px;gap:7px}.service-at-glance li{font-size:11px;padding:8px 10px}.hero-scenes{left:20px;right:20px;max-width:none}.hero h1{font-size:clamp(27px,7.9vw,38px)}.hero-copy{bottom:125px}.hero h1 span{white-space:nowrap}.chapter-nav a{min-height:52px}.hero-scenes-buttons{gap:6px}.hero-scene-choice{min-width:0;min-height:44px}.hero .actions{flex-wrap:wrap;row-gap:8px}.hero-link{font-size:11px}.hero .button{min-height:48px}.contact .actions .button{min-height:52px}.footer-bottom div{flex-wrap:wrap;row-gap:8px}.photo-dialog{max-height:calc(100svh - 24px)}.photo-dialog-footer p{overflow-wrap:anywhere}.check-option{scroll-margin-top:95px}.check-result{scroll-margin-top:95px}}
@media(max-width:360px){.hero h1{font-size:26px}.hero .actions{column-gap:10px}.hero-link{font-size:10px}.hero .button{font-size:11px}.hero-description{font-size:11px}.intro-scene .scene-photo img{height:190px}}
@media(max-height:550px) and (min-width:681px){.hero{height:auto;min-height:640px}.hero-copy{max-width:68%;padding-top:110px}}
@media(prefers-reduced-motion:reduce){button:not(:disabled),a,summary{transition:none}}
/* Consultation guidance stays next to the action, including service pages. */
.booking-guide{max-width:640px;margin:30px auto;text-align:left;border:1px solid #b6cba4;border-radius:5px 25px 5px 5px;background:linear-gradient(125deg,#fffefaeF,#eaf1e1);color:#293a25;box-shadow:0 8px 22px #2438190d;overflow:hidden}.booking-guide summary{display:flex;justify-content:space-between;align-items:center;gap:12px;list-style:none;cursor:pointer;padding:19px 23px;font-size:15px;font-weight:700;min-height:56px}.booking-guide summary::-webkit-details-marker{display:none}.booking-guide summary>span{font-size:22px;color:#478024;transition:transform .25s}.booking-guide[open] summary>span{transform:rotate(45deg)}.booking-guide ol{list-style:none;margin:0;padding:6px 23px 0;display:grid;gap:22px}.booking-guide li{display:flex;gap:15px;align-items:flex-start}.booking-guide li>span{display:grid;place-items:center;flex:none;width:32px;height:32px;border:1px solid #a7bb93;border-radius:50%;background:#e8efdd;color:#478024;font-size:11px}.booking-guide strong{font-size:14px;line-height:1.8}.contact .booking-guide p{color:#526147;font-size:13px;line-height:1.9;margin:6px 0 0}.booking-guide>.text-link{margin:15px 23px 20px;font-size:13px;min-height:44px}.copy-check.copied{background:linear-gradient(110deg,#dceccd,#f6faee);border-color:#478024;color:#30571e}.service[role=tabpanel]:focus-visible{outline-offset:8px}.photo-dialog-footer button{flex-shrink:0}.feedback-message{padding-bottom:max(14px,env(safe-area-inset-bottom))}
@media(max-width:680px){.booking-guide{margin:25px 0}.booking-guide summary{padding:16px;font-size:14px}.booking-guide ol{padding:6px 16px 0;gap:19px}.booking-guide li{gap:11px}.booking-guide strong{font-size:14px}.contact .booking-guide p{font-size:13px}.booking-guide>.text-link{margin-inline:16px}.check-option{font-size:14px;line-height:1.8;min-height:60px}.check-result #result-copy,.check-result #selected-topics{font-size:13px;line-height:1.9}.check-actions .button{font-size:14px;min-height:52px}.check-actions .reset{font-size:13px;min-height:44px}.memo-hint{font-size:12px}.answer{font-size:14px;line-height:2}.faq-list summary{font-size:14px}.contact .fine{font-size:11px!important}.mobile-contact a{font-size:13px}.check-reading p{font-size:13px}.hero-photo-open{min-height:44px}.sound{min-height:44px;min-width:44px}}
