/* Responsive — 1440 / 1280 / 1024 / 768 / 480 / 360 */

@media (max-width: 1280px) {
    .footer-grid { grid-template-columns: 1.4fr 1fr 1fr 1.2fr; }
    .why-asymmetric { grid-template-columns: 1fr 1fr; }
    .why-card-featured { grid-row: span 1; grid-column: span 2; }
}

@media (max-width: 1180px) and (min-width: 1025px) {
    .nav-label {
        position: absolute;
        bottom: calc(100% + 8px);
        left: 50%;
        transform: translateX(-50%) translateY(4px);
        padding: 5px 10px;
        background: var(--text-primary);
        color: var(--text-inverse);
        font-size: 0.7rem;
        font-weight: 600;
        border-radius: 6px;
        white-space: nowrap;
        opacity: 0;
        pointer-events: none;
        display: block;
        transition: opacity var(--duration-fast), transform var(--duration-fast);
        z-index: 10;
    }
    .nav-label::after {
        content: '';
        position: absolute; top: 100%; left: 50%;
        transform: translateX(-50%);
        border: 4px solid transparent;
        border-top-color: var(--text-primary);
    }
    .nav-link:hover .nav-label {
        opacity: 1;
        transform: translateX(-50%) translateY(0);
    }
    .nav-link { padding: 9px 12px; }
    .nav-list { gap: 2px; }
}

@media (max-width: 1024px) {
    .slide-content { grid-template-columns: 1fr; }
    .hero-float-card { display: none; }
    .about-editorial { grid-template-columns: 1fr; }
    .about-float-badge { inset-inline-start: auto; inset-inline-end: 20px; bottom: -16px; }
    .footer-grid { grid-template-columns: 1fr 1fr; gap: 40px; }
    .footer-brand { max-width: none; grid-column: 1 / -1; }
    .footer-newsletter-col { grid-column: 1 / -1; }
    .footer-newsletter-box { max-width: 480px; }
    .join-wrapper { grid-template-columns: 1fr; }
    .contact-grid { grid-template-columns: 1fr; }
    .contact-panel { min-height: auto; height: auto; }
    .contact-panel:hover { transform: none; }
    .contact-form-row { grid-template-columns: 1fr; }
    .product-detail-layout { grid-template-columns: 1fr; }
    .product-info-panel { position: static; }
    .articles-featured { grid-template-columns: 1fr; }
    .article-featured-card { min-height: 320px; }
    .article-side-card { grid-template-columns: 100px 1fr; }
    .articles-toolbar { flex-direction: column; align-items: stretch; }
    .articles-filter-bar { justify-content: center; flex-wrap: wrap; }
    .page-hero-inner { grid-template-columns: 1fr; }
    .page-hero-visual { display: none; }
    .page-hero { padding-bottom: clamp(56px, 8vw, 80px); }
    .team-showcase { grid-template-columns: repeat(2, 1fr); }
    .team-card-premium.featured { grid-column: span 1; grid-row: span 1; }
    .org-tree ul { flex-wrap: wrap; }
    .mvv-grid { grid-template-columns: 1fr; }
    .gallery-masonry { columns: 2; }

    /* Mobile drawer nav — tablets & phones */
    .site-header .header-inner { gap: 10px; }
    .logo { min-width: 0; flex: 1 1 auto; }
    .logo-text {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        max-width: min(180px, 42vw);
    }
    .header-actions { flex-shrink: 0; margin-inline-start: auto; }

    .main-nav {
        position: fixed;
        top: 0;
        inset-inline-end: 0;
        bottom: 0;
        width: min(320px, 88vw);
        flex: none;
        display: block;
        background: var(--surface-elevated);
        padding: calc(var(--header-h) + 16px) 20px 32px;
        transform: translateX(100%);
        transition: transform var(--duration-normal) var(--ease-out),
                    visibility var(--duration-normal);
        /* Above WhatsApp float (9990) and page layers; below open header controls */
        z-index: 10060;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        box-shadow: var(--shadow-lg);
        visibility: hidden;
        pointer-events: none;
        border-inline-start: 1px solid var(--border);
    }
    [dir="rtl"] .main-nav {
        transform: translateX(-100%);
        inset-inline-end: auto;
        inset-inline-start: 0;
        border-inline-start: none;
        border-inline-end: 1px solid var(--border);
    }
    .main-nav.open {
        transform: none;
        visibility: visible;
        pointer-events: auto;
    }
    .nav-list {
        flex-direction: column; gap: 6px;
        padding: 0;
        background: none;
        border: none;
        border-radius: 0;
    }
    .nav-link {
        padding: 14px 16px;
        font-size: var(--text-body);
        border-radius: var(--radius-md);
        opacity: 0;
        transform: translateX(16px);
        transition: opacity var(--duration-normal), transform var(--duration-normal), background var(--duration-fast);
        box-shadow: none;
    }
    .nav-icon { width: 22px; height: 22px; }
    .nav-icon svg { width: 20px; height: 20px; }
    .nav-link:hover {
        transform: translateX(0) translateY(0);
        box-shadow: none;
    }
    .nav-link:hover::before { opacity: 0; }
    .nav-link:hover::after { display: none; }
    .nav-link:hover,
    .nav-link.active { background: var(--surface-muted); }
    .nav-link.active::after { display: none; }
    .nav-link.active::before { opacity: 0; }
    [dir="rtl"] .nav-link { transform: translateX(-16px); }
    [dir="rtl"] .nav-link:hover { transform: none; }
    .main-nav.open .nav-link { opacity: 1; transform: none; }
    .main-nav.open .nav-list li:nth-child(1) .nav-link { transition-delay: 0.05s; }
    .main-nav.open .nav-list li:nth-child(2) .nav-link { transition-delay: 0.1s; }
    .main-nav.open .nav-list li:nth-child(3) .nav-link { transition-delay: 0.15s; }
    .main-nav.open .nav-list li:nth-child(4) .nav-link { transition-delay: 0.2s; }
    .main-nav.open .nav-list li:nth-child(5) .nav-link { transition-delay: 0.25s; }
    .main-nav.open .nav-list li:nth-child(6) .nav-link { transition-delay: 0.3s; }
    .main-nav.open .nav-list li:nth-child(7) .nav-link { transition-delay: 0.35s; }

    .mobile-menu-btn {
        display: flex;
        flex-shrink: 0;
        position: relative;
        z-index: 1;
    }
    .mobile-menu-btn.open span:nth-child(1) { transform: rotate(45deg) translate(5px, 5px); }
    .mobile-menu-btn.open span:nth-child(2) { opacity: 0; transform: scaleX(0); }
    .mobile-menu-btn.open span:nth-child(3) { transform: rotate(-45deg) translate(5px, -5px); }

    .mobile-menu-backdrop { z-index: 10050; }

    /* Keep header controls (hamburger, theme, lang) above the drawer */
    body.menu-open .site-header { z-index: 10070; }
    body.menu-open .whatsapp-float { visibility: hidden; pointer-events: none; }
    .lang-current { display: none; }
    .lang-chevron { display: none; }
    .lang-trigger { padding: 7px 8px; }
    .controls-dock { padding: 3px; }
    .controls-divider { display: none; }
    .theme-track { width: 48px; height: 26px; }
    .theme-knob { width: 20px; height: 20px; }
    [data-theme="dark"] .theme-knob { transform: translateX(22px); }
    [dir="rtl"] [data-theme="dark"] .theme-knob { transform: translateX(-22px); }
}

