/* =====================================================================================================================
   Sela V4 — Reference 2026 (design variant; Original V1 and Premium 2026 untouched)
   Every rule is scoped under .v4 (the variant's own markup). Study of the reference: deliverables/v4-2026/01-MAPPING.md
   ---------------------------------------------------------------------------------------------------------------------
   COLOUR   Sela's own blue-navy (deep, saturated) · brass gold · cool limestone. Two planes: navy and limestone.
   TYPE     display = Futurism 900 / 400 (the counter-line) · text = Simona Pro 400/700. Weight carries the contrast.
   SHAPE    one geometry, taken from the logo: the gable — two top corners cut at 45° (buttons, the hero panel) and a
            small gable mark that ends a rule (eyebrow, divider) where the reference uses a diamond.
   MOTION   one load sequence (hero), soft state changes (.45s), nothing under prefers-reduced-motion or in the editor.
   ===================================================================================================================== */

html.sela body .v4 {
	--v4-ink: #0B1B38;
	--v4-navy: #132B55;
	--v4-navy-2: #1E3D73;
	--v4-gold: #C9A44C;
	--v4-gold-lt: #E4CB86;
	--v4-gold-ink: #7E611D;
	--v4-lime: #F2F0EA;
	--v4-stone: #E3DFD5;
	--v4-paper: #FAF9F6;
	--v4-body: #3A4659;
	--v4-on-dark: #F4F2EC;
	--v4-line: rgba(11, 27, 56, .12);
	--v4-line-dk: rgba(244, 242, 236, .2);

	--v4-display: 'Futurism', 'Simona Pro', sans-serif;
	--v4-text: 'Simona Pro', 'Segoe UI', 'Arial Hebrew', sans-serif;
	--v4-t-hero: min(clamp(2.875rem, 1.45rem + 4vw, 5.75rem), 11.9vw);
	--v4-t-lead: clamp(1.0625rem, 1rem + .3vw, 1.25rem);
	--v4-t-body: 1.125rem;
	--v4-t-small: 1rem;
	--v4-t-xs: .9375rem;

	--v4-maxw: 1320px;
	--v4-gutter: clamp(20px, 4vw, 64px);
	--v4-hdr: 96px;
	--v4-cut: 12px;

	--v4-ease: cubic-bezier(.2, .7, .2, 1);
	--v4-fast: .25s;
	--v4-base: .45s;

	font-family: var(--v4-text);
	font-size: var(--v4-t-body);
	line-height: 1.65;
	color: var(--v4-ink);
	text-align: start;
	-webkit-font-smoothing: antialiased;
}
html.sela body .v4 *, html.sela body .v4 *::before, html.sela body .v4 *::after { box-sizing: border-box; }
html.sela body .v4 :where(h1, h2, h3, p, ul, figure) { margin: 0; padding: 0; }
html.sela body .v4 :where(ul) { list-style: none; }
html.sela body .v4 :where(a) { color: inherit; text-decoration: none; }
html.sela body .v4 svg { flex: none; }
html.sela body .v4 :focus-visible { outline: 2px solid var(--v4-gold); outline-offset: 3px; }
html.sela body .v4-wrap { width: 100%; max-width: calc(var(--v4-maxw) + 2 * var(--v4-gutter)); margin-inline: auto; padding-inline: var(--v4-gutter); }
html.sela body .v4-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* ---------- ornaments: the eyebrow sits between two short rules; a standalone rule carries the gable mark (the logo's
   outline) in its middle — the markup draws it (svg.v4-rule) ---------- */
html.sela body .v4-eyebrow { display: inline-flex; align-items: center; gap: 14px; font: 400 var(--v4-t-small)/1.4 var(--v4-text); letter-spacing: .01em; color: var(--v4-gold-ink); }
html.sela body .v4-eyebrow::before, html.sela body .v4-eyebrow::after { content: ''; flex: none; inline-size: 40px; block-size: 1px; background: currentColor; opacity: .7; } /* ——— words ——— */
html.sela body .v4-rule { display: block; inline-size: 132px; block-size: 12px; overflow: visible; fill: none; stroke: currentColor; stroke-width: 1; }

/* ---------- buttons: the gable (two top corners at 45°); the outline is drawn, a border would be cut off ---------- */
html.sela body .v4-btn {
	--b: var(--v4-navy); --f: var(--v4-on-dark);
	display: inline-flex; align-items: center; justify-content: center; gap: 14px;
	min-height: 56px; padding: 0 32px; font: 700 1.0625rem/1.2 var(--v4-text); letter-spacing: .005em; text-align: center;
	color: var(--f); background-color: var(--b); border: 0; border-radius: 0; cursor: pointer;
	clip-path: polygon(var(--v4-cut) 0, calc(100% - var(--v4-cut)) 0, 100% var(--v4-cut), 100% 100%, 0 100%, 0 var(--v4-cut));
	transition: background-color var(--v4-fast) var(--v4-ease), color var(--v4-fast) var(--v4-ease);
}
html.sela body .v4-btn svg { width: 18px; height: 18px; transition: transform var(--v4-fast) var(--v4-ease); }
html.sela body .v4-btn:hover svg, html.sela body .v4-btn:focus-visible svg { transform: translateX(-4px); }
html.sela body .v4-btn:focus-visible { outline: none; box-shadow: inset 0 0 0 2px var(--v4-gold-lt), inset 0 0 0 4px var(--v4-ink); } /* the clip hides an outside ring */
html.sela body .v4-btn--navy:hover { --b: var(--v4-navy-2); }
html.sela body .v4-btn--gold { --b: var(--v4-gold); --f: var(--v4-ink); }
html.sela body .v4-btn--gold:hover { --b: var(--v4-gold-lt); }
html.sela body .v4-btn--sm { min-height: 44px; padding: 0 22px; font-size: var(--v4-t-xs); --v4-cut: 9px; }
html.sela body .v4-btn--line {
	--oc: rgba(244, 242, 236, .62); --b: transparent;
	background-image:
		linear-gradient(var(--oc), var(--oc)), linear-gradient(var(--oc), var(--oc)),
		linear-gradient(var(--oc), var(--oc)), linear-gradient(var(--oc), var(--oc)),
		linear-gradient(to bottom right, transparent calc(50% - .75px), var(--oc) 0 calc(50% + .75px), transparent 0),
		linear-gradient(to bottom left, transparent calc(50% - .75px), var(--oc) 0 calc(50% + .75px), transparent 0);
	background-size: calc(100% - 2 * var(--v4-cut)) 1px, 100% 1px, 1px calc(100% - var(--v4-cut)), 1px calc(100% - var(--v4-cut)), var(--v4-cut) var(--v4-cut), var(--v4-cut) var(--v4-cut);
	background-position: top center, bottom, bottom left, bottom right, top left, top right;
	background-repeat: no-repeat;
}
html.sela body .v4-btn--line:hover { --b: rgba(244, 242, 236, .08); --oc: var(--v4-on-dark); }
html.sela body .v4-btn--line svg { width: 20px; height: 20px; }

/* =====================================================================================================================
   HEADER — transparent over the hero, limestone once scrolled; every change crossfades (.45s)
   ===================================================================================================================== */
html.sela body .v4-hdr {
	--fg: var(--v4-on-dark); --bg: rgba(242, 240, 234, 0); --ln: rgba(244, 242, 236, .2); --ac: var(--v4-gold-lt); --sub: var(--v4-gold-lt);
	position: fixed; inset: 0 0 auto; z-index: 90; color: var(--fg); background-color: var(--bg); isolation: isolate;
	transition: background-color var(--v4-base) ease, box-shadow var(--v4-base) ease, color var(--v4-base) ease;
}
html.sela body.admin-bar .v4-hdr { top: var(--wp-admin--admin-bar--height, 32px); }
html.sela body .v4-hdr::before { /* the scrim: the bar stays legible over a bright part of any photo */
	content: ''; position: absolute; inset: 0 0 -64px; z-index: -1; pointer-events: none;
	background: linear-gradient(180deg, rgba(6, 15, 33, .6) 0%, rgba(6, 15, 33, .22) 55%, rgba(6, 15, 33, 0) 100%);
	transition: opacity var(--v4-base) ease;
}
html.sela body .v4-hdr::after { content: ''; position: absolute; inset-inline: max(var(--v4-gutter), calc((100% - var(--v4-maxw)) / 2)); bottom: 0; height: 1px; background: var(--ln); transition: background-color var(--v4-base) ease, inset-inline var(--v4-base) var(--v4-ease); pointer-events: none; }
html.sela body .v4-hdr[data-state="solid"], html.sela body .v4-hdr[data-menu="open"] {
	--fg: var(--v4-ink); --bg: var(--v4-lime); --ln: var(--v4-line); --ac: var(--v4-gold); --sub: var(--v4-gold-ink);
	box-shadow: 0 18px 40px -30px rgba(11, 27, 56, .45);
}
html.sela body .v4-hdr[data-state="solid"]::before, html.sela body .v4-hdr[data-menu="open"]::before { opacity: 0; }
html.sela body .v4-hdr[data-state="solid"]::after, html.sela body .v4-hdr[data-menu="open"]::after { inset-inline: 0; }

html.sela body .v4-hdr__bar { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 32px; min-height: var(--v4-hdr); transition: min-height var(--v4-base) var(--v4-ease); }
html.sela body .v4-hdr[data-state="solid"] .v4-hdr__bar { min-height: 76px; }

html.sela body .v4-brand { justify-self: start; display: inline-flex; align-items: center; gap: 12px; color: var(--fg); transition: color var(--v4-base) ease; }
html.sela body .v4-brand__mark { position: relative; display: grid; width: 34px; height: 40px; transition: width var(--v4-base) var(--v4-ease), height var(--v4-base) var(--v4-ease); }
html.sela body .v4-brand__mark > * { grid-area: 1 / 1; width: 100%; height: 100%; transition: opacity var(--v4-base) ease; }
html.sela body .v4-brand__mark-light { background: var(--v4-on-dark); -webkit-mask: var(--v4-logo) center / contain no-repeat; mask: var(--v4-logo) center / contain no-repeat; }
html.sela body .v4-brand__mark-dark { opacity: 0; object-fit: contain; }
html.sela body .v4-hdr:is([data-state="solid"], [data-menu="open"]) .v4-brand__mark-light { opacity: 0; }
html.sela body .v4-hdr:is([data-state="solid"], [data-menu="open"]) .v4-brand__mark-dark { opacity: 1; }
html.sela body .v4-hdr[data-state="solid"] .v4-brand__mark { width: 30px; height: 35px; }
html.sela body .v4-brand__word { display: grid; line-height: 1; }
html.sela body .v4-brand__word b { font: 900 1.875rem/1 var(--v4-display); letter-spacing: -.005em; }
html.sela body .v4-brand__word small { margin-top: 5px; font: 400 .8125rem/1 var(--v4-text); letter-spacing: .04em; color: var(--sub); transition: color var(--v4-base) ease; }

html.sela body .v4-hdr__nav ul { display: flex; gap: 6px; }
html.sela body .v4-hdr__nav a { position: relative; display: block; padding: 12px 14px; font: 400 1.0625rem/1.2 var(--v4-text); letter-spacing: .01em; color: var(--fg); transition: color var(--v4-base) ease; }
html.sela body .v4-hdr__nav a::after { content: ''; position: absolute; inset-inline: 14px; bottom: 5px; height: 1px; background: var(--ac); transform: scaleX(0); transform-origin: center; transition: transform .4s var(--v4-ease), background-color var(--v4-base) ease; }
html.sela body .v4-hdr__nav a:hover::after, html.sela body .v4-hdr__nav a:focus-visible::after, html.sela body .v4-hdr__nav a[aria-current="page"]::after { transform: scaleX(1); }

html.sela body .v4-hdr__end { justify-self: end; display: flex; align-items: center; gap: 22px; }
html.sela body .v4-hdr__phone { font: 400 var(--v4-t-xs)/1 var(--v4-text); letter-spacing: .04em; font-variant-numeric: tabular-nums; color: var(--fg); opacity: .86; transition: color var(--v4-base) ease, opacity var(--v4-fast) ease; }
html.sela body .v4-hdr__phone:hover { opacity: 1; }
html.sela body .v4-hdr__cta { --b: var(--v4-gold); --f: var(--v4-ink); }
html.sela body .v4-hdr__cta:hover { --b: var(--v4-gold-lt); }
html.sela body .v4-hdr__toggle { display: none; width: 44px; height: 44px; padding: 0; border: 0; background: transparent; color: var(--fg); cursor: pointer; transition: color var(--v4-base) ease; }
html.sela body .v4-hdr__bars { display: grid; gap: 7px; width: 26px; margin-inline: auto; }
html.sela body .v4-hdr__bars i { display: block; height: 1.5px; background: currentColor; transition: transform var(--v4-base) var(--v4-ease); }
html.sela body .v4-hdr__bars i:last-child { width: 70%; justify-self: start; }
html.sela body .v4-hdr[data-menu="open"] .v4-hdr__bars i:first-child { transform: translateY(4.25px) rotate(45deg); }
html.sela body .v4-hdr[data-menu="open"] .v4-hdr__bars i:last-child { width: 100%; transform: translateY(-4.25px) rotate(-45deg); }

html.sela body .v4-menu { position: absolute; inset: 100% 0 auto; height: calc(100dvh - 72px); overflow-y: auto; background: var(--v4-lime); color: var(--v4-ink); padding-block: 8px 32px; }
html.sela body .v4-menu[hidden] { display: none; }
html.sela body .v4-menu__nav { display: grid; }
html.sela body .v4-menu__nav a { display: flex; align-items: center; min-height: 60px; font: 900 1.5rem/1.1 var(--v4-display); border-bottom: 1px solid var(--v4-line); }
html.sela body .v4-menu__nav a[aria-current="page"] { color: var(--v4-gold-ink); }
html.sela body .v4-menu__foot { display: grid; gap: 18px; padding-top: 28px; }
html.sela body .v4-menu__foot .v4-btn { width: 100%; }
html.sela body .v4-menu__phone { font-size: var(--v4-t-small); color: var(--v4-body); text-align: center; }

