body:not(.dnnEditState) .chan-hero .chan-pane:empty {
  display: none;
}

body:not(.dnnEditState) .chan-hero .chan-pane,
body:not(.dnnEditState) .chan-hero .DnnModule,
body:not(.dnnEditState) .chan-hero .dnnSortable,
body:not(.dnnEditState) .chan-hero .chan-c,
body:not(.dnnEditState) .chan-hero .chan-c-body,
body:not(.dnnEditState) .chan-hero .Normal {
  position: static !important;
  background: transparent !important;
  border: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  max-width: none !important;
}

html body .chan-hero .chan-kicker,
html body .chan-hero p.chan-kicker,
html body .chan-hero .Normal .chan-kicker,
html body .chan-hero .Normal p.chan-kicker {
  color: #faf6ec !important;
  -webkit-text-fill-color: #faf6ec !important;
  text-shadow: 0 1px 10px rgba(12, 23, 38, 0.95) !important;
}

html body .chan-hero h1,
html body .chan-hero .Normal h1 {
  color: var(--chan-cream, #f3ead2) !important;
  -webkit-text-fill-color: var(--chan-cream, #f3ead2) !important;
}

html body .chan-hero .chan-lede,
html body .chan-hero p.chan-lede,
html body .chan-hero .Normal .chan-lede,
html body .chan-hero .Normal p.chan-lede {
  color: var(--chan-paper, #faf6ec) !important;
  -webkit-text-fill-color: var(--chan-paper, #faf6ec) !important;
  font-weight: 400 !important;
}

html body .chan-hero .chan-credit,
html body .chan-hero p.chan-credit,
html body .chan-hero .Normal .chan-credit,
html body .chan-hero .Normal p.chan-credit {
  color: rgba(250, 246, 236, 0.7) !important;
  -webkit-text-fill-color: rgba(250, 246, 236, 0.7) !important;
}

/* First screen on a tall window: header + hero + maxim = 100svh.
   Short windows: drop the floor so copy is never clipped. */
.chan-is-home .chan-hero,
.chan-is-home .chan-hero-copy {
  min-height: calc(100svh - 10.15rem);
}

@media (max-height: 780px) {
  .chan-is-home .chan-hero,
  .chan-is-home .chan-hero-copy {
    min-height: 0;
  }
}

.chan-is-home main#content {
  margin: 0;
  padding: 0;
}

/* After-hero pane is full-bleed. Content classes below are un-nested so
   CKEditor (which loads this file) can match without .chan-home-after. */
.chan-home-after {
  width: 100%;
}

.chan-home-after .chan-c,
.chan-home-after .DnnModule {
  margin: 0 !important;
}

.chan-maxim {
  margin: 0 !important;
  padding: 1.5rem 1.25rem !important;
  border-top: 1px solid var(--chan-line) !important;
  border-bottom: 1px solid var(--chan-line) !important;
  background: var(--chan-cream) !important;
  text-align: center !important;
  font-family: var(--chan-display) !important;
  font-size: clamp(1.25rem, 2.5vw, 1.75rem) !important;
  font-style: italic !important;
  color: var(--chan-navy) !important;
  line-height: 1.35 !important;
}

.chan-doors {
  display: grid !important;
  gap: 1px !important;
  background: var(--chan-line) !important;
  width: min(100% - 2rem, 72rem);
  max-width: 100% !important;
  margin: 0 auto !important;
}

.chan-doors > a,
.chan-doors > .chan-door {
  display: block;
  position: relative;
  background: var(--chan-paper) !important;
  padding: 2rem !important;
  text-decoration: none !important;
  color: var(--chan-ink) !important;
  border: 0 !important;
}

.chan-door-hit {
  position: absolute;
  inset: 0;
  z-index: 2;
  overflow: hidden;
  white-space: nowrap;
  text-indent: 120%;
  text-decoration: none !important;
}

.chan-doors > a:link,
.chan-doors > a:visited,
.chan-doors > a:hover,
.chan-doors > a:active,
.chan-doors > a *,
.chan-doors a h2,
.chan-doors a p,
.chan-doors .chan-door a {
  text-decoration: none !important;
}

.chan-doors h2 {
  font-family: var(--chan-display) !important;
  font-size: 1.875rem !important;
  font-weight: 600 !important;
  margin: 0.75rem 0 0 !important;
  color: var(--chan-ink) !important;
}

.chan-doors p {
  color: var(--chan-muted) !important;
  font-size: 0.95rem !important;
  line-height: 1.55 !important;
}

.chan-lockup {
  background: var(--chan-navy) !important;
  color: var(--chan-cream) !important;
  padding: 4rem 0 !important;
}

.chan-lockup-inner {
  width: min(100% - 2rem, 72rem);
  max-width: 100%;
  margin: 0 auto;
  display: grid;
  gap: 2.5rem;
  align-items: center;
}

.chan-lockup h2 {
  font-family: var(--chan-display) !important;
  font-size: clamp(1.75rem, 3vw, 2.25rem) !important;
  color: var(--chan-cream) !important;
  margin: 0.5rem 0 0 !important;
}

.chan-lockup p {
  color: var(--chan-line) !important;
  max-width: 36rem;
}

.chan-lockup img {
  display: block;
  width: 100%;
  height: auto;
  border: 1px solid rgba(138, 115, 72, 0.4);
}

.chan-lockup .chan-btn-solid {
  background: var(--chan-cream) !important;
  color: var(--chan-navy) !important;
}

.chan-week {
  width: min(100% - 2rem, 72rem);
  max-width: 100%;
  margin: 0 auto;
  padding: 4rem 0 5rem;
  display: grid;
  gap: 1.5rem;
}

.chan-week article {
  border: 1px solid var(--chan-line);
  padding: 1.5rem;
}

.chan-week h3 {
  font-family: var(--chan-display) !important;
  font-size: 1.75rem !important;
  margin: 0.75rem 0 0 !important;
}

@media (min-width: 800px) {
  .chan-doors {
    grid-template-columns: 1fr 1fr 1fr !important;
  }
  .chan-lockup-inner {
    grid-template-columns: 1fr 1fr;
  }
  .chan-week {
    grid-template-columns: 1fr 1fr;
  }
}

/* ctl=Login / Terms / Privacy / Register — not the porch */
.chan-is-ctl main#content {
  padding: 2.5rem 1.25rem 3.5rem;
  min-height: 48vh;
}

.chan-is-ctl .chan-home-after {
  width: min(100%, 56rem) !important;
  margin: 0 auto !important;
}

.chan-is-ctl:has(.dnnLogin) .chan-home-after,
.chan-is-ctl:has(.dnnSendPassword) .chan-home-after,
.chan-is-ctl:has(.dnnRegistrationForm) .chan-home-after,
.chan-is-ctl:has(.dnnRegister) .chan-home-after {
  width: min(100%, 28rem) !important;
}


