/**
 * Aureliaterra — main styles (Figma HOME V4).
 */

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
}

body {
	margin: 0;
	font-family: var(--at-font-body);
	font-size: var(--at-fs-body);
	line-height: var(--at-lh-body);
	color: var(--at-text-black);
	background: var(--at-bg);
	-webkit-font-smoothing: antialiased;
}

img {
	max-width: 100%;
	height: auto;
	display: block;
}

a {
	color: inherit;
	text-decoration: none;
	transition: color var(--at-transition), opacity var(--at-transition);
}

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

.at-container {
	width: min(100% - 40px, var(--at-container));
	margin-inline: auto;
}

.at-container--wide {
	width: min(100% - 40px, var(--at-artboard));
	margin-inline: auto;
}

/* Typography utilities */
.at-heading {
	font-family: var(--at-font-heading);
	font-weight: 400;
	font-variation-settings: "SOFT" 0, "WONK" 1;
	margin: 0;
}

.at-label {
	font-size: var(--at-fs-small);
	font-weight: 700;
	letter-spacing: var(--at-tracking-section);
	text-transform: uppercase;
	color: var(--at-primary);
	line-height: normal;
}

.at-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: var(--at-btn-height);
	padding: 0 24px;
	border: 0;
	border-radius: var(--at-radius-btn);
	font-family: var(--at-font-body);
	font-size: var(--at-fs-label);
	font-weight: 600;
	letter-spacing: var(--at-tracking-label);
	text-transform: uppercase;
	cursor: pointer;
	transition: background var(--at-transition), color var(--at-transition);
}

.at-btn--primary {
	background: var(--at-primary);
	color: var(--at-white);
}

.at-btn--primary:hover {
	background: var(--at-primary-dark);
	color: var(--at-white);
}

.at-btn--white {
	background: var(--at-white);
	color: var(--at-primary-dark);
}

.at-btn--white:hover {
	background: var(--at-cream-light);
	color: var(--at-primary-dark);
}

.at-btn--cream {
	background: var(--at-cream-light);
	color: var(--at-text-black);
}

.at-btn img {
	width: 18px;
	height: 22px;
	object-fit: contain;
}

/* ========== HEADER (design match) ========== */
.site-header {
	position: absolute;
	top: 24px;
	left: 0;
	right: 0;
	z-index: 200;
}

.site-header.is-inner {
	position: relative;
	top: 0;
	background: transparent;
}

.site-header__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
	width: min(100% - 40px, calc(var(--at-container) + 40px));
	max-width: calc(var(--at-artboard) - var(--at-gutter) * 2);
	margin-inline: auto;
	padding: 0;
}

.site-branding {
	flex: 0 0 auto;
	line-height: 0;
}

.site-branding img,
.site-branding .custom-logo {
	height: 42px;
	width: auto;
	max-width: 190px;
	object-fit: contain;
}

.site-nav {
	flex: 1 1 auto;
	display: flex;
	justify-content: center;
	min-width: 0;
}

.site-nav__menu,
.site-nav ul {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0 30px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.site-nav a {
	font-family: var(--at-font-ui);
	font-size: var(--at-fs-nav);
	font-weight: 500;
	text-transform: uppercase;
	color: var(--at-white);
	letter-spacing: 0.04em;
	line-height: 1.2;
	text-decoration: none;
}

.site-header.is-light .site-nav > .site-nav__menu > li > a,
.site-header.is-light .site-nav > ul > li > a,
.page-template-default .site-header.is-inner .site-nav > .site-nav__menu > li > a,
.page-template-default .site-header.is-inner .site-nav > ul > li > a {
	color: var(--at-text-black);
}

.site-nav > .site-nav__menu > li > a,
.site-nav > ul > li > a {
	position: relative;
	display: inline-block;
	padding: 10px 0;
}

.site-nav .current-menu-item > a,
.site-nav .current_page_item > a,
.site-nav .current-menu-ancestor > a,
.site-nav .current-menu-parent > a {
	position: relative;
}

.site-nav > .site-nav__menu > .current-menu-item > a::after,
.site-nav > ul > .current-menu-item > a::after,
.site-nav > .site-nav__menu > .current_page_item > a::after,
.site-nav > ul > .current_page_item > a::after,
.site-nav > .site-nav__menu > .current-menu-ancestor > a::after,
.site-nav > ul > .current-menu-ancestor > a::after,
.site-nav > .site-nav__menu > .current-menu-parent > a::after,
.site-nav > ul > .current-menu-parent > a::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 6px;
	height: 1.5px;
	background: var(--at-white);
}

.site-header.is-light .site-nav > .site-nav__menu > .current-menu-item > a::after,
.site-header.is-light .site-nav > ul > .current-menu-item > a::after,
.site-header.is-light .site-nav > .site-nav__menu > .current-menu-ancestor > a::after,
.site-header.is-light .site-nav > ul > .current-menu-ancestor > a::after {
	background: var(--at-primary);
}

/* Dropdown submenus */
.site-nav .menu-item-has-children {
	position: relative;
}

.site-nav .sub-menu {
	display: none;
	position: absolute;
	top: calc(100% + 8px);
	left: 50%;
	z-index: 220;
	min-width: 240px;
	margin: 0;
	padding: 12px 0;
	list-style: none;
	border: 0;
	border-radius: 10px;
	background: var(--at-white);
	box-shadow: 0 12px 32px rgba(0, 0, 0, 0.14);
	transform: translateX(-50%);
	flex-direction: column;
	align-items: stretch;
	gap: 0;
	overflow: visible;
}

.site-nav .sub-menu::before {
	content: "";
	position: absolute;
	top: -6px;
	left: 50%;
	width: 12px;
	height: 12px;
	background: var(--at-white);
	transform: translateX(-50%) rotate(45deg);
	border-radius: 2px;
}

.site-nav .menu-item-has-children:hover > .sub-menu,
.site-nav .menu-item-has-children:focus-within > .sub-menu,
.site-nav .menu-item-has-children.is-submenu-open > .sub-menu {
	display: flex;
}

.site-nav .sub-menu a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 12px 18px 12px 22px;
	font-family: var(--at-font-body);
	font-size: 14px;
	font-weight: 500;
	line-height: 1.35;
	letter-spacing: 0;
	text-transform: none;
	color: var(--at-text);
	white-space: nowrap;
	box-sizing: border-box;
	width: 100%;
}

.site-nav .sub-menu a:hover,
.site-nav .sub-menu .current-menu-item > a,
.site-nav .sub-menu .menu-item-has-children:hover > a {
	color: var(--at-primary);
	background: transparent;
}

/* Keep WP current-item underline off inside dropdowns (chevron uses ::after) */
.site-nav .sub-menu .current-menu-item > a::after,
.site-nav .sub-menu .current-menu-ancestor > a::after,
.site-nav .sub-menu .current_page_item > a::after {
	content: none;
	display: none;
	border: 0;
	width: 0;
	height: 0;
}

.site-nav > .site-nav__menu > .menu-item-has-children > a,
.site-nav > ul > .menu-item-has-children > a {
	padding-right: 0;
}

.site-nav .menu-item-has-children > a::before {
	display: none;
}

/* Chevron only on submenu parents that have nested children (e.g. Product Categories) */
.site-nav .sub-menu > .menu-item-has-children > a::after {
	content: "";
	display: inline-block;
	width: 6px;
	height: 6px;
	margin: 0 2px 0 0;
	border-top: 1.5px solid currentColor;
	border-right: 1.5px solid currentColor;
	border-bottom: 0;
	border-left: 0;
	transform: rotate(45deg);
	transform-origin: center;
	flex: 0 0 auto;
	opacity: 0.9;
	position: static;
	background: none;
	left: auto;
	right: auto;
	bottom: auto;
}

/* Leaf dropdown links (e.g. Our Products) — no arrow */
.site-nav .sub-menu > .menu-item:not(.menu-item-has-children) > a::after {
	content: none;
	display: none;
}

/* Nested flyout: Product Categories → category list */
.site-nav .sub-menu > .menu-item-has-children {
	position: relative;
}

