/* AC-Tech homepage bundle */


/* --- design-tokens.css --- */

/**
 * AC-Tech design tokens â€” Atmospheric Comfort System.
 * Source: css.css (Local Sites/ac-tech)
 */

:root {
	/* Surfaces */
	--ac-tech-surface: #f5fafd;
	--ac-tech-surface-dim: #d5dbde;
	--ac-tech-surface-bright: #f5fafd;
	--ac-tech-surface-container-lowest: #ffffff;
	--ac-tech-surface-container-low: #eff4f7;
	--ac-tech-surface-container: #e9eff1;
	--ac-tech-surface-container-high: #e3e9ec;
	--ac-tech-surface-container-highest: #dee3e6;
	--ac-tech-surface-variant: #dee3e6;
	--ac-tech-background: #f5fafd;
	--ac-tech-inverse-surface: #2b3134;
	--ac-tech-inverse-on-surface: #ecf2f4;

	/* Content colors */
	--ac-tech-on-surface: #171c1f;
	--ac-tech-on-surface-variant: #3d494d;
	--ac-tech-on-background: #171c1f;
	--ac-tech-outline: #6d797e;
	--ac-tech-outline-variant: #bcc9ce;
	--ac-tech-surface-tint: #00677d;
	--ac-tech-navy: #03045e;

	/* Brand */
	--ac-tech-primary: #00677d;
	--ac-tech-on-primary: #ffffff;
	--ac-tech-primary-container: #00b4d8;
	--ac-tech-on-primary-container: #00414f;
	--ac-tech-inverse-primary: #4cd6fb;
	--ac-tech-secondary: #5b5f61;
	--ac-tech-on-secondary: #ffffff;
	--ac-tech-secondary-container: #e0e3e6;
	--ac-tech-on-secondary-container: #626567;
	--ac-tech-tertiary: #914d00;
	--ac-tech-on-tertiary: #ffffff;
	--ac-tech-tertiary-container: #eb8f3b;
	--ac-tech-on-tertiary-container: #5d2f00;

	/* Status */
	--ac-tech-error: #ba1a1a;
	--ac-tech-on-error: #ffffff;
	--ac-tech-error-container: #ffdad6;
	--ac-tech-on-error-container: #93000a;

	/* Fixed tones */
	--ac-tech-primary-fixed: #b3ebff;
	--ac-tech-primary-fixed-dim: #4cd6fb;
	--ac-tech-on-primary-fixed: #001f27;
	--ac-tech-on-primary-fixed-variant: #004e5f;

	/* Legacy aliases (existing theme classes) */
	--ac-tech-color-bg: var(--ac-tech-surface-container-lowest);
	--ac-tech-color-surface: var(--ac-tech-surface-container-low);
	--ac-tech-color-text: var(--ac-tech-on-surface);
	--ac-tech-color-muted: var(--ac-tech-on-surface-variant);
	--ac-tech-color-primary: var(--ac-tech-primary-container);
	--ac-tech-color-primary-dark: var(--ac-tech-primary);
	--ac-tech-color-accent: var(--ac-tech-tertiary-container);

	/* Radius */
	--ac-tech-radius-sm: 0.25rem;
	--ac-tech-radius: 0.5rem;
	--ac-tech-radius-md: 0.75rem;
	--ac-tech-radius-lg: 1rem;
	--ac-tech-radius-xl: 1.5rem;
	--ac-tech-radius-full: 9999px;

	/* Spacing */
	--ac-tech-space-base: 0.5rem;
	--ac-tech-space-section: clamp(4rem, 8vw, 7.5rem);
	--ac-tech-space-section-mobile: 4rem;
	--ac-tech-grid-margin-desktop: 5rem;
	--ac-tech-grid-margin-tablet: 2.5rem;
	--ac-tech-grid-margin-mobile: 1.25rem;
	--ac-tech-grid-gutter: 1.5rem;
	--ac-tech-container: 80rem;
	--ac-tech-space: clamp(1.5rem, 4vw, 3rem);

	/* Typography */
	--ac-tech-font-family: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
	--ac-tech-font-display-lg: clamp(2.25rem, 5vw, 3rem);
	--ac-tech-font-headline-md: clamp(1.625rem, 3vw, 1.875rem);
	--ac-tech-font-headline-sm: 1.5rem;
	--ac-tech-font-body-lg: 1.125rem;
	--ac-tech-font-body-md: 1rem;
	--ac-tech-font-label-md: 0.875rem;
	--ac-tech-font-label-sm: 0.75rem;

	/* Elevation */
	--ac-tech-shadow-cool: 0 4px 20px rgb(3 4 94 / 12%);
	--ac-tech-shadow-card: 0 4px 20px rgb(0 103 125 / 12%);
	--ac-tech-shadow-glow: 0 0 15px rgb(0 180 216 / 40%);

	/* Effects */
	--ac-tech-glass-bg: rgb(255 255 255 / 85%);
	--ac-tech-glass-border: rgb(0 103 125 / 10%);
	--ac-tech-glass-blur: 12px;
}


/* --- site-chrome.css --- */

/**
 * Site header and footer â€” converted from home.html (glass-nav + inverse footer).
 */

body {
	font-family: var(--ac-tech-font-family);
	background-color: var(--ac-tech-background);
	color: var(--ac-tech-on-background);
}

/* Header */
.ac-tech-site-header {
	position: sticky;
	top: 0;
	z-index: 50;
	backdrop-filter: blur(var(--ac-tech-glass-blur));
	background: var(--ac-tech-glass-bg);
	border-bottom: 1px solid var(--ac-tech-glass-border);
}

