/* Extracted stylesheet; rules and ordering retained. */
/* Detail page typography and content column: keep long-form sections aligned with the wrapped sections above. */
main { width:100%; min-width:0; overflow-wrap:anywhere; }
main > section.section.content-section[aria-labelledby]:not(.home-detail-section) {
  display:flow-root;
  box-sizing:border-box;
  padding:clamp(38px,4.2vw,62px) 0 !important;
  border-top:1px solid rgba(215,183,122,.18);
}
main > section.section.content-section[aria-labelledby]:not(.home-detail-section) > h2,
main > section.section.content-section[aria-labelledby]:not(.home-detail-section) > h3,
main > section.section.content-section[aria-labelledby]:not(.home-detail-section) > h4,
main > section.section.content-section[aria-labelledby]:not(.home-detail-section) > p,
main > section.section.content-section[aria-labelledby]:not(.home-detail-section) > ul,
main > section.section.content-section[aria-labelledby]:not(.home-detail-section) > ol,
main > section.section.content-section[aria-labelledby]:not(.home-detail-section) > blockquote,
main > section.section.content-section[aria-labelledby]:not(.home-detail-section) > table,
main > section.section.content-section[aria-labelledby]:not(.home-detail-section) > figure,
main > section.section.content-section[aria-labelledby]:not(.home-detail-section) > .table-wrap,
main > section.section.content-section[aria-labelledby]:not(.home-detail-section) > .faq-list,
main > section.section.content-section[aria-labelledby]:not(.home-detail-section) > .callout {
  box-sizing:border-box;
  width:min(900px,calc(100% - 44px)) !important;
  max-width:900px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
main > section.section.content-section[aria-labelledby]:not(.home-detail-section) > h2 {
  margin-top:0 !important;
  margin-bottom:clamp(14px,1.8vw,20px) !important;
  font-size:clamp(1.55rem,2.7vw,2.25rem);
  line-height:1.38;
  letter-spacing:-.025em;
  text-wrap:pretty;
  overflow-wrap:break-word;
}
main > section.section.content-section[aria-labelledby]:not(.home-detail-section) > h2:not(:first-child) {
  margin-top:clamp(28px,3.4vw,42px) !important;
}
main > section.section.content-section[aria-labelledby]:not(.home-detail-section) > h3 {
  margin-top:clamp(23px,2.7vw,32px) !important;
  margin-bottom:9px !important;
  font-size:clamp(1.05rem,1.5vw,1.22rem);
  line-height:1.48;
  letter-spacing:-.015em;
  text-wrap:pretty;
  overflow-wrap:break-word;
}
main > section.section.content-section[aria-labelledby]:not(.home-detail-section) > h3:first-of-type {
  margin-top:clamp(20px,2.2vw,26px) !important;
}
main > section.section.content-section[aria-labelledby]:not(.home-detail-section) > h4 {
  margin-top:clamp(17px,2vw,23px) !important;
  margin-bottom:8px !important;
  color:#e6c987;
  font-size:1rem;
  line-height:1.5;
  overflow-wrap:break-word;
}
main > section.section.content-section[aria-labelledby]:not(.home-detail-section) > p {
  margin-top:0 !important;
  margin-bottom:1rem !important;
  color:#d6d0c7;
  font-size:clamp(.96rem,1.1vw,1.035rem);
  line-height:1.88;
  overflow-wrap:break-word;
  word-break:normal;
}
main > section.section.content-section[aria-labelledby]:not(.home-detail-section) > ul,
main > section.section.content-section[aria-labelledby]:not(.home-detail-section) > ol {
  margin-top:4px !important;
  margin-bottom:1.35rem !important;
  padding-left:1.4rem;
  color:#d6d0c7;
  line-height:1.85;
}
main > section.section.content-section[aria-labelledby]:not(.home-detail-section) li { margin:.35rem 0; padding-left:.1rem; }
main > section.section.content-section[aria-labelledby]:not(.home-detail-section) a:not(.btn) {
  color:#e1c27b;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
  overflow-wrap:break-word;
}
main > section.section.content-section[aria-labelledby]:not(.home-detail-section) a:not(.btn):hover { color:#fff0c9; }

/* Make each standard section use the same frame and balanced grid spacing. */
main > section.content-section:not(.hero) > .wrap {
  width:min(1120px,calc(100% - 44px)) !important;
  max-width:1120px !important;
  margin-inline:auto !important;
  box-sizing:border-box;
}
main > section.content-section:not(.hero) .section-head {
  width:min(900px,100%);
  max-width:900px !important;
  margin:0 auto clamp(22px,2.5vw,32px) !important;
}
main > section.content-section:not(.hero) .section-head h2 {
  line-height:1.38;
  margin-bottom:12px;
  text-wrap:pretty;
  overflow-wrap:break-word;
}
main > section.content-section:not(.hero) .section-head p,
main > section.content-section:not(.hero) .wrap > p {
  line-height:1.84;
  overflow-wrap:break-word;
}
main > section.content-section:not(.hero) .grid-2,
main > section.content-section:not(.hero) .grid-3,
main > section.content-section:not(.hero) .steps {
  align-items:stretch;
  gap:clamp(12px,1.7vw,20px) !important;
}
main > section.content-section:not(.hero) .card,
main > section.content-section:not(.hero) .step {
  min-width:0;
  height:100%;
  overflow-wrap:break-word;
}
main > section.content-section:not(.hero) .card h3,
main > section.content-section:not(.hero) .step h3 { line-height:1.45; text-wrap:pretty; }
main > section.content-section:not(.hero) .card p,
main > section.content-section:not(.hero) .step p { line-height:1.78; }
main > section.content-section:not(.hero) .table-wrap { max-width:100%; overflow-x:auto; }
main > section.content-section:not(.hero) table { width:100%; border-collapse:collapse; }
main > section.content-section:not(.hero) th,
main > section.content-section:not(.hero) td { overflow-wrap:break-word; vertical-align:top; }

/* Requested image proportion for detail-page galleries: 1831 × 859 (about 2.13:1). */
main > .editorial-gallery.inline-gallery {
  padding:clamp(18px,2.4vw,28px) 0 !important;
  margin:0 !important;
  background:transparent !important;
  border:0 !important;
}
main > .editorial-gallery.inline-gallery .gallery-wrap {
  width:min(1120px,calc(100% - 44px)) !important;
  max-width:1120px !important;
  margin-inline:auto !important;
}
main > .editorial-gallery.inline-gallery .gallery-grid {
  display:grid !important;
  grid-template-columns:minmax(0,880px) !important;
  justify-content:center !important;
  align-items:stretch;
  gap:clamp(12px,1.8vw,20px) !important;
  margin-inline:auto !important;
}
main > .editorial-gallery.inline-gallery .gallery-grid:has(> .gallery-card:nth-child(2)) {
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
}
main > .editorial-gallery.inline-gallery .gallery-grid:has(> .gallery-card:nth-child(3)) .gallery-card:last-child:nth-child(odd) {
  grid-column:1 / -1;
  width:calc(50% - 10px) !important;
  justify-self:center;
}
main > .editorial-gallery.inline-gallery .gallery-card {
  display:block !important;
  position:relative;
  box-sizing:border-box;
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  height:auto !important;
  max-height:none !important;
  aspect-ratio:1831 / 859 !important;
  overflow:hidden;
  border-radius:14px !important;
}
main > .editorial-gallery.inline-gallery .gallery-card img {
  display:block;
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  aspect-ratio:1831 / 859 !important;
  object-fit:cover !important;
  object-position:center center !important;
}
main > .editorial-gallery.inline-gallery .gallery-caption {
  left:clamp(10px,1.2vw,16px) !important;
  right:12px !important;
  bottom:10px !important;
  line-height:1.45 !important;
  overflow-wrap:break-word;
}

/* Align the footer with the same readable content column. */
footer.footer > .wrap { width:min(1120px,calc(100% - 44px)) !important; max-width:1120px !important; margin-inline:auto !important; }
footer.footer .footer-nav,
footer.footer p { width:min(900px,calc(100% - 0px)); max-width:900px; margin-left:auto !important; margin-right:auto !important; }
footer.footer .footer-nav { justify-content:flex-start; }
footer.footer p { line-height:1.8; overflow-wrap:break-word; }

@media (max-width:680px) {
  main > section.section.content-section[aria-labelledby]:not(.home-detail-section) { padding:32px 0 !important; }
  main > section.section.content-section[aria-labelledby]:not(.home-detail-section) > h2,
  main > section.section.content-section[aria-labelledby]:not(.home-detail-section) > h3,
  main > section.section.content-section[aria-labelledby]:not(.home-detail-section) > h4,
  main > section.section.content-section[aria-labelledby]:not(.home-detail-section) > p,
  main > section.section.content-section[aria-labelledby]:not(.home-detail-section) > ul,
  main > section.section.content-section[aria-labelledby]:not(.home-detail-section) > ol,
  main > section.section.content-section[aria-labelledby]:not(.home-detail-section) > blockquote,
  main > section.section.content-section[aria-labelledby]:not(.home-detail-section) > table,
  main > section.section.content-section[aria-labelledby]:not(.home-detail-section) > figure,
  main > section.section.content-section[aria-labelledby]:not(.home-detail-section) > .table-wrap,
  main > section.section.content-section[aria-labelledby]:not(.home-detail-section) > .faq-list,
  main > section.section.content-section[aria-labelledby]:not(.home-detail-section) > .callout {
    width:calc(100% - 32px) !important;
  }
  main > section.content-section:not(.hero) { padding:34px 0 !important; }
  main > section.content-section:not(.hero) > .wrap { width:calc(100% - 28px) !important; }
  main > section.content-section:not(.hero) .grid-2,
  main > section.content-section:not(.hero) .grid-3,
  main > section.content-section:not(.hero) .steps { gap:12px !important; }
  main > .editorial-gallery.inline-gallery { padding:14px 0 !important; }
  main > .editorial-gallery.inline-gallery .gallery-wrap { width:calc(100% - 28px) !important; }
  main > .editorial-gallery.inline-gallery .gallery-grid,
  main > .editorial-gallery.inline-gallery .gallery-grid:has(> .gallery-card:nth-child(2)) { grid-template-columns:minmax(0,1fr) !important; gap:12px !important; }
  main > .editorial-gallery.inline-gallery .gallery-grid:has(> .gallery-card:nth-child(3)) .gallery-card:last-child:nth-child(odd) { grid-column:auto; width:100% !important; }
  main > .editorial-gallery.inline-gallery .gallery-card { aspect-ratio:1831 / 859 !important; }
  footer.footer > .wrap { width:calc(100% - 28px) !important; }
  footer.footer .footer-nav, footer.footer p { width:100%; max-width:100%; }
  footer.footer .footer-nav { gap:7px 14px !important; }
}
