body.public-site.home-page .home-front { margin: 0; }
body.public-site.home-page .home-wrap { width: min(calc(100% - 64px), 1280px); margin-inline: auto; }
body.public-site.home-page .home-stage { background: var(--midnight); color: var(--paper); }
body.public-site.home-page .front-masthead {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 28px;
  padding: 25px 0 24px;
  border: 0;
  border-bottom: 1px solid rgba(216, 213, 204, .3);
}
body.public-site.home-page .front-eyebrow {
  margin: 0 0 9px;
  color: var(--brass);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .08em;
  text-transform: none;
}
body.public-site.home-page .front-title {
  max-width: 780px;
  color: var(--paper);
  font-family: var(--font-body);
  font-size: clamp(40px, 3.3vw, 48px);
  font-weight: 650;
  letter-spacing: -.055em;
  line-height: 1.06;
}
body.public-site.home-page .front-title em { color: var(--paper); font-weight: inherit; font-style: normal; }
body.public-site.home-page .home-signal { display: flex; align-items: center; gap: 7px; padding-bottom: 9px; }
body.public-site.home-page .home-signal-rule { width: clamp(44px, 7vw, 94px); height: 1px; background: var(--brass); }
body.public-site.home-page .home-signal-bars { display: flex; align-items: center; gap: 3px; height: 22px; }
body.public-site.home-page .home-signal-bars i { display: block; width: 2px; background: var(--ember); }
body.public-site.home-page .home-signal-bars i:nth-child(1),
body.public-site.home-page .home-signal-bars i:nth-child(5) { height: 6px; }
body.public-site.home-page .home-signal-bars i:nth-child(2),
body.public-site.home-page .home-signal-bars i:nth-child(4) { height: 13px; }
body.public-site.home-page .home-signal-bars i:nth-child(3) { height: 22px; }
body.public-site.home-page .news-layout {
  display: grid;
  grid-template-columns: minmax(0, .88fr) minmax(0, 1.12fr);
  align-items: center;
  gap: 48px;
  margin: 0;
  padding: 28px 0 45px;
  border: 0;
}
body.public-site.home-page .news-layout--text { grid-template-columns: 1fr; }
body.public-site.home-page .front-lead-copy,
body.public-site.home-page .news-layout--text .front-lead-copy {
  display: block;
  max-width: 780px;
  padding: 0;
}
body.public-site.home-page .front-story-meta {
  gap: 10px;
  margin: 0 0 15px;
  color: var(--fog);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .07em;
}
body.public-site.home-page .front-story-meta .mark { width: 20px; height: 3px; background: var(--ember); }
body.public-site.home-page .front-story-meta time { color: var(--brass); }
body.public-site.home-page .front-lead-title {
  max-width: 17ch;
  color: var(--paper);
  font-size: clamp(45px, 4.1vw, 59px);
  font-weight: 500;
  letter-spacing: -.045em;
  line-height: 1.02;
}
body.public-site.home-page .front-lead-title a { color: inherit; }
body.public-site.home-page .front-lead-title a:hover { color: #e6b2a8; }
body.public-site.home-page .front-lead-side { display: block; max-width: 54ch; margin-top: 18px; }
body.public-site.home-page .front-lead-summary { color: #c2ccca; font-size: 15px; line-height: 1.55; }
body.public-site.home-page .front-read {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 13px;
  min-height: 48px;
  margin-top: 16px;
  padding: 0 17px;
  border: 1px solid var(--brass);
  color: var(--paper);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0;
  text-decoration: none;
}
body.public-site.home-page .front-read:hover { background: var(--brass); color: var(--midnight); }
body.public-site.home-page .front-read span { color: var(--ember); font-size: 18px; }
body.public-site.home-page .front-lead-media { min-width: 0; padding: 0; }
body.public-site.home-page .front-lead-media > a { display: block; }
body.public-site.home-page .front-lead-media .radar-visual { width: 100%; }
body.public-site.home-page .front-lead-media .radar-visual-stage { --visual-ratio: 1.55 / 1; border-radius: 0; }
body.public-site.home-page .front-lead-media img { border: 1px solid rgba(216, 213, 204, .26); border-radius: 0; }
body.public-site.home-page .home-stage > .home-wrap > .front-intro { max-width: 62ch; margin: 0; padding: 30px 0 50px; color: var(--fog); }

body.public-site.home-page .home-main { padding-bottom: 76px; }
body.public-site.home-page .front-edition {
  display: flex;
  align-items: baseline;
  gap: 18px;
  min-height: 55px;
  margin: 0;
  padding: 11px 0;
  border: 0;
  border-bottom: 1px solid var(--rule);
  color: var(--ink-soft);
  font-size: 13px;
  letter-spacing: 0;
}
body.public-site.home-page .front-edition > span:not(.front-edition-divider) { display: inline-flex; align-items: baseline; gap: 6px; white-space: nowrap; }
body.public-site.home-page .front-edition strong { color: var(--ink); font: 500 22px/1 var(--font-display); }
body.public-site.home-page .front-edition-divider { width: 1px; height: 18px; align-self: center; background: var(--brass); }
body.public-site.home-page .front-edition time { margin-left: auto; color: var(--ink-soft); font-size: 12px; white-space: nowrap; }
body.public-site.home-page .front-latest { padding: 64px 0 0; }
body.public-site.home-page .front-section-head { align-items: end; padding-bottom: 14px; border-bottom: 1px solid var(--ink); }
body.public-site.home-page .front-section-head h2 { font-size: clamp(36px, 4.2vw, 52px); font-weight: 500; line-height: 1.05; letter-spacing: -.045em; }
body.public-site.home-page .front-section-head a { display: inline-flex; align-items: center; min-height: 44px; color: var(--ink); font-size: 14px; font-weight: 600; }
body.public-site.home-page .front-story { grid-template-columns: 80px 152px minmax(0, 1fr); gap: 22px; min-height: 0; padding: 18px 0; border-bottom: 1px solid var(--rule); }
body.public-site.home-page .front-story:has(.front-story-thumb) { grid-template-columns: 80px 152px minmax(0, 1fr); }
body.public-site.home-page .front-story:not(:has(.front-story-thumb)) { grid-template-columns: 80px minmax(0, 1fr); }
body.public-site.home-page .front-story.front-story--text-only { grid-template-columns: 80px minmax(0, 1fr); }
body.public-site.home-page .front-story-thumb[hidden] { display: none; }
body.public-site.home-page .front-story-index { align-self: center; color: #806b4c; font-size: 22px; font-weight: 400; }
body.public-site.home-page .front-story-thumb { width: 152px; height: 100px; align-self: center; aspect-ratio: auto; border-radius: 0; }
body.public-site.home-page .front-story-date { color: var(--ink-soft); font-size: 11px; }
body.public-site.home-page .front-story-title { font-size: clamp(22px, 2.25vw, 29px); font-weight: 500; line-height: 1.13; letter-spacing: -.025em; }
body.public-site.home-page .front-story-summary { max-width: 76ch; color: var(--ink-soft); font-size: 14px; line-height: 1.5; }
body.public-site.home-page .front-story:hover .front-story-title { color: var(--ember-ink); }

body.public-site.home-page .front-horoscope {
  display: block;
  margin: 32px 0 0;
  padding: 28px 0;
  border-top: 1px solid var(--ink);
  border-bottom: 1px solid var(--rule);
}
body.public-site.home-page .front-horoscope-copy { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 10px 24px; }
body.public-site.home-page .front-horoscope-kicker {
  grid-column: 1;
  margin: 0;
  color: var(--ember-ink);
  font-family: var(--font-display);
  font-size: clamp(36px, 4.2vw, 52px);
  font-weight: 500;
  line-height: 1;
  letter-spacing: -.045em;
  text-transform: none;
}
body.public-site.home-page .front-horoscope-note { grid-column: 1; max-width: 52ch; margin: 0; color: var(--ink-soft); font-size: 15px; }
body.public-site.home-page .front-horoscope .front-read {
  grid-column: 2;
  grid-row: 1 / 3;
  align-self: end;
  margin: 0;
  padding: 0;
  border: 0;
  color: var(--ink);
}
body.public-site.home-page .front-horoscope .front-read:hover { color: var(--ember-ink); background: transparent; }
body.public-site.home-page .front-horoscope-signs { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 0; margin-top: 20px; border-top: 1px solid var(--rule); }
body.public-site.home-page .front-horoscope-signs li { min-width: 0; }
body.public-site.home-page .front-horoscope-signs a {
  display: flex;
  align-items: center;
  gap: 9px;
  min-height: 50px;
  padding: 8px 10px;
  border: 0;
  border-bottom: 1px solid var(--rule);
  border-radius: 0;
  color: var(--ink);
  font-size: 15px;
}
body.public-site.home-page .front-horoscope-signs a:hover { color: var(--ember-ink); background: rgba(169, 145, 108, .07); }
body.public-site.home-page .front-horoscope-badge { width: 24px; height: 24px; flex-basis: 24px; }
body.public-site.home-page .front-horoscope-sign-name { display: inline; }

body.public-site.home-page .front-destinations { margin: 0; padding-top: 70px; }
body.public-site.home-page .front-destinations-label { margin: 0 0 12px; color: var(--ink-soft); font-size: 12px; font-weight: 600; letter-spacing: 0; text-transform: none; }
body.public-site.home-page .front-destination-grid { border-top: 0; border-bottom: 1px solid var(--rule); }
body.public-site.home-page .front-destination { padding: 18px 20px 24px 0; border-top: 1px solid var(--ink); }
body.public-site.home-page .front-destination + .front-destination { padding-left: 20px; border-left: 1px solid var(--rule); }
body.public-site.home-page .front-destination-kicker { color: var(--ember-ink); font-size: 12px; letter-spacing: 0; text-transform: none; }
body.public-site.home-page .front-destination-title { margin-top: 8px; font-size: clamp(21px, 2vw, 26px); font-weight: 500; line-height: 1.12; }
body.public-site.home-page .front-destination-note { margin-top: 9px; color: var(--ink-soft); font-size: 14px; line-height: 1.5; }

@media (max-width: 1050px) {
  body.public-site.home-page .news-layout { gap: 28px; }
  body.public-site.home-page .front-lead-title { font-size: clamp(42px, 4.8vw, 54px); }
  body.public-site.home-page .front-horoscope-signs { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 800px) {
  body.public-site.home-page .home-wrap { width: min(calc(100% - 48px), 1280px); }
  body.public-site.home-page .news-layout { grid-template-columns: 1fr; gap: 22px; }
  body.public-site.home-page .front-lead-media { grid-row: 1; }
  body.public-site.home-page .front-lead-media .radar-visual-stage { --visual-ratio: 1.8 / 1; }
  body.public-site.home-page .front-lead-title { max-width: 18ch; }
  body.public-site.home-page .front-destination-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.public-site.home-page .front-destination:nth-child(3) { padding-left: 0; border-left: 0; }
}
@media (max-width: 600px) {
  body.public-site.home-page .home-wrap { width: calc(100% - 32px); }
  body.public-site.home-page .front-masthead { padding: 20px 0; }
  body.public-site.home-page .front-title { font-size: clamp(36px, 9vw, 44px); }
  body.public-site.home-page .home-signal { display: none; }
  body.public-site.home-page .news-layout { padding: 22px 0 38px; }
  body.public-site.home-page .front-lead-title { font-size: clamp(39px, 10vw, 51px); }
  body.public-site.home-page .front-edition { flex-wrap: wrap; gap: 5px 13px; }
  body.public-site.home-page .front-edition time { flex-basis: 100%; margin-left: 0; }
  body.public-site.home-page .front-latest { padding-top: 44px; }
  body.public-site.home-page .front-section-head { align-items: end; }
  body.public-site.home-page .front-section-head h2 { font-size: 38px; }
  body.public-site.home-page .front-section-head a { font-size: 12px; text-align: right; }
  body.public-site.home-page .front-story,
  body.public-site.home-page .front-story:has(.front-story-thumb) { grid-template-columns: 27px 82px minmax(0, 1fr); gap: 10px; }
  body.public-site.home-page .front-story:not(:has(.front-story-thumb)) { grid-template-columns: 27px minmax(0, 1fr); }
  body.public-site.home-page .front-story.front-story--text-only { grid-template-columns: 27px minmax(0, 1fr); }
  body.public-site.home-page .front-story-index { font-size: 16px; }
  body.public-site.home-page .front-story-thumb { width: 82px; height: 75px; }
  body.public-site.home-page .front-story-title { font-size: 19px; }
  body.public-site.home-page .front-story-summary { display: none; }
  body.public-site.home-page .front-horoscope { margin-top: 20px; }
  body.public-site.home-page .front-horoscope-copy { display: block; }
  body.public-site.home-page .front-horoscope-kicker { font-size: 38px; }
  body.public-site.home-page .front-horoscope-note { margin-top: 7px; }
  body.public-site.home-page .front-horoscope .front-read { margin-top: 7px; }
  body.public-site.home-page .front-horoscope-signs { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  body.public-site.home-page .front-horoscope-signs a { justify-content: flex-start; min-width: 0; padding: 6px 3px; font-size: 13px; }
  body.public-site.home-page .front-horoscope-badge { width: 21px; height: 21px; flex-basis: 21px; }
  body.public-site.home-page .front-destinations { padding-top: 48px; }
  body.public-site.home-page .front-destination-grid { grid-template-columns: 1fr; }
  body.public-site.home-page .front-destination + .front-destination { padding-left: 0; border-left: 0; }
  body.public-site.home-page .home-main { padding-bottom: 56px; }
}
