/* 한기컴 소개 v4: shared navigation/footer and two new informational pages. */
.nav-group:last-child .mega-menu { left:auto; right:0; }
.site-footer { padding-top:60px; }
.footer-main { display:grid; grid-template-columns:minmax(230px,1fr) minmax(0,2.2fr); gap:clamp(36px,5vw,90px); align-items:start; padding-bottom:44px; }
.footer-brand-block { min-width:0; }
.footer-message { margin-top:24px; color:#4b5a50; font-family:var(--serif); font-size:20px; line-height:1.8; }
.footer-operator { margin-top:28px; padding-top:21px; border-top:1px solid var(--line); display:grid; gap:6px; max-width:260px; }
.footer-operator>span { color:var(--muted); font-size:11px; letter-spacing:.06em; }
.footer-operator>a { display:inline-flex; align-items:center; gap:16px; width:fit-content; color:var(--teal); font-size:15px; font-weight:500; }
.footer-operator .icon { width:18px; height:18px; }
.footer-navigation { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; }
.footer-column { min-width:0; }
.footer-column h2 { font-family:var(--sans); font-size:14px; font-weight:600; letter-spacing:-.025em; color:var(--deep); line-height:1.5; margin:0 0 21px; }
.footer-column ul { list-style:none; padding:0; margin:0; display:grid; gap:11px; }
.footer-column li { line-height:1.65; }
.footer-column li a { display:inline-block; color:#586258; font-size:13px; word-break:keep-all; overflow-wrap:anywhere; }
.footer-navigation a:hover,.footer-operator a:hover { color:var(--terracotta); }
.group-about :is(.hero-copy,.split-copy,.section-heading,.card-copy) :is(h1,h2,h3) { overflow-wrap:anywhere; }
.kc-route-supporters #supporter-examples .card-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:28px; }
.kc-route-supporters #supporter-examples .content-card { grid-column:span 2; min-width:0; padding:30px; background:var(--paper); border:1px solid #dcded1; text-align:left; }
.kc-route-supporters #supporter-examples .content-card:nth-child(n+4) { grid-column:span 3; }
.kc-route-supporters #supporter-examples .card-icon { margin-left:0; background:#e9eee0; }
.kc-route-supporters #supporter-examples .card-tag { font-size:11px; margin-top:16px; }
.kc-route-supporters #supporter-examples .card-copy h3 { font-size:24px; margin-top:10px; line-height:1.5; }
.kc-route-supporters #supporter-examples .card-copy p { font-size:15px; line-height:1.9; }
.kc-route-supporters #supporter-examples .card-meta { padding-top:18px; margin-top:18px; border-top:1px solid var(--line); }

@media (min-width:1051px) and (max-width:1140px) {
  .desktop-nav { display:none; }
  .menu-button { display:inline-flex; }
}
@media (max-width:1050px) {
  .footer-main { grid-template-columns:minmax(190px,.8fr) minmax(0,2fr); gap:34px; }
  .footer-navigation { gap:18px; }
  .footer-message { font-size:18px; }
  .footer-column h2 { font-size:13px; }
  .footer-column li a { font-size:12px; }
  .kc-route-supporters #supporter-examples .card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
  .kc-route-supporters #supporter-examples .content-card,.kc-route-supporters #supporter-examples .content-card:nth-child(n+4) { grid-column:auto; }
  .kc-route-supporters #supporter-examples .content-card:last-child { grid-column:1/-1; }
}
@media (max-width:760px) {
  .site-footer { padding-top:38px; }
  .footer-main { grid-template-columns:1fr; gap:36px; padding-bottom:32px; }
  .footer-message { margin-top:20px; }
  .footer-operator { max-width:none; margin-top:21px; padding-top:18px; grid-template-columns:70px minmax(0,1fr); align-items:center; }
  .footer-navigation { grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px 22px; }
  .footer-column-2 { grid-column:1/-1; border-top:1px solid var(--line); padding-top:25px; }
  .footer-column-2 ul { grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px 22px; }
  .footer-column h2 { font-size:14px; margin-bottom:17px; }
  .footer-column li a { font-size:13px; }
  .site-footer .prototype-note { padding-right:0; padding-bottom:42px; }
  .kc-route-supporters #supporter-examples .card-grid { grid-template-columns:1fr; gap:20px; }
  .kc-route-supporters #supporter-examples .content-card { padding:26px; }
  .kc-route-supporters #supporter-examples .card-copy h3 { font-size:23px; }
}