/* =====================================================================================================================
   HERO — one photograph, toned navy; the copy on the right grid line; the panel rises over the lower edge
   ===================================================================================================================== */
html.sela body .v4-hero { --dock: 120px; position: relative; background: var(--v4-lime); }
html.sela body .v4-hero__stage {
	position: relative; isolation: isolate; overflow: hidden; display: flex; align-items: center;
	min-height: max(100svh, 760px); padding: calc(var(--v4-hdr) + 32px) 0 calc(var(--dock) + 40px);
	background: var(--v4-ink); color: var(--v4-on-dark);
}
html.sela body .v4-hero__media { position: absolute; inset: 0; z-index: -2; margin: 0; }
html.sela body .v4-hero__media img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 30% 62%; transform-origin: 30% 60%; }
html.sela body .v4-hero__stage::before { /* the navy goes into the photo (multiply), it does not sit on it */
	content: ''; position: absolute; inset: 0; z-index: -1; pointer-events: none;
	background: var(--v4-navy); mix-blend-mode: multiply; opacity: .58;
}
html.sela body .v4-hero__stage::after { /* the copy side and the panel edge carry a little more depth */
	content: ''; position: absolute; inset: 0; z-index: -1; pointer-events: none;
	background:
		linear-gradient(270deg, rgba(6, 15, 33, .5) 0%, rgba(6, 15, 33, .18) 46%, rgba(6, 15, 33, 0) 68%),
		linear-gradient(0deg, rgba(6, 15, 33, .45) 0%, rgba(6, 15, 33, 0) 34%);
}
html.sela body .v4-hero__copy { display: flex; flex-direction: column; align-items: flex-start; }
html.sela body .v4-hero__copy > * { max-width: 800px; }
html.sela body .v4-hero__badge { color: var(--v4-gold-lt); margin-bottom: 22px; }
html.sela body .v4-hero__title { font-family: var(--v4-display); font-weight: 900; font-size: var(--v4-t-hero); line-height: 1.04; letter-spacing: -.012em; color: var(--v4-on-dark); filter: drop-shadow(0 2px 22px rgba(6, 15, 33, .32)); } /* on the block: a text-shadow would be clipped by each line's mask */
html.sela body .v4-line { display: block; overflow: hidden; padding-block: .02em .06em; margin-block: -.02em -.06em; } /* room for the line rising into view */
html.sela body .v4-line > span { display: block; }
html.sela body .v4-line.is-light { font-weight: 400; }
html.sela body .v4-hero__rule { color: rgba(228, 203, 134, .85); margin: 26px 0 18px; }
html.sela body .v4-hero__rot { font: 400 var(--v4-t-lead)/1.4 var(--v4-text); color: rgba(244, 242, 236, .84); margin-bottom: 10px; }
html.sela body .v4-rot { display: inline-block; position: relative; }
html.sela body .v4-rot b { display: inline-block; font-weight: 700; color: var(--v4-gold-lt); }
html.sela body .v4-hero__sub { max-width: 60ch; font: 400 var(--v4-t-lead)/1.7 var(--v4-text); color: rgba(244, 242, 236, .8); text-shadow: 0 1px 18px rgba(6, 15, 33, .4); }
html.sela body .v4-hero__sub strong { font-weight: 700; color: var(--v4-on-dark); }
html.sela body .v4-hero__acts { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; margin-top: 32px; }
html.sela body .v4-hero__trust { display: flex; flex-wrap: wrap; gap: 10px 28px; margin-top: 24px; font: 400 var(--v4-t-xs)/1.4 var(--v4-text); color: rgba(244, 242, 236, .72); }
html.sela body .v4-hero__trust li { display: inline-flex; align-items: center; gap: 10px; }
html.sela body .v4-hero__trust li::before { content: ''; width: 9px; height: 11px; flex: none; background: var(--v4-gold-lt); -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 12'%3E%3Cpath d='M.5 11.5V4.6L5 .7l4.5 3.9v6.9' fill='none' stroke='%23000'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 12'%3E%3Cpath d='M.5 11.5V4.6L5 .7l4.5 3.9v6.9' fill='none' stroke='%23000'/%3E%3C/svg%3E") center / contain no-repeat; }

/* the panel: the page's own limestone rising into the photo, its top cut as the gable */
html.sela body .v4-hero__dock { position: relative; z-index: 2; margin-top: calc(-1 * var(--dock)); }
html.sela body .v4-panel {
	--c: 28px;
	display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 0 48px;
	padding: 48px clamp(28px, 3.6vw, 56px) 44px; background: var(--v4-lime); color: var(--v4-ink);
	clip-path: polygon(var(--c) 0, calc(100% - var(--c)) 0, 100% var(--c), 100% 100%, 0 100%, 0 var(--c));
}
html.sela body .v4-panel__head { display: flex; align-items: baseline; gap: 10px 28px; flex-wrap: wrap; padding-bottom: 30px; }
html.sela body .v4-panel__head h2 { font: 900 clamp(1.5rem, 1.2rem + .9vw, 2rem)/1.1 var(--v4-display); color: var(--v4-ink); }
html.sela body .v4-panel__head p { font-size: var(--v4-t-small); color: var(--v4-body); max-width: 52ch; }
html.sela body .v4-panel__foot { grid-column: 2; grid-row: 1; display: flex; flex-direction: column; align-items: flex-end; gap: 10px; padding-bottom: 30px; }
html.sela body .v4-panel__note { font-size: .875rem; color: var(--v4-body); }
html.sela body .v4-panel__list { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); padding-top: 34px; border-top: 1px solid var(--v4-line); }
html.sela body .v4-panel__list li { position: relative; display: grid; align-content: start; gap: 8px; padding-inline: 32px; }
html.sela body .v4-panel__list li:first-child { padding-inline-start: 0; }
html.sela body .v4-panel__list li:last-child { padding-inline-end: 0; }
html.sela body .v4-panel__list li + li::before { content: ''; position: absolute; inset-block: 4px 4px; inset-inline-start: 0; width: 1px; background: var(--v4-line); }
html.sela body .v4-panel__list li + li::after { /* the gable mark in the middle of each divider */
	content: ''; position: absolute; top: 50%; inset-inline-start: -5px; width: 11px; height: 13px; transform: translateY(-50%);
	background: var(--v4-lime) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 13'%3E%3Cpath d='M1 12.5V5L5.5 1 10 5v7.5' fill='none' stroke='%23C9A44C'/%3E%3C/svg%3E") center / 11px 13px no-repeat;
}
html.sela body .v4-panel__icon { display: grid; width: 26px; height: 26px; margin-bottom: 10px; color: var(--v4-gold-ink); }
html.sela body .v4-panel__icon svg { width: 100%; height: 100%; stroke-width: 1.5; }
html.sela body .v4-panel__list b { font: 900 1.25rem/1.2 var(--v4-display); color: var(--v4-ink); }
html.sela body .v4-panel__list span:not(.v4-panel__icon) { font-size: var(--v4-t-small); line-height: 1.6; color: var(--v4-body); }

/* ---------- tablet ---------- */
@media (max-width: 1180px) {
	html.sela body .v4-hdr__nav { display: none; }
	html.sela body .v4-hdr__toggle { display: grid; place-items: center; }
	html.sela body .v4-hdr__bar { grid-template-columns: 1fr auto; }
	html.sela body .v4-panel { grid-template-columns: 1fr; }
	html.sela body .v4-panel__foot { grid-column: 1; grid-row: 3; align-items: flex-start; padding: 32px 0 0; border: 0; }
	html.sela body .v4-panel__list { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 34px; }
	html.sela body .v4-panel__list li { padding-inline: 0 28px; }
	html.sela body .v4-panel__list li:nth-child(even) { padding-inline: 32px 0; }
	html.sela body .v4-panel__list li:nth-child(odd)::before, html.sela body .v4-panel__list li:nth-child(odd)::after { display: none; }
}
/* ---------- phones ---------- */
@media (max-width: 767px) {
	html.sela body .v4 { --v4-hdr: 72px; }
	html.sela body .v4-hdr__bar, html.sela body .v4-hdr[data-state="solid"] .v4-hdr__bar { min-height: 72px; gap: 12px; }
	html.sela body .v4-hdr__phone, html.sela body .v4-hdr__cta { display: none; }
	html.sela body .v4-brand__word b { font-size: 1.625rem; }
	html.sela body .v4-hero { --dock: 56px; }
	html.sela body .v4-hero__stage { align-items: flex-start; min-height: 0; padding: calc(72px + 44px) 0 calc(var(--dock) + 64px); }
	html.sela body .v4-hero__media img { object-position: 50% 100%; transform-origin: 50% 100%; }
	html.sela body .v4-hero__stage::before { opacity: .5; }
	html.sela body .v4-hero__stage::after { background: linear-gradient(180deg, rgba(6, 15, 33, .55) 0%, rgba(6, 15, 33, .35) 48%, rgba(6, 15, 33, .62) 100%); }
	html.sela body .v4-hero__badge { margin-bottom: 22px; font-size: .9375rem; }
	html.sela body .v4-eyebrow { gap: 10px; }
	html.sela body .v4-eyebrow::before, html.sela body .v4-eyebrow::after { inline-size: 16px; } /* the long hero label stays on one line at 360px */
	html.sela body .v4-hero__title { line-height: 1.06; }
	html.sela body .v4-hero__rule { margin: 22px 0 16px; inline-size: 112px; }
	html.sela body .v4-hero__sub { line-height: 1.65; }
	html.sela body .v4-hero__acts { flex-direction: column; align-items: stretch; gap: 12px; margin-top: 32px; width: 100%; }
	html.sela body .v4-hero__acts .v4-btn { width: 100%; min-height: 54px; }
	html.sela body .v4-hero__trust { flex-direction: column; gap: 10px; margin-top: 26px; }
	html.sela body .v4-hero__dock { padding-inline: 12px; }
	html.sela body .v4-panel { --c: 20px; padding: 36px 22px 32px; }
	html.sela body .v4-panel__head { padding-bottom: 24px; }
	html.sela body .v4-panel__list { grid-template-columns: 1fr; row-gap: 0; padding-top: 4px; border-top: 1px solid var(--v4-line); }
	html.sela body .v4-panel__list li, html.sela body .v4-panel__list li:nth-child(even) { grid-template-columns: 26px 1fr; column-gap: 16px; row-gap: 4px; padding: 22px 0; border-bottom: 1px solid var(--v4-line); }
	html.sela body .v4-panel__list li::before, html.sela body .v4-panel__list li::after { display: none; }
	html.sela body .v4-panel__icon { grid-row: span 2; margin: 2px 0 0; width: 24px; height: 24px; }
	html.sela body .v4-panel__foot { padding-top: 26px; align-items: stretch; }
	html.sela body .v4-panel__foot .v4-btn { width: 100%; }
	html.sela body .v4-panel__note { text-align: center; }
}

/* ---------- the load sequence starts hidden only when JS will run it (set by the hero's inline script);
   if the script never runs, everything shows after 3s anyway ---------- */
@keyframes v4-show { to { opacity: 1; transform: none; } }
html.v4-load.sela body .v4-hero [data-v4-in], html.v4-load.sela body .v4-hero [data-v4-line], html.v4-load.sela body .v4-hero [data-v4-rule], html.v4-load.sela body .v4-hdr, html.v4-load.sela body .v4-hero [data-v4-panel] { opacity: 0; animation: v4-show 0s 3s forwards; }

@media (prefers-reduced-motion: reduce) {
	html.sela body .v4 *, html.sela body .v4 *::before, html.sela body .v4 *::after { transition-duration: 1ms !important; animation-duration: 1ms !important; }
}

/* =====================================================================================================================
   SECTIONS — the hero's system carried through the page. Planes alternate navy / limestone; every section head is the
   same (eyebrow on its rule, the title in the gable frame, the lead); repeated items are set identically, always.
   ===================================================================================================================== */
