/* ==========================================================================
   SYSTEM BAR — Progress + Course Minimap
   Wird später von der Shell-Topbar abgelöst bzw. in sie integriert.
   ========================================================================== */
.cff-a0-root .sysbar{position:fixed;top:0;left:var(--shell-nav);right:var(--shell-aside);z-index:80;}
.cff-a0-root .sysbar-rail{position:relative;height:2px;background:var(--ln);cursor:pointer;}
.cff-a0-root .sysbar-fill{
  position:absolute;inset:0 auto 0 0;width:2.33%;
  background:linear-gradient(90deg,var(--em2),var(--em));
  transform-origin:left;animation:draw 1.1s var(--e) both;
}
.cff-a0-root .sysbar-hit{position:absolute;top:0;left:0;right:0;height:22px;}
.cff-a0-root .minimap{background:var(--l1);border-bottom:1px solid var(--ln2);
  max-height:0;overflow:hidden;transition:max-height var(--t-slow) var(--e);}
.cff-a0-root .sysbar.is-open .minimap{max-height:200px;}
.cff-a0-root .minimap-in{max-width:var(--wrap);margin-inline:auto;padding:var(--s3) var(--gut);
  display:flex;align-items:flex-end;gap:var(--s4);flex-wrap:wrap;}
.cff-a0-root .mm-mod{flex:1 1 160px;min-width:0;}
.cff-a0-root .mm-mod-head{display:flex;align-items:baseline;gap:.5rem;margin-bottom:.5rem;}
.cff-a0-root .mm-mod-head b{font-family:var(--mono);font-size:var(--f-sm);font-weight:500;
               letter-spacing:.06em;color:var(--tx2);}
.cff-a0-root .mm-ticks{display:flex;gap:2px;}
.cff-a0-root .mm-ticks i{flex:1;height:4px;background:var(--ln2);border-radius:1px;}
.cff-a0-root .mm-ticks i.on{background:var(--em);}
.cff-a0-root .mm-here{margin-left:auto;display:flex;align-items:center;gap:.55rem;
  padding:.4rem .7rem;border:1px solid var(--em-ln);background:var(--em-sf);
  border-radius:var(--r2);}
.cff-a0-root .mm-here .dot{width:5px;height:5px;background:var(--em);border-radius:1px;}

/* ==========================================================================
   LEKTIONSRAHMEN
   .cff-lesson ist die feste Grenze des Lektionsinhalts. Alles außerhalb
   gehört später der Shell: Modulnavigation, Standort, Fortschritt,
   Vor/Zurück, Materialien, Suche.
   ========================================================================== */
.cff-a0-root .cff-lesson{
  margin-left:var(--shell-nav);
  margin-right:var(--shell-aside);
  padding-top:var(--shell-topbar);
}
.cff-a0-root .os{max-width:var(--wrap);margin-inline:auto;padding-inline:var(--gut);
    padding-block:clamp(3rem,7vw,5rem) var(--s7);}
.cff-a0-root .sec{margin-top:var(--s7);}
.cff-a0-root .sec-head{display:flex;align-items:baseline;gap:var(--s3);flex-wrap:wrap;
  padding-bottom:var(--s3);border-bottom:1px solid var(--ln);margin-bottom:var(--s5);}
.cff-a0-root .sec-head h2{font-size:var(--f-h2);font-weight:600;letter-spacing:-.024em;line-height:1.15;}
.cff-a0-root .sec-head .lbl{margin-left:auto;}
.cff-a0-root .sec-note{flex-basis:100%;font-size:var(--f-sm);color:var(--tx2);max-width:62ch;}

@keyframes draw{from{transform:scaleX(0);}to{transform:scaleX(1);}}
@keyframes fadein{from{opacity:0;}to{opacity:1;}}
@keyframes stroke{to{stroke-dashoffset:0;}}

/* ==========================================================================
   1 — COMMAND CENTER
   ========================================================================== */
.cff-a0-root .hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.8fr);
      gap:clamp(2rem,5vw,4.5rem);align-items:center;}
.cff-a0-root .hero-eyebrow{display:flex;align-items:center;gap:.7rem;margin-bottom:var(--s3);}
.cff-a0-root .hero-eyebrow::before{content:"";width:20px;height:2px;background:var(--em);}
.cff-a0-root .hero h1{font-size:var(--f-h1);font-weight:600;letter-spacing:-.04em;
         line-height:1.02;margin-bottom:var(--s3);}
