@charset "UTF-8";
/*
 * Ratgers.org — tweakcn / shadcn (zinc + blue). Sitebreed override.
 * UTF-8 zonder BOM.
 */

:root {
	--ratgers-primary: oklch(0.488 0.243 264.376);
	--ratgers-primary-hover: #1d4ed8;
	--ratgers-foreground: #18181b;
	--ratgers-muted-foreground: #52525b;
	--ratgers-background: #ffffff;
	--ratgers-muted: #f4f4f5;
	--ratgers-border: #e4e4e7;
	--ratgers-card: #ffffff;
	--ratgers-radius: 0.625rem;

	--default-font: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	--heading-font: "Inter", system-ui, sans-serif;
	--nav-font: "Inter", system-ui, sans-serif;

	--background-color: #ffffff;
	--default-color: #3f3f46;
	--heading-color: #18181b;
	--accent-color: #2563eb;
	--surface-color: #ffffff;
	--contrast-color: #fafafa;

	--nav-color: #52525b;
	--nav-hover-color: #2563eb;
	--nav-mobile-background-color: #fafafa;
	--nav-dropdown-background-color: #ffffff;
	--nav-dropdown-color: #52525b;
	--nav-dropdown-hover-color: #2563eb;

	scroll-behavior: smooth;
}

.light-background {
	--background-color: #fafafa;
	--surface-color: #ffffff;
}

body {
	color: var(--default-color);
	background-color: var(--background-color);
	font-feature-settings: "rlig" 1, "calt" 1;
	-webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5, h6 {
	color: var(--heading-color);
}

a {
	color: var(--accent-color);
}

a:hover {
	color: var(--ratgers-primary-hover);
}

/* Pagina-koppen */
.page-title {
	background-color: var(--ratgers-muted);
	border-bottom: 1px solid var(--ratgers-border);
}

.page-title h1 {
	color: var(--heading-color);
}

.page-title .breadcrumbs a {
	color: var(--accent-color);
}

.page-title .breadcrumbs .current {
	color: var(--ratgers-muted-foreground);
}

.section-title h2 {
	color: var(--heading-color);
}

.section-title p {
	color: var(--ratgers-muted-foreground);
}

/* Diensten / about-kaarten */
.services .service-item,
.about .service-item {
	background-color: var(--ratgers-card);
	border: 1px solid var(--ratgers-border);
	border-radius: var(--ratgers-radius);
	box-shadow: 0 1px 3px rgba(15, 23, 42, 0.06);
}

.services .service-item h3,
.about .service-item h3 {
	color: var(--heading-color);
	border-bottom-color: var(--ratgers-border);
}

.services .service-item p,
.about .service-item p {
	color: var(--default-color);
	font-size: 15px;
	line-height: 1.55;
}

.services .service-item .icon i,
.about .service-item .icon i {
	color: var(--accent-color);
}

.services .service-item .readmore {
	color: var(--accent-color);
	font-weight: 600;
}

/* Portfolio-filters */
.portfolio .portfolio-filters li {
	color: var(--ratgers-muted-foreground);
}

.portfolio .portfolio-filters li:hover,
.portfolio .portfolio-filters li.filter-active {
	color: var(--heading-color);
	border-bottom-color: var(--accent-color);
}

.portfolio .portfolio-info h2,
.portfolio .portfolio-info > p {
	color: var(--ratgers-muted-foreground);
}

/* Contact */
.contact.section {
	background-color: var(--ratgers-muted);
}

.contact .info-item .ratgers-icon-slot {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-right: 15px;
	flex-shrink: 0;
}

.contact .info-item .ratgers-icon--contact {
	width: 44px;
	height: 44px;
}

.social-links a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 0 0.35rem;
	line-height: 0;
}

.social-links .ratgers-icon--social {
	width: 40px;
	height: 40px;
	border-radius: 10px;
}

.scroll-top .ratgers-icon--scroll {
	width: 26px;
	height: 26px;
}

.contact .info-item h2 {
	color: var(--heading-color);
}

.contact .info-item p,
.contact .info-item a {
	color: var(--default-color);
}

.ratgers-contact-form .form-control {
	color: var(--heading-color);
	background-color: #ffffff;
	border: 1px solid var(--ratgers-border);
	border-radius: calc(var(--ratgers-radius) - 0.15rem);
}

.ratgers-contact-form .form-control:focus {
	border-color: var(--accent-color);
	box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.15);
}

.ratgers-contact-form .form-control::placeholder {
	color: #a1a1aa;
}

/* Footer */
.footer {
	border-top: 1px solid var(--ratgers-border);
}

.footer a {
	color: var(--accent-color);
}

/* Knoppen */
.btn-get-started {
	display: inline-block;
	padding: 0.65rem 1.35rem;
	font-weight: 600;
	font-size: 0.95rem;
	line-height: 1.4;
	color: var(--contrast-color);
	background-color: var(--accent-color);
	border: 1px solid transparent;
	border-radius: var(--ratgers-radius);
	transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.btn-get-started:hover {
	color: var(--contrast-color);
	background-color: var(--ratgers-primary-hover);
}

.ratgers-hero .btn-get-started + .btn-get-started {
	background-color: transparent;
	color: #f8fafc;
	border-color: rgba(248, 250, 252, 0.45);
}

.ratgers-hero .btn-get-started + .btn-get-started:hover {
	background-color: rgba(248, 250, 252, 0.12);
	border-color: #f8fafc;
	color: #ffffff;
}

.readmore {
	color: var(--accent-color);
	font-weight: 600;
}

.readmore:hover {
	color: var(--ratgers-primary-hover);
}
