@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+KR:wght@400;500;600;700&display=swap');
:root{--blue:#2455a4;--blue-dark:#153a79;--ink:#162b50;--muted:#627188;--line:#d7e0ed;--paper:#fff;--pale:#f3f7fc;scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0;font-family:'DM Sans','Noto Sans KR',sans-serif;color:var(--ink);background:var(--paper);font-size:16px;line-height:1.7;word-break:keep-all}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.25;letter-spacing:-.045em}h2{font-size:clamp(2.25rem,4.2vw,4.5rem);font-weight:600;margin:0 0 1.5rem}h2 em,h1 em{font-style:normal;font-weight:400}section{scroll-margin-top:85px}:focus-visible{outline:3px solid #f49b5e;outline-offset:4px}.skip-link{position:absolute;top:-60px;left:12px;padding:12px 16px;background:#fff;z-index:1000}.skip-link:focus{top:12px}.site-header{height:82px;padding:0 clamp(22px,4.5vw,76px);display:flex;align-items:center;gap:36px;background:#fff;position:sticky;top:0;z-index:50;border-bottom:1px solid rgba(20,57,108,.12)}.brand{font-size:1.65rem;font-weight:700;letter-spacing:-.085em;white-space:nowrap;line-height:1;display:inline-flex;align-items:baseline}.brand-dot{color:#6aa6f0}.brand small{display:block;font-size:.55rem;letter-spacing:.16em;font-weight:700;margin-left:11px;vertical-align:baseline}.site-nav{margin-left:auto;display:flex;align-items:center;gap:clamp(14px,2vw,35px)}.site-nav a{font-size:.89rem;font-weight:600;white-space:nowrap;transition:color .2s}.site-nav a:hover,.site-footer a:hover{color:var(--blue)}.header-book{background:var(--blue);color:white;padding:11px 20px;border-radius:4px;font-size:.88rem;font-weight:700;white-space:nowrap}.header-book span,.inline-cta span,.button span{margin-left:13px}.header-book:hover{background:var(--blue-dark)}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:min(760px,calc(100svh - 82px));background:linear-gradient(90deg,var(--blue) 50%,#fff 50%)}.hero-left{position:relative;background:var(--blue);color:#fff;display:flex;align-items:center;padding:70px clamp(34px,7vw,130px)}.hero-copy{position:relative;z-index:2;max-width:680px}.eyebrow,.section-label,.panel-kicker{font-family:'DM Sans','Noto Sans KR',sans-serif;font-size:.78rem;font-weight:700;letter-spacing:.19em}.eyebrow.light{color:#d2e0ff;margin-bottom:36px}.hero h1{font-size:clamp(3.4rem,5.7vw,6.4rem);line-height:1.13;margin:0 0 32px;font-weight:600}.hero h1 em{font-family:serif;font-style:italic;font-size:1.08em}.hero-intro{font-size:clamp(1rem,1.2vw,1.16rem);line-height:1.9;color:#e9f0fc;margin-bottom:38px}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px}.button{display:inline-flex;align-items:center;justify-content:space-between;border-radius:3px;padding:16px 22px;font-size:.95rem;font-weight:700;min-height:58px;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px)}.button-white{background:#fff;color:var(--blue);min-width:219px}.button-white:hover{background:#ebf2ff}.text-link{font-size:.91rem;font-weight:600;border-bottom:1px solid currentColor;padding-bottom:5px}.light-link{color:#fff}.hero-vertical{position:absolute;bottom:32px;left:30px;writing-mode:vertical-rl;transform:rotate(180deg);letter-spacing:.2em;font-size:.64rem;color:#bad0f3}.hero-right{position:relative;min-width:0;display:flex;flex-direction:column;justify-content:center;padding:clamp(30px,4vw,62px) clamp(34px,5vw,94px) 24px clamp(8px,1.4vw,24px)}.hero-image-wrap{width:100%;height:clamp(360px,42vw,610px);overflow:hidden;border-radius:46% 46% 4px 4px;box-shadow:0 30px 70px rgba(20,57,108,.14)}.hero-image{width:100%;height:100%;object-fit:cover}.hero-bottom{margin-top:30px;display:flex;justify-content:space-between;gap:20px;align-items:center;color:var(--blue);font-size:.77rem;font-weight:700;letter-spacing:.04em}.hero-bottom span:last-child{color:var(--muted);font-weight:500}.section{max-width:1440px;margin:auto;padding:clamp(85px,10vw,145px) clamp(24px,6.7vw,100px)}.section-label{color:var(--blue);display:flex;align-items:center;gap:13px;margin-bottom:40px}.label-line{width:29px;height:1px;background:currentColor}.intro-grid{display:grid;grid-template-columns:1fr .78fr;gap:clamp(60px,10vw,150px)}.intro-lead{font-size:1.15rem;line-height:1.8}.intro-body{font-size:1.06rem;line-height:2;color:#354869}.intro-body p{margin-bottom:18px}.feature-list{display:grid;grid-template-columns:1fr 1fr;gap:12px 22px;padding-top:30px;margin-top:26px;border-top:1px solid var(--line);color:var(--blue);font-weight:700;font-size:.92rem}.feature-list span:before{content:'✦';font-size:.7rem;margin-right:10px}.note-banner{margin-top:85px;background:#eaf2ff;border-left:4px solid var(--blue);padding:24px 32px;display:flex;justify-content:space-between;gap:25px;align-items:center}.note-banner>div{display:flex;align-items:center;gap:13px}.note-icon{font-size:1.5rem;color:var(--blue)}.note-banner p{margin:0;color:#4c5f7c;font-size:.9rem}.price-section{max-width:none;background:var(--pale);padding-left:max(clamp(24px,6.7vw,100px),calc((100vw - 1240px)/2));padding-right:max(clamp(24px,6.7vw,100px),calc((100vw - 1240px)/2))}.section-heading-row{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:40px}.section-heading-row p,.care-grid>div>p{color:var(--muted);margin:0}.inline-cta{flex-shrink:0;border-bottom:1px solid var(--blue);font-weight:700;color:var(--blue);padding-bottom:7px;margin-bottom:7px}.price-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.price-card{background:white;border:1px solid var(--line);padding:30px clamp(20px,2.5vw,36px) 28px;min-width:0}.price-card-head{display:flex;align-items:center;gap:18px;border-bottom:1px solid var(--ink);padding-bottom:20px;margin-bottom:6px}.price-card-head span{font-size:.8rem;color:var(--blue);font-weight:700}.price-card h3{font-size:1.38rem;margin:0}.price-columns,.price-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;align-items:center;padding:13px 0;border-bottom:1px solid #e9eef5}.price-columns{font-size:.81rem;color:var(--muted);font-weight:700}.price-columns span:not(:first-child),.price-row strong{text-align:right}.price-row{font-size:.93rem}.price-row strong{font-size:.94rem;white-space:nowrap}.price-row.simple{grid-template-columns:1fr 1fr}.price-row small{display:block;font-size:.75rem;color:var(--muted)}.price-foot{color:var(--muted);font-size:.82rem;line-height:1.65;margin:18px 0 0}.price-notes{display:flex;gap:28px;flex-wrap:wrap;margin-top:22px;color:#50647e;font-size:.86rem}.price-notes p{margin:0}.price-notes p:before{content:'•';margin-right:7px;color:var(--blue)}.care-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(50px,9vw,130px)}.care-decor{display:block;font-family:serif;font-size:12rem;font-weight:400;line-height:.85;color:#dbeafb;margin-top:55px}.care-accordions{border-top:1px solid var(--ink)}.care-accordions details{border-bottom:1px solid var(--line)}.care-accordions summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:18px;padding:23px 2px;font-weight:700;font-size:1.12rem}.care-accordions summary::-webkit-details-marker{display:none}.care-accordions summary span{color:var(--blue);font-size:1.4rem;line-height:1}.care-accordions details[open] summary span{transform:rotate(45deg)}.care-accordions details p{margin:0;padding:0 35px 28px 2px;color:#4e5f77;line-height:1.9}.visit-section{border-top:1px solid var(--line)}.visit-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.address-panel{background:var(--blue);color:#fff;padding:clamp(29px,4vw,57px);min-height:390px;display:flex;flex-direction:column}.panel-kicker{display:block;color:#8eace0;margin-bottom:22px}.address-panel h3{font-size:clamp(1.6rem,2.4vw,2.5rem);line-height:1.4;margin-bottom:14px}.address-panel p{color:#d8e4f8}.address-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:auto}.address-actions a,.address-actions button{background:#fff;color:var(--blue);border:1px solid white;padding:11px 16px;font-size:.88rem;font-weight:700;cursor:pointer}.address-actions button{background:transparent;color:#fff}.address-actions span{margin-left:11px}.copy-feedback{min-height:1.3em;margin:10px 0 0;font-size:.8rem}.directions-panel{border:1px solid var(--line);padding:clamp(29px,4vw,57px);display:grid;align-content:space-between;gap:38px}.directions-panel h3,.info-card h3{font-size:1.35rem;margin-bottom:8px}.directions-panel p,.info-card p{color:#53637a;margin:0;line-height:1.85}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}.info-card{background:var(--pale);padding:30px clamp(26px,4vw,55px)}.info-card .panel-kicker{margin-bottom:13px;color:var(--blue)}.hours-row{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:8px 0}.info-card p{margin-top:13px;font-size:.91rem}.contact-section{background:var(--blue);color:#fff;padding:100px clamp(24px,6.7vw,100px);text-align:center}.contact-inner{max-width:1100px;margin:auto}.contact-label{justify-content:center;color:#bdd2f5}.contact-section h2{margin-bottom:22px}.contact-section p{color:#e4edfc}.contact-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:40px}.button-outline{border:1px solid #b9cdf0;color:#fff;min-width:189px}.button-outline:hover{background:rgba(255,255,255,.12)}.contact-phone{margin:35px 0 0!important;font-size:.91rem}.contact-phone span{padding:0 8px}.site-footer{padding:55px clamp(24px,6.7vw,100px);display:grid;grid-template-columns:1fr 1.4fr auto;gap:20px 40px;align-items:start;font-size:.88rem}.footer-brand{align-self:start}.site-footer p{color:var(--muted);line-height:1.8}.site-footer>a:not(.brand){color:var(--blue);font-weight:700}.site-footer>small{grid-column:1/-1;color:#8795a8;font-size:.74rem}
@media(max-width:1120px){.site-header{gap:18px}.site-nav{gap:16px}.site-nav a{font-size:.82rem}.hero-left{padding-left:6vw;padding-right:4vw}.hero-right{padding-right:5vw}.note-banner{align-items:start;flex-direction:column;gap:5px}}
@media(max-width:820px){.site-header{height:70px;padding:0 24px}.brand{font-size:1.45rem}.site-nav{display:none;position:absolute;top:70px;left:0;right:0;background:#fff;box-shadow:0 18px 20px rgba(17,50,100,.12);padding:20px 24px 28px;flex-direction:column;align-items:stretch;gap:0}.site-nav.open{display:flex}.site-nav a{padding:12px 0;font-size:1rem;border-bottom:1px solid var(--line)}.menu-toggle{display:flex;margin-left:auto;background:transparent;border:0;width:42px;height:42px;align-items:center;justify-content:center;flex-direction:column;gap:6px;cursor:pointer}.menu-toggle span{display:block;width:23px;height:2px;background:var(--ink)}.header-book{display:none}.hero{min-height:unset;grid-template-columns:1fr;background:var(--blue)}.hero-left{min-height:520px;padding:70px 7vw 55px}.hero h1{font-size:clamp(3.5rem,9vw,5.8rem)}.hero-vertical{display:none}.hero-right{background:#fff;padding:32px 7vw 34px}.hero-image-wrap{height:380px;border-radius:180px 180px 4px 4px}.section{padding:85px 7vw}.intro-grid,.care-grid{grid-template-columns:1fr;gap:22px}.intro-body{max-width:650px}.note-banner{margin-top:55px}.care-decor{display:none}.visit-grid,.info-grid{grid-template-columns:1fr}.section-heading-row{align-items:start;flex-direction:column}.site-footer{grid-template-columns:1fr 1fr}.site-footer p{grid-column:1/-1;grid-row:2}.site-footer>small{grid-row:3}}
@media(max-width:600px){body{font-size:16px}.hero-left{min-height:520px;padding-top:65px}.hero h1{font-size:clamp(3.1rem,12vw,4.1rem)}.eyebrow.light{margin-bottom:30px;font-size:.7rem}.hero-intro{font-size:1rem}.hero-right{padding:24px 24px 26px}.hero-image-wrap{height:330px}.hero-bottom{margin-top:20px}.hero-bottom span:last-child{display:none}.section{padding:76px 24px}.section-label{margin-bottom:26px}.intro-grid{gap:8px}.intro-body{font-size:1rem}.feature-list{gap:12px;font-size:.84rem}.note-banner{padding:20px 22px}.price-section{padding-left:24px;padding-right:24px}.price-grid{grid-template-columns:1fr;gap:12px}.price-card{padding:22px 20px}.price-row strong{font-size:.86rem}.price-columns,.price-row{gap:4px}.price-row{font-size:.88rem}.care-accordions summary{font-size:1rem}.address-panel{min-height:340px}.contact-section{padding:78px 24px}.contact-actions{flex-direction:column}.contact-actions .button{width:100%}.site-footer{padding:44px 24px;grid-template-columns:1fr}.site-footer p{grid-column:1;grid-row:auto}.site-footer>small{grid-column:1;grid-row:auto}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
.care-accordions .precautions-list{margin:0;padding:0 35px 14px 1.5rem;color:#4e5f77;line-height:1.9}
.care-accordions .precautions-list li{padding-left:.2rem;margin-bottom:.45rem}
/* JOAYO ivory and midnight-blue identity */
:root{--blue:#0b2869;--blue-dark:#061b4a;--ink:#15294b;--muted:#6b6b70;--line:#d8cebf;--paper:#f3ede3;--pale:#eae2d6}
body{background:var(--paper)}h1,h2,h3,.brand{font-family:Georgia,'Noto Serif KR','Batang',serif}h2{font-size:clamp(2rem,3.6vw,3.5rem);font-weight:400;line-height:1.45;letter-spacing:-.035em}h2 em{color:var(--blue)}.site-header{background:var(--paper);height:84px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;letter-spacing:.12em;font-weight:400;font-size:24px}.brand img{width:48px;height:48px;object-fit:contain}.brand small{display:block;margin:7px 0 0;font:12px/1.2 'Noto Sans KR',sans-serif;letter-spacing:.04em;font-weight:400}.header-book{border-radius:0;background:transparent;color:var(--blue);border:1px solid var(--blue)}.header-book:hover{color:white}.site-nav a{font-size:14px;font-weight:500}.hero{background:var(--paper);grid-template-columns:1.2fr .8fr;min-height:0;border-bottom:1px solid var(--line);padding:35px max(24px,calc((100vw - 1260px)/2))}.hero-left{background:transparent;color:var(--ink);padding:55px 40px 55px 30px}.hero h1{font-size:clamp(2.8rem,4.6vw,4.6rem);line-height:1.4;font-weight:400;margin-bottom:24px;letter-spacing:-.04em}.hero h1 em{font-family:inherit;font-style:normal;color:var(--blue);font-size:1em}.eyebrow.light{color:#856f50;font-size:12px;letter-spacing:.15em;margin-bottom:24px}.hero-intro{color:var(--muted);font-size:16px;line-height:1.9;margin-bottom:25px}.hero-actions{gap:22px}.button{border-radius:0;min-height:48px;padding:12px 20px;font-size:14px;font-weight:500}.button:hover{transform:none}.hero .button-white{background:var(--blue);color:#fff;min-width:0}.hero .button-white:hover{background:var(--blue-dark)}.light-link{color:var(--blue);font-size:14px}.hero-vertical{display:none}.hero-right{padding:24px 10px;justify-content:center}.hero-image-wrap{height:auto;max-width:370px;aspect-ratio:1;border-radius:0;box-shadow:none;margin:auto}.hero-image{object-fit:contain}.hero-bottom{justify-content:center;margin-top:8px;font-size:12px;letter-spacing:.12em}.hero-bottom span:last-child{display:none}.section{padding:85px clamp(24px,6.7vw,100px)}.section-label{font-size:12px;color:#856f50;margin-bottom:28px}.intro-grid{grid-template-columns:1fr 1fr;gap:80px}.intro-body{font-size:16px;color:var(--muted);line-height:1.9}.intro-lead{font-size:17px}.feature-list{font-size:14px;font-weight:500}.feature-list span:before{content:'—';font-size:14px;color:#9c825a}.note-banner{margin-top:42px;background:var(--pale);border-left:2px solid #a18a67;padding:22px 26px}.note-icon{display:none}.note-banner strong{font-weight:500}.note-banner p{color:var(--muted);font-size:14px}.price-section{background:var(--pale)}.price-card{background:#faf7f1;border:1px solid #d6cab8;padding:30px}.price-card-head{border-color:#ad9672}.price-card h3{font-size:23px;font-weight:400}.price-columns,.price-row{border-color:#e4dacc}.price-row strong{font-weight:500}.price-notes{color:var(--muted)}.care-decor{display:none}.care-accordions summary{font-weight:500}.care-accordions details p,.care-accordions .precautions-list{color:var(--muted)}.visit-section{border-color:var(--line)}.address-panel{background:var(--blue-dark)}.address-panel h3{font-weight:400;line-height:1.6;font-size:28px}.panel-kicker{color:#b5a484;font-size:12px}.directions-panel{background:#faf7f1}.directions-panel h3,.info-card h3{font-size:23px;font-weight:400}.directions-panel p,.info-card p{color:var(--muted)}.info-card{background:var(--pale)}.contact-section{background:var(--blue-dark);padding:75px 24px}.contact-section h2 em{color:#e2cfab}.contact-label{color:#c9b897}.contact-section p{color:#d6d9e1}.contact-section .button-white{background:var(--paper);color:var(--blue)}.contact-section .button-outline{border-color:#7886a3}.site-footer{background:var(--paper);padding-top:40px;padding-bottom:30px}.site-footer>small{font-size:12px;color:var(--muted)}
@media(max-width:1120px){.brand small{font-size:12px}.site-header{gap:16px}.site-nav{gap:14px}.intro-grid{gap:40px}}
@media(max-width:820px){.site-header{height:72px;padding:0 20px}.site-nav{top:72px;background:var(--paper)}.hero{display:grid;grid-template-columns:minmax(0,1fr) 84px;padding:24px;gap:14px;align-items:start}.hero-left{display:contents;min-height:0;padding:0}.hero-copy{display:contents}.hero .eyebrow{grid-column:1/-1;margin:0;font-size:11px}.hero h1{grid-column:1;grid-row:2;font-size:clamp(25px,5vw,36px);line-height:1.45;margin:0}.hero-right{grid-column:2;grid-row:2;padding:0;display:block}.hero-image-wrap{width:84px;height:84px;max-width:84px;border-radius:0;aspect-ratio:1}.hero-image{width:84px;height:84px}.hero-bottom{display:none}.hero-intro{grid-column:1/-1;grid-row:3;font-size:14px;line-height:1.7;margin:0}.hero-actions{grid-column:1/-1;grid-row:4;margin-top:5px;gap:18px}.hero .button{font-size:13px;min-height:42px;padding:9px 14px}.hero .text-link{font-size:13px}.section{padding:48px 24px}.intro-grid,.care-grid{grid-template-columns:1fr;gap:15px}.section-label{margin-bottom:18px}.note-banner{margin-top:28px}.contact-section{padding:48px 24px}.contact-actions{margin-top:26px}.contact-actions .button{min-height:44px}.address-panel{min-height:290px}.site-footer .brand{font-size:23px}}
@media(max-width:600px){.hero-left{min-height:0}.hero h1{font-size:26px}.hero-right{padding:0}.hero-image-wrap{height:84px;border-radius:0}.price-card{padding:22px 18px}.price-grid{gap:16px}.feature-list{font-size:14px}.contact-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.contact-actions .button{min-width:0;padding:10px;font-size:13px}.brand{font-size:23px}.brand img{width:42px;height:42px}.brand small{font-size:12px}.intro-body{font-size:16px}.price-row strong{font-size:14px}.price-columns{font-size:14px}.price-foot{font-size:14px}.info-card p{font-size:15px}.care-accordions summary{font-size:16px}.site-footer{padding:32px 24px}}
