/* Homepage opening. Loaded last to keep this treatment scoped to the homepage. */
.home-redesign .site-header .nav-wrap {
  width: min(1200px, calc(100% - 64px));
  min-height: 84px;
  padding-block: 12px;
}
.home-redesign .site-header .logo__image { max-width: 200px; height: auto; }
.home-redesign .site-header .site-nav a { letter-spacing: 0; }
.home-redesign .site-header .nav-primary { min-height: 44px; border-radius: 6px; }

.home-page > .home-visual-hero {
  width: min(1320px, calc(100% - 48px));
  min-height: 520px;
  margin: 24px auto 0;
  border-radius: 14px 14px 0 0;
  box-shadow: none;
}
.home-page .home-visual-hero > img { transform: none; object-position: 38% center; }
.home-page > .home-visual-hero .home-visual-hero__shade {
  background: linear-gradient(90deg, rgba(9, 25, 16, .05) 15%, rgba(13, 32, 22, .22) 38%, rgba(15, 36, 24, .94) 62%, #10251b 100%),
    linear-gradient(0deg, rgba(8, 22, 14, .25), transparent 70%);
}
.home-page .home-visual-hero__content {
  width: calc(100% - 96px);
  padding: 64px 0;
  justify-content: flex-end;
}
.home-page .home-visual-hero__copy { width: 49%; max-width: 560px; }
.home-page .home-visual-hero__lead {
  margin: 0 0 18px;
  font-size: .74rem !important;
  font-weight: 750;
  letter-spacing: .15em;
  line-height: 1.5;
}
.home-page .home-visual-hero h1 {
  max-width: none;
  margin: 0 0 22px;
  font-size: clamp(2.6rem, 4.2vw, 3.6rem);
  font-weight: 850;
  line-height: 1.06;
  letter-spacing: -.045em;
  text-wrap: balance;
}
.home-page .home-visual-hero__copy > p:not(.home-visual-hero__lead) {
  max-width: 44ch;
  margin: 0;
  color: #e0e6dc;
  font-size: 1.05rem;
  line-height: 1.65;
}
.home-page .home-visual-hero .actions { margin-top: 28px; gap: 12px; }
.home-page .home-visual-hero .btn {
  width: auto;
  min-height: 48px;
  padding: 13px 18px;
  border-radius: 5px;
  font-size: .9rem;
  letter-spacing: 0;
  line-height: 1.35;
  text-align: center;
}
.home-page .home-visual-hero .btn--ghost { background: rgba(255, 253, 248, .04); border-color: #829284; color: #fffaf0; }
.home-page .home-visual-hero .btn--ghost:hover { background: rgba(255, 253, 248, .13); }
.home-page .home-visual-hero .btn--ghost span { margin-left: 9px; color: #d9b574; }

.home-page .home-trust-strip {
  width: min(1320px, calc(100% - 48px));
  margin-inline: auto;
  border: 0;
  border-radius: 0 0 14px 14px;
  background: #e8e7dc;
}
.home-page .home-trust-strip .container {
  width: calc(100% - 64px);
  max-width: none;
  min-height: 66px;
  padding: 16px 0;
  display: flex;
  justify-content: space-between;
  gap: 16px;
}
.home-page .home-trust-strip span {
  color: #354b3a;
  font-size: .83rem;
  font-weight: 650;
  line-height: 1.5;
  letter-spacing: 0;
  text-transform: none;
  white-space: normal;
  text-align: left;
}
.home-page .home-trust-strip span::before {
  content: '✓';
  width: auto;
  height: auto;
  margin-right: 8px;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  color: #8a642e;
  vertical-align: baseline;
}

.home-page .home-guide-section { padding: 36px 0 4px; background: #f4f1e9; }
.home-page .home-guide-section > .container { width: min(1180px, calc(100% - 64px)); }
.home-page .home-guide-card {
  width: 100%;
  min-height: 0;
  padding: 28px 32px 22px;
  display: grid;
  grid-template-columns: 80px minmax(0, 1fr) minmax(320px, .95fr);
  gap: 18px 28px;
  align-items: center;
  border: 1px solid #ddd8cb;
  border-radius: 10px;
  background: #fffdf8;
  box-shadow: 0 4px 18px rgba(24, 42, 30, .04);
}
.home-page .home-guide-card__book {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 76px;
  height: 106px;
  padding: 10px 8px;
  border: 1px solid #9b8e66;
  border-left: 4px solid #9b8e66;
  border-radius: 1px 3px 3px 1px;
  transform: rotate(-5deg);
  box-shadow: 3px 5px 9px rgba(16, 37, 27, .17);
  background-position: 30% center;
  color: #fff1cd;
}
.home-page .home-guide-card__book span { font-size: .66rem; line-height: 1.35; letter-spacing: .04em; }
.home-page .home-guide-card__book small { font-size: .43rem; letter-spacing: .08em; }
.home-page .home-guide-card__copy .home-guide-card__eyebrow {
  margin: 0 0 7px;
  color: #89632b;
  font-size: .68rem;
  font-weight: 800;
  line-height: 1.5;
  letter-spacing: .11em;
  text-transform: uppercase;
}
.home-page .home-guide-card h2 { margin: 0 0 8px; color: #1a3022; font-size: 1.45rem; line-height: 1.2; letter-spacing: -.025em; }
.home-page .home-guide-card__copy > p:last-child { margin: 0; color: #596257; font-size: .9rem; line-height: 1.55; }
.home-page .home-guide-card__controls { display: grid; grid-column: auto; gap: 7px; grid-template-columns: 1fr; }
.home-page .home-guide-card__controls > label { color: #354b3a; font-size: .8rem; font-weight: 700; }
.home-page .home-guide-card__input-row { display: flex; gap: 8px; }
.home-page .home-guide-card input[type="email"] {
  width: 100%;
  min-width: 0;
  min-height: 48px;
  padding: 12px;
  border: 1px solid #b9c0b2;
  border-radius: 5px;
  background: #fff;
  color: #1a3022;
  font-size: .9rem;
}
.home-page .home-guide-card input::placeholder { color: #73796e; opacity: 1; }
.home-page .home-guide-card .btn { flex-shrink: 0; min-height: 48px; padding: 12px 15px; border-radius: 5px; font-size: .85rem; letter-spacing: 0; }
.home-page .home-guide-card__fine-print { grid-column: 2 / -1; padding-top: 16px; border-top: 1px solid #e5e1d7; }
.home-page .home-guide-card .home-guide-card__disclosure { display: flex; align-items: flex-start; gap: 9px; color: #586253; font-size: .75rem; font-weight: 400; line-height: 1.55; }
.home-page .home-guide-card__disclosure input[type="checkbox"] { flex: 0 0 16px; width: 16px; height: 16px; min-height: 16px; margin: 2px 0 0; accent-color: #2e5a44; }
.home-page .home-guide-card .home-guide-card__contact { margin: 8px 0 0 25px; color: #66705f; font-size: .73rem; line-height: 1.5; }
.home-page .home-guide-card__fine-print a { color: #355c40; text-decoration: underline; text-underline-offset: 2px; }
.home-page .home-guide-card .lead-magnet__status { color: #355c40; font-size: .9rem; line-height: 1.5; }
.home-page .home-categories { padding-top: 56px; background: #f4f1e9; }
.home-page .home-section-head { align-items: end; gap: 40px; margin-bottom: 28px; }
.home-page .home-section-head h2 { max-width: 20ch; font-size: clamp(2rem, 3.4vw, 3rem); letter-spacing: -.035em; }
.home-page .home-section-head > p { margin-bottom: 0; color: #596257; font-size: .95rem; }

@media (max-width: 1100px) {
  .home-page .home-visual-hero__content { width: calc(100% - 64px); }
  .home-page .home-visual-hero__copy { width: 52%; }
  .home-page .home-visual-hero .actions { align-items: stretch; }
  .home-page .home-visual-hero .btn { padding-inline: 14px; }
  .home-page .home-guide-card { grid-template-columns: 76px minmax(0, 1fr); gap: 18px 24px; }
  .home-page .home-guide-card__controls { grid-column: 2; }
  .home-page .home-guide-card__book { grid-row: 1 / 3; }
}
@media (max-width: 900px) {
  .home-redesign .site-header .nav-wrap { width: calc(100% - 40px); min-height: 74px; }
  .home-redesign .site-header .logo__image { max-width: 170px; }
  .home-page > .home-visual-hero { width: calc(100% - 32px); min-height: 600px; margin-top: 16px; align-items: flex-end; }
  .home-page .home-visual-hero > img { object-position: 25% center; }
  .home-page > .home-visual-hero .home-visual-hero__shade { background: linear-gradient(180deg, rgba(8, 25, 15, .08) 0%, rgba(10, 28, 18, .22) 24%, rgba(12, 31, 21, .94) 57%, #10251b 100%); }
  .home-page .home-visual-hero__content { width: calc(100% - 48px); padding: 210px 0 32px; }
  .home-page .home-visual-hero__copy { width: 100%; max-width: 540px; }
  .home-page .home-visual-hero__lead { margin-bottom: 12px; font-size: .66rem !important; }
  .home-page .home-visual-hero h1 { margin-bottom: 16px; font-size: clamp(2.25rem, 6.5vw, 3.25rem); }
  .home-page .home-visual-hero__copy > p:not(.home-visual-hero__lead) { font-size: .98rem; }
  .home-page .home-visual-hero .actions { margin-top: 22px; }
  .home-page .home-trust-strip { width: calc(100% - 32px); }
  .home-page .home-trust-strip .container { width: calc(100% - 48px); flex-direction: column; align-items: flex-start; gap: 8px; padding: 19px 0; }
  .home-page .home-trust-strip span { font-size: .8rem; }
  .home-page .home-guide-section { padding-top: 24px; }
  .home-page .home-guide-section > .container { width: calc(100% - 32px); }
  .home-page .home-guide-card { padding: 24px; gap: 22px; grid-template-columns: 1fr; }
  .home-page .home-guide-card__book { display: none; }
  .home-page .home-guide-card__controls, .home-page .home-guide-card__fine-print { grid-column: 1; }
  .home-page .home-guide-card h2 { max-width: 23ch; font-size: 1.5rem; }
  .home-page .home-guide-card__fine-print { padding-top: 18px; }
  .home-page .home-categories { padding-top: 40px; }
  .home-page .home-section-head { gap: 20px; }
  /* The older experience band otherwise forces the entire mobile page wider. */
  .home-page .home-knowledge-band .container { grid-template-columns: 1fr; padding-left: 0; }
  .home-page .home-knowledge-band .container > * { min-width: 0; grid-column: auto; }
}
@media (max-width: 460px) {
  .home-page .home-visual-hero .actions { flex-direction: column; }
  .home-page .home-visual-hero .btn { width: 100%; }
  .home-page .home-guide-card__input-row { flex-direction: column; }
  .home-page .home-guide-card .btn { width: 100%; }
}
