/* Project O: classified. Main colour #223248, hairlines and solid nodes taken from the title's line work. Fonts: Aspal (main), Sackers Gothic, Times New Roman MT; close web fallbacks until the font files are available. */
@font-face{font-family:'Aspal';src:local('Aspal'),local('Aspal Regular'),local('Aspal-Regular');font-display:swap}
@font-face{font-family:'Sackers Gothic';src:local('Sackers Gothic'),local('SackersGothic'),local('Sackers Gothic Std Light'),local('Sackers Gothic Std Medium');font-display:swap}
:root{--po-bg:#070C13;--po-bg2:#0B121B;--po:#223248;--po-2:#2B4058;--po-line:#E8F0F7;--po-hi:#93B7CC;--po-mute:#7F98AE;--po-teal:#0F3B40;--po-teal2:#004860;--po-warm:#83685C;
  --po-main:'Aspal','Michroma','Syncopate',sans-serif;--po-sans:'Sackers Gothic','Syncopate','Tenor Sans',sans-serif;--po-serif:'Times New Roman MT','Times New Roman','Tinos',serif}
body.po{background:var(--po-bg);color:#DCE6EE;font-family:var(--po-serif)}
.po header.site{background:rgba(7,12,19,.9);border-bottom:1px solid var(--po)}
.po-vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.po a{color:var(--po-hi)}
/* hero */
.po-hero{position:relative;min-height:calc(100svh - 64px);overflow:hidden;isolation:isolate;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse 62% 45% at 50% 52%,rgba(34,50,72,.5) 0%,rgba(34,50,72,0) 100%),linear-gradient(180deg,#0A121C 0%,#0E1826 100%);padding-block:clamp(48px,7vw,96px) clamp(72px,9vw,120px)}
.po-grid{position:absolute;inset:0;z-index:-2;pointer-events:none;opacity:.5;background:repeating-linear-gradient(0deg,rgba(147,183,204,.06) 0 1px,transparent 1px 64px),repeating-linear-gradient(90deg,rgba(147,183,204,.045) 0 1px,transparent 1px 64px);-webkit-mask-image:radial-gradient(ellipse 75% 70% at 50% 55%,#000,transparent 85%);mask-image:radial-gradient(ellipse 75% 70% at 50% 55%,#000,transparent 85%)}
.po-hero::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(0,0,0,.18) 0 1px,transparent 1px 3px);mix-blend-mode:multiply;opacity:.55}
.po-glow{position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(420px circle at var(--mx,50%) var(--my,55%),rgba(147,183,204,.13),transparent 70%)}
.po-in{width:100%;display:flex;flex-direction:column;align-items:center;gap:clamp(10px,1.6vw,20px);text-align:center}
.po-eyebrow{display:flex;align-items:center;gap:14px;margin:0;font-family:var(--po-sans);font-size:clamp(11px,1.2vw,14px);letter-spacing:.7em;text-transform:uppercase;color:var(--po-hi);padding-left:.7em}
.po-bar{display:block;width:clamp(48px,6vw,84px);height:.95em;background:#04080D;border:1px solid rgba(147,183,204,.28);position:relative;overflow:hidden}
.po-bar::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(147,183,204,.5),transparent);transform:translateX(-100%);animation:pobar 9s 4s infinite}
@keyframes pobar{0%,70%,100%{transform:translateX(-100%)}85%{transform:translateX(100%)}}
.po-lock{width:min(96vw,1500px);height:auto;overflow:visible;display:block;margin-top:clamp(0px,1vw,10px)}
.po-lock .tx text{font-family:var(--po-main);font-weight:400;font-variation-settings:normal;font-size:140px;fill:#F4F8FB;stroke:#F4F8FB;stroke-width:5;stroke-linejoin:miter;paint-order:stroke fill;letter-spacing:.02em}
.po-lock .l{fill:none;stroke-linecap:butt;vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:1;animation:podraw 2.6s cubic-bezier(.5,0,.2,1) forwards}
.po-lock .l1{stroke:var(--po-line);stroke-width:2.2;animation-delay:.6s}
.po-lock .l2{stroke:var(--po-line);stroke-width:2;animation-delay:1.1s;animation-duration:3.4s}
.po-lock .l3{stroke:var(--po-hi);stroke-width:1.8;animation-delay:1.8s;animation-duration:2.2s}
@keyframes podraw{to{stroke-dashoffset:0}}
.po-lock .n{fill:#F4F8FB;transform-box:fill-box;transform-origin:center;opacity:0;transform:scale(.2);animation:ponode .9s cubic-bezier(.2,.9,.3,1.3) forwards}
.po-lock .n1{animation-delay:.2s}.po-lock .n2{animation-delay:1s}.po-lock .n3{animation-delay:1.7s;fill:var(--po-hi)}
.po-lock .n4{stroke:var(--po-line);stroke-width:1.6;animation-delay:2.4s}
@keyframes ponode{to{opacity:1;transform:none}}
.po-lock .tx{opacity:0;animation:potx 2.2s .3s ease-out forwards}
@keyframes potx{0%{opacity:0;filter:blur(8px)}35%{opacity:.5}42%{opacity:.25}55%{opacity:.9}100%{opacity:1;filter:none}}
.po-lock .pulse{fill:#fff;filter:drop-shadow(0 0 8px #93B7CC) drop-shadow(0 0 16px #93B7CC)}
.po-soon{display:flex;align-items:center;gap:14px;margin:clamp(2px,1vw,10px) 0 0;font-family:var(--po-serif);font-style:italic;font-size:clamp(20px,2.4vw,30px);letter-spacing:.04em;color:#EAF2F8;opacity:0;animation:pofade 1.4s 2.8s forwards}
.po-ring{width:12px;height:12px;border-radius:50%;border:1.5px solid var(--po-line);display:inline-block}
.po-small{margin:0;font-family:var(--po-sans);font-size:clamp(9px,1vw,11px);letter-spacing:.34em;text-transform:uppercase;color:var(--po-mute);opacity:0;animation:pofade 1.4s 3.3s forwards}
@keyframes pofade{to{opacity:1}}
.po-cue{position:absolute;left:50%;bottom:0;width:30px;height:clamp(48px,7vw,80px);translate:-50% 0;display:block;opacity:.85}
.po-cue i{position:absolute;left:50%;top:0;bottom:12px;width:1.5px;background:linear-gradient(var(--po-line),var(--po-hi));transform-origin:top;animation:pocue 3.4s 3.6s ease-in-out infinite}
.po-cue::after{content:"";position:absolute;left:50%;bottom:0;width:12px;height:12px;margin-left:-6px;border-radius:50%;background:var(--po-line)}
@keyframes pocue{0%{transform:scaleY(0)}60%,100%{transform:scaleY(1)}}
/* file */
.po-file,.po-follow{position:relative;background:linear-gradient(180deg,var(--po-bg) 0%,var(--po-bg2) 100%);overflow:hidden;padding-block:0 clamp(72px,9vw,128px)}
.po-follow{background:linear-gradient(180deg,var(--po-bg2) 0%,#0E1A28 60%,var(--po-bg) 100%)}
.po-div{display:block;width:100%;height:clamp(60px,8vw,110px);margin-bottom:clamp(32px,5vw,64px);overflow:visible}
.po-div .l{fill:none;stroke:var(--po-hi);stroke-width:1.6;vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 2.4s cubic-bezier(.5,0,.2,1)}
.po-div .n{fill:var(--po-line);transform-box:fill-box;transform-origin:center;transform:scale(0);transition:transform .8s 1.2s cubic-bezier(.2,.9,.3,1.3)}
.po-div.in .l{stroke-dashoffset:0}.po-div.in .n{transform:none}
.po-wrap{width:min(100% - 2*var(--gut),760px);margin-inline:auto;text-align:center;display:flex;flex-direction:column;align-items:center;gap:clamp(14px,2vw,22px)}
.po-lbl{margin:0;font-family:var(--po-sans);font-size:12px;letter-spacing:.6em;text-transform:uppercase;color:var(--po-hi);padding-left:.6em}
.po-h{margin:0;font-family:var(--po-main);font-weight:400;font-variation-settings:normal;-webkit-text-stroke:1px currentColor;font-size:clamp(64px,12vw,140px);line-height:1;color:#F4F8FB;letter-spacing:.04em;text-shadow:7px 9px 14px rgba(0,0,0,.6);position:relative}
.po-h.s{font-size:clamp(26px,3.6vw,44px);letter-spacing:.1em;text-transform:uppercase;line-height:1.25;text-wrap:balance}
.po-h::after{content:"";display:block;width:clamp(120px,22vw,260px);height:1.5px;margin:12px auto 0;background:linear-gradient(90deg,transparent,var(--po-line),transparent)}
.po-p{margin:0;max-width:30em;font-size:clamp(17px,1.8vw,20px);line-height:1.65;color:#C9D8E4}
.po-console{position:relative;width:100%;max-width:560px;margin-top:clamp(8px,2vw,24px);padding:clamp(22px,3vw,34px) clamp(18px,3vw,36px);text-align:left;background:linear-gradient(180deg,rgba(34,50,72,.62),rgba(20,32,48,.7));border:1px solid rgba(147,183,204,.28);box-shadow:0 24px 60px rgba(0,0,0,.5),inset 0 0 0 5px rgba(7,12,19,.35)}
.po-corner{position:absolute;width:12px;height:12px;border-radius:50%;background:var(--po-line)}
.po-corner.c1{left:-6px;top:-6px}.po-corner.c2{right:-6px;bottom:-6px;background:var(--po-hi)}
.po-console dl{margin:0;display:grid;gap:0}
.po-console dl>div{display:grid;grid-template-columns:minmax(0,9em) 1fr;align-items:center;gap:14px;padding:13px 0;border-bottom:1px solid rgba(147,183,204,.16)}
.po-console dl>div:last-child{border-bottom:0}
.po-console dt{font-family:var(--po-sans);font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--po-mute)}
.po-console dd{margin:0;font-family:var(--po-serif);font-size:19px;letter-spacing:.06em;color:#EAF2F8}
.po-red{position:relative;display:inline-block;height:1.05em;vertical-align:middle;background:#04080D;border:1px solid rgba(147,183,204,.22);cursor:default;outline:none;transition:transform .35s,background .35s}
.po-red.w6{width:5.5em}.po-red.w9{width:9em}.po-red.w14{width:12.5em;max-width:100%}
.po-red:hover,.po-red:focus-visible{border-color:#5E9CCB;box-shadow:0 0 0 1px rgba(94,156,203,.55),0 0 14px rgba(94,156,203,.35)}
.po-code{width:100%;max-width:560px;display:flex;flex-direction:column;gap:10px;text-align:left}
.po-code label{font-family:var(--po-sans);font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--po-mute)}
.po-row{display:flex;gap:0}
.po-code input{flex:1;min-width:0;min-height:50px;padding:0 16px;background:rgba(4,8,13,.8);border:1px solid rgba(147,183,204,.35);border-right:0;color:#F4F8FB;font-family:var(--po-sans);font-size:14px;letter-spacing:.4em;text-transform:uppercase;border-radius:0}
.po-code input::placeholder{color:rgba(147,183,204,.4);letter-spacing:.3em}
.po-code input:focus{outline:none;border-color:var(--po-hi);box-shadow:0 0 22px rgba(147,183,204,.18)}
.po-code button,.po-btn{min-height:50px;padding:0 24px;background:var(--po-line);border:1px solid var(--po-line);color:#0B121B;font-family:var(--po-sans);font-size:11px;letter-spacing:.3em;text-transform:uppercase;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;border-radius:0;transition:background .25s,box-shadow .25s,color .25s}
.po-code button:hover,.po-btn:hover,.po-code button:focus-visible,.po-btn:focus-visible{background:#fff;box-shadow:0 0 26px rgba(147,183,204,.4)}
.po-btn.ghost{background:transparent;color:var(--po-line);border-color:rgba(232,240,247,.5)}
.po-btn.ghost:hover,.po-btn.ghost:focus-visible{background:rgba(232,240,247,.08);color:#fff;border-color:#fff}
.po-msg{margin:2px 0 0;min-height:1.4em;font-family:var(--po-sans);font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--po-hi)}
.po-msg.shake{animation:poshake .4s}
@keyframes poshake{20%{transform:translateX(-6px)}50%{transform:translateX(5px)}80%{transform:translateX(-2px)}}
.po-cta{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin-top:8px}
.po-rv{opacity:0;transform:translateY(14px);transition:opacity 1s,transform 1s cubic-bezier(.2,.7,.2,1)}
.po-rv.in{opacity:1;transform:none}
/* header + footer in this world */
.po nav.main a[aria-current="page"]{color:var(--po-hi)}
footer.site.ft-po{background:linear-gradient(180deg,var(--po-bg) 0%,#0B1623 55%,#101E2F 100%);border-top:1px solid rgba(147,183,204,.18)}
footer.site.ft-po::before,footer.site.ft-po::after{display:none!important}
footer.site.ft-po .ft-h{color:var(--po-hi)}
footer.site.ft-po a:hover{color:var(--po-hi)}
footer.site.ft-po .ft-nl button{background:var(--po-line);border-color:var(--po-line);color:#0B121B}
@media (max-width:720px){.po-eyebrow{letter-spacing:.5em}.po-hero{padding-top:36px}.po-console dl>div{grid-template-columns:minmax(0,7em) 1fr}.po-lock .l{stroke-width:1.6}}
@media (prefers-reduced-motion:reduce){.po-lock .l,.po-lock .n,.po-lock .tx,.po-soon,.po-small,.po-rv,.po-bar::after,.po-cue i{animation:none!important;opacity:1!important;transform:none!important;stroke-dashoffset:0!important;filter:none!important}.po-div .l{stroke-dashoffset:0;transition:none}.po-div .n{transform:none;transition:none}.po-lock .pulse{display:none}}
a.po-btn:not(.ghost){color:#0B121B!important}
a.po-btn:not(.ghost):hover{color:#070C13!important}

/* v2: heavier letterforms like the series logo (thick stems, sturdy hairlines, deep shadow) */
.po-follow h2,.po-follow .po-h,.po h2{font-family:var(--po-main);font-weight:400;font-variation-settings:normal;-webkit-text-stroke:.8px currentColor}

/* divider splits two fields: hero blue above the trace, the darker tone below */
.po-div .fa{fill:#0E1826;stroke:none}
.po-file>.po-div{margin-top:-2px}

/* closing headline in the wide gothic sans of the logo subtitle (Sackers Gothic, Syncopate as stand-in) */
.po-h.s{font-family:var(--po-sans);font-weight:400;font-variation-settings:normal;-webkit-text-stroke:0;font-size:clamp(20px,2.9vw,34px);letter-spacing:.14em;line-height:1.5;text-shadow:5px 7px 10px rgba(0,0,0,.65)}

/* decode effect for the line under the title: characters resolve out of noise, then one rare glitch */
.po-soon{justify-content:center;letter-spacing:.14em}
.po-dec{display:inline-block;white-space:pre;min-width:1ch}
.po-dec.glt{animation:poglt .22s steps(2) 1}
@keyframes poglt{0%{transform:translateX(-3px);text-shadow:3px 0 rgba(147,183,204,.7),-3px 0 rgba(255,255,255,.3)}50%{transform:translateX(3px);opacity:.6}100%{transform:none}}
@media (prefers-reduced-motion:reduce){.po-dec.glt{animation:none}}
.po-msg{color:#E5484D;text-shadow:0 0 12px rgba(229,72,77,.35)}

/* v3: hero darker with deep shadow at the edges (fades out toward the bottom so the divider fill still matches) */
.po-hero::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 75% 70% at 50% 52%,rgba(2,5,9,0) 30%,rgba(2,5,9,.82) 100%);-webkit-mask-image:linear-gradient(180deg,#000 0,#000 62%,transparent 100%);mask-image:linear-gradient(180deg,#000 0,#000 62%,transparent 100%)}
/* v3: all type outside the access-code section follows the title face (Michroma stand-in for Aspal) */
.po-hero .po-soon{font-family:var(--po-main);font-style:normal;font-size:clamp(12px,1.35vw,17px);letter-spacing:.34em;text-transform:uppercase;padding-left:.34em}
.po-follow .po-lbl,.po-follow .po-btn{font-family:var(--po-main)}
.po-follow .po-h.s{font-family:var(--po-main);font-size:clamp(17px,2.5vw,30px);letter-spacing:.16em;line-height:1.55}
/* access-code section stays as it was, only the big O is darker, smaller and sits higher */
#file .po-h{font-size:clamp(44px,7vw,84px);color:#62788E;text-shadow:3px 4px 8px rgba(0,0,0,.7);-webkit-text-stroke:0;transform:translateY(-22px);margin-bottom:-8px}

/* line under the title: a thin beam of light sweeps across and exposes the text, then passes again now and then */
.po-hero .po-soon{position:relative;width:fit-content;margin-inline:auto;padding-inline:.34em}
.po-dec{display:inline-block;white-space:nowrap;clip-path:inset(-20% 100% -20% 0);animation:poscan 2.4s cubic-bezier(.5,0,.3,1) 3s forwards}
.po-hero .po-soon::after{content:"";position:absolute;top:-10px;bottom:-10px;left:0;width:2px;background:#E8F0F7;box-shadow:0 0 14px 3px rgba(147,183,204,.85),-26px 0 30px 6px rgba(147,183,204,.18);opacity:0;animation:pobeam 2.4s cubic-bezier(.5,0,.3,1) 3s 1 forwards}
@keyframes poscan{to{clip-path:inset(-20% 0 -20% 0)}}
@keyframes pobeam{0%{left:0;opacity:1}92%{opacity:1}100%{left:100%;opacity:0}}
@keyframes pobeam2{0%{left:0;opacity:0}3%{opacity:.55}16%{left:100%;opacity:.55}18%,100%{left:100%;opacity:0}}
@media (prefers-reduced-motion:reduce){.po-dec{clip-path:none;animation:none}.po-hero .po-soon::after{display:none}}

.po-glow{display:none}

/* closing section below the line shares the hero's ground: same gradient and the same deep edge shadow */
.po-follow{background:linear-gradient(180deg,#0A121C 0%,#0E1826 100%)}
.po-follow::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse 75% 80% at 50% 50%,rgba(2,5,9,0) 30%,rgba(2,5,9,.82) 100%)}
.po-follow>*{position:relative;z-index:1}
.po-div .fb{fill:var(--po-bg2);stroke:none}

/* closing headline set like the line under the title: small, wide-tracked caps, no shadow */
.po-follow .po-h.s{font-family:var(--po-main);font-weight:400;font-size:clamp(14px,1.6vw,20px);letter-spacing:.34em;line-height:2;text-transform:uppercase;text-shadow:none;padding-left:.34em}
.po-follow{background:radial-gradient(ellipse 62% 45% at 50% 58%,rgba(34,50,72,.5) 0%,rgba(34,50,72,0) 100%),linear-gradient(180deg,#0A121C 0%,#0E1826 100%)}

/* ===== v4: the whole page in the blue scheme (scroll line, header, menus, footer) ===== */
body.po{--candle:#93B7CC;--rose:#93B7CC;--ivory:#DCE6EE;--ash:#7C8FA2;--line:rgba(147,183,204,.18);--night:#070C13;scrollbar-color:#223248 #070C13}
body.po ::selection{background:#223248;color:#F4F8FB}
/* scroll line */
body.po .read-progress{height:2px;background:linear-gradient(90deg,rgba(147,183,204,0),#93B7CC 70%,#E8F0F7);box-shadow:0 0 10px rgba(147,183,204,.7)}
/* header */
body.po header.site{background:rgba(7,12,19,.94);border-bottom:1px solid rgba(147,183,204,.16)}
body.po nav.main a{font-family:var(--po-main);font-size:11px;letter-spacing:.26em;color:#C9D6E2}
body.po nav.main a:hover,body.po nav.main a[aria-current]{color:#E8F0F7}
body.po nav.main>ul>li>a::after{background:#93B7CC;box-shadow:0 0 8px rgba(147,183,204,.8)}
body.po nav.main .sub{background:#070C13;border:1px solid rgba(147,183,204,.2);box-shadow:0 18px 40px rgba(0,0,0,.6)}
body.po nav.main .sub a{font-size:10px;border-bottom-color:rgba(147,183,204,.14)}
body.po nav.main .sub a:hover{color:#93B7CC}
body.po .hsocial a{color:#C9D6E2}
body.po .hsocial a:hover{color:#93B7CC}
body.po details.menu summary svg{stroke:#C9D6E2}
body.po details.menu ul{background:#070C13;border-bottom:1px solid rgba(147,183,204,.18)}
body.po details.menu a,body.po details.menu .grp span{font-family:var(--po-main);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:#C9D6E2}
body.po details.menu .grp span{color:#7C8FA2}
body.po details.menu a:hover{color:#93B7CC}
/* footer */
body.po footer.site.ft-po{background:radial-gradient(ellipse 60% 70% at 50% 40%,rgba(34,50,72,.35),rgba(34,50,72,0) 100%),linear-gradient(180deg,#070C13 0%,#0A121C 100%);border-top:1px solid rgba(147,183,204,.16);box-shadow:inset 0 28px 48px -24px rgba(0,0,0,.9)}
body.po footer.site .ft-h,body.po footer.site .ft-nl>.ft-h{font-family:var(--po-main);font-style:normal;font-size:12px;letter-spacing:.34em;text-transform:uppercase;color:#93B7CC;text-shadow:none}
body.po footer.site .ft-nl>.ft-h{font-size:clamp(13px,1.3vw,16px)}
body.po footer.site p,body.po footer.site .ft-nl-note{font-family:var(--po-serif);color:#B5C4D2}
body.po footer.site .ft-col a,body.po footer.site .ft-legal a{font-family:var(--po-serif);font-size:15px;letter-spacing:.04em;color:#DCE6EE;text-decoration-color:rgba(147,183,204,.35)}
body.po footer.site .ft-legal a{font-size:13px;color:#7C8FA2}
body.po footer.site .ft-col a::before{background:#93B7CC;box-shadow:0 0 6px rgba(147,183,204,.9);border-radius:0;width:6px;height:6px}
body.po footer.site .ft-col a:hover,body.po footer.site .ft-legal a:hover{color:#E8F0F7;text-decoration-color:#93B7CC}
body.po footer.site .ft-social a{color:#C9D6E2}
body.po footer.site .ft-social a::before{border-color:#93B7CC;box-shadow:0 0 12px rgba(147,183,204,.4)}
body.po footer.site .ft-social a:hover{color:#E8F0F7;transform:translateY(-2px)}
body.po .ft-rule{background:linear-gradient(90deg,rgba(147,183,204,0),rgba(147,183,204,.35),rgba(147,183,204,0))}
body.po .ft-nl form{background:#04080D;border:1px solid rgba(147,183,204,.35);padding:0;box-shadow:0 14px 30px rgba(0,0,0,.6)}
body.po .ft-nl input{color:#F4F8FB;font-family:var(--po-main);font-size:12px;letter-spacing:.14em}
body.po .ft-nl input::placeholder,body.po footer.site .ft-nl input:focus::placeholder{color:#5E7186}
body.po footer.site .ft-nl button{background:#E8F0F7;color:#0B121B;font-family:var(--po-main);font-size:11px;letter-spacing:.26em}
body.po footer.site .ft-nl button:hover,body.po footer.site .ft-nl button:focus-visible{background:#fff;color:#070C13;box-shadow:0 0 22px rgba(147,183,204,.45)}
body.po .ft-nl input:autofill{box-shadow:0 0 0 1000px #04080D inset!important;-webkit-text-fill-color:#F4F8FB!important}
body.po .ft-nl input:-webkit-autofill{box-shadow:0 0 0 1000px #04080D inset!important;-webkit-text-fill-color:#F4F8FB!important}
body.po footer.site .ft-mark img{filter:grayscale(1) brightness(1.25) sepia(.2) hue-rotate(170deg) drop-shadow(0 4px 6px rgba(0,0,0,.6))}
body.po footer.site .ft-mark .ft-tip{background:#070C13;border-color:rgba(147,183,204,.45)}
body.po footer.site .ft-mark .ft-tip::after{border-top-color:rgba(147,183,204,.45)}
body.po footer.site .ft-mark .ft-tip span,body.po footer.site .ft-mark .ft-tip a{color:#93B7CC}
body.po footer.site .ft-mark .ft-tip a:hover{color:#E8F0F7}
body.po footer.site .ft-brand .logo img.sig{filter:brightness(.95) drop-shadow(0 0 6px rgba(147,183,204,.25))}

/* footer a little darker (top colour unchanged, so the seam above stays) */
body.po footer.site.ft-po{background:radial-gradient(ellipse 60% 70% at 50% 40%,rgba(34,50,72,.18),rgba(34,50,72,0) 100%),linear-gradient(180deg,#070C13 0%,#04070B 100%)}

/* v520 mobile: the file labels (e.g. CONTENTS) were cut by the long black bars; the label keeps its width, the bar shrinks */
@media (max-width:560px){.po-console dl>div{grid-template-columns:7.6em minmax(0,1fr)}.po-console dd{min-width:0}.po-red{max-width:100%}}

body.po footer.site .ft-nl .ft-nl-consent{font-family:var(--po-serif);color:#B5C4D2}

/* ===== v601 entrance: the O is a sealed lock (project-o-gate.js). Dark field, line work, three rings click into place, the iris opens and the page appears through it. ===== */
html.po-intro{overflow:hidden}
html.po-intro .po-hero *,html.po-intro .po-hero *::before,html.po-intro .po-hero *::after,html.po-intro .po-hero::before,html.po-intro .po-hero::after{animation-play-state:paused!important}
.po-gate{display:none}
html.po-intro .po-gate,.po-gate.pg-on{display:block}   /* pg-on: set by the gate script, keeps the gate up until it removes itself (independent of the title start) */
.po-gate{position:fixed;inset:0;z-index:10060;pointer-events:auto;cursor:default;-webkit-tap-highlight-color:transparent;font-family:var(--po-main)}
.po-gate.pg-opening{pointer-events:none}
.pg-mask{position:absolute;inset:0;background:radial-gradient(ellipse 55% 48% at 50% 50%,rgba(34,50,72,.42) 0%,rgba(34,50,72,0) 100%),linear-gradient(180deg,#05090F 0%,#03060A 100%)}
.pg-mask::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;animation:pgin 1.6s .2s forwards;background:repeating-linear-gradient(0deg,rgba(147,183,204,.055) 0 1px,transparent 1px 64px),repeating-linear-gradient(90deg,rgba(147,183,204,.04) 0 1px,transparent 1px 64px);background-position:center;-webkit-mask-image:radial-gradient(ellipse 60% 60% at 50% 50%,#000,transparent 80%);mask-image:radial-gradient(ellipse 60% 60% at 50% 50%,#000,transparent 80%)}
.pg-mask::after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(0,0,0,.22) 0 1px,transparent 1px 3px),radial-gradient(ellipse 80% 75% at 50% 50%,transparent 45%,rgba(1,3,6,.9) 100%)}
@keyframes pgin{to{opacity:1}}
.pg-dial{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.pg-dial .pg-l{fill:none;stroke:#E8F0F7;stroke-width:1.7px;vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:1}
.pg-dial .pg-l3{stroke:#93B7CC;stroke-width:1.4px}
.pg-dial .pg-n{fill:#F4F8FB;opacity:0}
.pg-dial .pg-pulse{fill:#fff;opacity:0;filter:drop-shadow(0 0 4px #93B7CC) drop-shadow(0 0 9px #93B7CC)}
.pg-dial .pg-ring{--fl:0}
.pg-dial .pg-arc{fill:none;stroke:#E8F0F7;stroke-width:1.6px;vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:1;filter:drop-shadow(0 0 calc(var(--fl)*14px) rgba(232,240,247,calc(var(--fl)*1)))}
.pg-dial .pg-r1 .pg-arc{stroke:#C6D8E5;stroke-width:1.3px}
.pg-dial .pg-r2 .pg-arc{stroke:#93B7CC;stroke-width:2.2px}
.pg-dial .pg-dots{fill:none;stroke:#93B7CC;stroke-width:1.2px;vector-effect:non-scaling-stroke;stroke-dasharray:.004 .012;opacity:0}
.pg-dial .pg-brk{fill:none;stroke:#E8F0F7;stroke-width:2.4px;vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:1;opacity:0}
.pg-dial .pg-ticks{opacity:0}
.pg-dial .pg-ticks line{stroke:rgba(147,183,204,.45);stroke-width:1px;vector-effect:non-scaling-stroke}
.pg-dial .pg-ticks line.mj{stroke:#E8F0F7;stroke-width:1.4px}
.pg-dial .pg-mark{fill:#F4F8FB;opacity:0;filter:drop-shadow(0 0 calc(var(--fl)*10px) #93B7CC)}
.pg-dial .pg-beam{fill:none;stroke:#fff;stroke-width:2px;vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:1;opacity:0;filter:drop-shadow(0 0 5px #93B7CC) drop-shadow(0 0 14px #93B7CC)}
.pg-dial .pg-core{opacity:0}
.pg-dial .pg-bl{fill:url(#pg-blade);stroke:none}
.pg-dial .pg-bl.alt{fill:#142131}
.pg-dial .pg-be{fill:none;stroke:rgba(198,216,229,.85);stroke-width:1.1px;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 2px rgba(147,183,204,.6))}
.pg-dial .pg-irim{fill:none;stroke:#E8F0F7;stroke-width:1.8px;vector-effect:non-scaling-stroke;opacity:0}
.pg-dial .pg-hub{fill:#F4F8FB;opacity:0;filter:drop-shadow(0 0 6px #93B7CC)}
.pg-status{position:absolute;left:50%;top:80%;translate:-50% 0;margin:0;white-space:pre;font-family:var(--po-main);font-size:clamp(10px,1.05vw,12px);letter-spacing:.42em;padding-left:.42em;color:#93B7CC;text-shadow:0 0 12px rgba(147,183,204,.45);opacity:0}
.pg-rim{position:absolute;left:50%;top:50%;width:0;height:0;translate:-50% -50%;border-radius:50%;border:1.5px solid #E8F0F7;box-shadow:0 0 18px 2px rgba(147,183,204,.75),inset 0 0 26px rgba(147,183,204,.35);opacity:0;pointer-events:none}
/* v604: calm door, no strong light: thin rim, quiet beam and lock clicks */
.pg-rim{border:1px solid rgba(232,240,247,.8);box-shadow:0 0 6px rgba(147,183,204,.35)}
.pg-dial .pg-beam{stroke:#C6D8E5;stroke-width:1.2px;filter:drop-shadow(0 0 3px rgba(147,183,204,.6))}
.pg-dial .pg-arc{filter:drop-shadow(0 0 calc(var(--fl)*6px) rgba(232,240,247,calc(var(--fl)*.7)))}
.pg-flash{position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,#fff 0%,rgba(232,240,247,.7) 18%,rgba(147,183,204,.25) 45%,rgba(147,183,204,0) 75%);opacity:0;pointer-events:none}
.pg-skip{position:absolute;right:max(18px,env(safe-area-inset-right,0px));bottom:calc(18px + env(safe-area-inset-bottom,0px));padding:10px 4px;background:none;border:0;border-bottom:1px solid rgba(147,183,204,.3);color:#5E7186;font-family:var(--po-main);font-size:10px;letter-spacing:.34em;text-transform:uppercase;cursor:pointer;opacity:0;animation:pgin .8s 1.2s forwards;transition:color .25s,border-color .25s}
.pg-skip:hover,.pg-skip:focus-visible{color:#E8F0F7;border-color:#E8F0F7;outline:none}
.pg-opening .pg-skip{display:none}
.po-gate.pg-quick .pg-dial,.po-gate.pg-quick .pg-status,.po-gate.pg-quick .pg-skip{display:none}
.po-gate.pg-out{display:block;opacity:0;transition:opacity .6s ease}

/* v710 (08.11.2026): on phones the opening section no longer fills the whole screen; it is a compact banner and the file section starts right below. */
@media (max-width:720px){.po-hero{min-height:0;padding-block:34px 70px}}
