:root { --ink:#153731; --paper:#f5f3ed; }
* { box-sizing:border-box; } html { scroll-behavior:smooth; } body { margin:0; background:var(--paper); color:var(--ink); font-family:Arial,"Noto Sans KR",sans-serif; } a { color:inherit; text-decoration:none; }
.header { height:88px; position:absolute; inset:0 0 auto; z-index:10; display:flex; align-items:center; padding:0 4.5vw; color:white; border-bottom:1px solid rgba(255,255,255,.28); }
.brand { display:flex; align-items:center; gap:12px; min-width:285px; }.brand-mark { width:42px; height:42px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.7); border-radius:50%; font-family:Georgia,serif; font-size:15px; letter-spacing:-1px; }.brand strong { display:block; font-size:18px; letter-spacing:-.04em; }.brand small { display:block; margin-top:3px; font-size:8px; letter-spacing:.16em; opacity:.72; }
nav { margin:auto; display:flex; gap:38px; font-size:14px; } nav a { opacity:.84; transition:.2s; } nav a:hover { opacity:1; }.header-cta { min-width:150px; text-align:right; font-size:14px; }.header-cta span { margin-left:12px; }
.hero { min-height:780px; height:100vh; position:relative; overflow:hidden; color:white; }.hero>img { width:100%; height:100%; object-fit:cover; object-position:center 54%; }.hero-shade { position:absolute; inset:0; background:linear-gradient(90deg,rgba(8,34,30,.88) 0%,rgba(8,34,30,.55) 42%,rgba(8,34,30,.08) 75%),linear-gradient(0deg,rgba(9,32,29,.45),transparent 45%); }
.hero-copy { position:absolute; z-index:2; left:9vw; top:50%; transform:translateY(-45%); }.eyebrow { font-size:12px; letter-spacing:.2em; color:#dbe8e2; margin:0 0 28px; } h1 { font-family:Georgia,"Noto Serif KR",serif; font-size:clamp(52px,5.6vw,84px); font-weight:400; line-height:1.12; letter-spacing:-.055em; margin:0; text-wrap:balance; }.lead { margin:32px 0 38px; font-size:17px; line-height:1.8; color:rgba(255,255,255,.82); }
.hero-actions { display:flex; align-items:center; gap:30px; }.primary { width:270px; box-sizing:border-box; display:inline-flex; align-items:center; justify-content:space-between; gap:22px; padding:17px 22px; background:white; color:var(--ink); font-weight:700; font-size:14px; }.primary span { color:#648078; font-size:12px; letter-spacing:.08em; }.secondary { font-size:14px; padding:14px 0; border-bottom:1px solid rgba(255,255,255,.65); }.naver-reservation { width:270px; min-height:58px; box-sizing:border-box; display:grid; grid-template-columns:1fr 22px; gap:18px; align-items:center; margin-top:18px; padding:10px 18px 10px 20px; border:1px solid rgba(255,255,255,.62); background:rgba(14,55,47,.48); color:white; box-shadow:0 12px 30px rgba(6,30,26,.18); backdrop-filter:blur(12px); transition:transform .2s,background .2s,border-color .2s; }.naver-reservation:hover { transform:translateY(-2px); border-color:rgba(255,255,255,.9); background:rgba(14,63,53,.68); }.naver-reservation:focus-visible { outline:3px solid #d7ad79; outline-offset:3px; }.naver-copy b,.naver-copy small { display:block; }.naver-copy b { font-size:13px; letter-spacing:-.01em; }.naver-copy small { margin-top:4px; color:rgba(255,255,255,.7); font-size:10px; }.naver-reservation i { font-family:Georgia,serif; font-size:17px; font-style:normal; text-align:right; }
.trust-bar { position:absolute; z-index:2; right:4.5vw; bottom:0; width:min(610px,50vw); display:grid; grid-template-columns:repeat(3,1fr); background:rgba(247,245,239,.96); color:var(--ink); }.trust-bar div { display:flex; gap:14px; padding:26px 22px; border-right:1px solid #d9ddd8; }.trust-bar div:last-child { border:0; }.trust-bar b { font-family:Georgia,serif; color:#a88052; font-size:13px; }.trust-bar span { font-size:12px; line-height:1.55; font-weight:700; }
@media(max-width:900px){.header{height:72px;padding:0 20px}.brand{min-width:0}.brand small,nav,.header-cta{display:none}.hero{min-height:760px}.hero-copy{left:24px;right:24px;top:43%}h1{font-size:47px}.lead{font-size:15px}.hero-actions{align-items:flex-start;flex-direction:column;gap:10px}.naver-reservation{display:none}.trust-bar{right:0;left:0;width:100%}.trust-bar div{padding:19px 12px;gap:8px}.trust-bar span{font-size:10px}.trust-bar b{display:none}} @media(max-width:520px){h1{font-size:39px}.trust-bar div{justify-content:center}.hero{height:100svh}.hero>img{object-position:62% center}}

.concerns { padding:125px 9vw; display:grid; grid-template-columns:.9fr 1.35fr; gap:9vw; background:#dfe9e4; }.concerns .section-label { color:#8b6b48; }.concerns-heading h2 { font-size:clamp(36px,3.7vw,56px); }.concern-list { border-top:1px solid #9fb4aa; }.concern-item { border-bottom:1px solid #b7c8c0; }.concern-item button { width:100%; display:grid; grid-template-columns:48px 1fr 34px; gap:12px; align-items:center; padding:22px 0; border:0; background:transparent; color:#284c44; text-align:left; cursor:pointer; }.concern-item button>span { color:#9b7650; font-family:Georgia,serif; font-size:12px; }.concern-item button strong { font-size:16px; line-height:1.6; font-weight:500; }.concern-item button i { width:30px; height:30px; display:grid; place-items:center; border:1px solid #9fb4aa; border-radius:50%; color:#765a3d; font-family:Arial,sans-serif; font-size:20px; font-style:normal; transition:.2s; }.concern-item.is-open button i { background:#173c35; border-color:#173c35; color:white; }.concern-item button:focus-visible { outline:3px solid #b28b5e; outline-offset:5px; }.concern-panel { animation:concernReveal .25s ease-out; }.concern-panel p { margin:0; padding:0 46px 23px 60px; color:#5a7068; font-size:13px; line-height:1.85; }.concern-answer { margin-top:30px; padding:28px 32px; background:rgba(255,255,255,.72); border-left:3px solid #9b7650; }.concern-answer strong { display:block; font-family:Georgia,"Noto Serif KR",serif; font-size:21px; font-weight:400; }.concern-answer span { display:block; margin-top:12px; color:#765a3d; font-size:12px; font-weight:700; }@keyframes concernReveal{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.principles { padding:140px 9vw 150px; display:grid; grid-template-columns:1fr 1.5fr; gap:9vw; background:var(--paper); }
.section-heading p,.section-label { margin:0 0 24px; color:#9b7650; font-size:11px; letter-spacing:.2em; font-weight:700; }
h2 { margin:0; font-family:Georgia,"Noto Serif KR",serif; font-size:clamp(38px,4vw,60px); line-height:1.2; font-weight:400; letter-spacing:-.045em; }
.principle-list article { display:grid; grid-template-columns:54px 150px 1fr; align-items:start; padding:28px 0; border-top:1px solid #cdd4ce; }
.principle-list span { font-family:Georgia,serif; color:#9b7650; }.principle-list h3 { margin:0; font-size:20px; }.principle-list p { margin:0; color:#61706c; font-size:14px; line-height:1.8; }
.implant-story { display:grid; grid-template-columns:minmax(280px,.82fr) minmax(420px,1.18fr); gap:5vw; padding:140px 8vw 70px; background:#102f2a; color:white; }.implant-intro { padding-top:15px; }.implant-story .section-label { color:#d7ad79; }.implant-lead { max-width:490px; margin:34px 0 0; color:#b9ccc5; font-size:15px; line-height:1.9; }.implant-confidence { max-width:490px; margin:34px 0 0; padding:20px 0 20px 24px; border-left:2px solid #d7ad79; color:#f3e7d6; font-family:Georgia,"Noto Serif KR",serif; font-size:clamp(19px,1.7vw,24px); line-height:1.55; letter-spacing:-.025em; }
.connection-card { position:relative; min-height:650px; padding:48px 50px 36px; overflow:hidden; background:#e9e5db; color:#173c35; }.connection-heading { display:flex; align-items:baseline; justify-content:space-between; gap:20px; padding-bottom:24px; border-bottom:1px solid #bcc6bf; }.connection-heading span { color:#9b7650; font-size:10px; letter-spacing:.18em; }.connection-heading strong { font-family:Georgia,"Noto Serif KR",serif; font-size:25px; font-weight:400; }
.deep-visual { position:relative; margin:28px 0 0; padding:22px 22px 14px; background:#211e1f; }.deep-visual img { display:block; width:100%; height:280px; object-fit:contain; }.deep-labels { display:grid; grid-template-columns:1fr 1fr; margin-top:-4px; color:white; text-align:center; }.deep-labels span:first-child { color:#e08585; }.deep-labels span:last-child { color:#e4bd79; }.deep-labels span { font-size:12px; font-weight:700; }.force-legend { display:flex; justify-content:center; gap:20px; margin-top:16px; color:#d8d1ca; font-size:10px; }.force-legend span { display:flex; align-items:center; gap:7px; }.force-legend i { width:22px; height:7px; border-radius:999px; }.stress-high { background:linear-gradient(90deg,#d8362a,#f3b53f); }.stress-spread { background:linear-gradient(90deg,#f3b53f,#36b884); }.deep-visual>p { margin:12px 0 0; color:#9a918c; text-align:center; font-size:9px; line-height:1.5; }.load-compare { display:grid; grid-template-columns:1fr 1fr; gap:1px; margin-bottom:24px; background:#c2c9c4; }.load-compare>div { padding:20px 22px; background:#f3f0e8; }.load-compare span { color:#9b7650; font-size:8px; letter-spacing:.16em; }.load-compare strong { display:block; margin:8px 0; font-size:14px; }.load-compare p { margin:0; color:#65756f; font-size:11px; line-height:1.65; }
.connection-copy { margin:0; color:#586b64; font-size:13px; line-height:1.85; }.implant-systems { display:flex; align-items:center; flex-wrap:wrap; gap:20px; margin-top:24px; padding-top:22px; border-top:1px solid #bcc6bf; }.implant-systems span { margin-right:auto; color:#8a9a94; font-size:9px; letter-spacing:.15em; }.implant-systems b { font-family:Georgia,serif; font-size:12px; letter-spacing:.08em; }
.implant-pillars { grid-column:1/-1; display:grid; grid-template-columns:repeat(3,1fr); margin-top:30px; border-top:1px solid rgba(255,255,255,.2); }.implant-pillars article { display:grid; grid-template-columns:44px 1fr; gap:12px; padding:35px 32px 35px 0; border-right:1px solid rgba(255,255,255,.2); }.implant-pillars article+article { padding-left:32px; }.implant-pillars article:last-child { border-right:0; }.implant-pillars>article>span { color:#d7ad79; font-family:Georgia,serif; font-size:12px; }.implant-pillars h3 { margin:0 0 14px; font-size:18px; }.implant-pillars p { margin:0; color:#aebfb9; font-size:12px; line-height:1.8; }.implant-note { grid-column:1/-1; margin:0; color:#789087; font-size:10px; }.medical-review{display:block;margin-top:10px;color:#9ab0a7}.medical-review a{border-bottom:1px solid #789087}
.doctor { min-height:780px; display:grid; grid-template-columns:1fr 1fr; background:#183d36; color:white; overflow:hidden; }
.doctor-photo { display:flex; align-items:end; justify-content:center; padding-top:50px; background:linear-gradient(145deg,#dfe9e4,#b9d1c6); }.doctor-photo img { width:min(85%,620px); max-height:730px; object-fit:contain; object-position:bottom; }
.doctor-copy { padding:100px 9vw 80px 7vw; display:flex; flex-direction:column; justify-content:center; }.doctor-copy .section-label { color:#d6b68c; }.quote { margin:34px 0; color:#ccdad5; line-height:1.8; }.doctor-name { display:flex; align-items:baseline; gap:15px; padding-bottom:24px; border-bottom:1px solid rgba(255,255,255,.25); }.doctor-name strong { font-size:25px; }.doctor-name span { color:#afc4bd; font-size:13px; }.doctor ul { list-style:none; margin:24px 0 0; padding:0; columns:2; column-gap:30px; }.doctor li { break-inside:avoid; margin:0 0 12px; color:#c6d4cf; font-size:12px; line-height:1.5; }
.space { padding:110px 0 120px; overflow:hidden; background:#e9e7e0; }.space-header { display:grid; grid-template-columns:1.2fr 1fr; gap:5vw; align-items:end; padding:0 8vw 60px; }.space-intro p { margin:0 0 16px; color:#61706c; line-height:1.8; font-size:14px; }.space-intro span { color:#8b6b48; font-size:11px; letter-spacing:.08em; }
.space-gallery { position:relative; }.space-track { display:flex; gap:24px; padding:0 8vw; overflow-x:auto; scroll-snap-type:x mandatory; overscroll-behavior-inline:contain; scrollbar-width:none; -ms-overflow-style:none; }.space-track::-webkit-scrollbar { display:none; }.space-slide { flex:0 0 min(72vw,980px); margin:0; scroll-snap-align:start; }.space-slide img { display:block; width:100%; height:clamp(380px,52vw,650px); object-fit:cover; }.space-slide figcaption { display:grid; grid-template-columns:80px 140px 1fr; align-items:baseline; padding:20px 4px 8px; border-bottom:1px solid #bdc7c1; }.space-slide figcaption span { color:#9b7650; font-family:Georgia,serif; font-size:12px; }.space-slide figcaption strong { font-size:18px; }.space-slide figcaption p { margin:0; color:#61706c; font-size:13px; }
.gallery-arrow { position:absolute; z-index:3; top:calc(50% - 42px); width:68px; height:68px; border:1px solid rgba(255,255,255,.72); border-radius:50%; background:rgba(16,44,39,.86); color:white; font-size:25px; cursor:pointer; box-shadow:0 12px 35px rgba(15,43,38,.22); backdrop-filter:blur(8px); transition:transform .2s,background .2s; }.gallery-arrow:hover { transform:scale(1.06); background:#102c27; }.gallery-arrow:focus-visible { outline:3px solid #d7ad79; outline-offset:3px; }.gallery-prev { left:calc(8vw - 34px); }.gallery-next { right:calc(8vw - 34px); }
.visit { display:grid; grid-template-columns:1.3fr 1fr; min-height:700px; background:#d9e5df; }.visit-map{position:relative;min-height:700px;overflow:hidden;background:#cddbd4}.clinic-map{width:100%;height:100%;min-height:700px}.clinic-map .leaflet-tile{width:256px!important;height:256px!important;max-width:none!important}.clinic-map .leaflet-control-attribution{margin:8px!important;padding:3px 7px!important;border-radius:3px;background:rgba(255,255,255,.84)!important;color:#53665f;font-size:9px;line-height:1.35}.clinic-map .leaflet-control-attribution a{color:#365e54;text-decoration:none}.clinic-map .leaflet-popup-content-wrapper{border-radius:2px;color:#173c35;font-family:Arial,"Noto Sans KR",sans-serif}.clinic-map .leaflet-popup-content{line-height:1.65}.visit-map-link{position:absolute;z-index:500;left:32px;bottom:32px;display:flex;align-items:center;gap:18px;padding:17px 20px;background:rgba(255,255,255,.96);color:#173c35;border:1px solid rgba(23,60,53,.12);box-shadow:0 12px 40px rgba(23,60,53,.18);font-size:12px;transition:transform .25s ease,box-shadow .25s ease}.visit-map-link:hover{transform:translateY(-2px);box-shadow:0 16px 46px rgba(23,60,53,.24)}.visit-map-link span{padding-right:18px;border-right:1px solid #d3dfd9;font-family:var(--serif);font-size:17px;font-weight:600}.visit-map-link b{font-size:15px;font-weight:400}.visit-card { padding:100px 7vw; display:flex; flex-direction:column; justify-content:center; }.visit-card address { margin:32px 0; font-style:normal; line-height:1.8; }.hours { display:grid; grid-template-columns:70px 1fr; gap:12px; padding:24px 0; border-block:1px solid #afc2b9; font-size:13px; }.hours span { color:#6e8179; }.hours-note { margin:12px 0 0; color:#6e8179; font-size:11px; }.visit-actions { display:flex; gap:10px; margin-top:30px; }.visit-actions a { padding:15px 20px; background:#173c35; color:white; font-size:13px; }.visit-actions a:last-child { background:white; color:#173c35; }
footer { padding:48px 4.5vw 36px; background:#102c27; color:#f7f5ef; }.footer-top { display:flex; align-items:center; justify-content:space-between; padding:0 10px 24px; border-bottom:1px solid rgba(255,255,255,.3); }.footer-top strong { font-family:Georgia,"Noto Serif KR",serif; font-size:30px; font-weight:400; letter-spacing:-.045em; }.footer-top a { font-family:Georgia,"Noto Serif KR",serif; font-size:clamp(28px,3vw,42px); font-weight:400; letter-spacing:.01em; }.footer-bottom { display:flex; justify-content:space-between; gap:40px; padding:24px 10px 0; }.footer-info { color:#afc4bd; font-size:12px; line-height:1.75; }.footer-links { display:flex; gap:22px; margin-bottom:20px; }.footer-links a { color:#f3eee4; font-size:13px; font-weight:700; text-decoration:underline; text-decoration-color:#d7ad79; text-underline-offset:5px; }.footer-info p { display:flex; flex-wrap:wrap; gap:5px 24px; margin:2px 0; }.footer-info small { display:block; margin-top:42px; color:#789087; letter-spacing:.01em; }.footer-social { display:flex; align-items:flex-start; gap:16px; }.footer-social a,.footer-social img { display:block; width:40px; height:40px; }.footer-social a { border-radius:9px; box-shadow:0 7px 18px rgba(0,0,0,.16); transition:transform .2s,filter .2s; }.footer-social a:hover { transform:translateY(-3px); filter:brightness(1.08); }
@media(max-width:900px){.concerns{grid-template-columns:1fr;padding:90px 24px;gap:48px}.principles{grid-template-columns:1fr;padding:90px 24px;gap:50px}.principle-list article{grid-template-columns:40px 100px 1fr}.implant-story{grid-template-columns:1fr;padding:90px 24px 60px}.connection-card{min-height:0}.implant-pillars{grid-template-columns:1fr}.implant-pillars article,.implant-pillars article+article{padding:28px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.2)}.doctor{grid-template-columns:1fr}.doctor-photo{min-height:500px}.doctor-copy{padding:80px 24px}.space{padding:80px 0}.space-header{grid-template-columns:1fr;padding:0 24px 40px}.space-track{padding-left:24px;padding-right:24px;gap:14px}.space-slide{flex-basis:84vw}.space-slide img{height:55vw;min-height:320px}.gallery-arrow{width:54px;height:54px;top:calc(50% - 35px)}.gallery-prev{left:10px}.gallery-next{right:10px}.visit{grid-template-columns:1fr}.visit-map,.clinic-map{min-height:390px;height:390px}.visit-map-link{left:20px;right:20px;bottom:20px;justify-content:space-between}.visit-card{padding:70px 24px}.footer-top,.footer-bottom{padding-inline:0}.footer-bottom{flex-direction:column}.footer-social{order:-1}.footer-info small{margin-top:28px}} @media(max-width:560px){.concern-item button{grid-template-columns:36px 1fr 30px}.concern-item button strong{font-size:14px}.concern-panel p{padding-left:48px;padding-right:34px}.concern-answer{padding:26px 22px}.principle-list article{grid-template-columns:35px 1fr}.principle-list p{grid-column:2;margin-top:12px}.connection-card{padding:32px 16px}.connection-heading{align-items:flex-start;flex-direction:column}.deep-visual{padding-inline:10px}.deep-visual img{height:220px}.load-compare{grid-template-columns:1fr}.implant-systems{align-items:flex-start;flex-direction:column}.doctor ul{columns:1}.space-header h2 br{display:none}.space-slide{flex-basis:88vw}.space-slide img{height:62vw;min-height:270px}.space-slide figcaption{grid-template-columns:58px 1fr}.space-slide figcaption p{grid-column:2;margin-top:7px}.gallery-arrow{width:48px;height:48px;font-size:20px}.visit-map-link{gap:10px;padding:14px 16px}.visit-map-link span{font-size:15px;padding-right:10px}.footer-top{align-items:flex-start;flex-direction:column;gap:10px}.footer-top strong{font-size:24px}.footer-links{flex-wrap:wrap}.footer-info p{display:block}.footer-info p span{display:block}}

/* Search and AI-readable information pages */
.info-page { min-height:100vh; background:#f5f3ed; color:#153731; }.info-header { position:relative; height:86px; display:flex; align-items:center; gap:34px; padding:0 4.5vw; border-bottom:1px solid #cbd4ce; background:#f5f3ed; }.info-brand { min-width:260px; font-family:Georgia,"Noto Serif KR",serif; font-size:20px; font-weight:700; }.info-brand span { display:block; margin-top:4px; color:#74857f; font-family:Arial,sans-serif; font-size:8px; font-weight:400; letter-spacing:.16em; }.info-header nav { gap:24px; font-size:12px; }.info-phone { font-family:Georgia,serif; font-size:17px; }.info-page>article { max-width:1180px; margin:auto; padding:0 34px 100px; }.info-hero { padding:105px 0 80px; border-bottom:1px solid #cbd4ce; }.info-hero>p { margin:0 0 24px; color:#9b7650; font-size:11px; font-weight:700; letter-spacing:.2em; }.info-hero h1 { max-width:930px; color:#153731; font-size:clamp(42px,5.5vw,72px); }.info-summary { max-width:760px; margin-top:35px; color:#526861; font-size:18px; line-height:1.9; }.info-body { padding:75px 0 30px; }.answer-block { margin-bottom:76px; }.answer-block>h2,.visit-info h2 { margin:0 0 30px; font-family:Georgia,"Noto Serif KR",serif; font-size:31px; font-weight:400; }.answer-block>p { max-width:850px; color:#536b63; font-size:16px; line-height:2; }.info-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid #bac6c0; }.info-grid article { padding:30px 32px 30px 0; border-right:1px solid #d1d8d3; }.info-grid article+article { padding-left:32px; }.info-grid article:last-child { border:0; }.info-grid b,.treatment-list>article>b,.visit-steps>li>b,.faq-list>article>span { color:#9b7650; font-family:Georgia,serif; font-size:12px; }.info-grid h3,.treatment-list h3,.visit-steps h3 { margin:18px 0 12px; font-size:20px; }.info-grid p,.treatment-list p,.visit-steps p,.faq-list p { margin:0; color:#5b7069; font-size:14px; line-height:1.9; }.medical-note { padding:26px 30px; border-left:3px solid #9b7650; background:#e4ebe7; color:#52665f; font-size:13px; line-height:1.8; }.review-card { margin-top:55px; padding:30px 34px; border:1px solid #bdc9c2; }.review-card span { color:#9b7650; font-size:9px; font-weight:700; letter-spacing:.18em; }.review-card strong { display:block; margin:13px 0 8px; font-size:17px; }.review-card p,.review-card small { margin:0; color:#63766f; font-size:12px; line-height:1.7; }.treatment-list,.visit-steps,.faq-list { border-top:1px solid #b9c5bf; }.treatment-list article,.visit-steps li,.faq-list article { display:grid; grid-template-columns:65px 1fr; gap:20px; padding:30px 0; border-bottom:1px solid #cbd4ce; }.treatment-list h3,.visit-steps h3 { margin-top:0; }.visit-steps { margin:0; padding:0; list-style:none; }.doctor-profile { display:grid; grid-template-columns:minmax(280px,.8fr) 1fr; gap:70px; align-items:center; margin-bottom:80px; padding-bottom:80px; border-bottom:1px solid #cbd4ce; }.doctor-profile img { width:100%; max-height:560px; object-fit:contain; background:#dce8e2; }.doctor-profile>div>p { color:#9b7650; font-size:12px; font-weight:700; letter-spacing:.08em; }.doctor-profile h2 { margin:12px 0 30px; font-family:Georgia,"Noto Serif KR",serif; font-size:46px; font-weight:400; }.doctor-profile ul { margin:0; padding:0; list-style:none; }.doctor-profile li { padding:12px 0; border-bottom:1px solid #d0d8d3; color:#566b64; }.faq-list article { grid-template-columns:55px 1fr; padding:34px 0; }.faq-list h2 { margin:0 0 14px; font-size:20px; }.visit-info { display:grid; grid-template-columns:1fr 1fr; gap:70px; }.visit-info address { margin-bottom:24px; font-style:normal; font-size:18px; line-height:1.8; }.visit-info a { display:block; width:max-content; margin:12px 0; padding-bottom:4px; border-bottom:1px solid #9b7650; }.visit-info dl { display:grid; grid-template-columns:120px 1fr; gap:14px; margin:0 0 25px; }.visit-info dt { color:#71837c; }.visit-info dd { margin:0; font-weight:700; }.visit-info p { color:#657871; font-size:13px; line-height:1.8; }.info-footer { display:flex; align-items:center; gap:30px; padding:34px 4.5vw; background:#102c27; color:#dbe6e1; }.info-footer strong { font-size:18px; }.info-footer span { color:#93aaa1; font-size:12px; }.info-footer a { margin-left:auto; color:white; font-size:12px; }
.sources { margin-top:55px; padding-top:36px; border-top:1px solid #cbd4ce; }.sources h2 { margin:0 0 16px; font-family:Georgia,"Noto Serif KR",serif; font-size:24px; font-weight:400; }.sources>p { max-width:850px; color:#687a74; font-size:12px; line-height:1.8; }.sources ol { margin:22px 0 0; padding-left:20px; }.sources li { margin:10px 0; color:#52675f; font-size:12px; line-height:1.6; }.sources a { text-decoration:underline; text-decoration-color:#a88761; text-underline-offset:4px; }
@media(max-width:900px){.info-header{height:72px;padding:0 22px}.info-brand{min-width:0}.info-header nav,.info-phone{display:none}.info-page>article{padding:0 24px 70px}.info-hero{padding:75px 0 55px}.info-summary{font-size:16px}.info-body{padding-top:55px}.info-grid{grid-template-columns:1fr}.info-grid article,.info-grid article+article{padding:26px 0;border-right:0;border-bottom:1px solid #cbd4ce}.doctor-profile,.visit-info{grid-template-columns:1fr;gap:42px}.doctor-profile{padding-bottom:55px}.info-footer{align-items:flex-start;flex-direction:column;gap:12px}.info-footer a{margin-left:0}} @media(max-width:560px){.info-hero h1{font-size:39px}.info-summary{font-size:15px}.answer-block>h2,.visit-info h2{font-size:27px}.treatment-list article,.visit-steps li,.faq-list article{grid-template-columns:38px 1fr}.doctor-profile h2{font-size:38px}.visit-info dl{grid-template-columns:100px 1fr}}

.sources{margin-top:70px;padding-top:55px;border-top:1px solid #bdc9c2}.sources h2{margin:0 0 18px;font-family:Georgia,"Noto Serif KR",serif;font-size:28px;font-weight:400}.sources>p{max-width:850px;color:#5b7069;font-size:14px;line-height:1.9}.sources ol{margin:28px 0 0;padding-left:22px}.sources li{margin:13px 0;color:#526861;line-height:1.7}.sources a{text-decoration:underline;text-decoration-color:#9b7650;text-underline-offset:4px}.review-meta{display:flex;flex-wrap:wrap;gap:8px 25px;margin:30px 0 0;padding:20px 24px;background:#e4ebe7;color:#52665f;font-size:12px}.info-back{display:inline-block;margin-top:35px;padding-bottom:5px;border-bottom:1px solid #9b7650}

/* SEO / visit information release 2026-09-08 */
.skip-link{position:fixed;top:8px;left:8px;z-index:1000;padding:12px 18px;background:#fff;color:#153731;transform:translateY(-160%)}.skip-link:focus{transform:none}
.quick-guide{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#c5d0c7;border-bottom:1px solid #c5d0c7}.quick-guide a{padding:28px 34px;background:#edf1e9;transition:background .2s}.quick-guide a:hover{background:#e1e9dc}.quick-guide span{display:block;margin-bottom:10px;font-size:14px;color:#576b5b}.quick-guide strong{font-size:17px;font-weight:500}.text-link{text-decoration:underline;text-underline-offset:5px;line-height:2}.parking-box{margin:25px 0;padding:22px;border:1px solid #b9c8bb;background:#eef2e9}.parking-box p{font-size:16px;line-height:1.8}.parking-box h3{margin-top:0}.info-main{max-width:1180px;margin:auto;padding:0 34px 100px}.info-page .info-header{height:auto;min-height:86px;flex-wrap:wrap;gap:20px;padding-top:16px;padding-bottom:16px}.info-header nav{display:flex;flex-wrap:wrap}.info-header .info-phone{margin-left:auto}.info-main .answer-block{margin-top:55px}.source-link{display:inline-block;margin-top:12px;font-size:14px;line-height:1.8;text-decoration:underline;text-underline-offset:3px}.fee-note{padding:20px 24px;background:#e4ebe7;margin-bottom:28px;line-height:1.8}.table-scroll{overflow-x:auto}.fee-table{width:100%;border-collapse:collapse;font-size:16px;line-height:1.7}.fee-table caption{text-align:left;font-size:20px;margin-bottom:20px}.fee-table th,.fee-table td{padding:15px 18px;border-bottom:1px solid #c9d3cc;text-align:left;vertical-align:top}.fee-table thead{background:#183b33;color:white}.fee-table tbody th{background:#eaf0e6;font-weight:500;width:23%}.fee-table td:last-child{white-space:nowrap;width:20%;font-variant-numeric:tabular-nums}.visit-info{margin-bottom:65px}.sources li p{margin:10px 0 24px}.info-main .doctor-profile{padding-top:12px}.info-main .doctor-profile img{height:auto}.footer-links{flex-wrap:wrap}.header nav{gap:24px}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:3px solid #a77936;outline-offset:4px}.info-page .medical-note{margin-top:30px}
@media(max-width:900px){.quick-guide{grid-template-columns:1fr}.quick-guide a{padding:23px 24px}.info-main{padding:0 24px 70px}.info-page .info-header nav{display:flex;width:100%;gap:12px 22px;font-size:14px}.info-page .info-header .info-phone{display:block;font-size:15px;margin-left:0}.info-page .info-header{padding:20px 24px}.fee-table th,.fee-table td{padding:12px 10px;font-size:14px}.fee-table tbody th{width:25%}.parking-box{padding:18px}.info-main .info-hero h1{font-size:clamp(30px,8vw,48px)}.info-main .info-summary{font-size:16px}.info-main .info-hero{padding-top:58px}.quick-guide strong{font-size:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{scroll-behavior:auto!important;transition:none!important}}

/* Patient homepage: clear booking and concise treatment introduction. */
.patient-home .lead{max-width:610px;word-break:keep-all}
.patient-home .hero-actions{flex-wrap:wrap}
.patient-home .implant-summary{grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:100px 9vw;gap:7vw}
.patient-home .implant-summary h2{font-size:clamp(34px,3.6vw,54px)}
.implant-summary-points article{display:grid;grid-template-columns:30px 1fr;gap:20px;padding:26px 0;border-top:1px solid #58776c}
.implant-summary-points article>span{color:#d7ad79;font-family:Georgia,serif}
.implant-summary-points h3{margin:0 0 12px;font-size:20px;font-weight:500}
.implant-summary-points p{margin:0;color:#c4d4cc;font-size:15px;line-height:1.8;word-break:keep-all}
.implant-detail{display:inline-block;margin-top:28px;padding:12px 0;border-bottom:1px solid #d7ad79;color:#f3e7d6;font-size:15px}
.patient-home .visit-actions{flex-wrap:wrap;gap:12px}
.patient-home .visit-actions .visit-booking{background:#153731;color:white}
@media(max-width:520px){.patient-home h1{font-size:clamp(28px,8.4vw,39px);word-break:keep-all}.patient-home .doctor-photo{min-height:0;height:480px}.patient-home .doctor-photo img{height:100%;object-fit:cover;object-position:center bottom}}
@media(max-width:900px){.patient-home .implant-summary{grid-template-columns:1fr;padding:70px 24px;gap:38px}.patient-home .hero-copy{top:43%}.patient-home .lead{font-size:15px;line-height:1.9;margin:26px 0}.patient-home .lead br{display:none}.patient-home .hero-actions{gap:10px}.patient-home .hero-actions .primary{max-width:100%;min-height:54px}.patient-home .hero-actions .secondary{min-height:44px}.patient-home .implant-summary .implant-intro{padding-top:0}}

/* Clinic history at the end of the treatment principles. */
.principles-history{grid-column:1/-1;border-top:1px solid #c5d0c9;padding-top:36px;max-width:100%;word-break:keep-all;overflow-wrap:break-word}
.principles-history .history-date{margin:0 0 18px;color:#8b6b48;font-size:11px;letter-spacing:.16em}
.principles-history h3{margin:0 0 20px;color:#153731;font-family:Georgia,"Noto Serif KR",serif;font-size:clamp(22px,2.3vw,30px);font-weight:400;line-height:1.55;letter-spacing:-.035em}
.principles-history .history-copy{max-width:760px;margin:0;color:#526861;font-size:15px;line-height:1.95}
.principles-history .history-closing{margin:18px 0 0;color:#36554a;font-size:14px;line-height:1.9}
@media(max-width:900px){.principles-history{padding-top:28px}.principles-history .history-copy,.principles-history .history-closing{font-size:14px}}

/* Optional references: native details preserves keyboard access and HTML sources. */
.reference-disclosure{margin-top:38px;border-top:1px solid #c5d0c9;border-bottom:1px solid #c5d0c9;padding:0!important}
.reference-disclosure>summary{padding:20px 6px;cursor:pointer;font-size:16px;font-weight:500;line-height:1.6;color:#36554a}
.reference-disclosure>summary:focus-visible{outline:3px solid #a77936;outline-offset:4px}
.reference-disclosure[open]>summary{border-bottom:1px solid #d8ded8}
.reference-content{padding:12px 6px 24px;font-size:14px;line-height:1.85;overflow-wrap:anywhere}
.reference-content li{margin:14px 0}.reference-content .source-link{margin-top:0;font-size:14px}

/* Director's patient letter — 2026-09-14 */
.doctor-letter{margin:0 auto 72px;max-width:820px}
.doctor-letter-heading{text-align:center;margin-bottom:34px}
.doctor-letter-heading>p{color:#9b7650;font-size:11px;letter-spacing:.19em;margin:0 0 16px}
.doctor-letter-heading h2{font-family:Georgia,"Noto Serif KR",serif;font-size:34px;font-weight:400;line-height:1.5;margin:0;color:#153731;word-break:keep-all}
.doctor-letter-paper{margin:0}
@media(min-width:901px){.doctor-letter-paper{width:75%;margin-left:auto;margin-right:auto}}
.doctor-letter-paper>a{display:block;background:#f8f5ed;box-shadow:0 12px 36px rgba(21,55,49,.08)}
.doctor-letter-paper img{display:block;width:100%;height:auto}
.doctor-letter-paper figcaption{font-size:12px;color:#63766f;text-align:right;margin:14px 0 24px}
.doctor-letter-transcript{border-top:1px solid #cbd4ce;border-bottom:1px solid #cbd4ce}
.doctor-letter-transcript summary{cursor:pointer;padding:20px 4px;color:#153731;font-size:15px}
.doctor-letter-transcript>div{padding:0 4px 18px;max-width:720px}
.doctor-letter-transcript p{font-size:16px;line-height:2;color:#52665f;word-break:keep-all;overflow-wrap:break-word;margin:0 0 22px}
@media(max-width:560px){.doctor-letter{margin-bottom:50px}.doctor-letter-heading{margin-bottom:24px}.doctor-letter-heading h2{font-size:27px}.doctor-letter-transcript p{line-height:1.9}.doctor-letter-paper figcaption{font-size:11px}}
