/* ─── AV Shared Base (tokens, layout, buttons, badges) ─── */
:root {
	/* Canonical (non-prefixed) vars — match HTML source exactly */
	--navy:         #1a1a1f;
	--navy-2:       #2a2a30;
	--navy-hover:   #3a3a42;
	--rust:         #c4202e;
	--rust-dk:      #9c1923;
	--rust-soft:    #f9dcdc;
	--gold:         #e0b341;
	--green:        #1e8a4a;
	--bg:           #faf7f2;
	--paper:        #ffffff;
	--ink:          #15161a;
	--ink-2:        #3a3a40;
	--ink-3:        #6b6b73;
	--line:         #e7e1d6;
	--line-2:       #efeae0;
	--chip:         #f3ede2;
	--font-display: "Bricolage Grotesque", ui-sans-serif, system-ui, sans-serif;
	--font:         "Manrope", ui-sans-serif, system-ui, sans-serif;
	--header-h:     104px;
	--r:            10px;
	--r-lg:         14px;
	--r-pill:       999px;
	--max-w:        1280px;
	--shadow-1:     0 1px 2px rgba(15,30,61,.05), 0 8px 24px rgba(15,30,61,.06);
	--shadow-2:     0 12px 40px rgba(15,30,61,.13);

	/* Prefixed aliases */
	--av-navy:       #1a1a1f;
	--av-navy-2:     #2a2a30;
	--av-navy-hover: #3a3a42;
	--av-rust:       #c4202e;
	--av-rust-dk:    #9c1923;
	--av-rust-soft:  #f9dcdc;
	--av-gold:       #e0b341;
	--av-green:      #1e8a4a;
	--av-bg:         #faf7f2;
	--av-paper:      #ffffff;
	--av-ink:        #15161a;
	--av-ink-2:      #3a3a40;
	--av-ink-3:      #6b6b73;
	--av-line:       #e7e1d6;
	--av-line-2:     #efeae0;
	--av-chip:       #f3ede2;
	--av-font-display: "Bricolage Grotesque", ui-sans-serif, system-ui, sans-serif;
	--av-font:       "Manrope", ui-sans-serif, system-ui, sans-serif;
	--av-header-h:   104px;
	--av-r:          10px;
	--av-r-lg:       14px;
	--av-r-pill:     999px;
	--av-max:        1280px;
	--av-shadow-1:   0 1px 2px rgba(15,30,61,.05), 0 8px 24px rgba(15,30,61,.06);
	--av-shadow-2:   0 12px 40px rgba(15,30,61,.13);
}

/* ─── Layout ─────────────────────────────────────────────────── */
.av-wrap {
	width: 100%;
	max-width: var(--av-max);
	margin: 0 auto;
}

/* ─── Section head ───────────────────────────────────────────── */
.av-section-head {
	margin-bottom: 48px;
}
.av-section-head.av-center {
	text-align: center;
	margin-inline: auto;
	max-width: 720px;
}
.elementor-element h2.av-section-head,
.elementor-element h2.av-sh-title {
    font-family: var(--av-font-display);
    font-size: 42px;
    font-weight: 700;
    line-height: 1.08;
    letter-spacing: -0.02em;
    color: var(--av-navy);
    margin: 0 0 14px;
}
p.av-section-lead {
	font-size: 17px;
	color: var(--av-ink-3);
	line-height: 1.6;
	margin: 0;
}

/* ─── Eyebrow ────────────────────────────────────────────────── */
.av-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-family: var(--av-font);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--av-rust);
	margin-bottom: 14px;
}
.av-eyebrow::before {
	content: "";
	width: 22px;
	height: 1.5px;
	background: var(--av-rust);
}

/* ─── Buttons ────────────────────────────────────────────────── */
.av-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 14px 22px;
	border-radius: var(--av-r);
	font-family: var(--av-font);
	font-size: 15px;
	font-weight: 700;
	cursor: pointer;
	border: 1.5px solid transparent;
	transition: background .18s, color .18s, border-color .18s, transform .12s, box-shadow .18s;
	white-space: nowrap;
	text-decoration: none;
	line-height: 1;
}
.av-btn:active { transform: translateY(1px); }

.av-btn.av-btn-rust {
	background: var(--av-rust);
	color: #fff;
	border-color: var(--av-rust);
	box-shadow: 0 6px 18px rgba(196,32,46,.25);
}
.av-btn-rust:hover {
	background: var(--av-rust-dk);
	border-color: var(--av-rust-dk);
	box-shadow: 0 10px 24px rgba(196,32,46,.32);
}

.av-btn.av-btn-navy {
	background: var(--av-navy);
	color: #fff;
	border-color: var(--av-navy);
}
.av-btn-navy:hover {
	background: var(--av-navy-2);
	border-color: var(--av-navy-2);
}

.av-btn.av-btn-ghost-white {
	background: transparent;
	color: #fff;
	border-color: rgba(255,255,255,.55);
}
.av-btn-ghost-white:hover {
	background: rgba(255,255,255,.1);
	border-color: #fff;
}

.av-btn.av-btn-ghost-navy {
	background: transparent;
	color: var(--av-navy);
	border-color: var(--av-navy);
}
.av-btn-ghost-navy:hover {
	background: var(--av-navy);
	color: #fff;
}

/* ─── Icon helpers ───────────────────────────────────────────── */
.av-btn svg { width: 16px; height: 16px; flex-shrink: 0; }
