/* FA Retire Abroad Atlas
   Scoped entirely under .falg-app so it cannot leak into the host theme.
   Tokens are set inline by the plugin from the brand settings. */

.falg-app{
	--falg-primary:#0A3D62;
	--falg-primary-deep:#07293f;
	--falg-accent:#245897;
	--falg-highlight:#7C2D12;
	--falg-ink:#101a24;
	--falg-ink-2:#54606d;
	--falg-ink-3:#7d8894;
	--falg-line:#e3e9f0;
	--falg-line-2:#eff3f8;
	--falg-bg:#ffffff;
	--falg-bg-2:#f7f9fc;
	--falg-bg-3:#eaf1f8;
	--falg-good:#0a7d33;
	--falg-warn:#b45309;
	--falg-bad:#a83434;
	--falg-radius:14px;
	--falg-radius-sm:10px;
	--falg-shadow-1:0 1px 2px rgba(10,35,60,.05);
	--falg-shadow-2:0 2px 4px rgba(10,35,60,.05),0 12px 28px -10px rgba(10,35,60,.16);
	--falg-shadow-3:0 4px 8px rgba(10,35,60,.07),0 22px 48px -16px rgba(10,35,60,.24);
	--falg-shadow:var(--falg-shadow-2);
	--falg-max:1180px;

	box-sizing:border-box;
	max-width:var(--falg-max);
	margin:0 auto;
	padding:0 20px 72px;
	color:var(--falg-ink);
	font-size:17px;
	line-height:1.65;
	-webkit-font-smoothing:antialiased;
	-moz-osx-font-smoothing:grayscale;
	text-rendering:optimizeLegibility;
}
.falg-app *,.falg-app *::before,.falg-app *::after{box-sizing:border-box}
.falg-app img,.falg-app svg{max-width:100%}
/* Underlines belong in running prose, not on cards, chips, tabs, nav or data
   rows. A link that IS the whole list item needs no underline to be legible;
   one sitting mid-sentence does. The doubled .falg-app outranks a host theme's
   `.entry-content a` rule, which is what forced underlines back on before. */
.falg-app.falg-app a{color:var(--falg-accent);text-decoration:none;transition:color .15s ease}
.falg-app.falg-app :is(p,dd,figcaption,blockquote,.falg-prose)>a:not([class]){
	text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.18em;
	text-decoration-color:color-mix(in srgb,var(--falg-accent) 38%,transparent);
}
.falg-app.falg-app a:hover{color:var(--falg-primary)}
.falg-app.falg-app :is(p,dd,figcaption,blockquote,.falg-prose)>a:not([class]):hover{text-decoration-color:currentColor}
.falg-app a:focus-visible{outline:2px solid var(--falg-highlight);outline-offset:3px;border-radius:3px}
.falg-app h1,.falg-app h2,.falg-app h3,.falg-app h4{
	color:var(--falg-primary);line-height:1.22;margin:0 0 .5em;font-weight:700;letter-spacing:-.011em;
}
.falg-app h1{font-size:clamp(2.1rem,1.25rem + 2.6vw,3.15rem);margin-top:.1em;letter-spacing:-.022em;line-height:1.12}
.falg-app h2{font-size:clamp(1.45rem,1.08rem + 1.3vw,2.05rem);margin-top:0;letter-spacing:-.018em}
.falg-app h3{font-size:1.18rem;margin-top:1.5em;letter-spacing:-.012em}
.falg-app p{margin:0 0 1em}
.falg-app ul,.falg-app ol{margin:0 0 1.1em;padding-left:1.25em}
.falg-app li{margin:.35em 0}
.falg-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* ---------------------------------------------------------------- chrome */
.falg-crumbs{font-size:.82rem;margin:1.4em 0 .6em;color:var(--falg-ink-2)}
.falg-crumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.4em}
.falg-crumbs li+li::before{content:"/";margin-right:.4em;color:var(--falg-line)}
.falg-crumbs a{text-decoration:none}

.falg-toolbar{margin:1.2em 0 2.4em;border-bottom:1px solid var(--falg-line);overflow-x:auto;scrollbar-width:thin}
.falg-toolbar ul{list-style:none;margin:0;padding:0;display:flex;gap:.15em;min-width:max-content}
.falg-toolbar a{
	display:block;padding:.78em 1.05em;font-size:.9rem;font-weight:600;
	color:var(--falg-ink-2);border-bottom:2.5px solid transparent;white-space:nowrap;
	transition:color .15s ease,border-color .15s ease,background .15s ease;
}
.falg-toolbar a:hover{color:var(--falg-primary);background:var(--falg-bg-2)}
.falg-toolbar a.is-active{color:var(--falg-primary);border-bottom-color:var(--falg-highlight)}

/* ------------------------------------------------------------------ hero */
.falg-hero{
	position:relative;isolation:isolate;overflow:hidden;
	padding:2.9em 2.4em 2.5em;margin:0 0 3em;border-radius:var(--falg-radius);
	background:
		radial-gradient(120% 150% at 100% 0%,rgba(36,88,151,.10),transparent 58%),
		linear-gradient(168deg,#fbfcfe 0%,var(--falg-bg-2) 55%,#eef3f9 100%);
	border:1px solid var(--falg-line);
	box-shadow:var(--falg-shadow-1);
}
/* A quiet band of brand colour anchors the panel to the site. */
.falg-hero::before{
	content:"";position:absolute;inset:0 0 auto 0;height:4px;z-index:-1;
	background:linear-gradient(90deg,var(--falg-primary),var(--falg-accent) 45%,var(--falg-highlight));
}
.falg-hero h1{max-width:19ch}
.falg-eyebrow{
	display:inline-flex;align-items:center;gap:.5em;font-size:.72rem;font-weight:700;
	letter-spacing:.1em;text-transform:uppercase;color:var(--falg-highlight);margin:0 0 .9em;
}
.falg-eyebrow::before{content:"";width:1.6em;height:2px;background:currentColor;border-radius:2px}
.falg-lede{font-size:1.16rem;line-height:1.6;color:var(--falg-ink-2);max-width:62ch}
.falg-tagline{font-size:1.06rem;color:var(--falg-ink-2);font-style:italic;max-width:62ch;margin-top:-.2em}

/* Stat blocks: the numbers are the point, so they lead. */
.falg-hero-stats{
	display:flex;flex-wrap:wrap;gap:0;margin:2em 0 0;padding:0;
	border-top:1px solid var(--falg-line);
}
.falg-hero-stats>*{max-width:15em;
	padding:1.15em 1.9em 0 0;margin-right:1.9em;font-size:.87rem;line-height:1.4;
	color:var(--falg-ink-2);border-right:1px solid var(--falg-line);
}
.falg-hero-stats>*:last-child{border-right:0;margin-right:0;padding-right:0}
.falg-hero-stats strong{
	color:var(--falg-primary);font-size:1.85rem;font-weight:800;display:block;
	line-height:1.05;letter-spacing:-.03em;margin-bottom:.15em;font-variant-numeric:tabular-nums;
}
.falg-hero-actions{display:flex;flex-wrap:wrap;gap:.7em;margin-top:2em}
.falg-page-head{padding:.4em 0 1.6em}

/* --------------------------------------------------------------- sections */
.falg-section{margin:3.4em 0}
.falg-section>h2{
	position:relative;padding-top:.85em;margin-bottom:.55em;
	border-top:1px solid var(--falg-line);
}
.falg-section>h2::before{
	content:"";position:absolute;top:-1px;left:0;width:44px;height:3px;border-radius:3px;
	background:var(--falg-highlight);
}
.falg-section-intro{color:var(--falg-ink-2);max-width:68ch;font-size:1.02rem}
.falg-summary{font-size:1.05rem;max-width:74ch}
.falg-advisory{background:#fdf3f3;border-left:4px solid var(--falg-bad);padding:1.05em 1.25em;border-radius:0 var(--falg-radius-sm) var(--falg-radius-sm) 0;font-size:.95rem}
.falg-callout{background:var(--falg-bg-3);border-left:4px solid var(--falg-accent);padding:1.05em 1.25em;border-radius:0 var(--falg-radius-sm) var(--falg-radius-sm) 0}

/* ---------------------------------------------------------------- buttons */
.falg-btn{
	display:inline-flex;align-items:center;gap:.5em;padding:.85em 1.5em;border-radius:var(--falg-radius-sm);
	font-size:.94rem;font-weight:650;border:1.5px solid transparent;cursor:pointer;line-height:1.25;
	font-family:inherit;letter-spacing:.002em;
	transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease,color .16s ease;
}
.falg-btn-primary{
	background:var(--falg-primary);color:#fff;border-color:var(--falg-primary);
	box-shadow:0 1px 2px rgba(10,61,98,.24),0 8px 18px -8px rgba(10,61,98,.5);
}
.falg-app.falg-app .falg-btn-primary{color:#fff}
.falg-btn-primary:hover{background:var(--falg-accent);border-color:var(--falg-accent);transform:translateY(-1px);
	box-shadow:0 2px 4px rgba(10,61,98,.22),0 14px 26px -10px rgba(10,61,98,.55)}
.falg-btn-ghost{background:var(--falg-bg);color:var(--falg-primary);border-color:var(--falg-line);box-shadow:var(--falg-shadow-1)}
.falg-btn-ghost:hover{border-color:var(--falg-accent);color:var(--falg-accent);transform:translateY(-1px);box-shadow:var(--falg-shadow-2)}
.falg-btn:active{transform:translateY(0)}
.falg-btn[disabled]{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}
.falg-more{font-weight:650;font-size:.92rem;display:inline-flex;align-items:center;gap:.35em}
.falg-more::after{content:"\2192";transition:transform .16s ease}
.falg-more:hover::after{transform:translateX(3px)}
.falg-ext-i{width:.7em;height:.7em;margin-left:.3em;opacity:.55;vertical-align:baseline}

/* ------------------------------------------------------------------ cards */
.falg-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(258px,1fr));gap:1.1em}
.falg-card{
	position:relative;display:block;padding:1.5em 1.45em;border:1px solid var(--falg-line);
	border-radius:var(--falg-radius);background:var(--falg-bg);color:inherit;overflow:hidden;
	box-shadow:var(--falg-shadow-1);
	transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}
/* The accent rule wipes in on hover rather than sitting there permanently. */
.falg-card::before{
	content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--falg-highlight);
	transform:scaleX(0);transform-origin:left;transition:transform .22s ease;
}
.falg-card:hover{border-color:#cbd8e6;box-shadow:var(--falg-shadow-2);transform:translateY(-3px)}
.falg-card:hover::before{transform:scaleX(1)}
.falg-card h3{margin:0 0 .4em;font-size:1.06rem;color:var(--falg-primary)}
.falg-card p{margin:0;font-size:.93rem;line-height:1.55;color:var(--falg-ink-2)}
.falg-card:hover h3{color:var(--falg-accent)}

/* --------------------------------------------------------------- fact bar */
.falg-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1px;background:var(--falg-line);
	border:1px solid var(--falg-line);border-radius:var(--falg-radius);overflow:hidden;margin:1.8em 0;
	box-shadow:var(--falg-shadow-1)}
