/* Shared final review for every quote form with an embedded calendar. */
.quote-review-host { width: 100%; min-width: 0; }
.quote-review {
    --review-gold: #f3d688;
    --review-text: #fff8e7;
    --review-muted: rgba(248,250,252,.84);
    width: 100%; min-width: 0; margin: 0;
    box-sizing: border-box;
    color: var(--review-text); text-align: left;
    background: linear-gradient(180deg, #0b2347 0%, #081a36 52%, #071427 100%);
    font-size: 1rem; line-height: 1.6;
}
.quote-review-content { padding: clamp(18px, 3vw, 32px); }
.quote-review-copy { margin: 0; max-width: 85ch; color: var(--review-muted); font-size: 1rem; line-height: 1.65; }
.quote-review-header { display: grid; justify-items: start; gap: 18px; margin-bottom: 28px; }
.quote-review-status { display: inline-flex; align-items: center; gap: 9px; padding: 7px 13px; border-radius: 999px; border: 1px solid #f3d68850; background: #f3d6880d; color: var(--review-gold); font-size: .72rem; font-weight: 750; letter-spacing: .09em; text-transform: uppercase; }
.quote-review-title { margin: 0; max-width: 40ch; color: var(--review-text); font-size: clamp(1.5rem, 2.4vw, 2rem); line-height: 1.18; font-weight: 800; letter-spacing: -.035em; text-wrap: balance; }
.quote-review-assurances { display: flex; flex-wrap: wrap; gap: 8px 22px; margin: 0; padding: 0; list-style: none; color: var(--review-muted); font-size: .8rem; }
.quote-review-assurances li { display: flex; align-items: center; gap: 8px; }
.quote-review-assurances li::before { content: ''; width: 4px; height: 4px; border-radius: 50%; background: var(--review-gold); }
.quote-review-metrics { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 0; }
.quote-review-metric { min-width: 0; padding: 18px 20px; border: 1px solid #dce6f21c; border-radius: 16px; background: #ffffff04; }
.quote-review-metric dt { color: var(--review-muted); font-size: .73rem; font-weight: 650; line-height: 1.4; letter-spacing: .045em; }
.quote-review-metric dd { margin: 8px 0 0; color: var(--review-text); font-size: 1rem; font-weight: 700; line-height: 1.35; overflow-wrap: anywhere; }
.quote-review-metric-featured { border-color: #f3d68845; background: linear-gradient(135deg, #f3d6880d, #ffffff02); }
.quote-review-metric-featured dd { color: var(--review-gold); font-size: clamp(1.2rem, 2.5vw, 1.8rem); letter-spacing: -.025em; }
.quote-review-disclaimer { margin: 12px 0 0; color: var(--review-muted); font-size: .73rem; line-height: 1.5; }
.quote-review-insights { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; margin: 28px 0; }
.quote-review-insight { min-width: 0; padding-left: 16px; border-left: 2px solid #f3d68865; }
.quote-review-insight h3 { margin: 0 0 8px; color: var(--review-gold); font-size: .73rem; line-height: 1.4; text-transform: uppercase; letter-spacing: .08em; font-weight: 750; }
.quote-review-insight p { margin: 0; color: var(--review-muted); font-size: .9rem; font-weight: 400; line-height: 1.65; }
.quote-review-details { margin: 0; padding: 18px 0; border-top: 1px solid #dce6f224; border-bottom: 1px solid #dce6f224; }
.quote-review-details h3 { margin: 0; color: var(--review-gold); font-size: .8rem; text-transform: uppercase; letter-spacing: .07em; }
.quote-review-details h4 { margin: 0; color: var(--review-text); font-size: 1.05rem; }
.quote-review-details-body { display: grid; gap: 14px; padding-top: 18px; max-width: 78ch; color: var(--review-muted); font-size: .88rem; }
.quote-review-details-body p { margin: 0; line-height: 1.65; }
.quote-review-checklist { display: flex; flex-wrap: wrap; gap: 12px 22px; margin: 0; padding: 0; list-style: none; color: var(--review-text); }
.quote-review-checklist span { color: var(--review-gold); margin-right: 4px; }
.quote-review-booking { display: flex; align-items: flex-start; gap: 18px; padding: 28px 0 22px; }
.quote-review-booking-icon { flex: 0 0 42px; display: grid; place-items: center; height: 42px; border: 1px solid #f3d68860; border-radius: 12px; color: var(--review-gold); font-weight: 700; font-size: .9rem; }
.quote-review-eyebrow { color: var(--review-gold); font-size: .68rem; font-weight: 750; letter-spacing: .1em; text-transform: uppercase; }
.quote-review-booking h3 { margin: 4px 0 8px; color: var(--review-text); font-size: clamp(1.15rem, 2.3vw, 1.45rem); font-weight: 750; line-height: 1.3; letter-spacing: -.02em; }
.quote-review-booking p { max-width: 72ch; margin: 0; color: var(--review-muted); font-size: .9rem; line-height: 1.6; }
.quote-review-message { margin: 12px 0; padding: 16px; border: 1px solid #f3d68840; border-radius: 12px; color: var(--review-muted); font-size: .9rem; }
@media (max-width: 600px) {
    .quote-review-header { gap: 14px; margin-bottom: 22px; }
    .quote-review-metrics, .quote-review-insights { grid-template-columns: minmax(0, 1fr); }
    .quote-review-metric { padding: 16px 18px; }
    .quote-review-insights { gap: 20px; margin: 24px 0; }
    .quote-review-booking { gap: 12px; }
}
