/**
 * HCN Australia — /about/ page
 */
.au-about-page {
	background: #f5f5f5;
	color: #1a1a1a;
}
.ab-hero {
	position: relative;
	background: #111;
	color: #fff;
	overflow: hidden;
}
.ab-hero-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
	gap: 0;
	max-width: 1320px;
	margin: 0 auto;
}
.ab-hero-media {
	margin: 0;
	min-height: 360px;
	background: #0a0a0a;
}
.ab-hero-media img {
	width: 100%;
	height: 100%;
	min-height: 360px;
	object-fit: cover;
	object-position: center;
	display: block;
}
.ab-hero-body {
	padding: clamp(32px, 5vw, 56px) clamp(20px, 4vw, 48px);
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.ab-crumb {
	margin: 0 0 16px;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #888;
}
.ab-crumb a {
	color: #aaa !important;
	text-decoration: none !important;
}
.ab-crumb a:hover {
	color: #ea5619 !important;
}
.ab-eyebrow {
	margin: 0 0 10px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #ea5619;
}
.ab-hero h1 {
	margin: 0 0 16px;
	font-size: clamp(28px, 4vw, 42px);
	line-height: 1.12;
	font-weight: 800;
	letter-spacing: -0.03em;
	color: #fff !important;
	text-transform: none;
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}
.ab-hero-lead {
	margin: 0 0 24px;
	max-width: 520px;
	font-size: 16px;
	line-height: 1.65;
	color: #d0d0d0;
}
.ab-hero-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}
.ab-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 0 22px;
	font-size: 14px;
	font-weight: 700;
	text-decoration: none !important;
	border: 2px solid transparent;
}
.ab-btn-primary {
	background: #ea5619;
	border-color: #ea5619;
	color: #fff !important;
}
.ab-btn-primary:hover {
	background: #d14a14;
	border-color: #d14a14;
}
.ab-btn-ghost {
	background: transparent;
	border-color: rgba(255, 255, 255, 0.45);
	color: #fff !important;
}
.ab-btn-ghost:hover {
	border-color: #fff;
}
.ab-btn-dark {
	background: #222;
	border-color: #222;
	color: #fff !important;
}
.ab-glance {
	padding: 48px 0;
	background: #fff;
	border-bottom: 1px solid #e8e8e8;
}
.ab-glance-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
	max-width: 1320px;
	margin: 0 auto;
	padding: 0 20px;
	list-style: none;
}
.ab-glance-grid li {
	padding: 20px 18px;
	border: 1px solid #e8e8e8;
	background: #fafafa;
}
.ab-glance-grid strong {
	display: block;
	margin-bottom: 6px;
	font-size: 22px;
	color: #111;
}
.ab-glance-grid span {
	font-size: 13px;
	line-height: 1.5;
	color: #555;
}
.ab-glance-note {
	max-width: 720px;
	margin: 20px auto 0;
	padding: 0 20px;
	font-size: 12px;
	line-height: 1.5;
	color: #777;
	text-align: center;
}
.ab-section {
	padding: 56px 0;
}
.ab-section--alt {
	background: #fff;
}
.ab-section-head {
	max-width: 720px;
	margin: 0 auto 32px;
	padding: 0 20px;
	text-align: center;
}
.ab-section-head h2 {
	margin: 0 0 12px;
	font-size: clamp(24px, 3vw, 32px);
	letter-spacing: -0.02em;
	color: #111;
	text-transform: none;
	font-weight: 800;
}
.ab-section-head p {
	margin: 0;
	font-size: 15px;
	line-height: 1.65;
	color: #555;
}
.ab-story {
	max-width: 900px;
	margin: 0 auto;
	padding: 0 20px;
	font-size: 15px;
	line-height: 1.75;
	color: #333;
}
.ab-story .ab-story-intro {
	margin: 0 0 20px;
	font-size: 16px;
	line-height: 1.7;
	color: #444;
}
.ab-story-body {
	margin-top: 8px;
}
.ab-story-body p {
	margin: 0 0 1em;
}
.ab-process-wrap {
	max-width: 1100px;
	margin: 0 auto;
	padding: 0 20px;
}
.ab-process {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: 28px;
}
.ab-process-step {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 24px;
	align-items: center;
	padding: 20px;
	background: #fff;
	border: 1px solid #e8e8e8;
}
.ab-process-step:nth-child(even) {
	background: #fafafa;
}
.ab-process-media {
	margin: 0;
	background: #111;
	overflow: hidden;
}
.ab-process-media img {
	width: 100%;
	height: auto;
	display: block;
	object-fit: cover;
	aspect-ratio: 4 / 3;
}
.ab-process-copy h3 {
	margin: 0 0 8px;
	font-size: 18px;
	font-weight: 700;
	color: #111;
	text-transform: none;
}
.ab-process-copy p {
	margin: 0;
	font-size: 14px;
	line-height: 1.65;
	color: #555;
}
.ab-quality-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
	max-width: 900px;
	margin: 0 auto 40px;
	padding: 0 20px;
	list-style: none;
}
.ab-quality-grid li {
	padding: 16px 18px;
	border: 1px solid #e8e8e8;
	background: #fafafa;
}
.ab-quality-grid strong {
	display: block;
	margin-bottom: 6px;
	font-size: 14px;
	color: #111;
}
.ab-quality-grid span {
	font-size: 13px;
	line-height: 1.55;
	color: #555;
}
.ab-certs-grid {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 18px;
	max-width: 1180px;
	margin: 0 auto;
	padding: 0 20px;
	list-style: none;
}
.ab-certs-grid > li {
	flex: 0 1 200px;
	width: 200px;
	max-width: 100%;
}
.ab-certs-grid--five > li {
	flex: 0 1 calc(20% - 15px);
	min-width: 168px;
	max-width: 220px;
}
@media (min-width: 960px) {
	.ab-certs-grid--five {
		flex-wrap: nowrap;
		justify-content: space-between;
	}
	.ab-certs-grid--five > li {
		flex: 1 1 0;
		min-width: 0;
		max-width: none;
	}
}
.ab-cert-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	text-decoration: none !important;
	border: 1px solid #e8e8e8;
	background: #fff;
	color: #111;
}
.ab-cert-frame {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 200px;
	padding: 12px;
	background: #f8f8f8;
}
.ab-cert-frame img {
	width: 100%;
	height: auto;
	max-height: 220px;
	object-fit: contain;
	display: block;
}
.ab-cert-name {
	display: block;
	padding: 12px 14px;
	font-size: 12px;
	font-weight: 600;
	line-height: 1.4;
	color: #333;
}
.ab-proof-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 32px;
	align-items: center;
	max-width: 1100px;
	margin: 32px auto 0;
	padding: 24px 20px;
	background: #1a1c1f;
	color: #fff;
}
.ab-h3-invert {
	margin: 0 0 10px;
	font-size: 20px;
	font-weight: 700;
	color: #fff;
	text-transform: none;
}
.ab-proof-row p {
	margin: 0 0 12px;
	font-size: 14px;
	line-height: 1.65;
	color: #ccc;
}
.ab-about-content {
	padding: 0;
}
.ab-factory-card a {
	color: #ea5619;
	font-weight: 700;
	text-decoration: none;
}
.ab-factory-card a:hover {
	text-decoration: underline;
}
.ab-proof-row img {
	width: 100%;
	height: auto;
	display: block;
}
.ab-oem {
	background: #1a1c1f;
	color: #fff;
	padding: 56px 0;
}
.ab-oem .ab-eyebrow {
	color: #ff8f5c;
}
.ab-oem .ab-oem-steps-title {
	margin: 0 0 12px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #ff8f5c;
}
.ab-oem-inner {
	max-width: 1100px;
	margin: 0 auto;
	padding: 0 20px;
}
.ab-oem-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
	gap: 32px;
	align-items: start;
}
.ab-oem h2 {
	margin: 0 0 14px;
	font-size: 26px;
	color: #fff;
	text-transform: none;
	font-weight: 800;
	letter-spacing: -0.02em;
}
.ab-oem-lead {
	margin: 0 0 20px;
	font-size: 15px;
	line-height: 1.65;
	color: #c8c8c8;
}
.ab-oem-list {
	margin: 0 0 24px;
	padding: 0;
	list-style: none;
	font-size: 14px;
	line-height: 1.65;
	color: #f2f2f2;
}
.au-about-page .ab-oem-list li {
	position: relative;
	padding-left: 14px;
	margin-bottom: 10px;
	color: #f0f0f0 !important;
	-webkit-text-fill-color: #f0f0f0;
}
.ab-oem-list li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.55em;
	width: 5px;
	height: 5px;
	background: #ea5619;
	border-radius: 50%;
}
.ab-oem-steps {
	margin: 0;
	padding: 0;
	list-style: none;
	counter-reset: oemstep;
}
.ab-oem-steps li {
	counter-increment: oemstep;
	padding: 14px 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.12);
	font-size: 14px;
	line-height: 1.55;
	color: #e8e8e8;
}
.ab-oem-steps li::before {
	content: counter(oemstep) ".";
	display: inline-block;
	min-width: 1.5em;
	font-weight: 700;
	color: #ff7a3d;
}
.ab-au {
	background: #fff;
}
.ab-au-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 28px;
	max-width: 1100px;
	margin: 0 auto;
	padding: 0 20px;
}
.ab-factory-card {
	padding: 22px;
	border: 1px solid #e8e8e8;
	background: #fafafa;
}
.ab-factory-card h3 {
	margin: 0 0 10px;
	font-size: 16px;
	font-weight: 700;
	color: #111;
}
.ab-factory-card p {
	margin: 0;
	font-size: 14px;
	line-height: 1.65;
	color: #555;
}
.ab-shows-wrap .ao-shows {
	background: transparent;
	padding-top: 0;
}
.ab-cta {
	padding: 56px 0 72px;
	background: linear-gradient(135deg, #111 0%, #1f1f1f 100%);
	color: #fff;
}
.ab-cta-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
	gap: 36px;
	max-width: 1100px;
	margin: 0 auto;
	padding: 0 20px;
	align-items: center;
}
.ab-cta h2 {
	margin: 0 0 12px;
	font-size: clamp(22px, 3vw, 30px);
	color: #fff;
	text-transform: none;
	font-weight: 800;
}
.ab-cta-lead {
	margin: 0 0 20px;
	font-size: 15px;
	line-height: 1.65;
	color: #ccc;
}
.ab-cta-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-bottom: 8px;
}
.ab-form-box {
	padding: 28px 26px 26px;
	background: #fff;
	color: #111;
	border-radius: 6px;
	box-sizing: border-box;
	box-shadow: 0 12px 40px rgba(0, 0, 0, 0.22);
}
.ab-form-fields {
	margin: 0;
}
.ab-form-row {
	display: flex;
	flex-direction: column;
	gap: 16px;
	margin: 0 0 16px;
}
.ab-form-row--half {
	margin-bottom: 16px;
}
@media (min-width: 640px) {
	.ab-form-row--half {
		flex-direction: row;
		gap: 14px;
	}
	.ab-form-row--half .ab-field {
		flex: 1 1 0;
		min-width: 0;
	}
}
.ab-field {
	margin: 0 0 16px;
}
.ab-field--submit {
	margin-bottom: 0;
}
.ab-label {
	display: block;
	margin: 0 0 6px;
	font-size: 12px;
	font-weight: 600;
	color: #333;
}
.ab-req {
	color: #ea5619;
}
.ab-input {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin: 0;
	padding: 12px 14px;
	font-size: 15px;
	line-height: 1.4;
	color: #1a1a1a;
	background: #f4f4f4;
	border: 1px solid #d5d5d5;
	border-radius: 6px;
	-webkit-appearance: none;
	appearance: none;
}
.ab-input:focus {
	outline: none;
	border-color: #ea5619;
	box-shadow: 0 0 0 3px rgba(234, 86, 25, 0.15);
}
.ab-textarea {
	min-height: 120px;
	resize: vertical;
}
.ab-input::placeholder {
	color: #888;
}
.ab-form-submit {
	display: block;
	width: 100%;
	margin: 0;
	padding: 14px 20px;
	font-size: 15px;
	font-weight: 700;
	color: #fff;
	background: #ea5619;
	border: 2px solid #ea5619;
	border-radius: 6px;
	cursor: pointer;
	box-sizing: border-box;
}
.ab-form-submit:hover {
	background: #d14a14;
	border-color: #d14a14;
}
.ab-form-privacy {
	margin: 12px 0 0;
	font-size: 11px;
	line-height: 1.55;
	color: #666;
}
.ab-form-hp {
	position: absolute;
	left: -9999px;
	width: 1px;
	height: 1px;
	overflow: hidden;
}
@media (max-width: 959px) {
	.ab-hero-grid {
		grid-template-columns: 1fr;
	}
	.ab-hero-media {
		min-height: 240px;
	}
	.ab-hero-media img {
		min-height: 240px;
	}
	.ab-glance-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.ab-process-step {
		grid-template-columns: 1fr;
	}
	.ab-oem-grid,
	.ab-au-grid,
	.ab-cta-grid,
	.ab-proof-row {
		grid-template-columns: 1fr;
	}
	.ab-cta-grid {
		align-items: start;
	}
}
@media (max-width: 959px) {
	.ab-certs-grid--five > li {
		flex: 0 1 calc(33.333% - 12px);
		min-width: 150px;
		max-width: 220px;
	}
}
@media (max-width: 640px) {
	.ab-certs-grid--five > li {
		flex: 0 1 calc(50% - 9px);
	}
}
@media (max-width: 520px) {
	.ab-glance-grid {
		grid-template-columns: 1fr;
	}
	.ab-quality-grid {
		grid-template-columns: 1fr;
	}
	.ab-certs-grid--five > li {
		flex: 0 1 100%;
		max-width: 280px;
	}
}
