/*
Theme Name: Safe & Sound Enhanced
Theme URI: https://safeandsound-trainingen.nl/
Author: Safe & Sound Trainingen
Description: Een professionele child theme-laag voor Safe & Sound Trainingen, gebouwd op Extendable.
Template: extendable
Version: 1.0.0
Text Domain: safe-sound-enhanced
*/

:root {
	--ss-blue: #0858c9;
	--ss-blue-dark: #063f91;
	--ss-gold: #f5a400;
	--ss-ink: #101828;
	--ss-muted: #667085;
	--ss-soft: #f4f8ff;
	--ss-line: #d9e4f5;
	--ss-radius: 8px;
}

html {
	scroll-behavior: smooth;
}

body {
	background: #ffffff;
	color: var(--ss-ink);
	font-size: 18px;
	line-height: 1.65;
}

a {
	text-decoration-thickness: 1px;
	text-underline-offset: 0.18em;
}

a:active {
	background: transparent;
}

.ss-site-header {
	background: rgba(255, 255, 255, 0.96);
	border-bottom: 1px solid rgba(8, 88, 201, 0.12);
	box-shadow: 0 10px 30px rgba(16, 24, 40, 0.06);
	position: sticky;
	top: 0;
	z-index: 20;
}

.ss-site-header .wp-block-navigation a {
	color: var(--ss-ink);
	font-size: 0.95rem;
	font-weight: 700;
	text-decoration: none;
}

.ss-site-header .wp-block-navigation a:hover,
.ss-site-header .wp-block-navigation a:focus {
	color: var(--ss-blue);
	text-decoration: none;
}

.ss-logo img {
	max-height: 74px;
	width: auto;
}

.ss-hero {
	background:
		linear-gradient(90deg, rgba(4, 30, 66, 0.94), rgba(8, 88, 201, 0.72)),
		url("/wp-content/uploads/2024/12/BHV-banner.png") center / cover no-repeat;
	color: #ffffff;
	min-height: 660px;
	position: relative;
}

.ss-hero h1 {
	letter-spacing: 0;
	line-height: 1.02;
	max-width: 980px;
}

.ss-hero p {
	max-width: 760px;
}

.ss-eyebrow {
	color: var(--ss-gold);
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ss-hero-card {
	background: rgba(255, 255, 255, 0.1);
	border: 1px solid rgba(255, 255, 255, 0.22);
	border-radius: var(--ss-radius);
	backdrop-filter: blur(10px);
}

.ss-button .wp-block-button__link,
.wp-block-button.ss-button .wp-block-button__link {
	background: var(--ss-gold);
	border: 2px solid var(--ss-gold);
	border-radius: var(--ss-radius);
	color: #121212;
	font-weight: 800;
	padding: 0.9rem 1.2rem;
}

.ss-button .wp-block-button__link:hover,
.wp-block-button.ss-button .wp-block-button__link:hover {
	background: #ffc247;
	border-color: #ffc247;
	color: #121212;
}

.ss-button-outline .wp-block-button__link,
.wp-block-button.ss-button-outline .wp-block-button__link {
	background: transparent;
	border: 2px solid currentColor;
	border-radius: var(--ss-radius);
	color: inherit;
	font-weight: 800;
	padding: 0.9rem 1.2rem;
}

.ss-section {
	padding-bottom: clamp(4rem, 8vw, 7rem);
	padding-top: clamp(4rem, 8vw, 7rem);
}

.ss-section-tight {
	padding-bottom: clamp(2.75rem, 5vw, 4.5rem);
	padding-top: clamp(2.75rem, 5vw, 4.5rem);
}

.ss-band {
	background: var(--ss-soft);
}

.ss-card,
.ss-service-card {
	background: #ffffff;
	border: 1px solid var(--ss-line);
	border-radius: var(--ss-radius);
	box-shadow: 0 18px 50px rgba(16, 24, 40, 0.08);
	height: 100%;
}

.ss-service-card {
	overflow: hidden;
}

.ss-service-card img {
	aspect-ratio: 16 / 10;
	object-fit: cover;
	width: 100%;
}

.ss-service-card h3,
.ss-card h3 {
	color: var(--ss-blue-dark);
	line-height: 1.18;
}

.ss-check-list {
	list-style: none;
	padding-left: 0;
}

.ss-check-list li {
	margin-bottom: 0.8rem;
	padding-left: 1.75rem;
	position: relative;
}

.ss-check-list li::before {
	color: var(--ss-gold);
	content: "+";
	font-weight: 900;
	left: 0;
	position: absolute;
	top: 0;
}

.ss-stat {
	border-left: 4px solid var(--ss-gold);
	padding-left: 1rem;
}

.ss-stat strong {
	color: var(--ss-blue-dark);
	display: block;
	font-size: clamp(1.75rem, 3vw, 2.6rem);
	line-height: 1;
}

.ss-contact {
	background:
		linear-gradient(135deg, rgba(6, 63, 145, 0.96), rgba(8, 88, 201, 0.9)),
		url("/wp-content/uploads/2024/12/first-aid-908591_1280.jpg") center / cover no-repeat;
	color: #ffffff;
}

.ss-contact .forminator-ui,
.ss-contact form,
.ss-contact .wp-block-shortcode {
	color: var(--ss-ink);
}

.ss-site-footer {
	background: #07152f;
	color: #d8e4fb;
}

.ss-site-footer a {
	color: #ffffff;
}

.ss-site-footer .wp-block-navigation a {
	color: #d8e4fb;
	font-size: 0.95rem;
	text-decoration: none;
}

@media (max-width: 781px) {
	body {
		font-size: 17px;
	}

	.ss-site-header {
		position: static;
	}

	.ss-hero {
		min-height: auto;
	}

	.ss-logo img {
		max-height: 58px;
	}

	.ss-hero h1 {
		font-size: clamp(2.35rem, 13vw, 3.75rem) !important;
	}
}
