/* Krannon Editorial Home — v1.3.1 */
.krannon-section-hero {
  position: relative;
  display: flex;
  align-items: center;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  overflow: hidden;
}
.krannon-section-hero.has-overlay::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
}
.krannon-section-hero > .krannon-container,
.krannon-section-hero .krannon-hero-scroll { position: relative; z-index: 1; }
.krannon-section-hero-inner { max-width: 820px; padding-block: clamp(4rem, 8vw, 8rem); }
.krannon-hero-height-compact { min-height: 420px; }
.krannon-hero-height-normal { min-height: 560px; }
.krannon-hero-height-large { min-height: 720px; }
.krannon-hero-height-full { min-height: 100vh; min-height: calc(100vh - var(--krannon-header-height, 0px)); }
.krannon-hero-height-full .krannon-section-hero-inner { padding-block: 8rem; }
.krannon-hero-scroll {
  position: absolute;
  left: 50%;
  bottom: 28px;
  width: 28px;
  height: 44px;
  margin-left: -14px;
  border: 1px solid rgba(255,255,255,.68);
  border-radius: 999px;
}
.krannon-hero-scroll span {
  position: absolute;
  left: 50%;
  top: 9px;
  width: 4px;
  height: 4px;
  margin-left: -2px;
  border-radius: 50%;
  background: currentColor;
  color: #fff;
  animation: krannonScrollCue 1.6s infinite;
}
@keyframes krannonScrollCue { 0% { transform: translateY(0); opacity: 1; } 80% { transform: translateY(18px); opacity: 0; } 100% { opacity: 0; } }