.cff-a0-root .hero-lead{font-size:var(--f-ld);color:var(--tx2);line-height:1.5;max-width:44ch;}
.cff-a0-root .hero-meta{display:flex;gap:clamp(1.75rem,4vw,3.25rem);margin-top:var(--s4);
           padding-top:var(--s3);border-top:1px solid var(--ln);}
.cff-a0-root .hero-meta div .lbl{display:block;margin-bottom:.25rem;}
.cff-a0-root .hero-meta b{font-family:var(--mono);font-size:1.375rem;font-weight:500;
             letter-spacing:-.01em;font-variant-numeric:tabular-nums;}
.cff-a0-root .hero-meta b.word{font-size:1.0625rem;letter-spacing:.04em;}

.cff-a0-root .hero-map{border:1px solid var(--ln2);background:var(--l1);padding:var(--s3);}
.cff-a0-root .hero-map-bar{display:flex;align-items:center;gap:.5rem;margin-bottom:var(--s2);}
.cff-a0-root .hero-map-bar .dot{width:5px;height:5px;background:var(--em);border-radius:1px;}
.cff-a0-root .hero-map svg{width:100%;height:auto;}

.cff-a0-root .hnode rect{fill:var(--l3);stroke:var(--ln3);stroke-width:1;
            transition:fill var(--t) var(--e),stroke var(--t) var(--e);}
.cff-a0-root .hnode text{font-family:var(--mono);font-size:11px;letter-spacing:.12em;fill:var(--tx3);
            transition:fill var(--t) var(--e);}
.cff-a0-root .hnode .hn-name{font-family:var(--sans);font-size:13px;letter-spacing:0;fill:var(--tx2);
                font-weight:600;}
.cff-a0-root .hnode:hover rect,
.cff-a0-root .hnode.on rect{fill:var(--l4);stroke:var(--em-ln);}
.cff-a0-root .hnode:hover text,
.cff-a0-root .hnode.on text{fill:var(--em);}
.cff-a0-root .hnode:hover .hn-name,
.cff-a0-root .hnode.on .hn-name{fill:var(--tx);}
.cff-a0-root .hlink{stroke:var(--ln3);stroke-width:1;fill:none;
       stroke-dasharray:200;stroke-dashoffset:200;
       animation:stroke 1.2s var(--e) .3s forwards;}
.cff-a0-root .hlink.feedback{stroke-dasharray:3 4;stroke-dashoffset:0;
                animation:fadein .8s .9s both;stroke:var(--ln2);}

/* ==========================================================================
   2 — VIDEO
   ========================================================================== */
.cff-a0-root .video{margin-top:var(--s6);border:1px solid var(--ln2);background:var(--l1);}
.cff-a0-root .video-top{height:1px;background:linear-gradient(90deg,var(--em),var(--em-ln) 16%,
            var(--ln2) 52%,transparent);}
.cff-a0-root .video-frame{position:relative;aspect-ratio:16/9;display:grid;place-items:center;
  background:radial-gradient(112% 120% at 50% 0%,#101913 0%,#080C0A 58%,#060908 100%);}
.cff-a0-root .video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}
.cff-a0-root .video-ph{display:grid;justify-items:center;gap:var(--s3);}
.cff-a0-root .play{width:76px;height:76px;border:1px solid var(--ln3);border-radius:50%;
      display:grid;place-items:center;background:rgba(255,255,255,.012);}
.cff-a0-root .play::after{content:"";width:0;height:0;margin-left:5px;
  border-left:17px solid var(--tx2);border-top:10px solid transparent;
  border-bottom:10px solid transparent;}
.cff-a0-root .video-bar{display:flex;align-items:stretch;flex-wrap:wrap;
           border-top:1px solid var(--ln);background:var(--l2);}
.cff-a0-root .video-bar li{padding:var(--s2) var(--s3);border-right:1px solid var(--ln);
              display:flex;align-items:center;}
.cff-a0-root .video-bar .status{margin-left:auto;border-right:0;}
.cff-a0-root .chip{display:inline-flex;align-items:center;gap:.4rem;padding:.25rem .55rem;
      border:1px solid var(--em-ln);background:var(--em-sf);border-radius:var(--r1);}
.cff-a0-root .chip i{width:4px;height:4px;border-radius:1px;background:var(--em);}

/* ==========================================================================
   3 — LEARNING CYCLE
   ========================================================================== */
.cff-a0-root .cycle{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.72fr);
       gap:clamp(1.5rem,3vw,2.75rem);align-items:start;}
