/* ========================================================================== 
   ART AUDIO — SILVER INDUSTRIAL / HIGH-END EDITORIAL SYSTEM
   Loaded after the legacy theme so this layer is authoritative.
   ========================================================================== */

:root {
	color-scheme: light only;
	--aa-black: #0b0d0e;
	--aa-graphite: #171a1c;
	--aa-carbon: #23272a;
	--aa-steel: #6f7a81;
	--aa-silver: #b9bec2;
	--aa-ice: #dfe4e6;
	--aa-line: rgba(15, 18, 20, .14);
	--aa-paper: #f5f5f2;
	--aa-white: #ffffff;
	--aa-accent: #8fa4af;
	--aa-price: #d43c2f;
	--aa-display: 'Be Vietnam Pro', Arial, sans-serif;
	--aa-sans: 'Be Vietnam Pro', Arial, sans-serif;
	--aa-ease: cubic-bezier(.2, .75, .25, 1);
	--aa-shell: 1480px;
}

/* Technology hub — scannable numbered card navigation ------------------ */
.aa-technology-nav { background: #efede6; }
.aa-technology-nav .aa-information-nav__inner {
	display: block;
	padding-top: clamp(34px, 4vw, 48px);
	padding-bottom: clamp(38px, 5vw, 56px);
}
.aa-technology-nav .aa-information-nav__inner > p {
	margin: 0 0 22px;
	color: #737977;
}
.aa-technology-nav__groups { display: grid; gap: clamp(34px, 5vw, 54px); }
.aa-technology-group { overflow: hidden; }
.aa-technology-group__head {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(250px, .7fr);
	align-items: end;
	gap: 28px;
	padding: 25px 28px 27px;
	background: #171919;
	color: #fff;
}
.aa-technology-group__head span {
	display: block;
	margin-bottom: 10px;
	color: #a67d57;
	font-size: 8px;
	font-weight: 750;
	letter-spacing: .16em;
	line-height: 1.4;
	text-transform: uppercase;
}
.aa-technology-group__head h2 {
	margin: 0;
	color: #fff;
	font-size: clamp(24px, 3vw, 34px);
	font-weight: 600;
	letter-spacing: -.025em;
	line-height: 1.08;
}
.aa-technology-group__head > p {
	max-width: 430px;
	margin: 0;
	justify-self: end;
	color: #9da4a2;
	font-size: 10px;
	font-weight: 650;
	letter-spacing: .08em;
	line-height: 1.55;
	text-transform: uppercase;
}
.aa-technology-group--java .aa-technology-group__head {
	background: linear-gradient(120deg, #171919 0%, #292725 72%, #705238 145%);
}
.aa-technology-group--java .aa-technology-group__head span { color: #c09a61; }
.aa-technology-nav .aa-information-nav__links {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
	padding-top: 12px;
	border: 0;
	background: transparent;
	counter-reset: aa-technology-item;
}
.aa-technology-nav .aa-information-nav__links a {
	display: flex;
	min-width: 0;
	min-height: 116px;
	margin: 0;
	padding: 20px 22px 22px;
	border: 1px solid rgba(17,19,19,.17);
	background: #f8f7f2;
	color: #171919;
	font-size: 12px;
	font-weight: 650;
	letter-spacing: 0;
	line-height: 1.48;
	overflow-wrap: break-word;
	transition: background-color .2s ease, color .2s ease;
	flex-direction: column;
	justify-content: space-between;
	counter-increment: aa-technology-item;
}
.aa-technology-nav .aa-information-nav__links a::before {
	display: block;
	margin-bottom: 22px;
	color: #9a7455;
	font-size: 8px;
	font-weight: 750;
	letter-spacing: .16em;
	line-height: 1;
	content: counter(aa-technology-item, decimal-leading-zero);
}
.aa-technology-nav .aa-information-nav__links a::after { display: none; }
.aa-technology-nav .aa-information-nav__links a:hover,
.aa-technology-nav .aa-information-nav__links a.is-active {
	background: #171919;
	color: #fff;
}
.aa-technology-nav .aa-information-nav__links a:hover::before,
.aa-technology-nav .aa-information-nav__links a.is-active::before { color: #c4a173; }

@media (max-width: 900px) {
	.aa-technology-group__head { grid-template-columns: minmax(0, 1fr); gap: 16px; }
	.aa-technology-group__head > p { justify-self: start; }
	.aa-technology-nav .aa-information-nav__links { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
	.aa-technology-nav .aa-information-nav__inner { padding: 30px 18px 36px; }
	.aa-technology-nav .aa-information-nav__inner > p { margin-bottom: 18px; }
	.aa-technology-nav__groups { gap: 32px; }
	.aa-technology-group__head { padding: 22px 18px 24px; }
	.aa-technology-group__head h2 { font-size: 25px; }
	.aa-technology-group__head > p { font-size: 8px; }
	.aa-technology-nav .aa-information-nav__links { grid-template-columns: minmax(0, 1fr); }
	.aa-technology-nav .aa-information-nav__links a,
	.aa-technology-nav .aa-information-nav__links a:nth-child(even) {
		min-height: 94px;
		padding: 17px 18px 19px;
		border: 0;
		font-size: 11px;
	}
	.aa-technology-nav .aa-information-nav__links a::before { margin-bottom: 16px; }
}

/* Policy hub — grouped service and legal navigation --------------------- */
.aa-policy-nav .aa-information-nav__inner {
	display: block;
	padding-top: clamp(34px, 4vw, 48px);
	padding-bottom: clamp(40px, 5vw, 58px);
}
.aa-policy-nav .aa-information-nav__inner > p { margin: 0 0 22px; }
.aa-policy-nav__groups {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
}
.aa-policy-group {
	border: 1px solid rgba(17,19,19,.16);
	background: #f9f8f3;
}
.aa-policy-group__head {
	min-height: 138px;
	padding: 25px 26px 27px;
	border-bottom: 1px solid rgba(17,19,19,.15);
	background: #e7e2d7;
}
.aa-policy-group--support .aa-policy-group__head { background: #dedfda; }
.aa-policy-group__head span {
	display: block;
	margin-bottom: 31px;
	color: #927052;
	font-size: 8px;
	font-weight: 750;
	letter-spacing: .15em;
	line-height: 1.4;
	text-transform: uppercase;
}
.aa-policy-group__head h2 {
	margin: 0;
	color: #151717;
	font-size: clamp(23px, 2.6vw, 31px);
	font-weight: 600;
	letter-spacing: -.025em;
	line-height: 1.12;
}
.aa-policy-group__links {
	display: grid;
	counter-reset: aa-policy-item;
}
.aa-policy-group__links a {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 18px;
	min-height: 68px;
	padding: 17px 21px;
	border-bottom: 1px solid rgba(17,19,19,.13);
	color: #202323;
	font-size: 11px;
	font-weight: 650;
	line-height: 1.45;
	text-decoration: none;
	counter-increment: aa-policy-item;
	transition: background-color .2s ease, color .2s ease;
}
.aa-policy-group__links a:last-child { border-bottom: 0; }
.aa-policy-group__links a span::before {
	margin-right: 13px;
	color: #9a7455;
	font-size: 8px;
	font-weight: 750;
	letter-spacing: .1em;
	content: counter(aa-policy-item, decimal-leading-zero);
}
.aa-policy-group__links a b {
	color: #8a908e;
	font-size: 15px;
	font-weight: 400;
}
.aa-policy-group__links a:hover,
.aa-policy-group__links a.is-active { background: #171919; color: #fff; }
.aa-policy-group__links a:hover b,
.aa-policy-group__links a.is-active b { color: #c4a173; }
.aa-policy-nav__empty { padding: 24px; border: 1px solid rgba(17,19,19,.16); background: #f9f8f3; color: #555c5b; font-size: 12px; }

@media (max-width: 767px) {
	.aa-policy-nav .aa-information-nav__inner { padding: 30px 18px 38px; }
	.aa-policy-nav .aa-information-nav__inner > p { margin-bottom: 18px; }
	.aa-policy-nav__groups { grid-template-columns: minmax(0, 1fr); gap: 18px; }
	.aa-policy-group__head { min-height: 0; padding: 22px 18px 24px; }
	.aa-policy-group__head span { margin-bottom: 21px; }
	.aa-policy-group__head h2 { font-size: 25px; }
	.aa-policy-group__links a { min-height: 62px; padding: 15px 16px; font-size: 10px; }
}

/* Detail pages — compact context navigation instead of repeating hubs --- */
.aa-context-nav,
.aa-context-nav * { box-sizing: border-box; }
.aa-context-nav {
	width: 100%;
	border-bottom: 1px solid rgba(17,19,19,.15);
	background: #efede6;
}
.aa-context-nav__inner {
	display: flex;
	width: min(100%, 1180px);
	min-height: 76px;
	margin: 0 auto;
	padding: 14px clamp(24px, 6vw, 70px);
	align-items: center;
	justify-content: space-between;
	gap: 28px;
}
.aa-context-nav__back {
	color: #252929;
	font-size: 9px;
	font-weight: 750;
	letter-spacing: .11em;
	line-height: 1.4;
	text-decoration: none;
	text-transform: uppercase;
	white-space: nowrap;
}
.aa-context-nav__back span { margin-right: 8px; color: #9a7455; font-size: 14px; }
.aa-context-nav__select {
	display: flex;
	min-width: min(100%, 430px);
	align-items: center;
	gap: 15px;
}
.aa-context-nav__select > span {
	color: #747b79;
	font-size: 8px;
	font-weight: 750;
	letter-spacing: .13em;
	text-transform: uppercase;
	white-space: nowrap;
}
.aa-context-nav__select select {
	width: 100%;
	min-width: 0;
	height: 44px;
	padding: 0 38px 0 14px;
	border: 1px solid rgba(17,19,19,.2);
	border-radius: 0;
	background-color: #f9f8f3;
	color: #202323;
	font-family: 'Be Vietnam Pro', 'Raleway', Arial, sans-serif;
	font-size: 10px;
	font-weight: 650;
}

@media (max-width: 767px) {
	.aa-context-nav__inner {
		display: grid;
		min-height: 0;
		padding: 15px 18px 17px;
		gap: 13px;
	}
	.aa-context-nav__back { font-size: 8px; white-space: normal; }
	.aa-context-nav__select { display: block; min-width: 0; width: 100%; }
	.aa-context-nav__select > span { display: block; margin-bottom: 7px; }
	.aa-context-nav__select select { height: 42px; font-size: 9px; }
}

html { scroll-behavior: smooth; }
html body,
html body *:not(.fa):not(.glyphicon):not(i) {
	font-family: var(--aa-sans) !important;
}
body {
	max-width: 100vw;
	background: var(--aa-paper) !important;
	color: var(--aa-graphite) !important;
	font-size: 15.5px;
	line-height: 1.68;
	letter-spacing: 0;
}
html,
body,
.mainContent-theme {
	color-scheme: light only;
}
@media (prefers-color-scheme: dark) {
	html,
	body,
	.mainContent-theme {
		color-scheme: light only !important;
	}
}
body *, body *::before, body *::after { box-sizing: border-box; }
body .fa, body i.fa { font-family: FontAwesome !important; }
body .glyphicon { font-family: 'Glyphicons Halflings' !important; }
::selection { background: var(--aa-black); color: var(--aa-white); }
img { height: auto; }
a { color: inherit; transition: color .25s ease, opacity .25s ease; }
a:hover, a:focus { color: var(--aa-steel); }
html body h1,
html body h2,
html body h3,
html body h4,
html body h5,
html body h6 {
	color: var(--aa-black);
	font-family: var(--aa-display) !important;
	font-weight: 600;
	letter-spacing: -0.015em;
	line-height: 1.22;
}
button, input, select, textarea { font-family: var(--aa-sans) !important; }
.mainContent-theme { overflow: hidden; max-width: 100%; }
#site-menu-handle {
	appearance: none;
	-webkit-appearance: none;
	margin: 0;
	padding: 10px 8px;
	border: 0;
	background: transparent;
	line-height: 0;
	cursor: pointer;
	-webkit-tap-highlight-color: transparent;
}
.site-overlay {
	background: rgba(11, 13, 14, .46) !important;
	pointer-events: none;
	cursor: pointer;
}
.locked-scroll .site-overlay {
	pointer-events: auto;
}
@media (max-width: 991px) {
	html.locked-scroll,
	body.locked-scroll {
		overflow: hidden !important;
		overscroll-behavior: none;
	}
	.main-header,
	.locked-scroll .main-header,
	.locked-scroll .main-header.hSticky.hSticky-nav {
		z-index: 200 !important;
	}
	#site-menu-handle {
		position: relative;
		z-index: 220;
	}
	.header-action.show-action .site_menu_mobile,
	.aa-menu-trigger.show-action .site_menu_mobile {
		z-index: 210 !important;
		pointer-events: auto;
	}
	.site-overlay {
		z-index: 150 !important;
	}
	.site_menu_mobile {
		top: var(--header-height, 70px) !important;
		height: calc(100dvh - var(--header-height, 70px)) !important;
		max-height: calc(100dvh - var(--header-height, 70px));
	}
}
.container-fluid { width: 100%; max-width: var(--aa-shell); padding-left: 32px; padding-right: 32px; }
.aa-shell { width: min(calc(100% - 64px), var(--aa-shell)); margin-inline: auto; }
.aa-section { padding: clamp(72px, 8vw, 140px) 0; }
.aa-kicker {
	margin: 0 0 18px;
	color: var(--aa-steel);
	font-size: 11px;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: .2em;
	text-transform: uppercase;
}
.aa-kicker span { color: var(--aa-silver); margin: 0 8px; }
.aa-text-link {
	display: inline-flex;
	align-items: center;
	gap: 16px;
	padding-bottom: 7px;
	border-bottom: 1px solid currentColor;
	color: var(--aa-black);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}
.aa-text-link::after { content: ''; flex: 0 0 28px; height: 1px; background: currentColor; transition: flex-basis .35s var(--aa-ease), opacity .3s ease; }
.aa-text-link:hover::after { flex-basis: 44px; }
.aa-text-link--light { color: var(--aa-white); }
.aa-button,
.button,
button.button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 50px;
	padding: 0 27px;
	border: 1px solid var(--aa-black);
	border-radius: 0;
	background: var(--aa-black);
	color: var(--aa-white);
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .15em;
	line-height: 1;
	text-transform: uppercase;
	transition: background .35s var(--aa-ease), color .35s var(--aa-ease), border-color .35s var(--aa-ease);
}
.aa-button::before, .button::before { display: none !important; }
.aa-button:hover, .button:hover { background: transparent; color: var(--aa-black); border-color: var(--aa-black); }
.aa-button--light { color: var(--aa-black); background: var(--aa-white); border-color: var(--aa-white); }
.aa-button--light:hover { color: var(--aa-white); background: transparent; border-color: rgba(255,255,255,.6); }
.aa-section-head {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 40px;
	margin-bottom: clamp(52px, 6vw, 86px);
}
.aa-section-head h2, .aa-intro h2, .aa-audition h2 {
	margin: 0;
	font-size: clamp(28px, 3.6vw, 44px);
	line-height: 1.2;
	font-weight: 600;
}
.aa-section-head h2 em, .aa-intro h2 em, .aa-audition h2 em {
	color: var(--aa-steel);
	font-weight: 400;
}
.aa-section-note { max-width: 440px; margin: 0; color: #aeb5b9; font-size: 15px; line-height: 1.8; }

/* Header ------------------------------------------------------------------ */
.main-header.aa-header {
	position: relative !important;
	z-index: 1000;
	overflow: visible !important;
	border: 0 !important;
	background: rgba(247, 247, 245, .96) !important;
}
.main-header.aa-header.aa-scrolled { position: sticky !important; top: 0; box-shadow: 0 1px 0 rgba(0,0,0,.08); }
.main-header.aa-header + .mainContent-theme { padding-top: 0 !important; }
.aa-utility { border-bottom: 1px solid var(--aa-line); background: var(--aa-black); color: #b7bdc0; }
.aa-utility__inner { display: flex; align-items: center; justify-content: space-between; min-height: 31px; }
.aa-utility p, .aa-utility a { margin: 0; color: inherit; font-size: 9px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; }
.aa-utility p span { margin: 0 10px; color: #50575b; }
.aa-utility a:hover { color: var(--aa-white); }
.aa-header__main { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 36px; min-height: 88px; }
.aa-menu-trigger { display: none; }
.aa-header__brand { position: relative; z-index: 2; justify-self: start; min-width: 152px; }
.aa-header__brand a { display: inline-flex; align-items: center; }
.aa-header__brand img { display: block; width: 152px; max-width: 152px; max-height: 48px; object-fit: contain; filter: grayscale(1) contrast(1.2); }
.aa-header__brand span { font-size: 17px; font-weight: 800; letter-spacing: .22em; }
.aa-header__nav { justify-self: stretch; min-width: 0; overflow: visible; }
.aa-header__nav #nav, .aa-header__nav .main-nav { display: block; width: 100%; text-align: left; }
.aa-header__nav .main-nav > ul { display: flex; align-items: center; justify-content: flex-start; flex-wrap: nowrap; gap: clamp(22px, 2.4vw, 40px); }
.aa-header__nav .main-nav > ul > li { position: relative; float: none; }
.aa-header__nav .main-nav > ul > li > a {
	display: block;
	padding: 34px 0 33px;
	color: var(--aa-carbon);
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}
.aa-header__nav #nav .main-nav > ul > li > a {
	margin: 0 !important;
	padding: 34px 0 33px !important;
	color: var(--aa-carbon) !important;
}
.aa-header__nav .main-nav > ul > li > a::after {
	content: '';
	position: absolute;
	left: 0;
	bottom: 24px;
	width: 100%;
	height: 1px;
	background: var(--aa-black);
	transform: scaleX(0);
	transform-origin: right;
	transition: transform .35s var(--aa-ease);
}
.aa-header__nav .main-nav > ul > li:hover > a::after, .aa-header__nav .main-nav > ul > li.active > a::after { transform: scaleX(1); transform-origin: left; }
.aa-header__nav .main-nav i { display: none; }
.aa-header__nav .sub_menu {
	display: block;
	position: absolute;
	top: calc(100% - 14px);
	left: -28px;
	min-width: 260px;
	padding: 18px 0;
	border: 1px solid rgba(255,255,255,.08);
	background: rgba(12,14,15,.98);
	box-shadow: 0 28px 55px rgba(0,0,0,.22);
	opacity: 0;
	visibility: hidden;
	transform: translateY(8px);
	transition: .3s var(--aa-ease);
}
.aa-header__nav li:hover > .sub_menu { opacity: 1; visibility: visible; transform: none; }
.aa-header__nav #nav .main-nav ul > li > ul {
	top: calc(100% - 14px);
	margin: 0;
	border-top: 1px solid rgba(255,255,255,.08);
}
.aa-header__nav #nav .main-nav .sub_menu {
	opacity: 0;
	visibility: hidden;
	transform: translateY(8px) !important;
}
.aa-header__nav #nav .main-nav li:hover > .sub_menu {
	opacity: 1;
	visibility: visible;
	transform: none !important;
}
.aa-header__nav .sub_menu li { position: relative; }
.aa-header__nav .sub_menu a { display: block; padding: 10px 28px; color: #b9bec1; font-size: 10px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
.aa-header__nav .sub_menu a:hover { color: var(--aa-white); }
.aa-header__nav .sub_menu .sub_menu { top: -18px; left: 100%; }
.aa-header__nav #nav .main-nav .sub_menu .sub_menu {
	top: -18px;
	left: 100%;
	margin: 0;
	transform: translateX(8px) !important;
}
.aa-header__nav #nav .main-nav .sub_menu li:hover > .sub_menu { transform: none !important; }
.aa-header__nav #nav .main-nav .sub_menu li:not(:first-child) { border-top: 0; }
.aa-header__actions { display: flex; align-items: center; justify-content: flex-end; gap: 22px; white-space: nowrap; }
.aa-icon-btn { display: inline-flex !important; align-items: center; justify-content: center; width: 40px; height: 40px; padding: 0; border: 0; background: transparent; cursor: pointer; }
.aa-header__actions .header-action.header_wrap_cart,
.aa-header__actions .header-action.header_wrap_search { margin-left: 0; }
.aa-header-link { color: var(--aa-black); font-size: 10px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.aa-header-link:hover { color: var(--aa-steel); }
.aa-cart-link .count-holder { display: inline-grid; place-items: center; min-width: 20px; height: 20px; margin-left: 4px; border: 1px solid var(--aa-line); border-radius: 50%; font-size: 8px; }
.aa-search-panel {
	position: fixed !important;
	top: 119px !important;
	left: 0 !important;
	right: 0 !important;
	width: 100% !important;
	padding: 54px max(32px, calc((100vw - var(--aa-shell)) / 2)) 60px !important;
	border: 0 !important;
	background: rgba(11,13,14,.98) !important;
	color: var(--aa-white);
	box-shadow: 0 30px 80px rgba(0,0,0,.22);
}
.aa-search-panel .site-nav-container { width: min(100%, 860px); margin: auto; }
.aa-panel-kicker { color: #858d92; font-size: 9px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.aa-search-panel .wpo-search-inner { display: grid; grid-template-columns: 1fr auto; align-items: center; border-bottom: 1px solid #51585d; }
.aa-search-panel .searchinput { width: 100%; height: 56px; padding: 0; border: 0 !important; background: transparent !important; color: var(--aa-white) !important; font-family: var(--aa-sans) !important; font-size: 18px !important; font-weight: 400; }
.aa-search-panel .searchinput::placeholder { color: #6f777b; }
.aa-search-submit { height: 42px; padding: 0 22px; border: 1px solid #596166; background: transparent; color: var(--aa-white); font-size: 9px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.header_dropdown_content.site_account, .header_dropdown_content.site_cart { border: 1px solid var(--aa-line); border-radius: 0; box-shadow: 0 26px 60px rgba(0,0,0,.14); }

/* Hero -------------------------------------------------------------------- */
.aa-hero { position: relative; min-height: min(850px, calc(100vh - 119px)); background: var(--aa-black); color: var(--aa-white); overflow: hidden; }
.aa-hero__media, .aa-hero__shade, .aa-hero__grid { position: absolute; inset: 0; }
.aa-hero__media img { width: 100%; height: 100%; object-fit: cover; object-position: center; filter: saturate(.35) contrast(1.08) brightness(.72); transform: scale(1.01); }
.aa-hero__shade { background: linear-gradient(90deg, rgba(5,7,8,.9) 0%, rgba(5,7,8,.62) 34%, rgba(5,7,8,.08) 68%, rgba(5,7,8,.2) 100%), linear-gradient(0deg, rgba(5,7,8,.64), transparent 45%); }
.aa-hero__grid { opacity: .18; background-image: linear-gradient(rgba(255,255,255,.16) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.16) 1px, transparent 1px); background-size: 25vw 100%, 100% 25vh; mask-image: linear-gradient(90deg, #000, transparent 68%); }
.aa-hero__content { position: relative; z-index: 2; width: min(calc(100% - 64px), var(--aa-shell)); margin: auto; padding-top: clamp(110px, 16vh, 185px); }
.aa-hero .aa-kicker { color: #bac2c6; }
.aa-hero h1 { max-width: 780px; margin: 0; color: var(--aa-white); font-size: clamp(36px, 5.4vw, 56px); line-height: 1.12; letter-spacing: -0.02em; font-weight: 600; }
.aa-hero h1 em { color: #c7cdd0; font-weight: 400; }
.aa-hero__lead { max-width: 570px; margin: 42px 0 36px; color: #c5cacc; font-size: clamp(15px, 1.3vw, 18px); line-height: 1.75; }
.aa-hero__actions { display: flex; align-items: center; gap: 34px; }
.aa-hero__rail { position: absolute; z-index: 2; left: 0; right: 0; bottom: 0; display: grid; grid-template-columns: repeat(3, 1fr); margin-left: 50%; border-top: 1px solid rgba(255,255,255,.22); background: rgba(10,12,13,.4); backdrop-filter: blur(12px); }
.aa-hero__rail > div { display: grid; grid-template-columns: auto 1fr; column-gap: 16px; min-height: 102px; padding: 25px 28px; border-left: 1px solid rgba(255,255,255,.16); }
.aa-hero__rail span { grid-row: 1 / 3; color: #697176; font-size: 9px; font-weight: 700; letter-spacing: .12em; }
.aa-hero__rail strong { color: var(--aa-white); font-size: 10px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.aa-hero__rail small { color: #979fa3; font-size: 10px; }

/* Home / editorial sections --------------------------------------------- */
.aa-intro { position: relative; overflow: hidden; background: var(--aa-paper); }
.aa-intro::after { content: ''; position: absolute; top: 0; right: 8%; width: 1px; height: 100%; background: linear-gradient(transparent, var(--aa-line) 14%, var(--aa-line) 86%, transparent); pointer-events: none; }
.aa-intro__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); align-items: start; gap: 0 24px; }
.aa-intro__headline { grid-column: 1 / span 8; }
.aa-intro h2 { max-width: 960px; font-size: clamp(28px, 3.6vw, 44px); }
.aa-intro__copy { grid-column: 9 / -1; align-self: end; padding: 48px 0 5px; }
.aa-intro__copy > p { max-width: 540px; margin: 0 0 34px; color: #3f464a; font-size: 16px; line-height: 1.75; }
.aa-intro__lead::first-letter { color: var(--aa-black); font-family: var(--aa-display); font-size: 1.15em; font-weight: 600; line-height: 1; }
.aa-intro__principles { grid-column: 4 / -1; display: grid; grid-template-columns: repeat(3, 1fr); margin-top: clamp(70px, 8vw, 120px); border-top: 1px solid var(--aa-line); border-bottom: 1px solid var(--aa-line); }
.aa-intro__principles article { display: grid; grid-template-columns: 28px 1fr; gap: 18px; min-height: 190px; padding: 30px 30px 34px 0; }
.aa-intro__principles article + article { padding-left: 30px; border-left: 1px solid var(--aa-line); }
.aa-intro__principles span { padding-top: 3px; color: var(--aa-steel); font-size: 9px; font-weight: 700; letter-spacing: .14em; }
.aa-intro__principles h3 { margin: 0 0 14px; font-family: var(--aa-sans) !important; font-size: 13px; font-weight: 700; line-height: 1.35; letter-spacing: .07em; text-transform: uppercase; }
.aa-intro__principles p { max-width: 290px; margin: 0; color: #697075; font-size: 12px; line-height: 1.75; }
.aa-models { border-top: 1px solid var(--aa-line); background: var(--aa-white); }
.aa-model-grid { display: grid; grid-template-columns: repeat(12, 1fr); gap: 58px 24px; }
.aa-model-card { grid-column: span 4; }
.aa-model-card--1, .aa-model-card--4 { grid-column: span 8; }
.aa-model-card--1 .aa-model-card__media, .aa-model-card--4 .aa-model-card__media { aspect-ratio: 1.75; }
.aa-model-card__media { position: relative; aspect-ratio: 5 / 4; background: #e9e9e6; overflow: hidden; }
.aa-model-card__media::after {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(112deg, transparent 35%, rgba(255,255,255,.42) 48%, transparent 61%);
	transform: translateX(-120%);
	transition: transform .9s var(--aa-ease);
}
.aa-model-card img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.72) contrast(1.02); transition: transform 1.1s var(--aa-ease), filter .6s ease; }
.aa-model-card a:hover img { transform: scale(1.035); filter: saturate(.95) contrast(1.03); }
.aa-model-card a:hover .aa-model-card__media::after { transform: translateX(120%); }
.aa-model-card__meta { display: grid; grid-template-columns: 42px 1fr auto; align-items: baseline; gap: 12px; padding: 18px 0 0; border-top: 1px solid var(--aa-line); }
.aa-model-card__meta span, .aa-model-card__meta small { color: var(--aa-steel); font-size: 8px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.aa-model-card__meta h3 { margin: 0; font-family: var(--aa-sans) !important; font-size: 15px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.aa-sprint-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.aa-sprint-grid .aa-model-card { grid-column: auto; }
.aa-sprint-grid .aa-model-card__media { aspect-ratio: 4 / 3; }
.aa-sprint-grid .aa-model-card__meta { grid-template-columns: 42px 1fr; align-items: start; }
.aa-sprint-price {
	display: block;
	margin-top: 6px;
	color: var(--aa-price);
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0;
	text-transform: none;
}
.aa-products--atalante .aa-product-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.aa-products--java .aa-product-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.aa-products--light { background: var(--aa-paper); }
.aa-products--silver { background: var(--aa-ice); }
.aa-products--java { background: #f4efe3; }
.aa-section-head--sales > div:first-child { max-width: 940px; }
.aa-products__description { max-width: 650px; margin: 28px 0 0; color: #626a6e; font-size: 15px; line-height: 1.8; }
.aa-section-head__aside { display: flex; flex-direction: column; align-items: flex-end; gap: 27px; flex: 0 0 auto; }
.aa-section-head__aside > span { color: var(--aa-steel); font-size: 9px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.aa-product-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; border: 1px solid var(--aa-line); background: var(--aa-line); }
.aa-product-grid > .pro-loop { width: auto !important; min-width: 0; padding: 0 !important; float: none !important; background: var(--aa-paper); }
.aa-product-grid .product-block { height: 100%; }
.aa-products--signature .aa-product-grid { grid-template-columns: minmax(0, 1.25fr) minmax(390px, .75fr); grid-template-rows: repeat(3, minmax(0, auto)); }
.aa-products--signature .aa-product-grid > .pro-loop:first-child { grid-column: 1; grid-row: 1 / span 3; }
.aa-products--signature .aa-product-grid > .pro-loop:not(:first-child) { grid-column: 2; }
.aa-products--signature .aa-product-grid > .pro-loop:first-child .product-img > a { aspect-ratio: 1.28; padding: 8%; }
.aa-products--signature .aa-product-grid > .pro-loop:first-child .product-detail { padding: 34px 34px 38px; }
.aa-products--signature .aa-product-grid > .pro-loop:first-child .pro-name { font-size: 19px; letter-spacing: .01em; }
.aa-products--signature .aa-product-grid > .pro-loop:not(:first-child) .product-block { display: grid; grid-template-columns: minmax(180px, 43%) 1fr; }
.aa-products--signature .aa-product-grid > .pro-loop:not(:first-child) .product-img > a { height: 100%; min-height: 230px; aspect-ratio: auto; padding: 8%; }
.aa-products--signature .aa-product-grid > .pro-loop:not(:first-child) .product-detail { display: flex; align-items: center; padding: 24px 26px; }
.aa-products--rail .aa-product-grid { gap: 14px; border: 0; background: transparent; }
.aa-products--rail .aa-product-grid > .pro-loop { border: 1px solid var(--aa-line); }
.aa-technology { position: relative; background: var(--aa-black); color: var(--aa-white); }
.aa-technology::before { content: ''; position: absolute; inset: 0; opacity: .18; background: radial-gradient(circle at 80% 15%, rgba(143,164,175,.6), transparent 24%), repeating-linear-gradient(90deg, transparent 0, transparent calc(25% - 1px), rgba(255,255,255,.13) 25%); pointer-events: none; }
.aa-technology .aa-shell { position: relative; }
.aa-section-head--dark h2 { color: var(--aa-white); }
.aa-section-head--dark h2 em { color: var(--aa-silver); }
.aa-tech-grid { display: grid; grid-template-columns: repeat(3, 1fr); border: 1px solid rgba(255,255,255,.13); }
.aa-tech-card { min-width: 0; border-right: 1px solid rgba(255,255,255,.13); }
.aa-tech-card:last-child { border-right: 0; }
.aa-tech-card a { display: block; color: inherit; }
.aa-tech-card img { display: block; width: 100%; aspect-ratio: 1.32; object-fit: cover; filter: grayscale(1) brightness(.7) contrast(1.12); transition: filter .6s, transform .8s var(--aa-ease); }
.aa-tech-card a { overflow: hidden; }
.aa-tech-card a:hover img { filter: grayscale(.3) brightness(.85) contrast(1.06); transform: scale(1.025); }
.aa-tech-card div { min-height: 240px; padding: 38px; border-top: 1px solid rgba(255,255,255,.13); }
.aa-tech-card span { color: #6f797e; font-size: 8px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; }
.aa-tech-card h3 { margin: 48px 0 15px; color: var(--aa-white); font-family: var(--aa-sans) !important; font-size: 15px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
.aa-tech-card p { max-width: 330px; margin: 0; color: #9da5a9; font-size: 14px; line-height: 1.75; }
.aa-journal { background: var(--aa-white); }
.aa-journal-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 48px 24px; }
.aa-journal-card__media { aspect-ratio: 1.4; margin-bottom: 24px; background: #e8e8e5; overflow: hidden; }
.aa-journal-card img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(.85); transition: transform .8s var(--aa-ease), filter .5s; }
.aa-journal-card a:hover img { transform: scale(1.025); filter: grayscale(0); }
.aa-journal-card .aa-kicker { margin-bottom: 12px; }
.aa-journal-card h3 { margin: 0 0 14px; font-size: clamp(18px, 1.8vw, 22px); line-height: 1.3; font-weight: 600; }
.aa-journal-card > a > p:last-child { color: #62696c; font-size: 13px; line-height: 1.75; }
.aa-audition { position: relative; min-height: 760px; display: grid; place-items: center; color: var(--aa-white); overflow: hidden; }
.aa-audition__media, .aa-audition__shade { position: absolute; inset: 0; }
.aa-audition__media img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(1) contrast(1.1); }
.aa-audition__shade { background: linear-gradient(90deg, rgba(7,9,10,.9), rgba(7,9,10,.48) 60%, rgba(7,9,10,.25)); }
.aa-audition__content { position: relative; z-index: 1; }
.aa-audition h2 { max-width: 1000px; margin: 0; color: var(--aa-white); }
.aa-audition h2 em { color: #c8cdd0; }
.aa-audition__content > p:not(.aa-kicker) { max-width: 600px; margin: 36px 0; color: #c4cacd; font-size: 15px; line-height: 1.8; }
.aa-audition__content > div { display: flex; align-items: center; gap: 34px; }

/* Product cards ---------------------------------------------------------- */
.product-block { margin: 0 !important; background: var(--aa-paper); }
.product-block .product-img { position: relative; overflow: hidden; background: #e9e9e6; }
.product-block .product-img > a { display: block; position: relative; aspect-ratio: 4 / 5; padding: 11%; }
.product-block .product-img picture { display: block; width: 100%; height: 100%; }
.product-block .product-img img { width: 100%; height: 100% !important; object-fit: contain !important; mix-blend-mode: multiply; transition: opacity .5s ease, transform .8s var(--aa-ease); }
.product-block .product-img img.img-hover { position: absolute; inset: 10%; width: 80%; height: 80% !important; opacity: 0; }
.product-block:hover .product-img img:first-of-type { opacity: 0; transform: scale(.98); }
.product-block:hover .product-img img.img-hover { opacity: 1; transform: scale(1.02); }
.product-block .product-sale, .product-block .sold-out { top: 16px; left: 16px; right: auto; min-width: 0; height: auto; padding: 7px 10px; border: 0; border-radius: 0; background: var(--aa-black); color: var(--aa-white); }
.product-block .product-sale span, .product-block .sold-out span { color: inherit; font-size: 8px; font-weight: 700; letter-spacing: .12em; line-height: 1; text-transform: uppercase; }
.product-block .product-detail { padding: 22px 20px 26px; border-top: 1px solid var(--aa-line); background: var(--aa-paper); text-align: left; }
.aa-product-vendor { margin: 0 0 9px; color: var(--aa-steel); font-size: 9px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.product-block .pro-name { min-height: 5em !important; margin: 0 0 14px; font-family: var(--aa-sans) !important; font-size: 15px; font-weight: 700; line-height: 1.4; letter-spacing: .015em; text-transform: none; }
.product-block .pro-name a { color: var(--aa-black); }
.product-block .pro-name a,
.product-loop-special .pro-name a {
	display: -webkit-box;
	overflow: hidden;
	line-height: 1.35;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3 !important;
}
.aa-card-title__brand,
.aa-card-title__role {
	display: block;
	color: var(--aa-steel);
	font-size: 8px;
	font-weight: 700;
	letter-spacing: .11em;
	line-height: 1.3;
	text-transform: uppercase;
}
.aa-card-title__brand { margin-bottom: 7px; }
.aa-card-title__role { margin-bottom: 5px; color: #9b6c3d; }
.aa-card-title__model {
	display: block;
	color: var(--aa-black);
	font-size: 1em;
	font-weight: 700;
	line-height: 1.35;
}
.product-block .pro-price { margin: 0; color: var(--aa-price); font-size: 15px; font-weight: 600; letter-spacing: .01em; }
.product-block .pro-price-del { color: #9b9fa1; }
.aa-product-detail-link { display: inline-block; margin-top: 20px; padding-bottom: 5px; border-bottom: 1px solid var(--aa-steel); color: var(--aa-carbon); font-size: 10px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; transition: border-color .3s ease, color .3s ease; }
.aa-product-detail-link:hover { color: var(--aa-black); border-color: var(--aa-black); }
.haravan-product-reviews-badge,
#hrv-product-reviews,
#hrv-product-reviews-sub,
.hrv-product-reviews,
.hrv-product-reviews-summary,
.hrv-product-reviews-list,
.button-add,
.product_gift_label { display: none !important; }

/* Collection / search ---------------------------------------------------- */
.breadcrumb-shop { border: 0; border-bottom: 1px solid var(--aa-line); background: transparent; }
.breadcrumb-shop .breadcrumb-arrows { padding: 16px 0; }
.breadcrumb-shop .breadcrumb-arrows li, .breadcrumb-shop a { color: #767d81; font-size: 8px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.banner-collection-header { position: relative; max-height: 480px; overflow: hidden; background: var(--aa-black); }
.banner-collection-header::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(0,0,0,.42), transparent); pointer-events: none; }
.banner-collection-header img { width: 100%; min-height: 320px; max-height: 480px; object-fit: cover; filter: grayscale(.65) contrast(1.08); }
.collection-page .main-content { padding-top: clamp(60px, 7vw, 110px); padding-bottom: clamp(90px, 9vw, 150px); }
.wrap-collection-title .heading-collection { display: flex; align-items: flex-end; margin: 0 0 50px; padding: 0 0 28px; border-bottom: 1px solid var(--aa-line); }
.wrap-collection-title .heading-collection h1 { margin: 0; font-size: clamp(28px, 3.6vw, 40px); font-weight: 600; line-height: 1.2; }
.custom-dropdown--grey { background: transparent; }
.custom-dropdown__select, .sort-by { height: 44px; padding: 0 42px 0 16px; border: 1px solid var(--aa-line); border-radius: 0; background: transparent; color: var(--aa-carbon); font-size: 9px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
#collection-body .content-product-list.product-list { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 1px; margin: 0; border: 1px solid var(--aa-line); background: var(--aa-line); }
#collection-body .content-product-list.product-list::before,
#collection-body .content-product-list.product-list::after { content: none !important; display: none !important; }
#collection-body .content-product-list.product-list > .pro-loop { width: auto !important; padding: 0 !important; float: none; background: var(--aa-paper); }
.sidebar-fix .wrap-filter { padding-right: 28px; }
.block .title_block, .sidebarblog-title h2 { font-family: var(--aa-sans) !important; font-size: 10px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.layered-content li a, .tree-menu li a { color: #565d61; font-size: 11px; }
.pagination-default > li > a, .pagination-default > li > span, .pagination li a { border-radius: 0 !important; }

/* Product detail --------------------------------------------------------- */
.product-detail-wrapper { padding-top: clamp(36px, 5vw, 72px); padding-bottom: clamp(48px, 6vw, 90px); }
.product-detail-main,
.product-detail-main.row,
.product-detail-main.pr_style_01,
.product-detail-main.pr_style_02,
.product-detail-main.pr_style_03 {
	display: flex !important;
	flex-wrap: nowrap;
	align-items: flex-start;
	gap: clamp(32px, 4vw, 56px);
	margin-left: 0 !important;
	margin-right: 0 !important;
}
.product-detail-main::before,
.product-detail-main::after {
	content: none !important;
	display: none !important;
}
.product-detail-main > [class*="col-"],
.product-detail-main > .product-content-img,
.product-detail-main > .product-content-desc {
	float: none !important;
	width: auto !important;
	padding: 0 !important;
	margin: 0 !important;
}
.product-detail-main > .product-content-img,
.product-detail-main > [class*="col-"]:first-child {
	flex: 1 1 56%;
	min-width: 0;
	max-width: 62%;
}
.product-detail-main > .product-content-desc,
.product-detail-main > #detail-product {
	flex: 0 1 38%;
	min-width: 280px;
	max-width: 440px;
}
.product-gallery { display: block !important; }
.product-gallery__thumbs-container { display: none !important; }
.product-gallery__thumb { margin: 0 0 10px; border: 1px solid transparent; background: #ecece9; opacity: .7; }
.product-gallery__thumb img { display: block; width: 100%; height: auto; mix-blend-mode: multiply; }
.product-gallery__thumb.active { border-color: var(--aa-black); opacity: 1; }
.box__product-gallery,
.product-image-detail,
.product-full-img {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
	overflow: hidden !important;
	border: 0 !important;
	box-shadow: none !important;
	background: transparent !important;
	position: relative;
}
#sliderproduct,
.slide_product {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}
#sliderproduct:not(.flickity-enabled) > li:not(:first-child) { display: none !important; }
.product-image-detail .product-gallery-item,
.slide_product li.gallery-item {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	min-height: 0 !important;
	border: 0 !important;
	box-shadow: none !important;
	background: transparent !important;
}
.product-image-detail img,
.product-image-detail .product-image-feature,
.slide_product li.gallery-item img,
.product-full-img img {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
	max-height: min(72vw, 560px) !important;
	margin: 0 auto !important;
	object-fit: contain !important;
	mix-blend-mode: normal !important;
}
.productDetail-page .flickity-viewport {
	width: 100% !important;
	min-height: 0 !important;
	overflow: hidden !important;
}
@media (min-width: 992px) {
	.product-detail-main.pr_style_01 .product-gallery,
	.product-detail-main.pr_style_03 .product-gallery {
		display: grid !important;
		grid-template-columns: 84px minmax(0, 1fr);
		gap: 16px;
		align-items: start;
	}
	.product-detail-main.pr_style_01 .product-gallery__thumbs-container,
	.product-detail-main.pr_style_03 .product-gallery__thumbs-container {
		display: block !important;
		width: 100% !important;
		max-height: 560px;
		margin: 0 !important;
		overflow-y: auto;
	}
	.product-detail-main.pr_style_01 .product-gallery__thumbs,
	.product-detail-main.pr_style_03 .product-gallery__thumbs,
	.product-detail-main.pr_style_01 .product-gallery__thumb,
	.product-detail-main.pr_style_03 .product-gallery__thumb,
	.product-detail-main.pr_style_01 .product-gallery__thumb a,
	.product-detail-main.pr_style_03 .product-gallery__thumb a {
		width: 100% !important;
	}
	.product-detail-main.pr_style_01 .product-gallery__thumb img,
	.product-detail-main.pr_style_03 .product-gallery__thumb img {
		display: block !important;
		width: 100% !important;
		height: auto !important;
		aspect-ratio: 1 / 1;
		object-fit: cover;
	}
	/* Style 03 có sẵn một ảnh desktop riêng; slider này chỉ dành cho mobile. */
	.product-detail-main.pr_style_03 #sliderproduct {
		display: none !important;
	}
}
.productDetail-page .flickity-page-dots {
	position: relative !important;
	bottom: auto !important;
	margin: 14px 0 6px !important;
	z-index: 2;
}
.product-image__button {
	position: absolute !important;
	right: 10px;
	bottom: 48px;
	left: auto !important;
	margin: 0 !important;
	z-index: 3;
}
.product-content-desc { position: sticky; top: 108px; padding: 8px 0 0 !important; }
.product-title { padding-bottom: 20px; border-bottom: 1px solid var(--aa-line); }
.product-title::before { content: none; }
.product-title .aa-product-vendor { margin: 0 0 8px; }
.product-title h1 { margin: 0 !important; font-size: clamp(24px, 3vw, 34px) !important; font-weight: 600; line-height: 1.22; letter-spacing: -.01em; }
.product-title h1.aa-product-title--long {
	font-size: clamp(21px, 2.45vw, 30px) !important;
	line-height: 1.16;
	overflow-wrap: anywhere;
	word-break: normal;
	hyphens: none;
}
.product-price { padding: 20px 0; border-bottom: 1px solid var(--aa-line); }
.product-price span.pro-price, .product-price .pro-price, #price-preview span { color: var(--aa-price); font-size: 20px; font-weight: 700; letter-spacing: -.005em; }
#detail-product .selector-wrapper,
#add-item-form > .select { display: none !important; }
.select-swatch { margin-top: 22px; }
.swatch { margin: 0 0 18px; }
.swatch .header,
.aa-swatch-label {
	display: block !important;
	margin: 0 0 10px;
	color: var(--aa-steel);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .1em;
	text-transform: uppercase;
}
.swatch .select-swap { display: flex; flex-wrap: wrap; gap: 8px; }
.swatch-element { float: none !important; margin: 0 !important; }
.swatch-element label {
	display: inline-flex !important;
	align-items: center;
	min-height: 42px;
	padding: 0 16px !important;
	border: 1px solid var(--aa-line);
	background: var(--aa-white);
	color: var(--aa-black);
	font-size: 13px;
	font-weight: 500;
	line-height: 1;
	cursor: pointer;
}
.swatch-element label span { font-size: 13px !important; }
.swatch-element input { position: absolute; opacity: 0; pointer-events: none; }
.swatch-element input:checked + label {
	border-color: var(--aa-black) !important;
	background: var(--aa-black) !important;
	color: var(--aa-white) !important;
}
.swatch-element input:not(:checked) + label,
.swatch-element input:not(:checked) + label.sd,
.swatch-element.active input:not(:checked) + label {
	border-color: var(--aa-line) !important;
	background: var(--aa-white) !important;
	color: var(--aa-black) !important;
}
.swatch[data-option-count="1"] { display: none; }
.selector-actions { margin-top: 22px; }
.quantity-area {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: stretch;
	width: 148px !important;
	margin: 0 0 16px;
	border: 1px solid var(--aa-line);
}
.quantity-area input {
	flex: 0 0 46px !important;
	width: 46px !important;
	min-width: 0 !important;
	height: 46px !important;
	margin: 0 !important;
	border: 0 !important;
	background: transparent !important;
	float: none !important;
}
.quantity-area input.quantity-selector {
	flex: 1 1 56px !important;
	width: 56px !important;
	border-left: 1px solid var(--aa-line) !important;
	border-right: 1px solid var(--aa-line) !important;
	text-align: center;
}
.wrap-addcart .btn-addtocart,
.wrap-addcart .button { width: 100%; min-height: 52px; background: var(--aa-black); border-color: var(--aa-black); color: var(--aa-white); }
.wrap-addcart .btn-addtocart:hover,
.wrap-addcart .button:hover { background: var(--aa-carbon); color: var(--aa-white); }
#pro_sku { display: none; }
#divzoom { display: none; }
body.open_layer #divzoom { display: block; }

.aa-product-story,
.aa-product-story.aa-product-story--rich {
	padding: 28px 0 48px;
	border-top: 1px solid var(--aa-line);
	background: var(--aa-paper);
	overflow: hidden;
}
.aa-story-canvas {
	width: min(calc(100% - 32px), 920px);
	margin: 0 auto;
	padding: 8px 0 24px;
	overflow: hidden;
}
.aa-story-canvas > .aa-kicker { margin: 0 0 22px; }
.aa-story-html {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	overflow: hidden;
	color: var(--aa-graphite) !important;
}
.aa-story-html,
.aa-story-html * {
	font-family: var(--aa-sans) !important;
	box-sizing: border-box !important;
	box-shadow: none !important;
	text-shadow: none !important;
	max-width: 100% !important;
	min-width: 0 !important;
}
.aa-story-html div,
.aa-story-html p,
.aa-story-html section,
.aa-story-html article,
.aa-story-html figure,
.aa-story-html header,
.aa-story-html footer,
.aa-story-html span,
.aa-story-html strong,
.aa-story-html em,
.aa-story-html a,
.aa-story-html h1,
.aa-story-html h2,
.aa-story-html h3,
.aa-story-html h4,
.aa-story-html ul,
.aa-story-html ol,
.aa-story-html li,
.aa-story-html table,
.aa-story-html tr,
.aa-story-html td,
.aa-story-html th {
	float: none !important;
	position: static !important;
	left: auto !important;
	right: auto !important;
	top: auto !important;
	transform: none !important;
	background: transparent !important;
	background-image: none !important;
	border-color: var(--aa-line) !important;
	border-radius: 0 !important;
	color: var(--aa-graphite) !important;
}
.aa-story-html div,
.aa-story-html p,
.aa-story-html section,
.aa-story-html article,
.aa-story-html figure,
.aa-story-html header,
.aa-story-html footer {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	min-height: 0 !important;
	margin: 0 0 8px !important;
	padding: 0 !important;
}
.aa-story-html h1,
.aa-story-html h2,
.aa-story-html h3,
.aa-story-html h4 {
	margin: 28px 0 12px !important;
	padding: 0 !important;
	border: 0 !important;
	color: var(--aa-black) !important;
	font-size: clamp(20px, 2.4vw, 28px) !important;
	font-weight: 600 !important;
	line-height: 1.25 !important;
	letter-spacing: -0.015em !important;
	text-align: left !important;
}
.aa-story-html h1:first-child,
.aa-story-html > div > h1:first-child { margin-top: 0 !important; font-size: clamp(24px, 3vw, 34px) !important; }
.aa-story-html p { margin: 0 0 14px !important; padding-top: 0 !important; padding-bottom: 0 !important; font-size: 16px !important; line-height: 1.75 !important; }
.aa-story-html p[style*="height"],
.aa-story-html div[style*="height: 14"],
.aa-story-html div[style*="height: 15"],
.aa-story-html div[style*="height: 16"] { display: none !important; height: 0 !important; margin: 0 !important; padding: 0 !important; }
.aa-story-html strong { color: var(--aa-black) !important; font-weight: 600 !important; }
.aa-story-html a { color: var(--aa-black) !important; }
.aa-story-html ul,
.aa-story-html ol {
	display: block !important;
	margin: 0 0 18px !important;
	padding: 0 0 0 18px !important;
	list-style: disc !important;
	background: transparent !important;
	border: 0 !important;
}
.aa-story-html li {
	display: list-item !important;
	width: auto !important;
	margin: 0 0 8px !important;
	padding: 0 !important;
	border: 0 !important;
	line-height: 1.65 !important;
}
.aa-story-html img,
.aa-story-html video {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
	max-height: none !important;
	margin: 18px 0 24px !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	object-fit: contain !important;
	background: transparent !important;
}
.aa-story-html iframe {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
	aspect-ratio: 16 / 9;
	margin: 18px 0 24px !important;
	border: 0 !important;
	background: var(--aa-black) !important;
}
.aa-story-html table {
	display: block !important;
	width: 100% !important;
	border-collapse: collapse !important;
	overflow-x: auto;
}
.aa-s3 { font-family: var(--aa-sans) !important; }
.aa-s3 h2, .aa-s3 h3 { font-family: var(--aa-display) !important; }
.aa-s3__hero { min-height: 0 !important; }

.aa-product-story { padding: clamp(48px, 6vw, 88px) 0 clamp(24px, 4vw, 48px); border-top: 1px solid var(--aa-line); }
.aa-product-story .aa-shell { max-width: 820px; }
.aa-product-story .aa-kicker { margin-bottom: 28px; }
.aa-product-story .description-productdetail { color: #3f464a; font-size: 16px; line-height: 1.75; }
.aa-product-story .description-productdetail h1,
.aa-product-story .description-productdetail h2,
.aa-product-story .description-productdetail h3,
.aa-product-story .description-productdetail h4 {
	margin: 36px 0 14px;
	color: var(--aa-black);
	font-size: 22px !important;
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: -0.015em;
}
.aa-product-story .description-productdetail h1:first-child,
.aa-product-story .description-productdetail h2:first-child { margin-top: 0; }
.aa-product-story .description-productdetail p { margin: 0 0 14px; }
.aa-product-story .description-productdetail img {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
	margin: 28px auto;
	background: #ecece9;
}
.aa-product-story .description-productdetail ul,
.aa-product-story .description-productdetail ol { margin: 0 0 18px; padding-left: 20px; }
.aa-product-story .description-productdetail li { margin: 0 0 8px; }
.aa-product-story .description-productdetail strong { color: var(--aa-black); font-weight: 600; }
.list-productRelated { padding: clamp(75px, 9vw, 140px) 0 0; }
.list-productRelated .heading-title h2 { margin-bottom: 36px; font-size: clamp(24px, 3vw, 32px); }
.list-productRelated .content-product-list { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; margin: 0; background: var(--aa-line); border: 1px solid var(--aa-line); }
.list-productRelated .content-product-list::before,
.list-productRelated .content-product-list::after { content: none !important; display: none !important; }
.list-productRelated .pro-loop { width: auto; padding: 0; background: var(--aa-paper); }
.product-sharing, .gallery-index { display: none !important; }
.sr-only {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}
.home-hero-title {
	position: absolute !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
}
#detail-product #buy-now { display: none !important; }
.aa-menu-search { display: none; }
@media (max-width: 991px) {
	.aa-menu-search { display: flex; }
}
@media (min-width: 768px) {
	.product-action-bottom { display: none !important; }
}
@media (max-width: 767px) {
	.productDetail-page { padding-bottom: 0; }
	.product-action-bottom,
	.product-action-bottom.visible-xs {
		display: none !important;
	}
	.product-title h1 { margin-top: 12px !important; }
}

/* Journal / page / forms ------------------------------------------------- */
.pd-page { padding-top: clamp(65px, 7vw, 110px); padding-bottom: clamp(90px, 9vw, 150px); }
.heading-page h1, .header-page-contact h1, .heading-page .title { margin-bottom: 36px; font-size: clamp(28px, 3.8vw, 40px); font-weight: 600; }
.blog-posts .blog-loop { padding: 0 0 42px; margin: 0 0 42px; border-bottom: 1px solid var(--aa-line); }
.blog-post-thumbnail { display: block; aspect-ratio: 1.35; overflow: hidden; background: #e5e6e4; }
.blog-post-thumbnail img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(.7); transition: .6s var(--aa-ease); }
.blog-post-thumbnail:hover img { transform: scale(1.025); filter: none; }
.blog-post-title { margin: 0 0 16px; font-size: clamp(20px, 2.4vw, 28px); line-height: 1.3; }
.blog-post-meta { color: var(--aa-steel); font-size: 8px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.entry-content { color: #565d61; line-height: 1.8; }
.article-body { max-width: 920px; margin-inline: auto; }
.article-body h1, .article-body h2.title-article { font-size: clamp(28px, 4vw, 40px); line-height: 1.2; }
.article-body .content-article { color: #3f4649; font-size: 16px; line-height: 1.75; }
.article-body .content-article h2 { margin-top: 40px; font-size: 24px; }
.layout-pageContact .container-fluid { max-width: none; padding: 0; }
.layout-pageContact > .container-fluid > .row { display: grid; grid-template-columns: 1fr 1fr; margin: 0; }
.layout-pageContact .box-heading-contact, .layout-pageContact .wrapbox-content-page-contact { width: auto; padding: 0; float: none; }
.layout-pageContact.aa-contact--no-map > .container-fluid > .row { grid-template-columns: minmax(0, 760px); justify-content: center; }
.layout-pageContact.aa-contact--no-map .box-heading-contact { display: none; }
.layout-pageContact .box-map, .layout-pageContact .box-map iframe { height: 100% !important; min-height: 760px; filter: grayscale(1) contrast(1.05); }
.wrapbox-content-page-contact { padding: clamp(65px, 8vw, 120px) !important; background: var(--aa-paper); }
.box-info-contact { padding: 28px 0; border-block: 1px solid var(--aa-line); }
.box-info-contact .list-info { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; }
.box-info-contact .list-info p:first-child { color: var(--aa-steel); font-size: 8px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.box-send-contact { margin-top: 58px; }
.box-send-contact h2 { font-size: 24px; font-weight: 600; }
.input-group { width: 100%; }
.form-control, input[type='text'], input[type='email'], input[type='search'], input[type='password'], input[type='tel'], textarea, select {
	border: 0 !important;
	border-bottom: 1px solid var(--aa-line) !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--aa-black) !important;
}
.contact-form input { height: 58px; }
.contact-form textarea { min-height: 150px; padding-top: 18px; resize: vertical; }
.contact-form .button { min-width: 210px; margin-top: 22px; }

/* Cart / account --------------------------------------------------------- */
.cart-page, .layout-account { padding: clamp(60px, 8vw, 120px) 0; }
.table-cart thead th { border-bottom: 1px solid var(--aa-black); font-size: 9px; letter-spacing: .12em; text-transform: uppercase; }
.table-cart tbody td { border-color: var(--aa-line); }
.cart-buttons .btn-checkout { background: var(--aa-black) !important; color: var(--aa-white) !important; }
.site_account, .site_cart, .site_menu_mobile { background: var(--aa-paper) !important; }

/* Footer ----------------------------------------------------------------- */
.aa-footer { position: relative; padding: clamp(90px, 10vw, 150px) 0 30px; background: var(--aa-black); color: #aeb5b9; }
.aa-footer::before { content: ''; position: absolute; inset: 0; opacity: .16; background: linear-gradient(120deg, rgba(143,164,175,.5), transparent 30%), repeating-linear-gradient(90deg, transparent 0, transparent calc(25% - 1px), rgba(255,255,255,.12) 25%); pointer-events: none; }
.aa-footer .aa-shell { position: relative; }
.aa-footer__lead { display: grid; grid-template-columns: 1fr 1fr; align-items: end; gap: 40px; padding-bottom: 70px; border-bottom: 1px solid rgba(255,255,255,.14); }
.aa-footer__lead .aa-kicker { grid-column: 1 / -1; margin-bottom: 0; }
.aa-footer__lead h2 { margin: 0; color: var(--aa-white); font-size: clamp(32px, 5vw, 52px); line-height: 1.15; font-weight: 600; }
.aa-footer__lead > p:last-child { max-width: 520px; justify-self: end; margin: 0; color: #9ba3a7; font-size: 14px; line-height: 1.85; }
.aa-footer__grid { display: grid; grid-template-columns: 1fr 1fr 1.3fr 1.3fr; gap: 50px; padding: 70px 0 85px; }
.aa-footer__label { margin: 0 0 26px !important; color: #5f676b !important; font-size: 8px !important; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; }
.aa-footer__column li { margin-bottom: 12px; }
.aa-footer__column a, .aa-footer__column address, .aa-footer__column p { color: #c5cacc; font-size: 12px; line-height: 1.7; }
.aa-footer__column a:hover { color: var(--aa-white); }
.aa-footer__contact { display: flex; flex-direction: column; align-items: flex-start; }
.aa-footer__contact address { max-width: 310px; margin: 0 0 16px; font-style: normal; }
.aa-footer__contact > p:last-child { max-width: 300px; margin-top: 18px; color: #737b7f; }
.aa-footer__appointment > p:not(.aa-footer__label) { max-width: 330px; margin-bottom: 26px; color: #c5cacc; }
.aa-footer__appointment .aa-button--light {
	color: var(--aa-white) !important;
	background: transparent !important;
	border: 1px solid rgba(255,255,255,.45) !important;
}
.aa-footer__appointment .aa-button--light:hover {
	color: var(--aa-black) !important;
	background: var(--aa-white) !important;
	border-color: var(--aa-white) !important;
}
.aa-footer__bottom { display: grid; grid-template-columns: 1fr 1fr auto; align-items: center; gap: 28px; padding-top: 25px; border-top: 1px solid rgba(255,255,255,.14); }
.aa-footer__bottom p { margin: 0; color: #596165; font-size: 8px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.aa-footer__bottom p:nth-child(2) { text-align: center; }
.aa-footer__bottom img { width: 112px; opacity: .7; filter: grayscale(1); }

/* Deliberately remove noisy floating/social UI --------------------------- */
.addThis_listSharing, .actionToolbar_mobile, .fixed-mess, .harafunnel-mb, .fb_dialog, .zalo-chat-widget { display: none !important; }

/* Motion ----------------------------------------------------------------- */
.aa-reveal { opacity: 0; transform: translateY(28px); transition: opacity .85s var(--aa-ease), transform .85s var(--aa-ease); }
.aa-reveal.is-visible { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	.aa-reveal { opacity: 1; transform: none; transition: none; }
	.product-block img, .aa-model-card img, .aa-tech-card img, .aa-journal-card img { transition: none; }
}

/* Responsive ------------------------------------------------------------- */
@media (max-width: 1199px) {
	.aa-shell { width: min(calc(100% - 48px), var(--aa-shell)); }
	.container-fluid { padding-left: 24px; padding-right: 24px; }
	.aa-header__main { grid-template-columns: auto minmax(0, 1fr) auto; gap: 24px; }
	.aa-header__nav .main-nav > ul { gap: 18px; }
	.aa-header__nav .main-nav > ul > li > a { font-size: 9px; }
	.aa-hero__rail { margin-left: 38%; }
	.aa-products--signature .aa-product-grid { grid-template-columns: minmax(0, 1.1fr) minmax(360px, .9fr); }
	.aa-tech-card div { padding: 30px; }
	#collection-body .content-product-list.product-list { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 991px) {
	.aa-utility p { display: none; }
	.aa-utility__inner { justify-content: center; }
	.aa-header__main { position: relative; grid-template-columns: 1fr auto 1fr; min-height: 76px; }
	.aa-menu-trigger { display: block; grid-column: 1; justify-self: start; }
	.aa-menu-trigger button { display: inline-flex; align-items: center; gap: 13px; padding: 0; border: 0; background: transparent; }
	.aa-action-label { color: var(--aa-black); font-size: 9px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
	.aa-menu-trigger .site-handle { height: 30px; }
	.aa-menu-trigger .hamburger-menu { display: block; width: 21px; height: 26px; }
	.aa-menu-trigger .hamburger-menu .bar, .aa-menu-trigger .hamburger-menu .bar::before, .aa-menu-trigger .hamburger-menu .bar::after { height: 1px; background: var(--aa-black); }
	.aa-header__brand {
		position: absolute !important;
		top: 50%;
		left: 50%;
		right: auto !important;
		width: clamp(104px, 24vw, 152px);
		margin: 0 !important;
		text-align: center;
		transform: translate(-50%, -50%) !important;
		min-width: 0;
	}
	.aa-header__brand a { display: flex; width: 100%; align-items: center; justify-content: center; }
	.aa-header__brand img { width: 132px; max-width: 100%; margin: 0 auto; }
	.aa-header__actions { grid-column: 3; justify-self: end; align-items: center; gap: 10px; }
	.aa-header__actions > * { display: inline-flex; align-items: center; min-height: 40px; }
	.aa-header-link { line-height: 1; padding: 0 4px; }
	.aa-header__actions .header_wrap_search { display: none; }
	.aa-header__actions .aa-header-search { display: block; }
	.aa-mobile-search { top: calc(100% + 12px); right: -4px; width: min(340px, calc(100vw - 32px)); }
	.aa-menu-search { display: flex; gap: 8px; margin: 8px 20px 18px; padding-bottom: 16px; border-bottom: 1px solid var(--aa-line); }
	.aa-menu-search input { flex: 1; min-width: 0; height: 44px; padding: 0 14px; border: 1px solid var(--aa-line); background: var(--aa-white); color: var(--aa-black); font-size: 13px; }
	.aa-menu-search button { height: 44px; padding: 0 16px; border: 1px solid var(--aa-black); background: var(--aa-black); color: var(--aa-white); font-size: 10px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
	.aa-search-panel { top: 107px !important; }
	.site_menu_mobile { position: fixed !important; top: var(--header-height, 70px) !important; left: 0 !important; width: min(460px, 92vw) !important; height: calc(100dvh - var(--header-height, 70px)) !important; max-height: calc(100dvh - var(--header-height, 70px)); padding: 20px 0 !important; border: 0 !important; box-shadow: 30px 40px 70px rgba(0,0,0,.2) !important; overflow-y: auto; -webkit-overflow-scrolling: touch; }
	.site_menu_mobile .box-triangle { display: none; }
	.site_menu_mobile .menuList-sub > li > a { padding: 15px 28px; color: var(--aa-carbon); font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
	.site_menu_mobile .main_help { border-top: 1px solid var(--aa-line); margin-top: 18px; padding-top: 18px; }
	.aa-hero { min-height: 760px; }
	.aa-hero__content { width: min(calc(100% - 48px), var(--aa-shell)); }
	.aa-hero__rail { margin-left: 0; }
	.aa-intro__grid { grid-template-columns: 1fr; }
	.aa-intro__headline, .aa-intro__copy, .aa-intro__principles { grid-column: 1; }
	.aa-intro__copy { max-width: 650px; padding-top: 44px; }
	.aa-intro__principles { margin-top: 72px; }
	.aa-model-card, .aa-model-card--1, .aa-model-card--4 { grid-column: span 6; }
	.aa-model-card--1 .aa-model-card__media, .aa-model-card--4 .aa-model-card__media { aspect-ratio: 1; }
	.aa-sprint-grid { grid-template-columns: 1fr; }
	.aa-product-grid,
	.aa-products--atalante .aa-product-grid,
	.aa-products--java .aa-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.aa-products--signature .aa-product-grid { grid-template-columns: repeat(2, 1fr); grid-template-rows: auto; }
	.aa-products--signature .aa-product-grid > .pro-loop:first-child, .aa-products--signature .aa-product-grid > .pro-loop:not(:first-child) { grid-column: auto; grid-row: auto; }
	.aa-products--signature .aa-product-grid > .pro-loop:not(:first-child) .product-block { display: block; }
	.aa-products--signature .aa-product-grid > .pro-loop:first-child .product-img > a, .aa-products--signature .aa-product-grid > .pro-loop:not(:first-child) .product-img > a { height: auto; min-height: 0; aspect-ratio: 1 / 1.03; padding: 8%; }
	.aa-products--signature .aa-product-grid > .pro-loop:first-child .product-detail, .aa-products--signature .aa-product-grid > .pro-loop:not(:first-child) .product-detail { display: block; padding: 25px 24px 30px; }
	.aa-products--signature .aa-product-grid > .pro-loop:first-child .pro-name { font-size: 14px; }
	.aa-tech-grid { grid-template-columns: 1fr; }
	.aa-tech-card { border-right: 0; }
	.aa-tech-card { display: grid; grid-template-columns: 1fr 1fr; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.13); }
	.aa-tech-card:last-child { border-bottom: 0; }
	.aa-tech-card a { display: block; }
	.aa-tech-card img { height: 100%; aspect-ratio: 1.2; }
	.aa-tech-card div { border-top: 0; border-left: 1px solid rgba(255,255,255,.13); }
	.aa-journal-grid { grid-template-columns: 1fr 1fr; }
	.aa-journal-card:last-child { display: none; }
	.product-gallery { display: grid; }
	.layout-pageContact > .container-fluid > .row { grid-template-columns: 1fr; }
	.layout-pageContact .box-map, .layout-pageContact .box-map iframe { min-height: 480px; }
	.aa-footer__grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 767px) {
	.aa-shell { width: calc(100% - 32px); }
	.container-fluid { padding-left: 16px; padding-right: 16px; }
	.aa-section { padding: 78px 0; }
	.aa-header__main { grid-template-columns: 44px minmax(0, 1fr) auto; gap: 0; min-height: 64px; padding-left: 0; padding-right: 0; }
	.aa-header__brand { transform: translate(-50%, -50%) !important; }
	.aa-header__brand img { display: block; margin-inline: auto; }
	.aa-header__brand img { width: 112px; max-height: 38px; }
	.aa-menu-trigger .aa-action-label { display: none !important; }
	.aa-header__actions { gap: 4px; }
	.aa-header__actions > .hidden-xs { display: inline-flex !important; }
	.aa-header__actions .aa-header-search { display: block !important; }
	.aa-header-link { padding: 0 2px; font-size: 8px; letter-spacing: .06em; }
	.productDetail-page .product-image__button,
	.productDetail-page #product-zoom-in { display: none !important; }
	.productDetail-page .product-image-detail .product-image-feature { cursor: zoom-in; }
	body.open_layer #divzoom .divzoom_main img { cursor: zoom-out; }
	.site_menu_mobile { top: var(--header-height, 64px) !important; height: calc(100dvh - var(--header-height, 64px)) !important; max-height: calc(100dvh - var(--header-height, 64px)); }
	.aa-section-head { align-items: flex-start; flex-direction: column; gap: 26px; margin-bottom: 44px; }
	.aa-section-head h2, .aa-intro h2, .aa-audition h2 { font-size: clamp(26px, 7vw, 34px); line-height: 1.25; }
	.aa-hero { min-height: min(100svh, 620px); }
	.aa-hero__media img { object-position: 62% center; }
	.aa-hero__shade { background: linear-gradient(90deg, rgba(5,7,8,.9), rgba(5,7,8,.4)), linear-gradient(0deg, rgba(5,7,8,.85), transparent 55%); }
	.aa-hero__content { width: calc(100% - 32px); padding-top: 90px; }
	.aa-hero h1 { font-size: clamp(32px, 8.5vw, 42px); line-height: 1.18; }
	.aa-hero__lead { margin-top: 32px; font-size: 13px; }
	.aa-hero__actions { align-items: flex-start; flex-direction: column; gap: 24px; }
	.aa-hero__rail {
		display: flex !important;
		flex-wrap: nowrap;
		overflow-x: auto;
		overflow-y: hidden;
		scroll-snap-type: x mandatory;
		scroll-padding-inline: 0;
		touch-action: pan-x;
		overscroll-behavior-x: contain;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
		gap: 0;
		background: rgba(10,12,13,.72);
	}
	.aa-hero__rail::-webkit-scrollbar { display: none; }
	.aa-hero__rail > div {
		flex: 0 0 min(76vw, 300px) !important;
		min-height: 84px;
		padding: 20px 18px;
		scroll-snap-align: start;
	}
	.aa-intro__grid { gap: 38px; }
	.aa-intro__copy > p { font-size: 14px; }
	.aa-intro::after { display: none; }
	.aa-intro__copy { padding-top: 0; }
	.aa-intro__principles { grid-template-columns: 1fr; margin-top: 16px; }
	.aa-intro__principles article { min-height: 0; padding: 24px 0 26px; }
	.aa-intro__principles article + article { padding-left: 0; border-left: 0; border-top: 1px solid var(--aa-line); }
	.aa-intro__principles p { max-width: 420px; }
	.aa-model-grid { gap: 40px 12px; }
	.aa-model-card, .aa-model-card--1, .aa-model-card--4 { grid-column: span 6; }
	.aa-model-card__meta { grid-template-columns: 24px 1fr; padding-top: 13px; }
	.aa-model-card__meta h3 { font-size: 11px; }
	.aa-model-card__meta small { display: none; }
	.aa-sprint-grid { gap: 18px; }
	.aa-product-grid,
	.aa-products--atalante .aa-product-grid,
	.aa-products--java .aa-product-grid { grid-template-columns: 1fr 1fr; }
	.aa-products--signature .aa-product-grid { grid-template-columns: 1fr; }
	.aa-products--signature .aa-product-grid > .pro-loop:not(:first-child) .product-block { display: grid; grid-template-columns: minmax(118px, 42%) 1fr; }
	.aa-products--signature .aa-product-grid > .pro-loop:not(:first-child) .product-img > a { height: 100%; min-height: 170px; aspect-ratio: auto; padding: 8%; }
	.aa-products--signature .aa-product-grid > .pro-loop:not(:first-child) .product-detail { display: flex; align-items: center; padding: 17px 16px; }
	.aa-products--signature .aa-product-grid > .pro-loop:first-child .product-img > a { aspect-ratio: 1.12; }
	.aa-products--rail .aa-product-grid { grid-template-columns: 1fr 1fr; grid-auto-flow: row; grid-auto-columns: auto; gap: 12px; margin-right: 0; padding-right: 0; padding-bottom: 0; overflow: visible; scroll-snap-type: none; }
	.aa-products--rail .aa-product-grid > .pro-loop { scroll-snap-align: none; }
	.aa-section-head--sales { gap: 32px; }
	.aa-section-head__aside { width: 100%; align-items: flex-start; gap: 18px; }
	.product-block .product-img > a { padding: 7%; }
	.product-block .product-img img.img-hover { display: none !important; }
	.product-block:hover .product-img img:first-of-type { opacity: 1; transform: none; }
	.product-block .product-detail { padding: 17px 14px 22px; }
	.product-block .pro-name { font-size: 13px; line-height: 1.4; }
	.product-block .pro-price { font-size: 12px; }
	.aa-product-vendor { font-size: 8px; }
	.aa-product-detail-link { font-size: 8px; }
	.aa-tech-card { display: block; }
	.aa-tech-card a { display: block; }
	.aa-tech-card img { height: auto; }
	.aa-tech-card div { min-height: 0; padding: 28px 22px 40px; border-left: 0; border-top: 1px solid rgba(255,255,255,.13); }
	.aa-tech-card h3 { margin-top: 32px; }
	.aa-journal-grid { grid-template-columns: 1fr; }
	.aa-journal-card:last-child { display: block; }
	.aa-audition { min-height: 680px; }
	.aa-audition__content > div { align-items: flex-start; flex-direction: column; }
	#collection-body .content-product-list.product-list { grid-template-columns: 1fr 1fr; }
	.wrap-collection-title .heading-collection { display: block; }
	.wrap-collection-title .heading-collection h1 { font-size: 32px; }
	.product-detail-wrapper { padding-top: 30px; }
	.product-detail-main,
	.product-detail-main.row,
	.product-detail-main.pr_style_01,
	.product-detail-main.pr_style_02,
	.product-detail-main.pr_style_03 {
		flex-wrap: wrap !important;
	}
	.product-detail-main > [class*="col-"],
	.product-detail-main > .product-content-img,
	.product-detail-main > .product-content-desc,
	.product-detail-main > #detail-product {
		flex: 1 1 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
	}
	.product-content-desc { position: static; }
	.product-gallery { display: block; }
	.box__product-gallery,
	.product-image-detail {
		height: auto !important;
		min-height: 0 !important;
		max-height: none !important;
	}
	.product-title h1 { margin-top: 12px !important; font-size: 26px !important; }
	.list-productRelated .content-product-list { grid-template-columns: 1fr 1fr; }
	.box-info-contact .list-info { grid-template-columns: 1fr; }
	.wrapbox-content-page-contact { padding: 60px 22px !important; }
	.layout-pageContact .box-map, .layout-pageContact .box-map iframe { min-height: 340px; }
	.aa-footer__lead { grid-template-columns: 1fr; }
	.aa-footer__lead .aa-kicker { grid-column: auto; }
	.aa-footer__lead h2 { font-size: clamp(28px, 8vw, 40px); }
	.aa-footer__lead > p:last-child { justify-self: start; }
	.aa-footer__grid { grid-template-columns: 1fr; gap: 45px; }
	.aa-footer__bottom { grid-template-columns: 1fr; }
	.aa-footer__bottom p:nth-child(2) { text-align: left; }
}

/* ==========================================================================
   ART AUDIO — REFINEMENT LAYER v2 (aesthetic pass)
   ========================================================================== */

/* Restore mobile submenu visibility (level 1 → 2 → 3) */
.aa-nav-drawer .menuList-sub.sub-child-1,
.aa-nav-drawer .menuList-sub.sub-child-2,
.aa-nav-drawer .menuList-sub.sub-child-3 {
	position: absolute !important;
	top: 0;
	left: 0;
	right: 0;
	height: 100% !important;
	overflow-y: auto !important;
	background: var(--aa-paper);
	transform: translateX(105%) !important;
	z-index: 2;
}
.aa-nav-drawer .menuList-sub.sub-child-1.mm-opened,
.aa-nav-drawer .menuList-sub.sub-child-2.mm-sub,
.aa-nav-drawer .menuList-sub.sub-child-3.mm-sub-3 {
	transform: translateX(0) !important;
	z-index: 3;
}
.aa-nav-drawer .menuList-sub li > a i { display: inline-flex !important; }
.aa-nav-drawer .menuList-sub li > a i svg { width: 8px; height: 12px; }

/* Header search toggle (replaces cart) */
.aa-header-search .box-icon { position: relative; width: 30px; height: 40px; display: inline-flex; align-items: center; justify-content: center; }
.aa-header-search .svg-search, .aa-header-search .box-icon--close { width: 20px; height: 20px; fill: var(--aa-black); color: var(--aa-black); transition: opacity .25s ease, visibility .25s ease; }
.aa-header-search .box-icon--close { position: absolute; opacity: 0; visibility: hidden; }
.aa-header-search.show-action .svg-search { opacity: 0; visibility: hidden; }
.aa-header-search.show-action .box-icon--close { opacity: 1; visibility: visible; }
.aa-mobile-search {
	position: absolute;
	top: calc(100% + 10px);
	right: 0;
	width: min(420px, 90vw);
	z-index: 1250 !important;
	padding: 18px 20px;
	border: 1px solid var(--aa-line);
	border-radius: 0;
	background: var(--aa-paper);
	box-shadow: 0 26px 60px rgba(0,0,0,.14);
}
.aa-mobile-search .wpo-wrapper-search form.searchform { margin: 0; display: flex; gap: 10px; align-items: center; }
.aa-mobile-search .searchinput { height: 46px; padding: 0 14px; border: 1px solid var(--aa-line); background: var(--aa-white); font-size: 14px; }
.aa-mobile-search .aa-search-submit,
.aa-mobile-search .btn-search { min-height: 46px; padding: 0 20px; border: 1px solid var(--aa-black); background: var(--aa-black); color: var(--aa-white); font-size: 11px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.aa-mobile-search .site-nav-container { display: block !important; width: auto !important; height: auto !important; overflow: visible !important; }

/* Kill remaining FontAwesome icons in nav/menus */
.main-nav i.fa, .site_menu_mobile i.fa, .tree-menu i.fa,
.icon-control i, .icon-subnav i, .fa.fa-angle-down,
.fa.fa-angle-right, .fa.fa-chevron-down, .fa.fa-chevron-right,
.fa.fa-minus, .fa.fa-plus { display: none !important; }

/* Hide breadcrumb arrow icons */
.breadcrumb-arrows li + li::before { content: '/'; margin: 0 8px; color: #b0b6ba; }
.breadcrumb-arrows .fa { display: none !important; }

/* Mobile overflow safety net */
@media (max-width: 767px) {
	body { max-width: 100vw; }
	.aa-hero__grid { display: none; }
	.aa-model-grid, .aa-product-grid, .aa-tech-grid,
	.aa-journal-grid, .aa-intro__grid, .aa-footer__grid { max-width: 100%; }
	img { max-width: 100%; }
	.aa-shell { width: calc(100% - 28px); }
	.aa-section { padding: 64px 0; }
	/* Product card mobile: tighter, cleaner */
	.product-block .product-img > a { aspect-ratio: 1 / 1; padding: 9%; }
	.aa-products--rail .aa-product-grid { margin-right: 0; padding-right: 0; }
	/* Footer CTA on mobile */
	.aa-footer__appointment .aa-button--light { width: 100%; min-height: 54px; }
	/* Journal heading */
	.aa-journal-card h3 { font-size: 20px; }
	/* Collection heading */
	.wrap-collection-title .heading-collection h1 { font-size: 30px; }
}

/* Tablet refinement */
@media (min-width: 768px) and (max-width: 991px) {
	.aa-hero h1 { font-size: clamp(34px, 5.5vw, 48px); line-height: 1.15; }
	.aa-section-head h2, .aa-intro h2 { font-size: clamp(26px, 4vw, 36px); line-height: 1.25; }
}

/* Product grid: consistent card heights */
.aa-product-grid .product-block,
.aa-product-grid .product-detail { height: 100%; }
.aa-product-grid .product-detail { display: flex; flex-direction: column; }
.aa-product-grid .box-pro-detail { flex: 1; }
.aa-product-grid .aa-product-detail-link { margin-top: auto; align-self: flex-start; }

/* Collection grid: consistent */
#collection-body .content-product-list.product-list .pro-loop .product-detail { display: flex; flex-direction: column; }
#collection-body .content-product-list.product-list .pro-loop .box-pro-detail { flex: 1; }

/* Product gallery — kill 70vh / 100% height leftovers */
.productDetail-page .box__product-gallery,
.productDetail-page .product-image-detail,
.productDetail-page .slide_product {
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
}
@media (max-width: 991px) {
	.product-title h1 { margin-top: 12px !important; }
	.productDetail-page .flickity-page-dots { bottom: auto !important; }
}

/* Mobile nav drawer — independent of CUBER / backdrop-filter */
.aa-nav-drawer,
body > .site_menu_mobile.aa-nav-drawer {
	position: fixed !important;
	top: 0 !important;
	left: 0 !important;
	right: auto !important;
	bottom: 0 !important;
	z-index: 1300 !important;
	width: min(420px, 92vw) !important;
	height: 100dvh !important;
	max-height: 100dvh !important;
	margin: 0 !important;
	padding: 20px 0 32px !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: var(--aa-paper) !important;
	box-shadow: 24px 0 60px rgba(0,0,0,.22) !important;
	opacity: 1 !important;
	visibility: visible !important;
	transform: translateX(-105%) !important;
	transition: transform .32s cubic-bezier(.2,.75,.25,1) !important;
	overflow-x: hidden !important;
	overflow-y: auto !important;
	-webkit-overflow-scrolling: touch;
	pointer-events: none;
}
html.aa-nav-open .aa-nav-drawer,
html.aa-nav-open body > .site_menu_mobile.aa-nav-drawer {
	transform: translateX(0) !important;
	pointer-events: auto !important;
}
.aa-nav-drawer .box-triangle { display: none !important; }
.aa-nav-drawer .site-nav-container,
.aa-nav-drawer .menu-mobile-content,
.aa-nav-drawer .navbar-mainmenu,
.aa-nav-drawer .navbar-level {
	position: relative !important;
	top: auto !important;
	left: auto !important;
	width: 100% !important;
	height: auto !important;
	min-height: 0 !important;
	overflow: visible !important;
	transform: none !important;
}
.aa-nav-drawer .menuList-sub.vertical-menu-list {
	position: relative !important;
	height: auto !important;
	transform: none !important;
	overflow: visible !important;
}
html.aa-nav-open,
html.aa-nav-open body {
	overflow: hidden !important;
}
html.aa-nav-open .site-overlay {
	z-index: 1200 !important;
	opacity: 1 !important;
	visibility: visible !important;
	pointer-events: auto !important;
	background: rgba(11,13,14,.46) !important;
}
#site-menu-handle {
	position: relative;
	z-index: 1400;
	pointer-events: auto !important;
}

/* Product story: single-column media, no boxed background */
.aa-story-html p,
.aa-product-story .description-productdetail p,
.aa-s3 p { text-align: left; }
.aa-story-html img,
.aa-product-story .description-productdetail img,
.aa-s3 img {
	display: block !important;
	width: 100% !important;
	max-width: min(100%, 860px) !important;
	height: auto !important;
	margin: 28px auto !important;
	float: none !important;
	column-span: all !important;
	break-inside: avoid !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}
.aa-story-html figure,
.aa-story-html .aa-s3__media,
.aa-story-html .aa-s3__tech-media {
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
}
.aa-story-html iframe {
	width: 100% !important;
	max-width: 860px !important;
	margin: 28px auto !important;
}
.aa-story-html > div:not(.aa-s3):not(.aa-s3__hero),
.aa-story-html section > div:not([class]) {
	background: transparent !important;
	box-shadow: none !important;
}
.aa-story-html [style*="display: flex"],
.aa-story-html [style*="display:flex"] {
	display: block !important;
}
.aa-story-html [style*="flex: 1"],
.aa-story-html [style*="flex:1"] {
	width: 100% !important;
	margin: 0 0 16px !important;
	background: transparent !important;
	border: 0 !important;
	border-top: 1px solid var(--aa-line) !important;
	padding: 18px 0 !important;
}

/* Information pages — shared editorial renderer ------------------------- */
.aa-information-nav,
.aa-information-nav * { box-sizing: border-box; }
.aa-information-nav { width: 100%; border-bottom: 1px solid rgba(17,19,19,.15); background: #efede6; }
.aa-information-nav__inner { display: grid; grid-template-columns: minmax(150px, .32fr) minmax(0, 1fr); gap: clamp(28px, 5vw, 70px); width: min(100%, 1180px); margin: 0 auto; padding: 29px clamp(24px, 6vw, 70px) 31px; }
.aa-information-nav__inner > p { margin: 7px 0 0; color: #777d7c; font-size: 8px; font-weight: 700; letter-spacing: .16em; line-height: 1.55; text-transform: uppercase; }
.aa-information-nav__links { display: flex; min-width: 0; flex-wrap: wrap; gap: 5px 0; }
.aa-information-nav__links a { position: relative; margin-right: 22px; padding: 5px 0 7px; color: #303536; font-size: 10px; font-weight: 650; letter-spacing: .035em; line-height: 1.45; text-decoration: none; }
.aa-information-nav__links a::after { content: ''; position: absolute; right: 0; bottom: 0; left: 0; height: 1px; background: #111313; transform: scaleX(0); transform-origin: left; transition: transform .25s ease; }
.aa-information-nav__links a:hover::after,
.aa-information-nav__links a.is-active::after { transform: scaleX(1); }
.aa-information-nav__links a.is-active { color: #8c6748; }
.aa-info-page,
.aa-info-page * { box-sizing: border-box; }
.aa-info-page { width: 100%; overflow: hidden; background: #f5f3ed; color: #111313; }
.aa-info-page__hero { border-bottom: 1px solid rgba(17,19,19,.15); background: linear-gradient(124deg, #111313 0%, #202322 76%, #796550 150%); color: #fff; }
.aa-info-page__hero-inner { width: min(100%, 1180px); margin: 0 auto; padding: clamp(68px, 9vw, 118px) clamp(24px, 6vw, 70px); }
.aa-info-page__hero p,
.aa-info-page__hero span { display: block; margin: 0; color: #979d9b; font-size: 8px; font-weight: 700; letter-spacing: .17em; line-height: 1.6; text-transform: uppercase; }
.aa-info-page__hero h1 { max-width: 880px; margin: 24px 0 33px; color: #fff; font-size: clamp(42px, 7vw, 76px); font-weight: 550; letter-spacing: -.045em; line-height: 1; overflow-wrap: anywhere; }
.aa-info-page__article { width: min(100%, 1180px); margin: 0 auto; padding: clamp(66px, 9vw, 116px) clamp(24px, 9vw, 110px); background: #fbfaf6; }
.aa-info-page__content { max-width: 820px; margin: 0 auto; color: #363c3d; font-family: 'Be Vietnam Pro', 'Raleway', Arial, sans-serif; font-size: 16px; line-height: 1.82; overflow-wrap: anywhere; }
.aa-info-page__content > [style] { max-width: 100% !important; margin-right: 0 !important; margin-left: 0 !important; }
.aa-info-page__content h1,
.aa-info-page__content h2,
.aa-info-page__content h3,
.aa-info-page__content h4 { color: #111313 !important; font-family: 'Raleway', 'Be Vietnam Pro', Arial, sans-serif !important; font-style: normal; overflow-wrap: anywhere; }
.aa-info-page__content h1 { margin: 0 0 34px; font-size: clamp(32px, 4.5vw, 48px) !important; font-weight: 600; line-height: 1.12; }
.aa-info-page__content h2 { margin: 64px 0 23px; padding-top: 27px; border-top: 1px solid rgba(17,19,19,.16); font-size: clamp(26px, 3vw, 36px) !important; font-weight: 620; line-height: 1.22; }
.aa-info-page__content h3 { margin: 39px 0 17px; font-size: clamp(20px, 2.3vw, 27px) !important; font-weight: 650; line-height: 1.32; }
.aa-info-page__content h4 { margin: 28px 0 13px; font-size: 17px !important; font-weight: 700; line-height: 1.45; }
.aa-info-page__content p { margin: 0 0 22px; }
.aa-info-page__content ul,
.aa-info-page__content ol { margin: 28px 0 35px; padding: 0; list-style: none !important; }
.aa-info-page__content li { margin: 0; padding: 17px 0; border-top: 1px solid rgba(17,19,19,.14); list-style: none !important; }
.aa-info-page__content li:last-child { border-bottom: 1px solid rgba(17,19,19,.14); }
.aa-info-page__content li::before,
