.guide-index-hero,
.guide-hero { padding-top: clamp(58px, 9vw, 112px); padding-bottom: clamp(64px, 10vw, 124px); }
.guide-index-hero h1,
.guide-hero h1 { max-width: 900px; margin: 12px 0 22px; font-size: clamp(44px, 7vw, 88px); line-height: .94; }
.guide-index-hero .lead,
.guide-hero .lead { max-width: 760px; color: #d0cbc2; line-height: 1.65; }
.guide-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid #aaa196; border-left: 1px solid #aaa196; }
.guide-card { display: flex; flex-direction: column; min-height: 310px; padding: clamp(24px, 4vw, 44px); border-right: 1px solid #aaa196; border-bottom: 1px solid #aaa196; }
.guide-card-photo { display: block; flex: none; margin: 0 0 26px; overflow: hidden; background: #29241f; aspect-ratio: 16 / 10; }
.guide-card-photo img { display: block; width: 100%; height: 100%; object-fit: cover; }
.guide-hero-with-photo { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); grid-template-areas: "heading photo" "intro photo"; gap: 0 clamp(36px, 6vw, 88px); align-items: start; }
.guide-hero-heading { grid-area: heading; }
.guide-hero-intro { grid-area: intro; }
.guide-hero-with-photo h1 { font-size: clamp(44px, 5.4vw, 72px); }
.guide-cover { grid-area: photo; align-self: center; margin: 0; aspect-ratio: 3 / 2; overflow: hidden; background: #29241f; }
.guide-cover img { display: block; width: 100%; height: 100%; object-fit: cover; }
.guide-card h2 { max-width: 560px; margin: 14px 0 18px; font-size: clamp(28px, 3.4vw, 42px); }
.guide-card h2 a { color: inherit; text-decoration: none; }
.guide-card > p:not(.kicker) { max-width: 58ch; color: #625c55; line-height: 1.65; }
.guide-card-link,
.guide-service-link { display: inline-flex; min-height: 44px; align-items: center; margin-top: 18px; color: inherit; font-weight: 700; text-underline-offset: 5px; }
.guide-service-link { padding: 10px 16px; border: 1px solid var(--oxide); color: var(--warm); background: var(--oxide); text-decoration: none; }
.guide-card-link { align-self: flex-start; margin-top: auto; padding-top: 18px; }
.guide-card h2 a .keep-together,
.guide-hero h1 .keep-together,
.guide-related-card strong .keep-together { white-space: nowrap; color: inherit; }
.guide-contents { display: grid; grid-template-columns: minmax(150px, 1fr) minmax(0, 3fr); gap: 32px; padding-top: 32px; padding-bottom: 44px; border-top: 1px solid rgba(246,242,234,.25); }
.guide-contents ol { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 30px; margin: 0; padding-left: 22px; }
.guide-contents a { color: var(--warm); text-underline-offset: 4px; }
.guide-section { padding: clamp(64px, 9vw, 108px) 0; color: var(--black); background: var(--warm); scroll-margin-top: 24px; }
.guide-section-dark { color: var(--warm); background: var(--black); }
.guide-section-grid { display: grid; grid-template-columns: minmax(90px, 1fr) minmax(0, 5fr); gap: clamp(24px, 6vw, 90px); }
.guide-section-number { margin: 0; color: var(--oxide); font-family: "Roboto Condensed C", "Arial Narrow", sans-serif; font-size: 22px; font-weight: 700; }
.guide-section-copy { max-width: 780px; }
.guide-section-copy h2 { margin-bottom: 26px; font-size: clamp(32px, 4vw, 52px); }
.guide-section-copy p,
.guide-section-copy li { line-height: 1.72; }
.guide-section-copy ul { margin: 28px 0 0; padding: 0; list-style: none; border-top: 1px solid #aaa196; }
.guide-section-copy li { padding: 14px 0; border-bottom: 1px solid #aaa196; }
.guide-section-dark .guide-section-copy ul { border-color: rgba(246,242,234,.25); }
.guide-section-dark .guide-section-copy li { border-color: rgba(246,242,234,.25); }
.guide-inline-sources { display: flex; flex-wrap: wrap; gap: 8px 18px; margin-top: 30px; padding-top: 18px; border-top: 1px solid currentColor; font-size: 12px; }
.guide-inline-sources strong { width: 100%; text-transform: uppercase; }
.guide-inline-sources a { color: inherit; overflow-wrap: anywhere; text-underline-offset: 4px; }
.guide-faq .faq-list { margin-top: 0; }
.guide-sources { display: grid; grid-template-columns: minmax(240px, 2fr) minmax(0, 3fr); gap: clamp(38px, 8vw, 110px); padding-top: 82px; padding-bottom: 82px; }
.guide-sources h2,
.guide-related h2 { font-size: clamp(32px, 4vw, 48px); }
.guide-sources p { max-width: 48ch; color: #c8c3bb; line-height: 1.6; }
.guide-sources ol { margin: 0; padding-left: 22px; }
.guide-sources li { padding: 12px 0; line-height: 1.55; }
.guide-sources a { color: var(--warm); overflow-wrap: anywhere; text-underline-offset: 4px; }
.guide-related-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 38px; border-top: 1px solid #aaa196; border-left: 1px solid #aaa196; }
.guide-related-card { min-height: 150px; padding: 25px; border-right: 1px solid #aaa196; border-bottom: 1px solid #aaa196; color: var(--black); text-decoration: none; }
.guide-related-card > span { display: block; margin-bottom: 12px; color: #8b2b1d; font-size: 12px; font-weight: 700; text-transform: uppercase; }
.guide-related-card strong { font-family: "Roboto Condensed C", "Arial Narrow", sans-serif; font-size: 25px; line-height: 1.12; }
.guide-related-card:hover,
.guide-related-card:focus-visible { color: white; background: var(--oxide); }
.guide-related-card:hover > span,
.guide-related-card:focus-visible > span { color: var(--warm); }
@media (max-width: 760px) {
  .guide-grid,
  .guide-contents,
  .guide-section-grid,
  .guide-sources,
  .guide-related-grid { grid-template-columns: 1fr; }
  .guide-hero-with-photo { grid-template-columns: minmax(0, 1fr); grid-template-areas: "heading" "photo" "intro"; gap: 0; }
  .guide-cover { margin: 8px 0 26px; aspect-ratio: 16 / 10; }
  .guide-card-photo { margin-bottom: 22px; }
  .guide-card { min-height: 0; }
  .guide-contents ol { grid-template-columns: 1fr; }
  .guide-index-hero h1,
  .guide-hero h1 { font-size: clamp(40px, 13vw, 60px); }
}
