:root{--ink:#14201b;--muted:#5e6f80;--line:#e2e8ee;--brand:#12264a;--accent:#d0202c;
      --page:#f5f7f9;--surface:#fff;--shadow:0 10px 26px rgba(16,32,56,.07)}
*{margin:0;padding:0;box-sizing:border-box}
body{background:var(--page);color:var(--ink);line-height:1.7;padding-bottom:62px;
     font-family:Pretendard,-apple-system,"Segoe UI","Malgun Gothic",sans-serif}
img{max-width:100%;display:block}
a{color:inherit}

.top{display:flex;align-items:center;justify-content:space-between;gap:12px;
     padding:12px 18px;background:var(--surface);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:9px;text-decoration:none}
.brand img{width:36px;height:36px;border-radius:9px}
.brand b{font-size:1.12rem;font-weight:900;color:var(--brand);letter-spacing:-.03em}
.call{background:var(--accent);color:#fff;font-weight:900;font-size:.94rem;
      padding:9px 17px;border-radius:999px;text-decoration:none}

.wrap{max-width:960px;margin:0 auto;padding:18px 14px 40px}
.hero,.block{background:var(--surface);border:1px solid var(--line);border-radius:14px;
             padding:24px 22px;margin-bottom:16px;box-shadow:var(--shadow)}
.tag{display:inline-block;background:#fdece9;color:#a8323c;font-size:.8rem;font-weight:800;
     border-radius:6px;padding:5px 11px;margin-bottom:12px}
h1{font-size:1.6rem;font-weight:900;line-height:1.35;letter-spacing:-.03em;word-break:keep-all}
h2{font-size:1.22rem;font-weight:900;margin-bottom:14px;letter-spacing:-.03em}
.lead{color:var(--muted);margin-top:12px;word-break:keep-all}
.meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.meta span{background:#ffd400;color:#16233f;font-size:.85rem;padding:5px 13px;font-weight:700}
.meta b{font-weight:900}

.cta{display:block;text-align:center;text-decoration:none;color:#fff;border-radius:14px;
     padding:18px;margin-bottom:16px;background:linear-gradient(180deg,#e0424b,#b81e2a);
     box-shadow:0 10px 22px rgba(0,0,0,.16)}
.cta span{font-size:.94rem;font-weight:800;opacity:.95}
.cta strong{display:block;font-size:2.1rem;font-weight:900;line-height:1.2;letter-spacing:.01em}
.cta small{font-size:.8rem;opacity:.85}

.poster{margin-bottom:16px;border-radius:14px;overflow:hidden;box-shadow:var(--shadow)}
.poster img{width:100%;height:auto}

.kwgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin-top:16px}
.kw{border:1px solid var(--line);border-radius:11px;overflow:hidden;text-decoration:none;
    background:#fff;text-align:center}
.kw img{width:100%;height:96px;object-fit:cover}
.kw b{display:block;padding:9px 5px;font-size:.86rem;font-weight:800}

table{width:100%;border-collapse:collapse;font-size:.93rem;margin-top:6px}
th,td{border-bottom:1px solid var(--line);padding:11px 9px;text-align:left}
th{background:#f2f6fa;color:var(--muted);font-weight:800}
.note{margin-top:11px;font-size:.86rem;color:var(--muted)}

.gal{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:16px}
.gal img{width:100%;height:132px;object-fit:cover;border-radius:9px}

details{border:1px solid var(--line);border-radius:10px;padding:13px 15px;margin-bottom:9px;background:#fff}
summary{cursor:pointer;font-weight:800;font-size:.96rem}
details p{margin-top:10px;color:var(--muted);font-size:.91rem}

.mesh{display:flex;flex-wrap:wrap;gap:7px}
.mesh a{padding:8px 13px;border:1px solid var(--line);border-radius:9px;background:#fff;
        text-decoration:none;font-size:.86rem}

.foot{max-width:960px;margin:0 auto;padding:24px 16px 34px;text-align:center;
      font-size:.86rem;color:var(--muted)}
.foot b{color:var(--brand)}
.foot p{margin-top:9px;word-break:keep-all}

.sticky{position:fixed;left:0;right:0;bottom:0;z-index:99;display:flex}
.sticky .s{flex:1;text-align:center;padding:15px 8px;font-weight:900;font-size:1rem;
           text-decoration:none;color:#fff}
.sticky .tel{background:var(--accent)}
.sticky .apply{background:#ef5f10}

@media(max-width:720px){
  .kwgrid{grid-template-columns:repeat(2,1fr)}
  .gal{grid-template-columns:repeat(2,1fr)}
  h1{font-size:1.34rem}
}