.cff-a0-root .cycle-stage{border:1px solid var(--ln2);background:var(--l1);padding:var(--s3);}
.cff-a0-root .cycle-stage svg{width:100%;height:auto;}

.cff-a0-root .ph rect{fill:var(--l2);stroke:var(--ln2);
         transition:fill var(--t) var(--e),stroke var(--t) var(--e);}
.cff-a0-root .ph text{font-family:var(--mono);font-size:10px;letter-spacing:.13em;fill:var(--tx3);
         transition:fill var(--t) var(--e);}
.cff-a0-root .ph .ph-name{font-family:var(--sans);font-size:13.5px;font-weight:600;
             letter-spacing:-.01em;fill:var(--tx2);}
.cff-a0-root .ph.on rect{fill:var(--l4);stroke:var(--em-ln);}
.cff-a0-root .ph.on text{fill:var(--em);}
.cff-a0-root .ph.on .ph-name{fill:var(--tx);}
.cff-a0-root .ph:hover rect{stroke:var(--ln3);}

.cff-a0-root .arc{fill:none;stroke:var(--ln2);stroke-width:1;transition:stroke var(--t) var(--e);}
.cff-a0-root .arc.live{stroke:var(--em-ln);}
.cff-a0-root .arc.loop{stroke-dasharray:4 5;}
.cff-a0-root .arc.loop.live{stroke:var(--em);animation:march 1.4s linear infinite;}
@keyframes march{to{stroke-dashoffset:-18;}}

.cff-a0-root .obj{opacity:0;transition:opacity var(--t-slow) var(--e);}
.cff-a0-root .obj.show{opacity:1;}
.cff-a0-root .obj rect{fill:var(--l0);stroke:var(--ln2);}
.cff-a0-root .obj text{font-family:var(--mono);font-size:9.5px;letter-spacing:.1em;fill:var(--tx2);}
.cff-a0-root .obj.acc rect{stroke:var(--em-ln);}
.cff-a0-root .obj.acc text{fill:var(--em);}
.cff-a0-root .tie{stroke:var(--em-ln);stroke-width:1;fill:none;opacity:0;
     stroke-dasharray:120;stroke-dashoffset:120;}
.cff-a0-root .tie.show{opacity:1;animation:stroke 700ms var(--e) forwards;}

.cff-a0-root .cycle-tabs{display:grid;gap:1px;background:var(--ln);border:1px solid var(--ln);}
.cff-a0-root .cyc-tab{display:flex;align-items:center;gap:var(--s2);width:100%;text-align:left;
         background:var(--l1);padding:var(--s2) var(--s3);
         transition:background-color var(--t-fast) var(--e);}
.cff-a0-root .cyc-tab:hover{background:var(--l2);}
.cff-a0-root .cyc-tab[aria-selected="true"]{background:var(--l3);}
.cff-a0-root .cyc-tab .bar{width:2px;align-self:stretch;background:var(--ln3);
              transition:background-color var(--t-fast) var(--e);}
.cff-a0-root .cyc-tab[aria-selected="true"] .bar{background:var(--em);}
.cff-a0-root .cyc-tab b{font-size:var(--f-h3);font-weight:600;letter-spacing:-.012em;color:var(--tx2);}
.cff-a0-root .cyc-tab[aria-selected="true"] b{color:var(--tx);}
.cff-a0-root .cyc-tab .num{margin-left:auto;font-size:var(--f-lbl);letter-spacing:.1em;color:var(--tx4);}
.cff-a0-root .cyc-tab[aria-selected="true"] .num{color:var(--em);}
.cff-a0-root .cycle-desc{margin-top:var(--s3);padding-top:var(--s3);border-top:1px solid var(--ln);}
.cff-a0-root .cycle-desc p{color:var(--tx2);font-size:var(--f-sm);}

/* ==========================================================================
   4 — KURSARCHITEKTUR / SYSTEMTOPOLOGIE
   ========================================================================== */
.cff-a0-root .arch{display:grid;grid-template-columns:minmax(0,1.62fr) minmax(280px,1fr);
      gap:clamp(1.5rem,3vw,2.5rem);align-items:start;}
.cff-a0-root .arch-stage{border:1px solid var(--ln2);background:var(--l1);overflow:hidden;}
.cff-a0-root .arch-stage svg{width:100%;height:auto;}
.cff-a0-root .arch-inner{transition:transform var(--t-slow) var(--e);}