.site-nav .sub-menu .sub-menu {
	top: 0;
	left: calc(100% + 14px);
	right: auto;
	transform: none;
	min-width: 180px;
	padding: 10px 0;
}

/* Invisible bridge so hover survives the gap */
.site-nav .sub-menu > .menu-item-has-children::before {
	content: "";
	position: absolute;
	top: 0;
	left: 100%;
	width: 14px;
	height: 100%;
	z-index: 1;
}

.site-nav .sub-menu .sub-menu::before {
	display: none;
}

.site-nav .sub-menu .sub-menu a::after {
	content: none;
	display: none;
}

.site-nav .sub-menu .sub-menu a {
	padding: 10px 20px;
	font-weight: 400;
	color: var(--at-text);
}

.site-nav .sub-menu .sub-menu a:hover {
	color: var(--at-primary);
}

.site-header__actions {
	display: flex;
	align-items: center;
	gap: 12px;
	flex: 0 0 auto;
}

.site-header__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 40px;
	padding: 0 18px;
	border-radius: 10px;
	font-family: var(--at-font-ui);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	text-decoration: none;
	white-space: nowrap;
	box-sizing: border-box;
	line-height: 1;
	transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.site-header__btn--order {
	padding: 0 20px;
	background-color: #f4f4f4;
	color: var(--at-text-black);
	border: 1px solid #f4f4f4;
}

.site-header__btn--order:hover,
.site-header__btn--order:focus {
	color: var(--at-text-black);
	background-color: var(--at-white);
	border-color: var(--at-white);
}

.site-header__btn--catalogue {
	padding: 0 16px 0 14px;
	background: transparent;
	color: var(--at-white);
	border: 1px solid rgba(255, 255, 255, 0.95);
}

.site-header__btn--catalogue img,
.site-header__btn-icon--catalogue {
	width: 18px;
	height: 22px;
	display: block;
	flex-shrink: 0;
	object-fit: contain;
	/* User PDF icon is black — show white on overlay header */
	filter: brightness(0) invert(1);
}

.site-header__btn--catalogue:hover,
.site-header__btn--catalogue:focus {
	color: var(--at-white);
	background: rgba(255, 255, 255, 0.08);
}

.site-header__icon-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	margin-left: 2px;
	flex-shrink: 0;
	text-decoration: none;
	opacity: 0.95;
	transition: opacity 0.2s ease;
}

/* Keep search toggle identical to the previous header icon link (no button chrome). */
button.site-header__search-toggle {
	appearance: none;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	color: inherit;
	cursor: pointer;
	font: inherit;
}

button.site-header__search-toggle:hover,
button.site-header__search-toggle:focus {
	background: transparent;
	box-shadow: none;
	outline: none;
}

.site-header__icon-link:hover,
.site-header__icon-link:focus {
	opacity: 1;
}

.site-header__icon {
	width: 22px;
	height: 22px;
	display: block;
}

/* Header product search */
.site-header__search {
	position: relative;
	display: inline-flex;
	align-items: center;
	margin-left: 2px;
}

.site-header__search-form {
	position: absolute;
	top: calc(100% + 12px);
	right: 0;
	z-index: 30;
	display: flex;
	align-items: center;
	gap: 8px;
	min-width: 320px;
	padding: 8px 10px;
	border: 1px solid var(--at-border);
	border-radius: 10px;
	background: var(--at-white);
	box-shadow: 0 10px 28px rgba(61, 43, 31, 0.14);
	transform: none;
}

.site-header__search-form[hidden] {
	display: none !important;
}

.site-header__search-input {
	flex: 1 1 auto;
	min-width: 0;
	height: 36px;
	padding: 0 12px;
	border: 1px solid var(--at-border-dark);
	border-radius: 8px;
	background: var(--at-bg);
	color: var(--at-brown);
	font-family: var(--at-font-body);
	font-size: 14px;
	line-height: 1.2;
}

.site-header__search-input::placeholder {
	color: #8a8478;
}

.site-header__search-input:focus {
	outline: 2px solid var(--at-primary);
	outline-offset: 1px;
	border-color: var(--at-primary);
}

.site-header__search-submit {
	appearance: none;
	height: 36px;
	padding: 0 14px;
	border: 0;
	border-radius: 8px;
	background: var(--at-primary);
	color: var(--at-white);
	font-family: var(--at-font-ui);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	cursor: pointer;
	white-space: nowrap;
}

.site-header__search-submit:hover,
.site-header__search-submit:focus {
	background: var(--at-primary-dark);
}

.site-header__search-close {
	appearance: none;
	width: 28px;
	height: 28px;
	padding: 0;
	border: 0;
	border-radius: 6px;
	background: transparent;
	color: var(--at-brown);
	font-size: 22px;
	line-height: 1;
	cursor: pointer;
}

.site-header__search-close:hover,
.site-header__search-close:focus {
	background: rgba(163, 90, 52, 0.08);
}

.site-header__search.is-open .site-header__search-toggle {
	opacity: 0.55;
}

/* Light header (no banner): dark buttons/icons */
.site-header.is-light .site-header__btn--order {
	background-color: var(--at-primary-dark);
	border-color: var(--at-primary-dark);
	color: var(--at-white);
}

.site-header.is-light .site-header__btn--catalogue {
	color: var(--at-primary-dark);
	border-color: var(--at-primary-dark);
}

.site-header.is-light .site-header__btn--catalogue img,
.site-header.is-light .site-header__btn-icon--catalogue,
.site-header.is-light .site-header__icon {
	filter: brightness(0) saturate(100%) invert(18%) sepia(42%) saturate(1200%) hue-rotate(346deg) brightness(90%);
}

.site-header.is-light .site-header__toggle span {
	background: var(--at-primary-dark);
}

.site-header__toggle {
	display: none;
	background: none;
	border: 0;
	padding: 8px;
	cursor: pointer;
}

.site-header__toggle span {
	display: block;
	width: 24px;
	height: 2px;
	background: var(--at-white);
	margin: 5px 0;
}

/* ========== HERO / BANNER (Figma 200:601 — 1880×920) ========== */
.at-hero {
	position: relative;
	width: 100%;
	background: var(--at-primary-dark);
}

/* Scaled artboard: maintains 1880:920 proportions, caps at 920px height */
.at-hero__canvas {
	position: relative;
	width: 100%;
	max-width: none;
	margin-inline: 0;
	height: clamp(520px, 48.9362vw, var(--at-hero-height));
	max-height: var(--at-hero-height);
	overflow: hidden;
}

.at-hero--filters .at-hero__canvas {
	height: clamp(640px, 54vw, var(--at-hero-height));
}

.at-hero__track {
	position: relative;
	width: 100%;
	height: 100%;
}

/* Slides */
.at-hero__slide {
	position: absolute;
	inset: 0;
	z-index: 0;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity 0.6s ease, visibility 0.6s ease;
}

