/* FARMLAND INDIA · WIKI & BLOG STYLESHEET v10.0 · 5 Nov 2026
   Same fi- classes, same authoring contract and deploy as v9 (nothing in any article changes):
   <link rel="stylesheet" href="/assets/css/farmland-wiki-v10.css?v=10.0">  once, on wiki and blog routes.
   Keep farmland-wiki-scrollspy.js (it toggles .fi-active on .fi-toc a and .fi-sidenav-link).
   Header height token: .fi-wiki{--h:51px}.

   What changed from v9: the article now follows the site's light identity (white page, soft green
   tinted containers with a hairline, deep-green ink, one yellow signal on the CTA, Inter only).
   The hero is light instead of dark, stats are tiles, the TOC is a card, callouts and FAQ are tinted
   cards, buttons match the live site (radius 10, lift on hover, press on tap), and the body column
   uses its full width (no blank strip). Type is tuned for long reads: 17.5px body on 1.75 leading,
   headings tighter as they grow, tabular figures in tables and stats.
   Rules: green is the only accent on light surfaces; yellow only on the primary CTA; no amber. */

/* ---------- 1. page guards + container neutraliser (unchanged from v9) ---------- */
body:has(.fi-wiki){overflow-x:clip;background:#FFFFFF!important}
:where(:not(html,body)):has(>.fi-wiki){background:0 0!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important;margin:0!important;overflow:visible!important}
body:has(.fi-wiki) main{padding:0!important;margin:0!important}
body:has(.fi-wiki) main>*{padding-bottom:0!important;margin-bottom:0!important}

/* ---------- 2. tokens ---------- */
.fi-wiki{
--ink:#0E2408;--text:#1B2B1F;--muted:#55665A;--faint:#8A978E;
--g700:#2D5109;--g500:#4C8514;--g300:#A9C58F;--g200:#D5E4C8;--g100:#E9F1E4;--g050:#F3F7F0;--tint:#F5F8F1;
--sun:#FFDA16;--sun2:#FFE34D;--sunline:#CBA224;--gold:#8A6914;--goldbg:#FFF6CC;--goldline:#EDD98A;
--clay:#B9471F;--claybg:#FBE6DC;--clayline:#F1C9B8;
--line:#E3E8E0;--line2:#D3DBCF;--hair:#E6ECE1;
--h:51px;--max:72rem;--px:clamp(1rem,4.5vw,2rem);--tap:2.75rem;
--r:18px;--rm:14px;--rs:10px;
--sh1:0 1px 2px rgba(14,36,8,.05),0 4px 12px rgba(14,36,8,.06);--sh2:0 2px 6px rgba(14,36,8,.07),0 16px 36px rgba(14,36,8,.12);
--ease:cubic-bezier(.22,1,.36,1);
/* legacy aliases so any article-side override written against v9 still resolves */
--dark:var(--ink);--dark2:#081603;--green:var(--g700);--green2:#244208;--amber:var(--g700);--yellow:var(--sun);--yellow2:var(--sun2);
--cream:#FFFFFF;--field:var(--tint);--rule:var(--line2);--gline:var(--g200);--measure:none;
font:1rem/1.6 Inter,'Inter Fallback',system-ui,-apple-system,'Segoe UI',sans-serif;font-feature-settings:'cv11','ss03';
color:var(--text);background:#fff;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
width:100vw;position:relative;left:50%;transform:translateX(-50%);overflow-x:clip}
.fi-wiki *,.fi-wiki ::before,.fi-wiki ::after{box-sizing:border-box}
.fi-wiki img,.fi-wiki svg,.fi-wiki video{max-width:100%;height:auto}
.fi-wiki a{color:var(--g700);text-decoration:none;transition:color .12s var(--ease)}
.fi-wiki a:hover{text-decoration:underline;text-underline-offset:.25em}
.fi-wiki :focus-visible{outline:2px solid var(--g500);outline-offset:3px;border-radius:6px}
.fi-wiki ::selection{background:rgba(255,218,22,.45)}
.fi-wiki :is(h1,h2,h3,h4){text-wrap:balance;scroll-margin-top:calc(var(--h) + 1.5rem);color:var(--ink);font-weight:700}
.fi-wiki :is(p,li){text-wrap:pretty}

/* ---------- 3. layout ---------- */
.fi-wrap{max-width:var(--max);margin-inline:auto;padding-inline:var(--px)}
.fi-hublayout{display:grid;grid-template-columns:15.5rem minmax(0,1fr) 18rem;gap:2.5rem;padding-block:2.5rem 5rem}
.fi-artlayout{display:grid;grid-template-columns:14.5rem minmax(0,1fr);gap:3rem;padding-block:2.5rem 5rem}
.fi-rail{display:flex;flex-direction:column;gap:1rem;align-self:start;min-width:0}
.fi-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.fi-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.fi-grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.875rem}