.ac-tech-site-header__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding-block: 1rem;
}

.ac-tech-site-header__brand {
	display: inline-flex;
	align-items: center;
	gap: 0.75rem;
	text-decoration: none;
	color: var(--ac-tech-on-surface);
	min-width: 0;
}

.ac-tech-site-header__brand .custom-logo-link {
	display: inline-flex;
	line-height: 0;
}

.ac-tech-site-header__brand .custom-logo {
	max-height: 2rem;
	width: auto;
}

.ac-tech-site-logo {
	flex-shrink: 0;
	color: var(--ac-tech-primary);
}

.ac-tech-site-header__title {
	margin: 0;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: -0.01em;
	color: var(--ac-tech-on-surface);
}

.ac-tech-site-header__nav {
	display: flex;
	align-items: center;
	position: relative;
}

/* Underscores base: .main-navigation { width: 100% } pushes links to the left */
.ac-tech-site-header__nav.main-navigation {
	width: auto;
	flex: 0 1 auto;
}

.ac-tech-site-header__menu,
.ac-tech-site-header__menu ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

/*
 * Override Underscores (style.css @ 37.5em): keep one breakpoint at 48rem
 * so menu + hamburger are never visible together between 600â€“768px.
 */
@media (max-width: 47.99rem) {
	.ac-tech-site-header__nav.main-navigation .ac-tech-site-header__menu {
		display: none;
	}

	.ac-tech-site-header__nav.main-navigation.toggled .ac-tech-site-header__menu {
		display: flex;
	}

	.ac-tech-site-header__nav .menu-toggle.ac-tech-site-header__toggle {
		display: inline-flex;
	}
}

@media (min-width: 48rem) {
	.ac-tech-site-header__nav.main-navigation .ac-tech-site-header__menu {
		display: flex;
		align-items: center;
		gap: 2rem;
	}

	.ac-tech-site-header__nav .menu-toggle.ac-tech-site-header__toggle {
		display: none;
	}
}

.ac-tech-site-header__menu a {
	color: var(--ac-tech-on-surface-variant);
	font-size: var(--ac-tech-font-label-md);
	font-weight: 500;
	text-decoration: none;
	transition: color 0.2s ease;
}

.ac-tech-site-header__menu a:hover,
.ac-tech-site-header__menu a:focus {
	color: var(--ac-tech-primary);
}

.ac-tech-site-header__menu a:visited {
	color: var(--ac-tech-on-surface-variant);
}

/* Submeniu (ex. Servicii) */
.ac-tech-site-header__menu > li {
	position: relative;
}

.ac-tech-site-header__menu .menu-item-has-children > a {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
}

.ac-tech-site-header__menu .menu-item-has-children > a::after {
	content: "";
	display: inline-block;
	width: 0.4rem;
	height: 0.4rem;
	margin-top: 0.15rem;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: rotate(45deg);
	opacity: 0.7;
}

.ac-tech-site-header__menu .sub-menu {
	list-style: none;
	margin: 0;
	padding: 0;
}

.ac-tech-site-header__menu .sub-menu a {
	display: block;
}

@media (min-width: 48rem) {
	.ac-tech-site-header__nav.main-navigation ul ul {
		float: none;
		left: auto;
		box-shadow: none;
	}

	.ac-tech-site-header__menu .menu-item-has-children > .sub-menu {
		position: absolute;
		top: 100%;
		left: 0;
		min-width: 12rem;
		display: flex;
		flex-direction: column;
		align-items: stretch;
		gap: 0;
		padding: 0.5rem 0 0.5rem;
		margin: 0;
		background: var(--ac-tech-surface);
		border: 1px solid var(--ac-tech-glass-border);
		border-radius: var(--ac-tech-radius);
		box-shadow: var(--ac-tech-shadow-card);
		z-index: 100;
		pointer-events: none;
		visibility: hidden;
		opacity: 0;
		transition:
			visibility 0s linear 0.2s,
			opacity 0.15s ease 0s;
	}

	.ac-tech-site-header__menu .menu-item-has-children:hover > .sub-menu,
	.ac-tech-site-header__menu .menu-item-has-children.focus > .sub-menu {
		pointer-events: auto;
		visibility: visible;
		opacity: 1;
		transition:
			visibility 0s linear 0s,
			opacity 0.15s ease 0.05s;
	}

	.ac-tech-site-header__menu .sub-menu a {
		padding: 0.5rem 1rem;
		white-space: nowrap;
	}
}

@media (max-width: 47.99rem) {
	/* Submeniul rămâne în flux — Underscores folosește position:absolute și acoperă itemii de dedesubt */
	.ac-tech-site-header__nav.main-navigation ul ul {
		position: static;
		float: none;
		left: auto;
		top: auto;
		box-shadow: none;
		z-index: auto;
	}

	.ac-tech-site-header__nav.main-navigation ul ul a {
		width: auto;
	}

	.ac-tech-site-header__menu .menu-item-has-children > a::after {
		transition: transform 0.2s ease;
	}

	.ac-tech-site-header__menu .menu-item-has-children.focus > a::after {
		transform: rotate(-135deg);
		margin-top: 0.3rem;
	}

	.ac-tech-site-header__menu .sub-menu {
		display: none;
		flex-direction: column;
		align-items: stretch;
		gap: 0.35rem;
		padding-inline-start: 1rem;
		margin-block: 0.5rem 0;
		border-inline-start: 2px solid var(--ac-tech-outline-variant);
	}

	.ac-tech-site-header__menu li.focus > .sub-menu {
		display: flex;
	}

	.ac-tech-site-header__nav.toggled .ac-tech-site-header__menu .sub-menu li + li {
		margin-top: 0;
	}

	.ac-tech-site-header__nav.toggled .ac-tech-site-header__menu .sub-menu a {
		padding-block: 0.35rem;
		font-size: var(--ac-tech-font-label-sm);
	}
}