.at-hero__slide.is-active {
	z-index: 1;
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

.at-hero__slide .at-hero__layer {
	position: absolute;
	inset: 0;
}

.at-hero__slide .at-hero__media {
	position: absolute;
	inset: 0;
}

.at-hero__slide .at-hero__content {
	position: absolute;
}

/* Slide 2 — Figma 200:626 (cream / dark text) */
.at-hero__slide--light .at-hero__layer--cream {
	z-index: 2;
	inset: 0;
	background: #e2e0d2;
}

.at-hero__slide--light .at-hero__layer--gradient-dark {
	opacity: 0.35;
}

.at-hero__slide--light .at-hero__title,
.at-hero__slide--light .at-hero__text {
	color: var(--at-brown);
}

.at-hero__slide--light .at-hero__cta {
	background: #8b6914;
	color: var(--at-bg);
}

.at-hero__slide--light .at-hero__cta:hover {
	background: var(--at-primary-dark);
	color: var(--at-white);
}

.at-hero__products--alt {
	left: 48.8298%;
	top: 15.5435%;
	width: 39.2021%;
	max-height: 85.7609%;
}

.at-hero__layer {
	position: absolute;
	inset: 0;
	pointer-events: none;
}

/* 200:602 / 200:603 */
.at-hero__layer--base {
	/*background: var(--at-hero-green);*/
	z-index: 0;
}

/* 200:604 — gradient to left: #3d2b1f → #1d6e4f */
.at-hero__layer--gradient-brown {
	z-index: 1;
	/*background: linear-gradient(to left, var(--at-brown) 0%, var(--at-hero-green) 100%);*/
}

/* 200:605 — gradient to left: #00170e → #1d6e4f */
.at-hero__layer--gradient-dark {
	z-index: 2;
	/*background: linear-gradient(to left, var(--at-hero-dark) 0%, var(--at-hero-green) 100%);*/
}

/* 200:606 mask group */
.at-hero__media {
	position: absolute;
	inset: 0;
	z-index: 3;
	pointer-events: none;
}

/* 200:608 — texture: left -18px, top -340px, 1912×1351, masked to banner */
.at-hero__texture-wrap {
	position: absolute;
	z-index: 0;
	left: -0.9574%; /* -18/1880 */
	top: -36.9565%; /* -340/920 */
	width: 101.7021%; /* 1912/1880 */
	height: 146.8478%; /* 1351/920 */
	overflow: hidden;
}

.at-hero__texture {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	display: block;
}

/* 200:241 / 200:242 — soft shadow ellipses behind product cutout */
.at-hero__ellipse {
	position: absolute;
	pointer-events: none;
}

/* 200:241 — ellipse: left 770px, top 279px, 965×484 */
.at-hero__ellipse--1 {
	z-index: 1;
	left: 40.9574%; /* 770/1880 */
	top: 30.3261%; /* 279/920 */
	width: 51.3298%; /* 965/1880 */
	height: auto;
	max-height: 52.6087%; /* 484/920 */
	object-fit: contain;
}

/* 200:242 — ellipse: left 864px, top 326px, 777×390 */
.at-hero__ellipse--2 {
	z-index: 2;
	left: 45.9574%; /* 864/1880 */
	top: 35.4348%; /* 326/920 */
	width: 41.3298%; /* 777/1880 */
	height: auto;
	max-height: 42.3913%; /* 390/920 */
	object-fit: contain;
}

/* 200:243 — products: left 830px, top 202px, 854×569 */
.at-hero__products {
	position: absolute;
	z-index: 3;
	left: 44.1489%; /* 830/1880 */
	top: 21.9565%; /* 202/920 */
	width: 45.4255%; /* 854/1880 */
	height: auto;
	max-height: 61.8478%; /* 569/920 */
	object-fit: contain;
	object-position: center bottom;
}

/* 200:620 — content block */
.at-hero__content {
	position: absolute;
	z-index: 5;
	left: 10.1064%; /* 190/1880 */
	top: 36.087%; /* 332/920 */
	width: 31.7021%; /* 596/1880 max for title */
	max-width: 596px;
}

.at-hero__slide--filters .at-hero__content {
	top: 22%;
	width: 38%;
	max-width: 680px;
}

.at-hero__title {
	margin: 0;
	font-family: var(--at-font-heading);
	font-size: clamp(32px, 2.6596vw, 50px);
	line-height: clamp(38px, 3.1915vw, 60px);
	font-weight: 400;
	color: var(--at-white);
	text-transform: capitalize;
	max-width: 596px;
	min-height: 0;
	font-variation-settings: "SOFT" 0, "WONK" 1;
}

.at-hero__slide--filters .at-hero__title {
	max-width: none;
}

/* Categories + Range filters */
.at-hero__filters {
	margin-top: 18px;
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.at-hero__filters-label {
	margin: 0 0 10px;
	font-family: var(--at-font-body);
	font-size: 12px;
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--at-white);
}

.at-hero__cats-list,
.at-hero__range-list {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.at-hero__cat-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 40px;
	padding: 0 16px;
	border: 1px solid rgba(255, 255, 255, 0.9);
	border-radius: 8px;
	background: transparent;
	color: var(--at-white);
	font-family: var(--at-font-body);
	font-size: 12px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	text-decoration: none;
	transition: background var(--at-transition), color var(--at-transition), border-color var(--at-transition);
}

.at-hero__cat-btn-icon {
	display: inline-flex;
	flex-shrink: 0;
	width: 12px;
	height: 12px;
}

.at-hero__cat-btn-icon svg {
	display: block;
	width: 12px;
	height: 12px;
}

.at-hero__cat-btn:hover,
.at-hero__cat-btn:focus {
	background: var(--at-white);
	border-color: var(--at-white);
	color: var(--at-brown);
}

.at-hero__range-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 34px;
	padding: 0 20px;
	border: 1px solid var(--at-white);
	border-radius: 999px;
	background: var(--at-white);
	color: rgba(61, 43, 31, 0.72);
	font-family: var(--at-font-body);
	font-size: 13px;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0.02em;
	text-decoration: none;
	opacity: 1;
	transition: background var(--at-transition), color var(--at-transition), border-color var(--at-transition), box-shadow var(--at-transition);
}

.at-hero__range-btn:hover,
.at-hero__range-btn:focus {
	background: var(--at-cream-light);
	border-color: var(--at-cream-light);
	color: var(--at-brown);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
}

.at-hero__slide--light .at-hero__filters-label,
.at-hero__slide--light .at-hero__cat-btn {
	color: var(--at-brown);
}

.at-hero__slide--light .at-hero__cat-btn {
	border-color: rgba(61, 43, 31, 0.55);
}

.at-hero__slide--light .at-hero__range-btn {
	background: var(--at-white);
	border-color: var(--at-white);
	color: rgba(61, 43, 31, 0.72);
}

.at-hero__slide--light .at-hero__cat-btn:hover,
.at-hero__slide--light .at-hero__cat-btn:focus {
	background: var(--at-brown);
	border-color: var(--at-brown);
	color: var(--at-white);
}

.at-hero__slide--light .at-hero__range-btn:hover,
.at-hero__slide--light .at-hero__range-btn:focus {
	background: var(--at-cream-light);
	border-color: var(--at-cream-light);
	color: var(--at-brown);
	box-shadow: 0 2px 8px rgba(61, 43, 31, 0.15);
}

/* 200:624 — top 471px (7px below 132px title ending at 464), 527×26px */
.at-hero__text {
	margin: 7px 0 0;
	max-width: 527px;
	width: 100%;
	color: var(--at-white);
	font-family: var(--at-font-body);
	font-size: 16px;
	line-height: 26px;
	letter-spacing: 0.16px;
	text-transform: capitalize;
}

.at-hero__slide--filters .at-hero__text {
	margin-top: 18px;
	max-width: 560px;
}

/* 200:621–623 — button top 576px, 195×50 */
.at-hero__cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-top: 26px;
	width: 195px;
	max-width: 100%;
	height: 50px;
	padding: 0 16px;
	border-radius: var(--at-radius-btn);
	background: var(--at-white);
	color: var(--at-primary-dark);
	font-family: var(--at-font-ui);
	font-size: 12px;
	font-weight: 600;
	line-height: normal;
	letter-spacing: 0.6px;
	text-transform: uppercase;
	text-decoration: none;
	transition: background var(--at-transition), color var(--at-transition);
}

.at-hero__cta:hover {
	background: var(--at-cream-light);
	color: var(--at-primary-dark);
}

/* 200:612 — arrows at top 431px */
.at-hero__nav-arrows {
	position: absolute;
	z-index: 6;
	top: 46.8478%; /* 431/920 */
	left: 1.9149%; /* 36/1880 */
	right: 1.9149%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	pointer-events: none;
}

.at-hero__arrow {
	pointer-events: auto;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 50px;
	height: 50px;
	padding: 0;
	border: 0;
	background: transparent;
	cursor: pointer;
}

.at-hero__arrow--next {
	width: 51px;
}

.at-hero__arrow img {
	display: block;
	width: 100%;
	height: auto;
}

/* Pagination dots */
.at-hero__dots {
	position: absolute;
	z-index: 7;
	bottom: 28px;
	left: 50%;
	transform: translateX(-50%);
	display: flex;
	gap: 10px;
}