/* ---------- 4. hero: light rounded cover with a contour-map texture ---------- */
.fi-hero{padding:1rem 0 0}
.fi-hero>.fi-wrap{max-width:var(--max)}
.fi-hero .fi-wrap{position:relative;isolation:isolate;padding:clamp(1.75rem,2vw + 1.25rem,3rem) calc(var(--px) + clamp(1rem,2.5vw,2.5rem)) clamp(1.75rem,2vw + 1.25rem,3rem)}
.fi-hero .fi-wrap::before{content:'';position:absolute;inset:0 var(--px);z-index:-2;border-radius:var(--r);background:
 radial-gradient(44rem 20rem at 100% 0%,rgba(255,218,22,.22),transparent 62%),
 radial-gradient(34rem 22rem at 0% 100%,rgba(76,133,20,.14),transparent 60%),
 linear-gradient(180deg,#F7FAF3,var(--tint));box-shadow:0 0 0 1px var(--hair),0 24px 60px -30px rgba(14,36,8,.18)}
.fi-hero .fi-wrap::after{content:'';position:absolute;inset:0 var(--px);z-index:-1;border-radius:var(--r);pointer-events:none;
 background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22720%22%20height%3D%22420%22%20viewBox%3D%220%200%20720%20420%22%20fill%3D%22none%22%20stroke%3D%22%232D5109%22%20stroke-width%3D%221.1%22%20stroke-opacity%3D%22.2%22%3E%3Cpath%20d%3D%22M345%20170C347%20174%20349%20180%20346%20183C344%20187%20335%20188%20330%20190C325%20191%20320%20190%20316%20192C312%20193%20310%20196%20306%20198C302%20200%20297%20202%20293%20202C288%20202%20284%20200%20279%20198C275%20197%20269%20195%20266%20192C262%20190%20258%20186%20258%20182C258%20178%20263%20173%20265%20170C267%20167%20271%20165%20271%20162C272%20158%20268%20154%20269%20150C270%20146%20272%20140%20276%20138C280%20135%20287%20136%20292%20137C298%20137%20302%20139%20307%20140C311%20142%20316%20142%20319%20144C322%20146%20325%20150%20327%20152C329%20155%20330%20158%20333%20161C336%20163%20343%20166%20345%20170Z%22%2F%3E%3Cpath%20d%3D%22M388%20170C392%20177%20395%20189%20391%20196C386%20202%20369%20206%20359%20209C349%20211%20339%20209%20331%20212C323%20215%20320%20221%20312%20225C305%20228%20295%20232%20286%20232C277%20232%20268%20228%20259%20225C250%20222%20240%20219%20233%20214C226%20209%20219%20200%20218%20193C218%20186%20228%20177%20232%20170C236%20163%20243%20161%20244%20154C245%20148%20238%20138%20240%20130C241%20123%20246%20111%20253%20107C261%20102%20275%20104%20285%20105C295%20106%20304%20109%20313%20112C322%20114%20331%20116%20337%20120C344%20124%20348%20130%20352%20136C357%20141%20359%20146%20365%20152C371%20157%20384%20163%20388%20170Z%22%2F%3E%3Cpath%20d%3D%22M431%20170C437%20181%20442%20199%20435%20208C428%20218%20403%20223%20388%20228C373%20232%20358%20229%20346%20233C335%20237%20330%20246%20318%20251C307%20256%20292%20262%20279%20262C266%20262%20253%20256%20239%20252C226%20247%20210%20243%20200%20235C190%20227%20179%20215%20179%20204C178%20194%20193%20180%20199%20170C205%20160%20215%20156%20217%20146C219%20137%20208%20123%20210%20111C212%2099%20219%2082%20230%2076C242%2069%20263%2072%20278%2073C293%2074%20307%2080%20320%2084C332%2087%20346%2089%20355%2095C365%20101%20371%20111%20378%20119C385%20127%20388%20134%20397%20143C406%20151%20425%20159%20431%20170Z%22%2F%3E%3Cpath%20d%3D%22M474%20170C482%20185%20488%20208%20479%20221C469%20234%20436%20241%20417%20246C397%20252%20377%20248%20361%20253C346%20258%20339%20271%20324%20278C310%20284%20290%20292%20272%20292C255%20292%20237%20285%20219%20279C202%20273%20181%20267%20168%20257C154%20246%20139%20230%20139%20216C139%20201%20157%20183%20166%20170C174%20157%20187%20152%20190%20139C192%20126%20178%20108%20181%2092C184%2076%20192%2053%20207%2045C223%2037%20251%2040%20271%2041C291%2043%20309%2051%20326%2055C343%2060%20361%2063%20373%2071C386%2079%20394%2092%20404%20102C413%20113%20417%20122%20428%20134C440%20145%20465%20155%20474%20170Z%22%2F%3E%3Cpath%20d%3D%22M517%20170C527%20188%20535%20217%20523%20233C511%20249%20470%20259%20446%20265C421%20272%20396%20267%20377%20274C357%20280%20349%20296%20330%20304C312%20313%20287%20322%20266%20322C244%20322%20221%20313%20200%20306C178%20298%20152%20291%20135%20278C118%20265%20100%20245%2099%20227C99%20209%20122%20186%20133%20170C143%20154%20159%20147%20162%20131C165%20115%20148%2092%20151%2073C155%2053%20166%2025%20185%2014C203%204%20239%207%20264%2010C288%2012%20311%2021%20332%2027C354%2033%20375%2037%20392%2046C408%2056%20418%2072%20429%2085C441%2098%20446%20110%20460%20125C475%20139%20506%20152%20517%20170Z%22%2F%3E%3Cpath%20d%3D%22M560%20170C572%20192%20582%20227%20567%20246C553%20265%20504%20276%20474%20284C445%20292%20415%20286%20392%20294C369%20302%20359%20321%20336%20331C314%20341%20285%20352%20259%20352C233%20352%20206%20341%20180%20332C154%20324%20122%20315%20102%20299C82%20284%2060%20260%2060%20238C59%20217%2087%20189%20100%20170C112%20151%20131%20143%20135%20123C139%20104%20117%2077%20122%2053C126%2030%20139%20-4%20162%20-17C184%20-29%20227%20-25%20257%20-22C286%20-20%20313%20-8%20339%20-1C364%206%20390%2010%20410%2022C429%2033%20441%2053%20455%2069C468%2084%20474%2099%20492%20116C509%20132%20547%20148%20560%20170Z%22%2F%3E%3Cpath%20d%3D%22M603%20170C617%20195%20628%20236%20611%20258C595%20281%20537%20294%20503%20303C469%20312%20434%20305%20407%20315C380%20324%20368%20346%20342%20358C317%20369%20282%20382%20252%20382C222%20383%20190%20370%20160%20359C130%20349%2093%20339%2070%20321C46%20302%2020%20275%2020%20250C19%20224%2052%20192%2067%20170C81%20148%20103%20138%20108%20115C112%2093%2087%2061%2092%2034C98%207%20113%20-33%20139%20-47C165%20-62%20215%20-57%20249%20-54C284%20-51%20315%20-38%20345%20-29C375%20-21%20405%20-16%20428%20-3C450%2011%20464%2034%20480%2052C496%2070%20503%2087%20523%20107C544%20126%20588%20145%20603%20170Z%22%2F%3E%3Cpath%20d%3D%22M592%20330C590%20333%20587%20335%20585%20337C583%20339%20583%20342%20581%20344C579%20346%20577%20347%20574%20349C571%20350%20568%20351%20565%20352C562%20353%20558%20356%20554%20357C550%20357%20545%20356%20542%20354C539%20352%20539%20347%20539%20344C538%20341%20540%20338%20538%20336C537%20334%20533%20332%20532%20330C530%20328%20528%20324%20529%20321C529%20318%20533%20316%20535%20314C538%20312%20541%20310%20544%20308C547%20307%20551%20306%20555%20306C558%20306%20562%20309%20564%20310C567%20312%20569%20313%20572%20314C575%20314%20581%20313%20585%20314C588%20315%20594%20317%20595%20320C596%20323%20593%20327%20592%20330Z%22%2F%3E%3Cpath%20d%3D%22M632%20330C628%20336%20621%20341%20617%20346C613%20351%20612%20357%20608%20361C604%20366%20598%20369%20592%20373C585%20376%20579%20377%20571%20380C564%20383%20555%20389%20546%20390C538%20391%20525%20390%20519%20385C514%20380%20513%20368%20512%20362C510%20355%20514%20349%20511%20344C509%20339%20499%20336%20496%20330C492%20324%20488%20316%20489%20310C490%20304%20498%20298%20504%20293C509%20288%20516%20284%20524%20281C531%20278%20540%20275%20548%20276C555%20277%20563%20283%20570%20286C577%20289%20580%20292%20587%20293C595%20294%20607%20291%20616%20293C625%20296%20636%20301%20639%20308C642%20314%20635%20324%20632%20330Z%22%2F%3E%3Cpath%20d%3D%22M672%20330C666%20340%20655%20347%20649%20355C642%20363%20641%20372%20635%20379C628%20386%20619%20392%20609%20396C600%20401%20589%20404%20578%20408C566%20413%20552%20422%20539%20424C525%20425%20506%20423%20497%20416C488%20408%20487%20390%20485%20379C483%20369%20488%20360%20484%20352C480%20343%20466%20339%20460%20330C454%20321%20447%20308%20449%20299C451%20289%20463%20280%20472%20273C481%20265%20492%20258%20503%20253C515%20249%20529%20244%20541%20245C553%20247%20565%20256%20576%20261C586%20265%20591%20271%20603%20273C614%20275%20634%20269%20647%20273C661%20277%20679%20286%20683%20295C687%20305%20678%20320%20672%20330Z%22%2F%3E%3Cpath%20d%3D%22M712%20330C704%20344%20689%20353%20680%20364C672%20375%20670%20387%20661%20396C652%20406%20640%20414%20627%20420C614%20427%20600%20430%20584%20436C568%20442%20550%20456%20531%20457C513%20459%20486%20457%20474%20446C462%20436%20461%20411%20458%20397C455%20382%20462%20370%20457%20359C451%20348%20432%20342%20424%20330C416%20318%20407%20300%20410%20287C413%20274%20429%20262%20441%20252C453%20242%20467%20232%20483%20226C498%20220%20518%20213%20534%20215C550%20217%20567%20230%20581%20236C595%20242%20602%20249%20618%20252C634%20255%20660%20247%20678%20253C697%20258%20722%20270%20727%20282C733%20295%20720%20316%20712%20330Z%22%2F%3E%3Cpath%20d%3D%22M752%20330C742%20347%20723%20359%20712%20373C701%20387%20699%20402%20688%20414C677%20426%20661%20436%20644%20444C628%20453%20610%20457%20590%20464C570%20472%20547%20489%20524%20491C500%20493%20466%20490%20451%20477C436%20465%20434%20433%20431%20415C427%20396%20437%20381%20429%20367C422%20353%20398%20345%20388%20330C378%20315%20367%20293%20370%20276C374%20260%20394%20244%20409%20231C425%20218%20443%20206%20462%20198C482%20190%20506%20183%20527%20185C548%20187%20569%20203%20587%20211C604%20219%20613%20228%20633%20231C653%20235%20687%20226%20710%20232C733%20238%20764%20254%20772%20270C779%20286%20762%20313%20752%20330Z%22%2F%3E%3Cpath%20d%3D%22M792%20330C780%20351%20757%20365%20744%20382C731%20399%20728%20417%20715%20431C701%20446%20682%20458%20662%20468C642%20478%20621%20483%20597%20492C572%20502%20544%20522%20516%20524C488%20527%20447%20523%20428%20508C410%20493%20408%20454%20404%20432C399%20410%20411%20392%20402%20375C394%20358%20364%20348%20352%20330C340%20312%20326%20285%20330%20265C335%20245%20359%20226%20378%20211C396%20195%20418%20180%20442%20171C466%20161%20495%20152%20520%20154C545%20157%20571%20177%20592%20186C614%20196%20624%20207%20648%20211C673%20215%20713%20204%20741%20212C769%20219%20807%20238%20816%20257C824%20277%20804%20309%20792%20330Z%22%2F%3E%3C%2Fsvg%3E") right -6rem top -4rem/46rem auto no-repeat;
 -webkit-mask-image:linear-gradient(100deg,transparent 38%,#000 62%),radial-gradient(60% 90% at 100% 20%,#000 40%,transparent 100%);mask-image:linear-gradient(100deg,transparent 38%,#000 62%),radial-gradient(60% 90% at 100% 20%,#000 40%,transparent 100%);-webkit-mask-composite:source-in;mask-composite:intersect}
.fi-hero .fi-wrap>*{position:relative}
.fi-crumb{display:flex;flex-wrap:wrap;align-items:center;gap:.375rem .5rem;font-size:.8rem;margin-bottom:1.5rem;color:var(--muted)}
.fi-crumb a{color:var(--muted);padding:.25rem 0}
.fi-crumb a:hover{color:var(--g700);text-decoration:none}
.fi-crumb-sep{color:var(--line2)}
.fi-crumb-here{color:var(--ink);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:60vw}
.fi-eyebrow{display:inline-flex;align-items:center;gap:.5rem;background:#fff;box-shadow:inset 0 0 0 1px var(--g200),0 1px 2px rgba(14,36,8,.05);border:0;border-radius:999px;padding:.45rem .9rem;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--g700);margin-bottom:1.25rem}
.fi-eyebrow-dot{color:var(--g500);font-size:.6em;opacity:1;animation:fi-pulse 2.4s ease-in-out infinite}
@keyframes fi-pulse{0%,100%{opacity:1}50%{opacity:.35}}
.fi-hero-h1{font-size:clamp(2.125rem,1.2rem + 3vw,3.25rem);font-weight:700;line-height:1.06;letter-spacing:-.034em;color:var(--ink);margin:0 0 1.125rem;max-width:24ch}
.fi-hero-h1 em{font-style:normal;color:var(--g700);position:relative;display:inline-block;white-space:nowrap}
.fi-hero-h1 em::after{content:'';position:absolute;left:-1%;right:-1%;bottom:-.14em;height:.2em;background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20200%2012%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20d%3D%22M3%208.5C38%203.5%2086%2010.5%20128%206S182%204.5%20197%207.5%22%20fill%3D%22none%22%20stroke%3D%22%234C8514%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fsvg%3E") center/100% 100% no-repeat;clip-path:inset(0 100% 0 0);animation:fi-ul .7s .45s var(--ease) forwards}
@keyframes fi-ul{to{clip-path:inset(0 0 0 0)}}
.fi-hero-sub{font-size:clamp(1rem,.9rem + .45vw,1.19rem);color:var(--text);line-height:1.6;max-width:60ch;margin:0 0 1.375rem}
.fi-hero-meta{display:flex;flex-wrap:wrap;gap:.5rem;font-size:.82rem;color:var(--muted);font-variant-numeric:tabular-nums}
.fi-hero-meta span{display:inline-flex;align-items:center;gap:.4rem;min-height:1.9rem;padding:0 .75rem;border-radius:999px;background:rgba(255,255,255,.9);box-shadow:inset 0 0 0 1px var(--hair)}
.fi-hero-meta span::before{content:'';width:.4rem;height:.4rem;border-radius:50%;background:var(--g300)}
.fi-hero-ctas{display:flex;flex-wrap:wrap;gap:.625rem;margin-top:1.625rem}

/* ---------- 5. stats: tiles under the cover ---------- */
.fi-statbar{background:0 0;border:0;color:var(--ink)}
.fi-statbar .fi-wrap{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.75rem;padding-top:.75rem}
.fi-stat{padding:1rem 1.125rem;text-align:left;border:0;border-radius:var(--rm);background:var(--tint);box-shadow:0 0 0 1px var(--hair);position:relative}
.fi-stat::after{display:none}
.fi-stat-k{font-size:1.5rem;font-weight:800;letter-spacing:-.025em;line-height:1.1;color:var(--ink);margin-bottom:.25rem;font-variant-numeric:tabular-nums}
.fi-stat-v{font-size:.78rem;font-weight:500;letter-spacing:0;text-transform:none;color:var(--muted);line-height:1.4}
.fi-chip{display:inline-flex;flex-direction:column;gap:.125rem;background:#fff;box-shadow:inset 0 0 0 1px var(--line2);border:0;border-radius:var(--rs);padding:.625rem 1rem}
.fi-chip-num{font-size:1.125rem;font-weight:800;color:var(--ink);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.fi-chip-lbl{font-size:.7rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}

/* ---------- 6. side nav (hubs) + table of contents (articles) ---------- */
.fi-sidenav{background:#fff;border:0;box-shadow:0 0 0 1px var(--line);border-radius:var(--r);overflow:hidden;align-self:start;position:sticky;top:calc(var(--h) + 1.25rem);max-height:calc(100vh - var(--h) - 2.5rem);display:flex;flex-direction:column}
.fi-sidenav-head{background:var(--tint);color:var(--g700);font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.875rem 1.125rem;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:.55rem}
.fi-sidenav-group{font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--faint);padding:1rem 1.125rem .375rem}
.fi-sidenav a.fi-sidenav-link{display:flex;align-items:center;justify-content:space-between;gap:.5rem;min-height:var(--tap);padding:.5rem 1.125rem;font-size:.875rem;font-weight:500;line-height:1.4;color:var(--text);border-left:2px solid transparent;transition:.12s var(--ease)}
.fi-sidenav a.fi-sidenav-link:hover{background:var(--g050);color:var(--ink);text-decoration:none}
.fi-sidenav a.fi-sidenav-link.fi-active{background:var(--g050);border-left-color:var(--g700);color:var(--g700);font-weight:700}
.fi-hot{font-size:.75rem;opacity:.7}
.fi-toc{align-self:start;position:sticky;top:calc(var(--h) + 1.25rem);max-height:calc(100vh - var(--h) - 2.5rem);overflow-y:auto;scrollbar-width:none;padding:1.125rem 1.125rem 1rem;background:#fff;border-radius:var(--r);box-shadow:0 0 0 1px var(--line)}
.fi-toc::-webkit-scrollbar{display:none}
.fi-toc-h{font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--g700);margin:0 0 .5rem}
.fi-toc a{display:block;padding:.45rem 0;font-size:.875rem;line-height:1.4;color:var(--text);border-top:1px solid var(--line);transition:color .12s var(--ease)}
.fi-toc a:first-of-type{border-top:0}
.fi-toc a:hover{color:var(--g700);text-decoration:none}
.fi-toc a.fi-active{color:var(--g700);font-weight:700;margin-left:0;border-left:0}

/* ---------- 7. cards ---------- */
.fi-card,.fi-acard,.fi-refcard,.fi-quickconv{background:var(--tint);border:0;box-shadow:0 0 0 1px var(--hair);border-radius:var(--r)}
.fi-card{padding:1.375rem}
.fi-card-h,.fi-refcard-title{font-size:1.25rem;font-weight:700;letter-spacing:-.02em;line-height:1.25;color:var(--ink);margin:0 0 .375rem}
.fi-card-sub{font-size:.875rem;line-height:1.5;color:var(--muted);margin:0 0 1rem}
.fi-acard{padding:1.25rem 1.375rem;display:flex;flex-direction:column;gap:.375rem;transition:transform .25s var(--ease),box-shadow .25s var(--ease)}
.fi-acard:hover{transform:translateY(-2px);box-shadow:0 0 0 1px var(--g200),var(--sh2);text-decoration:none}
.fi-acard:active{transform:scale(.98)}
.fi-acard-kicker{font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--g700)}
.fi-acard-title{font-size:1rem;font-weight:700;letter-spacing:-.01em;color:var(--ink);line-height:1.35}
.fi-acard-desc,.fi-body .fi-acard-desc,.fi-body .fi-acard p{font-size:.875rem;color:var(--muted);line-height:1.55;margin:0}
.fi-body .fi-acard-title,.fi-body .fi-card-h{font-size:1rem;margin:0}
.fi-body .fi-card-sub,.fi-body .fi-card p{font-size:.9rem;line-height:1.55;margin:0 0 .75rem}
.fi-body .fi-card p:last-child{margin-bottom:0}
.fi-refcard{overflow:hidden;background:#fff}
.fi-refcard-head{padding:1.25rem 1.5rem;background:var(--tint);border-bottom:1px solid var(--line)}
.fi-refcard-sub{font-size:.8rem;color:var(--muted)}
.fi-promo{background:var(--ink);border-radius:var(--r);color:#fff;padding:1.625rem 1.5rem;position:relative;overflow:hidden;isolation:isolate}
.fi-promo::before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(28rem 14rem at 100% 0%,rgba(255,218,22,.16),transparent 60%)}
.fi-promo-kicker{font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--sun);margin-bottom:.625rem}
.fi-promo-title{font-size:1.3rem;font-weight:700;letter-spacing:-.02em;line-height:1.2;margin:0 0 .5rem;color:#fff}
.fi-promo-desc,.fi-body .fi-promo-desc{font-size:.875rem;color:#D4DFCD;line-height:1.6;margin:0 0 1.125rem}
.fi-quickconv{padding:1.25rem 1.375rem;background:#fff}
.fi-quickconv-h{font-size:1.06rem;font-weight:700;letter-spacing:-.012em;color:var(--ink);display:flex;align-items:center;gap:.5rem;margin:0 0 .75rem}
.fi-qc-row{padding:.625rem 0;border-bottom:1px solid var(--line)}
.fi-qc-row:last-child{border-bottom:0}
.fi-qc-eq{font-size:.9rem;font-variant-numeric:tabular-nums}
.fi-qc-eq strong{color:var(--ink);font-weight:700}
.fi-qc-note{font-size:.78rem;color:var(--muted);margin-top:.2rem}

/* ---------- 8. tables: in .fi-tscroll or bare in the body ---------- */
.fi-tscroll{overflow-x:auto;scrollbar-width:thin;margin:1.5rem 0;box-shadow:0 0 0 1px var(--line);border-radius:var(--rm);background:#fff}
.fi-tscroll .fi-table{margin:0;border:0;min-width:35rem}
.fi-table,.fi-body table:not(.fi-kv){width:100%;border-collapse:collapse;font-size:.9rem;line-height:1.45;font-variant-numeric:tabular-nums;background:#fff}
.fi-body table:not(.fi-kv,.fi-tscroll *){display:block;width:max-content;max-width:100%;overflow-x:auto;margin:1.5rem 0;box-shadow:0 0 0 1px var(--line);border-radius:var(--rm);scrollbar-width:thin}
.fi-table th,.fi-body table:not(.fi-kv) th{background:var(--tint);font-size:.7rem;font-weight:700;letter-spacing:.07em;line-height:1.35;text-transform:uppercase;color:var(--muted);text-align:left;padding:.75rem 1rem;border-bottom:1px solid var(--line);min-width:9rem;max-width:18rem;vertical-align:bottom}
.fi-table td,.fi-body table:not(.fi-kv) td{padding:.8rem 1rem;border-bottom:1px solid var(--line);vertical-align:top;color:var(--text);min-width:9rem;max-width:30rem;white-space:normal}
.fi-table tr:last-child td,.fi-body table:not(.fi-kv) tr:last-child td{border-bottom:0}
.fi-table tbody tr:hover,.fi-body table:not(.fi-kv) tbody tr:hover{background:var(--g050)}
.fi-body table:not(.fi-kv) :is(td,th) p{margin:0;font-size:inherit;line-height:inherit}
.fi-td-name{font-size:.95rem;font-weight:700;color:var(--ink)}
.fi-td-num{color:var(--ink);white-space:nowrap}
.fi-td-note{font-size:.82rem;color:var(--muted)}
.fi-td-hl{font-weight:700;color:var(--g700)}
span.fi-td-hl{display:inline-block;font-size:.8rem;background:var(--g100);border-radius:999px;padding:.15rem .6rem}
.fi-kv{width:100%;border-collapse:collapse;font-size:.9rem}
.fi-kv td{padding:.625rem 0;border-bottom:1px solid var(--line);line-height:1.5}
.fi-kv td:first-child{font-size:.7rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);width:42%}
.fi-kv tr:last-child td{border-bottom:0}

/* ---------- 9. body copy ---------- */
.fi-body{min-width:0;max-width:none}
.fi-body h2{font-size:clamp(1.5rem,1.15rem + 1.2vw,1.75rem);font-weight:700;letter-spacing:-.025em;color:var(--ink);line-height:1.2;margin:3rem 0 .875rem;padding:0;border:0}
.fi-body h2:first-child,.fi-body :is(.fi-label,.fi-lead)+h2{margin-top:0}
.fi-body h3{font-size:clamp(1.19rem,1.05rem + .5vw,1.32rem);font-weight:700;letter-spacing:-.016em;color:var(--ink);line-height:1.3;margin:2rem 0 .5rem}
.fi-body h4{font-size:1.03rem;font-weight:700;letter-spacing:-.008em;color:var(--ink);line-height:1.35;margin:1.5rem 0 .4rem}
.fi-body p{margin:0 0 1.1rem;font-size:1.09rem;line-height:1.75}
.fi-body :is(ul,ol){margin:0 0 1.25rem;padding-left:1.4rem;font-size:1.09rem;line-height:1.7}
.fi-body li{margin-bottom:.45rem;padding-left:.2rem}
.fi-body li::marker{color:var(--g500);font-weight:700}
.fi-body strong{font-weight:700;color:var(--ink)}
.fi-body a{font-weight:600;text-decoration:underline;text-decoration-color:var(--g300);text-decoration-thickness:1.5px;text-underline-offset:.2em;transition:text-decoration-color .12s}
.fi-body a:hover{text-decoration-color:var(--g700)}
.fi-lead{font-size:1.19rem;line-height:1.6;letter-spacing:-.004em;color:var(--ink);padding:1rem 1.25rem;border-radius:var(--rm);background:var(--tint);box-shadow:0 0 0 1px var(--hair)}
.fi-body p.fi-lead{margin-bottom:1.25rem}
.fi-label{display:inline-flex;align-items:center;gap:.5rem;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--g700);margin:0 0 .75rem}
.fi-label::after{display:none}
.fi-wiki :is(h2,h3,h4).fi-label{font-size:.75rem;line-height:1.4;margin:2.5rem 0 .75rem}
.fi-wiki :is(h2,h3,h4).fi-label:first-child{margin-top:0}
.fi-hr{border:0;border-top:1px solid var(--line);margin:2.5rem 0}
.fi-quote{border-left:3px solid var(--g300);padding:.25rem 0 .25rem 1.25rem;margin:1.75rem 0;font-size:1.19rem;line-height:1.55;font-style:italic;color:var(--ink)}

/* sources block: a .fi-label followed by a .fi-td-note list and a closing note */
.fi-body ul.fi-td-note,.fi-body ol.fi-td-note,.fi-body .fi-td-note li{font-size:.875rem;line-height:1.55;color:var(--muted)}
.fi-body ul.fi-td-note{padding-left:1.2rem;margin-bottom:1rem}
.fi-body ul.fi-td-note li{margin-bottom:.35rem}
.fi-body>.fi-label:first-child~p,.fi-body>.fi-label:first-child~ul:not(.fi-td-note){font-size:.9rem;line-height:1.6;color:var(--muted)}
.fi-body p.fi-label,.fi-body .fi-label{font-size:.75rem;line-height:1.4}
.fi-body>.fi-label:first-child{margin:0 0 .625rem}
.fi-wiki>.fi-wrap>.fi-body:has(>.fi-label:first-child){padding-top:1.5rem;margin-top:1.5rem;border-top:1px solid var(--line)}

/* ---------- 10. callouts: soft green note, yellow tip, clay warning ---------- */
.fi-note,.fi-tip,.fi-warn{display:flex;gap:.875rem;align-items:flex-start;background:var(--g050);border:0;box-shadow:inset 0 0 0 1px var(--g200);border-radius:var(--rm);padding:1rem 1.125rem;margin:1.5rem 0;font-size:.95rem;line-height:1.6}
.fi-tip{background:var(--goldbg);box-shadow:inset 0 0 0 1px var(--goldline)}
.fi-warn{background:var(--claybg);box-shadow:inset 0 0 0 1px var(--clayline)}
.fi-callout-ic{flex:none;display:inline-grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:.7rem;background:#fff;box-shadow:inset 0 0 0 1px var(--g200);font-size:1.05rem;line-height:1;opacity:1}
.fi-tip .fi-callout-ic{box-shadow:inset 0 0 0 1px var(--goldline)}
.fi-warn .fi-callout-ic{box-shadow:inset 0 0 0 1px var(--clayline)}
.fi-callout-b{min-width:0}
.fi-callout-b h4{margin:.2rem 0 .25rem;font-size:.95rem;font-weight:700;color:var(--ink)}
.fi-body .fi-callout-b p,.fi-callout-b p{margin:0;font-size:.95rem;line-height:1.6;color:var(--text)}
.fi-tip .fi-callout-b p{color:#5A4A12}

/* ---------- 11. buttons, pills, badges (match the live site) ---------- */
.fi-wiki .fi-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;height:2.875rem;min-height:var(--tap);border-radius:var(--rs);padding:0 1.375rem;font-size:.92rem;font-weight:700;line-height:1.2;cursor:pointer;border:0;text-decoration:none!important;white-space:nowrap;-webkit-tap-highlight-color:transparent;touch-action:manipulation;user-select:none;transition:transform .18s var(--ease),box-shadow .18s,background .18s,color .18s}
.fi-wiki .fi-btn:hover{transform:translateY(-1px);box-shadow:var(--sh1)}
.fi-wiki .fi-btn:active{transform:scale(.97);box-shadow:none;transition-duration:.08s}
.fi-wiki .fi-btn-primary{background:var(--ink);color:#fff}.fi-wiki .fi-btn-primary:hover{background:#1C3A12}
.fi-wiki .fi-btn-green{background:var(--g700);color:#fff;box-shadow:inset 0 0 0 1px #338D55}.fi-wiki .fi-btn-green:hover{background:#244208}
.fi-wiki .fi-btn-amber{background:var(--sun);color:var(--ink);box-shadow:inset 0 0 0 1px var(--sunline)}.fi-wiki .fi-btn-amber:hover{background:var(--sun2);box-shadow:inset 0 0 0 1px var(--sunline),var(--sh1)}
.fi-wiki .fi-btn-amber-outline{background:#fff;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line2)}.fi-wiki .fi-btn-amber-outline:hover{box-shadow:inset 0 0 0 1px var(--ink),var(--sh1)}
.fi-wiki .fi-btn-ghost{background:#fff;color:var(--g700);box-shadow:inset 0 0 0 1px var(--g200)}.fi-wiki .fi-btn-ghost:hover{background:var(--g050);box-shadow:inset 0 0 0 1px var(--g700),var(--sh1)}
.fi-wiki .fi-btn-onDark{background:#fff;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line2)}.fi-wiki .fi-btn-onDark:hover{box-shadow:inset 0 0 0 1px var(--ink),var(--sh1)}
.fi-ctaband .fi-btn-onDark,.fi-promo .fi-btn-onDark{background:rgba(255,255,255,.08);color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.35)}
.fi-ctaband .fi-btn-onDark:hover,.fi-promo .fi-btn-onDark:hover{background:rgba(255,255,255,.14);box-shadow:inset 0 0 0 1px rgba(255,255,255,.6)}
.fi-btn-block{width:100%}
.fi-pills{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.125rem 0}
.fi-wiki .fi-pill{display:inline-flex;align-items:center;gap:.375rem;min-height:2.25rem;background:#fff;border:0;box-shadow:inset 0 0 0 1px var(--g200);border-radius:999px;padding:.3rem .85rem;font-size:.82rem;font-weight:600;color:var(--g700);transition:.15s var(--ease)}
.fi-wiki span.fi-pill{color:var(--text);box-shadow:inset 0 0 0 1px var(--line2)}
.fi-wiki a.fi-pill:hover{background:var(--sun);color:var(--ink);box-shadow:inset 0 0 0 1px var(--sunline);text-decoration:none}
.fi-wiki a.fi-pill:active{transform:scale(.97)}
.fi-wiki .fi-badge{display:inline-flex;align-items:center;gap:.375rem;background:var(--g100);color:var(--g700);border-radius:999px;padding:.25rem .7rem;font-size:.74rem;font-weight:700;letter-spacing:.04em}
.fi-badge-amber{background:var(--goldbg)!important;color:var(--gold)!important}
.fi-badge-dark{background:var(--ink)!important;color:var(--sun)!important}

/* ---------- 12. faq ---------- */
.fi-faq details{background:var(--tint);border:0;box-shadow:0 0 0 1px var(--hair);border-radius:var(--rm);margin-bottom:.5rem;overflow:hidden;transition:box-shadow .15s}
.fi-faq details[open]{box-shadow:0 0 0 1px var(--g200);background:#fff}
.fi-faq summary{min-height:var(--tap);padding:.875rem 1.125rem;font-size:1rem;font-weight:600;letter-spacing:-.008em;line-height:1.4;color:var(--ink);cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:.75rem;-webkit-tap-highlight-color:transparent}
.fi-faq summary::-webkit-details-marker{display:none}
.fi-faq summary::after{content:'+';flex:none;font-size:1.25rem;font-weight:500;color:var(--g700);width:1.75rem;height:1.75rem;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 1px var(--g200);transition:transform .25s var(--ease),background .12s}
.fi-faq summary:hover::after{background:var(--g100)}
.fi-faq details[open] summary::after{transform:rotate(45deg)}
.fi-faq-a{padding:0 1.125rem 1rem;font-size:.95rem;line-height:1.68;color:var(--text);max-width:70ch;animation:fi-in .22s var(--ease)}
.fi-faq-a p{margin:0 0 .75rem;font-size:inherit;line-height:inherit}
.fi-faq-a p:last-child{margin-bottom:0}
@keyframes fi-in{from{opacity:0;transform:translateY(-2px)}}

/* ---------- 13. cta band + related ---------- */
.fi-ctaband{background:var(--ink);border-radius:var(--r);color:#fff;padding:clamp(1.75rem,4vw,2.5rem);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.375rem;margin:3.5rem 0;position:relative;overflow:hidden;isolation:isolate}
.fi-ctaband::before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(40rem 18rem at 100% 0%,rgba(255,218,22,.16),transparent 60%),radial-gradient(30rem 16rem at 0% 100%,rgba(76,133,20,.35),transparent 60%)}
.fi-ctaband-title{font-size:clamp(1.375rem,1rem + 1.4vw,1.75rem);font-weight:700;letter-spacing:-.025em;line-height:1.15;margin:0 0 .375rem;color:#fff}
.fi-ctaband-sub,.fi-body .fi-ctaband-sub{font-size:.95rem;color:#D4DFCD;margin:0;max-width:48ch;line-height:1.6}
.fi-body :is(.fi-ctaband,.fi-promo) p{color:inherit}
.fi-related{margin-top:3rem}

/* ---------- 14. responsive ---------- */
@media (max-width:1100px){
.fi-hublayout{grid-template-columns:14.5rem minmax(0,1fr);gap:2rem}
.fi-hublayout>.fi-rail{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.fi-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.fi-artlayout{gap:2.25rem}}
@media (max-width:860px){
.fi-hublayout,.fi-artlayout{grid-template-columns:1fr;padding-block:1.75rem 3.5rem;gap:1.5rem}
.fi-sidenav,.fi-toc{position:static;max-height:none}
/* phones: the TOC becomes a swipeable chip row instead of a tall list */
.fi-toc{display:flex;gap:.5rem;align-items:center;overflow-x:auto;overflow-y:hidden;padding:.625rem .75rem;border-radius:999px;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity}
.fi-toc-h{flex:none;margin:0 .25rem 0 .25rem;white-space:nowrap}
.fi-toc a{flex:none;scroll-snap-align:start;border-top:0;white-space:nowrap;padding:.4rem .8rem;border-radius:999px;background:var(--tint);box-shadow:inset 0 0 0 1px var(--hair);font-size:.82rem;font-weight:600;color:var(--text)}
.fi-toc a.fi-active{background:var(--g100);box-shadow:inset 0 0 0 1px var(--g200);color:var(--g700)}
.fi-hublayout>.fi-rail,.fi-grid-3,.fi-grid-2{grid-template-columns:1fr}
.fi-hero{padding-top:.75rem}
.fi-hero .fi-wrap{padding:1.25rem calc(var(--px) + 1rem) 1.5rem}
.fi-hero .fi-wrap::before,.fi-hero .fi-wrap::after{border-radius:var(--rm)}
.fi-hero .fi-wrap::after{background-size:30rem auto;background-position:right -8rem top -3rem}
.fi-hero-h1 em{white-space:normal}.fi-hero-h1 em::after{display:none}
.fi-crumb{margin-bottom:1.125rem}.fi-crumb-here{max-width:100%}
.fi-statbar .fi-wrap{grid-template-columns:1fr 1fr;gap:.5rem}
.fi-stat{padding:.875rem 1rem}.fi-stat-k{font-size:1.3rem}
.fi-ctaband{flex-direction:column;align-items:stretch}.fi-ctaband .fi-btn{width:100%}
.fi-hero-ctas .fi-btn{flex:1 1 12rem}
.fi-body h2{margin-top:2.5rem}}
@media (max-width:480px){
.fi-wiki{font-size:.97rem}
.fi-body :is(p,ul,ol){font-size:1.06rem;line-height:1.68}
.fi-grid-4{grid-template-columns:1fr}
.fi-statbar .fi-wrap{grid-template-columns:1fr 1fr;gap:.5rem}.fi-stat{padding:.75rem .875rem}.fi-stat-k{font-size:1.2rem}.fi-stat-v{font-size:.74rem}
.fi-eyebrow{font-size:.68rem;padding:.35rem .7rem}
.fi-card,.fi-acard{padding:1.125rem}
.fi-hero-h1{letter-spacing:-.025em}
.fi-lead{padding:.875rem 1rem}
.fi-body table:not(.fi-kv) td{max-width:16rem}}

/* ---------- 15. accessibility signals ---------- */
@media (prefers-reduced-motion:reduce){
.fi-wiki *,.fi-wiki ::before,.fi-wiki ::after{transition-duration:.01ms!important;animation-duration:.01ms!important;transform:none!important}
.fi-wiki{transform:translateX(-50%)!important}
.fi-hero-h1 em::after{clip-path:none;animation:none}}
@media (prefers-contrast:more){
.fi-wiki{--line:#B9BFB8;--line2:#A9B0A8;--hair:#B9BFB8;--muted:#3F4743;--faint:#5A625D}
.fi-body a{text-decoration-color:var(--g700)}}
@media (hover:none){.fi-acard:hover{transform:none;box-shadow:0 0 0 1px var(--hair)}.fi-wiki .fi-btn:hover{transform:none;box-shadow:none}}