html.sela body .v4 { --v4-deep: #071229; --v4-space: clamp(88px, 3.5rem + 5.6vw, 152px); --v4-t-h2: clamp(2.125rem, 1.35rem + 2.5vw, 3.625rem); --v4-sticky: 124px; }
html.sela body .v4-sec { padding-block: var(--v4-space); }
html.sela body .v4-sec--navy { --fc: rgba(228, 203, 134, .5); background: var(--v4-ink); color: var(--v4-on-dark); }
html.sela body .v4-sec--lime { --fc: rgba(126, 97, 29, .45); background: var(--v4-lime); color: var(--v4-ink); }
html.sela body .v4-sec--paper { --fc: rgba(126, 97, 29, .45); background: var(--v4-paper); color: var(--v4-ink); }
html.sela body .v4-sec--navy .v4-eyebrow { color: var(--v4-gold-lt); }

/* ---------- section head ---------- */
html.sela body .v4-sec .v4-eyebrow { margin-bottom: 24px; }
html.sela body .v4-title {
	--k: 18px; --gap: 14px;
	position: relative; display: inline-block; max-width: 100%; padding: 22px 40px 30px;
	font: 900 var(--v4-t-h2)/1.1 var(--v4-display); letter-spacing: -.01em; color: inherit;
}
html.sela body .v4-title__l { display: block; }
html.sela body .v4-title__l.is-light { font-weight: 400; }
/* the gable frame: four straight edges, the two top corners at 45°, a gap in the bottom edge for the mark */
html.sela body .v4-title, html.sela body .v4-mount::before { /* a plain list: a pseudo-element inside :is() would void the rule */
	background:
		linear-gradient(var(--fc), var(--fc)) top / calc(100% - 2 * var(--k)) 1px no-repeat,
		linear-gradient(var(--fc), var(--fc)) left bottom / calc(50% - var(--gap)) 1px no-repeat,
		linear-gradient(var(--fc), var(--fc)) right bottom / calc(50% - var(--gap)) 1px no-repeat,
		linear-gradient(var(--fc), var(--fc)) left bottom / 1px calc(100% - var(--k)) no-repeat,
		linear-gradient(var(--fc), var(--fc)) right bottom / 1px calc(100% - var(--k)) no-repeat,
		linear-gradient(to bottom right, transparent calc(50% - .5px), var(--fc) 0 calc(50% + .5px), transparent 0) top left / var(--k) var(--k) no-repeat,
		linear-gradient(to bottom left, transparent calc(50% - .5px), var(--fc) 0 calc(50% + .5px), transparent 0) top right / var(--k) var(--k) no-repeat;
}
html.sela body .v4-title::after, html.sela body .v4-mount::after {
	content: ''; position: absolute; left: 50%; bottom: -6px; width: 11px; height: 13px; transform: translateX(-50%); pointer-events: none;
	background: var(--fc); -webkit-mask: var(--v4-gable) center / contain no-repeat; mask: var(--v4-gable) center / contain no-repeat;
}
html.sela body .v4 { --v4-gable: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 13'%3E%3Cpath d='M1 12.5V5L5.5 1 10 5v7.5' fill='none' stroke='%23000'/%3E%3C/svg%3E"); }
html.sela body .v4-lead { max-width: 54ch; margin-top: 30px; font-size: var(--v4-t-body); line-height: 1.72; color: var(--v4-body); }
html.sela body .v4-sec--navy .v4-lead { color: rgba(244, 242, 236, .76); }

/* ---------- shared pieces: the gable tile (icon or mark), the text link, the ruled grid ---------- */
html.sela body .v4-tile { position: relative; flex: none; display: grid; place-items: center; width: 56px; height: 64px; padding-top: 9px; color: var(--v4-gold-ink); }
html.sela body .v4-sec--navy .v4-tile, html.sela body .v4-cta--dark .v4-tile { color: var(--v4-gold-lt); }
html.sela body .v4-tile::before {
	content: ''; position: absolute; inset: 0; background: currentColor; opacity: .55; pointer-events: none;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 56 64'%3E%3Cpath d='M.5 63.5V18.2L28 .7l27.5 17.5v45.3z' fill='none' stroke='%23000'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
	        mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 56 64'%3E%3Cpath d='M.5 63.5V18.2L28 .7l27.5 17.5v45.3z' fill='none' stroke='%23000'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
}
html.sela body .v4-tile svg { width: 26px; height: 26px; stroke-width: 1.5; }
html.sela body .v4-tile--mark { font: 400 1.875rem/1 var(--v4-display); }

html.sela body .v4-more {
	display: inline-flex; align-items: center; gap: 10px; padding-bottom: 6px; font: 700 var(--v4-t-xs)/1.2 var(--v4-text); color: var(--v4-gold-ink);
	background: linear-gradient(currentColor, currentColor) 100% 100% / 28px 1px no-repeat; transition: background-size .35s var(--v4-ease), color var(--v4-fast) ease;
}
html.sela body .v4-more svg { width: 16px; height: 16px; transition: transform var(--v4-fast) var(--v4-ease); }
html.sela body :is(a:hover, a:focus-visible) > .v4-more, html.sela body a.v4-more:is(:hover, :focus-visible) { background-size: 100% 1px; }
html.sela body :is(a:hover, a:focus-visible) > .v4-more svg, html.sela body a.v4-more:is(:hover, :focus-visible) svg { transform: translateX(-4px); }
html.sela body .v4-more--strong { font-size: var(--v4-t-small); color: var(--v4-ink); }
html.sela body .v4-sec--navy .v4-more { color: var(--v4-gold-lt); }

/* a ruled grid of equal items: rows ruled on top, columns divided by hairlines with the gable mark at mid-height */
html.sela body .v4-grid { --cols: 3; display: grid; grid-template-columns: repeat(var(--cols), minmax(0, 1fr)); }
html.sela body .v4-grid--1 { --cols: 1; } html.sela body .v4-grid--2 { --cols: 2; }
html.sela body .v4-grid > * { position: relative; padding: 44px 40px 48px; border-top: 1px solid var(--line, var(--v4-line)); }
html.sela body .v4-sec--navy .v4-grid > * { --line: var(--v4-line-dk); }
html.sela body .v4-grid--3 > :nth-child(3n + 1), html.sela body .v4-grid--2 > :nth-child(2n + 1), html.sela body .v4-grid--1 > * { padding-inline-start: 0; }
html.sela body .v4-grid--3 > :nth-child(3n), html.sela body .v4-grid--2 > :nth-child(2n), html.sela body .v4-grid--1 > * { padding-inline-end: 0; }
html.sela body .v4-grid--3 > :not(:nth-child(3n + 1))::before, html.sela body .v4-grid--2 > :not(:nth-child(2n + 1))::before { content: ''; position: absolute; inset-block: 44px 48px; inset-inline-start: 0; width: 1px; background: var(--line, var(--v4-line)); }
html.sela body .v4-grid--3 > :not(:nth-child(3n + 1))::after, html.sela body .v4-grid--2 > :not(:nth-child(2n + 1))::after {
	content: ''; position: absolute; top: 50%; inset-inline-start: -5px; width: 11px; height: 13px; margin-top: -4px;
	background: var(--plane, var(--v4-lime)) var(--v4-gable-c) center / 11px 13px no-repeat;
}
html.sela body .v4 { --v4-gable-c: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 13'%3E%3Cpath d='M1 12.5V5L5.5 1 10 5v7.5' fill='none' stroke='%23C9A44C'/%3E%3C/svg%3E"); }
html.sela body .v4-sec--navy { --plane: var(--v4-ink); } html.sela body .v4-sec--paper { --plane: var(--v4-paper); }

/* ---------- split: a head that stays in view on the right, the content passing on the left ---------- */
html.sela body .v4-split { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(48px, 6vw, 112px); align-items: start; }
@media (min-width: 1025px) and (min-height: 760px) {
	html.sela body .v4-sticky { position: sticky; top: var(--v4-sticky); }
	html.sela body.admin-bar .v4-sticky { top: calc(var(--v4-sticky) + 32px); }
}

/* ---------- rights map ---------- */
html.sela body .v4-map { --row: 76px; background: var(--v4-lime); color: var(--v4-ink); padding-block: clamp(72px, 6vw, 120px) clamp(88px, 7vw, 136px); }
html.sela body .v4-map__in { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 3fr) minmax(0, 5fr); align-items: center; }
html.sela body .v4-map__label { max-width: 16ch; font: 900 clamp(1.75rem, 1.2rem + 1.5vw, 2.5rem)/1.18 var(--v4-display); }
html.sela body .v4-map__lines { width: 100%; height: calc(var(--n) * var(--row)); overflow: visible; }
html.sela body .v4-map__lines path { fill: none; stroke: rgba(201, 164, 76, .6); stroke-width: 1.25; transition: stroke var(--v4-base) ease, stroke-width var(--v4-base) ease; }
html.sela body .v4-map__lines path.is-hot { stroke: var(--v4-gold-ink); stroke-width: 2; }
html.sela body .v4-map__bodies li { display: flex; align-items: center; gap: 20px; height: var(--row); border-bottom: 1px solid var(--v4-line); cursor: default; outline-offset: -2px; }
html.sela body .v4-map__bodies li:first-child { border-top: 1px solid var(--v4-line); }
html.sela body .v4-node { width: 40px; height: 46px; }
html.sela body .v4-node { position: relative; flex: none; display: grid; place-items: center; padding-top: 7px; color: var(--v4-gold-ink); transition: color var(--v4-base) ease; }
html.sela body .v4-node::before { content: ''; position: absolute; inset: 0; background: var(--v4-paper); box-shadow: inset 0 0 0 1px rgba(126, 97, 29, .45); clip-path: polygon(50% 0, 100% 28%, 100% 100%, 0 100%, 0 28%); transition: background-color var(--v4-base) ease; }
html.sela body .v4-node svg { position: relative; width: 20px; height: 20px; stroke-width: 1.5; }
html.sela body .v4-map__name { font: 400 1.375rem/1.2 var(--v4-display); }
html.sela body .v4-map__bodies li.is-hot .v4-node { color: var(--v4-on-dark); }
html.sela body .v4-map__bodies li.is-hot .v4-node::before { background: var(--v4-navy); }

/* ---------- pain: quotes ---------- */
html.sela body .v4-quotes { counter-reset: q; }
html.sela body .v4-quote { display: grid; grid-template-columns: 56px minmax(0, 1fr); column-gap: 32px; row-gap: 12px; padding-block: 40px; border-top: 1px solid var(--v4-line-dk); }
html.sela body .v4-quote:last-child { border-bottom: 1px solid var(--v4-line-dk); }
html.sela body .v4-quote .v4-tile { grid-row: span 2; }
html.sela body .v4-quote h3 { align-self: end; font: 900 1.625rem/1.25 var(--v4-display); color: var(--v4-on-dark); }
html.sela body .v4-quote p { max-width: 54ch; font-size: 1.0625rem; line-height: 1.72; color: rgba(244, 242, 236, .74); }

/* the answer: a limestone panel with the gable-cut top; the photo in a mount with the same frame */
html.sela body .v4-answer { --c: 28px; --fc: rgba(244, 242, 236, .75); display: grid; grid-template-columns: minmax(0, 1fr); margin-top: clamp(72px, 7vw, 120px); background: var(--v4-lime); color: var(--v4-ink); clip-path: polygon(var(--c) 0, calc(100% - var(--c)) 0, 100% var(--c), 100% 100%, 0 100%, 0 var(--c)); }
html.sela body .v4-answer.has-img { grid-template-columns: minmax(0, 6fr) minmax(0, 5fr); }
html.sela body .v4-answer__text { display: flex; flex-direction: column; justify-content: center; gap: 22px; padding: clamp(40px, 5vw, 80px); }
html.sela body .v4-answer__text .v4-rule { color: var(--v4-gold-ink); }
html.sela body .v4-answer h3 { font: 900 clamp(1.75rem, 1.3rem + 1.4vw, 2.5rem)/1.15 var(--v4-display); }
html.sela body .v4-answer p { max-width: 56ch; font-size: var(--v4-t-body); line-height: 1.75; color: var(--v4-body); }
html.sela body .v4-mount { --k: 16px; --gap: 13px; position: relative; margin: 0; min-height: 100%; }
html.sela body .v4-mount img { display: block; width: 100%; height: 100%; min-height: 340px; object-fit: cover; }
html.sela body .v4-mount::before { content: ''; position: absolute; inset: 22px; z-index: 1; pointer-events: none; }
html.sela body .v4-mount::after { bottom: 16px; z-index: 1; }

/* ---------- services: index + plate ---------- */
html.sela body .v4-plate { position: relative; margin-top: 48px; height: clamp(260px, 21vw, 312px); background: var(--v4-ink); color: var(--v4-on-dark); overflow: hidden; }
html.sela body .v4-plate__gable { position: absolute; inset: 22px 18% 0; width: 64%; height: calc(100% - 22px); }
html.sela body .v4-plate__gable path { fill: none; stroke: rgba(228, 203, 134, .42); stroke-width: 1; }
html.sela body .v4-plate__mark { position: absolute; inset: 0; display: grid; place-content: center; justify-items: center; gap: 18px; padding-top: 34px; text-align: center; opacity: 0; transition: opacity var(--v4-base) ease; }
html.sela body .v4-plate__mark.is-on { opacity: 1; }
html.sela body .v4-plate__glyph { display: grid; width: 64px; height: 64px; color: var(--v4-gold-lt); }
html.sela body .v4-plate__glyph svg { width: 100%; height: 100%; stroke-width: 1.1; }
html.sela body .v4-plate__caption { max-width: 16ch; font: 400 1.375rem/1.25 var(--v4-display); }
html.sela body .v4-plate__count { position: absolute; inset-inline-start: 24px; bottom: 20px; font: 400 .875rem/1 var(--v4-display); color: rgba(244, 242, 236, .6); }
html.sela body .v4-plate__count b { font-weight: 900; font-size: 1.25rem; color: var(--v4-on-dark); }

html.sela body .v4-index { border-bottom: 1px solid var(--v4-line); }
html.sela body .v4-index__row { position: relative; display: grid; grid-template-columns: 44px minmax(0, 5fr) minmax(0, 6fr) auto; align-items: center; column-gap: 28px; padding-block: 32px; border-top: 1px solid var(--v4-line); }
html.sela body .v4-index__row::before { content: ''; position: absolute; inset-inline: 0; top: -1px; height: 1px; background: var(--v4-gold); transform: scaleX(0); transform-origin: right; transition: transform .5s var(--v4-ease); }
html.sela body .v4-index__row.is-on::before, html.sela body .v4-index__row:hover::before, html.sela body .v4-index__row:focus-visible::before { transform: scaleX(1); }
html.sela body .v4-index__n { align-self: start; padding-top: 6px; font: 400 1rem/1 var(--v4-display); color: var(--v4-gold-ink); }
html.sela body .v4-index__row h3 { font: 900 1.5rem/1.2 var(--v4-display); color: var(--v4-ink); }
html.sela body .v4-index__row p { font-size: var(--v4-t-small); line-height: 1.65; color: var(--v4-body); }

/* ---------- why ---------- */
html.sela body .v4-why__head { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 24px clamp(40px, 5vw, 96px); align-items: end; margin-bottom: clamp(56px, 5vw, 88px); }
html.sela body .v4-why__head .v4-eyebrow { grid-column: 1 / -1; margin-bottom: 0; }
html.sela body .v4-why__head .v4-lead { margin-top: 0; padding-bottom: 30px; }
html.sela body .v4-reason { display: grid; align-content: start; gap: 14px; }
html.sela body .v4-reason .v4-tile { margin-bottom: 12px; }
html.sela body .v4-reason h3 { font: 900 1.375rem/1.25 var(--v4-display); color: inherit; }
html.sela body .v4-reason p { font-size: var(--v4-t-small); line-height: 1.72; color: var(--v4-body); }
html.sela body .v4-sec--navy .v4-reason p { color: rgba(244, 242, 236, .74); }

/* ---------- CTA: tools (gold slab) ---------- */
html.sela body .v4-cta { position: relative; isolation: isolate; padding-block: var(--v4-space); }
html.sela body .v4-cta--gold { --fc: transparent; background: var(--v4-lime); color: var(--v4-ink); }
html.sela body .v4-cta--gold .v4-cta__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 40px clamp(40px, 5vw, 88px); align-items: start; }
html.sela body .v4-cta--gold .v4-cta__main { --c: 28px; grid-row: span 2; padding: clamp(40px, 4.4vw, 68px); background: var(--v4-gold); clip-path: polygon(var(--c) 0, calc(100% - var(--c)) 0, 100% var(--c), 100% 100%, 0 100%, 0 var(--c)); }
html.sela body .v4-cta--gold .v4-eyebrow { color: var(--v4-ink); margin-bottom: 22px; }
html.sela body .v4-cta--gold .v4-title { padding: 0; background: none; }
html.sela body .v4-cta--gold .v4-title::after { display: none; }
html.sela body .v4-cta__lead { margin-top: 26px; font-size: var(--v4-t-body); line-height: 1.72; }
html.sela body .v4-cta--gold .v4-cta__lead { color: rgba(11, 27, 56, .82); }
html.sela body .v4-tools { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--v4-line); border-inline-start: 1px solid var(--v4-line); }
html.sela body .v4-tool { display: grid; grid-template-columns: 56px minmax(0, 1fr) auto; align-items: center; gap: 22px; min-height: 128px; padding: 24px 28px; background: var(--v4-paper); border-bottom: 1px solid var(--v4-line); border-inline-end: 1px solid var(--v4-line); transition: background-color var(--v4-fast) ease; }
html.sela body .v4-tool:hover, html.sela body .v4-tool:focus-visible { background: #fff; }
html.sela body .v4-tool__name { font: 900 1.25rem/1.25 var(--v4-display); }
html.sela body .v4-tool > svg { width: 18px; height: 18px; color: var(--v4-gold-ink); transition: transform var(--v4-fast) var(--v4-ease); }
html.sela body .v4-tool:hover > svg, html.sela body .v4-tool:focus-visible > svg { transform: translateX(-4px); }
html.sela body .v4-cta--gold .v4-cta__side { display: grid; gap: 22px; justify-items: start; }
html.sela body .v4-points { display: flex; flex-wrap: wrap; gap: 10px 28px; font-size: var(--v4-t-xs); }
html.sela body .v4-points li { display: inline-flex; align-items: center; gap: 10px; }
html.sela body .v4-points li::before { content: ''; flex: none; width: 9px; height: 11px; background: currentColor; opacity: .8; -webkit-mask: var(--v4-gable) center / contain no-repeat; mask: var(--v4-gable) center / contain no-repeat; }
html.sela body .v4-cta--gold .v4-points li::before { background: var(--v4-gold-ink); opacity: 1; }
html.sela body .v4-cta__acts { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 28px; }
html.sela body .v4-cta__note { font-size: .875rem; color: var(--v4-body); }

/* ---------- CTA: the conversation (photograph toned navy), centred ---------- */
html.sela body .v4-cta--dark { --fc: rgba(228, 203, 134, .55); background: var(--v4-ink); color: var(--v4-on-dark); overflow: hidden; padding-block: clamp(104px, 9vw, 168px); }
html.sela body .v4-cta--light { --fc: rgba(126, 97, 29, .45); background: var(--v4-lime); color: var(--v4-ink); }
html.sela body .v4-cta__media { position: absolute; inset: 0; z-index: -2; }
html.sela body .v4-cta__media img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 58%; }
html.sela body .v4-cta--dark::before { content: ''; position: absolute; inset: 0; z-index: -1; background: var(--v4-navy); mix-blend-mode: multiply; opacity: .66; pointer-events: none; }
html.sela body .v4-cta--dark::after { content: ''; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: radial-gradient(ellipse at 50% 50%, rgba(6, 15, 33, .35) 0%, rgba(6, 15, 33, .55) 100%); }
html.sela body :is(.v4-cta--dark, .v4-cta--light) .v4-cta__grid { display: flex; flex-direction: column; align-items: center; text-align: center; }
html.sela body :is(.v4-cta--dark, .v4-cta--light) .v4-cta__main { display: flex; flex-direction: column; align-items: center; }
html.sela body .v4-cta--dark .v4-eyebrow { color: var(--v4-gold-lt); margin-bottom: 26px; }
html.sela body :is(.v4-cta--dark, .v4-cta--light) .v4-cta__title { font-size: clamp(2.75rem, 1.5rem + 3.8vw, 5rem); line-height: 1.04; padding: 26px 56px 34px; }
html.sela body :is(.v4-cta--dark, .v4-cta--light) .v4-cta__lead { max-width: 56ch; margin-top: 32px; }
html.sela body .v4-cta--dark .v4-cta__lead { color: rgba(244, 242, 236, .8); }
html.sela body :is(.v4-cta--dark, .v4-cta--light) .v4-cta__side { display: grid; justify-items: center; gap: 30px; margin-top: 34px; }
html.sela body .v4-cta--dark .v4-points { color: rgba(244, 242, 236, .8); justify-content: center; }
html.sela body .v4-cta--dark .v4-points li::before { background: var(--v4-gold-lt); }
html.sela body .v4-cta--dark .v4-cta__acts { justify-content: center; }
html.sela body .v4-cta--dark .v4-cta__note { color: rgba(244, 242, 236, .6); }

