:root{--navy:#0a2744;--blue:#1055a0;--mid:#075985;--white:#fff;--gray:#64748b;--border:#dce6f0;--gold:#e8a020;--bg:#f7f9fc}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:"Malgun Gothic","Apple SD Gothic Neo","Yu Gothic","YuGothic","Hiragino Kaku Gothic ProN","Noto Sans KR","Noto Sans JP",system-ui,-apple-system,sans-serif;color:#2c3e50;background:#fff;line-height:1.7}
img{max-width:100%;height:auto;display:block}
a{color:#1055a0}
.top-bar{background:#0f4b8f;padding:8px 5%;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}
.top-bar .loc{color:rgba(255,255,255,.82);font-size:12px}
.top-bar .links{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.top-bar .links a{color:#fff;text-decoration:none;font-size:13px;font-weight:600}
.lang-switch{display:flex;gap:8px;align-items:center}
.lang-switch a{padding:2px 0;border-bottom:2px solid transparent}
.lang-switch a[aria-current="true"]{border-bottom-color:#ffd166}
nav.ko-nav{position:sticky;top:0;z-index:100;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 5%;min-height:78px;border-bottom:1px solid #e6eef6;gap:12px}
.logo-wrap{display:flex;align-items:center;gap:12px;text-decoration:none;min-width:0}
.logo-mark{width:46px;height:46px;border-radius:14px;background:linear-gradient(135deg,#0b5fc0,#2f6f24);display:flex;align-items:center;justify-content:center;color:#fff;font-size:21px;font-weight:900}
.logo-cn{color:#073b78;font-size:20px;font-weight:900;line-height:1;letter-spacing:.4px}
.logo-en{color:#64748b;font-size:12px;font-weight:600;margin-top:5px}
.nav-links{display:flex;align-items:center;gap:22px}
.nav-links a{color:#1e293b;font-size:15px;font-weight:700;text-decoration:none}
.nav-cta{background:#0b5fc0;color:#fff!important;padding:12px 22px;border-radius:8px;font-size:14px;font-weight:800;text-decoration:none}
.nav-mobile-toggle{display:none;background:none;border:1px solid var(--border);border-radius:8px;padding:8px 10px;cursor:pointer}
.mobile-menu{display:none}
.hero{background:linear-gradient(135deg,#0a2744,#123b69);color:#fff;padding:52px 5% 40px}
.shell{max-width:1120px;margin:0 auto}
.kicker{letter-spacing:.08em;text-transform:uppercase;color:#ffd166;font-size:12px;font-weight:800}
h1{font-size:clamp(26px,4vw,44px);line-height:1.25;margin:10px 0 14px;color:inherit}
.lead{color:rgba(255,255,255,.86);max-width:760px;font-size:17px}
.btns{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.btn{display:inline-block;padding:11px 18px;border-radius:6px;text-decoration:none;font-weight:800;font-size:14px}
.btn.p{background:var(--gold);color:#0a2744}
.btn.g{border:1px solid rgba(255,255,255,.35);color:#fff}
main.page{background:var(--bg);padding:36px 5% 72px}
.sec{background:#fff;border:1px solid var(--border);border-radius:16px;padding:26px;margin:0 auto 16px;max-width:1120px}
.sec h2{color:var(--navy);margin:0 0 12px;font-size:22px;line-height:1.35}
.sec h3{color:var(--navy);margin:18px 0 8px;font-size:17px}
.sec p,.sec li{font-size:15.5px}
.sec ul,.sec ol{padding-left:1.2em;margin:8px 0}
.sec li{margin:4px 0}
.note{background:#fff8e8;border-left:4px solid var(--gold);padding:12px 14px;margin:14px 0;font-size:14.5px}
.warn{background:#f8fafc;border-left:4px solid var(--blue);padding:12px 14px;margin:14px 0;font-size:14.5px}
table{width:100%;border-collapse:collapse;margin:12px 0;font-size:14.5px}
th,td{border:1px solid var(--border);padding:10px;vertical-align:top;text-align:left}
th{background:#f1f6f8;color:var(--navy)}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.card{display:block;border:1px solid var(--border);border-radius:12px;padding:16px;text-decoration:none;background:#f8fbff;color:inherit}
.card strong{display:block;color:var(--navy);font-size:16px}
.card span{display:block;color:var(--gray);font-size:13px;margin-top:6px}
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin-top:18px}
.facts div{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:12px;padding:12px 14px}
.facts b{display:block;font-size:13px;color:#ffd166}
.facts span{font-size:14px}
.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin:14px 0}
.gallery figure{margin:0;border:1px solid var(--border);border-radius:12px;overflow:hidden;background:#fff}
.gallery img{width:100%;height:160px;object-fit:cover}
.gallery figcaption{padding:8px 10px;font-size:12px;color:var(--gray)}
form.quote{display:grid;gap:12px}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
label span{display:block;font-size:13px;font-weight:700;color:var(--navy);margin-bottom:4px}
input,select,textarea{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:8px;font:inherit}
button.form-submit,.btn.submit{background:#0b5fc0;color:#fff;border:0;padding:12px 20px;border-radius:8px;font-weight:800;cursor:pointer}
.cta{background:var(--navy);color:#fff;border-radius:14px;padding:24px;text-align:center;max-width:1120px;margin:0 auto}
.cta a{display:inline-block;margin-top:10px;background:var(--gold);color:#0a2744;padding:12px 22px;border-radius:8px;text-decoration:none;font-weight:800}
footer.site-footer{background:#0a2744;color:#dbe7f3;padding:36px 5% 20px;font-size:14px}
.footer-grid{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:24px}
.footer-grid a{color:#fff;text-decoration:none;display:block;margin:6px 0}
.footer-bottom{max-width:1120px;margin:20px auto 0;padding-top:16px;border-top:1px solid rgba(255,255,255,.12);display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:13px;color:#9fb3c8}
.crumb{font-size:13px;color:var(--gray);margin-bottom:10px}
.crumb a{color:var(--gray)}
.en-tag{font-size:11px;font-weight:800;color:#64748b;letter-spacing:.04em}
@media(max-width:800px){
  .nav-links,.nav-cta{display:none}
  .nav-mobile-toggle{display:block}
  .mobile-menu.open{display:block;position:absolute;left:0;right:0;top:78px;background:#fff;border-bottom:1px solid var(--border);padding:12px 5% 20px;z-index:99}
  .mobile-menu a{display:block;padding:10px 0;color:#1e293b;text-decoration:none;font-weight:700}
  .field-row,.footer-grid{grid-template-columns:1fr}
}
