


:root{
  --f-disp:'Sofia Sans Extra Condensed','Arial Narrow',Arial,sans-serif;
  --f-body:'Onest','Segoe UI',Tahoma,sans-serif;
  --f-mono:'JetBrains Mono','Cascadia Mono',Consolas,monospace;

  
  --bg:#f1eee5;
  --bg2:#e9e5d8;
  --surface:#f8f6ef;
  --ink:#211d15;
  --ink2:#4f4a3d;
  --mut:#6e6757;
  --line:#d4cdba;
  --line2:#a9a28c;
  --panel:#262217;          
  --panel-ink:#f0ecdf;
  --panel-mut:#c9c2ad;

  
  --sc15:#a07410; --sc15-soft:#ecdfba; --sc15-ink:#6b4d00;
  --sc2:#bb5715;  --sc2-soft:#eed7bd;  --sc2-ink:#7c3a00;
  --sc3:#a3271a;  --sc3-soft:#ecd2c6;  --sc3-ink:#771a10;
  --sc-past:#7a7466; --sc-past-soft:#e4e0d2;

  
  --p1:#57523f;   
  --p2:#94690e;   
  --p3:#b1431c;   
  --p4:#6f6b25;   
  --pind:#42604e; 
  --p5:#8d2536;   
  --p6:#641722;   
  --map-p5:#8d2536; 
  --map-p6:#641722; 

  --warn:#8a6d00; --warn-soft:#f0e6c0; 
  --listmark:#8d2536; 

  --fs-body:clamp(1rem,.25vw + .95rem,1.12rem);
  --fs-small:.92rem;
  --fs-tiny:.8rem;
  --lh:1.62;
  --measure:72ch;
  --nav-h:54px;
  --maxw:1340px;
  --gut:clamp(1rem,4vw,3.4rem);
  --rail-w:minmax(230px,29%);
}
html[data-theme="dark"]{
  --bg:#171510;
  --bg2:#11100c;
  --surface:#1f1d15;
  --ink:#eae4d2;
  --ink2:#c8c1ab;
  --mut:#988f78;
  --line:#393525;
  --line2:#57523c;
  --panel:#353022;
  --panel-ink:#eae4d2;
  --panel-mut:#a89f85;

  --sc15:#d9a832; --sc15-soft:#3a3012; --sc15-ink:#ecc868;
  --sc2:#e08247;  --sc2-soft:#41260f;  --sc2-ink:#f0a36c;
  --sc3:#dc6a52;  --sc3-soft:#41180f;  --sc3-ink:#ef9077;
  --sc-past:#8d8773; --sc-past-soft:#2a2820;

  --p1:#a59e85;
  --p2:#d4a72d;
  --p3:#e0744a;
  --p4:#b3ac57;
  --pind:#83ab8e;
  --p5:#d76f80;
  --p6:#c25264;
  --map-p5:#e03445;
  --map-p6:#9e2c36;

  --warn:#d7b042; --warn-soft:#332a10;
  --listmark:#d76f80;
}


*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:hidden}
body{
  margin:0;background:var(--bg);color:var(--ink);
  font-family:var(--f-body);font-size:var(--fs-body);line-height:var(--lh);
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
::selection{background:var(--sc2);color:#fff}
img,svg{max-width:100%;height:auto}
a{color:inherit;text-decoration-color:var(--line2);text-underline-offset:3px}
a:hover{text-decoration-color:var(--sc2)}
p{margin:0 0 1em}
section{scroll-margin-top:calc(var(--nav-h) + 14px)}
[id]{scroll-margin-top:calc(var(--nav-h) + 14px)}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--gut)}
hr.rule{border:0;border-top:1px solid var(--line);margin:2.4rem 0}


.h-disp{
  font-family:var(--f-disp);font-weight:800;line-height:.92;
  letter-spacing:.005em;text-transform:uppercase;margin:0;
}
h2.h-sec{
  font-family:var(--f-disp);font-weight:700;text-transform:uppercase;
  font-size:clamp(1.8rem,3.2vw,2.9rem);line-height:.95;letter-spacing:.01em;
  margin:0 0 1rem;
}
h3.h-theme{
  font-family:var(--f-body);font-weight:700;
  font-size:clamp(1.25rem,1.8vw,1.6rem);line-height:1.25;margin:0 0 .9rem;
}
h4.h-sub{
  font-family:var(--f-body);font-weight:600;font-size:1.06rem;margin:1.6em 0 .6em;
}
.kicker{
  font-family:var(--f-mono);font-size:var(--fs-tiny);font-weight:600;
  text-transform:uppercase;letter-spacing:.14em;color:var(--mut);
  display:flex;align-items:center;gap:.6rem;margin-bottom:.9rem;
}
.kicker::before{content:"";width:26px;height:1px;background:var(--line2);flex:0 0 auto}
.kicker .no{color:var(--ink);font-weight:600}
.lead{font-size:1.12em;color:var(--ink)}
.mono{font-family:var(--f-mono)}
.small{font-size:var(--fs-small)}
.muted{color:var(--mut)}


.src{
  font-family:var(--f-mono);font-size:.78em;color:var(--mut);
  white-space:normal;letter-spacing:0;
}

a.srcl{position:relative;cursor:pointer;text-decoration:none;color:var(--mut);
  border-bottom:1px dotted color-mix(in srgb,currentColor 55%,transparent);
  transition:color .12s,border-color .12s}
a.srcl:hover,a.srcl:focus-visible{color:var(--ink);border-bottom-color:currentColor}
a.srcl::before{content:"↗";font-size:.7em;margin-right:.12em;opacity:.55;vertical-align:.05em}
a.srcl .tip{
  position:absolute;left:0;bottom:calc(100% + 9px);z-index:90;
  width:max-content;max-width:min(360px,82vw);
  padding:.6rem .72rem;border-radius:5px;
  background:var(--ink);color:var(--bg);
  font-family:var(--f-sans);font-size:.74rem;line-height:1.45;font-weight:400;
  letter-spacing:0;text-transform:none;white-space:normal;text-align:left;
  box-shadow:0 8px 30px rgba(0,0,0,.30);
  opacity:0;visibility:hidden;transform:translateY(3px);
  transition:opacity .14s,transform .14s,visibility .14s;pointer-events:none}
a.srcl:hover .tip,a.srcl:focus-visible .tip{opacity:1;visibility:visible;transform:none}
a.srcl .tip::before{content:"";position:absolute;top:100%;left:14px;border:6px solid transparent;border-top-color:var(--ink)}
a.srcl .tip b{display:block;font-weight:700;font-size:.76rem;margin-bottom:.28rem}
a.srcl .tip i{display:block;font-style:italic;opacity:.92;margin-top:.32rem}
a.srcl .tip b+b{margin-top:.5rem}
@media (max-width:720px){
  a.srcl .tip{
    position:fixed;left:16px;right:16px;bottom:16px;width:auto;max-width:none;
    transform:translateY(8px);z-index:1000;
  }
  a.srcl:hover .tip,a.srcl:focus-visible .tip{transform:none}
  a.srcl .tip::before{display:none}
}

.dash-wrap{position:relative}
.mkhot{position:absolute;transform:translate(-50%,-50%);width:8.6%;height:5.6%;display:block;cursor:help;z-index:6;outline:none}
.mkhot .tip{
  position:absolute;left:50%;bottom:calc(100% + 8px);z-index:90;
  width:max-content;max-width:min(330px,80vw);
  padding:.55rem .7rem;border-radius:5px;background:var(--ink);color:var(--bg);
  font-family:var(--f-sans);font-size:.74rem;line-height:1.45;font-weight:400;
  letter-spacing:0;text-transform:none;white-space:normal;text-align:left;
  box-shadow:0 8px 30px rgba(0,0,0,.30);
  opacity:0;visibility:hidden;transform:translate(-50%,3px);
  transition:opacity .14s,transform .14s,visibility .14s;pointer-events:none}
.mkhot:hover .tip,.mkhot:focus-visible .tip{opacity:1;visibility:visible;transform:translate(-50%,0)}
.mkhot .tip b{display:block;font-weight:700;margin-bottom:.25rem}
.mkhot .tip::after{content:"";position:absolute;top:100%;left:50%;transform:translateX(-50%);border:6px solid transparent;border-top-color:var(--ink)}
@media (max-width:720px){
  .mkhot .tip{position:fixed;left:16px;right:16px;bottom:16px;width:auto;max-width:none;transform:translateY(8px)}
  .mkhot:hover .tip,.mkhot:focus-visible .tip{transform:none}
  .mkhot .tip::after{display:none}
}

.kf{font-family:var(--f-mono);font-weight:600;font-size:.93em;
  border-bottom:2px solid var(--line2);padding-bottom:1px;white-space:nowrap}


ul.tick,ol.fact{margin:0 0 1.2em;padding-left:0;list-style:none}
ul.tick>li{position:relative;padding-left:1.5em;margin-bottom:.7em}
ul.tick>li::before{
  content:"—";position:absolute;left:0;top:0;color:var(--listmark);
  font-family:var(--f-mono);font-weight:600;
}
ol.fact{counter-reset:fact}
ol.fact>li{
  position:relative;padding-left:2.6em;margin-bottom:.85em;counter-increment:fact;
}
ol.fact>li::before{
  content:counters(fact,".",decimal-leading-zero);
  position:absolute;left:0;top:.18em;
  font-family:var(--f-mono);font-size:.8em;font-weight:600;color:var(--listmark);
}


.topbar{
  position:fixed;inset:0 0 auto 0;z-index:60;min-height:var(--nav-h);height:auto;
  background:color-mix(in srgb,var(--surface) 92%,transparent);
  backdrop-filter:saturate(1.1) blur(6px);
  border-bottom:1px solid var(--line);
  display:flex;align-items:stretch;gap:1rem;padding:0 clamp(.6rem,2vw,1.4rem);
}
.brand{
  display:flex;align-items:center;gap:.7rem;text-decoration:none;
  font-family:var(--f-mono);font-size:.74rem;font-weight:600;
  text-transform:uppercase;letter-spacing:.1em;color:var(--ink);
  white-space:nowrap;flex:0 0 auto;
}
.brand b{
  display:inline-block;background:var(--ink);color:var(--bg);
  font-family:var(--f-disp);font-weight:800;font-size:1.05rem;line-height:1;
  padding:.3em .42em .22em;letter-spacing:.04em;
}
.topbar nav{display:flex;flex:1 1 0;min-width:0}
.navlinks{display:flex;flex-wrap:wrap;align-items:stretch;margin:0;padding:0;list-style:none;flex:1 1 0;min-width:0;overflow:visible;}
.navlinks li{flex:0 0 auto;display:flex}
.navlinks a{
  display:flex;align-items:center;padding:.3rem .72em;
  font-family:var(--f-mono);font-size:.72rem;font-weight:600;letter-spacing:.08em;
  text-transform:uppercase;text-decoration:none;color:var(--mut);
  border-bottom:2px solid transparent;white-space:nowrap;
}
.navlinks a:hover{color:var(--ink)}
.navlinks a.act{color:var(--ink);border-bottom-color:var(--pc,var(--ink))}
.ctrls{display:flex;align-items:center;gap:.5rem;flex:0 0 auto}
.zoom{display:flex;align-items:center;border:1px solid var(--line2);border-radius:3px;overflow:hidden}
.zoom button{background:transparent;border:0;color:var(--ink2);cursor:pointer;font-family:var(--f-mono);font-weight:700;font-size:.95rem;width:26px;height:30px;line-height:1}
.zoom button:hover{background:color-mix(in srgb,var(--ink) 9%,transparent)}
.zoom .zlvl{font-size:.62rem;color:var(--mut);min-width:30px;text-align:center;font-weight:600;font-family:var(--f-mono)}
.lens{display:flex;align-items:center;gap:.3rem}
.lens-lbl{font-family:var(--f-mono);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--mut)}
.lens button{
  font-family:var(--f-mono);font-size:.72rem;font-weight:600;cursor:pointer;
  background:transparent;border:1px solid var(--line2);color:var(--ink2);
  padding:.28em .55em;border-radius:99px;line-height:1;
}
.lens button[data-sc="15"].on{background:var(--sc15);border-color:var(--sc15);color:var(--bg)}
.lens button[data-sc="2"].on{background:var(--sc2);border-color:var(--sc2);color:var(--bg)}
.lens button[data-sc="3"].on{background:var(--sc3);border-color:var(--sc3);color:var(--bg)}
.seg{display:flex;border:1px solid var(--line2);border-radius:3px;overflow:hidden}
.seg button{
  font-family:var(--f-mono);font-size:.7rem;font-weight:600;letter-spacing:.05em;
  background:transparent;border:0;color:var(--mut);padding:.4em .7em;cursor:pointer;
}
.seg button.on{background:var(--ink);color:var(--bg)}
.tbtn{
  background:transparent;border:1px solid var(--line2);border-radius:3px;cursor:pointer;
  color:var(--ink2);width:30px;height:30px;display:flex;align-items:center;justify-content:center;
  font-size:.85rem;
}
.tbtn:hover{border-color:var(--ink)}
#progress{
  position:fixed;top:var(--nav-h);left:0;z-index:59;height:2px;width:0;
  background:linear-gradient(90deg,var(--sc15),var(--sc2),var(--sc3));
}


