/* ============================================================ ZS RECYCLING — Responsive / Mobile Styles ============================================================ */ /* ---- Tablet (≤ 1024px) ---- */ @media (max-width: 1024px) { .hero-content { grid-template-columns: 1fr; gap: 3rem; padding: 4rem 2rem; } .hero-copy { max-width: 100%; text-align: center; } .hero-actions { justify-content: center; } .hero-certs { justify-content: center; } .hero-certs .cert-strip { justify-content: center; } .hero-visual { display: none; } .stat-cards { max-width: 560px; margin: 0 auto; } .about-preview-grid { grid-template-columns: 1fr; gap: 3rem; } .footer-grid { grid-template-columns: 1fr 1fr; gap: 2rem; } .footer-brand { grid-column: 1 / -1; } .items-grid { grid-template-columns: repeat(3, 1fr); } .process-steps-grid { grid-template-columns: 1fr; } .services-cards { grid-template-columns: 1fr; } } /* ---- Mobile (≤ 768px) ---- */ @media (max-width: 768px) { :root { --nav-height: 64px; } section { padding: 4rem 0; } .container { padding: 0 1.25rem; } /* --- Nav mobile --- */ .nav-links, .nav-actions { display: none; } .hamburger { display: flex; } /* --- Hero mobile --- */ .hero { min-height: auto; padding-top: var(--nav-height); padding-bottom: 2rem; } .hero-bg { background: linear-gradient( to bottom, rgba(10, 22, 40, 0.92) 0%, rgba(10, 22, 40, 0.80) 100% ), url('https://images.unsplash.com/photo-1518770660439-4636190af475?w=800&q=80') center/cover no-repeat; } .hero-content { grid-template-columns: 1fr; padding: 3rem 1.25rem 2rem; gap: 2rem; text-align: center; } .hero-actions { flex-direction: column; align-items: center; gap: 0.75rem; } .hero-actions .btn { width: 100%; justify-content: center; } /* Mobile CTA — emphasise "CALL FOR PICKUP" */ .hero-actions .btn-primary::before { content: 'CALL FOR '; } .hero-certs .cert-strip { justify-content: center; gap: 0.5rem; } /* --- Stat cards mobile: single column --- */ .stat-cards { grid-template-columns: 1fr; gap: 0.75rem; } /* --- Services strip mobile --- */ .services-strip-grid { gap: 2rem; } /* --- Section headers --- */ .section-header { margin-bottom: 2.5rem; } /* --- About preview --- */ .about-preview-grid { grid-template-columns: 1fr; gap: 2.5rem; } .about-photo-stack { grid-template-columns: 1fr 1fr; } .about-photo:first-child { margin-top: 0; } /* --- Process steps mobile --- */ .process-steps::before { left: 1.75rem; } .process-step { gap: 1.25rem; } .step-icon-wrap { width: 3.5rem; height: 3.5rem; } .step-icon-bg { width: 3rem; height: 3rem; } .step-content h3 { font-size: 1.05rem; } .process-steps-grid { grid-template-columns: 1fr; } /* --- Items grid mobile --- */ .items-grid { grid-template-columns: repeat(2, 1fr); gap: 0.75rem; } /* --- Services cards mobile --- */ .services-cards { grid-template-columns: 1fr; gap: 1rem; } /* --- Footer mobile --- */ .footer-grid { grid-template-columns: 1fr; gap: 2rem; } .footer-brand { grid-column: auto; } .footer-bottom { flex-direction: column; align-items: flex-start; gap: 0.75rem; } /* --- Page hero mobile --- */ .page-hero { padding: calc(var(--nav-height) + 2.5rem) 0 2.5rem; } /* --- Contact grid --- */ .contact-grid { grid-template-columns: 1fr !important; } /* --- About sections --- */ .about-mission-grid { grid-template-columns: 1fr !important; gap: 2rem !important; } .certs-grid { grid-template-columns: repeat(2, 1fr) !important; } } /* ---- Small mobile (≤ 420px) ---- */ @media (max-width: 420px) { h1 { font-size: 1.75rem; } h2 { font-size: 1.35rem; } .stat-card .stat-value { font-size: 1.25rem; } .items-grid { grid-template-columns: 1fr; } .cert-badge { font-size: 0.65rem; padding: 0.3rem 0.7rem; } .footer-bottom-links { gap: 1rem; } }