/* Youngsin v3.2 - cohesive warm editorial clinic theme */
:root{--v32-forest:#254a3e;--v32-sage:#667e6b;--v32-cream:#f9f7f1;--v32-line:#e7e6df}
body{background:#fcfbf8;color:#263d34}
.site-header{background:rgba(255,255,255,.97)!important;border-bottom:1px solid #ecece6;position:relative;z-index:50}
.site-header .brand-logo-img{object-fit:contain;border-radius:13px}
.desktop-nav a{font-weight:500}
.nav-book,.primary-link{background:var(--v32-forest)!important;color:white!important;border-radius:40px!important}
.hero-v32{min-height:610px;position:relative;background:#f4eee5;overflow:hidden;display:flex;align-items:center}
.hero-v32 .hero-photo{position:absolute;inset:0;background-size:cover;background-position:center 52%;opacity:1}
.hero-v32 .hero-wash{position:absolute;inset:0;background:linear-gradient(90deg,rgba(252,249,243,.98) 0%,rgba(252,249,243,.94) 22%,rgba(252,249,243,.69) 39%,rgba(252,249,243,.12) 64%,transparent 100%)}
.hero-v32 .hero-inner{position:relative;width:100%;padding-top:100px;padding-bottom:100px;z-index:1}
.hero-v32 .hero-content{max-width:630px}
.hero-v32 h1{font-size:clamp(39px,4.1vw,67px);line-height:1.3;letter-spacing:-.055em;color:#1f3f34}
.hero-v32 h1 em{color:#5e7966;font-style:normal}
.hero-v32 .hero-desc{color:#44594d;line-height:1.95}
.hero-v32 .eyebrow{color:#47685b}
.care-strip{background:#fff;border-bottom:1px solid var(--v32-line)}
.care-strip-grid{display:grid;grid-template-columns:repeat(5,1fr);padding:27px 0}
.care-strip-grid a{display:flex;align-items:center;gap:14px;padding:12px 18px;border-right:1px solid #e5e7e0;text-decoration:none;color:#263e35;min-width:0}
.care-strip-grid a:last-child{border-right:0}
.care-strip-grid strong,.care-strip-grid small{display:block;white-space:normal}
.care-strip-grid strong{font-size:15px;margin-bottom:6px}
.care-strip-grid small{font-size:12px;color:#7c877f}
.care-symbol{flex-shrink:0;width:51px;height:51px;border-radius:50%;display:grid;place-items:center;background:#edf1e9;color:#2c5b48;font-size:25px}
.feature-links{background:#faf9f5;padding-top:55px!important;padding-bottom:65px!important}
.feature-link-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.feature-tile{min-height:295px;position:relative;border:1px solid #e7e7e0;border-radius:15px;overflow:hidden;background:#fff;text-decoration:none;color:#253e33;display:flex;align-items:center;box-shadow:0 12px 35px rgba(35,60,48,.035)}
.tile-copy{padding:32px;position:relative;z-index:2;max-width:88%}
.tile-label{display:inline-block;font-size:10px;letter-spacing:.17em;color:#678274;margin-bottom:18px}
.feature-tile h2{font-size:29px;margin:0 0 13px;letter-spacing:-.045em;color:#203f33}
.feature-tile p{font-size:14px;line-height:1.85;color:#63766a;margin:0 0 22px}
.tile-cta{font-size:13px;color:#234c3b;font-weight:700}
.constitution-tile{background:linear-gradient(125deg,#fff 40%,#eef1e8)}
.eight-mark{position:absolute;right:19px;bottom:12px;font:normal 170px Georgia,serif;color:#a9b9a5;opacity:.65;line-height:1}
.eight-mark span{font-size:40px;position:absolute;right:0;top:35px}
.photo-tile{background:#e9e4db;align-items:end}
.photo-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;filter:brightness(.95)}
.photo-tile:before{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(246,243,237,.98),rgba(246,243,237,.64) 45%,rgba(246,243,237,.02) 90%);z-index:1}
.photo-tile .tile-copy{padding-top:115px}
.reservation-tile{background:linear-gradient(130deg,#fff,#f1f2eb)}
.reservation-illustration{position:absolute;right:20px;bottom:6px;font-size:135px;opacity:.11;color:#315745}
.specialties .service-grid{gap:15px}
.service-card{border-radius:12px!important;box-shadow:none!important}
.doctor-visual img{object-fit:cover;object-position:center 30%}
@media(max-width:1000px){.care-strip-grid{grid-template-columns:repeat(3,1fr)}.care-strip-grid a:nth-child(3){border-right:0}.feature-link-grid{grid-template-columns:1fr 1fr}.hero-v32{min-height:570px}}
@media(max-width:650px){.hero-v32{min-height:560px;align-items:end}.hero-v32 .hero-photo{background-position:61% center}.hero-v32 .hero-wash{background:linear-gradient(0deg,rgba(250,248,242,.99) 0%,rgba(250,248,242,.9) 50%,rgba(250,248,242,.26) 100%)}.hero-v32 .hero-inner{padding:170px 0 50px}.hero-v32 h1{font-size:37px}.hero-v32 .hero-desc{font-size:14px}.care-strip-grid{grid-template-columns:repeat(2,1fr);padding:12px 0}.care-strip-grid a{padding:13px 5px;border:0}.care-symbol{width:40px;height:40px;font-size:20px}.care-strip-grid strong{font-size:13px}.care-strip-grid small{font-size:11px}.feature-link-grid{grid-template-columns:1fr}.feature-tile{min-height:240px}.feature-tile h2{font-size:25px}.feature-links{padding-top:28px!important}}

/* v3.2 refinement: stable gutters and a shared clinical icon set */
.hero-v32 .hero-inner{width:min(1180px,calc(100% - 80px));margin-inline:auto;padding-inline:0;box-sizing:border-box}
.hero-v32{height:auto}
.care-icon{display:block;width:36px;height:36px;object-fit:contain}
.card-icon{display:flex;align-items:center;min-height:48px}
.card-icon .care-icon{width:42px;height:42px}
.care-hero-art{position:absolute;right:max(40px,calc((100vw - 1120px)/2));top:50%;transform:translateY(-50%);width:180px;height:180px;border:1px solid #d9e3d8;border-radius:32px;background:rgba(255,255,255,.45);display:grid;place-items:center}
.care-hero-art .care-icon{width:110px;height:110px;opacity:.65}
body>section.hero:has(.care-hero-art) .hero-title,body>section.hero:has(.care-hero-art) .hero-sub{max-width:calc(100% - 220px)}
.profile-clinic-photo{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:9px;margin-bottom:26px}
@media(max-width:760px){.hero-v32 .hero-inner{width:calc(100% - 44px)}.hero-v32 .eyebrow{letter-spacing:.13em;overflow-wrap:anywhere}.care-hero-art{right:24px;width:95px;height:95px;border-radius:22px}.care-hero-art .care-icon{width:62px;height:62px}body>section.hero:has(.care-hero-art) .hero-title,body>section.hero:has(.care-hero-art) .hero-sub{max-width:calc(100% - 115px)}}
@media(max-width:480px){.care-hero-art{position:static;transform:none;margin-bottom:24px;width:72px;height:72px}.care-hero-art .care-icon{width:46px;height:46px}body>section.hero:has(.care-hero-art) .hero-title,body>section.hero:has(.care-hero-art) .hero-sub{max-width:100%}.care-symbol .care-icon{width:28px;height:28px}}

/* v3.3: section width is independent of viewport gutters */
body>section:not(.hero){width:100%;max-width:1232px;padding:80px 36px;margin-inline:auto;box-sizing:border-box}
body>section.hero{box-sizing:border-box}
body>section:not(.hero)>*,.profile-wrap>*,.why-grid>*,.treat-grid>*,.state-grid>*,.food-grid>*{min-width:0}
body>section .closing-box{background:#edf1e9;border:1px solid #dce4d9}
body>section .closing-box p{color:#53695a}
body>section .closing-strong{color:#254a3e}
.organ-badge{background:#fffdf9;border-color:#d5ded3}
.organ-badge .label{color:#65766a}.organ-badge .value{color:#29483b}
.organ-badge.strong .value{color:#356748}.organ-badge.weak .value{color:#965342}
.const-nav{width:min(1160px,calc(100% - 72px));padding:32px 0;margin-inline:auto;box-sizing:border-box}
.constitution-intro-v33{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:64px;margin-bottom:44px}
.diagnosis-v33{background:#fff;border:1px solid #e1e5dc;border-radius:16px;padding:30px}
.diagnosis-v33>p{color:#68796b;font-size:13px;margin:0 0 26px}
.diagnosis-steps-v33{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;text-align:center}
.diagnosis-steps-v33>div{position:relative}.diagnosis-steps-v33>div+div:before{content:'→';position:absolute;left:-15px;top:13px;color:#7e9682}
.diagnosis-steps-v33 span{display:grid;place-items:center;width:52px;height:52px;margin:0 auto 16px;border-radius:50%;background:#315b49;color:#fff;font-size:13px}
.diagnosis-steps-v33 strong,.diagnosis-steps-v33 small{display:block;font-size:13px}.diagnosis-steps-v33 small{color:#718074;font-size:12px;margin-top:8px}.diagnosis-note{display:block;color:#7a857b;font-size:11px;margin-top:26px}
.constitution-grid-v33{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.constitution-card-v33{background:#fff;border:1px solid #e0e5dc;border-radius:12px;padding:23px;transition:border-color .2s}
.constitution-card-v33:hover{border-color:#6d8d76}.element-label{display:inline-block;background:#ecf2e9;color:#466d51;font-size:11px;border-radius:4px;padding:2px 8px;margin-bottom:12px}
.constitution-card-v33 strong,.constitution-card-v33 small{display:block}.constitution-card-v33 strong{font-size:15px;color:#294f3c}.constitution-card-v33 small{font-size:12px;color:#778577;margin-top:7px}
.treatment-grid-v33{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:35px}.treatment-grid-v33 article{background:#fff;border:1px solid #e0e5dc;border-radius:12px;padding:30px}.treatment-number{color:#69816d;font-size:11px;letter-spacing:.1em}.treatment-grid-v33 h3{font-size:20px;margin:22px 0 12px}.treatment-grid-v33 p{font-size:14px;line-height:1.95;color:#657568}
.clinic-space-v33{background:#f2f3ed;scroll-margin-top:30px}.clinic-space-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.clinic-space-grid figure{margin:0}.clinic-space-grid img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:12px}.clinic-space-grid figcaption{color:#66796b;font-size:13px;margin-top:12px}
@media(max-width:900px){.constitution-intro-v33{gap:30px}.diagnosis-v33{padding:24px}.constitution-card-v33{padding:18px}.treatment-grid-v33{gap:14px}.treatment-grid-v33 article{padding:24px}}
@media(max-width:760px){body>section:not(.hero){padding:56px 22px}.constitution-intro-v33{grid-template-columns:1fr}.constitution-grid-v33{grid-template-columns:repeat(2,minmax(0,1fr))}.treatment-grid-v33,.clinic-space-grid{grid-template-columns:1fr}.const-nav{width:calc(100% - 44px)}}

/* v3.4 unified banners and constitution emblems */
.feature-link-grid{gap:16px}.unified-banner{position:relative;display:flex;min-height:225px;overflow:hidden;border:1px solid #e1e5db;border-radius:13px;background:#fffdf8;color:#254a3e;isolation:isolate}
.banner-copy{position:relative;z-index:2;width:61%;padding:26px 0 25px 23px;background:linear-gradient(90deg,#fffdf8 79%,transparent)}.banner-pill{display:inline-block;background:#e5ecdf;border:1px solid #dae4d4;border-radius:20px;padding:2px 11px;font-size:11px;margin-bottom:12px}.unified-banner h2{font-size:22px;line-height:1.45;letter-spacing:-.045em;margin:0 0 10px}.unified-banner p{font-size:12px;line-height:1.8;margin:0 0 17px;color:#5d7161}.banner-cta{font-size:12px;font-weight:600}.banner-art{position:absolute;right:0;top:0;width:48%;height:100%;object-fit:cover;z-index:0;mask-image:linear-gradient(90deg,transparent,#000 27%)}.unified-banner:first-child .banner-art{object-fit:contain;width:49%;mask-image:none}.unified-banner:last-child .banner-art{object-fit:cover}
.constitution-emblem{position:absolute;right:max(36px,calc((100vw - 1120px)/2));top:50%;transform:translateY(-50%);width:220px}.constitution-emblem img{display:block;width:100%;height:auto}.hero:has(.constitution-emblem) .hero-desc{max-width:calc(100% - 250px)}
@media(min-width:1001px) and (max-width:1180px){.unified-banner h2{font-size:19px}.banner-copy{padding-left:18px;width:64%}.unified-banner p{font-size:11px}}
@media(max-width:1000px){.feature-link-grid{grid-template-columns:1fr}.unified-banner{min-height:210px}.banner-copy{width:60%;padding:26px}.banner-art{width:43%}.unified-banner:first-child .banner-art{width:42%}.unified-banner h2{font-size:24px}}
@media(max-width:650px){.constitution-emblem{width:112px;right:22px;top:85px;transform:none}.hero:has(.constitution-emblem) .hero-title{max-width:calc(100% - 120px);font-size:36px}.hero:has(.constitution-emblem) .hero-desc{max-width:100%}.banner-copy{width:63%;padding:22px 0 22px 20px}.unified-banner h2{font-size:21px}.unified-banner{min-height:215px}.banner-art{width:45%}}

/* v3.5 photo refinement */
.doctor-visual img{height:auto;aspect-ratio:1/1;object-fit:cover;object-position:center;border-radius:12px}.clinic-space-grid{row-gap:24px}.clinic-space-grid a{display:block}.clinic-space-grid img{height:auto;aspect-ratio:16/10}

/* v3.6 practical visit information and complete footer */
.visit-v36{background:#fffdf9;scroll-margin-top:28px}.visit-cards-v36{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:36px 0 30px}.visit-cards-v36 article{background:#f0f3ed;border:1px solid #e5e9df;border-radius:13px;padding:27px 25px}.visit-cards-v36 h3{font-size:12px;font-weight:400;color:#738270;margin:0 0 12px}.visit-cards-v36 p{font-size:15px;line-height:1.9;margin:0 0 4px}.visit-cards-v36 small{font-size:12px;color:#738270}.visit-cards-v36 dl{margin:0 0 7px;font-size:14px}.visit-cards-v36 dl>div{display:flex;gap:16px;justify-content:space-between}.visit-cards-v36 dt,.visit-cards-v36 dd{margin:0;white-space:nowrap}.visit-phone-v36{font-weight:600;color:#315b49}.visit-cards-v36 article>a{font-size:13px;color:#315b49}.visit-maps-v36{display:flex;flex-wrap:wrap;gap:10px}.visit-maps-v36 a{border:1px solid #dce3d7;border-radius:8px;padding:11px 17px;background:#fff;font-size:12px;color:#4e6755}.visit-maps-v36 a:hover{background:#eef3e9}
footer.footer-v36{background:#263d34;color:#f6f7ef;padding:38px 0 0;margin:0}footer.footer-v36 .footer-main-v36{display:flex;justify-content:space-between;align-items:flex-start;gap:30px}.footer-name-v36{font-family:'Noto Serif KR',serif;font-size:20px}.footer-main-v36 p{font-size:12px;line-height:1.9;margin:8px 0 0;color:#c5cfc5}.footer-separator{margin:0 6px;opacity:.55}.footer-menu-v36{display:flex;gap:22px;flex-wrap:wrap;font-size:12px;padding:0;height:auto}.footer-menu-v36 a{color:#dbe3d7}.footer-bottom-v36{border-top:1px solid #ffffff24;margin-top:28px;padding:22px 0;font-size:11px;color:#b1c0b1}
@media(max-width:1000px){.visit-cards-v36{gap:14px}.visit-cards-v36 article{padding:24px 18px}.visit-cards-v36 dl>div{gap:8px;font-size:12px}}@media(max-width:760px){.visit-cards-v36{grid-template-columns:1fr;margin-top:25px}.visit-cards-v36 article{padding:24px}.visit-cards-v36 dl>div{justify-content:flex-start;gap:25px;font-size:14px}.visit-cards-v36 dt{min-width:85px}footer.footer-v36 .footer-main-v36{flex-direction:column;gap:22px}.footer-menu-v36{position:static;box-shadow:none;background:none;width:100%;gap:22px}.footer-main-v36 p{font-size:11px}}

.visit-cards-v36 .lunch-hours{font-size:12px;color:#536b58;line-height:1.7;margin:10px 0 7px}