.cover{
  min-height:100svh;display:flex;flex-direction:column;justify-content:space-between;
  padding-top:calc(var(--nav-h) + 4vh);position:relative;overflow:hidden;
  border-bottom:1px solid var(--line);
}
.cover-grid{
  position:absolute;inset:0;pointer-events:none;opacity:.5;
  background:
    linear-gradient(var(--line) 1px,transparent 1px) 0 0/100% 25svh,
    linear-gradient(90deg,var(--line) 1px,transparent 1px) 0 0/25% 100%;
  mask-image:linear-gradient(180deg,transparent 0%,#000 30%,#000 75%,transparent 100%);
  -webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 30%,#000 75%,transparent 100%);
}
.cover-meta{
  display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;
  font-family:var(--f-mono);font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;
  color:var(--mut);padding-top:1.2rem;
}
.cover-title{
  font-size:clamp(3rem,11.5vw,11rem);
  margin:6vh 0 4vh;position:relative;
}
.cover-title em{font-style:normal;color:var(--sc3)}
.cover-sub{
  display:flex;gap:1.2rem;align-items:center;flex-wrap:wrap;
  font-family:var(--f-mono);font-size:.86rem;letter-spacing:.06em;color:var(--ink2);
}
.cover-sub .sep{width:38px;height:1px;background:var(--line2)}
.cover-deg{
  display:flex;gap:.6rem;margin:5vh 0 0;flex-wrap:wrap;
}
.cover-deg span{
  font-family:var(--f-mono);font-size:.8rem;font-weight:600;
  border:1px solid;border-radius:99px;padding:.32em .8em;
}
.cover-deg .d15{color:var(--sc15);border-color:var(--sc15)}
.cover-deg .d2{color:var(--sc2);border-color:var(--sc2)}
.cover-deg .d3{color:var(--sc3);border-color:var(--sc3)}
.cover-foot{
  border-top:1px solid var(--line);padding:1rem 0 1.4rem;
  display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;
  font-size:var(--fs-small);color:var(--mut);
}
.cover-foot .read3{display:flex;gap:1.6rem;flex-wrap:wrap;font-family:var(--f-mono);font-size:.76rem;text-transform:uppercase;letter-spacing:.08em}
.cover-foot .read3 b{color:var(--ink);font-weight:600}


.divider{
  position:relative;min-height:66svh;display:flex;align-items:center;
  border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);
  
  background:
    linear-gradient(180deg,color-mix(in srgb,var(--pc) 26%,var(--ink)) 0%,var(--ink) 72%);
  color:var(--bg);overflow:hidden;
}
.divider .dv-inner{display:grid;grid-template-columns:auto 1fr;gap:clamp(1rem,4vw,4rem);align-items:center;width:100%}
.dv-num{
  font-family:var(--f-disp);font-weight:800;line-height:.8;
  font-size:clamp(7rem,22vw,20rem);
  color:transparent;-webkit-text-stroke:2px var(--pc);
  opacity:.85;user-select:none;
}
.dv-body .dv-part{
  font-family:var(--f-mono);font-size:.78rem;font-weight:600;letter-spacing:.16em;
  text-transform:uppercase;color:var(--pc);margin-bottom:1rem;display:flex;align-items:center;gap:.7rem;
}
.dv-body .dv-part::before{content:"";width:34px;height:8px;background:var(--pc)}
.dv-title{font-size:clamp(2.6rem,7vw,6.2rem);margin:0 0 1.2rem;max-width:14em;color:var(--bg)}
.dv-cover{max-width:46em;color:color-mix(in srgb,var(--bg) 72%,var(--ink));font-size:1.05em;margin:0}
.dv-edge{
  position:absolute;top:0;bottom:0;left:0;width:7px;background:var(--pc);
}
.dv-coords{
  position:absolute;right:var(--gut);bottom:1.2rem;
  font-family:var(--f-mono);font-size:.68rem;letter-spacing:.12em;
  color:color-mix(in srgb,var(--bg) 55%,var(--ink));
  text-transform:uppercase;text-align:right;
}


.part{position:relative}
.theme{
  border-top:1px solid var(--line);
  padding:clamp(2rem,4.5vw,4rem) 0 clamp(2rem,4vw,3.4rem);
}
.theme:first-of-type{border-top:0}
.layout{
  display:grid;grid-template-columns:minmax(0,1fr) var(--rail-w);
  gap:clamp(1.4rem,3.5vw,4rem);align-items:start;
}
.rail{position:sticky;top:calc(var(--nav-h) + 16px);grid-column:2}
.sut{
  border-left:3px solid var(--accent,var(--sc2));
  background:color-mix(in srgb,var(--accent,var(--sc2)) 6%,var(--surface));
  padding:1rem 1.1rem 1.05rem;
}
.sut .sut-lbl{
  font-family:var(--f-mono);font-size:.66rem;font-weight:600;letter-spacing:.18em;
  text-transform:uppercase;color:var(--accent,var(--sc2));display:block;margin-bottom:.5rem;
}
.sut p{margin:0;font-size:.97rem;line-height:1.55}
.sut p + p{margin-top:.55em}
.rail .railmeta{
  margin-top:.9rem;font-family:var(--f-mono);font-size:.7rem;color:var(--mut);
  letter-spacing:.08em;text-transform:uppercase;
}
.main{min-width:0;max-width:var(--measure);grid-column:1}


body.rail-off .layout{grid-template-columns:1fr}
body.rail-off .rail{display:none}
body.rail-off .main{max-width:none;grid-column:1}



.vyvod{
  background:var(--panel);color:var(--panel-ink);
  padding:1.25rem 1.4rem 1.2rem;margin:1.8rem 0;
  position:relative;border-left:6px solid var(--accent,var(--sc2));
  break-inside:avoid;
}
.vyvod .v-lbl{
  font-family:var(--f-mono);font-size:.68rem;font-weight:600;letter-spacing:.2em;
  text-transform:uppercase;color:var(--panel-mut);display:flex;gap:.6rem;align-items:center;
  margin-bottom:.65rem;
}
.vyvod .v-lbl::before{content:"▮▮";letter-spacing:.05em;color:var(--accent,var(--sc2));font-size:.8em}
.vyvod p{margin:0}
.vyvod p+p{margin-top:.6em}
.vyvod .src{color:var(--panel-mut)}
.vyvod ol.fact>li::before,
.vyvod ul.tick>li::before{color:color-mix(in srgb,var(--listmark) 60%,var(--panel-ink))}


.quote{
  margin:2rem 0;padding:0 0 0 1.5rem;border-left:2px solid var(--accent,var(--sc2));
  break-inside:avoid;
}
.quote .q-text{
  font-family:var(--f-disp);font-weight:600;text-transform:none;
  font-size:clamp(1.5rem,2.6vw,2.2rem);line-height:1.12;letter-spacing:.005em;
  margin:0 0 .7rem;color:var(--ink);
}
.quote .q-att{font-family:var(--f-mono);font-size:.78rem;color:var(--mut);letter-spacing:.06em}
.quote .q-att b{color:var(--ink2);font-weight:600}

.quote.q-long{
  padding:1.05rem 1.3rem 1.1rem 1.4rem;border-left-width:4px;
  background:color-mix(in srgb,var(--sc3) 10%,var(--bg));
}
.quote.q-long .q-text{
  font-family:var(--f-body);font-weight:500;font-size:1.06rem;line-height:1.55;
  letter-spacing:0;margin:0 0 .8em;color:var(--ink);
}
.quote.q-long .q-text:last-of-type{margin-bottom:.9em}


.theme.theme-flag{
  background:linear-gradient(180deg,color-mix(in srgb,var(--sc3) 9%,var(--bg)) 0%,var(--bg) 62%);
  border-top:2px solid var(--sc3);
}
html[data-theme="dark"] .theme.theme-flag{
  background:linear-gradient(180deg,color-mix(in srgb,var(--sc3) 16%,var(--bg)) 0%,var(--bg) 62%);
}

