/* =====================================================
   SIMPLIFIED RESPONSIVE HEADER STYLES - 2025
   Logo + CTA Only Design
   Breakpoints: Mobile (<768px), Tablet (768-1024px), Desktop (>1024px)
   ===================================================== */

/* =====================================================
   TABLET STYLES (768px - 1024px)
   ===================================================== */

@media (min-width: 768px) and (max-width: 1024px) {

  /* Header adjustments */
  .header-main {
    height: 64px;
  }

  .header-inner {
    height: 64px;
  }

  /* Logo smaller on tablet */
  .header-logo img {
    width: 280px;
  }

  /* Hide CTA on tablet */
  .cta-primary {
    display: none;
  }

}

/* =====================================================
   MOBILE STYLES (<768px)
   ===================================================== */

@media (max-width: 767px) {

  /* ========== Header Container ========== */

  .header-main {
    height: 56px;
  }

  .header-inner {
    height: 56px;
    padding: 0 16px;
  }

  .header-main .container {
    padding: 0;
    max-width: 100%;
  }

  /* ========== Logo ========== */

  .header-logo img {
    width: 250px;
  }

  /* ========== CTA Button ========== */

  .cta-primary {
    display: none;
  }

  /* ========== Fixed Call Button ========== */

  .btnappel {
    position: fixed;
    bottom: 20px;
    right: 20px;
    width: 56px;
    height: 56px;
    background: #0047BA;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 12px rgba(0, 71, 186, 0.4);
    z-index: 999;
    transition: all 0.3s ease;
  }

  .btnappel i {
    color: #FFFFFF;
    font-size: 24px;
  }

  .btnappel:hover {
    transform: scale(1.1);
    box-shadow: 0 6px 16px rgba(0, 71, 186, 0.5);
  }

  .btnappel:active {
    transform: scale(0.95);
  }

}

/* =====================================================
   EXTRA SMALL MOBILE (<480px)
   ===================================================== */

@media (max-width: 480px) {

  /* ========== Header ========== */

  .header-main {
    height: 65px;
  }

  .header-inner {
    height: 65px;
    padding: 0 12px;
  }

  /* ========== Logo ========== */

  .header-logo img {
    width: 250px;
  }

  /* ========== CTA ========== */

  .cta-primary {
    display: none;
  }

  /* ========== Fixed Call Button ========== */

  .btnappel {
    width: 52px;
    height: 52px;
    bottom: 16px;
    right: 16px;
  }

  .btnappel i {
    font-size: 22px;
  }

}

/* =====================================================
   LANDSCAPE MOBILE ORIENTATION
   ===================================================== */

@media (max-width: 767px) and (orientation: landscape) {

  /* Reduce header height in landscape */
  .header-main {
    height: 48px;
  }

  .header-inner {
    height: 48px;
  }

  .header-logo img {
    width: 250px;
  }

  .cta-primary {
    display: none;
  }

}

/* =====================================================
   DESKTOP LARGE SCREENS (>1400px)
   ===================================================== */

@media (min-width: 1400px) {

  /* Larger container */
  .header-main .container {
    max-width: 1320px;
  }

  /* Larger logo */
  .header-logo img {
    width: 320px;
  }

  /* Larger CTA */
  .cta-primary {
    font-size: 16px;
    padding: 15px 36px;
  }

}

/* =====================================================
   PRINT STYLES
   ===================================================== */

@media print {

  /* Hide CTAs when printing */
  .cta-primary,
  .btnappel {
    display: none !important;
  }

  /* Simplify header */
  .header-main {
    box-shadow: none;
    border-bottom: 1px solid #000;
    position: static;
    height: auto;
    padding: 10px 0;
  }

  .header-logo img {
    width: 150px;
  }

}

/* =====================================================
   HIGH CONTRAST MODE (Accessibility)
   ===================================================== */

@media (prefers-contrast: high) {

  .header-main {
    border-bottom: 2px solid #000;
  }

  .cta-primary {
    border: 2px solid #000;
  }

}

/* =====================================================
   REDUCED MOTION (Accessibility)
   ===================================================== */

@media (prefers-reduced-motion: reduce) {

  /* Disable all animations */
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }

  /* CTA already hidden on mobile/tablet */

  .btnappel:hover {
    transform: none;
  }

}

/* =====================================================
   TOUCH DEVICE OPTIMIZATIONS
   ===================================================== */

@media (hover: none) and (pointer: coarse) {

  /* CTA hidden on mobile/tablet */
  .cta-primary {
    display: none;
  }

  .cta-primary:hover {
    display: none;
  }

  .btnappel:hover {
    transform: none;
  }

}