.ac-tech-site-header__actions {
	display: none;
	flex-shrink: 0;
}

.ac-tech-site-header__drawer {
	display: contents;
}

.ac-tech-site-header__cta {
	box-shadow: var(--ac-tech-shadow-card);
}

.ac-tech-site-header__toggle {
	display: inline-flex;
	flex-direction: column;
	justify-content: center;
	gap: 0.3rem;
	width: 2.75rem;
	height: 2.75rem;
	padding: 0;
	border: 0;
	border-radius: var(--ac-tech-radius);
	background: transparent;
	cursor: pointer;
}

.ac-tech-site-header__toggle-bar {
	display: block;
	width: 1.25rem;
	height: 2px;
	margin-inline: auto;
	background: var(--ac-tech-on-surface);
}

@media (min-width: 48rem) {
	.ac-tech-site-header__inner {
		display: grid;
		grid-template-columns: 1fr auto 1fr;
		align-items: center;
		column-gap: 1rem;
	}

	.ac-tech-site-header__brand {
		justify-self: start;
	}

	.ac-tech-site-header__nav {
		display: contents;
	}

	.ac-tech-site-header__drawer {
		display: contents;
	}

	.ac-tech-site-header__menu {
		grid-column: 2;
		justify-self: center;
	}

	.ac-tech-site-header__actions {
		display: block;
		grid-column: 3;
		justify-self: end;
	}
}

@media (max-width: 47.99rem) {
	.ac-tech-site-header__nav {
		position: static;
	}

	.ac-tech-site-header__drawer {
		display: none;
	}

	.ac-tech-site-header__nav.toggled .ac-tech-site-header__drawer {
		display: flex;
		flex-direction: column;
		align-items: stretch;
		gap: 0;
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
		max-height: calc(100dvh - 4.5rem);
		overflow-y: auto;
		overscroll-behavior: contain;
		padding: 1rem var(--ac-tech-grid-margin-mobile);
		background: var(--ac-tech-glass-bg);
		border-bottom: 1px solid var(--ac-tech-glass-border);
		backdrop-filter: blur(var(--ac-tech-glass-blur));
		z-index: 40;
	}

	.ac-tech-site-header__nav.toggled .ac-tech-site-header__menu {
		display: flex;
		flex-direction: column;
		align-items: stretch;
		gap: 0;
		position: static;
		padding: 0;
		background: transparent;
		border: 0;
		backdrop-filter: none;
	}

	.ac-tech-site-header__nav.toggled .ac-tech-site-header__menu li + li {
		margin-top: 0.75rem;
	}

	.ac-tech-site-header__nav.toggled .ac-tech-site-header__menu .menu-item-has-children {
		position: static;
	}

	.ac-tech-site-header__nav.toggled .ac-tech-site-header__menu .menu-item-has-children > .sub-menu {
		position: static;
		width: 100%;
	}

	.ac-tech-site-header__inner {
		position: relative;
		flex-wrap: wrap;
	}

	.ac-tech-site-header__nav.toggled .ac-tech-site-header__actions {
		display: block;
		margin-top: 0.75rem;
	}

	.ac-tech-site-header__nav.toggled .ac-tech-site-header__cta {
		display: flex;
		width: 100%;
		justify-content: center;
	}
}

.ac-tech-site-header.is-scrolled .ac-tech-site-header__inner {
	padding-block: 0.5rem;
}

/* Footer â€” home.html surface-dim */
.ac-tech-site-footer {
	background: var(--ac-tech-surface-dim);
	color: var(--ac-tech-on-surface);
	padding-block: 3rem;
}

.ac-tech-site-footer__grid {
	display: grid;
	gap: 3rem;
	grid-template-columns: repeat(2, 1fr);
	margin-bottom: 3rem;
}

@media (min-width: 64rem) {
	.ac-tech-site-footer__grid {
		grid-template-columns: repeat(4, 1fr);
	}

	.ac-tech-site-footer__brand {
		grid-column: auto;
	}
}

.ac-tech-site-footer__brand {
	grid-column: span 2;
}

@media (min-width: 64rem) {
	.ac-tech-site-footer__brand {
		grid-column: span 1;
	}
}

.ac-tech-site-footer__brand-link {
	display: inline-flex;
	align-items: center;
	gap: 0.75rem;
	margin-bottom: 1.5rem;
	text-decoration: none;
	color: var(--ac-tech-primary);
}

.ac-tech-site-footer__brand-name {
	font-size: 1.25rem;
	font-weight: 700;
	color: var(--ac-tech-on-surface);
}

.ac-tech-site-footer__tagline {
	margin: 0;
	max-width: 20rem;
	color: var(--ac-tech-on-secondary-container);
	font-size: 0.875rem;
	line-height: 1.6;
}

.ac-tech-site-footer__column-title {
	margin: 0 0 1.5rem;
	font-size: var(--ac-tech-font-body-md);
	font-weight: 700;
	color: var(--ac-tech-on-surface);
}

.ac-tech-site-footer__links {
	list-style: none;
	margin: 0;
	padding: 0;
}

.ac-tech-site-footer__links li + li {
	margin-top: 0.75rem;
}

.ac-tech-site-footer__links a,
.ac-tech-site-footer__links li {
	color: var(--ac-tech-on-secondary-container);
	font-size: 0.875rem;
}