/* ---------- articles ---------- */
html.sela body .v4-posts__head { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px 48px; flex-wrap: wrap; margin-bottom: clamp(48px, 4.4vw, 72px); }
html.sela body .v4-post > a { display: grid; align-content: start; gap: 14px; height: 100%; }
html.sela body .v4-post__cat { display: inline-flex; align-items: center; gap: 12px; font: 700 .875rem/1.2 var(--v4-text); color: var(--v4-gold-ink); }
html.sela body .v4-post__cat::before { content: ''; width: 24px; height: 1px; background: currentColor; }
html.sela body .v4-post h3 { font: 900 1.5rem/1.25 var(--v4-display); color: var(--v4-ink); transition: color var(--v4-fast) ease; }
html.sela body .v4-post > a:hover h3, html.sela body .v4-post > a:focus-visible h3 { color: var(--v4-navy-2); }
html.sela body .v4-post p { font-size: var(--v4-t-small); line-height: 1.7; color: var(--v4-body); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
html.sela body .v4-post__meta { display: flex; gap: 18px; font-size: .875rem; color: color-mix(in srgb, var(--v4-body) 82%, transparent); }
html.sela body .v4-post .v4-more { justify-self: start; margin-top: 8px; }

/* ---------- floating actions ---------- */
html.sela body .v4-fab { position: fixed; z-index: 80; left: 24px; bottom: 24px; display: grid; gap: 8px; opacity: 0; transform: translateY(16px); pointer-events: none; transition: opacity var(--v4-base) linear, transform var(--v4-base) var(--v4-ease); }
html.sela body .v4-fab.is-on { opacity: 1; transform: none; pointer-events: auto; }
html.sela body .v4-fab.is-on.is-off { opacity: 0; transform: translateY(16px); pointer-events: none; }
html.sela body .v4-fab__btn { --c: 9px; display: grid; place-items: center; width: 52px; height: 52px; padding: 0; border: 0; cursor: pointer; color: var(--v4-gold-lt); background: var(--v4-navy); clip-path: polygon(var(--c) 0, calc(100% - var(--c)) 0, 100% var(--c), 100% 100%, 0 100%, 0 var(--c)); transition: background-color var(--v4-fast) ease, color var(--v4-fast) ease; }
html.sela body .v4-fab__btn:hover, html.sela body .v4-fab__btn:focus-visible { background: var(--v4-gold); color: var(--v4-ink); }
html.sela body .v4-fab__btn svg { width: 22px; height: 22px; }
html.sela body .v4-fab__btn:focus-visible { outline: none; box-shadow: inset 0 0 0 2px var(--v4-ink), inset 0 0 0 4px var(--v4-gold-lt); }

/* ---------- footer ---------- */
html.sela body .v4-ftr { background: var(--v4-deep); color: var(--v4-on-dark); padding-top: clamp(72px, 6vw, 112px); border-top: 1px solid rgba(228, 203, 134, .18); }
html.sela body .v4-ftr__top { display: grid; grid-template-columns: minmax(0, 4fr) repeat(2, minmax(0, 2fr)) minmax(0, 4fr); gap: 40px clamp(32px, 4vw, 72px); }
html.sela body .v4-ftr .v4-brand { --fg: var(--v4-on-dark); --sub: var(--v4-gold-lt); margin-bottom: 24px; }
html.sela body .v4-ftr .v4-brand__mark-dark { opacity: 1; }
html.sela body .v4-ftr__about p { max-width: 40ch; font-size: var(--v4-t-small); line-height: 1.75; color: rgba(244, 242, 236, .7); }
html.sela body .v4-ftr :is(.v4-ftr__col, .v4-ftr__contact) h2 { margin-bottom: 20px; font: 700 var(--v4-t-xs)/1.2 var(--v4-text); letter-spacing: .02em; color: var(--v4-gold-lt); }
html.sela body .v4-ftr__col summary { list-style: none; pointer-events: none; }
html.sela body .v4-ftr__col summary::-webkit-details-marker { display: none; }
html.sela body .v4-ftr__col ul { display: grid; gap: 12px; }
html.sela body .v4-ftr__col a { font-size: var(--v4-t-small); color: rgba(244, 242, 236, .78); transition: color var(--v4-fast) ease; }
html.sela body .v4-ftr__col a:hover, html.sela body .v4-ftr__col a:focus-visible { color: var(--v4-on-dark); }
html.sela body .v4-ftr__contact { display: grid; justify-items: start; align-content: start; gap: 8px; font-size: var(--v4-t-xs); color: rgba(244, 242, 236, .7); }
html.sela body .v4-ftr__phone { margin-bottom: 4px; font: 900 clamp(1.75rem, 1.3rem + 1.2vw, 2.375rem)/1.1 var(--v4-display); letter-spacing: .01em; color: var(--v4-on-dark); }
html.sela body .v4-ftr__acts { display: flex; gap: 10px; margin-top: 18px; }
html.sela body .v4-ftr__wa { width: 44px; padding: 0; }
html.sela body .v4-ftr__legal { margin-top: clamp(48px, 4vw, 72px); padding-top: 32px; border-top: 1px solid var(--v4-line-dk); padding-inline-end: max(0px, calc(100% - 130ch)); font-size: .8125rem; line-height: 1.75; color: rgba(244, 242, 236, .58); }
html.sela body .v4-ftr__bottom { display: flex; justify-content: space-between; gap: 12px 32px; flex-wrap: wrap; margin-top: 32px; padding-block: 24px 32px; border-top: 1px solid var(--v4-line-dk); font-size: .8125rem; color: rgba(244, 242, 236, .58); }
html.sela body .v4-ftr__links { display: flex; gap: 24px; flex-wrap: wrap; }
html.sela body .v4-ftr__links a:hover { color: var(--v4-on-dark); }

/* ---------- scroll reveals: soft, once; only when variant.js runs them (not in the editor, not with reduced motion) ---------- */
html.v4-anim.sela body .v4 [data-v4-reveal]:not(.is-in), html.v4-anim.sela body .v4[data-v4-reveal]:not(.is-in) { opacity: 0; transform: translateY(14px); }
html.v4-anim.sela body .v4 [data-v4-reveal] { transition: opacity .9s ease, transform .9s var(--v4-ease); }
html.v4-anim.sela body .v4-map:not(.is-in) .v4-map__lines path { stroke-dasharray: 1; stroke-dashoffset: 1; }
html.v4-anim.sela body .v4-map .v4-map__lines path { stroke-dasharray: 1; transition: stroke-dashoffset 1.6s cubic-bezier(.65, 0, .35, 1), stroke var(--v4-base) ease, stroke-width var(--v4-base) ease; }

/* ---------- sections: tablet ---------- */
@media (max-width: 1180px) {
	html.sela body .v4-index__row { grid-template-columns: 40px minmax(0, 1fr) auto; row-gap: 8px; }
	html.sela body .v4-index__row p { grid-column: 2; grid-row: 2; }
	html.sela body .v4-index__row .v4-more { grid-column: 3; grid-row: 1 / span 2; }
	html.sela body .v4-grid--3 { --cols: 2; }
	html.sela body .v4-grid--3 > * { padding-inline: 32px !important; }
	html.sela body .v4-grid--3 > :nth-child(2n + 1) { padding-inline-start: 0 !important; }
	html.sela body .v4-grid--3 > :nth-child(2n) { padding-inline-end: 0 !important; }
	html.sela body .v4-grid--3 > :not(:nth-child(3n + 1))::before, html.sela body .v4-grid--3 > :not(:nth-child(3n + 1))::after { display: none; }
	html.sela body .v4-grid--3 > :nth-child(2n)::before { content: ''; display: block; position: absolute; inset-block: 44px 48px; inset-inline-start: 0; width: 1px; background: var(--line, var(--v4-line)); }
	html.sela body .v4-grid--3 > :nth-child(2n)::after { content: ''; display: block; position: absolute; top: 50%; inset-inline-start: -5px; width: 11px; height: 13px; margin-top: -4px; background: var(--plane, var(--v4-lime)) var(--v4-gable-c) center / 11px 13px no-repeat; }
	html.sela body .v4-cta--gold .v4-cta__grid { grid-template-columns: 1fr; }
	html.sela body .v4-cta--gold .v4-cta__main { grid-row: auto; }
	html.sela body .v4-ftr__top { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 1024px) {
	html.sela body .v4-split, html.sela body .v4-why__head { grid-template-columns: 1fr; }
	html.sela body .v4-map__in { grid-template-columns: minmax(0, 4fr) minmax(0, 2fr) minmax(0, 5fr); }
	html.sela body .v4-answer.has-img { grid-template-columns: 1fr; }
	html.sela body .v4-mount img { min-height: 0; aspect-ratio: 16 / 10; }
	html.sela body .v4-plate { display: none; } /* without the sticky column the plate would only repeat the list */
}
/* ---------- sections: phones ---------- */
@media (max-width: 767px) {
	html.sela body .v4-title { --k: 14px; padding: 16px 24px 22px; }
	html.sela body .v4-lead { margin-top: 24px; font-size: 1.0625rem; }
	html.sela body .v4-map__in { grid-template-columns: 1fr; }
	html.sela body .v4-map__label { margin-bottom: 32px; }
	html.sela body .v4-map__lines { display: none; }
	html.sela body .v4-map__bodies { position: relative; padding-inline-start: 24px; }
	html.sela body .v4-map__bodies::before { content: ''; position: absolute; inset-block: 0; inset-inline-start: 0; width: 1px; background: var(--v4-gold); }
	html.sela body .v4-map__bodies li { height: 68px; }
	html.sela body .v4-map__name { font-size: 1.25rem; }
	html.sela body .v4-quote { grid-template-columns: 48px minmax(0, 1fr); column-gap: 20px; padding-block: 32px; }
	html.sela body .v4-quote .v4-tile, html.sela body .v4-tool .v4-tile { width: 48px; height: 55px; padding-top: 8px; }
	html.sela body .v4-tile--mark { font-size: 1.625rem; }
	html.sela body .v4-quote h3 { font-size: 1.375rem; }
	html.sela body .v4-quote p { font-size: var(--v4-t-small); }
	html.sela body .v4-answer { --c: 20px; }
	html.sela body .v4-answer__text { padding: 40px 24px; }
	html.sela body .v4-index__row { grid-template-columns: 32px minmax(0, 1fr); padding-block: 26px; }
	html.sela body .v4-index__row h3 { font-size: 1.3125rem; }
	html.sela body .v4-index__row .v4-more { grid-column: 2; grid-row: 3; justify-self: start; margin-top: 6px; }
	html.sela body .v4-grid, html.sela body .v4-grid--3 { --cols: 1; }
	html.sela body .v4-grid > *, html.sela body .v4-grid--3 > * { padding: 32px 0 36px !important; }
	html.sela body .v4-grid > *::before, html.sela body .v4-grid > *::after { display: none !important; }
	html.sela body .v4-tools { grid-template-columns: 1fr; }
	html.sela body .v4-tool { min-height: 96px; padding: 20px; gap: 18px; grid-template-columns: 48px minmax(0, 1fr) auto; }
	html.sela body .v4-cta--gold .v4-cta__main { --c: 20px; padding: 36px 24px; }
	html.sela body .v4-cta__acts { width: 100%; }
	html.sela body .v4-cta__acts .v4-btn { width: 100%; }
	html.sela body :is(.v4-cta--dark, .v4-cta--light) .v4-cta__title { padding: 18px 26px 26px; }
	html.sela body .v4-cta--dark .v4-points { flex-direction: column; align-items: center; }
	html.sela body .v4-fab { left: 16px; bottom: 16px; }
	html.sela body .v4-fab__btn { width: 48px; height: 48px; }
	html.sela body .v4-ftr__top { grid-template-columns: 1fr; gap: 0; }
	html.sela body .v4-ftr__about { padding-bottom: 36px; }
	html.sela body .v4-ftr__contact { order: -1; padding-bottom: 36px; }
	html.sela body .v4-ftr__col { border-top: 1px solid var(--v4-line-dk); }
	html.sela body .v4-ftr__col:last-of-type { border-bottom: 1px solid var(--v4-line-dk); margin-bottom: 8px; }
	html.sela body .v4-ftr__col summary { pointer-events: auto; cursor: pointer; display: flex; align-items: center; justify-content: space-between; min-height: 56px; }
	html.sela body .v4-ftr__col summary h2 { margin: 0; }
	html.sela body .v4-ftr__col summary::after { content: '+'; font: 400 1.375rem/1 var(--v4-text); color: var(--v4-gold-lt); }
	html.sela body .v4-ftr__col[open] summary::after { content: '−'; }
	html.sela body .v4-ftr__col ul { padding-bottom: 22px; }
}

/* =====================================================================================================================
   INNER PAGES — the same system: a navy opening under the transparent header, the same heads, tiles, rules and equal items
   ===================================================================================================================== */
html.sela body .v4-sec__head { margin-bottom: clamp(48px, 4.4vw, 80px); }
html.sela body .v4-sec__head .v4-lead { margin-top: 26px; }

/* ---------- page opening ---------- */
html.sela body .v4-phero { position: relative; isolation: isolate; overflow: hidden; display: flex; align-items: flex-end; min-height: clamp(440px, 56vh, 600px); padding: calc(var(--v4-hdr) + clamp(56px, 6vw, 104px)) 0 clamp(64px, 6vw, 104px); background: var(--v4-ink); color: var(--v4-on-dark); }
html.sela body .v4-phero--short { min-height: 0; }
html.sela body .v4-phero--full { min-height: 100svh; align-items: center; }
html.sela body .v4-phero__gable { position: absolute; z-index: -1; bottom: 0; inset-inline-end: max(var(--v4-gutter), calc((100% - var(--v4-maxw)) / 2)); width: clamp(200px, 22vw, 340px); height: 82%; overflow: visible; }
html.sela body .v4-phero__gable path { fill: none; stroke: rgba(228, 203, 134, .26); stroke-width: 1; }
html.sela body .v4-phero__in { display: flex; flex-direction: column; align-items: flex-start; }
html.sela body .v4-crumbs { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 28px; font-size: .875rem; color: rgba(244, 242, 236, .6); }
html.sela body .v4-crumbs a { color: rgba(244, 242, 236, .82); transition: color var(--v4-fast) ease; }
html.sela body .v4-crumbs a:hover { color: var(--v4-gold-lt); }
html.sela body .v4-phero .v4-eyebrow, html.sela body .v4-contact .v4-eyebrow { color: var(--v4-gold-lt); margin-bottom: 22px; }
html.sela body .v4-phero__title { max-width: 20ch; font: 900 clamp(2.5rem, 1.3rem + 3.6vw, 4.625rem)/1.06 var(--v4-display); letter-spacing: -.01em; color: var(--v4-on-dark); }
html.sela body .v4-phero__title .v4-title__l.is-light { font-weight: 400; }
html.sela body .v4-phero .v4-rule, html.sela body .v4-contact .v4-rule { color: rgba(228, 203, 134, .85); margin: 30px 0 22px; }
html.sela body .v4-phero__lead { max-width: 60ch; font-size: var(--v4-t-lead); line-height: 1.7; color: rgba(244, 242, 236, .8); }
html.sela body .v4-phero__title + .v4-phero__lead { margin-top: 26px; }
html.sela body .v4-phero__acts { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 40px; }

/* ---------- forms (contact, the wizard, the calculators): one field style ---------- */
html.sela body .v4 :is(.input, .select, .textarea) { width: 100%; min-height: 52px; padding: 0 16px; font: 400 1rem/1.4 var(--v4-text); color: var(--v4-ink); background: #fff; border: 1px solid rgba(11, 27, 56, .22); border-radius: 0; box-shadow: none; transition: border-color var(--v4-fast) ease, box-shadow var(--v4-fast) ease; }
html.sela body .v4 .textarea { min-height: 128px; padding-block: 14px; resize: vertical; }
html.sela body .v4 :is(.input, .select, .textarea):focus { outline: none; border-color: var(--v4-navy); box-shadow: 0 0 0 3px rgba(201, 164, 76, .38); }
html.sela body .v4 .field { display: grid; gap: 8px; }
html.sela body .v4 .field > label { font: 700 .875rem/1.3 var(--v4-text); color: var(--v4-ink); }
html.sela body .v4 .req { color: var(--v4-gold-ink); }
html.sela body .v4 .form-error { font-size: .8125rem; color: #A3261B; }
html.sela body .v4 .row2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
html.sela body .v4 .form-grid { display: grid; gap: 18px; }
html.sela body .v4 .consent { display: flex; align-items: flex-start; gap: 12px; font-size: .875rem; line-height: 1.6; color: var(--v4-body); }
html.sela body .v4 .consent input { width: 18px; height: 18px; margin-top: 2px; accent-color: var(--v4-navy); flex: none; }
html.sela body .v4 .consent a { color: var(--v4-gold-ink); text-decoration: underline; text-underline-offset: 3px; }
html.sela body .v4 .disclaimer-sm { font-size: .8125rem; line-height: 1.6; color: var(--v4-body); }
html.sela body .v4-btn--block { width: 100%; }
html.sela body .v4 .form-success { text-align: center; }
html.sela body .v4 .form-success .v4-tile { margin: 0 auto 18px; }
html.sela body .v4 .form-success h3 { font: 900 1.75rem/1.2 var(--v4-display); margin-bottom: 10px; }
html.sela body .v4 .form-success p { color: var(--v4-body); margin-bottom: 24px; }

/* ---------- chips (archive filters, document kinds) ---------- */
html.sela body .v4 .chip { --c: 7px; display: inline-flex; align-items: center; gap: 8px; min-height: 42px; padding: 0 16px; font: 700 .9375rem/1 var(--v4-text); color: var(--v4-ink); background: transparent; border: 0; box-shadow: inset 0 0 0 1px rgba(11, 27, 56, .2); border-radius: 0; cursor: pointer; clip-path: polygon(var(--c) 0, calc(100% - var(--c)) 0, 100% var(--c), 100% 100%, 0 100%, 0 var(--c)); transition: background-color var(--v4-fast) ease, color var(--v4-fast) ease; }
html.sela body .v4 .chip span { font-weight: 400; color: var(--v4-gold-ink); }
html.sela body .v4 .chip:hover { background: rgba(11, 27, 56, .05); }
html.sela body .v4 .chip.is-on { background: var(--v4-navy); color: var(--v4-on-dark); box-shadow: none; }
html.sela body .v4 .chip.is-on span { color: var(--v4-gold-lt); }

/* ---------- pillars ---------- */
html.sela body .v4-pillar + .v4-pillar { margin-top: clamp(64px, 6vw, 104px); padding-top: clamp(64px, 6vw, 104px); border-top: 1px solid var(--v4-line); }
html.sela body .v4-pillar__head { display: grid; gap: 18px; justify-items: start; }
html.sela body .v4-pillar__head h3 { font: 900 clamp(1.75rem, 1.35rem + 1.1vw, 2.375rem)/1.15 var(--v4-display); }
html.sela body .v4-pillar__head p { max-width: 46ch; font-size: var(--v4-t-body); line-height: 1.72; color: var(--v4-body); }
html.sela body .v4-area { display: grid; align-content: start; gap: 14px; }
html.sela body .v4-area .v4-tile { margin-bottom: 10px; }
html.sela body .v4-area h4 { font: 900 1.375rem/1.25 var(--v4-display); }
html.sela body .v4-area p { font-size: var(--v4-t-small); line-height: 1.7; color: var(--v4-body); }
html.sela body .v4-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 6px; }
html.sela body .v4-tags li { padding: 5px 10px; font-size: .8125rem; line-height: 1.3; color: var(--v4-gold-ink); box-shadow: inset 0 0 0 1px rgba(126, 97, 29, .35); }

/* ---------- process: a gold rail, a gable node per step ---------- */
html.sela body .v4-rail { position: relative; padding-inline-start: 88px; }
html.sela body .v4-rail::before { content: ''; position: absolute; inset-block: 32px 32px; inset-inline-start: 27px; width: 1px; background: var(--v4-line); }
html.sela body .v4 .v4-rail__fill { position: absolute; inset-block: 32px 32px; inset-inline-start: 27px; width: 1px; height: auto; background: var(--v4-gold); transform-origin: top; transform: scaleY(1); }
html.sela body .v4 .tl-item { opacity: 1; transform: none; } /* the site script marks it .in; nothing waits on that here */
html.sela body .v4-step { position: relative; display: grid; gap: 10px; padding-bottom: 56px; }
html.sela body .v4-step:last-child { padding-bottom: 0; }
html.sela body .v4-step__n { position: absolute; top: 0; inset-inline-start: -88px; width: 56px; height: 64px; padding-top: 10px; font: 400 1.375rem/1 var(--v4-display); }
html.sela body .v4-sec--paper .v4-node::before { background: var(--v4-paper); }
html.sela body .v4-step h4 { padding-top: 8px; font: 900 1.5rem/1.25 var(--v4-display); }
html.sela body .v4-step p { max-width: 58ch; font-size: var(--v4-t-small); line-height: 1.72; color: var(--v4-body); }
html.sela body .v4-step__tag { justify-self: start; display: inline-flex; align-items: center; gap: 10px; margin-top: 4px; font: 700 .8125rem/1.2 var(--v4-text); color: var(--v4-gold-ink); }
html.sela body .v4-step__tag::before { content: ''; width: 20px; height: 1px; background: currentColor; }

/* ---------- pricing: equal plans, rows aligned across them (subgrid) ---------- */
html.sela body .v4-plans { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); grid-template-rows: repeat(10, auto); border-top: 1px solid var(--v4-line); }
html.sela body .v4-plan { --c: 24px; display: grid; grid-row: span 10; grid-template-rows: subgrid; row-gap: 12px; align-content: start; padding: 40px clamp(24px, 2.6vw, 40px) 44px; }
html.sela body .v4-plan + .v4-plan { border-inline-start: 1px solid var(--v4-line); }
html.sela body .v4-plan.is-featured { background: var(--v4-ink); color: var(--v4-on-dark); clip-path: polygon(var(--c) 0, calc(100% - var(--c)) 0, 100% var(--c), 100% 100%, 0 100%, 0 var(--c)); border-color: transparent; }
html.sela body .v4-plan.is-featured + .v4-plan { border-color: transparent; }
html.sela body .v4-plan__flag { min-height: 1.2em; font: 700 .8125rem/1.2 var(--v4-text); letter-spacing: .02em; color: var(--v4-gold-lt); }
html.sela body .v4-plan__step { font: 400 .9375rem/1.2 var(--v4-display); color: var(--v4-gold-ink); }
html.sela body .v4-plan.is-featured .v4-plan__step { color: var(--v4-gold-lt); }
html.sela body .v4-plan h3 { font: 900 1.75rem/1.2 var(--v4-display); }
html.sela body .v4-plan__desc, html.sela body .v4-plan__note, html.sela body .v4-plan__foot { font-size: var(--v4-t-small); line-height: 1.65; color: var(--v4-body); }
html.sela body .v4-plan__note, html.sela body .v4-plan__foot { font-size: .875rem; }
html.sela body .v4-plan.is-featured :is(.v4-plan__desc, .v4-plan__note, .v4-plan__foot, .v4-plan__list) { color: rgba(244, 242, 236, .78); }
html.sela body .v4-plan__price { display: flex; align-items: baseline; gap: 6px; margin-top: 10px; padding-top: 22px; border-top: 1px solid var(--v4-line); }
html.sela body .v4-plan.is-featured .v4-plan__price { border-color: var(--v4-line-dk); }
html.sela body .v4-plan__num { font: 900 clamp(2.5rem, 1.9rem + 1.6vw, 3.25rem)/1 var(--v4-display); }
html.sela body .v4-plan__cur { font: 400 1.5rem/1 var(--v4-display); color: var(--v4-gold-ink); }
html.sela body .v4-plan.is-featured .v4-plan__cur { color: var(--v4-gold-lt); }
html.sela body .v4-plan__list { display: grid; align-content: start; gap: 12px; padding: 14px 0 22px; font-size: var(--v4-t-small); line-height: 1.55; color: var(--v4-body); }
html.sela body .v4-plan__list li { display: flex; gap: 12px; }
html.sela body .v4-plan__list li::before { content: ''; flex: none; width: 9px; height: 11px; margin-top: 6px; background: var(--v4-gold); -webkit-mask: var(--v4-gable) center / contain no-repeat; mask: var(--v4-gable) center / contain no-repeat; }
html.sela body .v4-plan .v4-btn { width: 100%; }
html.sela body .v4-pricing__note { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 18px 40px; margin-top: 48px; padding-top: 32px; border-top: 1px solid var(--v4-line); }
html.sela body .v4-pricing__note p { max-width: 70ch; color: var(--v4-body); }

/* ---------- FAQ ---------- */
html.sela body .v4-qa { border-top: 1px solid var(--v4-line); }
html.sela body .v4-qa:last-child { border-bottom: 1px solid var(--v4-line); }
html.sela body .v4 .faq-q { display: flex; align-items: center; justify-content: space-between; gap: 24px; width: 100%; padding: 26px 0; font: 900 1.25rem/1.35 var(--v4-display); text-align: start; color: var(--v4-ink); background: none; border: 0; cursor: pointer; }
html.sela body .v4 .faq-q:hover { color: var(--v4-navy-2); }
html.sela body .v4-qa__ic { position: relative; flex: none; width: 16px; height: 16px; color: var(--v4-gold-ink); }
html.sela body .v4-qa__ic::before, html.sela body .v4-qa__ic::after { content: ''; position: absolute; inset: 50% 0 auto; height: 1.5px; margin-top: -.75px; background: currentColor; transition: transform var(--v4-base) var(--v4-ease); }
html.sela body .v4-qa__ic::after { transform: rotate(90deg); }
html.sela body .v4 .faq-q[aria-expanded="true"] .v4-qa__ic::after { transform: rotate(0); }
html.sela body .v4 .faq-a { max-height: 0; overflow: hidden; transition: max-height var(--v4-base) var(--v4-ease); }
html.sela body .v4 .faq-a-inner { max-width: 64ch; padding-bottom: 28px; font-size: var(--v4-t-small); line-height: 1.75; color: var(--v4-body); }

/* ---------- prose (the story, legal pages, articles) ---------- */
html.sela body .v4-prose, html.sela body .v4-article .a-body { font-size: var(--v4-t-body); line-height: 1.8; color: var(--v4-body); }
html.sela body :is(.v4-prose, .v4-article .a-body) > * + * { margin-top: 1.1em; }
html.sela body :is(.v4-prose, .v4-article .a-body) :is(h2, h3) { margin-top: 2em; font-family: var(--v4-display); font-weight: 900; line-height: 1.2; color: var(--v4-ink); }
html.sela body :is(.v4-prose, .v4-article .a-body) h2 { font-size: clamp(1.5rem, 1.25rem + .8vw, 2rem); }
html.sela body :is(.v4-prose, .v4-article .a-body) h3 { font-size: 1.375rem; }
html.sela body :is(.v4-prose, .v4-article .a-body) strong { color: var(--v4-ink); }
html.sela body :is(.v4-prose, .v4-article .a-body) a { color: var(--v4-gold-ink); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
html.sela body :is(.v4-prose, .v4-article .a-body) ul { display: grid; gap: .55em; padding: 0; list-style: none; }
html.sela body :is(.v4-prose, .v4-article .a-body) ul > li { position: relative; padding-inline-start: 22px; }
html.sela body :is(.v4-prose, .v4-article .a-body) ul > li::before { content: ''; position: absolute; inset-inline-start: 0; top: .62em; width: 9px; height: 11px; background: var(--v4-gold); -webkit-mask: var(--v4-gable) center / contain no-repeat; mask: var(--v4-gable) center / contain no-repeat; }
html.sela body :is(.v4-prose, .v4-article .a-body) ol { padding-inline-start: 1.2em; }
html.sela body .v4-prose { max-width: 66ch; }
html.sela body .v4-prose--doc { max-width: 72ch; }
html.sela body .v4-story__grid { margin-top: clamp(64px, 6vw, 104px); }
html.sela body .v4-legal__updated { margin-top: 48px; padding-top: 22px; border-top: 1px solid var(--v4-line); max-width: 72ch; font-size: .875rem; color: var(--v4-body); }

/* ---------- results ---------- */
html.sela body .v4-sec--navy .v4-post__cat { color: var(--v4-gold-lt); }
html.sela body .v4-stat { display: grid; gap: 10px; }
html.sela body .v4-stat__num { font: 900 clamp(3rem, 2rem + 3vw, 5rem)/1 var(--v4-display); color: var(--v4-on-dark); }
html.sela body .v4-stat p { font-size: var(--v4-t-small); color: rgba(244, 242, 236, .74); }
html.sela body .v4-results__head2 { margin: clamp(72px, 7vw, 112px) 0 clamp(32px, 3vw, 48px); }
html.sela body .v4-results__head2 h3 { font: 900 clamp(1.5rem, 1.2rem + 1vw, 2.125rem)/1.2 var(--v4-display); }
html.sela body .v4-results__head2 .v4-lead { margin-top: 14px; }
html.sela body .v4-case { display: grid; align-content: start; gap: 14px; }
html.sela body .v4-case h4 { font: 900 1.375rem/1.25 var(--v4-display); }
html.sela body .v4-case p { font-size: var(--v4-t-small); line-height: 1.72; color: rgba(244, 242, 236, .74); }
html.sela body .v4-case .v4-case__out { display: inline-flex; align-items: center; gap: 10px; font-weight: 700; color: var(--v4-gold-lt); }
html.sela body .v4-case__out svg { width: 16px; height: 16px; }

/* ---------- contact ---------- */
html.sela body .v4-contact { position: relative; isolation: isolate; overflow: hidden; padding: calc(var(--v4-hdr) + clamp(56px, 6vw, 96px)) 0 clamp(88px, 8vw, 136px); background: var(--v4-ink); color: var(--v4-on-dark); }
html.sela body .v4-contact .v4-split { align-items: start; }
html.sela body .v4-ci { display: grid; margin-top: 40px; border-top: 1px solid var(--v4-line-dk); }
html.sela body .v4-ci__row { display: grid; grid-template-columns: 48px minmax(0, 1fr); align-items: center; gap: 20px; padding-block: 18px; border-bottom: 1px solid var(--v4-line-dk); }
html.sela body .v4-ci__row .v4-tile { width: 48px; height: 55px; padding-top: 8px; color: var(--v4-gold-lt); }
html.sela body .v4-ci__row .v4-tile svg { width: 22px; height: 22px; }
html.sela body .v4-ci__row > span:last-child { display: grid; gap: 4px; }
html.sela body .v4-ci__row strong { font: 700 .8125rem/1.2 var(--v4-text); color: var(--v4-gold-lt); }
html.sela body .v4-ci__row a, html.sela body .v4-ci__row span span { font-size: 1.125rem; color: var(--v4-on-dark); }
html.sela body .v4-contact__badges { margin-top: 28px; color: rgba(244, 242, 236, .8); }
html.sela body .v4-contact__badges li::before { display: none; }
html.sela body .v4-contact__badges svg { width: 16px; height: 16px; color: var(--v4-gold-lt); }
html.sela body .v4-formcard { --c: 28px; padding: clamp(32px, 3.6vw, 56px); background: var(--v4-lime); color: var(--v4-ink); clip-path: polygon(var(--c) 0, calc(100% - var(--c)) 0, 100% var(--c), 100% 100%, 0 100%, 0 var(--c)); }
html.sela body .v4-formcard__title { font: 900 clamp(1.5rem, 1.25rem + .8vw, 2rem)/1.2 var(--v4-display); }
html.sela body .v4-formcard__sub { margin: 10px 0 28px; font-size: var(--v4-t-small); line-height: 1.65; color: var(--v4-body); }

/* ---------- archive ---------- */
html.sela body .v4-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 40px; }
html.sela body .v4-feature { --c: 28px; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 40px; margin-bottom: 24px; padding: clamp(32px, 4vw, 64px); background: var(--v4-ink); color: var(--v4-on-dark); clip-path: polygon(var(--c) 0, calc(100% - var(--c)) 0, 100% var(--c), 100% 100%, 0 100%, 0 var(--c)); }
html.sela body .v4-feature__body { display: grid; gap: 14px; justify-items: start; max-width: 72ch; }
html.sela body .v4-feature .v4-post__cat { color: var(--v4-gold-lt); }
html.sela body .v4-feature__title { font: 900 clamp(1.75rem, 1.35rem + 1.3vw, 2.625rem)/1.15 var(--v4-display); }
html.sela body .v4-feature__text { font-size: var(--v4-t-body); line-height: 1.7; color: rgba(244, 242, 236, .78); }
html.sela body .v4-feature .v4-post__meta { color: rgba(244, 242, 236, .6); }
html.sela body .v4-feature .v4-more { color: var(--v4-gold-lt); }
html.sela body .v4-feature:hover .v4-more { background-size: 100% 1px; }
html.sela body .v4-feature__mark img { display: block; width: clamp(72px, 7vw, 104px); height: auto; opacity: .9; }
html.sela body .v4-archive__grid { column-gap: 48px; }
html.sela body .v4-archive__grid > * { padding-inline: 0 !important; padding-block: 36px 44px; }
html.sela body .v4-archive__grid > *::before, html.sela body .v4-archive__grid > *::after { display: none !important; }
html.sela body .v4-archive__empty { padding: 48px 0; text-align: center; color: var(--v4-body); }
html.sela body .v4-search { position: relative; width: min(100%, 560px); margin-top: 36px; }
html.sela body .v4-search > svg { position: absolute; top: 50%; inset-inline-start: 18px; width: 20px; height: 20px; transform: translateY(-50%); color: var(--v4-gold-lt); pointer-events: none; }
html.sela body .v4-search input { width: 100%; height: 60px; padding: 0 52px; font: 400 1.0625rem/1 var(--v4-text); color: var(--v4-on-dark); background: rgba(244, 242, 236, .06); border: 1px solid rgba(244, 242, 236, .3); border-radius: 0; }
html.sela body .v4-search input::placeholder { color: rgba(244, 242, 236, .55); }
html.sela body .v4-search input:focus { outline: none; border-color: var(--v4-gold-lt); background: rgba(244, 242, 236, .1); }
html.sela body .v4-search button { position: absolute; top: 50%; inset-inline-end: 10px; display: grid; place-items: center; width: 40px; height: 40px; padding: 0; transform: translateY(-50%); color: var(--v4-on-dark); background: none; border: 0; cursor: pointer; }
html.sela body .v4-search button svg { width: 18px; height: 18px; }

/* ---------- article ---------- */
html.sela body .v4-article .v4-phero__title { max-width: 24ch; }
html.sela body .v4-article .a-meta { display: flex; flex-wrap: wrap; gap: 10px 26px; margin-top: 30px; color: rgba(244, 242, 236, .7); }
html.sela body .v4-article .a-meta > span { display: inline-flex; align-items: center; gap: 8px; }
html.sela body .v4-article .a-meta svg { width: 16px; height: 16px; color: var(--v4-gold-lt); }
html.sela body .v4-article .a-body-wrap { display: grid; grid-template-columns: minmax(0, 8fr) minmax(0, 4fr); gap: clamp(40px, 5vw, 88px); align-items: start; padding-block: clamp(64px, 6vw, 104px); background: none; }
html.sela body .v4-article .a-body { max-width: 70ch; }
html.sela body .v4-article .a-toc { --c: 20px; margin: 0 0 2em; padding: 28px 32px; background: var(--v4-lime); clip-path: polygon(var(--c) 0, calc(100% - var(--c)) 0, 100% var(--c), 100% 100%, 0 100%, 0 var(--c)); }
html.sela body .v4-article .a-toc-title { margin-bottom: 12px; font: 700 .875rem/1.2 var(--v4-text); color: var(--v4-gold-ink); }
html.sela body .v4-article .a-toc ol { display: grid; gap: 8px; font-size: var(--v4-t-small); }
html.sela body .v4-article .a-toc a { color: var(--v4-ink); text-decoration: none; }
html.sela body .v4-article .a-toc a:hover { color: var(--v4-gold-ink); }
html.sela body .v4-article .a-cta { --c: 24px; display: grid; gap: 22px; margin-top: 2.4em; padding: clamp(28px, 3vw, 44px); background: var(--v4-ink); color: var(--v4-on-dark); clip-path: polygon(var(--c) 0, calc(100% - var(--c)) 0, 100% var(--c), 100% 100%, 0 100%, 0 var(--c)); }
html.sela body .v4-article .a-cta h3 { margin: 0 0 8px; color: var(--v4-on-dark); font: 900 1.625rem/1.2 var(--v4-display); }
html.sela body .v4-article .a-cta p { color: rgba(244, 242, 236, .78); }
html.sela body .v4-article .a-cta .v4-btn { justify-self: start; text-decoration: none; }
html.sela body .v4-article .a-share { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; padding-top: 24px; border-top: 1px solid var(--v4-line); font-weight: 700; font-size: .9375rem; color: var(--v4-ink); }
html.sela body .v4-article .a-share-btn { --c: 7px; display: grid; place-items: center; width: 42px; height: 42px; padding: 0; color: var(--v4-ink); background: none; border: 0; box-shadow: inset 0 0 0 1px rgba(11, 27, 56, .22); clip-path: polygon(var(--c) 0, calc(100% - var(--c)) 0, 100% var(--c), 100% 100%, 0 100%, 0 var(--c)); cursor: pointer; text-decoration: none; transition: background-color var(--v4-fast) ease, color var(--v4-fast) ease; }
html.sela body .v4-article .a-share-btn:hover { background: var(--v4-navy); color: var(--v4-on-dark); }
html.sela body .v4-article .a-share-btn svg { width: 18px; height: 18px; }
html.sela body .v4-article .a-disclaimer { font-size: .8125rem; line-height: 1.65; color: var(--v4-body); }
html.sela body .v4-article .a-pager { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--v4-line); border-bottom: 1px solid var(--v4-line); }
html.sela body .v4-article .a-pager-item { display: grid; gap: 6px; padding: 24px 0; text-decoration: none; color: var(--v4-ink); }
html.sela body .v4-article .a-pager-item.next { padding-inline-start: 28px; border-inline-start: 1px solid var(--v4-line); text-align: end; }
html.sela body .v4-article .a-pager-item span { font-size: .8125rem; color: var(--v4-gold-ink); }
html.sela body .v4-article .a-pager-item strong { font: 900 1.125rem/1.3 var(--v4-display); }
html.sela body .v4-article .a-side { position: sticky; top: var(--v4-sticky); display: grid; gap: 18px; }
html.sela body .v4-article .a-side-card { --c: 20px; display: grid; gap: 14px; padding: 32px; background: var(--v4-lime); clip-path: polygon(var(--c) 0, calc(100% - var(--c)) 0, 100% var(--c), 100% 100%, 0 100%, 0 var(--c)); }
html.sela body .v4-article .a-side-card.ghost { background: none; box-shadow: inset 0 0 0 1px var(--v4-line); clip-path: none; }
html.sela body .v4-article .a-side-card h4 { font: 900 1.375rem/1.25 var(--v4-display); color: var(--v4-ink); }
html.sela body .v4-article .a-side-card p { font-size: var(--v4-t-small); line-height: 1.65; color: var(--v4-body); }
html.sela body .v4-article .a-side-list { display: grid; }
html.sela body .v4-article .a-side-list li { display: flex; justify-content: space-between; gap: 12px; padding-block: 10px; border-bottom: 1px solid var(--v4-line); font-size: .9375rem; }
html.sela body .v4-article .a-side-list span { color: var(--v4-gold-ink); }

/* ---------- inner pages: tablet / phones ---------- */
@media (max-width: 1024px) {
	html.sela body .v4-plans { grid-template-columns: 1fr; grid-template-rows: none; }
	html.sela body .v4-plan { grid-row: auto; grid-template-rows: none; }
	html.sela body .v4-plan + .v4-plan { border-inline-start: 0; border-top: 1px solid var(--v4-line); }
	html.sela body .v4-plan.is-featured + .v4-plan { border-top-color: transparent; }
	html.sela body .v4-article .a-body-wrap { grid-template-columns: 1fr; }
	html.sela body .v4-article .a-side { position: static; }
	html.sela body .v4-phero__gable { opacity: .55; }
}
@media (max-width: 767px) {
	html.sela body .v4-phero { min-height: 0; padding: calc(72px + 48px) 0 56px; }
	html.sela body .v4-phero__gable { width: 160px; height: 60%; inset-inline-end: 12px; opacity: .4; }
	html.sela body .v4-phero__acts .v4-btn { width: 100%; }
	html.sela body .v4 .row2 { grid-template-columns: 1fr; }
	html.sela body .v4-formcard { --c: 20px; padding: 32px 22px; margin-inline: -8px; }
	html.sela body .v4-contact { padding-top: calc(72px + 40px); }
	html.sela body .v4-rail { padding-inline-start: 68px; }
	html.sela body .v4-rail::before, html.sela body .v4 .v4-rail__fill { inset-inline-start: 23px; }
	html.sela body .v4-step__n { inset-inline-start: -68px; width: 48px; height: 55px; font-size: 1.125rem; padding-top: 8px; }
	html.sela body .v4-step h4 { font-size: 1.3125rem; }
	html.sela body .v4 .faq-q { font-size: 1.125rem; padding: 22px 0; }
	html.sela body .v4-feature { grid-template-columns: 1fr; --c: 20px; }
	html.sela body .v4-feature__mark { display: none; }
	html.sela body .v4-article .a-pager { grid-template-columns: 1fr; }
	html.sela body .v4-article .a-pager-item.next { padding-inline-start: 0; border-inline-start: 0; border-top: 1px solid var(--v4-line); text-align: start; }
	html.sela body .v4-pricing__note .v4-more { width: auto; }
}

/* ---------- original components inside V4: the site's own boxes, radii and shadows are taken off ---------- */
html.sela body .v4 :is(.faq-item, .blog-card, .blog-feature, .calc-tab, .calc-panel, .checker, .opt, .calc-cta, .result-box, .calc-add, .calc-del) { border-radius: 0; box-shadow: none; }
html.sela body .v4 .faq-item { margin: 0; padding: 0; background: none; border: 0; border-top: 1px solid var(--v4-line); }
html.sela body .v4 .faq-item:last-child { border-bottom: 1px solid var(--v4-line); }
html.sela body .v4 .blog-card { background: none; border: 0; border-top: 1px solid var(--v4-line); transform: none !important; }
html.sela body .v4 .blog-card::before, html.sela body .v4 .blog-card::after { display: none; }
html.sela body .v4 .blog-feature { border: 0; }
html.sela body .v4 .a-body :is(h2, h3) { padding: 0; border: 0; background: none; }
html.sela body .v4 .a-body :is(h2, h3)::before, html.sela body .v4 .a-body :is(h2, h3)::after { display: none; }
html.sela body .v4-prose--doc, html.sela body .v4-legal__updated { margin-inline: auto; }
html.sela body .v4-grid--4 { --cols: 4; }
html.sela body .v4-grid--4 > :nth-child(4n + 1) { padding-inline-start: 0; }
html.sela body .v4-grid--4 > :nth-child(4n) { padding-inline-end: 0; }
html.sela body .v4-grid--4 > :not(:nth-child(4n + 1))::before { content: ''; position: absolute; inset-block: 44px 48px; inset-inline-start: 0; width: 1px; background: var(--line, var(--v4-line)); }
html.sela body .v4-grid--4 > :not(:nth-child(4n + 1))::after { content: ''; position: absolute; top: 50%; inset-inline-start: -5px; width: 11px; height: 13px; margin-top: -4px; background: var(--plane, var(--v4-lime)) var(--v4-gable-c) center / 11px 13px no-repeat; }

/* ---------- calculators ---------- */
html.sela body .v4-calcs .calc-tabs { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; margin-bottom: 0; border-top: 1px solid var(--v4-line); border-inline-start: 1px solid var(--v4-line); }
html.sela body .v4-calcs .calc-tab { display: grid; justify-items: start; align-content: start; gap: 8px; padding: 26px 24px 28px; text-align: start; background: var(--v4-paper); border: 0; border-bottom: 1px solid var(--v4-line); border-inline-end: 1px solid var(--v4-line); transform: none; cursor: pointer; transition: background-color var(--v4-fast) ease; }
html.sela body .v4-calcs .calc-tab:hover { background: #fff; transform: none; box-shadow: none; }
html.sela body .v4-calcs .calc-tab[aria-selected="true"] { background: var(--v4-ink); border-color: var(--v4-ink); }
html.sela body .v4-calcs .calc-tab-ic { display: grid; place-items: center; width: 40px; height: 46px; margin-bottom: 6px; padding-top: 7px; color: var(--v4-gold-ink); background: none; border-radius: 0; position: relative; }
html.sela body .v4-calcs .calc-tab-ic::before { content: ''; position: absolute; inset: 0; background: currentColor; opacity: .55; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 56 64'%3E%3Cpath d='M.5 63.5V18.2L28 .7l27.5 17.5v45.3z' fill='none' stroke='%23000'/%3E%3C/svg%3E") center / 100% 100% no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 56 64'%3E%3Cpath d='M.5 63.5V18.2L28 .7l27.5 17.5v45.3z' fill='none' stroke='%23000'/%3E%3C/svg%3E") center / 100% 100% no-repeat; }
html.sela body .v4-calcs .calc-tab-ic svg { width: 20px; height: 20px; }
html.sela body .v4-calcs .calc-tab[aria-selected="true"] .calc-tab-ic { color: var(--v4-gold-lt); background: none; }
html.sela body .v4-calcs .calc-tab-t { font: 900 1.125rem/1.25 var(--v4-display); color: var(--v4-ink); }
html.sela body .v4-calcs .calc-tab-s { font-size: .875rem; line-height: 1.5; color: var(--v4-body); }
html.sela body .v4-calcs .calc-tab[aria-selected="true"] .calc-tab-t { color: var(--v4-on-dark); }
html.sela body .v4-calcs .calc-tab[aria-selected="true"] .calc-tab-s { color: rgba(244, 242, 236, .72); }
html.sela body .v4-calcs .calc-panel { margin-top: 0; padding: clamp(36px, 4.4vw, 72px) clamp(24px, 5vw, 88px); background: var(--v4-paper); border: 0; border-inline: 1px solid var(--v4-line); border-bottom: 1px solid var(--v4-line); }
html.sela body .v4-calcs .calc-head { max-width: 62ch; margin: 0 auto 36px; text-align: center; }
html.sela body .v4-calcs .calc-head h3 { margin-bottom: 12px; font: 900 clamp(1.5rem, 1.2rem + 1vw, 2.125rem)/1.2 var(--v4-display); color: var(--v4-ink); }
html.sela body .v4-calcs .calc-head p { font-size: var(--v4-t-small); line-height: 1.75; color: var(--v4-body); }
html.sela body .v4-calcs .calc-row label { font: 700 .9375rem/1.2 var(--v4-text); color: var(--v4-ink); }
html.sela body .v4-calcs .calc-input .input { font: 900 1.25rem/1 var(--v4-display); text-align: center; }
html.sela body .v4-calcs .calc-input b { color: var(--v4-gold-ink); font-family: var(--v4-display); }
html.sela body .v4-calcs .calc-del { width: 38px; height: 38px; background: none; border: 1px solid var(--v4-line); color: var(--v4-body); }
html.sela body .v4-calcs .calc-add { --c: 8px; display: flex; align-items: center; justify-content: center; gap: 8px; width: 100%; min-height: 48px; margin-top: 14px; font: 700 .9375rem/1 var(--v4-text); color: var(--v4-gold-ink); background: none; border: 1px dashed rgba(126, 97, 29, .5); cursor: pointer; }
html.sela body .v4-calcs .calc-add svg { width: 16px; height: 16px; }
html.sela body .v4-calcs .calc-result { margin-top: 28px; color: var(--v4-ink); }
html.sela body .v4-calcs .calc-result :is(strong, b, .calc-big) { font-family: var(--v4-display); }
html.sela body .v4-calcs :is(.calc-pick-label, .calc-q legend) { margin-bottom: 14px; font: 700 .9375rem/1.3 var(--v4-text); color: var(--v4-ink); text-align: center; }
html.sela body .v4-calcs :is(.calc-kinds, .calc-opts) { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
html.sela body .v4-calcs .chip[aria-pressed="true"] { background: var(--v4-navy); color: var(--v4-on-dark); box-shadow: none; }
html.sela body .v4-calcs .calc-q { margin: 0 0 26px; padding: 0; border: 0; }
html.sela body .v4-calcs .calc-notes { max-width: 62ch; margin: 36px auto 0; padding-top: 24px; border-top: 1px solid var(--v4-line); font-size: .875rem; line-height: 1.65; color: var(--v4-body); }
html.sela body .v4-calcs .calc-cta { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 14px 28px; margin-top: 32px; padding: 0; text-align: center; background: none; border: 0; }
html.sela body .v4-calcs .calc-cta p { font: 900 1.125rem/1.3 var(--v4-display); color: var(--v4-ink); }
html.sela body .v4-calcs .calc-privacy { display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: 22px; font-size: .8125rem; color: var(--v4-body); }
html.sela body .v4-calcs .calc-privacy svg { width: 14px; height: 14px; color: var(--v4-gold-ink); }

/* ---------- the eligibility wizard ---------- */
html.sela body .v4-checker .checker { --c: 28px; max-width: 880px; margin-inline: auto; overflow: visible; background: var(--v4-lime); border: 0; clip-path: polygon(var(--c) 0, calc(100% - var(--c)) 0, 100% var(--c), 100% 100%, 0 100%, 0 var(--c)); }
html.sela body .v4-checker .checker-top { padding: 32px clamp(24px, 4vw, 48px) 26px; text-align: start; background: var(--v4-ink); color: var(--v4-on-dark); }
html.sela body .v4-checker .checker-top h3 { margin-bottom: 6px; font: 900 1.5rem/1.2 var(--v4-display); color: var(--v4-on-dark); }
html.sela body .v4-checker .checker-top p { font-size: var(--v4-t-xs); color: rgba(244, 242, 236, .72); }
html.sela body .v4-checker .checker-bar { height: 3px; background: rgba(11, 27, 56, .12); }
html.sela body .v4-checker .checker-bar > i { background: var(--v4-gold); border-radius: 0; }
html.sela body .v4-checker .checker-body { padding: clamp(28px, 4vw, 48px); }
html.sela body .v4-checker .step-count { font: 400 .9375rem/1 var(--v4-display); color: var(--v4-gold-ink); }
html.sela body .v4-checker .step-q { font: 900 clamp(1.375rem, 1.15rem + .7vw, 1.75rem)/1.25 var(--v4-display); color: var(--v4-ink); }
html.sela body .v4-checker .step-hint { color: var(--v4-body); }
html.sela body .v4-checker .opts { display: grid; gap: 0; border-top: 1px solid var(--v4-line); }
html.sela body .v4-checker .opts.two-col { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 24px; }
html.sela body .v4-checker .opt { display: flex; align-items: center; gap: 16px; width: 100%; padding: 18px 4px; text-align: start; font: 700 1rem/1.35 var(--v4-text); color: var(--v4-ink); background: none; border: 0; border-bottom: 1px solid var(--v4-line); cursor: pointer; transform: none !important; transition: background-color var(--v4-fast) ease, color var(--v4-fast) ease; }
html.sela body .v4-checker .opt:hover { background: rgba(11, 27, 56, .04); box-shadow: none; }
html.sela body .v4-checker .opt.selected { background: var(--v4-ink); color: var(--v4-on-dark); padding-inline: 16px; }
html.sela body .v4-checker .opt.selected small { color: rgba(244, 242, 236, .7); }
html.sela body .v4-checker .opt-ic { display: grid; place-items: center; flex: none; width: 40px; height: 46px; padding-top: 7px; color: var(--v4-gold-ink); background: none; border-radius: 0; position: relative; }
html.sela body .v4-checker .opt-ic::before { content: ''; position: absolute; inset: 0; background: currentColor; opacity: .5; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 56 64'%3E%3Cpath d='M.5 63.5V18.2L28 .7l27.5 17.5v45.3z' fill='none' stroke='%23000'/%3E%3C/svg%3E") center / 100% 100% no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 56 64'%3E%3Cpath d='M.5 63.5V18.2L28 .7l27.5 17.5v45.3z' fill='none' stroke='%23000'/%3E%3C/svg%3E") center / 100% 100% no-repeat; }
html.sela body .v4-checker .opt.selected .opt-ic { color: var(--v4-gold-lt); }
html.sela body .v4-checker .opt-ic svg { width: 18px; height: 18px; }
html.sela body .v4-checker .opt small { color: var(--v4-body); font-weight: 400; }
html.sela body .v4-checker .link-back { display: inline-flex; align-items: center; gap: 8px; font: 700 .9375rem/1 var(--v4-text); color: var(--v4-gold-ink); background: none; border: 0; cursor: pointer; }
html.sela body .v4-checker .link-back svg { width: 16px; height: 16px; }
html.sela body .v4-checker .result-head { display: flex; gap: 18px; align-items: flex-start; margin-bottom: 22px; }
html.sela body .v4-checker .result-head h4 { font: 900 1.5rem/1.2 var(--v4-display); color: var(--v4-ink); }
html.sela body .v4-checker .result-badge { color: var(--v4-gold-ink); background: none; }
html.sela body .v4-checker .result-box { margin-bottom: 22px; padding: 22px 24px; background: var(--v4-paper); border: 1px solid var(--v4-line); }
@media (max-width: 1024px) { html.sela body .v4-calcs .calc-tabs { grid-template-columns: repeat(2, minmax(0, 1fr)); } html.sela body .v4-grid--4 { --cols: 2; } html.sela body .v4-grid--4 > * { padding-inline: 32px !important; } html.sela body .v4-grid--4 > :nth-child(2n + 1) { padding-inline-start: 0 !important; } html.sela body .v4-grid--4 > :nth-child(2n) { padding-inline-end: 0 !important; } html.sela body .v4-grid--4 > :nth-child(2n + 1)::before, html.sela body .v4-grid--4 > :nth-child(2n + 1)::after { display: none; } }
@media (max-width: 767px) { html.sela body .v4-calcs .calc-tab { padding: 20px 16px; } html.sela body .v4-checker .opts.two-col { grid-template-columns: 1fr; } html.sela body .v4-checker .checker { --c: 20px; } }

/* ---------- the process: the original timeline layout (alternating halves, cards, dots) is replaced by the rail ---------- */
html.sela body .v4 .timeline { max-width: none; margin: 0; }
html.sela body .v4-rail::before { inset-inline-start: 27px; transform: none; top: 32px; bottom: 32px; width: 1px; background: var(--v4-line); }
html.sela body .v4 .tl-item, html.sela body .v4 .tl-item:nth-child(odd), html.sela body .v4 .tl-item:nth-child(even) { width: auto; margin: 0; padding-inline: 0; text-align: start; transform: none; }
html.sela body .v4-node { isolation: isolate; }
html.sela body .v4-node::before { z-index: -1; }
@media (max-width: 767px) { html.sela body .v4-rail::before { inset-inline-start: 23px; } }

/* ---------- article content: the site's own content components (notes, steps, lists, tables, FAQ) in V4 ---------- */
html.sela body .v4-article .a-cat { padding: 0; background: none; border: 0; border-radius: 0; box-shadow: none; font-weight: 400; }
html.sela body .v4-article :is(.a-toc, .a-side-card, .a-cta) { border: 0; border-radius: 0; box-shadow: none; }
html.sela body .v4-article .a-side-card.ghost { box-shadow: inset 0 0 0 1px var(--v4-line); }
html.sela body .v4-article .a-toc ol { list-style: none; padding: 0; counter-reset: v4toc; }
html.sela body .v4-article .a-toc li { counter-increment: v4toc; display: flex; gap: 12px; }
html.sela body .v4-article .a-toc li::before { content: counter(v4toc, decimal-leading-zero); flex: none; font: 400 .9375rem/1.5 var(--v4-display); color: var(--v4-gold-ink); }
html.sela body .v4-article :is(.a-note, .a-tip, .a-warn) { margin-block: 1.6em; padding: 22px 26px; font-size: var(--v4-t-small); line-height: 1.7; color: var(--v4-body); background: var(--v4-lime); border: 0; border-inline-start: 2px solid var(--v4-gold); border-radius: 0; box-shadow: none; }
html.sela body .v4-article .a-warn { border-inline-start-color: #8C3A2B; }
html.sela body .v4-article :is(.a-note, .a-tip, .a-warn) > :first-child { font-weight: 700; color: var(--v4-ink); }
html.sela body .v4-article :is(.a-note, .a-tip, .a-warn)::before { display: none; }
html.sela body .v4-article .a-steps { counter-reset: v4st; display: grid; gap: 14px; padding: 0; list-style: none; }
html.sela body .v4-article .a-steps > li { counter-increment: v4st; position: relative; min-height: 39px; padding-inline-start: 52px; }
html.sela body .v4-article .a-steps > li::before { content: counter(v4st); position: absolute; top: -2px; inset-inline-start: 0; display: grid; place-items: center; width: 34px; height: 39px; padding-top: 7px; font: 400 1rem/1 var(--v4-display); color: var(--v4-gold-ink); background: var(--v4-lime); border: 0; border-radius: 0; box-shadow: inset 0 0 0 1px rgba(126, 97, 29, .45); clip-path: polygon(50% 0, 100% 28%, 100% 100%, 0 100%, 0 28%); }
html.sela body .v4-article .a-table-wrap { overflow-x: auto; border: 0; border-radius: 0; box-shadow: none; }
html.sela body .v4-article .a-table { width: 100%; border-collapse: collapse; font-size: var(--v4-t-small); }
html.sela body .v4-article .a-table :is(th, td) { padding: 12px 14px; text-align: start; border-bottom: 1px solid var(--v4-line); }
html.sela body .v4-article .a-table th { font-weight: 700; color: var(--v4-ink); background: var(--v4-lime); }
html.sela body .v4-article .faq-list { margin-top: 1em; }
html.sela body .v4-article .faq-q { font-size: 1.125rem; }
html.sela body .v4-article .faq-ic { display: grid; flex: none; width: 18px; height: 18px; color: var(--v4-gold-ink); background: none; border: 0; border-radius: 0; transition: transform var(--v4-base) var(--v4-ease); }
html.sela body .v4-article .faq-ic svg { width: 100%; height: 100%; }
html.sela body .v4-article .faq-q[aria-expanded="true"] .faq-ic { transform: rotate(180deg); }

/* ---------- archive search: one frame — the original capsule is taken off, the outline is drawn as the gable (like
   .v4-btn--line: a border would be cut off at the corners) ---------- */
html.sela body .v4-search.blog-search {
	--oc: rgba(244, 242, 236, .38); --cut: 12px;
	display: block; max-width: 620px; padding: 0; border: 0; border-radius: 0; box-shadow: none; background-color: #17284A; /* opaque: the page's ornament must not show through */
	clip-path: polygon(var(--cut) 0, calc(100% - var(--cut)) 0, 100% var(--cut), 100% 100%, 0 100%, 0 var(--cut));
	background-image:
		linear-gradient(var(--oc), var(--oc)), linear-gradient(var(--oc), var(--oc)),
		linear-gradient(var(--oc), var(--oc)), linear-gradient(var(--oc), var(--oc)),
		linear-gradient(to bottom right, transparent calc(50% - .75px), var(--oc) 0 calc(50% + .75px), transparent 0),
		linear-gradient(to bottom left, transparent calc(50% - .75px), var(--oc) 0 calc(50% + .75px), transparent 0);
	background-size: calc(100% - 2 * var(--cut)) 1px, 100% 1px, 1px calc(100% - var(--cut)), 1px calc(100% - var(--cut)), var(--cut) var(--cut), var(--cut) var(--cut);
	background-position: top center, bottom, bottom left, bottom right, top left, top right;
	background-repeat: no-repeat;
	transition: background-color var(--v4-fast) ease;
}
html.sela body .v4-search.blog-search:focus-within { --oc: var(--v4-gold-lt); background-color: #1C2F52; box-shadow: none; border: 0; }
html.sela body .v4-search.blog-search input { display: block; width: 100%; height: 60px; padding: 0 54px; background: none; border: 0; border-radius: 0; outline: none; box-shadow: none; }
html.sela body .v4-search.blog-search input:focus { background: none; border: 0; }
html.sela body .v4-search.blog-search input::-webkit-search-cancel-button { display: none; }
html.sela body .v4-search.blog-search > svg { inset-inline-start: 20px; }
html.sela body .v4-search.blog-search button { width: 36px; height: 36px; border-radius: 0; background: none; color: rgba(244, 242, 236, .75); }
html.sela body .v4-search.blog-search button:hover { background: rgba(244, 242, 236, .1); color: var(--v4-on-dark); }

/* =====================================================================================================================
   HOME ON PHONES — centred composition (client, 2026-11-06): heads, short texts, repeated items and actions are centred;
   the answer's long paragraph and row-like controls keep the reading edge (the hero's paragraph is centred too — client).
   ===================================================================================================================== */
@media (max-width: 767px) {
	/* hero */
	html.sela body .v4-hero__copy { align-items: center; text-align: center; }
	html.sela body .v4-hero__copy > * { max-width: 100%; }
	html.sela body .v4-hero__trust { align-items: center; }
	html.sela body .v4-panel__head { flex-direction: column; align-items: center; text-align: center; }
	html.sela body .v4-panel__list li, html.sela body .v4-panel__list li:nth-child(even) { grid-template-columns: 1fr; justify-items: center; text-align: center; }
	html.sela body .v4-panel__icon { grid-row: auto; margin: 0 0 6px; }
	html.sela body .v4-panel__note { text-align: center; }
	/* section heads (home sections) */
	html.sela body :is(.v4-pain, .v4-svc, .v4-why, .v4-posts) :is(header, .v4-split__head) { display: flex; flex-direction: column; align-items: center; text-align: center; }
	html.sela body :is(.v4-pain, .v4-svc, .v4-why, .v4-posts) .v4-lead { margin-inline: auto; }
	html.sela body .v4-why__head .v4-lead { padding-bottom: 0; }
	/* rights map */
	html.sela body .v4-map__label { max-width: none; text-align: center; }
	html.sela body .v4-map__bodies { padding-inline-start: 0; }
	html.sela body .v4-map__bodies::before { display: none; }
	html.sela body .v4-map__bodies li { justify-content: flex-start; padding-inline-start: max(0px, calc(50% - 7.5rem)); } /* one column of nodes, the group centred */
	/* pain quotes + the answer */
	html.sela body .v4-quote { grid-template-columns: 1fr; justify-items: center; text-align: center; }
	html.sela body .v4-quote .v4-tile { grid-row: auto; margin-bottom: 6px; }
	html.sela body .v4-quote h3 { align-self: auto; }
	html.sela body .v4-answer__text { align-items: center; text-align: center; }
	html.sela body .v4-answer__text p { align-self: stretch; text-align: start; }
	/* practice areas */
	html.sela body .v4-index__row { grid-template-columns: 1fr; justify-items: center; text-align: center; }
	html.sela body .v4-index__row :is(.v4-index__n, h3, p, .v4-more) { grid-column: 1; grid-row: auto; }
	html.sela body .v4-index__n { padding-top: 0; }
	html.sela body .v4-index__row .v4-more { justify-self: center; }
	/* why + tools + articles */
	html.sela body :is(.v4-why, .v4-posts) .v4-grid > * { justify-items: center; text-align: center; }
	html.sela body .v4-cta--gold .v4-cta__main { text-align: center; }
	html.sela body .v4-cta--gold .v4-cta__main .v4-eyebrow { justify-content: center; }
	html.sela body .v4-cta--gold .v4-cta__side { justify-items: center; text-align: center; }
	html.sela body .v4-cta--gold .v4-points { justify-content: center; }
	html.sela body .v4-posts__head { flex-direction: column; align-items: center; text-align: center; }
	html.sela body .v4-post .v4-more { justify-self: center; }
	html.sela body .v4-post__meta { justify-content: center; }
}

/* the form's consent line shares its class with the site's cookie banner (.consent: fixed, hidden until .show) —
   inside a V4 form it is an ordinary line of the form */
html.sela body .v4 :is(.form-grid, .result-form) .consent { position: static; inset: auto; z-index: auto; max-width: none; margin: 0; padding: 0; background: none; border: 0; border-radius: 0; box-shadow: none; opacity: 1; transform: none; visibility: visible; pointer-events: auto; }

/* the node's outline drawn as a full gable (an inset shadow is cut off at the clipped corners) */
html.sela body .v4-node::before { box-shadow: none; }
html.sela body .v4-node::after { content: ''; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: rgba(126, 97, 29, .5); -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 46' preserveAspectRatio='none'%3E%3Cpath d='M.5 45.5V13L20 .6 39.5 13v32.5z' fill='none' stroke='%23000' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") center / 100% 100% no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 46' preserveAspectRatio='none'%3E%3Cpath d='M.5 45.5V13L20 .6 39.5 13v32.5z' fill='none' stroke='%23000' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") center / 100% 100% no-repeat; }
html.sela body .v4-map__bodies li.is-hot .v4-node::after { background: var(--v4-navy); }
