
:root {

	--hwa-blue: #1D428A;
	--hwa-blue-900: #0B2A65;
	--hwa-blue-950: #07193C;
	--hwa-blue-100: #D4E0F7;
	--hwa-blue-50: #E9EFFB;
	--hwa-black: #000;
	--hwa-white: #fff;
	--hwa-ink-muted: #3B4453;
	--hwa-surface-light: #EEF4F9;
	--hwa-border: #CFD8E6;
	--hwa-border-on-dark: rgba(255,255,255,.28);
	--hwa-on-dark-muted: rgba(255,255,255,.86);
	--hwa-interactive: #F7B91A;
	--hwa-interactive-ink: #0B2A65;
	--hwa-warning: #EA580C;

	--fs-xs: 13px;
	--fs-sm: 15px;
	--fs-base: 17px;
	--fs-md: 19px;
	--fs-lg: 23px;
	--fs-xl: 28px;
	--fs-2xl: clamp(28px, 3.4vw, 42px);
	--fs-display: clamp(44px, 7vw, 88px);
	--fs-mega: clamp(72px, 15vw, 196px);
	--track-label: .12em;
	--track-tight: -.03em;

	--sp-1: 4px;
	--sp-2: 8px;
	--sp-3: 12px;
	--sp-4: 16px;
	--sp-5: 24px;
	--sp-6: 32px;
	--sp-7: 40px;
	--sp-8: 56px;
	--sp-9: 88px;
	--hwa-section-y: var(--sp-8);

	--hwa-radius: 2px;
	--bd-hair: 1px;
	--bd-strong: 4px;
	--bd-bar: 6px;
	--hwa-ease: 200ms ease-out;
	--dur-base: 200ms;
	--dur-slow: 600ms;
}
@media (min-width: 1024px) {
	:root { --hwa-section-y: var(--sp-9); }
}

