/* ============================================
   Print Stylesheet
   ============================================ */

@media print {
  /* Hide non-essential elements */
  nav,
  .mobile-menu-toggle,
  .theme-toggle,
  .nav-controls,
  .back-to-top,
  .section-footer,
  .skip-link,
  button,
  .btn,
  [data-netlify-recaptcha] {
    display: none !important;
  }

  /* Page setup */
  @page {
    margin: 1.5cm;
  }

  /* Base styles */
  body {
    background: white !important;
    color: black !important;
    font-size: 12pt;
    line-height: 1.5;
  }

  /* Headers */
  header {
    background: white !important;
    color: black !important;
    page-break-after: avoid;
    margin-bottom: 1cm;
  }

  header::before {
    display: none !important;
  }

  .header-logo {
    filter: none !important;
    max-width: 400px;
  }

  h1, h2, h3, h4, h5, h6 {
    page-break-after: avoid;
    color: black !important;
  }

  /* Links */
  a {
    color: black !important;
    text-decoration: underline;
  }

  a[href^="http"]:after {
    content: " (" attr(href) ")";
    font-size: 0.9em;
  }

  a[href^="#"]:after,
  a[href^="mailto:"]:after {
    content: "";
  }

  /* Sections */
  .section {
    border: 1px solid #ccc !important;
    background: white !important;
    page-break-inside: avoid;
    margin-bottom: 1cm;
    padding: 0.5cm;
  }

  /* Images */
  img {
    max-width: 100% !important;
    page-break-inside: avoid;
  }

  .map img {
    max-width: 100%;
  }

  /* Cards */
  .card {
    page-break-inside: avoid;
    border: 1px solid #ccc;
    margin-bottom: 0.5cm;
  }

  /* Storage units */
  .storage-unit {
    page-break-inside: avoid;
  }

  /* Lists */
  ul, ol {
    page-break-inside: avoid;
  }

  /* Tables and forms */
  table {
    page-break-inside: avoid;
  }

  form {
    display: none;
  }

  /* Prevent page breaks */
  .row,
  .col {
    page-break-inside: avoid;
  }

  /* Footer */
  footer {
    page-break-before: always;
  }

  /* Utilities */
  .white-text {
    color: black !important;
  }

  .center {
    text-align: center;
  }

  /* Hide decorative elements */
  .description li::before,
  .description li::after {
    content: "";
  }
}
