:root{--color-linen:#F6F7F6;--color-reservation:#EEF2F4;--color-accent:#425C69;--color-accent-hover:#304956;--color-cool-soft:#F2F5F6;--color-bg:#FFFFFF;--color-surface:#FFFFFF;--color-soft:#F3F5F5;--color-brand:#29424F;--color-text:#354A55;--color-muted:#64727A;--color-line:#D8E0E3;--color-brand-hover:#203945;--font-heading:"Noto Serif JP","Yu Mincho",serif;--font-body:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;--ease-ui:cubic-bezier(.19,1,.22,1);--ease-reveal:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px}body{margin:0;background:var(--color-bg);color:var(--color-text);font:400 16px/1.9 var(--font-body);-webkit-font-smoothing:antialiased}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--font-heading);font-weight:700;line-height:1.5}h2{font-size:2.125rem;color:var(--color-brand)}h3{font-size:1.5rem}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a,button{touch-action:manipulation}button{border:0}img{display:block;width:100%;object-fit:cover}a:focus-visible,button:focus-visible,[tabindex]:focus-visible,summary:focus-visible{outline:2px solid var(--color-brand);outline-offset:4px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:fixed;top:-80px;left:20px;background:var(--color-surface);padding:12px;z-index:200}.skip-link:focus{top:12px}.container{width:calc(100% - 96px);max-width:1160px;margin-inline:auto}.site-header{height:88px;padding:0 40px;display:flex;align-items:center;gap:28px;position:sticky;top:0;z-index:50;background:var(--color-bg);border-bottom:1px solid transparent;transition:border-color 250ms}.site-header.scrolled{border-color:var(--color-line)}.brand{flex-shrink:0;display:inline-flex;color:var(--color-brand)}.wordmark{display:flex;align-items:baseline;gap:8px;white-space:nowrap;line-height:1.3}.wordmark strong{font-family:var(--font-heading);font-size:1.75rem;letter-spacing:.04em}.wordmark>span{font-size:0.9375rem;font-weight:600;letter-spacing:.04em}.desktop-nav{display:flex;align-items:center;justify-content:center;gap:26px;margin-left:auto;font-size:0.9375rem;font-weight:600;white-space:nowrap}.desktop-nav a{padding:12px 0;position:relative}.desktop-nav a:after{content:"";height:1px;background:var(--color-brand);position:absolute;bottom:5px;left:0;right:100%;transition:right 250ms}.header-actions{display:flex;align-items:center;gap:22px}.reserve-link{background:var(--color-brand);color:var(--color-surface);padding:14px 18px;border-radius:8px;font-size:0.9375rem;font-weight:600;display:flex;align-items:center;gap:16px;white-space:nowrap;transition:background 250ms}.reserve-link .arrow{width:auto;height:auto;background:none;font-size:1.5rem}.header-phone{font-size:1.25rem;white-space:nowrap;font-weight:600;line-height:1.6}.header-phone>span{display:block;font-size:0.75rem;font-weight:400}.menu-button{display:none}.arrow{display:inline-flex;flex:0 0 auto;width:48px;height:48px;align-items:center;justify-content:center;border-radius:50%;background:var(--color-brand);color:var(--color-surface);font-size:1.875rem;font-family:Arial,sans-serif;font-weight:400;line-height:1}.arrow>span{transition:transform 250ms var(--ease-ui);display:block;margin-top:-2px}.hero{position:relative;min-height:640px;height:clamp(640px,78svh,840px);background:var(--color-soft)}.hero-photo{position:absolute;inset:0;overflow:hidden}.slide{position:absolute;height:100%;inset:0;opacity:0;transition:opacity 1100ms linear;object-position:50% 55%;color:transparent}.slide.active{opacity:1}.slide:nth-child(2){object-position:50% 57%}.slide:nth-child(3){object-position:50% 58%}.hero-copy{position:absolute;top:65px;left:max(7vw,48px);width:21.25rem;min-height:21.25rem;border-radius:50%;padding:42px 30px;background:var(--color-surface);text-align:center;color:var(--color-brand);display:flex;flex-direction:column;justify-content:center}.hero-copy>p{font-size:1.0625rem;font-weight:600;margin-bottom:14px}.hero-copy h1{font-size:2.75rem;line-height:1.45;letter-spacing:.02em}.hero-opening{position:absolute;left:calc(max(7vw,48px) + 88px);top:440px;color:var(--color-surface);background:var(--color-brand);display:flex;align-items:center;gap:14px;padding:9px 18px}.hero-opening strong{font-size:1.3125rem;font-weight:600}.hero-opening span{font-size:0.875rem}.hero-curve{position:absolute;bottom:-1px;left:0;right:0;height:76px;background:var(--color-soft);clip-path:ellipse(65% 100% at 40% 100%)}.hero-hours{position:absolute;right:32px;bottom:0;width:clamp(560px,44vw,680px);z-index:2}.hero-hours h2{font:600 16px/1.5 var(--font-body);display:table;padding:12px 26px;background:var(--color-surface);border-radius:12px 12px 0 0;margin-left:auto;margin-right:24px}.hours-inner{background:var(--color-surface);padding:22px 26px 20px;border-radius:16px 0 0 0}.hours-intro{display:flex;justify-content:space-between;gap:10px;font-size:0.8125rem;margin-bottom:14px}.hours-intro>a{font-weight:600}.table-scroll{overflow:auto;min-width:0}table{border-collapse:collapse;width:100%;min-width:330px;table-layout:fixed;font-variant-numeric:tabular-nums;font-size:0.9375rem}th,td{text-align:center;padding:10px 2px;border-bottom:1px solid var(--color-line);font-weight:400}thead th{font-weight:600;border-color:var(--color-text);padding-top:0}th:first-child{width:122px;text-align:left}.time-label{background:var(--color-soft);display:block;width:88px;text-align:center;font-size:0.8125rem;line-height:1.6;margin-bottom:3px;border-radius:3px}.time{font-weight:600;font-size:1rem;white-space:nowrap}.open-dot{font-size:0.6875rem;color:var(--color-brand)}.closed{font-size:0.8125rem;color:var(--color-muted)}.hours-note{font-size:0.8125rem;margin-top:12px;color:var(--color-muted)}.hours-note>span{display:block;font-size:0.75rem;margin-top:2px}.slide-controls{position:absolute;bottom:67px;left:48px;z-index:3;align-items:center;gap:5px;color:var(--color-brand);background:var(--color-surface);border-radius:6px;padding:2px 6px}.slide-controls:not([hidden]){display:flex}.slide-controls button{height:44px;width:44px;background:transparent;font-size:1.5625rem}.slide-controls .slide-toggle{font-size:1.0625rem;border-left:1px solid var(--color-line);margin-left:6px}.slide-count{display:flex;align-items:center;gap:10px;font-size:0.75rem;font-variant-numeric:tabular-nums}.slide-count i{display:block;width:24px;height:1px;background:var(--color-line)}.image-caption{position:absolute;right:32px;top:20px;background:var(--color-surface);font-size:0.75rem;padding:2px 9px;border-radius:3px;color:var(--color-muted)}.welcome{background:var(--color-soft);padding:52px 0 88px}.welcome-message{text-align:center;font-family:var(--font-heading);font-size:1.625rem;font-weight:700;color:var(--color-brand);margin-bottom:44px}.entry-banners{max-width:960px;margin:auto}.entry-banner{display:flex;justify-content:space-between;align-items:center;border-radius:16px;padding:48px 54px;gap:32px;border:1px solid transparent;transition:background 250ms,border-color 250ms}.entry-banner.first{background:var(--color-surface);min-height:224px}.entry-banner p{margin-top:15px}.entry-banner.secondary{background:var(--color-brand);color:var(--color-surface);min-height:136px;margin-top:16px;padding-block:30px}.secondary h2{font-size:1.5625rem;color:inherit}.secondary p{margin-top:8px;font-size:0.9375rem}.secondary .arrow{background:var(--color-surface);color:var(--color-brand)}.site-footer{background:var(--color-soft);position:relative;padding:110px 48px 24px;margin-top:140px}.site-footer:before{content:"";position:absolute;top:-72px;left:0;right:0;height:73px;background:var(--color-soft);clip-path:ellipse(65% 100% at 50% 100%)}.footer-grid{display:grid;grid-template-columns:1fr 2.4fr .85fr;gap:40px;max-width:1280px;margin:auto;align-items:start}.footer-clinic .wordmark{flex-direction:column;gap:8px}.footer-clinic p{font-size:0.875rem;margin-top:24px}.reservation-block{min-width:0}.reservation-block h2{font-size:1.5625rem}.reservation-block>p{font-size:0.875rem;margin-top:12px}.reservation-actions{display:flex;gap:24px;align-items:center;margin:28px 0 12px}.unavailable{padding:18px 16px;border:1px solid var(--color-muted);border-radius:10px;text-align:center;flex:1;color:var(--color-muted);font-weight:600;font-size:0.9375rem}.footer-phone{font-size:1.875rem;line-height:1.5;white-space:nowrap;font-weight:600}.footer-phone small{display:block;font-size:0.75rem;font-weight:400}.reservation-block .line-note{margin-bottom:32px;color:var(--color-muted);font-size:0.8125rem}.reservation-block .time-label{background:var(--color-bg)}.footer-nav{display:flex;flex-direction:column;gap:18px;padding-left:30px;border-left:1px solid var(--color-line);font-size:0.875rem;font-weight:600}.footer-bottom{max-width:1280px;margin:70px auto 0;display:flex;align-items:center;justify-content:space-between}.footer-bottom small{font-size:0.75rem}.back-top{width:44px;height:44px;border:1px solid var(--color-line);border-radius:50%;display:grid;place-items:center}.mobile-cta{display:none}.mobile-menu{border:0;background:var(--color-bg);color:var(--color-text);padding:24px;position:fixed;inset:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;z-index:100}.mobile-menu::backdrop{background:var(--color-bg)}.menu-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:40px}.menu-close{background:none;width:44px;height:44px;font-size:2rem}.mobile-menu nav{display:flex;flex-direction:column}.mobile-menu nav a{padding:17px 0;border-bottom:1px solid var(--color-line);font-weight:600}.menu-phone{display:block;font-size:1.75rem;margin-top:40px}.mobile-menu p{font-size:0.875rem;margin-top:15px}body.menu-open{overflow:hidden}body.menu-open .mobile-cta{display:none}
@media(hover:hover) and (pointer:fine){.desktop-nav a:hover:after{right:0}.reserve-link:hover,.entry-banner.secondary:hover{background:var(--color-brand-hover)}.entry-banner.first:hover{border-color:var(--color-brand);background:var(--color-bg)}a:hover .arrow>span{transform:translateX(3px)}.footer-nav a:hover{text-decoration:underline;text-underline-offset:5px}.slide-controls button:hover{background:var(--color-soft)}}
@media(min-width:1200px) and (max-width:1400px){.site-header{padding-inline:28px;gap:20px}.desktop-nav{gap:18px}.header-actions{gap:16px}.header-phone{font-size:1.125rem}.wordmark strong{font-size:1.5625rem}.wordmark>span{font-size:0.875rem}.reserve-link{padding-inline:14px}}
@media(max-width:1199px){.site-header{padding-inline:32px;justify-content:space-between}.desktop-nav,.header-phone{display:none}.menu-button{display:flex;width:48px;height:48px;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:none}.menu-button>span{height:1px;width:24px;background:var(--color-brand)}.menu-button small{font-size:0.75rem;line-height:1}.hero{height:auto;padding-top:560px}.hero-photo{height:560px}.hero-copy{top:56px;left:48px}.hero-opening{top:426px;left:132px}.hero-curve{display:none}.hero-hours{position:relative;right:auto;width:100%;background:var(--color-surface)}.hero-hours h2{margin:0;padding:24px 32px 0}.hours-inner{padding:22px 32px 26px;max-width:760px;margin:auto}.hours-note>span{display:inline;margin-left:12px}.slide-controls{top:494px;bottom:auto;left:32px}.hero-hours th:first-child{width:144px}.footer-grid{grid-template-columns:1fr 1fr;gap:44px}.reservation-block{grid-column:1/-1;grid-row:1;width:100%;max-width:700px;margin:auto}.footer-clinic .wordmark{flex-direction:row;align-items:baseline}.footer-nav{display:grid;grid-template-columns:1fr 1fr}.site-footer{padding-top:70px}}
@media(max-width:767px){html{scroll-padding-top:88px}.container{width:calc(100% - 40px)}body{font-size:1rem}h2{font-size:1.75rem}.site-header{height:72px;padding:0 20px;gap:10px}.wordmark{gap:3px;flex-direction:column}.wordmark strong{font-size:1.5rem}.wordmark>span{font-size:0.75rem;letter-spacing:.18em}.header-actions{gap:10px}.reserve-link{font-size:0.8125rem;padding:10px 12px;min-height:44px;gap:8px}.reserve-link .arrow{font-size:1.25rem}.menu-button{width:44px}.hero{padding-top:440px}.hero-photo{height:440px}.slide{object-position:59% 50%}.hero-copy{width:15rem;min-height:15rem;top:42px;left:20px;padding:28px 18px}.hero-copy>p{font-size:0.875rem;margin-bottom:8px}.hero-copy h1{font-size:2rem;line-height:1.45}.hero-opening{top:306px;left:55px;gap:12px;padding:7px 14px}.hero-opening strong{font-size:1.125rem}.hero-opening span{font-size:0.8125rem}.image-caption{right:20px;top:12px;font-size:0.75rem}.slide-controls{position:relative;top:auto;left:auto;bottom:auto;justify-content:flex-end;border-radius:0;padding:6px 18px}.hero-hours h2{padding:12px 20px 0;font-size:1.125rem}.hours-inner{padding:16px 20px 26px}.hours-intro{font-size:0.75rem;gap:8px}.hero-hours th:first-child,th:first-child{width:94px}table{font-size:0.8125rem;min-width:320px}.time{font-size:0.8125rem}.time-label{width:80px;font-size:0.75rem}.hours-note{font-size:0.8125rem;line-height:1.8}.hours-note>span{display:block;margin-left:0}.welcome{padding:40px 0 56px}.welcome-message{font-size:1.375rem;margin-bottom:28px}.entry-banner{padding:26px 24px;gap:15px;border-radius:12px}.entry-banner.first{min-height:184px}.entry-banner h2{font-size:1.625rem}.entry-banner p{font-size:0.9375rem;margin-top:12px;line-height:1.8}.entry-banner .arrow{width:44px;height:44px}.entry-banner.secondary{padding:24px;min-height:136px}.secondary h2{font-size:1.375rem}.secondary p{font-size:0.875rem}.site-footer{padding:44px 20px calc(96px + env(safe-area-inset-bottom));margin-top:90px}.site-footer:before{height:41px;top:-40px}.footer-grid{display:flex;flex-direction:column;gap:36px}.reservation-block h2{font-size:1.5rem}.reservation-actions{flex-direction:column;align-items:stretch;gap:22px}.footer-phone{text-align:center;font-size:1.875rem}.footer-clinic{order:2}.footer-nav{order:3;border-left:0;border-top:1px solid var(--color-line);padding:24px 0 0;width:100%;gap:22px 16px}.footer-clinic .wordmark{flex-direction:row;gap:10px;align-items:baseline}.footer-clinic .wordmark>span{font-size:0.875rem;letter-spacing:.04em}.footer-clinic p{margin-top:18px}.footer-bottom{margin-top:40px}.mobile-cta{position:fixed;bottom:0;left:0;right:0;z-index:40;display:grid;grid-template-columns:1fr 1.25fr;gap:8px;padding:8px 12px calc(8px + env(safe-area-inset-bottom));background:var(--color-bg);border-top:1px solid var(--color-line);font-size:0.875rem}.mobile-cta>*{min-height:48px;display:grid;place-items:center;border-radius:6px}.mobile-cta a{background:var(--color-brand);color:var(--color-surface);font-weight:600}.mobile-cta>span{border:1px solid var(--color-line);color:var(--color-muted)}.mobile-menu .wordmark{flex-direction:row;align-items:baseline}.mobile-menu .wordmark>span{letter-spacing:0}}
@media(max-width:359px){.site-header{padding-inline:16px}.reserve-link{display:none}.container{width:calc(100% - 32px)}.hero-copy{left:16px}.hours-inner{padding-inline:16px}.hours-intro{flex-wrap:wrap}.entry-banner{padding-inline:20px}.welcome-message{font-size:1.25rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Clinic symbol supplied for the Morimoto brand. */
.brand{align-items:center;gap:10px}
.clinic-mark{width:46px;height:46px;object-fit:contain;flex:0 0 auto}
.mobile-menu .brand:focus-visible{outline:none}
.cell-note{display:block;margin-top:2px;font-size:.5625rem;line-height:1.15;white-space:nowrap;color:var(--color-muted)}
.footer-clinic .clinic-mark{width:56px;height:56px}
@media(max-width:767px){.clinic-mark{width:38px;height:38px}.site-header{padding-right:72px}.site-header .brand{gap:7px}.site-header .wordmark strong{font-size:1.25rem}.site-header .wordmark>span{font-size:.6875rem}.site-header .reserve-link{display:none}.site-header .header-actions{margin-left:auto}.site-header .menu-button{display:flex;position:absolute;right:16px;top:15px;z-index:2}.footer-clinic .clinic-mark{width:48px;height:48px}}
.section-space{margin-top:128px}.section-heading{text-align:center;margin-bottom:48px}.section-heading p{margin-top:26px;line-height:1.9}.dashed-title{display:inline-block;border-bottom:1px dashed var(--color-brand);padding-bottom:12px}.symptom-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:start}.symptom{background:var(--color-soft);border:1px solid transparent;border-radius:12px;transition:background 250ms,border-color 250ms}.symptom summary{list-style:none;min-height:124px;padding:30px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;font-family:var(--font-heading);font-size:1.25rem;font-weight:700;cursor:pointer}.symptom summary::-webkit-details-marker,.visit-guide summary::-webkit-details-marker{display:none}.symptom summary>span{font-size:1.5rem;font-weight:400;flex-shrink:0;transition:transform 250ms}.symptom[open]{background:var(--color-surface);border-color:var(--color-line)}.symptom[open] summary>span,.visit-guide details[open] summary>span{transform:rotate(45deg)}.symptom p{padding:0 24px 26px;font-size:1rem}.treatment-methods{display:grid;grid-template-columns:1fr 1fr;gap:56px;border-top:1px solid var(--color-line);margin-top:48px;padding-top:32px}.treatment-methods h3{font-size:1.375rem;color:var(--color-brand);margin-bottom:14px}.treatment-note{font-size:0.8125rem;color:var(--color-muted);margin-top:24px}.philosophy-intro{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start;margin-bottom:48px}.philosophy-intro h2{font-size:2.125rem;line-height:1.8}.philosophy-intro p+p{margin-top:18px}.wide-photo{position:relative;margin:0 40px;overflow:hidden;border-radius:16px}.wide-photo img{height:clamp(340px,37vw,570px);object-position:50% 58%}.wide-photo figcaption,.greeting-photo figcaption{position:absolute;bottom:16px;right:20px;font-size:0.75rem;background:var(--color-surface);padding:2px 9px;color:var(--color-muted);border-radius:3px}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:44px}.values>div+div{border-left:1px solid var(--color-line);padding-left:40px}.values h3{font-size:1.4375rem;color:var(--color-brand);line-height:1.65}.values p{margin-top:18px;font-size:1rem}.first-visit{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding-top:56px;border-top:1px solid var(--color-line)}.first-visit-intro h2{line-height:1.65}.first-visit-intro p{margin-top:24px}.text-link{display:inline-flex;align-items:center;gap:22px;font-size:1rem;font-weight:600;margin-top:30px}.text-link .arrow{width:44px;height:44px}.visit-guide{background:var(--color-soft);padding:36px 40px;border-radius:12px}.visit-guide h3{font-size:1.375rem;margin-bottom:18px}.visit-guide details{margin-top:24px;border-top:1px solid var(--color-line)}.visit-guide summary{list-style:none;display:flex;justify-content:space-between;gap:20px;padding:20px 0 0;cursor:pointer;font-weight:600}.visit-guide summary span{display:inline-block}.visit-guide ol{padding-left:24px;margin-bottom:0}.visit-guide li{padding:5px 0}.greeting{display:grid;grid-template-columns:1fr 1fr;max-width:1440px;margin-inline:40px;background:var(--color-surface);border-radius:16px;overflow:hidden}.greeting-copy{padding:56px 64px}.greeting-copy>p{margin-top:24px;max-width:480px;line-height:1.95}.greeting-copy>p+p{margin-top:16px}.director{margin-top:32px;display:flex;align-items:baseline;gap:18px;flex-wrap:wrap}.director>span{font-size:0.875rem}.director strong{font-family:var(--font-heading);font-size:1.625rem;letter-spacing:.07em}.director small{width:100%;font-size:0.8125rem;margin-top:-10px}.greeting-photo{margin:0;position:relative;min-height:440px}.greeting-photo img{height:100%;position:absolute;inset:0;object-position:50% 56%}.access{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:center}.access-name{font-family:var(--font-heading);font-size:1.4375rem;font-weight:700;margin-top:30px}.access address{font-style:normal;margin-top:15px}.parking{margin-top:20px;padding-top:20px;border-top:1px solid var(--color-line);font-size:0.875rem}.parking strong{font-size:1.125rem;margin-left:30px;font-weight:600}.map-wrap{background:var(--color-soft);height:360px;border-radius:12px;overflow:hidden}.map-wrap iframe{width:100%;height:100%;border:0}.reveal-pending{opacity:0;transform:translateY(20px)}.reveal{transition:opacity 650ms var(--ease-reveal),transform 650ms var(--ease-reveal)}.reveal:focus-within{opacity:1;transform:none}a[href]:focus-visible{scroll-margin-top:120px}.reserve-link:focus-visible,.secondary:focus-visible,.mobile-cta a:focus-visible{outline-color:var(--color-surface);outline-offset:-5px}
@media(hover:hover) and (pointer:fine){.symptom:hover{background:var(--color-bg);border-color:var(--color-brand)}.text-link:hover{text-decoration:underline;text-underline-offset:5px}}
@media(min-width:1520px){.greeting{margin-inline:auto}}
@media(max-width:1199px){.section-space{margin-top:96px}.symptom summary{font-size:1.125rem;padding:24px 18px;gap:10px}.philosophy-intro,.first-visit,.access{gap:44px}.greeting-copy{padding:40px}.values{gap:28px}.values>div+div{padding-left:28px}.values h3{font-size:1.3125rem}.greeting{margin-inline:32px}.philosophy-intro h2{font-size:1.875rem}}
@media(max-width:767px){.section-space{margin-top:72px}.section-heading{margin-bottom:30px}.section-heading p{margin-top:22px}.symptom-grid{grid-template-columns:1fr;gap:10px}.symptom summary{min-height:80px;padding:20px 24px;font-size:1.1875rem}.symptom p{padding:0 24px 24px}.treatment-methods{grid-template-columns:1fr;gap:28px;margin-top:32px;padding-top:28px}.treatment-methods h3{font-size:1.375rem}.treatment-note{font-size:0.8125rem}.philosophy-intro{grid-template-columns:1fr;gap:24px;margin-bottom:30px}.philosophy-intro h2{font-size:1.75rem;line-height:1.65}.wide-photo{margin-inline:20px;border-radius:10px}.wide-photo img{height:300px;object-position:60% 50%}.values{grid-template-columns:1fr;gap:28px;margin-top:32px}.values>div+div{padding:28px 0 0;border-left:0;border-top:1px solid var(--color-line)}.values h3{font-size:1.375rem}.values h3 br{display:none}.values p{margin-top:14px}.first-visit{grid-template-columns:1fr;gap:30px;padding-top:36px}.first-visit-intro h2{font-size:1.75rem}.first-visit-intro p{margin-top:20px}.visit-guide{padding:28px 24px}.visit-guide h3{font-size:1.3125rem}.text-link{gap:18px}.greeting{grid-template-columns:1fr;margin-inline:20px;border-radius:12px}.greeting-photo{grid-row:1;min-height:0;aspect-ratio:4/3}.greeting-photo img{object-position:50% 48%}.greeting-copy{padding:30px 24px}.greeting-copy>p{margin-top:22px}.director strong{font-size:1.5625rem}.access{grid-template-columns:1fr;gap:32px}.access-name{font-size:1.375rem;margin-top:24px}.map-wrap{height:300px}.pc-break{display:none}.reveal{transition-duration:500ms}.reveal-pending{transform:translateY(12px)}}
@media(prefers-reduced-motion:reduce){.reveal-pending{opacity:1;transform:none}}
/* Light surfaces with apricot accents and blue-gray text. */
body,.site-header,.mobile-menu,.mobile-menu::backdrop{background:var(--color-surface)}
.hero-photo,.wide-photo,.greeting-photo{background:var(--color-bg)}
.hero-photo img,.wide-photo img,.greeting-photo img{filter:brightness(1.16) saturate(.78)}
.hero,.welcome,.site-footer,.site-footer:before,.hero-curve{background:var(--color-bg)}
.welcome{padding-top:52px}
.entry-banner.first{background:var(--color-surface);border-color:var(--color-line)}
.symptom,.visit-guide{background:var(--color-bg)}
.greeting{background:var(--color-bg)}
.time-label,.reservation-block .time-label{background:var(--color-soft)}
@media(max-width:767px){.welcome{padding-top:40px}}

/* Original blue-gray illustrations keep treatment categories easy to recognise. */
.symptom .illustrated-summary{min-height:246px;display:flex;flex-direction:column;justify-content:center;gap:20px;padding:28px 24px 26px}
.symptom-illustration{width:132px;height:132px;object-fit:contain;flex:none}
.symptom summary>.symptom-label{display:flex;align-items:center;justify-content:center;gap:12px;font-size:1.25rem;font-weight:700;line-height:1.6;text-align:center}
.symptom-symbol{font-family:var(--font-body);font-size:1.25rem;font-weight:400;flex:none;transition:transform 250ms var(--ease-ui)}
.symptom[open] summary>.symptom-label{transform:none}
.symptom[open] .symptom-symbol{transform:rotate(45deg)}
@media(max-width:1199px){.symptom .illustrated-summary{padding-inline:18px}.symptom summary>.symptom-label{font-size:1.125rem;gap:8px}}
@media(max-width:767px){.symptom-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.symptom .illustrated-summary{min-height:206px;padding:20px 12px 18px;gap:14px}.symptom-illustration{width:102px;height:102px}.symptom summary>.symptom-label{font-size:1rem;gap:6px;max-width:100%}.symptom-symbol{font-size:1rem}.symptom[open]{grid-column:1/-1}.symptom[open] .illustrated-summary{min-height:158px;flex-direction:row;gap:24px;padding:20px 24px}.symptom[open] summary>.symptom-label{text-align:left}.symptom[open] p{padding:0 24px 24px}}
@media(max-width:359px){.symptom .illustrated-summary{padding-inline:9px}.symptom summary>.symptom-label{font-size:1rem}.symptom[open] .illustrated-summary{gap:14px}}
