/* ============================================================
   KING KAPLO — Site-wide layout & responsive rules
   ============================================================ */
html, body { margin: 0; background: var(--ink-900); -webkit-font-smoothing: antialiased; }
* { box-sizing: border-box; }
body { font-family: var(--font-body); color: var(--fg-2); }
a { color: inherit; }
img { max-width: 100%; }
::selection { background: var(--gold-400); color: #0D0D0D; }

@keyframes kkFade { from { opacity: 0 } to { opacity: 1 } }

/* default: hide mobile toggle */
.kk-mobile-toggle { display: none; }

/* ---------- Tablet ---------- */
@media (max-width: 980px) {
  .kk-2col        { grid-template-columns: 1fr !important; gap: 40px !important; }
  .kk-values-grid { grid-template-columns: repeat(3, 1fr) !important; }
  .kk-why-grid    { grid-template-columns: 1fr 1fr !important; }
  .kk-work-grid   { grid-template-columns: 1fr 1fr !important; }
  .kk-feat-span   { grid-column: span 2 !important; }
}

/* ---------- Mobile ---------- */
@media (max-width: 860px) {
  .kk-desktop-nav  { display: none !important; }
  .kk-mobile-toggle { display: inline-flex !important; }
  .kk-3col         { grid-template-columns: 1fr !important; }
  .kk-3col > *     { border-right: none !important; }
  .kk-3col-cards   { grid-template-columns: 1fr 1fr !important; }
  .kk-footer-grid  { grid-template-columns: 1fr 1fr !important; gap: 36px !important; }
  .kk-ind-grid     { grid-template-columns: 1fr !important; }
  .kk-form-row     { grid-template-columns: 1fr !important; }
}

@media (max-width: 620px) {
  .kk-why-grid     { grid-template-columns: 1fr !important; }
  .kk-work-grid    { grid-template-columns: 1fr !important; }
  .kk-3col-cards   { grid-template-columns: 1fr !important; }
  .kk-values-grid  { grid-template-columns: 1fr 1fr !important; }
  .kk-feat-span, .kk-feat { grid-column: span 1 !important; }
  .kk-footer-grid  { grid-template-columns: 1fr !important; }
  .kk-container-pad { padding-left: 24px !important; padding-right: 24px !important; }
}