.cff-a0-root .mnode{transition:opacity var(--t) var(--e);}
.cff-a0-root .mnode rect.body{fill:var(--l2);stroke:var(--ln2);
                 transition:fill var(--t) var(--e),stroke var(--t) var(--e);}
.cff-a0-root .mnode .m-code{font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;fill:var(--tx3);
               transition:fill var(--t) var(--e);}
.cff-a0-root .mnode .m-name{font-family:var(--sans);font-size:13px;font-weight:600;letter-spacing:-.01em;
               fill:var(--tx2);transition:fill var(--t) var(--e);}
.cff-a0-root .mnode:hover rect.body{stroke:var(--ln3);}
.cff-a0-root .mnode.on rect.body{fill:var(--l4);stroke:var(--em-ln);}
.cff-a0-root .mnode.on .m-code{fill:var(--em);}
.cff-a0-root .mnode.on .m-name{fill:var(--tx);}

/* Unterknoten */
.cff-a0-root .sub circle{fill:var(--l0);stroke:var(--ln3);stroke-width:1;
            transition:fill var(--t) var(--e),stroke var(--t) var(--e);}
.cff-a0-root .sub path{stroke:var(--ln2);stroke-width:1;fill:none;
          transition:stroke var(--t) var(--e);}
.cff-a0-root .mnode.on + .sub circle,
.cff-a0-root .sub.on circle{fill:var(--em-sf2);stroke:var(--em-ln);}
.cff-a0-root .sub.on path{stroke:var(--em-ln);}
.cff-a0-root .sub text{font-family:var(--mono);font-size:8px;letter-spacing:.1em;fill:var(--tx4);}
.cff-a0-root .sub.on text{fill:var(--tx3);}

/* Verbindungen zwischen den Modulen — im Mittelpunkt */
.cff-a0-root .mlink{stroke:var(--ln3);stroke-width:1.25;fill:none;
       transition:stroke var(--t) var(--e),opacity var(--t) var(--e);}
.cff-a0-root .mlink.live{stroke:var(--em);}
.cff-a0-root .mlink-dash{stroke:var(--ln2);stroke-width:1;fill:none;stroke-dasharray:3 5;
            transition:stroke var(--t) var(--e),opacity var(--t) var(--e);}
.cff-a0-root .mlink-dash.live{stroke:var(--em-ln);}
.cff-a0-root .mlink-head{fill:var(--ln3);transition:fill var(--t) var(--e);}
.cff-a0-root .mlink-head.live{fill:var(--em);}
.cff-a0-root .mlink-lbl{font-family:var(--mono);font-size:8.5px;letter-spacing:.14em;fill:var(--tx4);}
.cff-a0-root .arch-stage.focused .cluster:not(.on){opacity:.16;}
.cff-a0-root .arch-stage.focused .wire:not(.live){opacity:.22;}

.cff-a0-root .arch-detail{border:1px solid var(--ln2);background:var(--l1);padding:var(--s4);}
.cff-a0-root .arch-detail-head{display:flex;align-items:baseline;gap:var(--s2);
  padding-bottom:var(--s2);margin-bottom:var(--s3);border-bottom:1px solid var(--ln);}
.cff-a0-root .arch-detail-head h3{font-size:var(--f-h2);font-weight:600;letter-spacing:-.025em;}
.cff-a0-root .arch-detail-head .lbl{margin-left:auto;}
.cff-a0-root .arch-detail p{color:var(--tx2);font-size:var(--f-sm);}
.cff-a0-root .arch-topics{margin-top:var(--s3);display:grid;gap:1px;background:var(--ln);}
.cff-a0-root .arch-topics li{background:var(--l1);padding:.45rem 0 .45rem .7rem;
  font-size:var(--f-sm);color:var(--tx2);border-left:1px solid var(--ln2);}
.cff-a0-root .arch-hint{margin-top:var(--s3);font-size:var(--f-lbl);color:var(--tx4);
  font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;}

/* ==========================================================================
   5 — ANALYSEEBENEN (Preview, kompakt)
   ========================================================================== */
.cff-a0-root .engine{display:grid;grid-template-columns:minmax(0,1fr) minmax(270px,.62fr);
        gap:clamp(1.25rem,2.5vw,2rem);align-items:start;}
