/* FIX11HZ74S: the guest page on computers (1024px and wider), built from the approved design in
   design/hz74s-header-and-guest-page/Main.dc.html. Phones and small tablets keep the existing layout: every rule that
   changes layout is inside the min-width query, and the new pieces are hidden below it. */

/* ---------- Below 1024px: the new pieces stay out of the phone layout ---------- */
@media (max-width: 1023.98px) {
  #publicHeritageLine, #heroSeats, #heritageQuoteBand, #guestDinner, #registrationStepbar, .order-trust,
  .public-desktop-footer, .public-timeline-icon { display: none !important; }
}

@media (min-width: 1024px) {
  body[data-guidon-build] {
    --gd-navy: #0b1d33; --gd-scarlet: #8b1e2d; --gd-gold: #c9a34c; --gd-gold-soft: #e6cb84; --gd-ivory: #f3f0ea;
    --gd-line: #ddcfae; --gd-muted: #56606d; --gd-text: #3d4652; --gd-gutter: 48px;
    display: grid !important; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); column-gap: 24px; align-items: start;
    background: var(--gd-ivory) !important;
  }
  body[data-guidon-build] > * { grid-column: 1 / -1; min-width: 0; }
  body[data-guidon-build] > script, body[data-guidon-build] > dialog:not([open]) { display: none; }
  body[data-guidon-build] > .container,
  body[data-guidon-build] > section > .container { max-width: none !important; width: auto !important; margin-left: var(--gd-gutter) !important; margin-right: var(--gd-gutter) !important; padding-left: 0 !important; padding-right: 0 !important; }

  /* Page order on computers: hero, facts, quote, registration, the evening, dinner, venue and hotel, FAQ beside contact. */
  body[data-guidon-build] > #top { order: 1; }
  body[data-guidon-build] > #eventDetails { order: 2; }
  body[data-guidon-build] > #heritageQuoteBand { order: 3; }
  /* HZ74T (owner): the evening, then venue and hotel, above registration; FAQ and contact last. */
  body[data-guidon-build] > #guestTimeline { order: 4; }
  body[data-guidon-build] > #venueParking { order: 5; }
  body[data-guidon-build]:has(#guestHotel:not([hidden])) > #venueParking { grid-column: 1; }
  body[data-guidon-build] > #guestHotel { order: 6; grid-column: 2; }
  body[data-guidon-build] > .registration-intro { order: 7; display: none !important; }
  body[data-guidon-build] > main.main-layout { order: 8; }
  body[data-guidon-build] > .registration-confidence-after { order: 9; display: none !important; }
  body[data-guidon-build] > #guestDinner { order: 10; }
  body[data-guidon-build] > #guestFaq { order: 11; grid-column: 1; }
  body[data-guidon-build] > #guestContact { order: 11; grid-column: 2; }
  body[data-guidon-build] > .public-desktop-footer { order: 20; }
  body[data-guidon-build] > .guidon-hosting-credit { order: 19; }

  /* ---------- Hero: emblem beside the title; countdown and seats card on the right ---------- */
  body[data-guidon-build] > #top.registration-public-hero {
    position: relative !important; overflow: hidden !important; min-height: 0 !important; height: auto !important;
    display: grid !important; grid-template-columns: minmax(0, 1fr) 330px; column-gap: 40px; align-items: center;
    padding: 0 var(--gd-gutter) 104px !important; margin: 0 !important; text-align: left !important;
    /* The dress-blues stripe (gold, scarlet, gold) along the bottom of the hero. */
    background: linear-gradient(to top, var(--gd-gold) 0 3px, var(--gd-scarlet) 3px 15px, var(--gd-gold) 15px 18px, var(--gd-navy) 18px) !important;
  }
  body[data-guidon-build] > #top .public-nav {
    grid-column: 1 / -1; max-width: none !important; width: auto !important; margin: 0 calc(-1 * var(--gd-gutter)) 40px !important;
    padding: 14px var(--gd-gutter) !important; border-bottom: 1px solid rgba(201, 163, 76, .35); position: relative; z-index: 2;
  }
  body[data-guidon-build] > #top .hero-curve-transition,
  body[data-guidon-build] > #top .hero-gold-divider,
  body[data-guidon-build] > #top .hero-low-inventory { display: none !important; }
  body[data-guidon-build] > #top .hero-outline-ega {
    display: block !important; position: absolute !important; right: -70px !important; left: auto !important; top: 20px !important; bottom: auto !important;
    width: 540px !important; height: auto !important; max-width: none !important; opacity: .07 !important; filter: invert(1) !important; transform: none !important; pointer-events: none; z-index: 0;
  }
  body[data-guidon-build] > #top .registration-hero-inner {
    grid-column: 1; grid-row: 2; position: relative; z-index: 1; max-width: none !important; width: auto !important; margin: 0 !important; padding: 0 !important;
    display: grid !important; grid-template-columns: 168px minmax(0, 1fr); grid-auto-rows: auto; align-content: center; column-gap: 34px; row-gap: 12px; align-items: center; justify-items: start; text-align: left !important; min-height: 0 !important; height: auto !important;
  }
  body[data-guidon-build] > #top .registration-hero-inner > * { grid-column: 2; margin-left: 0 !important; margin-right: 0 !important; text-align: left !important; }
  body[data-guidon-build] > #top .registration-hero-inner > #combinedHostEmblem {
    grid-column: 1; grid-row: 1 / span 4; align-self: center; width: 168px !important; height: 168px !important; max-width: none !important; object-fit: contain; margin: 0 !important;
  }
  body[data-guidon-build] > #top .hero-heritage-line:not([hidden]) {
    display: block !important; margin: 0 !important; font-size: 13px; font-weight: 800; letter-spacing: .18em; text-transform: uppercase; color: var(--gd-gold-soft);
  }
  body[data-guidon-build] > #top .event-host-name-stack { justify-content: flex-start !important; align-items: flex-start !important; margin: 0 !important; }
  body[data-guidon-build] > #top .event-host-name-stack:empty { display: none !important; }
  body[data-guidon-build] > #top #publicHeroTitle {
    margin: 0 !important; font-family: Georgia, "Times New Roman", serif !important; font-size: clamp(34px, 3.2vw, 48px) !important; line-height: 1.12 !important; color: #fff !important; letter-spacing: -.01em;
  }
  body[data-guidon-build] > #top .hero-event-meta {
    display: flex !important; align-items: center; gap: 10px; margin: 0 !important; font-size: 19px !important; color: #d7dee8 !important; justify-content: flex-start !important;
  }
  body[data-guidon-build] > #top .hero-event-meta::before { content: ""; width: 56px; height: 2px; background: var(--gd-gold); margin-right: 4px; }
  body[data-guidon-build] > #top .hero-actions { justify-content: flex-start !important; margin-top: 10px !important; gap: 14px !important; }
  body[data-guidon-build] > #top .hero-actions .btn { min-height: 52px !important; padding: 0 26px !important; border-radius: 12px !important; font-size: 17px !important; }
  body[data-guidon-build] > #top .hero-actions .hero-detail-button { display: none !important; } /* HZ74T (owner): removed on computers */

  body[data-guidon-build] > #top .hero-countdown {
    grid-column: 2; grid-row: 2; position: relative !important; inset: auto !important; transform: none !important; z-index: 1;
    width: auto !important; margin: 0 !important; padding: 24px 26px !important; box-sizing: border-box;
    display: grid !important; grid-template-columns: auto 1fr; align-items: baseline; column-gap: 12px; row-gap: 14px; text-align: left !important;
    background: rgba(11, 29, 51, .72) !important; border: 1px solid rgba(201, 163, 76, .6) !important; border-radius: 18px !important; box-shadow: none !important;
  }
  body[data-guidon-build] > #top .hero-countdown .hero-countdown-icon,
  body[data-guidon-build] > #top .hero-countdown .hero-mini-divider { display: none !important; }
  body[data-guidon-build] > #top .hero-countdown #publicCountdownNumber { grid-column: 1; grid-row: 1; order: 0; font-family: Georgia, serif !important; font-size: 58px !important; line-height: 1 !important; color: #fff !important; margin: 0 !important; }
  body[data-guidon-build] > #top .hero-countdown .hero-countdown-label { grid-column: 2; grid-row: 1; font-size: 16px !important; font-weight: 700 !important; letter-spacing: 0 !important; text-transform: none !important; color: var(--gd-gold-soft) !important; margin: 0 !important; }
  body[data-guidon-build] > #top .hero-seats:not([hidden]) { grid-column: 1 / -1; display: flex; flex-direction: column; gap: 10px; }
  body[data-guidon-build] > #top .hero-seats, body[data-guidon-build] > #top .hero-seats * { font-family: inherit !important; letter-spacing: 0 !important; text-transform: none !important; }
  body[data-guidon-build] > #top .hero-seats { font-family: "Source Sans 3", "Segoe UI", system-ui, sans-serif !important; }
  body[data-guidon-build] > #top .hero-seats p { margin: 0; font-size: 15px !important; line-height: 1.4 !important; color: #d7dee8; }
  body[data-guidon-build] > #top .hero-seats strong { font-size: inherit !important; line-height: inherit !important; font-weight: 700 !important; display: inline !important; margin: 0 !important; }
  body[data-guidon-build] > #top .hero-seats-left { font-size: 15px !important; }
  body[data-guidon-build] > #top .hero-seats strong { color: #fff; }
  body[data-guidon-build] > #top .hero-seats-line { display: flex; justify-content: space-between; gap: 12px; }
  body[data-guidon-build] > #top .hero-seats-left { color: var(--gd-gold-soft); font-weight: 700; }
  body[data-guidon-build] > #top .hero-seats-bar { height: 8px; border-radius: 4px; background: rgba(255, 255, 255, .14); overflow: hidden; }
  body[data-guidon-build] > #top .hero-seats-bar span { display: block; height: 100%; background: var(--gd-gold); border-radius: 4px; }
  body[data-guidon-build] > #top .hero-seats-close[hidden] { display: none; }

  /* ---------- Event facts: one strip overlapping the stripe ---------- */
  body[data-guidon-build] > #eventDetails.landing-overview {
    position: relative; z-index: 3; margin: -58px var(--gd-gutter) 0 !important; max-width: none !important; width: auto !important; padding: 0 !important;
    display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)) !important; gap: 0 !important;
    background: #fff !important; border: 1px solid var(--gd-line) !important; border-radius: 18px !important; box-shadow: 0 14px 34px rgba(11, 29, 51, .10) !important;
  }
  body[data-guidon-build] > #eventDetails .event-detail-card {
    display: flex !important; flex-direction: column !important; align-items: flex-start !important; justify-content: flex-start !important; gap: 4px !important;
    min-height: 0 !important; height: auto !important; margin: 0 !important; padding: 20px 26px !important; text-align: left !important;
    background: transparent !important; border: 0 !important; border-right: 1px solid #ece4cf !important; border-radius: 0 !important; box-shadow: none !important; transform: none !important;
  }
  body[data-guidon-build] > #eventDetails .event-detail-card:last-child { border-right: 0 !important; }
  body[data-guidon-build] > #eventDetails .detail-star-divider { display: none !important; }
  /* HZ74T (owner): the card icons are back, above each label. */
  body[data-guidon-build] > #eventDetails .event-detail-icon {
    display: flex !important; align-items: center; justify-content: center; width: 40px !important; height: 40px !important; margin: 0 0 8px !important; padding: 0 !important;
    border-radius: 50%; background: #f6efdc !important; color: #8b6d2a !important; border: 0 !important; box-shadow: none !important; position: static !important;
  }
  body[data-guidon-build] > #eventDetails .event-detail-icon svg { width: 22px !important; height: 22px !important; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
  body[data-guidon-build] > #eventDetails .event-detail-icon.attire-icon svg { width: 28px !important; height: 18px !important; fill: currentColor; stroke: none; }
  body[data-guidon-build] > #eventDetails .event-detail-card > span:not(.event-detail-icon) { font-size: 12px !important; font-weight: 800 !important; letter-spacing: .14em !important; text-transform: uppercase !important; color: #6e5518 !important; margin: 0 !important; }
  body[data-guidon-build] > #eventDetails .event-detail-card strong { font-family: inherit !important; font-size: 17px !important; line-height: 1.35 !important; color: var(--gd-navy) !important; margin: 0 !important; text-align: left !important; }
  body[data-guidon-build] > #eventDetails .event-detail-card small { font-size: 14px !important; color: var(--gd-muted) !important; text-align: left !important; }

  /* ---------- Heritage quote ---------- */
  body[data-guidon-build] > #heritageQuoteBand:not([hidden]) { display: flex; align-items: center; gap: 28px; margin: 40px var(--gd-gutter) 0; }
  body[data-guidon-build] > #heritageQuoteBand::before,
  body[data-guidon-build] > #heritageQuoteBand::after { content: ""; flex: 1; height: 1px; background: var(--gd-gold); }
  body[data-guidon-build] > #heritageQuoteBand figure { margin: 0; max-width: 860px; text-align: center; display: flex; flex-direction: column; gap: 8px; }
  body[data-guidon-build] > #heritageQuoteBand blockquote { margin: 0; font-family: Georgia, serif; font-style: italic; font-size: 21px; line-height: 1.5; color: var(--gd-navy); }
  body[data-guidon-build] > #heritageQuoteBand figcaption { font-size: 13px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; color: #6e5518; }
  body[data-guidon-build] > #heritageQuoteBand figcaption[hidden] { display: none; }

  /* ---------- Registration: steps across the top, summary beside it and in view while scrolling ---------- */
  body[data-guidon-build] > main.main-layout {
    margin: 56px var(--gd-gutter) 0 !important; padding: 0 !important; max-width: none !important; width: auto !important;
    grid-template-columns: minmax(0, 2fr) minmax(300px, 1fr) !important; gap: 24px !important; align-items: start !important;
  }
  body[data-guidon-build] > main.main-layout > .order-card { position: sticky !important; top: 20px !important; }
  body[data-guidon-build] .registration-card { padding: 0 !important; overflow: hidden !important; }
  body[data-guidon-build] .registration-card > :not(.registration-stepbar) { margin-left: 34px !important; margin-right: 34px !important; }
  body[data-guidon-build] .registration-card > .form-actions { margin-bottom: 30px !important; }
  body[data-guidon-build] .registration-card > .step.active:last-of-type { margin-bottom: 30px !important; }
  body[data-guidon-build] #registrationStepbar {
    display: flex; align-items: center; margin: 0 0 26px; padding: 18px 30px; list-style: none; background: #fbf8f1; border-bottom: 1px solid #ece4cf;
  }
  body[data-guidon-build] #registrationStepbar li { display: flex; align-items: center; gap: 10px; flex: 1; min-width: 0; font-size: 15px; font-weight: 600; color: var(--gd-muted); white-space: nowrap; }
  body[data-guidon-build] #registrationStepbar li:last-child { flex: 0 0 auto; }
  body[data-guidon-build] #registrationStepbar li::after { content: ""; flex: 1; height: 2px; background: #e4dcc6; margin-right: 10px; min-width: 12px; }
  body[data-guidon-build] #registrationStepbar li:last-child::after { display: none; }
  body[data-guidon-build] #registrationStepbar li span {
    width: 32px; height: 32px; flex-shrink: 0; border-radius: 50%; display: flex; align-items: center; justify-content: center;
    font-size: 15px; font-weight: 800; background: #fff; color: var(--gd-muted); border: 2px solid #d8d1bf; box-sizing: border-box;
  }
  body[data-guidon-build] #registrationStepbar li.is-done span { background: var(--gd-navy); border-color: var(--gd-navy); color: #fff; }
  body[data-guidon-build] #registrationStepbar li.is-done::after { background: var(--gd-gold); }
  body[data-guidon-build] #registrationStepbar li.is-current { color: var(--gd-navy); font-weight: 800; }
  body[data-guidon-build] #registrationStepbar li.is-current span { background: var(--gd-scarlet); border-color: var(--gd-scarlet); color: #fff; }
  body[data-guidon-build] .registration-card .section-heading .progress { display: none !important; }
  body[data-guidon-build] .order-card { border-top: 4px solid var(--gd-scarlet) !important; }
  body[data-guidon-build] .order-card .security-note { display: none !important; }
  body[data-guidon-build] .order-card .order-trust { display: flex; flex-direction: column; gap: 10px; margin: 16px 0 0; padding: 14px 0 0; list-style: none; border-top: 1px solid #ece4cf; font-size: 14px; color: var(--gd-text); }
  body[data-guidon-build] .order-card .order-trust li { display: flex; gap: 10px; line-height: 1.45; }
  body[data-guidon-build] .order-card .order-trust li::before {
    content: ""; flex-shrink: 0; width: 18px; height: 18px; margin-top: 1px;
    background: no-repeat center / 18px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231f5f3b' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E");
  }

  /* ---------- The evening: the published sequence across the page ---------- */
  body[data-guidon-build] > #guestTimeline { margin-top: 48px !important; padding: 52px 0 56px !important; background: #fff !important; border-top: 1px solid #ece4cf; border-bottom: 1px solid #ece4cf; }
  body[data-guidon-build] > #guestTimeline .public-section-heading h2 { font-family: Georgia, serif !important; font-size: 34px !important; margin: 0 0 36px !important; }
  body[data-guidon-build] #publicEventTimeline.has-timeline-items {
    position: relative; display: grid !important; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); gap: 16px !important; max-width: none !important; margin: 0 !important;
  }
  body[data-guidon-build] #publicEventTimeline.has-timeline-items::before { content: ""; position: absolute; left: 6%; right: 6%; top: 32px; height: 2px; background: var(--gd-gold); }
  body[data-guidon-build] #publicEventTimeline.has-timeline-items .public-timeline-item {
    position: relative; display: flex !important; flex-direction: column !important; align-items: center !important; gap: 10px !important; text-align: center !important;
    padding: 0 !important; margin: 0 !important; background: transparent !important; border: 0 !important; box-shadow: none !important;
  }
  body[data-guidon-build] #publicEventTimeline .public-timeline-icon {
    display: flex !important; width: 64px; height: 64px; box-sizing: border-box; border-radius: 50%; background: #fff; border: 2px solid var(--gd-gold);
    align-items: center; justify-content: center; color: var(--gd-navy); position: relative; z-index: 1;
  }
  body[data-guidon-build] #publicEventTimeline .public-timeline-icon svg { width: 28px; height: 28px; }
  body[data-guidon-build] #publicEventTimeline.has-timeline-items time { font-size: 13px !important; font-weight: 800 !important; letter-spacing: .08em !important; color: var(--gd-scarlet) !important; min-width: 0 !important; }
  body[data-guidon-build] #publicEventTimeline.has-timeline-items .public-timeline-item > div { display: flex; flex-direction: column; gap: 4px; align-items: center; }
  body[data-guidon-build] #publicEventTimeline.has-timeline-items strong { font-size: 16px !important; line-height: 1.3 !important; max-width: 170px; }
  body[data-guidon-build] #publicEventTimeline.has-timeline-items .public-timeline-item span:not(.public-timeline-icon) { font-size: 14px; color: var(--gd-muted); max-width: 190px; }
  body[data-guidon-build] #publicEventTimeline:not(.has-timeline-items) { max-width: 760px !important; margin: 0 auto !important; }

  /* ---------- Dinner ---------- */
  body[data-guidon-build] > #guestDinner:not([hidden]) { display: block; padding: 56px 0 0 !important; background: transparent !important; }
  body[data-guidon-build] #guestDinner .dinner-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 28px; }
  body[data-guidon-build] #guestDinner .dinner-eyebrow { margin: 0 0 8px; font-size: 12px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; color: #6e5518; }
  body[data-guidon-build] #guestDinner h2 { margin: 0; font-family: Georgia, serif; font-size: 34px; color: var(--gd-navy); }
  body[data-guidon-build] #guestDinner .dinner-note { margin: 0; font-size: 15px; color: var(--gd-muted); }
  body[data-guidon-build] #guestDinner .dinner-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 24px; }
  body[data-guidon-build] #guestDinner .dinner-card { background: #fff; border: 1px solid var(--gd-line); border-radius: 18px; padding: 24px 26px; display: flex; gap: 18px; align-items: flex-start; }
  body[data-guidon-build] #guestDinner .dinner-icon { width: 52px; height: 52px; flex-shrink: 0; border-radius: 14px; background: #f6efdc; color: var(--gd-scarlet); display: flex; align-items: center; justify-content: center; }
  body[data-guidon-build] #guestDinner .dinner-icon svg { width: 26px; height: 26px; }
  body[data-guidon-build] #guestDinner .dinner-card h3 { margin: 0 0 6px; font-family: Georgia, serif; font-size: 20px; color: var(--gd-navy); }
  body[data-guidon-build] #guestDinner .dinner-card p { margin: 0; font-size: 15px; line-height: 1.5; color: var(--gd-text); }

  /* ---------- Venue, hotel, FAQ and contact: tighter bands ---------- */
  body[data-guidon-build] > #venueParking, body[data-guidon-build] > #guestHotel { padding: 56px 0 0 !important; background: transparent !important; }
  body[data-guidon-build] > #guestFaq, body[data-guidon-build] > #guestContact { padding: 56px 0 0 !important; background: transparent !important; }
  body[data-guidon-build]:has(#guestHotel:not([hidden])) > #venueParking > .container, body[data-guidon-build] > #guestFaq > .container { margin-right: 0 !important; }
  body[data-guidon-build] > #guestHotel > .container, body[data-guidon-build] > #guestContact > .container { margin-left: 0 !important; }
  body[data-guidon-build] > #guestFaq, body[data-guidon-build] > #guestContact, body[data-guidon-build] > #venueParking, body[data-guidon-build] > #guestHotel { align-self: stretch; }
  body[data-guidon-build] > #guestFaq > .container, body[data-guidon-build] > #guestContact > .container { height: calc(100% - 0px); }
  /* The hotel card beside the venue. */
  body[data-guidon-build] > #guestHotel .public-section-heading { text-align: left !important; margin: 0 0 16px !important; align-items: flex-start !important; justify-items: start !important; }
  body[data-guidon-build] > #guestHotel .public-section-heading * { text-align: left !important; margin-left: 0 !important; margin-right: 0 !important; }
  body[data-guidon-build] > #guestHotel .public-section-heading h2 { font-family: Georgia, serif !important; font-size: 34px !important; }
  body[data-guidon-build] > #guestHotel .hotel-info-card { max-width: none !important; width: auto !important; margin: 0 !important; }
  body[data-guidon-build] > #venueParking .public-section-heading { text-align: left !important; margin: 0 0 16px !important; }
  body[data-guidon-build] > #venueParking .public-section-heading h2 { text-align: left !important; }
  body[data-guidon-build] > #guestFaq > .container,
  body[data-guidon-build] > #guestContact > .container { background: #fff; border: 1px solid var(--gd-line); border-radius: 20px; padding: 26px 28px !important; box-sizing: border-box; }
  body[data-guidon-build] > #guestFaq .public-section-heading, body[data-guidon-build] > #guestContact .public-section-heading,
  body[data-guidon-build] > #guestFaq .public-section-heading *, body[data-guidon-build] > #guestContact .public-section-heading * { text-align: left !important; margin-left: 0 !important; margin-right: 0 !important; }
  body[data-guidon-build] > #guestFaq .public-section-heading, body[data-guidon-build] > #guestContact .public-section-heading { margin: 0 0 10px !important; }
  body[data-guidon-build] > #guestContact .container { display: flex; flex-direction: column; align-items: flex-start; }
  body[data-guidon-build] > #guestFaq .public-section-heading h2, body[data-guidon-build] > #guestContact .public-section-heading h2 { font-size: 24px !important; margin: 0 0 6px !important; }
  body[data-guidon-build] > #venueParking .public-section-heading h2 { font-family: Georgia, serif !important; font-size: 34px !important; }

  /* ---------- Footer ---------- */
  body[data-guidon-build] > .public-desktop-footer {
    display: flex; justify-content: space-between; align-items: center; margin-top: 56px; padding: 28px var(--gd-gutter);
    background: var(--gd-navy); color: #b7c3d1; font-size: 14px; border-top: 11px solid var(--gd-scarlet); box-shadow: inset 0 3px 0 var(--gd-gold);
  }
  body[data-guidon-build] > .public-desktop-footer a { color: #e8edf3; }
}
@media (min-width: 1024px) and (max-width: 1279px) {
  body[data-guidon-build] { --gd-gutter: 32px; }
  body[data-guidon-build] > #top.registration-public-hero { grid-template-columns: minmax(0, 1fr) 300px; }
  body[data-guidon-build] > #top .registration-hero-inner { grid-template-columns: 130px minmax(0, 1fr); column-gap: 24px; }
  body[data-guidon-build] > #top .registration-hero-inner > #combinedHostEmblem { width: 130px !important; height: 130px !important; }
  body[data-guidon-build] #registrationStepbar li { font-size: 14px; }
  /* Narrow computers: venue and hotel one above the other. */
  body[data-guidon-build]:has(#guestHotel:not([hidden])) > #venueParking, body[data-guidon-build] > #guestHotel { grid-column: 1 / -1 !important; }
  body[data-guidon-build]:has(#guestHotel:not([hidden])) > #venueParking > .container { margin-right: var(--gd-gutter) !important; }
  body[data-guidon-build] > #guestHotel > .container { margin-left: var(--gd-gutter) !important; }
}
/* The Seats reserved step stays the approved single column (HZ74R), centred. */
@media (min-width: 1024px) {
  body[data-guidon-build].reserved-step-active > main.main-layout {
    grid-template-columns: minmax(0, 1fr) !important; justify-self: center; width: min(880px, calc(100% - 2 * var(--gd-gutter))) !important;
    max-width: 880px !important; margin-left: 0 !important; margin-right: 0 !important;
  }
}
/* HZ74T fix (all widths): the hotel's rate and booking-window boxes could push a phone page wider than the screen. */
body[data-guidon-build] #guestHotel .hotel-facts { grid-template-columns: repeat(auto-fit, minmax(min(100%, 140px), 1fr)) !important; }
body[data-guidon-build] #guestHotel .hotel-facts > * { min-width: 0 !important; overflow-wrap: anywhere; }
/* HZ74U (owner): compact event-fact cards: the icon beside the text, tighter padding, the address under the venue. */
@media (min-width: 1024px) {
  body[data-guidon-build] > #eventDetails .event-detail-card {
    display: grid !important; grid-template-columns: 36px minmax(0, 1fr) !important; grid-auto-rows: auto; column-gap: 12px !important; row-gap: 1px !important;
    align-items: start !important; align-content: center !important; padding: 14px 20px !important;
  }
  body[data-guidon-build] > #eventDetails .event-detail-card > * { grid-column: 2; }
  body[data-guidon-build] > #eventDetails .event-detail-card > .event-detail-icon { grid-column: 1; grid-row: 1 / span 3; align-self: center; width: 36px !important; height: 36px !important; margin: 0 !important; }
  body[data-guidon-build] > #eventDetails .event-detail-icon svg { width: 19px !important; height: 19px !important; }
  body[data-guidon-build] > #eventDetails .event-detail-icon.attire-icon svg { width: 24px !important; height: 15px !important; }
  body[data-guidon-build] > #eventDetails .event-detail-card > span:not(.event-detail-icon) { font-size: 11px !important; line-height: 1.3 !important; }
  body[data-guidon-build] > #eventDetails .event-detail-card strong { font-size: 15px !important; line-height: 1.3 !important; }
  body[data-guidon-build] > #eventDetails .event-detail-card small { font-size: 13px !important; line-height: 1.3 !important; margin-top: 1px !important; }
}
/* FIX11HZ75C: a Ball with no logo has no emblem column; the title and details use the full width. */
@media (min-width: 1024px) {
  body[data-guidon-build] > #top .registration-hero-inner.no-emblem { grid-template-columns: minmax(0, 1fr) !important; column-gap: 0 !important; }
  body[data-guidon-build] > #top .registration-hero-inner.no-emblem > * { grid-column: 1 !important; }
}