.ac-tech-site-footer__links a {
	text-decoration: none;
	transition: color 0.2s ease;
}

.ac-tech-site-footer__links a:hover,
.ac-tech-site-footer__links a:focus {
	color: var(--ac-tech-primary);
}

.ac-tech-site-footer__links a:visited {
	color: var(--ac-tech-on-secondary-container);
}

.ac-tech-site-footer__links--icons li {
	display: flex;
	align-items: center;
	gap: 0.5rem;
}

.ac-tech-site-footer__icon {
	width: 1.125rem;
	height: 1.125rem;
	color: var(--ac-tech-on-secondary-container);
}

.ac-tech-site-footer__bottom {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding-top: 2rem;
	border-top: 1px solid var(--ac-tech-outline-variant);
}

@media (min-width: 48rem) {
	.ac-tech-site-footer__bottom {
		flex-direction: row;
	}
}

.ac-tech-site-footer__copyright {
	margin: 0;
	color: var(--ac-tech-on-secondary-container);
	font-size: 0.75rem;
}

.ac-tech-site-footer__social {
	display: flex;
	gap: 1rem;
}

.ac-tech-site-footer__social a {
	color: var(--ac-tech-on-secondary-container);
	text-decoration: none;
	transition: color 0.2s ease;
}

.ac-tech-site-footer__social a:hover,
.ac-tech-site-footer__social a:focus {
	color: var(--ac-tech-primary);
}

.site-footer .site-info {
	display: none;
}

.ac-tech-icon {
	display: inline-block;
	width: 1.25em;
	height: 1.25em;
	vertical-align: middle;
	fill: currentColor;
	flex-shrink: 0;
}


/* --- presentation-base.css --- */

/**
 * Presentation layout and components â€” Atmospheric Comfort System.
 */

.site-main--front,
.site-main--page {
	background: var(--ac-tech-background);
}

.site-main--page .entry-header {
	display: none;
}

.ac-tech-container {
	width: min(
		100% - (var(--ac-tech-grid-margin-mobile) * 2),
		var(--ac-tech-container)
	);
	margin-inline: auto;
}

@media (min-width: 48rem) {
	.ac-tech-container {
		width: min(
			100% - (var(--ac-tech-grid-margin-tablet) * 2),
			var(--ac-tech-container)
		);
	}
}

@media (min-width: 80rem) {
	.ac-tech-container {
		width: min(
			100% - (var(--ac-tech-grid-margin-desktop) * 2),
			var(--ac-tech-container)
		);
	}
}

.ac-tech-section {
	padding-block: var(--ac-tech-space-section);
}

/* Typography utilities */
.ac-tech-display-lg {
	font-size: var(--ac-tech-font-display-lg);
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: -0.02em;
	color: var(--ac-tech-on-surface);
}

.ac-tech-headline-md {
	font-size: var(--ac-tech-font-headline-md);
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: -0.01em;
	color: var(--ac-tech-on-surface);
}

.ac-tech-headline-sm {
	font-size: var(--ac-tech-font-headline-sm);
	font-weight: 600;
	line-height: 1.4;
	color: var(--ac-tech-on-surface);
}

.ac-tech-body-lg {
	font-size: var(--ac-tech-font-body-lg);
	line-height: 1.6;
	color: var(--ac-tech-on-surface-variant);
}

.ac-tech-label-md {
	font-size: var(--ac-tech-font-label-md);
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: 0.01em;
}

.ac-tech-label-sm {
	font-size: var(--ac-tech-font-label-sm);
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

.ac-tech-section-header {
	margin-bottom: 2rem;
	text-align: center;
	max-width: 42rem;
	margin-inline: auto;
}

.ac-tech-section-header__title {
	margin: 0 0 0.75rem;
	font-size: var(--ac-tech-font-headline-md);
	line-height: 1.3;
	color: var(--ac-tech-on-surface);
}

.ac-tech-section-header__lead {
	margin: 0;
	color: var(--ac-tech-on-surface-variant);
	font-size: var(--ac-tech-font-body-lg);
}

/* Buttons */
.ac-tech-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.875rem 1.5rem;
	border-radius: var(--ac-tech-radius-full);
	font-size: var(--ac-tech-font-label-md);
	font-weight: 600;
	text-decoration: none;
	line-height: 1.2;
	border: 1.5px solid transparent;
	transition: background-color 0.2s ease, box-shadow 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.ac-tech-btn--primary {
	background: var(--ac-tech-primary-container);
	color: var(--ac-tech-on-primary);
}

.ac-tech-btn--primary:visited {
	background: var(--ac-tech-primary-container);
	color: var(--ac-tech-on-primary);
}

.ac-tech-btn--primary:hover,
.ac-tech-btn--primary:focus {
	background: var(--ac-tech-primary);
	color: var(--ac-tech-on-primary);
	box-shadow: var(--ac-tech-shadow-glow);
}

.ac-tech-btn--secondary {
	background: transparent;
	color: var(--ac-tech-primary);
	border-color: var(--ac-tech-primary-container);
}

.ac-tech-btn--secondary:visited {
	background: transparent;
	color: var(--ac-tech-primary);
	border-color: var(--ac-tech-primary-container);
}

.ac-tech-btn--secondary:hover,
.ac-tech-btn--secondary:focus {
	background: var(--ac-tech-surface-container-low);
	color: var(--ac-tech-primary);
}

.ac-tech-btn--ghost {
	background: transparent;
	color: var(--ac-tech-navy);
	border-color: transparent;
}

.ac-tech-btn--ghost:visited {
	background: transparent;
	color: var(--ac-tech-navy);
	border-color: transparent;
}

.ac-tech-btn--ghost:hover,
.ac-tech-btn--ghost:focus {
	background: var(--ac-tech-surface-container-low);
	color: var(--ac-tech-navy);
}

.ac-tech-link {
	color: var(--ac-tech-primary);
	font-weight: 600;
	text-decoration: none;
}

.ac-tech-link:visited {
	color: var(--ac-tech-primary);
}

.ac-tech-link:hover,
.ac-tech-link:focus {
	color: var(--ac-tech-primary-container);
	text-decoration: underline;
}

/* Cards */
.ac-tech-card-grid {
	display: grid;
	gap: var(--ac-tech-grid-gutter);
	list-style: none;
	margin: 0;
	padding: 0;
	grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));
}

