/**
 * ESCAPAD · Print stylesheet
 *
 * Loaded with media="print" so it only kicks in when the user actually
 * triggers Ctrl/Cmd+P or downloads as PDF. Goal: make a printed page (a
 * receipt, a recap reservation, a club address, an opening planning…)
 * actually readable on paper rather than dumping the screen layout.
 *
 * Strategy:
 *  - Strip animated backgrounds, hero videos and decorative gradients
 *  - Force midnight text on a white background for max contrast
 *  - Hide chrome (nav, cookie banner, sticky CTA, modals)
 *  - Expand collapsed FAQ items
 *  - Print URLs of links after their text so phone numbers stay reachable
 *  - Use page-break-inside:avoid on cards so a card doesn't get split
 */
@media print {
  /* ===== Base reset ===== */
  *, *::before, *::after {
    background:transparent !important;
    color:#0e0b23 !important;
    box-shadow:none !important;
    text-shadow:none !important;
    filter:none !important;
    animation:none !important;
    transition:none !important;
  }
  body {
    background:#fff !important;
    color:#0e0b23 !important;
    font-size:11pt;
    line-height:1.5;
    padding:0 !important;
    margin:0 !important;
  }
  @page { margin:14mm; }

  /* ===== Strip the chrome ===== */
  .banner,
  .nav,
  .nav-drawer,
  .nav-drawer-backdrop,
  .ec-banner,
  .ec-modal,
  .sticky-cta,
  .modal-bg,
  .menu-modal,
  .resmod-modal,
  .marquee,
  .footer,
  .hero-video-bg,
  .hero-video-fallback,
  .hero-video-el,
  .hero-video-scrim,
  .hero-video-noise,
  .hero-video-ph,
  .hero-collage-bg,
  .page-hero-photo,
  .evp-hero-photo,
  .cp-hero-bg,
  video,
  audio,
  iframe { display:none !important; }

  body { padding-bottom:0 !important; }

  /* ===== Expand collapsibles ===== */
  .faq-item .faq-a, .evp-faq-item .evp-faq-a { display:block !important; max-height:none !important; opacity:1 !important; }
  .faq-q::after, .evp-faq-q::after { content:'' !important; }

  /* ===== Print URLs next to links (only external + meaningful) ===== */
  a[href^="http"]::after,
  a[href^="mailto:"]::after,
  a[href^="tel:"]::after {
    content:" (" attr(href) ")";
    font-size:9pt;
    font-weight:normal;
    color:#444 !important;
    word-break:break-all;
  }
  a[href^="#"]::after { content:""; }

  /* ===== Page break hygiene ===== */
  h1, h2, h3, h4 { page-break-after:avoid; }
  p, li, .price-card, .event-card, .price-tile, .res-row, .dash-card, .testimonial-card,
  .why-card, .themed-card, .cat-card, .legal-article, .invoice-row, .faq-item, .compare-table {
    page-break-inside:avoid;
  }
  /* Force a page break before each major numbered section so a printed
     dashboard / récap doesn't have an awkward orphan title at the bottom */
  .legal-article + .legal-article,
  .dash-card + .dash-card { page-break-before:auto; }

  /* ===== Visual rendering on paper ===== */
  h1 { font-size:24pt; line-height:1.1; margin:0 0 12pt 0; }
  h2 { font-size:18pt; line-height:1.15; margin:18pt 0 8pt 0; border-bottom:1pt solid #0e0b23; padding-bottom:4pt; }
  h3 { font-size:13pt; margin:12pt 0 6pt 0; }
  h4 { font-size:11pt; margin:8pt 0 4pt 0; }
  p { margin:0 0 6pt 0; }
  ul, ol { margin:0 0 8pt 14pt; padding:0; }
  li { margin-bottom:2pt; }
  hr { border:none; border-top:1pt solid #0e0b23; margin:12pt 0; }

  /* Section eyebrows, keep but make plain text */
  .section-eyebrow, .why-eyebrow, .evh-eyebrow, .evp-eyebrow, .legal-eyebrow, .dash-hero-eyebrow,
  .ec-eyebrow, .menu-modal-eyebrow, .ck-eyebrow, .resmod-eyebrow, .nf-eyebrow {
    font-size:8pt !important;
    letter-spacing:0.16em;
    text-transform:uppercase;
    color:#555 !important;
    margin-bottom:4pt;
    background:transparent !important;
    padding:0 !important;
    display:block;
  }

  /* Tables / pricing, keep grids but flatten visual */
  .pricing { grid-template-columns:1fr 1fr !important; gap:8pt !important; }
  .price-card, .price-tile, .compare-table > div {
    border:1pt solid #0e0b23 !important; padding:6pt 8pt !important;
  }

  /* Reservations rows, render flat */
  .res-row { display:block !important; padding:6pt 0 !important; border-bottom:1pt solid #ccc !important; }
  .res-date { display:inline-block; padding:2pt 6pt; border:1pt solid #0e0b23 !important; margin-right:6pt; }

  /* Buttons → fake link */
  .btn, .ec-btn, .sub-cta, .menu-modal-close, .modal-close, button {
    background:transparent !important;
    border:1pt solid #0e0b23 !important;
    padding:2pt 6pt !important;
    color:#0e0b23 !important;
    text-decoration:none !important;
  }

  /* Force light theme on dark sections so paper isn't a black tank */
  .footer, .price-teaser, .evh-hero, .evp-hero.dark, .cta-strip.dark, .dash-hero,
  .formats, .price-teaser, .compare, .bar, .hero[data-hero="video"], .hero[data-hero="collage"] {
    background:#fff !important;
    color:#0e0b23 !important;
  }

  /* Add a top-right print stamp on every page so it's clearly an Escapad doc */
  body::before {
    content:"escapad® · sportsaddicts society";
    position:running(header);
    display:block;
    font-size:9pt;
    font-weight:700;
    letter-spacing:0.12em;
    text-transform:uppercase;
    color:#555 !important;
    border-bottom:1pt solid #0e0b23;
    padding-bottom:4pt;
    margin-bottom:10pt;
  }
}