.at-hero__dot {
	width: 10px;
	height: 10px;
	padding: 0;
	border: 1px solid var(--at-white);
	border-radius: 50%;
	background: transparent;
	cursor: pointer;
	transition: background var(--at-transition), transform var(--at-transition);
}

.at-hero__dot.is-active {
	background: var(--at-white);
	transform: scale(1.15);
}

.at-hero.at-hero--light-active .at-hero__dot {
	border-color: var(--at-brown);
}

.at-hero.at-hero--light-active .at-hero__dot.is-active {
	background: var(--at-brown);
}

/* ========== ABOUT INTRO (Figma 200:541 — Group 437) ========== */
.at-about-intro {
	padding: 82px 0 80px;
	background: var(--at-bg);
}

.at-about-intro__container {
	max-width: var(--at-container);
}

/* Visual | content | mission sidebar */
.at-about-intro__grid {
	display: grid;
	grid-template-columns: minmax(260px, 474px) minmax(0, 1.15fr) minmax(200px, 280px);
	gap: 48px 56px;
	align-items: center;
}

.at-about-intro__visual {
	position: relative;
	width: 100%;
	max-width: 474px;
	margin: 0;
}

/* Pill / stadium frame */
.at-about-intro__circle {
	position: relative;
	width: 100%;
	aspect-ratio: 474 / 566;
	max-height: 566px;
	background: var(--at-cream);
	border-radius: 999px;
	overflow: hidden;
}

.at-about-intro__photo {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
}

.at-about-intro__photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	display: block;
}

.at-about-intro__badge {
	position: absolute;
	top: 18px;
	left: 0;
	width: 109px;
	height: 109px;
	z-index: 2;
	pointer-events: none;
}

.at-about-intro__content {
	max-width: 620px;
	width: 100%;
}

.at-about-intro__title {
	margin: 0 0 14px;
	min-height: 0;
	font-family: var(--at-font-heading);
	font-size: 40px;
	font-weight: 400;
	line-height: 50px;
	color: var(--at-text-black);
	text-transform: capitalize;
	max-width: 620px;
	font-variation-settings: "SOFT" 0, "WONK" 1;
}

.at-about-intro__text {
	margin: 0 0 22px;
	max-width: 600px;
	width: 100%;
	font-family: var(--at-font-body);
	font-size: 16px;
	line-height: 28px;
	letter-spacing: 0.16px;
	color: var(--at-text-black);
	text-transform: capitalize;
}

.at-about-intro__text p {
	margin: 0 0 12px;
}

.at-about-intro__text p:last-child {
	margin-bottom: 0;
}

.at-about-intro__cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 227px;
	max-width: 100%;
	height: 50px;
	padding: 0 20px;
	border-radius: var(--at-radius-btn);
	background: var(--at-primary);
	color: var(--at-white);
	font-family: var(--at-font-body);
	font-size: 12px;
	font-weight: 600;
	line-height: normal;
	letter-spacing: 0.6px;
	text-transform: uppercase;
	text-decoration: none;
	transition: background var(--at-transition);
}

.at-about-intro__cta:hover {
	background: var(--at-primary-dark);
	color: var(--at-white);
}

/* Mission sidebar */
.at-about-intro__mission {
	position: relative;
	align-self: center;
	padding-left: 36px;
	border-left: 1px solid var(--at-border);
	max-width: 280px;
}

.at-about-intro__mission-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 64px;
	height: 64px;
	margin: 0 0 18px;
	border-radius: 50%;
	background: var(--at-primary-dark);
}

.at-about-intro__mission-icon img {
	display: block;
	width: 32px;
	height: 32px;
	object-fit: contain;
}

.at-about-intro__mission-label {
	margin: 0 0 12px;
	font-family: var(--at-font-body);
	font-size: 14px;
	font-weight: 600;
	line-height: 20px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--at-primary-dark);
}

.at-about-intro__mission-text {
	margin: 0;
	font-family: var(--at-font-body);
	font-size: 16px;
	font-weight: 400;
	line-height: 26px;
	color: var(--at-text-black);
	text-transform: capitalize;
}

/* ========== CATEGORIES (Figma 200:513 / grid 200:532) ========== */
.at-categories {
	padding: 0 0 88px;
	background: var(--at-bg);
}

.at-categories__container {
	max-width: var(--at-container);
}

.at-categories__header {
	max-width: 980px;
	margin: 0 auto 48px;
	text-align: center;
}

.at-categories__title {
	margin: 0 0 18px;
	text-align: center;
	font-family: var(--at-font-heading);
	font-size: 40px;
	font-weight: 400;
	line-height: 50px;
	color: var(--at-text-black);
	text-transform: capitalize;
	font-variation-settings: "SOFT" 0, "WONK" 1;
}

.at-categories__intro {
	margin: 0 auto 28px;
	max-width: 860px;
	font-family: var(--at-font-body);
	font-size: 16px;
	font-weight: 400;
	line-height: 28px;
	letter-spacing: 0.16px;
	color: var(--at-text-black);
	text-transform: capitalize;
}

.at-categories__nav {
	margin: 0 0 36px;
}

.at-categories__nav-list {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0;
	margin: 0;
	padding: 0;
	list-style: none;
}

.at-categories__nav-item {
	display: inline-flex;
	align-items: center;
}

.at-categories__nav-sep {
	margin: 0 14px;
	color: var(--at-text-black);
	opacity: 0.55;
}

.at-categories__nav-link {
	font-family: var(--at-font-body);
	font-size: 14px;
	font-weight: 600;
	line-height: 22px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--at-text-black);
	text-decoration: none;
}

.at-categories__nav-link:hover,
.at-categories__nav-link:focus {
	color: var(--at-primary);
}

.at-categories__explore {
	margin: 0 auto;
	max-width: 820px;
}

.at-categories__explore-title {
	margin: 0 0 16px;
	font-family: var(--at-font-body);
	font-size: 15px;
	font-weight: 700;
	line-height: 22px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--at-text-black);
}

.at-categories__range {
	margin: 0;
	padding: 0;
	list-style: none;
}

.at-categories__range-item {
	margin: 0 0 8px;
	font-family: var(--at-font-body);
	font-size: 15px;
	line-height: 24px;
	color: var(--at-text-black);
	text-transform: capitalize;
}

.at-categories__range-item:last-child {
	margin-bottom: 0;
}

.at-categories__range-label {
	font-weight: 700;
}

.at-categories__range-text {
	font-weight: 400;
}

.at-categories__list {
	display: flex;
	flex-direction: column;
	width: 100%;
	max-width: 1500px;
	margin-inline: auto;
	border-top: 1px solid var(--at-border);
}

.at-category-card {
	display: grid;
	grid-template-columns: 284px minmax(180px, 260px) minmax(0, 1fr) auto 72px;
	align-items: center;
	column-gap: 36px;
	min-height: 0;
	padding: 36px 0;
	border-bottom: 1px solid var(--at-border);
}

.at-category-card__thumb {
	width: 284px;
	height: 159px;
	flex-shrink: 0;
	border: 1px solid var(--at-border-dark);
	border-radius: 190px;
	background: var(--at-white);
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
}

.at-category-card__thumb img {
	display: block;
	width: auto;
	height: auto;
	max-width: 90%;
	max-height: 85%;
	object-fit: contain;
}

.at-category-card__identity {
	min-width: 0;
}

.at-category-card__name {
	margin: 0;
	font-family: var(--at-font-body);
	font-size: 16px;
	font-weight: 700;
	line-height: 24px;
	letter-spacing: 0.04em;
	color: var(--at-text-black);
	text-transform: uppercase;
}

.at-category-card__type {
	margin: 6px 0 0;
	font-family: var(--at-font-body);
	font-size: 14px;
	font-weight: 400;
	line-height: 22px;
	letter-spacing: 0.04em;
	color: var(--at-text-black);
	text-transform: uppercase;
	opacity: 0.55;
}

.at-category-card__tiers {
	margin: 0;
	justify-self: center;
	text-align: center;
	font-family: var(--at-font-body);
	font-size: 14px;
	font-weight: 400;
	line-height: 22px;
	letter-spacing: 0.02em;
	color: var(--at-text-black);
	opacity: 0.45;
	text-transform: capitalize;
}