.cff-a0-root .layers{display:grid;gap:1px;background:var(--ln);border:1px solid var(--ln);}
.cff-a0-root .layer{display:flex;align-items:center;gap:var(--s3);width:100%;text-align:left;
       background:var(--l1);padding:.7rem var(--s3);
       transition:background-color var(--t-fast) var(--e);}
.cff-a0-root .layer:hover{background:var(--l2);}
.cff-a0-root .layer[aria-pressed="true"]{background:var(--l3);}
.cff-a0-root .layer-sw{flex:none;width:30px;height:16px;border:1px solid var(--ln3);border-radius:var(--r1);
  position:relative;transition:border-color var(--t-fast) var(--e),
  background-color var(--t-fast) var(--e);}
.cff-a0-root .layer-sw::after{content:"";position:absolute;top:2px;left:2px;width:10px;height:10px;
  border-radius:1px;background:var(--tx4);
  transition:transform var(--t-fast) var(--e),background-color var(--t-fast) var(--e);}
.cff-a0-root .layer[aria-pressed="true"] .layer-sw{border-color:var(--em-ln);background:var(--em-sf);}
.cff-a0-root .layer[aria-pressed="true"] .layer-sw::after{transform:translateX(14px);background:var(--em);}
.cff-a0-root .layer b{font-size:.9375rem;font-weight:600;letter-spacing:-.01em;color:var(--tx2);
         transition:color var(--t-fast) var(--e);}
.cff-a0-root .layer[aria-pressed="true"] b{color:var(--tx);}
.cff-a0-root .layer .idx{margin-left:auto;font-family:var(--mono);font-size:var(--f-lbl);
            letter-spacing:.1em;color:var(--tx4);}
.cff-a0-root .layer[aria-pressed="true"] .idx{color:var(--em);}

.cff-a0-root .readout{border:1px solid var(--ln2);background:var(--l1);}
.cff-a0-root .readout-top{padding:var(--s3);border-bottom:1px solid var(--ln);}
.cff-a0-root .conf-bars{display:flex;gap:4px;margin-bottom:var(--s3);}
.cff-a0-root .conf-bars i{flex:1;height:30px;background:var(--l3);border:1px solid var(--ln2);
  border-radius:var(--r1);transition:background-color var(--t) var(--e),
  border-color var(--t) var(--e);}
.cff-a0-root .conf-bars i.on{background:var(--em-sf2);border-color:var(--em-ln);}
.cff-a0-root .conf-count{display:flex;align-items:baseline;gap:.55rem;}
.cff-a0-root .conf-count b{font-family:var(--mono);font-size:2.375rem;font-weight:500;line-height:1;
              letter-spacing:-.04em;font-variant-numeric:tabular-nums;
              transition:color var(--t) var(--e);}
.cff-a0-root .conf-count b.full{color:var(--em);}
.cff-a0-root .conf-count span{font-family:var(--mono);font-size:1rem;color:var(--tx4);}
.cff-a0-root .conf-state{margin-top:.6rem;font-size:var(--f-sm);color:var(--tx2);min-height:2.4em;}
.cff-a0-root .conf-state.full{color:var(--em);}

.cff-a0-root .after{padding:var(--s3);}
.cff-a0-root .after > .lbl{display:block;margin-bottom:var(--s2);}
.cff-a0-root .chain{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .5rem;}
.cff-a0-root .chain li{font-family:var(--mono);font-size:var(--f-lbl);letter-spacing:.08em;
  text-transform:uppercase;color:var(--tx3);padding:.3rem .5rem;
  border:1px solid var(--ln2);border-radius:var(--r1);
  transition:color var(--t) var(--e),border-color var(--t) var(--e);}
.cff-a0-root .after.full .chain li{color:var(--tx2);border-color:var(--ln3);}
.cff-a0-root .chain .sep{border:0;padding:0;color:var(--tx4);}

/* ==========================================================================
   6 — PRINCIPLES CONSOLE
   ========================================================================== */
.cff-a0-root .console{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--ln);
         border:1px solid var(--ln);}
.cff-a0-root .console li{background:var(--l1);padding:var(--s3);position:relative;
  transition:opacity var(--t) var(--e),background-color var(--t) var(--e);}
.cff-a0-root .console li::before{content:"";position:absolute;top:-1px;left:0;right:0;height:1px;
  background:var(--em);transform:scaleX(0);transform-origin:left;
  transition:transform var(--t) var(--e);}
