/* =========================================================
   Print / Puppeteer PDF  —  single A4 page
   printBackground: true must be set in generate-pdf.mjs
   ========================================================= */

@page {
  size: A4 portrait;
  margin: 0;
}

@media print {
  *, *::before, *::after {
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
    box-sizing: border-box;
    margin: 0; padding: 0;
  }

  /* Hide entire website, show only PDF layout */
  body > *:not(#pdf-page) { display: none !important; }

  body {
    background: #070707;
    font-family: 'Barlow', sans-serif;
    color: #ede9f8;
  }

  /* =========================================================
     Page shell — 210mm × 297mm, flex column
     ========================================================= */
  #pdf-page {
    display: flex !important;
    flex-direction: column;
    width: 210mm;
    height: 297mm;
    overflow: hidden;
    background: #070707;
  }

  /* =========================================================
     HERO  — mirrors the website hero section
     ========================================================= */
  .pdf-hero {
    position: relative;
    width: 210mm;
    height: 140mm;   /* exact natural height of 1920×1280 at 210mm wide — no bars, no crop */
    overflow: hidden;
    flex-shrink: 0;
  }

  .pdf-hero__img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    filter: brightness(0.6);
  }

  /* Gradient fade at bottom, like the website hero */
  .pdf-hero__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
      to bottom,
      rgba(7,7,7,0.05) 0%,
      rgba(7,7,7,0.15) 55%,
      rgba(7,7,7,0.85) 88%,
      #070707 100%
    );
  }

  .pdf-hero__content {
    position: absolute;
    bottom: 8mm;
    left: 0; right: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2mm;
  }

  .pdf-hero__logo {
    width: 62mm;
    height: auto;
  }

  .pdf-hero__tagline {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 7.5pt;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: rgba(237,233,248,0.75);
  }

  .pdf-hero__location {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 6.5pt;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: #9d4edd;
  }

  /* =========================================================
     BODY — two columns below the hero
     ========================================================= */
  .pdf-body {
    flex: 1;
    display: flex;
    overflow: hidden;
  }

  .pdf-col {
    display: flex;
    flex-direction: column;
    gap: 6mm;
    padding: 8mm 8mm 8mm 10mm;
  }

  .pdf-col--main {
    flex: 1;
    border-right: 0.3mm solid rgba(157,78,221,0.25);
  }

  .pdf-col--aside {
    width: 80mm;
    padding-left: 8mm;
  }

  /* =========================================================
     Shared section styles
     ========================================================= */
  .pdf-heading {
    font-family: 'Rajdhani', sans-serif;
    font-size: 7pt;
    font-weight: 700;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: #9d4edd;
    padding-bottom: 1.5mm;
    border-bottom: 0.25mm solid rgba(157,78,221,0.25);
    margin-bottom: 2.5mm;
    display: block;
  }

  .pdf-section p {
    font-size: 7.5pt;
    line-height: 1.55;
    color: rgba(237,233,248,0.82);
    font-weight: 300;
    margin-bottom: 2mm;
  }

  .pdf-section p em {
    color: #ede9f8;
    font-style: normal;
  }

  /* =========================================================
     Videos
     ========================================================= */
  .pdf-video-links {
    display: flex;
    flex-direction: column;
    gap: 2.5mm;
  }

  .pdf-video-link {
    display: flex;
    align-items: center;
    gap: 2.5mm;
  }

  .pdf-video-link div {
    display: flex;
    flex-direction: column;
    gap: 0.5mm;
  }

  .pdf-video-link__title {
    font-family: 'Rajdhani', sans-serif;
    font-size: 8pt;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #ede9f8;
  }

  .pdf-video-link__url {
    font-size: 6.5pt;
    color: rgba(237,233,248,0.5);
    font-family: 'Barlow Condensed', sans-serif;
    letter-spacing: 0.02em;
  }

  /* =========================================================
     Contact
     ========================================================= */
  .pdf-contact-email,
  .pdf-contact-phone {
    font-size: 8.5pt;
    font-weight: 500;
    color: #ede9f8;
    letter-spacing: 0.02em;
    margin-bottom: 1mm;
  }

  /* =========================================================
     Social links with icons
     ========================================================= */
  .pdf-links {
    display: flex;
    flex-direction: column;
    gap: 2.5mm;
  }

  .pdf-link {
    display: flex;
    align-items: center;
    gap: 2.5mm;
    font-size: 7.5pt;
    color: rgba(237,233,248,0.75);
    font-family: 'Barlow Condensed', sans-serif;
    letter-spacing: 0.03em;
  }

  /* =========================================================
     Icons (shared by videos + socials)
     ========================================================= */
  .pdf-icon {
    width: 9pt;
    height: 9pt;
    flex-shrink: 0;
    color: #9d4edd;
    fill: #9d4edd;
    opacity: 0.9;
  }

  .pdf-icon--lg {
    width: 14pt;
    height: 14pt;
  }

  /* Strip default link styling — keep our colours */
  #pdf-page a {
    color: inherit;
    text-decoration: none;
  }

  .pdf-contact-email,
  .pdf-contact-phone {
    display: block;
  }

  .pdf-video-link,
  .pdf-link {
    display: flex;
  }
}