.at-category-card__count {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	padding: 0 16px;
	min-width: 124px;
	height: 32px;
	border: 1px solid #dad7ce;
	border-radius: 260px;
	background: var(--at-white);
	font-family: var(--at-font-body);
	font-size: 14px;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0.02em;
	color: var(--at-text-black);
	opacity: 0.7;
	text-transform: capitalize;
	white-space: nowrap;
	justify-self: end;
}

.at-category-card__link {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 72px;
	height: 72px;
	flex-shrink: 0;
	justify-self: end;
}

.at-category-card__link img {
	display: block;
	width: 72px;
	height: 72px;
	margin: 0;
}

.has-overlay-header .site-header {
	position: absolute;
	top: 29px;
	left: 0;
	right: 0;
	z-index: 200;
}

/* ========== FEATURES / WHY (Figma 200:475) ========== */
.at-features {
	padding: 0 50px var(--at-section-pad-y);
}

.at-features__box {
	position: relative;
	max-width: 1780px;
	margin-inline: auto;
	background: var(--at-primary-dark);
	border-radius: 30px;
	padding: 74px 50px 72px;
	overflow: hidden;
	min-height: 845px;
	box-sizing: border-box;
}

/* 200:477 — leaf watermark over 200:476 #742a15 */
.at-features__pattern {
	position: absolute;
	inset: 0;
	border-radius: 30px;
	background-color: var(--at-primary-dark);
	background-image: url("../images/features-bg.svg");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 100% 100%;
	pointer-events: none;
	z-index: 0;
}

.at-features__inner {
	position: relative;
	z-index: 1;
	max-width: 1680px;
	margin-inline: auto;
}

.at-features__title {
	font-family: var(--at-font-heading);
	font-size: 40px;
	font-weight: 400;
	line-height: 55px;
	text-align: center;
	color: var(--at-white);
	text-transform: capitalize;
	margin: 0 auto 22px;
	max-width: 922px;
	min-height: 72px;
}

.at-features__layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 418px minmax(0, 1fr);
	column-gap: 0;
	align-items: start;
}

.at-features__col {
	display: flex;
	flex-direction: column;
	gap: 55px;
}

.at-features__col--left {
	align-items: flex-end;
	padding-right: clamp(32px, 9.3vw, 166px);
}

.at-features__col--right {
	align-items: flex-start;
	padding-left: clamp(32px, 5.9vw, 105px);
}

.at-features__item {
	display: flex;
	align-items: flex-start;
	gap: 16px;
	width: 100%;
	max-width: 420px;
}

.at-features__item--left {
	flex-direction: row;
	justify-content: flex-end;
	gap: 16px;
}

.at-features__item--right {
	flex-direction: row;
	justify-content: flex-start;
	gap: 20px;
}

.at-features__body {
	flex: 1 1 auto;
	min-width: 0;
}

.at-features__item--left .at-features__body {
	text-align: right;
	max-width: 357px;
}

.at-features__item--left:nth-child(3) .at-features__body {
	max-width: 310px;
}

.at-features__item--right .at-features__body {
	text-align: left;
	max-width: 339px;
}

.at-features__item--right:nth-child(1) .at-features__body {
	max-width: 339px;
}

.at-features__item--right:nth-child(2) .at-features__body,
.at-features__item--right:nth-child(3) .at-features__body {
	max-width: 291px;
}

.at-features__icon {
	flex: 0 0 auto;
	width: var(--at-feature-icon-w, 42px);
	height: var(--at-feature-icon-h, 42px);
	display: flex;
	align-items: flex-start;
	justify-content: center;
}

.at-features__icon img {
	width: var(--at-feature-icon-w, 42px);
	height: auto;
	max-height: var(--at-feature-icon-h, 48px);
	object-fit: contain;
}

.at-features__item-title {
	margin: 0;
	min-height: 56px;
	font-family: var(--at-font-body);
	font-size: 16px;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 0.16px;
	color: var(--at-white);
	line-height: 26px;
}

.at-features__item-text {
	margin: 8px 0 0;
	font-family: var(--at-font-body);
	font-size: 16px;
	line-height: 26px;
	color: var(--at-white);
	opacity: 0.6;
	text-transform: capitalize;
	letter-spacing: 0.16px;
}

.at-features__center {
	display: flex;
	justify-content: center;
	align-self: center;
	margin-top: 23px;
}

@media (min-width: 1201px) {
	.at-features__box {
		height: 845px;
		min-height: 845px;
	}
}

.at-features__oval {
	position: relative;
	width: 418px;
	height: 548px;
	border: 1px solid var(--at-white);
	border-radius: 330px;
	box-sizing: border-box;                               
	overflow: hidden;
}

.at-features__oval-fill {
	position: absolute;
	left: 11px;
	top: 14px;
	width: 396px;
	height: 520px;
	border-radius: 330px;
	background: #d9d9d9;
	z-index: 0;
}

.at-features__oval-photo {
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: 1;
	width: 502px;
	height: 587px;
	max-width: none;
	object-fit: cover;
	transform: translate(-50%, -48%);
}

/* ========== WHO WE ARE (Figma 200:442) ========== */
.at-who {
	padding: var(--at-section-pad-y) 0;
	background: var(--at-bg);
	border-bottom: 1px solid rgba(61, 43, 31, 0.12);
}

/* Legacy 3-col (stats + mission) */
.at-who__grid {
	display: grid;
	grid-template-columns: minmax(0, 710px) minmax(0, 277px) minmax(0, 374px);
	align-items: start;
	width: 100%;
	max-width: 1500px;
	margin-inline: auto;
	column-gap: 0;
	row-gap: 48px;
}

/* Design: two columns — copy | presence map */
.at-who--presence .at-who__grid {
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
	column-gap: 48px;
	align-items: start;
}

.at-who__intro {
	max-width: 710px;
}

.at-who--presence .at-who__intro {
	max-width: none;
	padding-right: 12px;
}

.at-who__label,
.at-who__presence-label {
	margin: 0 0 28px;
	font-family: var(--at-font-body);
	font-size: 14px;
	font-weight: 700;
	line-height: normal;
	letter-spacing: 1.4px;
	text-transform: uppercase;
	color: var(--at-primary-dark);
}

.at-who__title {
	font-family: var(--at-font-heading);
	font-size: 40px;
	font-weight: 400;
	line-height: 51px;
	color: var(--at-text-black);
	text-transform: capitalize;
	margin: 0 0 22px;
	max-width: 723px;
}

.at-who--presence .at-who__title {
	min-height: 0;
	max-width: 640px;
}

.at-who__text {
	margin: 0;
	max-width: 640px;
	font-family: var(--at-font-body);
	font-size: 16px;
	font-weight: 400;
	line-height: 28px;
	color: var(--at-text-black);
	letter-spacing: 0.16px;
	text-transform: none;
}

.at-who__btn {
	width: 227px;
	min-width: 227px;
	height: 50px;
	min-height: 50px;
	margin-top: 28px;
	padding: 0 16px;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.6px;
}

/* Our Presence map */
.at-who__presence {
	min-width: 0;
	width: 100%;
}

.at-who__map {
	position: relative;
	width: 100%;
	margin-top: 4px;
	padding: 28px 36px 32px 40px;
	overflow: visible;
	border-radius: 4px;
	box-sizing: border-box;
}

.at-who__map-image {
	display: block;
	width: 100%;
	height: auto;
	object-fit: contain;
	user-select: none;
	pointer-events: none;
}

.at-who__pins {
	position: absolute;
	/* Match map image inset inside padded black frame */
	inset: 28px 36px 32px 40px;
	margin: 0;
	padding: 0;
	list-style: none;
	pointer-events: none;
}

/* Artwork already has dots + leader lines — show labels only */
.at-who__pins--labels-only .at-who__pin-dot,
.at-who__pins--labels-only .at-who__pin-line {
	display: none;
}

.at-who__pins--labels-only .at-who__pin-label {
	color: #f5f1ea;
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.02em;
}

