/* li-anti-template */

:root{--li-ink:#10233f;--li-ink-2:#3d4b62;--li-ink-3:#6b7789;--li-paper:#fffdf8;--li-paper-2:#f4f1ea;--li-rule:#10233f;--li-hair:rgba(16,35,63,.14);--li-accent:#c1440e;--li-accent-ink:#8f3209;--li-measure:760px;--li-wide:980px}
/* 18 Sep 2026: desktop rebuilt as a single centred reading column (the floated
right-rail notes scattered whitespace and squeezed tables - flagged as a mess in review). Prose sits at 760px centred, tables/cards/images break out to 980px,
and the stamp/provenance/trusted-source notes run in flow as quiet meta strips.
NOTE: html font-size deliberately untouched. Scale is absolute so it cannot
rescale Divi or the homepage components. All prose rules are scoped to DIRECT
children of .entry-content: on article templates headings/paras/lists are top
level, on .li-home pages nothing is, so the rails are never touched. */

/* --- 1. single centred reading column (articles only) --- */
.entry-content > p,.entry-content > ul,.entry-content > ol,.entry-content > h2,.entry-content > h3,.entry-content > h4,.entry-content > blockquote,.entry-content > .li-tsrc{max-width:var(--li-measure);margin-inline:auto}
.entry-content > .li-answer,.entry-content > .li-provenance,.entry-content > .li-method,.entry-content > .li-keytakeaways,.entry-content > .li-unchecked,.entry-content > .li-aff-disc,.entry-content > .sg-ai-share-wrapper{max-width:var(--li-measure) !important;margin-inline:auto !important}
.entry-content > .li-card{max-width:var(--li-wide) !important;margin-inline:auto !important}
.entry-content > figure.wp-block-image{max-width:var(--li-wide);width:100%;margin-inline:auto;margin-block:34px}
/* 1 Oct 2026: max-width clamped to the column so a wide table scrolls inside its figure on phones instead of being clipped off the right edge (was max-width:var(--li-wide)). */
.entry-content > figure.wp-block-table{max-width:min(var(--li-wide),100%);width:fit-content;margin-inline:auto;margin-block:34px;overflow-x:auto}
.entry-content > .azp-comparison_table_wrapper{max-width:var(--li-wide);width:100%;margin-inline:auto;margin-block:34px}
body.single-post .et_post_meta_wrapper{max-width:var(--li-measure);margin-inline:auto}
body.single-post .li-share-buttons,body.single-post .li-feedback{max-width:var(--li-measure);margin-inline:auto}
body.single-post .eeat-breadcrumbs,body.single-post .eeat-reviewer-box{max-width:var(--li-measure);margin-inline:auto}
/* the old rail notes, now quiet in-flow meta strips */
.entry-content > .li-tsrc{font-size:14px;line-height:1.45;color:var(--li-ink-3);background:none;border:0;border-top:2px solid var(--li-rule);border-radius:0;padding:9px 0 0;margin-block:18px 26px;text-align:left}
.entry-content > .li-stamp{max-width:var(--li-measure) !important;margin-inline:auto !important}
.entry-content > .li-provenance{font-size:15px !important;line-height:1.55 !important;margin-block:26px !important;padding:12px 0 0 !important}

/* --- 2. type scale (articles only) --- */
.entry-content > p,.entry-content > ul,.entry-content > ol{font-size:18px;line-height:1.62;color:var(--li-ink-2)}
.entry-content > p{margin-block:0 20px}
h1.entry-title{font-size:clamp(30px,1rem + 2.2vw,44px);line-height:1.08;letter-spacing:-.022em;font-weight:800;color:var(--li-ink);text-wrap:balance;margin-bottom:8px}
.entry-content > h2{font-size:40px;line-height:1.1;letter-spacing:-.021em;font-weight:800;color:var(--li-ink);margin-block:44px 18px;text-wrap:balance}
.entry-content > h3{font-size:27px;line-height:1.18;letter-spacing:-.012em;font-weight:700;color:var(--li-ink);margin-block:34px 8px;text-wrap:balance}
.entry-content > h2 + p{font-size:22px;line-height:1.5;color:var(--li-ink)}
@media (max-width:640px){.entry-content > h2{font-size:30px}.entry-content > h3{font-size:23px}.entry-content > h2 + p{font-size:19px}}

/* --- 3. tables (articles only) --- */
.entry-content > figure.wp-block-table td,.entry-content > figure.wp-block-table th{font-variant-numeric:tabular-nums lining-nums;font-size:14px}
.entry-content > figure.wp-block-table th{text-transform:uppercase;letter-spacing:.08em;font-size:12px;border-bottom:2px solid var(--li-rule)}
.entry-content > figure.wp-block-table tr:hover td{background:var(--li-paper-2)}
.entry-content > figure.wp-block-table td{border-bottom:1px solid var(--li-hair)}

/* --- 4. lists (articles only) --- */
.entry-content > ul{list-style:none;padding-left:0}
.entry-content > ul > li{position:relative;padding-left:24px;margin-bottom:10px}
.entry-content > ul > li::before{content:"";position:absolute;left:0;top:.62em;width:11px;height:2px;background:var(--li-accent)}
.entry-content > ol{counter-reset:li-ol;list-style:none;padding-left:0}
.entry-content > ol > li{counter-increment:li-ol;position:relative;padding-left:36px;margin-bottom:10px}
.entry-content > ol > li::before{content:counter(li-ol,decimal-leading-zero);position:absolute;left:0;top:.06em;font-size:14px;font-weight:800;color:var(--li-accent);font-variant-numeric:tabular-nums}

/* --- 5. links (articles only) --- */
.entry-content > p a{color:var(--li-accent-ink);text-decoration:none;background-image:linear-gradient(var(--li-accent),var(--li-accent));background-repeat:no-repeat;background-position:0 100%;background-size:100% 1.5px;padding-bottom:1px;transition:background-size .22s cubic-bezier(.2,.8,.3,1),color .22s}
.entry-content > p a:hover{background-size:100% 100%;color:#fff}

/* --- 6. letterpress cards (site-wide, safe) --- */
.li-card{box-shadow:none !important;background:var(--li-paper);border:1.5px solid var(--li-hair);border-radius:2px;transition:transform .16s cubic-bezier(.2,.8,.3,1),box-shadow .16s cubic-bezier(.2,.8,.3,1),border-color .16s linear}
.li-card:hover{transform:translate(-3px,-3px);border-color:var(--li-ink);box-shadow:3px 3px 0 0 var(--li-ink) !important}
.li-card:active{transform:translate(0,0);box-shadow:0 0 0 0 var(--li-ink) !important}

/* --- 7. asymmetric homepage grids --- */
@media (min-width:900px){
.li-fp-row.c3{grid-template-columns:1.35fr 1fr 1fr}
.li-fp-row.c4{grid-template-columns:1.5fr 1fr 1fr 1.15fr}
.li-fp-row.c3 > :first-child,.li-fp-row.c4 > :first-child{margin-top:-16px}
.li-fp-row.c3 > :nth-child(3),.li-fp-row.c4 > :nth-child(3){margin-top:28px}
.li-fp-row.c4 > :last-child{margin-top:12px}
.li-fp-list{grid-template-columns:1.22fr 1fr;column-gap:52px}}

/* --- 8. broken section rhythm (replaces the uniform 62px) --- */
.li-home > section,.li-fp-main > section{padding-block:34px}
.li-home > section:nth-of-type(3n+1),.li-fp-main > section:nth-of-type(3n+1){padding-block:104px 34px;border-top:3px solid var(--li-rule);margin-top:34px}
.li-home > section:nth-of-type(4n+3),.li-fp-main > section:nth-of-type(4n+3){padding-block:24px 34px}

/* --- 9. beat the inline styles baked into post HTML --- */
.entry-content .li-answer{background:#f4f1ea !important;border:0 !important;border-left:5px solid #c1440e !important;border-radius:0 !important;box-shadow:none !important;padding:20px 25px !important}
.entry-content .li-aff-disc{background:none !important;border:0 !important;border-bottom:1px solid rgba(16,35,63,.14) !important;border-radius:0 !important;padding:0 0 11px !important;font-size:14px !important;color:#6b7789 !important}
.entry-content .li-method{background:none !important;border:0 !important;border-top:2px solid #10233f !important;border-radius:0 !important;padding:16px 0 0 !important}
.entry-content .li-provenance{background:none !important;border:0 !important;border-top:2px solid #10233f !important;border-radius:0 !important}
.entry-content .sg-ai-share-wrapper{background:none !important;border-radius:0 !important;border-top:1px solid rgba(16,35,63,.14) !important;border-bottom:1px solid rgba(16,35,63,.14) !important}

/* --- 10. micro-detail (global, low risk) --- */
::selection{background:var(--li-accent);color:#fff}
a:focus-visible,button:focus-visible{outline:3px solid var(--li-accent);outline-offset:3px;border-radius:0}
@supports (animation-timeline:scroll()){
body::before{content:"";position:fixed;inset:0 auto auto 0;height:3px;width:100%;z-index:9999;background:var(--li-accent);transform-origin:0 50%;animation:li-progress linear both;animation-timeline:scroll(root block)}
@keyframes li-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms !important;transition-duration:.01ms !important}}

/* --- 11. mobile --- */
@media (max-width:999px){
.li-fp-row.c3,.li-fp-row.c4,.li-fp-list{grid-template-columns:1fr !important}
.li-fp-row.c3 > *,.li-fp-row.c4 > *{margin-top:0 !important}
.li-home > section,.li-fp-main > section{padding-block:26px}
.li-home > section:nth-of-type(3n+1),.li-fp-main > section:nth-of-type(3n+1){padding-block:52px 26px}}

/* --- 12. jump-to nav (18 Sep 2026) --- */
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.entry-content > h2{scroll-margin-top:28px}
.entry-content > .li-toc{max-width:var(--li-measure);margin-inline:auto;margin-block:6px 34px;border:1.5px solid var(--li-hair);border-left:5px solid var(--li-rule);background:var(--li-paper);padding:16px 22px 12px}
.li-toc-label{font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:800;color:var(--li-ink);margin:0 0 8px}
.li-toc ol{margin:0;padding:0;list-style:none;column-count:2;column-gap:36px}
.li-toc li{font-size:15px;line-height:1.5;margin:0 0 7px;break-inside:avoid}
.li-toc a{color:var(--li-ink-2);text-decoration:none;border-bottom:1px solid var(--li-hair)}
.li-toc a:hover{color:var(--li-accent-ink);border-bottom-color:var(--li-accent)}
@media (max-width:640px){.li-toc ol{column-count:1}}
/* 13 Oct 2026: eyebrow dash removed on request */
.li-eyebrow:before,.li-eyebrow::before,.li-home .li-eyebrow:before,.li-home .li-band .li-eyebrow:before{content:none!important;display:none!important}
.li-eyebrow{gap:0!important}

/* --- 13. one column for every block (13 Nov 2026) ---
   Default: every direct child of a post body sits in the 760px reading column; tables, cards and product blocks get the 980px breakout.
   Skipped: whole-post wrappers (two or more H2s or an H1 inside), .li-report/.li-post/.li-hub/.li-home and the legacy .hub-hero template.
   Rollback: delete this section. */
body.single-post .entry-content:where(:not(:has(> .hub-hero))) > :where(:not(.li-report,.li-post,.li-hub,.li-home,script,style,br,:has(h2 ~ h2),:has(h1))){max-width:var(--li-measure,760px) !important;margin-inline:auto !important;box-sizing:border-box}
body.single-post .entry-content:where(:not(:has(> .hub-hero))) > table,body.single-post .entry-content:where(:not(:has(> .hub-hero))) > figure.wp-block-table,body.single-post .entry-content:where(:not(:has(> .hub-hero))) > figure.wp-table,body.single-post .entry-content:where(:not(:has(> .hub-hero))) > figure.wp-block-image,body.single-post .entry-content:where(:not(:has(> .hub-hero))) > .li-card,body.single-post .entry-content:where(:not(:has(> .hub-hero))) > .azp-comparison_table_wrapper,body.single-post .entry-content:where(:not(:has(> .hub-hero))) > .azp_stackable,body.single-post .entry-content:where(:not(:has(> .hub-hero))) > .azp-product-area,body.single-post .entry-content:where(:not(:has(> .hub-hero))) > details.lx-azp-fold,body.single-post .entry-content:where(:not(:has(> .hub-hero))) > .li-h2h,body.single-post .entry-content:where(:not(:has(> .hub-hero))) > .lxk-keep{max-width:min(100%,var(--li-wide,980px)) !important}
body.single-post .entry-content:where(:not(:has(> .hub-hero))) > figure.wp-block-table{min-width:min(100%,var(--li-measure,760px))}
body.single-post .entry-content:where(:not(:has(> .hub-hero))) > figure.wp-block-table > table{width:100%}
body.single-post .entry-content:where(:not(:has(> .hub-hero))) > table > caption{text-align:left;padding-bottom:10px}
/* 13b: head-to-head box joins the text column; plain tables are text width unless their content needs more */
body.single-post .entry-content:where(:not(:has(> .hub-hero))) > .li-h2h{max-width:var(--li-measure,760px) !important}
body.single-post .entry-content:where(:not(:has(> .hub-hero))) > table{width:auto !important;min-width:min(100%,var(--li-measure,760px))}
/* 13c: every table sits in the text column; tables with 6+ columns get tighter cells so they fit */
body.single-post .entry-content:where(:not(:has(> .hub-hero))) > table,body.single-post .entry-content:where(:not(:has(> .hub-hero))) > figure.wp-block-table,body.single-post .entry-content:where(:not(:has(> .hub-hero))) > figure.wp-table,body.single-post .entry-content:where(:not(:has(> .hub-hero))) > details.lx-azp-fold{max-width:var(--li-measure,760px) !important}
body.single-post .entry-content:where(:not(:has(> .hub-hero))) > table{width:100% !important}
body.single-post .entry-content:where(:not(:has(> .hub-hero))) > table:has(tr > :nth-child(6)) :is(th,td),body.single-post .entry-content:where(:not(:has(> .hub-hero))) > figure.wp-block-table > table:has(tr > :nth-child(6)) :is(th,td){padding:10px 9px !important;font-size:15px !important;line-height:1.4 !important}
/* 13d: live price comparison in the fold - no crushed one-letter columns; it scrolls sideways inside its box instead */
body.single-post .entry-content > details.lx-azp-fold .azp_comp_row > .azp_com_data{min-width:150px !important;box-sizing:border-box}

/* lx-hd-css */
html{background-color:#fff!important}
#main-header,#top-header,.et-fixed-header,.et-l--header,.et-l--header .et_pb_section,#et-secondary-nav{display:none!important}
body.et_divi_theme #page-container{margin-top:0!important;padding-top:0!important}
/* Look Into header, navigation and footer  -  lx v1
   One nav row of six doors with panels, replacing three rows (6 + 8 + 4
   links) and a CTA. Show/hide uses display (never max-height: that is
   force-zeroed on this install, see snippet 6 notes). */
.lx-hd{background:var(--white);border-bottom:1px solid var(--line);position:relative;z-index:50}
.lx-util{background:var(--ink);color:#c9d4e4;font-size:var(--t-xs)}
.lx-util .wrap{display:flex;justify-content:space-between;align-items:center;gap:var(--s4);min-height:34px}
.lx-util a{color:#e7edf6;text-decoration:none}
.lx-util a:hover{color:#fff;text-decoration:underline}
.lx-util ul{display:flex;gap:var(--s4);list-style:none;padding:0;margin:0}
.lx-util .rate b{font-family:var(--f-mono);color:#fff;font-weight:500}
.lx-bar .wrap{display:flex;align-items:center;gap:var(--s5);min-height:68px}
.lx-logo{display:inline-flex;align-items:center;gap:2px;text-decoration:none;font:800 27px/1 var(--f-disp);letter-spacing:-.04em;flex:none}
.lx-logo .a{color:var(--ink)}
.lx-logo .b{color:#2d6fc0}
.lx-logo img{display:block;height:40px;width:auto;max-width:100%;object-fit:contain}
@media (max-width:560px){.lx-logo img{height:32px}}
.lx-nav{flex:1;min-width:0}
.lx-nav > ul{display:flex;list-style:none;margin:0;padding:0;gap:2px}
.lx-nav > ul > li{position:static}
.lx-nav .top{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:8px 12px;border:0;background:none;border-radius:var(--r1);font:600 15px/1.2 var(--f-text);color:var(--ink);cursor:pointer;white-space:nowrap;text-decoration:none}
.lx-nav .top:hover,.lx-nav .top[aria-expanded=true]{background:var(--band)}
.lx-nav .top.on{box-shadow:inset 0 -3px 0 var(--blue)}
.lx-nav .top svg{width:10px;height:10px;transition:transform .15s}
.lx-nav .top[aria-expanded=true] svg{transform:rotate(180deg)}
.lx-panel{display:none;position:absolute;left:0;right:0;top:100%;background:var(--white);border-top:1px solid var(--line);border-bottom:1px solid var(--line-2);box-shadow:0 18px 30px -18px rgba(19,41,75,.35)}
.lx-panel.open{display:block}
.lx-panel .wrap{display:grid;grid-template-columns:minmax(220px,1fr) 3fr;gap:var(--s6);padding-block:var(--s5) var(--s6)}
.lx-panel .intro p{color:var(--muted);font-size:var(--t-sm);margin-top:var(--s2)}
.lx-panel .intro .btn{margin-top:var(--s4)}
.lx-panel .cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--s5)}
.lx-panel h4{font:600 12px/1.3 var(--f-text);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:var(--s2)}
.lx-panel ul{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.lx-panel ul a{display:block;padding:6px 0;color:var(--ink);text-decoration:none;font-size:15px}
.lx-panel ul a:hover{color:var(--blue);text-decoration:underline}
.lx-panel ul a span{display:block;font-size:var(--t-xs);color:var(--muted)}
.lx-tools{display:flex;align-items:center;gap:var(--s2);margin-left:auto;flex:none}
.lx-iconbtn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:44px;min-height:44px;padding:0 12px;border:1px solid var(--line-2);border-radius:var(--r1);background:var(--white);color:var(--ink);font:600 14px var(--f-text);cursor:pointer}
.lx-iconbtn:hover{border-color:var(--ink)}
.lx-iconbtn svg{width:18px;height:18px}
.lx-burger{display:none}
.lx-search{display:none;border-top:1px solid var(--line);background:var(--paper)}
.lx-search.open{display:block}
.lx-search form{display:flex;gap:var(--s2);padding-block:var(--s3)}
.lx-search input{flex:1}
/* breadcrumbs */
.lx-crumbs{font-size:var(--t-xs);color:var(--muted);padding-block:var(--s3)}
.lx-crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:4px;padding:0;margin:0}
.lx-crumbs li+li::before{content:"/";margin-right:4px;color:var(--line-2)}
.lx-crumbs a{color:var(--muted)}
/* mobile drawer */
.lx-drawer{display:none}
@media (max-width:1040px){
  .lx-nav{display:none}
  .lx-burger{display:inline-flex}
  .lx-tools .lbl{display:none}
  .lx-util .hide-sm{display:none}
  .lx-drawer.open{display:block;border-top:1px solid var(--line);background:var(--white)}
  .lx-drawer details{border-bottom:1px solid var(--line)}
  .lx-drawer summary{list-style:none;display:flex;justify-content:space-between;align-items:center;min-height:52px;padding:0 max(16px,env(safe-area-inset-left,0px));font:700 17px var(--f-disp);color:var(--ink);cursor:pointer}
  .lx-drawer summary::-webkit-details-marker{display:none}
  .lx-drawer summary::after{content:"+";font:400 24px var(--f-text);color:var(--muted)}
  .lx-drawer details[open] summary::after{content:"\2212"}
  .lx-drawer ul{list-style:none;margin:0;padding:0 max(16px,env(safe-area-inset-left,0px)) var(--s4)}
  .lx-drawer ul a{display:flex;align-items:center;min-height:44px;color:var(--ink);text-decoration:none;border-top:1px solid var(--band)}
  .lx-drawer .about{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s4);padding:var(--s4) max(16px,env(safe-area-inset-left,0px)) var(--s5);font-size:var(--t-sm)}
}
@media (max-width:560px){
  .lx-util .rate{display:none}
  .lx-bar .wrap{min-height:60px;gap:var(--s3)}
  .lx-logo{font-size:24px}
}
/* footer */
.lx-ft{background:var(--ink);color:#c3cfdf;font-size:var(--t-sm);padding-block:var(--s7) var(--s5)}
.lx-ft a{color:#e7edf6;text-decoration:none}
.lx-ft a:hover{text-decoration:underline;color:#fff}
.lx-ft .cols{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:var(--s6)}
.lx-ft h4{color:#fff;font:600 12px/1.3 var(--f-text);letter-spacing:.08em;text-transform:uppercase;margin-bottom:var(--s3)}
.lx-ft ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.lx-ft .brand p{margin-top:var(--s3);max-width:34ch;line-height:1.55}
.lx-ft .brand .lx-logo{background:#fff;padding:8px 12px;border-radius:var(--r1)}
.lx-ft .brand .lx-logo img{height:30px}
.lx-ft .legal{margin-top:var(--s6);padding-top:var(--s4);border-top:1px solid rgba(255,255,255,.14);display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--s3);font-size:var(--t-xs);color:#9fb0c6}
@media (max-width:900px){.lx-ft .cols{grid-template-columns:1fr 1fr}.lx-ft .brand{grid-column:1/-1}}
@media (max-width:420px){.lx-ft .cols{grid-template-columns:1fr}}

.lx-logo img{height:40px;width:auto;max-width:100%;object-fit:contain}
@media (max-width:560px){.lx-logo img{height:32px}}
.lx.lx-hdwrap{background:var(--white)}

.lx-hd .lx-logo img{height:40px!important;width:auto!important;max-width:100%!important;max-height:40px!important}
@media (max-width:560px){.lx-hd .lx-logo img{height:32px!important;max-height:32px!important}}
.lx-hd .lx-util .pitch{color:#e7edf6;font-size:13px;line-height:1.3;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lx-hd .lx-util .pitch .ps{display:none}
@media (max-width:1040px){.lx-hd .lx-util .pitch .pl{display:none}.lx-hd .lx-util .pitch .ps{display:inline}}