.ac-tech-card-grid--wide {
	grid-template-columns: repeat(auto-fit, minmax(18rem, 1fr));
}

.ac-tech-card {
	background: var(--ac-tech-surface-container-lowest);
	border: 1px solid var(--ac-tech-outline-variant);
	border-radius: var(--ac-tech-radius-xl);
	padding: 2rem;
	box-shadow: var(--ac-tech-shadow-card);
}

.ac-tech-card__title {
	margin: 0 0 0.5rem;
	font-size: var(--ac-tech-font-headline-sm);
	color: var(--ac-tech-on-surface);
}

.ac-tech-card__text {
	margin: 0;
	color: var(--ac-tech-on-surface-variant);
	line-height: 1.6;
}

/* Chips / badges */
.ac-tech-chip {
	display: inline-flex;
	align-items: center;
	padding: 0.375rem 0.875rem;
	border-radius: var(--ac-tech-radius-full);
	background: var(--ac-tech-primary-fixed);
	color: var(--ac-tech-navy);
	font-size: var(--ac-tech-font-label-sm);
	font-weight: 600;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

/* Content */
.ac-tech-content {
	color: var(--ac-tech-on-surface);
	line-height: 1.7;
}

.ac-tech-content > :first-child {
	margin-top: 0;
}

.ac-tech-content > :last-child {
	margin-bottom: 0;
}

.ac-tech-section-footer {
	margin: 2rem 0 0;
	text-align: center;
}

/* Page hero */
.ac-tech-page-hero {
	background: linear-gradient(135deg, var(--ac-tech-surface-container-lowest) 0%, var(--ac-tech-surface-container) 100%);
	border-bottom: 1px solid var(--ac-tech-outline-variant);
	padding-block: clamp(2rem, 5vw, 3.5rem);
}

.ac-tech-page-hero__title {
	margin: 0 0 0.75rem;
	font-size: var(--ac-tech-font-display-lg);
	line-height: 1.15;
	color: var(--ac-tech-on-surface);
}

.ac-tech-page-hero__subtitle {
	margin: 0;
	max-width: 42rem;
	color: var(--ac-tech-on-surface-variant);
	font-size: var(--ac-tech-font-body-lg);
}

/* CTA band */
.ac-tech-cta {
	background: var(--ac-tech-inverse-surface);
	color: var(--ac-tech-inverse-on-surface);
	text-align: center;
}

.ac-tech-cta__title {
	margin: 0 0 0.75rem;
	font-size: var(--ac-tech-font-headline-md);
}

.ac-tech-cta__text {
	margin: 0 0 1.5rem;
	color: var(--ac-tech-outline-variant);
	max-width: 36rem;
	margin-inline: auto;
	font-size: var(--ac-tech-font-body-lg);
}

/* Values */
.ac-tech-values__list {
	display: grid;
	gap: var(--ac-tech-grid-gutter);
	list-style: none;
	margin: 1.5rem 0 0;
	padding: 0;
	grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
}

.ac-tech-values__label {
	margin: 0 0 0.35rem;
	font-size: var(--ac-tech-font-label-md);
	font-weight: 600;
	color: var(--ac-tech-on-surface);
}

.ac-tech-values__text {
	margin: 0;
	color: var(--ac-tech-on-surface-variant);
}

/* Contact */
.ac-tech-contact-layout {
	display: grid;
	gap: 2rem;
	margin-block: var(--ac-tech-space);
}

@media (min-width: 48rem) {
	.ac-tech-contact-layout {
		grid-template-columns: 1.4fr 1fr;
		align-items: start;
	}
}

.ac-tech-contact-info {
	background: var(--ac-tech-surface-container-lowest);
	border: 1px solid var(--ac-tech-outline-variant);
	border-radius: var(--ac-tech-radius-xl);
	padding: 2rem;
	box-shadow: var(--ac-tech-shadow-card);
}

.ac-tech-contact-info__title {
	margin: 0 0 1rem;
	font-size: var(--ac-tech-font-headline-sm);
}

.ac-tech-contact-info__list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.ac-tech-contact-info__list li + li {
	margin-top: 1rem;
	padding-top: 1rem;
	border-top: 1px solid var(--ac-tech-outline-variant);
}

.ac-tech-contact-info__label {
	display: block;
	font-size: var(--ac-tech-font-label-sm);
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: var(--ac-tech-on-surface-variant);
	margin-bottom: 0.25rem;
}

.ac-tech-contact-info__list a {
	color: var(--ac-tech-primary);
}

/* Form inputs (for future sections / WP forms) */
.ac-tech-input,
.ac-tech-content input[type="text"],
.ac-tech-content input[type="email"],
.ac-tech-content input[type="tel"],
.ac-tech-content textarea {
	width: 100%;
	padding: 0.875rem 1rem;
	border: 1.5px solid transparent;
	border-radius: var(--ac-tech-radius);
	background: var(--ac-tech-surface-container-low);
	color: var(--ac-tech-on-surface);
	font: inherit;
	transition: background-color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

.ac-tech-input:focus,
.ac-tech-content input[type="text"]:focus,
.ac-tech-content input[type="email"]:focus,
.ac-tech-content input[type="tel"]:focus,
.ac-tech-content textarea:focus {
	outline: none;
	background: var(--ac-tech-surface-container-lowest);
	border-color: var(--ac-tech-primary-container);
	box-shadow: inset 0 0 0 1px rgb(0 180 216 / 8%);
}


/* --- front-page.css --- */

/**
 * Homepage sections â€” converted from home.html using design tokens.
 */

html:has(.site-main--front) {
	scroll-behavior: smooth;
}

.site-main--front {
	width: 100%;
	max-width: none;
}

/* Shared */
.ac-tech-home-section {
	padding-block: var(--ac-tech-space-section);
}

.ac-tech-home-section__header {
	margin-bottom: 4rem;
}

.ac-tech-home-section__header--center {
	text-align: center;
}

.ac-tech-home-section__title {
	margin: 0 0 1rem;
	font-size: var(--ac-tech-font-headline-md);
	line-height: 1.3;
	color: var(--ac-tech-on-surface);
}

@media (min-width: 64rem) {
	.ac-tech-home-section__title {
		font-size: var(--ac-tech-font-display-lg);
	}
}

.ac-tech-home-section__lead {
	margin: 0 auto;
	max-width: 42rem;
	color: var(--ac-tech-on-surface-variant);
	font-size: var(--ac-tech-font-body-md);
	line-height: 1.6;
}

.ac-tech-home-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	padding: 0.25rem 0.75rem;
	border-radius: var(--ac-tech-radius-full);
	background: var(--ac-tech-primary-fixed);
	color: var(--ac-tech-on-primary-fixed);
	font-size: var(--ac-tech-font-label-sm);
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
}

.ac-tech-home-badge__icon {
	font-size: 0.875rem;
}

.ac-tech-home-btn {
	gap: 0.5rem;
}

.ac-tech-home-btn--outline {
	border-width: 2px;
}

.ac-tech-cool-shadow,
.ac-tech-home-carousel__media,
.ac-tech-home-service-card,
.ac-tech-home-review-card,
.ac-tech-home-cta-final__card,
.ac-tech-home-process__number {
	box-shadow: var(--ac-tech-shadow-card);
}

/* Hero carousel */
.ac-tech-home-carousel {
	position: relative;
	padding-block: clamp(2rem, 4vw, var(--ac-tech-space-section));
}

.ac-tech-home-carousel__layout {
	display: flex;
	flex-direction: column;
	min-height: clamp(24rem, 50vh, 37.5rem);
	overflow: hidden;
	border-radius: var(--ac-tech-radius-xl);
	background: var(--ac-tech-surface-container-low);
	box-shadow: var(--ac-tech-shadow-card);
}

@media (min-width: 64rem) {
	.ac-tech-home-carousel__layout {
		flex-direction: row;
	}
}

.ac-tech-home-carousel__content {
	display: flex;
	flex: 1 1 50%;
	flex-direction: column;
	justify-content: center;
	padding: clamp(2rem, 4vw, 3.5rem);
	background: var(--ac-tech-surface-container-lowest);
	z-index: 1;
}

.ac-tech-home-carousel__slides {
	position: relative;
	min-height: 18rem;
}

.ac-tech-home-carousel__slide {
	position: absolute;
	inset: 0;
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
	opacity: 0;
	visibility: hidden;
	transform: translateY(0.75rem);
	transition: opacity 0.5s ease, transform 0.5s ease, visibility 0.5s ease;
}

.ac-tech-home-carousel__slide.is-active {
	position: relative;
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.ac-tech-home-carousel__badge {
	width: fit-content;
	text-transform: uppercase;
	letter-spacing: 0.08em;
}

.ac-tech-home-carousel__title {
	margin: 0;
	font-size: var(--ac-tech-font-display-lg);
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: -0.02em;
	color: var(--ac-tech-on-surface);
}

.ac-tech-home-carousel__title-accent {
	color: var(--ac-tech-primary);
}

.ac-tech-home-carousel__promo {
	margin: 0.625rem 0 0;
	max-width: 36rem;
	font-size: var(--ac-tech-font-headline-sm);
	font-weight: 600;
	line-height: 1.35;
	color: var(--ac-tech-primary);
}

.ac-tech-home-carousel__promo .ac-tech-home-carousel__promo-highlight {
	color: var(--ac-tech-tertiary-container);
}

.ac-tech-home-carousel__promo-highlight {
	color: var(--ac-tech-primary-container);
	font-weight: 800;
}

.ac-tech-home-carousel__title-accent .ac-tech-home-carousel__promo-highlight {
	color: var(--ac-tech-tertiary-container);
}

.ac-tech-home-carousel__text .ac-tech-home-carousel__promo-highlight {
	color: var(--ac-tech-primary);
	font-weight: 700;
}

.ac-tech-home-carousel__text {
	margin: 0;
	max-width: 36rem;
	font-size: var(--ac-tech-font-body-lg);
	line-height: 1.6;
	color: var(--ac-tech-on-surface-variant);
}

.ac-tech-home-carousel__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
}

.ac-tech-home-carousel__dots {
	display: flex;
	gap: 0.5rem;
	margin-top: 3rem;
}

.ac-tech-home-carousel__dot {
	width: 3rem;
	height: 0.25rem;
	padding: 0;
	border: 0;
	border-radius: var(--ac-tech-radius-full);
	background: var(--ac-tech-outline-variant);
	cursor: pointer;
	transition: background-color 0.2s ease, transform 0.2s ease;
}

.ac-tech-home-carousel__dot.is-active {
	background: var(--ac-tech-primary);
}

.ac-tech-home-carousel__dot:focus-visible {
	outline: 2px solid var(--ac-tech-primary);
	outline-offset: 2px;
}

.ac-tech-home-carousel__media {
	position: relative;
	flex: 1 1 50%;
	min-height: 16rem;
	overflow: hidden;
}

@media (min-width: 64rem) {
	.ac-tech-home-carousel__media {
		min-height: auto;
	}
}

.ac-tech-home-carousel__media-item {
	position: absolute;
	inset: 0;
	opacity: 0;
	transition: opacity 0.7s ease;
}

.ac-tech-home-carousel__media-item.is-active {
	opacity: 1;
}

.ac-tech-home-carousel__media-item picture,
.ac-tech-home-carousel__media-item img {
	display: block;
	width: 100%;
	height: 100%;
}

.ac-tech-home-carousel__media-img {
	width: 100%;
	height: 100%;
	min-height: 16rem;
	object-fit: cover;
}

.ac-tech-home-carousel__media-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(to right, rgb(255 255 255 / 20%), transparent);
	pointer-events: none;
}