.at-who__pins {
	position: absolute;
	inset: 0;
	margin: 0;
	padding: 0;
	list-style: none;
	pointer-events: none;
}

.at-who__pin {
	position: absolute;
	transform: translate(-50%, -50%);
	z-index: 1;
}

.at-who__pin-dot {
	display: block;
	width: 9px;
	height: 9px;
	border-radius: 50%;
	background: var(--at-primary-dark);
	box-shadow: 0 0 0 2px rgba(253, 251, 245, 0.9);
}

.at-who__pin-line {
	position: absolute;
	background: var(--at-primary-dark);
	opacity: 0.85;
}

.at-who__pin-label {
	position: absolute;
	font-family: var(--at-font-body);
	font-size: 12px;
	font-weight: 500;
	line-height: 1.2;
	color: var(--at-text-black);
	white-space: nowrap;
}

.at-who__pin--top .at-who__pin-line {
	left: 50%;
	bottom: calc(100% - 2px);
	width: 1px;
	height: 28px;
	transform: translateX(-50%);
}

.at-who__pin--top .at-who__pin-label {
	left: 50%;
	bottom: calc(100% + 28px);
	transform: translateX(-50%);
}

.at-who__pin--bottom .at-who__pin-line {
	left: 50%;
	top: calc(100% - 2px);
	width: 1px;
	height: 24px;
	transform: translateX(-50%);
}

.at-who__pin--bottom .at-who__pin-label {
	left: 50%;
	top: calc(100% + 24px);
	transform: translateX(-50%);
}

.at-who__pin--left .at-who__pin-line {
	top: 50%;
	right: calc(100% - 2px);
	width: 28px;
	height: 1px;
	transform: translateY(-50%);
}

.at-who__pin--left .at-who__pin-label {
	top: 50%;
	right: calc(100% + 28px);
	transform: translateY(-50%);
}

.at-who__pin--right .at-who__pin-line {
	top: 50%;
	left: calc(100% - 2px);
	width: 28px;
	height: 1px;
	transform: translateY(-50%);
}

.at-who__pin--right .at-who__pin-label {
	top: 50%;
	left: calc(100% + 28px);
	transform: translateY(-50%);
}

/* Stats column — 277px wide (Figma 200:454) */
.at-who__stats {
	width: 277px;
	max-width: 100%;
	justify-self: start;
	align-self: start;
}

.at-stat {
	display: grid;
	grid-template-columns: 56px 1fr;
	column-gap: 12px;
	align-items: start;
}

.at-stat:not(:first-child) {
	margin-top: 56px;
	padding-top: 42px;
	border-top: 1px solid rgba(61, 43, 31, 0.3);
}

.at-stat:nth-child(3) {
	margin-top: 47px;
}

.at-stat__icon-wrap {
	display: flex;
	align-items: flex-start;
	justify-content: center;
	padding-top: 12px;
}

.at-stat__icon {
	display: block;
	width: 56px;
	height: auto;
	max-height: 56px;
	object-fit: contain;
}

.at-stat__icon--customers {
	width: 55px;
	max-height: 56px;
}

.at-stat__icon--monthly {
	width: 55px;
	max-height: 55px;
}

.at-stat__number {
	margin: 0;
	font-family: var(--at-font-heading);
	font-size: 45px;
	font-weight: 400;
	line-height: 55px;
	color: var(--at-text-black);
	text-transform: capitalize;
}

.at-stat__label {
	margin: 0;
	font-family: var(--at-font-body);
	font-size: 14px;
	font-weight: 400;
	line-height: normal;
	color: var(--at-text-black);
	text-transform: uppercase;
}

/* Mission card — 374×431, +4px top vs label (Figma 200:448) */
.at-mission-card {
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	width: 374px;
	max-width: 100%;
	height: 431px;
	min-height: 431px;
	margin-top: 4px;
	padding: 36px 40px 29px;
	background: var(--at-white);
	border: 1px solid var(--at-primary);
	border-radius: 20px;
	justify-self: start;
	align-self: start;
}

.at-mission-card__badge {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100px;
	height: 100px;
	flex-shrink: 0;
	border-radius: 50%;
	background: var(--at-primary);
}

.at-mission-card__icon {
	display: block;
	width: 51px;
	height: 51px;
	object-fit: contain;
}

.at-mission-card__content {
	margin-top: 134px;
	max-width: 294px;
}

.at-mission-card__label {
	margin: 0 0 40px;
	font-family: var(--at-font-body);
	font-size: 14px;
	font-weight: 700;
	line-height: normal;
	letter-spacing: 1.4px;
	text-transform: uppercase;
	color: var(--at-primary);
}

.at-mission-card__text {
	margin: 0;
	font-family: var(--at-font-body);
	font-size: 16px;
	font-weight: 400;
	line-height: 26px;
	color: var(--at-text-black);
	letter-spacing: 0.16px;
	text-transform: capitalize;
}

@media (min-width: 1201px) {
	/* Legacy layout only when presence map is off */
	.at-who:not(.at-who--presence) .at-who__title {
		min-height: 180px;
	}

	.at-who:not(.at-who--presence) .at-who__grid {
		grid-template-columns: minmax(0, 710px) 57px minmax(0, 277px) 83px minmax(0, 374px);
	}

	.at-who:not(.at-who--presence) .at-who__intro {
		grid-column: 1;
	}

	.at-who:not(.at-who--presence) .at-who__stats {
		grid-column: 3;
	}

	.at-who:not(.at-who--presence) .at-mission-card {
		grid-column: 5;
	}
}

/* ========== CATALOGUE CTA (Figma 200:429 / visual 200:431) ========== */
.page-template-page-services .at-catalogue-cta {
	padding-top: 0;
}

.at-catalogue-cta {
	padding: 0 0 var(--at-section-pad-y);
}

.at-catalogue-cta__row {
	display: grid;
	grid-template-columns: 1fr;
	gap: 20px;
	width: 100%;
	max-width: 1500px;
	margin-inline: auto;
}

.at-catalogue-cta__row--dual {
	grid-template-columns: minmax(0, 1.12fr) minmax(0, 1fr);
	align-items: stretch;
}

.at-catalogue-cta__box {
	position: relative;
	width: 100%;
	height: 287px;
	background: var(--at-primary-dark);
	border-radius: 20px;
	overflow: hidden;
	box-sizing: border-box;
}

.at-catalogue-cta__box--secondary {
	background: var(--at-primary);
}

.at-catalogue-cta__content {
	position: relative;
	z-index: 2;
	max-width: 706px;
	padding: 41px 0 41px 65px;
	height: 100%;
	box-sizing: border-box;
}

.at-catalogue-cta__row--dual .at-catalogue-cta__box--catalogue .at-catalogue-cta__content {
	max-width: 420px;
	padding: 36px 0 36px 40px;
}

.at-catalogue-cta__box--secondary .at-catalogue-cta__content {
	max-width: none;
	padding: 36px 40px;
	display: flex;
	flex-direction: column;
}

.at-catalogue-cta__title {
	margin: 0;
	font-family: var(--at-font-heading);
	font-size: 40px;
	font-weight: 400;
	line-height: 60px;
	color: var(--at-white);
	text-transform: capitalize;
	max-width: 706px;
}

.at-catalogue-cta__row--dual .at-catalogue-cta__title {
	font-size: 32px;
	line-height: 42px;
	max-width: none;
}

.at-catalogue-cta__text {
	margin: 4px 0 0;
	max-width: 591px;
	font-family: var(--at-font-body);
	font-size: 17px;
	font-weight: 400;
	line-height: 26px;
	color: var(--at-white);
	letter-spacing: 0.17px;
	text-transform: capitalize;
}

.at-catalogue-cta__row--dual .at-catalogue-cta__text {
	max-width: none;
	font-size: 15px;
	line-height: 24px;
}

.at-catalogue-cta__box--secondary .at-catalogue-cta__text {
	flex: 1 1 auto;
}