.flaghead{
  margin:2.4rem 0 1.4rem;padding:1.15rem 1.4rem;
  background:var(--sc3);color:#fff;break-inside:avoid;
  box-shadow:0 2px 0 0 color-mix(in srgb,var(--sc3) 55%,#000);
}
.flaghead .fh-k{
  font-family:var(--f-mono);font-size:.72rem;font-weight:600;letter-spacing:.18em;
  text-transform:uppercase;color:#fff;opacity:.82;display:flex;align-items:center;gap:.6rem;margin-bottom:.5rem;
}
.flaghead .fh-k::before{content:"";width:26px;height:2px;background:#fff;opacity:.8}
.flaghead .fh-t{
  font-family:var(--f-disp);font-weight:800;text-transform:uppercase;
  font-size:clamp(1.7rem,3vw,2.6rem);line-height:.98;letter-spacing:.01em;margin:0;color:#fff;
}


.consensus{
  margin:2.8rem 0 .4rem;break-inside:avoid;
  border:1px solid var(--accent,var(--p3));border-left:5px solid var(--accent,var(--p3));
  background:color-mix(in srgb,var(--sc3) 10%,var(--bg));
  padding:clamp(1.4rem,3vw,2.3rem) clamp(1.3rem,3vw,2.4rem);
}
.consensus .cons-lbl{
  font-family:var(--f-mono);font-size:.72rem;font-weight:600;letter-spacing:.2em;
  text-transform:uppercase;color:var(--accent,var(--p3));
  display:flex;align-items:center;gap:.6rem;margin-bottom:1rem;
}
.consensus .cons-lbl::before{content:"";width:30px;height:2px;background:var(--accent,var(--p3))}
.consensus .cons-frame{font-size:1.02rem;color:var(--ink2);margin:0;max-width:60ch}
.consensus .cons-quote{position:relative;margin:1.5rem 0;padding:.2rem 0 0 3rem}
.consensus .cons-quote::before{
  content:"\201C";position:absolute;left:-.2rem;top:-1.6rem;
  font-family:var(--f-disp);font-weight:800;font-size:6rem;line-height:1;
  color:var(--accent,var(--p3));opacity:.55;user-select:none;
}
.consensus .cq-text{
  font-family:var(--f-disp);font-weight:800;text-transform:none;letter-spacing:.005em;
  font-size:clamp(2rem,4.4vw,3.6rem);line-height:.98;color:var(--ink);margin:0 0 .55rem;
}
.consensus .cq-att{font-family:var(--f-mono);font-size:.78rem;color:var(--mut);margin:0;letter-spacing:.04em}
.consensus .cq-att b{color:var(--ink2);font-weight:600}
.consensus .cons-quote + .cons-frame{margin-top:1.5rem}


.note-author{
  border:1px dashed var(--warn);background:var(--warn-soft);
  padding:.8rem 1rem;margin:1.4rem 0;font-size:var(--fs-small);
  break-inside:avoid;
}
.note-author .na-lbl{
  font-family:var(--f-mono);font-size:.66rem;font-weight:600;letter-spacing:.16em;
  text-transform:uppercase;color:var(--warn);display:block;margin-bottom:.3rem;
}


.caveat{
  border:1px solid var(--line);background:var(--surface);
  padding:.9rem 1.05rem;margin:1.4rem 0;font-size:var(--fs-small);color:var(--ink2);
}
.caveat .c-lbl{
  font-family:var(--f-mono);font-size:.64rem;font-weight:600;letter-spacing:.16em;
  text-transform:uppercase;color:var(--mut);display:block;margin-bottom:.35rem;
}


.stat-row{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:1px;background:var(--line);border:1px solid var(--line);
  margin:1.7rem 0;break-inside:avoid;
}
.stat-row-2col{grid-template-columns:repeat(2,minmax(0,1fr))}
.stat-row.price-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.stat{
  background:var(--surface);padding:1rem 1rem 1.1rem;min-width:0;
}
.stat .n{
  font-family:var(--f-disp);font-weight:800;font-size:clamp(2rem,3.4vw,3.1rem);
  line-height:.95;color:var(--accent,var(--ink));letter-spacing:.01em;display:block;
}
.stat .n sub,.stat .n sup{font-size:.45em;letter-spacing:0}
.stat .l{
  display:block;margin-top:.45rem;font-size:var(--fs-small);line-height:1.4;
  color:var(--ink);
}
.stat .s{display:block;margin-top:.3rem}


.sc-chip{
  display:inline-block;font-family:var(--f-mono);font-size:.72em;font-weight:600;
  border:1px solid;border-radius:99px;padding:.1em .55em;line-height:1.35;
  white-space:nowrap;vertical-align:baseline;
}
.sc-chip[data-sc~="15"]{color:var(--sc15-ink);border-color:var(--sc15);background:var(--sc15-soft)}
.sc-chip[data-sc~="2"]{color:var(--sc2-ink);border-color:var(--sc2);background:var(--sc2-soft)}
.sc-chip[data-sc~="3"]{color:var(--sc3-ink);border-color:var(--sc3);background:var(--sc3-soft)}
.sc-chip[data-sc~="4"]{color:var(--sc3-ink);border-color:var(--sc3);background:var(--sc3-soft)}
.sc-chip[data-sc~="now"]{color:var(--sc15-ink);border-color:var(--sc15);background:var(--sc15-soft)}
.sc-chip.past{color:var(--mut);border-color:var(--sc-past);background:var(--sc-past-soft)}


.sc-chip[data-sc~="2"], .sc-chip[data-sc~="3"], .sc-chip[data-sc~="4"] {
  position: relative;
  cursor: help;
}
.sc-chip[data-sc~="2"]::after, .sc-chip[data-sc~="3"]::after, .sc-chip[data-sc~="4"]::after {
  position: absolute;
  left: 50%;
  bottom: calc(100% + 8px);
  transform: translateX(-50%) translateY(4px);
  width: max-content;
  max-width: 260px;
  padding: .5rem .7rem;
  border-radius: 5px;
  background: var(--ink);
  color: var(--bg);
  font-family: var(--f-sans);
  font-size: .74rem;
  line-height: 1.35;
  font-weight: 400;
  text-transform: none;
  white-space: normal;
  text-align: center;
  box-shadow: 0 8px 24px rgba(0,0,0,.25);
  opacity: 0;
  visibility: hidden;
  transition: opacity .15s, transform .15s, visibility .15s;
  pointer-events: none;
  z-index: 100;
}
.sc-chip[data-sc~="2"]:hover::after, .sc-chip[data-sc~="2"]:focus-visible::after,
.sc-chip[data-sc~="3"]:hover::after, .sc-chip[data-sc~="3"]:focus-visible::after,
.sc-chip[data-sc~="4"]:hover::after, .sc-chip[data-sc~="4"]:focus-visible::after {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0);
}
.sc-chip[data-sc~="2"]::before, .sc-chip[data-sc~="3"]::before, .sc-chip[data-sc~="4"]::before {
  content: "";
  position: absolute;
  top: auto;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%) translateY(2px);
  border: 4px solid transparent;
  border-top-color: var(--ink);
  opacity: 0;
  visibility: hidden;
  transition: opacity .15s, transform .15s, visibility .15s;
  pointer-events: none;
  z-index: 101;
}
.sc-chip[data-sc~="2"]:hover::before, .sc-chip[data-sc~="2"]:focus-visible::before,
.sc-chip[data-sc~="3"]:hover::before, .sc-chip[data-sc~="3"]:focus-visible::before,
.sc-chip[data-sc~="4"]:hover::before, .sc-chip[data-sc~="4"]:focus-visible::before {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(-2px);
}
.sc-chip[data-sc~="2"]::after {
  content: "Поточний орієнтир — 2050 р., за новими даними ризик можливий уже через 10–12 років";
}
.sc-chip[data-sc~="3"]::after {
  content: "Поточний орієнтир — кінець століття, за новими даними ризик можливий уже через 25–35 років";
}



.scen{
  border:1px solid var(--line);background:var(--surface);
  margin:1.8rem 0;break-inside:avoid;
}
.scen .scen-head{
  display:flex;justify-content:space-between;gap:1rem;align-items:baseline;flex-wrap:wrap;
  padding:.85rem 1.1rem;border-bottom:1px solid var(--line);
}
.scen .scen-title{font-weight:700;font-size:1.02rem;margin:0}
.scen .scen-src{margin:0}
.scen .scen-cols{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));
  gap:1px;background:var(--line);
}
.sc-col{background:var(--surface);padding:.95rem 1rem 1.05rem;position:relative;min-width:0}
.sc-col::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--scc,var(--line2))}
.sc-col[data-sc~="15"],.sc-col[data-sc~="now"]{--scc:var(--sc15)}
.sc-col[data-sc~="2"]{--scc:var(--sc2)}
.sc-col[data-sc~="3"]{--scc:var(--sc3)}
.sc-col.past{--scc:var(--sc-past)}
.sc-col .sc-tag{
  font-family:var(--f-mono);font-size:.76rem;font-weight:600;letter-spacing:.1em;
  text-transform:uppercase;color:var(--scc);display:block;margin-bottom:.55rem;
}
.sc-col .sc-num{
  font-family:var(--f-disp);font-weight:800;font-size:clamp(1.7rem,2.6vw,2.5rem);
  line-height:.95;display:block;color:var(--ink);
}
.sc-col .sc-num.sc-num-sm{font-size:clamp(1.15rem,2vw,1.65rem);line-height:1.08}
.sc-col .sc-cap{display:block;margin-top:.4rem;font-size:var(--fs-small);line-height:1.45;color:var(--ink)}
.sc-col .sc-cap .src{display:block;margin-top:.25rem}
.scen .scen-verdict{
  border-top:1px solid var(--line);padding:.85rem 1.1rem;font-size:var(--fs-small);
  color:var(--ink2);display:flex;gap:.7rem;
}
.scen .scen-verdict.scen-verdict-lg{
  font-size:1.02rem;font-weight:400;line-height:1.45;color:var(--ink);
}
.scen .scen-verdict::before{
  content:"→";font-family:var(--f-mono);color:var(--sc2);font-weight:600;flex:0 0 auto;
}
.scen-verdict.standalone-verdict{
  border:1px solid var(--line);border-top:0;background:var(--surface);
  padding:.85rem 1.1rem;margin:-1.7rem 0 1.7rem;
  color:var(--ink);display:flex;gap:.7rem;
  font-size:1.02rem;font-weight:400;line-height:1.45;
  break-inside:avoid;
}
.scen-verdict.standalone-verdict::before{
  content:"→";font-family:var(--f-mono);color:var(--sc2);font-weight:600;flex:0 0 auto;
}


body[data-lens] [data-sc]{transition:opacity .25s}
body[data-lens="15"] [data-sc]:not([data-sc~="15"]):not([data-sc~="now"]),
body[data-lens="2"] [data-sc]:not([data-sc~="2"]),
body[data-lens="3"] [data-sc]:not([data-sc~="3"]){opacity:.28}
body[data-lens="15"] .sc-col[data-sc~="15"],body[data-lens="15"] .sc-col[data-sc~="now"],
body[data-lens="2"] .sc-col[data-sc~="2"],
body[data-lens="3"] .sc-col[data-sc~="3"]{
  box-shadow:inset 0 0 0 2px var(--scc);
}


.table-scroll{overflow-x:auto;margin:1.8rem 0;border:1px solid var(--line)}
table.matrix{
  border-collapse:collapse;width:100%;min-width:860px;
  font-size:var(--fs-small);background:var(--surface);
}
table.matrix caption{
  text-align:left;font-family:var(--f-mono);font-size:.7rem;letter-spacing:.14em;
  text-transform:uppercase;color:var(--mut);padding:.7rem 1rem;border-bottom:1px solid var(--line);
}
table.matrix th,table.matrix td{
  border:1px solid var(--line);padding:.6rem .75rem;vertical-align:top;text-align:left;
}
table.matrix thead th{
  font-family:var(--f-mono);font-size:.68rem;font-weight:600;letter-spacing:.1em;
  text-transform:uppercase;color:var(--ink2);background:color-mix(in srgb,var(--accent,var(--ink)) 7%,var(--surface));
  white-space:nowrap;
}
table.matrix tbody th{
  font-weight:700;background:color-mix(in srgb,var(--accent,var(--ink)) 4%,var(--surface));
  min-width:130px;
}
table.matrix td .src{display:block;margin-top:.2rem}


details.case{
  border:1px solid var(--line);background:var(--surface);margin:1.3rem 0;
}
details.case>summary{
  cursor:pointer;list-style:none;display:flex;gap:.9rem;align-items:flex-start;
  padding:1rem 1.15rem;
}
details.case>summary::-webkit-details-marker{display:none}
details.case>summary .c-mark{
  font-family:var(--f-mono);font-weight:600;color:var(--accent,var(--sc2));
  flex:0 0 auto;transition:transform .2s;line-height:1.5;
}
details.case[open]>summary .c-mark{transform:rotate(90deg)}
details.case>summary .c-head b{display:block;font-size:1.04rem}
details.case>summary .c-head span.c-teaser{display:block;color:var(--ink2);font-size:var(--fs-small);margin-top:.25rem}
details.case>summary .c-cta{
  margin-left:auto;flex:0 0 auto;font-family:var(--f-mono);font-size:.68rem;
  letter-spacing:.1em;text-transform:uppercase;color:var(--mut);padding-top:.25rem;
}
details.case .c-body{padding:.4rem 1.15rem 1.2rem;border-top:1px dashed var(--line)}
details.case .c-body>*:first-child{margin-top:.8rem}


