:root{--ink:#163c51;--navy:#113449;--orange:#de762b;--text:#344b56;--pale:#f0f5f7;--line:#d6e0e5;--white:#fff;--serif:"Yu Mincho","Hiragino Mincho ProN",serif;--sans:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:#fff;color:var(--text);font:16px/1.95 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:auto}figure,p{margin:0}button{font:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:5px}a:hover{color:var(--orange)}.wrap{max-width:1240px;margin:auto;padding-left:48px;padding-right:48px}.section{padding-top:105px;padding-bottom:105px}.eyebrow{font:600 12px/1.6 var(--sans);letter-spacing:.19em;color:var(--orange);margin-bottom:22px}h1,h2,h3{color:var(--ink);margin:0;font-weight:500}h2{font:500 clamp(26px,2.6vw,38px)/1.8 var(--serif);letter-spacing:.05em}h3{font-size:20px;line-height:1.65}p{line-height:2}.header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 4%;position:sticky;top:0;z-index:20;background:#fffffffa;border-bottom:1px solid #e9eef0}.brand{display:flex;flex-direction:column;gap:3px;flex-shrink:0;color:var(--ink)}.brand-en{font:42px/1 Georgia,serif;letter-spacing:-2px}.brand-dot{color:var(--orange)}.brand-ja{font-size:12px;letter-spacing:.12em}.header nav{display:flex;align-items:center;gap:30px;font-size:14px}.nav-book{background:var(--ink);color:#fff;padding:14px 25px}.nav-book:hover{background:#25566f;color:#fff}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:44% 56%;position:relative;max-width:1600px;margin:0 auto;padding-bottom:36px}.hero-copy{padding:68px 20px 70px max(48px,calc((100vw - 1230px)/2));z-index:1}.hero .eyebrow{margin-bottom:24px;white-space:nowrap}.location{font-size:14px;letter-spacing:.06em;margin-bottom:14px}.hero h1{font:500 clamp(32px,3.35vw,55px)/1.7 var(--serif);letter-spacing:.03em;white-space:nowrap}.hero h1 span{text-decoration:underline;text-decoration-color:#edab67;text-decoration-thickness:3px;text-underline-offset:14px}.hero-description{margin:32px 0 24px;font-size:15px}.hero-photo{position:relative;overflow:hidden;margin:28px 28px 0 0;border-radius:0 0 0 95px;min-height:620px}.hero-photo img{height:100%;object-fit:cover;object-position:35% center}.hero-photo:after{content:"";position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#112c3b88)}.hero-photo figcaption{position:absolute;bottom:35px;right:35px;color:white;font-family:var(--serif);font-size:20px;line-height:1.9;letter-spacing:.12em;z-index:1}.hero-small{font-size:12px;margin-top:14px;letter-spacing:.02em}.hero-index{position:absolute;bottom:5px;right:35px;font-size:11px;letter-spacing:.13em;color:#77868f}.button{display:inline-flex;align-items:center;justify-content:center;min-height:55px;padding:14px 26px;font-size:14px;font-weight:600;letter-spacing:.04em;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.orange{background:var(--orange);color:white}.orange:hover{background:#bb5d1c;color:white}.outline{border:1px solid var(--ink);color:var(--ink)}.outline:hover{background:var(--ink);color:white}.white{background:white;color:var(--ink)}.white:hover{background:#e8eff2;color:var(--ink)}.benefits{display:flex;justify-content:center;align-items:center;background:var(--navy);color:#e4edf2;padding:25px 30px;gap:40px;font-size:13px}.benefits span+span{border-left:1px solid #6b8492;padding-left:40px}.benefits b{font-size:16px;color:white;font-weight:500;margin-right:12px}.about{display:grid;grid-template-columns:1fr 1fr;gap:60px}.accent-line{display:block;width:60px;height:3px;background:var(--orange);margin-top:35px}.prose p+p{margin-top:24px}.emphasis{color:var(--ink);font-weight:600}.care-section{background:var(--pale)}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:45px}.section-heading>p{font-size:14px}.care-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.care{background:#fff;border-top:1px solid #dbe5e9;align-self:start}.care summary{padding:28px;display:flex;align-items:center;gap:22px;cursor:pointer;list-style:none;min-height:124px}.care summary::-webkit-details-marker{display:none}.care-no{color:var(--orange);font:italic 28px Georgia,serif}.care small{display:block;font-size:13px;color:#657a86}.care strong{font-size:20px;font-weight:500;color:var(--ink)}.plus{height:24px;width:24px;position:relative;margin-left:auto;flex-shrink:0}.plus:before,.plus:after{content:"";position:absolute;left:5px;top:11px;width:14px;height:1px;background:var(--ink)}.plus:after{transform:rotate(90deg)}details[open] .plus:after{transform:none}.care[open]{box-shadow:0 5px 15px #163c5107}.care-body{padding:0 30px 28px 74px;font-size:15px}.care-body a{display:inline-block;text-decoration:underline;text-underline-offset:5px;margin-top:16px;color:var(--ink);font-size:14px}.accident-note{display:flex;align-items:center;gap:25px;padding-top:42px;margin-top:40px;border-top:1px solid var(--line)}.accident-note .eyebrow{font-size:11px;max-width:90px;margin:0}.accident-note p{font-size:14px;margin-top:5px}.text-link{margin-left:auto;font-size:14px;text-decoration:underline;text-underline-offset:6px}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.feature-grid article{border-top:1px solid var(--line);padding-top:20px}.number{font:italic 35px Georgia,serif;color:var(--orange)}.feature-grid h3{margin:20px 0 15px;font-family:var(--serif);font-size:23px}.feature-grid p{font-size:15px}.director{background:var(--pale)}.director-grid{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:80px}.director figure img{height:530px;object-fit:cover;object-position:60%;border-radius:0 75px 0 0}.director figure figcaption{font-size:12px;margin-top:12px}.director h2{margin-bottom:28px}.director p+p{margin-top:18px}.signature{border-top:1px solid var(--line);margin-top:30px;padding-top:25px}.signature span,.signature small{display:block;font-size:12px}.signature strong{display:block;font:500 30px/1.8 var(--serif);letter-spacing:.16em;color:var(--ink);margin:4px 0}.price-layout{display:grid;grid-template-columns:1.3fr .85fr;gap:65px}.price-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px 0;border-top:1px solid var(--line)}.menu-label{font-size:11px;letter-spacing:.1em;color:var(--orange)}.price-row h3{font-size:19px;margin:9px 0}.price-row p{font-size:13px}.price-row>strong{font:32px/1.4 Georgia,serif;white-space:nowrap;color:var(--ink)}.price-row>strong span{font:13px var(--sans);margin-left:6px}.fine{font-size:12px;color:#5b717e;line-height:1.9}.price-list>.fine{border-top:1px solid var(--line);padding-top:18px;margin-bottom:25px}.price-image img{height:390px;object-fit:cover;border-radius:0 0 50px 0}.price-image figcaption{margin-top:25px;font-size:15px}.price-image .eyebrow{display:block;margin-bottom:12px}.flow-section{background:var(--navy);color:#cbdbe4}.flow-section h2,.flow-section h3{color:#fff}.flow{display:grid;grid-template-columns:repeat(4,1fr);padding:0;margin:45px 0 0;list-style:none;gap:30px}.flow li{border-top:1px solid #66808e;padding-top:20px}.flow span{font:italic 27px Georgia,serif;color:#f2aa6c}.flow h3{margin:22px 0 16px;font-size:18px}.flow p{font-size:14px}.faq{display:grid;grid-template-columns:.8fr 1.4fr;gap:50px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}.faq-list summary{padding:24px 25px 24px 0;cursor:pointer;font-size:16px;color:var(--ink)}.faq-list p{padding:0 0 24px;font-size:15px}.access-section{background:var(--pale)}.access-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.access-grid h3{margin:24px 0 18px}.access-grid p+p{margin:20px 0 30px}.hours{padding:38px 35px;background:white;align-self:center}.hours h3{margin:0 0 25px}.hours-row{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding:15px 0;font-size:14px}.hours-row strong{font-weight:500;font-size:18px;color:var(--ink)}.hours>.fine{margin:20px 0}.hours-tags{display:flex;flex-wrap:wrap;gap:8px}.hours-tags span{font-size:12px;background:var(--pale);padding:4px 10px}.reservation{padding:80px 0 85px;text-align:center;background:var(--navy);color:#e0eaf0}.reservation h2{color:white;font-size:38px}.reservation p:not(.eyebrow){margin:25px auto 30px;font-size:15px}.reservation-buttons{display:flex;justify-content:center;gap:18px}.reservation-buttons a{min-width:290px}.reservation small{display:block;font-size:12px;margin-top:18px;color:#c0d0d9}.footer{padding-top:50px;padding-bottom:45px;display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap}.footer>div{display:flex;gap:24px;font-size:13px}.footer>small{font-size:11px;flex-basis:100%;text-align:right;color:#758690}.mobile-book{display:none}.skip{position:fixed;top:-100px;left:10px;padding:8px;background:white;z-index:100}.skip:focus{top:10px}
@media(min-width:1600px){.hero-copy{padding-left:110px}}
@media(max-width:1100px){.header nav{gap:18px}.hero-copy{padding-left:35px}.hero h1{font-size:38px}.hero-photo{min-height:620px}.benefits{gap:22px}.benefits span+span{padding-left:22px}.benefits b{display:block}.director-grid{gap:45px}.price-layout{gap:35px}.accident-note{flex-wrap:wrap}.accident-note .text-link{margin-left:115px}.section-heading{align-items:start;flex-direction:column;gap:12px}}
@media(max-width:760px){html{scroll-padding-top:88px}.header{height:80px;padding:0 22px}.brand-en{font-size:35px}.brand-ja{font-size:10px}.menu-toggle{display:flex;align-items:center;gap:12px;border:0;background:none;color:var(--ink);font-size:13px;padding:12px 0}.menu-toggle span{font-size:24px}.header nav{display:none;position:absolute;top:80px;left:0;right:0;background:white;padding:20px 25px 30px;box-shadow:0 12px 18px #163c511a}.header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}.header nav a{padding:14px 18px}.header nav .nav-book{margin-top:10px}.wrap{padding-left:25px;padding-right:25px}.section{padding-top:65px;padding-bottom:65px}.hero{grid-template-columns:1fr;padding:0 0 25px}.hero-copy{padding:35px 25px 26px}.hero .eyebrow{font-size:10px;margin-bottom:13px;white-space:normal}.location{font-size:12px;margin-bottom:10px}.hero h1{font-size:clamp(30px,7.8vw,47px);line-height:1.65}.hero h1 br:nth-child(2){display:none}.hero h1{white-space:normal}.hero h1 span{text-underline-offset:9px;text-decoration-thickness:2px}.hero-description{font-size:14px;margin:24px 0 22px}.hero-small{font-size:10px}.hero .button{width:100%;max-width:390px}.hero-photo{margin:0 18px 0 25px;height:320px;min-height:0;border-radius:0 0 0 55px}.hero-photo img{object-position:50% 52%}.hero-photo figcaption{font-size:15px;bottom:20px;right:20px}.hero-index{right:20px;bottom:3px;font-size:9px}.benefits{padding:19px 15px;gap:0;align-items:stretch}.benefits span{flex:1;text-align:center;font-size:9px;line-height:1.7;padding:0 5px}.benefits span+span{padding-left:5px}.benefits b{font-size:12px;margin:0 0 4px;display:block}.about,.director-grid,.price-layout,.faq,.access-grid{grid-template-columns:1fr;gap:32px}.about .accent-line{margin-top:25px}.prose{font-size:15px}.desktop{display:none}.eyebrow{font-size:11px;margin-bottom:15px}.section-heading{margin-bottom:28px}.section-heading>p{font-size:12px}h2{font-size:27px}.care-grid{grid-template-columns:1fr;gap:10px}.care summary{min-height:100px;padding:20px;gap:20px}.care strong{font-size:19px}.care small{font-size:12px}.care-body{padding:0 22px 25px 62px;font-size:14px}.accident-note{margin-top:28px;padding-top:28px;gap:16px;display:block}.accident-note .eyebrow{max-width:none;display:block;margin-bottom:14px}.accident-note h3{font-size:19px}.accident-note p{font-size:13px}.accident-note .text-link{margin:17px 0 0;display:inline-block}.feature-grid{grid-template-columns:1fr;gap:30px}.feature-grid article{display:grid;grid-template-columns:48px 1fr;gap:0 10px}.feature-grid h3{margin:0 0 12px;font-size:22px}.feature-grid p{grid-column:2}.number{font-size:29px}.director figure img{height:330px}.director figure figcaption{font-size:11px}.director h2{font-size:29px}.director p{font-size:15px}.price-row h3{font-size:17px}.price-row>strong{font-size:28px}.price-image img{height:300px}.flow{grid-template-columns:1fr 1fr;gap:30px 24px;margin-top:32px}.flow h3{font-size:17px;margin:15px 0 12px}.flow p{font-size:13px}.faq-list summary{font-size:15px}.faq-list p{font-size:14px}.access-grid h2{font-size:25px}.access-grid p{font-size:14px}.hours{padding:28px 22px}.reservation{padding:60px 0}.reservation h2{font-size:30px}.reservation p:not(.eyebrow){font-size:14px}.reservation-buttons{flex-direction:column;gap:12px}.reservation-buttons a{min-width:0}.reservation small{font-size:10px}.footer{padding-top:35px;padding-bottom:100px;gap:25px}.footer>div{flex-wrap:wrap;gap:12px 22px}.footer>small{text-align:left}.mobile-book{display:flex;position:fixed;z-index:25;bottom:0;left:0;right:0;padding-bottom:env(safe-area-inset-bottom);background:white;box-shadow:0 -2px 10px #163c5115}.mobile-book a{width:50%;text-align:center;padding:16px 10px;font-size:14px;background:var(--navy);color:white}.mobile-book a+a{background:var(--orange)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}.button:hover{transform:none}}

/* Supplied brand and clinic photography */
.brand{flex-direction:row;align-items:center;gap:14px}.brand-logo{width:76px;height:76px;object-fit:contain}.brand-ja{font-size:13px;line-height:1.7;letter-spacing:.08em}.hero-photo img{object-position:50% center}.director figure img{object-fit:contain;background:#e5ddd6;height:570px;border-radius:0 65px 0 0}.feature-photo{aspect-ratio:4/3;object-fit:cover;margin-bottom:25px}.feature-grid article{border-top:none;padding-top:0}.flow-photo{width:100%;aspect-ratio:4/3;object-fit:cover;margin-bottom:22px}.mascot-guide{display:flex;align-items:center;gap:24px;margin:0 0 28px;background:white;padding:15px 28px;border-radius:18px;max-width:590px}.mascot-guide img{width:88px;height:126px;object-fit:contain;flex-shrink:0}.mascot-guide p{font-size:15px;color:var(--ink)}.faq-mascot{width:136px;height:200px;object-fit:contain;margin:30px auto 0}.booking-mascot{width:108px;height:142px;background:white;border-radius:60px;margin:0 auto 25px;padding:10px 15px}.booking-mascot img{width:100%;height:100%;object-fit:contain}.footer .brand-logo{width:88px;height:88px}
@media(max-width:760px){.brand-logo{width:58px;height:58px}.brand{gap:9px}.brand-ja{font-size:11px}.hero-photo img{object-position:50% 45%}.director figure img{height:440px;width:100%;border-radius:0 45px 0 0}.feature-photo{grid-column:1/-1;margin-bottom:18px;max-height:300px;object-position:center 40%}.flow-photo{margin-bottom:18px}.mascot-guide{gap:15px;padding:14px 18px}.mascot-guide img{width:65px;height:100px}.mascot-guide p{font-size:13px}.mascot-guide br{display:none}.faq>div:first-child{position:relative;padding-right:85px;min-height:110px}.faq-mascot{position:absolute;right:0;top:0;width:70px;height:110px;margin:0}.booking-mascot{width:88px;height:120px}.footer .brand-logo{width:75px;height:75px}}

/* Common clinic information from the traffic accident site */
.director-career{padding:0;list-style:none;margin:25px 0 0}.director-career li{padding:12px 0 12px 18px;border-top:1px solid var(--line);position:relative;font-size:14px}.director-career li:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--orange);position:absolute;top:24px;left:0}.physical-care{background:var(--pale)}.physical-care .sec-head,.gallery .sec-head{margin-bottom:38px}.physical-care .en,.gallery .en{display:block;letter-spacing:.15em;font-size:12px;color:var(--orange);margin-bottom:16px}.physical-care .sec-head p,.gallery .sec-head p{margin-top:20px}.physical-cards{display:grid;gap:32px}.physical-cards article{display:grid;grid-template-columns:1fr 1.15fr;gap:35px;background:white;padding:30px}.physical-photos{display:grid;grid-template-columns:1fr 1fr;align-content:center;gap:12px}.physical-photos img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:3px}.physical-copy{min-width:0}.physical-tag{font-size:13px;color:var(--orange)}.physical-copy h3{font:500 29px/1.7 var(--serif);margin:10px 0 0}.physical-model{font-size:13px;color:#677d89;margin-bottom:20px}.physical-copy p,.physical-copy li{font-size:15px}.physical-copy ul{padding-left:22px;margin:20px 0}.physical-note{font-size:13px!important;color:#5d717d}.physical-equipment{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin:35px auto;max-width:780px}.physical-equipment img{height:260px;object-fit:contain;background:white}.physical-equipment figcaption{font-size:13px;padding-top:10px;text-align:center}.physical-contact{padding:32px;border-top:1px solid var(--line);text-align:center}.physical-contact p{margin:18px 0;font-size:14px}.physical-sources{border-top:1px solid var(--line);padding:20px;font-size:13px}.physical-sources summary{cursor:pointer}.physical-sources a{text-decoration:underline}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.gallery figure img{aspect-ratio:4/3;width:100%;object-fit:cover}.gallery figcaption{font-size:13px;margin-top:10px}.gallery .ph-img{overflow:hidden}.social-section{background:var(--pale);text-align:center}.social-section p:not(.eyebrow){margin:20px 0 28px}.clinic-exterior{margin-bottom:45px}.clinic-exterior img{max-height:420px;object-fit:cover;width:100%;object-position:center}.clinic-exterior figcaption{font-size:13px;margin-top:12px}.phone-link{font-size:22px;color:var(--ink)}.header nav{gap:19px}
@media(max-width:1000px) and (min-width:761px){.header nav{gap:12px;font-size:12px}.nav-book{padding:12px}.brand-ja{font-size:11px}}
@media(max-width:760px){.physical-cards article{grid-template-columns:1fr;gap:22px;padding:20px}.physical-photos img{aspect-ratio:4/3}.physical-copy p,.physical-copy li{font-size:14px}.physical-equipment{gap:15px}.physical-equipment img{height:170px}.physical-contact{padding:25px 0}.physical-contact .button{width:100%;font-size:13px}.physical-care h2{font-size:25px}.physical-care h2 span{display:block}.gallery-grid{grid-template-columns:1fr 1fr;gap:20px 14px}.gallery figcaption{font-size:12px}.clinic-exterior img{max-height:280px}.director-career li{font-size:14px}}

/* Gentle, one-time entrance on scroll; reservation controls stay visible. */
@media (prefers-reduced-motion: no-preference) {
  .reveal-pending { opacity: 0; transform: translateY(24px); }
  .reveal-visible { animation: bright-reveal 800ms cubic-bezier(.22,.61,.36,1) var(--reveal-delay,0ms) both; }
  @keyframes bright-reveal {
    from { opacity: 0; transform: translateY(24px); }
    to { opacity: 1; transform: none; }
  }
  .reveal-visible:focus-within { animation: none; }
}
@media (prefers-reduced-motion: reduce), print {
  .reveal-pending, .reveal-visible { opacity: 1 !important; transform: none !important; animation: none !important; }
}

/* Multi-page clinic navigation */
.header nav a[aria-current=page]{color:var(--orange)}.page-heading{padding-top:45px;padding-bottom:48px}.breadcrumb{font-size:13px;margin-bottom:34px;color:#627784}.page-heading h1{font:500 40px/1.65 var(--serif);margin-bottom:20px}.page-heading>p:last-child{font-size:16px}.page-heading+.section{padding-top:60px}.jump-links{display:flex;gap:14px;flex-wrap:wrap;padding-bottom:35px}.jump-links a{padding:8px 18px;background:var(--pale);font-size:14px;border:1px solid var(--line)}.concern-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px}.concern-card{border:1px solid var(--line);background:white}.concern-card>img{height:245px;object-fit:cover}.concern-card>div{padding:28px}.concern-card h3{font:500 30px/1.6 var(--serif)}.concern-card .eyebrow{margin-bottom:8px;display:block}.concern-card p{font-size:15px;margin:15px 0}.concern-lead{font-weight:600;color:var(--ink)}.concern-card .button{margin-top:10px}.home-intro{background:var(--pale)}.home-intro>.wrap{display:flex;align-items:center;justify-content:center;gap:60px}.home-intro img{width:140px;object-fit:contain;flex-shrink:0}.home-intro p:not(.eyebrow){margin:22px 0;font-size:15px}.home-intro .text-link{margin-left:0}.guide-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:32px}.guide-card{padding:26px 20px;background:var(--pale);border-top:3px solid var(--orange);transition:background .2s}.guide-card:hover{background:#e3edf2}.guide-card .eyebrow{display:block}.guide-card p{font-size:14px;margin-top:13px}.menu-detail{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;border-top:1px solid var(--line)}.menu-detail>img{aspect-ratio:4/3;object-fit:cover;border-radius:0 45px 0 0}.menu-detail p{margin:18px 0}.menu-methods{font-size:14px;color:#5b717e}.detail-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px}.detail-links .button{font-size:13px}.related-links{padding-top:35px;padding-bottom:60px}.related-links p{margin:20px 0}.header nav{gap:16px}.hero h1{font-size:clamp(28px,2.8vw,46px)}.home-guides h3{font-size:19px}
@media(max-width:1100px){.guide-grid{grid-template-columns:1fr 1fr}.header nav{gap:10px;font-size:12px}.header .nav-book{padding:12px}.hero h1{font-size:31px}}
@media(max-width:760px){.header nav{font-size:14px}.page-heading{padding-top:25px;padding-bottom:35px}.page-heading h1{font-size:30px}.breadcrumb{font-size:12px;margin-bottom:25px}.concern-grid{grid-template-columns:1fr;gap:24px}.concern-card>img{height:210px}.concern-card>div{padding:24px}.concern-card h3{font-size:27px}.concern-card .button{width:100%}.home-intro>.wrap{gap:20px;align-items:flex-start}.home-intro img{width:70px;margin-top:40px}.home-intro h2{font-size:23px}.home-intro p:not(.eyebrow){font-size:14px}.home-intro br{display:none}.guide-grid{gap:12px}.guide-card{padding:20px 15px}.guide-card h3{font-size:17px}.guide-card p{font-size:13px}.menu-detail{grid-template-columns:1fr;gap:28px}.menu-detail>img{max-height:300px}.hero h1{font-size:clamp(28px,7vw,38px)}.detail-links{flex-direction:column}.jump-links{gap:10px}.jump-links a{font-size:13px;padding:7px 12px}}

/* A softer, welcoming clinic identity across every page. */
:root {
  --ink:#305b70;
  --navy:#37667a;
  --orange:#b95823;
  --text:#465f69;
  --pale:#f0f7f9;
  --line:#dce9ec;
  --serif:"Hiragino Maru Gothic ProN","Yu Gothic",Meiryo,sans-serif;
  --sans:"Hiragino Maru Gothic ProN","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;
}
body{background:#fffefa;line-height:2}
h1,h2,h3{font-weight:600;letter-spacing:.035em}
.header{background:#fffefbf5;border-bottom:0;box-shadow:0 4px 24px #42677a08}
.header nav a:not(.nav-book){border-radius:12px}
.brand-ja{letter-spacing:.04em}
.nav-book,.button,.jump-links a{border-radius:999px}
.nav-book{background:#ffdfc3;color:#754527}
.nav-book:hover{background:#ffd2ab;color:#653718}
.button{padding:15px 28px;letter-spacing:.02em;font-size:15px}
.orange{background:#b95b2a;color:white;box-shadow:0 5px 15px #a9672815}
.orange:hover{background:#a14c22}
.outline{border-color:#bbd3de;background:#f8fcfd;color:var(--ink)}
.outline:hover{background:#e4f0f5;color:#264d60}
.eyebrow,.physical-tag,.menu-label{letter-spacing:.1em}
.hero{background:linear-gradient(120deg,#fff8ee 0%,#fffefa 50%,#eef7fa 100%);border-radius:0 0 45px 45px;padding-bottom:30px}
.hero-copy{padding-top:62px;padding-bottom:50px}
.hero h1{font-weight:600;line-height:1.8;letter-spacing:.01em}
.hero h1 span{text-decoration:none;background:linear-gradient(transparent 72%,#ffe1bf 72%,#ffe1bf 96%,transparent 96%);box-decoration-break:clone;-webkit-box-decoration-break:clone}
.hero-photo{border-radius:36px;margin:28px 28px 28px 15px;min-height:520px;box-shadow:0 12px 35px #43627312}
.hero-photo img{border-radius:36px}
.hero-photo figcaption{letter-spacing:.04em;font-size:18px}
.hero-index{display:none}
.hero-description{font-size:16px;line-height:2.1}
.benefits{max-width:1160px;margin:24px auto 0;background:#eaf4f8;color:#4b6774;border-radius:26px;padding:24px 30px}
.benefits b{color:var(--ink);font-weight:600}
.benefits span+span{border-color:#cedfe7}
.section{padding-top:82px;padding-bottom:82px}
.concern-card,.guide-card,.physical-cards article,.hours,.care{border:1px solid #e5edef;border-radius:28px;box-shadow:0 8px 25px #41657a07}
.concern-card{padding:14px;background:#fff}
.concern-card>img{border-radius:21px}
.concern-card>div{padding:22px 15px 18px}
.concern-card h3{font-weight:600}
.concern-card .eyebrow{display:inline-block;border-radius:999px;background:#fff1e1;padding:3px 12px;color:#965321}
.concern-card:nth-child(2) .eyebrow,.concern-card:nth-child(3) .eyebrow{background:#edf5fa;color:#366177}
.guide-card{background:white;border-top:1px solid #e5edef;padding:27px 23px}
.guide-card:hover{background:#f1f8fb;border-color:#bad8e3}
.home-intro,.director,.care-section,.access-section,.physical-care,.social-section{background:#f0f7f9}
.home-intro{border-radius:45px;margin:0 24px;background:#fff3e5}
.home-intro img{border-radius:28px;background:white;padding:8px}
.home-intro .text-link{text-decoration-color:#cc9c69}
.feature-photo,.flow-photo,.price-image img,.menu-detail>img,.director figure img,.gallery figure img,.gallery .ph-img,.physical-photos img,.physical-equipment img,.clinic-exterior img{border-radius:26px}
.director figure img{border-radius:30px;background:#ece4de}
.physical-photos img{border-radius:20px}
.physical-cards article{padding:28px}
.physical-equipment figure{background:white;padding:14px;border-radius:26px}
.physical-equipment figcaption{padding-bottom:10px}
.gallery figure{padding:12px;background:white;border:1px solid #e5edef;border-radius:28px}
.gallery .ph-img,.gallery figure img{border-radius:18px}
.gallery figcaption{padding:2px 6px 8px}
.flow-section{background:#eaf4f8;color:var(--text)}
.flow-section h2,.flow-section h3{color:var(--ink)}
.flow li{border:0;background:#fff;padding:16px 16px 24px;border-radius:26px;box-shadow:0 6px 20px #41657a06}
.flow-photo{border-radius:17px}
.flow span{color:#b36630}
.faq-list details{background:white;border:1px solid #e0ebef;border-radius:20px;margin-bottom:12px;padding:0 20px}
.faq-list details:first-child{border-top:1px solid #e0ebef}
.faq-list summary{padding:21px 0}
.faq-list p{padding-bottom:20px}
.hours-tags span{border-radius:999px;padding:5px 12px}
.price-row{border-top:1px solid #e0eaee}
.menu-detail{border-top:0}
.menu-detail+.menu-detail{border-top:1px solid #e7eef0}
.signature{border-color:#d6e6ec}
.reservation{background:#edf6fa;color:var(--text);border-radius:50px 50px 0 0;padding:65px 0}
.reservation h2{color:var(--ink);font-weight:600}
.reservation small{color:#536e7b}
.reservation .white{background:#fff;color:var(--ink);border:1px solid #cfdee6}
.booking-mascot{border-radius:40px;box-shadow:0 6px 20px #5474850a}
.footer{background:#fffefa}
.accent-line{border-radius:6px;background:#edb77c}
.page-heading{background:linear-gradient(130deg,#fff7eb,#f0f8fb);border-radius:0 0 35px 35px;margin-bottom:25px}
.page-heading h1{font-weight:600}
@media(max-width:760px){
 .section{padding-top:58px;padding-bottom:58px}
 .hero{border-radius:0 0 30px 30px}
 .hero-copy{padding:32px 25px 25px}
 .hero-photo{margin:0 20px 20px;min-height:0;height:310px;border-radius:26px}
 .hero-photo img{border-radius:26px}
 .hero-photo figcaption{font-size:15px}
 .hero-description{font-size:15px}
 .benefits{margin:18px 16px 0;padding:20px 8px;border-radius:22px;gap:0}
 .benefits span{font-size:10px}
 .benefits b{font-size:12px}
 .concern-card{padding:11px;border-radius:25px}
 .concern-card>img{border-radius:18px}
 .concern-card>div{padding:20px 12px 14px}
 .home-intro{margin:0 12px;border-radius:28px}
 .home-intro>.wrap{padding-left:20px;padding-right:20px}
 .home-intro img{border-radius:20px;padding:4px}
 .guide-card{border-radius:21px;padding:23px 16px}
 .menu-detail>img,.director figure img,.feature-photo,.price-image img,.clinic-exterior img{border-radius:24px}
 .physical-cards article{padding:19px;border-radius:25px}
 .physical-photos img{border-radius:16px}
 .gallery figure{padding:8px;border-radius:20px}
 .gallery figure img,.gallery .ph-img{border-radius:14px}
 .physical-equipment figure{padding:9px;border-radius:20px}
 .flow{gap:18px 13px}
 .flow li{padding:12px 12px 20px;border-radius:22px}
 .flow-photo{border-radius:14px}
 .reservation{border-radius:32px 32px 0 0;padding:55px 0}
 .mobile-book{padding:8px 10px calc(8px + env(safe-area-inset-bottom));gap:8px;background:#fffefbf5}
 .mobile-book a{border-radius:999px;padding:12px 7px;background:#3c7188}
 .mobile-book a+a{background:#b95b2a}
 .header nav{border-radius:0 0 25px 25px}
}

/* Detailed menu and transparent regular pricing. */
.menu-choice{padding-top:24px;padding-bottom:35px}.menu-choice>p{font-weight:600;margin-bottom:10px}.menu-choice .jump-links{padding:0;margin:0 0 12px}.menu-choice small{font-size:13px}.menu-group-heading{padding-top:45px}.treatment-detail{align-items:start;gap:48px}.treatment-detail>img{aspect-ratio:4/3;object-fit:cover;width:100%;height:auto}.treatment-detail p+p{margin-top:16px}.treatment-price{font-size:30px;font-weight:600;color:var(--orange);margin:10px 0 18px!important}.treatment-price span{font-size:16px;margin-left:5px}.included-note{display:inline-block;background:#fff0dd;color:#805027;border-radius:20px;padding:5px 16px;margin:0 0 15px!important;font-weight:600}.menu-options{background:#eef6f8;border-radius:40px}.option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px;margin-top:35px;align-items:start}.option-card{background:white;border-radius:28px;padding:12px;overflow:hidden;border:1px solid #dfeaec}.option-card>img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:19px}.option-body{padding:20px}.option-body h3{font-size:21px}.option-price{color:var(--orange);margin:8px 0 16px}.option-body .text-link{display:inline-block;margin-top:18px}.menu-price-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin:30px 0}.menu-price-list{margin:18px 0}.menu-price-list>div{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:17px 0;border-bottom:1px solid var(--line)}.menu-price-list dd{white-space:nowrap;margin:0;color:var(--orange);font-weight:600}.menu-price-list small{display:block;font-size:12px}.first-fee{background:#fff2e4;border-radius:25px;padding:28px 32px;margin:25px 0}.first-fee ul{padding-left:1.4em;margin:15px 0}.first-fee li+li{margin-top:8px}.first-fee .fine{margin-bottom:0}@media(max-width:760px){.treatment-detail{gap:25px}.menu-group-heading{padding-top:25px}.option-grid,.menu-price-grid{grid-template-columns:1fr;gap:20px}.menu-options{border-radius:27px}.option-body{padding:15px}.first-fee{padding:22px}.menu-price-list dt{font-size:14px}.menu-price-list dd{font-size:15px}.treatment-detail h2{font-size:26px}.menu-choice{padding-bottom:10px}}

/* User-selected photos for each treatment, in supplied order. */
.menu-photo-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;min-width:0;align-self:start}.menu-photo-gallery img{display:block;width:100%;height:auto;border-radius:24px;object-fit:cover}.menu-photo-gallery.photos-1 img,.menu-photo-gallery.photos-2 img,.menu-photo-gallery.photos-3 img:first-child{grid-column:1/-1}.menu-photo-gallery.photos-3 img:not(:first-child){aspect-ratio:4/3}@media(max-width:760px){.menu-photo-gallery{gap:12px}.menu-photo-gallery img{border-radius:20px}}

.concern-card>img.concern-illustration{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;background:#fffdf5}

/* Symptom guides, with soft illustrations and a clear consultation-first flow. */
.symptom-section,.symptom-consult{background:#f0f7f9;border-radius:36px}.symptom-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;margin-top:32px}.symptom-card{display:flex;flex-direction:column;align-items:center;text-align:center;padding:12px 12px 18px;border-radius:25px;background:#fff;border:1px solid #dce9ec;text-decoration:none;transition:transform .2s,box-shadow .2s}.symptom-card:hover,.symptom-card:focus-visible{transform:translateY(-4px);box-shadow:0 8px 22px #305b7018}.symptom-card img{width:100%;aspect-ratio:4/3;object-fit:contain;border-radius:17px}.symptom-card span{font-weight:600;color:var(--ink);font-size:16px;margin:12px 0 4px}.symptom-card small{font-size:14px;color:#85502d}.symptom-card[aria-current=page]{border:2px solid #b95823}.symptom-guide{display:flex;gap:25px;align-items:center;max-width:800px;margin:35px auto 0;background:#fff7eb;border-radius:28px;padding:20px 30px}.symptom-guide img{width:100px;height:150px;object-fit:contain;border-radius:20px;flex-shrink:0}.symptom-guide p{margin:0}.symptom-hero{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:35px;padding-top:45px;padding-bottom:45px}.symptom-hero>img{width:100%;border-radius:32px}.symptom-hero h1{font-size:clamp(28px,3vw,46px);line-height:1.5}.symptom-lead{font-size:21px;color:var(--ink);margin:18px 0}.symptom-hero .button{margin-top:20px}.symptom-copy{max-width:950px}.symptom-copy h3{margin:25px 0 12px}.symptom-examples{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;list-style:none;padding:0;margin:30px 0}.symptom-examples li{background:#fff2e4;border-radius:20px;padding:22px;font-weight:600}.symptom-medical{border-left:4px solid #b97b45;background:#fff8f0;border-radius:0 20px 20px 0;padding:20px 25px;margin-top:40px}.symptom-medical h3{margin-top:0}.symptom-medical p{font-size:15px}.symptom-consult .menu-detail{padding-top:0;padding-bottom:0}.symptom-consult img{width:100%;height:auto}.mobile-only{display:none}.header nav{gap:16px}@media(max-width:1000px){.symptom-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.symptom-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.symptom-card{padding:8px 8px 15px;border-radius:20px}.symptom-card span{font-size:15px}.symptom-hero{grid-template-columns:1fr;gap:25px;padding-top:28px}.symptom-hero>img{max-width:450px;margin:auto}.symptom-examples{grid-template-columns:1fr;gap:10px}.symptom-examples li{padding:17px 20px}.symptom-guide{padding:18px;gap:15px}.symptom-guide img{width:70px;height:110px}.symptom-guide p{font-size:15px}.symptom-section,.symptom-consult{border-radius:25px}.mobile-only{display:block}}

/* Full-width, slow dissolve opening with two vertical lines. */
.cinema-hero{position:relative;isolation:isolate;height:calc(100svh - 92px);min-height:620px;max-height:980px;overflow:hidden;background:#334744;border-radius:0 0 36px 36px;color:#fff}.cinema-slides,.cinema-shade{position:absolute;inset:0}.cinema-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--focus,center);opacity:0;transition:opacity 2.8s ease-in-out}.cinema-slide.is-active{opacity:1}.cinema-shade{background:linear-gradient(90deg,#142b3020 0%,#132a3030 42%,#14272c75 100%),linear-gradient(0deg,#122b35d9,transparent 42%);z-index:1}.cinema-copy{position:absolute;z-index:2;right:12%;top:9%;display:flex;flex-direction:row-reverse;gap:26px;align-items:flex-start}.cinema-kicker{writing-mode:vertical-rl;font-size:12px;letter-spacing:.24em;margin:5px 0 0;color:#fff9ed}.cinema-title{display:flex;flex-direction:row-reverse;align-items:flex-start;gap:25px;color:#fff!important;margin:0;font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;font-weight:500!important;font-size:clamp(30px,min(3.3vw,5svh),54px);line-height:1.5;letter-spacing:.16em;text-shadow:0 2px 18px #14273188}.cinema-title span{writing-mode:vertical-rl;text-orientation:mixed;white-space:nowrap}.cinema-title span+span{margin-top:54px}.cinema-bottom{position:absolute;z-index:2;bottom:36px;left:5%;right:5%;display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.cinema-intro p{font-size:20px;letter-spacing:.12em;margin:0 0 5px}.cinema-intro small{display:block;font-size:14px;letter-spacing:.07em}.cinema-intro a{display:inline-block;margin-top:18px;border-bottom:1px solid #ffffff9c;padding-bottom:5px;color:white;font-size:14px;text-decoration:none}.cinema-controls{display:flex;align-items:center;gap:22px}.cinema-controls[hidden]{display:none}.cinema-count{font-size:20px;font-variant-numeric:tabular-nums;letter-spacing:.1em}.cinema-count span{font-size:13px;opacity:.8}.cinema-pause{font:inherit;font-size:12px;background:#172f3b80;color:white;border:1px solid #ffffff80;border-radius:999px;min-height:44px;padding:8px 17px;cursor:pointer}.cinema-pause:hover{background:#173342}.cinema-pause:focus-visible,.cinema-intro a:focus-visible{outline:2px solid white;outline-offset:5px}@media(max-width:760px){.cinema-hero{height:calc(100svh - 75px);min-height:600px;max-height:850px;border-radius:0 0 26px 26px}.cinema-copy{right:8%;top:7%;gap:12px}.cinema-title{font-size:clamp(29px,7.5vw,38px);gap:16px;letter-spacing:.13em}.cinema-title span+span{margin-top:38px}.cinema-kicker{font-size:10px}.cinema-bottom{left:24px;right:24px;bottom:27px;align-items:flex-start}.cinema-intro p{font-size:16px}.cinema-intro small{font-size:12px;max-width:210px}.cinema-controls{flex-direction:column;gap:8px;align-items:flex-end}.cinema-count{font-size:16px}.cinema-pause{padding:7px 12px}.cinema-shade{background:linear-gradient(90deg,#122c3520,#172c355e),linear-gradient(0deg,#122b35e8,transparent 65%)}}@media(prefers-reduced-motion:reduce){.cinema-slide{transition:none}}

/* The hero contains only the two-line headline; mobile preserves photo framing. */
.cinema-copy{right:10%}.cinema-shade{background:linear-gradient(90deg,#142b3008 30%,#14272c65 100%)}
@media(max-width:760px){.cinema-hero{height:auto;min-height:0;max-height:none;aspect-ratio:4/3}.cinema-slide{object-position:var(--mobile-focus,center)}.cinema-copy{right:6%;top:6%;gap:0}.cinema-title{font-size:clamp(20px,5.6vw,36px);line-height:1.35;letter-spacing:.1em;gap:14px;text-shadow:0 1px 10px #142731b0}.cinema-title span+span{margin-top:20px}.cinema-shade{background:linear-gradient(90deg,#142b3008 25%,#14272c75 100%)}}

/* Fixed brand backdrop glimpsed between the scrolling content surfaces. */
.logo-backdrop-home{isolation:isolate;background:#eef5f6}.scroll-logo-backdrop{position:fixed;inset:0;z-index:-1;display:flex;align-items:center;justify-content:center;pointer-events:none;overflow:hidden}.scroll-logo-backdrop img{width:min(65vw,690px);height:auto;opacity:.3;transform:translate(12%,5%)}.logo-backdrop-home main{position:relative}.logo-backdrop-home #concerns,.logo-backdrop-home .home-guides{background:#fffefa;border-radius:32px}.logo-backdrop-home .symptom-section{background:transparent}.logo-backdrop-home .logo-window{height:130px;background:transparent}.logo-backdrop-home .benefits{position:relative}.logo-backdrop-home .footer{background:#fffefa}.logo-backdrop-home .home-intro{position:relative}@media(max-width:760px){.scroll-logo-backdrop img{width:100vw;max-width:530px;opacity:.3;transform:translate(0,5%)}.logo-backdrop-home .logo-window{height:95px}.logo-backdrop-home #concerns,.logo-backdrop-home .home-guides{border-radius:25px}}

/* Transparent director character, with more presence and no white frame. */
.home-intro img{width:240px;padding:0;background:transparent;border-radius:0;margin-top:0}.booking-mascot{width:190px;height:250px;background:transparent;border-radius:0;padding:0;box-shadow:none}.symptom-guide img{width:165px;height:220px;background:transparent;border-radius:0}.faq-mascot{width:200px;height:260px}.mascot-guide img{background:transparent;border-radius:0}@media(max-width:760px){.home-intro>.wrap{align-items:center;gap:12px}.home-intro img{width:115px;margin-top:0}.booking-mascot{width:155px;height:210px}.symptom-guide{gap:12px}.symptom-guide img{width:105px;height:155px}.faq-mascot{width:150px;height:200px}}@media(max-width:360px){.home-intro img{width:95px}.symptom-guide img{width:90px;height:140px}}

/* Consultation and explanation: a calm, paired photo story. */
.consultation-photos{display:grid;gap:20px;align-self:center;min-width:0}.consultation-photos figure{margin:0}.consultation-photos img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;object-position:center;border-radius:26px}.consultation-photos figcaption{font-size:13px;line-height:1.7;color:#526c76;padding:9px 5px 0}.consultation-photos figure:nth-child(2) img{aspect-ratio:16/9}@media(max-width:760px){.consultation-photos{gap:17px}.consultation-photos img{border-radius:22px}.consultation-photos figcaption{font-size:12px}}

/* Three audience entrances and the everyday-care specialty page. */
.audience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.audience-card{display:flex;flex-direction:column;color:var(--ink);text-decoration:none;overflow:hidden;transition:transform .25s,box-shadow .25s}.audience-card:hover{transform:translateY(-5px);box-shadow:0 16px 35px #41657a15}.audience-card:focus-visible{outline:3px solid var(--orange);outline-offset:5px}.audience-card .audience-visual{height:225px;padding:0;border-radius:21px;overflow:hidden;background:#fffdf5;display:flex;align-items:center;justify-content:center}.audience-visual img{width:100%;height:100%;object-fit:contain}.everyday-visual{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;align-content:center}.everyday-visual img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;object-position:center}.sports-visual img{object-fit:cover}.audience-card .audience-copy{display:flex;flex-direction:column;flex:1;padding:25px 15px 18px}.audience-card h3{font-family:var(--sans);font-size:23px;line-height:1.7}.audience-card p{font-size:16px;line-height:1.9}.audience-card .audience-cta{display:block;margin-top:auto;padding:13px 14px;border:1px solid var(--line);border-radius:999px;text-align:center;font-size:14px;font-weight:600}.common-guides .guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.care-landing-hero{display:grid;grid-template-columns:1.15fr 1fr;gap:48px;align-items:center;padding-top:48px;padding-bottom:72px}.care-landing-hero h1{font-family:var(--serif);font-size:clamp(28px,3.2vw,43px);line-height:1.8;font-weight:500;letter-spacing:.03em}.care-landing-hero p{font-size:16px;line-height:2}.care-hero-lead{font-weight:600;margin:20px 0}.care-landing-hero figure{margin:0}.care-landing-hero figure img{display:block;width:100%;border-radius:28px;aspect-ratio:4/3;object-fit:cover}.care-landing-hero figcaption{font-size:14px;color:#526c76;padding-top:12px}.care-hero-links{display:flex;gap:14px;flex-wrap:wrap;margin-top:25px}.care-menu-heading>p:not(.eyebrow){margin:22px 0}.care-menu-heading .jump-links{padding-bottom:10px}.care-menu-heading .text-link{margin:12px 0 0}@media(max-width:1000px){.audience-grid{grid-template-columns:1fr;gap:22px}.audience-card{display:grid;grid-template-columns:35% 1fr;gap:10px}.audience-card .audience-visual{height:100%;min-height:230px}.audience-card .audience-copy{padding:20px}.audience-card h3{font-size:23px}.care-landing-hero{gap:28px}}@media(max-width:760px){.audience-card{display:flex}.audience-card .audience-visual{height:210px;min-height:0;width:100%}.audience-card .audience-copy{padding:20px 12px 14px}.audience-card h3{font-size:22px}.everyday-visual img{height:210px;aspect-ratio:auto;object-fit:contain}.care-landing-hero{grid-template-columns:1fr;padding-top:28px;padding-bottom:45px;gap:30px}.care-landing-hero h1{font-size:28px}.care-landing-hero figure img{border-radius:23px}.care-hero-links{flex-direction:column}.care-hero-links .button{width:100%;text-align:center}.common-guides .guide-grid{grid-template-columns:1fr;gap:15px}.common-guides .guide-card p{font-size:14px}}@media(prefers-reduced-motion:reduce){.audience-card{transition:none}.audience-card:hover{transform:none}}

/* Athlete specialty: deep blue, warm accents, rounded clinic photography. */
.sports-hero{background:#173e53;color:#fff;border-radius:0 0 40px 40px;padding:44px 0 60px}.sports-hero-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center}.sports-hero h1{color:white;font-size:clamp(30px,3.5vw,48px);line-height:1.7;letter-spacing:.03em}.sports-hero .eyebrow{color:#ffbd7e}.sports-hero .breadcrumb{color:#cfe0e8;font-size:14px}.sports-hero .breadcrumb a{color:white}.sports-hero p{font-size:16px;line-height:2}.sports-hero .sports-lead{font-size:19px;font-weight:600;margin:22px 0}.sports-hero figure{margin:0}.sports-hero figure img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:28px;display:block}.sports-hero figcaption{font-size:14px;margin-top:14px;color:#e5eff4}.sports-jump{display:flex;gap:12px;flex-wrap:wrap;padding-top:28px;padding-bottom:12px}.sports-jump a{font-size:14px;padding:10px 18px;border:1px solid var(--line);border-radius:999px;background:white}.sports-concerns{list-style:none;padding:0;margin:32px 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.sports-concerns li{padding:22px;background:#eff5f7;border-left:3px solid var(--orange);border-radius:0 20px 20px 0;font-weight:600;font-size:16px}.sports-soft{background:#eff5f7;border-radius:36px}.sports-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin-top:36px}.sports-flow img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:24px}.sports-flow h3{font-size:21px;margin:12px 0}.sports-flow p{font-size:16px;line-height:1.95}.sports-step{display:inline-block;margin-top:20px;font-size:15px;font-weight:700;color:var(--orange)}.sports-support-note{background:#fff7e9;padding:26px 30px;border-radius:24px;margin-top:30px}.sports-support-note p{font-size:16px;margin:10px 0 0}.sports-types{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:30px}.sports-types article{border:1px solid var(--line);padding:28px;border-radius:26px}.sports-types h3{font-size:22px;margin:8px 0 18px}.sports-subhead{margin:42px 0 20px;font-size:22px}.sports-body-list{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:16px}.sports-body-list details{border:1px solid var(--line);border-radius:22px;overflow:hidden;background:white}.sports-body-list summary{cursor:pointer;padding:22px 26px;font-size:21px;font-weight:600}.sports-body-list summary small{display:block;font-size:14px;font-weight:400;color:#526c76;margin-top:8px}.sports-body-content{padding:0 24px 26px}.sports-body-content img{width:100%;max-height:280px;object-fit:cover;border-radius:18px}.sports-body-content p{margin:20px 0;font-size:16px}.sports-body-content .text-link{margin-left:0}.sports-performance{background:#eaf2f6;border-radius:36px}.sports-performance-heading{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end}.sports-performance-heading>p{font-size:17px;line-height:2}.sports-pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:36px}.sports-pillars article{padding:28px;border-radius:25px;background:white}.sports-pillars span{font-size:28px;color:#b95823}.sports-pillars h3{font-size:21px;margin:14px 0}.sports-pillars p{font-size:16px}.sports-trainer{display:flex;gap:35px;align-items:center;margin-top:45px}.sports-trainer>img{width:150px;height:220px;object-fit:contain;flex-shrink:0}.sports-trainer h3{font-size:23px;margin-bottom:15px}.sports-trainer p{font-size:16px}.sports-trainer .text-link{margin-left:0}.sports-fees{padding-bottom:50px}.sports-fees .first-fee{margin-top:0}.sports-aid-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:30px 0}.sports-aid-grid article{padding:24px;background:#eff5f7;border-radius:24px}.sports-aid-grid span{font-size:32px;color:#b95823;font-weight:700}.sports-aid-grid h3{font-size:20px;margin:12px 0}.sports-aid-grid p{font-size:16px}.sports-page .fine{font-size:14px}.sports-jump a:focus-visible,.sports-body-list summary:focus-visible{outline:3px solid var(--orange);outline-offset:3px}@media(max-width:1000px){.sports-hero-grid{gap:28px}.sports-concerns{grid-template-columns:1fr 1fr}.sports-flow{gap:18px}.sports-aid-grid{grid-template-columns:1fr 1fr}}@media(max-width:760px){.sports-hero{padding:25px 0 38px;border-radius:0 0 28px 28px}.sports-hero-grid,.sports-flow,.sports-types,.sports-body-list,.sports-performance-heading,.sports-pillars{grid-template-columns:1fr}.sports-hero h1{font-size:30px}.sports-hero .sports-lead{font-size:17px}.sports-hero .sports-lead br{display:none}.sports-hero figure img{border-radius:23px}.sports-concerns{grid-template-columns:1fr;gap:12px}.sports-flow{gap:32px}.sports-support-note{padding:22px}.sports-types article{padding:24px}.sports-performance-heading{gap:16px}.sports-trainer{gap:18px;align-items:flex-start}.sports-trainer>img{width:85px;height:145px;margin-top:15px}.sports-trainer h3{font-size:21px}.sports-trainer .eyebrow{font-size:12px}.sports-aid-grid{grid-template-columns:1fr;gap:14px}.sports-aid-grid article{padding:22px}.sports-soft,.sports-performance{border-radius:26px}.sports-jump{gap:9px}.sports-jump a{font-size:14px;padding:8px 13px}}

/* Fixed transparent brand mark, revealed between content surfaces on every page. */
.logo-backdrop-all{isolation:isolate;background:#eef5f6}.logo-backdrop-all main{position:relative}.logo-backdrop-all .scroll-logo-backdrop{position:fixed;inset:0;z-index:-1;display:flex;align-items:center;justify-content:center;pointer-events:none;overflow:hidden}.logo-backdrop-all .scroll-logo-backdrop img{width:min(68vw,720px);height:auto;opacity:.24;transform:translate(10%,5%)}.logo-backdrop-all .logo-window{height:110px;background:transparent;pointer-events:none}.logo-backdrop-all main>section{background-color:#fffefa;border-radius:32px}.logo-backdrop-all main>nav{background:#fffefa;border-radius:24px}.logo-backdrop-all main>.cinema-hero{background-color:#334744;border-radius:0 0 36px 36px}.logo-backdrop-all main>.sports-hero{background-color:#173e53;border-radius:0 0 40px 40px}.logo-backdrop-all main>.symptom-consult,.logo-backdrop-all main>.sports-soft{background-color:#eff5f7}.logo-backdrop-all main>.sports-performance{background-color:#eaf2f6}.logo-backdrop-all main>.menu-options,.logo-backdrop-all main>.home-intro{background-color:var(--pale)}.logo-backdrop-all main>.reservation{background-color:#edf6fa;border-radius:32px 32px 0 0}.logo-backdrop-all .footer{background:#fffefa}.logo-backdrop-all main>.sports-fees{padding-top:32px}@media(max-width:760px){.logo-backdrop-all .scroll-logo-backdrop img{width:100vw;max-width:550px;opacity:.24;transform:translate(0,4%)}.logo-backdrop-all .logo-window{height:78px}.logo-backdrop-all main>section{border-radius:25px}.logo-backdrop-all main>.cinema-hero,.logo-backdrop-all main>.sports-hero{border-radius:0 0 26px 26px}.logo-backdrop-all main>.reservation{border-radius:25px 25px 0 0}}

/* Sports page: combination therapy callout */
.sports-combo{margin:34px 0 12px;padding:30px 34px;background:#fff8ed;border:1px solid #f0dfcc;border-radius:28px}
.sports-combo .eyebrow{font-size:12px;letter-spacing:.14em;color:var(--orange);margin:0 0 8px}
.sports-combo h3{font:500 26px/1.55 var(--serif);margin:0 0 14px;color:var(--ink)}
.sports-combo h3 span{color:var(--orange)}
.sports-combo p:not(.eyebrow){font-size:15px;margin:10px 0;max-width:820px}
@media(max-width:760px){.sports-combo{padding:23px 20px;border-radius:24px}.sports-combo h3{font-size:22px}.sports-combo p:not(.eyebrow){font-size:14px}}
.sports-combo-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:30px;align-items:center}
.sports-combo-photo{margin:0;min-width:0}
.sports-combo-photo img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;object-position:center;border-radius:22px}
.sports-combo-photo figcaption{margin-top:9px;font-size:12px;color:#697c84}
.sports-combo-copy{min-width:0}
@media(max-width:760px){.sports-combo-layout{grid-template-columns:1fr;gap:20px}.sports-combo-photo img{aspect-ratio:4/3}.sports-combo-copy h3{font-size:22px}}

/* RICE first-aid character illustrations */
.rice-card-art{position:relative;padding-top:22px;margin-bottom:8px}
.rice-card-art>span{position:absolute;top:0;left:0;line-height:1}
.rice-illustration{display:block;width:100%;height:180px;object-fit:contain;margin:auto}
.rice-card-copy{min-width:0}
@media(max-width:760px){.sports-aid-grid article{display:grid;grid-template-columns:130px minmax(0,1fr);gap:18px;align-items:center}.rice-card-art{margin-bottom:0;padding-top:24px}.rice-illustration{height:155px}.rice-card-copy h3{margin-top:0}.rice-card-copy p{font-size:15px}}
@media(max-width:400px){.sports-aid-grid article{grid-template-columns:105px minmax(0,1fr);padding:18px;gap:14px}.rice-illustration{height:140px}.rice-card-copy h3{font-size:18px}}

/* Specialty entrances share the home's quiet photo dissolve. */
.specialty-cinema .cinema-slide{transition-duration:3.6s}
.specialty-intro{padding-top:48px;padding-bottom:54px}
.specialty-intro-copy{max-width:900px;margin:auto}
.specialty-intro h2{font-family:var(--serif);font-size:clamp(27px,3vw,40px);line-height:1.8;letter-spacing:.03em;margin:12px 0 20px}
.specialty-intro p{font-size:16px;line-height:2}
.specialty-intro .breadcrumb{font-size:13px;margin-bottom:20px}
.specialty-intro .eyebrow{font-size:12px;color:var(--orange)}
.specialty-intro .sports-lead{font-weight:600;margin:20px 0}
@media(max-width:760px){.specialty-cinema .cinema-title{font-size:clamp(16px,4.8vw,28px);letter-spacing:.08em}.specialty-intro{padding-top:32px;padding-bottom:40px}.specialty-intro h2{font-size:26px}.specialty-intro p{font-size:15px}.specialty-intro .breadcrumb{font-size:12px}.specialty-intro .sports-lead br{display:none}}
@media(prefers-reduced-motion:reduce){.specialty-cinema .cinema-slide{transition:none}}

/* Athlete page: sport-specific taping option */
.sports-taping-section{padding-top:30px;padding-bottom:40px}
.sports-taping-section h2{margin:8px 0 22px}
.sports-taping-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:center;background:#fffefa;border:1px solid var(--line);border-radius:30px;padding:18px;box-shadow:0 12px 36px rgba(48,75,81,.06)}
.sports-taping-card>img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;object-position:center;border-radius:22px}
.sports-taping-copy{padding:18px 24px}
.sports-taping-copy p{font-size:16px;line-height:1.95}
.sports-taping-copy .sports-taping-price{font-size:21px;font-weight:600;margin:0 0 14px}
.sports-taping-price strong{font-size:28px;color:var(--orange);margin-left:10px;white-space:nowrap}
.sports-taping-copy .fine{font-size:13px;color:#526c76;margin-top:12px}
@media(max-width:760px){.sports-taping-section{padding-top:18px;padding-bottom:28px}.sports-taping-card{grid-template-columns:1fr;gap:8px;border-radius:24px;padding:12px}.sports-taping-card>img{border-radius:18px;aspect-ratio:4/3}.sports-taping-copy{padding:12px 8px 10px}.sports-taping-copy p{font-size:15px}.sports-taping-copy .sports-taping-price{font-size:19px}.sports-taping-price strong{font-size:25px}}

/* Athlete injury guide: body-area index and readable condition accordions */
.sports-injury-guide{scroll-margin-top:24px}
.sports-injury-heading{max-width:900px;margin:0 auto 34px}
.sports-injury-heading h2{font-size:clamp(30px,4vw,44px);line-height:1.5;margin:10px 0 20px;color:#173e53}
.sports-injury-heading p{font-size:16px;line-height:2;margin:12px 0}
.sports-condition-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:34px 0 42px;padding:22px;background:#eff5f7;border-radius:26px}
.sports-condition-nav a{display:flex;align-items:center;min-height:48px;padding:10px 16px;border:1px solid #d6e4e9;border-radius:14px;background:#fff;color:#173e53;font-weight:600;font-size:15px;line-height:1.5;text-decoration:none;transition:background .2s,border-color .2s,transform .2s}
.sports-condition-nav a:hover{background:#fff2e4;border-color:#e87e42;transform:translateY(-1px)}
.sports-condition-groups{display:grid;gap:28px}
.sports-condition-group{scroll-margin-top:28px;padding:28px;background:#fffefa;border:1px solid #e1e9eb;border-radius:30px;box-shadow:0 10px 30px rgba(23,62,83,.045)}
.sports-condition-group-heading{display:flex;align-items:center;gap:14px;margin:0 0 18px;padding-bottom:16px;border-bottom:1px solid #e5edef}
.sports-condition-mark{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:50%;background:#e8753e;color:white;font-size:14px;font-weight:700}
.sports-condition-group-heading h3{flex:1;margin:0;color:#173e53;font-size:clamp(21px,2.5vw,27px);line-height:1.5}
.sports-condition-group-heading>a{font-size:14px;color:#245a78;text-underline-offset:3px;white-space:nowrap}
.sports-condition-list{display:grid;gap:12px}
.sports-condition{border:1px solid #dbe7eb;border-radius:18px;background:white;overflow:hidden}
.sports-condition>summary{position:relative;cursor:pointer;list-style:none;padding:19px 56px 19px 22px;color:#173e53;font-size:19px;font-weight:700;line-height:1.6}
.sports-condition>summary::-webkit-details-marker{display:none}
.sports-condition>summary::after{content:'＋';position:absolute;right:21px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#fff2e4;color:#bf5b28;font-size:17px;font-weight:500}
.sports-condition[open]>summary{background:#f5f9fa}
.sports-condition[open]>summary::after{content:'−'}
.sports-condition-content{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding:4px 22px 23px}
.sports-condition-content section{padding:18px 18px 16px;border-radius:15px;background:#f4f8f9}
.sports-condition-content h4{font-size:15px;line-height:1.5;margin:0 0 9px;color:#c35e2e}
.sports-condition-content p{font-size:15px;line-height:1.9;margin:0;color:#334d58}
.sports-condition-group .sports-condition-cta-title{margin:22px 0 12px;font-size:19px;font-weight:700;color:#173e53}
.sports-condition-disclaimer{font-size:14px;line-height:1.8;margin:18px 0 0;color:#526c76}
.sports-injury-guide .sports-support-note{margin-top:42px}
.sports-condition:focus-within>summary,.sports-condition-nav a:focus-visible{outline:3px solid #d8753f;outline-offset:3px}
@media(max-width:1000px){.sports-condition-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.sports-condition-content{grid-template-columns:1fr;gap:12px}.sports-condition-content section{padding:16px}}
@media(max-width:760px){.sports-injury-heading{margin-bottom:25px}.sports-injury-heading h2{font-size:29px}.sports-injury-heading p{font-size:15px;line-height:1.9}.sports-condition-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:25px 0 30px;padding:14px;border-radius:21px}.sports-condition-nav a{min-height:45px;padding:9px 12px;font-size:14px}.sports-condition-groups{gap:18px}.sports-condition-group{padding:18px 13px;border-radius:23px}.sports-condition-group-heading{gap:10px}.sports-condition-mark{flex-basis:35px;width:35px;height:35px;font-size:12px}.sports-condition-group-heading h3{font-size:20px}.sports-condition-group-heading>a{font-size:12px}.sports-condition>summary{padding:16px 47px 16px 16px;font-size:17px;line-height:1.55}.sports-condition>summary::after{right:14px;width:25px;height:25px}.sports-condition-content{padding:2px 12px 14px;gap:9px}.sports-condition-content section{padding:14px;border-radius:12px}.sports-condition-content h4{font-size:14px}.sports-condition-content p{font-size:15px;line-height:1.85}.sports-injury-guide .sports-support-note{margin-top:28px;padding:22px}.sports-condition-group .sports-condition-cta-title{font-size:17px}.sports-condition-disclaimer{font-size:13px}}


/* Real competition-field photography on the athlete page. */
.sports-trainer-photo{gap:38px;align-items:center;padding:28px;background:#fffefa;border-radius:30px}
.sports-trainer-photo>img{width:min(35%,320px);height:auto;aspect-ratio:1;object-fit:cover;border-radius:24px;margin:0}
.sports-trainer-photo>div{flex:1;min-width:0}
.sports-field-gallery{display:grid;grid-template-columns:1fr 1.15fr 1fr;gap:24px;align-items:start;margin-top:32px}
.sports-field-gallery figure{margin:0;min-width:0}
.sports-field-gallery img{display:block;width:100%;height:auto;border-radius:24px}
.sports-field-gallery figcaption{font-size:14px;line-height:1.7;margin-top:12px;color:#385965}
@media(max-width:760px){.sports-trainer-photo{flex-direction:column;gap:24px;padding:20px;align-items:stretch}.sports-trainer-photo>img{width:100%;max-width:440px;align-self:center;height:auto;margin:0;border-radius:20px}.sports-field-gallery{grid-template-columns:1fr;gap:26px;margin-top:26px}.sports-field-gallery figure{max-width:440px;width:100%;margin-inline:auto}.sports-field-gallery img{border-radius:20px}}

/* Athlete entrance: silent portrait footage with a slow dissolve. */
.cinema-video-hero .cinema-video-slide{transition:opacity 3s ease-in-out;overflow:hidden}
.cinema-video-backdrop{position:absolute;inset:-5%;width:110%;height:110%;object-fit:cover;filter:blur(24px) brightness(.55);opacity:.65}
.cinema-field-video{position:absolute;top:0;left:38%;transform:translateX(-50%);height:100%;width:auto;max-width:100%;object-fit:contain}
.cinema-video-hero .cinema-copy{right:17%;top:12%}
.cinema-video-hero .cinema-title{font-size:clamp(26px,3vw,44px)}
@media(max-width:760px){.cinema-video-hero{aspect-ratio:9/16!important;height:auto;min-height:0;max-height:none}.cinema-field-video{left:50%;width:100%;height:100%;object-fit:cover}.cinema-video-hero .cinema-copy{right:7%;top:7%}.cinema-video-hero .cinema-title{font-size:clamp(22px,6.3vw,32px);gap:15px;letter-spacing:.1em}.cinema-video-hero .cinema-title span+span{margin-top:35px}}
@media(prefers-reduced-motion:reduce){.cinema-video-hero .cinema-video-slide{transition:none}}

/* Preserve the supplied athlete photograph in its original 5:4 ratio. */
.audience-card .audience-visual.sports-visual{height:auto;min-height:0;aspect-ratio:5/4;align-self:start;width:100%}.audience-card .sports-visual img{display:block;width:100%;height:auto;object-fit:contain}



/* Single supplied illustration featuring both everyday care concerns. */
.audience-card .everyday-visual{display:block!important;height:auto;min-height:0;aspect-ratio:1536/1036;background:#fffdf5}.everyday-visual img{display:block;width:100%;height:100%;aspect-ratio:auto;object-fit:contain}

/* The three core areas of everyday care. */
.care-focus-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:32px}.care-focus-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:26px;overflow:hidden;text-decoration:none;color:var(--ink);transition:transform .25s,box-shadow .25s}.care-focus-card:hover{transform:translateY(-4px);box-shadow:0 12px 26px #173e5312}.care-focus-card:focus-visible{outline:3px solid var(--orange);outline-offset:4px}.care-focus-card>img{display:block;width:100%;aspect-ratio:4/3;object-fit:contain;background:#fffdf5}.care-focus-card>div{padding:24px;display:flex;flex-direction:column;flex:1}.care-focus-card h3{font-size:25px;margin:0 0 14px;line-height:1.5}.care-focus-card p:not(.eyebrow){font-size:15px;line-height:1.9;margin-bottom:20px}.care-focus-card .text-link{margin-top:auto}.care-focus-lead{line-height:2}.care-focus-intro{display:grid;grid-template-columns:1.3fr 1fr;gap:50px;align-items:center}.care-focus-intro>img{width:100%;border-radius:28px;aspect-ratio:4/3;object-fit:contain;background:#fffdf5}.care-focus-intro p{line-height:2}.care-focus-treatment{width:100%;height:auto;border-radius:28px;object-fit:contain}.care-focus-menus{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:30px 0}.care-focus-menus article{padding:28px;background:#f2f7f8;border-radius:24px;border-top:3px solid var(--orange)}.care-focus-menus h3{font-size:22px;line-height:1.6}.care-focus-price{font-size:24px;font-weight:700;color:var(--navy)}.care-focus-menus article p:not(.care-focus-price){font-size:15px;line-height:1.9}@media(max-width:1000px){.care-focus-grid{gap:15px}.care-focus-card>div{padding:18px}.care-focus-card h3{font-size:22px}.care-focus-menus{grid-template-columns:1fr 1fr}.care-focus-intro{gap:30px}}@media(max-width:760px){.care-focus-grid,.care-focus-intro,.care-focus-menus{grid-template-columns:1fr}.care-focus-grid{gap:24px}.care-focus-card>div{padding:24px}.care-focus-card h3{font-size:26px}.care-focus-intro>img{max-width:480px;margin:auto}.care-focus-intro{gap:25px}.care-focus-menus article{padding:24px}}@media(prefers-reduced-motion:reduce){.care-focus-card{transition:none}.care-focus-card:hover{transform:none}}

/* Cold and swelling specialty: readable thermal-care article. */
.thermal-section{max-width:1120px}.thermal-heading{display:flex;align-items:flex-start;gap:22px;margin-bottom:36px}.thermal-heading .eyebrow{margin-bottom:8px}.thermal-number{display:grid;place-items:center;flex:0 0 60px;height:60px;border-radius:50%;background:#f5dfcd;color:#ae5727;font:500 25px/1 Georgia,serif}.thermal-heading h2{font-size:clamp(25px,2.5vw,35px);line-height:1.65}.thermal-section p+p{margin-top:20px}.thermal-section>p{max-width:850px}.thermal-section>p+.thermal-split{margin-top:34px}.thermal-contents h2{margin-bottom:34px}.thermal-contents nav ol{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:12px 24px}.thermal-contents nav a{display:flex;align-items:center;gap:15px;border-bottom:1px solid #dfdcd5;padding:15px 4px}.thermal-contents nav a span{color:var(--orange);font:20px Georgia,serif}.thermal-mobile-break{display:none}.thermal-split{display:grid;grid-template-columns:1.25fr 1fr;gap:42px;align-items:center}.thermal-illustration{border-radius:26px;object-fit:contain;aspect-ratio:4/3}.thermal-diagram{background:#fff;border:1px solid #e9dfd4;border-radius:28px;padding:32px;margin:38px 0}.thermal-diagram figcaption{text-align:center;margin-bottom:24px}.thermal-diagram .eyebrow{margin-bottom:8px}.thermal-diagram h3{font-size:23px}.thermal-flow{display:grid;grid-template-columns:1fr 24px 1fr 24px 1fr;align-items:center;gap:14px}.thermal-flow>div{text-align:center;align-self:start}.thermal-flow svg{width:150px;max-width:100%;height:88px;margin:auto auto 14px}.thermal-symbol{display:block;font-size:52px;line-height:88px;color:#44758c;margin-bottom:14px}.thermal-flow strong{display:block;color:var(--ink);font-size:17px}.thermal-flow p{font-size:14px;line-height:1.8;margin-top:8px}.thermal-arrow{color:#c4794f;font-size:26px;text-align:center}.thermal-diagram>.fine{margin-top:24px;text-align:center;line-height:1.7}.thermal-card-list{display:grid;gap:22px}.thermal-card{position:relative;background:white;border:1px solid #e7dfd6;border-radius:24px;padding:30px 34px}.thermal-card h3{font-size:23px;margin:0 0 18px;line-height:1.7}.thermal-card-number{display:inline-block;color:#c37444;font:22px Georgia,serif;margin-bottom:12px}.thermal-habit-strip{display:flex;gap:18px;justify-content:center;align-items:center;flex-wrap:wrap;padding:26px 16px;background:#e7f0f1;border-radius:24px;margin-top:28px;color:var(--ink)}.thermal-habit-strip span{font-weight:600}.thermal-habit-strip b{color:#c4794f}.thermal-check{margin:28px 0;background:#fff;border:1px solid #eadfd1;border-radius:28px;padding:30px}.thermal-check fieldset{border:0;padding:0;margin:0;min-width:0}.thermal-check legend{font-weight:600;color:var(--ink);margin-bottom:22px}.thermal-check-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.thermal-check-grid label{display:flex;align-items:flex-start;gap:13px;min-height:72px;background:#f6f7f4;border:1px solid transparent;border-radius:16px;padding:18px;cursor:pointer;line-height:1.8}.thermal-check-grid label:has(input:checked){border-color:#d98952;background:#fff0df}.thermal-check input{flex:none;width:20px;height:20px;margin:5px 0 0;accent-color:#b9662c;cursor:pointer}.thermal-check input:focus-visible{outline:3px solid var(--orange);outline-offset:4px}.thermal-check-result{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:26px}.thermal-check output{color:var(--ink);font-weight:600}.thermal-check button{background:transparent;border:1px solid #8fa4ac;border-radius:30px;padding:8px 18px;color:var(--ink);cursor:pointer;font-size:14px}.thermal-note{padding:22px 26px;border-left:3px solid #d88b56;background:#f8eadb;border-radius:0 18px 18px 0;font-size:14px;line-height:1.9;margin-top:28px!important}.thermal-life-map{padding:28px;background:#e9f0f0;border-radius:26px;margin:30px 0;text-align:center}.thermal-life-map>p{font-family:var(--serif);font-size:21px;color:var(--ink)}.thermal-life-map ul{list-style:none;display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin:22px 0 0;padding:0}.thermal-life-map li{background:white;padding:12px 20px;border-radius:40px;border:1px solid #d5e3e5}.thermal-heat-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.thermal-heat-grid>div{padding:22px 20px;background:#faf7f0;border-radius:20px;text-align:center}.thermal-heat-grid>div+div{background:#f1f6f5}.thermal-heat-grid h4{margin:0;font-size:17px;color:var(--ink);line-height:1.7}.thermal-heat-grid svg{display:block;width:100%;max-width:340px;height:auto;margin:14px auto}.thermal-heat-grid p{font-size:15px;line-height:1.8}.thermal-photo{margin:36px 0 0}.thermal-photo img{width:100%;height:auto;border-radius:28px}.thermal-photo figcaption{font-size:13px;line-height:1.8;margin-top:13px;color:#58676b}.thermal-split>.thermal-photo{margin:0}.thermal-benefits-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:30px}.thermal-benefits-summary a{display:grid;place-items:center;min-height:100px;text-align:center;line-height:1.7;padding:16px;border-radius:24px;background:#f5dfcd;color:var(--ink);font-weight:600}.thermal-benefits-summary a:nth-child(even){background:#e3eef0}.thermal-benefits-summary a:hover{background:#f4caaa}.thermal-benefits{display:grid;grid-template-columns:1fr 1fr;gap:24px}.thermal-benefits .thermal-card h3{font-size:21px}.thermal-director{display:flex;align-items:center;gap:30px;margin:32px 0;padding:24px 30px;border-radius:26px;background:#e9f0f0}.thermal-director img{width:100px;height:auto}.thermal-director p{font-size:16px}.thermal-director strong{color:var(--ink);font-size:20px;line-height:1.8}
@media(max-width:760px){.thermal-section{padding-top:56px;padding-bottom:56px}.thermal-heading{gap:14px;margin-bottom:28px}.thermal-number{flex-basis:43px;height:43px;font-size:21px}.thermal-heading h2{font-size:24px;letter-spacing:.02em}.thermal-contents nav ol{grid-template-columns:1fr;gap:0}.thermal-mobile-break{display:initial}.thermal-split{grid-template-columns:1fr;gap:28px}.thermal-illustration{max-width:360px;margin:auto}.thermal-diagram{padding:24px 18px;border-radius:24px;margin:30px 0}.thermal-diagram h3{font-size:21px}.thermal-flow{grid-template-columns:1fr;gap:16px}.thermal-flow>div{display:grid;grid-template-columns:84px 1fr;column-gap:16px;text-align:left;align-items:center}.thermal-flow svg,.thermal-symbol{grid-column:1;grid-row:1/3;width:84px;height:70px;margin:0;line-height:70px;text-align:center}.thermal-flow strong{grid-column:2;font-size:16px}.thermal-flow p{grid-column:2;font-size:14px;margin-top:4px}.thermal-arrow{transform:rotate(90deg);line-height:22px}.thermal-card{padding:24px}.thermal-card h3{font-size:21px}.thermal-check{padding:24px 18px}.thermal-check-grid{grid-template-columns:1fr}.thermal-check-grid label{padding:15px;min-height:62px}.thermal-check-result{align-items:flex-start;flex-direction:column;gap:14px}.thermal-habit-strip{gap:12px;font-size:14px}.thermal-note{padding:18px;font-size:13px}.thermal-life-map{padding:24px 18px}.thermal-life-map li{padding:10px 16px;font-size:14px}.thermal-heat-grid{grid-template-columns:1fr}.thermal-benefits-summary{grid-template-columns:1fr 1fr;gap:10px}.thermal-benefits-summary a{min-height:84px;padding:12px;font-size:14px}.thermal-benefits{grid-template-columns:1fr}.thermal-director{gap:18px;padding:22px 18px}.thermal-director img{width:76px}.thermal-director strong{font-size:17px}.thermal-director p{font-size:14px}.thermal-photo img{border-radius:22px}}

/* Shoulder specialty long-form guide: diagrams and actual treatment photos. */
.shoulder-article-grid{margin-top:32px}.shoulder-article#shoulder-1 .thermal-split{align-items:start}.shoulder-article#shoulder-1 .thermal-illustration{position:sticky;top:125px}.shoulder-emphasis{padding:22px 24px;background:#eaf0ed;border-radius:18px;line-height:1.95}.shoulder-article strong{color:var(--ink)}.shoulder-article .shoulder-subsection>h3{font-size:22px}.shoulder-article .shoulder-subsection p{font-size:16px;line-height:2}.shoulder-article .shoulder-subsection p+p{margin-top:18px}.shoulder-list{margin:22px 0 30px;padding:0;list-style:none;display:grid;gap:11px}.shoulder-list li{padding:14px 20px 14px 42px;background:#fff;border:1px solid #e4ded4;border-radius:16px;line-height:1.9;position:relative}.shoulder-list li:before{content:"";position:absolute;left:20px;top:26px;width:7px;height:7px;border-radius:50%;background:#dc8b54}.shoulder-mechanism-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center}.shoulder-mechanism-grid>svg{width:100%;height:auto}.shoulder-load-flow{display:grid;gap:7px}.shoulder-load-flow>div{padding:17px 20px;background:#eaf0f0;border-radius:18px}.shoulder-load-flow span{color:#b56a3b;font:17px Georgia,serif;margin-right:10px}.shoulder-load-flow strong{font-size:17px}.shoulder-load-flow p{font-size:14px;line-height:1.8;margin-top:6px}.shoulder-load-flow>b{text-align:center;line-height:1.2;color:#bf8659;font-size:21px}.shoulder-body-map-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:30px}.shoulder-body-map-grid>svg{width:100%;height:auto;max-width:330px;justify-self:center}.shoulder-muscle-key{padding:0;list-style:none;display:grid;gap:21px;margin:0}.shoulder-muscle-key li{display:flex;gap:17px;align-items:center}.shoulder-muscle-key b{display:grid;place-items:center;flex:none;border-radius:50%;width:42px;height:42px;font:22px Georgia,serif;background:#e7a26a;color:var(--ink)}.shoulder-muscle-key li:nth-child(2) b{background:#b8d4d6}.shoulder-muscle-key li:nth-child(3) b{background:#e5c69e}.shoulder-muscle-key li:nth-child(4) b{background:#cfb9d1}.shoulder-muscle-key strong{display:block;font-size:20px}.shoulder-muscle-key span{display:block;line-height:1.8;font-size:14px;margin-top:3px}.shoulder-step-list{display:grid;gap:32px;margin-top:34px}.shoulder-step{display:grid;grid-template-columns:.9fr 1.2fr;gap:32px;align-items:start;padding:30px;background:#fff;border:1px solid #e4ded4;border-radius:26px;scroll-margin-top:120px}.shoulder-step-photo{margin:0}.shoulder-step-photo img{height:auto;width:100%;border-radius:22px}.shoulder-step-photo figcaption{font-size:13px;line-height:1.8;margin-top:12px;color:#64777b}.shoulder-step h3{font-size:23px;line-height:1.8;margin-bottom:22px}.shoulder-step p+p{margin-top:18px}.shoulder-instructions{padding-left:1.6em;line-height:2;margin:18px 0 24px}.shoulder-instructions li+li{margin-top:10px}.shoulder-movement{width:220px;max-width:100%;height:auto;float:right;margin:0 0 24px 30px}.shoulder-subsection:after{content:"";display:block;clear:both}.shoulder-lifestyle{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:32px}.shoulder-lifestyle span{background:#f4dfce;color:var(--ink);text-align:center;padding:23px 16px;border-radius:22px;font-size:18px}.shoulder-lifestyle span:nth-child(even){background:#e4eef0}.shoulder-article .faq-list{margin-top:30px}.shoulder-article .faq-list p+p{margin-top:16px}.shoulder-article .faq-list summary{font-size:20px;line-height:1.8}
@media(max-width:760px){.shoulder-article#shoulder-1 .thermal-illustration{position:static;grid-row:1;max-width:310px}.shoulder-article-grid{margin-top:26px}.shoulder-article .shoulder-subsection>h3{font-size:21px}.shoulder-mechanism-grid,.shoulder-body-map-grid{grid-template-columns:1fr;gap:25px}.shoulder-mechanism-grid>svg{max-width:330px;margin:auto}.shoulder-body-map-grid>svg{max-width:240px}.shoulder-muscle-key{gap:18px}.shoulder-muscle-key strong{font-size:18px}.shoulder-step{grid-template-columns:1fr;gap:25px;padding:22px}.shoulder-step h3{font-size:21px;margin-bottom:18px}.shoulder-movement{float:none;display:block;width:180px;margin:0 auto 24px}.shoulder-emphasis{padding:20px}.shoulder-lifestyle{gap:12px}.shoulder-lifestyle span{padding:20px 12px;font-size:16px}.shoulder-article .faq-list summary{font-size:17px}.shoulder-list li{font-size:15px}}

/* Readable shoulder anatomy diagrams */
.anatomy-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.anatomy-panel{background:#faf8f3;border:1px solid #e8e1d8;border-radius:20px;padding:24px}.anatomy-panel header{display:flex;align-items:center;gap:14px}.anatomy-panel header>span{background:var(--muscle-color);color:white;border-radius:50%;width:42px;height:42px;display:grid;place-items:center;font-weight:700}.anatomy-panel h4{font-size:24px;margin:0;line-height:1.4}.anatomy-panel small{font-size:13px;color:#516772}.anatomy-panel .anatomy-location{font-size:16px;font-weight:700;margin:18px 0 6px}.anatomy-panel svg{display:block;width:100%;max-width:340px;height:auto;margin:auto}.anatomy-panel .muscle-fibres{fill:none;stroke:#fff;stroke-width:1.5;opacity:.6}.anatomy-panel p{font-size:16px;line-height:1.85;margin:12px 0 0}.anatomy-panel .anatomy-layer{font-size:14px;font-weight:700;border-top:1px solid #e5ddd2;padding-top:16px}.anatomy-layer i{display:inline-block;width:12px;height:12px;border-radius:3px;background:var(--muscle-color);margin-right:8px}.shoulder-desk-explainer svg{display:block;width:100%;height:auto}.desk-caption{display:grid;gap:16px;margin-top:18px}.desk-caption p{font-size:15px;line-height:1.85;margin:0}.desk-caption b{display:inline-grid;place-items:center;background:#de762b;color:white;border-radius:50%;width:25px;height:25px;margin-right:8px}.desk-caption p:nth-child(2) b{background:#163c51}.desk-caption strong{font-size:17px}@media(max-width:760px){.anatomy-panels{grid-template-columns:1fr;gap:20px}.anatomy-panel{padding:20px 16px}.anatomy-panel h4{font-size:23px}.shoulder-mechanism-grid{grid-template-columns:1fr}.anatomy-panel svg{max-width:320px}}

/* Postpartum specialty: calm reading rhythm and explanatory visuals */
.postpartum-article{max-width:1040px}.postpartum-article>p{max-width:48em;margin:0 auto 1.25em;font-size:17px;line-height:2.05}.postpartum-article .thermal-heading{margin-bottom:34px}.postpartum-article h3{font-size:23px;line-height:1.65;margin:0 0 20px}.postpartum-subsection{background:#fffdf9;border:1px solid #ece3d7;border-radius:24px;padding:32px 38px;margin:26px 0}.postpartum-subsection p{font-size:16px;line-height:2;margin:0 0 1.2em}.postpartum-subsection p:last-child{margin-bottom:0}.postpartum-opening{display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:30px;margin-bottom:32px}.postpartum-opening>img{width:100%;height:auto;border-radius:28px}.postpartum-opening p{font-size:17px;line-height:1.95}.postpartum-photo{margin:36px auto;max-width:780px}.postpartum-photo img{display:block;width:100%;height:auto;border-radius:24px}.postpartum-photo figcaption{font-size:14px;line-height:1.8;color:#526a72;margin-top:12px}.postpartum-step{display:grid;grid-template-columns:.9fr 1.1fr;gap:34px;align-items:start;margin:44px 0;padding:30px;background:#fffdf9;border:1px solid #ece3d7;border-radius:26px}.postpartum-step .postpartum-photo{margin:0;position:sticky;top:120px}.postpartum-step p{font-size:16px;line-height:2;margin:0 0 1.1em}.postpartum-scene{margin:0;background:#fdfbf4;border:1px solid #ede6d8;border-radius:24px;overflow:hidden}.postpartum-scene-crop{aspect-ratio:1/1}.postpartum-scene img{display:block;width:100%;height:100%;object-fit:cover}.postpartum-scene figcaption{padding:20px 24px 24px;text-align:left}.postpartum-scene strong{font-size:20px;line-height:1.6}.postpartum-scene p{font-size:15px;line-height:1.9;margin:8px 0 0}.postpartum-visual-split{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:center;margin:36px 0}.postpartum-change-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.postpartum-change-grid>div{background:#edf4f4;border-radius:20px;padding:22px}.postpartum-change-grid b{font-size:14px;color:#be602b}.postpartum-change-grid h3{font-size:20px;margin:8px 0}.postpartum-change-grid p{font-size:15px;margin:0;line-height:1.8}.postpartum-life-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:36px 0}.postpartum-flow ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;padding:0;gap:30px}.postpartum-flow li{position:relative;padding:24px 18px;background:#f8f1e5;border-radius:20px;text-align:center}.postpartum-flow li:not(:last-child):after{content:'→';position:absolute;right:-25px;top:42%;font-size:24px;color:#d4793e}.postpartum-flow li span{display:block;font-size:14px;color:#a35430;margin-bottom:12px}.postpartum-flow li strong{display:block;font-size:19px;line-height:1.6}.postpartum-flow li p{font-size:14px;margin:10px 0 0}.postpartum-function-map{display:flex;align-items:center;gap:12px}.postpartum-function-map>div{flex:1;background:#edf4f4;border-radius:18px;text-align:center;padding:24px 10px}.postpartum-function-map>span{color:#cf793d;font-size:24px}.postpartum-function-map div span{display:block;font-size:14px;color:#536e75}.postpartum-function-map strong{display:block;font-size:18px;margin:8px 0}.postpartum-function-map p{font-size:14px;margin:0}.postpartum-map-result,.postpartum-key-message{background:#f6e8d5;border-radius:18px;text-align:center;padding:24px;font-size:21px;font-weight:700;line-height:1.8;margin:24px 0 0}.postpartum-pain-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:600px;margin:auto}.postpartum-pain-panel{background:#faf7f1;border-radius:20px;padding:20px;text-align:center}.postpartum-pain-panel h4{font-size:18px;margin:0 0 12px}.postpartum-pain-panel svg{display:block;max-height:300px;width:100%}.postpartum-pain-panel p{font-size:15px;text-align:left;line-height:2;display:inline-block}.pain-dot{display:inline-block;width:12px;height:12px;border-radius:50%;margin-right:8px}.pain-dot.orange{background:#e18b63}.pain-dot.blue{background:#4b8a99}.pain-dot.rose{background:#b38a9c}.postpartum-checks{border:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:24px 0 30px}.postpartum-checks legend{font-size:17px;font-weight:700;margin-bottom:20px}.postpartum-checks label{display:flex;align-items:flex-start;gap:14px;padding:20px;background:#fff;border:1px solid #deddd4;border-radius:16px;cursor:pointer;line-height:1.8}.postpartum-checks input{width:22px;height:22px;flex-shrink:0;margin-top:3px;accent-color:#ce7037}.postpartum-checks label:has(input:checked){background:#fff1df;border-color:#ca783f}.postpartum-checks input:focus-visible{outline:3px solid #29708a;outline-offset:4px}.postpartum-warning{border-left:5px solid #b65e42;background:#fff7f0}.postpartum-safety-link{display:inline-block;margin-top:24px;color:#945034;text-decoration:underline;text-underline-offset:5px}.postpartum-article .faq-list details{background:#fffdf9}.postpartum-article .detail-links{margin-top:28px}.postpartum-contents nav ol{grid-template-columns:1fr 1fr}
@media(max-width:760px){.postpartum-article>p{font-size:16px;line-height:1.95}.postpartum-opening,.postpartum-step,.postpartum-visual-split,.postpartum-life-pair{grid-template-columns:1fr}.postpartum-opening>img{max-width:420px;margin:auto}.postpartum-subsection{padding:24px 20px;margin:22px 0}.postpartum-article h3{font-size:21px}.postpartum-step{padding:20px;gap:22px}.postpartum-step .postpartum-photo{position:static}.postpartum-scene{max-width:460px;width:100%;margin:auto}.postpartum-change-grid{gap:12px}.postpartum-change-grid>div{padding:18px 14px}.postpartum-change-grid h3{font-size:18px}.postpartum-flow ol{grid-template-columns:1fr;gap:32px}.postpartum-flow li:not(:last-child):after{content:'↓';right:calc(50% - 10px);top:auto;bottom:-31px}.postpartum-function-map{flex-direction:column;gap:8px}.postpartum-function-map>div{width:100%;padding:20px 10px}.postpartum-map-result{font-size:18px;padding:20px}.postpartum-pain-grid{gap:12px}.postpartum-pain-panel{padding:18px 10px}.postpartum-pain-panel h4{font-size:16px}.postpartum-pain-panel p{font-size:13px}.postpartum-checks,.postpartum-contents nav ol{grid-template-columns:1fr}.postpartum-checks label{padding:17px}.postpartum-article .thermal-heading h2{overflow-wrap:anywhere}.postpartum-photo{margin:28px auto}}

.care-focus-menus.care-focus-menus-single{grid-template-columns:minmax(0,1fr);max-width:800px}.care-focus-menus-single article{padding:30px 34px}@media(max-width:760px){.care-focus-menus-single article{padding:24px}}

.care-focus-menus.care-focus-menus-postpartum{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:760px){.care-focus-menus.care-focus-menus-postpartum{grid-template-columns:1fr}}

.clinic-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;padding-top:30px;padding-bottom:60px}.clinic-gallery-card{margin:0;background:#fffdf8;border:1px solid #e9e1d7;border-radius:28px;overflow:hidden}.clinic-gallery-card>a{display:block;background:#f4f1e9}.clinic-gallery-card img{display:block;width:100%;height:auto}.clinic-gallery-card figcaption{padding:26px 30px 30px}.clinic-gallery-card h2{font-size:25px;line-height:1.6;margin:5px 0 12px}.clinic-gallery-card p{font-size:16px;line-height:1.9;margin:0}.clinic-gallery-card a:focus-visible{outline:4px solid #de762b;outline-offset:-4px}@media(max-width:760px){.clinic-gallery{grid-template-columns:1fr;gap:26px;padding-top:10px}.clinic-gallery-card figcaption{padding:22px 24px}.clinic-gallery-card h2{font-size:23px}}

/* Warm orange-to-pink treatment backdrop for the shared booking section. */
.reservation{position:relative;isolation:isolate;overflow:hidden;color:#fff}
.reservation::before{content:"";position:absolute;inset:0;z-index:0;background-image:linear-gradient(110deg,rgba(159,79,24,.84) 0%,rgba(174,65,68,.84) 52%,rgba(162,48,89,.84) 100%),url("assets/reservation-treatment.jpg");background-size:cover;background-position:center,55% 50%;pointer-events:none}
.reservation>.wrap{position:relative;z-index:1}
.reservation h2,.reservation .eyebrow,.reservation small{color:#fff}
.reservation h2,.reservation p,.reservation small{text-shadow:0 1px 3px rgba(74,28,24,.2)}
.reservation .button{text-shadow:none}
.reservation .orange{border:1px solid rgba(255,255,255,.75)}
@media(max-width:760px){.reservation::before{background-position:center,55% center}}

/* Sports guide follows the three everyday symptom cards. */
.care-focus-card-sports{grid-column:1/-1;flex-direction:row;align-items:stretch}
.care-focus-card-sports>img{width:32%;max-width:360px;aspect-ratio:4/3}
.care-focus-card-sports>div{justify-content:center;padding:30px}
@media(max-width:760px){.care-focus-card-sports{flex-direction:column}.care-focus-card-sports>img{width:100%;max-width:none}.care-focus-card-sports>div{padding:24px}}

/* Clinic details beside the brand in every page footer. */
.footer>.footer-heading{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);width:100%;gap:32px;align-items:start}
.footer-contact{font-style:normal;font-size:14px;line-height:1.8}
.footer-contact dl{margin:0}.footer-contact dl>div{display:grid;grid-template-columns:5em minmax(0,1fr);gap:14px;margin-bottom:12px}
.footer-contact dt{font-weight:600;color:var(--ink)}.footer-contact dd{margin:0;overflow-wrap:anywhere}.footer-contact small{font-size:12px;color:#536e7b}.footer-contact a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px){.footer>.footer-heading{grid-template-columns:minmax(120px,.8fr) minmax(0,1.2fr);gap:20px}.footer-heading>.brand{flex-direction:column;align-items:flex-start}.footer-contact{font-size:12px}.footer-contact dl>div{grid-template-columns:1fr;gap:2px;margin-bottom:12px}.footer-contact small{font-size:11px}}

/* Compact care choices reveal the selected illustration and specialist link. */
.care-choices{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.care-choices[hidden],.care-panel[hidden]{display:none!important}
.care-choice{font:inherit;color:var(--ink);background:#fff;border:1px solid #d7e5e9;border-radius:20px;padding:24px 20px;min-height:174px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:18px;line-height:1.8;font-weight:600;cursor:pointer;transition:background .2s,border-color .2s}
.care-choice:hover,.care-choice[aria-expanded="true"]{background:#fff1e1;border-color:#e79150}
.care-choice:focus-visible{outline:3px solid #345e73;outline-offset:4px}
.care-choice-icon{font-size:22px;color:#b56022;line-height:1}
.care-panel{max-width:420px;margin:28px auto 0;animation:care-panel-in .35s ease-out}
.care-panel .audience-card{width:100%;height:auto;opacity:1;transform:none}
.daily-care-links{display:grid;gap:12px}
@keyframes care-panel-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){.care-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.care-choice{font-size:14px;padding:18px 12px;min-height:160px;border-radius:16px}.care-panel{margin-top:22px}}
@media(prefers-reduced-motion:reduce){.care-panel{animation:none}.care-choice{transition:none}}

/* Emphasize each choice with a category badge and clear key phrases. */
.care-choice{position:relative;overflow:hidden;border-top:4px solid #e99550;box-shadow:0 5px 18px rgba(49,86,105,.06);min-height:230px;padding:20px 16px;gap:16px}
.care-choice:nth-of-type(even){border-top-color:#466e84}
.care-choice-badge{font-size:12px;letter-spacing:.06em;color:#9b501a;background:#fff0df;border-radius:30px;padding:3px 13px;line-height:1.8;font-weight:700}
.care-choice:nth-of-type(even) .care-choice-badge{background:#eaf2f5;color:#345e73}
.care-choice-label{display:flex;flex-direction:column;gap:7px;text-align:center;margin:auto 0}
.care-choice-label strong{font-size:20px;line-height:1.65;font-weight:800;color:#294f64;text-decoration:underline;text-decoration-color:#f6c591;text-decoration-thickness:4px;text-underline-offset:5px;text-decoration-skip-ink:none}
.care-choice-context{font-size:13px;line-height:1.65;font-weight:500;color:#536b77}
.care-choice-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#fff0df;font-weight:600}
@media(max-width:760px){.care-choice{min-height:234px;padding:16px 10px;gap:12px}.care-choice-badge{font-size:11px;padding:3px 10px}.care-choice-label strong{font-size:17px;text-decoration-thickness:3px}.care-choice-context{font-size:12px}}

/* Place each expanded guide immediately below its pair of choices. */
.care-choices>.care-panel{grid-column:1/-1;width:100%;min-width:0;margin:12px auto 18px}
@media(min-width:761px){.care-choices>.care-choice{grid-row:1}.care-choices>.care-panel{grid-row:2}}

/* Everyday care uses the same expandable selector for its three specialties. */
.care-choices-three{grid-template-columns:repeat(3,minmax(0,1fr))}
.care-panel .care-focus-card{width:100%;height:auto;opacity:1;transform:none}
@media(max-width:760px){.care-choices-three{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Center the clinic name beneath the footer logo. */
.footer>.footer-heading>.brand{width:88px;align-items:stretch}
.footer>.footer-heading>.brand .brand-ja{display:block;width:100%;text-align:center}
@media(max-width:760px){.footer>.footer-heading>.brand{width:75px;align-items:stretch}}

/* Acute daily injury information shares the clinic's soft visual style. */
.injury-important{background:#fff1df;border-left:4px solid #da803b;border-radius:0 16px 16px 0;padding:18px 22px;margin-top:20px}
.injury-article ul{padding-left:1.5em;line-height:2}.injury-article li{margin-bottom:8px}.injury-article strong{color:#244f67}
.injury-photo{max-width:620px}.injury-photo img{height:auto;object-fit:contain}
.injury-comparison,.injury-examples{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.injury-comparison .postpartum-subsection,.injury-examples .postpartum-subsection{margin:0;min-width:0;padding:28px}
.injury-comparison .postpartum-subsection:first-child{background:#edf5f7;border-color:#b4ccd5}.injury-comparison .postpartum-subsection:last-child{background:#fff4e8;border-color:#eccaa3}
.injury-diagram{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none!important;padding:0!important;gap:20px;margin:30px 0}
.injury-diagram li{background:#edf5f7;border:1px solid #c9dce3;border-radius:20px;padding:22px;position:relative;text-align:center;margin:0}.injury-diagram li>span{display:inline-grid;place-items:center;width:32px;height:32px;background:#345f75;color:#fff;border-radius:50%;font-weight:700;margin-bottom:14px}.injury-diagram li p{font-size:15px;line-height:1.85}
.injury-diagram li:not(:last-child)::after{content:'→';position:absolute;right:-18px;top:45%;color:#b46c33;font-size:22px}
.injury-faq details{border:1px solid #d6e3e8;background:#fff;border-radius:18px;padding:22px 26px;margin:16px 0}.injury-faq summary{font-weight:700;font-size:18px;color:#264f65;cursor:pointer;line-height:1.8}.injury-faq p{margin-top:18px;line-height:2}
.injury-alert{border-left:5px solid #d78542}
@media(max-width:760px){.injury-comparison,.injury-examples,.injury-diagram{grid-template-columns:1fr}.injury-diagram{gap:25px}.injury-diagram li:not(:last-child)::after{content:'↓';right:calc(50% - 10px);top:auto;bottom:-29px}.injury-comparison .postpartum-subsection,.injury-examples .postpartum-subsection,.injury-faq details{padding:22px}.injury-faq summary{font-size:17px}.injury-important{padding:16px}}


/* Six-step insurance care flow. */
.insurance-flow-step{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);border-top:4px solid #f58b52;gap:30px}.insurance-flow-step:nth-of-type(even){border-top-color:#32758d}.insurance-step-label{display:inline-block;padding:5px 14px;border-radius:30px;background:#fff0e4;color:#a9471b;font-weight:800;letter-spacing:.08em;margin-bottom:14px!important}.insurance-flow-step h3{font-size:24px}.insurance-flow-step .postpartum-photo{position:static}.insurance-flow-step img{aspect-ratio:4/3;object-fit:cover}.insurance-flow-step figcaption{font-size:12px}@media(max-width:760px){.insurance-flow-step{grid-template-columns:1fr;padding:22px;gap:20px}.insurance-flow-step h3{font-size:21px}}

/* Keep the swelling-page explanation photo in its original proportions. */
.consultation-photos figure:nth-child(2) img.consult-explanation-full{aspect-ratio:4/3;height:auto;object-fit:contain}

/* Official LINE consultation buttons, matched to the supplied green. */
.button.official-line-button,.reservation .button.official-line-button,.mobile-book a.official-line-button{background:#00b900;color:#fff;border-color:#00b900}.button.official-line-button:hover,.reservation .button.official-line-button:hover,.mobile-book a.official-line-button:hover{background:#009e00;border-color:#009e00;color:#fff}

.shoulder-desk-explainer .shoulder-desk-illustration{display:block;width:100%;height:auto;object-fit:contain;border-radius:24px}

/* Homepage Instagram profile invitation. */
.home-instagram{background:linear-gradient(125deg,#fff1df 0%,#fce9ed 56%,#f3e9f5 100%);border-top:3px solid #f09a76}.home-instagram-heading{text-align:center;margin:0 auto 32px}.home-instagram-heading .eyebrow{margin-bottom:12px}.home-instagram-heading h2{font-size:clamp(25px,3.2vw,36px)}.home-instagram-heading>p:last-child{margin-top:12px}.instagram-profile-card{max-width:800px;margin:auto;background:#fff;border:1px solid #fff;border-radius:32px;padding:30px;box-shadow:0 14px 45px #9b6b6512;overflow:hidden}.instagram-profile-top{display:flex;gap:18px;align-items:center;justify-content:space-between;padding-bottom:22px}.instagram-account{display:flex;align-items:center;gap:12px;min-width:0}.instagram-account>img{width:56px;height:56px;object-fit:contain;flex-shrink:0}.instagram-account strong{display:block;font-size:20px;color:var(--ink);line-height:1.5}.instagram-account small{display:block;font-size:12px;color:#526c76}.instagram-profile-link{font-size:13px;font-weight:700;color:#824275;white-space:nowrap;padding:9px 13px;background:#fbf0f6;border-radius:12px}.instagram-profile-photo{display:block;position:relative;border-radius:20px;overflow:hidden}.instagram-profile-photo img{width:100%;aspect-ratio:16/9;object-fit:cover;object-position:50% 45%}.instagram-profile-photo>span{position:absolute;left:0;right:0;bottom:0;padding:36px 20px 16px;background:linear-gradient(transparent,#153142a6);color:white;font-size:18px;font-weight:700;letter-spacing:.06em}.instagram-profile-bottom{text-align:center;padding-top:24px}.instagram-profile-bottom>p{font-size:15px;margin-bottom:20px}.instagram-profile-button{background:linear-gradient(100deg,#df7a39,#cc537f 65%,#97558a);border:0;color:white;display:inline-flex;gap:10px;align-items:center;justify-content:center;padding:15px 25px}.instagram-profile-button:hover{color:#fff;filter:brightness(.95)}.instagram-profile-button svg{width:22px;height:22px;flex-shrink:0}@media(max-width:760px){.home-instagram .wrap{padding-left:20px;padding-right:20px}.home-instagram-heading>p:last-child{font-size:14px}.instagram-profile-card{padding:20px 16px;border-radius:26px}.instagram-profile-top{flex-wrap:wrap;gap:14px;padding-bottom:18px}.instagram-account>img{width:46px;height:46px}.instagram-account strong{font-size:19px}.instagram-profile-link{font-size:12px;padding:8px 12px;margin-left:auto}.instagram-profile-photo img{aspect-ratio:4/3}.instagram-profile-photo>span{font-size:15px;padding:32px 14px 14px}.instagram-profile-button{width:100%;font-size:14px;padding:14px 12px}}

.instagram-profile-photo img[src="assets/instagram-profile-screenshot.jpeg"]{aspect-ratio:auto;height:auto;object-fit:contain;object-position:center}

/* Clinic news */
.news-heading{padding-bottom:36px}.news-list{padding-bottom:72px}.clinic-news-article{max-width:900px;margin:0 auto;padding:clamp(24px,5vw,56px);background:#fff;border:1px solid #e8e0d6;border-radius:28px;scroll-margin-top:120px}.clinic-news-meta{display:flex;align-items:center;flex-wrap:wrap;gap:12px;font-size:13px;color:#627580;letter-spacing:.03em}.clinic-news-meta span{padding:4px 11px;background:#fff1e6;color:#a8592e;border-radius:999px;font-size:12px;font-weight:700}.clinic-news-article h2{font-size:clamp(24px,3.5vw,34px);line-height:1.65;margin:20px 0 28px;padding-bottom:24px;border-bottom:1px solid #e8e0d6}.clinic-news-body{line-height:2}.clinic-news-body>p{margin:0 0 24px}.news-schedule{padding:24px 26px;border-radius:18px;margin:28px 0;background:#fff4e9;border-left:4px solid #d87837}.news-schedule h3{font-size:19px;margin:0 0 12px}.news-schedule p{margin:8px 0 0}.news-schedule strong{font-size:clamp(17px,2.4vw,21px)}.news-schedule-open{background:#edf5f9;border-left-color:#47798c}.news-calendar{margin:32px 0}.news-calendar img{display:block;width:100%;height:auto;border-radius:16px}.news-calendar figcaption{font-size:12px;color:#627580;text-align:center;margin-top:10px}.home-news{margin-top:44px;padding-top:32px;border-top:1px solid #ded8ce}.home-news-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.home-news-heading h3{font-size:25px;margin:0}.home-news-heading .text-link{font-size:14px;margin:0}.home-news-card{display:grid;grid-template-columns:minmax(180px,280px) 1fr;gap:28px;align-items:center;padding:24px;background:#fff;border:1px solid #e8e0d6;border-radius:22px;transition:box-shadow .2s,border-color .2s}.home-news-card:hover{border-color:#d38b5b;box-shadow:0 8px 28px #193c4e0c}.home-news-card>img{display:block;width:100%;height:auto;border-radius:12px}.home-news-card h4{font-size:clamp(19px,2.5vw,24px);line-height:1.65;margin:14px 0 12px}.home-news-card p{font-size:14px;line-height:1.9;margin:0 0 18px}.home-news-more{font-weight:700;color:#aa5b2e;font-size:14px;display:inline-flex;gap:18px}@media(max-width:650px){.clinic-news-article{border-radius:20px;padding:24px 20px}.news-schedule{padding:20px 18px}.home-news-card{grid-template-columns:1fr;gap:20px;padding:20px}.home-news-card>img{max-width:420px;margin:auto}.home-news-heading{align-items:baseline}.home-news-heading h3{font-size:23px}.home-news-heading .text-link{font-size:12px}.home-news-card p br{display:none}.clinic-news-article{scroll-margin-top:100px}}

.home-news-title-link{display:block;padding:20px 4px;border-bottom:1px solid #ded8ce;font-size:clamp(16px,2vw,20px);font-weight:700;line-height:1.8;color:var(--ink)}.home-news-title-link:hover{color:#aa5b2e}.home-news-title-link:focus-visible{outline:2px solid #aa5b2e;outline-offset:4px}

/* Emphasize the three homepage benefits */
.benefits{padding-top:28px;padding-bottom:28px;border:1px solid #d7e6ed;box-shadow:0 8px 24px #254b6010}
.benefits span{font-size:15px;font-weight:500;line-height:1.8;color:#375e72}
.benefits b{font-size:20px;font-weight:700;color:#b95e2d}
.benefits span:nth-child(2) b{color:#236984}
@media(max-width:760px){.benefits{padding:24px 8px}.benefits span{font-size:11.5px;padding:0 5px}.benefits b{font-size:14px;line-height:1.6;margin:0 0 7px;display:block}.benefits span+span{padding-left:5px}}

/* Highlight the homepage care selector */
#concerns.audience-section{background:linear-gradient(125deg,#fff1df 0%,#fce9ed 56%,#f3e9f5 100%);border-top:3px solid #f09a76;border-radius:0;max-width:none}#concerns.audience-section .section-heading{margin-bottom:36px}

/* Desktop homepage: preserve all four photographs without cropping. */
@media(min-width:761px){
#top.cinema-hero{width:calc(100% - 64px);max-width:min(1440px,calc((100svh - 124px)*16/9));height:auto;min-height:0;max-height:none;aspect-ratio:16/9;margin:24px auto;background:#315b6d;border-radius:28px}
#top .cinema-slides{right:25%;background:#eff5f7}
#top .cinema-slide{object-fit:contain;object-position:center}
#top .cinema-shade{left:75%;background:linear-gradient(150deg,#426e7e,#244a5d);border-radius:0}
#top .cinema-copy{right:5.2%;top:13%}
#top .cinema-title{font-size:clamp(22px,2.6vw,38px);gap:22px;line-height:1.5}
#top .cinema-title span+span{margin-top:40px}
}
/* Keep the footer brand centered and prevent accidental character wrapping. */
.footer>.footer-heading>.brand{display:flex;flex-direction:column;align-items:center;gap:12px;width:180px;min-width:180px;justify-self:start;color:var(--ink)}
.footer>.footer-heading>.brand .brand-logo{display:block;width:100px;height:100px;object-fit:contain}
.footer>.footer-heading>.brand .brand-ja{display:block;width:auto;white-space:nowrap;text-align:center;font-size:15px;line-height:1.85;letter-spacing:.05em}
.footer>.footer-heading{align-items:center}
.footer>div:not(.footer-heading){flex-wrap:wrap;row-gap:16px;align-items:center}
.footer>div:not(.footer-heading)>a{white-space:nowrap;line-height:1.8}
@media(max-width:760px){.footer>.footer-heading>.brand{width:120px;min-width:0;gap:10px}.footer>.footer-heading>.brand .brand-logo{width:82px;height:82px}.footer>.footer-heading>.brand .brand-ja{font-size:12px;letter-spacing:.03em}.footer>.footer-heading{align-items:start}}

.care-other-consult{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:30px 0 0;padding:24px 28px;background:#fff;border:1px solid #e7d4c6;border-left:4px solid #dc8651;border-radius:18px;box-shadow:0 8px 24px #274b5c0c}.care-other-consult .eyebrow{margin:0 0 6px;font-size:10px}.care-other-consult h3{margin:0 0 6px;font-size:18px;line-height:1.7;color:var(--ink)}.care-other-consult p:not(.eyebrow){margin:0;font-size:14px;line-height:1.8;color:#536e7b}.care-other-consult .button{flex:0 0 auto}@media(max-width:650px){.care-other-consult{align-items:stretch;flex-direction:column;gap:16px;padding:20px}.care-other-consult h3{font-size:16px}.care-other-consult .button{width:100%;text-align:center}}

/* Mobile: keep homepage benefit labels and supporting text on one line. */
@media(max-width:760px){
  .benefits{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:10px 18px}
  .benefits span{display:flex;align-items:center;justify-content:space-between;gap:8px;flex:none;width:100%;padding:11px 2px;text-align:left;font-size:11.5px;line-height:1.5;white-space:nowrap}
  .benefits span+span{padding:11px 2px;border-left:0;border-top:1px solid #cedfe7}
  .benefits b{display:block;flex:0 0 auto;margin:0;font-size:14px;line-height:1.5;white-space:nowrap}
}
/* Keep the practitioner’s head inside both option-card image crops. */
.option-card#swelling>img,.option-card#high-voltage>img{object-position:center top}

/* Show the full radio-wave treatment photo in its original 4:3 framing. */
.option-card#swelling>img{aspect-ratio:4/3;object-position:center}

/* Keep mobile navigation reachable above the fixed booking buttons. */
@media(max-width:760px){
 .header #navigation{max-height:calc(100vh - 170px - env(safe-area-inset-bottom,0px));max-height:calc(100dvh - 170px - env(safe-area-inset-bottom,0px));overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
 .header #navigation>a{flex-shrink:0}
}


/* Homepage introductions: transparent character and director portrait. */
#concerns .care-selector-heading{display:grid;grid-template-columns:minmax(0,1fr) 180px;column-gap:36px;row-gap:18px;align-items:center}
#concerns .care-selector-copy{min-width:0}
#concerns .care-selector-mascot{width:100%;height:260px;object-fit:contain;object-position:center;justify-self:end}
#concerns .care-selector-description{grid-column:1/-1;font-size:16px;margin:0}
.home-intro .home-director-portrait{width:clamp(200px,25vw,300px);height:auto;max-height:none;object-fit:contain;padding:0;background:transparent;border-radius:0;margin:0;align-self:end}
.home-intro>.wrap{gap:48px}
@media(max-width:760px){
 #concerns .care-selector-heading{grid-template-columns:minmax(0,1fr) clamp(84px,25vw,120px);column-gap:12px;row-gap:18px}
 #concerns .care-selector-copy .eyebrow{font-size:11px;letter-spacing:.13em;margin-bottom:14px}
 #concerns .care-selector-copy h2{font-size:clamp(23px,6vw,28px);line-height:1.7;letter-spacing:.02em}
 #concerns .care-selector-mascot{height:200px;max-height:none;object-fit:cover;align-self:center}
 #concerns .care-selector-description{font-size:14px;line-height:1.9}
 .home-intro>.wrap{gap:20px;align-items:center}
 .home-intro .home-director-portrait{width:clamp(100px,30vw,150px);margin:0;align-self:center}
 .home-intro>.wrap>div{min-width:0;flex:1}
}


/* Large original director photograph with its natural background. */
.home-intro>.wrap{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:56px;align-items:center}
.home-intro .home-director-portrait{display:block;width:100%;max-width:420px;height:auto;max-height:none;object-fit:contain;border-radius:24px;padding:0;margin:0 auto;align-self:center;background:transparent}
.home-intro>.wrap>div{min-width:0}
@media(max-width:760px){
 .home-intro>.wrap{grid-template-columns:minmax(0,1fr);gap:30px}
 .home-intro .home-director-portrait{width:100%;max-width:360px;border-radius:20px}
 .home-intro h2{font-size:clamp(21px,5.8vw,27px);line-height:1.8;letter-spacing:.02em}
 .home-intro h2 br{display:initial}
}

/* Local area beside the clinic name in the shared header. */
.header .brand-location{display:block;flex-shrink:0;white-space:nowrap;font-size:12px;line-height:1.6;letter-spacing:.04em;color:var(--ink);border-left:1px solid #d6e0e5;padding-left:12px;margin-left:2px}
@media(max-width:760px){.header .brand{gap:8px}.header .brand-location{font-size:10px;padding-left:8px;margin-left:0;letter-spacing:0}}
@media(max-width:374px){.header{padding-left:14px;padding-right:14px}.header .brand-logo{width:48px;height:48px}.header .brand-ja{font-size:10px}.header .brand-location{font-size:9px;padding-left:6px}.header .brand{gap:6px}}