.at-catalogue-cta__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	width: 209px;
	min-width: 209px;
	height: 50px;
	margin-top: 26px;
	padding: 0 20px;
	border: 0;
	border-radius: 10px;
	background: var(--at-bg);
	color: var(--at-primary);
	font-family: var(--at-font-body);
	font-size: 12px;
	font-weight: 600;
	line-height: normal;
	letter-spacing: 0.6px;
	text-transform: uppercase;
	text-decoration: none;
	cursor: pointer;
	transition: background var(--at-transition), color var(--at-transition);
}

.at-catalogue-cta__btn--secondary {
	width: fit-content;
	min-width: 0;
	align-self: flex-start;
	margin-top: 20px;
	padding: 0 28px;
}

.at-catalogue-cta__btn:hover {
	background: var(--at-white);
	color: var(--at-primary-dark);
}

.at-catalogue-cta__btn img {
	flex-shrink: 0;
	width: 18px;
	height: 22px;
	object-fit: contain;
}

/* Right visual — terracotta panel + brochure (200:431–434) */
.at-catalogue-cta__visual {
	position: absolute;
	inset: 0;
	pointer-events: none;
	z-index: 1;
}

.at-catalogue-cta__accent {
	position: absolute;
	right: -42px;
	top: -187px;
	width: 423px;
	height: 730px;
	background: var(--at-primary);
	border: 1px solid var(--at-brown);
	transform: rotate(-135deg) scaleY(-1);
	transform-origin: center center;
}

.at-catalogue-cta__row--dual .at-catalogue-cta__accent {
	right: -45px;
	top: -41px;
	width: 300px;
	height: 520px;
}

.at-catalogue-cta__mockup {
	position: absolute;
	right: 0;
	top: -80px;
	width: 684px;
	height: 505px;
	max-width: 45.6%;
	overflow: hidden;
}

.at-catalogue-cta__row--dual .at-catalogue-cta__mockup {
	top: -40px;
	width: 420px;
	height: 310px;
	max-width: 52%;
}

.at-catalogue-cta__mockup img {
	position: absolute;
	width: 123.19%;
	height: 125.2%;
	max-width: none;
	left: -14.52%;
	top: -16.97%;
	object-fit: cover;
	pointer-events: none;
}

/* Inner pages — standard header (not overlay hero) */
body.has-inner-header .site-main--inner {
	padding-top: 48px;
}

/* Homepage section anchors (single-page nav) */
.site-main--front section[id] {
	scroll-margin-top: 120px;
}

/* ========== PAGE BANNER (inner pages — Figma 274:264 / texture 274:269) ========== */
.at-page-banner {
	position: relative;
	height: 350px;
	min-height: 350px;
	display: flex;
	align-items: flex-start;
	justify-content: center;
	text-align: center;
	overflow: hidden;
	background: #000;
}

.at-page-banner--hero {
	min-height: var(--at-hero-height);
}

/* Figma 274:271 — texture crop: 1912×434, offset top -53px, image scale 311% / -66% */
.at-page-banner__texture {
	position: absolute;
	inset: 0;
	overflow: hidden;
	pointer-events: none;
}

.at-page-banner__texture img {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 100%;
	min-width: 1912px;
	height: 311.29%;
	max-width: none;
	transform: translate(-50%, -40.13%);
	object-fit: cover;
}

.at-page-banner__content {
	position: relative;
	z-index: 2;
	color: var(--at-white);
	padding: 165px 20px 0;
}

.at-page-banner__title {
	margin: 0 0 12px;
	font-family: var(--at-font-heading);
	font-size: 50px;
	font-weight: 400;
	line-height: 60px;
	text-transform: capitalize;
	font-variation-settings: "SOFT" 0, "WONK" 1;
}

.at-page-banner__breadcrumb {
	margin: 0;
	font-family: var(--at-font-body);
	font-size: 16px;
	line-height: 26px;
	letter-spacing: 0.16px;
	text-transform: capitalize;
}

.at-page-banner__breadcrumb span {
	color: rgba(255, 255, 255, 0.5);
}

/* ========== FOOTER (Figma 200:377 / brand 200:424) ========== */
.site-footer {
	background: var(--at-bg);
}

.site-footer__main {
	padding: 69px 0 48px;
}

.site-footer__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.45fr) minmax(0, 0.55fr) minmax(0, 0.6fr) minmax(0, 1fr);
	gap: 40px 48px;
	align-items: start;
	max-width: 1500px;
	margin-inline: auto;
}

/* Brand column + divider (200:424–427) */
.site-footer__brand {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 1px;
	gap: 0 clamp(32px, 6vw, 118px);
	max-width: 495px;
	width: 100%;
}

.site-footer__brand-inner {
	min-width: 0;
}

.site-footer__logo {
	display: inline-block;
	margin-bottom: 23px;
}

.site-footer__logo img {
	display: block;
	width: 179px;
	height: 39px;
	object-fit: contain;
}

.site-footer__about {
	margin: 0;
	max-width: 376px;
	font-family: var(--at-font-body);
	font-size: 16px;
	font-weight: 400;
	line-height: 28px;
	color: var(--at-text-black);
	letter-spacing: 0.16px;
	text-transform: capitalize;
}

.site-footer__divider {
	width: 1px;
	height: 239px;
	background: var(--at-brown);
	opacity: 0.3;
	justify-self: end;
	margin-top: 8px;
}

.site-footer__col-title {
	margin: 0 0 33px;
	padding-left: 14px;
	position: relative;
	font-family: var(--at-font-body);
	font-size: 18px;
	font-weight: 600;
	line-height: 20px;
	color: var(--at-text-black);
	text-transform: uppercase;
}

.site-footer__col-title::before {
	content: "";
	position: absolute;
	left: 0;
	top: 2px;
	width: 3px;
	height: 16px;
	background: var(--at-primary);
}

.site-footer__col--links {
	min-width: 0;
	max-width: 190px;
}

.site-footer__col--categories {
	min-width: 0;
	max-width: 207px;
}

.site-footer__col--contact {
	min-width: 0;
	max-width: 344px;
}

.site-footer__col {
	min-width: 0;
}

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

.site-footer__links li {
	margin: 0;
}

.site-footer__links a {
	display: block;
	font-family: var(--at-font-body);
	font-size: 14px;
	font-weight: 400;
	line-height: 40px;
	color: var(--at-text);
	text-transform: capitalize;
	text-decoration: none;
	transition: color var(--at-transition);
}

.site-footer__links a:hover {
	color: var(--at-primary);
}

.site-footer__contact-item {
	display: grid;
	grid-template-columns: 41px 1fr;
	gap: 20px;
	align-items: start;
	margin: 0 0 28px;
}

.site-footer__contact-item:last-child {
	margin-bottom: 0;
}

.site-footer__contact-icon {
	position: relative;
	display: block;
	width: 41px;
	height: 41px;
	flex-shrink: 0;
}

.site-footer__contact-icon__bg {
	display: block;
	width: 41px;
	height: 41px;
}

.site-footer__contact-icon__glyph {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	object-fit: contain;
	pointer-events: none;
}

.site-footer__contact-icon__glyph--phone {
	width: 18px;
	height: 22px;
}

.site-footer__contact-icon__glyph--mail {
	width: 23px;
	height: 18px;
}

.site-footer__contact-icon__glyph--location {
	width: 17px;
	height: 19px;
}

.site-footer__contact-label {
	margin: 0;
	font-family: var(--at-font-body);
	font-size: 13px;
	font-weight: 400;
	line-height: 25px;
	color: var(--at-text-black);
	text-transform: uppercase;
}

.site-footer__contact-value {
	margin: 0;
	font-family: var(--at-font-body);
	font-size: 16px;
	font-weight: 700;
	line-height: 25px;
	color: var(--at-text-black);
}

.site-footer__contact-value a {
	color: inherit;
	text-decoration: none;
}

.site-footer__contact-value a:hover {
	color: var(--at-primary);
}

/* Bottom bar (200:378–397) */
.site-footer__bar {
	position: relative;
	z-index: 1;
	background: var(--at-primary);
	min-height: 62px;
	flex-shrink: 0;
}

.site-footer__bar-inner {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	min-height: 62px;
	gap: 16px;
	font-family: var(--at-font-body);
	font-size: 14px;
	font-weight: 400;
	line-height: 25px;
	color: var(--at-white);
}