@media (max-width: 768px) {
    :root { --header-h: 68px; --header-h-scrolled: 60px; }

    .site-header .header-shell { margin: 0; border-radius: 0; }

    .slides-wrapper { height: 80vh; min-height: 480px; }
    .slide-title { font-size: clamp(1.75rem, 7vw, 2.5rem); }
    .why-asymmetric { grid-template-columns: 1fr; }
    .why-card-featured { grid-column: span 1; }
    .footer-grid { grid-template-columns: 1fr; gap: 36px; }
    .footer-brand { grid-column: auto; }
    .footer-newsletter-col { grid-column: auto; }
    .footer-newsletter-box { max-width: none; }
    .footer-bar-inner { flex-direction: column; text-align: center; gap: 12px; }
    .footer-legal { justify-content: center; }
    .legal-dialog-panel { max-height: min(90vh, 720px); border-radius: var(--radius-lg); }
    .legal-dialog-header { padding: 20px 18px 14px; gap: 12px; }
    .legal-dialog-body { padding: 4px 18px; }
    .legal-dialog-footer { padding: 14px 18px 18px; justify-content: stretch; }
    .legal-dialog-done { width: 100%; }
    .section-header { flex-direction: column; align-items: flex-start; }
    .team-showcase { grid-template-columns: 1fr; }
    .team-card-premium.featured { grid-column: span 1; }
    .org-chart-wrap { margin-top: 32px; }
    .org-tree { justify-content: flex-start; min-width: max-content; }
    .org-tree ul { justify-content: center; flex-wrap: nowrap; }
    .org-node-card { width: 180px; }
    .org-node-bio { display: none; }
    .gallery-masonry { columns: 1; }
    .service-row { grid-template-columns: auto 1fr; }
    .service-row-arrow { display: none; }
    .lang-current { display: none; }
    .toast-container { left: 16px; right: 16px; }
    .toast { max-width: none; }
}

@media (max-width: 480px) {
    .container { padding: 0 16px; }
    .logo-text { display: none; }
    .header-actions { gap: 4px; }
    .controls-dock { gap: 0; }
    .hero-actions { flex-direction: column; }
    .hero-actions .btn { width: 100%; }
    .newsletter-field { flex-direction: column; border-radius: var(--radius-md); }
    .newsletter-field button { width: 100%; height: 44px; border-radius: 0; }
    .filter-form { flex-direction: column; align-items: stretch; }
    .filter-form input, .filter-form select, .filter-form button { width: 100%; }
    .page-breadcrumb { font-size: 0.7rem; padding: 5px 10px 5px 8px; }
    .page-breadcrumb-current { max-width: 120px; }
    .products-showcase { grid-template-columns: 1fr; }
    .articles-grid-editorial { grid-template-columns: 1fr; }
    .article-side-card { grid-template-columns: 1fr; }
    .article-side-thumb { aspect-ratio: 16/9; max-height: 160px; }
    .article-detail-hero h1 { max-width: none; }
    .whatsapp-float {
        width: 52px;
        height: 52px;
        bottom: 18px;
        inset-inline-end: 16px;
    }
    .whatsapp-float svg { width: 26px; height: 26px; }
}

@media (max-width: 360px) {
    .slide-content { padding-bottom: 60px; }
    .slider-controls { bottom: 24px; }
}
