/* Runtime image slots retain the dimensions set by the supplied prototype. */
/* Keep button text readable on both pale sections and the green CTA bands. */
:root{--button-green:#117964}
.btn-mint{background:linear-gradient(135deg,var(--button-green),var(--brand-dark));color:#fff}
.btn-ghost,.btn-light{color:var(--brand-dark)}
.btn-ghost:hover,.btn-light:hover{color:var(--brand-dark)}
/* CTA templates use white lettering; it needs its own opaque dark surface. */
.cta-band .btn-ghost{background:var(--brand-dark);color:#fff;border-color:rgba(255,255,255,.7)}
.cta-band .btn-ghost:hover,.cta-band .btn-ghost:active{background:#094c3f;color:#fff;border-color:#fff}
.wc-copy:hover,.wc-copy:active{color:var(--ink)}
.lang-btn:hover{color:var(--brand-dark)}
.cat-nav a:not(.on):hover{color:var(--brand-dark)}
.cat-nav a.on{background:var(--button-green);border-color:var(--button-green)}
/* The services navigation must not overlap the positioned hero background. */
.page-hero + .cat-nav{margin-top:16px;padding-inline:16px}
.btn:focus-visible,.wc-copy:focus-visible,.cat-nav a:focus-visible,.news-filters a:focus-visible,.baid-pagination a:focus-visible,.lang-btn:focus-visible{outline:2px solid var(--brand-dark);outline-offset:3px;box-shadow:0 0 0 3px #fff}
.baid-media-slot{position:relative;overflow:hidden;min-width:0}
/* Placeholder captions apply only until an actual managed image is selected. */
.ph.baid-media-slot:has(>.baid-slot-image)::after{content:none}
.baid-media-slot>.baid-slot-image{position:absolute!important;inset:0;width:100%!important;height:100%!important;max-width:100%;object-fit:cover;display:block;border-radius:inherit}
.baid-media-contain>.baid-slot-image{object-fit:contain}
.baid-contact-map{height:380px;overflow:hidden;box-shadow:0 0 0 1px var(--line);border-radius:var(--r-lg);background:var(--mint-50);min-width:0}
.baid-korea-map{display:block;width:100%;height:380px;border:0}
.baid-map-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:20px}
.baid-map-external{font-size:14px;color:var(--brand-dark);text-decoration:underline;text-underline-offset:3px}
.baid-map-external:focus-visible{outline:2px solid var(--brand-dark);outline-offset:3px}
.hero-art.baid-media-slot{overflow:visible}
.hero-art.baid-media-slot>.baid-slot-image{border-radius:var(--r-lg)}
.baid-logo-fixed{object-fit:contain;width:220.118px;max-width:100%;flex-shrink:0}
.brand-logo-footer.baid-logo-fixed{width:258.394px}
.news-filters a{border:1px solid var(--line-2);background:#fff;color:var(--ink-2);padding:8px 16px;border-radius:999px;font-size:13px;line-height:normal;transition:.2s;display:inline-block}
.news-filters a:hover{color:var(--brand-dark);border-color:var(--brand)}
.news-filters a.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.baid-pagination{display:flex;gap:10px;justify-content:center;margin-top:32px;flex-wrap:wrap}
.baid-pagination a{border:1px solid var(--line);border-radius:8px;padding:8px 15px}
.baid-pagination a.on{background:var(--button-green);color:white}
.baid-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.baid-form-result{padding:12px;border-radius:8px;background:var(--mint-100);color:var(--brand-deep);overflow-wrap:anywhere}
.baid-form-result[hidden]{display:none}
.baid-empty{grid-column:1/-1;padding:30px;text-align:center;color:var(--text-2)}
.article img,.prose img{max-width:100%;height:auto;display:block}
summary.lang-btn,summary.faq-q{list-style:none;cursor:pointer;line-height:normal}
summary.lang-btn::-webkit-details-marker,summary.faq-q::-webkit-details-marker{display:none}
a.lang-item{line-height:normal}
.lang[open] .lang-panel{display:block}
html:not(.js-ok) .faq-item[open] .faq-a{max-height:none}
html:not(.js-ok) .faq-item[open] .faq-q .arr{transform:rotate(180deg)}
@media(max-width:940px){
html:not(.js-ok) .site-header{position:relative}
html:not(.js-ok) .header-inner{height:auto;min-height:var(--nav-h);flex-wrap:wrap;padding-top:12px;padding-bottom:12px;row-gap:10px}
html:not(.js-ok) .burger{display:none}
html:not(.js-ok) .main-nav{position:static;inset:auto;transform:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));order:3;width:100%;padding:0;background:transparent;border:0;box-shadow:none}
html:not(.js-ok) .main-nav a{padding:8px;font-size:14.5px}
}
@media(max-width:620px){.brand-logo.baid-logo-fixed{width:191.407px}.brand-logo-footer.baid-logo-fixed{width:220.118px}}
