/* ========================================
   RESPONSIVE - Zenoteks
   Mobile-first breakpoints
   ======================================== */

/* ---- XL: 1200px and below ---- */
@media (max-width: 1199.98px) {
  .hero-title { font-size: 2.5rem; }
  .stat-number { font-size: 2.5rem; }
}

/* ---- LG: 992px and below ---- */
@media (max-width: 991.98px) {
  :root {
    --section-padding: 60px;
  }

  .hero-title { font-size: 2.2rem; }
  .hero-subtitle { font-size: 1.1rem; }
  .section-title { font-size: 1.75rem; }

  /* Navbar mobile */
  .navbar-collapse { background: var(--white); border-radius: var(--radius-md); padding: 20px; margin-top: 10px; box-shadow: var(--shadow-lg); }
  .nav-link { color: var(--secondary) !important; }
  .navbar-toggler { border: none; padding: 5px; }
  .navbar-toggler:focus { box-shadow: none; }
  .navbar-toggler-icon { width: 24px; height: 24px; }

  /* Logo always dark on mobile */
  .logo-light { display: none !important; }
  .logo-dark { display: block !important; }

  /* Sidebar below content on tablet */
  .sidebar-widget { margin-top: 40px; position: static !important; }

  /* Facility stats */
  .facility-stat { padding: 20px 15px; }
  .facility-stat-number { font-size: 2rem; }

  /* Parallax disabled on tablet/mobile for performance */
  .parallax-section { background-attachment: scroll !important; }
  .flags-hero { background-attachment: scroll !important; }

  /* Contact map smaller */
  .map-wrapper iframe { height: 350px; }
}

/* ---- MD: 768px and below ---- */
@media (max-width: 767.98px) {
  .hero-video-section { min-height: 80vh; }
  .hero-title { font-size: 1.8rem; }
  .hero-subtitle { font-size: 1rem; }
  .hero-scroll-indicator { bottom: 20px; }

  .section-header { margin-bottom: 30px; }
  .section-title { font-size: 1.5rem; }
  .section-subtitle { font-size: 0.9rem; }

  /* Stats row */
  .stat-number { font-size: 2rem; }
  .stat-suffix { font-size: 1.2rem; }

  /* Service cards */
  .service-image { height: 160px; }
  .service-content { padding: 20px; }

  /* Breadcrumb */
  .breadcrumb-section { padding: 100px 0 40px; min-height: 220px; }
  .breadcrumb-title { font-size: 1.5rem; }

  /* Footer */
  .footer-main { padding: 40px 0 20px; }
  .footer [class*="col-"] + [class*="col-"] { margin-top: 30px; }
  .footer-bottom { text-align: center; }
  .footer-bottom .row > * { margin-bottom: 10px; }

  /* Buttons full width on mobile */
  .hero-content .btn { display: block; width: 100%; margin-bottom: 10px; }

  /* Flag category tabs scroll horizontal */
  .flag-category-tabs { flex-wrap: nowrap; overflow-x: auto; -webkit-overflow-scrolling: touch; padding-bottom: 10px; }
  .flag-category-tabs .nav-link { white-space: nowrap; }

  /* Turkish flag showcase */
  .turkish-flag-showcase .flag-image-wrapper { padding: 20px; }

  /* Chairman */
  .chairman-photo { margin-bottom: 30px; }
  .chairman-quote { padding: 20px; }

  /* About */
  .experience-badge { bottom: 10px; right: 10px; padding: 10px 18px; }
  .experience-badge .number { font-size: 1.5rem; }

  /* Application form */
  .cv-upload-area { padding: 20px; }
  .cv-upload-area i { font-size: 2rem; }

  /* Contact */
  .contact-info-card { margin-bottom: 20px; }
  .map-wrapper iframe { height: 300px; }

  /* 404 */
  .error-code { font-size: 5rem; }
  .error-message { font-size: 1.2rem; }

  /* WhatsApp & back to top */
  .whatsapp-float { width: 50px; height: 50px; font-size: 1.5rem; bottom: 20px; right: 20px; }
  .back-to-top { width: 40px; height: 40px; bottom: 80px; right: 20px; }
}

/* ---- SM: 576px and below ---- */
@media (max-width: 575.98px) {
  :root {
    --section-padding: 40px;
  }

  body { font-size: 0.9rem; }

  .hero-video-section { min-height: 70vh; }
  .hero-title { font-size: 1.5rem; }

  .navbar-brand img { height: 40px !important; width: auto !important; }
  .navbar { padding: 10px 0; }

  /* Cards stack */
  .service-card { margin-bottom: 20px; }
  .flag-item { margin-bottom: 15px; }

  /* Stats 2 column */
  .stat-item { margin-bottom: 20px; }
  .stat-number { font-size: 1.75rem; }

  /* Reference logos smaller */
  .reference-item { height: 60px; padding: 15px; }
  .reference-item img { max-height: 30px; }

  /* Policy cards */
  .policy-card { padding: 20px; }

  /* Printing type */
  .printing-type-image { height: 140px; }

  /* Table responsive */
  .flag-size-table { font-size: 0.8rem; }
  .flag-size-table th, .flag-size-table td { padding: 8px 10px; }

  /* Election flags */
  .election-flag-card { padding: 20px; }
  .election-flag-icon { width: 60px; height: 60px; font-size: 1.5rem; }

  /* Sidebar widget */
  .sidebar-widget { padding: 20px; }

  /* Footer */
  .footer-social a { width: 35px; height: 35px; }
}

/* ---- Print styles ---- */
@media print {
  .header, .footer, .whatsapp-float, .back-to-top, .hero-scroll-indicator, #preloader { display: none !important; }
  .hero-video-section { min-height: auto; padding: 20px 0; }
  .hero-overlay { background: none; }
  .hero-content { color: #000; }
  .parallax-section { background: #f5f5f5 !important; }
  .parallax-overlay { display: none; }
  body { font-size: 12pt; color: #000; }
  a { color: #000; text-decoration: underline; }
  .breadcrumb-section { display: none; }
}
