:root{--ink:#14213d;--muted:#526070;--bg:#f7f5f0;--panel:#ffffff;--line:#e4dfd3;--accent:#0d3b66;--accent2:#b88a44;--soft:#eef3f8;--danger:#f8ece8;--ok:#eef7ef}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg);line-height:1.65}.container{max-width:1180px;margin:0 auto;padding:0 24px}.narrow{max-width:840px}.skip-link{position:absolute;left:-999px;top:8px;background:#fff;padding:8px 12px;z-index:10}.skip-link:focus{left:8px}.site-header{position:sticky;top:0;z-index:5;background:rgba(255,255,255,.95);backdrop-filter:saturate(140%) blur(12px);border-bottom:1px solid var(--line)}.nav-wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:72px}.brand{display:flex;align-items:center;gap:10px;font-weight:800;color:var(--ink);text-decoration:none;font-size:1.18rem}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--ink);color:#fff}.main-nav{display:flex;gap:14px;flex-wrap:wrap;justify-content:flex-end}.main-nav a{color:var(--ink);text-decoration:none;font-size:.94rem;padding:8px 0;border-bottom:2px solid transparent}.main-nav a:hover{border-color:var(--accent2)}.hero{padding:72px 0 54px;background:linear-gradient(135deg,#fff 0%,#f4efe6 100%);border-bottom:1px solid var(--line)}.hero-grid,.article-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:48px;align-items:center}.eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--accent2);font-weight:800;font-size:.78rem;margin:0 0 14px}h1,h2,h3{line-height:1.15;margin:0 0 18px}h1{font-size:clamp(2.2rem,5vw,4.6rem);letter-spacing:-.045em}h2{font-size:clamp(1.55rem,3vw,2.25rem);letter-spacing:-.025em}h3{font-size:1.2rem}.lead{font-size:1.22rem;color:var(--muted);max-width:760px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--ink);border-radius:999px;padding:11px 18px;color:var(--ink);text-decoration:none;background:#fff;font-weight:750;cursor:pointer}.btn.primary{background:var(--ink);color:#fff}.btn.small{padding:9px 14px;font-size:.92rem;width:100%;margin-top:10px}.btn.ghost{background:transparent}.trust-card,.quick-box,.sticky-box{background:var(--panel);border:1px solid var(--line);border-radius:24px;padding:24px;box-shadow:0 20px 55px rgba(20,33,61,.08)}.trust-card ul,.quick-box ul{padding-left:20px;margin-bottom:0}.section{padding:58px 0}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:24px}.section-head p{max-width:620px;color:var(--muted)}.card-grid,.directory-grid,.related-grid{display:grid;gap:18px}.card-grid.six{grid-template-columns:repeat(6,minmax(0,1fr))}.task-card,.directory-card,.related-grid a{background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:20px;color:var(--ink);text-decoration:none;transition:.15s transform,.15s box-shadow}.task-card:hover,.directory-card:hover,.related-grid a:hover{transform:translateY(-2px);box-shadow:0 14px 35px rgba(20,33,61,.08)}.task-card span,.directory-card span,.directory-card em,.related-grid small,.link-list small{display:block;color:var(--muted);font-size:.86rem;font-style:normal}.task-card strong,.directory-card strong{display:block;font-size:1.06rem;line-height:1.25}.directory-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.directory-grid.small{grid-template-columns:repeat(3,minmax(0,1fr))}.directory-card p{color:var(--muted);font-size:.94rem;margin-bottom:0}.split{display:grid;grid-template-columns:360px minmax(0,1fr);gap:38px}.link-list{background:var(--panel);border:1px solid var(--line);border-radius:22px;padding:20px}.filter-label{display:block;font-weight:750;margin-bottom:12px}.filter-label input,.form-grid input,.form-grid select,textarea{width:100%;border:1px solid var(--line);border-radius:12px;padding:11px 12px;font:inherit;background:#fff;margin-top:6px}.scroll-list{max-height:480px;overflow:auto;border-top:1px solid var(--line)}.scroll-list a{display:block;padding:13px 0;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none}.evidence-band{display:flex;justify-content:space-between;align-items:center;gap:28px;background:var(--ink);color:#fff;border-radius:28px;padding:36px;margin-bottom:50px}.evidence-band p{color:#e6edf6}.evidence-band a:not(.btn){color:#fff}.breadcrumbs{font-size:.92rem;padding-top:20px}.breadcrumbs a{color:var(--muted);text-decoration:none}.breadcrumbs span{margin:0 6px;color:var(--muted)}.page-hero h1{font-size:clamp(2rem,4vw,3.65rem)}.meta-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.meta-row span{background:#fff;border:1px solid var(--line);border-radius:999px;padding:6px 10px;font-size:.86rem;color:var(--muted)}.article-layout{display:grid;grid-template-columns:minmax(0,780px) 300px;gap:48px;padding-top:48px;padding-bottom:70px}.article-body{background:var(--panel);border:1px solid var(--line);border-radius:28px;padding:34px}.article-body section+section{margin-top:44px;padding-top:34px;border-top:1px solid var(--line)}.article-body p,.article-body li{color:#273548}.article-aside{position:relative}.sticky-box{position:sticky;top:100px}.notice,.warning{border-radius:18px;padding:16px 18px;margin:18px 0;background:var(--soft);border:1px solid #d8e6f3}.notice.noindex{background:var(--danger);border-color:#efd2c8}.warning{background:#fff8e8;border-color:#ecd7a7}.check-list{list-style:none;padding:0;margin:18px 0}.check-list li{position:relative;padding-left:30px;margin:10px 0}.check-list li:before{content:"✓";position:absolute;left:0;top:0;color:#1f7a48;font-weight:900}.numbered-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.numbered-cards div{display:flex;gap:12px;background:var(--soft);border-radius:18px;padding:16px}.numbered-cards span{flex:0 0 32px;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:#fff;font-weight:800}.steps{counter-reset:step;list-style:none;padding:0}.steps li{counter-increment:step;background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px 16px;margin:10px 0}.steps li:before{content:counter(step) ". ";font-weight:900;color:var(--accent)}.letter{white-space:pre-wrap;background:#111827;color:#f9fafb;border-radius:18px;padding:22px;overflow:auto}.source-list{list-style:none;padding:0}.source-list li{border:1px solid var(--line);border-radius:16px;padding:14px 16px;margin:10px 0}.source-list a{font-weight:800;color:var(--accent);text-decoration:none}.source-list span{display:block;color:var(--muted);font-size:.92rem}.faq-block details{border:1px solid var(--line);border-radius:16px;padding:14px 16px;margin:10px 0}.faq-block summary{font-weight:800;cursor:pointer}.related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tool-panel{background:#f8fbff;border:1px solid #d7e6f7;border-radius:22px;padding:24px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}.tool-panel textarea{margin-top:16px;min-height:240px}.tool-result{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;margin-top:16px}.checklist-tool label{display:block;background:#fff;border:1px solid var(--line);border-radius:12px;margin:10px 0;padding:12px}.site-footer{background:#101827;color:#fff;padding:48px 0}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:36px}.site-footer p{color:#c9d2df}.site-footer a{display:block;color:#e6edf6;text-decoration:none;margin:8px 0}@media(max-width:980px){.hero-grid,.article-grid,.article-layout,.split{grid-template-columns:1fr}.card-grid.six,.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.article-aside{display:none}.main-nav{overflow:auto;flex-wrap:nowrap;justify-content:flex-start;padding-bottom:8px}.nav-wrap{align-items:flex-start;flex-direction:column;padding-top:14px}}@media(max-width:640px){.container{padding:0 16px}.card-grid.six,.directory-grid,.directory-grid.small,.numbered-cards,.related-grid,.form-grid,.footer-grid{grid-template-columns:1fr}.article-body{padding:22px}.evidence-band{display:block}.hero{padding:48px 0 36px}}

.expert-panel{background:#f6f9fc;border:1px solid #d8e6f3;border-radius:24px;padding:24px}.expert-panel h2{margin-bottom:10px}.decision-table{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0}.decision-table div{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px}.decision-table strong{display:block;margin-bottom:8px}.pill-list{list-style:none;padding:0;display:flex;gap:10px;flex-wrap:wrap}.pill-list li{background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 12px}.danger-list li:before{content:"!";background:#7f1d1d;color:#fff;border-radius:50%;width:20px;height:20px;display:grid;place-items:center;font-size:.8rem}.tool-help{background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 14px;color:var(--muted)}code{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;padding:1px 5px}@media(max-width:820px){.decision-table{grid-template-columns:1fr}.pill-list{display:block}.pill-list li{margin:8px 0;border-radius:12px}}

/* V3 reference modules */
.reference-module{border:1px solid var(--line);background:#fff;border-radius:18px;padding:1.25rem 1.35rem;margin:1.5rem 0;box-shadow:0 10px 30px rgba(15,23,42,.04)}
.reference-claims li{font-weight:600}
.comparison-table{display:grid;gap:1rem;margin:1rem 0 1.5rem}
.comparison-row{border:1px solid var(--line);border-radius:16px;padding:1rem;background:linear-gradient(180deg,#fff,#fafafa)}
.comparison-row strong{display:block;margin-bottom:.4rem;color:var(--ink)}
.comparison-row p{margin:.35rem 0;color:var(--muted)}
.comparison-row span{font-weight:700;color:var(--ink)}
.example-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin:1rem 0 1.5rem}
.example-grid article{border:1px solid var(--line);border-radius:16px;padding:1rem;background:#fff}
.example-grid h3{margin-top:0;font-size:1rem}
.compact-steps li{margin-bottom:.5rem}
.notice.index-open{border-color:#0f766e;background:#ecfdf5;color:#134e4a}

/* ===== Premium red & white redesign v4 ===== */
:root{
  --ink:#181b2b;
  --muted:#636778;
  --bg:#f4f1ee;
  --panel:#ffffff;
  --line:#e6dfda;
  --accent:#b30f18;
  --accent-dark:#7f0f15;
  --accent-soft:#faeeee;
  --soft:#f8f7f5;
  --footer:#11141f;
}
body{background:linear-gradient(180deg,#f5f2ef 0%,#f0ece8 100%);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink)}
h1,h2,h3,.brand-text,.footer-logo{font-family:Georgia,"Times New Roman",serif;color:#121528}
a{transition:.18s ease}
.container{width:min(85vw,1540px);max-width:none;padding:0 20px}
.topbar{background:linear-gradient(90deg,var(--accent-dark),var(--accent));color:#fff;font-size:.84rem}
.topbar-inner{min-height:36px;display:flex;justify-content:space-between;align-items:center;gap:16px}
.site-header{background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-bottom:1px solid rgba(179,15,24,.10)}
.premium-nav{min-height:96px;gap:28px}
.premium-brand{display:flex;flex-direction:column;gap:2px;text-decoration:none;min-width:220px}
.brand-text{font-size:2.2rem;font-weight:700;color:var(--accent);line-height:1}
.brand-sub,.footer-sub{font-size:.76rem;text-transform:uppercase;letter-spacing:.16em;color:#a29aa0}
.brand-mark{display:none}
.premium-nav-links{gap:30px;justify-content:center;flex:1}
.premium-nav-links a{font-size:.98rem;font-weight:600;color:#24283b;text-transform:uppercase;letter-spacing:.02em;border:none;position:relative;padding:6px 0}
.premium-nav-links a:hover,.premium-nav-links a:focus{color:var(--accent)}
.premium-nav-links a:after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:2px;background:var(--accent);transform:scaleX(0);transition:.18s ease}
.premium-nav-links a:hover:after{transform:scaleX(1)}
.nav-actions{display:flex;align-items:center;gap:12px}
.icon-btn,.top-btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border:1px solid #ddd3d0;background:#fff;color:#25293d;border-radius:14px;height:46px;padding:0 18px;font-weight:600}
.icon-btn{width:46px;padding:0;border-radius:50%}
.top-btn-primary{background:linear-gradient(180deg,var(--accent),var(--accent-dark));color:#fff;border-color:transparent}
.main-nav{overflow:visible}
.hero,.page-intro,.homepage-section,.article-premium-layout,.site-footer{position:relative}
.premium-hero{padding:54px 0 24px;background:transparent;border-bottom:none}
.hero-premium-grid{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(330px,.82fr);gap:40px;align-items:stretch}
.hero-copy{background:#fff;border:1px solid var(--line);border-radius:30px;padding:46px 44px;box-shadow:0 25px 60px rgba(49,24,28,.06)}
.hero-copy h1{font-size:clamp(2.8rem,4.8vw,4.9rem);line-height:1.05;letter-spacing:-.04em;margin-bottom:20px}
.hero-copy h1 span{color:var(--accent)}
.lead{font-size:1.2rem;color:var(--muted)}
.feature-points{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:30px 0 22px}
.feature-points div{border-top:1px solid var(--line);padding-top:16px}
.feature-points strong{display:block;font-size:.98rem;margin-bottom:6px;color:#25283a}
.feature-points span{display:block;color:var(--muted);font-size:.94rem}
.badge-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.trust-badge{background:#fff;border:1px solid var(--line);border-radius:16px;padding:15px 16px;box-shadow:0 8px 20px rgba(20,20,20,.04)}
.trust-badge strong{display:block;font-size:.95rem;margin-bottom:4px}
.trust-badge span{display:block;color:var(--muted);font-size:.88rem}
.hero-visual-card{background:#fff;border:1px solid var(--line);border-radius:30px;padding:18px;box-shadow:0 25px 60px rgba(49,24,28,.06)}
.hero-stage{height:100%;min-height:420px;border-radius:24px;background:linear-gradient(180deg,#fbfbfb 0%,#f2efec 100%);position:relative;overflow:hidden}
.hero-stage:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 88% 18%, rgba(255,255,255,.96), rgba(255,255,255,.20) 40%, transparent 60%), linear-gradient(90deg,transparent 0%, rgba(255,255,255,.55) 80%, rgba(200,200,200,.28) 100%)}
.vase{position:absolute;top:85px;left:58%;width:44px;height:118px;border-radius:0 0 20px 20px;background:rgba(255,255,255,.55);border:1px solid rgba(210,210,210,.8);box-shadow:inset 0 -12px 30px rgba(255,255,255,.65)}
.vase:before,.vase:after{content:"";position:absolute;background:#8da153;border-radius:30px}
.vase:before{width:64px;height:18px;left:-18px;top:-22px;transform:rotate(28deg)}
.vase:after{width:54px;height:16px;left:8px;top:-34px;transform:rotate(-18deg)}
.book-card{position:absolute;right:34px;bottom:38px;width:260px;height:118px;border-radius:10px 18px 18px 12px;background:linear-gradient(145deg,#b30f18,#7f0f15);box-shadow:0 18px 35px rgba(127,15,21,.35);transform:rotate(-9deg)}
.book-spine{position:absolute;left:-12px;top:8px;bottom:8px;width:20px;border-radius:12px;background:linear-gradient(180deg,#6d0c12,#48070b)}
.book-title,.book-edition{position:absolute;right:22px;color:#fff;text-transform:uppercase;letter-spacing:.08em}
.book-title{top:34px;font-size:1.02rem;font-family:Georgia,"Times New Roman",serif}
.book-edition{bottom:18px;font-size:.73rem;color:#f6d7da}
.pen{position:absolute;right:310px;bottom:88px;width:105px;height:10px;border-radius:999px;background:linear-gradient(90deg,#0d1018,#0d1018 75%,#c7a654 75%,#f1d178 100%);transform:rotate(28deg);box-shadow:0 6px 18px rgba(0,0,0,.15)}
.homepage-section{padding:16px 0 0}
.tile-grid{display:grid;grid-template-columns:repeat(11,minmax(0,1fr));gap:14px}
.tile-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:24px 18px;text-decoration:none;color:var(--ink);box-shadow:0 12px 28px rgba(20,20,20,.04);min-height:180px;display:flex;flex-direction:column;justify-content:space-between}
.tile-card:hover{transform:translateY(-2px);box-shadow:0 18px 36px rgba(20,20,20,.08)}
.tile-card strong{font-size:1.55rem;font-family:Georgia,"Times New Roman",serif;font-weight:500}
.tile-eyebrow{font-size:.95rem;color:var(--accent);text-transform:none;font-weight:600}
.tile-card p{font-size:.9rem;color:var(--muted);margin:0}
.dashboard-grid{display:grid;grid-template-columns:1.5fr 1.1fr 1fr 1fr;gap:18px;padding:18px 0 40px}
.panel{border-radius:24px;padding:24px;border:1px solid var(--line);background:#fff;box-shadow:0 18px 42px rgba(20,20,20,.05)}
.panel-head h2,.panel h2{font-size:1.55rem;margin-bottom:10px}
.white-panel{background:#fff}
.mini-list{display:grid;gap:12px}
.mini-list.four-cols{grid-template-columns:repeat(2,minmax(0,1fr))}
.mini-list a,.stack-list a,.side-note a{display:block;text-decoration:none;color:var(--ink)}
.mini-list a{border:1px solid var(--line);border-radius:16px;padding:14px 14px;background:#fff}
.mini-list a strong{display:block;margin-bottom:6px;font-size:1rem}
.mini-list a span{display:block;color:var(--muted);font-size:.88rem}
.stack-list a{display:flex;justify-content:space-between;gap:14px;border-bottom:1px solid var(--line);padding:14px 0}
.stack-list a:last-child{border-bottom:none}
.stack-list small{color:var(--muted);white-space:nowrap}
.panel-link{display:inline-block;margin-top:16px;color:var(--accent);font-weight:700;text-decoration:none}
.editorial-panel{background:linear-gradient(180deg,var(--accent),var(--accent-dark));color:#fff;border-color:transparent}
.editorial-panel h2,.editorial-panel .panel-link{color:#fff}
.white-checks{list-style:none;padding:0;margin:18px 0 0}
.white-checks li{position:relative;padding-left:26px;margin:12px 0;color:#fff}
.white-checks li:before{content:"✓";position:absolute;left:0;top:0;font-weight:900}
.stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.stats-grid strong{display:block;font-size:2rem;font-family:Georgia,"Times New Roman",serif;color:var(--accent)}
.stats-grid span{display:block;color:var(--muted);font-size:.9rem}
.reference-band{display:flex;justify-content:space-between;align-items:center;gap:24px;background:linear-gradient(135deg,#fff,#faf6f4);border:1px solid var(--line);border-radius:28px;padding:34px 32px;box-shadow:0 18px 40px rgba(20,20,20,.05);margin-bottom:48px}
.reference-actions{display:flex;gap:12px;flex-wrap:wrap}
.btn{border-radius:14px;border:1px solid #d8cdca;padding:12px 18px;background:#fff;color:#212537;font-weight:700}
.btn.primary{background:linear-gradient(180deg,var(--accent),var(--accent-dark));color:#fff;border-color:transparent}
.btn.ghost{background:#fff}
.breadcrumbs{padding-top:24px;color:var(--muted)}
.breadcrumbs a,.breadcrumbs span{color:var(--muted)}
.premium-page-intro{padding:18px 0 18px}
.intro-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:30px;align-items:start}
.intro-grid>div:first-child{background:#fff;border:1px solid var(--line);border-radius:26px;padding:34px;box-shadow:0 18px 42px rgba(20,20,20,.05)}
.intro-grid h1{font-size:clamp(2.5rem,4.2vw,4.3rem);line-height:1.06;letter-spacing:-.04em}
.author-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:22px}
.author-strip div{border:1px solid var(--line);border-radius:18px;padding:16px;background:#fff}
.author-strip strong{display:block;font-size:.84rem;color:var(--muted);margin-bottom:6px}
.author-strip span{display:block;font-weight:700;margin-bottom:4px}
.author-strip small{display:block;color:var(--muted)}
.intro-badges{display:grid;gap:14px}
.side-badge{background:#fff;border:1px solid var(--line);border-radius:22px;padding:22px;box-shadow:0 18px 42px rgba(20,20,20,.05)}
.side-badge strong{display:block;font-size:1.1rem;margin-bottom:4px}
.side-badge span{display:block;color:var(--muted)}
.article-premium-layout{display:grid;grid-template-columns:240px minmax(0,1fr) 320px;gap:22px;padding:10px 0 60px}
.toc-card,.sticky-card,.content-card,.expert-panel,.reference-module,.link-list,.tool-panel{background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 18px 42px rgba(20,20,20,.04)}
.toc-card,.sticky-card{padding:22px}
.toc-card h3{font-size:1.7rem;margin:0 0 16px}
.toc-card a{display:block;padding:10px 0;border-bottom:1px solid #efe9e5;color:#272c3d;text-decoration:none;font-weight:600}
.toc-card a:last-of-type{border-bottom:none}
.toc-help{background:#fbf6f4;border:1px solid #ecdcd6;border-radius:18px;padding:16px;margin-top:18px}
.article-body{background:transparent;border:none;padding:0}
.premium-article-body .content-card{padding:28px 30px;margin-bottom:18px}
.specific-analysis{background:linear-gradient(180deg,#fff 0%,#f8fbff 100%)}
.specific-analysis>.eyebrow{margin-bottom:10px}
.specific-decision-table div{border-top:3px solid var(--accent2)}
.specific-boundary{margin-top:22px;padding:18px 20px;border:1px solid #d8e6f3;border-radius:16px;background:#f6f9fc}
.specific-boundary strong{display:block;margin-bottom:6px;color:var(--accent)}
.specific-boundary p{margin:0}
.premium-article-body section+section{margin-top:0;padding-top:0;border-top:none}
.content-card h2,.expert-panel h2,.reference-module h2{font-size:2.05rem;margin-bottom:14px}
.expert-panel,.reference-module{padding:28px 30px;margin-bottom:18px}
.article-side-rail .sticky-card{position:sticky;top:110px;display:grid;gap:14px}
.toc-column .sticky-card,.toc-card{position:sticky;top:110px}
.side-note{border:1px solid var(--line);border-radius:18px;padding:18px;background:#fff}
.side-note strong{display:block;font-size:1.15rem;margin-bottom:8px}
.side-note p{color:var(--muted);margin-bottom:12px}
.side-note a{padding:8px 0;border-bottom:1px solid #efe9e5}
.side-note a:last-child{border-bottom:none}
.side-note.warn{background:#fff9f8;border-color:#f0d1ce}
.accent-box{background:linear-gradient(180deg,var(--accent),var(--accent-dark));color:#fff;border-color:transparent}
.accent-box strong,.accent-box a,.accent-box .panel-link{color:#fff}
.notice,.warning{border-radius:18px}
.numbered-cards div{background:#fbf7f5;border:1px solid var(--line);border-radius:18px}
.numbered-cards span{background:linear-gradient(180deg,var(--accent),var(--accent-dark))}
.steps li{border-radius:18px;background:#fff}
.related-grid a,.directory-card,.task-card,.source-list li,.faq-block details{border-radius:18px}
.article-layout{padding-top:0}
.site-footer{margin-top:40px;background:var(--footer);color:#fff;padding:54px 0 28px}
.footer-premium-grid{display:grid;grid-template-columns:2fr repeat(4,1fr) 1.2fr;gap:28px}
.footer-logo{font-size:2.15rem;color:#fff;margin-bottom:4px}
.footer-branding p,.site-footer p{color:#c6cad6}
.site-footer strong{display:block;font-size:1rem;margin-bottom:14px;color:#fff}
.site-footer a{display:block;color:#e6e9f1;text-decoration:none;margin:8px 0}
.social-row{display:flex;gap:8px;margin:6px 0 14px}
.social-row span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.18)}
.newsletter-form{display:flex;gap:8px}
.newsletter-form input{flex:1;border:1px solid rgba(255,255,255,.14);background:#0f1220;color:#fff;border-radius:10px;padding:10px 12px}
.newsletter-form button{background:linear-gradient(180deg,var(--accent),var(--accent-dark));color:#fff;border:none;border-radius:10px;padding:10px 14px;font-weight:700}
.footer-legal{margin-top:24px;padding-top:18px;border-top:1px solid rgba(255,255,255,.08);color:#c6cad6;font-size:.9rem}
.footer-legal a{display:inline;color:#fff}
@media (max-width:1400px){
  .tile-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
  .dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .article-premium-layout{grid-template-columns:220px minmax(0,1fr) 290px}
}
@media (max-width:1100px){
  .hero-premium-grid,.intro-grid,.article-premium-layout,.dashboard-grid,.footer-premium-grid,.hero-grid,.article-grid{grid-template-columns:1fr}
  .tile-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .badge-row,.feature-points,.author-strip{grid-template-columns:1fr 1fr}
  .toc-column,.article-side-rail{display:none}
  .premium-nav{align-items:flex-start;flex-direction:column;padding:18px 0}
  .premium-nav-links{flex-wrap:wrap;gap:16px;justify-content:flex-start}
}
@media (max-width:700px){
  .container{width:min(94vw,1540px);padding:0 8px}
  .tile-grid,.badge-row,.feature-points,.author-strip,.stats-grid,.mini-list.four-cols,.dashboard-grid,.footer-premium-grid,.numbered-cards{grid-template-columns:1fr}
  .hero-copy,.hero-visual-card,.intro-grid>div:first-child,.side-badge,.panel,.content-card,.expert-panel,.reference-module{padding:22px}
  .hero-copy h1,.intro-grid h1{font-size:2.35rem}
  .reference-band{display:block}
  .nav-actions{width:100%}
}

/* ===== v5 production cleanup ===== */
.nav-wrap{justify-content:space-between}
.premium-nav{min-height:88px;gap:18px}
.premium-brand{min-width:220px;flex:0 0 auto}
.premium-nav-links{flex:1;display:flex;align-items:center;justify-content:flex-end;gap:18px;flex-wrap:nowrap;white-space:nowrap;overflow:visible}
.premium-nav-links a{font-size:.92rem;letter-spacing:.01em}
.main-nav{flex-wrap:nowrap}
.hero-side-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:26px;box-shadow:0 18px 42px rgba(20,20,20,.05)}
.hero-side-card h3{font-size:1.55rem;margin-bottom:14px}
.compact-checks li{margin:10px 0}
.home-head{align-items:center}
.quick-section{padding-top:8px}
.quick-cards{grid-template-columns:repeat(6,minmax(0,1fr))}
.home-directory{grid-template-columns:repeat(4,minmax(0,1fr))}
.finder-grid{display:grid;grid-template-columns:360px minmax(0,1fr);gap:26px;padding:18px 0 10px}
.finder-grid h2{margin-bottom:10px}
.finder-grid p{color:var(--muted)}
@media (max-width:1400px){
  .premium-nav-links{gap:14px}
  .premium-nav-links a{font-size:.86rem}
  .quick-cards{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:1100px){
  .premium-nav{align-items:flex-start;flex-direction:column;padding:18px 0}
  .premium-nav-links{justify-content:flex-start;flex-wrap:wrap;white-space:normal}
  .finder-grid{grid-template-columns:1fr}
  .home-directory{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:700px){
  .quick-cards,.home-directory{grid-template-columns:1fr}
}

/* ===== v6 — Charte éditoriale et navigation profonde ===== */
:root{
  --ink:#171a2a;
  --navy:#111421;
  --navy-soft:#1b2032;
  --red:#ad111b;
  --red-dark:#7f0c13;
  --red-soft:#f8e9e8;
  --ivory:#f5f1ec;
  --ivory-deep:#e9e2db;
  --paper:#fff;
  --muted:#656978;
  --line:#ddd5ce;
  --line-light:#ebe5df;
  --gold:#b88a44;
  --shadow-sm:0 10px 30px rgba(26,20,24,.055);
  --shadow-md:0 22px 60px rgba(26,20,24,.09);
  --radius-sm:14px;
  --radius-md:22px;
  --radius-lg:30px;
}

html{scroll-padding-top:158px}
body{
  min-width:320px;
  background:var(--ivory);
  color:var(--ink);
  font-size:16px;
  line-height:1.68;
  overflow-x:hidden;
}
body.directory-is-open,
body.search-is-open{overflow:hidden}
body.directory-is-open:after{
  content:"";
  position:fixed;
  inset:0;
  z-index:20;
  background:rgba(10,12,20,.48);
  backdrop-filter:blur(3px);
}
button,input{font:inherit}
button{cursor:pointer}
a:focus-visible,
button:focus-visible,
input:focus-visible,
summary:focus-visible{
  outline:3px solid rgba(173,17,27,.28);
  outline-offset:3px;
}
.container{
  width:min(calc(100% - 48px),1440px);
  max-width:none;
  padding:0;
}
.skip-link{z-index:200;border-radius:8px;color:var(--navy);font-weight:700}
.eyebrow{
  color:var(--red);
  font-size:.75rem;
  letter-spacing:.13em;
}
h1,h2,h3,.brand-text,.footer-logo{color:var(--navy)}
p a,.premium-article-body li a{color:#8d1018;text-decoration-thickness:1px;text-underline-offset:3px}

/* Header */
.topbar{
  background:linear-gradient(90deg,#750b12 0%,#ae111b 62%,#940d16 100%);
  font-size:.72rem;
  letter-spacing:.01em;
}
.topbar-inner{min-height:30px}
.site-header{
  top:0;
  z-index:30;
  border-bottom:0;
  background:rgba(255,255,255,.98);
  box-shadow:0 1px 0 rgba(23,26,42,.08);
}
.premium-nav{
  min-height:76px;
  gap:22px;
  padding:0;
}
.premium-brand{min-width:188px}
.brand-text{font-size:1.92rem;color:var(--red);letter-spacing:-.025em}
.brand-sub{font-size:.61rem;letter-spacing:.17em;color:#77717a}
.premium-nav-links{
  justify-content:center;
  gap:20px;
  overflow:visible;
}
.premium-nav-links a{
  padding:27px 0 24px;
  color:#282c3d;
  font-size:.78rem;
  font-weight:760;
  letter-spacing:.045em;
}
.premium-nav-links a:after{bottom:17px}
.nav-actions{gap:8px;flex:0 0 auto}
.search-button,
.directory-button{
  min-height:42px;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
  color:var(--navy);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  padding:0 13px;
  font-size:.82rem;
  font-weight:750;
}
.search-button:hover{border-color:#aaa0a0;background:#faf8f6}
.directory-button{
  border-color:var(--red);
  background:var(--red);
  color:#fff;
  padding:0 15px;
}
.directory-button:hover{background:var(--red-dark)}
.directory-button i{font-size:1.05rem;font-style:normal}
.search-icon{
  width:15px;
  height:15px;
  border:2px solid currentColor;
  border-radius:50%;
  display:inline-block;
  position:relative;
  flex:0 0 auto;
}
.search-icon:after{
  content:"";
  width:6px;
  height:2px;
  position:absolute;
  right:-5px;
  bottom:-2px;
  border-radius:999px;
  background:currentColor;
  transform:rotate(45deg);
}
.search-icon.light{color:#fff}
.mobile-nav-toggle{display:none}
.section-bar{
  background:var(--navy);
  color:#fff;
}
.section-bar-inner{
  min-height:48px;
  display:flex;
  align-items:center;
  gap:26px;
}
.current-section-pill{
  align-self:stretch;
  min-width:245px;
  display:flex;
  align-items:center;
  gap:9px;
  color:#fff;
  text-decoration:none;
  border-left:1px solid rgba(255,255,255,.12);
  border-right:1px solid rgba(255,255,255,.12);
  padding:0 18px;
}
.current-section-pill>span{
  color:#d6a6aa;
  font-size:.65rem;
  text-transform:uppercase;
  letter-spacing:.1em;
}
.current-section-pill strong{font-size:.84rem;color:#fff}
.current-section-pill em{
  margin-left:auto;
  color:#c8cbd4;
  font-size:.7rem;
  font-style:normal;
  white-space:nowrap;
}
.portal-pill{min-width:290px}
.universe-nav{
  display:flex;
  align-items:center;
  gap:7px;
  flex:1;
  min-width:0;
}
.universe-nav button,
.section-bar-all{
  border:0;
  background:transparent;
  color:#dfe1e8;
  font-size:.73rem;
  font-weight:680;
  padding:8px 10px;
  border-radius:8px;
  white-space:nowrap;
}
.universe-nav button:hover,
.section-bar-all:hover{background:rgba(255,255,255,.1);color:#fff}
.section-bar-all{margin-left:auto;color:#fff}

/* Mega menu */
.directory-mega[hidden]{display:none}
.directory-mega{
  position:absolute;
  left:0;
  right:0;
  top:100%;
  z-index:35;
  max-height:calc(100vh - 124px);
  overflow:auto;
  background:#f6f2ee;
  border-top:4px solid var(--red);
  box-shadow:0 30px 80px rgba(8,10,18,.28);
}
.directory-mega-inner{padding-top:30px;padding-bottom:24px}
.mega-heading{
  display:flex;
  justify-content:space-between;
  gap:30px;
  align-items:flex-start;
  margin-bottom:22px;
}
.mega-kicker,.search-kicker,.footer-kicker{
  display:block;
  margin-bottom:7px;
  color:var(--red);
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.mega-heading h2{font-size:1.85rem;margin:0}
.mega-close{
  border:1px solid var(--line);
  background:#fff;
  color:var(--ink);
  border-radius:10px;
  padding:8px 12px;
  display:flex;
  align-items:center;
  gap:8px;
  font-size:.78rem;
  font-weight:700;
}
.mega-close span{font-size:1.25rem;line-height:1}
.mega-groups{
  display:grid;
  grid-template-columns:1.22fr .85fr 1.22fr .9fr;
  gap:14px;
  align-items:start;
}
.mega-group{
  min-width:0;
  position:relative;
  border:1px solid var(--line);
  border-radius:18px;
  background:#fff;
  padding:20px;
  overflow:hidden;
  transition:.18s ease;
}
.mega-group:before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:4px;
  background:var(--red);
}
.mega-group-agir:before{background:#b47732}
.mega-group-assurer:before{background:#283b69}
.mega-group-preparer:before{background:#536248}
.mega-group.is-targeted{
  box-shadow:0 0 0 3px rgba(173,17,27,.14),var(--shadow-md);
  transform:translateY(-2px);
}
.mega-group-number{
  float:right;
  color:#ded7d2;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.7rem;
}
.mega-group h3{font-size:1.18rem;margin:3px 0 6px}
.mega-group>p{
  min-height:40px;
  margin:0 0 13px;
  color:var(--muted);
  font-size:.78rem;
  line-height:1.45;
}
.mega-links{display:grid;gap:2px}
.mega-links a{
  display:flex;
  align-items:center;
  gap:10px;
  padding:8px 7px;
  border-top:1px solid var(--line-light);
  color:var(--ink);
  text-decoration:none;
}
.mega-links a:hover,
.mega-links a[aria-current="page"]{background:#faf5f3;color:var(--red)}
.mega-links a>span{min-width:0;display:block}
.mega-links strong{
  display:block;
  font-size:.78rem;
  line-height:1.25;
}
.mega-links small{
  display:none;
  margin-top:3px;
  color:var(--muted);
  font-size:.68rem;
  line-height:1.35;
}
.mega-links em{
  margin-left:auto;
  min-width:28px;
  color:#91898b;
  font-size:.68rem;
  font-style:normal;
  text-align:right;
}
.mega-footer{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  margin-top:16px;
  padding-top:15px;
  border-top:1px solid var(--line);
  color:var(--muted);
  font-size:.78rem;
}
.mega-footer a{color:var(--red);font-weight:760;text-decoration:none}

/* Global search */
.site-search-dialog{
  width:min(820px,calc(100% - 32px));
  max-height:min(760px,calc(100vh - 40px));
  margin:auto;
  padding:0;
  border:0;
  border-radius:26px;
  overflow:hidden;
  color:var(--ink);
  background:#fff;
  box-shadow:0 35px 100px rgba(8,10,18,.35);
}
.site-search-dialog::backdrop{
  background:rgba(9,11,19,.72);
  backdrop-filter:blur(6px);
}
.search-dialog-inner{padding:30px}
.search-dialog-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  margin-bottom:22px;
}
.search-dialog-head h2{font-size:2rem;margin:0}
.search-close{
  width:40px;
  height:40px;
  border:1px solid var(--line);
  border-radius:50%;
  background:#fff;
  color:var(--ink);
  font-size:1.5rem;
  line-height:1;
}
.global-search-field{
  min-height:60px;
  display:flex;
  align-items:center;
  gap:13px;
  border:2px solid var(--navy);
  border-radius:15px;
  padding:0 18px;
  color:var(--red);
}
.global-search-field input{
  width:100%;
  border:0;
  outline:0;
  background:transparent;
  color:var(--ink);
  font-size:1rem;
}
.search-help{
  margin:8px 2px 18px;
  color:var(--muted);
  font-size:.76rem;
}
.search-start>strong{display:block;margin-bottom:10px}
.search-start>div{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.search-start a{
  border:1px solid var(--line);
  border-radius:12px;
  padding:11px 13px;
  color:var(--ink);
  text-decoration:none;
  font-size:.84rem;
  font-weight:700;
}
.search-status,.search-empty{
  border-radius:14px;
  background:var(--ivory);
  padding:18px;
  color:var(--muted);
}
.search-empty strong{color:var(--ink)}
.search-empty p{margin:5px 0 0}
.search-results-heading{
  display:flex;
  justify-content:space-between;
  gap:16px;
  margin-bottom:9px;
  color:var(--muted);
  font-size:.76rem;
}
.search-results-heading strong{color:var(--ink)}
.search-results-list{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  max-height:420px;
  overflow:auto;
  padding-right:4px;
}
.search-results-list a{
  min-width:0;
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:78px;
  border:1px solid var(--line);
  border-radius:13px;
  padding:12px 38px 12px 13px;
  color:var(--ink);
  text-decoration:none;
}
.search-results-list a:hover{border-color:#cf9da0;background:#fff9f8}
.search-results-list span{
  color:var(--red);
  font-size:.63rem;
  font-weight:800;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.search-results-list strong{font-size:.82rem;line-height:1.35}
.search-results-list i{
  position:absolute;
  right:14px;
  color:var(--red);
  font-style:normal;
}

/* Home */
.home-hero{
  position:relative;
  padding:70px 0 0;
  background:
    radial-gradient(circle at 8% 20%,rgba(173,17,27,.25),transparent 27%),
    radial-gradient(circle at 87% 8%,rgba(96,105,139,.2),transparent 30%),
    var(--navy);
  color:#fff;
  overflow:hidden;
}
.home-hero:before{
  content:"";
  position:absolute;
  inset:0;
  opacity:.14;
  background-image:linear-gradient(rgba(255,255,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.12) 1px,transparent 1px);
  background-size:58px 58px;
  mask-image:linear-gradient(90deg,#000,transparent 75%);
}
.home-hero-grid{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1.22fr) minmax(360px,.78fr);
  gap:72px;
  align-items:center;
}
.home-hero-copy{padding:0 0 64px}
.home-hero-copy .eyebrow{color:#eab9bc}
.home-hero-copy h1{
  max-width:900px;
  margin-bottom:24px;
  color:#fff;
  font-size:clamp(3.3rem,5vw,5.2rem);
  line-height:.98;
  letter-spacing:-.047em;
}
.home-hero-copy h1 span{color:#dc6b72}
.home-hero-copy .lead{
  max-width:790px;
  color:#d5d8e1;
  font-size:1.13rem;
  line-height:1.72;
}
.home-hero .btn{
  min-height:48px;
  border-color:rgba(255,255,255,.26);
  background:rgba(255,255,255,.06);
  color:#fff;
}
.home-hero .btn.primary{border-color:var(--red);background:var(--red)}
.home-hero .btn:hover{background:#fff;color:var(--navy)}
.home-hero .btn.primary:hover{background:#c91722;color:#fff}
.home-search-cta{gap:11px}
.home-proof-row{
  display:flex;
  flex-wrap:wrap;
  gap:10px 26px;
  margin-top:36px;
}
.home-proof-row>span{
  display:flex;
  align-items:center;
  gap:7px;
  color:#bfc3d0;
  font-size:.76rem;
}
.home-proof-row i{
  display:grid;
  place-items:center;
  width:25px;
  height:25px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:50%;
  color:#e7a8ac;
  font-size:.59rem;
  font-style:normal;
}
.home-proof-row b{color:#fff}
.home-route-card{
  align-self:end;
  margin-bottom:0;
  border-radius:26px 26px 0 0;
  background:#fff;
  color:var(--ink);
  box-shadow:0 32px 80px rgba(0,0,0,.25);
  overflow:hidden;
}
.route-card-head{
  padding:25px 25px 18px;
  background:linear-gradient(135deg,#fbf6f3,#fff);
  border-bottom:1px solid var(--line);
}
.route-card-head span{
  display:block;
  color:var(--red);
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.route-card-head strong{
  display:block;
  margin-top:4px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.65rem;
}
.route-list{padding:5px 20px}
.route-list a{
  display:grid;
  grid-template-columns:42px 1fr auto;
  align-items:center;
  gap:12px;
  padding:15px 3px;
  border-bottom:1px solid var(--line-light);
  color:var(--ink);
  text-decoration:none;
}
.route-list a:hover strong{color:var(--red)}
.route-icon{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:12px;
  background:var(--ivory);
  color:var(--red);
  font-family:Georgia,"Times New Roman",serif;
  font-weight:700;
}
.route-list strong{display:block;font-size:.84rem;line-height:1.25}
.route-list small{display:block;color:var(--muted);font-size:.69rem;line-height:1.4}
.route-list i{color:var(--red);font-style:normal}
.route-all{
  width:100%;
  min-height:50px;
  border:0;
  background:#f4eeea;
  color:var(--red);
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 24px;
  font-size:.79rem;
  font-weight:800;
}
.home-metrics{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border-top:1px solid rgba(255,255,255,.12);
}
.home-metrics>div{
  display:flex;
  align-items:center;
  gap:13px;
  min-height:90px;
  border-right:1px solid rgba(255,255,255,.12);
  padding:0 24px;
}
.home-metrics>div:first-child{padding-left:0}
.home-metrics>div:last-child{border-right:0}
.home-metrics strong{
  color:#fff;
  font-family:Georgia,"Times New Roman",serif;
  font-size:2.1rem;
}
.home-metrics span{color:#c8cbd5;font-size:.72rem;line-height:1.35}
.home-priority-section,.home-method-section{padding:82px 0}
.section-heading-block{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);
  align-items:end;
  gap:60px;
  margin-bottom:32px;
}
.section-heading-block>div{position:relative;padding-left:62px}
.section-number{
  position:absolute;
  left:0;
  top:-4px;
  color:#c8bdb7;
  font-family:Georgia,"Times New Roman",serif;
  font-size:2rem;
}
.section-heading-block .eyebrow{margin-bottom:7px}
.section-heading-block h2{
  max-width:790px;
  margin:0;
  font-size:clamp(2.15rem,3.3vw,3.35rem);
  line-height:1.05;
}
.section-heading-block>p{margin:0;color:var(--muted)}
.priority-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
}
.priority-card{
  min-height:198px;
  display:flex;
  flex-direction:column;
  border:1px solid var(--line);
  border-radius:18px;
  background:#fff;
  padding:23px;
  color:var(--ink);
  text-decoration:none;
  box-shadow:var(--shadow-sm);
}
.priority-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:#cda9a9}
.priority-card>span{
  color:var(--red);
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.priority-card>strong{
  margin-top:11px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.45rem;
  line-height:1.1;
}
.priority-card p{color:var(--muted);font-size:.83rem;line-height:1.55}
.priority-card i{
  display:flex;
  justify-content:space-between;
  margin-top:auto;
  color:var(--red);
  font-size:.76rem;
  font-style:normal;
  font-weight:800;
}
.priority-featured{
  grid-column:span 2;
  min-height:245px;
  padding:30px;
  background:
    radial-gradient(circle at 92% 25%,rgba(255,255,255,.12),transparent 24%),
    linear-gradient(135deg,#ab111b,#790b12);
  color:#fff;
  border-color:transparent;
}
.priority-featured>span,.priority-featured p,.priority-featured i{color:#f6d7d9}
.priority-featured>strong{max-width:630px;color:#fff;font-size:2rem}
.priority-featured p{max-width:650px;font-size:.9rem}
.home-directory-section{
  padding:82px 0;
  background:
    linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px),
    var(--navy);
  background-size:52px 52px;
  color:#fff;
}
.light-heading h2{color:#fff}
.light-heading>p{color:#bfc3cf}
.light-heading .section-number{color:#595e6e}
.light-heading .eyebrow{color:#e5a5a9}
.home-universe-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.home-universe{
  border:1px solid rgba(255,255,255,.11);
  border-radius:22px;
  padding:26px;
  background:rgba(255,255,255,.055);
  backdrop-filter:blur(4px);
}
.home-universe:hover{background:rgba(255,255,255,.075)}
.universe-head{display:flex;align-items:center;gap:16px}
.universe-head>span{
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  border:1px solid rgba(255,255,255,.2);
  border-radius:50%;
  color:#e1a3a7;
  font-family:Georgia,"Times New Roman",serif;
}
.universe-head p{
  margin:0;
  color:#d6a1a5;
  font-size:.65rem;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.universe-head h3{margin:2px 0 0;color:#fff;font-size:1.5rem}
.universe-description{
  margin:16px 0;
  color:#bfc3cf;
  font-size:.8rem;
}
.universe-links{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.universe-links a{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
  border:1px solid rgba(255,255,255,.1);
  border-radius:12px;
  padding:11px 12px;
  background:rgba(0,0,0,.08);
  color:#fff;
  text-decoration:none;
}
.universe-links a:hover{border-color:#bf666c;background:rgba(173,17,27,.18)}
.universe-links a>span{display:block;min-width:0}
.universe-links strong{display:block;font-size:.78rem}
.universe-links small{
  display:block;
  overflow:hidden;
  color:#aeb3c0;
  font-size:.64rem;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.universe-links em{
  margin-left:auto;
  color:#e0a5a9;
  font-size:.65rem;
  font-style:normal;
}
.home-directory-actions{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:24px;
  margin-top:28px;
}
.inverse-button{border-color:#fff;background:#fff;color:var(--navy)}
.home-directory-actions>a{color:#fff;text-decoration:none;font-size:.82rem;font-weight:800}
.method-grid{display:grid;grid-template-columns:1.55fr .75fr .75fr;gap:15px}
.method-principles,.method-card{
  border:1px solid var(--line);
  border-radius:22px;
  background:#fff;
  padding:28px;
  box-shadow:var(--shadow-sm);
}
.method-principles{background:linear-gradient(145deg,#fff,#f7f1ed)}
.method-kicker{
  color:var(--red);
  font-size:.67rem;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.method-principles h3{font-size:1.7rem;max-width:670px;margin:10px 0 20px}
.method-principles>div{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.method-principles>div span{color:var(--muted);font-size:.76rem}
.method-principles>div b{margin-right:7px;color:var(--red)}
.method-principles a,.method-card a{display:inline-block;margin-top:24px;color:var(--red);font-size:.77rem;font-weight:800;text-decoration:none}
.method-principles a i{font-style:normal}
.method-card>span{
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  border-radius:14px;
  background:var(--red-soft);
  color:var(--red);
  font-family:Georgia,"Times New Roman",serif;
  font-weight:700;
}
.method-card h3{font-size:1.25rem;margin:17px 0 9px}
.method-card p{color:var(--muted);font-size:.8rem}

/* Page introductions */
.breadcrumbs{
  width:min(calc(100% - 48px),1380px);
  padding:18px 0 0;
  font-size:.72rem;
}
.breadcrumbs span{margin:0 7px}
.premium-page-intro{padding:16px 0 20px}
.premium-page-intro .container{width:min(calc(100% - 48px),1380px)}
.intro-grid{
  grid-template-columns:minmax(0,1fr) 292px;
  gap:18px;
}
.intro-grid>div:first-child{
  position:relative;
  overflow:hidden;
  border:1px solid var(--line);
  border-top:5px solid var(--red);
  border-radius:24px;
  padding:38px 42px 28px;
  box-shadow:var(--shadow-sm);
}
.intro-grid>div:first-child:after{
  content:"";
  position:absolute;
  width:240px;
  height:240px;
  right:-120px;
  top:-130px;
  border:42px solid var(--red-soft);
  border-radius:50%;
  pointer-events:none;
}
.intro-grid h1{
  position:relative;
  z-index:1;
  max-width:980px;
  font-size:clamp(2.45rem,3.55vw,3.85rem);
  line-height:1.02;
}
.intro-grid .lead{
  position:relative;
  z-index:1;
  max-width:950px;
  color:#5e6272;
  font-size:1rem;
  line-height:1.7;
}
.author-strip{
  position:relative;
  z-index:1;
  grid-template-columns:1fr 1fr 1.2fr;
  gap:0;
  margin-top:24px;
  border-top:1px solid var(--line);
}
.author-strip div{
  border:0;
  border-right:1px solid var(--line);
  border-radius:0;
  padding:14px 18px 0 0;
  background:transparent;
}
.author-strip div+div{padding-left:18px}
.author-strip div:last-child{border-right:0}
.author-strip strong{
  margin-bottom:2px;
  color:#85808a;
  font-size:.63rem;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.author-strip span{font-size:.76rem}
.author-strip small{font-size:.64rem;line-height:1.35}
.intro-badges{
  align-content:stretch;
  gap:10px;
}
.intro-section-card{
  min-height:210px;
  display:flex;
  flex-direction:column;
  border-radius:22px;
  padding:25px;
  background:
    radial-gradient(circle at 95% 8%,rgba(255,255,255,.1),transparent 28%),
    var(--navy);
  color:#fff;
  box-shadow:var(--shadow-md);
}
.intro-card-label{
  color:#e2a5a9;
  font-size:.65rem;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.intro-section-card>strong{
  margin-top:14px;
  color:#fff;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.65rem;
  line-height:1.08;
}
.intro-card-count{margin-top:11px;color:#bfc3cf;font-size:.78rem}
.intro-card-count b{color:#fff;font-size:1.05rem}
.intro-section-card>a{
  display:flex;
  justify-content:space-between;
  margin-top:auto;
  border-top:1px solid rgba(255,255,255,.13);
  padding-top:14px;
  color:#fff;
  text-decoration:none;
  font-size:.76rem;
  font-weight:800;
}
.intro-trust-line{
  display:grid;
  gap:7px;
  border:1px solid var(--line);
  border-radius:16px;
  background:#fff;
  padding:13px 15px;
  box-shadow:var(--shadow-sm);
}
.intro-trust-line span{color:var(--muted);font-size:.69rem}
.intro-trust-line i{
  display:inline-grid;
  place-items:center;
  width:17px;
  height:17px;
  margin-right:5px;
  border-radius:50%;
  background:#e9f4eb;
  color:#22733a;
  font-size:.61rem;
  font-style:normal;
}

/* Article — continuous reading surface */
.article-premium-layout{
  width:min(calc(100% - 48px),1380px);
  grid-template-columns:205px minmax(0,1fr) 278px;
  gap:20px;
  align-items:start;
  padding:4px 0 72px;
}
.toc-card,.sticky-card,.content-card,.expert-panel,.reference-module,.link-list,.tool-panel{
  border-color:var(--line);
  box-shadow:var(--shadow-sm);
}
.toc-card,.sticky-card{border-radius:18px}
.toc-card{padding:18px}
.toc-card h2{font-size:1.35rem;margin:0 0 10px}
.toc-card a{
  position:relative;
  padding:8px 7px 8px 13px;
  border-bottom:0;
  border-left:2px solid #e7e0db;
  color:#4c5161;
  font-size:.69rem;
  line-height:1.32;
}
.toc-card a:hover,
.toc-card a.is-active{
  border-left-color:var(--red);
  background:#fbf4f2;
  color:var(--red);
}
.toc-card a.is-active{font-weight:800}
.toc-card,.toc-column .sticky-card{top:143px}
.premium-article-body{
  min-width:0;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:22px;
  background:#fff;
  box-shadow:var(--shadow-md);
}
.premium-article-body>.content-card,
.premium-article-body>.expert-panel,
.premium-article-body>.reference-module{
  margin:0;
  border:0;
  border-bottom:1px solid var(--line-light);
  border-radius:0;
  padding:38px 42px;
  box-shadow:none;
  background:#fff;
}
.premium-article-body>.expert-panel:first-child{
  border-top:0;
  background:
    linear-gradient(120deg,rgba(173,17,27,.055),transparent 48%),
    #fff;
}
.premium-article-body>.specific-analysis{background:#f7f9fc}
.premium-article-body>.editorial-note{background:#f7f3ef}
.premium-article-body section:last-child{border-bottom:0}
.premium-article-body p,
.premium-article-body li{font-size:.92rem;line-height:1.72}
.content-card h2,.expert-panel h2,.reference-module h2{
  font-size:1.8rem;
  line-height:1.12;
  margin-bottom:13px;
}
.content-card h3,.expert-panel h3,.reference-module h3{margin-top:24px;font-size:1.08rem}
.premium-article-body .eyebrow{margin-bottom:7px}
.decision-table{gap:10px;margin:20px 0 0}
.decision-table div{
  border-radius:14px;
  padding:15px;
  box-shadow:none;
}
.decision-table strong{font-size:.78rem}
.decision-table p{font-size:.76rem;line-height:1.55}
.specific-decision-table div{border-top:3px solid var(--red)}
.specific-boundary{border-color:#d4dde8;background:#f3f7fb}
.specific-boundary strong{color:var(--red)}
.warning,.notice{
  border-left:4px solid var(--gold);
  border-radius:10px;
  padding:15px 17px;
}
.numbered-cards{gap:9px}
.numbered-cards div{border-radius:13px;padding:14px}
.numbered-cards h3{font-size:.82rem;margin:0}
.numbered-cards p{font-size:.73rem;line-height:1.5}
.steps{padding-left:0}
.steps li{
  border:1px solid var(--line-light);
  border-radius:12px;
  padding:12px 14px 12px 43px;
  background:#fff;
  font-size:.82rem;
}
.source-list{padding:0}
.source-list li{
  position:relative;
  border-radius:12px;
  padding:15px 15px 15px 49px;
}
.source-list li:before{
  content:"OFF";
  position:absolute;
  left:13px;
  top:16px;
  display:grid;
  place-items:center;
  width:27px;
  height:20px;
  border-radius:5px;
  background:var(--red-soft);
  color:var(--red);
  font-size:.51rem;
  font-weight:900;
}
.source-list a{font-size:.79rem}
.source-list span{font-size:.7rem}
.faq-block details{border-radius:12px;background:#fff}
.faq-block summary{font-size:.78rem}
.related-grid{grid-template-columns:1fr 1fr;gap:8px}
.related-grid a{min-height:84px;border-radius:12px;padding:14px;box-shadow:none}
.related-grid strong{font-size:.77rem;line-height:1.4}
.related-grid small{margin-top:5px;font-size:.62rem}

/* Section indexes: the complete directory is visible near the top */
.is-section-index #guides{
  background:#fbf8f5;
  border-top:4px solid var(--red);
}
.is-section-index #guides h2{font-size:2.05rem}
.is-section-index #guides>.link-list{
  border:0;
  border-radius:0;
  padding:0;
  background:transparent;
  box-shadow:none;
}
.is-section-index #guides .filter-label{
  display:flex;
  align-items:center;
  gap:14px;
  margin:20px 0 14px;
  font-size:.77rem;
}
.is-section-index #guides .filter-label input{
  flex:1;
  margin:0;
  border:1px solid #cfc5c0;
  border-radius:11px;
  background:#fff;
  padding:10px 12px;
}
.is-section-index #guides .scroll-list{
  max-height:none;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  overflow:visible;
}
.is-section-index #guides .scroll-list a{
  position:relative;
  min-height:94px;
  border:1px solid var(--line);
  border-radius:12px;
  padding:14px 35px 14px 14px;
  background:#fff;
}
.is-section-index #guides .scroll-list a:after{
  content:"→";
  position:absolute;
  right:13px;
  top:14px;
  color:var(--red);
}
.is-section-index #guides .scroll-list a:hover{border-color:#ca9497;box-shadow:var(--shadow-sm)}
.is-section-index #guides .scroll-list strong{font-size:.76rem;line-height:1.35}
.is-section-index #guides .scroll-list small{
  display:block;
  margin-top:6px;
  color:var(--muted);
  font-size:.65rem;
  line-height:1.45;
}

/* Contextual discovery rail */
.article-side-rail{min-width:0}
.article-side-rail .sticky-card{
  top:143px;
  padding:0;
  overflow:hidden;
  box-shadow:var(--shadow-sm);
}
.discovery-rail{display:block}
.rail-section-head{
  padding:19px;
  background:
    radial-gradient(circle at 100% 0,rgba(255,255,255,.12),transparent 35%),
    var(--navy);
}
.rail-kicker{
  display:block;
  margin-bottom:7px;
  color:#d79da1;
  font-size:.59rem;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.rail-section-title{
  display:block;
  color:#fff;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.25rem;
  line-height:1.1;
  text-decoration:none;
}
.rail-count{display:block;margin-top:8px;color:#bfc3cf;font-size:.65rem}
.rail-guide-list{padding:16px 17px 10px}
.rail-guide-list>strong{
  display:block;
  margin-bottom:7px;
  color:#7f7a84;
  font-size:.62rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.rail-guide-list a{
  display:grid;
  grid-template-columns:23px 1fr;
  gap:8px;
  border-bottom:1px solid var(--line-light);
  padding:9px 0;
  color:var(--ink);
  font-size:.68rem;
  font-weight:680;
  line-height:1.35;
  text-decoration:none;
}
.rail-guide-list a:hover{color:var(--red)}
.rail-guide-list a span{color:#b0a8a5;font-family:Georgia,"Times New Roman",serif}
.rail-all-link{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin:0 17px 14px;
  border-radius:10px;
  padding:11px 12px;
  background:var(--red-soft);
  color:var(--red);
  font-size:.69rem;
  font-weight:800;
  line-height:1.3;
  text-decoration:none;
}
.rail-all-link b{font-size:1rem}
.rail-directory-button{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  border:0;
  border-top:1px solid var(--line);
  background:#f7f3ef;
  padding:14px 17px;
  color:var(--ink);
  text-align:left;
}
.rail-directory-button span{display:flex;flex-direction:column;font-size:.61rem;color:var(--muted)}
.rail-directory-button b{color:var(--red);font-size:.73rem}
.rail-directory-button i{color:var(--red);font-size:1rem;font-style:normal}

/* Footer */
.site-footer{margin-top:0;padding:0;background:var(--navy);color:#fff}
.footer-topline{
  min-height:118px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  border-bottom:1px solid rgba(255,255,255,.11);
}
.footer-topline .footer-kicker{color:#e0a3a7}
.footer-topline strong{display:block;color:#fff;font-family:Georgia,"Times New Roman",serif;font-size:1.75rem}
.footer-top-actions{display:flex;gap:9px}
.footer-top-actions button,.footer-top-actions a{
  display:inline-flex;
  align-items:center;
  min-height:43px;
  border:1px solid rgba(255,255,255,.2);
  border-radius:11px;
  background:transparent;
  color:#fff;
  padding:0 15px;
  font-size:.75rem;
  font-weight:750;
  text-decoration:none;
}
.footer-top-actions button{background:var(--red);border-color:var(--red)}
.footer-premium-grid{
  grid-template-columns:1.35fr repeat(4,1fr);
  gap:40px;
  padding:48px 0 36px;
}
.footer-logo{font-size:1.8rem}
.footer-branding p{max-width:280px;font-size:.76rem;line-height:1.65}
.footer-proof{display:flex;gap:7px;margin-top:16px}
.footer-proof span{
  border:1px solid rgba(255,255,255,.14);
  border-radius:999px;
  padding:5px 8px;
  color:#ccd0db;
  font-size:.6rem;
}
.site-footer .footer-link-group>strong{
  margin-bottom:13px;
  color:#e1a3a7;
  font-size:.7rem;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.footer-link-group a{
  display:flex;
  align-items:center;
  gap:8px;
  margin:7px 0;
  color:#e3e6ee;
  font-size:.7rem;
}
.footer-link-group small{margin-left:auto;color:#777d8f;font-size:.58rem}
.footer-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  border-top:1px solid rgba(255,255,255,.08);
  padding:20px 0 26px;
}
.footer-legal{margin:0;padding:0;border:0;color:#9ea4b3;font-size:.65rem}
.footer-bottom nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px 16px}
.footer-bottom nav a{margin:0;color:#aeb3c0;font-size:.63rem}

@media(max-width:1320px){
  .premium-nav-links{gap:13px}
  .premium-nav-links a{font-size:.72rem}
  .search-button span:last-child{display:none}
  .article-premium-layout{
    grid-template-columns:minmax(0,1fr) 275px;
  }
  .toc-column{grid-column:1/-1}
  .toc-card,.toc-column .sticky-card{
    position:static;
    display:flex;
    align-items:center;
    gap:3px;
    overflow:auto;
    padding:9px;
  }
  .toc-card h2{flex:0 0 auto;margin:0 7px 0 3px;font-size:.9rem}
  .toc-card a{
    flex:0 0 auto;
    border:0;
    border-radius:8px;
    padding:7px 9px;
    font-size:.64rem;
    white-space:nowrap;
  }
  .toc-card a:hover,.toc-card a.is-active{border:0}
  .mega-groups{grid-template-columns:1fr 1fr}
}

@media(max-width:1080px){
  html{scroll-padding-top:122px}
  .topbar-proof{display:none}
  .premium-nav{
    min-height:68px;
    flex-direction:row;
    align-items:center;
    padding:0;
  }
  .premium-brand{min-width:0}
  .brand-text{font-size:1.65rem}
  .brand-sub{display:none}
  .mobile-nav-toggle{
    margin-left:auto;
    min-height:40px;
    display:inline-flex;
    align-items:center;
    gap:8px;
    border:1px solid var(--line);
    border-radius:10px;
    background:#fff;
    color:var(--ink);
    padding:0 11px;
    font-size:.74rem;
    font-weight:750;
  }
  .mobile-bars,.mobile-bars:before,.mobile-bars:after{
    width:16px;
    height:2px;
    display:block;
    position:relative;
    border-radius:999px;
    background:currentColor;
  }
  .mobile-bars:before,.mobile-bars:after{content:"";position:absolute;left:0}
  .mobile-bars:before{top:-5px}.mobile-bars:after{top:5px}
  .premium-nav-links,
  .nav-actions{
    display:none;
    position:absolute;
    left:0;
    right:0;
    top:68px;
    margin:0;
    border-top:1px solid var(--line);
    background:#fff;
  }
  .mobile-nav-is-open .premium-nav-links{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:0;
    padding:12px 24px 70px;
    box-shadow:0 30px 55px rgba(15,17,28,.2);
  }
  .mobile-nav-is-open .premium-nav-links a{
    padding:12px;
    border-bottom:1px solid var(--line-light);
  }
  .mobile-nav-is-open .nav-actions{
    z-index:2;
    top:calc(68px + 302px);
    display:flex;
    padding:10px 24px 14px;
    box-shadow:0 18px 30px rgba(15,17,28,.12);
  }
  .mobile-nav-is-open .nav-actions button{flex:1}
  .mobile-nav-is-open .search-button span:last-child{display:inline}
  .section-bar-inner{gap:12px}
  .current-section-pill{min-width:0;flex:1;border-left:0;padding-left:0}
  .universe-nav{display:none}
  .section-bar-all{flex:0 0 auto}
  .home-hero-grid{grid-template-columns:1fr;gap:30px}
  .home-hero-copy{padding-bottom:10px}
  .home-route-card{border-radius:24px 24px 0 0}
  .priority-grid{grid-template-columns:1fr 1fr}
  .priority-featured{grid-column:span 2}
  .section-heading-block{grid-template-columns:1fr;gap:18px}
  .home-universe-grid{grid-template-columns:1fr}
  .method-grid{grid-template-columns:1fr 1fr}
  .method-principles{grid-column:span 2}
  .intro-grid{grid-template-columns:1fr}
  .intro-badges{display:grid;grid-template-columns:1.2fr .8fr}
  .intro-section-card{min-height:150px}
  .article-premium-layout{grid-template-columns:1fr}
  .toc-column{order:1}
  .article-side-rail{order:2}
  .article-body{order:3}
  .article-side-rail .sticky-card{position:static}
  .discovery-rail{
    display:grid;
    grid-template-columns:220px 1fr 210px;
    align-items:stretch;
  }
  .rail-guide-list{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:0 12px;
  }
  .rail-all-link{align-self:center;margin:16px}
  .rail-directory-button{grid-column:1/-1}
  .footer-premium-grid{grid-template-columns:1.2fr repeat(2,1fr)}
  .footer-branding{grid-row:span 2}
}

@media(max-width:720px){
  html{scroll-padding-top:112px}
  .container,
  .breadcrumbs,
  .premium-page-intro .container,
  .article-premium-layout{
    width:min(calc(100% - 28px),1440px);
  }
  .topbar-inner{min-height:27px;font-size:.65rem}
  .premium-nav{min-height:62px}
  .premium-nav-links,.nav-actions{top:62px}
  .mobile-nav-is-open .premium-nav-links{grid-template-columns:1fr;padding:8px 14px 66px}
  .mobile-nav-is-open .nav-actions{top:calc(62px + 326px);padding:9px 14px}
  .section-bar-inner{min-height:44px}
  .current-section-pill{padding-right:7px}
  .current-section-pill>span{display:none}
  .current-section-pill strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .current-section-pill em{font-size:.61rem}
  .portal-pill{min-width:0}
  .section-bar-all{padding-right:0;font-size:.66rem}
  .directory-mega{max-height:calc(100vh - 106px)}
  .directory-mega-inner{padding-top:20px}
  .mega-heading{align-items:center}
  .mega-heading h2{font-size:1.35rem}
  .mega-kicker{font-size:.59rem}
  .mega-close{font-size:0;width:36px;height:36px;padding:0;justify-content:center}
  .mega-close span{font-size:1.35rem}
  .mega-groups{grid-template-columns:1fr}
  .mega-group{padding:17px}
  .mega-group>p{min-height:0}
  .mega-links small{display:block}
  .mega-footer{align-items:flex-start;flex-direction:column}
  .search-dialog-inner{padding:20px}
  .search-dialog-head h2{font-size:1.45rem}
  .search-start>div,.search-results-list{grid-template-columns:1fr}
  .global-search-field{min-height:54px}
  .home-hero{padding-top:44px}
  .home-hero-copy h1{font-size:2.78rem}
  .home-hero-copy .lead{font-size:.98rem}
  .hero-actions{display:grid}
  .home-proof-row{display:grid;grid-template-columns:1fr}
  .home-route-card{margin:0 -2px}
  .home-metrics{grid-template-columns:1fr 1fr}
  .home-metrics>div{
    min-height:76px;
    border-bottom:1px solid rgba(255,255,255,.12);
    padding:0 12px;
  }
  .home-metrics>div:first-child{padding-left:12px}
  .home-metrics>div:nth-child(2){border-right:0}
  .home-metrics strong{font-size:1.65rem}
  .home-priority-section,.home-method-section,.home-directory-section{padding:58px 0}
  .section-heading-block>div{padding-left:47px}
  .section-number{font-size:1.55rem}
  .section-heading-block h2{font-size:2.1rem}
  .priority-grid{grid-template-columns:1fr}
  .priority-featured{grid-column:auto;min-height:235px}
  .priority-featured>strong{font-size:1.75rem}
  .universe-links{grid-template-columns:1fr}
  .home-universe{padding:20px}
  .home-directory-actions{align-items:stretch;flex-direction:column;text-align:center}
  .method-grid{grid-template-columns:1fr}
  .method-principles{grid-column:auto}
  .method-principles>div{grid-template-columns:1fr}
  .breadcrumbs{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .intro-grid>div:first-child{padding:27px 23px 22px}
  .intro-grid h1{font-size:2.38rem}
  .intro-grid .lead{font-size:.91rem}
  .author-strip{grid-template-columns:1fr}
  .author-strip div,.author-strip div+div{
    border-right:0;
    border-bottom:1px solid var(--line-light);
    padding:10px 0;
  }
  .author-strip div:last-child{border-bottom:0}
  .intro-badges{grid-template-columns:1fr}
  .intro-trust-line{grid-template-columns:1fr 1fr}
  .article-premium-layout{gap:12px}
  .toc-card,.toc-column .sticky-card{padding:7px}
  .toc-card h2{display:none}
  .discovery-rail{display:block}
  .rail-guide-list{grid-template-columns:1fr 1fr}
  .premium-article-body{border-radius:16px}
  .premium-article-body>.content-card,
  .premium-article-body>.expert-panel,
  .premium-article-body>.reference-module{padding:27px 22px}
  .content-card h2,.expert-panel h2,.reference-module h2{font-size:1.55rem}
  .decision-table{grid-template-columns:1fr}
  .related-grid{grid-template-columns:1fr}
  .is-section-index #guides .filter-label{align-items:stretch;flex-direction:column}
  .is-section-index #guides .scroll-list{grid-template-columns:1fr}
  .footer-topline{align-items:flex-start;flex-direction:column;padding:30px 0}
  .footer-top-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}
  .footer-top-actions button,.footer-top-actions a{justify-content:center;text-align:center}
  .footer-premium-grid{grid-template-columns:1fr 1fr;gap:28px 20px}
  .footer-branding{grid-column:1/-1;grid-row:auto}
  .footer-bottom{align-items:flex-start;flex-direction:column}
  .footer-bottom nav{justify-content:flex-start}
}

@media(prefers-reduced-motion:reduce){
  *,*:before,*:after{scroll-behavior:auto!important;transition:none!important}
}

/* Plan du site */
.sitemap-hero{
  margin-top:16px;
  padding:48px 0;
  background:
    radial-gradient(circle at 82% 12%,rgba(173,17,27,.25),transparent 26%),
    var(--navy);
  color:#fff;
}
.sitemap-hero-inner{
  display:grid;
  grid-template-columns:1fr 330px;
  align-items:center;
  gap:60px;
}
.sitemap-hero .eyebrow{color:#e4aaae}
.sitemap-hero h1{max-width:860px;color:#fff;font-size:clamp(2.8rem,4.5vw,4.5rem)}
.sitemap-hero p{max-width:790px;color:#c5c9d4}
.sitemap-summary{
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:center;
  gap:4px 14px;
  border:1px solid rgba(255,255,255,.15);
  border-radius:20px;
  padding:24px;
  background:rgba(255,255,255,.06);
}
.sitemap-summary strong{color:#fff;font-family:Georgia,"Times New Roman",serif;font-size:2.1rem}
.sitemap-summary span{color:#c5c9d4;font-size:.77rem}
.sitemap-groups{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
  margin-top:26px;
}
.sitemap-groups article{
  border:1px solid var(--line);
  border-radius:18px;
  background:#fff;
  padding:19px;
  box-shadow:var(--shadow-sm);
}
.sitemap-groups article>span{
  display:block;
  color:var(--red);
  font-size:.62rem;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.sitemap-groups article>strong{
  display:block;
  margin:4px 0 12px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.2rem;
}
.sitemap-groups article>div{display:grid;gap:1px}
.sitemap-groups a{
  display:flex;
  align-items:center;
  gap:8px;
  border-top:1px solid var(--line-light);
  padding:7px 2px;
  color:var(--ink);
  font-size:.7rem;
  font-weight:680;
  text-decoration:none;
}
.sitemap-groups a:hover{color:var(--red)}
.sitemap-groups small{margin-left:auto;color:#9a9394}
.sitemap-directory{padding:28px 0 76px}
.sitemap-directory-card{
  border:1px solid var(--line);
  border-radius:22px;
  background:#fff;
  padding:30px;
  box-shadow:var(--shadow-md);
}
.sitemap-directory-card>h2{margin-bottom:6px}
.sitemap-directory-card>p{margin-top:0;color:var(--muted)}
.sitemap-directory .link-list{border:0;border-radius:0;padding:0;box-shadow:none}
.sitemap-directory .filter-label{
  display:flex;
  align-items:center;
  gap:16px;
  margin:22px 0 14px;
  font-size:.77rem;
}
.sitemap-directory .filter-label input{flex:1;margin:0}
.sitemap-directory .scroll-list{
  max-height:720px;
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:7px;
  overflow:auto;
  padding:3px 7px 3px 3px;
}
.sitemap-directory .scroll-list a{
  min-height:68px;
  border:1px solid var(--line);
  border-radius:11px;
  padding:11px 12px;
  background:#fff;
}
.sitemap-directory .scroll-list a:hover{border-color:#cb989b;background:#fff9f8}
.sitemap-directory .scroll-list strong{font-size:.72rem;line-height:1.35}
.sitemap-directory .scroll-list small{margin-top:4px;color:var(--muted);font-size:.6rem}

@media(max-width:1080px){
  .sitemap-hero-inner{grid-template-columns:1fr}
  .sitemap-groups{grid-template-columns:1fr 1fr}
  .sitemap-directory .scroll-list{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
  .sitemap-hero{padding:38px 0}
  .sitemap-hero h1{font-size:2.55rem}
  .sitemap-groups{grid-template-columns:1fr}
  .sitemap-directory-card{padding:22px 18px}
  .sitemap-directory .filter-label{align-items:stretch;flex-direction:column}
  .sitemap-directory .scroll-list{grid-template-columns:1fr;max-height:650px}
}

/* ===== v7 — Direction éditoriale de référence ===== */
:root{
  --reference-red:#a80f19;
  --reference-red-dark:#760a11;
  --reference-navy:#111522;
  --reference-ink:#171a27;
  --reference-ivory:#f2ede6;
  --reference-paper:#fffdf9;
  --reference-line:#d8cec5;
}

body{
  background:var(--reference-ivory);
  color:var(--reference-ink);
}
.container{width:min(calc(100% - 64px),1480px)}
.topbar{background:var(--reference-red);font-size:.7rem}
.topbar-inner{min-height:28px}
.premium-nav{min-height:82px}
.brand-text{font-size:2.08rem}
.premium-brand{min-width:205px}
.premium-nav-links{gap:25px}
.premium-nav-links a{
  padding:30px 0 27px;
  font-size:.76rem;
  letter-spacing:.055em;
}
.nav-actions{gap:10px}
.search-button,.directory-button{
  min-height:44px;
  border-radius:4px;
}
.directory-button{background:var(--reference-red);border-color:var(--reference-red)}
.section-bar{
  border-top:1px solid #e8e0d9;
  border-bottom:1px solid var(--reference-line);
  background:#f8f5f0;
  color:var(--reference-navy);
}
.section-bar-inner{min-height:48px}
.current-section-pill{
  color:var(--reference-navy);
  border-left:1px solid var(--reference-line);
  border-right:1px solid var(--reference-line);
}
.current-section-pill>span{color:var(--reference-red)}
.current-section-pill strong{color:var(--reference-navy)}
.current-section-pill em{color:#756f75}
.universe-nav button,.section-bar-all{color:#4f5360}
.universe-nav button:hover,.section-bar-all:hover{background:#ebe4de;color:var(--reference-red)}
.directory-mega{background:#f7f3ee;border-top:3px solid var(--reference-red)}
.mega-group{
  border:0;
  border-left:1px solid var(--reference-line);
  border-radius:0;
  padding:18px 22px;
  box-shadow:none;
  background:transparent;
}
.mega-group:first-child{border-left:0}
.mega-group:before{display:none}
.mega-group.is-targeted{transform:none;background:#fff;box-shadow:0 18px 45px rgba(28,20,23,.08)}
.mega-links a{padding:9px 7px}

/* Home — signature hero */
.reference-hero{
  position:relative;
  overflow:hidden;
  padding:76px 0 70px;
  background:
    radial-gradient(circle at 4% 3%,rgba(168,15,25,.08),transparent 24%),
    linear-gradient(120deg,#f5f0e9 0%,#eee6de 100%);
  border-bottom:1px solid var(--reference-line);
}
.reference-hero:after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:5px;
  background:linear-gradient(90deg,var(--reference-red) 0 18%,transparent 18% 100%);
}
.reference-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.03fr) minmax(500px,.97fr);
  gap:72px;
  align-items:center;
}
.reference-hero-overline{
  display:flex;
  align-items:center;
  gap:16px;
  margin-bottom:24px;
  color:var(--reference-red);
  font-size:.67rem;
  font-weight:850;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.reference-hero-overline:before{
  content:"";
  width:42px;
  height:2px;
  background:var(--reference-red);
}
.reference-hero-overline em{
  border-left:1px solid #cfc3ba;
  padding-left:16px;
  color:#81797b;
  font-style:normal;
  font-weight:680;
  letter-spacing:.06em;
}
.reference-hero-copy h1{
  max-width:850px;
  margin-bottom:28px;
  color:var(--reference-navy);
  font-size:clamp(3.6rem,5vw,5.45rem);
  line-height:.96;
  letter-spacing:-.052em;
}
.reference-hero-copy h1 span{color:var(--reference-red)}
.reference-lead{
  max-width:790px;
  margin:0;
  color:#575b67;
  font-size:1.08rem;
  line-height:1.75;
}
.reference-search{margin-top:34px}
.reference-search>button{
  width:min(100%,680px);
  min-height:72px;
  display:grid;
  grid-template-columns:25px 1fr auto;
  align-items:center;
  gap:17px;
  border:1px solid #cfc5bd;
  border-left:5px solid var(--reference-red);
  border-radius:0;
  padding:0 21px;
  background:var(--reference-paper);
  color:var(--reference-ink);
  text-align:left;
  box-shadow:0 16px 45px rgba(42,27,30,.07);
}
.reference-search>button:hover{border-color:#b99b9c;box-shadow:0 22px 55px rgba(42,27,30,.12)}
.reference-search>button .search-icon{color:var(--reference-red)}
.reference-search>button span:nth-child(2){display:flex;flex-direction:column}
.reference-search>button small{
  color:#8b8384;
  font-size:.63rem;
  font-weight:750;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.reference-search>button strong{
  margin-top:2px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.08rem;
}
.reference-search>button i{color:var(--reference-red);font-size:1.15rem;font-style:normal}
.reference-search>a{
  display:inline-block;
  margin:14px 0 0 5px;
  color:#67616a;
  font-size:.75rem;
  font-weight:750;
  text-decoration:none;
}
.reference-search>a:hover{color:var(--reference-red)}
.reference-proof{
  display:flex;
  flex-wrap:wrap;
  gap:12px 26px;
  margin-top:34px;
  padding-top:19px;
  border-top:1px solid #d9cec5;
}
.reference-proof span{color:#6f6970;font-size:.67rem;white-space:nowrap}
.reference-proof b{
  margin-right:5px;
  color:var(--reference-navy);
  font-family:Georgia,"Times New Roman",serif;
  font-size:1rem;
}

/* Photographie éditoriale — aucun visuel simulé */
.hero-editorial-photo{
  min-height:610px;
  display:grid;
  grid-template-rows:minmax(0,1fr) auto;
  margin:0;
  position:relative;
  overflow:hidden;
  border-radius:3px 68px 3px 3px;
  background:var(--reference-navy);
  box-shadow:0 34px 90px rgba(17,21,34,.25);
}
.hero-editorial-photo img{
  width:100%;
  height:100%;
  min-height:0;
  display:block;
  object-fit:cover;
  object-position:center 52%;
}
.hero-editorial-photo figcaption{
  min-height:82px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  padding:18px 24px;
  border-top:1px solid rgba(255,255,255,.14);
  background:var(--reference-navy);
  color:#fff;
}
.hero-editorial-photo figcaption span{
  color:#e09ca1;
  font-size:.58rem;
  font-weight:900;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.hero-editorial-photo figcaption strong{
  max-width:250px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.04rem;
  line-height:1.12;
  text-align:right;
}

/* Editorial decision paths */
.editorial-paths{
  padding:112px 0;
  background:#fff;
  border-bottom:1px solid var(--reference-line);
}
.editorial-paths-grid{
  display:grid;
  grid-template-columns:minmax(280px,390px) minmax(0,1fr);
  gap:100px;
  align-items:start;
}
.editorial-section-intro{
  position:sticky;
  top:160px;
  padding-top:5px;
}
.editorial-index{
  display:block;
  margin-bottom:24px;
  color:#cbbeb5;
  font-family:Georgia,"Times New Roman",serif;
  font-size:3.2rem;
  line-height:1;
}
.editorial-section-intro h2{
  margin-bottom:20px;
  font-size:clamp(2.6rem,3.5vw,3.8rem);
  line-height:1;
}
.editorial-section-intro>p:not(.eyebrow){color:#6a6871;font-size:.92rem}
.editorial-section-intro>a{
  display:inline-block;
  margin-top:20px;
  color:var(--reference-red);
  font-size:.75rem;
  font-weight:850;
  text-decoration:none;
}
.editorial-path-photo{
  margin:42px 0 0;
  overflow:hidden;
  border-radius:0 34px 0 0;
  background:var(--reference-navy);
}
.editorial-path-photo img{
  width:100%;
  height:auto;
  aspect-ratio:4/3;
  display:block;
  object-fit:cover;
  object-position:center;
}
.editorial-path-photo figcaption{
  padding:14px 16px 16px;
  color:#e2e4e9;
  font-size:.64rem;
  line-height:1.5;
}
.editorial-path-list{counter-reset:path}
.editorial-path-list>a{
  display:grid;
  grid-template-columns:68px 1fr auto;
  gap:22px;
  align-items:center;
  min-height:126px;
  border-top:1px solid var(--reference-line);
  padding:18px 6px;
  color:var(--reference-ink);
  text-decoration:none;
  transition:.22s ease;
}
.editorial-path-list>a:last-child{border-bottom:1px solid var(--reference-line)}
.editorial-path-list>a:hover{
  padding-left:18px;
  padding-right:18px;
  background:#f8f3ee;
}
.path-number{
  color:#c5b9b1;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.45rem;
}
.path-content{display:block}
.path-content small{
  display:block;
  color:var(--reference-red);
  font-size:.6rem;
  font-weight:850;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.path-content strong{
  display:block;
  margin-top:3px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.55rem;
  line-height:1.13;
}
.path-content em{
  display:block;
  margin-top:7px;
  color:#77717a;
  font-size:.78rem;
  font-style:normal;
}
.editorial-path-list>a>i{color:var(--reference-red);font-size:1rem;font-style:normal}

/* Directory without dashboard cards */
.editorial-directory{
  padding:105px 0 92px;
  background:#eee7df;
  border-bottom:1px solid var(--reference-line);
}
.directory-manifesto{
  display:grid;
  grid-template-columns:145px minmax(0,1fr) minmax(320px,.68fr);
  align-items:end;
  gap:40px;
  margin-bottom:58px;
}
.directory-big-number{
  color:var(--reference-red);
  font-family:Georgia,"Times New Roman",serif;
  font-size:8rem;
  line-height:.72;
  letter-spacing:-.08em;
}
.directory-manifesto h2{max-width:720px;margin:0;font-size:3.4rem;line-height:.98}
.directory-manifesto>p{margin:0;color:#65636c;font-size:.88rem}
.directory-columns{
  display:grid;
  grid-template-columns:1.14fr .86fr 1.14fr .86fr;
  border-top:1px solid #cfc3b9;
  border-bottom:1px solid #cfc3b9;
}
.directory-column{
  min-width:0;
  border-left:1px solid #cfc3b9;
  padding:32px 24px 28px;
}
.directory-column:first-child{border-left:0;padding-left:0;padding-right:34px}
.directory-column:last-child{padding-right:0;padding-left:34px}
.directory-column-head{display:flex;gap:14px;align-items:flex-start}
.directory-column-head>span{
  padding-top:4px;
  color:#aaa09a;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.1rem;
}
.directory-column-head small{
  color:var(--reference-red);
  font-size:.58rem;
  font-weight:850;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.directory-column-head h3{margin:2px 0 0;font-size:1.4rem}
.directory-column>p{
  min-height:52px;
  margin:16px 0;
  color:#757079;
  font-size:.71rem;
  line-height:1.5;
}
.directory-column>div:last-child{display:grid}
.directory-column a{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
  border-top:1px solid #d8cdc4;
  padding:12px 3px;
  color:var(--reference-ink);
  text-decoration:none;
}
.directory-column a:hover{color:var(--reference-red);padding-left:8px}
.directory-column a>span{min-width:0;display:block}
.directory-column a strong{display:block;font-size:.78rem;line-height:1.25}
.directory-column a small{
  display:block;
  overflow:hidden;
  margin-top:3px;
  color:#817b80;
  font-size:.61rem;
  line-height:1.3;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.directory-column a em{
  margin-left:auto;
  color:var(--reference-red);
  font-family:Georgia,"Times New Roman",serif;
  font-size:.75rem;
  font-style:normal;
}
.directory-footer-line{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:28px;
  margin-top:36px;
}
.directory-footer-line button{
  min-height:48px;
  border:0;
  border-radius:0;
  background:var(--reference-red);
  color:#fff;
  padding:0 22px;
  font-size:.75rem;
  font-weight:850;
}
.directory-footer-line button span{margin-left:12px}
.directory-footer-line a{color:var(--reference-ink);font-size:.75rem;font-weight:800;text-decoration:none}

/* Method statement */
.reference-method{
  padding:108px 0;
  background:
    radial-gradient(circle at 8% 0,rgba(168,15,25,.2),transparent 26%),
    var(--reference-navy);
  color:#fff;
}
.reference-method-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(460px,.92fr);
  gap:105px;
  align-items:center;
}
.method-statement .editorial-index{color:#575c6c}
.method-statement .eyebrow{color:#e4a6aa}
.method-statement h2{max-width:760px;color:#fff;font-size:clamp(2.8rem,4vw,4.35rem);line-height:.98}
.method-statement>p:not(.eyebrow){max-width:710px;color:#c3c7d2;font-size:.95rem}
.method-statement>a{
  display:inline-block;
  margin-top:25px;
  color:#fff;
  font-size:.77rem;
  font-weight:850;
  text-decoration:none;
}
.method-evidence{border-top:0}
.method-photo{
  margin:0 0 22px;
  overflow:hidden;
  border-top:3px solid var(--reference-red);
  background:#070b14;
}
.method-photo img{
  width:100%;
  height:auto;
  aspect-ratio:16/9;
  display:block;
  object-fit:cover;
  object-position:center 54%;
}
.method-photo figcaption{
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding:15px 17px 17px;
  border-top:1px solid rgba(255,255,255,.14);
  color:#fff;
}
.method-photo figcaption span{
  color:#e4a6aa;
  font-size:.57rem;
  font-weight:900;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.method-photo figcaption strong{
  max-width:280px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:.9rem;
  line-height:1.25;
  text-align:right;
}
.method-evidence article{
  display:grid;
  grid-template-columns:48px 1fr;
  gap:18px;
  border-bottom:1px solid rgba(255,255,255,.18);
  padding:22px 4px;
}
.method-evidence article>span{
  color:#dc9ca1;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.2rem;
}
.method-evidence strong{display:block;color:#fff;font-family:Georgia,"Times New Roman",serif;font-size:1.15rem}
.method-evidence p{margin:5px 0 0;color:#aeb3c1;font-size:.74rem}
.reference-closing{background:var(--reference-red)}
.reference-closing-inner{
  min-height:122px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  color:#fff;
}
.reference-closing-inner>div:first-child{display:flex;flex-direction:column}
.reference-closing-inner span{color:#f1c5c8;font-size:.66rem;font-weight:850;letter-spacing:.09em;text-transform:uppercase}
.reference-closing-inner strong{margin-top:3px;color:#fff;font-family:Georgia,"Times New Roman",serif;font-size:1.65rem}
.reference-closing-inner>div:last-child{display:flex;gap:8px}
.reference-closing button,.reference-closing a{
  min-height:44px;
  display:inline-flex;
  align-items:center;
  border:1px solid rgba(255,255,255,.5);
  border-radius:0;
  background:#fff;
  color:var(--reference-red);
  padding:0 17px;
  font-size:.72rem;
  font-weight:850;
  text-decoration:none;
}
.reference-closing a{background:transparent;color:#fff}

/* Inner pages — premium editorial rather than stacked cards */
.is-inner .breadcrumbs{
  width:min(calc(100% - 64px),1420px);
  padding-top:22px;
}
.premium-page-intro{padding:15px 0 35px}
.premium-page-intro .container{width:min(calc(100% - 64px),1420px)}
.intro-grid{grid-template-columns:minmax(0,1fr) 300px;gap:50px;align-items:stretch}
.intro-grid>div:first-child{
  border:0;
  border-top:2px solid var(--reference-red);
  border-radius:0;
  padding:38px 0 26px;
  background:transparent;
  box-shadow:none;
}
.intro-grid>div:first-child:after{display:none}
.intro-grid h1{max-width:1020px;font-size:clamp(3.05rem,4.2vw,4.75rem);line-height:.98}
.intro-grid .lead{max-width:990px;font-size:1.02rem}
.author-strip{max-width:940px;margin-top:30px}
.intro-section-card{
  min-height:255px;
  border-radius:0 40px 0 0;
  padding:29px;
  background:
    radial-gradient(circle at 95% 5%,rgba(255,255,255,.12),transparent 30%),
    var(--reference-red);
}
.intro-section-card>a{font-size:.75rem}
.intro-trust-line{border-radius:0;box-shadow:none}
.article-premium-layout{
  width:min(calc(100% - 64px),1420px);
  grid-template-columns:205px minmax(0,1fr) 272px;
  gap:28px;
  padding-bottom:92px;
}
.toc-card,.toc-column .sticky-card{
  border:0;
  border-radius:0;
  padding:2px 0;
  background:transparent;
  box-shadow:none;
}
.toc-card h2{padding-bottom:12px;border-bottom:2px solid var(--reference-navy);font-size:1.15rem}
.toc-card a{
  border-left:0;
  border-bottom:1px solid var(--reference-line);
  padding:9px 5px;
  background:transparent;
  font-size:.68rem;
}
.toc-card a:hover,.toc-card a.is-active{
  border-left:0;
  background:transparent;
  color:var(--reference-red);
  padding-left:11px;
}
.premium-article-body{
  counter-reset:reference-section;
  border:1px solid var(--reference-line);
  border-top:5px solid var(--reference-red);
  border-radius:0;
  background:#fff;
  box-shadow:0 24px 65px rgba(35,23,27,.07);
}
.premium-article-body>.content-card,
.premium-article-body>.expert-panel,
.premium-article-body>.reference-module{
  counter-increment:reference-section;
  position:relative;
  padding:48px 48px 48px 82px;
  background:#fff;
}
.premium-article-body>.content-card:before,
.premium-article-body>.expert-panel:before,
.premium-article-body>.reference-module:before{
  content:counter(reference-section,decimal-leading-zero);
  position:absolute;
  left:30px;
  top:51px;
  color:#c5b8b0;
  font-family:Georgia,"Times New Roman",serif;
  font-size:.9rem;
}
.premium-article-body>.expert-panel:first-child{
  background:#faf6f2;
}
.content-card h2,.expert-panel h2,.reference-module h2{font-size:1.95rem}
.article-side-rail .sticky-card{border-radius:0 28px 0 0}
.rail-section-head{background:var(--reference-navy)}
.rail-guide-list a{font-size:.69rem}
.rail-directory-button{border-radius:0}
.is-section-index #guides{
  border-top:0;
  background:#fff;
}
.is-section-index #guides .scroll-list{
  counter-reset:guide-directory;
  gap:0 28px;
}
.is-section-index #guides .scroll-list a{
  counter-increment:guide-directory;
  min-height:93px;
  border:0;
  border-top:1px solid var(--reference-line);
  border-radius:0;
  padding:16px 28px 15px 42px;
  background:transparent;
  box-shadow:none;
}
.is-section-index #guides .scroll-list a:before{
  content:counter(guide-directory,decimal-leading-zero);
  position:absolute;
  left:0;
  top:16px;
  color:#b4aaa5;
  font-family:Georgia,"Times New Roman",serif;
  font-size:.72rem;
}
.is-section-index #guides .scroll-list a:hover{
  border-color:var(--reference-red);
  background:#faf5f1;
  box-shadow:none;
}

/* Footer refined */
.site-footer{background:#0d111c}
.footer-topline{min-height:132px}
.footer-topline strong{font-size:2rem}
.footer-premium-grid{gap:48px;padding:58px 0 46px}
.footer-logo{font-size:2.1rem}
.footer-branding p{font-size:.78rem}
.footer-link-group a{font-size:.72rem}
.footer-bottom{padding-bottom:30px}

/* Editorial trust and evidence modules */
.direct-answer{
  max-width:900px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.35rem;
  line-height:1.48;
  color:var(--ink);
}
.answer-scope{
  margin-top:25px;
  padding:20px 22px;
  border-left:3px solid var(--reference-red);
  background:#f8f3ef;
}
.answer-scope strong{display:block;margin-bottom:7px}
.answer-scope p{margin:0}
.source-anchor{
  margin-top:24px;
  padding-top:20px;
  border-top:1px solid var(--line);
}
.source-anchor>strong{
  display:block;
  margin-bottom:10px;
  font-size:.76rem;
  letter-spacing:.09em;
  text-transform:uppercase;
  color:var(--reference-red);
}
.source-anchor ul{margin:0;padding-left:20px}
.source-anchor li+li{margin-top:8px}
.source-anchor a{font-weight:700}
.identity-list{margin:0}
.identity-list div{
  display:grid;
  grid-template-columns:minmax(150px,220px) 1fr;
  gap:24px;
  padding:13px 0;
  border-bottom:1px solid var(--line);
}
.identity-list dt{font-weight:700;color:var(--muted)}
.identity-list dd{margin:0}
.correction-log{display:grid;gap:18px}
.correction-log article{
  padding:22px 24px;
  border:1px solid var(--line);
  border-radius:18px;
  background:#fff;
}
.correction-log time{
  display:block;
  margin-bottom:7px;
  color:var(--reference-red);
  font-size:.75rem;
  font-weight:800;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.correction-log h3{margin:0 0 8px}
.correction-log p{margin:0}
.contact-address{
  display:inline-block;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.45rem;
  font-weight:700;
}

@media(max-width:1320px){
  .reference-hero-grid{grid-template-columns:minmax(0,1fr) 470px;gap:48px}
  .hero-editorial-photo{min-height:570px}
  .editorial-paths-grid{gap:65px}
  .directory-columns{grid-template-columns:1fr 1fr}
  .directory-column:nth-child(3){border-left:0;border-top:1px solid #cfc3b9}
  .directory-column:nth-child(4){border-top:1px solid #cfc3b9}
  .directory-column:first-child,.directory-column:last-child{padding:28px}
  .directory-column{padding:28px}
  .article-premium-layout{grid-template-columns:minmax(0,1fr) 272px}
}

@media(max-width:1080px){
  .container,
  .is-inner .breadcrumbs,
  .premium-page-intro .container,
  .article-premium-layout{width:min(calc(100% - 40px),1480px)}
  .reference-hero{padding-top:55px}
  .reference-hero-grid{grid-template-columns:1fr}
  .reference-hero-copy{padding-right:0}
  .hero-editorial-photo{width:min(100%,680px);min-height:570px;margin:0 auto}
  .editorial-paths-grid{grid-template-columns:1fr;gap:40px}
  .editorial-section-intro{position:static;max-width:710px}
  .directory-manifesto{grid-template-columns:110px 1fr}
  .directory-manifesto>p{grid-column:2}
  .directory-big-number{font-size:6.5rem}
  .reference-method-grid{grid-template-columns:1fr;gap:55px}
  .intro-grid{grid-template-columns:1fr;gap:22px}
  .intro-badges{grid-template-columns:1fr}
  .intro-section-card{min-height:170px}
  .article-premium-layout{grid-template-columns:1fr}
  .article-body{order:1}
  .toc-column{order:2}
  .article-side-rail{order:3}
}

@media(max-width:720px){
  .container,
  .is-inner .breadcrumbs,
  .premium-page-intro .container,
  .article-premium-layout{width:min(calc(100% - 28px),1480px)}
  .reference-hero{padding:42px 0 46px}
  .reference-hero-overline{align-items:flex-start;flex-direction:column;gap:8px}
  .reference-hero-overline:before{display:none}
  .reference-hero-overline em{border-left:0;padding-left:0}
  .reference-hero-copy h1{font-size:3rem}
  .reference-lead{font-size:.96rem}
  .reference-search>button{min-height:68px;padding:0 15px}
  .reference-search>button strong{font-size:.92rem}
  .reference-proof{display:grid;grid-template-columns:1fr 1fr;gap:10px}
  .hero-editorial-photo{min-height:480px;border-radius:0 42px 0 0}
  .hero-editorial-photo figcaption{min-height:74px;padding:15px 17px}
  .hero-editorial-photo figcaption strong{font-size:.9rem}
  .editorial-paths,.editorial-directory,.reference-method{padding:70px 0}
  .editorial-index{font-size:2.4rem}
  .editorial-section-intro h2{font-size:2.45rem}
  .editorial-path-photo{margin-top:30px}
  .editorial-path-list>a{grid-template-columns:42px 1fr auto;gap:12px;min-height:112px}
  .path-content strong{font-size:1.24rem}
  .path-content em{font-size:.7rem}
  .directory-manifesto{grid-template-columns:1fr;gap:18px}
  .directory-manifesto>p{grid-column:auto}
  .directory-big-number{font-size:5rem}
  .directory-manifesto h2{font-size:2.45rem}
  .directory-columns{grid-template-columns:1fr}
  .directory-column,.directory-column:first-child,.directory-column:last-child{
    border-left:0;
    border-top:1px solid #cfc3b9;
    padding:25px 0;
  }
  .directory-column:first-child{border-top:0}
  .directory-column>p{min-height:0}
  .directory-footer-line{align-items:stretch;flex-direction:column;text-align:center}
  .reference-method-grid{gap:42px}
  .method-statement h2{font-size:2.7rem}
  .method-photo figcaption{align-items:flex-start;flex-direction:column;gap:7px}
  .method-photo figcaption strong{max-width:none;text-align:left}
  .reference-closing-inner{align-items:flex-start;flex-direction:column;padding:30px 0}
  .reference-closing-inner>div:last-child{width:100%;display:grid;grid-template-columns:1fr 1fr}
  .reference-closing button,.reference-closing a{justify-content:center;text-align:center}
  .intro-grid h1{font-size:2.65rem}
  .intro-grid>div:first-child{padding-top:28px}
  .intro-section-card{min-height:150px;border-radius:0 30px 0 0}
  .premium-article-body>.content-card,
  .premium-article-body>.expert-panel,
  .premium-article-body>.reference-module{padding:34px 22px 34px 47px}
  .premium-article-body>.content-card:before,
  .premium-article-body>.expert-panel:before,
  .premium-article-body>.reference-module:before{left:17px;top:37px}
  .direct-answer{font-size:1.14rem}
  .identity-list div{grid-template-columns:1fr;gap:4px}
}
