@charset "UTF-8";
:root{--ink:#203c3b;--teal:#24625b;--deep:#173e3a;--gold:#a97c3f;--paper:#fbfaf7;--sand:#f1eee7;--line:#dce1da;--muted:#65716b;--white:#fff;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:125px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Pretendard,"Noto Sans KR","Apple SD Gothic Neo","Malgun Gothic",sans-serif;font-size:16px;line-height:1.75;letter-spacing:-.025em;word-break:keep-all}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img,svg{max-width:100%;display:block}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #c88d30;outline-offset:5px}::selection{background:#cdded3}h1,h2,h3,h4,p{margin:0}h1,h2,h3{line-height:1.3}h1,h2{font-weight:600;letter-spacing:-.055em}ul{padding-left:1.2em}.wrap{max-width:var(--max);margin:auto;width:calc(100% - 80px)}.skip{position:fixed;left:16px;top:-70px;background:white;padding:12px;z-index:100}.skip:focus{top:12px}.prototype{font-size:12px;line-height:34px;background:var(--deep);color:#f5f3eb}.prototype .wrap{display:flex;justify-content:space-between;gap:15px}.prototype a{border-bottom:1px solid #7b9c8e}.header{position:sticky;top:0;z-index:40;background:rgba(251,250,247,.98);border-bottom:1px solid var(--line)}.nav{min-height:86px;display:flex;align-items:center;gap:30px}.brand{margin-right:auto;flex-shrink:0}.brand img{width:186px;height:auto}.navlinks{display:flex;align-items:center;gap:19px;white-space:nowrap;font-size:13px;font-weight:600}.navlinks a{padding:28px 0;transition:color .2s}.navlinks a:hover,.navlinks a.active{color:var(--gold)}.nav-call{padding:10px 17px;background:var(--teal);color:white;font-size:13px;white-space:nowrap}.menu-toggle{display:none;border:1px solid var(--line);background:none;padding:8px 12px;color:var(--ink)}.eyebrow{display:block;font-size:11px;font-weight:700;letter-spacing:.16em;color:var(--teal);margin-bottom:20px}.eyebrow:before{content:"";display:inline-block;width:27px;height:1px;background:currentColor;vertical-align:middle;margin-right:10px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:585px;position:relative}.hero-copy{padding:77px 54px 65px max(40px,calc((100vw - var(--max))/2));display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.hero h1{font-size:clamp(36px,4.15vw,61px);margin-bottom:25px;line-height:1.3}.hero h1 em{font-style:normal;color:var(--teal)}.hero-desc{color:var(--muted);font-size:16px;line-height:1.9;max-width:390px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:29px}.button{display:inline-flex;align-items:center;justify-content:center;gap:26px;min-height:49px;padding:12px 23px;border:1px solid var(--teal);background:var(--teal);color:white;font-size:14px;font-weight:600;transition:background .2s}.button:hover{background:var(--deep)}.button.secondary{background:transparent;color:var(--ink);border-color:#bfc8bf}.button.secondary:hover{background:#e8eee7}.hero-visual{position:relative;min-width:0;overflow:hidden}.hero-visual>img{height:100%;width:100%;object-fit:cover;object-position:55% center}.hero-visual:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(18,41,34,.52))}.hero-caption{position:absolute;z-index:1;left:35px;bottom:34px;color:white;max-width:330px}.hero-caption small{display:block;letter-spacing:.15em;font-size:10px;margin-bottom:8px}.hero-caption strong{font-size:23px;font-weight:500;line-height:1.5}.hero-detail{margin-top:35px;font-size:12px;color:var(--muted);display:flex;gap:15px;flex-wrap:wrap}.hero-detail span+span:before{content:"·";margin-right:15px}.quickstrip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}.quickgrid{display:grid;grid-template-columns:1fr 1fr 1fr}.quickgrid>a{display:flex;align-items:center;gap:16px;padding:23px 27px;border-right:1px solid var(--line)}.quickgrid>a:first-child{padding-left:0}.quickgrid>a:last-child{border-right:none}.quickgrid small{display:block;font-size:11px;letter-spacing:.05em;color:var(--muted)}.quickgrid strong{font-weight:500;font-size:16px}.quickgrid svg{width:25px;height:25px;flex-shrink:0;color:var(--teal)}.quickgrid b{font-weight:400;margin-left:auto}.section{padding:95px 0}.section.soft{background:var(--sand)}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:36px;margin-bottom:40px}.section-head h2{font-size:36px}.section-head p{max-width:370px;font-size:14px;color:var(--muted);line-height:1.8}.text-link{font-size:14px;color:var(--teal);border-bottom:1px solid #8ea79c;padding-bottom:4px}.issue-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:19px}.issue{border-top:1px solid #c6d0c6;padding-top:20px}.issue-num{font-family:Georgia,serif;font-size:14px;color:var(--gold);letter-spacing:.08em}.issue-art{background:#f0f2ec;margin:16px 0 24px;height:185px;display:flex;justify-content:center;align-items:center;overflow:hidden;transition:background .2s}.issue:hover .issue-art{background:#e5ece1}.issue-art svg{width:165px;height:155px}.issue h3{font-size:20px;margin-bottom:12px}.issue p{font-size:14px;color:var(--muted);min-height:72px}.issue .more{font-size:12px;display:flex;justify-content:space-between;margin-top:19px;color:var(--teal)}.force-note{margin-top:31px;padding:18px 22px;background:#ecefe8;display:flex;gap:25px;font-size:13px}.force-note strong{white-space:nowrap;color:var(--teal)}.force-note p{color:var(--muted)}.diagnosis{background:var(--deep);color:white;position:relative;overflow:hidden}.diagnosis .eyebrow{color:#bed4c2}.diagnosis .section-head p{color:#bacdc4}.diagnosis-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.diagnosis-item{border-top:1px solid #56736a;padding-top:28px}.diagnosis-item span{font-family:Georgia,serif;font-style:italic;color:#b6c4a6;font-size:30px;display:block;margin-bottom:25px}.diagnosis-item h3{font-size:19px;font-weight:500;margin-bottom:13px}.diagnosis-item p{font-size:13px;color:#c4d0c9}.treatment-tabs{display:flex;border-bottom:1px solid #b9c8ba;gap:0;margin-bottom:35px;overflow:auto}.treatment-tabs button{border:0;border-bottom:3px solid transparent;background:none;color:var(--muted);padding:15px 26px;font-size:15px;white-space:nowrap}.treatment-tabs button[aria-selected=true]{color:var(--teal);border-color:var(--teal);font-weight:700}.treatment-panel{display:grid;grid-template-columns:.75fr 1.25fr;gap:65px;align-items:start}.treatment-panel[hidden]{display:none}.treatment-panel .number{font-family:Georgia,serif;font-size:56px;line-height:1;color:#b5baaa;display:block;margin:8px 0 18px}.treatment-panel h3{font-size:31px;margin-bottom:19px}.treatment-panel p{color:var(--muted);font-size:14px}.choice-rows{border-top:1px solid var(--line)}.choice-row{padding:22px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:130px 1fr;gap:22px}.choice-row h4{font-size:16px;font-weight:600}.choice-row p{font-size:13px;color:var(--muted)}.small-note{margin-top:25px;color:var(--muted);font-size:12px}.doctor-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:85px;align-items:center}.doctor-visual{background:#dce5dc;position:relative;padding:35px 15px 0;min-height:420px;display:flex;align-items:flex-end;justify-content:center}.doctor-visual:before{content:"G C";position:absolute;top:35px;left:30px;font:76px/1 Georgia,serif;color:#d1dcd2;letter-spacing:.15em}.doctor-visual img{width:400px;position:relative}.doctor-content h2{font-size:33px;margin-bottom:26px}.doctor-content p{color:var(--muted);font-size:14px;margin-bottom:21px}.doctor-name{display:flex;gap:15px;align-items:baseline;border-top:1px solid #c5cec4;padding-top:24px;margin-top:28px}.doctor-name strong{font-size:24px;font-weight:500}.doctor-name span{font-size:12px;color:var(--muted)}.credentials{list-style:none;padding:0;font-size:13px;color:var(--muted);margin:18px 0 25px}.credentials li{margin:6px 0}.equipment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:27px}.equipment{border-top:1px solid var(--line);padding-top:20px}.equipment-img{height:210px;background:#f2f2ed;display:flex;align-items:center;justify-content:center;margin-bottom:23px}.equipment-img img{max-height:190px;width:auto;max-width:90%;object-fit:contain}.equipment h3{font-size:18px;margin-bottom:11px}.equipment p{font-size:13px;color:var(--muted)}.equipment .label{font-size:10px;letter-spacing:.12em;color:var(--gold);margin-bottom:8px}.firstvisit{display:grid;grid-template-columns:1fr 1.6fr;gap:75px}.firstvisit h2{font-size:34px;margin-bottom:20px}.firstvisit p{color:var(--muted);font-size:14px}.step-list{counter-reset:steps;list-style:none;padding:0;margin:0}.step-list li{counter-increment:steps;display:grid;grid-template-columns:40px 1fr;border-top:1px solid #cdd2c9;padding:18px 0;gap:20px}.step-list li:before{content:"0" counter(steps);font-family:Georgia,serif;font-size:21px;color:var(--gold)}.step-list h3{font-size:16px;margin-bottom:7px}.step-list p{font-size:13px}.faq-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:60px}.faq-grid h2{font-size:34px}.faq{border-top:1px solid var(--line)}.faq details{border-bottom:1px solid var(--line);padding:20px 0}.faq summary{font-size:16px;cursor:pointer;list-style:none;display:flex;gap:16px;align-items:baseline;justify-content:space-between}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";font-weight:400;color:var(--teal);font-size:23px;line-height:1}.faq details[open] summary:after{content:"−"}.faq details p{padding-top:18px;color:var(--muted);font-size:14px;line-height:1.9;max-width:620px}.visit-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px}.visit-grid h2{font-size:34px;margin-bottom:24px}.phone-large{font-family:Georgia,serif;font-size:35px;letter-spacing:-.01em;margin-bottom:23px;display:block}.hours{width:100%;border-collapse:collapse;font-size:14px}.hours th,.hours td{padding:10px 0;border-bottom:1px solid #d4d9ce;text-align:left;font-weight:400}.hours td:last-child{text-align:right;color:var(--muted);font-size:12px}.hours th{width:27%}.hours b{font-size:10px;border:1px solid #bdc9b7;padding:3px 6px;margin-left:10px;color:var(--teal);font-weight:500}.location-photo{width:100%;height:235px;object-fit:cover;margin-bottom:25px}.address{font-size:19px;line-height:1.65;margin-bottom:13px}.location-info{color:var(--muted);font-size:13px}.link-actions{display:flex;flex-wrap:wrap;gap:20px;margin-top:23px}.link-actions button{background:none;border:0;border-bottom:1px solid #8ea79c;color:var(--teal);padding:0 0 4px;font-size:14px}.footer{background:#e9ece4;padding:45px 0 35px}.footer-top{display:flex;justify-content:space-between;gap:35px;align-items:center;margin-bottom:25px}.footer .brand img{width:172px}.footer-links{display:flex;flex-wrap:wrap;gap:23px;font-size:12px;color:#52645a}.footer p{font-size:11px;color:var(--muted);line-height:2}.copyright{margin-top:10px;letter-spacing:.03em}.mobilebar{display:none}.toast{position:fixed;bottom:100px;left:50%;transform:translateX(-50%);background:var(--deep);color:white;padding:12px 22px;font-size:14px;z-index:100;max-width:90%;box-shadow:0 4px 25px #0002}.toast[hidden]{display:none}.sub-hero{background:var(--sand);padding:58px 0 62px}.breadcrumbs{font-size:12px;color:var(--muted);margin-bottom:30px}.breadcrumbs a{text-decoration:underline;text-underline-offset:4px}.sub-hero h1{font-size:45px;margin-bottom:20px;max-width:850px}.sub-hero .lead{font-size:18px;max-width:750px;color:var(--muted);line-height:1.9}.sub-layout{display:grid;grid-template-columns:225px minmax(0,1fr);gap:65px;padding-top:58px;padding-bottom:85px}.aside-nav{align-self:start;position:sticky;top:120px}.aside-nav strong{display:block;font-size:13px;border-bottom:1px solid var(--line);padding-bottom:12px}.aside-nav a{display:block;font-size:13px;padding:11px 0;border-bottom:1px solid var(--line);color:var(--muted)}.aside-nav a.active{color:var(--teal);font-weight:700}.article section{margin-bottom:48px}.article h2{font-size:27px;margin-bottom:19px}.article h3{font-size:19px;margin:25px 0 12px}.article p{font-size:15px;color:var(--muted);margin-bottom:16px}.article ul{color:var(--muted);font-size:15px}.article li{margin:9px 0}.article .fact{padding:24px;background:#edf1e8;border-left:3px solid var(--teal);font-size:16px;line-height:1.8;margin-bottom:34px;color:var(--ink)}.article .choice-row{grid-template-columns:150px 1fr}.article .choice-row h3{font-size:16px;margin:0}.article .choice-row p{margin:0;font-size:14px}.article .source{font-size:11px;border-top:1px solid var(--line);padding-top:18px;color:var(--muted);overflow-wrap:anywhere}.source a{text-decoration:underline;text-underline-offset:3px}.sub-cta{background:var(--deep);color:white;padding:30px;margin-top:30px}.sub-cta h3{margin:0 0 12px}.sub-cta p{color:#c6d5c9;font-size:14px}.sub-cta .button{background:white;color:var(--deep);border-color:white}.sub-cta .button.secondary{background:none;color:white}.related{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:22px}.related a{padding:17px;border:1px solid var(--line);font-size:13px;color:var(--teal)}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:30px}.gallery figure{margin:0}.gallery img{aspect-ratio:1.7;object-fit:cover;width:100%}.gallery figcaption{margin-top:8px;font-size:12px;color:var(--muted)}.plan-table{border-collapse:collapse;width:100%;font-size:13px;line-height:1.7}.plan-table th,.plan-table td{border-bottom:1px solid var(--line);padding:15px 10px;text-align:left;vertical-align:top}.plan-table th{background:var(--sand);font-weight:600}.plan-table td:first-child{white-space:nowrap}.table-scroll{overflow:auto}.tag{display:inline-block;font-size:11px;line-height:1.5;padding:3px 8px;background:#e4eadd;color:var(--teal);margin-right:6px}.plan-notice{border:1px solid #d1c29e;padding:20px 24px;background:#f6f0df;margin-bottom:30px}.plan-notice p{font-size:13px;margin:0}.print-button{margin-top:24px}.article .plain-list{list-style:none;padding:0}.article .plain-list li{padding:12px 0;border-bottom:1px solid var(--line)}.visit-compact{margin-top:24px}.visit-compact .hours td,.visit-compact .hours th{font-size:12px}.contact-strip{margin-top:30px;background:var(--teal);padding:24px 28px;color:white;display:flex;align-items:center;justify-content:space-between;gap:20px}.contact-strip a{font-size:22px;font-family:Georgia,serif}.contact-strip span{font-size:13px}.article section:last-child{margin-bottom:0}
@media(min-width:1500px){.hero{min-height:640px}.hero-copy{padding-right:90px}}
@media(max-width:1100px){.nav{gap:20px}.navlinks{gap:15px;font-size:12px}.brand img{width:167px}.nav-call{font-size:12px;padding:9px 12px}.hero-copy{padding-left:40px;padding-right:35px}.hero h1{font-size:44px}.doctor-grid{gap:45px}.section-head h2{font-size:32px}.issue h3{font-size:18px}.issue-art{height:170px}.quickgrid>a{padding:21px 15px}.quickgrid strong{font-size:14px}.treatment-panel{gap:40px}.treatment-tabs button{padding:15px 20px}}
@media(max-width:900px){.wrap{width:calc(100% - 48px)}.nav{min-height:75px}.menu-toggle{display:block}.navlinks{display:none;position:absolute;top:75px;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);padding:10px 25px 25px;box-shadow:0 20px 20px #0001;flex-wrap:wrap}.navlinks.open{display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.navlinks a{padding:13px 0;border-bottom:1px solid var(--line);font-size:14px}.nav-call{margin-left:auto}.brand{margin-right:0}.hero{min-height:520px;grid-template-columns:1fr 1fr}.hero-copy{padding:55px 28px 50px 24px}.hero h1{font-size:37px}.hero-desc{font-size:14px}.hero-detail{font-size:11px;gap:4px}.hero-detail span+span:before{margin-right:4px}.hero-caption{left:24px;bottom:26px}.hero-caption strong{font-size:19px}.section{padding:70px 0}.section-head{gap:25px}.section-head h2{font-size:30px}.section-head p{max-width:280px;font-size:13px}.issue-grid{grid-template-columns:repeat(2,1fr);gap:35px 25px}.issue-art{height:180px;margin-bottom:20px}.issue p{min-height:0}.diagnosis-grid{grid-template-columns:repeat(2,1fr);gap:35px}.diagnosis-item span{margin-bottom:15px}.doctor-grid{gap:40px}.doctor-visual{min-height:360px}.doctor-content h2{font-size:28px}.equipment-grid{gap:20px}.equipment-img{height:170px}.equipment-img img{max-height:155px}.firstvisit{gap:40px;grid-template-columns:.85fr 1.15fr}.faq-grid{gap:35px;grid-template-columns:.75fr 1.25fr}.faq-grid h2,.visit-grid h2{font-size:28px}.visit-grid{gap:35px}.phone-large{font-size:30px}.hours{font-size:12px}.hours td:last-child{font-size:10px}.quickgrid>a{gap:10px}.quickgrid svg{display:none}.quickgrid strong{font-size:13px}.quickgrid small{font-size:10px}.sub-layout{gap:35px;grid-template-columns:175px minmax(0,1fr)}.sub-hero h1{font-size:38px}.aside-nav a{font-size:12px}.footer-links{gap:15px}}
@media(max-width:640px){html{scroll-padding-top:85px}.wrap{width:calc(100% - 40px)}body{font-size:15px}.prototype{line-height:30px;font-size:10px}.prototype .wrap{width:calc(100% - 32px)}.nav{min-height:68px;gap:12px;width:calc(100% - 32px)}.brand img{width:162px}.nav-call{font-size:11px;padding:8px 11px}.menu-toggle{padding:6px 9px;font-size:11px}.navlinks{top:68px}.hero{display:flex;flex-direction:column}.hero-copy{padding:44px 24px 40px;min-height:405px}.hero h1{font-size:41px;line-height:1.32;margin-bottom:22px}.hero .eyebrow{font-size:10px;margin-bottom:18px}.hero-desc{font-size:14px;max-width:350px}.hero-detail{margin-top:24px}.hero-visual{height:285px}.hero-visual>img{object-position:center center}.hero-caption{bottom:22px;left:24px}.hero-caption small{font-size:9px}.hero-caption strong{font-size:18px}.actions{margin-top:25px;gap:10px}.button{min-height:46px;font-size:12px;padding:11px 18px;gap:20px}.quickgrid{grid-template-columns:1fr 1fr}.quickgrid>a{padding:19px 12px;align-items:flex-start}.quickgrid>a:nth-child(2){border-right:none;padding-right:0}.quickgrid>a:last-child{display:none}.quickgrid strong{font-size:12px}.quickgrid small{font-size:9px}.section{padding:58px 0}.eyebrow{font-size:10px;margin-bottom:14px}.section-head{display:block;margin-bottom:28px}.section-head h2{font-size:29px}.section-head p{margin-top:17px;max-width:360px;font-size:13px}.issue-grid{gap:28px 18px}.issue-num{font-size:12px}.issue-art{height:135px;margin:12px 0 17px}.issue-art svg{height:126px;width:136px}.issue h3{font-size:16px;letter-spacing:-.04em}.issue p{font-size:12px;margin-top:10px;line-height:1.8}.issue .more{font-size:10px;margin-top:13px}.force-note{display:block;padding:18px;font-size:12px;margin-top:26px}.force-note p{margin-top:7px}.diagnosis-grid{gap:28px 23px}.diagnosis-item{padding-top:20px}.diagnosis-item h3{font-size:16px}.diagnosis-item p{font-size:12px}.diagnosis-item span{font-size:26px;margin-bottom:14px}.treatment-tabs{margin-bottom:22px;scrollbar-width:thin}.treatment-tabs button{font-size:12px;padding:12px 15px}.treatment-panel{display:block}.treatment-panel .number{display:none}.treatment-panel h3{font-size:25px;margin-bottom:13px}.treatment-panel p{font-size:13px}.treatment-panel .actions{margin-bottom:26px}.choice-row{padding:18px 0;grid-template-columns:92px 1fr;gap:16px}.choice-row h4{font-size:14px}.choice-row p{font-size:12px}.doctor-grid{display:flex;flex-direction:column-reverse;gap:30px}.doctor-content h2{font-size:28px}.doctor-content p{font-size:13px}.doctor-visual{width:100%;min-height:0;height:340px;overflow:hidden;padding-top:20px}.doctor-visual img{height:320px;object-fit:contain;width:auto}.doctor-name strong{font-size:22px}.credentials{font-size:12px}.equipment-grid{display:block}.equipment{display:grid;grid-template-columns:105px 1fr;gap:18px;margin-top:22px;padding-top:22px;align-items:center}.equipment-img{height:115px;margin:0}.equipment-img img{max-height:108px}.equipment h3{font-size:16px}.equipment p{font-size:12px}.equipment .label{font-size:9px;margin-bottom:5px}.firstvisit{display:block}.firstvisit h2{font-size:29px}.firstvisit .actions{margin-bottom:25px}.step-list li{grid-template-columns:30px 1fr;gap:15px}.step-list h3{font-size:15px}.step-list p{font-size:12px}.faq-grid{display:block}.faq-grid h2{font-size:29px;margin-bottom:28px}.faq summary{font-size:14px}.faq details p{font-size:13px}.visit-grid{display:block}.visit-grid>div+div{margin-top:42px}.hours{font-size:14px}.hours td:last-child{font-size:11px}.visit-grid h2{font-size:29px}.phone-large{font-size:33px}.address{font-size:18px}.location-photo{height:200px}.footer{padding:32px 0 95px}.footer-top{display:block;margin-bottom:21px}.footer-links{margin-top:20px;gap:12px 19px;font-size:11px}.footer p{font-size:10px}.mobilebar{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:1fr 1fr;z-index:45;background:var(--teal);padding-bottom:env(safe-area-inset-bottom)}.mobilebar a{padding:14px;text-align:center;font-size:13px;color:white}.mobilebar a:last-child{background:var(--deep)}.sub-hero{padding:30px 0 38px}.breadcrumbs{font-size:10px;margin-bottom:22px}.sub-hero h1{font-size:32px;line-height:1.4;margin-bottom:17px}.sub-hero .lead{font-size:15px}.sub-layout{display:block;padding-top:32px;padding-bottom:55px}.aside-nav{display:none}.article h2{font-size:24px}.article p,.article ul{font-size:14px}.article section{margin-bottom:36px}.article .fact{padding:20px;font-size:14px}.article .choice-row{grid-template-columns:1fr;gap:7px}.article .choice-row h3{font-size:16px}.article .choice-row p{font-size:13px}.related{gap:10px}.related a{font-size:12px;padding:14px}.sub-cta{padding:23px}.sub-cta h3{font-size:20px}.sub-cta p{font-size:13px}.sub-cta .button{font-size:12px}.gallery{gap:14px;grid-template-columns:1fr}.plan-table{font-size:12px;min-width:570px}.plan-table th,.plan-table td{padding:12px 10px}.contact-strip{padding:20px;display:block}.contact-strip span{display:block;margin-bottom:8px}.source{font-size:10px!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{.header,.prototype,.footer,.mobilebar,.aside-nav,.print-button,.sub-cta,.contact-strip{display:none!important}body{background:white;font-size:11pt;color:#111}.wrap{width:100%;max-width:none}.sub-hero{padding:15px 0;background:white}.sub-hero h1{font-size:25pt}.sub-layout{display:block;padding:15px 0}.article h2{font-size:17pt}.article section{break-inside:avoid;margin-bottom:24px}.article p,.article li{color:#111;font-size:10pt}.plan-table{font-size:9pt;min-width:0}.table-scroll{overflow:visible}.plan-table tr{break-inside:avoid}.plan-table th,.plan-table td{padding:9px 6px}.breadcrumbs{display:none}.article .fact{font-size:11pt;padding:12px}.source{font-size:8pt!important}a{text-decoration:none!important}.plan-notice{background:white}}

/* Revision 2: compact page navigation; existing visual system retained. */
.page-jump{display:flex;flex-wrap:wrap;gap:0 22px;padding:0 0 18px;margin-bottom:34px;border-bottom:1px solid var(--line)}
.page-jump a{font-size:13px;padding:8px 0;color:var(--teal);border-bottom:1px solid transparent}
.page-jump a:hover,.page-jump a:focus-visible{border-bottom-color:var(--teal)}
@media(max-width:640px){.page-jump{gap:0 19px;margin-bottom:28px}.page-jump a{font-size:12px;padding:8px 0}}
@media print{.page-jump{display:none}}

/* Revision 3: clearer homepage paths and fully visible compact treatment tabs. */
.checkup-link{display:inline-block;margin-top:7px;font-size:13px}
.faq-more{display:inline-block;margin-top:24px}
.treatment-panel:focus-visible{outline:3px solid #c88d30;outline-offset:8px}
@media(max-width:900px){.treatment-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible;gap:4px 0}.treatment-tabs button{min-height:48px;padding:12px 6px;white-space:normal}.treatment-tabs button[aria-selected=true]{background:#edf1e8}}
@media(max-width:640px){.treatment-tabs button{font-size:12px;padding:12px 4px}.faq-grid h2{margin-bottom:0}.faq-more{margin-top:18px;margin-bottom:26px}.checkup-link{font-size:12px}}
@media(max-width:380px){.nav{gap:8px}.nav .brand img{width:144px}.nav-call{padding:8px}.hero h1{font-size:36px}.hero .actions{gap:8px}.hero .button{font-size:11px;padding:11px 12px;gap:12px}}

/* Revision 4: separate introduction links within the existing about page. */
.intro-links{display:flex;flex-wrap:wrap;gap:15px 24px}
@media(min-width:901px) and (max-width:1180px){.menu-toggle{display:block}.navlinks{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);padding:10px 25px 25px;box-shadow:0 20px 20px #0001}.navlinks.open{display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.navlinks a{padding:13px 0;border-bottom:1px solid var(--line);font-size:14px}.nav-call{margin-left:auto}.brand{margin-right:0}}

/* Revision 5: longer, consistent treatment labels stay readable. */
@media(min-width:901px) and (max-width:1040px){.treatment-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible;gap:4px 0}.treatment-tabs button{min-height:48px;padding:12px 8px;white-space:normal}.treatment-tabs button[aria-selected=true]{background:#edf1e8}}

/* Revision 6: allow long treatment names to wrap inside the compact menu. */
@media(max-width:1180px){.navlinks.open{grid-template-columns:repeat(2,minmax(0,1fr))}.navlinks a{min-width:0;white-space:normal;line-height:1.6}}

/* Revision 7: a native horizontally scrolling clinic gallery. */
.article{min-width:0}
.gallery-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}
.article .gallery-heading h2{margin:0}
.gallery-controls{display:flex;align-items:center;gap:13px;flex-shrink:0}
.gallery-controls[hidden]{display:none}
.gallery-controls button{display:grid;place-items:center;width:44px;height:44px;border:1px solid #b7c7be;background:transparent;color:var(--teal);border-radius:50%;font-size:21px;line-height:1}
.gallery-controls button:hover:not(:disabled){background:#e6ede5}
.gallery-controls button:disabled{opacity:.35;cursor:default}
.gallery-count{font-size:12px;font-variant-numeric:tabular-nums;letter-spacing:.08em;min-width:58px;text-align:center;color:var(--muted)}
.gallery-track{display:flex;gap:20px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#8ba295 transparent;position:relative;min-width:0;padding-bottom:10px}
.gallery-track:focus-visible{outline:3px solid #c88d30;outline-offset:5px}
.gallery-slide{flex:0 0 100%;min-width:0;margin:0;scroll-snap-align:start;scroll-snap-stop:always}
.gallery-slide img{display:block;width:100%;height:auto;aspect-ratio:1200/543;object-fit:cover;background:var(--sand);user-select:none}
.gallery-slide figcaption{display:flex;justify-content:space-between;gap:15px;padding-top:13px;color:var(--muted);font-size:13px}
.gallery-slide-number{font-family:Georgia,serif;color:var(--gold)}
.article .gallery-hint{font-size:11px;color:var(--muted);margin:9px 0 0}
@media(max-width:640px){.gallery-heading{gap:12px;flex-wrap:wrap;margin-bottom:18px}.gallery-controls{gap:10px}.gallery-count{min-width:50px;font-size:11px}.gallery-track{gap:12px}.gallery-slide figcaption{font-size:12px}.article .gallery-hint{font-size:10px}}
@media print{.gallery-controls,.gallery-hint{display:none!important}.gallery-track{display:grid;grid-template-columns:1fr 1fr;overflow:visible;gap:16px}.gallery-slide{break-inside:avoid}}

/* Revision 8: readable default text across home and detail pages. */
@media screen {
  :root {
    --muted:#4d6058;
    --gold:#88602f;
    --text-size:1.1875rem;
    --control-size:1.125rem;
    --support-size:1rem;
  }
  html{scroll-padding-top:175px}
  body{font-size:var(--text-size);line-height:1.85;letter-spacing:-.015em;overflow-wrap:anywhere}
  .prototype{font-size:var(--support-size);line-height:1.6;padding:6px 0}
  .prototype .wrap{flex-wrap:wrap;gap:2px 18px}
  .nav{display:grid;grid-template-columns:auto 1fr auto;gap:8px 24px;min-height:0;padding:15px 0 0}
  .nav .brand{grid-column:1;grid-row:1;margin:0;min-width:0}
  .navlinks{grid-column:1/-1;grid-row:2;justify-content:space-between;gap:14px;font-size:var(--control-size);white-space:normal}
  .navlinks a{min-width:0;padding:12px 0;line-height:1.6}
  .nav-call{grid-column:3;grid-row:1;justify-self:end;display:inline-flex;align-items:center;min-height:48px;font-size:var(--control-size);padding:9px 17px}
  .menu-toggle{min-height:48px;font-size:var(--control-size);line-height:1.5}
  .eyebrow,.hero .eyebrow{font-size:var(--support-size);line-height:1.7;letter-spacing:.09em}
  .hero-desc,.section-head p,.issue p,.diagnosis-item p,
  .treatment-panel p,.choice-row p,.doctor-content p,.credentials,
  .equipment p,.firstvisit p,.step-list p,.faq details p,
  .location-info,.article p,.article ul,.article .fact,
  .article .choice-row p,.sub-cta p,.plan-notice p {
    font-size:var(--text-size);line-height:1.85;
  }
  .hero-desc{max-width:450px}
  .section-head p{max-width:440px}
  .hero-detail,.hero-caption small,.quickgrid small,.small-note,
  .doctor-name span,.equipment .label,.footer p,.breadcrumbs,
  .gallery-count,.gallery figcaption,.article .gallery-hint,.tag,
  .contact-strip span{font-size:var(--support-size);line-height:1.75}
  .hero-detail{gap:6px 15px}
  .hero-caption small{letter-spacing:.08em}
  .button,.text-link,.checkup-link,.issue .more,.link-actions button,
  .footer-links,.aside-nav strong,.aside-nav a,.related a,
  .page-jump a,.mobilebar a,.toast{font-size:var(--control-size);line-height:1.7}
  .button{min-height:52px;padding:12px 22px;gap:16px}
  .quickgrid strong{font-size:var(--text-size);line-height:1.6}
  .quickgrid>a>div,.section-head>div,.treatment-panel>div,
  .doctor-grid>div,.visit-grid>div,.equipment>div{min-width:0}
  .quickgrid>a{gap:12px;padding:23px 20px}
  .quickgrid>a:first-child{padding-left:0}
  .issue h3,.diagnosis-item h3,.equipment h3,.step-list h3,
  .article h3{font-size:1.375rem;line-height:1.5}
  .issue p{min-height:0}
  .issue .more{margin-top:20px}
  .force-note{font-size:var(--text-size);line-height:1.85;gap:22px}
  .treatment-tabs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));overflow:visible}
  .treatment-tabs button{min-width:0;min-height:64px;padding:14px 10px;font-size:var(--control-size);line-height:1.6;white-space:normal}
  .treatment-panel{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:50px}
  .choice-row{grid-template-columns:150px minmax(0,1fr);gap:22px;padding:25px 0}
  .choice-row h4,.article .choice-row h3{font-size:var(--text-size);line-height:1.6}
  .article .choice-row{grid-template-columns:165px minmax(0,1fr)}
  .doctor-name{flex-wrap:wrap;gap:8px 15px}
  .credentials li{margin:9px 0}
  .faq summary{font-size:1.25rem;line-height:1.65;min-height:44px;align-items:center}
  .faq summary:after{flex-shrink:0}
  .hours,.visit-compact .hours th,.visit-compact .hours td{font-size:var(--control-size);line-height:1.7}
  .hours{table-layout:fixed}
  .hours th,.hours td{padding:14px 0;vertical-align:top}
  .hours th{width:25%;padding-right:8px;word-break:normal}
  .hours td:nth-child(2){width:45%;font-variant-numeric:tabular-nums}
  .hours td:last-child{width:30%;font-size:var(--support-size);padding-left:8px;word-break:normal}
  .hours b{display:inline-block;font-size:var(--support-size);margin-left:0;padding:2px 5px}
  .address{font-size:1.375rem;line-height:1.7}
  .footer-links a,.page-jump a{display:inline-flex;align-items:center;min-height:48px}
  .footer p{line-height:1.9}
  .sub-hero .lead{font-size:1.25rem;line-height:1.85}
  .aside-nav{top:175px}
  .aside-nav a{padding:14px 0}
  .article .source,.source{font-size:var(--support-size)!important;line-height:1.85}
  .related{grid-template-columns:repeat(2,minmax(0,1fr))}
  .related a{display:flex;align-items:center;min-height:56px}
  .plan-table{font-size:var(--control-size);line-height:1.85}
  .plan-table td:first-child{white-space:normal}
  .tag{padding:4px 9px}
  .gallery-controls button{width:48px;height:48px;font-size:1.5rem}
  .gallery-slide figcaption{font-size:var(--control-size);line-height:1.7}
  .mobilebar a{min-height:60px;display:flex;align-items:center;justify-content:center;padding:13px 10px}
}
@media screen and (max-width:1180px) {
  html{scroll-padding-top:115px}
  .nav{display:flex;min-height:82px;padding:12px 0;gap:16px}
  .nav .brand{flex:1 1 auto;min-width:0}
  .navlinks{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);padding:12px 25px 25px;box-shadow:0 20px 20px #0001;max-height:calc(100vh - 170px);max-height:calc(100dvh - 170px);overflow-y:auto}
  .navlinks.open{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 25px}
  .navlinks a{font-size:var(--control-size);min-height:52px;padding:13px 0;border-bottom:1px solid var(--line);white-space:normal}
  .nav-call{margin-left:0;flex-shrink:0}
  .menu-toggle{display:block;flex-shrink:0}
  .aside-nav{top:115px}
}
@media screen and (max-width:1040px) {
  .treatment-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px 0}
  .treatment-tabs button[aria-selected=true]{background:#edf1e8}
  .force-note{display:block}
  .force-note p{margin-top:8px}
  .treatment-panel{gap:32px}
}
@media screen and (max-width:900px) {
  .quickgrid>a{padding:20px 14px}
  .choice-row{grid-template-columns:125px minmax(0,1fr);gap:18px}
  .article .choice-row{grid-template-columns:135px minmax(0,1fr)}
}
@media screen and (max-width:640px) {
  :root{--text-size:1.125rem}
  html{scroll-padding-top:105px;scroll-padding-bottom:90px}
  .nav{min-height:76px;gap:8px;padding:10px 0}
  .nav .brand{flex:1 1 0;min-width:0}
  .nav .brand img{width:162px;max-width:100%;height:auto}
  .nav-call,.menu-toggle{font-size:1rem;padding:9px 10px;min-height:48px}
  .navlinks{padding:10px 20px 22px}
  .navlinks.open{gap:0 20px}
  .hero-copy{padding:40px 24px}
  .hero .button,.sub-cta .button{font-size:var(--control-size);padding:12px 18px;gap:12px}
  .hero-desc{max-width:none}
  .hero-detail{display:block}
  .hero-detail span{display:block}
  .hero-detail span+span:before{content:none}
  .hero-caption strong{font-size:1.375rem}
  .hero-caption small{font-size:var(--support-size)}
  .quickgrid{grid-template-columns:1fr}
  .quickgrid>a,.quickgrid>a:first-child,.quickgrid>a:nth-child(2){border-right:0;padding:17px 0;align-items:center}
  .quickgrid>a+a{border-top:1px solid var(--line)}
  .quickgrid>a:last-child{display:flex}
  .quickgrid svg{display:block}
  .section-head p{max-width:none}
  .issue h3,.diagnosis-item h3,.equipment h3,.step-list h3,.article h3{font-size:1.25rem}
  .issue .more{margin-top:16px}
  .treatment-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}
  .treatment-tabs button{padding:13px 8px;min-height:64px}
  .treatment-panel h3{font-size:1.75rem;line-height:1.5}
  .choice-row,.article .choice-row{grid-template-columns:minmax(0,1fr);gap:9px;padding:20px 0}
  .equipment{grid-template-columns:96px minmax(0,1fr);gap:18px}
  .faq summary{font-size:var(--text-size)}
  .address{font-size:1.25rem}
  .sub-hero .lead{font-size:var(--text-size)}
  .article .fact{padding:20px;line-height:1.85}
  .related{grid-template-columns:minmax(0,1fr)}
  .footer{padding-bottom:110px}
  .footer-links{gap:4px 20px}
  .gallery-count{font-size:var(--support-size);min-width:66px}
  .gallery-controls{gap:12px}
  .article .gallery-hint{font-size:var(--support-size)}
}
@media screen and (max-width:480px) {
  .issue-grid,.diagnosis-grid{grid-template-columns:minmax(0,1fr);gap:32px}
  .issue-art{height:165px}
  .navlinks.open{grid-template-columns:minmax(0,1fr)}
}

/* v9: embedded location, reusable photo layout and restrained scroll motion. */
.location-map{margin:0 0 24px;width:100%;min-width:0;border:1px solid #c6d0c6;background:#f0f2ec}
.location-map iframe{display:block;width:100%;height:360px;border:0}
.visit-entrance{margin:28px 0 0}
.visit-entrance img{width:100%;height:auto}
.visit-entrance figcaption,.content-with-photo figcaption{margin-top:10px;font-size:1rem;line-height:1.7;color:#50615b}
.content-with-photo{display:grid;grid-template-columns:1.1fr 1fr;gap:32px;align-items:center;margin:28px 0}
.content-with-photo>*{min-width:0}
.content-with-photo figure{margin:0}
.content-with-photo img{width:100%;height:auto}
@keyframes gc-enter{from{opacity:.55;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
.motion-enter{animation:gc-enter .6s cubic-bezier(.22,.61,.36,1) var(--enter-delay,0ms) backwards}
@media(max-width:640px){.content-with-photo{grid-template-columns:1fr;gap:20px}.motion-enter{animation-delay:0ms}}
@media(prefers-reduced-motion:reduce){.motion-enter{animation:none!important}html{scroll-behavior:auto}}
@media print{.motion-enter{animation:none!important}.location-map{display:none}.content-with-photo{break-inside:avoid}}

/* Shared navigation and visit information. */
.nav-group{position:relative;min-width:0}
.nav-group>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:54px;padding:14px 0;cursor:pointer;list-style:none;font-size:1.125rem;line-height:1.6;white-space:normal}
.nav-group>summary::-webkit-details-marker{display:none}
.nav-chevron{width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin:0 3px 4px;flex-shrink:0}
.nav-group[open] .nav-chevron{transform:rotate(225deg);margin-bottom:0}
.nav-group.current>summary,.nav-group[open]>summary{color:var(--teal)}
.nav-dropdown{position:absolute;top:100%;left:-20px;min-width:260px;width:max-content;max-width:340px;padding:12px;background:var(--paper);border:1px solid #c6d0c6;box-shadow:0 16px 30px #173e3a12;z-index:1;white-space:normal}
.nav-group:not([open])>.nav-dropdown{display:none}
.navlinks .nav-dropdown a{display:flex;align-items:center;min-height:50px;padding:11px 12px;font-size:1.125rem;line-height:1.65;border-bottom:0;white-space:normal}
.navlinks .nav-dropdown a:hover,.navlinks .nav-dropdown a:focus-visible,.navlinks .nav-dropdown a.active{background:#eaf0e7;color:var(--deep)}
.nav-group:last-child .nav-dropdown{left:auto;right:-20px}
.quick-nav{position:fixed;right:18px;top:50%;transform:translateY(-50%);width:126px;z-index:45;border:1px solid #c8d1c7;background:var(--paper);box-shadow:0 8px 28px #173e3a10;border-radius:12px;overflow:hidden}
.quick-item{display:flex;width:100%;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:102px;padding:16px 5px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);font-size:1.125rem;line-height:1.5;font-weight:600;text-align:center;text-decoration:none}
.quick-item:last-child{border-bottom:0}
.quick-item svg{width:25px;height:25px}
.quick-symbol{font-size:1.5rem;font-weight:800;line-height:1.1;color:var(--teal)}
.quick-item small{font-size:.875rem;font-weight:400;line-height:1.4;color:#53625c}
.quick-item[aria-disabled=true]{cursor:default;background:#eef0e9;color:#53625c}
.quick-item strong{font-size:1.25rem;line-height:1.45;letter-spacing:0;font-variant-numeric:tabular-nums}
.quick-phone{background:var(--deep);color:white}
.quick-item[href]:hover{background:#e8eee3;color:var(--deep)}
.quick-item:focus-visible{outline:3px solid #c88d30;outline-offset:-4px}
.quick-phone svg{display:none}
#visit,#hours,#location,#visit-location{scroll-margin-top:20px}
#visit{border-top:1px solid var(--line)}
@media screen and (min-width:1181px){
  body{padding-right:162px}
  .navlinks{justify-content:space-between;gap:16px}
  .hero-copy{padding-left:max(40px,calc((100vw - 162px - var(--max))/2));padding-right:36px}
  .hero h1{font-size:clamp(2.3rem,3.7vw,3.8rem)}
  .hero-desc{max-width:500px}
  .visit-grid{gap:40px}
}
@media screen and (min-width:1181px) and (max-width:1400px){
  .treatment-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}
  .quickgrid strong{font-size:1.125rem}
  .quickgrid>a{padding:20px 14px}
  .doctor-grid{gap:42px}
  .sub-layout{grid-template-columns:205px minmax(0,1fr);gap:40px}
  .force-note{display:block}
  .force-note p{margin-top:7px}
}
@media screen and (max-width:1180px){
  body{padding-bottom:calc(86px + env(safe-area-inset-bottom,0px))}
  .navlinks.open{display:block}
  .nav-group{border-bottom:1px solid var(--line)}
  .nav-group>summary{min-height:58px;padding:14px 0;font-size:1.125rem}
  .nav-dropdown{position:static;width:100%;max-width:none;min-width:0;padding:0 0 12px 16px;border:0;box-shadow:none;background:transparent}
  .navlinks .nav-dropdown a{padding:11px 14px;border-left:2px solid #c6d0c6;font-size:1.125rem}
  .quick-nav{top:auto;bottom:0;left:0;right:0;width:auto;transform:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding-bottom:env(safe-area-inset-bottom,0px);border-radius:0;border-width:1px 0 0;box-shadow:0 -4px 20px #173e3a0d}
  .quick-item{min-height:86px;padding:10px 4px;gap:3px;font-size:1rem;border-bottom:0;border-right:1px solid var(--line)}
  .quick-item:last-child{border-right:0}
  .quick-item small{font-size:.75rem}
  .quick-symbol{font-size:1.25rem}
  .quick-item svg{width:22px;height:22px;display:block}
  .quick-phone strong,.phone-word{display:none}
  .footer{padding-bottom:40px}
  .toast{bottom:calc(100px + env(safe-area-inset-bottom,0px))}
  html{scroll-padding-bottom:105px}
}
@media screen and (min-width:641px) and (max-width:900px){
  .visit-grid{grid-template-columns:minmax(0,1fr)}
}
@media screen and (max-width:360px){
  .quick-item{font-size:.9375rem}
  .hours{font-size:1rem}
  .hours td:last-child,.hours b{font-size:.9375rem}
}
@media print{body{padding:0}.quick-nav,.navlinks,.menu-toggle{display:none!important}}

/* Grouped page navigation and readable treatment comparisons. */
.aside-nav.grouped-sidebar{display:block;background:#fff;border:1px solid #c7d2c8;border-radius:10px;overflow:auto;max-height:calc(100dvh - 200px);scrollbar-width:thin}
.side-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:18px 17px;background:var(--deep);color:#fff;font-size:1.125rem;font-weight:600;line-height:1.5;cursor:pointer;list-style:none;min-height:60px}
.side-heading::-webkit-details-marker,.side-group>summary::-webkit-details-marker{display:none}
.side-menu:not([open])>nav,.side-group:not([open])>.side-links{display:none}
.side-group{border-bottom:1px solid var(--line)}
.side-group:last-child{border-bottom:0}
.side-group>summary{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:17px 16px;font-size:1.125rem;font-weight:600;line-height:1.55;list-style:none;cursor:pointer;min-height:58px;background:#f5f5ef}
.side-group.current>summary{background:#e5eee4;color:var(--deep)}
.side-group[open]>summary{border-bottom:1px solid var(--line)}
.side-group[open]>summary .nav-chevron,.side-menu[open]>.side-heading .nav-chevron{transform:rotate(225deg);margin-bottom:0}
.side-links{padding:8px}
.grouped-sidebar .side-links a{display:block;min-height:50px;padding:13px 13px;border:0;border-radius:5px;font-size:1.125rem;line-height:1.65;color:#3c5048;white-space:normal}
.grouped-sidebar a:hover,.grouped-sidebar a:focus-visible{background:#f1f4eb;color:var(--deep)}
.grouped-sidebar .side-links a.active,.grouped-sidebar .side-direct.active{background:var(--teal);color:#fff;font-weight:600;box-shadow:inset 4px 0 0 #c9dfaa}
.grouped-sidebar .side-direct{display:block;padding:17px 16px;font-size:1.125rem;line-height:1.55;font-weight:600;color:var(--ink);background:#f5f5ef;border-bottom:1px solid var(--line);min-height:58px}
.treatment-scale{border-top:2px solid var(--teal);margin-top:26px}
.scale-row{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:30px;padding:25px 20px;border-bottom:1px solid #d5ded2;align-items:start}
.scale-row:nth-child(odd){background:#f0f3ec}
.scale-label,.explain-label{display:block;color:var(--teal);font-size:1rem;line-height:1.7;margin-bottom:8px}
.article .scale-row h3{font-size:1.25rem;margin:0;line-height:1.6}
.scale-row strong{display:block;font-size:1.1875rem;line-height:1.65;margin-bottom:8px;font-weight:600}
.article .scale-row p{margin:0}
.explain-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:25px 0}
.explain-card{display:block;border:1px solid #ccd6c8;background:#f6f6f0;padding:25px;min-width:0}
.article .explain-card h3{margin:0 0 13px;color:var(--deep);font-size:1.375rem}
.article .explain-card p{margin-bottom:0}
a.explain-card:hover{border-color:var(--teal);background:#edf2e8}
.material-list{margin:24px 0}
.material-list>div{display:grid;grid-template-columns:150px minmax(0,1fr);gap:24px;padding:24px 0;border-top:1px solid var(--line)}
.material-list>div:last-child{border-bottom:1px solid var(--line)}
.material-list dt{font-size:1.1875rem;font-weight:600;color:var(--deep)}
.material-list dd{margin:0;font-size:var(--text-size,1.125rem);line-height:1.85;color:var(--muted)}
.treatment-steps{counter-reset:treatment;list-style:none;padding:0;margin:28px 0}
.article .treatment-steps li{counter-increment:treatment;position:relative;margin:0;padding:0 0 30px 64px;min-height:65px}
.treatment-steps li:before{content:counter(treatment,decimal-leading-zero);position:absolute;left:0;top:0;width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:var(--teal);color:white;font-size:1.125rem;font-variant-numeric:tabular-nums}
.treatment-steps li:not(:last-child):after{content:"";position:absolute;left:20px;top:48px;bottom:6px;width:1px;background:#c9d4c4}
.article .treatment-steps h3{font-size:1.375rem;margin:0 0 10px;line-height:1.6}
.article .treatment-steps p{margin:0}
.clinical-highlight{padding:24px 26px;border-left:4px solid var(--teal);background:#edf2e7;margin:24px 0}
.article .clinical-highlight h3{margin:0 0 12px;color:var(--deep)}
.article .clinical-highlight p{margin-bottom:0}
.procedure-list{display:grid;gap:20px;margin:25px 0}
.procedure-card{padding:25px 27px;border:1px solid var(--line);border-top:3px solid #7e9d84;background:#fff}
.article .procedure-card h3{margin:0 0 13px;font-size:1.375rem}
.article .procedure-card p:last-child{margin-bottom:0}
.aesthetic-entry{margin-top:38px;padding:26px 28px;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;background:#f0f3eb;border:1px solid var(--line)}
.aesthetic-entry h3{font-size:1.375rem;line-height:1.6;margin-bottom:8px}
.aesthetic-entry p{font-size:var(--text-size);color:var(--muted)}
.aesthetic-links{display:flex;flex-wrap:wrap;gap:10px}
.aesthetic-links a{display:flex;align-items:center;min-height:50px;padding:11px 15px;border:1px solid #b2c3af;background:#fff;font-size:1.125rem;color:var(--teal)}
.aesthetic-overview{grid-template-columns:1fr}
.aesthetic-overview .explain-card{display:grid;grid-template-columns:130px 1fr;gap:0 24px}
.aesthetic-overview .explain-label{grid-column:1/-1}
@media screen and (min-width:901px){
  .sub-layout{grid-template-columns:245px minmax(0,1fr);gap:40px}
}
@media screen and (min-width:901px) and (max-width:1180px){
  .aside-nav.grouped-sidebar{max-height:calc(100dvh - 150px)}
}
@media screen and (max-width:1180px){
  .aesthetic-entry{grid-template-columns:1fr}
}
@media screen and (max-width:900px){
  .sub-layout{display:block}
  .aside-nav.grouped-sidebar{position:static;max-height:none;margin-bottom:32px}
  .side-heading{padding:16px 20px}
}
@media screen and (max-width:640px){
  .scale-row{grid-template-columns:1fr;gap:14px;padding:23px 18px}
  .explain-grid{grid-template-columns:1fr}
  .explain-card,.procedure-card,.clinical-highlight{padding:22px 20px}
  .material-list>div{grid-template-columns:1fr;gap:10px}
  .article .treatment-steps li{padding-left:54px}
  .aesthetic-entry{padding:23px 20px}
  .aesthetic-links{display:grid;grid-template-columns:1fr}
  .aesthetic-overview .explain-card{display:block}
}
@media print{.scale-row,.explain-card,.procedure-card,.treatment-steps li{break-inside:avoid}.explain-grid,.scale-row{display:block}.material-list dd{font-size:10pt}}


/* Each primary menu item occupies one complete row on smaller screens. */
.navlinks>.nav-direct{display:flex;align-items:center;min-height:54px;padding:14px 0;font-size:1.125rem;line-height:1.6}
.page-directory{display:grid;gap:18px}
.article .page-directory h2{font-size:1.375rem;margin:0 0 12px}
.page-directory h2 span{float:right;margin-left:16px}
.explain-grid.single{grid-template-columns:minmax(0,1fr)}
@media screen and (max-width:1180px){
  .navlinks>.nav-direct,.navlinks>.nav-group{display:block;width:100%;margin:0;border-bottom:1px solid var(--line)}
  .navlinks>.nav-direct{display:flex;align-items:center;min-height:58px;padding:14px 0}
  .navlinks>.nav-group>summary{width:100%;min-height:58px;padding:14px 0}
  .navlinks>.nav-direct.active{color:var(--teal);font-weight:600}
}

/* Clear reading levels and replaceable treatment illustrations. */
.sub-hero h1{font-size:clamp(2.2rem,3.5vw,3.25rem);font-weight:750;color:var(--deep);line-height:1.3}
.sub-hero .lead{max-width:800px;color:#53645b}
.section-head h2,.firstvisit h2,.faq-grid h2,.visit-grid h2{font-size:clamp(1.9rem,2.8vw,2.65rem);font-weight:700;line-height:1.4}
.article>section+section{padding-top:34px;border-top:1px solid #d6ddd1}
.article h2{font-size:clamp(1.75rem,2.3vw,2.125rem);font-weight:750;color:var(--deep);line-height:1.45;letter-spacing:-.04em;margin-bottom:22px}
.article>section>h2{border-left:4px solid #9d7946;padding-left:18px}
.article h3{font-size:1.375rem;font-weight:650;line-height:1.5;color:#285548}
.article p,.article ul{color:#4d5e54}
.article strong{color:var(--deep);font-weight:700}
.article .fact{font-size:1.25rem;line-height:1.8;padding:26px 29px;background:#e8efe1;border-left-width:5px;color:#243f33}
.article .scale-label,.article .explain-label,.equipment-purpose,.intro-kicker{color:#896632;font-weight:650;font-size:1rem;letter-spacing:.025em;line-height:1.6}
.article .scale-row h3{font-size:1.375rem;margin-bottom:14px;color:var(--deep)}
.article .scale-row strong{font-size:1.1875rem;color:#557546}
.article .explain-card h3,.article .procedure-card h3,.article .treatment-steps h3{font-size:1.4375rem;font-weight:700;color:var(--deep)}
.article .clinical-highlight h3{font-size:1.375rem}
.article .small-note,.article .source{font-size:1rem;color:#626b63;line-height:1.75}
.article .sub-cta h3,.article .sub-cta strong{color:#fff}
.article .sub-cta p{color:#d5e1d6}
.intro-kicker{display:block;margin-bottom:12px}
.doctor-intro{display:block;margin-bottom:26px;padding-bottom:26px;border-bottom:1px solid var(--line)}
.doctor-portrait{background:#e0e9dd;overflow:hidden;border-radius:10px 10px 0 0;padding:12px 6px 0;align-self:end}
.doctor-portrait img{width:100%;height:auto}
.article .doctor-intro h2{font-size:2.25rem;margin:0 0 14px;border:0;padding:0}
.doctor-intro h2 span{font-size:1.25rem;font-weight:500;margin-left:6px}
.article .doctor-intro p{margin:0;line-height:1.65}
.credential-groups{display:grid;gap:21px}
.article .credential-group h3{font-size:1.25rem;margin:0 0 9px;padding:8px 13px;background:#eaf0e5;border-left:3px solid #78916c}
.article .credential-group .plain-list{margin:0}
.article .credential-group .plain-list li{margin:0;padding:5px 2px;border:0;font-size:var(--text-size);line-height:1.6}
.greeting{padding:32px 34px;background:#f4f3eb;border-top:3px solid #758c69}
.article .greeting h2{font-size:clamp(1.75rem,2.2vw,2.2rem);border:0;padding:0;margin-bottom:27px;line-height:1.55}
.greeting h2 em{font-style:normal;color:#65805a}
.article .greeting-hello{font-weight:600;color:var(--deep);margin-bottom:24px}
.article .greeting-key{padding:20px 0;border-top:1px solid #d2dacb;border-bottom:1px solid #d2dacb;margin:24px 0}
.article .greeting p{line-height:1.95;margin-bottom:20px}
.article .greeting-sign{margin:30px 0 0;text-align:right;font-size:1.0625rem}
.greeting-sign strong{font-size:1.5rem;display:inline-block;margin-left:13px}
.equipment-catalog{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px;margin:30px 0}
.equipment-card{border:1px solid #d0d9ca;background:#fff;min-width:0;overflow:hidden}
.equipment-photo{display:flex;align-items:center;justify-content:center;aspect-ratio:4/3;background:#f1f3ed;padding:18px}
.equipment-photo img{width:100%;height:100%;max-height:240px;object-fit:contain}
.equipment-copy{padding:22px 23px}
.article .equipment-copy h3{margin:8px 0 7px;font-size:1.4375rem;color:var(--deep)}
.article .equipment-model{font-size:1.125rem;line-height:1.5;color:#6a735d;font-weight:600;margin-bottom:16px;letter-spacing:0}
.article .equipment-copy p:last-child{margin-bottom:0}
.clinical-media{margin:0;min-width:0;align-self:start}
.clinical-media-group{width:100%;min-width:0;align-self:start}
.clinical-filename{display:block;margin-top:4px;font-size:1rem;line-height:1.5;letter-spacing:0;overflow-wrap:anywhere;word-break:normal;color:#5f715d}
.clinical-media>a{display:block;border:1px solid #d5ddce;background:#f0f3ec;overflow:hidden;border-radius:6px}
.clinical-media img{width:100%;height:auto;display:block}
.clinical-media.real-photo>a{aspect-ratio:1200/760;display:flex;align-items:center;justify-content:center;padding:12px}
.clinical-media.real-photo img{width:100%;height:100%;object-fit:contain}
.clinical-media figcaption{font-size:1rem;line-height:1.5;margin-top:9px;color:#5f715d}
.article{container-type:inline-size;container-name:clinical-article}
.illustrated-intro{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;align-items:center;margin:25px 0}
.illustrated-intro>div>p:last-child{margin-bottom:0}
.scale-row.visual-row{grid-template-columns:minmax(0,1fr);gap:24px;padding:26px 22px;align-items:center}
.scale-copy{min-width:0}
.article .scale-copy>div+div{padding-top:15px;border-top:1px solid #d8dfd2;margin-top:14px}
.explain-card.with-media{padding:0 24px 24px;overflow:hidden}
.explain-card.with-media .clinical-media{margin:0 -24px 20px}
.explain-card.with-media .clinical-media>a{border:0;border-bottom:1px solid #d2dccb;border-radius:0}
.explain-card.with-media .clinical-media figcaption{padding:0 24px;font-size:.9375rem}
.article .treatment-steps li.illustrated-step{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;padding-bottom:34px;align-items:center}
.step-copy{min-width:0}
.procedure-card.illustrated-procedure{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;align-items:center}
.choice-row.illustrated-choice{grid-template-columns:minmax(0,1fr);gap:24px;align-items:center}
.illustrated-intro>div,.procedure-copy,.choice-copy{min-width:0}
.illustrated-intro>.clinical-media,.illustrated-step>.clinical-media,.illustrated-procedure>.clinical-media,.illustrated-choice>.clinical-media{width:100%;max-width:none}
.article :is(.step-copy,.procedure-copy,.choice-copy) p:last-child{margin-bottom:0}
@container clinical-article (min-width:680px){
  .illustrated-intro,.scale-row.visual-row,.article .treatment-steps li.illustrated-step,.procedure-card.illustrated-procedure,.choice-row.illustrated-choice{grid-template-columns:minmax(0,3fr) minmax(0,2fr)}
}
@container clinical-article (max-width:679.98px){
  .article .treatment-steps li.illustrated-step{padding-left:0}
  .illustrated-step>.step-copy{grid-row:1;padding-left:56px}
  .illustrated-step>.clinical-media{grid-row:2}
  .treatment-steps li.illustrated-step:not(:last-child):after{display:none}
  .illustrated-procedure>.procedure-copy,.illustrated-choice>.choice-copy{grid-row:1}
  .illustrated-procedure>.clinical-media,.illustrated-choice>.clinical-media{grid-row:2}
}
.article .choice-copy h3{font-size:1.375rem;margin:0 0 13px;color:var(--deep)}
.article .choice-copy p{line-height:1.8}
.image-file-table td{overflow-wrap:anywhere;min-width:160px}
.image-file-table td:last-child{min-width:280px}
.image-file-table code{font-size:1rem;letter-spacing:0}
.image-file-table img{width:180px;height:auto}
@media screen and (min-width:901px) and (max-width:1300px){
  .explain-card.with-media .clinical-media{width:auto}
  .equipment-catalog{grid-template-columns:1fr}
}
@media screen and (max-width:640px){
  .article h2{font-size:1.75rem}
  .article>section>h2{padding-left:14px}
  .article .fact{font-size:1.1875rem;padding:23px 21px}
  .doctor-intro{grid-template-columns:120px minmax(0,1fr);gap:19px;margin-bottom:22px;padding-bottom:22px}
  .article .doctor-intro h2{font-size:1.75rem}
  .doctor-intro h2 span{font-size:1.125rem;margin-left:4px}
  .doctor-intro .intro-kicker{font-size:.9375rem;margin-bottom:8px}
  .article .doctor-intro p{font-size:1.0625rem}
  .credential-groups{gap:18px}
  .article .credential-group .plain-list li{padding:4px 0;line-height:1.6}
  .greeting{padding:25px 21px}
  .article .greeting h2{font-size:1.75rem;line-height:1.55}
  .equipment-catalog{grid-template-columns:1fr;gap:22px}
  .equipment-photo{max-height:270px}
  .illustrated-intro,.scale-row.visual-row,.article .treatment-steps li.illustrated-step,.procedure-card.illustrated-procedure,.choice-row.illustrated-choice{grid-template-columns:1fr;gap:20px}
  .scale-row.visual-row{padding:24px 20px}
  .article .treatment-steps li.illustrated-step{padding-left:0;padding-top:0}
  .treatment-steps li.illustrated-step:not(:last-child):after{display:none}
  .illustrated-step .clinical-media{width:100%}
  .procedure-card.illustrated-procedure{padding:22px 20px}
}

/* Homepage equipment: all seven devices, with manual scrolling at reading pace. */
.equipment-carousel{min-width:0}
.equipment-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;margin-bottom:22px}
.equipment-toolbar>p{font-size:var(--support-size,16px);color:var(--muted);line-height:1.7}
.equipment-frame{position:relative;padding-inline:28px}
.equipment-controls{position:absolute;inset:0;z-index:1;pointer-events:none}
.equipment-controls[hidden]{display:none}
.equipment-controls button{position:absolute;top:var(--equipment-photo-center,130px);transform:translateY(-50%);display:grid;place-items:center;width:50px;height:50px;border-radius:50%;border:1px solid #aebfb4;background:var(--paper);color:var(--teal);font-size:25px;line-height:1;box-shadow:0 2px 9px #173e3a12;pointer-events:auto}
.equipment-controls [data-equipment-prev]{left:0}
.equipment-controls [data-equipment-next]{right:0}
.equipment-controls button:hover:not(:disabled){background:#e5ece4}
.equipment-controls button:disabled{opacity:.35;cursor:default}
.equipment-count{min-width:112px;text-align:center;font-size:var(--support-size,16px);font-variant-numeric:tabular-nums;color:var(--teal);letter-spacing:.04em}
.equipment-track{position:relative;display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 48px)/3);gap:24px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#91a695 transparent;padding-bottom:14px;min-width:0}
.equipment-track:focus-visible{outline:3px solid #c88d30;outline-offset:5px}
.equipment-slide{scroll-snap-align:start;scroll-snap-stop:always}
.equipment-slide .equipment-photo{aspect-ratio:4/3;padding:24px}
.equipment-slide .equipment-photo img{height:100%;max-height:230px;object-fit:contain;user-select:none}
.equipment-slide .equipment-copy{padding:23px 23px 27px}
.equipment-slide h3{font-size:1.4375rem;line-height:1.5;color:var(--deep);margin:8px 0}
.equipment-slide p{font-size:var(--text-size,19px);line-height:1.85;color:var(--muted)}
.equipment-slide .equipment-model{font-size:1.0625rem;line-height:1.6;color:#65725d;font-weight:600;margin-bottom:14px;letter-spacing:0}
@media screen and (max-width:1000px){.equipment-track{grid-auto-columns:calc((100% - 24px)/2)}}
@media screen and (max-width:640px){
  .equipment-count{margin-left:auto}
  .equipment-track{grid-auto-columns:100%;gap:18px}
  .equipment-slide .equipment-photo{aspect-ratio:4/3;max-height:260px}
  .equipment-slide .equipment-copy{padding:21px}
}
@media print{
  .equipment-toolbar,.equipment-controls{display:none}
  .equipment-frame{padding:0}
  .equipment-track{display:grid;grid-auto-flow:row;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}
  .equipment-slide{break-inside:avoid}
}

/* Shared, concise clinical presentation. Clinical conditions stay visible. */
body{--site-bottom:0px;--site-header:160px}
main{overflow-wrap:anywhere}
main :is([id],a,button,summary,[tabindex]){scroll-margin-block:calc(var(--site-header) + 16px) calc(var(--site-bottom) + 24px)}
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.article .clinical-note{margin:24px 0 36px;padding:17px 20px;border-left:3px solid #a8bca1;background:#f0f3eb;font-size:var(--text-size);line-height:1.8}
.clinical-media-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
.clinical-media-pair>.clinical-media{width:100%;max-width:none;margin:0}
.article .treatment-steps li.illustrated-step.with-media-pair{grid-template-columns:minmax(0,1fr);gap:18px}
.illustrated-step.with-media-pair>.step-copy{grid-row:1}
.illustrated-step.with-media-pair>.clinical-media-pair{grid-row:2}
.visual-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;border-top:0}
.article .visual-choice-grid .illustrated-choice{display:flex;flex-direction:column;align-items:stretch;gap:18px;padding:0 0 24px;min-width:0}
.visual-choice-grid .clinical-media{width:100%;max-width:none}
.article .visual-choice-grid .choice-copy p{margin-bottom:0}
.implant-brand-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:26px 0 20px}
.implant-brand{margin:0;min-width:0;background:#fff;border:1px solid var(--line);border-radius:6px;overflow:hidden}
.implant-brand-visual{aspect-ratio:600/530;overflow:hidden;background:#fff}
.implant-brand-visual img{display:block;width:200%;max-width:none;height:auto;transform:translateX(-50%)}
.implant-brand figcaption{padding:18px;border-top:1px solid var(--line);line-height:1.6}
.implant-brand figcaption strong{display:block;font-size:1.375rem}
.implant-brand-name{display:block;font-size:1rem;color:var(--muted);letter-spacing:.03em}
.implant-brand .clinical-filename{margin-top:12px}
@container clinical-article (max-width:679.98px){
 .implant-brand-grid{grid-template-columns:minmax(0,1fr)}
 .implant-brand{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center}
 .implant-brand figcaption{border:0;padding:16px}
}
@container clinical-article (max-width:359.98px){
 .implant-brand{display:block}
 .implant-brand figcaption{border-top:1px solid var(--line)}
}
body.site-actions-bottom{padding-right:0;padding-bottom:calc(var(--site-bottom) + 20px)}
.site-actions-bottom .quick-nav{top:auto;bottom:0;left:0;right:0;width:auto;transform:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding-bottom:env(safe-area-inset-bottom,0px);border-radius:0;border-width:1px 0 0}
.site-actions-bottom .quick-item{min-height:86px;padding:10px 4px;gap:3px;font-size:1rem;border-bottom:0;border-right:1px solid var(--line);min-width:0;overflow-wrap:anywhere;white-space:normal}
.site-actions-bottom .quick-item svg{display:block;width:22px;height:22px}
.site-actions-bottom .quick-phone strong,.site-actions-bottom .phone-word{display:none}
.site-large-type .header{position:static}
.site-large-type .aside-nav{position:static;max-height:none}
.site-large-type .sub-layout{display:block}
.site-large-type .nav,.site-large-type .navlinks{flex-wrap:wrap}
.site-large-type .navlinks a,.site-large-type .navlinks summary{white-space:normal}
.site-large-type .clinical-media-pair,.site-large-type .visual-choice-grid{grid-template-columns:minmax(0,1fr)}
.site-large-type .illustrated-intro,.site-large-type .scale-row.visual-row,.site-large-type .article .treatment-steps li.illustrated-step,.site-large-type .procedure-card.illustrated-procedure,.site-large-type .choice-row.illustrated-choice,.site-large-type .implant-brand-grid{grid-template-columns:minmax(0,1fr)}
@media(max-width:1180px){
 body{padding-bottom:calc(max(100px,var(--site-bottom)) + env(safe-area-inset-bottom,0px))}
 .nav{display:flex;flex-wrap:wrap;gap:8px 12px}.nav .brand{flex:1 1 9rem}.nav .brand img{max-width:100%}.nav-call,.menu-toggle{flex-shrink:0}
}
@media(max-width:640px){
 .clinical-media-pair,.visual-choice-grid{grid-template-columns:minmax(0,1fr)}
 .clinical-media-pair{gap:22px}
 .article .clinical-note{padding:16px}
}
@media print{body.site-actions-bottom{padding:0}.clinical-media-pair{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ===== 모바일 압축 레이아웃: 한 화면에 더 많은 정보 (글자 크기 16px 이상 유지, 정보 삭제 없음) ===== */
@media screen and (max-width:640px){
 /* 공통 여백 */
 html body .section{padding:34px 0}
 html body .section-head{margin-bottom:18px}
 html body .section-head h2{font-size:1.625rem;line-height:1.4}
 html body .section-head p{margin-top:10px}
 html body .eyebrow{margin-bottom:8px}
 html body .hero-copy{padding:28px 20px 26px;min-height:0}
 html body .hero h1{font-size:2.125rem;margin-bottom:14px}
 html body .hero .eyebrow{margin-bottom:12px}
 html body .hero-detail{margin-top:14px}
 html body .actions{margin-top:16px}
 html body .hero-visual{height:190px}
 html body .quickgrid>a,html body .quickgrid>a:first-child,html body .quickgrid>a:nth-child(2){padding:12px 0}
 html body .sub-hero{padding:20px 0 24px}
 html body .sub-hero h1{font-size:1.875rem;margin-bottom:10px}
 html body .breadcrumbs{margin-bottom:12px}
 html body .sub-layout{padding-top:20px;padding-bottom:36px}
 html body .article section{margin-bottom:26px}
 html body .article .fact{padding:14px 16px;line-height:1.7}
 html body .choice-row,html body .article .choice-row{padding:14px 0;gap:6px}
 html body .footer{padding-top:24px}

 /* 홈: 증상 카드 — 그림은 작게 왼쪽, 제목·부위는 오른쪽, 나머지는 아래 */
 html body .pain-list{gap:0}
 html body .pain-card{display:grid;grid-template-columns:92px minmax(0,1fr);column-gap:14px;align-items:center;padding:14px 0 12px}
 html body .pain-art{grid-column:1;grid-row:1;height:92px;margin:0}
 html body .pain-art .pain-illustration{width:76px;height:72px}
 html body .pain-art-jaw .pain-illustration{width:70px;height:60px}
 html body .pain-art-legend{display:none}
 html body .pain-heading{grid-column:2;grid-row:1;margin:0;padding:0;border:0}
 html body .pain-guide .pain-heading h3{font-size:1.1875rem;line-height:1.4}
 html body .pain-guide .pain-location{margin-top:4px;font-size:.9375rem;line-height:1.5}
 html body .pain-details{grid-column:1/-1;gap:8px;margin:12px 0 6px}
 html body .pain-details dt{font-size:.9375rem;line-height:1.5;margin-bottom:2px}
 html body .pain-details dd{font-size:1rem;line-height:1.6}
 html body .pain-treatment{padding:8px 12px}
 html body .pain-destination{grid-column:1/-1;min-height:40px;font-size:1rem}
 html body .pain-guide .pain-urgent{margin-top:16px;padding:12px 14px;line-height:1.6}
 /* 홈: 다른 카드형 목록 */
 html body .issue-art{height:110px;margin:8px 0 10px}
 html body .issue-art svg{height:100px}
 html body .diagnosis-item{padding-top:14px}

 /* 충치치료: 사진을 왼쪽에 두고 글을 오른쪽에 (사진 크기는 유지) */
 html body .caries-hero{padding:16px 0 20px}
 html body .caries-hero-grid{gap:14px}
 html body .caries-hero .clinical-media{max-width:300px}
 html body .caries-hero h1{font-size:2rem;margin-bottom:8px}
 html body .caries-article .caries-section{margin-bottom:26px}
 html body .caries-article .caries-section+.caries-section{padding-top:22px}
 html body .caries-visible-note{padding:12px 14px}
 html body .caries-case+.caries-case{margin-top:18px}
 html body .caries-case-state,html body .caries-restoration{display:grid;grid-template-columns:44% minmax(0,1fr);column-gap:14px;row-gap:4px;align-items:start;grid-template-rows:auto auto 1fr;width:100%;max-width:none;margin:0;padding:12px}
 html body .caries-case-state>h3,html body .caries-article .caries-case-state h3{grid-column:2;grid-row:1;margin:0;font-size:1.1875rem;line-height:1.4;align-self:start}
 html body .caries-case-state>.clinical-media,html body .caries-case .caries-case-state .clinical-media{grid-column:1;grid-row:1/span 3;width:100%;max-width:none;margin:0}
 html body .caries-case-state>.clinical-media figcaption{font-size:.9375rem;line-height:1.4;margin-top:4px}
 html body .caries-article .caries-restoration h4{grid-column:2;grid-row:1;margin:0;font-size:1.1875rem;line-height:1.4;align-self:start}
 html body .caries-restoration>.clinical-media{grid-column:1;grid-row:1/span 3;margin:0}
 html body .caries-restoration>.clinical-media figcaption{font-size:.9375rem;line-height:1.4;margin-top:4px}
 html body .caries-restoration .clinical-filename{min-height:0}
 html body .caries-article .caries-restoration>p{grid-column:2;grid-row:2;margin:0;font-size:1rem;line-height:1.6;align-self:start}
 html body .caries-case-small .caries-restoration,html body .caries-case-wide .caries-restoration{max-width:none}
 html body .caries-restoration:has(.clinical-media-group){grid-template-columns:minmax(0,1fr);grid-template-rows:auto}
 html body .caries-restoration:has(.clinical-media-group)>h4,html body .caries-article .caries-restoration:has(.clinical-media-group)>h4{grid-column:1;grid-row:1}
 html body .caries-article .caries-restoration:has(.clinical-media-group)>p{grid-column:1;grid-row:2}
 html body .caries-restoration>.clinical-media-group{grid-column:1;grid-row:3;margin:6px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
 html body .caries-restoration>.clinical-media-group .clinical-media{margin:0}
 html body .caries-restorations{gap:0}
 html body .caries-case-treatment{padding:4px 12px 8px}
 html body .caries-case-treatment .caries-restoration{padding:12px 0}
 html body .caries-restoration+.caries-restoration{padding-top:14px}
 html body .caries-other-states{gap:18px}
 html body .caries-disclosure>summary{padding:12px 2px}
 html body .caries-disclosure-body{padding:14px 2px}
 /* 재료 목록: 이름 + 작은 사진 + 설명을 나란히 */
 html body .caries-materials .material-list>div{grid-template-columns:minmax(0,1fr);padding:12px 0}
 html body .caries-materials .material-list>div.has-img{grid-template-columns:42% minmax(0,1fr);grid-template-areas:"pic term" "pic desc";column-gap:14px;row-gap:4px}
 html body .caries-materials .material-list>div.has-img .material-figure{max-width:none}
}

/* ===== 조작 반응 정리: 색이 바뀌는 상태 표시 + 짧은 전환 (링크·메뉴 .18s, 사진 .28s) ===== */
:root{--t-fast:.18s;--t-photo:.28s}
/* 클릭 표현 3종 통일: 주요=채움 버튼, 보조=테두리 버튼, 본문 속 이동=밑줄+화살표 */
.button{transition:background-color var(--t-fast) ease-out,border-color var(--t-fast) ease-out,color var(--t-fast) ease-out}
.button.secondary{border-color:var(--teal);color:var(--deep)}
.button.secondary:hover{background:var(--teal);color:#fff}
.sub-cta .button.secondary{border-color:#fff;color:#fff}
.sub-cta .button.secondary:hover{background:#fff;color:var(--deep)}
.nav-call{transition:background-color var(--t-fast) ease-out}
.nav-call:hover{background:var(--deep)}
.text-link,.issue .more,.checkup-link{transition:color var(--t-fast) ease-out,border-color var(--t-fast) ease-out}
.text-link:hover,.issue .more:hover,.checkup-link:hover{color:var(--deep);border-color:var(--deep)}
.link-arrow,.button span[aria-hidden],.text-link span[aria-hidden]{display:inline-block;transition:transform var(--t-fast) ease-out}
.button:hover span[aria-hidden],.text-link:hover span[aria-hidden],.pain-card:hover .link-arrow{transform:translateX(3px)}
.text-link:hover span[aria-hidden]{transform:translateY(2px)}
/* 메뉴: 현재 위치·열린 항목은 색이 채워지고 화살표가 돌아감 */
@media (min-width:1181px){
 .nav-group>summary{padding:8px 12px;margin:0 -12px;transition:background-color var(--t-fast) ease-out,color var(--t-fast) ease-out}
 .nav-group>summary:hover,.nav-group[open]>summary{background:#eaf0e7;color:var(--deep)}
 .nav-group.current>summary{background:#eaf0e7;color:var(--deep)}
}
.nav-chevron{transition:transform var(--t-fast) ease-out}
.navlinks .nav-dropdown a{transition:background-color var(--t-fast) ease-out,color var(--t-fast) ease-out}
/* 자주 묻는 질문: 열림·닫힘 표시와 짧은 전환 */
.faq summary{transition:color var(--t-fast) ease-out}
.faq summary:hover{color:var(--teal)}
.faq summary:after{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid #bfc8bf;border-radius:50%;font-size:20px;flex-shrink:0;transition:background-color var(--t-fast) ease-out,color var(--t-fast) ease-out,border-color var(--t-fast) ease-out}
.faq details[open] summary:after{background:var(--teal);border-color:var(--teal);color:#fff}
.faq details[open]>summary~*{animation:gcFade .22s ease-out}
@keyframes gcFade{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
/* 사진: 넘길 때 짧게 전환, 사진 영역 높이는 유지 */
.gallery-slide img,.equipment-photo img{transition:opacity var(--t-photo) ease-out}
.clinical-media a{transition:opacity var(--t-fast) ease-out}
.clinical-media a:hover{opacity:.92}
/* 읽는 곳과 누르는 곳 분리: 증상 카드 아래 이동 링크를 얇은 선으로 구분 */
.pain-destination{border-top:1px solid var(--line);padding-top:10px;margin-top:12px;text-decoration:none}
.pain-card:hover .pain-destination span:first-child,.pain-destination:hover{text-decoration:underline;text-underline-offset:5px}
@media (prefers-reduced-motion:reduce){.faq details[open]>summary~*{animation:none}.button:hover span[aria-hidden],.text-link:hover span[aria-hidden],.pain-card:hover .link-arrow{transform:none}}

/* 첫 화면 사진: 간판이 보이도록 위쪽 기준 */
.hero-visual>img{object-position:50% 45%}
@media(max-width:640px){.hero-visual>img{object-position:50% 45%}}

/* ===== 홈 증상 카드: 부위·원인·치료를 같은 한 줄 형식으로 (읽는 곳은 차분하게, 강조는 제목과 링크에) ===== */
html body .pain-guide .pain-art{margin-top:0}
html body .pain-guide .pain-location,
html body .pain-guide .pain-details>div{display:grid;grid-template-columns:2.4em minmax(0,1fr);column-gap:12px;align-items:baseline}
html body .pain-guide .pain-location-label,
html body .pain-guide .pain-details dt{margin:0;font-size:1rem;line-height:1.6;color:var(--teal);font-weight:600}
html body .pain-guide .pain-details{gap:6px;margin:0 0 14px}
html body .pain-guide .pain-details dd{font-size:1rem;line-height:1.6}
html body .pain-guide .pain-treatment{padding:0;background:none;border:0}
html body .pain-guide .pain-treatment dd{color:var(--ink);font-weight:500}
html body .pain-guide .pain-heading{margin-bottom:12px;padding-bottom:12px}
@media screen and (max-width:640px){
 html body .pain-guide .pain-details{margin:10px 0 4px}
}

/* 2026-10-21: 부위·링크 삭제 → 카드는 읽기 전용 상자 */
html body .pain-guide .pain-details>div{grid-template-columns:5.6em minmax(0,1fr)}
html body .pain-guide .pain-card{cursor:default}
html body .pain-guide .pain-card:hover{border-color:#c6d0c6}
html body .pain-guide .pain-card:hover .pain-art{background:#f0f2ec}
html body .pain-guide .pain-details{margin-bottom:0}
html body .pain-guide .pain-intro{max-width:520px}
html body .pain-guide .pain-intro p{margin:0}

/* 의료진 소개: 원장 2인 — 두 번째 프로필 앞에 넓은 간격 */
.doctor-profile+.doctor-profile{margin-top:48px;padding-top:40px;border-top:2px solid #c6d0c6}

/* 임플란트 치료 과정: 단계 안의 그림 */
.step-list .clinical-media{margin:14px 0 4px;max-width:520px}
.step-list .clinical-media figcaption{font-size:.9375rem}
@media(max-width:640px){.step-list .clinical-media{max-width:none}}

/* ===== 홈 통합 구역 "어떤 점이 걱정되시나요?" (5항목: 증상 + 치료) ===== */
#concerns .section-head{align-items:end}
#concerns .pain-intro{max-width:520px}
#concerns .pain-intro p{margin:0;color:var(--muted)}
.concern-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0 22px}
.concern{min-width:0}
.concern-card{display:flex;flex-direction:column;height:100%;padding:18px 0 0;border-top:1px solid #c6d0c6;color:var(--ink);text-decoration:none;transition:border-color var(--t-fast,.18s) ease-out}
.concern-card .issue-art{height:150px;margin:0 0 18px}
.concern-card .issue-art svg{width:135px;height:128px}
.concern-card .issue-art-jaw svg{width:120px;height:112px}
.concern-card h3{margin:0 0 12px;padding-bottom:12px;border-bottom:1px solid var(--line);font-size:1.25rem;line-height:1.45;color:var(--deep);font-weight:600}
.concern-details{margin:0 0 14px;display:grid;gap:12px}
.concern-details>div{min-width:0}
.concern-details dt{font-size:.9375rem;line-height:1.5;color:var(--teal);font-weight:600;margin-bottom:3px}
.concern-details dd{margin:0;font-size:1rem;line-height:1.65;color:var(--muted);overflow-wrap:anywhere}
.concern-tx dd{color:var(--ink)}
.concern-link{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:44px;margin-top:auto;padding-top:10px;border-top:1px solid var(--line);color:var(--teal);font-size:1rem;font-weight:600;text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}
.concern-link .link-arrow{display:inline-block;flex-shrink:0;transition:transform var(--t-fast,.18s) ease-out}
.concern-note{margin:30px 0 0;padding:14px 18px;background:#f6f3eb;border-left:3px solid #9eaf94;color:var(--muted);font-size:1rem;line-height:1.7}
.concern-note .text-link{margin-left:6px}
@media(hover:hover) and (pointer:fine){
 .concern-card:hover{border-color:#91a98c}
 .concern-card:hover .issue-art{background:#e5ece1}
 .concern-card:hover .link-arrow{transform:translateX(3px)}
}
.concern-card:focus-visible{outline:3px solid #9b661c;outline-offset:5px}
@media(max-width:1180px){
 .concern-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 24px}
}
@media(max-width:760px){
 .concern-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 18px}
 .concern-card .issue-art{height:120px;margin-bottom:12px}
 .concern-card .issue-art svg{width:105px;height:100px}
 .concern-card .issue-art-jaw svg{width:94px;height:88px}
 .concern-card h3{font-size:1.125rem}
}
@media screen and (max-width:640px){
 .concern-list{grid-template-columns:minmax(0,1fr);gap:0}
 .concern-card{display:grid;grid-template-columns:92px minmax(0,1fr);column-gap:14px;align-items:center;padding:14px 0 12px}
 .concern-card .issue-art{grid-column:1;grid-row:1;height:92px;margin:0}
 .concern-card .issue-art svg{width:76px;height:72px}
 .concern-card .issue-art-jaw svg{width:70px;height:66px}
 .concern-card h3{grid-column:2;grid-row:1;margin:0;padding:0;border:0;font-size:1.1875rem}
 .concern-details{grid-column:1/-1;margin:12px 0 6px;gap:8px}
 .concern-details>div{display:grid;grid-template-columns:7.2em minmax(0,1fr);column-gap:12px;align-items:baseline}
 .concern-details dt{margin:0}
 .concern-link{grid-column:1/-1;min-height:40px}
 .concern-note{margin-top:18px;padding:12px 14px;line-height:1.6}
}
.site-large-type .concern-list{grid-template-columns:minmax(0,1fr)}
@media print{.concern{break-inside:avoid}.concern-list{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ===== 병원 둘러보기: 큰 사진 한 장 + 점 표시 + 자동 넘김 ===== */
[data-gallery] .gallery-heading{margin-bottom:18px}
[data-gallery] .gallery-heading h2{margin:0}
[data-gallery] .gallery-track{gap:0;padding-bottom:0;scrollbar-width:none;border-radius:6px;overflow-x:auto;overflow-y:hidden;background:#f7f7f5}
[data-gallery] .gallery-track::-webkit-scrollbar{display:none}
[data-gallery] .gallery-slide{position:relative}
[data-gallery] .gallery-slide img{aspect-ratio:4/3;height:auto;border-radius:6px}
[data-gallery] .gallery-slide figcaption{position:absolute;left:0;right:0;bottom:0;padding:12px 18px 12px;color:var(--deep);font-size:1rem;pointer-events:none}
[data-gallery] .gallery-slide figcaption>span{background:rgba(255,255,255,.88);padding:5px 10px;border-radius:999px}
[data-gallery] .gallery-slide-number{color:var(--gold)}
/* 좌우 화살표: 사진 양옆에 겹쳐 두고, 마우스를 올리면 뚜렷해짐 */
.gallery-frame{position:relative}
.gallery-frame .gallery-controls{position:absolute;inset:0;pointer-events:none;margin:0;display:block}
[data-gallery] .gallery-controls button{pointer-events:auto;position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;background:rgba(255,255,255,.88);border:0;box-shadow:0 2px 10px #0002;color:var(--deep);opacity:.75;transition:opacity var(--t-fast,.18s) ease-out,background-color var(--t-fast,.18s) ease-out}
[data-gallery] .gallery-controls button:hover:not(:disabled){background:#fff;opacity:1}
[data-gallery] .gallery-controls [data-gallery-prev]{left:14px}
[data-gallery] .gallery-controls [data-gallery-next]{right:14px}
[data-gallery] .gallery-controls button:disabled{opacity:.75;cursor:pointer}
[data-gallery] .gallery-controls button:disabled:hover{background:#fff;opacity:1}
[data-gallery] .gallery-count{position:absolute;top:14px;right:16px;min-width:0;padding:5px 10px;background:rgba(255,255,255,.88);border-radius:999px;color:var(--deep);font-size:.8125rem;pointer-events:none}
/* 점 표시 */
.gallery-dots{display:flex;justify-content:center;gap:10px;margin:16px 0 0}
.gallery-dots button{width:9px;height:9px;padding:0;border:0;border-radius:50%;background:#cfd6d0;cursor:pointer;transition:background-color var(--t-fast,.18s) ease-out,transform var(--t-fast,.18s) ease-out}
.gallery-dots button[aria-selected=true]{background:var(--teal);transform:scale(1.25)}
.gallery-dots button:focus-visible{outline:3px solid #9b661c;outline-offset:3px}
.gallery-dots button::before{content:"";position:absolute;inset:-8px}
.gallery-dots button{position:relative}
@media(max-width:640px){
 [data-gallery] .gallery-controls button{width:38px;height:38px;font-size:1.1rem}
 [data-gallery] .gallery-controls [data-gallery-prev]{left:8px}[data-gallery] .gallery-controls [data-gallery-next]{right:8px}
 [data-gallery] .gallery-slide figcaption{padding:26px 12px 10px;font-size:.9375rem}
 .gallery-dots{gap:8px;margin-top:12px}
}
@media print{.gallery-dots{display:none}}

/* ===== 2026-10-22 벤치마킹 반영: 모서리·메뉴 호버·그림+설명 좌우 배치 ===== */
/* 홈: 스크롤 등장 효과 사용 (pilot 규칙 해제) */
.interaction-pilot .motion-enter{animation:gc-enter .45s cubic-bezier(.22,.61,.36,1) var(--enter-delay,0ms) backwards!important;transform:none;opacity:1}
/* 모서리: 설명 상자 8px, 사진 6px, 버튼 6px (큰 배경 면은 직각 유지) */
.article .fact,.caries-visible-note,.concern-note,.pain-urgent,.force-note,.plan-notice,.sub-cta,.related a,.issue-art,.pain-art,.equipment-img{border-radius:8px}
.button,.nav-call,.menu-toggle,.quick-item{border-radius:6px}
.clinical-media img,.clinical-media a,.implant-brand-visual,.material-figure img,.gallery-slide img,.hero-visual>img,.doctor-visual{border-radius:6px;overflow:hidden}
.nav-dropdown{border-radius:8px}
/* 메뉴 호버: 글자색 + 얇은 밑줄, 크기·굵기 변화 없음 */
@media (min-width:1181px){
 .nav-group>summary,.navlinks>.nav-direct{position:relative}
 .nav-group>summary::after,.navlinks>.nav-direct::after{content:"";position:absolute;left:12px;right:12px;bottom:4px;height:2px;background:var(--teal);transform:scaleX(0);transform-origin:left;transition:transform var(--t-fast,.18s) ease-out}
 .nav-group>summary:hover::after,.nav-group[open]>summary::after,.nav-group.current>summary::after,.navlinks>.nav-direct:hover::after,.navlinks>.nav-direct.active::after{transform:scaleX(1)}
 .nav-group>summary .nav-chevron{margin-left:6px}
}
/* 그림 + 핵심 설명 좌우 배치 (임플란트 GBR·상악동·가이드·주위염) */
.split-figure{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:28px;align-items:center;margin:4px 0 18px;padding:18px;background:#f6f3eb;border-radius:8px}
.split-figure .clinical-media{margin:0}
.split-figure .clinical-media figcaption{margin-top:8px}
.split-figure .split-copy p{margin:0;font-size:var(--text-size);line-height:1.85;color:var(--ink)}
@media(max-width:900px){.split-figure{grid-template-columns:minmax(0,1fr);gap:16px;padding:14px}}
/* 치료 그림: 확대·회전 효과 없음 (호버 시 투명도만) */
.clinical-media a:hover img{transform:none}
/* ===== 2026-10-22 김경훈 원장 사진 ===== */
.doctor-intro.has-portrait{display:grid;grid-template-columns:200px minmax(0,1fr);gap:30px;align-items:end}
.doctor-intro.has-portrait .doctor-portrait{border-radius:8px;padding:0;background:#e3ebe1;align-self:start}
.doctor-intro.has-portrait .doctor-portrait img{width:100%;height:auto;display:block;aspect-ratio:3/4;object-fit:cover}
.greeting.with-photo{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:36px;align-items:start}
.greeting-photo{margin:0;border-radius:8px;overflow:hidden;background:#e0e9dd}
.greeting-photo img{width:100%;height:auto;display:block}
.greeting-copy>*{max-width:none}
.doctor-split{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);margin:0 0 34px}
.doctor-split .doctor-photo{margin:0}
.doctor-split .doctor-photo img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;object-position:center 30%;border-radius:6px}
.doctor-split .split-copy p+p{margin-top:10px}
@media(max-width:900px){
 .greeting.with-photo{grid-template-columns:minmax(0,1fr) 220px;gap:24px}
 .doctor-split{grid-template-columns:minmax(0,1fr)}
 .doctor-split .doctor-photo img{aspect-ratio:4/3;object-position:center 20%}
}
@media(max-width:640px){
 .doctor-intro.has-portrait{grid-template-columns:120px minmax(0,1fr);gap:19px}
 .greeting.with-photo{display:block}
 .greeting-photo{margin:0 0 20px}
 .greeting-photo img{aspect-ratio:4/3;object-fit:cover;object-position:center 15%}
}
/* 하단 약도: 카카오맵 표시, 클릭하면 네이버 지도 */
.map-overlay-label{position:absolute;right:8px;bottom:8px;z-index:5;background:#fff;color:#173e3a;font-size:13px;font-weight:600;line-height:1;padding:7px 10px;border:1px solid #c6d0c6;border-radius:6px;transition:background .2s}
.map-overlay-label:hover{background:#173e3a;color:#fff}
/* ===== 2026-10-22 첫 화면 슬라이드 (과천중앙치과만의 특별함) ===== */
.hero-slider{position:relative;overflow:hidden;background:#dfe6df;border-radius:0}
.hero-slider:after{display:none}
.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity .9s ease;pointer-events:none}
.hero-slide.is-active{opacity:1;pointer-events:auto;z-index:1}
.hero-slide>img{height:100%;width:100%;object-fit:cover;object-position:55% center;border-radius:0}
.hero-slide:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(18,41,34,.66))}
@media(max-width:640px){.hero-slide:after{inset:20% 0 0;background:linear-gradient(transparent,rgba(18,41,34,.78))}}
.hero-slider .hero-caption{z-index:2;max-width:460px;left:35px;bottom:40px}
.hero-slider .hero-caption small{opacity:.85}
.hero-slider .hero-caption strong{display:block;font-size:32px;font-weight:600;line-height:1.35}
.hero-slider .hero-sub{display:block;margin-top:10px;font-size:16px;line-height:1.7;color:#e6eee8}
.hero-dots{position:absolute;right:28px;bottom:36px;z-index:3;display:flex;gap:8px}
.hero-dots button{width:30px;height:4px;border:0;border-radius:2px;background:rgba(255,255,255,.45);padding:0;cursor:pointer;transition:background .2s}
.hero-dots button[aria-selected=true]{background:#fff}
.hero-dots button:focus-visible{outline:2px solid #fff;outline-offset:3px}
@media (prefers-reduced-motion:reduce){.hero-slide{transition:none}}
@media(max-width:900px){.hero-slider .hero-caption{left:24px;bottom:30px;max-width:300px}.hero-slider .hero-caption strong{font-size:25px}.hero-slider .hero-sub{font-size:14px}.hero-dots{right:20px;bottom:30px}}
@media(max-width:640px){html body .hero-slider{height:250px}.hero-slide>img{object-position:center center}.hero-slider .hero-caption{left:20px;bottom:24px;max-width:calc(100% - 40px)}.hero-slider .hero-caption small{font-size:9px;margin-bottom:5px}.hero-slider .hero-caption strong{font-size:20px}.hero-slider .hero-sub{font-size:13px;margin-top:5px;line-height:1.5}.hero-dots{right:auto;left:20px;top:16px;bottom:auto}.hero-dots button{width:22px;height:3px}}
/* 홈 진료 안내 탭: 마우스 올리면 색 변화 (2026-10-23) */
.treatment-tabs button{transition:color .2s,border-color .2s,background .2s}
@media(hover:hover) and (pointer:fine){.treatment-tabs button:hover{color:var(--teal);border-color:#9fb8ad}}
.hero-slider .hero-caption small{font-family:Georgia,serif;font-size:13px;letter-spacing:.12em}
/* ===== 2026-10-23 FAQ 분류 탭 · 예약 카드 ===== */
.faq-tabs{margin-bottom:18px}
.faq-tabs button{display:inline-flex;align-items:center;gap:7px}
.faq-count{display:inline-block;min-width:20px;padding:1px 6px;border-radius:10px;background:#e4eadd;color:var(--teal);font-size:.75rem;font-weight:600;line-height:1.4}
.faq-tabs button[aria-selected=true] .faq-count{background:var(--teal);color:#fff}
.faq-panel[hidden]{display:none}
.article .faq details{padding:14px 0}
.article .faq summary{font-size:1.0625rem;line-height:1.5}
.article .faq details p{padding-top:12px;margin:0;font-size:1rem;line-height:1.8}
.reserve-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:4px 0 14px}
.reserve-card{padding:22px;background:#f1f4ee;border-radius:8px;display:flex;flex-direction:column;gap:10px}
.article .reserve-card h3{margin:0;font-size:1.125rem}
.article .reserve-card p{margin:0;flex:1;font-size:.9375rem}
.reserve-card .button{align-self:flex-start}
.reserve-card .button .quick-symbol{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#fff;color:#03c75a;font-weight:800;font-size:14px;line-height:1;margin-right:6px}
#hours-table .hours{margin-top:4px}
@media(max-width:640px){.reserve-grid{grid-template-columns:1fr}.faq-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible}.faq-tabs button{justify-content:center;padding:12px 2px;white-space:nowrap;font-size:.875rem;gap:4px}.faq-count{min-width:18px;padding:0 5px;font-size:.6875rem}}
/* ===== 2026-10-23 비급여 진료비 표 ===== */
.fee-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:8px;background:#fff}
.fee-table{width:100%;border-collapse:collapse;font-size:.9375rem;line-height:1.5}
.fee-table th,.fee-table td{padding:11px 16px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}
.fee-table thead th{background:#edf1e8;color:var(--deep);font-weight:600;font-size:.875rem}
.fee-table thead th:last-child,.fee-table .fee-price{text-align:right;white-space:nowrap}
.fee-table .fee-cat th{background:#f6f3eb;color:var(--teal);font-weight:700;padding:12px 16px;border-top:2px solid #d8dfd6}
.fee-table tbody:first-of-type .fee-cat th{border-top:0}
.fee-table .fee-price{font-variant-numeric:tabular-nums;color:var(--ink)}
.fee-won{color:var(--muted);font-size:.8125rem;margin-left:2px}
@media(max-width:640px){.fee-table{font-size:.875rem}.fee-table th,.fee-table td{padding:10px 12px}}
.fee-note{display:block;font-size:.8125rem;color:var(--muted);margin-top:2px}
/* ===== 2026-10-24 오시는 길 경로 카드 ===== */
.route-list{list-style:none;padding:0;margin:6px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
#route-car .route-list{grid-template-columns:repeat(2,minmax(0,1fr));max-width:620px}
.route-card{margin:0;background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden}
.route-card figure{margin:0;position:relative;aspect-ratio:3/4;background:#e9ece4}
.route-card img{width:100%;height:100%;object-fit:cover;display:block}
.route-num{position:absolute;left:12px;top:12px;width:34px;height:34px;border-radius:50%;background:var(--gold,#c88d30);color:#fff;font-weight:800;font-size:1rem;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(0,0,0,.25)}
.route-copy{padding:14px 16px 16px}
.article .route-copy h4{margin:0 0 6px;font-size:1.0625rem;color:var(--deep)}
.article .route-copy p{margin:0;font-size:.9375rem;line-height:1.7;color:var(--muted)}
.route-copy strong{color:var(--teal)}
.parking-table th{width:30%}
@media(max-width:900px){.route-list,#route-car .route-list{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none}}
@media(max-width:640px){.route-list,#route-car .route-list{grid-template-columns:1fr}.route-card{display:grid;grid-template-columns:120px minmax(0,1fr)}.route-card figure{aspect-ratio:auto;height:100%;min-height:150px}.route-copy{padding:12px 14px}}
.parking-table td{text-align:left!important;color:var(--ink)!important;font-size:inherit!important}
@media(max-width:640px){.route-card{grid-template-columns:150px minmax(0,1fr)}}
/* ===== 2026-10-26 그누보드 팝업레이어 · 로그인 표시 (안내 페이지에는 default.css가 없으므로 여기서 정의) ===== */
#hd_login_msg{position:absolute;top:0;left:0;width:1px;height:1px;overflow:hidden;font-size:0;line-height:0;margin:0;padding:0}
#hd_pop{z-index:1000;position:relative;margin:0 auto;height:0;max-width:var(--max);width:calc(100% - 80px)}
#hd_pop h2{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);font-size:0;line-height:0;margin:0}
#hd_pop .sound_only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.hd_pops{position:absolute;border:1px solid #d9dfdb;background:#fff;box-shadow:0 12px 32px rgba(18,41,34,.22);border-radius:8px;overflow:hidden}
.hd_pops img{max-width:100%;height:auto}
.hd_pops_con{position:relative;z-index:9999;overflow:hidden}
.hd_pops_footer{position:relative;background:var(--deep);color:#fff;text-align:left;padding:0;display:flex;justify-content:space-between}
.hd_pops_footer button{border:0;background:none;color:#fff;font-size:13px;padding:10px 14px;cursor:pointer;line-height:1.4}
.hd_pops_footer .hd_pops_reject strong{font-weight:700}
.hd_pops_footer .hd_pops_close{background:rgba(255,255,255,.12);font-weight:600}
.hd_pops_footer .hd_pops_close .fa{margin-left:4px}
@media(max-width:900px){#hd_pop{width:calc(100% - 48px)}}
@media(max-width:640px){#hd_pop{width:100%}.hd_pops{left:12px!important;right:12px;top:12px!important;width:auto!important}.hd_pops_con{width:auto!important}}
/* 2026-10-26: 치료 그림 아래 제목(캡션) 숨김 — 제품명(임플란트 브랜드)과 둘러보기 사진 설명은 유지 */
.clinical-media figcaption,.material-figure figcaption,.visit-entrance figcaption,.greeting-photo figcaption{display:none!important}
.clinical-media figure,.clinical-media{margin-bottom:0}
/* 월요일 휴게시간 표시 (2026-10-26) */
.hours .hours-break{display:block;margin-top:6px;white-space:nowrap;font-size:.8125rem;color:var(--muted)}
.hours td:last-child{white-space:nowrap}
/* 팝업 (2026-10-26): PC는 관리자에서 정한 크기 그대로(넘치는 부분은 숨김), 모바일은 같은 비율로 축소 (JS가 높이 계산) */
.hd_pops_con{overflow:hidden}
.hd_pops_con img{max-width:100%;height:auto}
@media(max-width:640px){.hd_pops{left:12px!important;right:12px;top:12px!important;width:auto!important}.hd_pops_con{width:auto!important;padding:0}.hd_pops_con p,.hd_pops_con div{margin:0;padding:0}.hd_pops_con img{display:block;width:100%!important;height:auto!important;max-width:none}}
/* ===== 2026-10-26 모바일 구분 강화: 홈 "어떤 점이 걱정되시나요?" 카드 ===== */
@media(max-width:640px){
 html body .concern-list{gap:14px}
 html body .concern-card{background:#fff;border:1px solid #d4dbd1;border-top:1px solid #d4dbd1;border-radius:10px;padding:14px 14px 12px;box-shadow:0 2px 8px rgba(23,62,58,.05)}
 html body .concern-card .issue-art{border-radius:8px;background:#edf1e8}
 html body .concern-card h3{border-bottom:0;padding:6px 10px;background:#eef3ea;border-left:4px solid var(--gold,#c88d30);border-radius:0 6px 6px 0}
 html body .concern-details{grid-column:1 / -1;border-top:1px dashed #d4dbd1;padding-top:12px;margin-top:6px}
 html body .concern-link{grid-column:1 / -1;border-top:1px solid #e3e8e0}
}
/* ===== 2026-10-26 모바일 구분 강화: 충치치료 손상 단계(작은 손상 → 레진 …) ===== */
@media(max-width:640px){
 html body .caries-case{border:0;border-radius:10px;overflow:hidden;background:#fff;border:1px solid #cfd9cc}
 html body .caries-case+.caries-case{margin-top:22px}
 html body .caries-case-state{background:var(--deep);color:#fff;padding:14px 16px 16px}
 html body .caries-article .caries-case-state h3,html body .caries-case-state>h3{color:#fff;text-align:left;font-size:1.1875rem;line-height:1.4;padding:0;margin:0}
 html body .caries-article .caries-case-state h3::before{content:counter(caries-step);counter-increment:caries-step;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;margin:0 8px 2px 0;border-radius:50%;background:var(--gold,#c88d30);color:#fff;font-size:.8125rem;font-weight:800;vertical-align:middle}
 html body .caries-comparison{counter-reset:caries-step}
 html body .caries-case .caries-case-state .clinical-media{border-radius:8px;overflow:hidden}
 html body .caries-case-treatment{border-top:0;padding:14px 16px 18px;background:#f6f8f3}
 html body .caries-case-treatment::before{content:"적용 치료";display:block;font-size:.8125rem;font-weight:700;letter-spacing:.06em;color:var(--teal);margin-bottom:8px}
 html body .caries-restoration{background:#fff;border:1px solid #e0e6dd;border-radius:8px;padding:12px}
 html body .caries-restoration+.caries-restoration{margin-top:10px}
 html body .caries-restoration h4{margin:0 0 8px;font-size:1.0625rem;color:var(--deep)}
}
/* ===== 2026-10-26 카드화 (PC·모바일 공통): 반복 항목을 카드로 구분 ===== */
:root{--card-line:#b3c3af;--card-shadow:0 3px 14px rgba(23,62,58,.10)}
/* 1) 선택지·단계·시술 카드 */
html body .article .choice-rows{border-top:0}
html body .article .choice-row,html body .article .treatment-steps li.illustrated-step,html body .article .procedure-card,html body .article .caries-other-state,html body .article .credential-group,html body .article .explain-card,html body .article .jaw-treatment{background:#fff;border:1px solid var(--card-line);border-radius:10px;box-shadow:var(--card-shadow);padding:20px 22px;margin:0 0 16px}
html body .article .choice-row:last-child,html body .article .treatment-steps li:last-child{margin-bottom:0}
html body .article .procedure-card{border-top:1px solid var(--card-line)}
html body .article .procedure-list{display:grid;gap:16px}
html body .article .procedure-list .procedure-card{margin:0}
html body .article .explain-card{background:#fff}
html body a.explain-card:hover{border-color:var(--teal);box-shadow:0 6px 18px rgba(23,62,58,.12)}
/* 카드 안 제목: 왼쪽 세로 강조선 */
html body .article .choice-row h3,html body .article .choice-copy h3,html body .article .step-copy h3,html body .article .procedure-copy h3,html body .article .procedure-card h3,html body .article .caries-other-state h3,html body .article .jaw-treatment .choice-copy h3{padding:8px 12px;border-left:4px solid var(--gold,#c88d30);background:#eef3ea;border-radius:0 6px 6px 0;line-height:1.35;margin-top:0}
html body .article .credential-group h3{border-left:3px solid var(--gold,#c88d30);background:#f3f6f0;border-radius:6px}
/* 단계(신경치료 01~06): 기존 원형 번호를 카드 왼쪽 위에 겹치게, 연결선은 제거 */
html body .article .treatment-steps{padding:0;margin:0}
html body .article .treatment-steps li.illustrated-step:before{left:-1px;top:-1px;width:40px;height:40px;border-radius:10px 0 10px 0;font-size:1rem;background:var(--deep)}
html body .article .treatment-steps li:not(:last-child):after{display:none}
/* 카드 안 그림은 연한 바탕 + 둥근 모서리 */
html body .article .choice-row .clinical-media>a,html body .article .illustrated-step .clinical-media>a,html body .article .procedure-card .clinical-media>a,html body .article .caries-other-state .clinical-media>a{background:#f3f5ef;border:0;border-radius:8px}
/* 2) 구역(섹션) 사이 간격을 조금 더 */
html body .article>section+section{margin-top:12px}
/* 3) 모바일 보정 */
@media(max-width:640px){
 html body .article .choice-row,html body .article .treatment-steps li.illustrated-step,html body .article .procedure-card,html body .article .caries-other-state,html body .article .credential-group,html body .article .explain-card,html body .article .jaw-treatment{padding:16px 16px 18px;margin-bottom:14px}
 html body .article .treatment-steps li.illustrated-step{padding-top:24px}
 /* 앞서 넣은 걱정 카드·충치 단계 카드 테두리 강화 */
 html body .concern-card{border-color:var(--card-line);box-shadow:var(--card-shadow)}
 html body .caries-case{border-color:var(--card-line);box-shadow:var(--card-shadow)}
}
@media(min-width:641px){
 html body .article .treatment-steps li.illustrated-step{padding-top:28px}
 html body .illustrated-step>.step-copy{padding-left:0}
 /* 충치 단계(PC): 각 단계 칸에 테두리 */
 html body .caries-case-state,html body .caries-case-treatment{border:1px solid var(--card-line)}
 html body .caries-case-state{border-radius:10px 10px 0 0;border-bottom:0}
 html body .caries-case-treatment{border-radius:0 0 10px 10px;border-top:2px solid #b9cbb6}
 html body .caries-case-wide>div,html body .caries-case-large>div{border-left:1px solid var(--card-line)}
 html body .caries-comparison{column-gap:10px}
 /* 홈 걱정 카드(PC) */
 html body .concern-card{border:1px solid var(--card-line);border-radius:10px;padding:18px 16px 14px;box-shadow:var(--card-shadow);background:#fff}
 html body .concern-card h3{background:#eef3ea;padding:8px 12px;border-left:4px solid var(--gold,#c88d30);border-bottom:0;border-radius:0 6px 6px 0}
 html body .concern-card:hover{border-color:var(--teal);box-shadow:0 6px 18px rgba(23,62,58,.12)}
 html body .concern-list{gap:18px}
}
/* 그림이 위에 오는 선택지 카드(보철물·턱관절·임플란트): 그림은 카드 가득, 글은 안쪽 여백 */
html body .article .choice-row.illustrated-choice{overflow:hidden;padding:0 0 6px}
html body .article .choice-row.illustrated-choice>.choice-copy{padding:0 18px 12px}
html body .article .choice-row.illustrated-choice>.clinical-media>a{border-radius:0}
@media(max-width:640px){html body .article .choice-row.illustrated-choice>.choice-copy{padding:0 14px 10px}}
/* ===== 2026-10-26 메인 "상태에 맞는 치료를 찾습니다" 탭·구획 구분 강화 ===== */
html body #treatments .treatment-tabs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;border:0;margin-bottom:0;padding:8px;background:#e6ece3;border-radius:12px 12px 0 0;overflow:visible}
html body #treatments .treatment-tabs button{border:1px solid transparent;border-radius:8px;background:transparent;color:var(--deep);font-weight:600;padding:12px 8px;font-size:.9375rem;line-height:1.4;white-space:normal;min-height:48px;transition:background .15s,color .15s,box-shadow .15s}
html body #treatments .treatment-tabs button:hover{background:rgba(255,255,255,.7)}
html body #treatments .treatment-tabs button[aria-selected=true]{background:var(--deep);color:#fff;border-color:var(--deep);box-shadow:0 3px 10px rgba(23,62,58,.25)}
html body #treatments .treatment-panel{margin:0;padding:32px 30px 30px;background:#fff;border:1px solid var(--card-line);border-top:0;border-radius:0 0 12px 12px;box-shadow:var(--card-shadow)}
html body #treatments .treatment-panel[hidden]{display:none}
html body #treatments .treatment-panel>div:first-child{padding:4px 24px 0 0;border-right:1px solid #dfe6dc}
html body #treatments .treatment-panel .number{color:var(--gold,#c88d30)}
html body #treatments .choice-rows{border:0;display:grid;gap:12px}
html body #treatments .choice-row{display:grid;grid-template-columns:150px 1fr;gap:16px;padding:16px 18px;margin:0;background:#f6f8f3;border:1px solid #dbe3d7;border-radius:8px;box-shadow:none}
html body #treatments .choice-row h4{margin:0;font-size:1.0625rem;color:var(--deep);padding-left:10px;border-left:3px solid var(--gold,#c88d30);line-height:1.4;align-self:start}
html body #treatments .choice-row p{margin:0}
html body #treatments .aesthetic-strip,html body #treatments .section .soft{border-radius:10px}
@media(max-width:1100px){html body #treatments .treatment-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){
 html body #treatments .treatment-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:6px;border-radius:10px 10px 0 0}
 html body #treatments .treatment-tabs button{font-size:.8125rem;padding:10px 4px;min-height:44px;border-radius:6px}
 html body #treatments .treatment-panel{padding:18px 16px 18px;border-radius:0 0 10px 10px;display:block}
 html body #treatments .treatment-panel>div:first-child{padding:0 0 14px;border-right:0;border-bottom:1px solid #dfe6dc;margin-bottom:14px}
 html body #treatments .choice-row{grid-template-columns:1fr;gap:6px;padding:12px 14px}
}
