.home-page #header {background:#fff; color:#293f54; border-bottom:1px solid #e9eef3}
.home-page #header a {color:#293f54}
.home-page #header .site-logo a {background-position:0 -70px}
.home-page #header .clinic-nav-toggle {color:#293f54}
.home-page.hero-visible #top_btn {visibility:hidden; pointer-events:none}
.mc-home-hero {margin-top:100px; background:#f1f5f8; color:#263f56; border-bottom:1px solid #e4ebf1; overflow:hidden}
.mc-home-hero * {box-sizing:border-box}
.hero-stage {display:grid}
.hero-slide {grid-area:1/1; min-width:0}
/* Reserve the tallest slide's space so text wrapping never moves the content below. */
.hero-slide[hidden] {display:block; visibility:hidden; pointer-events:none}
.hero-inner {max-width:1200px; margin:0 auto; display:grid; grid-template-columns:54% 46%; min-height:550px; align-items:center}
.hero-copy {position:relative; z-index:1; padding:54px 28px 54px 0; word-break:keep-all; overflow-wrap:anywhere}
.mc-home-hero .hero-eyebrow {font-size:14px; font-weight:500; color:#5d7991; margin:0 0 24px; letter-spacing:.3px}
.mc-home-hero h1,.mc-home-hero h2 {font-size:42px; font-weight:400; line-height:1.48; letter-spacing:-1.8px; margin:0; color:#293f54}
.mc-home-hero h1 strong,.mc-home-hero h2 strong {font-weight:600; color:#244f76}
.mc-home-hero .hero-doctor-name {font-size:17px; color:#526a80; margin:26px 0 6px}
.hero-doctor-name strong {font-weight:600; color:#29465f; margin-left:8px}
.mc-home-hero .hero-description {font-size:16px; line-height:1.85; color:#63768a; margin:24px 0 0; font-weight:400}
.hero-doctor .hero-description {margin-top:0; font-size:15px}
.hero-link {display:inline-flex; align-items:center; justify-content:space-between; gap:44px; padding:13px 19px; margin-top:30px; border:1px solid #b5c7d7; border-radius:4px; color:#315b80; background:#ffffff66; font-size:14px; font-weight:500; transition:background .2s,border-color .2s}
.hero-link:hover {background:#fff; border-color:#6e95b7; color:#245785}
.hero-link span {font-size:20px; line-height:1}
.hero-links {display:flex; align-items:baseline; flex-wrap:wrap; gap:24px}
.hero-text-link {color:#526e87; font-size:14px; padding:10px 0}
.hero-text-link span {margin-left:10px}
.hero-text-link:hover {color:#245785}
.mc-home-hero a:focus-visible,.mc-home-hero button:focus-visible {outline:3px solid #326fa9; outline-offset:4px}
.hero-portrait {position:relative; align-self:stretch; min-width:0; height:550px; margin:0}
.hero-portrait img {width:100%; height:100%; display:block; object-fit:cover; object-position:50% 27%}
.hero-portrait:after {content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(90deg,#f1f5f8,transparent 22%),linear-gradient(0deg,#f1f5f8,transparent 12%)}
.hero-photo {margin:34px 0 30px; min-width:0; padding-left:12px}
.hero-photo img {display:block; width:100%; height:425px; object-fit:cover; object-position:center; border-radius:5px}
.hero-photo figcaption {font-size:12px; line-height:1.5; color:#728497; margin-top:12px; letter-spacing:.1px}
.hero-controls {max-width:1200px; margin:0 auto; padding:0 0 22px; display:flex; align-items:center; gap:28px}
.hero-controls[hidden] {display:none}
.hero-choices {display:flex; align-items:center; gap:26px}
.hero-choices button,.hero-play {appearance:none; font:inherit; border:0; background:transparent; cursor:pointer; color:#76889a; font-size:13px; padding:12px 0}
.hero-choices button {position:relative; font-weight:400; min-height:44px}
.hero-choices button span {font-size:11px; margin-right:7px}
.hero-choices button:after {content:""; position:absolute; left:0; right:0; bottom:3px; height:2px; background:transparent}
.hero-choices button[aria-pressed="true"] {color:#285c89; font-weight:600}
.hero-choices button[aria-pressed="true"]:after {background:#608aaa}
.hero-play {display:inline-flex; align-items:center; gap:7px; color:#60778c; padding:12px 10px; min-height:44px; margin-left:4px}
.hero-play-icon {font-size:14px; min-width:14px; text-align:center}
.home-page .wrap.swiper.home-care {top:0; width:min(1200px,92%); height:auto; margin-top:42px; padding:0 0 8px; overflow:hidden}
.home-care-heading {display:flex; align-items:baseline; justify-content:space-between; gap:15px; margin-bottom:22px}
.home-care-heading h2 {font-size:24px; font-weight:600; color:#2c455c; letter-spacing:-.7px}
.home-care-heading > a {font-size:13px; color:#527394; white-space:nowrap}
.home-care .swiper-container {height:180px; overflow:hidden}
.home-care .swiper-wrapper .swiper-slide {height:180px; border-radius:9px; font-size:19px; text-shadow:0 1px 6px #12233266; overflow:hidden}
.home-care .swiper-wrapper .swiper-slide a {align-items:flex-end; justify-content:flex-start; padding:20px; background:linear-gradient(0deg,#132b4794,transparent 65%); font-weight:600}
.home-care .swiper-wrapper .swiper-slide a:focus-visible {outline:3px solid #fff; outline-offset:-6px}
.home-care .home-care-pagination {position:static; transform:none; margin-top:15px; text-align:center; min-height:8px}
.home-care .home-care-pagination .swiper-pagination-bullet {background:#7395b5}
.home-pain-links {display:flex; align-items:center; gap:24px; margin-top:24px; padding:22px 0 0; border-top:1px solid #e5ebf2}
.home-pain-links > span {flex:none; font-size:14px; font-weight:600; color:#4c637a}
.home-pain-links > div {display:flex; flex-wrap:wrap; flex:1; gap:10px}
.home-pain-links a {display:flex; align-items:center; justify-content:space-between; gap:22px; flex:1; min-width:110px; padding:13px 16px; border:1px solid #e3eaf2; border-radius:7px; color:#345774; background:#f7f9fc; font-size:14px; white-space:nowrap}
.home-pain-links a span {color:#6b87a1}
.home-pain-links a:hover {background:#edf3f9; border-color:#bed0e1}
.home-pain-links a:focus-visible {outline:2px solid #245b96; outline-offset:3px}
@media(max-width:767px) {
    .home-pain-links {display:block; padding-top:20px; margin-top:18px}
    .home-pain-links > span {display:block; margin-bottom:12px}
    .home-pain-links > div {display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px}
    .home-pain-links a {min-width:0; padding:12px 14px}
}
.home-page .main_about {padding-top:84px}
.home-page .main_about .bg {display:none}
@media(max-width:1280px) {
    .hero-inner,.hero-controls {margin-left:4%; margin-right:4%}
    .mc-home-hero h1,.mc-home-hero h2 {font-size:38px}
    .hero-inner {min-height:510px}
    .hero-portrait {height:510px}
    .hero-photo img {height:390px}
}
@media(max-width:1023px) {
    .mc-home-hero {margin-top:90px}
    .hero-inner {grid-template-columns:54% 46%; min-height:470px}
    .hero-copy {padding:38px 14px 38px 0}
    .mc-home-hero h1,.mc-home-hero h2 {font-size:clamp(28px,3.6vw,36px); letter-spacing:-1.3px}
    .mc-home-hero .hero-eyebrow {font-size:12px; margin-bottom:20px}
    .hero-portrait {height:470px}
    .hero-photo img {height:330px}
    .hero-photo {padding-left:0}
    .mc-home-hero .hero-description {font-size:14px}
    .mc-home-hero .hero-doctor-name {font-size:15px}
    .hero-link {margin-top:24px}
}
@media(min-width:1024px) and (max-height:800px) {
    .hero-inner {min-height:460px}
    .hero-copy {padding-top:30px; padding-bottom:30px}
    .hero-portrait {height:460px}
    .hero-photo img {height:345px}
    .hero-controls {padding-bottom:14px}
}
@media(max-width:767px) {
    .home-page #header .site-logo a {background-position:0 -52px}
    .mc-home-hero {margin-top:70px}
    .hero-inner {display:flex; flex-direction:column; margin:0; min-height:0; height:100%; align-items:stretch}
    .hero-copy {padding:32px 6% 20px}
    .mc-home-hero .hero-eyebrow {font-size:12px; margin-bottom:15px}
    .mc-home-hero h1,.mc-home-hero h2 {font-size:clamp(25px,6.6vw,36px); line-height:1.5; letter-spacing:-1px}
    .mc-home-hero .hero-doctor-name {font-size:14px; margin:18px 0 5px}
    .hero-doctor-name strong {margin-left:6px}
    .mc-home-hero .hero-description {font-size:13px; line-height:1.8; margin-top:16px}
    .hero-doctor .hero-description {font-size:12px; margin-top:0}
    .hero-link {font-size:13px; margin-top:20px; padding:11px 15px; gap:32px}
    .hero-text-link {font-size:13px}
    .hero-portrait {height:300px; align-self:stretch; width:100%; margin-top:auto}
    .hero-portrait img {width:100%; max-width:430px; margin:0 auto; object-fit:cover; object-position:50% 20%}
    .hero-portrait:after {background:linear-gradient(180deg,#f1f5f8,transparent 12%,transparent 88%,#f1f5f8)}
    .hero-photo {padding:0; margin:14px 6% 20px; margin-top:auto}
    .hero-photo img {height:275px; object-position:center}
    .hero-photo figcaption {font-size:11px; margin-top:9px}
    .hero-controls {margin:0 6%; padding:4px 0 16px; justify-content:space-between; gap:8px}
    .hero-choices {gap:17px}
    .hero-choices button {font-size:12px}
    .hero-choices button span {display:none}
    .hero-play {font-size:11px; padding-left:6px; padding-right:0; margin-left:0}
    .home-page .wrap.swiper.home-care {margin-top:28px}
    .home-care-heading {margin-bottom:16px; gap:8px}
    .home-care-heading h2 {font-size:19px}
    .home-care-heading > a {font-size:12px}
    .home-care .swiper-container,.home-care .swiper-wrapper .swiper-slide {height:168px}
    .home-care .swiper-wrapper .swiper-slide {font-size:17px}
    .home-care .swiper-wrapper .swiper-slide a {padding:16px}
    .home-page .main_about {padding-top:46px}
}
@media(prefers-reduced-motion:no-preference) {
    .hero-slide:not([hidden]) .hero-copy {animation:hero-appear .45s ease-out}
    @keyframes hero-appear {from {opacity:.3; transform:translateY(6px)} to {opacity:1; transform:none}}
}