.krannon-section-editorial_cards { background: var(--krannon-bg); }
.krannon-editorial-cards-grid { display: grid; gap: clamp(1.25rem, 2vw, 2rem); }
.krannon-editorial-cards-layout-3col { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.krannon-editorial-cards-layout-2col { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.krannon-editorial-cards-layout-featured { grid-template-columns: 1.25fr .875fr .875fr; align-items: stretch; }
.krannon-editorial-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 100%;
  background: var(--krannon-surface);
  border: 1px solid var(--krannon-border);
  border-radius: var(--krannon-radius);
  overflow: hidden;
  box-shadow: var(--krannon-shadow-soft);
}
.krannon-editorial-card-link { display: flex; flex-direction: column; min-height: 100%; color: inherit; text-decoration: none; }
.krannon-editorial-card-image { aspect-ratio: 4 / 3; background: var(--krannon-light-accent); overflow: hidden; }
.krannon-editorial-card-image img { width: 100%; height: 100%; object-fit: cover; display: block; }
.krannon-editorial-card-body { padding: clamp(1.25rem, 2vw, 1.75rem); }
.krannon-editorial-card-label { display: block; margin-bottom: .75rem; color: var(--krannon-secondary); font-size: .76rem; font-weight: 700; letter-spacing: .11em; text-transform: uppercase; }
.krannon-editorial-card-title { margin: 0 0 .75rem; color: var(--krannon-primary-dark); font-size: clamp(1.25rem, 2vw, 1.75rem); }
.krannon-editorial-card-text { margin: 0; color: var(--krannon-muted); line-height: 1.68; }
.krannon-editorial-card-cta { display: inline-block; margin-top: 1.15rem; color: var(--krannon-primary); font-weight: 700; }
.krannon-editorial-cards-layout-featured .krannon-editorial-card:first-child { grid-row: span 2; }
.krannon-editorial-cards-layout-featured .krannon-editorial-card:first-child .krannon-editorial-card-image { aspect-ratio: 16 / 10; }
@media (max-width: 900px) {
  .krannon-editorial-cards-layout-3col,
  .krannon-editorial-cards-layout-2col,
  .krannon-editorial-cards-layout-featured { grid-template-columns: 1fr; }
  .krannon-hero-height-full { min-height: 86vh; }
}
.krannon-page-hero--center .krannon-section-hero-inner { margin-inline: auto; text-align: center; }
.krannon-page-hero--left .krannon-section-hero-inner { margin-right: auto; text-align: left; }
.krannon-after-hero-anchor { display: block; position: relative; top: -1px; width: 1px; height: 1px; overflow: hidden; }

/* Krannon Editorial Homepage — v1.3.2 */
.krannon-editorial-home-hero {
  isolation: isolate;
  background-color: var(--krannon-dark-surface, #1E1A16);
}
.krannon-editorial-home-hero:not(.has-image) {
  background:
    radial-gradient(circle at 20% 20%, color-mix(in srgb, var(--krannon-primary, #8A4A2F) 38%, transparent), transparent 34%),
    linear-gradient(135deg, var(--krannon-primary-dark, #4A2418), var(--krannon-dark-surface, #1E1A16));
}
.krannon-editorial-home-hero.has-overlay::before {
  background:
    linear-gradient(90deg, rgba(20,16,12,.78) 0%, rgba(20,16,12,.54) 45%, rgba(20,16,12,.18) 100%),
    var(--krannon-hero-overlay, rgba(20,16,12,.48));
}
.krannon-editorial-home-hero-inner {
  max-width: 980px;
  color: var(--krannon-surface, #FFFDF8);
}
.krannon-editorial-home-hero .krannon-eyebrow {
  color: var(--krannon-light-accent, #E8D8BE);
  margin-bottom: clamp(1rem, 2vw, 1.35rem);
}
.krannon-editorial-home-title {
  max-width: 10ch;
  margin: 0;
  color: var(--krannon-surface, #FFFDF8);
  font-size: clamp(4rem, 12vw, 10rem);
  line-height: .88;
  letter-spacing: -.07em;
}
.krannon-editorial-home-lead {
  max-width: 760px;
  margin-top: clamp(1.4rem, 3vw, 2.4rem);
  color: color-mix(in srgb, var(--krannon-surface, #FFFDF8) 86%, transparent);
  font-size: clamp(1.15rem, 2.2vw, 1.75rem);
  line-height: 1.45;
}
.krannon-editorial-home-actions { margin-top: clamp(1.8rem, 3vw, 2.6rem); }
.krannon-editorial-home-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: .95rem 1.35rem;
  border: 1px solid color-mix(in srgb, var(--krannon-light-accent, #E8D8BE) 70%, transparent);
  border-radius: 999px;
  background: var(--krannon-surface, #FFFDF8);
  color: var(--krannon-primary-dark, #4A2418);
  font-weight: 800;
  text-decoration: none;
}
.krannon-editorial-home-button:hover,
.krannon-editorial-home-button:focus {
  background: var(--krannon-light-accent, #E8D8BE);
  color: var(--krannon-primary-dark, #4A2418);
}
.krannon-editorial-home-grid-section {
  background: var(--krannon-bg, #F4EFE6);
}
.krannon-editorial-latest-section {
  border-top: 1px solid var(--krannon-border, #D8CCBA);
}
.krannon-editorial-card {
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.krannon-editorial-card:hover,
.krannon-editorial-card:focus-within {
  transform: translateY(-4px);
  border-color: color-mix(in srgb, var(--krannon-primary, #8A4A2F) 45%, var(--krannon-border, #D8CCBA));
  box-shadow: 0 18px 42px rgba(33, 30, 26, .10);
}
.krannon-editorial-card-cta::after {
  content: " →";
}
.krannon-editorial-post-card .krannon-editorial-card-title {
  font-size: clamp(1.15rem, 1.7vw, 1.45rem);
}
@media (max-width: 700px) {
  .krannon-editorial-home-title {
    font-size: clamp(3.35rem, 18vw, 5.5rem);
    letter-spacing: -.055em;
  }
  .krannon-editorial-home-hero.has-overlay::before {
    background: linear-gradient(180deg, rgba(20,16,12,.76), rgba(20,16,12,.46));
  }
}
