/* Loaded via media query max-width: 768px */

.page_width { padding: 0 16px; }
.section { padding: 52px 0; }
h1 { font-size: 1.7em; }

/* Header / nav */
.header_inner { min-height: 64px; }
.brand img { height: 38px; }
.nav_wrapper { position: static; }
.hamburger { display: block; }
.main_nav {
  display: none; flex-direction: column; align-items: stretch; gap: 0;
  background: var(--white); border-bottom: 1px solid var(--border); box-shadow: var(--shadow);
  position: absolute; top: 100%; left: 0; right: 0; padding: 8px 0 16px; z-index: 300;
}
.main_nav.open { display: flex; }
.main_nav > li > a:not(.btn) { padding: 14px 20px; border-radius: 0; }
.nav_cta { margin: 10px 20px 0; }
.nav_cta .btn { display: block; text-align: center; }
.has_dropdown .dropdown { position: static; box-shadow: none; border: none; background: var(--soft); border-radius: 0; padding: 0; display: none; min-width: 0; }
.has_dropdown:hover .dropdown { display: none; }
.has_dropdown.open .dropdown { display: block; }
.dropdown li a { padding: 12px 30px; }

/* Grids */
.services-grid, .feature-grid, .form-row, .about-grid, .contact-grid, .gs-layout, .footer-cols { grid-template-columns: 1fr; }
.process-grid, .values-grid { grid-template-columns: 1fr; gap: 16px; }
.about-grid, .contact-grid { gap: 32px; }
.gs-layout { gap: 32px; }
.footer-cols { gap: 28px; }

/* Hero carousel */
.service-carousel-wrap { height: 92vw; min-height: 420px; max-height: 560px; }
.sc-content h1 { font-size: 1.7em; max-width: 92%; }
.sc-content p { max-width: 88%; font-size: 1em; }
.sc-bg-icon { font-size: 180px; right: -10px; }
.sc-arrow { width: 44px; height: 44px; font-size: 30px; }
.sc-prev { left: 4px; }
.sc-next { right: 4px; }

/* Service hero */
.service-hero, .service-hero-img, .service-hero-video { padding: 64px 16px; }
.service-hero h1 { font-size: 1.8em; }

.cta-band { padding: 52px 0; }
.enquiry-section { padding: 52px 0; }
.contact-aside { padding: 24px; }
