@import url('assets/fonts/noto-sans-kr.css');
:root{--ink:#132823;--green:#1a7556;--lime:#d9f888;--muted:#6c7973}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:#fafbf8;color:var(--ink);font-family:'Noto Sans KR',sans-serif;letter-spacing:-.04em}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #81bd18;outline-offset:5px}.wrap{max-width:1280px;margin:auto;padding:100px 48px}header{position:absolute;z-index:5;top:24px;left:4%;width:92%;display:flex;align-items:center;justify-content:space-between;background:#fffffff0;border-radius:16px;padding:15px 25px;backdrop-filter:blur(12px)}.logo{font-family:Arial,sans-serif;font-size:40px;font-weight:900;letter-spacing:-3px;line-height:.85}.logo>span{font-size:15px;vertical-align:top;letter-spacing:0}.logo small{display:block;font-size:8px;letter-spacing:2px;margin:8px 0 0 3px}nav{display:flex;gap:35px;font-size:14px;font-weight:600}.button{border:0;display:inline-flex;gap:30px;align-items:center;justify-content:space-between;padding:18px 25px;border-radius:8px;background:var(--lime);color:var(--ink);font-size:14px;font-weight:700}.button.small{padding:15px 20px;background:var(--green);color:white}.hero{min-height:800px;height:94vh;max-height:1100px;position:relative;color:white;background:#405449;overflow:hidden}.hero-photo{position:absolute;inset:0;background:linear-gradient(90deg,#10291fe0,#10291f45 75%),url('assets/photo-1600210492486-724fe5c67fb0.jpg') center/cover}.hero-content{position:relative;padding:210px 8% 120px}.eyebrow{font:700 11px Arial,sans-serif;letter-spacing:2.5px;color:var(--green);margin:0 0 25px}.eyebrow.light{color:#e5f8d3}.eyebrow i{display:inline-block;width:7px;height:7px;background:var(--lime);border-radius:50%;margin-right:9px}h1{font-size:clamp(44px,5.2vw,78px);line-height:1.25;letter-spacing:-.065em;margin:0 0 27px;font-weight:700}.hero-copy{font-size:17px;line-height:1.9;color:#edf2e9;margin-bottom:35px}.hero-bottom{position:absolute;bottom:32px;left:8%;right:8%;display:flex;justify-content:space-between;font:10px Arial;letter-spacing:1.5px;opacity:.8}.hero-index{position:absolute;bottom:140px;right:8%;font:30px Arial}.hero-index span{font-size:10px;color:#d0d7d0}h2{font-size:clamp(30px,3.2vw,47px);line-height:1.4;letter-spacing:-.06em;margin:0;font-weight:700}.intro{display:grid;grid-template-columns:1.2fr 1fr;gap:100px;padding-top:120px;padding-bottom:120px}.intro-copy{padding-top:35px}.intro-copy p{font-size:16px;line-height:1.9;margin:0 0 22px;color:var(--muted)}.intro-copy p:first-child{font-size:21px;color:var(--ink);font-weight:500}.area{display:block;border-top:1px solid #d9dfd6;padding-top:24px;font-size:13px;color:var(--muted)}.area b{float:right;color:var(--green)}.services{padding-top:70px}.section-top{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:48px}.section-top>p{font-size:14px;color:var(--muted);line-height:1.9}.tabs{display:flex;border-bottom:1px solid #ccd5cc;margin-bottom:30px;gap:35px}.tabs button{border:0;background:none;padding:18px 4px;font-size:20px;font-weight:600;color:#86918b;border-bottom:3px solid transparent}.tabs button[aria-selected=true]{color:var(--green);border-bottom-color:var(--green)}sup{font-size:10px;margin-left:5px;vertical-align:super}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.card{display:block;text-align:left;background:none;border:0;padding:0;color:var(--ink)}.card-image{height:230px;border-radius:10px;overflow:hidden;position:relative;background:#e3e9df}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.card:hover img{transform:scale(1.045)}.card-image span{position:absolute;top:16px;left:16px;padding:6px 9px;color:white;background:#19392caa;border-radius:5px;font:11px Arial}.card h3{font-size:19px;display:flex;justify-content:space-between;margin:17px 0 8px}.card h3 b{font-weight:400}.card p{font-size:13px;line-height:1.7;color:var(--muted);margin:0 0 13px}.image-note{font-size:11px;color:#89918b;margin:25px 0 0}.banner{background:#173e30;color:white;position:relative;overflow:hidden}.banner:after{content:'bravo';position:absolute;right:-30px;bottom:-100px;font:900 330px Arial;letter-spacing:-25px;color:#ffffff05;pointer-events:none}.banner .wrap{position:relative;z-index:1}.banner h2{font-size:clamp(38px,4vw,60px)}.banner .wrap>div{display:flex;justify-content:space-between;align-items:end;margin-top:25px}.banner p:not(.eyebrow){color:#c1d1c6;font-size:15px;line-height:1.9}.nation{border-bottom:1px solid #6d8e75;min-width:240px;padding:20px 0;font-size:24px;color:var(--lime)}.nation span{float:right}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.steps article{border-top:1px solid #cbd6ca;padding-top:25px}.steps article>span{font:16px Arial;color:var(--green)}.steps h3{font-size:21px;margin:28px 0 15px}.steps p{font-size:13px;line-height:1.9;color:var(--muted)}.contact{display:grid;grid-template-columns:1fr 1fr;gap:60px;border-top:1px solid #dce2d8}.contact>div>p:not(.eyebrow){color:var(--muted);font-size:14px;margin-top:24px}.contact-box{background:#eef2e8;padding:35px;border-radius:12px}.status{color:var(--green);font-size:11px;background:#dce8ce;border-radius:30px;padding:6px 12px}.contact-box h3{font-size:25px;margin:22px 0 12px}.contact-box p{font-size:14px;line-height:1.9;color:var(--muted)}.text-link{display:inline-block;border-bottom:1px solid var(--green);padding:10px 0;font-size:13px;font-weight:600;color:var(--green)}footer.wrap{border-top:1px solid #dce2d8;padding-top:40px;padding-bottom:55px;display:flex;align-items:center;justify-content:space-between;gap:30px}footer div{font-size:12px;line-height:2}footer div span,footer p{font-size:10px;color:var(--muted)}.floating{position:fixed;bottom:24px;right:24px;z-index:6;background:var(--green);color:white;padding:16px 23px;border-radius:50px;box-shadow:0 4px 20px #12352930;font-size:13px;font-weight:700}dialog{width:min(540px,92vw);border:0;border-radius:16px;padding:45px;color:var(--ink);box-shadow:0 30px 90px #0003}dialog::backdrop{background:#10281dbb;backdrop-filter:blur(4px)}dialog h2{font-size:30px}dialog>p:not(.eyebrow){font-size:15px;line-height:1.9;color:var(--muted)}dialog .dialog-note{border-top:1px solid #ddd;padding-top:20px;font-size:12px!important}dialog .button{margin-top:10px}.close{position:absolute;right:18px;top:15px;border:0;background:transparent;font-size:23px}@media(max-width:800px){header{top:15px;padding:13px 18px}.logo{font-size:32px}nav{gap:17px;font-size:12px}header .small{font-size:12px;padding:12px}.hero{height:85vh;min-height:650px}.hero-content{padding:190px 7% 100px}.hero-photo{background-position:60% center}.hero-index{display:none}.hero-bottom{font-size:8px;left:7%;right:7%}.wrap{padding:65px 25px}.intro{gap:30px;grid-template-columns:1fr}.intro-copy{padding-top:0}.section-top{display:block;margin-bottom:25px}.section-top>p{margin-top:20px}.tabs{gap:20px}.tabs button{font-size:16px}.grid{grid-template-columns:repeat(2,1fr);gap:24px 16px}.card-image{height:180px}.card h3{font-size:16px}.card p{font-size:12px}.steps{grid-template-columns:repeat(2,1fr);gap:20px}.contact{grid-template-columns:1fr;gap:30px}.banner .wrap>div{align-items:start;flex-direction:column}.nation{margin-top:20px}footer.wrap{flex-wrap:wrap}.hero-copy{font-size:15px}}@media(max-width:450px){nav a:first-child{display:none}nav{gap:12px}.logo small{font-size:6px}.hero-bottom span{max-width:150px;line-height:1.7}.tabs{gap:12px;justify-content:space-between}.tabs button{font-size:15px}.card-image{height:150px}.card h3{font-size:15px}.card p{font-size:11px}.contact-box{padding:25px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}#quote-form label{display:block;font-size:13px;font-weight:600;margin:16px 0;color:var(--ink)}#quote-form label span{color:var(--green)}#quote-form label small{font-weight:400;color:var(--muted)}#quote-form input,#quote-form select,#quote-form textarea{display:block;width:100%;min-width:0;font:inherit;font-weight:400;padding:12px;border:1px solid #cbd6c6;border-radius:6px;background:white;color:var(--ink);margin-top:8px}#quote-form textarea{resize:vertical}#quote-form input:focus,#quote-form select:focus,#quote-form textarea:focus{outline:2px solid var(--green);outline-offset:2px}#quote-form .form-privacy,#copy-fallback p{font-size:11px;line-height:1.8;color:var(--muted)}#quote-feedback{font-size:13px;line-height:1.8;color:var(--green)}@media(max-width:450px){.form-row{grid-template-columns:1fr;gap:0}}
.quote-progress{display:flex;gap:8px;margin:22px 0;color:var(--green);font-size:11px;font-weight:600}.quote-progress span{flex:1;background:#dde8d3;padding:9px 5px;text-align:center;border-radius:5px}.quote-extras{margin:24px 0;padding:16px;border:1px solid #c4d2ba;border-radius:10px;min-width:0}.quote-extras legend{font-size:14px;font-weight:700;padding:0 5px}.quote-extras legend small{font-size:10px;font-weight:400;color:var(--muted)}.quote-extras>p{font-size:11px;color:var(--muted);margin:0 0 12px;line-height:1.7}.extra-options{display:grid;grid-template-columns:1fr 1fr;gap:9px}#quote-form .extra-options label{margin:0;position:relative;cursor:pointer}#quote-form .extra-options input{position:absolute;width:1px;height:1px;opacity:0;margin:0;padding:0;min-width:0}#quote-form .extra-options span{display:flex;align-items:center;gap:7px;min-height:52px;padding:10px;background:white;border:1px solid #d5dece;border-radius:7px;font-size:12px;color:var(--ink);font-weight:500;line-height:1.5}.extra-options span:before{content:'+';flex-shrink:0;font-size:17px;color:#899a7f}#quote-form .extra-options input:checked+span{border-color:var(--green);background:#e2efdb;color:var(--green)}.extra-options input:checked+span:before{content:'✓';color:var(--green)}#quote-form .extra-options input:focus-visible+span{outline:2px solid var(--green);outline-offset:2px}.quote-extras[hidden]{display:none}@media(max-width:450px){.extra-options{grid-template-columns:1fr}}
#quote-form .visit-notice{padding:18px;background:#e2ebda;border-left:3px solid var(--green);border-radius:6px;color:var(--ink);font-size:14px;line-height:1.9;margin:24px 0}.visit-notice[hidden]{display:none}
.quote-space{border:1px solid #c4d2ba;border-radius:10px;margin:24px 0;padding:16px;min-width:0}.quote-space legend{font-size:14px;font-weight:700;padding:0 5px}.quote-space #area-help{display:block;margin-top:8px;font-size:11px;color:var(--muted);line-height:1.7}.space-counts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}#quote-form .space-counts label{font-size:12px}.quote-space[hidden],#quote-form label[hidden]{display:none}@media(max-width:450px){.space-counts{grid-template-columns:1fr}}
.promise-intro{column-gap:65px;row-gap:55px}.promise-intro h2{font-size:clamp(29px,3vw,43px)}.promise-values{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.promise-values article{border-top:1px solid #cdd9c8;padding-top:24px}.promise-values article>span{font:10px Arial;letter-spacing:1.4px;color:var(--green)}.promise-values h3{font-size:21px;margin:17px 0 12px}.promise-values p{font-size:13px;line-height:1.9;color:var(--muted);margin:0}.story-hero{background:#173e30;color:white;padding-top:125px}.story-hero h1{font-size:clamp(36px,4.8vw,65px);line-height:1.4}.story-hero .wrap>p:last-child{color:#cadbcf;font-size:17px;line-height:1.9}.story-body{max-width:900px}.story-body p{font-size:16px;line-height:2;color:var(--muted);overflow-wrap:anywhere}.story-body .story-lead{font-size:23px;color:var(--ink);line-height:1.8}.story-body>section{margin-top:80px}.story-body .eyebrow{font-size:11px;line-height:1.4;color:var(--green)}.story-body h2{font-size:clamp(29px,3.4vw,42px);margin-bottom:25px}.story-body blockquote{border-left:3px solid var(--green);background:#edf2e6;padding:28px;margin:30px 0;font-size:24px;font-weight:600;line-height:1.7}.story-value{display:flex;gap:25px;border-top:1px solid #d6dfd0;padding-top:25px;margin-top:30px}.story-value>span{font:20px Arial;color:var(--green);padding-top:6px}.story-value h3{font-size:23px;margin:0}.story-value p{margin-bottom:0}.story-ending{border-top:1px solid #d6dfd0;padding-top:50px}.story-ending .text-link{margin-left:20px}@media(max-width:800px){.promise-values{grid-template-columns:1fr;gap:27px}.story-hero{padding-top:105px}.story-body>section{margin-top:55px}.story-body .story-lead{font-size:20px}.story-body p{font-size:14px}.story-body blockquote{font-size:20px;padding:22px}.story-ending .text-link{display:table;margin:18px 0 0}}
.aftercare-note{border-top:1px solid #cdd9c8;margin-top:35px;padding-top:25px}.aftercare-note>span{font:10px Arial;letter-spacing:2px;color:var(--green)}.aftercare-note h3{font-size:24px;font-weight:600;line-height:1.6;letter-spacing:-.05em;margin:15px 0}.aftercare-note p{font-size:14px;line-height:1.9;color:var(--muted)}
.privacy-summary{border-top:1px solid #ccd8c5;margin:25px 0;padding-top:20px;font-size:12px;line-height:1.8}.privacy-summary summary{cursor:pointer;font-weight:600}.privacy-summary summary small{font-size:10px;font-weight:400;color:var(--muted);margin-left:8px}.privacy-summary dl{padding:15px;background:#fafcf7;border-radius:7px}.privacy-summary dt{font-weight:600;margin-top:12px}.privacy-summary dt:first-child{margin-top:0}.privacy-summary dd{margin:4px 0 0;color:var(--muted)}#quote-form .privacy-consent{display:flex;align-items:flex-start;gap:9px;font-weight:400;line-height:1.8}#quote-form .privacy-consent input{width:16px;min-width:16px;height:16px;padding:0;margin:4px 0 0}#quote-form .privacy-consent span{color:var(--muted)}.privacy-page{max-width:900px;padding-top:170px}.privacy-page h1{font-size:clamp(30px,5vw,48px)}.privacy-page section{margin:40px 0}.privacy-page h2{font-size:22px}.privacy-page p{font-size:14px;line-height:2;color:var(--muted);overflow-wrap:anywhere}.privacy-draft{background:#eef2e1;border:1px solid #d4dec3;border-radius:10px;padding:23px;margin:30px 0}.privacy-draft strong{color:var(--green)}.privacy-draft p{margin-bottom:0}
footer .business-info{font-size:11px;line-height:1.9;color:var(--muted);margin:12px 0 0;overflow-wrap:anywhere}
#quote-form .copy-quote-button{margin:12px 0 0 10px;background:transparent;border:1px solid #cad6bf;font-size:12px;padding:15px}.intake-honeypot{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}#quote-form button:disabled{opacity:.55;cursor:not-allowed}
.logo{display:inline-flex;align-items:center;flex-shrink:0;line-height:1;letter-spacing:normal}.logo img{display:block;width:156px;height:auto;max-width:100%}footer .logo img{width:170px}@media(max-width:800px){header .logo img{width:120px}}@media(max-width:450px){header .logo img{width:96px}header{gap:10px;padding-inline:12px}header .button.small{padding:11px 12px}}
header{padding:17px 28px}header nav{gap:28px;align-items:center}header nav>a,header summary{white-space:nowrap;font-size:14px;font-weight:600}header nav>a:hover,header summary:hover{color:var(--green)}.nav-category{position:relative}.nav-category summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:7px;padding:10px 0}.nav-category summary::-webkit-details-marker{display:none}.nav-category summary:after{content:'⌄';font-size:12px;color:#7d8f82}.nav-category[open] summary{color:var(--green)}.nav-dropdown{position:absolute;top:calc(100% + 12px);left:-20px;min-width:225px;background:#fffffffA;border:1px solid #dfe6da;border-radius:12px;box-shadow:0 15px 40px #132d2320;padding:10px;backdrop-filter:blur(12px)}header .nav-dropdown a{display:block;padding:11px 13px;border-radius:6px;font-size:13px;font-weight:400;line-height:1.6;color:var(--ink)}header .nav-dropdown a:hover,header .nav-dropdown a:focus-visible{background:#edf3e5;color:var(--green)}@media(max-width:1100px){header{padding:14px 20px}header nav{gap:20px}header nav>a,header summary{font-size:12px}header .logo img{width:125px}}@media(max-width:750px){header{flex-wrap:wrap;gap:9px;padding:13px 16px}header .logo{order:1}header>.button{order:2;margin-left:auto}header nav{order:3;width:100%;border-top:1px solid #e2e8db;padding-top:7px;justify-content:space-between;gap:8px}header nav>a,header summary{font-size:11px}header nav>a:first-child{display:block}.nav-category summary{gap:3px}.nav-dropdown{top:calc(100% + 9px);left:-40px;min-width:210px}.nav-category:last-of-type .nav-dropdown{left:auto;right:-35px}.hero-content{padding-top:220px}.story-hero{padding-top:145px}}@media(max-width:380px){header{padding-inline:10px}header nav{gap:4px}header nav>a,header summary{font-size:10px}.nav-category summary{gap:2px}}
/* address search (quote form) — #quote-form prefix to beat the form's base rules */
#quote-form .address-field{border:0;padding:0;margin:16px 0 0;min-width:0}
#quote-form .address-field legend{font-size:13px;font-weight:600;margin-bottom:8px;padding:0;color:var(--ink)}
#quote-form .address-field legend span{color:#c62828}
#quote-form .address-search{display:flex;gap:8px;align-items:stretch}
#quote-form .address-search input{flex:1;cursor:pointer}
#quote-form .address-search .button{white-space:nowrap;padding:0 16px;margin:0}
#quote-form .address-field>input{margin-top:8px}
#quote-form .address-other{margin:6px 2px 0;font-size:13px;color:#4c5f55}
#quote-form .address-manual{display:flex;align-items:center;gap:8px;margin:10px 0 0;font-weight:500}
#quote-form .address-manual input{width:18px;height:18px;flex:none;margin:0;padding:0}
#quote-form .address-help{margin:4px 2px 0;font-size:12px;color:#77847d}
.address-layer{position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.45);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:16px}
.address-layer-box{width:min(520px,100%);height:min(560px,80vh);background:#fff;border-radius:0 0 12px 12px;overflow:hidden}
.address-layer-close{width:min(520px,100%);border:0;background:#1a7556;color:#fff;padding:12px;border-radius:12px 12px 0 0;font-weight:700;cursor:pointer;text-align:right}
