/*
Theme Name: Inca Safety
Theme URI: https://incasafety.com
Author: Inca Safety
Author URI: https://incasafety.com
Description: Official Inca Safety website theme — WHS, ISO, psychosocial risk and training. Brand-built, fully responsive, with Home, Services, Service detail, Training, Resources, About and Contact pages.
Version: 1.4.0
Requires at least: 5.5
Tested up to: 6.5
Requires PHP: 7.2
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: inca-safety
*/

/* ------------------------------------------------------------------ *
   Base resets
 * ------------------------------------------------------------------ */
* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body {
	font-family: 'Montserrat', system-ui, -apple-system, sans-serif;
	-webkit-font-smoothing: antialiased;
	color: #201E3D;
	background: #fff;
	overflow-x: hidden;
}
a { text-decoration: none; color: inherit; }
button { font-family: inherit; }
img { max-width: 100%; }
::selection { background: #70DA15; color: #201E3D; }

/* WordPress admin bar offset for the sticky header */
.admin-bar header[role="banner"] { top: 32px; }
@media screen and (max-width: 782px) {
	.admin-bar header[role="banner"] { top: 46px; }
}

/* ------------------------------------------------------------------ *
   Mobile navigation panel (toggled by the hamburger)
 * ------------------------------------------------------------------ */
.nav-mobile { display: none; }
.nav-mobile .menu-inner { display: none; }
.nav-mobile.open .menu-inner { display: flex; }

/* ------------------------------------------------------------------ *
   Responsive — single column + hamburger under 860px
 * ------------------------------------------------------------------ */
@media (max-width: 860px) {
	section, footer { padding-left: 20px !important; padding-right: 20px !important; }

	/* stack every multi-column grid into a single column */
	[style*="display: grid"],
	[style*="display:grid"] { grid-template-columns: 1fr !important; gap: 22px !important; }

	/* fluid headings */
	h1 { font-size: clamp(30px, 8.5vw, 52px) !important; letter-spacing: -0.6px !important; }
	h2 { font-size: clamp(24px, 6vw, 40px) !important; letter-spacing: -0.3px !important; }

	/* tame oversized hero padding */
	[style*="padding:84px 40px 96px"] { padding-top: 46px !important; padding-bottom: 56px !important; }

	/* swap desktop nav for the hamburger */
	.nav-desktop, .cta-desktop { display: none !important; }
	.nav-burger { display: inline-flex !important; }
	.nav-mobile { display: block !important; }

	/* sticky service-detail sidebar should not stick on mobile */
	aside[style*="sticky"] { position: static !important; top: auto !important; }
}

@media (min-width: 861px) {
	.nav-burger { display: none !important; }
}
