/* Homepage only: independent scale, spacing and responsive composition. */
html:has(body.home-v2){zoom:1;font-size:100%}
.home-v2{font-size:16px;color:#302b25}
.home-v2 .home-shell{width:min(1452px,calc(100% - 64px))}
.home-v2 .header-inner{height:88px;gap:24px}
.home-v2 .primary-nav{gap:18px}
.home-v2 .primary-group>a{font-size:16px}
.home-v2 .header-booking{font-size:15px;background:#81684f}
.home-v2 .nav-dropdown{top:88px}
.home-v2 .hero-content{min-height:620px}
.home-v2 .hero-copy{padding:64px 0 76px 40px;max-width:58%}
.home-v2 .hero-copy h1{font-size:clamp(48px,4.8vw,76px);line-height:1.4;letter-spacing:-3px}
.home-v2 .hero-english{font-size:13px;letter-spacing:5px;margin:22px 0 30px}
.home-v2 .hero-desc{font-size:21px;line-height:1.85;margin-bottom:34px;color:#5e554b}
.home-v2 .outline-button{font-size:17px;min-height:48px;padding:11px 26px}
.home-v2 .hero-pagination button{width:10px;height:10px;margin:8px}
.home-v2 .hero-pagination button:before{inset:-17px}
.home-v2 .home-values{padding:84px 0}
.home-v2 .value svg{width:52px;height:46px;margin:18px auto 22px}
.home-v2 .value h2{font-size:25px;margin-bottom:14px;word-break:keep-all}
.home-v2 .value p{font-size:17px;color:#746a60;line-height:1.85}
.home-v2 .value-number{font-size:12px}
.home-v2 .value+.value:before{top:24px;bottom:24px;background:#e9e1d8}
.home-v2 .treatments{padding:12px 0 96px}
.home-v2 .treatment-heading{gap:28px;margin-bottom:32px;flex-wrap:wrap}
.home-v2 .treatment-heading h2{font-size:32px;letter-spacing:-.5px}
.home-v2 .treatment-heading p,.home-v2 .treatment-heading>a{font-size:16px;color:#756a60}
.home-v2 .treatment-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
.home-v2 .treatment-card{aspect-ratio:2.05;border-radius:8px}
.home-v2 .treatment-card>div{left:32px;bottom:34px}
.home-v2 .treatment-card h3{font-size:31px;margin-bottom:10px}
.home-v2 .treatment-card small{font-size:12px;letter-spacing:1px;color:#6f5d4b}
.home-v2 .card-arrow{width:48px;height:48px;right:28px;bottom:28px;font-size:24px}
.home-v2 .tour-section{margin-bottom:100px}
.home-v2 .clinic-tour{height:380px;border-radius:8px}
.home-v2 .tour-copy{left:52px;top:52px}
.home-v2 .tour-copy h2{font-size:48px;margin-bottom:22px}
.home-v2 .tour-copy p{font-size:19px;line-height:1.8;margin-bottom:24px}
.home-v2 .tour-more{font-size:13px}
.home-v2 .tour-action{right:44px;transform:translateY(-50%)}
.home-v2 .footer-clinic-info{background:#f6f2ec;padding:64px 0}
.home-v2 .footer-info-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 64px}
.home-v2 .footer-info-grid h2{font-size:24px;margin-bottom:14px;color:#5c4837}
.home-v2 .footer-info-lead{font-size:15px;color:#756859}
.home-v2 .footer-hours dl{grid-template-columns:minmax(0,1fr);gap:0;margin:24px 0}
.home-v2 .footer-hours dl>div{display:grid;grid-template-columns:140px 1fr;font-size:17px;gap:20px}
.home-v2 .footer-hours dd{text-align:right;color:#5e5245}

.home-v2 .footer-hours-phone{font-size:16px;gap:16px}
.home-v2 .footer-hours-phone strong{font-size:27px;color:#66503c}
.home-v2 .footer-news-tabs{margin-bottom:22px}
.home-v2 .footer-news-tabs button{font-size:18px;min-height:48px;padding:10px 24px}
.home-v2 .footer-news-tabs button[aria-selected=true]{background:transparent;color:#624b34;border-bottom:2px solid #81684f;border-radius:0}
.home-v2 .footer-news-more{min-width:44px;min-height:44px;display:grid;place-items:center}
.home-v2 .footer-news ul{gap:20px}
.home-v2 .footer-news li{font-size:17px;gap:24px;line-height:1.7}
.home-v2 .footer-news time{font-size:14px;color:#7c6f60}
.home-v2 .footer-shortcut-photo{aspect-ratio:2.5;border:0;border-radius:6px}
.home-v2 .footer-hospitals{padding:32px 0}
.home-v2 .footer-hospitals button{width:44px;height:44px}
.home-v2 .footer-brand{padding:36px 0;gap:48px}
.home-v2 .footer-brand p{font-size:16px;color:#706355}
.home-v2 .home-footer{background:#eee8e0;color:#6c5f51}
.home-v2 .footer-details{padding:28px 0 40px}
.home-v2 .footer-details p{font-size:14px;line-height:2;color:#6c5f51;margin:7px 0}
.home-v2 .footer-policy-links{font-size:15px;gap:28px;margin-bottom:22px}
.home-v2 .footer-policy-links>*{min-height:44px;display:inline-flex;align-items:center}
.home-v2 .footer-copyright{color:#7a6c5b}
@media(max-width:1250px){
 .home-v2 .primary-nav{display:none}
 .home-v2 .home-head-actions{margin-left:auto}
 .home-v2 .hero-copy{padding-left:12px}
 .home-v2 .hero-copy h1{font-size:58px}
}
@media(max-width:900px){
 .home-v2 .home-shell{width:calc(100% - 48px)}
 .home-v2 .hero-content{min-height:560px}
 .home-v2 .hero-copy{max-width:65%}
 .home-v2 .hero-copy h1{font-size:48px}
 .home-v2 .hero-desc{font-size:18px}
 .home-v2 .home-values{padding:64px 0}
 .home-v2 .value h2{font-size:20px}
 .home-v2 .value p{font-size:15px}
 .home-v2 .treatment-heading p{display:none}
 .home-v2 .treatment-card>div{left:24px;bottom:28px}
 .home-v2 .treatment-card h3{font-size:26px}
 .home-v2 .card-arrow{right:18px;bottom:20px}
 .home-v2 .footer-info-grid{gap:36px}
 .home-v2 .footer-hours dl>div{font-size:15px;grid-template-columns:110px 1fr;gap:10px}
 .home-v2 .footer-news li{font-size:15px;gap:12px}
}
@media(max-width:600px){
 .home-v2{padding-bottom:calc(78px + env(safe-area-inset-bottom))}
 .home-v2 .home-shell{width:calc(100% - 40px)}
 .home-v2 .header-inner{height:76px;gap:12px}
 .home-v2 .logo-type strong{font-size:26px}
 .home-v2 .home-head-actions{gap:10px}
 .home-v2 .home-search,.home-v2 .home-menu-btn{width:44px;height:44px;display:grid;place-content:center}
 .home-v2 .home-menu-btn span{width:22px;margin:3px 0}
 .home-v2 .hero-content{width:100%;min-height:490px}
 .home-v2 .hero-copy{padding:48px 0 68px 22px;max-width:none;width:100%}
 .home-v2 .hero-copy h1{font-size:clamp(32px,8.5vw,38px);letter-spacing:-1.6px;line-height:1.42;max-width:210px}
 .home-v2 .hero-english{font-size:10px;letter-spacing:2px;max-width:160px;line-height:1.9;margin:20px 0 24px}
 .home-v2 .hero-desc{font-size:14px;line-height:1.9;margin-bottom:28px;letter-spacing:-.3px}
 .home-v2 .hero-visual img{object-position:62% center}
 .home-v2 .outline-button{min-height:44px;font-size:14px;padding:9px 16px;gap:16px}
 .home-v2 .hero-pagination{left:18px;bottom:12px;gap:2px}
 .home-v2 .home-values{padding:56px 0}
 .home-v2 .value svg{width:40px;height:36px;margin:0 auto 16px}
 .home-v2 .value h2{font-size:15px;max-width:90px;margin:0 auto;line-height:1.6;letter-spacing:-.5px}
 .home-v2 .value+.value:before{top:4px;bottom:4px}
 .home-v2 .treatments{padding:12px 0 64px}
 .home-v2 .treatment-heading{justify-content:flex-start;margin-bottom:24px}
 .home-v2 .treatment-heading h2{font-size:24px}
 .home-v2 .treatment-grid{grid-template-columns:minmax(0,1fr);gap:20px}
 .home-v2 .treatment-card{aspect-ratio:1.7}
 .home-v2 .treatment-card>div{left:24px;top:auto;bottom:28px}
 .home-v2 .treatment-card h3{font-size:28px;margin-bottom:8px}
 .home-v2 .treatment-card small{font-size:11px;letter-spacing:.7px}
 .home-v2 .card-arrow{width:44px;height:44px;right:20px;bottom:24px}
 .home-v2 .tour-section{margin-bottom:64px}
 .home-v2 .clinic-tour{height:340px}
 .home-v2 .clinic-tour>img{object-position:58% center}
 .home-v2 .clinic-tour:after{background:linear-gradient(0deg,#302418bb,transparent 90%)}
 .home-v2 .tour-copy{left:24px;top:auto;bottom:30px}
 .home-v2 .tour-copy h2{font-size:33px;line-height:1.18;margin-bottom:16px}
 .home-v2 .tour-copy h2 br{display:block}
 .home-v2 .tour-copy p{font-size:15px;max-width:220px;line-height:1.8}
 .home-v2 .tour-copy p br{display:block}
 .home-v2 .tour-action{right:20px;top:auto;bottom:30px;transform:none}
 .home-v2 .tour-action>span{width:44px;height:44px}
 .home-v2 .footer-clinic-info{padding:44px 0}
 .home-v2 .footer-info-grid{grid-template-columns:minmax(0,1fr);gap:40px}
 .home-v2 .footer-hours,.home-v2 .footer-news{grid-column:auto}
 .home-v2 .footer-info-grid h2{font-size:24px}
 .home-v2 .footer-hours dl>div{grid-template-columns:110px 1fr;font-size:16px;gap:12px}
 .home-v2 .footer-news li{display:grid;grid-template-columns:minmax(0,1fr) auto;font-size:15px;gap:14px}
 .home-v2 .footer-news time{font-size:12px}
 .home-v2 .footer-shortcut-photo{aspect-ratio:2.3}
 .home-v2 .footer-hospitals-inner{gap:0}
 .home-v2 .footer-hospitals button{width:36px}
 .home-v2 .footer-brand{flex-wrap:wrap;gap:12px;padding:30px 0}
 .home-v2 .footer-brand .home-logo{width:100%}
 .home-v2 .footer-brand .logo-type strong{font-size:24px}
 .home-v2 .footer-brand p{font-size:14px;max-width:none}
 .home-v2 .footer-details p{font-size:13px;line-height:1.95;overflow-wrap:anywhere}
 .home-v2 .footer-details p span{display:inline-block;margin:0 4px}
 .home-v2 .footer-details{padding:24px 0 28px}
 .home-v2 .home-mobile-cta{padding:10px 20px calc(12px + env(safe-area-inset-bottom));background:#fff;backdrop-filter:none}
 .home-v2 .home-mobile-cta>a{background:#796047;font-size:16px;min-height:48px;border-radius:6px}
}
@media(max-width:360px){
 .home-v2 .home-shell{width:calc(100% - 32px)}
 .home-v2 .home-logo{gap:4px}
 .home-v2 .logo-type strong{font-size:23px}
 .home-v2 .home-head-actions{gap:2px}
 .home-v2 .hero-copy{padding-left:18px}
 .home-v2 .hero-copy h1{max-width:185px;font-size:32px}
 .home-v2 .hero-desc{font-size:13px}
 .home-v2 .hero-visual img{object-position:61% center}
 .home-v2 .value h2{font-size:14px}
 .home-v2 .treatment-heading h2{font-size:22px}
 .home-v2 .tour-copy{left:20px}
 .home-v2 .tour-copy h2{font-size:29px}
 .home-v2 .tour-copy p{font-size:14px;max-width:185px}
}

@media(max-width:600px){.home-v2.home-footer-visible .home-mobile-cta{visibility:hidden;pointer-events:none}}

/* Main visual: brand copy on the left, the complete video on the right. */
.home-v2 .hero-video-panel{position:absolute;right:0;top:0;width:58%;height:100%;z-index:2;background:#080c0d;display:flex;align-items:center}
.home-v2 .hero-video-panel video{display:block;width:100%;height:100%;object-fit:contain}
.home-v2 .home-hero:not(.video-active) .hero-video-panel{display:none}
.home-v2 .video-active{background:#f4eee6}
.home-v2 .video-active .hero-visual,.home-v2 .video-active .hero-signature{display:none}
.home-v2 .video-active .hero-content{min-height:clamp(460px,32.625vw,620px);pointer-events:none}
.home-v2 .video-active .hero-copy{max-width:40%;padding:48px 0;pointer-events:auto}
.home-v2 .video-active .hero-copy h1{font-size:clamp(36px,3.3vw,54px);letter-spacing:-2px}
.home-v2 .video-active .hero-english{font-size:11px;letter-spacing:2px}
.home-v2 .video-active .hero-desc{font-size:18px}
.home-v2 .video-active .hero-pagination{left:0;pointer-events:auto}
@media(max-width:900px){
 .home-v2 .video-active .hero-copy h1{font-size:32px}
 .home-v2 .video-active .hero-desc{font-size:15px}
 .home-v2 .video-active .hero-copy{max-width:40%}
 .home-v2 .video-active .hero-english{letter-spacing:1px;font-size:10px}
 .home-v2 .video-active .outline-button{font-size:14px;gap:12px;padding:9px 14px}
}
@media(max-width:600px){
 .home-v2 .video-active{display:flex;flex-direction:column}
 .home-v2 .video-active .hero-content{order:1;min-height:0;width:calc(100% - 40px)}
 .home-v2 .video-active .hero-copy{max-width:none;padding:36px 0 64px}
 .home-v2 .video-active .hero-copy h1{font-size:34px;max-width:none}
 .home-v2 .video-active .hero-english{max-width:none;margin:16px 0 20px;font-size:11px;letter-spacing:2px}
 .home-v2 .video-active .hero-desc{font-size:15px;margin-bottom:24px}
 .home-v2 .video-active .hero-pagination{bottom:10px}
 .home-v2 .hero-video-panel{position:relative;order:2;inset:auto;width:100%;height:auto;aspect-ratio:16/9}
 .home-v2 .hero-video-panel video{aspect-ratio:16/9;height:auto}
}

/* Ivory portrait and cinematic film form one continuous masthead. */
.home-v2 .video-active{background:radial-gradient(ellipse at 32% 10%,#e7dbca 0,transparent 48%),#f5efe6}
.home-v2 .video-active .hero-content{min-height:clamp(390px,29vw,520px);z-index:4}
.home-v2 .video-active .hero-copy{max-width:30%;padding:38px 0 54px}
.home-v2 .video-active .hero-copy h1{font-size:clamp(32px,2.8vw,48px);line-height:1.4;letter-spacing:-1.8px}
.home-v2 .video-active .hero-english{font-size:10px;letter-spacing:2.5px;margin:18px 0 24px}
.home-v2 .video-active .hero-desc{font-size:16px;line-height:1.8;margin-bottom:24px}
.home-v2 .video-active .outline-button{font-size:14px;min-height:44px;padding:8px 20px;gap:24px}
.home-v2 .hero-video-panel{width:46%;background:#080c0d}
.home-v2 .hero-video-panel:before{content:"";position:absolute;top:0;bottom:0;left:-52px;width:54px;background:linear-gradient(90deg,transparent,#080c0d);pointer-events:none;z-index:1}
.home-v2 .hero-doctor{position:absolute;bottom:-12%;left:29%;width:29%;aspect-ratio:385/544;z-index:1;pointer-events:none;mask-image:linear-gradient(90deg,transparent,#000 18%,#000 84%,transparent)}
.home-v2 .hero-doctor-photo{position:absolute;inset:0;overflow:hidden;mask-image:linear-gradient(0deg,transparent,#000 13%,#000 86%,transparent)}
.home-v2 .hero-doctor-photo img{position:absolute;width:306.234%;max-width:none;height:auto;left:-35.844%;top:-67.279%}
.home-v2 .hero-doctor-caption{position:absolute;left:27%;bottom:36px;z-index:3;color:#65513e}
.home-v2 .hero-doctor-caption>p{font-family:'Nanum Pen Script',cursive;font-size:33px;line-height:.95;transform:rotate(-12deg);color:#b2997c;margin:0 0 56px}
.home-v2 .hero-doctor-caption>a{display:block;font-size:15px;min-height:32px}
.home-v2 .hero-doctor-caption>a span{font-size:12px}
.home-v2 .hero-doctor-caption>small{display:block;font-family:'Nanum Pen Script',cursive;font-size:25px;color:#ab9073}
.home-v2 .home-hero:not(.video-active) .hero-doctor,.home-v2 .home-hero:not(.video-active) .hero-doctor-caption{display:none}
@media(min-width:1600px){.home-v2 .hero-doctor{left:30%;width:26%;bottom:-22%}.home-v2 .hero-doctor-caption{left:29%}}
@media(max-width:1100px){
 .home-v2 .video-active .hero-copy{max-width:32%}
 .home-v2 .video-active .hero-copy h1{font-size:30px}
 .home-v2 .video-active .hero-desc{font-size:14px}
 .home-v2 .video-active .hero-english{font-size:9px;letter-spacing:1.3px}
 .home-v2 .hero-doctor{left:29%;width:30%;bottom:-3%}
 .home-v2 .hero-doctor-caption{left:32%;bottom:24px}
 .home-v2 .hero-doctor-caption>p{font-size:27px;margin-bottom:70px}
 .home-v2 .hero-doctor-caption>small{font-size:20px}
}
@media(max-width:600px){
 .home-v2 .video-active .hero-content{min-height:440px;z-index:2}
 .home-v2 .video-active .hero-copy{max-width:67%;padding:38px 0 60px}
 .home-v2 .video-active .hero-copy h1{font-size:clamp(26px,7.2vw,32px);letter-spacing:-1.6px}
 .home-v2 .video-active .hero-english{font-size:9px;letter-spacing:1px;max-width:180px;margin:18px 0 24px}
 .home-v2 .video-active .hero-desc{font-size:13px;line-height:1.9;margin-bottom:24px}
 .home-v2 .video-active .outline-button{font-size:12px;padding:8px 12px;gap:12px}
 .home-v2 .hero-doctor{left:auto;right:-16%;top:0;bottom:auto;width:74%;mask-image:linear-gradient(90deg,transparent,#000 34%,#000 82%,transparent);opacity:.9}
 .home-v2 .hero-doctor-caption{left:auto;right:18px;top:365px;bottom:auto;text-align:right}
 .home-v2 .hero-doctor-caption>p,.home-v2 .hero-doctor-caption>small{display:none}
 .home-v2 .hero-doctor-caption>a{font-size:14px}
 .home-v2 .hero-video-panel{width:100%;z-index:3}
 .home-v2 .hero-video-panel:before{display:none}
}
.home-v2 .hero-doctor{top:0;bottom:0;height:100%;aspect-ratio:auto}
.home-v2 .hero-doctor-photo img{top:0;transform:translateY(-27.44%)}
.home-v2 .hero-doctor-photo img{clip-path:inset(0 0 31.8% 0)}
.home-v2 .hero-doctor-caption>p{width:150px;font-size:26px}
.home-v2 .hero-doctor-caption>small{font-size:21px}

/* The home page resets the page zoom to 1, so the quick menu needs no compensation here. */
.home-v2 .clinic-floating-links{zoom:1}

/* Hero video plays as a silent background loop: no native controls or tap-to-play overlay. */
#hero-video{pointer-events:none}
#hero-video::-webkit-media-controls,#hero-video::-webkit-media-controls-panel,#hero-video::-webkit-media-controls-overlay-play-button,#hero-video::-webkit-media-controls-start-playback-button{display:none!important;-webkit-appearance:none}