.hwa-comp-section { padding: var(--hwa-section-y) 0; }
.hwa-comp-section h2 {
	font-size: var(--fs-2xl);
	font-weight: 800;
	line-height: 1.08;
	letter-spacing: var(--track-tight);
	margin: 0 0 var(--sp-4);
	text-wrap: balance;
}
.hwa-comp-section h3 { font-weight: 800; letter-spacing: -.01em; }
.hwa-comp-center { text-align: center; }
.hwa-comp-center .hwa-comp-lead { margin-left: auto; margin-right: auto; }
.hwa-comp-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: var(--track-label);
	text-transform: uppercase;
	color: var(--hwa-blue);
	margin-bottom: var(--sp-3);
	line-height: 1.2;
}
.hwa-comp-eyebrow[class*="hwa-eyebrow--"]:before {
	content: '';
	flex: 0 0 22px;
	width: 22px;
	height: 22px;
	background-color: currentColor;
	-webkit-mask: var(--hwa-icon) no-repeat center / contain;
	mask: var(--hwa-icon) no-repeat center / contain;
}
.hwa-eyebrow--megaphone { --hwa-icon: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M3 10v4h3l8 4.5v-13L6 10H3z%22/%3E%3Cpath d=%22M17 9.5a3.5 3.5 0 0 1 0 5%22/%3E%3Cpath d=%22M19.5 7a7 7 0 0 1 0 10%22/%3E%3Cpath d=%22M7 14.5 8 20h2.5l-1-4.5%22/%3E%3C/svg%3E"); }
.hwa-eyebrow--medal { --hwa-icon: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2212%22 cy=%229%22 r=%225.5%22/%3E%3Cpath d=%22m9.5 12 1 1.5L12 12l1.5 1.5 1-1.5%22/%3E%3Cpath d=%22M8.6 13.4 7 21l5-2.5 5 2.5-1.6-7.6%22/%3E%3C/svg%3E"); }
.hwa-eyebrow--trophy { --hwa-icon: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M7.5 3.5h9V9a4.5 4.5 0 0 1-9 0V3.5z%22/%3E%3Cpath d=%22M7.5 5.5H4.5a3 3 0 0 0 3.2 4%22/%3E%3Cpath d=%22M16.5 5.5h3a3 3 0 0 1-3.2 4%22/%3E%3Cpath d=%22M12 13.5v3.5%22/%3E%3Cpath d=%22M8 20.5h8%22/%3E%3Cpath d=%22M9.5 17h5v3.5h-5z%22/%3E%3C/svg%3E"); }
.hwa-eyebrow--torch { --hwa-icon: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M3.5 20.5 10 14%22/%3E%3Cpath d=%22m9 11 4 4%22/%3E%3Cpath d=%22m11 13 5.5-5.5%22/%3E%3Cpath d=%22m14.5 6 3.5 3.5%22/%3E%3Cpath d=%22M20 3.5v2.5%22/%3E%3Cpath d=%22M21 8.5h-2.5%22/%3E%3Cpath d=%22m21.5 4.5-2 2%22/%3E%3C/svg%3E"); }
.hwa-eyebrow--clock { --hwa-icon: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%228.5%22/%3E%3Cpath d=%22M12 7v5l3.5 2%22/%3E%3C/svg%3E"); }
.hwa-eyebrow--clipboard { --hwa-icon: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Crect x=%225%22 y=%224.5%22 width=%2214%22 height=%2216.5%22 rx=%221%22/%3E%3Cpath d=%22M9 4.5V3h6v1.5%22/%3E%3Cpath d=%22M9 10h6%22/%3E%3Cpath d=%22M9 13.5h6%22/%3E%3Cpath d=%22M9 17h3.5%22/%3E%3C/svg%3E"); }
.hwa-eyebrow--hardhat { --hwa-icon: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M2.5 17.5h19v2.5h-19z%22/%3E%3Cpath d=%22M4.5 17.5a7.5 7.5 0 0 1 15 0%22/%3E%3Cpath d=%22M10 10.5V6.5h4v4%22/%3E%3Cpath d=%22M8 11V8.2%22/%3E%3Cpath d=%22M16 11V8.2%22/%3E%3C/svg%3E"); }
.hwa-eyebrow--camera { --hwa-icon: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Crect x=%223%22 y=%227%22 width=%2218%22 height=%2213%22 rx=%221%22/%3E%3Ccircle cx=%2212%22 cy=%2213.5%22 r=%223.5%22/%3E%3Cpath d=%22m8.5 7 1.5-2.5h4L15.5 7%22/%3E%3C/svg%3E"); }
.hwa-comp-lead {
	font-size: var(--fs-md);
	line-height: 1.5;
	color: var(--hwa-ink-muted);
	max-width: 60ch;
}
.hwa-comp-dark { background: var(--hwa-blue-900); color: var(--hwa-white); }
.hwa-comp-deep { background: var(--hwa-blue-950); color: var(--hwa-white); }
.hwa-comp-light { background: var(--hwa-surface-light); }
.hwa-comp-dark h2, .hwa-comp-dark h3, .hwa-comp-dark .hwa-comp-eyebrow,
.hwa-comp-deep h2, .hwa-comp-deep h3, .hwa-comp-deep .hwa-comp-eyebrow { color: var(--hwa-white); }
.hwa-comp-dark .hwa-comp-lead, .hwa-comp-deep .hwa-comp-lead { color: var(--hwa-on-dark-muted); }
.hwa-comp-media {
	border: var(--bd-hair) solid var(--hwa-border);
	border-radius: var(--hwa-radius);
	overflow: hidden;
	margin: 0;
}
.hwa-comp-media img { display: block; width: 100%; height: 100%; object-fit: cover; }
.hwa-comp-btn-row { margin-top: 28px; display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-2) 0; }
.hwa-comp-section .btn:focus-visible, .hc-bar .btn:focus-visible,
.hwa-comp-btn-outline:focus-visible, .hwa-comp-btn-ghost:focus-visible, .hc-link:focus-visible {
	outline: 3px solid var(--hwa-interactive);
	outline-offset: 3px;
}
.hwa-comp-btn-outline, .hwa-comp-btn-ghost {
	display: inline-block;
	font-size: 18px;
	font-weight: 700;
	line-height: 1;
	text-transform: uppercase;
	padding: var(--sp-4) var(--sp-5);
	margin: 0 10px 10px 0;
	border: 2px solid currentColor;
	border-radius: var(--hwa-radius);
	text-decoration: none;
	transition: background-color var(--hwa-ease), color var(--hwa-ease), border-color var(--hwa-ease);
}
.hwa-comp-btn-outline { color: var(--hwa-white); }
.hwa-comp-btn-ghost { color: var(--hwa-blue); }
.hwa-comp-btn-outline:hover, .hwa-comp-btn-ghost:hover {
	background: var(--hwa-interactive);
	border-color: var(--hwa-interactive);
	color: var(--hwa-interactive-ink);
}
.hc-link { color: inherit; font-weight: 700; text-underline-offset: 3px; }
.hc-link:hover { color: var(--hwa-blue); }
.hwa-comp-dark .hc-link:hover, .hwa-comp-deep .hc-link:hover { color: var(--hwa-white); text-decoration-thickness: 2px; }
.btn { border-radius: var(--hwa-radius); text-decoration: none; }
.hc-tnum { font-variant-numeric: tabular-nums; }
.hc-sr { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

.hc-bar {
	background: var(--hwa-blue-950);
	color: var(--hwa-white);
	font-size: var(--fs-sm);
	font-weight: 600;
	position: sticky;
	top: 0;
	z-index: 50;
	border-bottom: var(--bd-hair) solid var(--hwa-border-on-dark);
}
.hc-bar .wrapper { display: flex; align-items: center; justify-content: space-between; gap: var(--sp-4); padding: 10px 0; }
.hc-bar .hc-bar-msg { display: flex; flex-wrap: wrap; gap: 2px var(--sp-4); align-items: baseline; }
.hc-bar strong { font-weight: 800; letter-spacing: .02em; }
.hc-bar .hc-count { font-size: var(--fs-md); font-weight: 800; }
.hc-bar .btn { font-size: 14px; padding: 10px 26px 10px 14px; margin: 0; white-space: nowrap; }
.hc-bar .btn:after { right: 11px; }
@media (max-width: 599px) { .hc-bar .hc-bar-sub { display: none; } }

.hc-hero-panel {
	position: relative;
	background: var(--hwa-black);
	isolation: isolate;
	padding: var(--sp-8) 0;
	color: var(--hwa-white);
}
.hc-hero-panel > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; }
.hc-hero-panel:before { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(7,25,60,.92) 0%, rgba(7,25,60,.72) 50%, rgba(7,25,60,.25) 100%); }
.hc-hero-panel .hc-panel {
	background: var(--hwa-blue-900);
	border-top: var(--bd-bar) solid var(--hwa-white);
	border-radius: var(--hwa-radius);
	padding: var(--sp-6) var(--sp-5);
	max-width: 640px;
}
.hc-hero-panel .hwa-comp-eyebrow { color: var(--hwa-white); }
.hc-hero-panel h1 {
	color: var(--hwa-white);
	text-align: left;
	font-size: var(--fs-display);
	line-height: .95;
	letter-spacing: -.04em;
	margin: 0 0 var(--sp-4);
}
.hc-hero-panel .hc-hero-sub { font-size: var(--fs-lg); line-height: 1.3; font-weight: 700; margin: 0; }
.hc-hero-panel .hc-hero-meta { margin: var(--sp-4) 0 0; color: var(--hwa-on-dark-muted); font-size: var(--fs-md); }
.hc-hero-panel .hc-hero-meta b { color: var(--hwa-white); }
@media (min-width: 1024px) {
	.hc-hero-panel { padding: var(--sp-9) 0; min-height: 620px; display: flex; align-items: center; }
	.hc-hero-panel .hc-panel { padding: var(--sp-7) var(--sp-7) var(--sp-6); }
}

.hc-usp { background: var(--hwa-white); border-bottom: var(--bd-hair) solid var(--hwa-border); }
.hc-usp ul { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, 1fr); }
.hc-usp li { padding: var(--sp-4) var(--sp-3); border-right: var(--bd-hair) solid var(--hwa-border); border-bottom: var(--bd-hair) solid var(--hwa-border); }
.hc-usp li:nth-child(2n) { border-right: 0; }
.hc-usp li:last-child:nth-child(odd) { grid-column: 1 / -1; border-bottom: 0; }
.hc-usp .k { display: block; font-size: var(--fs-xs); font-weight: 700; letter-spacing: var(--track-label); text-transform: uppercase; color: var(--hwa-blue); }
.hc-usp .v { display: block; font-size: var(--fs-md); font-weight: 800; line-height: 1.2; margin-top: 2px; }
@media (min-width: 900px) {
	.hc-usp li:last-child:nth-child(odd) { grid-column: auto; }
	.hc-usp ul { grid-template-columns: repeat(5, 1fr); }
	.hc-usp li, .hc-usp li:nth-child(2n) { border-bottom: 0; border-right: var(--bd-hair) solid var(--hwa-border); padding: var(--sp-5); }
	.hc-usp li:last-child { border-right: 0; }
}

.hc-tiers { list-style: none; margin: var(--sp-7) 0 0; padding: 0; display: grid; gap: var(--sp-3); }
.hc-tier {
	background: var(--hwa-white);
	color: var(--hwa-black);
	border: var(--bd-hair) solid var(--hwa-border);
	border-radius: var(--hwa-radius);
	padding: var(--sp-5);
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 0 var(--sp-4);
	align-items: start;
	text-align: left;
}
.hc-tier .place { grid-row: span 2; font-size: 56px; font-weight: 800; line-height: .85; letter-spacing: -.05em; color: var(--hwa-blue); min-width: 1.6ch; }
.hc-tier .place sup { font-size: .32em; letter-spacing: 0; vertical-align: top; position: relative; top: .25em; margin-left: 2px; }
.hc-tier .pct { font-size: var(--fs-xl); font-weight: 800; letter-spacing: var(--track-tight); line-height: 1; margin: 2px 0 0; }
.hc-tier .pct small { display: block; font-size: var(--fs-sm); font-weight: 600; letter-spacing: 0; color: var(--hwa-ink-muted); margin-top: var(--sp-1); }
.hc-tier .gear { grid-column: 1 / -1; margin: var(--sp-4) 0 0; padding: var(--sp-3) 0 0; border-top: var(--bd-hair) solid var(--hwa-border); font-weight: 600; font-size: var(--fs-sm); }
.hc-tier.is-first { background: var(--hwa-white); border: 0; outline: var(--bd-strong) solid var(--hwa-black); outline-offset: calc(-1 * var(--bd-strong)); }
.hc-tier .tag { display: inline-block; background: var(--hwa-black); color: var(--hwa-white); font-size: 12px; font-weight: 800; letter-spacing: var(--track-label); text-transform: uppercase; padding: 5px 8px; border-radius: var(--hwa-radius); margin-bottom: var(--sp-2); }
.hc-tier-foot {
	margin-top: var(--sp-3);
	border: 2px dashed var(--hwa-border-on-dark);
	border-radius: var(--hwa-radius);
	padding: var(--sp-5);
	display: grid;
	gap: var(--sp-2) var(--sp-5);
	align-items: center;
}
.hc-tier-foot .fig { font-size: clamp(48px, 7vw, 80px); font-weight: 800; letter-spacing: -.05em; line-height: .9; }
.hc-tier-foot p { margin: 0; font-size: var(--fs-md); color: var(--hwa-on-dark-muted); }
.hc-tier-foot p b { color: var(--hwa-white); }
@media (min-width: 700px) {
	.hc-tiers { grid-template-columns: repeat(2, 1fr); }
	.hc-tier-foot { grid-template-columns: auto 1fr; }
}
@media (min-width: 1024px) {
	.hc-tiers { grid-template-columns: repeat(3, 1fr); gap: var(--sp-4); }
	.hc-tier { grid-template-columns: 1fr; padding: var(--sp-6) var(--sp-5); }
	.hc-tier .place { grid-row: auto; font-size: 72px; margin-bottom: var(--sp-3); }
	.hc-tier.is-first .place { font-size: 96px; }
	.hc-tier.is-first .pct { font-size: 40px; }
	.hc-tier:nth-child(-n+3) { min-height: 300px; }
	.hc-tier:nth-child(n+4) { padding: var(--sp-5); }
	.hc-tier:nth-child(n+4) .place { font-size: 48px; }
	.hc-tier:nth-child(n+4) .pct { font-size: var(--fs-lg); }
	.hc-tier .gear { margin-top: auto; }
	.hc-tier { display: flex; flex-direction: column; }
	.hc-tier .pct + .gear { margin-top: var(--sp-5); }
}

.hc-spec { display: grid; gap: var(--sp-6); align-items: center; margin-top: var(--sp-6); }
.hc-spec-fig { margin: 0; background: var(--hwa-white); border: var(--bd-hair) solid var(--hwa-border); border-radius: var(--hwa-radius); padding: var(--sp-4); }
.hc-spec-fig svg { display: block; width: 100%; height: auto; margin-inline: auto; }
.hc-spec-fig figcaption { font-size: var(--fs-xs); color: var(--hwa-ink-muted); margin-top: var(--sp-2); text-align: center; }
.hc-callouts { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--sp-3); counter-reset: co; }
.hc-callouts li { display: grid; grid-template-columns: 36px 1fr; gap: var(--sp-3); align-items: start; padding-bottom: var(--sp-3); border-bottom: var(--bd-hair) solid var(--hwa-border); }
.hc-callouts li:last-child { border-bottom: 0; padding-bottom: 0; }
.hc-callouts .n { width: 32px; height: 32px; display: grid; place-items: center; background: var(--hwa-blue); color: var(--hwa-white); border-radius: var(--hwa-radius); font-weight: 800; font-size: var(--fs-sm); }
.hc-callouts b { display: block; font-size: var(--fs-md); line-height: 1.25; }
.hc-callouts span.d { display: block; font-size: var(--fs-sm); color: var(--hwa-ink-muted); margin-top: 2px; }
.hc-judge { margin-top: var(--sp-6); display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--sp-2); list-style: none; padding: 0; }
.hc-judge li { border: var(--bd-hair) solid var(--hwa-border); border-left: var(--bd-strong) solid var(--hwa-blue); border-radius: var(--hwa-radius); padding: var(--sp-3) var(--sp-4); font-weight: 700; background: var(--hwa-white); }
.hc-judge-title { margin-top: var(--sp-6); font-size: var(--fs-xs) !important; font-weight: 800; letter-spacing: var(--track-label); text-transform: uppercase; color: var(--hwa-blue) !important; }
.hc-judge-title + .hc-judge { margin-top: var(--sp-2); }
@media (min-width: 900px) {
	.hc-spec { grid-template-columns: 1.15fr 1fr; gap: var(--sp-8); }
	.hc-judge { grid-template-columns: repeat(4, 1fr); }
}

.hc-day { margin-top: var(--sp-6); border: var(--bd-hair) solid var(--hwa-border); border-radius: var(--hwa-radius); background: var(--hwa-white); overflow: hidden; }
.hc-day-head { display: flex; justify-content: space-between; align-items: baseline; flex-wrap: wrap; gap: var(--sp-2); padding: var(--sp-4) var(--sp-5); background: var(--hwa-blue); color: var(--hwa-white); }
.hc-day-head b { font-size: var(--fs-lg); letter-spacing: -.01em; }
.hc-day-head span { font-size: var(--fs-sm); color: var(--hwa-on-dark-muted); }
.hc-day-grid {
	--hr: 84px;
	position: relative;
	display: grid;
	grid-template-columns: 64px 1fr;
	grid-template-rows: repeat(29, calc(var(--hr) / 4));
	padding-top: var(--sp-3);
}
.hc-day-grid .tick { grid-column: 1; font-size: var(--fs-xs); font-weight: 700; color: var(--hwa-ink-muted); padding: 0 var(--sp-2); transform: translateY(-.6em); text-align: right; }
.hc-day-grid .line { grid-column: 2; border-top: var(--bd-hair) solid var(--hwa-border); }
.hc-day-grid .ev {
	grid-column: 2;
	margin: 2px var(--sp-3) 2px var(--sp-2);
	border-radius: var(--hwa-radius);
	padding: var(--sp-2) var(--sp-3);
	background: var(--hwa-blue-50);
	border-left: var(--bd-strong) solid var(--hwa-blue);
	z-index: 1;
	overflow: hidden;
}
.hc-day-grid .ev b { display: block; font-size: var(--fs-base); line-height: 1.2; }
.hc-day-grid .ev small { display: block; font-size: var(--fs-xs); font-weight: 700; color: var(--hwa-ink-muted); letter-spacing: .04em; }
.hc-day-grid .ev.is-weld { background: var(--hwa-blue-900); border-left-color: var(--hwa-black); color: var(--hwa-white); }
.hc-day-grid .ev.is-weld small { color: var(--hwa-on-dark-muted); }
.hc-day-grid .ev.is-point { background: var(--hwa-white); border: 2px solid var(--hwa-blue); border-left-width: var(--bd-strong); padding-top: var(--sp-1); padding-bottom: var(--sp-1); align-self: start; }
.hc-day-grid .ev.is-lunch { background: var(--hwa-surface-light); border-left-color: var(--hwa-ink-muted); }
@media (min-width: 900px) { .hc-day-grid { --hr: 88px; grid-template-columns: 88px 1fr; } }
.hc-day-note { font-size: var(--fs-sm); color: var(--hwa-ink-muted); margin: var(--sp-3) 0 0; }

.hc-steps { list-style: none; margin: var(--sp-6) 0 0; padding: 0; display: grid; gap: var(--sp-3); counter-reset: st; }
.hc-steps li { counter-increment: st; border: var(--bd-hair) solid var(--hwa-border); border-radius: var(--hwa-radius); background: var(--hwa-white); padding: var(--sp-5); position: relative; }
.hc-steps li:before { content: counter(st, decimal-leading-zero); display: block; font-size: 40px; font-weight: 800; letter-spacing: -.05em; line-height: 1; color: var(--hwa-blue); margin-bottom: var(--sp-3); }
.hc-steps h3 { font-size: var(--fs-lg); margin: 0 0 var(--sp-1); color: var(--hwa-black); }
.hc-steps p { margin: 0; color: var(--hwa-ink-muted); font-size: var(--fs-sm); }
.hc-steps .when { display: inline-block; margin-top: var(--sp-3); font-size: var(--fs-xs); font-weight: 800; letter-spacing: var(--track-label); text-transform: uppercase; color: var(--hwa-blue); }
@media (min-width: 700px) { .hc-steps { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .hc-steps { grid-template-columns: repeat(4, 1fr); } }

.hwa-comp-gear { border: var(--bd-hair) solid var(--hwa-border); border-top: var(--bd-bar) solid var(--hwa-blue); border-radius: var(--hwa-radius); background: var(--hwa-white); padding: 28px; color: var(--hwa-black); }
.hwa-comp-gear h3 { font-size: var(--fs-lg); font-weight: 800; margin: 0 0 6px; color: var(--hwa-blue); }
.hwa-comp-gear p { margin: 0 0 var(--sp-3); color: var(--hwa-ink-muted); }
.hwa-comp-gear ul { list-style: none; margin: 0; padding: 0; }
.hwa-comp-gear li { position: relative; padding: 11px 0 11px 34px; border-top: var(--bd-hair) solid var(--hwa-border); font-weight: 600; }
.hwa-comp-gear li:before { content: ''; position: absolute; left: 0; top: 12px; width: 20px; height: 20px; background: var(--hwa-blue); border-radius: var(--hwa-radius); }
.hwa-comp-gear li:after { content: ''; position: absolute; left: 7px; top: 15px; width: 6px; height: 11px; border: solid var(--hwa-white); border-width: 0 2px 2px 0; transform: rotate(45deg); }
.hc-split { display: grid; gap: var(--sp-6); align-items: start; }
@media (min-width: 900px) { .hc-split { grid-template-columns: 1fr 1fr; gap: var(--sp-8); } .hc-split.is-wide-left { grid-template-columns: 1.3fr 1fr; } .hc-split.is-center { align-items: center; } }

.hc-acc { border-top: var(--bd-hair) solid var(--hwa-border); margin-top: var(--sp-5); }
.hc-acc-item { border-bottom: var(--bd-hair) solid var(--hwa-border); }
.hc-acc-btn { width: 100%; display: flex; justify-content: space-between; align-items: center; gap: var(--sp-4); background: none; border: 0; padding: var(--sp-4) 0; font: inherit; font-weight: 800; font-size: var(--fs-md); color: var(--hwa-blue); text-align: left; cursor: pointer; }
.hc-acc-btn:focus-visible { outline: 3px solid var(--hwa-interactive); outline-offset: 2px; }
.hc-acc-btn:after { content: ''; flex: 0 0 12px; height: 12px; border: solid currentColor; border-width: 0 3px 3px 0; transform: rotate(45deg) translate(-3px, -3px); transition: transform var(--hwa-ease); }
.hc-acc-btn[aria-expanded="true"]:after { transform: rotate(225deg) translate(-3px, -3px); }
.hc-acc-panel { display: grid; grid-template-rows: 0fr; transition: grid-template-rows var(--hwa-ease); }
.hc-acc-panel > div { overflow: hidden; min-height: 0; }
.hc-acc-panel > div > div { padding: 0 0 var(--sp-4); color: var(--hwa-ink-muted); }
.hc-acc-item.is-open .hc-acc-panel { grid-template-rows: 1fr; }
.hc-aside-card { background: var(--hwa-blue-900); color: var(--hwa-white); border-radius: var(--hwa-radius); padding: var(--sp-6) var(--sp-5); }
.hc-aside-card h3 { color: var(--hwa-white); font-size: var(--fs-xl); margin: 0 0 var(--sp-2); }
.hc-aside-card p { margin: 0 0 var(--sp-4); color: var(--hwa-on-dark-muted); }
.hc-aside-card .tel { display: block; font-size: var(--fs-xl); font-weight: 800; color: var(--hwa-white); text-decoration: none; letter-spacing: -.01em; margin-bottom: var(--sp-4); }
.hc-aside-card .tel:hover { text-decoration: underline; }
.hc-aside-card .tel:focus-visible { outline: 3px solid var(--hwa-interactive); outline-offset: 3px; }
@media (min-width: 900px) { .hc-faq-split { grid-template-columns: 1.6fr 1fr !important; } }

.hwa-comp-mosaic { display: grid; gap: var(--sp-2); grid-template-columns: repeat(2, 1fr); margin-top: var(--sp-6); }
.hwa-comp-mosaic figure { margin: 0; aspect-ratio: 60 / 38; }
.hwa-comp-mosaic figure.is-feature { grid-column: 1 / -1; }
@media (min-width: 900px) {
	.hwa-comp-mosaic { grid-template-columns: repeat(4, 1fr); grid-template-rows: repeat(2, 1fr); }
	.hwa-comp-mosaic figure { aspect-ratio: auto; min-height: 190px; }
	.hwa-comp-mosaic figure.is-feature { grid-column: 1 / 3; grid-row: 1 / 3; }
}

.hwa-comp-cta { background: var(--hwa-black) url(/wp-content/themes/bma/img/bg/welding-course.jpg) no-repeat center; background-size: cover; position: relative; color: var(--hwa-white); text-align: center; isolation: isolate; }
.hwa-comp-cta:before { content: ''; position: absolute; inset: 0; background: var(--hwa-black); opacity: .78; z-index: -1; }
.hwa-comp-cta h2 { color: var(--hwa-white); font-size: clamp(34px, 5vw, 60px); }
.hwa-comp-cta p { font-size: 20px; max-width: 46ch; margin: 0 auto; color: var(--hwa-on-dark-muted); }
.hwa-comp-cta .hwa-comp-btn-row { justify-content: center; }

.hc-ic { display: inline-block; flex: none; width: var(--ic, 24px); height: var(--ic, 24px); background-color: currentColor; -webkit-mask: var(--i) no-repeat center / contain; mask: var(--i) no-repeat center / contain; vertical-align: middle; }
.hc-ic--calendar { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3.5' y='5' width='17' height='15.5' rx='1'/%3E%3Cpath d='M3.5 10h17M8 3v4M16 3v4M7.5 14h3M13.5 14h3M7.5 17h3'/%3E%3C/svg%3E"); }
.hc-ic--pin { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-6.5-6.2-6.5-11a6.5 6.5 0 0 1 13 0c0 4.8-6.5 11-6.5 11z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E"); }
.hc-ic--gradcap { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 9.5 12 5l9.5 4.5L12 14z'/%3E%3Cpath d='M6.5 11.6v3.9c0 1.6 2.5 3 5.5 3s5.5-1.4 5.5-3v-3.9M21.5 9.5v5'/%3E%3C/svg%3E"); }
.hc-ic--ticket { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 7h17v3.2a1.8 1.8 0 0 0 0 3.6V17h-17v-3.2a1.8 1.8 0 0 0 0-3.6z'/%3E%3Cpath d='M14 7v10' stroke-dasharray='1.5 2'/%3E%3C/svg%3E"); }
.hc-ic--users { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='8' r='3'/%3E%3Cpath d='M3.5 19c0-3 2.5-5 5.5-5s5.5 2 5.5 5'/%3E%3Ccircle cx='17' cy='9' r='2.5'/%3E%3Cpath d='M16.5 14c2.4 0 4 1.8 4 4.5'/%3E%3C/svg%3E"); }
.hc-ic--clock { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='8.5'/%3E%3Cpath d='M12 7v5l3.5 2'/%3E%3C/svg%3E"); }
.hc-ic--hourglass { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6.5 3.5h11M6.5 20.5h11M7.5 3.5c0 5 9 5 9 8.5s-9 3.5-9 8.5M16.5 3.5c0 5-9 5-9 8.5s9 3.5 9 8.5'/%3E%3C/svg%3E"); }
.hc-ic--card { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='6' width='18' height='12' rx='1'/%3E%3Cpath d='M3 10h18M7 14.5h4'/%3E%3C/svg%3E"); }
.hc-ic--shield { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7.5 3v5.5c0 4.5-3.2 8-7.5 9.5-4.3-1.5-7.5-5-7.5-9.5V6z'/%3E%3Cpath d='m8.5 12 2.5 2.5 4.5-5'/%3E%3C/svg%3E"); }
.hc-ic--stopwatch { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='13.5' r='7.5'/%3E%3Cpath d='M9.5 2.5h5M12 2.5V6M17.6 7.4l1.6-1.6M12 13.5V8.5a5 5 0 0 1 4.33 2.5z'/%3E%3C/svg%3E"); }
.hc-ic--torch { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.5 21.5l1.6-6.2 2.9.7-1.6 6.2z'/%3E%3Cpath d='M7.6 15.6c.3-3.6 2.3-6 6-6.6l1.6-.3'/%3E%3Cpath d='M15.2 8.7l1-1.7 1.7 1-1 1.7z'/%3E%3Cpath d='M19.8 2.5l.5 2.3 2.2-.6-1.5 1.8 1.8 1.5-2.3.2.2 2.3-1.6-1.7-1.6 1.6.3-2.3-2.2-.3 1.8-1.4-1.3-1.9 2.2.7z'/%3E%3C/svg%3E"); }
.hc-ic--utensils { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 3v7.5a2 2 0 0 0 4 0V3M9 3v18M17.5 21V3c-2 1-3.5 3.5-3.5 7 0 1.8 1.2 3 3.5 3'/%3E%3C/svg%3E"); }
.hc-ic--flag { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5.5 21V3.5M5.5 4h12l-2.5 4 2.5 4h-12'/%3E%3C/svg%3E"); }
.hc-ic--trophy { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7.5 3.5h9V9a4.5 4.5 0 0 1-9 0V3.5zM7.5 5.5H4.5a3 3 0 0 0 3.2 4M16.5 5.5h3a3 3 0 0 1-3.2 4M12 13.5v3.5M8 20.5h8M9.5 17h5v3.5h-5z'/%3E%3C/svg%3E"); }
.hc-ic--medal { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='9' r='5.5'/%3E%3Cpath d='m9.5 12 1 1.5L12 12l1.5 1.5 1-1.5M8.6 13.4 7 21l5-2.5 5 2.5-1.6-7.6'/%3E%3C/svg%3E"); }
.hc-ic--phone { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 3.5h3.5L10 7.5 8 9a11 11 0 0 0 7 7l1.5-2 4 1.5V19a1.5 1.5 0 0 1-1.5 1.5A16 16 0 0 1 3.5 5 1.5 1.5 0 0 1 5 3.5z'/%3E%3C/svg%3E"); }
.hc-ic--download { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3.5v11M7 10l5 5 5-5M4.5 20h15'/%3E%3C/svg%3E"); }
.hc-ic--doc { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 3h8.5L19 7.5V21H6z'/%3E%3Cpath d='M14 3v5h5M9 12.5h7M9 16h7'/%3E%3C/svg%3E"); }
.hc-ic--clipcheck { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='4.5' width='14' height='16.5' rx='1'/%3E%3Cpath d='M9 4.5V3h6v1.5M9 13l2 2 4-4.5'/%3E%3C/svg%3E"); }
.hc-ic--repeat { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 9.5V8a2.5 2.5 0 0 1 2.5-2.5H19M16 2.5l3 3-3 3M20 14.5V16a2.5 2.5 0 0 1-2.5 2.5H5M8 21.5l-3-3 3-3'/%3E%3C/svg%3E"); }
.hc-ic--target { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='8.5'/%3E%3Ccircle cx='12' cy='12' r='5'/%3E%3Ccircle cx='12' cy='12' r='1.5'/%3E%3C/svg%3E"); }
.hc-ic--sparkle { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 3.5l1.7 4.8 4.8 1.7-4.8 1.7-1.7 4.8-1.7-4.8L4.5 10l4.8-1.7zM18 14.5l.8 2.2 2.2.8-2.2.8-.8 2.2-.8-2.2-2.2-.8 2.2-.8z'/%3E%3C/svg%3E"); }
.hc-ic--hood { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 10a6 6 0 0 1 12 0v6.5c0 2.2-2.7 4-6 4s-6-1.8-6-4z'/%3E%3Crect x='8.5' y='11' width='7' height='3.5' rx='.5'/%3E%3Cpath d='M3.5 12H6M18 12h2.5'/%3E%3C/svg%3E"); }
.hc-ic--hat { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.5 15.5a7.5 7.5 0 0 1 15 0z'/%3E%3Cpath d='M12 8v-1M19.5 15.5h2.5M10 8.5c-1 2-1.3 4.5-1 7'/%3E%3C/svg%3E"); }
.hc-ic--shirt { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8.5 3.5 4 6 2.5 17.5h3L7 10.5v10h10v-10l1.5 7h3L20 6l-4.5-2.5c-.6 1.5-2 2.5-3.5 2.5s-2.9-1-3.5-2.5z'/%3E%3C/svg%3E"); }
.hc-ic--hoodie { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8.5 4.5 4 7 2.5 17.5h3L7 11v9.5h10V11l1.5 6.5h3L20 7l-4.5-2.5'/%3E%3Cpath d='M8.5 4.5C8.5 2.8 10 2 12 2s3.5.8 3.5 2.5c0 2-1.6 3.5-3.5 3.5S8.5 6.5 8.5 4.5zM10.5 8v3M13.5 8v3M9.5 16h5'/%3E%3C/svg%3E"); }
.hc-ic--gloves { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7.5 21v-3h9v3M7.5 18 6 11.5a1.5 1.5 0 0 1 3-.6l.5 1.6V5.5a1.5 1.5 0 0 1 3 0V10V6.5a1.5 1.5 0 0 1 3 0V12l.8-1.6a1.5 1.5 0 0 1 2.7 1.3L16.5 18'/%3E%3C/svg%3E"); }
.hc-ic--boot { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 3.5h5V11l6.5 2.6c1.3.5 2 1.6 2 2.9v3.5h-16V13.5c0-1.2.6-2 1.5-2.5z'/%3E%3Cpath d='M4.5 17h16M12 11h-3M12 7.5H9'/%3E%3C/svg%3E"); }
.hc-ic--pants { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 3.5h12l1 17h-5L12 10l-2 10.5H5z'/%3E%3Cpath d='M6 7h12M12 3.5V7'/%3E%3C/svg%3E"); }
.hc-ic--glasses { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='6.5' cy='14' r='3.5'/%3E%3Ccircle cx='17.5' cy='14' r='3.5'/%3E%3Cpath d='M10 14c.6-1 3.4-1 4 0M3 14l1.5-6h2M21 14l-1.5-6h-2'/%3E%3C/svg%3E"); }
.hc-ic--dollar { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3v18M16.5 7.5C16 6 14.2 5 12 5c-2.5 0-4.5 1.3-4.5 3.2 0 4.3 9 2.5 9 7 0 1.9-2 3.3-4.5 3.3-2.3 0-4.1-1-4.6-2.5'/%3E%3C/svg%3E"); }
.hc-ic--star { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3.2l2.6 5.5 6 .8-4.4 4.1 1.1 5.9L12 16.6l-5.3 2.9 1.1-5.9-4.4-4.1 6-.8z'/%3E%3C/svg%3E"); }
.hc-ic--arrow { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12h15M13.5 6.5 19 12l-5.5 5.5'/%3E%3C/svg%3E"); }

:root { --hwa-interactive-soft: #FAD576; }

.hwa-eyebrow--torch { --hwa-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.5 21.5l1.6-6.2 2.9.7-1.6 6.2z'/%3E%3Cpath d='M7.6 15.6c.3-3.6 2.3-6 6-6.6l1.6-.3'/%3E%3Cpath d='M15.2 8.7l1-1.7 1.7 1-1 1.7z'/%3E%3Cpath d='M19.8 2.5l.5 2.3 2.2-.6-1.5 1.8 1.8 1.5-2.3.2.2 2.3-1.6-1.7-1.6 1.6.3-2.3-2.2-.3 1.8-1.4-1.3-1.9 2.2.7z'/%3E%3C/svg%3E"); }

.hc-tier.is-first { outline-color: var(--hwa-interactive); }

.hc-tier-foot .fig small { font-size: .34em; letter-spacing: 0; font-weight: 800; vertical-align: .9em; margin-left: .15em; }

.hc-bar .hc-bar-msg { align-items: center; }
.hc-bar .hc-bar-clock { display: inline-flex; align-items: center; gap: var(--sp-2); }
.hc-bar .hc-ic { --ic: 18px; }

.hc-hero-panel .hc-panel { box-shadow: none; }
.hc-meta { list-style: none; margin: var(--sp-5) 0 0; padding: var(--sp-4) 0 0; border-top: var(--bd-hair) solid var(--hwa-border-on-dark); display: grid; gap: var(--sp-3); }
.hc-meta li { display: flex; align-items: center; gap: var(--sp-3); font-size: var(--fs-md); color: var(--hwa-on-dark-muted); line-height: 1.3; }
.hc-meta li b { color: var(--hwa-white); }
.hc-meta .hc-ic { --ic: 22px; color: var(--hwa-white); }
@media (min-width: 600px) { .hc-meta { display: flex; flex-wrap: wrap; gap: var(--sp-3) var(--sp-5); } .hc-meta li { white-space: nowrap; } }
.hc-hero-panel .hwa-comp-btn-outline .hc-ic, .hc-aside-card .hwa-comp-btn-outline .hc-ic { --ic: 18px; margin: -3px var(--sp-2) 0 0; }

.hc-usp li { display: grid; grid-template-columns: auto 1fr; gap: 0 var(--sp-3); align-items: start; align-content: start; }
.hc-usp li:last-child { border-right: 0; }
.hc-usp .hc-ic { grid-row: span 2; color: var(--hwa-blue); --ic: 26px; margin-top: 2px; }

.hc-gear-list { width: 100%; align-self: stretch; list-style: none; margin: var(--sp-4) 0 0; padding: var(--sp-3) 0 0; border-top: var(--bd-hair) solid var(--hwa-border); display: grid; gap: var(--sp-2); grid-column: 1 / -1; }
.hc-gear-list li { display: flex; align-items: center; gap: var(--sp-2); font-weight: 600; font-size: var(--fs-sm); }
.hc-gear-list .hc-ic { --ic: 22px; color: var(--hwa-blue); }
@media (min-width: 1024px) { .hc-tier .hc-gear-list { margin-top: auto; } .hc-tier .pct + .hc-gear-list { margin-top: var(--sp-5); } }
.hc-tier.is-first .hc-gear-list { margin-top: var(--sp-5); }
.hc-tier-foot { grid-template-columns: auto 1fr; }
.hc-tier-foot .hc-ic { --ic: 44px; color: var(--hwa-white); }
.hc-tier-foot .fig-wrap { display: flex; align-items: center; gap: var(--sp-3); }
@media (max-width: 699px) { .hc-tier-foot { grid-template-columns: 1fr; } }

.hc-judge li { display: flex; align-items: center; gap: var(--sp-3); }
.hc-judge .hc-ic { color: var(--hwa-blue); }

.hc-steps li { padding-right: var(--sp-8); }
.hc-steps li > .hc-ic { position: absolute; top: var(--sp-5); right: var(--sp-5); --ic: 32px; color: var(--hwa-blue); }
.hc-steps .when { display: flex; align-items: flex-start; gap: 6px; }
.hc-steps .when .hc-ic { margin-top: 1px; }
.hc-steps .when .hc-ic { --ic: 16px; }

.hc-day-head b { display: inline-flex; align-items: center; gap: var(--sp-2); }
.hc-day-head .hc-ic { --ic: 22px; }
.hc-day-grid .ev { display: grid; grid-template-columns: auto 1fr; gap: 0 var(--sp-3); align-content: start; }
.hc-day-grid .ev > .hc-ic { grid-row: span 3; --ic: 22px; margin-top: 2px; }
.hc-day-grid .ev > div { min-width: 0; }

.hwa-comp-gear h3 { display: flex; align-items: center; gap: var(--sp-2); }
.hwa-comp-gear ul.hc-ppe li { padding-left: 44px; }
.hwa-comp-gear ul.hc-ppe li:before, .hwa-comp-gear ul.hc-ppe li:after { content: none; }
.hwa-comp-gear ul.hc-ppe li .hc-ic { position: absolute; left: 0; top: 50%; margin-top: -14px; --ic: 28px; color: var(--hwa-blue); }

.hc-acc-btn { justify-content: flex-start; }
.hc-acc-btn .hc-ic { --ic: 22px; color: var(--hwa-blue); }
.hc-acc-btn .q { flex: 1; }
.hc-acc-panel > div > div { padding-left: calc(22px + var(--sp-4)); }
.hc-aside-card .tel { display: inline-flex; align-items: center; gap: var(--sp-3); }
.hc-aside-card .tel .hc-ic { --ic: 26px; }
.hc-aside-card h3 { display: flex; align-items: center; gap: var(--sp-3); }
.hc-aside-card .hc-addr { display: flex; gap: var(--sp-3); align-items: flex-start; font-size: var(--fs-sm); color: var(--hwa-on-dark-muted); margin: 0 0 var(--sp-5); }
.hc-aside-card .hc-addr .hc-ic { --ic: 20px; color: var(--hwa-white); }
@media (min-width: 900px) { .hc-aside-card { position: sticky; top: 88px; } }

.hc-tier .tag { display: inline-flex; align-items: center; gap: 7px; background: var(--hwa-interactive-soft); color: var(--hwa-black); border-radius: 4px; padding: 7px 12px; font-size: 13px; letter-spacing: .14em; }
.hc-tier .tag .hc-ic { --ic: 16px; margin-top: -1px; }

.hwa-comp-section h2 .hc-line { display: block; }

@media (min-width: 900px) { .hc-gear-offset { position: sticky; top: calc(88px - var(--sp-8)); } }

.hc-hero-panel { overflow: hidden; background: var(--hwa-blue-950); clip-path: polygon(0 0, 100% 0, 100% calc(100% - 56px), 0 100%); }
.hc-hero-panel > img { left: auto; right: 0; width: 62%; object-position: 50% 45%; filter: contrast(1.15) saturate(1.2) brightness(1.05); }
.hc-hero-panel:before { background: linear-gradient(90deg, rgba(7,25,60,1) 0%, rgba(7,25,60,1) 38%, rgba(7,25,60,.55) 46%, rgba(7,25,60,0) 60%); }
.hc-hero-panel:after { content: ''; position: absolute; right: 0; bottom: 0; width: 38%; height: 130px; z-index: 0; pointer-events: none; background: linear-gradient(170deg, transparent 0 46%, var(--hwa-white) 46.5% 53%, var(--hwa-blue) 53.5% 100%); }
@media (max-width: 899px) {

	.hc-hero-panel { padding-top: 0; padding-bottom: var(--sp-9); clip-path: polygon(0 0, 100% 0, 100% calc(100% - 32px), 0 100%); }
	.hc-hero-panel > img { position: relative; inset: auto; z-index: 0; display: block; width: 100%; height: 260px; object-position: 50% 40%; }
	.hc-hero-panel:before { display: none; }
	.hc-hero-panel > .wrapper { position: relative; z-index: 1; margin-top: calc(-1 * var(--sp-7)); }
	.hc-hero-panel:after { width: 60%; height: 64px; }
}

.hwa-comp-section .hwa-comp-lead { margin-top: 0; }

.header { z-index: 60; }
/* While the mobile menu is open (scripts.js adds body.mobile-menu-open) the bar
   drops below the header's layer so the slide-in nav and its overlay always win. */
body.mobile-menu-open .hc-bar { z-index: 0; }

.hc-day-section { background: linear-gradient(160deg, var(--hwa-white) 0%, var(--hwa-surface-light) 45%, var(--hwa-blue-100) 100%); }

.hc-day-section { position: relative; isolation: isolate; }
.hc-day-section > .wrapper { position: relative; z-index: 1; }
.hc-day-section:before { content: ''; position: absolute; inset: 0; z-index: 0; pointer-events: none; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='s'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' seed='4' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .04  0 0 0 0 .16  0 0 0 0 .40  2.4 0 0 0 -1.25'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23s)'/%3E%3C/svg%3E") 0 0 / 300px 300px; opacity: .3; }
.hc-day-section:after { content: ''; position: absolute; inset: 0; z-index: 0; pointer-events: none; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='600' height='600'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.01' numOctaves='4' seed='9' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .04  0 0 0 0 .16  0 0 0 0 .40  1.6 0 0 0 -.7'/%3E%3C/filter%3E%3Crect width='600' height='600' filter='url(%23g)'/%3E%3C/svg%3E") 0 0 / 600px 600px; opacity: .08; }

.hc-prizes { position: relative; isolation: isolate; overflow: hidden; background: var(--hwa-blue-950); }
.hc-prizes > .wrapper { position: relative; z-index: 1; }
.hc-prizes:before, .hc-prizes:after { content: ''; position: absolute; inset: 0; z-index: 0; pointer-events: none; }
.hc-prizes:before { background-image: var(--prize-photo); background-size: cover; background-repeat: no-repeat; background-position: var(--prize-pos, center 35%); filter: grayscale(1) contrast(1.35) brightness(1.1); }
.hc-prizes:after { background: linear-gradient(180deg, rgba(7,25,60,.72) 0%, rgba(29,66,138,.74) 40%, rgba(7,25,60,.93) 100%); }
.hc-prizes { --prize-photo: url(/wp-content/uploads/2025/01/IMG_5988-3-scaled.jpg); --prize-pos: center 30%; }

@media (prefers-reduced-motion: reduce) {
	.hc-acc-panel, .hc-acc-btn:after { transition: none; }
	.hwa-comp-section *, .hwa-comp-section *:before, .hwa-comp-section *:after { transition: none !important; }
}

.hc-gear-offset { padding-top: 0; }
@media (min-width: 900px) { .hc-gear-offset { padding-top: var(--sp-8); } }

#page-title,#breadcrumbs{display:none}

/* ======================================================================
   WPBakery layout (2026-10-12). One stretch row per section: the row carries
   the old <section> classes (hwa-comp-row hwa-comp-section ...), the column
   is .hwa-wrap (the old .wrapper). Content comes from the [hwa_*] elements
   in inc/hwa-competition/, which render bare markup with the classes above.
   ====================================================================== */
.content-wrap { padding-top: 0; padding-bottom: 0; }
.vc_row.hwa-comp-row { margin-bottom: 0; }
.hwa-comp-row > .wpb_column > .vc_column-inner { padding: 0; }
.hwa-comp-row .wpb_content_element { margin-bottom: 0; }
.hwa-comp-row .vc_column-inner > * { min-height: 0; }
.vc_row .vc_column_container.hwa-wrap {
	float: none !important;
	display: block;
	width: 92% !important;
	max-width: 1280px;
	margin: 0 auto !important;
	position: relative;
	z-index: 1;
}
/* Two-column sections (schedule + gear card, rules + contact card) use a
   WPBakery inner row under the section heading. */
.hwa-comp-row .vc_row_inner { margin-top: var(--sp-6); margin-bottom: 0; }
/* Match the proof's split gap (32px, 56px from 900px) instead of WPBakery's 30px gutter. */
.hwa-comp-row .vc_inner { margin-left: calc(var(--sp-6) / -2); margin-right: calc(var(--sp-6) / -2); }
.hwa-comp-row .vc_inner > .vc_column_container > .vc_column-inner { padding-left: calc(var(--sp-6) / 2); padding-right: calc(var(--sp-6) / 2); }
@media (min-width: 900px) {
	.hwa-comp-row .vc_inner { margin-left: calc(var(--sp-8) / -2); margin-right: calc(var(--sp-8) / -2); }
	.hwa-comp-row .vc_inner > .vc_column_container > .vc_column-inner { padding-left: calc(var(--sp-8) / 2); padding-right: calc(var(--sp-8) / 2); }
}
@media (max-width: 767px) {
	.hwa-comp-row .vc_inner > .vc_column_container + .vc_column_container { margin-top: var(--sp-6); }
}
/* The competition-day heading lives inside the schedule column (as in the
   proof), so .hc-day keeps its own top margin under the H2. The rules heading
   still sits above its inner row, so the accordion starts flush. */
.hwa-comp-row .vc_inner .hc-acc { margin-top: 0; }
.hwa-comp-row .vc_inner .hwa-comp-gear { position: relative; }
/* Section backdrops (prizes photo, competition-day texture) are :before/:after
   layers. js_composer.min.css gives every .vc_row:before/:after display:table
   for its clearfix; an absolutely positioned table shrink-wraps to nothing, so
   the image downloaded but painted at 0x0. Force block. */
.hc-prizes:before, .hc-prizes:after,
.hc-day-section:before, .hc-day-section:after { display: block; }
/* Sticky side cards (gear card, contact card). Two things block them under
   WPBakery: the stretch row gets overflow:hidden, which turns it into the
   sticky scroll container, and floated inner columns are only as tall as
   their own content so there is no room to travel. overflow:clip clips the
   same way without creating a scroll container; the inner row becomes a flex
   row so both columns run the full height. */
.vc_row.hwa-comp-row[data-vc-full-width] { overflow: clip; }
@media (min-width: 768px) {
	.hwa-comp-row .vc_inner { display: flex; flex-wrap: wrap; align-items: stretch; }
	.hwa-comp-row .vc_inner:before, .hwa-comp-row .vc_inner:after { display: none; }
	.hwa-comp-row .vc_inner > .vc_column_container { float: none; display: flex; min-width: 0; }
	.hwa-comp-row .vc_inner > .vc_column_container > .vc_column-inner { display: flex; flex-direction: column; flex: 1 1 auto; min-width: 0; }
	.hwa-comp-row .vc_inner > .vc_column_container > .vc_column-inner > .wpb_wrapper { flex: 1 1 auto; }
}
.hc-acc-panel p { margin: 0 0 .75em; }
.hc-acc-panel p:last-child { margin-bottom: 0; }
.hwa-comp-row--bar.is-moved { display: none; }
