/**
 * AIEE polish — Impeccable + Taste Skill
 * Editorial research institute · anti-slop · typographic rhythm · 8px spacing
 */
:root {
  --aiee-text: #0B1219;
  --aiee-text-muted: #5C6773;
  --aiee-surface: #F6F8FA;
  --aiee-surface-elevated: #FFFFFF;
  --aiee-space-1: 0.25rem;
  --aiee-space-2: 0.5rem;
  --aiee-space-3: 0.75rem;
  --aiee-space-4: 1rem;
  --aiee-space-6: 1.5rem;
  --aiee-space-8: 2rem;
  --aiee-space-12: 3rem;
  --aiee-space-16: 4rem;
  --aiee-measure: 65ch;
  --aiee-ease-out: cubic-bezier(0.23, 1, 0.32, 1);

  --kc-text: var(--aiee-text);
  --kc-muted: var(--aiee-text-muted);
  --kc-bg: var(--aiee-surface);
}

/* Taste: no AI-purple gradients on light UI; restrained atmosphere */
body.kngcl-site {
  color: var(--aiee-text);
  font-feature-settings: "kern" 1, "liga" 1;
  text-rendering: optimizeLegibility;
  background:
    radial-gradient(900px 420px at 92% -2%, rgba(34, 211, 238, 0.05), transparent 52%),
    var(--aiee-surface) !important;
}

/* Typeset: fluid hierarchy, editorial not SaaS */
.kngcl-hero-title {
  font-size: clamp(2rem, 4.2vw, 3.15rem) !important;
  line-height: 1.08 !important;
  max-width: 14ch;
  text-wrap: balance;
}

.kngcl-section-title {
  font-size: clamp(1.5rem, 2.5vw, 2rem) !important;
  line-height: 1.15 !important;
  letter-spacing: -0.025em !important;
}

.kngcl-eyebrow {
  font-size: 0.68rem !important;
  letter-spacing: 0.14em !important;
  font-weight: 600 !important;
}

.kngcl-page-intro,
.kngcl-band p,
.kngcl-pillar-body p,
.kngcl-news-item p {
  max-width: var(--aiee-measure);
  line-height: 1.65;
}

/* Spacing: more breathing room between sections */
.kngcl-news,
.kngcl-pillars,
.kngcl-events-preview,
.kngcl-learning-split {
  padding-top: var(--aiee-space-12) !important;
  padding-bottom: var(--aiee-space-12) !important;
}

.kngcl-band {
  padding: var(--aiee-space-16) 0 !important;
}

/* Hero: editorial asymmetry (Taste — layout variance) */
@media (min-width: 992px) {
  .kngcl-hero .row.align-items-center {
    align-items: flex-end !important;
  }

  .kngcl-hero .col-lg-6:first-child {
    padding-bottom: var(--aiee-space-8);
    padding-right: var(--aiee-space-8);
  }

  .kngcl-hero .col-lg-6:last-child .kngcl-feature-card {
    margin-top: var(--aiee-space-4);
  }
}

/* Cards: crisp surfaces, not glassmorphism slop */
.kngcl-news-item,
.kngcl-pillar-card {
  background: var(--aiee-surface-elevated) !important;
  border: 1px solid rgba(11, 18, 25, 0.08) !important;
  box-shadow: 0 1px 2px rgba(7, 13, 20, 0.04) !important;
}

.kngcl-pillar-img {
  border-bottom: 1px solid rgba(11, 18, 25, 0.06);
}

/* Stats: tabular figures (Impeccable /typeset) */
.kngcl-stat__value {
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.03em;
}

/* Links: readable underline, not decoration slop */
.kngcl-link {
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
}

body.kngcl-site .main-menu > li > a {
  text-transform: none !important;
  letter-spacing: 0.01em !important;
  font-weight: 500 !important;
}

/* CTA: solid ember, not metallic gold gradient cliché */
.kngcl-btn--primary {
  background: var(--kc-cta) !important;
  box-shadow: 0 1px 2px rgba(7, 13, 20, 0.12), 0 6px 20px rgba(249, 115, 22, 0.28) !important;
}

.kngcl-btn--primary:hover {
  background: var(--kc-cta-hover) !important;
}

/* Ghost on dark hero */
.kngcl-btn--ghost {
  border-radius: var(--kc-radius-sm) !important;
  backdrop-filter: blur(8px);
}

/* Newsletter: clean form, no pill overload */
.kngcl-newsletter-band .form-control {
  border-radius: var(--kc-radius-sm) !important;
  border: 1px solid var(--kc-line) !important;
}

.kngcl-newsletter-band .form-control:focus {
  border-color: var(--kc-teal) !important;
  box-shadow: 0 0 0 3px rgba(13, 148, 136, 0.15) !important;
  outline: none;
}

/* Anti-slop: kill gradient text / side stripe patterns if any creep in */
[class*="gradient-text"],
.text-gradient {
  background: none !important;
  -webkit-text-fill-color: inherit !important;
  color: inherit !important;
}

/* Dark sections: off-black not pure black */
.kngcl-hero,
.main-footer,
.kngcl-stats-band,
.kngcl-contact-strip {
  color: #E8EEF2;
}

.kngcl-hero-title {
  color: #F8FAFC !important;
}

.kngcl-stats-band .kngcl-link {
  color: var(--kc-cyan) !important;
  text-decoration-color: rgba(34, 211, 238, 0.5);
}

/* Feature card typography on dark */
.kngcl-feature-card h2 {
  font-size: 1.28rem !important;
  line-height: 1.25 !important;
  text-wrap: balance;
}

.kngcl-kicker {
  border-radius: 4px !important;
  font-family: var(--kc-font-body) !important;
}

/* Core ideology — homepage foundations (CORE.md) */
.aiee-foundations {
  padding: var(--aiee-space-16) 0 !important;
  background:
    linear-gradient(180deg, rgba(13, 148, 136, 0.06) 0%, transparent 42%),
    var(--aiee-surface-elevated);
  border-top: 1px solid rgba(11, 18, 25, 0.06);
  border-bottom: 1px solid rgba(11, 18, 25, 0.06);
}

.aiee-foundations-lead {
  max-width: var(--aiee-measure);
  font-size: 1.125rem;
  line-height: 1.6;
  color: var(--aiee-text);
  margin-bottom: var(--aiee-space-8);
}

.aiee-foundations-mission {
  margin: 0 0 var(--aiee-space-8);
  padding: var(--aiee-space-6) var(--aiee-space-8);
  border-left: 4px solid var(--kc-teal);
  background: rgba(13, 148, 136, 0.06);
  font-family: var(--kc-font-head);
  font-size: clamp(1.15rem, 2vw, 1.45rem);
  font-weight: 600;
  line-height: 1.45;
  color: var(--aiee-text);
  font-style: italic;
}

.aiee-foundation-card {
  height: 100%;
  padding: var(--aiee-space-6);
  background: var(--aiee-surface);
  border: 1px solid rgba(11, 18, 25, 0.08);
  border-radius: var(--kc-radius-md);
}

.aiee-foundation-card h3 {
  font-size: 1.05rem;
  margin: 0 0 var(--aiee-space-3);
  color: var(--kc-navy);
}

.aiee-foundation-card p {
  margin: 0;
  font-size: 0.9375rem;
  line-height: 1.6;
  color: var(--aiee-text-muted);
  max-width: none;
}

.aiee-foundation-card__mark {
  display: block;
  width: 2rem;
  height: 3px;
  margin-bottom: var(--aiee-space-4);
  background: linear-gradient(90deg, var(--kc-teal), var(--kc-cyan));
  border-radius: 2px;
}
