/* deverus Client Hub skin: same look as deverus.com (Schibsted Grotesk, Instrument Serif italics, IBM Plex Mono labels, blue/navy). Structure and scripts unchanged. */
:root{--blue:#0096D8;--blue-deep:#007AB3;--blue-ink:#00689A;--navy:#061B2A;--ink:#0A1D2B;--muted:#53697B;--line:#DAE6EF;--wash:#F2F8FC;--blue-bg:#E2F3FB;--green:#1F7A4D;
 --sans:"Schibsted Grotesk","Helvetica Neue",Arial,sans-serif;--serif:"Instrument Serif",Georgia,serif;--mono:"IBM Plex Mono",ui-monospace,Menlo,monospace}
html{scroll-behavior:smooth}
body{background:#fff;color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font-family:var(--sans)}
.shell{max-width:1240px;padding:0 clamp(18px,4vw,48px) 40px}
/* top bar */
.topbar{background:rgba(255,255,255,.92);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);padding:14px 0;margin-bottom:0}
.brand{flex-direction:row;align-items:center;gap:14px}
.logo img{height:30px;width:auto;display:block}
.edition{font-family:var(--mono);font-size:11px;letter-spacing:.08em;color:var(--muted);line-height:1.35;padding-left:14px;border-left:1px solid var(--line)}
.portal-nav a{font-weight:600;color:var(--ink);border-radius:999px;padding:9px 15px}
.portal-nav a:hover{background:var(--wash)}
.portal-nav a[aria-current=true]{background:var(--blue-bg);color:var(--blue-ink)}
nav.tabs button{border-radius:999px;font-weight:600}
nav.tabs button[aria-selected=true]{background:var(--blue-bg);color:var(--blue-ink)}
/* type */
h1,h2,h3{font-family:var(--sans);font-weight:800;letter-spacing:-.05em;color:var(--ink);text-wrap:balance}
h1{font-size:clamp(40px,5.2vw,76px);line-height:.98;letter-spacing:-.055em;margin-top:6px}
h1 em,h2 em{font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:-.015em;color:var(--blue-ink);font-size:1.05em}
h2{letter-spacing:-.045em;line-height:1.02}
.eyebrow{font-family:var(--mono);font-weight:500;font-size:12px;letter-spacing:.08em;color:var(--blue-ink);margin:44px 0 14px}
.intro{font-size:clamp(18px,1.5vw,21px);color:var(--muted);max-width:760px}
.module{padding:8px 0 56px}
.module+.module{border-top:1px solid var(--line)}
/* buttons */
.cta{border-radius:999px;font-weight:700;padding:13px 22px;background:var(--blue-deep);color:#fff;box-shadow:0 12px 26px -14px rgba(0,122,179,.9),inset 0 1px 0 rgba(255,255,255,.25);transition:transform .3s,background .3s}
.cta:hover{background:var(--blue-ink);transform:translateY(-2px)}
.cta-secondary{background:#fff;color:var(--ink);border:1px solid var(--line);box-shadow:none}
.cta-secondary:hover{background:var(--wash);transform:translateY(-2px)}
/* cards */
.pulse article,.schedule-card,.card,.form,.route,.knowledge article,.detail,.recipe,.request,.dialog-card{border-radius:16px;border-color:var(--line);background:#fff}
.pulse article{background:var(--wash);border:0}
.pulse b{font-weight:800;letter-spacing:-.03em}
.schedule-card{padding:clamp(22px,3vw,40px);background:linear-gradient(180deg,var(--wash),#fff 55%)}
.zones span{font-family:var(--mono);font-size:12px;border-radius:999px;background:#fff}
.filters button{border-radius:999px;font-weight:600}
.filters button[aria-pressed=true]{background:var(--blue-deep);border-color:var(--blue-deep);color:#fff}
.badge{font-family:var(--mono);border-radius:999px;letter-spacing:.05em;padding:5px 10px}
.checkpoint{background:var(--wash);border-radius:12px}
.checkpoint strong{font-family:var(--mono);color:var(--blue-ink);letter-spacing:.06em}
.card:hover{border-color:#b9d4e5}
input,select,textarea{border-radius:12px;border-color:var(--line);padding:12px 14px}
input:focus,textarea:focus,select:focus{border-color:var(--blue);outline:none;box-shadow:0 0 0 3px rgba(0,150,216,.2)}
/* no dark slabs: soft blue instead */
.hub,.loop,.adoption,.pathline .owner{background:var(--blue-bg);color:var(--ink);box-shadow:none}
.hub h2,.hub p,.hub li,.loop strong,.loop p,.adoption p{color:var(--ink)}
.hub .mini{color:var(--blue-ink);font-family:var(--mono)}
.hub ul{border-top-color:#b9d4e5}.hub li:before{color:var(--green)}
.adoption b{color:var(--blue-ink)}.adoption small{color:var(--muted)}
.steps button{border-radius:14px}
.steps button[aria-pressed=true]{background:var(--blue-bg);color:var(--ink);border-color:#b9d4e5}
.steps b{font-family:var(--mono)}
.examples button{border-radius:14px}
.detail .label,.route .tag,.recipe dt{font-family:var(--mono);color:var(--blue-ink)}
.detail .example{border-left-color:var(--blue);background:var(--wash);border-radius:0 12px 12px 0}
.readout{background:var(--wash);border-radius:14px}
.dialog{background:rgba(6,27,42,.55)}
footer{font-family:var(--mono);font-size:11.5px;letter-spacing:.04em}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