@media (min-width: 64rem) {
	.ac-tech-home-carousel__media-overlay {
		display: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	.ac-tech-home-carousel__slide,
	.ac-tech-home-carousel__media-item {
		transition: none;
	}
}

/* Advantages */
.ac-tech-home-advantages {
	background: var(--ac-tech-surface);
}

.ac-tech-home-advantages__grid {
	display: grid;
	gap: var(--ac-tech-grid-gutter);
	list-style: none;
	margin: 0;
	padding: 0;
	grid-template-columns: 1fr;
}

@media (min-width: 48rem) {
	.ac-tech-home-advantages__grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (min-width: 64rem) {
	.ac-tech-home-advantages__grid {
		grid-template-columns: repeat(4, 1fr);
	}
}

.ac-tech-home-advantage-card {
	padding: 2rem;
	border: 1px solid var(--ac-tech-outline-variant);
	border-radius: var(--ac-tech-radius-xl);
	background: var(--ac-tech-surface-container-lowest);
	transition: border-color 0.2s ease;
}

.ac-tech-home-advantage-card:hover {
	border-color: var(--ac-tech-primary);
}

.ac-tech-home-advantage-card__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 3.5rem;
	height: 3.5rem;
	margin-bottom: 1.5rem;
	border-radius: var(--ac-tech-radius);
	background: var(--ac-tech-surface-container-low);
	color: var(--ac-tech-primary);
	transition: background-color 0.2s ease;
}

.ac-tech-home-advantage-card:hover .ac-tech-home-advantage-card__icon {
	background: var(--ac-tech-primary-fixed);
}

.ac-tech-home-advantage-card__icon .ac-tech-icon {
	font-size: 1.875rem;
}

.ac-tech-home-advantage-card__title {
	margin: 0 0 0.75rem;
	font-size: var(--ac-tech-font-headline-sm);
	color: var(--ac-tech-on-surface);
}

.ac-tech-home-advantage-card__text {
	margin: 0;
	font-size: 0.875rem;
	line-height: 1.6;
	color: var(--ac-tech-on-surface-variant);
}

/* Services */
.ac-tech-home-services {
	background: var(--ac-tech-surface-container-low);
}

.ac-tech-home-services__header {
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
	margin-bottom: 4rem;
}

@media (min-width: 64rem) {
	.ac-tech-home-services__header {
		flex-direction: row;
		justify-content: space-between;
		align-items: flex-end;
	}
}

.ac-tech-home-services__intro {
	max-width: 42rem;
}

.ac-tech-home-services__link {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	color: var(--ac-tech-primary);
	font-weight: 700;
	text-decoration: none;
}

.ac-tech-home-services__link:visited {
	color: var(--ac-tech-primary);
}

.ac-tech-home-services__link .ac-tech-icon {
	transition: transform 0.2s ease;
}

.ac-tech-home-services__link:hover .ac-tech-icon,
.ac-tech-home-services__link:focus .ac-tech-icon {
	transform: translateX(0.25rem);
}

.ac-tech-home-services__grid {
	display: grid;
	gap: var(--ac-tech-grid-gutter);
}

@media (min-width: 48rem) {
	.ac-tech-home-services__grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

.ac-tech-home-service-card {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	border-radius: var(--ac-tech-radius-xl);
	background: var(--ac-tech-surface-container-lowest);
}

@media (min-width: 48rem) {
	.ac-tech-home-service-card {
		flex-direction: row;
	}
}

.ac-tech-home-service-card__media {
	flex-shrink: 0;
}

@media (min-width: 48rem) {
	.ac-tech-home-service-card__media {
		width: 40%;
	}
}

.ac-tech-home-service-card__image {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 15rem;
	object-fit: cover;
}

.ac-tech-home-service-card__body {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 2rem;
}

.ac-tech-home-service-card__title {
	margin: 0 0 0.75rem;
	font-size: var(--ac-tech-font-headline-sm);
	color: var(--ac-tech-on-surface);
}

.ac-tech-home-service-card__text {
	margin: 0 0 1.5rem;
	font-size: 0.875rem;
	line-height: 1.6;
	color: var(--ac-tech-on-surface-variant);
}

.ac-tech-home-service-card__link {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	color: var(--ac-tech-primary);
	font-weight: 700;
	text-decoration: none;
}

.ac-tech-home-service-card__link:visited {
	color: var(--ac-tech-primary);
}

.ac-tech-home-service-card__link:hover,
.ac-tech-home-service-card__link:focus {
	text-decoration: underline;
}

.ac-tech-home-service-card__link-icon {
	font-size: 1rem;
}

/* Process */
.ac-tech-home-process {
	background: var(--ac-tech-surface);
}

.ac-tech-home-process__grid {
	display: grid;
	gap: 3rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

@media (min-width: 48rem) {
	.ac-tech-home-process__grid {
		grid-template-columns: repeat(4, 1fr);
	}
}

.ac-tech-home-process__step {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
}

.ac-tech-home-process__number {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 5rem;
	height: 5rem;
	margin-bottom: 1.5rem;
	border-radius: var(--ac-tech-radius-full);
	background: var(--ac-tech-primary-fixed);
	color: var(--ac-tech-primary);
	font-size: 1.875rem;
	font-weight: 700;
}

.ac-tech-home-process__number--final {
	background: var(--ac-tech-primary);
	color: var(--ac-tech-on-primary);
}

.ac-tech-home-process__title {
	margin: 0 0 0.5rem;
	font-size: var(--ac-tech-font-headline-sm);
	color: var(--ac-tech-on-surface);
}

.ac-tech-home-process__text {
	margin: 0;
	font-size: 0.875rem;
	color: var(--ac-tech-on-surface-variant);
}

/* Reviews */
.ac-tech-home-reviews {
	background: rgb(222 227 230 / 30%);
}

.ac-tech-home-reviews__rating {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.25rem;
	margin-top: 0.5rem;
	color: var(--ac-tech-tertiary-container);
}

.ac-tech-home-reviews__star {
	font-variation-settings: 'FILL' 1;
}

.ac-tech-home-reviews__score {
	margin-left: 0.5rem;
	color: var(--ac-tech-on-surface);
	font-weight: 700;
}

a.ac-tech-home-reviews__score {
	text-decoration: underline;
	text-underline-offset: 0.15em;
}

.ac-tech-home-reviews__grid {
	display: grid;
	gap: var(--ac-tech-grid-gutter);
}

@media (min-width: 48rem) {
	.ac-tech-home-reviews__grid {
		grid-template-columns: repeat(3, 1fr);
	}
}

.ac-tech-home-review-card {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	padding: 2rem;
	border-radius: var(--ac-tech-radius-xl);
	background: var(--ac-tech-surface-container-lowest);
}

.ac-tech-home-review-card--featured {
	border-top: 4px solid var(--ac-tech-primary);
}

.ac-tech-home-review-card__quote {
	color: var(--ac-tech-primary);
	opacity: 0.2;
}

.ac-tech-home-review-card__quote .ac-tech-icon {
	font-size: 3rem;
}

.ac-tech-home-review-card__text {
	margin: 0;
	font-style: italic;
	line-height: 1.6;
	color: var(--ac-tech-on-surface-variant);
}

.ac-tech-home-review-card__author {
	display: flex;
	align-items: center;
	gap: 1rem;
	margin-top: auto;
}

.ac-tech-home-review-card__avatar {
	width: 3rem;
	height: 3rem;
	border-radius: var(--ac-tech-radius-full);
	object-fit: cover;
	background: var(--ac-tech-surface-dim);
}

.ac-tech-home-review-card__name {
	margin: 0;
	font-weight: 700;
	color: var(--ac-tech-on-surface);
}

.ac-tech-home-review-card__role {
	margin: 0;
	font-size: 0.75rem;
	color: var(--ac-tech-on-surface-variant);
}

/* Final CTA */
.ac-tech-home-cta-final {
	position: relative;
	overflow: hidden;
	background: var(--ac-tech-primary);
}

.ac-tech-home-cta-final__pattern {
	position: absolute;
	inset: 0;
	opacity: 0.1;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Cpath d='M40 0H0V40' fill='none' stroke='white' stroke-width='0.5'/%3E%3C/svg%3E");
}

.ac-tech-home-cta-final__inner {
	position: relative;
	z-index: 1;
}

.ac-tech-home-cta-final__card {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: space-between;
	gap: 2.5rem;
	padding: clamp(2.5rem, 6vw, 5rem);
	border-radius: var(--ac-tech-radius-xl);
	background: var(--ac-tech-surface-container-lowest);
}

@media (min-width: 64rem) {
	.ac-tech-home-cta-final__card {
		flex-direction: row;
	}
}

.ac-tech-home-cta-final__content {
	text-align: center;
}

@media (min-width: 64rem) {
	.ac-tech-home-cta-final__content {
		text-align: left;
	}
}

.ac-tech-home-cta-final__title {
	margin: 0 0 1rem;
	font-size: var(--ac-tech-font-display-lg);
	line-height: 1.1;
	color: var(--ac-tech-on-surface);
}

.ac-tech-home-cta-final__text {
	margin: 0;
	max-width: 36rem;
	font-size: var(--ac-tech-font-body-lg);
	line-height: 1.6;
	color: var(--ac-tech-on-surface-variant);
}

.ac-tech-home-cta-final__actions {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 1.5rem;
	flex-shrink: 0;
}

@media (min-width: 64rem) {
	.ac-tech-home-cta-final__actions {
		align-items: flex-end;
	}
}

.ac-tech-home-cta-final__btn {
	padding: 1.25rem 2.5rem;
	font-size: var(--ac-tech-font-body-lg);
}

.ac-tech-home-cta-final__actions .ac-tech-phone-pill {
	flex-shrink: 0;
}

