/* ============================================================
   KFAS Website Ver.03 — homepage styles
   Ported from 한국고등교육재단.dc.html design handoff
   ============================================================ */
* { box-sizing: border-box; }
.kfas-home { margin: 0; font-family: 'Pretendard', system-ui, sans-serif; word-break: keep-all; -webkit-font-smoothing: antialiased; color: #14181f; background:#fff; }
.kfas-home img { display: block; }
.kfas-home a { color:#a8842e; text-decoration:none; }
.kfas-home a:hover { color:#7a5f1f; }
.kfas-home .serif { font-family: 'Noto Serif KR', serif !important; }
.kfas-home .material-symbols-outlined { font-family: 'Material Symbols Outlined'; font-weight: normal; font-style: normal; line-height: 1; letter-spacing: normal; text-transform: none; display: inline-block; white-space: nowrap; word-wrap: normal; direction: ltr; font-feature-settings: 'liga'; -webkit-font-smoothing: antialiased; font-variation-settings: 'FILL' 0, 'wght' 400, 'opsz' 24; vertical-align: middle; }
.kfas-home .searchbox::placeholder, .kfas-home .nl-input::placeholder { color: rgba(20,24,31,0.4); }

/* GNB */
.kfas-home .gnb { display:flex; align-items:stretch; height:88px; }
.kfas-home .gnb-item { position:relative; display:flex; align-items:center; }
.kfas-home .gnb-link { display:flex; align-items:center; height:100%; padding:0 22px; font-size:16px; font-weight:700; letter-spacing:0.02em; color:#14181f; cursor:pointer; white-space:nowrap; transition:color .15s; }
.kfas-home .gnb-item:hover .gnb-link { color:#a8842e; }
.kfas-home .gnb-sub { position:absolute; top:100%; left:50%; transform:translateX(-50%) translateY(6px); min-width:186px; background:#fff; border:1px solid #e7ebf2; border-radius:14px; box-shadow:0 20px 44px rgba(14,28,58,0.14); padding:14px 10px; opacity:0; visibility:hidden; transition:opacity .18s ease, transform .18s ease; z-index:120; }
.kfas-home .gnb-sub::before { content:""; position:absolute; top:-30px; left:0; right:0; height:30px; }
.kfas-home .gnb-item:hover .gnb-sub { opacity:1; visibility:visible; transform:translateX(-50%) translateY(0); }
.kfas-home .gnb-sub a { display:block; padding:10px 16px; font-size:14.5px; font-weight:600; color:#4a5160; border-radius:9px; white-space:nowrap; text-align:center; cursor:pointer; transition:background .14s, color .14s; }
.kfas-home .gnb-sub a:hover { background:#eef3fe; color:#a8842e; }

/* Business accordion */
.kfas-home .biz { display:flex; gap:14px; }
.kfas-home .biz-card { position:relative; flex:1 1 0; min-width:0; height:520px; border-radius:22px; overflow:hidden; cursor:pointer; transition:flex-grow .6s cubic-bezier(.4,0,.2,1); }
.kfas-home .biz-card:hover { flex-grow:3.4; }
.kfas-home .biz-card img { filter:grayscale(0.9); transition:filter .6s ease; }
.kfas-home .biz-card:hover img { filter:grayscale(0); }
.kfas-home .biz-tint { position:absolute; inset:0; opacity:0.28; transition:opacity .6s ease; }
.kfas-home .biz-card:hover .biz-tint { opacity:0; }
.kfas-home .biz-scrim { position:absolute; inset:0; background:linear-gradient(to top, rgba(14,28,58,0.86) 0%, rgba(20,60,120,0.36) 42%, rgba(20,60,120,0) 68%); }
.kfas-home .biz-body { position:absolute; left:0; right:0; bottom:0; padding:32px; color:#fff; }
.kfas-home .biz-cat { font-size:13px; font-weight:700; letter-spacing:0.14em; color:rgba(255,255,255,0.82); text-transform:uppercase; margin-bottom:12px; }
.kfas-home .biz-title { font-size:25px; font-weight:900; white-space:nowrap; line-height:1.2; }
.kfas-home .biz-extra { max-height:0; opacity:0; overflow:hidden; transition:max-height .55s ease, opacity .45s ease, margin .55s ease; margin-top:0; }
.kfas-home .biz-card:hover .biz-extra { max-height:220px; opacity:1; margin-top:16px; }

/* Hide WP admin bar offset noise / keep design clean */
.kfas-home image-slot { display:block; width:100%; height:100%; }

@media (max-width:1024px){ .kfas-home .sc-thumb { display:none !important; } }

/* Responsive fallbacks so nothing overflows on narrow screens (design is desktop-first) */
@media (max-width:1100px){
  .kfas-home .gnb { display:none; }
}
@media (max-width:820px){
  .kfas-home .kfas-hero { height:520px !important; }
  .kfas-home .kfas-records-grid { grid-template-columns:repeat(2,1fr) !important; row-gap:40px; }
  .kfas-home .biz { flex-direction:column; }
  .kfas-home .biz-card { height:300px; }
  .kfas-home .biz-card:hover { flex-grow:1; }
  .kfas-home .biz-extra { max-height:220px; opacity:1; margin-top:16px; }
  .kfas-home .kfas-sc-grid { grid-template-columns:1fr !important; }
}