.fig{margin:1.9rem 0;break-inside:avoid}
.fig .fig-box{border:1px solid var(--line);background:var(--surface);padding:.8rem}
.fig figcaption{
  margin-top:.55rem;font-size:var(--fs-small);color:var(--ink2);
  display:flex;gap:.6rem;align-items:baseline;
}
.fig figcaption .fno{
  font-family:var(--f-mono);font-size:.7rem;font-weight:600;letter-spacing:.08em;
  color:var(--accent,var(--sc2));flex:0 0 auto;text-transform:uppercase;
}
.fig svg{display:block;width:100%;height:auto}
.fig .fig-img{display:block;width:100%;height:auto}
.fig svg text{font-family:var(--f-body)}
.fig svg .t-mono{font-family:var(--f-mono)}
.fig svg .t-disp{font-family:var(--f-disp);font-weight:800}


.flow{counter-reset:fstep;margin:1.8rem 0}
.fstep{
  position:relative;border:1px solid var(--line);background:var(--surface);
  margin:0 0 0 3rem;padding:1rem 1.2rem;counter-increment:fstep;break-inside:avoid;
}
.fstep + .fstep{margin-top:2.1rem}
.fstep + .fstep::after{
  content:"";position:absolute;left:50%;top:-2.1rem;height:2.1rem;width:2px;
  background:var(--accent,var(--p5));
}
.fstep::before{
  content:counter(fstep,decimal-leading-zero);
  position:absolute;left:-3rem;top:50%;transform:translateY(-50%);
  font-family:var(--f-disp);font-weight:800;font-size:2rem;line-height:1;
  color:var(--accent,var(--p5));width:2.4rem;text-align:center;
}
.fstep b.f-t{display:block;font-size:1.05rem;margin-bottom:.45rem}
.fstep .f-cs{display:grid;grid-template-columns:1fr 1fr;gap:1rem;font-size:var(--fs-small)}
.fstep .f-cs span i{
  font-style:normal;font-family:var(--f-mono);font-size:.66rem;font-weight:600;
  letter-spacing:.12em;text-transform:uppercase;color:var(--mut);display:block;margin-bottom:.2rem;
}


.chain{
  display:flex;flex-wrap:wrap;gap:.5rem;align-items:stretch;margin:1.5rem 0;break-inside:avoid;
}
.chain .ch{
  border:1px solid var(--line2);background:var(--surface);padding:.55rem .8rem;
  font-size:var(--fs-small);line-height:1.4;flex:1 1 130px;min-width:120px;
}
.chain .ch b{display:block;font-size:.95em}
.chain .ch small{color:var(--mut);font-size:.85em}
.chain .ar{
  align-self:center;font-family:var(--f-mono);color:var(--accent,var(--sc2));
  font-weight:600;flex:0 0 auto;
}


.map-section{padding:clamp(2.5rem,5vw,4.5rem) 0;border-bottom:1px solid var(--line)}
.model-section{background:linear-gradient(180deg,var(--bg),color-mix(in srgb,var(--surface) 58%,var(--bg)))}
.map-wide{max-width:min(1560px,calc(100% - 44px))}
.threat-map{
  margin-top:2rem;display:grid;gap:1.25rem;color:var(--ink);
}
.tm-spine{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;position:relative;
}
.tm-spine::before{
  content:"";position:absolute;left:7%;right:7%;top:50%;height:2px;background:var(--line2);
}
.tm-spine-node{
  position:relative;z-index:1;display:block;text-decoration:none;color:var(--ink);
  min-height:88px;padding:1rem 1rem .95rem;border:1px solid var(--line);
  background:var(--surface);
}
.tm-spine-node::after{
  content:"→";position:absolute;right:-.62rem;top:50%;transform:translateY(-50%);
  font-family:var(--f-mono);font-weight:700;color:var(--mut);z-index:2;
}
.tm-spine-node:last-child::after{display:none}
.tm-spine-node b{display:block;font-size:1rem}
.tm-spine-node span{display:block;margin-top:.35rem;color:var(--ink2);font-size:var(--fs-small);line-height:1.35}
.tm-spine-node.danger{border-color:color-mix(in srgb,var(--sc3) 55%,var(--line));background:color-mix(in srgb,var(--sc3) 10%,var(--surface))}
.tm-scenarios{display:flex;gap:.65rem;flex-wrap:wrap}
.tm-layers{display:grid;gap:1.4rem}
.tm-layer{
  padding-top:1.1rem;border-top:3px solid var(--accent,var(--line2));
}
.tm-layer.physics{--accent:var(--p4)}
.tm-layer.economy{--accent:var(--pind)}
.tm-layer.finance{--accent:var(--p5)}
.tm-layer.routes{--accent:var(--p6)}
.tm-layer-head{
  display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:.85rem;row-gap:.2rem;
  align-items:baseline;margin-bottom:.9rem;
}
.tm-layer-head span{
  grid-row:1 / span 2;font-family:var(--f-mono);font-weight:700;color:var(--accent);
  border:1px solid color-mix(in srgb,var(--accent) 55%,var(--line));padding:.35rem .45rem;
}
.tm-layer-head h3{margin:0;font-size:1.18rem;line-height:1.2}
.tm-layer-head p{grid-column:2;margin:.15rem 0 0;color:var(--ink2);max-width:82ch}
.tm-card-grid{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;
}
.tm-card-grid.six{grid-template-columns:repeat(6,minmax(0,1fr))}
.tm-card,.tm-route,.tm-finance-chain a{
  display:block;text-decoration:none;color:var(--ink);border:1px solid var(--line);
  background:var(--bg);min-width:0;
}
.tm-card{
  min-height:150px;padding:1rem .95rem .95rem;
  border-top:4px solid var(--accent);
}
.tm-card b,.tm-route b{display:block;font-size:1rem;line-height:1.25}
.tm-card span,.tm-route span{
  display:block;margin-top:.45rem;color:var(--ink2);font-size:var(--fs-small);line-height:1.4;
}
.tm-card em{
  display:block;margin-top:.7rem;color:var(--mut);font-style:normal;font-size:var(--fs-tiny);line-height:1.35;
  border-top:1px solid var(--line);padding-top:.55rem;
}
.tm-card:hover,.tm-route:hover,.tm-finance-chain a:hover,.tm-spine-node:hover{
  border-color:var(--accent,var(--sc2));box-shadow:0 6px 18px rgba(0,0,0,.08);
}
.tm-finance-chain{
  display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem;counter-reset:finance;
}
.tm-finance-chain a{
  position:relative;min-height:112px;padding:1rem .9rem .9rem;border-top:4px solid var(--accent);
  counter-increment:finance;
}
.tm-finance-chain a::before{
  content:counter(finance,decimal-leading-zero);display:block;font-family:var(--f-mono);
  color:var(--accent);font-weight:700;margin-bottom:.35rem;
}
.tm-finance-chain a::after{
  content:"→";position:absolute;right:-.58rem;top:50%;transform:translateY(-50%);
  font-family:var(--f-mono);font-weight:700;color:var(--mut);z-index:2;
}
.tm-finance-chain a:last-child::after{display:none}
.tm-finance-chain small{display:block;margin-top:.35rem;color:var(--ink2);line-height:1.35}
.tm-route-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;
}
.tm-route{padding:.95rem;border-left:4px solid var(--accent);min-height:118px}
.tm-close{
  display:flex;gap:1rem;justify-content:space-between;align-items:center;
  background:var(--ink);color:var(--bg);padding:1.15rem 1.25rem;margin-top:.25rem;
}
.tm-close b{display:block;font-size:1.08rem}
.tm-close p{margin:.35rem 0 0;max-width:86ch;color:color-mix(in srgb,var(--bg) 78%,transparent)}
.tm-close a{
  flex:0 0 auto;text-decoration:none;color:var(--bg);border:1px solid color-mix(in srgb,var(--bg) 45%,transparent);
  padding:.75rem .9rem;font-family:var(--f-mono);font-size:.78rem;text-transform:uppercase;
}
.tm-close a:hover{background:var(--bg);color:var(--ink)}


body.brief .main>*:not(.keep):not(h3):not(.sut-inline){display:none}
body.brief .theme[data-skip-brief]{display:none}
body.brief .brief-note{display:block}
.brief-note{display:none;font-size:var(--fs-tiny);font-family:var(--f-mono);color:var(--mut);margin-top:.6rem}


