/* WEBSITE_RESOURCES_V2 artwork, with live text and accessible controls. */
@font-face { font-family: Quedora; src: url('assets/fonts/quedora-medium-v1.woff2') format('woff2'); font-weight: 500; font-display: swap; }
.compil-site {
  display: flow-root;
  --ink: #080808;
  --paper: #eee;
  --line: rgb(0 0 0 / 28%);
  --red: #f23030;
  --paper-image: image-set(url('assets/v2-paper-1280.webp') 1x, url('assets/v2-paper-2560.webp') 2x, url('assets/v2-paper-3840.webp') 3x);
  --pink-image: image-set(url('assets/v2-pink-480.webp?v=20261021branded') 1x, url('assets/v2-pink-960.webp?v=20261021branded') 2x, url('assets/v2-pink-1448.webp?v=20261021branded') 3x);
  background: #e9e9e7;
  color: var(--ink);
}
.compil-site ::selection { background: #ff3344; color: #000; }
.compil-site :focus-visible { outline-color: #080808; }
.compil-site .site-header { inset: 0 0 auto; min-height: 56px; padding: 0 22px; gap: 16px; }
.compil-site .site-header.is-scrolled { background: rgb(239 239 237 / 97%); border-bottom: 1px solid rgb(0 0 0 / 8%); }
.compil-site .brand img { width: 116px; }
.compil-site .site-nav { gap: 18px; }
.compil-site .site-nav a, .compil-site .site-nav button { font-size: 12px; }
.compil-site .language-toggle { position: absolute; top: 50px; right: 22px; padding: 0 4px; background: #eee; }
.compil-site .language-toggle button { color: #555; min-height: 32px; }
.compil-site .language-toggle button[aria-pressed="true"] { color: #000; }
.compil-site .outline-button { color: inherit; border-color: currentColor; min-height: 44px; font-size: 12px; padding: 10px 18px; }
.compil-site .event-list__action { font-family: var(--control); font-weight: 400; }
.compil-site .outline-button:hover { background: #080808; color: #fff; border-color: #080808; }
.compil-site .outline-button.primary-cta { --cta-background: #f23030; --cta-hover: #f23030; position: relative; min-height: 60px; max-width: 100%; padding: 16px 54px 16px 24px; border-color: var(--cta-background); background: var(--cta-background); color: #080808; font-size: 13px; line-height: 1.4; letter-spacing: 0; word-spacing: .12em; }
.compil-site .primary-cta::after { content: ''; position: absolute; right: 20px; top: calc(50% - 11px); width: 22px; height: 22px; background: currentColor; mask: url('assets/icons/arrow-up-right.svg') center / contain no-repeat; pointer-events: none; }
.compil-site .outline-button.primary-cta:hover { background: var(--cta-hover); border-color: currentColor; }
.compil-site .outline-button.primary-cta:focus-visible { outline: 2px solid #fff; outline-offset: 3px; box-shadow: 0 0 0 5px #080808; }
.compil-site .outline-button.primary-cta[data-i18n='requestCta'] { color: #fff; font-family: var(--control); font-weight: 400; font-size: 16px; font-kerning: none; line-height: 1.5; word-spacing: .16em; }
.compil-site .panel-action .primary-cta { --cta-background: #080808; --cta-hover: #262626; color: #fff; }
.compil-site .car-copy .primary-cta { color: #000; min-height: 48px; padding: 12px 42px 12px 14px; font-size: 11px; }
.compil-site .car-copy .primary-cta:hover { color: #000; }
.compil-site .car-copy .primary-cta::after { right: 14px; width: 18px; height: 18px; top: calc(50% - 9px); }
.compil-site .car-copy .primary-cta[data-i18n='carCta'] { color: #fff; font-family: var(--control); font-weight: 400; font-kerning: none; font-size: 15px; line-height: 1.4; word-spacing: .16em; min-height: 48px; padding: 8px 42px 8px 16px; }
.compil-site .car-copy .primary-cta[data-i18n='carCta']:hover { color: #fff; }
.compil-site .car-copy .primary-cta[data-i18n='carCta']::after { right: 16px; width: 18px; height: 18px; top: calc(50% - 9px); }
.compil-site[data-page='home'] { --hero-logo-height: calc(11.35vw - 1px); }
.compil-site[data-page='home'] .site-header:not(.past-hero) { top: var(--hero-header-top, var(--hero-logo-height)); color: #fff; }
.compil-site[data-page='home'] .site-header:not(.past-hero) .language-toggle { background: transparent; }
.compil-site[data-page='home'] .site-header:not(.past-hero) .language-toggle button { color: #fff; }
.compil-site[data-page='home'] .site-nav a, .compil-site[data-page='home'] .site-nav button { font-size: 14px; }
.design-hero { min-height: 0; background: #e8e8e6 var(--paper-image) center top / 1280px 720px repeat; }
.design-hero__brand { position: relative; height: var(--hero-logo-height); flex-shrink: 0; overflow: hidden; }
.design-wordmark { width: 104.58%; max-width: none; height: auto; margin-left: -2.45%; transform: translateY(-10.62%); }
.design-hero__scene { position: relative; isolation: isolate; min-height: 560px; height: calc(100svh - var(--hero-logo-height)); color: #fff; }
.design-hero__top { position: relative; padding: 112px 7.2% 100px; }
.design-hero h1 { max-width: 350px; font-size: 26px; line-height: .94; text-shadow: 0 1px 6px rgb(0 0 0 / 18%); }
.design-hero__actions { display: grid; gap: 8px; width: 260px; max-width: 100%; margin-top: 24px; }
.design-hero .outline-button { min-height: 44px; padding: 8px 16px; font-family: var(--control); font-size: 14px; font-weight: 400; font-kerning: none; line-height: 1.4; word-spacing: .16em; }
.design-hero .outline-button.primary-cta[data-i18n='requestCta'] { min-height: 48px; padding: 8px 42px 8px 16px; font-size: 15px; line-height: 1.4; }
.design-hero .primary-cta::after { right: 16px; top: calc(50% - 9px); width: 18px; height: 18px; }
.design-hero [data-i18n='calendarCta'] { background: #000; border-color: #000; color: #fff; }
.design-hero [data-i18n='calendarCta']:hover { background: #222; border-color: #222; }
.hero-invitation { display: grid; min-width: 0; }
.invitation-cta { display: inline-grid; gap: 6px; max-width: 100%; }
.invitation-note { margin: 0; max-width: 220px; font: 400 11px/1.4 var(--body); text-align: center; }
.hero-invitation .invitation-note, .invitation-cta .invitation-note { justify-self: center; }
.panel-action .invitation-note { color: #080808; }
#invitation-form .invitation-cta { justify-self: start; }
#invitation-form .invitation-cta .outline-button { justify-self: stretch; }
.design-hero__image { position: absolute; z-index: -1; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center bottom; }
.design-panel { position: relative; display: grid; grid-template-columns: 37.8% minmax(0, 1fr); grid-template-areas: 'heading copy' 'action media'; scroll-margin-top: 56px; }
.panel-heading { grid-area: heading; display: flex; align-items: end; justify-content: end; min-width: 0; padding: 130px 32px 30px 28px; background: #fff8fa var(--pink-image) center / 480px auto repeat; }
.panel-heading h2 { font-size: 56px; line-height: .88; text-align: right; max-width: 100%; }
.panel-copy { grid-area: copy; min-width: 0; display: flex; align-items: end; padding: 155px 40px 32px; background: #e8e8e6 var(--paper-image) center / 1280px 720px repeat; }
.panel-copy p { line-height: 1.12; }
.panel-action { grid-area: action; padding: 38px 40px 50px 28px; text-align: right; color: #fff; background: #ff3344 var(--red-image) center / cover; }
.panel-art { grid-area: media; position: relative; min-width: 0; overflow: hidden; pointer-events: none; }
.panel-art > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.panel-media { grid-area: media; position: relative; min-width: 0; width: 100%; aspect-ratio: 781 / 359; overflow: hidden; }
.club-panel { --red-image: image-set(url('assets/v2-red-club-480.webp?v=20261021branded') 1x, url('assets/v2-red-club-960.webp?v=20261021branded') 2x, url('assets/v2-red-club-1448.webp?v=20261021branded') 3x); }
.club-panel .panel-heading, .club-panel .panel-copy { min-height: 365px; }
.club-panel .statement { font-size: 23px; font-weight: 800; }
.club-panel .panel-media { aspect-ratio: 781 / 386; }
.next-up { position: relative; font-size: 28px; line-height: .92; margin-bottom: 16px; }
.next-up__dot { display: inline-block; width: 16px; height: 16px; background: #56e84a; border-radius: 50%; margin-right: 4px; }
.founders-panel { --red-image: image-set(url('assets/v2-red-club-480.webp?v=20261021branded') 1x, url('assets/v2-red-club-960.webp?v=20261021branded') 2x, url('assets/v2-red-club-1448.webp?v=20261021branded') 3x); }
.about-inset { color: #080808; text-align: left; scroll-margin-top: 80px; }
.founder-panel-copy { flex-direction: column; align-items: start; justify-content: end; gap: 20px; }
.founders-panel > .founder-panel-copy { padding-top: 32px; }
.founder-panel-copy .founder-attribution { margin: 28px 0 0; }
.founder-panel-copy .founder-cta { flex-shrink: 0; }
.founder-quote { margin: 0; }
.founders-panel .founder-quote p { margin: 0; }
.founder-attribution { display: block; margin-top: 26px; }
.founder-panel-copy .founder-name { margin: 0 0 4px; font: 900 16px/1.3 var(--display); text-transform: uppercase; letter-spacing: 0; }
.founder-panel-copy .founder-credentials { margin: 0; font: 400 12px/1.5 var(--prose-font); text-transform: uppercase; color: #5c5c5c; letter-spacing: 0; }
.founders-panel > .panel-media { aspect-ratio: 781 / 386; }
.standards-copy { font-size: 18px; font-weight: 800; }
.calendar-panel { --red-image: none; }
.calendar-panel .panel-copy { padding-bottom: 0; }
.calendar-panel .event-list { margin: 0; max-width: 720px; }
.calendar-panel .event-list__row { min-height: 49px; grid-template-columns: 64px minmax(0, 1fr) 85px; gap: 14px; font-size: 13px; padding: 0; }
.calendar-panel .event-list__row:last-child { border-bottom: 0; }
.calendar-panel .event-list__action, .calendar-panel .event-list__row b { font-size: 12px; }
.fleet { scroll-margin-top: 56px; }
.fleet-intro { display: grid; grid-template-columns: clamp(240px, 25%, 360px) minmax(0, 1fr); background: #e8e8e6 var(--paper-image) center / 1280px 720px repeat; }
.fleet-intro .panel-heading { grid-area: auto; }
.fleet-intro .panel-heading { min-height: 200px; padding: 28px 40px 24px 24px; background: none; }
.fleet-intro .panel-heading h2 { font-size: 22px; line-height: .94; }
.car-row { display: grid; grid-template-columns: clamp(240px, 25%, 360px) minmax(0, 1fr); }
.car-copy { display: flex; align-items: end; flex-direction: column; min-width: 0; padding: 24px 40px 48px 24px; text-align: right; color: #fff; background: #000; }
.car-copy h3 { font: 900 26px/.98 var(--display); }
.car-specs { font: 900 16px/1.05 var(--display); }
.car-specs { margin: 30px 0 45px; }
.car-copy .outline-button { margin-top: auto; max-width: 100%; font-size: 11px; }
.car-actions { display: grid; gap: 10px; margin-top: auto; max-width: 100%; width: 260px; }
.car-pricing { display: grid; gap: 4px; min-width: 0; }
.car-price { font: 800 24px/1.15 var(--display); }
.car-price-note { font: 400 11px/1.4 var(--control); }
.engine-player { min-width: 0; }
.engine-button { display: flex; align-items: center; justify-content: center; gap: 10px; width: 100%; min-height: 44px; padding: 10px 14px; border: 1px solid #fff; background: #000; color: #fff; font: 400 11px/1.3 var(--control); }
.engine-button:hover { background: #292929; }
.engine-button:focus-visible { outline: 2px solid #fff; outline-offset: 4px; }
.engine-button__icon { flex: 0 0 20px; height: 20px; background: currentColor; mask: url('assets/icons/volume-2.svg') center / contain no-repeat; }
.engine-button[data-state='playing'] .engine-button__icon { mask-image: url('assets/icons/square.svg'); }
.engine-button[data-state='loading'] .engine-button__icon { mask-image: url('assets/icons/loader-circle.svg'); animation: engine-loading 1s linear infinite; }
.engine-status { margin-top: 8px; padding: 8px; background: #111; color: #fff; font-size: 13px; line-height: 1.4; text-align: left; }
.engine-player audio { display: none; }
@keyframes engine-loading { to { transform: rotate(360deg); } }
.car-image { min-width: 0; aspect-ratio: 781 / 453; background: #000; }
.car-image img { width: 100%; height: 100%; object-fit: contain; }
.agenda-panel { --red-image: image-set(url('assets/v2-red-agenda-480.webp') 1x, url('assets/v2-red-agenda-960.webp') 2x, url('assets/v2-red-agenda-1448.webp') 3x); }
.day-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 25px; list-style: none; margin: 0; padding: 0; }
.day-grid h3 { font-size: 16px; line-height: 1.1; }
.day-grid p { font-size: 14px; font-weight: 500; }
.agenda-panel .panel-heading, .agenda-panel .panel-copy { min-height: 395px; }
.agenda-panel .panel-action { color: #080808; }
.action-copy { font-size: 18px; line-height: 1.1; font-weight: 800; margin-bottom: 25px; }
.package-panel { --red-image: image-set(url('assets/v2-red-package-480.webp') 1x, url('assets/v2-red-package-960.webp') 2x, url('assets/v2-red-package-1448.webp') 3x); }
.package-panel .panel-heading, .package-panel .panel-copy { min-height: 435px; }
.package-panel .panel-copy { padding-top: 100px; padding-bottom: 24px; }
.package-panel h3 { font-size: 15px; margin-bottom: 10px; }
.package-in p, .package-out p { font-size: 15px; font-weight: 500; line-height: 1.18; }
.package-checklist { list-style: none; padding: 0; margin: 0; display: grid; gap: 3px; font: 400 16px/1.5 var(--control); font-kerning: none; font-variant-ligatures: none; text-transform: uppercase; letter-spacing: 0; word-spacing: .12em; }
.package-checklist li { display: grid; grid-template-columns: 16px minmax(0, 1fr); gap: 10px; align-items: start; }
.package-checklist li::before { content: '+'; font: inherit; }
.package-checklist--out li::before { content: '\2212'; }
.package-panel h3 { margin-bottom: 18px; }
.package-panel .panel-art > img { object-position: center 65%; }
.package-out { position: absolute; inset: 30px 40px auto; color: #fff; max-width: 640px; text-shadow: 0 1px 5px #000; }
.package-out::before { position: absolute; inset: -30px -40px -35px; content: ''; background: linear-gradient(rgb(0 0 0 / 75%), transparent); z-index: -1; }
.package-out { isolation: isolate; }
.faq-panel { --red-image: image-set(url('assets/v2-red-faq-480.webp') 1x, url('assets/v2-red-faq-960.webp') 2x, url('assets/v2-red-faq-1448.webp') 3x); }
.faq-panel .panel-heading, .faq-panel .panel-copy { min-height: 435px; }
.faq-panel .panel-copy { padding-top: 100px; padding-bottom: 30px; }
.faq-panel .faq-list { border: 0; width: 100%; }
.faq-panel .faq-list details + details { border: 0; }
.faq-panel .faq-list summary { min-height: 44px; padding: 8px 25px 8px 0; font-family: Michroma, Arial, sans-serif; font-size: 15px; font-weight: 400; line-height: 1.6; text-transform: none; }
.faq-panel .faq-list summary::after { right: 2px; }
.faq-panel .faq-list details p { font: 400 16px/1.6 var(--control); font-kerning: none; font-variant-ligatures: none; text-transform: none; letter-spacing: 0; word-spacing: .08em; padding: 6px 28px 18px 0; }
.faq-panel .panel-media { display: flex; flex-direction: column; justify-content: end; }
.design-footer { position: relative; display: flex; justify-content: end; align-items: center; gap: 22px; padding: 20px; color: #000; }
.design-footer > a, .design-footer > button { display: flex; min-height: 44px; align-items: center; font: 400 12px var(--control); text-decoration: none; border: 0; background: transparent; padding: 0; }
.design-footer img { width: 88px; height: auto; }
.design-footer__legal { display: flex; flex-wrap: wrap; align-items: center; column-gap: 8px; max-width: min(100%, 36rem); font: 400 12px var(--control); line-height: 1.4; }
.design-footer__legal a, .design-footer__legal span, .design-footer__legal button { display: inline-flex; align-items: center; min-height: 44px; color: inherit; text-decoration: none; }
.design-footer__legal button { border: 0; background: transparent; padding: 0; font: inherit; cursor: pointer; }
.compil-site .invite-dialog { --invite-surface: #eee var(--paper-image) center / 1280px 720px repeat; color: #080808; border-color: #080808; }
.compil-site .invite-dialog__header > img { width: 140px; }
.compil-site .invite-dialog h2 { font-size: 32px; }
.compil-site #invitation-form input, .compil-site #invitation-form select, .compil-site #invitation-form textarea { color: #080808; }
.compil-site #invitation-form select { color-scheme: light; }
.compil-site #invitation-form select option { color: #080808; background: #eee; }
.compil-site .form-hint { color: #a31520; }
.compil-site[data-page='about'] { background: #eee var(--paper-image) center / 1280px 720px repeat; }
.compil-site .about-copy { font-size: 16px; line-height: 1.4; }

@media (min-width: 1700px) {
  .panel-heading h2 { font-size: 70px; }
  .panel-heading { padding-right: 44px; }
  .panel-copy { padding: 190px 52px 40px; }
  .club-panel .panel-heading, .club-panel .panel-copy { min-height: 470px; }
  .club-panel .statement { font-size: 28px; }
  .standards-copy { font-size: 23px; }
  .calendar-panel .event-list__row { min-height: 60px; font-size: 15px; }
  .car-copy { padding-right: 52px; }
  .agenda-panel .panel-heading, .agenda-panel .panel-copy { min-height: 470px; }
  .day-grid p, .package-in p, .package-out p { font-size: 17px; }
  .faq-panel .panel-heading, .faq-panel .panel-copy, .package-panel .panel-heading, .package-panel .panel-copy { min-height: 540px; }
  .faq-panel .faq-list summary { font-size: 17px; min-height: 44px; }
}
@media (max-width: 1200px) {
  .compil-site .site-nav { gap: 12px; }
  .compil-site .site-nav a, .compil-site .site-nav button { font-size: 11px; }
  .panel-heading { padding: 110px 24px 28px 20px; }
  .panel-heading h2 { font-size: 42px; }
  .panel-copy { padding: 120px 28px 28px; }
  .club-panel .statement { font-size: 19px; }
  .standards-copy { font-size: 16px; }
  .panel-action { padding: 30px 28px 40px 20px; }
  .next-up { font-size: 23px; }
  .calendar-panel .event-list__row { grid-template-columns: 45px minmax(0, 1fr) 68px; gap: 8px; min-height: 59px; }
  .car-copy { padding: 28px 28px 35px 20px; }
  .car-specs { margin: 24px 0; }
  .day-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
  .package-out { inset: 25px 28px auto; }
  .package-panel .panel-media { min-height: 280px; }
  .faq-panel .faq-list summary { font-size: 15px; }
}
@media (max-width: 900px) {
  .compil-site .site-header { min-height: 64px; padding: 0 20px; }
  .compil-site .header-tools { gap: 12px; }
  .compil-site .language-toggle { position: static; background: transparent; padding: 0; }
  .compil-site .language-toggle button { min-height: 44px; }
  .compil-site .menu-toggle { background: transparent; }
  .compil-site .site-nav { top: 64px; left: 0; right: 0; background: #eee; border-bottom: 1px solid #aaa; max-height: calc(100svh - 64px); overflow-y: auto; }
  .compil-site .site-nav a, .compil-site .site-nav button { font-size: 13px; }
  .compil-site[data-page='home'] .site-header:not(.past-hero) .menu-toggle { border-color: #fff; }
  .compil-site[data-page='home'] .site-header:not(.past-hero) .site-nav { top: calc(var(--hero-header-top, var(--hero-logo-height)) + 64px); max-height: calc(100svh - var(--hero-header-top, var(--hero-logo-height)) - 64px); }
  .compil-site .site-nav[data-open='true'] { color: #080808; }
  .design-hero__scene { min-height: 610px; height: calc(100svh - var(--hero-logo-height) - 24px); }
  .design-hero__top { padding: 100px 28px 180px; }
  .design-hero h1 { max-width: 370px; font-size: 24px; line-height: 1; }
  .design-hero__image { object-position: 48% center; }
  .design-hero__actions { width: 176px; gap: 6px; margin-top: 18px; }
  .design-hero .outline-button { min-height: 36px; padding: 4px 8px; font-size: 12px; line-height: 1.35; word-spacing: 0; }
  .design-hero .outline-button.primary-cta[data-i18n='requestCta'] { min-height: 38px; padding: 4px 26px 4px 8px; font-size: 12px; line-height: 1.35; }
  .design-hero .primary-cta::after { width: 12px; height: 12px; right: 8px; top: calc(50% - 6px); }
  .compil-site .car-copy .primary-cta[data-i18n='carCta'] { min-height: 38px; padding: 4px 26px 4px 8px; font-size: 12px; line-height: 1.35; word-spacing: 0; }
  .compil-site .car-copy .primary-cta[data-i18n='carCta']::after { width: 12px; height: 12px; right: 8px; top: calc(50% - 6px); }
  .panel-heading h2 { font-size: 34px; }
  .panel-heading { padding-left: 16px; padding-right: 22px; }
  .panel-copy { padding-left: 26px; padding-right: 26px; }
  .club-panel .statement { font-size: 17px; }
  .standards-copy { line-height: 1.4 !important; }
  .next-up { font-size: 22px; }
  .panel-action { padding: 30px 22px; }
  .calendar-panel .event-list__row { grid-template-columns: minmax(0, 1fr) 70px; font-size: 14px; padding: 10px 0; }
  .calendar-panel .event-list__row > b { display: none; }
  .calendar-panel .panel-copy { padding-top: 80px; }
  .fleet-intro .panel-heading h2 { font-size: 25px; }
  .car-copy { padding: 26px 22px; }
  .car-copy h3 { font-size: 24px; }
  .car-image { aspect-ratio: auto; }
  .car-copy .outline-button { font-size: 11px; padding: 10px; }
  .package-panel .panel-media { min-height: 330px; }
  .faq-panel .faq-list summary { min-height: 44px; }
}
@media (max-width: 700px) {
  .design-hero__top { padding-left: 24px; padding-right: 24px; }
  .design-hero h1 { max-width: 330px; }
  #invitation-form .invitation-cta { justify-self: stretch; }
  .design-panel { grid-template-columns: minmax(0, 1fr); grid-template-areas: 'heading' 'copy' 'media' 'action'; scroll-margin-top: 64px; }
  .panel-heading, .club-panel .panel-heading, .agenda-panel .panel-heading, .package-panel .panel-heading, .faq-panel .panel-heading { min-height: 0; padding: 64px 24px 28px; justify-content: start; }
  .panel-heading h2 { font-size: 42px; text-align: left; line-height: .92; }
  .panel-copy, .club-panel .panel-copy, .calendar-panel .panel-copy, .agenda-panel .panel-copy, .package-panel .panel-copy, .faq-panel .panel-copy { min-height: 0; padding: 30px 24px 36px; }
  .club-panel .statement { font-size: 20px; line-height: 1.2; }
  .standards-copy { font-size: 17px; line-height: 1.35 !important; }
  .club-panel .statement br, .standards-copy br { display: initial; }
  .panel-media, .club-panel .panel-media { aspect-ratio: 1.7; }
  .panel-action { padding: 30px 24px; text-align: left; }
  .next-up { font-size: 28px; margin-bottom: 20px; }
  .calendar-panel .event-list__row { grid-template-columns: minmax(0, 1fr) 78px; font-size: 15px; min-height: 80px; }
  .calendar-panel .event-list__action { font-size: 12px; }
  .fleet-intro { grid-template-columns: minmax(0, 1fr); }
  .fleet-intro .panel-heading { min-height: 0; padding: 64px 24px 36px; }
  .fleet-intro .panel-heading h2 { font-size: 32px; }
  .fleet-intro__space { display: none; }
  .car-row { grid-template-columns: minmax(0, 1fr); }
  .car-image { grid-row: 1; aspect-ratio: 781 / 453; }
  .car-copy { align-items: start; text-align: left; padding: 28px 24px 32px; }
  .car-copy h3 { font-size: 24px; }
  .car-copy .outline-button { font-size: 12px; padding: 12px 16px; }
  .car-specs { margin: 24px 0 28px; }
  .day-grid { gap: 28px 24px; }
  .day-grid h3 { font-size: 17px; }
  .day-grid p { font-size: 15px; line-height: 1.25; margin-top: 6px; }
  .package-in p, .package-out p { font-size: 15px; line-height: 1.3; }
  .package-in br, .package-out br { display: block; margin-bottom: 3px; content: ''; }
  .package-panel .panel-media { aspect-ratio: auto; min-height: 380px; }
  .package-out { position: relative; inset: auto; padding: 30px 24px 130px; }
  .package-out::before { inset: 0; }
  .faq-panel .faq-list summary { font-size: 14px; min-height: 54px; padding-top: 12px; padding-bottom: 12px; }
  .faq-panel .faq-list details + details { border-top: 1px solid rgb(0 0 0 / 15%); }
  .faq-panel .panel-media { aspect-ratio: 2.2; }
  .design-footer { justify-content: space-between; padding: 12px 24px; }
  .design-footer__legal { flex-basis: 100%; max-width: 100%; }
  .compil-site .invite-dialog h2 { font-size: 28px; }
}
@media (max-width: 360px) {
  .panel-heading h2 { font-size: 36px; }
  .design-hero h1 { font-size: 21px; }
  .day-grid { grid-template-columns: minmax(0, 1fr); }
}

/* One complete base slide preserves the original red-to-photo alignment. */
@media (min-width: 1101px) {
  .design-panel { isolation: isolate; background: #e9e9e7; min-height: 56.25vw; grid-template-columns: 37.76041667% minmax(0, 1fr); grid-template-rows: var(--art-top, 1054fr) var(--art-bottom, 1106fr); }
  .club-panel { --art-top: 973fr; --art-bottom: 1187fr; }
  .package-panel, .faq-panel { --art-top: 1160fr; --art-bottom: 1000fr; }
  .design-panel > .panel-art { grid-area: 1 / 1 / -1 / -1; overflow: visible; z-index: 0; }
  .design-panel > :not(.panel-art) { z-index: 1; }
  .design-panel > .panel-art > img { object-fit: fill; }
  .design-panel > .panel-heading, .design-panel > .panel-copy { min-height: 0; padding-top: 32px; background: none; }
  .design-panel > .panel-action, .design-panel > .panel-media { background: none; }
  .design-panel > .panel-media { min-height: 0; aspect-ratio: auto; }
}

/* Match the grey texture and grain scale of the following fleet section. */
.design-panel.calendar-panel { grid-template-areas: 'heading copy'; grid-template-columns: minmax(0, 1fr) minmax(0, 1.65fr); grid-template-rows: auto; align-content: center; gap: 28px 48px; min-height: 720px; padding: 96px 5%; background: #e8e8e6 var(--paper-image) center / 1280px 720px repeat; color: #000; --line: rgb(0 0 0 / 22%); }
.calendar-panel > .panel-art, .calendar-panel > .panel-media { display: none; }
.calendar-panel > .panel-heading, .calendar-panel > .panel-copy { min-height: 0; padding: 0; background: none; color: #000; align-items: start; }
.calendar-panel .event-list { max-width: none; }
.calendar-panel .event-list__row { grid-template-columns: 80px minmax(0, 1fr) 90px; gap: 20px; min-height: 80px; font-size: 17px; padding: 12px 0; }
.calendar-panel .event-list__circuit { display: flex; align-items: center; justify-content: center; }
.calendar-panel .event-list__circuit img { display: block; width: 80px; height: 46px; object-fit: contain; }
.calendar-panel .event-page-link { color: inherit; text-decoration: none; }
.calendar-panel .event-page-link:hover { color: #b82020; }
.calendar-panel .event-list__row:first-child { padding-top: 0; }
.calendar-panel .event-list__action { min-height: 44px; color: #000; font-size: 13px; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 4px; }
.calendar-panel .event-list__action:hover { color: #b82020; }
@media (min-width: 701px) and (max-width: 1100px) {
  .design-panel.calendar-panel { grid-template-columns: minmax(0, 1fr); grid-template-areas: 'heading' 'copy'; }
}
@media (max-width: 700px) {
  .design-panel.calendar-panel { grid-template-columns: minmax(0, 1fr); grid-template-areas: 'heading' 'copy'; min-height: 0; padding: 64px 24px; gap: 28px; }
  .calendar-panel .event-list__row { grid-template-columns: 64px minmax(0, 1fr); gap: 0 16px; font-size: 16px; min-height: 88px; padding: 16px 0; }
  .calendar-panel .event-list__circuit { grid-row: span 2; align-self: start; padding-top: 4px; }
  .calendar-panel .event-list__circuit img { width: 64px; height: 44px; }
  .calendar-panel .event-list__status { grid-column: 2; text-align: left; }
}

/* Keep the quote and its CTA together above the group photograph. */
.founders-panel > .panel-art { grid-area: media; overflow: hidden; }
.founders-panel > .panel-art > img { object-fit: cover; object-position: center 45%; }
.founders-panel > .panel-heading { background: #fff8fa; }
.founders-panel > .panel-heading h2 { font-size: 32px; line-height: .94; }
.founders-panel > .panel-copy { background: #e8e8e6; }
.founders-panel > .panel-action { background: #ff3344 var(--red-image) center / cover; }
.club-panel .standards-copy { font-family: var(--display); font-weight: 800; line-height: 1.2; }
@media (min-width: 1101px) {
  .slide-deck .design-panel.club-panel { min-height: 100%; }
  .club-panel > .panel-heading { padding-bottom: 24px; }
  .club-panel .panel-heading h2 { font-size: 48px; }
  .founders-panel { grid-template-rows: minmax(min-content, 1fr) minmax(320px, 1.1fr); }
  .founders-panel > .panel-heading { padding: 64px 40px 40px 28px; }
  .founders-panel > .panel-heading h2 { font-size: 48px; }
  .founders-panel > .founder-panel-copy { position: relative; padding: 64px 40px 40px; }
  /* Stay in the testimonial column. An absolute offset of 100% + 12px drops the
     link into the media cell, and that later sibling paints over the click. */
  .compil-site .founder-panel-copy .founder-cta { position: relative; z-index: 2; min-height: 44px; max-width: 100%; padding: 10px 42px 10px 16px; font-size: 12px; color: #fff; }
  .founder-panel-copy .founder-cta::after { right: 14px; width: 16px; height: 16px; top: calc(50% - 8px); }
}
@media (max-width: 700px) {
  .founders-panel > .panel-heading h2 { font-size: 42px; }
  .founders-panel > .panel-action { display: none; }
  .founders-panel > .panel-media { aspect-ratio: 4 / 3; }
}
@media (max-width: 360px) {
  .founders-panel > .panel-heading h2 { font-size: 38px; }
}
.invite-dialog .form-privacy{font:400 14px/1.6 Bootzy,Arial,sans-serif;word-spacing:.08em;margin:8px 0 20px;text-transform:none}
.form-privacy a{text-decoration:underline;text-underline-offset:3px}
