:root{--bg:#F7F9FC;--paper:#fff;--ink:#0E1B2C;--mute:#5A6678;--line:#D8DFEA;--red:#C8102E;--blue:#1F4E9A;--mus:#E0A526;
[hidden]{display:none!important}
--fund:#8A5A2B;--liv:#2E7D4F;--vaerk:#C8102E;--dage:#D9822B;--lab:#1F4E9A;
--fd:"Rufina",Georgia,serif;--fs:"Vollkorn",Georgia,serif;--fu:"Figtree",system-ui,sans-serif;--fm:"DM Mono",ui-monospace,monospace}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--fs);font-size:1.1rem;line-height:1.62}
img{max-width:100%;height:auto;display:block}a{color:inherit}
:focus-visible{outline:3px solid var(--mus);outline-offset:2px}
.skip{position:absolute;left:-999px;background:var(--red);color:#fff;padding:.5rem 1rem;z-index:99;font-family:var(--fu)}.skip:focus{left:1rem;top:1rem}
.wrap{max-width:1240px;margin:0 auto;padding:0 2rem}
.kick{font-family:var(--fm);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.meta{font-family:var(--fu);font-size:.84rem;color:var(--mute)}
h1,h2,h3{font-family:var(--fd);font-weight:700;line-height:1.12;margin:0;letter-spacing:-.005em}
/* masthead */
.mast{background:var(--paper);border-bottom:1px solid var(--line)}
.mast .top{display:flex;justify-content:space-between;align-items:center;font-family:var(--fm);font-size:.72rem;color:var(--mute);padding:.5rem 0;border-bottom:1px dashed var(--line);letter-spacing:.08em;text-transform:uppercase}
.mast .row{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1.4rem;padding:1.1rem 0 .9rem}
.mast nav ul{list-style:none;margin:0;padding:0;display:flex;gap:1.6rem;font-family:var(--fu);font-weight:600;font-size:.95rem}
.mast nav.l ul{justify-content:flex-end}.mast nav.r ul{justify-content:flex-start}
.mast nav a{text-decoration:none;padding:.25rem 0;border-bottom:3px solid transparent}
.mast nav a:hover,.mast nav a[aria-current]{border-color:var(--sc,var(--red))}
.logo{display:flex;flex-direction:column;align-items:center;text-decoration:none;gap:.2rem}
.logo .ring{width:74px;height:74px;border-radius:50%;border:2px solid var(--ink);display:grid;place-items:center;position:relative}
.logo .ring b{font-family:var(--fd);font-size:2.1rem;line-height:1}
.logo .ring:after{content:"";position:absolute;width:12px;height:12px;border-radius:50%;background:var(--red);top:-6px;left:50%;margin-left:-6px}
.logo span{font-family:var(--fd);font-size:1.5rem;font-weight:700;letter-spacing:.02em}
.logo small{font-family:var(--fm);font-size:.62rem;letter-spacing:.3em;text-transform:uppercase;color:var(--mute)}
.chipsrow{display:flex;justify-content:center;flex-wrap:wrap;gap:.4rem;padding:.2rem 0 1rem}
.chipsrow a,.chipsrow button{font-family:var(--fu);font-size:.8rem;text-decoration:none;border:1px solid var(--line);border-radius:999px;padding:.22rem .7rem;background:var(--bg);color:var(--ink);cursor:pointer}
.chipsrow .avis{background:var(--ink);color:#fff;border-color:var(--ink)}
.chipsrow .avis b{background:var(--mus);color:var(--ink);border-radius:999px;padding:0 .4rem;margin-left:.3rem;font-family:var(--fm);font-size:.75rem}
.fab{display:none}
.overlay{position:fixed;inset:0;background:var(--ink);color:#fff;z-index:80;padding:2rem 1.6rem;overflow:auto;font-family:var(--fu)}
.overlay[hidden]{display:none}
.overlay ul{list-style:none;padding:0;margin:1.4rem 0;display:grid;gap:.2rem}
.overlay a{font-family:var(--fd);font-size:1.7rem;text-decoration:none;display:block;padding:.3rem 0}
.overlay .close{position:absolute;right:1.2rem;top:1.2rem;background:none;border:1px solid #fff6;color:#fff;border-radius:999px;padding:.4rem .9rem;font:inherit;cursor:pointer}
/* home */
.intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:2.6rem;padding:2.8rem 0 1.4rem;align-items:end}
.intro h1{font-size:clamp(2.2rem,4.2vw,3.8rem)}
.intro h1 i{color:var(--red);font-style:normal}
.intro p{margin:.8rem 0 0;max-width:38rem}
.ribbon{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:1rem 1.2rem 1.2rem}
.ribbon h2{font-family:var(--fu);font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700}
.ribbon .axis{position:relative;height:120px;margin:1rem .4rem .2rem;border-bottom:2px solid var(--ink)}
.ribbon .dot{position:absolute;bottom:-7px;width:14px;height:14px;margin-left:-7px;border-radius:50%;background:var(--sc);border:2px solid var(--paper);cursor:pointer;padding:0}
.ribbon .dot[aria-pressed=true]{transform:scale(1.5);box-shadow:0 0 0 3px var(--ink)}
.ribbon .stem{position:absolute;bottom:0;width:1px;background:var(--line)}
.ribbon .ticks{display:flex;justify-content:space-between;font-family:var(--fm);font-size:.7rem;color:var(--mute);margin:.3rem 0 0}
.ribbon .out{font-family:var(--fu);font-size:.92rem;min-height:2.8em;margin-top:.6rem}
.ribbon .out a{font-weight:600}
.mosaic{columns:3 300px;column-gap:1.6rem;padding:1.6rem 0 2.4rem}
.tile{break-inside:avoid;margin:0 0 1.6rem;background:var(--paper);border:1px solid var(--line);border-radius:12px;overflow:hidden;border-top:5px solid var(--sc)}
.tile a.t{text-decoration:none;display:block}
.tile .in{padding:.9rem 1rem 1rem}
.tile h3{font-size:1.32rem;margin:.35rem 0 .35rem}
.tile p{margin:0 0 .6rem;font-size:1rem}
.tile.big h3{font-size:1.8rem}
.tile img{width:100%;object-fit:cover}
.tile.q{background:var(--ink);color:#fff;border-top-color:var(--mus);padding:1.2rem}
.tile.q blockquote{margin:0;font-family:var(--fd);font-size:1.35rem;line-height:1.3}
.tile.q a{color:var(--mus);font-family:var(--fu);font-size:.85rem}
.addbtn{font-family:var(--fu);font-size:.8rem;font-weight:600;border:1.5px solid var(--ink);background:none;border-radius:999px;padding:.25rem .7rem;cursor:pointer;color:var(--ink)}
.addbtn[aria-pressed=true]{background:var(--ink);color:#fff}
.tile .foot{display:flex;justify-content:space-between;align-items:center;gap:.6rem}
.read h3:after{content:" ✓";color:var(--liv);font-size:.8em}
.secs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem;padding:0 0 2.6rem}
.secs a{text-decoration:none;border-left:4px solid var(--sc);padding:.4rem .8rem}
.secs b{font-family:var(--fd);font-size:1.25rem;display:block}
.secs span{font-family:var(--fu);font-size:.85rem;color:var(--mute)}
.band{background:var(--blue);color:#fff;border-radius:16px;padding:1.6rem 1.8rem;margin-bottom:2.8rem;display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:center}
.band h2{font-size:1.8rem}.band p{margin:.3rem 0 0;font-family:var(--fu)}
.band a{background:var(--mus);color:var(--ink);font-family:var(--fu);font-weight:700;text-decoration:none;border-radius:999px;padding:.7rem 1.2rem}
/* list pages */
.ph{padding:2.6rem 0 1.4rem;border-bottom:3px double var(--ink)}
.ph h1{font-size:clamp(2.1rem,4vw,3.4rem)}
.ph p{max-width:44rem;margin:.6rem 0 0}
.tags{display:flex;flex-wrap:wrap;gap:.45rem;padding:1.2rem 0}
.tags button{font-family:var(--fu);font-size:.88rem;border:1px solid var(--line);background:var(--paper);border-radius:6px;padding:.35rem .7rem;cursor:pointer;color:var(--ink)}
.tags button[aria-pressed=true]{background:var(--red);border-color:var(--red);color:#fff}
.tags button small{font-family:var(--fm);opacity:.7;margin-left:.3rem}
.list{list-style:none;padding:0;margin:0 0 3rem}
.list li{display:grid;grid-template-columns:200px minmax(0,1fr) auto;gap:1.4rem;padding:1.2rem 0;border-bottom:1px solid var(--line);align-items:center}
.list img{width:200px;aspect-ratio:3/2;object-fit:cover;border-radius:8px}
.list h3{font-size:1.4rem;margin:.2rem 0 .3rem}.list h3 a{text-decoration:none}
.list p{margin:0;font-size:1rem}
/* article */
.art{display:grid;grid-template-columns:220px minmax(0,680px) 1fr;gap:2.4rem;padding:2.4rem 0 3rem}
.art .rail{position:sticky;top:1rem;align-self:start;font-family:var(--fu);font-size:.88rem;display:grid;gap:.6rem}
.art .rail button,.art .rail a.b{font:inherit;font-weight:600;text-align:left;border:1px solid var(--line);background:var(--paper);border-radius:8px;padding:.5rem .7rem;cursor:pointer;color:var(--ink);text-decoration:none}
.art .rail button[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}
.art h1{font-size:clamp(2rem,3.6vw,3rem);margin:.5rem 0 .8rem}
.art .lead{font-size:1.25rem;font-style:italic;margin:0 0 1rem}
.art figure{margin:1.2rem 0}
.art figure img{border-radius:10px;width:100%}
.cap{font-family:var(--fu);font-size:.76rem;color:var(--mute);margin-top:.3rem}
.body h2{font-size:1.5rem;margin:1.7rem 0 .4rem}
.body p{margin:0 0 1rem;transition:opacity .25s}
.fokus .body p{opacity:.28}.fokus .body p.on{opacity:1}
.pull{font-family:var(--fd);font-size:1.5rem;line-height:1.3;border-top:3px solid var(--sc);border-bottom:1px solid var(--line);padding:.9rem 0;margin:1.4rem 0}
.aside{display:grid;gap:1.1rem;align-content:start}
.card{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:1rem 1.1rem;font-family:var(--fu);font-size:.92rem}
.card h2{font-family:var(--fm);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);font-weight:500;margin-bottom:.5rem}
.card dl{margin:0}.card dt{color:var(--mute);font-size:.8rem}.card dd{margin:0 0 .5rem;font-weight:600}
.tal b{font-family:var(--fd);font-size:2.8rem;color:var(--sc);display:block;line-height:1}
.note textarea{width:100%;min-height:130px;font:inherit;font-family:var(--fs);border:1px solid var(--line);border-radius:8px;padding:.6rem;background:#FFFDF5}
.note .row{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.5rem}
.note button{font:inherit;font-size:.82rem;border:1px solid var(--ink);background:none;border-radius:999px;padding:.25rem .7rem;cursor:pointer;color:var(--ink)}
.tagl{display:flex;flex-wrap:wrap;gap:.35rem}.tagl a{font-size:.8rem;border:1px solid var(--line);border-radius:4px;padding:.1rem .45rem;text-decoration:none}
.src{font-family:var(--fu);font-size:.9rem;border-top:1px solid var(--line);padding-top:.9rem;margin-top:1.6rem}
.also{border-top:3px double var(--ink);padding:1.6rem 0 3rem}
.also ul{list-style:none;padding:0;margin:.8rem 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.also a{text-decoration:none;font-family:var(--fd);font-size:1.15rem;font-weight:700}
/* avis (print) */
.paper{background:#fff;border:1px solid var(--line);padding:2rem 2.2rem;margin:1.6rem 0 3rem;box-shadow:0 2px 0 var(--line)}
.paper .nameplate{text-align:center;border-bottom:4px double var(--ink);padding-bottom:.6rem;margin-bottom:1rem}
.paper .nameplate h2{font-size:3rem}
.paper .cols{columns:2 300px;column-gap:2rem;column-rule:1px solid var(--line)}
.paper article{break-inside:avoid-column;margin-bottom:1.4rem}
.paper article h3{font-size:1.4rem;margin-bottom:.3rem}
.paper article p{margin:0 0 .6rem;font-size:.98rem}
.paper .empty{font-family:var(--fu);text-align:center;color:var(--mute);padding:2rem 0}
.pbar{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;padding:1rem 0 0}
.pbar button{font-family:var(--fu);font-weight:600;border:1.5px solid var(--ink);background:none;border-radius:999px;padding:.45rem 1rem;cursor:pointer;color:var(--ink)}
.pbar button.pri{background:var(--red);border-color:var(--red);color:#fff}
.prose{max-width:760px;padding:1.4rem 0 3.2rem}
.prose h2{font-size:1.4rem;margin:1.6rem 0 .4rem}.prose p{margin:0 0 1rem}
.form{display:grid;gap:.8rem;max-width:560px;font-family:var(--fu)}
.form input,.form textarea,.form select{font:inherit;padding:.6rem .7rem;border:1px solid var(--line);border-radius:8px;background:var(--paper);width:100%}
.form button{justify-self:start;font:inherit;font-weight:700;background:var(--ink);color:#fff;border:0;border-radius:999px;padding:.6rem 1.2rem;cursor:pointer}
/* footer */
.ft{background:#0B2346;color:#E8EEF8;font-family:var(--fu);margin-top:1rem;position:relative;overflow:hidden}
.ft .wrap{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:2rem;padding-top:2.6rem;padding-bottom:1.4rem;position:relative;z-index:1}
.ft h2{font-family:var(--fd);font-size:1.6rem;margin-bottom:.4rem}
.ft p{margin:.3rem 0;font-size:.92rem;opacity:.85}
.ft ul{list-style:none;padding:0;margin:0;display:grid;gap:.35rem;font-size:.92rem}
.ft a{text-decoration:none;opacity:.9}.ft a:hover{opacity:1;text-decoration:underline}
.ft .rose{position:absolute;right:-60px;bottom:-80px;width:360px;height:360px;opacity:.12;z-index:0}
.ft form{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.6rem}
.ft input{font:inherit;padding:.5rem .7rem;border-radius:6px;border:1px solid #ffffff44;background:#ffffff12;color:inherit;flex:1 1 180px;min-width:0}
.ft button{font:inherit;font-weight:700;padding:.5rem .9rem;border-radius:6px;border:0;background:var(--mus);color:var(--ink);cursor:pointer}
.ft .base{grid-column:1/-1;border-top:1px solid #ffffff22;padding-top:1rem;font-size:.8rem;opacity:.7;display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem}
.toast{position:fixed;left:50%;top:1rem;transform:translateX(-50%);background:var(--ink);color:#fff;font-family:var(--fu);padding:.55rem 1rem;border-radius:8px;z-index:90;font-size:.9rem}
.toast[hidden]{display:none}
@media (max-width:1100px){.art{grid-template-columns:minmax(0,1fr) 280px}.art .rail{grid-column:1/-1;position:static;display:flex;flex-wrap:wrap}.secs{grid-template-columns:repeat(3,1fr)}}
@media (max-width:860px){
 .wrap{padding:0 1.1rem}
 .mast .row{grid-template-columns:1fr;justify-items:center;padding:.9rem 0 .6rem}.mast nav{display:none}.mast .top span+span{display:none}
 .logo .ring{width:56px;height:56px}.logo .ring b{font-size:1.6rem}
 .fab{display:grid;place-items:center;position:fixed;right:1rem;bottom:1rem;width:58px;height:58px;border-radius:50%;background:var(--red);color:#fff;border:0;z-index:70;font-family:var(--fu);font-weight:700;font-size:.72rem;box-shadow:0 6px 18px #0E1B2C55;cursor:pointer}
 .intro{grid-template-columns:1fr;padding:1.6rem 0 1rem;gap:1.4rem}
 .art{grid-template-columns:1fr;gap:1.4rem;padding-top:1.4rem}
 .list li{grid-template-columns:96px minmax(0,1fr)}.list img{width:96px}.list li>.addbtn{grid-column:2;justify-self:start}
 .also ul{grid-template-columns:1fr}
 .ft .wrap{grid-template-columns:1fr}
 .band{grid-template-columns:1fr}
 .secs{grid-template-columns:1fr 1fr}
 .paper{padding:1.2rem}
}
@media print{.addbtn,.mast,.ft,.fab,.pbar,.ph,.toast,.skip{display:none!important}body{background:#fff}.paper{border:0;box-shadow:none;margin:0;padding:0}.wrap{max-width:none;padding:0}}
.paper .kick{font-size:.66rem;letter-spacing:.1em}