.site-footer__copy {
	margin: 0;
	justify-self: start;
}

.site-footer__credit {
	margin: 0;
	justify-self: end;
	text-align: right;
}

.site-footer__social {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 12px 15px;
}

.site-footer__social a {
	display: block;
	width: 33px;
	height: 33px;
	line-height: 0;
}

.site-footer__social img {
	display: block;
	width: 33px;
	height: 33px;
}

/* ========== INDUSTRIES WE SERVE ========== */
.at-industries {
	padding: 0 0 var(--at-section-pad-y);
	background: var(--at-bg);
}

.at-industries__title {
	margin: 0 0 40px;
	font-family: var(--at-font-heading);
	font-size: var(--at-fs-h2);
	font-weight: 400;
	line-height: var(--at-lh-h2);
	letter-spacing: var(--at-tracking-section);
	color: var(--at-text-black);
	text-align: center;
}

.at-industries__carousel {
	--at-industries-gap: 20px;
	--at-industries-visible: 5;
	display: flex;
	align-items: center;
	gap: 8px;
	width: 100%;
	margin: 0;
}

.at-industries__nav {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	padding: 0;
	border: 0;
	background: transparent;
	cursor: pointer;
	opacity: 0.85;
	transition: opacity 0.2s ease, transform 0.2s ease;
}

.at-industries__nav:hover,
.at-industries__nav:focus-visible {
	opacity: 1;
	transform: scale(1.05);
	outline: none;
}

.at-industries__nav:disabled {
	opacity: 0.35;
	cursor: default;
	transform: none;
}

.at-industries__nav img {
	display: block;
	width: 40px;
	height: auto;
}

.at-industries__viewport {
	flex: 1 1 auto;
	overflow: hidden;
	min-width: 0;
	outline: none;
	container-type: inline-size;
	container-name: industries;
}

.at-industries__track {
	display: flex;
	align-items: stretch;
	gap: var(--at-industries-gap);
	margin: 0;
	padding: 8px 0 16px;
	list-style: none;
	will-change: transform;
}

.at-industries__item {
	/* Exactly 5 cards fill the viewport row */
	flex: 0 0 calc(
		(100cqi - (var(--at-industries-visible) - 1) * var(--at-industries-gap)) /
			var(--at-industries-visible)
	);
	width: calc(
		(100cqi - (var(--at-industries-visible) - 1) * var(--at-industries-gap)) /
			var(--at-industries-visible)
	);
	min-width: 0;
	max-width: none;
}

.at-industries__card {
	position: relative;
	width: 100%;
	aspect-ratio: 10 / 15;
	height: auto;
	perspective: 1200px;
	cursor: pointer;
}

.at-industries__flip {
	position: relative;
	width: 100%;
	height: 100%;
	transform-style: preserve-3d;
	transition: transform 0.7s cubic-bezier(0.4, 0.2, 0.2, 1);
}

/* Tap / class flip (mobile + tablet) */
.at-industries__card.is-flipped .at-industries__flip {
	transform: rotateY(180deg);
}

/* Hover flip only on real desktop pointers — sticky :hover breaks tap-to-close on touch */
@media (hover: hover) and (pointer: fine) {
	.at-industries__card:hover .at-industries__flip,
	.at-industries__card:focus-within .at-industries__flip {
		transform: rotateY(180deg);
	}
}

/* Tablet / mobile viewports: tap only (even if device reports hover) */
@media (max-width: 1024px) {
	.at-industries__card:hover .at-industries__flip,
	.at-industries__card:focus-within .at-industries__flip {
		transform: none;
	}

	.at-industries__card.is-flipped .at-industries__flip {
		transform: rotateY(180deg);
	}
}

.at-industries__face {
	position: absolute;
	inset: 0;
	border-radius: 999px;
	overflow: hidden;
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
	box-shadow: 0 10px 28px rgba(61, 43, 31, 0.12);
}

.at-industries__face--front {
	background: var(--at-cream);
}

.at-industries__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.at-industries__label {
	position: absolute;
	left: 12px;
	right: 12px;
	bottom: 66px;
	z-index: 1;
	margin: 0;
	padding: 0 8px;
	font-family: var(--at-font-body);
	font-size: 13px;
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: 0.06em;
	text-align: center;
	text-transform: uppercase;
	color: var(--at-white);
	text-shadow: 0 1px 8px rgba(0, 0, 0, 0.55);
	pointer-events: none;
}

.at-industries__face--front::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 42%;
	background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.55) 100%);
	pointer-events: none;
}

.at-industries__face--back {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 36px 22px;
	background: var(--at-primary-dark);
	transform: rotateY(180deg);
	color: var(--at-white);
	text-align: center;
}

.at-industries__back-inner {
	max-width: 100%;
}

.at-industries__back-title {
	margin: 0 0 14px;
	font-family: var(--at-font-body);
	font-size: 14px;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--at-white);
}

.at-industries__back-text {
	margin: 0;
	font-family: var(--at-font-body);
	font-size: 13px;
	font-weight: 400;
	line-height: 1.55;
	color: rgba(255, 255, 255, 0.92);
}

/* ========== MANUFACTURING PROCESS ========== */
.at-mfg {
	padding: var(--at-section-pad-y) 0;
	background: var(--at-bg);
}

.at-mfg__title {
	margin: 0 0 48px;
	font-family: var(--at-font-heading);
	font-size: var(--at-fs-h2);
	font-weight: 400;
	line-height: var(--at-lh-h2);
	color: var(--at-text-black);
	text-align: center;
}

.at-mfg__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 28px;
	width: 100%;
	max-width: 1500px;
	margin: 0 auto;
	padding: 0;
	list-style: none;
}

.at-mfg__item {
	min-width: 0;
}

.at-mfg__card {
	display: block;
	text-decoration: none;
	color: inherit;
}

.at-mfg__card--static {
	cursor: default;
}

.at-mfg__media {
	position: relative;
	display: block;
	overflow: hidden;
	border-radius: 18px;
	background: var(--at-cream);
	aspect-ratio: 16 / 10;
}

.at-mfg__thumb {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	transition: transform 0.45s ease;
}

.at-mfg__card:hover .at-mfg__thumb,
.at-mfg__card:focus-visible .at-mfg__thumb {
	transform: scale(1.03);
}

.at-mfg__play {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	pointer-events: none;
}

.at-mfg__play img {
	width: 72px;
	height: 72px;
	display: block;
	filter: drop-shadow(0 4px 14px rgba(0, 0, 0, 0.25));
	transition: transform 0.25s ease;
}

.at-mfg__card:hover .at-mfg__play img,
.at-mfg__card:focus-visible .at-mfg__play img {
	transform: scale(1.06);
}

.at-mfg__caption {
	display: block;
	margin: 16px 0 0;
	font-family: var(--at-font-body);
	font-size: 14px;
	font-weight: 600;
	line-height: 1.35;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	text-align: center;
	color: var(--at-text-black);
}

.at-mfg-modal {
	padding: 0;
	border: 0;
	border-radius: 12px;
	width: min(960px, calc(100vw - 32px));
	max-width: 960px;
	background: #000;
	overflow: hidden;
}

.at-mfg-modal::backdrop {
	background: rgba(0, 0, 0, 0.72);
}

.at-mfg-modal__close {
	position: absolute;
	top: 10px;
	right: 12px;
	z-index: 2;
	width: 36px;
	height: 36px;
	border: 0;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.16);
	color: #fff;
	font-size: 28px;
	line-height: 1;
	cursor: pointer;
}

.at-mfg-modal__frame {
	position: relative;
	width: 100%;
	aspect-ratio: 16 / 9;
	background: #000;
}

.at-mfg-modal__frame iframe,
.at-mfg-modal__frame video {
	display: block;
	width: 100%;
	height: 100%;
	border: 0;
}

/* ========== GENERIC PAGE CONTENT ========== */
.at-page-content {
	padding: var(--at-section-pad-y) 0;
}

.at-page-content .entry-content > *:first-child {
	margin-top: 0;
}

/* Screen reader */
.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
	height: 1px;
	width: 1px;
	overflow: hidden;
}