.falg-fact{background:var(--falg-bg);padding:1.15em 1.25em;transition:background .15s ease}
.falg-fact:hover{background:var(--falg-bg-2)}
.falg-facts dt{font-size:.71rem;text-transform:uppercase;letter-spacing:.07em;color:var(--falg-ink-3);font-weight:700;margin-bottom:.35em}
.falg-facts dd{margin:0;font-size:1.06rem;font-weight:700;color:var(--falg-primary);line-height:1.32;letter-spacing:-.01em}

/* ------------------------------------------------------------- cartogram */
.falg-carto{margin:2.4em 0;padding:0}
.falg-carto-head{display:flex;flex-wrap:wrap;gap:1em;align-items:center;justify-content:space-between;margin-bottom:.9em}
.falg-carto-title{font-weight:700;color:var(--falg-primary);font-size:1.1rem}
.falg-carto-metric{
	font-family:inherit;font-size:.88rem;padding:.5em .8em;border:1px solid var(--falg-line);
	border-radius:8px;background:var(--falg-bg);color:var(--falg-ink);max-width:100%;
}
.falg-carto-canvas{position:relative;background:var(--falg-bg-2);border:1px solid var(--falg-line);border-radius:var(--falg-radius);padding:14px;overflow-x:auto}
.falg-carto-canvas svg{display:block;width:100%;height:auto;min-width:620px}
.falg-hex{cursor:pointer}
.falg-hex polygon{stroke:#fff;stroke-width:2;transition:.14s ease}
.falg-hex:hover polygon,.falg-hex:focus polygon{stroke:var(--falg-primary);stroke-width:3}
.falg-hex-label{font-size:12px;font-weight:700;fill:#fff;pointer-events:none;letter-spacing:.02em}
.falg-carto-tip{
	position:absolute;pointer-events:none;background:var(--falg-primary);color:#fff;padding:.55em .8em;
	border-radius:8px;font-size:.8rem;line-height:1.45;max-width:250px;z-index:5;box-shadow:var(--falg-shadow);
}
.falg-carto-tip strong{display:block;font-size:.92rem;margin-bottom:.15em}
.falg-carto-legend{display:flex;align-items:center;gap:.7em;margin-top:.8em;font-size:.78rem;color:var(--falg-ink-2)}
.falg-legend-ramp{flex:0 0 180px;height:9px;border-radius:5px;
	background:linear-gradient(90deg,#107a6a,#4a9b5c,#d6a82e,#c86c28,#a83434)}
.falg-carto-note{font-size:.83rem;color:var(--falg-ink-2);margin-top:.7em;max-width:70ch}

/* ------------------------------------------------------------ score bars */
.falg-scores{list-style:none;margin:0;padding:0}
.falg-scores li{display:grid;grid-template-columns:9.5em 1fr 2.4em;gap:.7em;align-items:center;margin:.5em 0;font-size:.88rem}
.falg-score-label{color:var(--falg-ink-2)}
.falg-score-track{height:9px;background:var(--falg-line-2);border-radius:5px;overflow:hidden}
.falg-score-fill{display:block;height:100%;border-radius:5px}
.falg-score-val{text-align:right;font-weight:700;color:var(--falg-primary);font-variant-numeric:tabular-nums}

/* ----------------------------------------------------------------- radar */
.falg-radar{margin:0}
.falg-radar svg{width:100%;height:auto;max-width:420px;margin:0 auto;display:block;overflow:visible}
.falg-radar-grid{fill:none;stroke:var(--falg-line);stroke-width:1}
.falg-radar-spoke{stroke:var(--falg-line);stroke-width:1}
.falg-radar-axis{font-size:11px;fill:var(--falg-ink-2)}
.falg-radar-shape{stroke-width:2}
.falg-radar-a{fill:rgba(36,88,151,.24);stroke:var(--falg-accent)}
.falg-radar-b{fill:rgba(180,83,9,.16);stroke:var(--falg-highlight)}
.falg-radar-key{font-size:.82rem;color:var(--falg-ink-2);text-align:center;margin-top:.6em}
.falg-key{display:inline-flex;align-items:center;gap:.35em;margin:0 .5em;font-weight:600}
.falg-key::before{content:"";width:11px;height:11px;border-radius:3px;display:inline-block}
.falg-key-a::before{background:var(--falg-accent)}
.falg-key-b::before{background:var(--falg-highlight)}
.falg-radar-note{display:block;margin-top:.6em;font-style:italic;font-weight:400;max-width:52ch;margin-inline:auto}

/* ----------------------------------------------------------- cost stack */
.falg-stack{margin:2.4em 0;border:1px solid var(--falg-line);border-radius:var(--falg-radius);padding:1.3em}
.falg-stack-head{display:flex;flex-wrap:wrap;gap:.6em;justify-content:space-between;align-items:baseline;margin-bottom:.9em}
.falg-stack-head strong{color:var(--falg-primary)}
.falg-stack-total{font-weight:700;color:var(--falg-highlight)}
.falg-stack-bar{display:flex;height:34px;border-radius:7px;overflow:hidden;background:var(--falg-line-2)}
.falg-stack-seg{display:block;height:100%;transition:.2s}
.falg-stack-key{list-style:none;margin:1em 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.4em .9em}
.falg-stack-key li{display:flex;align-items:center;gap:.5em;font-size:.85rem;margin:0}
.falg-swatch{width:12px;height:12px;border-radius:3px;flex:0 0 12px}
.falg-stack-label{flex:1;color:var(--falg-ink-2)}
.falg-stack-val{font-weight:700;font-variant-numeric:tabular-nums}

/* ---------------------------------------------------------------- ladder */
.falg-ladder{margin:2.6em 0;border:1px solid var(--falg-line);border-radius:var(--falg-radius);padding:1.4em}
.falg-ladder-head{margin-bottom:1em}
.falg-ladder-head strong{display:block;color:var(--falg-primary);font-size:1.12rem;margin-bottom:.3em}
.falg-ladder-sub{font-size:.9rem;color:var(--falg-ink-2);display:block;max-width:70ch}
.falg-ladder-input{display:flex;flex-wrap:wrap;align-items:center;gap:.7em;margin-bottom:1.2em;padding:.9em 1em;background:var(--falg-bg-2);border-radius:8px}
.falg-ladder-input label{font-size:.88rem;font-weight:600;color:var(--falg-ink-2)}
.falg-ladder-income{width:9em;padding:.5em .7em;border:1px solid var(--falg-line);border-radius:7px;font-family:inherit;font-size:.95rem}
.falg-ladder-count{font-size:.88rem;font-weight:700;color:var(--falg-good)}
.falg-ladder-rows{list-style:none;margin:0;padding:0}
.falg-ladder-row{display:grid;grid-template-columns:10em 1fr 5.2em;gap:.6em;align-items:center;padding:.38em 0;border-bottom:1px solid var(--falg-line-2);margin:0}
.falg-ladder-row .falg-ladder-prog{grid-column:2/4;font-size:.76rem;color:var(--falg-ink-2);margin-top:-.2em}
.falg-ladder-name{font-size:.9rem;font-weight:600;text-decoration:none}
.falg-ladder-track{height:11px;background:var(--falg-line-2);border-radius:6px;overflow:hidden}
.falg-ladder-fill{display:block;height:100%;background:var(--falg-accent);border-radius:6px;transition:.2s}
.falg-ladder-row.is-ok .falg-ladder-fill{background:var(--falg-good)}
.falg-ladder-row.is-ok .falg-ladder-name{color:var(--falg-good)}
.falg-ladder-row.is-out{opacity:.42}
.falg-ladder-val{text-align:right;font-weight:700;font-size:.86rem;font-variant-numeric:tabular-nums}
.falg-ladder-note{font-size:.83rem;color:var(--falg-ink-2);margin-top:1em;max-width:72ch}

/* -------------------------------------------------------------- timeline */
.falg-timeline{margin:2.6em 0;border:1px solid var(--falg-line);border-radius:var(--falg-radius);padding:1.4em}
.falg-timeline-head{margin-bottom:1.2em}
.falg-timeline-head strong{display:block;color:var(--falg-primary);font-size:1.1rem}
.falg-timeline-total{font-size:.88rem;color:var(--falg-highlight);font-weight:600}
.falg-timeline-rows{list-style:none;margin:0;padding:0;counter-reset:tl}
.falg-tl-row{display:grid;grid-template-columns:2em 1fr;gap:.8em;padding:.85em 0;border-bottom:1px solid var(--falg-line-2);margin:0}
.falg-tl-index{width:26px;height:26px;border-radius:50%;background:var(--falg-bg-3);color:var(--falg-primary);
	display:flex;align-items:center;justify-content:center;font-size:.78rem;font-weight:700}
.falg-tl-title{display:block;font-weight:650;color:var(--falg-primary);font-size:.98rem}
.falg-tl-track{display:block;position:relative;height:8px;background:var(--falg-line-2);border-radius:5px;margin:.45em 0}
.falg-tl-bar{position:absolute;top:0;height:100%;border-radius:5px;background:var(--falg-accent);min-width:6px}
.falg-tl-owner-us .falg-tl-bar{background:var(--falg-highlight)}
.falg-tl-owner-consulate .falg-tl-bar{background:#6a8caf}
.falg-tl-owner-us .falg-tl-index{background:#fdf1e3;color:var(--falg-highlight)}
.falg-tl-detail{display:block;font-size:.9rem;color:var(--falg-ink-2)}
.falg-tl-meta{display:block;font-size:.78rem;color:var(--falg-ink-2);opacity:.85;margin-top:.25em}
.falg-timeline-legend{display:flex;flex-wrap:wrap;gap:.4em 1.2em;align-items:center;font-size:.8rem;color:var(--falg-ink-2);margin-top:1em}
.falg-tl-swatch{width:14px;height:9px;border-radius:3px;display:inline-block;margin-right:.3em}
.falg-timeline-legend .falg-tl-owner-you{background:var(--falg-accent)}
.falg-timeline-legend .falg-tl-owner-us{background:var(--falg-highlight)}
.falg-timeline-legend .falg-tl-owner-consulate{background:#6a8caf}

/* -------------------------------------------------------------- pipeline */
.falg-pipeline{margin:2.6em 0;background:var(--falg-bg-2);border-radius:var(--falg-radius);padding:1.5em;border:1px solid var(--falg-line)}
.falg-pipeline-head{margin-bottom:1.2em}
.falg-pipeline-head strong{display:block;color:var(--falg-primary);font-size:1.12rem;margin-bottom:.35em}
.falg-pipeline-dest{font-size:.9rem;color:var(--falg-ink-2)}
.falg-badge{display:inline-block;padding:.18em .6em;border-radius:20px;font-size:.76rem;font-weight:700}
.falg-badge-good{background:#e6f4ea;color:var(--falg-good)}
.falg-badge-warn{background:#fdf1e3;color:var(--falg-warn)}
.falg-pipe{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.6em}
.falg-pipe-step{background:var(--falg-bg);border:1px solid var(--falg-line);border-radius:9px;padding:.9em;position:relative;margin:0}
.falg-pipe-step.is-key{border-color:var(--falg-highlight);border-width:1.5px}
.falg-pipe-num{display:inline-flex;align-items:center;justify-content:center;width:21px;height:21px;border-radius:50%;
	background:var(--falg-primary);color:#fff;font-size:.72rem;font-weight:700;margin-bottom:.45em}
.falg-pipe-step.is-key .falg-pipe-num{background:var(--falg-highlight)}
.falg-pipe-title{display:block;font-weight:700;font-size:.92rem;color:var(--falg-primary);margin-bottom:.3em}
.falg-pipe-detail{display:block;font-size:.83rem;color:var(--falg-ink-2);line-height:1.5}
.falg-pipe-flag{display:block;margin-top:.5em;font-size:.8rem;font-weight:600;color:var(--falg-highlight)}
.falg-pipeline-warn{margin:1.2em 0 0;padding:.85em 1em;background:#fdf1e3;border-radius:8px;font-size:.88rem;color:#7a3d0a}

/* --------------------------------------------------------------- runway */
.falg-runway{margin:2.6em 0;border:1px solid var(--falg-line);border-radius:var(--falg-radius);padding:1.5em}
.falg-runway-head h3{margin-top:0}
.falg-runway-head p{font-size:.92rem;color:var(--falg-ink-2);max-width:70ch}
.falg-runway-grid{display:grid;grid-template-columns:minmax(260px,1fr) minmax(280px,1.3fr);gap:1.8em;margin-top:1.2em}
.falg-slider{display:block;margin-bottom:1em}
.falg-slider-label{display:block;font-size:.83rem;font-weight:600;color:var(--falg-ink-2);margin-bottom:.3em}
.falg-slider-row{display:flex;align-items:center;gap:.7em}
.falg-slider input[type=range]{flex:1;accent-color:var(--falg-accent);min-width:0}
.falg-slider output{min-width:5.6em;text-align:right;font-weight:700;font-size:.9rem;color:var(--falg-primary);font-variant-numeric:tabular-nums}
.falg-runway-verdict{font-size:1.06rem;font-weight:650;color:var(--falg-primary);padding:.7em .9em;background:var(--falg-bg-3);border-radius:8px}
.falg-runway-chart svg{width:100%;height:auto}
.falg-line-axis{stroke:var(--falg-line);stroke-width:1}
.falg-line-area{fill:rgba(36,88,151,.12)}
.falg-line-path{fill:none;stroke:var(--falg-accent);stroke-width:2.5;stroke-linejoin:round}
.falg-line-tick{font-size:11px;fill:var(--falg-ink-2)}
.falg-line-zero{stroke:var(--falg-bad);stroke-width:1.5;stroke-dasharray:4 3}
.falg-runway-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.6em;margin:1em 0 0}
.falg-runway-stats>div{background:var(--falg-bg-2);border-radius:8px;padding:.7em .8em}
.falg-runway-stats dt{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--falg-ink-2);font-weight:700}
.falg-runway-stats dd{margin:.2em 0 0;font-weight:700;color:var(--falg-primary);font-variant-numeric:tabular-nums}
.falg-runway-note{font-size:.83rem;color:var(--falg-ink-2);margin-top:1.2em;max-width:76ch}

/* ---------------------------------------------------------------- wizard */
.falg-wizard{border:1px solid var(--falg-line);border-radius:var(--falg-radius);padding:1.6em;margin:1.6em 0}
.falg-wiz-steps{list-style:none;margin:0;padding:0}
.falg-wiz-step{display:none;margin:0}
.falg-wiz-step.is-active{display:block}
.falg-wiz-step h2{margin-top:0;font-size:1.3rem}
.falg-wiz-help{font-size:.9rem;color:var(--falg-ink-2);max-width:64ch}
.falg-choices{display:flex;flex-wrap:wrap;gap:.6em;margin:1em 0}
.falg-choices label{position:relative;cursor:pointer}
.falg-choices input{position:absolute;opacity:0;width:0;height:0}
.falg-choices span{display:block;padding:.65em 1.2em;border:1.5px solid var(--falg-line);border-radius:9px;font-size:.94rem;font-weight:600;transition:.14s}
.falg-choices input:checked+span{border-color:var(--falg-primary);background:var(--falg-primary);color:#fff}
.falg-choices input:focus-visible+span{outline:2px solid var(--falg-highlight);outline-offset:2px}
.falg-choices-multi span{font-weight:500;font-size:.88rem}
.falg-wiz-range{width:100%;max-width:460px;accent-color:var(--falg-accent);display:block;margin:1em 0 .3em}
.falg-wiz-out{font-size:1.5rem;font-weight:700;color:var(--falg-primary);font-variant-numeric:tabular-nums}
.falg-wiz-out-plain{font-size:1rem}
.falg-weights{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:.9em 1.6em}
.falg-weight{display:block}
.falg-weight-label{display:block;font-size:.85rem;font-weight:600;color:var(--falg-ink-2)}
.falg-weight .falg-wiz-range{margin:.3em 0 0}
.falg-wiz-nav{display:flex;align-items:center;gap:.7em;margin-top:1.6em;padding-top:1.2em;border-top:1px solid var(--falg-line)}
.falg-wiz-progress{flex:1;font-size:.85rem;color:var(--falg-ink-2)}
.falg-wiz-results{margin-top:2em}
.falg-match{border:1px solid var(--falg-line);border-radius:var(--falg-radius);padding:1.1em 1.2em;margin-bottom:.8em;display:grid;
	grid-template-columns:4.4em 1fr;gap:1em;align-items:start}
.falg-match.is-top{border-color:var(--falg-highlight);border-width:2px}
.falg-match-score{text-align:center}
.falg-match-score b{display:block;font-size:1.6rem;font-weight:800;color:var(--falg-primary);line-height:1}
.falg-match-score span{font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;color:var(--falg-ink-2);font-weight:700}
.falg-match h3{margin:0 0 .25em;font-size:1.12rem}
.falg-match-tag{font-size:.9rem;color:var(--falg-ink-2);margin:0 0 .5em}
.falg-match-notes{list-style:none;margin:.5em 0 0;padding:0;font-size:.86rem}
.falg-match-notes li{margin:.22em 0;padding-left:1.2em;position:relative}
.falg-match-notes li::before{content:"";position:absolute;left:0;top:.55em;width:6px;height:6px;border-radius:50%;background:var(--falg-accent)}
.falg-match-notes li.is-good::before{background:var(--falg-good)}
.falg-match-notes li.is-warn::before{background:var(--falg-warn)}
.falg-match-notes li.is-bad::before{background:var(--falg-bad)}
.falg-match-actions{margin-top:.7em;display:flex;flex-wrap:wrap;gap:.5em}
.falg-match-actions a{font-size:.85rem;font-weight:600;text-decoration:none;padding:.35em .8em;border:1px solid var(--falg-line);border-radius:7px}
.falg-match-actions a:hover{border-color:var(--falg-accent)}
.falg-excluded{margin-top:1.6em;font-size:.88rem;color:var(--falg-ink-2)}
.falg-excluded summary{cursor:pointer;font-weight:600;color:var(--falg-primary)}

/* --------------------------------------------------------- budget tool */
.falg-budget-tool{border:1px solid var(--falg-line);border-radius:var(--falg-radius);padding:1.4em}
.falg-budget-controls{display:flex;flex-wrap:wrap;gap:1.4em;align-items:flex-end;margin-bottom:1.2em}
.falg-budget-controls .falg-slider{flex:1;min-width:250px;margin-bottom:0}
.falg-budget-out{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.6em}
.falg-budget-row{border:1px solid var(--falg-line);border-radius:9px;padding:.8em .9em;font-size:.88rem}
.falg-budget-row.is-ok{border-color:var(--falg-good);background:#f4fbf6}
.falg-budget-row.is-tight{border-color:var(--falg-warn);background:#fffaf3}
.falg-budget-row.is-no{opacity:.6}
.falg-budget-row b{display:block;color:var(--falg-primary);font-size:.98rem}
.falg-budget-row span{color:var(--falg-ink-2)}

/* ------------------------------------------------------------ checklist */
.falg-checklist-tool{border:1px solid var(--falg-line);border-radius:var(--falg-radius);padding:1.4em;margin:1.6em 0}
.falg-checklist-controls{display:flex;flex-wrap:wrap;gap:1.1em;align-items:flex-end;margin-bottom:1.4em}
.falg-checklist-controls label{display:block;font-size:.85rem;font-weight:600;color:var(--falg-ink-2)}
.falg-checklist-controls select{
	display:block;margin-top:.3em;padding:.55em .8em;border:1px solid var(--falg-line);border-radius:8px;
	font-family:inherit;font-size:.95rem;min-width:220px;max-width:100%;background:#fff;color:var(--falg-ink);
}
.falg-checklist{list-style:none;margin:1.2em 0 0;padding:0}
.falg-check-item{display:grid;grid-template-columns:1.6em 1fr;gap:.7em;padding:.85em 0;border-bottom:1px solid var(--falg-line-2);margin:0}
.falg-check-box{width:18px;height:18px;border:2px solid var(--falg-line);border-radius:4px;margin-top:.25em}
.falg-check-name{display:block;font-weight:650;color:var(--falg-primary)}
.falg-check-note{display:block;font-size:.87rem;color:var(--falg-ink-2);margin-top:.25em}
.falg-check-lead{display:block;font-size:.78rem;color:var(--falg-ink-2);opacity:.85;margin-top:.2em}
.falg-chip{display:inline-block;padding:.14em .55em;border-radius:20px;font-size:.72rem;font-weight:700;margin:.3em .3em 0 0}
.falg-chip-fed{background:#e7effa;color:var(--falg-primary)}
.falg-chip-state{background:#fdf1e3;color:var(--falg-highlight)}
.falg-chip-route{background:var(--falg-bg-3);color:var(--falg-ink-2)}
.falg-chip-none{background:var(--falg-line-2);color:var(--falg-ink-2)}
.falg-check-summary{background:var(--falg-bg-2);border-radius:9px;padding:1em 1.1em;font-size:.92rem;margin-bottom:1em}
.falg-check-summary strong{color:var(--falg-primary)}
.falg-checklist-actions{margin-top:1.2em}

/* --------------------------------------------------------------- tables */
.falg-table-wrap{overflow-x:auto;border:1px solid var(--falg-line);border-radius:var(--falg-radius)}
.falg-table{width:100%;border-collapse:collapse;font-size:.88rem;min-width:640px;background:var(--falg-bg)}
.falg-table th,.falg-table td{padding:.65em .85em;text-align:left;border-bottom:1px solid var(--falg-line-2);vertical-align:top}
.falg-table thead th{background:var(--falg-bg-3);color:var(--falg-primary);font-weight:700;font-size:.8rem;
	text-transform:uppercase;letter-spacing:.04em;position:sticky;top:0;white-space:nowrap}
.falg-table tbody th{font-weight:650;color:var(--falg-primary)}
.falg-table tbody tr:hover{background:var(--falg-bg-2)}
.falg-sortable thead th[data-sort]{cursor:pointer;user-select:none}
.falg-sortable thead th[data-sort]:hover{background:var(--falg-line-2)}
.falg-sortable thead th.is-sorted::after{content:" \2193";opacity:.7}
.falg-sortable thead th.is-sorted.is-asc::after{content:" \2191"}
.falg-table-note{font-size:.82rem;color:var(--falg-ink-2);margin-top:.8em;max-width:76ch}
.falg-dots{display:inline-flex;gap:2px}
.falg-dot{width:7px;height:7px;border-radius:50%;background:var(--falg-line);display:inline-block}
.falg-dot.is-on{background:var(--falg-accent)}

/* ----------------------------------------------------------- misc lists */
.falg-twocol{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.6em}
.falg-section-split{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2em;align-items:start}
.falg-list-good,.falg-list-warn{list-style:none;padding:0}
.falg-list-good li,.falg-list-warn li{position:relative;padding-left:1.6em;margin:.5em 0;font-size:.94rem}
.falg-list-good li::before{content:"";position:absolute;left:0;top:.5em;width:9px;height:9px;border-radius:50%;background:var(--falg-good)}
.falg-list-warn li::before{content:"";position:absolute;left:0;top:.5em;width:9px;height:9px;border-radius:50%;background:var(--falg-warn)}
.falg-country-grid{list-style:none;margin:.6em 0 2em;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(255px,1fr));gap:.7em}
.falg-country-tile{margin:0}
.falg-country-tile a{display:block;padding:1em;border:1px solid var(--falg-line);border-radius:var(--falg-radius);
	text-decoration:none;color:inherit;transition:.14s;height:100%}
.falg-country-tile a:hover{border-color:var(--falg-accent);box-shadow:var(--falg-shadow)}
.falg-country-tile.is-advisory a{border-left:4px solid var(--falg-bad)}
.falg-tile-iso{display:inline-block;font-size:.68rem;font-weight:800;letter-spacing:.08em;color:#fff;background:var(--falg-primary);
	padding:.15em .45em;border-radius:4px;margin-bottom:.4em}
.falg-tile-name{display:block;font-weight:700;color:var(--falg-primary);font-size:1.02rem}
.falg-tile-tag{display:block;font-size:.83rem;color:var(--falg-ink-2);margin:.3em 0}
.falg-tile-meta{display:block;font-size:.78rem;color:var(--falg-ink-2);opacity:.9}
.falg-region{margin-top:1.8em;font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;color:var(--falg-highlight)}
.falg-hubs{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.1em}
.falg-hub{border:1px solid var(--falg-line);border-radius:var(--falg-radius);padding:1.1em}
.falg-hub h3{margin-top:0;font-size:1.05rem}
.falg-hub-who{font-size:.85rem;color:var(--falg-highlight);font-weight:600}
.falg-hub p{font-size:.9rem}
.falg-hub-cost{font-size:.87rem;color:var(--falg-ink-2);margin-bottom:0}
.falg-communities,.falg-official{list-style:none;padding:0}
.falg-communities li,.falg-official li{padding:.6em 0;border-bottom:1px solid var(--falg-line-2);font-size:.92rem;margin:0}
.falg-comm-type{display:inline-block;font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;font-weight:700;
	background:var(--falg-bg-3);color:var(--falg-ink-2);padding:.12em .5em;border-radius:4px;margin-right:.5em}
.falg-comm-note,.falg-official-what{display:block;font-size:.85rem;color:var(--falg-ink-2);margin-top:.15em}
.falg-visa-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.1em}
.falg-visa-card{border:1px solid var(--falg-line);border-radius:var(--falg-radius);padding:1.2em}
.falg-visa-card h3{margin-top:0;font-size:1.05rem}
.falg-visa-best{font-size:.88rem;color:var(--falg-ink-2)}
.falg-visa-facts{margin:.9em 0;display:grid;gap:.35em}
.falg-visa-facts div{display:grid;grid-template-columns:9.5em 1fr;gap:.5em;font-size:.85rem}
.falg-visa-facts dt{color:var(--falg-ink-2);font-weight:600}
.falg-visa-facts dd{margin:0;font-weight:600;color:var(--falg-primary)}
.falg-deflist div{display:grid;grid-template-columns:13em 1fr;gap:1em;padding:.6em 0;border-bottom:1px solid var(--falg-line-2)}
.falg-deflist dt{font-weight:700;color:var(--falg-primary);font-size:.9rem}
.falg-deflist dd{margin:0;font-size:.93rem}
.falg-budget-tiers{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1em;margin:1.4em 0}
.falg-tier{border:1px solid var(--falg-line);border-radius:var(--falg-radius);padding:1.1em}
.falg-tier h3{margin-top:0}
.falg-tier dl{margin:0}
.falg-tier div{display:flex;justify-content:space-between;padding:.35em 0;border-bottom:1px solid var(--falg-line-2);font-size:.92rem}
.falg-tier dt{color:var(--falg-ink-2)}
.falg-tier dd{margin:0;font-weight:700;color:var(--falg-primary)}
.falg-doclist{display:grid;gap:.5em}
.falg-doc{border:1px solid var(--falg-line);border-radius:9px;padding:.85em 1em}
.falg-doc summary{cursor:pointer;font-weight:650;color:var(--falg-primary);list-style:none}
.falg-doc summary::-webkit-details-marker{display:none}
.falg-doc summary::before{content:"+ ";color:var(--falg-highlight);font-weight:800}
.falg-doc[open] summary::before{content:"\2212 "}
.falg-doc-name{margin-right:.5em}
.falg-doc-body{margin-top:.8em;font-size:.9rem}
.falg-doc-body p{margin:.5em 0}
.falg-faq{display:grid;gap:.5em}
.falg-faq-item{border:1px solid var(--falg-line);border-radius:9px;padding:.9em 1.1em}
.falg-faq-item summary{cursor:pointer;font-weight:650;color:var(--falg-primary);list-style:none}
.falg-faq-item summary::-webkit-details-marker{display:none}
.falg-faq-item summary::before{content:"+ ";color:var(--falg-highlight);font-weight:800}
.falg-faq-item[open] summary::before{content:"\2212 "}
.falg-faq-a{margin-top:.6em;font-size:.94rem}
.falg-faq-a p{margin:.5em 0}
.falg-glossary{margin:1.4em 0}
.falg-gloss-search input{width:100%;max-width:420px;padding:.65em .9em;border:1px solid var(--falg-line);border-radius:9px;font-family:inherit;font-size:1rem}
.falg-gloss-list{margin:1.4em 0 0}
.falg-gloss-item{padding:.75em 0;border-bottom:1px solid var(--falg-line-2)}
.falg-gloss-item dt{font-weight:700;color:var(--falg-primary)}
.falg-gloss-item dd{margin:.2em 0 0;font-size:.94rem;color:var(--falg-ink-2)}
.falg-gloss-item[hidden]{display:none}
.falg-vs-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.4em}
.falg-vs-list a{display:block;padding:.6em .8em;border:1px solid var(--falg-line);border-radius:8px;text-decoration:none;font-size:.9rem}
.falg-vs-list a:hover{border-color:var(--falg-accent)}
.falg-related-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.5em}
.falg-related-list li{display:flex;flex-direction:column;padding:.7em .9em;border:1px solid var(--falg-line);border-radius:8px;margin:0}
.falg-vs{font-size:.78rem;color:var(--falg-ink-2)}
.falg-diffs{list-style:none;padding:0}
.falg-diffs li{padding:.7em .9em;background:var(--falg-bg-2);border-radius:8px;margin:.4em 0;font-size:.94rem}
.falg-compare-form{display:flex;flex-wrap:wrap;gap:1em;align-items:flex-end}
.falg-compare-form label{display:block;font-size:.85rem;font-weight:600;color:var(--falg-ink-2)}
.falg-compare-form select{display:block;margin-top:.3em;padding:.55em .8em;border:1px solid var(--falg-line);border-radius:8px;font-family:inherit;font-size:.95rem;min-width:200px;background:#fff}
.falg-usfacts{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.2em}
.falg-usfact{border:1px solid var(--falg-line);border-radius:var(--falg-radius);padding:1.2em}
.falg-usfact h3{margin-top:0;font-size:1.04rem}
.falg-usfact ul{font-size:.9rem;padding-left:1.1em}
.falg-links{font-size:.86rem}
.falg-prose p{max-width:76ch}
.falg-longform p{font-size:1.03rem;max-width:70ch}
.falg-subnav{margin:1.4em 0;overflow-x:auto}
.falg-subnav ul{list-style:none;margin:0;padding:0;display:flex;gap:.4em;min-width:max-content}
.falg-subnav a{display:block;padding:.45em .9em;font-size:.86rem;font-weight:600;text-decoration:none;color:var(--falg-ink-2);
	border:1px solid var(--falg-line);border-radius:20px;white-space:nowrap}
.falg-subnav a:hover,.falg-subnav a.is-active{background:var(--falg-primary);color:#fff;border-color:var(--falg-primary)}

/* ------------------------------------------------------------ freshness */
.falg-fresh{display:flex;flex-wrap:wrap;align-items:center;gap:.5em;font-size:.83rem;color:var(--falg-ink-2);
	padding:.7em .9em;background:var(--falg-bg-2);border-radius:8px;margin:1.6em 0}
.falg-fresh-dot{width:9px;height:9px;border-radius:50%;background:var(--falg-good);flex:0 0 9px}
.falg-fresh-aging .falg-fresh-dot{background:var(--falg-warn)}
.falg-fresh-stale .falg-fresh-dot,.falg-fresh-unknown .falg-fresh-dot{background:var(--falg-bad)}
.falg-fresh-text{font-weight:700;color:var(--falg-primary)}
.falg-fresh-warn{color:var(--falg-bad);font-weight:600}
.falg-fresh-src{opacity:.85}

/* --------------------------------------------------------- ask and lead */
.falg-ask,.falg-lead{border:1px solid var(--falg-line);border-radius:var(--falg-radius);padding:1.4em;margin:2.2em 0;background:var(--falg-bg-2)}
.falg-ask h3,.falg-lead h3{margin-top:0}
.falg-ask-intro,.falg-lead p{font-size:.9rem;color:var(--falg-ink-2);max-width:70ch}
.falg-ask-form,.falg-lead-form{display:flex;flex-wrap:wrap;gap:.6em;margin-top:.9em}
.falg-ask-input,.falg-lead-email{flex:1;min-width:230px;padding:.7em .9em;border:1px solid var(--falg-line);
	border-radius:9px;font-family:inherit;font-size:.98rem;background:#fff;color:var(--falg-ink)}
.falg-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.falg-ask-out{margin-top:1em;font-size:.95rem}
.falg-ask-answer{background:#fff;border-left:4px solid var(--falg-accent);padding:.9em 1.1em;border-radius:0 8px 8px 0}
.falg-ask-answer p{margin:.4em 0}
.falg-ask-err{color:var(--falg-bad);font-weight:600}
.falg-lead-out{margin:.7em 0 0;font-size:.9rem;font-weight:600}
.falg-lead-out.is-ok{color:var(--falg-good)}
.falg-lead-out.is-err{color:var(--falg-bad)}

/* ------------------------------------------------------------------ cta */
.falg-cta{margin:2.8em 0 1.6em;background:var(--falg-primary);color:#fff;border-radius:var(--falg-radius);padding:1.8em}
.falg-cta h3{color:#fff;margin-top:0;font-size:1.24rem}
.falg-cta p{color:rgba(255,255,255,.9);font-size:.95rem;max-width:72ch}
.falg-cta em{color:#fff;font-style:normal;font-weight:700;text-decoration:underline}
.falg-cta-stat{background:rgba(255,255,255,.12);padding:.7em .9em;border-radius:8px}
.falg-cta-stat strong{color:#fff}
.falg-cta-actions{display:flex;flex-wrap:wrap;gap:.6em;margin:1.2em 0 0}
.falg-cta .falg-btn-primary{background:#fff;color:var(--falg-primary);border-color:#fff}
.falg-cta .falg-btn-primary:hover{background:var(--falg-bg-3);color:var(--falg-primary)}
.falg-cta .falg-btn-ghost{color:#fff;border-color:rgba(255,255,255,.45)}
.falg-cta .falg-btn-ghost:hover{background:rgba(255,255,255,.12);color:#fff;border-color:#fff}

.falg-disclaimer{font-size:.8rem;color:var(--falg-ink-2);line-height:1.6;padding:1.2em;background:var(--falg-bg-2);
	border-radius:8px;margin-top:2em;max-width:none}
.falg-notice{padding:1em;background:var(--falg-bg-2);border-radius:8px;font-size:.92rem}
.falg-embed{padding-bottom:0}

/* --------------------------------------------------------------- mobile */
@media (max-width:820px){
	.falg-app{font-size:16px;padding:0 15px 48px}
	.falg-runway-grid{grid-template-columns:1fr}
	.falg-ladder-row{grid-template-columns:8em 1fr 4.6em}
	.falg-scores li{grid-template-columns:7.6em 1fr 2.2em;font-size:.84rem}
	.falg-visa-facts div{grid-template-columns:8em 1fr}
	.falg-deflist div{grid-template-columns:1fr;gap:.2em}
	.falg-match{grid-template-columns:1fr}
	.falg-match-score{text-align:left;display:flex;align-items:baseline;gap:.5em}
	.falg-carto-canvas svg{min-width:560px}
}
@media (max-width:520px){
	.falg-hero-stats{gap:1em}
	.falg-ladder-row{grid-template-columns:1fr;gap:.2em}
	.falg-ladder-row .falg-ladder-prog{grid-column:1}
	.falg-ladder-val{text-align:left}
	.falg-cta{padding:1.3em}
}

/* ---------------------------------------------------------------- print */
@media print{
	.falg-toolbar,.falg-subnav,.falg-crumbs,.falg-ask,.falg-lead,.falg-cta,.falg-carto-controls,
	.falg-wiz-nav,.falg-checklist-actions,.falg-runway-controls,.falg-ladder-input{display:none!important}
	.falg-app{max-width:none;padding:0;font-size:11pt;color:#000}
	.falg-app h1,.falg-app h2,.falg-app h3{color:#000}
	.falg-check-item{break-inside:avoid;page-break-inside:avoid}
	.falg-check-box{border-color:#000}
	.falg-doc,.falg-faq-item{break-inside:avoid}
	.falg-faq-item .falg-faq-a,.falg-doc .falg-doc-body{display:block!important}
	.falg-table{font-size:9pt}
	.falg-app a{color:#000;text-decoration:none}
	.falg-app a[href^="http"]::after{content:" (" attr(href) ")";font-size:8pt;color:#555;word-break:break-all}
}

/* --------------------------------------------------- reduced motion, dark */
@media (prefers-reduced-motion:reduce){
	.falg-app *{transition:none!important;animation:none!important}
}


/* ---------------------------------------- on-this-page nav + related grid */
.falg-toc{margin:1.6em 0;padding:1em 1.2em;background:var(--falg-bg-2);border-radius:var(--falg-radius);
	border:1px solid var(--falg-line)}
.falg-toc-label{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.07em;font-weight:700;
	color:var(--falg-ink-2);margin-bottom:.5em}
.falg-toc ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.35em .5em}
.falg-toc li{margin:0}
.falg-toc a{display:inline-block;padding:.32em .75em;border:1px solid var(--falg-line);border-radius:20px;
	font-size:.84rem;font-weight:600;text-decoration:none;background:var(--falg-bg);color:var(--falg-ink-2)}
.falg-toc a:hover{border-color:var(--falg-accent);color:var(--falg-primary)}
.falg-related-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.6em}
.falg-related-cols h3{margin-top:0;font-size:.98rem}
.falg-related-cols .falg-related-list{display:block}
.falg-related-cols .falg-related-list li{border:0;padding:.25em 0;background:none}
.falg-app :target{scroll-margin-top:80px}
@media print{.falg-toc{display:none!important}}


/* ============================================================================
   PANELS
   Every interactive block (cartogram, ladder, runway, timeline, pipeline,
   wizard, budget tool) reads as the same object: a raised white surface on the
   page. Defining that once here keeps them consistent as blocks are added.
   ========================================================================= */
.falg-carto-canvas,
.falg-stack,
.falg-ladder,
.falg-timeline,
.falg-pipeline,
.falg-runway,
.falg-wizard,
.falg-budget-tool{
	border:1px solid var(--falg-line);
	border-radius:var(--falg-radius);
	background:var(--falg-bg);
	box-shadow:var(--falg-shadow-1);
	padding:1.6em;
}
.falg-carto-canvas{
	padding:1.5em 1.3em 1.2em;
	background:
		radial-gradient(90% 120% at 50% 0%,#fbfcfe,transparent 70%),
		linear-gradient(180deg,var(--falg-bg-2),#f2f6fb);
}
.falg-pipeline{background:linear-gradient(180deg,var(--falg-bg-2),#f2f6fb)}

/* Panel headings share one voice. */
.falg-carto-title,
.falg-stack-head strong,
.falg-ladder-head strong,
.falg-timeline-head strong,
.falg-pipeline-head strong{
	font-size:1.14rem;font-weight:700;color:var(--falg-primary);letter-spacing:-.014em;
}

/* --------------------------------------------------------------- controls */
.falg-carto-metric,
.falg-ladder-income,
.falg-app select,
.falg-app input[type=text],
.falg-app input[type=number],
.falg-app input[type=email]{
	font-family:inherit;font-size:.92rem;padding:.62em .85em;color:var(--falg-ink);
	border:1.5px solid var(--falg-line);border-radius:var(--falg-radius-sm);
	background:var(--falg-bg);transition:border-color .15s ease,box-shadow .15s ease;
}
.falg-carto-metric:focus,
.falg-ladder-income:focus,
.falg-app select:focus,
.falg-app input[type=text]:focus,
.falg-app input[type=number]:focus,
.falg-app input[type=email]:focus{
	outline:none;border-color:var(--falg-accent);
	box-shadow:0 0 0 3px color-mix(in srgb,var(--falg-accent) 16%,transparent);
}

/* Hexagons get a soft lift so the map reads as interactive. */
.falg-hex polygon{stroke:#fff;stroke-width:2.5;transition:transform .14s ease,filter .14s ease}
.falg-hex{transform-box:fill-box;transform-origin:center}
.falg-hex:hover{filter:drop-shadow(0 4px 10px rgba(10,35,60,.28))}
.falg-hex:hover polygon,.falg-hex:focus polygon{stroke:var(--falg-primary);stroke-width:3}
.falg-carto-legend{margin-top:1.1em;font-size:.79rem}
.falg-legend-ramp{height:10px;border-radius:6px}

/* -------------------------------------------------------- income ladder */
.falg-ladder-row{padding:.62em 0;grid-template-columns:11em 1fr 5.6em}
.falg-ladder-track{height:13px;border-radius:7px;background:var(--falg-line-2)}
.falg-ladder-fill{background:linear-gradient(90deg,var(--falg-accent),#3f7ac2)}
.falg-ladder-row.is-ok .falg-ladder-fill{background:linear-gradient(90deg,#0a7d33,#2aa355)}
.falg-ladder-name{font-weight:650;color:var(--falg-primary)}
.falg-ladder-row:hover{background:var(--falg-bg-2)}
.falg-ladder-val{font-size:.9rem;color:var(--falg-primary)}

/* ------------------------------------------------------------ sister tool */
.falg-sister{
	margin-top:3.4em;padding:1.7em 1.8em;border-radius:var(--falg-radius);
	background:linear-gradient(135deg,var(--falg-primary),var(--falg-primary-deep));
	border:0;box-shadow:var(--falg-shadow-2);
}
.falg-app.falg-app .falg-sister h2{color:#fff;border-top:0;padding-top:0;margin:0 0 .5em;font-size:1.3rem}
.falg-app.falg-app .falg-sister h2::before{display:none}
.falg-app.falg-app .falg-sister p{color:rgba(255,255,255,.82);max-width:64ch;margin-bottom:1.1em}
.falg-app.falg-app .falg-sister .falg-related-list{display:flex;flex-wrap:wrap;gap:.6em;list-style:none;padding:0;margin:0}
.falg-app.falg-app .falg-sister .falg-related-list li{margin:0}
.falg-app.falg-app .falg-sister a{
	display:inline-block;padding:.6em 1.1em;border-radius:100px;font-size:.9rem;font-weight:600;
	color:#fff;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.24);
	text-decoration:none;transition:background .16s ease,border-color .16s ease;
}
.falg-app.falg-app .falg-sister a:hover{background:rgba(255,255,255,.22);border-color:rgba(255,255,255,.45)}

/* ============================================================================
   HOST-THEME DEDUPLICATION
   Many WordPress themes print the page title twice: once in the hero banner
   and again above the content. On our own generated pages that leaves three
   near-identical headings stacked before any content, so we hide the
   in-content copy and keep the banner.

   These match the theme's *classed* title only. Our own H1 carries no class,
   so it can never be caught by this, and the rules are scoped to the body
   class the router sets, so no other page on the site is touched.
   ========================================================================= */
body.falg-page :is(h1,h2,h3).page-title,
body.falg-page :is(h1,h2,h3).entry-title,
body.falg-page :is(h1,h2,h3).post-title,
body.falg-page :is(main,.main,.site-main,article,.content-area)>header.entry-header,
body.falg-page :is(main,.main,.site-main,article,.content-area)>.page-header{display:none}

/* ------------------------------------------------------------- responsive */
@media (max-width:820px){
	.falg-app{font-size:16px;padding-bottom:56px}
	.falg-hero{padding:2em 1.4em 1.9em;margin-bottom:2.2em}
	.falg-hero-stats>*{max-width:15em;padding-right:1.2em;margin-right:1.2em}
	.falg-hero-stats strong{font-size:1.5rem}
	.falg-section{margin:2.6em 0}
	.falg-carto-canvas,.falg-stack,.falg-ladder,.falg-timeline,
	.falg-pipeline,.falg-runway,.falg-wizard,.falg-budget-tool{padding:1.15em}
	.falg-sister{padding:1.4em 1.3em}
}
@media (max-width:560px){
	.falg-hero-stats{flex-direction:column;gap:0}
	.falg-hero-stats>*{max-width:15em;border-right:0;border-bottom:1px solid var(--falg-line);
		padding:.85em 0;margin:0;width:100%}
	.falg-hero-stats>*:last-child{border-bottom:0}
	.falg-hero-actions .falg-btn{width:100%;justify-content:center}
	.falg-ladder-row{grid-template-columns:1fr 4.6em;row-gap:.3em}
	.falg-ladder-row .falg-ladder-track{grid-column:1/3;order:3}
}

/* Respect a reader who has asked the OS for less movement. */
@media (prefers-reduced-motion:reduce){
	.falg-app *,.falg-app *::before,.falg-app *::after{
		transition-duration:.01ms !important;animation-duration:.01ms !important;
	}
	.falg-card:hover,.falg-btn:hover{transform:none}
}

/* ============================================================================
   TOUCH AND SMALL SCREENS
   Most of this traffic arrives on a phone, so the rules below are corrections
   for real handheld failures rather than cosmetic tweaks.
   ========================================================================= */

/* iOS zooms the whole page when a focused field is under 16px. Any control a
   reader can type into therefore has to hit 16px on a touch device, whatever
   the desktop scale says. */
@media (pointer:coarse){
	.falg-app input,
	.falg-app select,
	.falg-app textarea,
	.falg-app input[type=email],
	.falg-app input[type=text],
	.falg-app input[type=number],
	.falg-app .falg-lead-email,
	.falg-app .falg-ask-input,
	.falg-carto-metric,
	.falg-ladder-income,
	.falg-map-metric{font-size:16px}

	/* Standalone links - resource lists, "read more", data rows - are tap
	   targets, not words in a sentence, so give them a finger-sized box. */
	.falg-app li>a,
	.falg-more,
	.falg-ext,
	.falg-ladder-name,
	.falg-match-actions a,
	.falg-toolbar a{
		display:inline-flex;align-items:center;min-height:40px;
	}
	/* Breadcrumbs keep a smaller target: the row has to stay on one baseline
	   with the plain-text current page, and it sits inside the tap-safe
	   heading area anyway. */
	.falg-crumbs ol{align-items:center}
	.falg-crumbs a{display:inline-flex;align-items:center;min-height:32px}
	.falg-app :not(.falg-toolbar):not(.falg-crumbs)>ul>li>a,
	.falg-app :not(.falg-toolbar):not(.falg-crumbs)>ol>li>a{padding:.15em 0}
	.falg-app .falg-toolbar a{min-height:46px;padding:.78em 1.05em}
	/* A card's heading is the card's tap target. */
	.falg-app :is(h2,h3,h4)>a{display:inline-flex;align-items:center;min-height:40px}

	/* Hover lifts do nothing on a touch screen and leave stuck states behind. */
	.falg-card:hover,.falg-btn:hover{transform:none}

	/* Sliders need a bigger thumb to be usable with a thumb. */
	.falg-app input[type=range]{height:30px}
}

@media (max-width:820px){
	/* 11px uppercase is legible on a desktop monitor and not on a phone. */
	.falg-facts dt,
	.falg-runway-stats dt,
	.falg-eyebrow{font-size:12px}
	.falg-carto-note,.falg-ladder-note,.falg-runway-note{font-size:.88rem}
	/* SVG labels are drawn at roughly 1:1 on a phone, so 11px really is 11px. */
	.falg-radar-axis,.falg-line-tick,.falg-axis-label{font-size:13px}

	/* Anything that cannot reflow scrolls inside its own box rather than
	   pushing the page sideways. */
	.falg-app table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}
	.falg-app pre,.falg-app code{overflow-x:auto;max-width:100%}

	/* Two-column tool layouts become one column. */
	.falg-runway-grid,
	.falg-schengen-grid,
	.falg-finder-grid,
	.falg-weights{grid-template-columns:1fr}

	/* Full-bleed panels read better than 12px side gutters on a narrow screen. */
	.falg-cards{grid-template-columns:1fr}
}

@media (max-width:400px){
	.falg-app{padding-left:14px;padding-right:14px}
	.falg-hero{padding:1.6em 1.15em 1.5em;border-radius:12px}
	.falg-app h1{font-size:1.85rem}
	.falg-toolbar a{padding-left:.75em;padding-right:.75em}
}

/* A phone in landscape, or any short viewport, should not get desktop margins. */
@media (max-height:520px) and (orientation:landscape){
	.falg-section{margin:2em 0}
	.falg-hero{padding-top:1.6em;padding-bottom:1.4em}
}


/* ============================================================================
   LEGALISATION-SPECIFIC COMPONENTS
   ========================================================================= */

/* ------------------------------------------------------------------- chain */
.falg-chain{margin:2em 0;border:1px solid var(--falg-line);border-radius:var(--falg-radius);
	background:var(--falg-bg);box-shadow:var(--falg-shadow-1);padding:1.6em}
.falg-chain-head{margin-bottom:1.2em}
.falg-chain-sub{display:block;font-size:.92rem;color:var(--falg-ink-2);margin-top:.3em;max-width:70ch}
.falg-chain-steps{list-style:none;margin:0;padding:0;position:relative}
/* The spine makes the ordering unmissable, which is the whole point. */
.falg-chain-steps::before{content:"";position:absolute;left:15px;top:14px;bottom:14px;width:2px;
	background:linear-gradient(180deg,var(--falg-primary),var(--falg-highlight));border-radius:2px}
.falg-chain-step{display:grid;grid-template-columns:32px 1fr;gap:1em;margin:0 0 1.3em;position:relative}
.falg-chain-step:last-child{margin-bottom:0}
.falg-chain-num{width:32px;height:32px;border-radius:50%;background:var(--falg-primary);color:#fff;
	display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700;
	position:relative;z-index:1;box-shadow:0 0 0 4px var(--falg-bg)}
.falg-chain-step.is-conditional .falg-chain-num{background:var(--falg-bg);color:var(--falg-ink-2);
	border:2px dashed var(--falg-line);box-shadow:0 0 0 4px var(--falg-bg)}
.falg-chain-title{display:block;font-weight:700;color:var(--falg-primary);font-size:1.03rem;margin-bottom:.3em}
.falg-chain-meta{display:flex;flex-wrap:wrap;gap:.4em .9em;font-size:.82rem;color:var(--falg-ink-3);margin-bottom:.45em}
.falg-chain-meta span{white-space:nowrap}
.falg-chain-meta span+span::before{content:"·";margin-right:.9em;color:var(--falg-line)}
.falg-chain-detail{display:block;font-size:.93rem;color:var(--falg-ink-2);line-height:1.55;max-width:72ch}
.falg-chain-pitfall{display:block;margin-top:.55em;font-size:.9rem;color:#7a3d0a;background:#fdf3e8;
	border-left:3px solid var(--falg-highlight);padding:.6em .85em;border-radius:0 8px 8px 0;max-width:72ch}

/* ------------------------------------------------------------- chips */
.falg-chip{display:inline-block;padding:.16em .6em;border-radius:100px;font-size:.72rem;font-weight:700;
	font-style:normal;letter-spacing:.01em;vertical-align:middle;margin-left:.4em}
.falg-chip-soft{background:var(--falg-line-2);color:var(--falg-ink-2)}
.falg-chip-warn{background:#fdf1e3;color:#7a3d0a}
.falg-chip-ok{background:#e6f4ea;color:var(--falg-good)}

/* -------------------------------------------------------------- districts */
.falg-districts{margin:2em 0;border:1px solid var(--falg-line);border-radius:var(--falg-radius);
	background:var(--falg-bg);box-shadow:var(--falg-shadow-1);padding:1.6em}
.falg-districts-head{margin-bottom:1em}
.falg-districts-head strong{font-size:1.14rem;color:var(--falg-primary);font-weight:700}
.falg-districts-sub{display:block;font-size:.9rem;color:var(--falg-ink-2);margin-top:.3em;max-width:70ch}
.falg-districts-canvas{overflow-x:auto;padding:.4em 0}
.falg-districts-canvas svg{display:block;width:100%;height:auto;min-width:560px}
.falg-state{cursor:default}
.falg-state rect{transition:filter .14s ease}
.falg-state.is-hot rect{filter:brightness(1.15)}
.falg-state-label{font-size:13px;font-weight:700;fill:#fff;pointer-events:none}
.falg-districts-legend{list-style:none;margin:1.1em 0 0;padding:0;display:grid;
	grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.45em .9em}
.falg-districts-legend li{display:flex;align-items:center;gap:.5em;font-size:.88rem;margin:0}
.falg-districts-legend em{color:var(--falg-ink-3);font-style:normal;font-size:.8rem}
.falg-swatch{width:13px;height:13px;border-radius:3px;flex:0 0 13px}

/* -------------------------------------------------------------- countdown */
.falg-countdown{margin:1.6em 0;padding:1.3em 1.5em;border-radius:var(--falg-radius);
	background:linear-gradient(135deg,#fff8f1,#fdf1e3);border:1px solid #f0d9bf}
.falg-countdown.is-past{background:linear-gradient(135deg,#f0fdf4,#e6f4ea);border-color:#c3e6cd}
.falg-countdown-badge{display:inline-block;font-size:.7rem;font-weight:800;letter-spacing:.09em;
	text-transform:uppercase;color:#7a3d0a;margin-bottom:.55em}
.falg-countdown.is-past .falg-countdown-badge{color:var(--falg-good)}
.falg-countdown p{margin:0 0 .6em;max-width:74ch}
.falg-countdown-note{font-size:.86rem;color:var(--falg-ink-2);margin-bottom:0}

/* ------------------------------------------------------------------ split */
.falg-split{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.1em;margin:1.6em 0}
.falg-split-half{padding:1.4em 1.5em;border-radius:var(--falg-radius);border:1px solid var(--falg-line);
	background:var(--falg-bg);box-shadow:var(--falg-shadow-1)}
.falg-split-half.is-alt{background:var(--falg-bg-2)}
.falg-split-half h2,.falg-split-half h3{margin-top:0;border-top:0;padding-top:0;font-size:1.1rem}
.falg-split-half h2::before,.falg-split-half h3::before{display:none}

/* ---------------------------------------------------------------- reasons */
.falg-reasons{list-style:none;margin:1.4em 0 0;padding:0;counter-reset:r}
.falg-reason{display:grid;grid-template-columns:34px 1fr;gap:1em;padding:.95em 0;
	border-bottom:1px solid var(--falg-line-2);margin:0}
.falg-reason:last-child{border-bottom:0}
.falg-reason-num{width:28px;height:28px;border-radius:50%;background:#fdf1e3;color:#7a3d0a;
	display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700}
.falg-reason strong{display:block;color:var(--falg-primary);margin-bottom:.2em}
.falg-reason span{display:block;font-size:.93rem;color:var(--falg-ink-2);max-width:74ch}

/* ----------------------------------------------------------------- finder */
.falg-finder{margin:2em 0;border:1px solid var(--falg-line);border-radius:var(--falg-radius);
	background:linear-gradient(180deg,var(--falg-bg-2),#f2f6fb);box-shadow:var(--falg-shadow-1);padding:1.7em}
.falg-finder-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.1em}
.falg-field{display:block}
.falg-field span{display:block;font-size:.85rem;font-weight:650;color:var(--falg-ink-2);margin-bottom:.4em}
.falg-field select{width:100%}
.falg-finder-out{margin-top:1.4em}
.falg-finder-idle{color:var(--falg-ink-3);font-size:.95rem;margin:0}
.falg-answer{padding:1.2em 1.4em;border-radius:var(--falg-radius-sm);background:var(--falg-bg);
	border-left:4px solid var(--falg-good);box-shadow:var(--falg-shadow-1)}
.falg-answer.is-warn{border-left-color:var(--falg-warn)}
.falg-answer-label{display:block;font-size:.7rem;font-weight:800;letter-spacing:.09em;
	text-transform:uppercase;color:var(--falg-good);margin-bottom:.45em}
.falg-answer.is-warn .falg-answer-label{color:var(--falg-warn)}
.falg-answer-main{font-size:1.2rem;font-weight:700;color:var(--falg-primary);margin:0 0 .15em;letter-spacing:-.014em}
.falg-answer-sub{font-size:.92rem;color:var(--falg-ink-2);margin:0 0 .6em}
.falg-answer-note{font-size:.9rem;color:var(--falg-ink-2);margin:.8em 0 0;
	padding:.65em .85em;background:var(--falg-bg-2);border-radius:8px}

/* --------------------------------------------------- country lists, flags */
.falg-regions{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.6em}
.falg-region h3{margin-top:0;font-size:1rem;text-transform:uppercase;letter-spacing:.06em;
	color:var(--falg-ink-3);font-weight:700}
.falg-country-list{list-style:none;margin:.6em 0 0;padding:0}
.falg-country-list li{margin:.15em 0;display:flex;align-items:center;flex-wrap:wrap;gap:.3em}
.falg-country-list a{font-weight:600;display:inline-flex;align-items:center;gap:.45em}
.falg-country-list-wide{display:grid;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:.15em .9em}
.falg-flag{font-size:1.05em;line-height:1}

/* --------------------------------------------------------------- sources */
.falg-sources ul{list-style:none;padding:0;margin:.6em 0 0}
.falg-sources li{margin:.4em 0;font-size:.92rem}
.falg-checked{color:var(--falg-ink-3);font-size:.82rem;margin-left:.4em}

/* -------------------------------------------------------------- glossary */
.falg-glossary{margin:1.2em 0 0}
.falg-glossary-item{padding:.95em 0;border-bottom:1px solid var(--falg-line-2)}
.falg-glossary-item:last-child{border-bottom:0}
.falg-glossary dt{font-weight:700;color:var(--falg-primary);font-size:1.02rem;margin-bottom:.25em}
.falg-glossary dd{margin:0;color:var(--falg-ink-2);max-width:76ch}

/* -------------------------------------------------------------- estimate */
.falg-estimate{overflow-x:auto;margin:1.4em 0;-webkit-overflow-scrolling:touch}
.falg-estimate .falg-table{min-width:540px}

/* ------------------------------------------------------------ responsive */
@media (max-width:820px){
	.falg-chain,.falg-districts,.falg-finder{padding:1.15em}
	.falg-chain-step{grid-template-columns:28px 1fr;gap:.75em}
	.falg-chain-num{width:28px;height:28px;font-size:.78rem}
	.falg-chain-steps::before{left:13px}
	.falg-regions{grid-template-columns:1fr;gap:1.2em}
	.falg-country-list-wide{grid-template-columns:1fr}
	.falg-split{grid-template-columns:1fr}
	.falg-districts-legend{grid-template-columns:1fr}
}

/* ------------------------------------------------------- mission status */
.falg-mission-notice{margin:1.6em 0;padding:1.3em 1.5em;border-radius:var(--falg-radius);
	background:linear-gradient(135deg,#fff8f1,#fdf1e3);border:1px solid #f0d9bf}
.falg-mission-notice.is-stop{background:linear-gradient(135deg,#fdf3f3,#fbeaea);border-color:#eccfcf}
.falg-mission-badge{display:inline-block;font-size:.7rem;font-weight:800;letter-spacing:.09em;
	text-transform:uppercase;color:#7a3d0a;margin-bottom:.55em}
.falg-mission-notice.is-stop .falg-mission-badge{color:var(--falg-bad)}
.falg-mission-notice p{margin:0 0 .5em;max-width:74ch}
.falg-mission-since{font-size:.86rem;color:var(--falg-ink-2);margin-bottom:0}
.falg-answer.is-stop{border-left-color:var(--falg-bad)}
.falg-answer.is-stop .falg-answer-label{color:var(--falg-bad)}

/* ------------------------------------------------------- matrix tables */
.falg-muted{color:var(--falg-ink-3)}
.falg-table th[scope=row]{font-weight:650;color:var(--falg-primary)}
.falg-table td .falg-chip{margin-left:0}

/* --------------------------------------------------- notarising abroad */
.falg-route{padding:1.4em 1.5em;margin:1.1em 0;border:1px solid var(--falg-line);
	border-radius:var(--falg-radius);background:var(--falg-bg);box-shadow:var(--falg-shadow-1)}
.falg-route.is-closed{background:var(--falg-bg-2);opacity:.72}
.falg-route h3{margin-top:0;font-size:1.1rem}
.falg-route .falg-facts{margin:.9em 0 0;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.falg-plain-steps{list-style:none;counter-reset:ps;padding:0}
.falg-plain-steps::before{display:none}
.falg-plain-steps li{counter-increment:ps;position:relative;padding:.7em 0 .7em 2.4em;
	border-bottom:1px solid var(--falg-line-2);margin:0}
.falg-plain-steps li:last-child{border-bottom:0}
.falg-plain-steps li::before{content:counter(ps);position:absolute;left:0;top:.7em;
	width:26px;height:26px;border-radius:50%;background:var(--falg-primary);color:#fff;
	display:flex;align-items:center;justify-content:center;font-size:.78rem;font-weight:700}

/* ------------------------------------------------------ marriage wizard */
.falg-wizard-lead{margin:0 0 1.1em;font-size:1.02rem;color:var(--falg-ink-2)}
.falg-wizard-lead strong{color:var(--falg-primary)}
.falg-finder-out .falg-estimate{margin:1.1em 0 .4em}
.falg-finder-out .falg-answer-note{margin-top:.5em}
