/* Shared craft pass. Keep the approved hero and action color; simplify the supporting surfaces. */
:root {
  --text-secondary: #59616b;
  --text-small: #626262;
  --surface-radius: 8px;
  --rule: #d8d8d8;
}
.review-bar { font-size: 10px; line-height: 1.5; padding: 7px 16px; }
.review-bar span { font-size: 10px; }
.button { transition: background-color .18s ease, border-color .18s ease; }
.button:hover { transform: none; }
.button:active:not(:disabled) { filter: brightness(.94); }
.eyebrow, .section-top .eyebrow, .section-index { font-size: 11px; line-height: 1.6; }
.section-index { color: var(--text-small); }
.dark-section .section-index { color: #aaa; }
.header-event-note { font-size: 10px; }
.hero-photo-credit { font-size: 9px; letter-spacing: .06em; }
.hero-stage-label > span { font-size: 10px; }
.hero-reassurance { font-size: 12px; }
.proof-grid dt, .proof-note { font-size: 12px; }
.proof-note { color: #bbb; }
.claims-intro, .claims-grid > p, .disclaimer { font-size: 12px; line-height: 1.8; }
.claims-grid strong { font-size: 13px; }
.footer-links, .footer-bottom { font-size: 11px; }
.footer-links a { display: inline-flex; align-items: center; min-height: 44px; }
.footer-top { align-items: center; }
.intro-grid > div > p, .lineup-heading > p, .topic-program .program-heading > p { font-size: 16px; line-height: 1.75; }

/* The three promises read as a single curriculum, not a bank of feature cards. */
.topic-pillars { gap: 36px; margin-top: 44px; }
.topic-pillars article { background: none; border: 0; border-top: 1px solid var(--rule); border-radius: 0; padding: 27px 0 0; }
.topic-pillars .curriculum-number { display: none; }
.topic-pillars h3 { font-size: 29px; margin: 0; }
.topic-pillars p { font-size: 14px; line-height: 1.8; margin-top: 16px; max-width: 100%; }
.topic-pillars .curriculum-detail { font-size: 11px; line-height: 1.7; border: 0; padding: 0; margin-top: 21px; color: var(--text-small); }
.curriculum-note { margin-top: 32px; }
.curriculum-note > span, .curriculum-note > p { font-size: 12px; line-height: 1.7; }
.curriculum-note > a { font-size: 12px; min-height: 44px; display: inline-flex; align-items: center; }
.photo-ribbon figure, .photo-ribbon img { border-radius: 4px; }
.photo-caption { font-size: 11px; line-height: 1.7; }

/* Authentic portraits, names and disciplines carry the roster. */
.confirmed-lineup-grid { grid-template-columns: minmax(290px,.9fr) minmax(0,1.8fr); gap: 42px; }
.confirmed-lineup-grid > .speaker-host { min-height: 550px; border-radius: var(--surface-radius); }
.actual-speaker-grid { grid-template-columns: repeat(3,minmax(0,1fr)); column-gap: 25px; row-gap: 0; align-content: stretch; }
.itinerary-speaker { display: grid; grid-template-columns: 84px minmax(0,1fr); align-items: center; gap: 16px; min-height: 136px; background: none; border: 0; border-top: 1px solid #ffffff33; border-radius: 0; padding: 19px 0; }
.speaker-caption { min-width: 0; }
.speaker-photo { position: relative; width: 84px; height: 100px; overflow: hidden; background: #292929; border-radius: 4px; isolation: isolate; }
.speaker-photo img { width: 100%; height: 100%; display: block; object-fit: cover; object-position: center 20%; }
.speaker-photo--john img { object-position: right top; transform: scale(1.6); transform-origin: right top; }
.speaker-photo--dan img { object-position: 54% 20%; transform: scale(1.13); transform-origin: 54% 20%; }
.speaker-photo--hardy img { object-position: 76% 15%; transform: scale(1.25); transform-origin: 76% 18%; }
.speaker-photo--rhonda img { object-position: center 15%; }
.speaker-photo--jon img { object-position: 48% 18%; transform: scale(1.08); transform-origin: 48% 18%; }
.speaker-photo--pending { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; background: #202020; border: 1px solid #ffffff1c; }
.speaker-photo--pending > span { font-size: 27px; font-weight: 400; letter-spacing: -.05em; color: #bdbdbd; }
.speaker-photo--pending > small { font-size: 7px; letter-spacing: .08em; color: #bdbdbd; }
.itinerary-speaker h3 { font-size: 21px; font-weight: 500; line-height: 1.12; max-width: none; }
.itinerary-speaker .roster-subject { font-size: 10px; letter-spacing: .06em; line-height: 1.65; color: #bdbdbd; margin-top: 10px; }
.speaker-host-tag { font-size: 10px; line-height: 1.6; }
.speaker-host-info > p:not(.eyebrow) { font-size: 14px; line-height: 1.7; }
.speaker-host-info > span { font-size: 11px; line-height: 1.7; }
.recorded-feature { border: 0; border-top: 1px solid #ffffff33; border-bottom: 1px solid #ffffff33; background: none; border-radius: 0; padding: 25px 0; margin-top: 30px; }
.recorded-label, .pending-label { font-size: 10px; }
.recorded-feature p, .lineup-footer > p { font-size: 12px; color: #bdbdbd; }
.pending-label { border: 0; padding: 0; border-radius: 0; color: #bdbdbd; }
.lineup-footer { margin-top: 27px; }

/* A readable, editorial program with consistent speaker bylines. */
.formula-feature { border-radius: var(--surface-radius); }
.formula-feature > img { border-radius: 4px; }
.formula-feature .eyebrow { font-size: 11px; }
.formula-feature h3 + p { font-size: 14px; line-height: 1.75; }
.formula-days span { font-size: 10px; }
.topic-group { margin-top: 52px; }
.topic-group-heading h3 { font-size: 31px; }
.topic-group-heading > span { font-size: 10px; }
.topic-label { font-size: 11px; line-height: 1.6; }
.topic-description { font-size: 15px; line-height: 1.75; }
.topic-speaker { margin-top: 20px; }
.topic-speaker p { font-size: 11px; color: var(--text-small); }
.topic-speaker strong { font-size: 13px; }
.topic-qa > span { font-size: 11px; }
.topic-qa p, .program-footer > p { font-size: 14px; }

/* The event pass uses a printed ticket shape with a perforated stub. */
.ticket { --ticket-padding: 36px; border-radius: 12px; border: 1px solid #d2d2d2; box-shadow: 0 18px 44px #00000012; transform: rotate(1.2deg); padding: var(--ticket-padding); }
.ticket-top { gap: 16px; }
.ticket-top > span, .ticket > .eyebrow, .ticket-details span { font-size: 10px; }
.ticket-price > span { font-size: 11px; letter-spacing: .04em; }
.ticket-perforation { margin: 30px calc(-1 * var(--ticket-padding) - 1px); border-top: 1px dashed #c4c4c4; }
.ticket-perforation:before, .ticket-perforation:after { top: -14px; width: 27px; height: 27px; background: #efefef; }
.ticket-perforation:before { left: -13px; }
.ticket-perforation:after { right: -13px; }
.ticket-code { margin-top: 25px; padding-top: 20px; }
.ticket-code > span { font-size: 9px; line-height: 1.9; color: #626262; }
.ticket-code > div { width: 120px; height: 32px; flex-shrink: 0; }
.ticket-details { justify-content: space-between; gap: 20px; }
.ticket-details strong { font-size: 12px; line-height: 1.5; }
.ticket > small { font-size: 12px; }
.pass-time { border-top: 1px solid var(--rule); margin-top: 25px; padding-top: 19px; font-size: 12px; line-height: 1.7; color: var(--text-small); }
.pass-inclusions strong { font-size: 15px; }
.pass-inclusions p > span { font-size: 13px; line-height: 1.7; }
.questions summary { font-size: 15px; padding-block: 24px; }
.questions details > p { font-size: 14px; line-height: 1.8; }
.final-cta .eyebrow { font-size: 11px; }
.final-cta small { font-size: 12px; }
.historical-caption { font-size: 10px; letter-spacing: .05em; }
.mobile-register strong { font-size: 12px; }
.mobile-register > div > span { font-size: 10px; }

/* Registration and every downstream step share one type and spacing scale. */
.funnel-header { padding-block: 27px; }
.funnel-page .eyebrow, .small-label { font-size: 11px; line-height: 1.65; }
.back-link, .skip-offer, .text-link { font-size: 13px; line-height: 1.6; }
.back-link, .skip-offer { min-height: 44px; display: inline-flex; align-items: center; }
.funnel-steps { padding-block: 27px 36px; }
.funnel-steps li { font-size: 12px; line-height: 1.4; gap: 10px; }
.funnel-steps li > span { width: 28px; height: 28px; font-size: 10px; flex-shrink: 0; }
.funnel-intro { font-size: 16px; line-height: 1.75; }
.funnel-page .button { min-height: 56px; font-size: 14px; }
.registration-card, .order-summary, .confirmation-pass { border-radius: var(--surface-radius); box-shadow: none; }
.registration-card > p, .registration-story .funnel-intro { font-size: 15px; line-height: 1.75; }
.registration-card fieldset label, .optin-fields label, .field-label { font-size: 13px; }
.registration-card input, .optin-fields input, .checkout-form select, .checkout-form input[type=text] { font-size: 16px; min-height: 50px; border-radius: 6px; }
.registration-card .registration-terms, .registration-card .preview-note, .preview-note, .field-help { font-size: 12px; line-height: 1.75; }
.card-event-meta > span, .registration-facts span { font-size: 10px; }
.card-event-meta p { font-size: 12px; }
.registration-photo { border-radius: var(--surface-radius); }
.registration-photo small { font-size: 10px; }
.optin-dialog { border-radius: 12px; }
.optin-intro { font-size: 14px; line-height: 1.7; }
.optin-kicker { font-size: 11px; letter-spacing: .08em; }
.optin-free { font-size: 13px; }
.optin-continue { font-size: 14px; }
.optin-preview { font-size: 12px; line-height: 1.7; }
.optin-close { background: transparent; }

/* Authentic photography replaces the tilted, imaginary interview mockup. */
.offer-hero { gap: 64px; align-items: start; }
.offer-top p { font-size: 14px; }
.offer-top .small-label { font-size: 10px; }
.offer-at-a-glance { margin-block: 30px; }
.offer-at-a-glance strong { font-size: 33px; }
.offer-at-a-glance span { font-size: 10px; line-height: 1.6; margin-top: 8px; }
.offer-eligibility { font-size: 12px; line-height: 1.75; }
.media-portrait { margin: 0; background: #161616; color: #fff; border-radius: var(--surface-radius); overflow: hidden; }
.media-portrait-photo { aspect-ratio: 1.26; overflow: hidden; background: #252525; }
.media-portrait img { width: 100%; height: 100%; object-fit: cover; object-position: 49% 32%; }
.media-portrait figcaption { padding: 27px 30px; }
.media-portrait .small-label { color: #bcbcbc; font-size: 10px; }
.media-portrait strong { display: block; margin-top: 11px; font-size: 30px; line-height: 1.15; font-weight: 500; letter-spacing: -.04em; }
.media-portrait p { font-size: 14px; color: #c2c2c2; line-height: 1.75; margin-top: 13px; }
.media-portrait ul { display: flex; flex-wrap: wrap; gap: 10px 18px; list-style: none; padding: 20px 0 0; margin: 23px 0 0; border-top: 1px solid #ffffff33; font-size: 12px; color: #ddd; line-height: 1.5; }
.deliverable-list article > span { font-size: 11px; color: var(--text-small); }
.deliverable-list p { font-size: 15px; line-height: 1.8; }
.distribution-strip .funnel-wrap { flex-wrap: wrap; column-gap: 30px; row-gap: 19px; }
.distribution-strip span, .distribution-strip small { font-size: 11px; line-height: 1.6; }
.distribution-strip p { font-size: 24px; }
.distribution-channels { display: flex; flex-wrap: wrap; gap: 14px 26px; padding: 0; margin: 0; list-style: none; font-size: 24px; line-height: 1.3; letter-spacing: -.035em; }
.price-line > span { font-size: 12px; line-height: 1.7; }
.bottom-skip { display: flex; width: fit-content; margin-top: 16px; }
.offer-faq summary { font-size: 15px; }
.offer-faq details > p { font-size: 14px; line-height: 1.8; }
.offer-review { background: none; border: 0; border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); border-radius: 0; padding: 0; }
.offer-review summary { font-size: 12px; padding: 18px 0; color: var(--text-small); }
.offer-review > p, .offer-disclaimer { font-size: 12px; line-height: 1.8; }
.offer-review > p { padding: 0 25px 22px 0; }
.checkout-early-skip { margin-top: 20px; text-decoration: underline; text-underline-offset: 4px; }
.form-section-title > span:first-child, .disabled-tag { font-size: 11px; }
.terms-list, .eligibility-status { font-size: 14px; line-height: 1.8; }
.terms-checkbox { font-size: 13px; line-height: 1.75; min-height: 44px; }
.terms-checkbox input { width: 20px; height: 20px; flex: 0 0 20px; margin-top: 2px; accent-color: var(--action); }
.order-summary h2 { font-size: 35px; line-height: 1.06; }
.order-summary .summary-host strong { font-size: 13px; }
.order-summary .summary-host span { font-size: 12px; line-height: 1.5; }
.order-summary .order-line { font-size: 14px; }
.order-total > span { font-size: 12px; }
.order-summary .skip-offer { justify-content: center; font-size: 12px; }
.sample-confirmation { border-radius: 0; border-left: 2px solid #777; font-size: 12px; line-height: 1.7; padding: 12px 17px; gap: 6px 12px; }
.next-index { font-size: 11px; }
.next-step p, .next-step li { font-size: 15px; line-height: 1.8; }
.next-step small { font-size: 11px; line-height: 1.7; }
.date-cards { border-block: 1px solid var(--rule); gap: 0; margin-block: 27px; }
.date-cards > div { border: 0; border-right: 1px solid var(--rule); border-radius: 0; background: none; padding: 19px 20px; }
.date-cards > div:first-child { padding-left: 0; }
.date-cards > div:last-child { border-right: 0; }
.date-cards span { font-size: 11px; }
.date-cards strong { font-size: 46px; margin-block: 10px; }
.date-cards b { font-size: 12px; }
.access-pending { border-radius: 4px; font-size: 12px; }
.confirmation-pass .small-label, .confirmation-pass dt, .package-selection > span { font-size: 10px; }
.confirmation-pass dd, .package-selection p { font-size: 13px; line-height: 1.7; }
.pass-rule { border-top-style: solid; opacity: .7; }
.funnel-footer > .funnel-wrap > div { font-size: 11px; }
.funnel-footer a:not(.footer-live) { display: inline-flex; align-items: center; min-height: 44px; }
.funnel-footer p { font-size: 11px; line-height: 1.8; }
.curriculum-note > span, .ticket > .eyebrow, .faq .eyebrow,
.questions details > p, summary > span, .pass-inclusions > div > span,
.card-event-meta > span, .offer-top p, .form-section-title > span:first-child,
.order-summary .summary-host span, .next-index, .next-step small { color: var(--text-small); }
.faq .eyebrow { font-size: 11px; }
.funnel-page .offer-review > p { color: var(--text-small); font-size: 12px; line-height: 1.8; }

@media (max-width: 1100px) {
  .confirmed-lineup-grid { grid-template-columns: minmax(250px,.85fr) minmax(0,1.4fr); gap: 30px; }
  .actual-speaker-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 25px; }
  .confirmed-lineup-grid > .speaker-host { min-height: 620px; align-self: start; position: sticky; top: 100px; }
  .itinerary-speaker { grid-template-columns: 70px minmax(0,1fr); gap: 12px; padding-block: 20px; min-height: 137px; }
  .speaker-photo { width: 70px; height: 94px; }
  .itinerary-speaker h3 { font-size: 20px; }
  .offer-hero { gap: 35px; }
  .offer-at-a-glance { gap: 18px; }
  .offer-at-a-glance > div { padding-right: 18px; }
  .offer-at-a-glance strong { font-size: 29px; }
  .offer-at-a-glance span { font-size: 9px; }
  .topic-pillars { gap: 25px; }
  .topic-pillars h3 { font-size: 26px; }
}
@media (max-width: 760px) {
  .review-bar { font-size: 9px; padding: 6px 12px; }
  .review-bar span { font-size: 9px; margin-left: 5px; }
  .header-event-note { font-size: 9px; line-height: 1.6; }
  .hero-photo-credit { font-size: 8px; }
  .hero-reassurance { font-size: 11px; }
  .proof-grid dt { font-size: 12px; }
  .proof-note { font-size: 11px; }
  .section-top .eyebrow { max-width: none; font-size: 10px; }
  .intro-grid > div > p, .lineup-heading > p, .topic-program .program-heading > p { font-size: 15px; }
  .topic-pillars { grid-template-columns: 1fr; gap: 27px; margin-top: 32px; }
  .topic-pillars article { padding: 25px 0 0; }
  .topic-pillars h3 { font-size: 28px; }
  .topic-pillars p { font-size: 14px; margin-top: 13px; }
  .topic-pillars .curriculum-detail { font-size: 11px; margin-top: 14px; }
  .curriculum-note { margin-top: 25px; }
  .curriculum-note > p { font-size: 13px; }
  .photo-caption { font-size: 11px; }
  .confirmed-lineup-grid { grid-template-columns: 1fr; gap: 32px; }
  .confirmed-lineup-grid > .speaker-host { min-height: 430px; position: relative; top: auto; }
  .actual-speaker-grid { column-gap: 24px; row-gap: 25px; }
  .itinerary-speaker { display: flex; flex-direction: column; align-items: stretch; gap: 15px; padding: 0; min-height: 0; border: 0; }
  .speaker-photo { width: 100%; height: auto; aspect-ratio: 1 / 1; }
  .speaker-photo img { height: 100%; position: absolute; inset: 0; }
  .speaker-photo--pending { min-height: 0; }
  .speaker-photo--pending > span { font-size: 40px; }
  .speaker-photo--pending > small { font-size: 8px; }
  .itinerary-speaker h3 { font-size: 22px; line-height: 1.15; }
  .itinerary-speaker .roster-subject { font-size: 10px; margin-top: 10px; }
  .recorded-feature { padding: 24px 0; margin-top: 16px; }
  .recorded-feature p { font-size: 12px; }
  .formula-feature { grid-template-columns: 64px 1fr; padding: 25px 22px; gap: 18px; }
  .formula-feature > img { width: 64px; height: 86px; }
  .formula-feature .eyebrow { font-size: 10px; }
  .formula-feature h3 { font-size: 26px; }
  .formula-feature h3 + p { font-size: 13px; }
  .topic-group { margin-top: 39px; }
  .topic-group-heading h3 { font-size: 29px; }
  .topic-group-heading > span, .topic-label { font-size: 10px; }
  .topic-card { padding-block: 25px; }
  .topic-card h4 { font-size: 27px; }
  .topic-description { font-size: 14px; }
  .topic-qa > span { font-size: 10px; }
  .ticket { --ticket-padding: 28px; padding: var(--ticket-padding); transform: none; }
  .ticket-top { align-items: flex-start; }
  .ticket-top > span { text-align: right; max-width: 67px; line-height: 1.7; }
  .pass-grid > div > .eyebrow { font-size: 11px; }
  .pass-inclusions strong { font-size: 14px; }
  .pass-inclusions p > span { font-size: 13px; }
  .questions summary { font-size: 14px; }
  .questions details > p { font-size: 14px; }
  .final-cta p:not(.eyebrow) { font-size: 12px; }
  .historical-caption { font-size: 9px; }
  .footer-bottom { font-size: 11px; }
  .funnel-header { padding-block: 22px; gap: 18px; }
  .funnel-header img { width: 165px; }
  .funnel-header .back-link { font-size: 11px; white-space: nowrap; }
  .funnel-steps { padding-block: 24px 32px; }
  .funnel-steps ol { gap: 16px; align-items: flex-start; }
  .funnel-steps li { font-size: 10px; gap: 7px; flex: 1; }
  .funnel-steps li > span { width: 23px; height: 23px; font-size: 9px; }
  .funnel-page .eyebrow, .small-label { font-size: 10px; }
  .funnel-intro { font-size: 15px; line-height: 1.75; }
  .registration-story h1 { font-size: 36px; }
  .registration-card { padding: 27px 24px; }
  .registration-card .button { font-size: 14px; }
  .registration-card .card-event-meta { padding-top: 22px; }
  .optin-panel { padding: 30px 25px 26px; }
  .optin-panel h2 { font-size: 36px; }
  .optin-kicker { font-size: 10px; }
  .optin-intro { font-size: 13px; }
  .optin-continue { font-size: 14px; }
  .optin-preview { font-size: 11px; }
  .offer-top { padding-bottom: 24px; gap: 10px; }
  .offer-top .small-label { font-size: 10px; }
  .offer-top p { font-size: 13px; }
  .offer-top .skip-offer { font-size: 12px; margin-top: 5px; }
  .offer-hero { padding-block: 32px 45px; gap: 35px; }
  .offer-copy h1 { font-size: 48px; }
  .offer-at-a-glance { gap: 22px; margin-block: 27px; }
  .offer-at-a-glance > div { padding-right: 21px; }
  .offer-at-a-glance span { font-size: 9px; }
  .offer-eligibility { font-size: 12px; }
  .media-portrait-photo { aspect-ratio: 1.3; }
  .media-portrait figcaption { padding: 24px; }
  .media-portrait strong { font-size: 28px; }
  .media-portrait p { font-size: 13px; }
  .media-portrait ul { gap: 10px 17px; font-size: 11px; }
  .deliverable-list p { font-size: 14px; }
  .distribution-strip p { font-size: 24px; }
  .distribution-channels { display: grid; grid-template-columns: 1fr 1fr; width: 100%; gap: 14px 25px; font-size: 24px; }
  .distribution-strip small { font-size: 11px; }
  .offer-faq details > p { font-size: 14px; }
  .offer-bottom h2 { font-size: 35px; }
  .offer-disclaimer { font-size: 12px; }
  .checkout-heading h1 { font-size: 44px; }
  .checkout-early-skip { font-size: 12px; margin-top: 17px; }
  .checkout-layout { gap: 25px; }
  .form-section-title h2 { font-size: 27px; }
  .terms-list { font-size: 14px; }
  .terms-checkbox { font-size: 12px; }
  .order-summary { padding: 28px 24px; }
  .order-summary .preview-note { font-size: 12px; }
  .confirmation-hero h1 { font-size: 42px; }
  .sample-confirmation { display: block; font-size: 11px; }
  .sample-confirmation strong { display: block; margin-bottom: 3px; }
  .next-step { gap: 11px; grid-template-columns: 19px minmax(0,1fr); }
  .next-step h2 { font-size: 29px; }
  .next-step p, .next-step li { font-size: 14px; }
  .date-cards > div { padding: 17px 12px; }
  .date-cards span { font-size: 9px; }
  .date-cards strong { font-size: 41px; }
  .date-cards b { font-size: 10px; }
  .funnel-page .button-calendar { font-size: 13px !important; padding-inline: 19px; }
  .confirmation-pass { padding: 29px; }
  .confirmation-pass .small-label { font-size: 10px; }
  .confirmation-pass .text-link { font-size: 12px; }
  .funnel-footer > .funnel-wrap > div, .funnel-footer p { font-size: 11px; }
}
@media (max-width: 360px) {
  .header-event-note { font-size: 8px; }
  .review-bar, .review-bar span { font-size: 8px; }
  .hero-photo-credit { font-size: 7px; }
  .proof-grid dt { font-size: 11px; }
  .itinerary-speaker h3 { font-size: 21px; }
  .actual-speaker-grid { column-gap: 19px; }
  .formula-feature { grid-template-columns: 1fr; }
  .formula-feature > img { display: none; }
  .formula-feature h3 { font-size: 27px; }
  .topic-card h4 { font-size: 25px; }
  .ticket { --ticket-padding: 22px; padding: 25px var(--ticket-padding); }
  .ticket-code > div { width: 98px; }
  .ticket-top img { width: 140px; }
  .ticket-details strong { font-size: 11px; }
  .mobile-register strong { font-size: 11px; }
  .mobile-register > div > span { font-size: 9px; }
  .funnel-header img { width: 145px; }
  .funnel-header .back-link { font-size: 10px; }
  .funnel-steps ol { gap: 12px; }
  .funnel-steps li { flex-direction: column; gap: 8px; font-size: 10px; }
  .registration-story h1 { font-size: 32px; }
  .registration-card { padding: 25px 21px; }
  .optin-panel { padding-inline: 22px; }
  .optin-panel h2 { font-size: 32px; }
  .optin-kicker { font-size: 9px; }
  .offer-copy h1 { font-size: 42px; }
  .offer-at-a-glance { gap: 13px; }
  .offer-at-a-glance > div { padding-right: 13px; }
  .offer-at-a-glance span { font-size: 8px; }
  .media-portrait figcaption { padding: 23px; }
  .media-portrait strong { font-size: 25px; }
  .distribution-strip p { font-size: 21px; }
  .offer-bottom h2, .order-summary h2 { font-size: 31px; }
  .checkout-heading h1, .confirmation-hero h1 { font-size: 37px; }
  .form-section-title h2 { font-size: 25px; }
  .order-summary { padding: 26px 21px; }
  .order-summary .button { font-size: 13px; }
  .next-step h2 { font-size: 26px; }
  .date-cards > div { padding-inline: 9px; }
  .date-cards span { font-size: 8px; }
  .date-cards b { font-size: 9px; }
  .funnel-page .button-calendar { font-size: 12px !important; padding-inline: 15px; gap: 12px; }
  .confirmation-pass { padding: 26px 23px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation: none !important; transition: none !important; }
}