.cff-a0-root .console:hover li,
.cff-a0-root .console:focus-within li{opacity:.36;}
.cff-a0-root .console li:hover,
.cff-a0-root .console li:focus-within{opacity:1;background:var(--l3);}
.cff-a0-root .console li:hover::before,
.cff-a0-root .console li:focus-within::before{transform:scaleX(1);}
.cff-a0-root .console .num{display:block;font-size:var(--f-lbl);letter-spacing:.12em;
              color:var(--tx4);margin-bottom:var(--s2);}
.cff-a0-root .console li:hover .num{color:var(--em);}
.cff-a0-root .console h3{font-size:var(--f-sm);font-weight:600;letter-spacing:.04em;
            text-transform:uppercase;font-family:var(--mono);margin-bottom:.4rem;}
.cff-a0-root .console p{font-size:var(--f-sm);color:var(--tx2);}

/* ==========================================================================
   7 — ENTER MODULE
   ========================================================================== */
.cff-a0-root .enter{display:block;margin-top:var(--s7);border:1px solid var(--ln2);background:var(--l1);
  text-decoration:none;position:relative;overflow:hidden;
  transition:border-color var(--t) var(--e),background-color var(--t) var(--e);}
.cff-a0-root .enter:hover{border-color:var(--em-ln);background:var(--l2);}
.cff-a0-root .enter-line{height:1px;background:var(--ln2);position:relative;display:block;}
.cff-a0-root .enter-line::after{content:"";position:absolute;inset:0 auto 0 0;width:100%;
  background:linear-gradient(90deg,var(--em),var(--em2));
  transform:scaleX(0);transform-origin:left;
  transition:transform var(--t-slow) var(--e);}
.cff-a0-root .enter:hover .enter-line::after,
.cff-a0-root .enter:focus-visible .enter-line::after{transform:scaleX(1);}
.cff-a0-root .enter-in{display:flex;align-items:center;gap:var(--s4);padding:var(--s5) var(--s4);}
.cff-a0-root .enter-node{flex:none;width:10px;height:10px;border-radius:1px;border:1px solid var(--ln3);
  transition:background-color var(--t) var(--e),border-color var(--t) var(--e);}
.cff-a0-root .enter:hover .enter-node{background:var(--em);border-color:var(--em);}
.cff-a0-root .enter-title{display:block;font-size:clamp(1.5rem,3.4vw,2.375rem);font-weight:600;
  letter-spacing:-.035em;line-height:1.05;margin-block:.5rem .55rem;
  transition:color var(--t) var(--e);}
.cff-a0-root .enter:hover .enter-title{color:var(--em);}
.cff-a0-root .enter-cta{margin-left:auto;display:flex;align-items:center;gap:var(--s2);}
.cff-a0-root .enter-arrow{width:48px;height:48px;border:1px solid var(--ln3);border-radius:var(--r2);
  display:grid;place-items:center;color:var(--tx2);
  transition:border-color var(--t) var(--e),color var(--t) var(--e),transform var(--t) var(--e);}
.cff-a0-root .enter:hover .enter-arrow{border-color:var(--em-ln);color:var(--em);transform:translateX(5px);}
.cff-a0-root .enter-arrow svg{width:18px;height:18px;}

/* ==========================================================================
   RESPONSIV
   ========================================================================== */
@media (max-width:1080px){
  .cff-a0-root{--shell-nav:0px;--shell-aside:0px;}
  .cff-a0-root .hero{grid-template-columns:1fr;}
  .cff-a0-root .cycle,
.cff-a0-root .arch,
.cff-a0-root .engine{grid-template-columns:1fr;}
  .cff-a0-root .console{grid-template-columns:repeat(2,1fr);}
  .cff-a0-root .console:hover li,
.cff-a0-root .console:focus-within li{opacity:1;}
}
@media (max-width:620px){
  .cff-a0-root .console{grid-template-columns:1fr;}
  .cff-a0-root .hero-meta{flex-wrap:wrap;gap:var(--s3) var(--s4);}
  .cff-a0-root .video-bar .status{margin-left:0;width:100%;border-top:1px solid var(--ln);}
  .cff-a0-root .enter-in{flex-wrap:wrap;padding:var(--s4) var(--s3);}
  .cff-a0-root .enter-cta{margin-left:0;width:100%;}
  .cff-a0-root .conf-count b{font-size:2rem;}
}
@media (prefers-reduced-motion:reduce){
  .cff-a0-root *{transition-duration:1ms !important;animation-duration:1ms !important;
    animation-iteration-count:1 !important;}
  .cff-a0-root{scroll-behavior:auto;}
}