@media (max-width:1020px){
  .layout{grid-template-columns:1fr}
  .rail{position:static;max-width:var(--measure)}
  .rail,.main{grid-column:auto}
  .dv-num{font-size:clamp(5rem,18vw,9rem)}
  .fstep .f-cs{grid-template-columns:1fr}
  .tm-spine{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tm-spine::before,.tm-spine-node::after,.tm-finance-chain a::after{display:none}
  .tm-card-grid,.tm-card-grid.six{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tm-finance-chain{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tm-route-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:720px){
  .topbar{
  position:fixed;inset:0 0 auto 0;z-index:60;min-height:var(--nav-h);height:auto;
  background:color-mix(in srgb,var(--surface) 92%,transparent);
  backdrop-filter:saturate(1.1) blur(6px);
  border-bottom:1px solid var(--line);
  display:flex;align-items:stretch;gap:1rem;padding:0 clamp(.6rem,2vw,1.4rem);
}
  :root{--nav-h:92px}
  .brand{height:44px}
  .navlinks{display:flex;flex-wrap:nowrap;align-items:stretch;margin:0;padding:0;list-style:none;flex:1 1 0;min-width:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch;}
  .navlinks::-webkit-scrollbar{display:none;}
  .navlinks a{padding:.5em .6em}
  .ctrls{margin-left:auto;height:44px}
  .brand span{display:none}
  .dv-inner{grid-template-columns:1fr}
  .dv-num{order:2}
  .stat-row-2col{grid-template-columns:1fr}
  .stat-row.price-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .stat .n{font-size:1.9rem}
  .fstep{margin-left:2.4rem}
  .fstep::before{left:-2.5rem;font-size:1.5rem;width:2rem}
  .map-wide{max-width:calc(100% - 28px)}
  .tm-spine,.tm-card-grid,.tm-card-grid.six,.tm-finance-chain,.tm-route-grid{grid-template-columns:1fr}
  .tm-layer-head{grid-template-columns:1fr}
  .tm-layer-head span{grid-row:auto;width:max-content}
  .tm-layer-head p{grid-column:auto}
  .tm-card,.tm-route,.tm-finance-chain a{min-height:0}
  .tm-close{display:block}
  .tm-close a{display:inline-block;margin-top:.9rem}
}


@media print{
  :root{
    --bg:#fff;--bg2:#fff;--surface:#fff;--ink:#111;--ink2:#333;--mut:#555;
    --line:#bbb;--line2:#888;--panel:#fff;--panel-ink:#111;--panel-mut:#555;
    --nav-h:0px;
  }
  html[data-theme="dark"]{
    --bg:#fff;--bg2:#fff;--surface:#fff;--ink:#111;--ink2:#333;--mut:#555;
    --line:#bbb;--line2:#888;--panel:#fff;--panel-ink:#111;--panel-mut:#555;
    --sc15:#a07410;--sc15-soft:#f3ecd8;--sc15-ink:#6b4d00;
    --sc2:#bb5715;--sc2-soft:#f5e6d5;--sc2-ink:#7c3a00;
    --sc3:#a3271a;--sc3-soft:#f4e0da;--sc3-ink:#771a10;
    --sc-past:#7a7466;--sc-past-soft:#eeece4;
    --p1:#57523f;--p2:#94690e;--p3:#b1431c;--p4:#6f6b25;--pind:#42604e;--p5:#8d2536;--p6:#641722;
    --warn:#8a6d00;--warn-soft:#f6efd4;--listmark:#8d2536;
  }
  @page{margin:13mm 12mm}
  body{font-size:10.4pt;line-height:1.5;background:#fff}
  .topbar,#progress,.tbtn,.lens,.seg,.toTop{display:none!important}
  body[data-lens] [data-sc]{opacity:1!important;box-shadow:none!important}
  body.brief .main>*{display:revert!important}
  body.brief .theme[data-skip-brief]{display:block!important}
  .cover{min-height:auto;padding:18mm 0 6mm;page-break-after:always;border:0}
  .cover-grid{display:none}
  .cover-title{font-size:46pt;margin:10mm 0 8mm}
  .divider{
    min-height:auto;padding:10mm 0;page-break-before:always;
    background:#fff;color:#111;border-color:#bbb;
  }
  .dv-num{font-size:42pt;-webkit-text-stroke:1px var(--pc);opacity:1}
  .dv-title{font-size:26pt;color:#111}
  .dv-cover{color:#333}
  .dv-coords{color:#555}
  .stat-row{background:transparent}
  .stat{outline:1px solid #bbb}
  .map-section{page-break-after:always}
  .map-scroll{overflow:visible;border-color:#999}
  .map-scroll svg{min-width:0}
  .layout{grid-template-columns:1fr;gap:.8rem}
  .rail{position:static}
  .rail,.main{grid-column:auto}
  .theme-flag{background:#fff!important;border-top:2px solid var(--sc3)}
  .flaghead{background:#fff!important;color:var(--ink)!important;border:2px solid var(--sc3)}
  .flaghead .fh-t{color:var(--sc3)!important}
  .flaghead .fh-k{color:var(--sc3)!important}
  .sut{border:1px solid #999;border-left:4px solid var(--accent,#555)}
  .vyvod{background:#fff;color:#111;border:1.5px solid #111;border-left:6px solid var(--accent,#555)}
  .vyvod .v-lbl{color:#333}
  .fig,.scen,.stat-row,.vyvod,.quote,.fstep,.note-author,.caveat,.chain{break-inside:avoid;page-break-inside:avoid}
  table.matrix{min-width:0;font-size:8.4pt}
  .table-scroll{overflow:visible;border-color:#999}
  thead{display:table-header-group}
  tr{break-inside:avoid}
  details.case{border-color:#999}
  details.case>summary .c-cta{display:none}
  a{text-decoration:none;color:inherit}
  .navlinks a.act{border:0}
  section,h2,h3{page-break-after:avoid}
}




.cy-e3{
  position:relative;
  left:50%;
  transform:translateX(-50%);
  width:min(1240px,calc(100vw - 2rem));
  margin:1.4rem 0 2.8rem;
  border:1px solid var(--line);
  background:
    linear-gradient(90deg,color-mix(in srgb,var(--line) 28%,transparent) 1px,transparent 1px),
    linear-gradient(0deg,color-mix(in srgb,var(--line) 18%,transparent) 1px,transparent 1px),
    var(--bg2);
  background-size:42px 42px;
  box-shadow:0 18px 54px rgba(40,30,10,.13);
  break-inside:avoid;
}

.cy-e3-hero{
  display:grid;
  grid-template-columns:minmax(250px,30%) minmax(0,1fr);
  gap:1px;
  background:var(--line);
  border-bottom:1px solid var(--line);
}
.cy-e3-hero>div{background:var(--surface)}
.cy-e3-stamp{
  min-height:285px;
  padding:clamp(1.05rem,2vw,1.55rem);
  display:flex;
  flex-direction:column;
  justify-content:center;
  border-left:9px solid var(--p6);
}
.cy-e3-stamp span,
.cy-e3-title span,
.cy-e3-grid-title span,
.cy-e3-k,
.cy-e3-block-head span,
.cy-e3-trigger span,
.cy-e3-risk span,
.cy-e3-chain-core span,
.cy-e3-chain-card span,
.cy-e3-verdict span{
  display:block;
  font-family:var(--f-mono);
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--accent,var(--p4));
}
.cy-e3-stamp b{
  margin:.7rem 0 .8rem;
  font-family:var(--f-disp);
  font-size:clamp(2.5rem,5vw,5rem);
  line-height:.82;
  text-transform:uppercase;
  color:var(--p6);
}
.cy-e3-stamp em{
  max-width:23ch;
  font-style:normal;
  font-family:var(--f-mono);
  font-size:.72rem;
  line-height:1.45;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--mut);
}
.cy-e3-title{
  padding:clamp(1.2rem,2.8vw,2.05rem);
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.cy-e3-title h4{
  margin:.35rem 0 .9rem;
  max-width:14.5ch;
  font-family:var(--f-disp);
  font-size:clamp(2.65rem,6.2vw,5.95rem);
  line-height:.86;
  text-transform:uppercase;
  color:var(--ink);
}
.cy-e3-title p{
  margin:0;
  max-width:78ch;
  color:var(--ink2);
  font-size:clamp(.98rem,.45vw + .92rem,1.14rem);
  line-height:1.48;
}

.cy-e3-grid-title{
  padding:.95rem 1.15rem .85rem;
  background:var(--surface);
  border-bottom:1px solid var(--line);
}
.cy-e3-grid-title b{
  display:block;
  margin-top:.35rem;
  color:var(--ink);
  font-size:clamp(1.18rem,.75vw + 1rem,1.55rem);
  line-height:1.2;
}

.cy-e3-facts{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1px;
  background:var(--line);
  border-bottom:1px solid var(--line);
}
.cy-e3-fact{
  display:flex;
  flex-direction:column;
  min-height:300px;
  background:var(--surface);
  border-top:7px solid var(--accent,var(--p4));
}
.cy-e3-fact.danger{border-top-color:var(--p6)}
.cy-e3-fact.hot{border-top-color:var(--sc2)}
.cy-e3-fact-top{
  min-height:118px;
  padding:1rem 1rem .9rem;
  border-bottom:1px solid var(--line);
}
.cy-e3-k{
  margin-bottom:.65rem;
  color:var(--mut);
}
.cy-e3-fact-top>b{
  display:block;
  max-width:12ch;
  font-family:var(--f-disp);
  font-size:clamp(1.8rem,2.45vw,2.65rem);
  line-height:.9;
  text-transform:uppercase;
  color:var(--ink);
}
.cy-e3-metric{
  min-height:90px;
  padding:.75rem 1rem;
  display:grid;
  align-items:center;
  gap:.6rem;
  background:color-mix(in srgb,var(--bg2) 62%,var(--surface));
  border-bottom:1px solid var(--line);
}
.cy-e3-metric.one{
  grid-template-columns:auto minmax(0,1fr);
}
.cy-e3-metric.split{
  grid-template-columns:1fr 1fr;
}
.cy-e3-metric.split>div + div{
  border-left:1px solid var(--line);
  padding-left:.75rem;
}
.cy-e3-metric.compare{
  grid-template-columns:auto minmax(0,1fr);
}
.cy-e3-metric strong{
  display:block;
  font-family:var(--f-disp);
  font-size:clamp(2.2rem,3.2vw,3.65rem);
  line-height:.82;
  text-transform:uppercase;
  color:var(--p6);
  white-space:nowrap;
}
.cy-e3-fact:not(.danger) .cy-e3-metric strong{color:var(--ink)}
.cy-e3-fact.hot .cy-e3-metric strong{color:var(--sc2)}
.cy-e3-metric small{
  display:block;
  margin-top:.25rem;
  max-width:18ch;
  color:var(--ink2);
  font-size:.75rem;
  line-height:1.25;
  letter-spacing:.02em;
}
.cy-e3-fact>p{
  margin:0;
  padding:.9rem 1rem 1.05rem;
  color:var(--ink2);
  font-size:.9rem;
  line-height:1.42;
}

.cy-e3-squeeze,
.cy-e3-cascade{
  margin:1rem;
  background:var(--surface);
  border:1px solid var(--line);
}
.cy-e3-block-head{
  position:relative;
  padding:1.05rem 1.15rem 1.05rem 1.35rem;
  background:var(--surface);
  border-bottom:1px solid var(--line);
}
.cy-e3-block-head::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:7px;
  background:var(--p6);
}
.cy-e3-block-head.hot::before{background:linear-gradient(180deg,var(--sc3),var(--sc2))}
.cy-e3-block-head.cascade::before{background:linear-gradient(180deg,#477c83,var(--p6))}
.cy-e3-block-head span{color:var(--mut)}
.cy-e3-block-head b{
  display:block;
  margin-top:.35rem;
  max-width:34ch;
  font-family:var(--f-disp);
  font-size:clamp(2rem,3.25vw,3.65rem);
  line-height:.88;
  text-transform:uppercase;
  color:var(--p6);
}
.cy-e3-block-head p{
  margin:.6rem 0 0;
  max-width:78ch;
  color:var(--ink2);
  font-size:.98rem;
  line-height:1.42;
}

.cy-e3-sq-body{
  display:grid;
  grid-template-columns:minmax(165px,.75fr) minmax(0,2.15fr) minmax(210px,.9fr);
  gap:0;
  align-items:stretch;
  min-height:360px;
}
.cy-e3-trigger{
  position:relative;
  padding:1.1rem;
  display:flex;
  flex-direction:column;
  justify-content:center;
  background:color-mix(in srgb,var(--sc3) 10%,var(--surface));
  border-right:1px solid var(--line);
}
.cy-e3-trigger::after{
  content:"→";
  position:absolute;
  right:-24px;
  top:50%;
  transform:translateY(-50%);
  z-index:2;
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:var(--p6);
  color:#fff;
  font-family:var(--f-mono);
  font-size:1.38rem;
  font-weight:900;
  box-shadow:0 8px 20px rgba(40,30,10,.2);
}
.cy-e3-trigger span{color:var(--p6)}
.cy-e3-trigger b{
  margin:.45rem 0 .45rem;
  font-family:var(--f-disp);
  font-size:clamp(2.6rem,4.8vw,5rem);
  line-height:.84;
  text-transform:uppercase;
  color:var(--p6);
}
.cy-e3-trigger em{
  max-width:18ch;
  font-style:normal;
  color:var(--ink2);
  font-size:.9rem;
  line-height:1.36;
}
.cy-e3-lanes{
  display:grid;
  grid-template-rows:1fr 1fr;
  gap:1px;
  background:var(--line);
}
.cy-e3-lane{
  position:relative;
  padding:1.05rem 1.15rem 1.05rem 2.05rem;
  background:var(--surface);
}
.cy-e3-lane::after{
  content:"→";
  position:absolute;
  right:-24px;
  top:50%;
  transform:translateY(-50%);
  z-index:2;
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:var(--ink);
  color:var(--bg);
  font-family:var(--f-mono);
  font-size:1.35rem;
  font-weight:900;
  box-shadow:0 8px 20px rgba(40,30,10,.16);
}
.cy-e3-lane.up{border-left:7px solid var(--sc3)}
.cy-e3-lane.down{border-left:7px solid var(--sc2)}
.cy-e3-lane-tag{
  display:inline-flex;
  align-items:center;
  min-height:29px;
  padding:.2rem .6rem;
  margin-bottom:.6rem;
  border-radius:999px;
  background:color-mix(in srgb,var(--sc3) 14%,var(--surface));
  color:var(--p6);
  font-family:var(--f-mono);
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.cy-e3-lane.down .cy-e3-lane-tag{
  background:color-mix(in srgb,var(--sc2) 15%,var(--surface));
  color:var(--sc2-ink);
}
.cy-e3-lane>b{
  display:block;
  margin-bottom:.4rem;
  font-size:1.14rem;
  line-height:1.18;
  color:var(--ink);
}
.cy-e3-lane p{
  margin:0;
  color:var(--ink2);
  font-size:.9rem;
  line-height:1.42;
}
.cy-e3-risk{
  padding:1.1rem;
  display:flex;
  flex-direction:column;
  justify-content:center;
  background:color-mix(in srgb,var(--p6) 9%,var(--surface));
  border-left:1px solid var(--line);
}
.cy-e3-risk span{color:var(--p6)}
.cy-e3-risk b{
  display:block;
  margin:.45rem 0 .65rem;
  font-family:var(--f-disp);
  font-size:clamp(2.15rem,3.85vw,4rem);
  line-height:.86;
  text-transform:uppercase;
  color:var(--p6);
}
.cy-e3-risk p{
  margin:0;
  color:var(--ink2);
  font-size:.92rem;
  line-height:1.42;
}

.cy-e3-chain{
  display:grid;
  grid-template-columns:minmax(170px,.85fr) repeat(3,minmax(0,1fr));
  gap:1px;
  background:var(--line);
}
.cy-e3-chain-core,
.cy-e3-chain-card{
  position:relative;
  min-height:235px;
  padding:1rem;
  background:var(--surface);
}
.cy-e3-chain-core{
  display:flex;
  flex-direction:column;
  justify-content:center;
  background:var(--panel);
  color:var(--panel-ink);
  border-left:9px solid var(--p6);
}
.cy-e3-chain-core::after,
.cy-e3-chain-card:not(:last-child)::after{
  content:"→";
  position:absolute;
  right:-22px;
  top:50%;
  transform:translateY(-50%);
  z-index:3;
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:var(--p6);
  color:#fff;
  font-family:var(--f-mono);
  font-size:1.25rem;
  font-weight:900;
  box-shadow:0 8px 18px rgba(40,30,10,.18);
}
.cy-e3-chain-card:not(:last-child)::after{background:var(--ink);color:var(--bg)}
.cy-e3-chain-core span{color:var(--panel-mut)}
.cy-e3-chain-core b{
  margin-top:.45rem;
  font-family:var(--f-disp);
  font-size:clamp(2.25rem,4vw,4.15rem);
  line-height:.86;
  text-transform:uppercase;
}
.cy-e3-chain-card{border-top:7px solid var(--accent,var(--p4))}
.cy-e3-chain-card.water{border-top-color:#477c83}
.cy-e3-chain-card.cool{border-top-color:var(--sc2)}
.cy-e3-chain-card.economy{border-top-color:var(--p6)}
.cy-e3-chain-card>b{
  display:block;
  margin:.5rem 0 .45rem;
  font-size:1.16rem;
  line-height:1.18;
  color:var(--ink);
}
.cy-e3-chain-card p{
  margin:0;
  color:var(--ink2);
  font-size:.9rem;
  line-height:1.42;
}

.cy-e3-verdict{
  margin:1rem;
  padding:1.08rem 1.2rem 1.15rem;
  background:var(--panel);
  color:var(--panel-ink);
  border-left:9px solid var(--p6);
}
.cy-e3-verdict span{color:var(--panel-mut)}
.cy-e3-verdict b{
  display:block;
  margin:.3rem 0 .45rem;
  font-size:1.14rem;
  line-height:1.25;
}
.cy-e3-verdict p{
  margin:0;
  line-height:1.5;
  color:var(--panel-ink);
}

.cy-e3 .src{font-size:.74em}
.cy-e3 a.srcl .tip{max-width:min(460px,82vw)}
.cy-e3 p .src{white-space:normal}

@media (max-width:1120px){
  .cy-e3-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cy-e3-sq-body{grid-template-columns:1fr}
  .cy-e3-trigger{min-height:175px;border-right:0;border-bottom:1px solid var(--line)}
  .cy-e3-trigger::after,
  .cy-e3-lane::after{
    right:50%;
    top:auto;
    bottom:-24px;
    transform:translateX(50%) rotate(90deg);
  }
  .cy-e3-lane{padding:1.45rem 1.1rem 1.25rem}
  .cy-e3-risk{min-height:195px;border-left:0;border-top:1px solid var(--line);padding-top:1.55rem}
  .cy-e3-chain{grid-template-columns:1fr}
  .cy-e3-chain-core::after,
  .cy-e3-chain-card:not(:last-child)::after{
    right:50%;
    top:auto;
    bottom:-22px;
    transform:translateX(50%) rotate(90deg);
  }
  .cy-e3-chain-core,
  .cy-e3-chain-card{min-height:auto;padding:1.2rem}
}
@media (max-width:720px){
  .cy-e3{width:calc(100vw - 1rem)}
  .cy-e3-hero{grid-template-columns:1fr}
  .cy-e3-stamp{min-height:215px}
  .cy-e3-title h4{max-width:none}
  .cy-e3-facts{grid-template-columns:1fr}
  .cy-e3-fact{min-height:auto}
  .cy-e3-fact-top{min-height:auto}
  .cy-e3-fact-top>b{max-width:none}
  .cy-e3-squeeze,
  .cy-e3-cascade,
  .cy-e3-verdict{margin:.65rem}
  .cy-e3-metric.split{grid-template-columns:1fr}
  .cy-e3-metric.split>div + div{border-left:0;border-top:1px solid var(--line);padding-left:0;padding-top:.65rem}
}



.cy-e3-impact{
  display:grid;
  grid-template-columns:minmax(210px,.75fr) 56px minmax(0,3fr);
  gap:0;
  min-height:250px;
  background:var(--surface);
}
.cy-e3-impact-core{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:250px;
  padding:1.15rem;
  background:var(--panel);
  color:var(--panel-ink);
  border-left:9px solid var(--p6);
}
.cy-e3-impact-core span,
.cy-e3-impact-card span{
  display:block;
  font-family:var(--f-mono);
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.cy-e3-impact-core span{color:var(--panel-mut)}
.cy-e3-impact-core b{
  margin-top:.45rem;
  font-family:var(--f-disp);
  font-size:clamp(2.3rem,4.3vw,4.45rem);
  line-height:.84;
  text-transform:uppercase;
}
.cy-e3-impact-arrow{
  display:grid;
  place-items:center;
  background:linear-gradient(180deg,var(--p6),color-mix(in srgb,var(--p6) 72%,var(--ink)));
  color:#fff;
  font-family:var(--f-mono);
  font-size:2rem;
  font-weight:900;
}
.cy-e3-impact-cards{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1px;
  background:var(--line);
}
.cy-e3-impact-card{
  min-width:0;
  padding:1rem 1rem 1.05rem;
  background:var(--surface);
  border-top:7px solid var(--accent,var(--p4));
}
.cy-e3-impact-card.water{border-top-color:#477c83}
.cy-e3-impact-card.cool{border-top-color:var(--sc2)}
.cy-e3-impact-card.economy{border-top-color:var(--p6)}
.cy-e3-impact-card span{color:var(--mut)}
.cy-e3-impact-card b{
  display:block;
  margin:.55rem 0 .55rem;
  font-size:1.22rem;
  line-height:1.18;
  color:var(--ink);
}
.cy-e3-impact-card p{
  margin:0;
  color:var(--ink2);
  font-size:.9rem;
  line-height:1.42;
}
.cy-e3-card-metric{
  margin:.15rem 0 .7rem;
  padding:.58rem .68rem;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:.65rem;
  align-items:center;
  background:color-mix(in srgb,var(--sc2) 10%,var(--surface));
  border:1px solid color-mix(in srgb,var(--sc2) 28%,var(--line));
}
.cy-e3-card-metric strong{
  display:block;
  font-family:var(--f-disp);
  font-size:clamp(2rem,3vw,3.1rem);
  line-height:.85;
  color:var(--sc2);
  white-space:nowrap;
}
.cy-e3-card-metric small{
  display:block;
  font-size:.78rem;
  line-height:1.28;
  color:var(--ink2);
}
.cy-e3 .src a.srcl + a.srcl{margin-left:.35rem}

@media (max-width:1120px){
  .cy-e3-impact{grid-template-columns:1fr;min-height:0}
  .cy-e3-impact-core{min-height:155px}
  .cy-e3-impact-arrow{height:54px;transform:none}
  .cy-e3-impact-arrow{font-size:1.8rem}
  .cy-e3-impact-cards{grid-template-columns:1fr}
}
@media (max-width:720px){
  .cy-e3-impact-core b{font-size:clamp(2.1rem,13vw,3.5rem)}
  .cy-e3-impact-card{padding:.95rem}
}


.cy-e3-fact-top{
  height:185px;
  min-height:0;
}
.cy-e3-fact-top>b{
  max-width:13.5ch;
}
.cy-e3-metric.one{
  grid-template-columns:auto minmax(0,1fr);
}
.cy-e3-metric.one small{
  max-width:19ch;
}

.cy-e3-sq-body{
  grid-template-columns:minmax(170px,.65fr) minmax(0,2.35fr) minmax(255px,1fr);
  min-height:520px;
}
.cy-e3-lanes{
  grid-template-rows:repeat(3,minmax(0,1fr));
}
.cy-e3-lane{
  padding:1rem 3.1rem 1rem 3.25rem;
}
.cy-e3-lane.reserve{
  border-left:7px solid var(--sc15);
}
.cy-e3-lane.reserve .cy-e3-lane-tag{
  background:color-mix(in srgb,var(--sc15) 16%,var(--surface));
  color:var(--sc15-ink);
}
.cy-e3-lane>b{
  font-size:1.08rem;
}
.cy-e3-lane p{
  font-size:.875rem;
  line-height:1.38;
}
.cy-e3-lane::after{
  right:-24px;
}
.cy-e3-risk{
  padding:1.15rem 1.1rem 1.15rem 3.05rem;
}
.cy-e3-risk b{
  font-size:clamp(2.25rem,3.55vw,3.75rem);
}
.cy-e3-risk p{
  font-size:.9rem;
}


.cy-e3-impact{
  display:block;
  min-height:0;
  background:var(--surface);
}
.cy-e3-impact-core,
.cy-e3-impact-arrow{
  display:none;
}
.cy-e3-impact-cards{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1px;
  background:var(--line);
}
.cy-e3-impact-card{
  min-height:300px;
  padding:1.05rem 1.05rem 1.15rem;
}
.cy-e3-impact-card p{
  font-size:.9rem;
  line-height:1.42;
}
.cy-e3-card-metrics{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1px;
  margin:.2rem 0 .78rem;
  background:var(--line);
  border:1px solid var(--line);
}
.cy-e3-card-metrics>div{
  min-width:0;
  padding:.66rem .68rem .7rem;
  background:color-mix(in srgb,var(--surface) 86%,var(--bg2));
}
.cy-e3-impact-card.water .cy-e3-card-metrics>div{
  background:color-mix(in srgb,#477c83 10%,var(--surface));
}
.cy-e3-impact-card.cool .cy-e3-card-metrics>div{
  background:color-mix(in srgb,var(--sc2) 10%,var(--surface));
}
.cy-e3-card-metrics strong{
  display:block;
  font-family:var(--f-disp);
  font-size:clamp(2rem,2.8vw,3rem);
  line-height:.86;
  text-transform:uppercase;
  color:var(--ink);
  white-space:nowrap;
}
.cy-e3-impact-card.water .cy-e3-card-metrics strong{color:#477c83}
.cy-e3-impact-card.cool .cy-e3-card-metrics strong{color:var(--sc2)}
.cy-e3-card-metrics small{
  display:block;
  margin-top:.26rem;
  color:var(--ink2);
  font-size:.74rem;
  line-height:1.22;
}

@media (max-width:1120px){
  .cy-e3-fact-top{height:auto;min-height:118px}
  .cy-e3-sq-body{grid-template-columns:1fr;min-height:0}
  .cy-e3-lanes{grid-template-rows:none}
  .cy-e3-lane{padding:1.45rem 1.1rem 1.25rem}
  .cy-e3-risk{padding:1.55rem 1.1rem 1.25rem}
  .cy-e3-impact-cards{grid-template-columns:1fr}
  .cy-e3-impact-card{min-height:auto}
}
@media (max-width:720px){
  .cy-e3-card-metrics{grid-template-columns:1fr}
}


.cy-e3-section-gap{
  height:1rem;
  background:var(--bg);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}


.cy-e3-fact-top>b{
  max-width:none;
  width:100%;
}


.cy-e3-metric.one{
  grid-template-columns:auto minmax(0,1fr);
  grid-template-rows:auto auto;
  align-items:center;
  column-gap:.7rem;
  row-gap:.12rem;
}
.cy-e3-metric.one strong{
  grid-row:1 / span 2;
}
.cy-e3-metric.one small{
  grid-column:2;
  margin-top:0;
}
.cy-e3-metric.one .cy-e3-metric-src{
  grid-column:2;
}
.cy-e3-metric.split .cy-e3-metric-src{
  grid-column:1 / -1;
}
.cy-e3-metric-src{
  display:block;
  margin-top:.2rem;
  font-size:.68rem;
  line-height:1.25;
}
.cy-e3-card-metrics .cy-e3-metric-src{
  margin-top:.35rem;
  font-size:.68rem;
  line-height:1.25;
}


.cy-e3-block-head.hot{
  padding-left:1.15rem;
}
.cy-e3-block-head.hot::before{
  display:none;
}


.cy-e3-lane.reserve{
  border-left-color:var(--sc15);
}
.cy-e3-lane.reserve .cy-e3-lane-tag{
  background:color-mix(in srgb,var(--sc15) 16%,var(--surface));
  color:var(--sc15-ink);
}


.cy-e3-card-metrics>div{
  display:flex;
  flex-direction:column;
}
.cy-e3-card-metrics small{
  min-height:2.45em;
}
.cy-e3-card-metrics .cy-e3-metric-src{
  margin-top:auto;
  padding-top:.42rem;
}

@media (max-width:720px){
  .cy-e3-section-gap{height:.75rem}
  .cy-e3-metric.one strong{grid-row:auto}
  .cy-e3-metric.one,
  .cy-e3-metric.split{grid-template-columns:1fr}
  .cy-e3-metric.one small,
  .cy-e3-metric.one .cy-e3-metric-src,
  .cy-e3-metric.split .cy-e3-metric-src{grid-column:auto}
}


.cy-e3{
  border:0;
  background:transparent;
  box-shadow:none;
}
.cy-e3-hero,
.cy-e3-grid-title,
.cy-e3-facts,
.cy-e3-squeeze,
.cy-e3-cascade,
.cy-e3-verdict{
  box-shadow:0 10px 28px rgba(40,30,10,.08);
}
.cy-e3-hero{
  border:1px solid var(--line);
}
.cy-e3-grid-title{
  border:1px solid var(--line);
  border-bottom:0;
}
.cy-e3-facts{
  border:1px solid var(--line);
  border-top:0;
}
.cy-e3-squeeze,
.cy-e3-cascade{
  margin:0;
  border:1px solid var(--line);
}
.cy-e3-verdict{
  margin:1rem 0 0;
}
.cy-e3-section-gap{
  height:1.15rem;
  background:transparent;
  border:0;
}

.cy-e3-fact{
  min-height:270px;
}
.cy-e3-fact-top{
  height:158px;
  padding:.95rem 1rem .75rem;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
}
.cy-e3-fact-top>b{
  margin:0;
  font-size:clamp(1.72rem,2.15vw,2.35rem);
  line-height:.92;
}
.cy-e3-title-src{
  display:block;
  margin-top:.55rem;
  font-size:.68rem;
  line-height:1.25;
}
.cy-e3-metric{
  min-height:78px;
  padding:.65rem 1rem;
}
.cy-e3-metric.one{
  grid-template-columns:auto minmax(0,1fr);
  grid-template-rows:auto;
  column-gap:.7rem;
  row-gap:0;
}
.cy-e3-metric.one strong{
  grid-row:auto;
}
.cy-e3-metric.one small{
  grid-column:auto;
}
.cy-e3-metric.split .cy-e3-metric-src{
  display:none;
}
.cy-e3-fact>p{
  padding:.78rem 1rem .95rem;
}

@media (max-width:1120px){
  .cy-e3-fact-top{height:auto;min-height:132px}
  .cy-e3-squeeze,
  .cy-e3-cascade{margin:0}
}
@media (max-width:720px){
  .cy-e3-section-gap{height:.9rem}
  .cy-e3-fact-top{min-height:auto}
}




html[data-theme="dark"] .divider {
  background: linear-gradient(180deg, color-mix(in srgb, var(--pc) 30%, var(--line2)) 0%, var(--line) 100%);
  color: var(--ink);
  border-top: 1px solid var(--line2);
  border-bottom: 1px solid var(--line2);
}
html[data-theme="dark"] .divider .dv-title {
  color: var(--ink);
}
html[data-theme="dark"] .divider .dv-cover,
html[data-theme="dark"] .divider .dv-lead,
html[data-theme="dark"] .divider .dv-body p {
  color: var(--ink);
}

.txt-tip-wrap {
  position: relative;
  text-decoration: underline dotted;
  text-underline-offset: 3px;
  cursor: help;
}
.txt-tip-wrap .txt-tip {
  position: absolute;
  left: 50%;
  transform: translateX(-50%) translateY(3px);
  bottom: calc(100% + 9px);
  z-index: 90;
  width: max-content;
  max-width: min(300px, 80vw);
  padding: .5rem .6rem;
  border-radius: 5px;
  background: var(--ink);
  color: var(--bg);
  font-family: var(--f-sans);
  font-size: .74rem;
  line-height: 1.4;
  font-weight: 400;
  letter-spacing: 0;
  text-transform: none;
  white-space: normal;
  text-align: center;
  box-shadow: 0 8px 30px rgba(0,0,0,.30);
  opacity: 0;
  visibility: hidden;
  transition: opacity .14s, transform .14s, visibility .14s;
  pointer-events: none;
}
.txt-tip-wrap:hover .txt-tip, .txt-tip-wrap:focus-visible .txt-tip {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0);
}
.txt-tip-wrap .txt-tip::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -5px;
  border: 5px solid transparent;
  border-top-color: var(--ink);
}
.sc-chip[data-sc~="4"]::after {
  content: "Ризик досягнення приблизно через 75 років";
}
html[lang="uk"] .sc-chip[data-sc~="2"]::after {
  content: "Поточний орієнтир — 2050 р., за новими даними ризик можливий уже через 10–12 років";
}
html[lang="uk"] .sc-chip[data-sc~="3"]::after {
  content: "Поточний орієнтир — кінець століття, за новими даними ризик можливий уже через 25–35 років";
}
html[lang="uk"] .sc-chip[data-sc~="4"]::after {
  content: "Ризик досягнення приблизно через 75 років";
}

:root{
  --portal-h:36px;
  --top-stack-h:calc(var(--portal-h) + var(--nav-h));
}
.portalbar{
  position:fixed;inset:0 0 auto 0;z-index:80;height:var(--portal-h);min-height:var(--portal-h);
  display:flex;align-items:center;gap:.75rem;padding:0 clamp(.55rem,2vw,1rem);
  background:#0d1b2a;color:#f8fafc;border-bottom:1px solid rgba(255,255,255,.14);
  font-family:var(--f-body);line-height:1;overflow:hidden;
}
.portalbar-brand{display:flex;align-items:center;gap:.42rem;color:inherit;text-decoration:none;flex:0 0 auto;min-width:0}
.portalbar-mark{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;color:#facc15;flex:0 0 auto}
.portalbar-mark svg{width:22px;height:22px;display:block}
.portalbar-mark path{fill:currentColor}
.portalbar-title{display:flex;flex-direction:column;font-size:.62rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;line-height:.88;color:#fff}
.portalbar-nav{display:flex;align-items:center;gap:.15rem;min-width:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch;flex:1 1 auto}
.portalbar-nav::-webkit-scrollbar{display:none}
.portalbar-nav a{display:flex;align-items:center;height:var(--portal-h);padding:0 .55rem;color:rgba(248,250,252,.78);text-decoration:none;white-space:nowrap;font-size:.74rem;font-weight:700;letter-spacing:0;text-transform:none;border-bottom:2px solid transparent}
.portalbar-nav a:hover{color:#fff}
.portalbar-nav a[aria-current="page"]{color:#fff;border-bottom-color:#facc15}
.topbar{inset:var(--portal-h) 0 auto 0}
#progress{top:var(--top-stack-h)}
section{scroll-margin-top:calc(var(--top-stack-h) + 14px)}
[id]{scroll-margin-top:calc(var(--top-stack-h) + 14px)}
.cover{padding-top:calc(var(--top-stack-h) + 4vh)}
.rail{top:calc(var(--top-stack-h) + 16px)}
.cover-intro{max-width:min(880px,100%);margin:clamp(1.2rem,2.8vh,2rem) 0 clamp(1rem,2vh,1.6rem);padding-left:1rem;border-left:2px solid var(--sc2);color:var(--ink2);font-size:clamp(.96rem,.38vw + .86rem,1.06rem);line-height:1.52}
.cover-intro p{max-width:70ch;margin:0 0 .72rem}
.cover-intro p:last-child{margin-bottom:0}
.cover-with-intro .cover-title{font-size:clamp(2.7rem,9.2vw,9.4rem);margin:clamp(1.1rem,2.8vh,2rem) 0 clamp(1rem,2vh,1.7rem)}
@media (max-width:720px){
  :root{--portal-h:38px}
  .portalbar{gap:.5rem;padding:0 .55rem}
  .portalbar-title{font-size:.56rem}
  .portalbar-nav a{font-size:.7rem;padding:0 .48rem}
  .cover-intro{font-size:.93rem;line-height:1.45;margin:1rem 0 1.05rem;padding-left:.75rem}
  .cover-with-intro .cover-title{font-size:clamp(2.35rem,13.5vw,4rem);margin:1rem 0}
}
@media print{.portalbar{display:none!important}}


/* ENERGO BASE unified portalbar patch — menu only, climate page design stays intact. */
.portalbar{
  position:sticky!important;
  top:10px!important;
  z-index:1000!important;
  width:min(1480px, calc(100% - 40px))!important;
  height:auto!important;
  min-height:56px!important;
  margin:10px auto 0!important;
  padding:8px 12px 8px 14px!important;
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
  border:1px solid rgba(139,223,255,.13)!important;
  border-radius:999px!important;
  background:rgba(18,31,44,.86)!important;
  box-shadow:0 16px 36px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.04)!important;
  backdrop-filter:blur(12px) saturate(1.05)!important;
  -webkit-backdrop-filter:blur(12px) saturate(1.05)!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
.portalbar-brand{height:38px!important;display:inline-flex!important;align-items:center!important;gap:10px!important;flex:0 0 auto!important}
.portalbar-mark{width:31px!important;height:31px!important;display:grid!important;place-items:center!important;border-radius:999px!important;background:#fcbf3d!important;color:#0b1118!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.45),0 0 18px rgba(252,191,61,.15)!important}
.portalbar-mark svg{width:19px!important;height:19px!important}
.portalbar-title{display:inline!important;color:#f6faff!important;font:700 16px/1 Inter,"IBM Plex Sans",system-ui,sans-serif!important;letter-spacing:-.02em!important;text-transform:uppercase!important}
.portalbar-title span{display:inline!important}.portalbar-title span+span{color:#fcbf3d!important;margin-left:.18em!important}
.portalbar-nav{display:flex!important;align-items:center!important;justify-content:center!important;gap:2px!important;flex:1 1 auto!important;min-width:0!important;overflow:hidden!important;white-space:nowrap!important;scrollbar-width:none!important}
.portalbar-nav a{height:34px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:0 12px!important;border:0!important;border-radius:999px!important;color:rgba(246,250,255,.72)!important;background:transparent!important;font:500 13px/1 Inter,"IBM Plex Sans",system-ui,sans-serif!important;letter-spacing:.012em!important;text-transform:none!important;text-decoration:none!important}
.portalbar-nav a:hover,.portalbar-nav a[aria-current="page"]{color:#fcbf3d!important;background:rgba(252,191,61,.075)!important;box-shadow:inset 0 0 0 1px rgba(252,191,61,.16)!important}
@media(max-width:900px){.portalbar{top:8px!important;width:calc(100% - 24px)!important;min-height:54px!important;margin-top:8px!important;padding:7px 9px!important}.portalbar-nav{display:none!important}.portalbar-title{font-size:14px!important}}
@media print{.portalbar{display:none!important}}

/* ENERGO BASE single light portal header for the climate page. */
:root{--top-stack-h:132px!important}
#progress{top:0!important}
.portalbar{
  position:fixed!important;
  top:8px!important;
  left:50%!important;
  z-index:1000!important;
  width:min(1480px, calc(100% - 44px))!important;
  min-height:36px!important;
  margin:0!important;
  padding:4px 12px!important;
  transform:translateX(-50%)!important;
  background:rgba(10,24,38,.16)!important;
  border:1px solid rgba(255,255,255,.18)!important;
  border-bottom:0!important;
  border-radius:24px 24px 0 0!important;
  box-shadow:none!important;
  color:#fff!important;
  -webkit-backdrop-filter:blur(7px) saturate(1.08)!important;
  backdrop-filter:blur(7px) saturate(1.08)!important;
}
.portalbar-brand{height:28px!important}
.portalbar-mark{width:24px!important;height:24px!important}
.portalbar-mark svg{width:15px!important;height:15px!important}
.portalbar-title{font-size:14px!important}
.portalbar-nav a{
  height:26px!important;
  padding:0 11px!important;
  font-size:13px!important;
  font-weight:520!important;
  text-transform:uppercase!important;
  letter-spacing:.045em!important;
}
.portalbar-nav a:hover,
.portalbar-nav a[aria-current="page"]{
  color:#D9A01B!important;
  background:rgba(255,255,255,.1)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)!important;
}
.topbar{
  display:flex!important;
  position:fixed!important;
  top:44px!important;
  left:50%!important;
  right:auto!important;
  z-index:999!important;
  width:min(1480px, calc(100% - 44px))!important;
  height:auto!important;
  min-height:50px!important;
  max-height:none!important;
  margin:0!important;
  padding:8px 12px!important;
  transform:translateX(-50%)!important;
  border:1px solid rgba(255,255,255,.18)!important;
  border-top:2px solid rgba(252,191,61,.38)!important;
  border-radius:0 0 24px 24px!important;
  background:rgba(10,24,38,.16)!important;
  box-shadow:0 -1px 0 rgba(255,255,255,.08)!important;
  -webkit-backdrop-filter:blur(7px) saturate(1.08)!important;
  backdrop-filter:blur(7px) saturate(1.08)!important;
  box-sizing:border-box!important;
  overflow:visible!important;
}
.topbar .brand{display:none!important}
.topbar .ctrls{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:0!important;
  flex:0 0 auto!important;
  margin-left:10px!important;
  position:static!important;
}
.topbar .seg{display:none!important}
.topbar .zoom{
  position:absolute!important;
  top:calc(100% + 10px)!important;
  right:22px!important;
  z-index:10!important;
  order:initial!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:3px!important;
  height:38px!important;
  min-height:38px!important;
  padding:4px!important;
  border:1px solid rgba(139,223,255,.13)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.045)!important;
  color:rgba(246,250,255,.72)!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
.topbar .zoom::before{
  content:none!important;
}
.topbar .zoom button{
  width:30px!important;
  height:30px!important;
  display:grid!important;
  place-items:center!important;
  border:0!important;
  border-radius:999px!important;
  background:transparent!important;
  color:#fcbf3d!important;
  font:800 16px/1 Inter,"IBM Plex Sans",system-ui,sans-serif!important;
}
.topbar .zoom button:hover{
  color:#101820!important;
  background:#fcbf3d!important;
}
.topbar .zoom .zlvl{
  width:30px!important;
  height:30px!important;
  display:grid!important;
  place-items:center!important;
  color:#8bdfff!important;
  font-family:"Material Symbols Outlined"!important;
  font-size:18px!important;
  font-variation-settings:'FILL' 0,'wght' 500,'GRAD' 0,'opsz' 20!important;
  line-height:1!important;
}
.climate-theme-switcher{
  order:initial!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:3px!important;
  height:38px!important;
  padding:4px!important;
  border:1px solid rgba(139,223,255,.13)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.045)!important;
  box-shadow:none!important;
}
.climate-theme-switcher button{
  height:30px!important;
  min-width:34px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;
  padding:0 9px!important;
  border:0!important;
  border-radius:999px!important;
  background:transparent!important;
  color:rgba(246,250,255,.72)!important;
  font:560 12px/1 Inter,"IBM Plex Sans",system-ui,sans-serif!important;
  cursor:pointer!important;
}
.climate-theme-switcher button span:first-child{
  font-size:17px!important;
  font-family:"Material Symbols Outlined"!important;
  font-variation-settings:'FILL' 1,'wght' 420,'GRAD' 0,'opsz' 20!important;
  line-height:1!important;
}
.climate-theme-switcher button[aria-pressed="true"]{
  color:#eaf8ff!important;
  background:linear-gradient(180deg, rgba(42,72,96,.96), rgba(22,42,60,.9))!important;
  box-shadow:inset 0 0 0 1px rgba(139,223,255,.28),0 5px 14px rgba(0,0,0,.22)!important;
}
.climate-theme-switcher button[data-theme-option="beach"][aria-pressed="true"]{
  color:#17324a!important;
  background:linear-gradient(180deg, rgba(255,248,225,.98), rgba(255,224,144,.72))!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.72),0 5px 14px rgba(126,91,24,.18)!important;
}
.climate-theme-switcher button[data-theme-option="dark"] .material-symbols-outlined{color:#8bdfff!important}
.climate-theme-switcher button[data-theme-option="beach"] .material-symbols-outlined{color:#f4b63d!important}
.climate-theme-switcher button:hover{
  color:#fff!important;
  background:rgba(255,255,255,.075)!important;
}
.topbar nav{
  display:block!important;
  flex:1 1 auto!important;
  min-width:0!important;
}
.topbar .navlinks{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:center!important;
  gap:4px!important;
  margin:0!important;
  padding:0!important;
  max-height:none!important;
  overflow:visible!important;
}
.topbar .navlinks li{
  display:block!important;
  margin:0!important;
  padding:0!important;
}
.topbar .navlinks a{
  height:30px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 10px!important;
  border:0!important;
  border-radius:999px!important;
  background:transparent!important;
  color:rgba(255,255,255,.82)!important;
  font:500 13px/1 Inter,"IBM Plex Sans",system-ui,sans-serif!important;
  letter-spacing:0!important;
  text-transform:none!important;
  text-decoration:none!important;
  box-shadow:none!important;
}
.topbar .navlinks a:hover{
  color:#D9A01B!important;
  background:rgba(255,255,255,.1)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)!important;
}
.cover{padding-top:calc(var(--top-stack-h) + 4vh)!important}
section,[id]{scroll-margin-top:calc(var(--top-stack-h) + 24px)!important}
@media(max-width:900px){
  .portalbar{top:6px!important;width:calc(100% - 24px)!important;border-radius:18px 18px 0 0!important}
  .topbar{top:42px!important;width:calc(100% - 24px)!important;border-radius:0 0 18px 18px!important}
  .topbar .navlinks{justify-content:flex-start!important;flex-wrap:nowrap!important;overflow-x:auto!important;scrollbar-width:none!important}
  .topbar .navlinks::-webkit-scrollbar{display:none!important}
}

/* Final ENERGO BASE beach-theme alignment for climate navigation and cover. */
html[data-theme="light"] .portalbar,
html[data-theme="light"] .topbar{
  background:rgba(255,248,232,.72)!important;
  border-color:rgba(16,24,32,.22)!important;
  color:#101820!important;
}

html[data-theme="light"] .portalbar{
  border-bottom:0!important;
}

html[data-theme="light"] .topbar{
  border-top:2px solid rgba(16,24,32,.72)!important;
  box-shadow:0 -1px 0 rgba(16,24,32,.16)!important;
}

html[data-theme="light"] .portalbar-title,
html[data-theme="light"] .portalbar-nav a,
html[data-theme="light"] .topbar .navlinks a,
html[data-theme="light"] .climate-theme-switcher button{
  color:#101820!important;
}

html[data-theme="light"] .portalbar-title{
  color:#0072CE!important;
}

html[data-theme="light"] .portalbar-title span+span{
  color:#FCBF3D!important;
}

html[data-theme="light"] .portalbar-mark{
  background:#FCBF3D!important;
  color:#101820!important;
}

html[data-theme="light"] .portalbar-nav a:hover,
html[data-theme="light"] .portalbar-nav a[aria-current="page"],
html[data-theme="light"] .topbar .navlinks a:hover,
html[data-theme="light"] .topbar .navlinks a.act{
  color:#101820!important;
  background:rgba(252,191,61,.18)!important;
  box-shadow:inset 0 0 0 1px rgba(252,191,61,.26)!important;
}

html[data-theme="light"] .climate-theme-switcher{
  border-color:rgba(122,102,67,.16)!important;
  background:rgba(255,255,255,.42)!important;
}

html[data-theme="light"] .climate-theme-switcher button{
  color:rgba(63,57,47,.72)!important;
}

html[data-theme="light"] .climate-theme-switcher button[data-theme-option="dark"] .material-symbols-outlined{
  color:#8bdfff!important;
}

html[data-theme="light"] .climate-theme-switcher button[data-theme-option="beach"] .material-symbols-outlined{
  color:#D99A18!important;
}

html[data-theme="light"] .climate-theme-switcher button[data-theme-option="beach"][aria-pressed="true"]{
  color:#101820!important;
  background:linear-gradient(180deg, rgba(255,248,225,.98), rgba(255,224,144,.74))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.68),0 4px 12px rgba(126,91,24,.16)!important;
}

html[data-theme="light"] .climate-theme-switcher button[data-theme-option="beach"][aria-pressed="true"] .material-symbols-outlined{
  color:#101820!important;
}

html[data-theme="light"] .topbar .zoom{
  border-color:rgba(122,102,67,.16)!important;
  background:rgba(255,255,255,.42)!important;
  color:#101820!important;
}

html[data-theme="light"] .topbar .zoom::before{
  content:none!important;
}

html[data-theme="light"] .topbar .zoom button:hover{
  color:#fff!important;
  background:#2f8fe8!important;
}

html[data-theme="light"] .topbar .zoom button{
  color:#0072ce!important;
}

html[data-theme="light"] .topbar .zoom .zlvl{
  color:#2f2a21!important;
}

.cover-intro{
  max-width:min(980px,100%)!important;
  margin-bottom:clamp(2rem,5.6vh,4rem)!important;
  font-size:clamp(1.85rem,2.1vw,2.25rem)!important;
  line-height:1.32!important;
}

.cover-with-intro .cover-title{
  margin-top:clamp(2.2rem,5vh,4.2rem)!important;
}

.cover-title-break{
  display:inline-block;
}

@media(max-width:720px){
  .cover-intro{
    font-size:clamp(1.3rem,6vw,1.65rem)!important;
    line-height:1.32!important;
    margin-bottom:2.2rem!important;
  }
}
