.promo-section { padding-block: clamp(40px, 6vw, 88px); background: #fff; }
.promo-section h2 { font-size: clamp(30px, 3.8vw, 58px); line-height: 1.1; letter-spacing: -.025em; }
.promo-section h2 span { color: var(--blue); }
.promo-label { margin-bottom: 18px; font-size: 13px; font-weight: 600; letter-spacing: .12em; color: #526472; }
.promo-lead { max-width: 62ch; margin-top: 22px; font-size: clamp(16px, 1.25vw, 20px); line-height: 1.6; color: #58616a; }
.promo-split { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: clamp(28px, 5vw, 80px); }
.promo-documents { background: #eef5fc; }
.promo-doc-list { display: grid; gap: 20px; margin-block: 28px; }
.promo-doc-list > div { display: flex; align-items: flex-start; gap: 16px; }
.promo-icon { display: block; flex: 0 0 36px; width: 36px; height: 36px; color: var(--blue); }
.promo-section h3 { font-size: 21px; line-height: 1.3; }
.promo-doc-list p { font-size: 15px; line-height: 1.5; color: #58616a; margin-top: 5px; }
.promo-cta { padding: 16px 24px; min-height: 52px; font-size: 16px; line-height: 1.25; }
.promo-photo { margin: 0; border-radius: 24px; overflow: hidden; background: #fff; }
.promo-photo img { width: 100%; aspect-ratio: 4/5; object-fit: cover; object-position: center bottom; }
.promo-photo figcaption { padding: 18px 22px; font-size: 15px; color: #526472; }
.promo-experiences { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin-top: 34px; }
.promo-experience { display: flex; flex-direction: column; min-width: 0; background: #0a1c2d; color: #fff; border-radius: 22px; overflow: hidden; transition: transform .2s; }
.promo-experience:hover { transform: translateY(-4px); }
.promo-experience img { width: 100%; aspect-ratio: 1.5; object-fit: cover; }
.promo-experience > div { padding: 24px; display: grid; gap: 14px; }
.promo-experience p { color: #87bdff; font-size: 12px; letter-spacing: .12em; }
.promo-experience h3 { font-size: clamp(20px, 2vw, 29px); }
.promo-experience span { font-size: 15px; color: #b9d9ff; margin-top: 8px; }
.promo-value { background: #0a1c2d; color: #fff; }
.promo-value .promo-label { color: #a8c6e0; }
.promo-value h2 span { color: #79b8ff; }
.promo-value-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; margin-top: 40px; }
.promo-value-grid article { border-top: 1px solid #ffffff30; padding-top: 22px; }
.promo-value-grid .promo-icon { color: #79b8ff; margin-bottom: 20px; }
.promo-value-grid p { color: #bbc9d5; font-size: 16px; line-height: 1.65; margin-top: 12px; }
.promo-confidence { display: grid; grid-template-columns: 1.5fr 1fr; align-items: center; gap: 32px; }
.promo-confidence-action { text-align: center; }
.promo-confidence-action p { margin-top: 18px; color: #58616a; font-size: 14px; line-height: 1.6; }
@media (max-width: 900px) {
  .promo-split, .promo-confidence { grid-template-columns: minmax(0, 1fr); }
  .promo-photo img { aspect-ratio: 4/3; }
  .promo-experiences { gap: 12px; }
  .promo-experience > div { padding: 18px; }
}
@media (max-width: 600px) {
  .promo-experiences, .promo-value-grid { grid-template-columns: minmax(0, 1fr); }
  .promo-confidence-action { text-align: left; }
  .promo-experience h3 br { display: none; }
  .promo-cta { width: 100%; }
}
@media (prefers-reduced-motion: reduce) { .promo-experience { transition: none; } }

/* Contacts match the navy promotional sections. */
.contacts { background: #0a1c2d; color: #fff; }
.contacts .section-label, .contacts h2, .contacts .heading-accent, .contacts h3, .contacts p, .contacts a { color: #fff; }
.contacts .contact-icon { filter: brightness(0) invert(1); }

/* Unified navy backgrounds for the documents and rental steps. */
.how, .promo-documents { background: #0a1c2d; color: #fff; }
.promo-documents .promo-label, .promo-documents h2, .promo-documents h2 span, .promo-documents .promo-lead, .promo-documents h3, .promo-documents .promo-doc-list p, .promo-documents .promo-icon { color: #fff; }
.promo-documents .promo-photo { background: #0a1c2d; }
.promo-documents .promo-photo figcaption { color: #fff; }
