/* Indkapslet udgave: hver selektor er pakket under .epos-site, så reglerne
   ikke kan ramme WordPress-temaets egne elementer. Genereres af
   _byg/byg.py --wordpress. Ret aldrig her — ret i /style.css.

   Skrifterne hentes her i filen. På det statiske site kommer de fra
   et <link> i sidehovedet, men sidehovedet følger ikke med over i
   WordPress — uden denne linje ville hele sitet falde tilbage til
   Georgia og systemskrift. */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;1,300;1,400&family=Inter:wght@400;500;600&display=swap');
/* Efterskolen Epos — forsideforslag
   Én styrende idé: siden opfører sig som en fortælling, der bliver fortalt.
   Derfor har hver sektion ét job og ét bevægelsesgreb — aldrig flere.

   Guld optræder fire steder på hele siden og ingen andre:
     1. ét ord i hero-overskriften
     2. den primære knap (én per skærmfuld)
     3. ornamentets streg
     4. sektionslabels
   Links markeres med en linje, ikke med farve. Det er linjen, der er signalet.
*/

:root{
  /* Epos' egne farver, uændrede */
  --night:#17131F;
  --ground:#1C1823;
  --plum:#302741;
  --plum-deep:#241D31;
  --plum-lift:#3A2F4C;
  --gold:#DFC28C;
  --gold-dim:#A98F5F;
  --paper:#F1EDE4;
  --paper-2:#E6DFD1;
  --ink:#EEE9E1;
  --muted:#BCB4C1;
  --muted-2:#9A90A6;
  --line:#FFFFFF1F;
  --line-soft:#FFFFFF10;

  --serif:'Cormorant Garamond',Georgia,'Times New Roman',serif;
  --sans:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;

  /* Navngivet afstandsskala. Trapper på to skærmbredder — aldrig ad hoc. */
  --s1:.5rem; --s2:1rem; --s3:1.75rem; --s4:3rem; --s5:5rem; --s6:7.5rem;

  --frame:0px;              /* rammens indrykning — 0 på mobil, sat på desktop */
  --gutter:clamp(1.25rem,4vw,3.5rem);
  --wide:1340px;
  --head-h:76px;

  /* fotogrebet, samlet ét sted så det kan justeres på hele sitet */
  --photo-sat:.55;
  --photo-tint:.30;
}
@media(min-width:1024px){:root{--s3:2rem;--s4:3.75rem;--s5:6.5rem;--s6:9.5rem;--frame:34px;--head-h:84px}}
@media(min-width:1440px){:root{--s4:4.5rem;--s5:8rem;--s6:12rem;--frame:44px}}

.epos-site *,.epos-site *::before,.epos-site *::after{box-sizing:border-box}
html{scroll-behavior:smooth;scrollbar-gutter:stable}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.epos-site{
  margin:0;
  padding:var(--frame);
  background:var(--plum);      /* rammens farve — ses hele vejen rundt om siden */
  color:var(--ink);
  font:400 16px/1.75 var(--sans);
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
.epos-site img{display:block;max-width:100%}
.epos-site figure,.epos-site blockquote{margin:0}
.epos-site ul,.epos-site ol{margin:0;padding:0;list-style:none}
.epos-site button{font:inherit;cursor:pointer}

.epos-site h1,.epos-site h2,.epos-site h3,.epos-site h4{margin:0;font-family:var(--serif);font-weight:400;line-height:1.05;color:var(--ink);text-wrap:balance}
.epos-site p{margin:0}
.epos-site a{color:inherit;text-decoration:none}
.epos-site ::selection{background:var(--gold);color:var(--night)}
.epos-site :focus-visible{outline:2px solid var(--gold);outline-offset:4px}

/* Rammen (efter Nysted). Ingen overflow her — sticky og ScrollTrigger
   skal kunne regne mod viewporten uden en klippende forfader. */
.epos-site .frame{
  background:var(--ground);
  border-radius:var(--frame) ;
  position:relative;
}
@media(min-width:1024px){.epos-site .frame{border-radius:8px}}

.epos-site .epos-container{width:min(100% - var(--gutter)*2,var(--wide));margin-inline:auto}
.epos-site .narrow{max-width:62ch}

.epos-site .eyebrow{
  display:block;font:500 .68rem/1.6 var(--sans);
  letter-spacing:.2em;text-transform:uppercase;color:var(--gold-dim);
}
.epos-site .lede{font-size:1.08rem;line-height:1.7;color:#D8D1DA}
.epos-site .mut{color:var(--muted)}

/* ---------- masker til tekstafsløring ----------
   Hvert ord ligger i sin egen maske og glider op bagfra kanten.
   Ingen opacity:0 i CSS — uden JavaScript står alt læsbart. */
.epos-site .mask{display:inline-block;overflow:hidden;vertical-align:bottom;
  padding-bottom:.14em;margin-bottom:-.14em}
.epos-site .mask>span{display:inline-block;will-change:transform}

/* ---------- knapper ----------
   Præcis én fyldt guldknap per skærmfuld. Resten er hårfin kant. */
.epos-site .btn{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;
  min-height:48px;padding:.85rem 1.5rem;border:1px solid transparent;border-radius:3px;
  font:500 .84rem/1.4 var(--sans);letter-spacing:.01em;
  transition:background 240ms ease,border-color 240ms ease,color 240ms ease,transform 240ms ease}
.epos-site .btn-primary{background:var(--gold);border-color:var(--gold);color:#241C2E}
.epos-site .btn-primary:hover{background:#EBD3A6;border-color:#EBD3A6}
.epos-site .btn-ghost{border-color:var(--line);color:var(--ink)}
.epos-site .btn-ghost:hover{border-color:var(--ink)}
/* "Bliv elev" i header: bevidst undtagelse fra ovenstående ét-guldknap-regel */
.epos-site .btn-ghost.btn-sm{background:#EBD3A6;border-color:#EBD3A6;color:#241C2E}
.epos-site .btn-ghost.btn-sm:hover{background:#EBD3A6;border-color:#EBD3A6;color:#241C2E;transform:translateY(-2px)}

/* Tekstlink: linjen er signalet, ikke farven (efter Aspelin Reitan) */
.epos-site .tlink{display:inline-flex;align-items:center;gap:.85rem;min-height:44px;
  color:var(--ink);font:500 .86rem/1.4 var(--sans);
  border-bottom:1px solid var(--line);padding-block:.35rem;
  transition:border-color 240ms ease}
.epos-site .tlink::after{content:'↗';font-size:.95em;transition:transform 240ms ease}
.epos-site .tlink:hover{border-color:var(--ink)}
.epos-site .tlink:hover::after{transform:translate(2px,-2px)}

/* ---------- fotogrebet (efter BGI, i plum) ----------
   Ét greb på alle fotos, så billeder skudt i vidt forskelligt lys
   kommer ud som én skole. isolation holder blandingen inde i rammen. */
.epos-site .photo{position:relative;overflow:hidden;isolation:isolate;background:var(--plum-deep)}
.epos-site .photo img{width:100%;height:100%;object-fit:cover;
  filter:saturate(var(--photo-sat)) contrast(1.04)}
.epos-site .photo::after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;
  background:var(--plum);mix-blend-mode:color;opacity:var(--photo-tint)}

/* ---------- header ----------
   To tilstande. I hvile er den en samlet bjælke, der flugter med indholdet.
   Når man scroller, opløses bjælken: navigationen fader væk, og de to
   klynger glider ud til hver sin kant. --flow er afstanden ind til
   indholdsspalten og regnes i script.js, fordi den afhænger af skærmbredden.
   Klyngerne flyttes med transform — ikke med bredde eller margin — så
   browseren ikke skal ombryde layoutet på hvert billede.               */
.epos-site .site-header{position:fixed;z-index:80;
  top:var(--frame);left:var(--frame);right:var(--frame);
  border-radius:8px 8px 0 0;
  background:#1C1823D9;backdrop-filter:blur(14px) saturate(1.2);
  border-bottom:1px solid var(--line-soft);
  transition:background-color 480ms ease,backdrop-filter 480ms ease,
             border-color 480ms ease}
.epos-site .header-in{width:100%;padding-inline:var(--gutter);
  min-height:var(--head-h);display:flex;align-items:center;gap:1.5rem;
  transition:min-height 520ms cubic-bezier(.22,.61,.36,1)}

.epos-site .brand,.epos-site .header-right{
  transform:translateX(var(--brand-shift,0px));
  border-radius:999px;padding:.35rem .55rem;background:transparent;
  transition:transform 640ms cubic-bezier(.22,.61,.36,1),
             background-color 460ms ease,backdrop-filter 460ms ease,
             gap 640ms cubic-bezier(.22,.61,.36,1),
             padding 640ms cubic-bezier(.22,.61,.36,1),
             border-radius 640ms cubic-bezier(.22,.61,.36,1)}
.epos-site .brand{--brand-shift:var(--flow,0px);display:inline-flex;align-items:center;gap:.7rem;flex-shrink:0}
.epos-site .header-right{--brand-shift:calc(var(--flow,0px) * -1);
  display:flex;align-items:center;gap:1rem;flex-shrink:0}
.epos-site .brand img{height:34px;width:auto;
  transition:height 640ms cubic-bezier(.22,.61,.36,1)}
.epos-site .brand .wordmark{height:30px}

.epos-site .nav{display:none;margin-inline:auto;gap:1.7rem;
  transition:opacity 380ms ease,transform 380ms ease}
@media(min-width:1080px){.epos-site .nav{display:flex}}
.epos-site .nav a{font:400 .84rem/1 var(--sans);color:#D9D2DC;padding-block:.6rem;
  border-bottom:1px solid transparent;transition:border-color 220ms ease,color 220ms ease}
.epos-site .nav a:hover{color:var(--ink);border-color:var(--line)}

/* Den udflydte tilstand */
.epos-site .site-header.is-floated{background:transparent;backdrop-filter:none;
  border-bottom-color:transparent}
.epos-site .site-header.is-floated .header-in{min-height:88px}
.epos-site .site-header.is-floated .brand,.epos-site .site-header.is-floated .header-right{--brand-shift:0px;
  background:#191521D9;backdrop-filter:blur(12px) saturate(1.2)}
.epos-site .site-header.is-floated .brand{gap:1.4rem}
.epos-site .site-header.is-floated .brand img{height:68px}
.epos-site .site-header.is-floated .brand .wordmark{height:60px}
/* "Bliv elev" er en firkant inde i en pille. Pillens runding skæres af en
   cirkel med radius = klyngens halve højde, så et hjørne af firkanten falder
   uden for kanten, hvis luften omkring den er mindre end den runding. Med
   .35rem/.55rem lå hjørnet 0,6px uden for pillen. Luften her er regnet, så
   hjørnet holder ca. 4px afstand til kanten. */
.epos-site .site-header.is-floated .header-right{margin-left:auto;padding:.5rem 1.1rem}
.epos-site .site-header.is-floated .nav{position:absolute;left:50%;translate:-50% 0;
  opacity:0;transform:translateY(-10px);pointer-events:none}
.epos-site .menu-btn{display:inline-flex;align-items:center;gap:.6rem;min-height:44px;
  padding:.5rem .1rem;border:0;background:none;color:var(--ink);
  font:500 .72rem/1 var(--sans);letter-spacing:.12em;text-transform:uppercase}
.epos-site .menu-btn .bars{width:20px;height:9px;border-block:1px solid currentColor;display:inline-block}

/* ---------- hero ----------
   Ét stort øjeblik. Herefter holder typografien sig under loftet. */
.epos-site .hero{position:relative;min-height:min(94svh,880px);display:flex;align-items:flex-end;
  padding-top:calc(var(--head-h) + var(--s5));padding-bottom:var(--s5);
  border-radius:8px 8px 0 0;overflow:hidden;isolation:isolate}
.epos-site .hero-media{position:absolute;inset:0;z-index:-1}
.epos-site .hero-media img,.epos-site .hero-media video{width:100%;height:100%;object-fit:cover;object-position:52% 46%;
  filter:saturate(var(--photo-sat)) contrast(1.07) brightness(.86);
  will-change:transform}
/* Herovideo — kun på desktop, og kun når JS har sat en rigtig kilde ind
   (se heroVideo() i script.js). Standarden er skjult, så et billede uden
   video, eller en mobil, aldrig venter på en fil, der ikke skal bruges. */
.epos-site .hero-video{display:none}
.epos-site .hero-media.har-video .hero-video{display:block}
.epos-site .hero-media.har-video .hero-stillbillede{display:none}
.epos-site .hero-media::after{content:'';position:absolute;inset:0;z-index:1;
  background:var(--plum);mix-blend-mode:color;opacity:var(--photo-tint)}
/* læsbarhedsslør — ligger over tonen, ikke under */
.epos-site .hero-media::before{content:'';position:absolute;inset:0;z-index:2;
  background:linear-gradient(180deg,#17131F99 0%,#17131F40 38%,#17131FE6 88%),
             linear-gradient(90deg,#17131FCC 0%,#17131F26 62%)}

.epos-site .hero-copy{max-width:min(100%,660px)}
.epos-site .hero h1{font-weight:300;font-size:clamp(2.9rem,8.2vw,7rem);line-height:.97;
  letter-spacing:-.022em;margin:1.5rem 0 0}
.epos-site .hero h1 .gold{color:var(--gold);font-style:italic;font-weight:400}
.epos-site .hero-copy>p{margin-top:1.6rem;max-width:46ch;color:#D5CEDA;font-size:1.02rem}
.epos-site .hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.5rem;margin-top:2.2rem}
.epos-site .hero-foot{position:absolute;left:0;right:0;bottom:0;z-index:3;
  padding:1rem var(--gutter);border-top:1px solid var(--line-soft);
  display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;justify-content:space-between;align-items:center;
  font:400 .72rem/1.6 var(--sans);letter-spacing:.04em;color:#BDB4C4}
.epos-site .hero-foot a{display:inline-flex;align-items:center;gap:.6rem;min-height:44px;color:var(--ink)}

/* ---------- de tre veje ----------
   Ægte rækkefølge (hjem → læring → næste skridt), så numre er reel information. */
.epos-site .paths{border-bottom:1px solid var(--line)}
.epos-site .paths-grid{display:grid;grid-template-columns:1fr}
@media(min-width:860px){.epos-site .paths-grid{grid-template-columns:repeat(3,1fr)}}
.epos-site .path{display:flex;align-items:center;gap:1.4rem;padding:1.6rem 0;
  border-top:1px solid var(--line);transition:background 260ms ease}
@media(min-width:860px){
  .epos-site .path{padding:1.9rem var(--s3);border-top:0;border-left:1px solid var(--line)}
  .epos-site .path:first-child{border-left:0;padding-left:0}
  .epos-site .path:last-child{padding-right:0}
}
.epos-site .path-no{font:400 .8rem/1 var(--sans);color:var(--muted-2);letter-spacing:.1em;
  font-variant-numeric:tabular-nums;transition:color 260ms ease}
.epos-site .path-txt{flex:1;min-width:0}
.epos-site .path-txt strong{display:block;font:400 1.28rem/1.3 var(--serif);color:var(--ink)}
.epos-site .path-txt small{display:block;margin-top:.25rem;font-size:.82rem;color:var(--muted)}
.epos-site .path-go{color:var(--muted-2);transition:transform 260ms ease,color 260ms ease}
.epos-site .path:hover .path-no{color:var(--gold-dim)}
.epos-site .path:hover .path-go{transform:translate(3px,-3px);color:var(--ink)}

/* ---------- sektionshoveder ---------- */
.epos-site .section{padding-block:var(--s6)}
.epos-site .sec-head{display:grid;gap:1.2rem;margin-bottom:var(--s4)}
@media(min-width:900px){.epos-site .sec-head{grid-template-columns:minmax(0,1fr) minmax(0,330px);
  align-items:end;gap:var(--s4)}}
.epos-site .sec-head h2{font-size:clamp(1.8rem,3.4vw,2.75rem);letter-spacing:-.012em;margin-top:.8rem}
.epos-site .sec-head>p{color:var(--muted);font-size:.96rem}

/* ---------- elevprofiler ----------
   Den lille medaljon markerer linket ved hover og tastaturfokus,
   mens profilbilledet bliver ved med at være synligt. */
.epos-site .roles-grid{display:grid;gap:var(--s3);grid-template-columns:repeat(2,1fr)}
@media(min-width:720px){.epos-site .roles-grid{grid-template-columns:repeat(3,1fr)}}
@media(min-width:1100px){.epos-site .roles-grid{grid-template-columns:repeat(5,1fr);gap:1.4rem}}
.epos-site .role{display:flex;flex-direction:column;min-width:0}
.epos-site .role-media{aspect-ratio:4/5;border-radius:3px}
.epos-site .role-medallion{position:absolute;z-index:2;right:.75rem;bottom:.75rem;
  width:40px;height:40px;display:grid;place-items:center;
  border:1px solid var(--gold);border-radius:50%;
  color:var(--gold);font-size:1rem;background:#17131FCC;
  transition:transform 240ms ease,background-color 240ms ease,color 240ms ease}
.epos-site .role:focus-visible .role-medallion{background:var(--gold);color:#241C2E}
@media(hover:hover){
  .epos-site .role:hover .role-medallion{background:var(--gold);color:#241C2E;transform:translate(2px,-2px)}
}
.epos-site .role-body{padding-top:1.1rem}
.epos-site .role-body h2,.epos-site .role-body h3{font-size:1.3rem;font-weight:500;font-family:var(--serif);line-height:1.3}
.epos-site .role-body p{margin-top:.4rem;font-size:.85rem;line-height:1.6;color:var(--muted)}
.epos-site .role-cta{display:inline-block;margin-top:.9rem;font:500 .74rem/1.5 var(--sans);
  color:var(--muted-2);border-bottom:1px solid transparent;padding-bottom:.2rem;
  transition:color 240ms ease,border-color 240ms ease}
.epos-site .role:hover .role-cta{color:var(--ink);border-color:var(--line)}

/* ---------- papirsektionen ----------
   Den ene lyse flade på siden. Fotoet bryder sektionsgrænsen — én gang. */
.epos-site .paper{background:var(--paper);color:#2B2632;
  --ink:#2B2632;--muted:#655C6E;--line:#2B26321F;--line-soft:#2B263212;
  --gold-dim:#6E5423;--muted-2:#7C7286}
.epos-site .paper h1,.epos-site .paper h2,.epos-site .paper h3{color:#2B2632}
.epos-site .two-col{display:grid;gap:var(--s4);align-items:center}
@media(min-width:960px){.epos-site .two-col{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--s5)}}
.epos-site .school-facts{display:flex;flex-wrap:wrap;gap:2.5rem;margin:2.2rem 0;
  padding-top:1.6rem;border-top:1px solid var(--line)}
.epos-site .school-facts div{display:flex;flex-direction:column}
.epos-site .school-facts strong{font:400 2.2rem/1 var(--serif);color:#2B2632}
.epos-site .school-facts span{margin-top:.35rem;font-size:.78rem;color:var(--muted);letter-spacing:.02em}
.epos-site .overhang{position:relative}
/* Fotoet hænger ned over sektionsgrænsen — det eneste sted på siden.
   Kolonnen justeres mod bunden, så den negative margin faktisk trækker
   billedet UD af sektionen i stedet for bare at flytte det i sit felt. */
@media(min-width:960px){
  .epos-site #school .two-col{align-items:end}
  .epos-site .overhang{margin-bottom:calc((var(--s6) + 5rem) * -1)}
}
.epos-site .overhang .photo{aspect-ratio:4/5;border-radius:3px}
.epos-site .overhang figcaption{display:flex;justify-content:space-between;gap:1rem;
  margin-top:.85rem;font-size:.74rem;letter-spacing:.06em;color:var(--muted)}

/* ---------- den fastlåste sektion ----------
   Ét fastlåst øjeblik på hele siden. position:sticky gør fastlåsningen,
   GSAP scrubber ornamentet og teksten mod sektionens forløb. */
.epos-site .craft{position:relative;background:var(--plum)}
.epos-site .craft-rail{padding-block:var(--s5)}
/* Fastlåsningen er fjernet sammen med rosevinduet: den fandtes kun for at
   give ornamentet plads at blive tegnet i. Uden det holdt sektionen bare
   læseren tilbage uden grund. Nu ruller den som alle andre. */
/* Ingen width her. Elementet bærer også .epos-container, og en width ville slå
   spaltens sidemargen ihjel — så løb teksten helt ud i skærmkanten.
   Samme fejl opstod i hero'en; det er tredje regel af sin slags. */
.epos-site .craft-grid{display:grid;gap:var(--s4);align-items:center}
@media(min-width:960px){.epos-site .craft-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--s5)}}
.epos-site .craft-media{position:relative;isolation:isolate}
.epos-site .craft-media .photo{aspect-ratio:1;border-radius:3px}
.epos-site .craft-copy h2{font-size:clamp(1.8rem,3.4vw,2.75rem);letter-spacing:-.012em;margin-top:.8rem}
.epos-site .craft-copy p{margin-top:1.3rem;color:#CFC5D6;max-width:46ch}
.epos-site .craft-copy .tlink{margin-top:2rem;color:#F2ECE4;border-color:#FFFFFF2E}

/* ---------- camps ---------- */
.epos-site .camp{display:grid;grid-template-columns:auto 1fr auto;align-items:center;
  gap:1.2rem 1.8rem;padding:var(--s3) 0;border-top:1px solid var(--line);
  transition:padding-inline 320ms ease}
.epos-site .camp:last-child{border-bottom:1px solid var(--line)}
.epos-site .camp-no{font:400 .8rem/1 var(--sans);color:var(--muted-2);letter-spacing:.1em;
  font-variant-numeric:tabular-nums;align-self:start;padding-top:.6rem}
.epos-site .camp-main{min-width:0}
.epos-site .camp-main h3{font-size:clamp(1.55rem,2.6vw,2.15rem);font-weight:400}
.epos-site .camp-meta{display:block;margin-top:.4rem;font:500 .7rem/1.5 var(--sans);
  letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2)}
.epos-site .camp-main>p{margin-top:.9rem;color:var(--muted);font-size:.92rem;max-width:52ch}
.epos-site .camp-go{color:var(--muted-2);font-size:1.1rem;align-self:start;padding-top:.5rem;
  transition:transform 300ms ease,color 300ms ease}
.epos-site .camp:hover{padding-inline:1.25rem}
.epos-site .camp:hover .camp-go{transform:translate(3px,-3px);color:var(--ink)}

/* ---------- afsluttende CTA ---------- */
.epos-site .cta{background:var(--plum-deep);border-top:1px solid var(--line)}
.epos-site .cta-in{display:grid;gap:var(--s3);align-items:end}
@media(min-width:860px){.epos-site .cta-in{grid-template-columns:minmax(0,1fr) auto;gap:var(--s4)}}
.epos-site .cta h2{font-size:clamp(1.9rem,3.8vw,3rem);letter-spacing:-.015em;margin-top:.8rem}
.epos-site .cta p{margin-top:1rem;color:var(--muted);max-width:44ch}
.epos-site .cta-actions{display:flex;flex-wrap:wrap;gap:.85rem}

/* ---------- footer ---------- */
.epos-site .foot{border-top:1px solid var(--line);padding-block:var(--s5) var(--s3)}
.epos-site .foot-grid{display:grid;gap:var(--s4);grid-template-columns:1fr}
@media(min-width:760px){.epos-site .foot-grid{grid-template-columns:1.4fr 1fr 1fr 1fr;gap:var(--s3)}}
.epos-site .foot h2,.epos-site .foot h4{font:500 .68rem/1.6 var(--sans);letter-spacing:.16em;text-transform:uppercase;
  color:var(--muted-2);margin-bottom:1rem}
.epos-site .foot p,.epos-site .foot li{font-size:.88rem;color:var(--muted)}
.epos-site .foot li+li{margin-top:.5rem}
.epos-site .foot a{border-bottom:1px solid transparent;transition:border-color 220ms ease}
.epos-site .foot a:hover{border-color:var(--line)}
.epos-site .foot-brand img{height:56px;width:auto}
.epos-site .foot-tag{margin-top:1rem;font:italic 400 1.35rem/1.3 var(--serif);color:var(--gold-dim)}
.epos-site .foot-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 2rem;
  margin-top:var(--s5);padding-top:1.3rem;border-top:1px solid var(--line);
  font-size:.74rem;color:var(--muted-2)}

/* ---------- respekt for reduced motion ----------
   Slår bevægelsen helt fra, ikke halvt. GSAP får samme besked i script.js. */
@media(prefers-reduced-motion:reduce){
  .epos-site *,.epos-site *::before,.epos-site *::after{animation:none!important;transition:none!important}
}

/* ---------- tilføjelser ---------- */

/* Den fastlåste sektion skal have noget at rulle igennem, ellers klæber intet.
   ~1,1 skærmfuld ekstra — nok til at ornamentet kan tegnes, kort nok til
   at man ikke føler sig fanget. */


/* Overlappet: fotoet skal ligge OVER den følgende sektions flade,
   ellers forsvinder det bag den. */
.epos-site .overhang{z-index:2}


/* Menu
   Telefon: panelet dækker hele skærmen — der er ikke plads til andet.
   Computer: det lægger sig i højre side som en skuffe, og siden bliver
   stående bag en dæmpet flade. Man skal kunne se, hvad man forlader. */
.epos-site .epos-menu[hidden],.epos-site .menu-skygge[hidden]{display:none}
.epos-site .epos-menu{position:fixed;inset:var(--frame);z-index:120;background:var(--plum-deep);
  border-radius:8px;display:flex;flex-direction:column;
  padding:var(--s3) var(--gutter) var(--s4);overflow-y:auto;overscroll-behavior:contain}
.epos-site .menu-skygge{position:fixed;inset:0;z-index:119;background:#0F0B16;opacity:.62;
  animation:skygge-ind 260ms ease both}
@keyframes skygge-ind{from{opacity:0}to{opacity:.62}}

@media (min-width:721px){
  .epos-site .epos-menu{left:auto;width:min(30rem,100vw);
    border-radius:8px 0 0 8px;border-left:1px solid var(--line);
    box-shadow:-24px 0 60px #0B0812AA;
    padding-inline:clamp(1.8rem,2.6vw,2.8rem);
    animation:menu-ind 320ms cubic-bezier(.22,.61,.36,1) both}
  /* Rammen er kun i venstre kant af panelet — i højre, top og bund skal
     skuffen gå helt ud til skærmen, ellers svæver den. */
  .epos-site .epos-menu{right:0;top:0;bottom:0}
}
@keyframes menu-ind{from{transform:translateX(3rem);opacity:0}to{transform:none;opacity:1}}
@media (prefers-reduced-motion:reduce){
  .epos-site .epos-menu,.epos-site .menu-skygge{animation:none}
}
.epos-site .menu-head{display:flex;align-items:center;justify-content:space-between;
  gap:1rem;min-height:var(--head-h);border-bottom:1px solid var(--line)}
.epos-site .menu-close{border:0;background:none;color:var(--ink);min-height:44px;
  font:500 .74rem/1 var(--sans);letter-spacing:.1em;text-transform:uppercase}
.epos-site .menu-head,.epos-site .menu-smaa,.epos-site .menu-tag{flex-shrink:0}
.epos-site .menu-links{display:flex;flex-direction:column;margin-top:var(--s3);flex:1 0 auto}
.epos-site .menu-links a{font:300 clamp(1.8rem,4vw,2.3rem)/1.25 var(--serif);color:var(--ink);
  padding:.35rem 0;border-bottom:1px solid var(--line-soft);
  transition:color 220ms ease,padding-left 300ms ease}
.epos-site .menu-links a:hover{color:var(--gold);padding-left:.6rem}
.epos-site .menu-tag{margin-top:var(--s3);font:italic 400 1.2rem/1.3 var(--serif);color:var(--gold-dim)}

/* Spring-til-indhold. Skal ligge over alt andet og først vises ved tastaturfokus. */
.epos-site .skip{position:fixed;z-index:300;top:10px;left:10px;
  min-height:44px;display:inline-flex;align-items:center;
  padding:.8rem 1.2rem;border-radius:3px;
  background:var(--gold);color:#241C2E;
  font:500 .8rem/1 var(--sans);
  transform:translateY(-200%);transition:transform 200ms ease}
.epos-site .skip:focus,.epos-site .skip:focus-visible{transform:none}

/* Kompakt knap — bruges i headeren, hvor den fulde højde er for meget. */
.epos-site .btn-sm{min-height:42px;padding:.55rem 1.05rem;font-size:.78rem}

/* ================================================================
   UNDERSIDER
   Forsiden har ét stort øjeblik. Alle andre sider holder sig under
   loftet — h1 topper på 4,2 rem, h2 på 2,4 rem. Det er kontrasten
   til forsiden, der får den til at virke.
   ================================================================ */

.epos-site .sektion{padding-block:var(--s5)}
.epos-site .sektion-taet{padding-block:var(--s3)}
/* To sektioner efter hinanden skal ikke lægge dobbelt luft imellem sig —
   rytmen styres af den førstes padding-bottom alene.
   MEN: en sektion, der tegner sin EGEN flade (baggrund eller kantlinje),
   er en kasse, og en kasse skal have luft indeni foroven. Den mærkes med
   .egen-flade og går fri. Uden undtagelsen vandt denne regel over
   .afslut'ens egen padding (to klasser slår én), så teksten klistrede op
   ad kantlinjen på 43 sider. Enhver ny sektion med egen baggrund eller
   kant skal have .egen-flade. */
.epos-site .sektion + .sektion:not(.egen-flade){padding-top:0}
.epos-site .epos-container.smal{width:min(100% - var(--gutter)*2,64ch);margin-inline:auto}
.epos-site .sek-intro{max-width:58ch;margin-bottom:var(--s3);color:var(--muted)}

/* ---------- sidehero ---------- */
.epos-site .sidehero{position:relative;isolation:isolate;overflow:hidden;
  border-radius:8px 8px 0 0;
  padding-top:calc(var(--head-h) + var(--s4));padding-bottom:var(--s3);
  background:linear-gradient(180deg,#241D31 0%,var(--ground) 100%)}
.epos-site .sidehero.har-foto{padding-top:calc(var(--head-h) + var(--s5));padding-bottom:var(--s4)}
.epos-site .sidehero-medie{position:absolute;inset:0;z-index:-1}
.epos-site .sidehero-medie img{width:100%;height:100%;object-fit:cover;object-position:50% 38%;
  filter:saturate(var(--photo-sat)) contrast(1.04) brightness(.72)}
.epos-site .sidehero-medie::after{content:'';position:absolute;inset:0;z-index:1;
  background:var(--plum);mix-blend-mode:color;opacity:var(--photo-tint)}
.epos-site .sidehero-medie::before{content:'';position:absolute;inset:0;z-index:2;
  background:linear-gradient(180deg,#17131FA6 0%,#17131F4D 40%,#17131FF2 100%)}
.epos-site .sidehero-tekst{max-width:min(100%,720px);margin-top:var(--s3)}
.epos-site .sidehero h1{font-weight:300;font-size:clamp(2.3rem,5.6vw,4.2rem);line-height:1.02;
  letter-spacing:-.02em;margin:.9rem 0 0}
.epos-site .sidehero h1 .gold{color:var(--gold);font-style:italic;font-weight:400}
.epos-site .sidehero .lede{margin-top:1.2rem;max-width:52ch}

/* ---------- brødkrummer ---------- */
.epos-site .krumme ol{display:flex;flex-wrap:wrap;gap:.3rem .6rem;
  font:400 .74rem/1.6 var(--sans);color:var(--muted-2);letter-spacing:.02em}
.epos-site .krumme li+li::before{content:'/';margin-right:.6rem;color:var(--muted-2);opacity:.6}
.epos-site .krumme a{border-bottom:1px solid transparent;transition:border-color 200ms ease}
.epos-site .krumme a:hover{border-color:var(--line)}
.epos-site .krumme [aria-current]{color:var(--muted)}

/* ---------- undernavigation ---------- */
.epos-site .delnav{position:relative;z-index:3;margin-top:var(--s4);
  width:min(100% - var(--gutter)*2,var(--wide));margin-inline:auto;
  display:flex;flex-wrap:wrap;gap:.2rem 1.5rem;
  padding-top:1rem;border-top:1px solid var(--line)}
.epos-site .delnav a{font:400 .82rem/1.5 var(--sans);color:var(--muted);
  padding:.55rem 0;border-bottom:1px solid transparent;
  transition:color 220ms ease,border-color 220ms ease}
.epos-site .delnav a:hover{color:var(--ink)}
.epos-site .delnav a.er-her{color:var(--ink);border-color:var(--gold-dim)}
.epos-site .nav a.er-her{color:var(--ink);border-color:var(--line)}

/* ---------- prosa ---------- */
.epos-site .prosa p{color:var(--muted);margin-top:1.1rem}
.epos-site .prosa p:first-child{margin-top:0}
.epos-site .prosa h2{font-size:clamp(1.6rem,3vw,2.4rem);letter-spacing:-.012em;margin-top:.7rem}
.epos-site .prosa .eyebrow + h2{margin-top:.7rem}
.epos-site .prosa h2 + p{margin-top:1.3rem}
.epos-site .prosa-lead{font-size:1.14rem;line-height:1.68;color:#DCD5DF}
.epos-site .prosa em{font-style:italic;color:#DED7E2}
.epos-site .undertitel{font-family:var(--serif);font-style:italic;font-size:clamp(1.3rem,2.6vw,1.8rem);
  color:var(--gold-dim);line-height:1.3}

/* ---------- to kolonner ---------- */
.epos-site .to-kol{display:grid;gap:var(--s4);align-items:center}
@media(min-width:960px){.epos-site .to-kol{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--s5);
  align-items:end}}
.epos-site .split-tekst h2{font-size:clamp(1.6rem,3vw,2.4rem);letter-spacing:-.012em;margin-top:.7rem}
.epos-site .split-tekst p{margin-top:1.1rem;color:var(--muted)}
.epos-site .split-tekst .tlink{margin-top:1.8rem}

/* ---------- figur ---------- */
.epos-site .figur{position:relative}
.epos-site .figur .photo{aspect-ratio:4/5;border-radius:3px}
.epos-site .figur figcaption{display:flex;justify-content:space-between;gap:1rem;
  margin-top:.85rem;font-size:.74rem;letter-spacing:.06em;color:var(--muted-2)}
.epos-site .epos-container.smal .figur .photo{aspect-ratio:16/10}
/* Ét overhæng per side — billedet hænger ned over sektionsgrænsen. */
@media(min-width:960px){.epos-site .figur.overhaeng{z-index:2;margin-bottom:calc(var(--s4) * -1)}}

/* ---------- kort ---------- */
.epos-site .sek-hoved{display:grid;gap:1.1rem;margin-bottom:var(--s3)}
@media(min-width:900px){.epos-site .sek-hoved{grid-template-columns:minmax(0,1fr) minmax(0,340px);
  align-items:end;gap:var(--s4)}}
.epos-site .sek-hoved h2{font-size:clamp(1.6rem,3vw,2.4rem);letter-spacing:-.012em;margin-top:.7rem}
.epos-site .sek-hoved > p{color:var(--muted);font-size:.95rem}
.epos-site .kort-gitter{display:grid;gap:1px;background:var(--line);border-block:1px solid var(--line)}
@media(min-width:720px){.epos-site .kort-gitter.kol-2{grid-template-columns:1fr 1fr}
  .epos-site .kort-gitter.kol-3{grid-template-columns:repeat(3,1fr)}}
.epos-site .kort{display:flex;flex-direction:column;gap:.6rem;padding:var(--s3) 1.5rem;
  background:var(--ground);transition:background-color 300ms ease}
.epos-site .paper .kort{background:var(--paper)}
.epos-site a.kort:hover{background:#FFFFFF08}
.epos-site .kort h2,.epos-site .kort h3{font-size:1.35rem;font-weight:500;font-family:var(--serif);line-height:1.25}
.epos-site .kort p{font-size:.9rem;line-height:1.65;color:var(--muted)}
.epos-site .kort-note{display:block;margin-top:.5rem;font-size:.76rem;letter-spacing:.04em;color:var(--muted-2)}
.epos-site .kort-cta{margin-top:auto;padding-top:.9rem;font:500 .76rem/1.5 var(--sans);color:var(--muted-2);
  transition:color 240ms ease}
.epos-site .kort-cta::after{content:' ↗'}
.epos-site a.kort:hover .kort-cta{color:var(--ink)}

/* ---------- trin, med tråden tegnet ned langs dem ---------- */
.epos-site .trin-rul{position:relative;padding-left:3.2rem}
.epos-site .traad-lodret{position:absolute;left:1.05rem;top:.4rem;width:4px;
  height:calc(100% - .8rem);overflow:visible}
/* Højden skal sættes eksplicit. En SVG har et iboende sideforhold fra sin
   viewBox, så top+bottom alene strækker den ikke — browseren regner højden
   ud fra forholdet (4:100) og låser tråden til 100 px. Med height i procent
   følger den rullens fulde højde. */
.epos-site .traad{fill:none;stroke:var(--gold);stroke-width:1.2;stroke-linecap:round;
  vector-effect:non-scaling-stroke;opacity:.85}
.epos-site .trin-liste{display:grid;gap:var(--s3)}
.epos-site .trin{position:relative}
.epos-site .trin-nr{position:absolute;left:-3.2rem;top:.1rem;width:2.1rem;height:2.1rem;
  display:grid;place-items:center;border:1px solid var(--gold-dim);border-radius:999px;
  background:var(--ground);color:var(--gold);
  font:400 .95rem/1 var(--serif);font-variant-numeric:tabular-nums}
.epos-site .trin-krop h3{font-size:1.4rem;font-weight:500}
.epos-site .trin-krop p{margin-top:.6rem;color:var(--muted);font-size:.95rem}
.epos-site .trin-krop .tlink{margin-top:1rem}

/* ---------- kapitler (historie-siden) ---------- */
.epos-site .kapitel-rul{position:relative;padding-left:2.6rem}
.epos-site .traad-lodret.lang{left:.55rem}
.epos-site .kapitler{display:grid;gap:var(--s4)}
.epos-site .kapitel{position:relative}
.epos-site .kapitel::before{content:'';position:absolute;left:-2.6rem;top:.75rem;
  width:9px;height:9px;border-radius:999px;background:var(--gold);
  box-shadow:0 0 0 4px var(--ground)}
.epos-site .kapitel h2{font-size:clamp(1.5rem,2.8vw,2.1rem);letter-spacing:-.01em}
.epos-site .kapitel p{margin-top:1rem;color:var(--muted)}

/* ---------- citat ---------- */
.epos-site .citat{border-left:2px solid var(--gold-dim);padding:.4rem 0 .4rem 1.6rem}
.epos-site .citat p{font-family:var(--serif);font-style:italic;
  font-size:clamp(1.25rem,2.6vw,1.75rem);line-height:1.4;color:var(--ink)}
.epos-site .citat footer{margin-top:1rem;font:400 .8rem/1.5 var(--sans);
  letter-spacing:.06em;color:var(--muted-2);font-style:normal}

/* ---------- faktaboks ---------- */
.epos-site .fakta{border:1px solid var(--line);padding:var(--s3) 1.6rem}
.epos-site .fakta h2{font-size:1.5rem;font-weight:500;margin-top:.6rem}
.epos-site .fakta dl{margin:1.4rem 0 0;display:grid;gap:0}
.epos-site .fakta dl > div{display:grid;gap:.2rem 1.4rem;padding:.85rem 0;border-top:1px solid var(--line)}
@media(min-width:620px){.epos-site .fakta dl > div{grid-template-columns:8.5rem 1fr}}
.epos-site .fakta dt{font:500 .7rem/1.6 var(--sans);letter-spacing:.12em;text-transform:uppercase;
  color:var(--muted-2);padding-top:.15rem}
.epos-site .fakta dd{margin:0;font-size:.92rem;line-height:1.65;color:var(--muted)}
.epos-site .fakta a{border-bottom:1px solid var(--line)}

/* ---------- FAQ ---------- */
.epos-site .faq-liste{border-top:1px solid var(--line)}
.epos-site .faq-punkt{border-bottom:1px solid var(--line)}
.epos-site .faq-punkt h2,.epos-site .faq-punkt h3{margin:0;font-family:var(--sans);font-size:1rem;font-weight:500}
.epos-site .faq-sp{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;
  width:100%;min-height:64px;padding:1.1rem 0;border:0;background:none;text-align:left;
  color:var(--ink);font:500 1rem/1.5 var(--sans);transition:color 220ms ease}
.epos-site .faq-sp:hover{color:var(--gold)}
.epos-site .faq-ikon{position:relative;flex-shrink:0;width:14px;height:14px}
.epos-site .faq-ikon::before,.epos-site .faq-ikon::after{content:'';position:absolute;background:currentColor;
  transition:transform 320ms cubic-bezier(.22,.61,.36,1),opacity 320ms ease}
.epos-site .faq-ikon::before{top:6px;left:0;width:14px;height:1.5px}
.epos-site .faq-ikon::after{left:6px;top:0;width:1.5px;height:14px}
.epos-site .faq-sp[aria-expanded="true"] .faq-ikon::after{transform:rotate(90deg);opacity:0}
.epos-site .faq-sv{overflow:hidden}
.epos-site .faq-sv p{padding:0 0 1.4rem;max-width:60ch;color:var(--muted);font-size:.95rem}
.epos-site .faq-sv a{color:var(--ink);border-bottom:1px solid var(--line)}

/* ---------- medarbejdere ---------- */
.epos-site .hold-gitter{display:grid;gap:1px;background:var(--line);
  border-block:1px solid var(--line);grid-template-columns:1fr 1fr}
@media(min-width:720px){.epos-site .hold-gitter{grid-template-columns:repeat(3,1fr)}}
@media(min-width:1080px){.epos-site .hold-gitter{grid-template-columns:repeat(4,1fr)}}
.epos-site .person{display:flex;background:var(--ground)}
.epos-site .person-stille,.epos-site .person-aabn{display:flex;flex-direction:column;align-items:flex-start;
  gap:.15rem;padding:var(--s3) 1.3rem;width:100%}
.epos-site .person-aabn{flex:1;background:none;border:0;color:inherit;font:inherit;
  text-align:left;cursor:pointer}
.epos-site .person-foto{display:block;width:100%;margin-bottom:1rem}
/* display:block er ikke pynt. Et inline-element er en skrøbelig ramme for et
   absolut placeret barn — Safari opløser den anderledes end Chrome, og
   hover-billedet kan ende uden højde. Blokken gør rammen entydig. */
.epos-site .person-foto .photo{display:block;position:relative;aspect-ratio:1;border-radius:3px}
.epos-site .foto-hover{position:absolute;top:0;right:0;bottom:0;left:0;
  width:100%;height:100%;z-index:2;opacity:0;
  transition:opacity 480ms ease}
/* Plamagen lægger sig over begge billeder, ikke imellem dem. Ellers skiftede
   hover-billedet både motiv og farvegreb på én gang. */
.epos-site .person-foto .photo::after{z-index:3}
.epos-site .foto-initialer{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;
  font:400 2.4rem/1 var(--serif);letter-spacing:.06em;color:var(--gold)}
.epos-site .person:hover .foto-hover,.epos-site .person:focus-within .foto-hover{opacity:1}
.epos-site .person-navn{font-family:var(--serif);font-size:1.12rem;font-weight:500;line-height:1.3;color:var(--ink)}
.epos-site .person-rolle{font-size:.8rem;color:var(--muted-2)}

/* Mærket i billedets hjørne siger, at kortet kan åbnes — samme cirkel som
   elevrollekortene bruger, en tak mindre. Ligger over plamagen (z-index 3). */
.epos-site .person-medaljon{position:absolute;z-index:4;right:.6rem;bottom:.6rem;
  width:32px;height:32px;display:grid;place-items:center;
  border:1px solid var(--gold);border-radius:50%;color:var(--gold);
  font-size:1.1rem;line-height:1;background:#17131FCC;
  transition:transform 240ms ease,background-color 240ms ease,color 240ms ease}
.epos-site .person-aabn:focus-visible .person-medaljon{background:var(--gold);color:#241C2E}
@media(hover:hover){
  .epos-site .person-aabn:hover .person-medaljon{background:var(--gold);color:#241C2E;
    transform:translate(2px,-2px)}
}
.epos-site .person-mere{margin-top:.55rem;font:500 .74rem/1.5 var(--sans);color:var(--muted-2);
  border-bottom:1px solid transparent;transition:color 220ms ease,border-color 220ms ease}
.epos-site .person-aabn:hover .person-mere,.epos-site .person-aabn:focus-visible .person-mere{
  color:var(--ink);border-color:var(--line)}

/* ---------- medarbejderpanel ----------
   Et ægte <dialog>. Browseren giver Escape, fokusfælde og inert baggrund
   gratis; her står kun formen. */
.epos-site .medarb{width:min(58rem,calc(100vw - 2rem));max-height:86vh;padding:0;
  border:1px solid var(--line);border-radius:6px;overflow:auto;
  background:var(--plum-deep);color:var(--ink)}
.epos-site .medarb::backdrop{background:#0F0B16E0}
.epos-site .medarb form{position:sticky;top:0;z-index:5;display:flex;justify-content:flex-end;
  padding:.7rem .7rem 0}
.epos-site .medarb-luk{width:40px;height:40px;display:grid;place-items:center;cursor:pointer;
  border:1px solid var(--line);border-radius:50%;background:#17131FCC;
  color:var(--ink);font-size:1.25rem;line-height:1;
  transition:border-color 220ms ease,color 220ms ease}
.epos-site .medarb-luk:hover{border-color:var(--gold);color:var(--gold)}
.epos-site .medarb-ind{display:grid;gap:var(--s3);padding:0 var(--s3) var(--s4)}
@media(min-width:860px){
  .epos-site .medarb-ind{grid-template-columns:16rem minmax(0,1fr);gap:var(--s4);
    padding:0 var(--s4) var(--s4)}
}
.epos-site .medarb-fotos{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;align-self:start}
@media(min-width:860px){.epos-site .medarb-fotos{grid-template-columns:1fr}}
.epos-site .medarb-fotos .photo{display:block;position:relative;aspect-ratio:1;border-radius:3px}
.epos-site .medarb-tekst h2{font-family:var(--serif);font-weight:400;font-size:2rem;
  line-height:1.15;margin:.35rem 0 var(--s2)}
.epos-site .medarb-tekst p{margin-bottom:1rem;max-width:62ch;
  font-size:.95rem;line-height:1.75;color:var(--muted)}
.epos-site .medarb-tekst p:last-child{margin-bottom:0}
.epos-site .medarb-interesser{margin-top:var(--s3);padding-top:var(--s3);
  border-top:1px solid var(--line)}
.epos-site .maerker{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.8rem}
.epos-site .maerker li{padding:.34rem .85rem;border:1px solid var(--line);border-radius:999px;
  font:400 .78rem/1.4 var(--sans);color:var(--muted-2)}

/* kontaktsidens medarbejderliste — samme folk, anden opgave */
.epos-site .person-liste{border-top:1px solid var(--line)}
.epos-site .person-linje{display:grid;gap:.15rem .5rem;padding:1.1rem 0;border-bottom:1px solid var(--line)}
@media(min-width:760px){.epos-site .person-linje{grid-template-columns:15rem 11rem 1fr;align-items:baseline}}
.epos-site .person-kontakt{font-size:.88rem;color:var(--muted)}
.epos-site .person-kontakt a{border-bottom:1px solid var(--line)}
.epos-site .person-kontakt a:hover{border-color:var(--ink);color:var(--ink)}
/* Adskilleren mellem mail og telefon er kun tekst, når de to links står i
   løbende tekst (computer). På telefon bliver hvert link sin egen knap i en
   søjle — dér ville en tekstprik mellem dem stå alene på sin egen linje. */
@media(min-width:721px){.epos-site .person-kontakt a+a::before{content:' · ';color:var(--muted-2)}}


/* ---------- dokumentregister ----------
   Samme rækkesprog som .camp: hårfin streg, serifnavn, versalmeta og en
   pil til højre. Rækken vokser i polstring ved hover — ikke i farve.
   En række uden adresse er ikke et link. Den får en stiplet kant og
   ordene "Link mangler", så et hul i materialet kan ses, ikke gættes. */
.epos-site .dok-liste{border-top:1px solid var(--line)}
.epos-site .dok{display:grid;grid-template-columns:1fr auto;align-items:start;
  gap:.3rem 1.6rem;padding:1.5rem 0;border-bottom:1px solid var(--line);
  transition:padding-inline 320ms ease}
.epos-site .dok-navn{grid-column:1;font-family:var(--serif);font-size:1.32rem;font-weight:500;
  line-height:1.3;color:var(--ink)}
.epos-site .dok-om{grid-column:1;margin-top:.35rem;font-size:.92rem;line-height:1.65;
  color:var(--muted);max-width:62ch}
.epos-site .dok-om a{border-bottom:1px solid var(--line)}
.epos-site .dok-meta{grid-column:1;margin-top:.6rem;font:500 .7rem/1.5 var(--sans);
  letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2)}
.epos-site .dok-pil{grid-column:2;grid-row:1 / span 3;align-self:start;color:var(--muted-2);
  font-size:1.05rem;padding-top:.25rem;
  transition:transform 300ms ease,color 300ms ease}
.epos-site .dok-savn{grid-column:2;grid-row:1 / span 3;align-self:start;margin-top:.15rem;
  padding:.3rem .7rem;border:1px dashed #B98A8455;background:#B98A840F;
  color:#D8B4AE;font:500 .68rem/1.5 var(--sans);letter-spacing:.1em;
  text-transform:uppercase;white-space:nowrap}
.epos-site .dok-mangler .dok-navn{color:var(--muted)}
@media(hover:hover){
  .epos-site .dok:hover{padding-inline:1.25rem}
  .epos-site .dok:hover .dok-pil{transform:translate(3px,-3px);color:var(--ink)}
  .epos-site .dok-mangler:hover{padding-inline:0}
}

/* ---------- synlig advarsel ----------
   Bruges hvor indholdet ikke er i orden endnu. Den skal kunne ses uden at
   læse — derfor samme dæmpede rødtone som formularadvarslen, ikke guld.
   Guld betyder "her skal du klikke"; rødt betyder "her mangler noget". */
.epos-site .stor-advarsel{margin:0;padding:1.1rem 1.3rem;border-left:2px solid #B98A84;
  background:#B98A840F;color:#D8B4AE;font-size:.92rem;line-height:1.65}
.epos-site .stor-advarsel strong{color:#E7C6C1;font-weight:600}

/* ---------- portrætter ----------
   Bestyrelsen. Medaljonen er den samme som på medarbejderlisten, men her
   er der en tekst at læse, så rækken er vandret og bred i stedet for et
   gitter af kort. */
.epos-site .portraet-liste{border-top:1px solid var(--line)}
.epos-site .portraet{display:grid;gap:1rem 1.8rem;padding:var(--s3) 0;
  border-bottom:1px solid var(--line)}
@media(min-width:760px){.epos-site .portraet{grid-template-columns:auto 1fr;align-items:start}}
.epos-site .portraet-medaljon{display:grid;place-items:center;width:3.4rem;height:3.4rem;
  border:1px solid var(--gold-dim);border-radius:999px;color:var(--gold);
  font:400 1.05rem/1 var(--serif);letter-spacing:.06em}
.epos-site .portraet-krop{min-width:0}
.epos-site .portraet-rolle{display:block;font:500 .7rem/1.5 var(--sans);letter-spacing:.12em;
  text-transform:uppercase;color:var(--muted-2)}
.epos-site .portraet-navn{display:block;margin-top:.3rem;font-family:var(--serif);
  font-size:1.6rem;font-weight:500;line-height:1.25;color:var(--ink)}
.epos-site .portraet-krop p{margin-top:.8rem;color:var(--muted);font-size:.95rem;max-width:64ch}

/* ---------- udtalelser ----------
   Samme greb som .citat, men i en serie: guldstregen ville blive til en
   stribe, hvis den stod seks gange. Derfor bærer serifgraden citatet, og
   kun afsenderen får en linje under sig. */
.epos-site .stemmer{display:grid;gap:var(--s4)}
.epos-site .stemme{margin:0;padding:0}
.epos-site .stemme p{font-family:var(--serif);font-size:clamp(1.25rem,2.4vw,1.6rem);
  font-style:italic;line-height:1.5;color:var(--ink);margin:0 0 .8rem}
.epos-site .stemme footer{margin-top:1.1rem;padding-top:.9rem;border-top:1px solid var(--line);
  font:500 .74rem/1.5 var(--sans);letter-spacing:.12em;text-transform:uppercase;
  color:var(--muted-2)}
.epos-site .stemme footer span{letter-spacing:.06em;text-transform:none;color:var(--muted-2);
  font-weight:400}
.epos-site .stemme footer span::before{content:' · '}

/* ---------- begivenheder ----------
   Datoen er det, folk leder efter, så den står først og i tabeltal, så
   kolonnen flugter hele vejen ned. */
.epos-site .begiv-liste{border-top:1px solid var(--line)}
.epos-site .begiv{display:grid;grid-template-columns:1fr auto;gap:.4rem 1.8rem;
  padding:1.5rem 0;border-bottom:1px solid var(--line);
  transition:padding-inline 320ms ease}
@media(min-width:760px){
  .epos-site .begiv{grid-template-columns:13rem 1fr auto;align-items:baseline}
}
.epos-site .begiv-dato{font:500 .78rem/1.6 var(--sans);letter-spacing:.1em;text-transform:uppercase;
  color:var(--muted-2);font-variant-numeric:tabular-nums}
.epos-site .begiv-krop{min-width:0}
.epos-site .begiv-navn{display:block;font-family:var(--serif);font-size:1.45rem;font-weight:500;
  line-height:1.25;color:var(--ink)}
.epos-site .begiv-om{display:block;margin-top:.45rem;font-size:.92rem;line-height:1.65;
  color:var(--muted);max-width:58ch}
.epos-site .begiv-note{display:block;margin-top:.5rem;padding:.35rem .7rem;
  border:1px dashed #B98A8455;background:#B98A840F;color:#D8B4AE;font-size:.82rem}
.epos-site .begiv-pil{color:var(--muted-2);font-size:1.05rem;
  transition:transform 300ms ease,color 300ms ease}
@media(hover:hover){
  .epos-site a.begiv:hover{padding-inline:1.25rem}
  .epos-site a.begiv:hover .begiv-pil{transform:translate(3px,-3px);color:var(--ink)}
}

/* ---------- Epos-sangen ----------
   Strofebygningen skal kunne ses. Versene står i serif, omkvædet rykket
   ind og i kursiv — det er hele forskellen, og den er nok. */
.epos-site .sang{border-left:1px solid var(--line);padding-left:clamp(1.2rem,4vw,2.4rem)}
.epos-site .vers,.epos-site .omkvaed{font-family:var(--serif);font-size:clamp(1.15rem,2.2vw,1.42rem);
  line-height:1.7;color:var(--ink);margin:0}
.epos-site .vers{margin-top:var(--s3)}
.epos-site .vers:first-child{margin-top:0}
.epos-site .omkvaed{margin-top:1.1rem;padding-left:clamp(1rem,3vw,2rem);font-style:italic;
  color:var(--muted)}
.epos-site .sang-credits{margin-top:var(--s4);padding-top:1rem;border-top:1px solid var(--line);
  font:500 .72rem/1.6 var(--sans);letter-spacing:.12em;text-transform:uppercase;
  color:var(--muted-2)}

/* ---------- punktopstilling ----------
   Bruges hvor kilden er en liste og ikke løbende tekst. Markøren er en
   hårfin streg i venstre margen — samme signal som links bruger. */
.epos-site .punktliste{list-style:none;margin:var(--s3) 0 0;padding:0;display:grid;gap:1.1rem}
.epos-site .punktliste li{position:relative;padding-left:1.6rem;color:var(--muted);
  font-size:.98rem;line-height:1.75}
.epos-site .punktliste li::before{content:'';position:absolute;left:0;top:.85em;
  width:.75rem;height:1px;background:var(--line);
  box-shadow:0 0 0 0 transparent}
.epos-site .punktliste strong{color:var(--ink);font-weight:600}
.epos-site .punktliste a{border-bottom:1px solid var(--line)}

/* ---------- film ----------
   Filmene lå bag cookiesamtykke på den gamle side, så adresserne kom ikke
   med. En post uden adresse får en tom ramme med en note — ikke en
   indlejring, der ville være gættet. Rammen holder 16:9, så listen ikke
   hopper, når adresserne kommer ind. */
.epos-site .film-liste{list-style:none;margin:0;padding:0;display:grid;gap:var(--s4)}
@media(min-width:900px){.epos-site .film-liste{grid-template-columns:1fr 1fr;gap:var(--s4) var(--s3)}}
.epos-site .film h2,.epos-site .film h3{font-family:var(--serif);font-size:1.5rem;font-weight:500;line-height:1.25;
  margin:0 0 1rem}
.epos-site .film p{margin-top:1rem;color:var(--muted);font-size:.92rem;line-height:1.7;
  max-width:58ch}
.epos-site .film-ramme{position:relative;aspect-ratio:16/9;background:var(--plum-deep);
  border:1px solid var(--line);overflow:hidden}
.epos-site .film-ramme iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
/* Advarslen står én gang øverst på siden. Ni røde kasser derunder ville
   råbe det samme ni gange — så markeringen her er dæmpet og stiplet. */
.epos-site .film-savn{display:inline-block;margin:0;padding:0 0 .25rem;
  border-bottom:1px dashed #B98A8466;color:var(--muted-2);
  font:500 .72rem/1.5 var(--sans);letter-spacing:.1em;text-transform:uppercase}
/* En film uden ramme har intet at holde højden — så bærer titlen linjen,
   og listen bliver en liste over film i stedet for en række huller. */
.epos-site .film:has(.film-savn) h2,.epos-site .film:has(.film-savn) h3{margin-bottom:.7rem}

/* ---------- naboer ---------- */
.epos-site .naboer{display:grid;gap:1px;background:var(--line);border-block:1px solid var(--line)}
@media(min-width:620px){.epos-site .naboer{grid-template-columns:1fr 1fr}}
.epos-site .nabo{display:flex;flex-direction:column;gap:.3rem;padding:1.4rem 1.5rem;background:var(--ground);
  transition:background-color 280ms ease}
.epos-site .nabo:hover{background:#FFFFFF08}
.epos-site .nabo span{font:500 .66rem/1.5 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2)}
.epos-site .nabo strong{font-family:var(--serif);font-size:1.3rem;font-weight:500;color:var(--ink)}
.epos-site .nabo-n{text-align:right}

/* ---------- formularer ---------- */
.epos-site .formkort{border:1px solid var(--line);padding:var(--s3) 1.6rem}
.epos-site .formkort h2{font-size:1.6rem;font-weight:500;margin-top:.6rem}
.epos-site .formkort > p{margin-top:1rem;color:var(--muted);font-size:.95rem}
.epos-site .form-advarsel{margin-top:1rem;padding:.75rem 1rem;border:1px dashed #B98A8455;
  background:#B98A840F;color:#D8B4AE;font-size:.84rem;line-height:1.55}
.epos-site .form{margin-top:1.6rem;display:grid;gap:1.1rem}
.epos-site .form-vandret{align-items:end}
@media(min-width:620px){.epos-site .form-vandret{grid-template-columns:1fr auto}}
.epos-site .form-felt{display:grid;gap:.45rem}
.epos-site .form-felt label{font:500 .72rem/1.5 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--muted-2)}
.epos-site .form-felt input,.epos-site .form-felt textarea{width:100%;padding:.85rem 1rem;
  background:#FFFFFF08;border:1px solid var(--line);border-radius:3px;
  color:var(--ink);font:400 .95rem/1.5 var(--sans);transition:border-color 220ms ease}
.epos-site .form-felt input:focus,.epos-site .form-felt textarea:focus{outline:none;border-color:var(--gold-dim)}
.epos-site .form-felt textarea{resize:vertical;min-height:120px}
.epos-site .form button{justify-self:start}

/* ---------- afsluttende CTA ---------- */
.epos-site .sektion.afslut{background:var(--plum-deep);border-top:1px solid var(--line);padding-block:var(--s5)}
.epos-site .afslut-ind{display:grid;gap:var(--s3);align-items:end}
@media(min-width:860px){.epos-site .afslut-ind{grid-template-columns:minmax(0,1fr) auto;gap:var(--s4)}}
.epos-site .afslut h2{font-size:clamp(1.7rem,3.2vw,2.5rem);letter-spacing:-.015em;margin-top:.8rem}
.epos-site .afslut p{margin-top:1rem;color:var(--muted);max-width:46ch}
.epos-site .afslut p a{border-bottom:1px solid var(--line)}
.epos-site .knap-raekke{display:flex;flex-wrap:wrap;gap:.85rem}

/* menuens små links */
.epos-site .menu-smaa{display:flex;flex-wrap:wrap;gap:1.4rem;margin-top:var(--s3);
  padding-top:1.2rem;border-top:1px solid var(--line)}
.epos-site .menu-smaa a{font:400 .86rem/1.5 var(--sans);color:var(--muted);
  border-bottom:1px solid transparent;transition:border-color 220ms ease,color 220ms ease}
.epos-site .menu-smaa a:hover{color:var(--ink);border-color:var(--line)}

/* Stille baggrundsornament i hero'en på de sider, der hverken har foto
   eller eget signaturgreb. Tekstur, ikke signatur — derfor statisk og svag. */
.epos-site .sidehero.har-ornament{overflow:hidden}
.epos-site .hero-orn{position:absolute;z-index:-1;pointer-events:none;
  right:-14%;top:50%;transform:translateY(-50%);
  width:min(58vw,620px);height:auto;
  fill:none;stroke:var(--gold);stroke-width:1;
  vector-effect:non-scaling-stroke;opacity:.10}
@media(max-width:860px){.epos-site .hero-orn{right:-38%;opacity:.07}}

/* ---------- Instagram ---------- */
.epos-site .ig-blok{border:1px solid var(--line);padding:var(--s3) 1.6rem}
.epos-site .ig-blok h2{font-size:1.6rem;font-weight:500;margin-top:.6rem}
.epos-site .ig-blok > p{margin-top:.9rem;color:var(--muted);font-size:.95rem}
.epos-site .ig-link{display:inline-flex;align-items:center;gap:.7rem;margin-top:1.3rem;min-height:48px;
  padding:.7rem 1.2rem;border:1px solid var(--line);border-radius:3px;
  font:500 .86rem/1 var(--sans);color:var(--ink);
  transition:border-color 240ms ease}
.epos-site .ig-link:hover{border-color:var(--ink)}
.epos-site .ig-ikon{width:18px;height:18px;flex-shrink:0}
.epos-site .ig-link[aria-disabled="true"]{opacity:.75}

/* ================================================================
   TELEFON
   Ikke en sammenklappet desktop — beslutninger truffet for hånden
   og tommelfingeren. Filosofien er den samme: guld fire steder, ét
   signaturgreb per side, linjen er linkets signal, bevægelse må
   aldrig forsinke information.

   Det, der ændrer sig på telefon, er hvad der er RIGTIGT, ikke hvad
   der er muligt: rækker frem for klemte kort, ét tilbage-link frem
   for en hel sti, telefonnumre som knapper frem for tekst.
   ================================================================ */

/* ---------- 1. Berøring før mus ----------
   Alle hover-tilstande gemmes bag (hover:hover). En telefon har ingen
   markør, og en hover-regel uden modsvar er en affordance, der aldrig
   indfries. Hvor greb betød noget, får berøring sit eget. */
@media (hover: none){
  .epos-site .kort:hover,.epos-site a.kort:hover,.epos-site .camp:hover,.epos-site .person:hover,.epos-site .nabo:hover,.epos-site .faq-sp:hover,.epos-site .path:hover{ background:inherit }
  .epos-site .camp:hover{ padding-inline:0 }
  .epos-site .camp:active,.epos-site a.kort:active,.epos-site .nabo:active,.epos-site .path:active{ background:#FFFFFF0F }
  /* medaljonen fyldes aldrig uden markør — så den er fyldt fra start */
  .epos-site .role-medallion{ background:var(--gold); color:#241C2E; border-color:var(--gold) }
}

@media (max-width: 720px){

  /* ---------- 2. Rammen og rytmen ----------
     Rammen bliver, men tynd: signaturet skal kunne ses uden at æde
     bredde. Afstandene strammes — 21 sider med desktop-luft bliver
     til uendelig rulning på en telefon. */
  :root{
    --frame:6px;
    --gutter:1.15rem;
    --s3:1.5rem; --s4:2.5rem; --s5:3.6rem; --s6:4.75rem;
    --head-h:68px;
  }
  .epos-site .frame{border-radius:6px}
  .epos-site .site-header{border-radius:6px 6px 0 0}
  .epos-site .hero,.epos-site .sidehero{border-radius:6px 6px 0 0}

  /* ---------- 3. Typografi ----------
     Labels var nede på 10,9 px. På en telefon i dagslys er det ikke
     tekst, det er tekstur. Alt under 13 px hæves, og sporingen
     strammes — bred sporing i lille grad falder fra hinanden. */
  .epos-site .eyebrow{font-size:.76rem;letter-spacing:.15em}
  .epos-site .kort-note,.epos-site .camp-meta,.epos-site .role-cta,.epos-site .person-rolle,.epos-site .krumme ol,.epos-site .figur figcaption,.epos-site .nabo span,.epos-site .foot-bottom,.epos-site .hero-foot{font-size:.8rem}
  .epos-site .kort p,.epos-site .person-navn{font-size:.95rem}
  .epos-site .fakta dt{font-size:.72rem;letter-spacing:.1em}
  .epos-site .fakta dd,.epos-site .person-kontakt{font-size:.95rem}
  .epos-site .prosa p,.epos-site .split-tekst p,.epos-site .afslut p,.epos-site .sek-hoved > p{font-size:1.02rem;line-height:1.7}
  .epos-site .sidehero h1{font-size:clamp(2.4rem,10vw,3rem);line-height:1.05}
  .epos-site .hero h1{font-size:clamp(2.9rem,13vw,3.4rem);line-height:1.02}
  .epos-site .sek-hoved h2,.epos-site .prosa h2,.epos-site .split-tekst h2,.epos-site .kapitel h2{font-size:1.6rem}
  .epos-site .afslut h2{font-size:1.85rem}

  /* ---------- 4. Klikmål ----------
     44 px er ikke en anbefaling, det er størrelsen på en tommelfinger.
     Alt, der kan trykkes, får den højde — også når teksten er kort. */
  .epos-site .delnav a,.epos-site .menu-smaa a,.epos-site .foot a,.epos-site .krumme a,.epos-site .person-kontakt a,.epos-site .ig-link{
    min-height:44px;display:inline-flex;align-items:center}
  .epos-site .foot li{margin-top:0}
  .epos-site .foot li a{padding-block:.35rem}
  .epos-site .btn,.epos-site .btn-sm{min-height:48px;padding-inline:1.25rem}
  .epos-site .knap-raekke{display:grid;gap:.7rem}
  .epos-site .knap-raekke .btn{width:100%}

  /* ---------- 5. Brødkrummen bliver ét tilbage-link ----------
     En sti på tre led fylder to linjer og bliver aldrig trykket.
     På telefon er der kun ét spørgsmål: hvordan kommer jeg tilbage? */
  .epos-site .krumme li{display:none}
  .epos-site .krumme li:nth-last-child(2){display:block}
  .epos-site .krumme li:nth-last-child(2)::before{content:'‹';margin-right:.45rem;opacity:1}
  .epos-site .krumme li+li::before{margin-right:.45rem}
  .epos-site .krumme a{font-size:.86rem;color:var(--muted)}

  /* ---------- 6. Undernavigationen ruller ----------
     Fem punkter ombrød til to linjer og så rodet ud. Nu er det ét
     spor, man skubber — og den aktuelle side står altid først. */
  .epos-site .delnav{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;
    gap:0 1.4rem;margin-top:var(--s3);
    -webkit-overflow-scrolling:touch;scroll-snap-type:x proximity}
  .epos-site .delnav::-webkit-scrollbar{display:none}
  .epos-site .delnav a{flex:0 0 auto;scroll-snap-align:start;white-space:nowrap}

  /* ---------- 7. Elevprofilerne bliver rækker ----------
     To kolonner gav 154 px brede kort, hvor medaljonen landede oven i
     ansigtet. Nu er hver profil en række: fotoet stort nok til at man
     kan se personen, teksten ved siden af, og pilen hvor rækker på
     resten af sitet har den. Samme sprog som camps og de tre veje. */
  .epos-site .roles-grid{grid-template-columns:1fr;gap:0;
    border-block:1px solid var(--line)}
  .epos-site .role{flex-direction:row;align-items:center;gap:1.1rem;
    padding:1rem 0;border-top:1px solid var(--line);position:relative}
  .epos-site .role:first-child{border-top:0}
  .epos-site .role-media{flex:0 0 96px;aspect-ratio:1;border-radius:3px}
  .epos-site .role-medallion{display:none}
  .epos-site .role-body{padding-top:0;flex:1;min-width:0;padding-right:1.6rem}
  .epos-site .role-body h2,.epos-site .role-body h3{font-size:1.25rem}
  .epos-site .role-body p{margin-top:.2rem;font-size:.9rem}
  .epos-site .role-cta{display:none}
  .epos-site .role::after{content:'↗';position:absolute;right:.1rem;top:50%;
    transform:translateY(-50%);color:var(--muted-2);font-size:1rem}

  /* ---------- 8. Kort ---------- */
  .epos-site .kort{padding:1.4rem 1.15rem}
  .epos-site .kort-gitter{gap:1px}
  .epos-site .sek-hoved{gap:.7rem;margin-bottom:var(--s3)}

  /* ---------- 9. Medarbejdere ----------
     To kolonner holder — 14 rækker ville blive en endeløs liste. */
  .epos-site .hold-gitter{grid-template-columns:1fr 1fr}
  .epos-site .person-stille,.epos-site .person-aabn{padding:1.2rem .9rem}
  .epos-site .person-foto{margin-bottom:.6rem}
  /* Panelet fylder skærmen på telefon — der er ikke plads til en ramme. */
  .epos-site .medarb{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;
    border:0;border-radius:0}
  .epos-site .medarb-fotos{grid-template-columns:1fr 1fr}

  /* ---------- 10. Kontakt: numre bliver knapper ----------
     Et telefonnummer på 17 px er tekst. På en telefon skal det være
     det, det er — en handling. */
  .epos-site .person-linje{gap:.3rem;padding:1.15rem 0}
  .epos-site .person-kontakt{display:flex;flex-direction:column;gap:.4rem;margin-top:.5rem}
  .epos-site .person-kontakt a{border:1px solid var(--line);border-radius:3px;
    padding:.6rem .9rem;justify-content:flex-start;word-break:break-all}
  .epos-site .person-kontakt a:active{border-color:var(--gold-dim)}

  /* ---------- 11. Formularer ----------
     16 px er ikke en smagssag: under 16 px zoomer iOS ind ved fokus og
     river layoutet skævt. */
  .epos-site .form-felt input,.epos-site .form-felt textarea{font-size:16px;padding:.9rem 1rem}
  .epos-site .form button,.epos-site .formkort .btn{width:100%}
  .epos-site .form-vandret{grid-template-columns:1fr}
  .epos-site .formkort,.epos-site .fakta,.epos-site .ig-blok{padding:1.5rem 1.15rem}

  /* ---------- 12. Trin og kapitler ----------
     Tråden rykker tættere på kanten — 51 px indrykning af 335 er for
     meget, når teksten skal have plads. */
  .epos-site .trin-rul{padding-left:2.5rem}
  .epos-site .traad-lodret{left:.72rem}
  .epos-site .trin-nr{left:-2.5rem;width:1.85rem;height:1.85rem;font-size:.9rem}
  .epos-site .kapitel-rul{padding-left:1.6rem}
  .epos-site .traad-lodret.lang{left:.3rem}
  .epos-site .kapitel::before{left:-1.6rem;width:8px;height:8px}
  .epos-site .trin-liste{gap:var(--s3)}

  /* ---------- 13. Figurer og citater ---------- */
  .epos-site .figur .photo,.epos-site .epos-container.smal .figur .photo{aspect-ratio:4/3}
  .epos-site .figur.overhaeng{margin-bottom:0}     /* overhænget hører desktop til */
  .epos-site .figur figcaption{flex-direction:column;gap:.2rem}
  .epos-site .citat{padding-left:1.1rem}
  .epos-site .citat p{font-size:1.2rem;line-height:1.45}

  /* ---------- 14. Naboer ---------- */
  .epos-site .naboer{grid-template-columns:1fr}
  .epos-site .nabo{padding:1.15rem 1.15rem}
  .epos-site .nabo-n{text-align:left}

  /* ---------- 15. Afslutning ---------- */
  .epos-site .afslut-ind{gap:var(--s3)}
  .epos-site .fakta dl > div{grid-template-columns:1fr;gap:.25rem}

  /* ---------- 16. Footeren ---------- */
  .epos-site .foot-grid{gap:var(--s3)}
  .epos-site .foot-bottom{margin-top:var(--s4);gap:.4rem}
  .epos-site .foot h2,.epos-site .foot h4{margin-bottom:.5rem}
}

/* ---------- 17. Meget smalle telefoner ---------- */
@media (max-width: 380px){
  /* To kolonner holder helt ned til 320 px, når polstringen strammes.
     Én kolonne ville gøre 14 medarbejdere til en endeløs søjle. */
  .epos-site .person-stille,.epos-site .person-aabn{padding:1rem .65rem}
  .epos-site .person-navn{font-size:.92rem}
  .epos-site .role-media{flex-basis:82px}
  .epos-site .header-in{gap:.7rem}
  .epos-site .btn-sm{padding-inline:.9rem;font-size:.74rem}
}

/* ---------- kontaktkortenes handlinger ----------
   Et telefonnummer er ikke oplysning, det er en handling. Derfor ser det
   ud som en. Gælder også på desktop — men dér er 44 px allerede nok. */
.epos-site .kort .handling{display:inline-flex;align-items:center;min-height:44px;
  margin-top:.55rem;padding:.5rem .9rem;border:1px solid var(--line);border-radius:3px;
  font:500 .92rem/1.3 var(--sans);color:var(--ink);word-break:break-word;
  transition:border-color 240ms ease}
.epos-site .kort .handling + .handling{margin-left:.5rem}
.epos-site .kort .handling:hover{border-color:var(--ink)}
.epos-site .aabningstid{display:block;color:var(--muted);font-size:.9rem;line-height:1.6}
.epos-site .kort .kort-note{margin-top:.75rem}

@media (max-width: 720px){
  /* Labels var stadig under 13 px. Hævet til det, der kan læses i dagslys. */
  .epos-site .eyebrow{font-size:.8rem}
  .epos-site .kort-note,.epos-site .camp-meta,.epos-site .role-cta,.epos-site .person-rolle,.epos-site .krumme ol,.epos-site .figur figcaption,.epos-site .nabo span{font-size:.85rem}
  /* Handlingerne fylder bredden — én finger, ét mål. */
  .epos-site .kort .handling{display:flex;width:100%;justify-content:flex-start;margin-left:0}
  .epos-site .kort .handling + .handling{margin-left:0}
}

/* ---------- telefon og mail ----------
   Første forsøg gjorde ALLE tel:/mailto:-links 44 px høje. Det ødelagde
   typografien: midt i en sætning blev nummeret til en blok, og linjerne
   hoppede. Skellet går efter rollen, ikke efter protokollen — et nummer i
   et kontaktkort er en handling og får sit mål; et nummer i en løbende
   sætning er typografi og får en understregning. */
@media (max-width: 720px){
  .epos-site .fakta a[href^="tel:"],.epos-site .fakta a[href^="mailto:"],.epos-site .person-kontakt a[href^="tel:"],.epos-site .person-kontakt a[href^="mailto:"]{
    display:flex;align-items:center;min-height:44px;
    border:1px solid var(--line);border-radius:3px;
    padding:.55rem .8rem;margin-top:.4rem;word-break:break-word}
  .epos-site main p a[href^="tel:"],.epos-site main p a[href^="mailto:"]{
    border-bottom:1px solid var(--line);padding-block:.15rem}
  /* Forsidens egne småtekster slap under grænsen. */
  .epos-site .school-facts span,.epos-site .overhang figcaption span,.epos-site .hero-foot span,.epos-site .hero-foot a{font-size:.85rem}
  .epos-site .school-facts{gap:1.6rem}
  .epos-site .school-facts strong{font-size:1.9rem}
}

/* ---------- overløb ved indgangen ----------
   Hero-billedet starter på scale 1.09 og lander på 1. De to sekunder må ikke
   kunne skubbe siden sidelæns på en telefon. Klippes, ikke skaleres ned —
   effekten skal bevares. */
.epos-site .hero-media,.epos-site .sidehero-medie{overflow:hidden}

@media (max-width: 720px){
  /* Rosevinduet bryder ud af fotoet med vilje. På 375 px er −6 % for meget:
     det stak ud over sidens kant. Bruddet bevares, bare mindre. */
  }

@media (max-width: 720px){
  /* Sidste etiketter under grænsen. Versaltekst med sporing tåler at være
     lille, men ikke under ~12,5 px på en telefon i dagslys. */
  .epos-site .kort-cta{font-size:.82rem}
  .epos-site .fakta dt,.epos-site .form-felt label{font-size:.8rem;letter-spacing:.09em}
}

/* ---------- forsidens hero på telefon ----------
   På desktop ligger bundlinjen fastgjort til hero'ens underkant. Med
   telefonens større typografi voksede indholdet ned i den, og de to lag
   lagde sig oven i hinanden. På telefon er hero'en derfor en søjle:
   indholdet skubbes ned, og bundlinjen følger efter i flowet. */
@media (max-width: 720px){
  .epos-site .hero{display:flex;flex-direction:column;justify-content:flex-end;
    min-height:92svh;padding-top:calc(var(--head-h) + var(--s4));padding-bottom:0}
  /* Sidemargenen må IKKE overskrives her. width:100% slog spaltens
     gutter ihjel, så hero-teksten løb helt ud i skærmkanten. */
  .epos-site .hero .epos-container{padding-bottom:var(--s3)}
  .epos-site .hero-copy{max-width:none}
  .epos-site .hero-actions{display:none}
  .epos-site .hero-foot{position:static;flex-direction:column;align-items:flex-start;gap:.5rem;
    padding:1rem var(--gutter) 1.1rem;
    border-top:1px solid var(--line-soft);background:#17131F66}
}

/* ================================================================
   TELEFON — RETTELSER EFTER AFPRØVNING PÅ RIGTIG ENHED
   ================================================================ */
@media (max-width: 720px){

  /* 1. Rammen væk.
     Den indrykkede ramme er Nysted-grebet fra desktop, hvor siden skal
     føles som et objekt på en flade. På en telefon fylder skærmen hele
     synsfeltet — så bliver den 6 px lilla stribe ikke til en signatur,
     men til en streg der ser ud som en fejl. Telefonen er kant til kant. */
  :root{--frame:0px}
  .epos-site .frame{border-radius:0}
  .epos-site .site-header,.epos-site .hero,.epos-site .sidehero{border-radius:0}
  .epos-site .epos-menu{inset:0;border-radius:0}

  /* 2. Mere luft i siderne.
     24 px hvoraf 6 var ramme gav en klemt spalte. Nu er alle 26 px luft. */
  :root{--gutter:1.6rem}

  /* 3. Undernavigationen må ikke klippe et ord midt over.
     Sporet går nu kant til kant, og polstringen ligger indeni — så ruller
     punkterne ud over skærmkanten i stedet for at stå halvt synlige. */
  .epos-site .delnav{width:100%;max-width:none;margin-inline:0;
    padding-inline:var(--gutter);
    scroll-padding-inline:var(--gutter)}
  .epos-site .delnav a:last-child{padding-right:var(--gutter)}
}

@media (max-width: 720px){
  /* Kortene har ingen synlig kant på telefon — kun hårfine streger imellem
     dem. Så skal deres tekst flugte med resten af spalten. Ellers ser
     polstringen ud som skævhed, og siden mister sin ene lodrette linje. */
  .epos-site .kort{padding-inline:0}
  .epos-site .kort-gitter{gap:0}
  .epos-site .kort + .kort{border-top:1px solid var(--line)}
  /* Kasser MED kant beholder deres polstring — dér forklarer kanten den. */
  .epos-site .formkort,.epos-site .fakta,.epos-site .ig-blok{padding-inline:1.15rem}
}

@media (max-width: 720px){
  /* ---------- de nye komponenter på telefon ----------
     Alle fire er rækker, og rækker skal på en telefon stables, ikke
     klemmes. Det, der på skrivebordet stod til højre i sin egen kolonne
     — pilen, mangler-mærket, datoen — lægger sig over eller under
     teksten, så spalten beholder sin fulde bredde. */

  /* Dokumentrækker: pilen bliver i hjørnet, men mangler-mærket får sin
     egen linje. "LINK MANGLER" med nowrap ved siden af titlen efterlod
     under 12 tegn til titlen på en 320 px skærm. */
  .epos-site .dok{padding:1.35rem 0}
  .epos-site .dok-navn{font-size:1.2rem}
  .epos-site .dok-om{font-size:.95rem}
  .epos-site .dok-savn{grid-column:1;grid-row:auto;margin-top:.9rem;justify-self:start;
    white-space:normal}
  .epos-site .dok-mangler{grid-template-columns:1fr}

  /* Begivenheder: datoen står over navnet og bliver linjens overskrift.
     Pilen ligger i højre hjørne ud for datoen, hvor der er plads. */
  .epos-site .begiv{grid-template-columns:1fr auto;padding:1.35rem 0}
  .epos-site .begiv-dato{grid-column:1;grid-row:1}
  .epos-site .begiv-pil{grid-column:2;grid-row:1}
  .epos-site .begiv-krop{grid-column:1 / -1;grid-row:2;margin-top:.3rem}
  .epos-site .begiv-navn{font-size:1.3rem}
  .epos-site .begiv-om{font-size:.95rem}

  /* Portrætter: medaljon og rolle på samme linje, så navnet får hele
     bredden i stedet for at stå under en tom højrekolonne. */
  .epos-site .portraet{gap:.9rem;padding:var(--s3) 0}
  .epos-site .portraet-medaljon{width:2.9rem;height:2.9rem;font-size:.95rem}
  .epos-site .portraet-navn{font-size:1.4rem}
  .epos-site .portraet-krop p{font-size:.95rem}

  /* Udtalelser: citatgraden falder et trin. Seks citater i 1,6 rem
     serif fylder tre skærme på en telefon uden at sige mere. */
  .epos-site .stemme p{font-size:1.18rem;line-height:1.55}
  .epos-site .stemmer{gap:var(--s3)}

  /* Sangen: indrykningen bliver mindre, men bliver. Uden den ser
     omkvædet ud som endnu et vers. */
  .epos-site .sang{padding-left:1.1rem}
  .epos-site .vers,.epos-site .omkvaed{font-size:1.12rem;line-height:1.65}
  .epos-site .omkvaed{padding-left:.9rem}

  /* Film: én kolonne, og teksten flugter med spalten som kortene gør. */
  .epos-site .film-liste{gap:var(--s4)}
  .epos-site .film h2,.epos-site .film h3{font-size:1.3rem}
  .epos-site .film p{font-size:.95rem}

  .epos-site .punktliste li{font-size:1rem;padding-left:1.3rem}
  .epos-site .punktliste li::before{width:.6rem}

  .epos-site .stor-advarsel{padding:1rem 1.1rem;font-size:.95rem}
}

@media (max-width: 720px){
  /* ---------- sidste gennemgang: grader under 12,5 px ----------
     Samme fejl som labels havde: 0,68 rem er 10,9 px på en telefon, og
     versaler med bred sporing i den grad er tekstur, ikke tekst. Alle
     versalmærker hæves til mindst 12,8 px og får strammere sporing. */
  .epos-site .foot h2,.epos-site .foot h4{font-size:.8rem;letter-spacing:.12em}
  .epos-site .dok-meta,.epos-site .begiv-dato{font-size:.8rem;letter-spacing:.1em}
  .epos-site .dok-savn{font-size:.82rem;letter-spacing:.08em}
  .epos-site .film-savn{font-size:.8rem;letter-spacing:.08em}
  .epos-site .portraet-rolle,.epos-site .stemme footer,.epos-site .sang-credits{font-size:.82rem;letter-spacing:.1em}
}

@media(max-width:1079px){.epos-site .header-right{margin-left:auto}}

/* Kompakt header: begge handlinger bliver inde i den smalle skærm. */
@media(max-width:420px){
  .epos-site .header-in{padding-inline:.75rem;gap:.5rem}
  .epos-site .brand,.epos-site .header-right{padding-inline:.35rem}
  .epos-site .brand{gap:.4rem}
  .epos-site .brand img{height:30px}
  .epos-site .brand .wordmark{height:26px}
  .epos-site .header-right{gap:.65rem}
  .epos-site .header-right .btn-sm{padding-inline:.7rem}
}

/* Det dobbelte logo får plads ved siden af handlingerne på telefon. */
@media(max-width:600px){
  /* Stablet bliver klyngen høj, og en radius på 999px gør den til en oval,
     som knappens firkant stikker ud af. Her er formen en blød firkant. */
  .epos-site .site-header.is-floated .header-right{flex-direction:column;gap:0;border-radius:16px}
}
@media(max-width:420px){
  .epos-site .site-header.is-floated .brand{gap:.8rem}
  .epos-site .site-header.is-floated .brand img{height:60px}
  .epos-site .site-header.is-floated .brand .wordmark{height:52px}
}

/* ---------- quiz-pitchen på forsiden ----------
   Midterstillet blok. Sektionen har hverken foto eller gitter at støtte sig
   til, så teksten står selv, og så skal den stå midt i sin egen spalte.
   Knappen er hårfin kant og ikke fyldt guld: hero'ens guldknap ligger under
   en skærmfuld herfra, og der må kun være én fyldt guldknap ad gangen. */
.epos-site .quiz-pitch{max-width:52ch;margin-inline:auto;text-align:center;
  display:flex;flex-direction:column;align-items:center}
.epos-site .quiz-pitch h2{font-size:clamp(1.8rem,3.4vw,2.75rem);letter-spacing:-.012em;margin-top:.8rem}
.epos-site .quiz-pitch p{margin-top:1.3rem;color:var(--muted)}
.epos-site .quiz-pitch .btn{margin-top:var(--s3)}

/* ---------- quiz-CTA på /elevprofiler/ ----------
   Lille banner over rollegitteret: teksten peger dem, der er i tvivl,
   over mod Museumskuppet i stedet for at gætte ud fra fem kort. */
.epos-site .quiz-cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;
  gap:var(--s3);padding:var(--s3);border:1px solid var(--line);border-radius:8px;
  background:var(--plum-lift)}
/* Teksten viger for knappen, så de står på række. Først når teksten ikke kan
   være på 18rem, brydes linjen, og knappen falder ned under den. */
.epos-site .quiz-cta>div{flex:1 1 18rem}
.epos-site .quiz-cta h2{font-size:1.5rem;margin-top:.3rem}
.epos-site .quiz-cta p{margin-top:.5rem;color:var(--muted);max-width:46ch}

/* ==========================================================================
   MUSEUMSKUPPET (/elevprofiler/quiz/) — fuldskærms, immersiv elevprofil-quiz

   .quiz-app dækker hele viewporten (position:fixed, inset:0). Quizzen har sin
   egen lukkeknap og skal ikke dele skærm med sidens almindelige rammeværk, så
   header, menu, footer og spring-til-indhold slukkes her. Det er ikke kun et
   spørgsmål om udseende: stod de tilbage, kunne man tabbe ned i dem bag
   overlayet, og menuen ville åbne USYNLIGT under quizzen (z-index 120 mod 400)
   og samtidig sætte <main> — altså quizzen — inert. Slukket er de helt ude af
   tastaturets vej.
   ========================================================================== */
.epos-site.quiz-page{overflow:hidden}
.epos-site.quiz-page .site-header,.epos-site.quiz-page .epos-menu,.epos-site.quiz-page .menu-skygge,.epos-site.quiz-page .foot,.epos-site.quiz-page .skip{display:none}

.epos-site .quiz-app{
  position:fixed;inset:0;z-index:400;
  /* kolonne, så <noscript>-beskeden lander UNDER forsidens tekst i stedet for
     ved siden af den, når JavaScript er slået fra */
  display:flex;flex-direction:column;align-items:center;justify-content:flex-start;
  overflow-y:auto;overflow-x:hidden;
  padding:6rem 1.5rem 3rem;
  background:radial-gradient(60% 50% at 50% 0%,#DFC28C1F,transparent 65%),var(--night);
}
/* Lodret centrering med auto-margener, IKKE justify-content:center. Med
   centrering forsvinder toppen af et højt indhold op over kanten, og den kan
   ikke rulles frem igen — på et lavt vindue lå overskriften 45 px uden for
   skærmen. Auto-margener deler kun den plads, der rent faktisk er til overs. */
.epos-site .quiz-screen,.epos-site .quiz-noscript{margin-block:auto}

.epos-site .quiz-close,.epos-site .quiz-back{
  position:fixed;top:1.5rem;z-index:410;
  border:1px solid var(--line);background:#1C1823D9;color:var(--ink);
  font-family:var(--sans);cursor:pointer;
  transition:background 240ms ease,transform 240ms ease;
}
.epos-site .quiz-close{right:1.5rem;width:44px;height:44px;border-radius:50%;
  font-size:1.1rem;line-height:1;display:flex;align-items:center;justify-content:center}
.epos-site .quiz-back{left:1.5rem;padding:.65rem 1.15rem;border-radius:999px;font-weight:600;font-size:.9rem}
.epos-site .quiz-close:hover,.epos-site .quiz-close:focus-visible{background:#DFC28C40;transform:scale(1.06)}
.epos-site .quiz-back:hover,.epos-site .quiz-back:focus-visible{background:#DFC28C40;transform:translateX(-2px)}

.epos-site .quiz-screen{width:100%;min-width:0;max-width:620px;text-align:center}

.epos-site .quiz-cover-inner h1,.epos-site .quiz-result-inner h1{
  font-size:clamp(1.9rem,9vw,3.4rem);margin-bottom:1.25rem;
  overflow-wrap:break-word;word-break:break-word;
}
.epos-site .quiz-lede{font-size:1.1rem;line-height:1.7;color:var(--muted);margin-bottom:1.25rem;
  max-width:480px;margin-left:auto;margin-right:auto}
.epos-site .quiz-lede-mission{color:var(--ink);margin-bottom:2.5rem}
.epos-site .quiz-skip{margin-top:1.75rem;display:flex;justify-content:center}

.epos-site .quiz-progress{display:flex;justify-content:center;gap:.5rem;margin-bottom:1.75rem}
.epos-site .quiz-progress-dot{width:8px;height:8px;border-radius:50%;background:var(--line);
  transition:background 240ms ease,transform 240ms ease}
.epos-site .quiz-progress-dot.is-active{background:var(--gold);transform:scale(1.25)}

.epos-site .quiz-scene-meta{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;
  gap:.35rem .9rem;margin-bottom:1.5rem;padding-bottom:1.25rem;position:relative}
.epos-site .quiz-scene-meta::after{content:'';position:absolute;bottom:0;left:50%;
  transform:translateX(-50%);width:64px;height:1px;
  background:linear-gradient(to right,transparent,#DFC28CCC,transparent)}
.epos-site .quiz-scene-place{font:600 .82rem/1.4 var(--sans);color:var(--gold-dim);
  text-transform:uppercase;letter-spacing:.15em}
.epos-site .quiz-scene-time{font:600 .78rem/1.4 var(--sans);color:var(--muted);
  letter-spacing:.08em;white-space:nowrap}

.epos-site .quiz-scene-text{font:400 clamp(1.08rem,2.2vw,1.32rem)/1.65 var(--sans);
  color:var(--ink);margin-bottom:2.75rem;text-wrap:pretty}

.epos-site .quiz-options{display:grid;gap:1rem}
.epos-site .quiz-option{display:block;width:100%;text-align:left;padding:1.1rem 1.4rem;
  border-radius:4px;border:1px solid var(--line);background:var(--plum-lift);
  color:var(--ink);font:400 1.02rem/1.5 var(--sans);cursor:pointer;
  transition:border-color 240ms ease,transform 240ms ease,box-shadow 240ms ease}
.epos-site .quiz-option:hover,.epos-site .quiz-option:focus-visible{border-color:var(--gold);
  transform:translateY(-2px);box-shadow:0 10px 24px rgba(0,0,0,.3)}

.epos-site .quiz-result-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.85rem;margin-top:.5rem}
.epos-site .quiz-result-inner p{color:var(--muted);font-size:1.1rem;max-width:480px;margin:0 auto 2rem}

.epos-site .quiz-noscript{max-width:480px;text-align:center}

.epos-site .quiz-anim-in{animation:quizFadeIn 550ms cubic-bezier(.16,1,.3,1) both}
@keyframes quizFadeIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

@media(max-width:600px){
  .epos-site .quiz-app{padding:5.5rem 1.25rem 2.5rem}
  .epos-site .quiz-close{top:1rem;right:1rem}
  .epos-site .quiz-back{top:1rem;left:1rem;padding:.55rem .9rem;font-size:.82rem}
  .epos-site .quiz-progress{gap:.375rem;margin-bottom:1.5rem}
  .epos-site .quiz-progress-dot{width:7px;height:7px}
  .epos-site .quiz-scene-place{font-size:.74rem;letter-spacing:.1em}
  .epos-site .quiz-scene-time{font-size:.72rem}
  .epos-site .quiz-option{padding:1rem 1.15rem;font-size:.98rem}
}

@media(prefers-reduced-motion:reduce){
  .epos-site .quiz-option{transition:none}
  .epos-site .quiz-anim-in{animation:none}
}

/* --- WordPress-vagt (wp_tema.py) --- */
body[class*="page-template-template-epos-ny"]{margin:0 !important;background:var(--plum,#302741)}
body[class*="page-template-template-epos-ny"] #wrap_all,
body[class*="page-template-template-epos-ny"] #main{margin:0 !important;padding:0 !important;background:transparent !important}

/* ==================================================================
   Gravity Forms i det nye design (kun WordPress-udgaven).

   Indskrivningsformularen (nr. 10, 40 felter, CPR-numre) bygges IKKE om.
   Den er Gravity Forms' egen "legacy"-markup og stiles kun her. Alt er
   afgrænset til .epos-site .gform_wrapper, så intet kan ramme andre formularer
   på sitet. Gravity Forms' egne stilark indlæses stadig (skabelonen sætter
   dem foran vores), fordi de også passer på det funktionelle: skjulte
   felter, honningkrukke mod spam, Chosen-listen. !important står kun, hvor
   deres regler har højere specificitet, og skal ikke fjernes uden test.
   Tokens (farver, afstande) er sitets egne fra :root.
   ================================================================== */

.epos-site .formular-sektion{padding-block:var(--s4) var(--s5)}
.epos-site .formular-ramme{border:1px solid var(--line);border-radius:6px;
  background:#FFFFFF05;padding:clamp(1.25rem,3.4vw,2.75rem)}
.epos-site .formular-note{margin-top:1.1rem;color:var(--muted-2);font-size:.84rem;line-height:1.6}

/* ---------- rod og felt-liste ---------- */
.epos-site .gform_wrapper{margin:0!important;max-width:none!important;color:var(--ink);
  font:400 .95rem/1.6 var(--sans)}
.epos-site .gform_wrapper *,.epos-site .gform_wrapper *::before,.epos-site .gform_wrapper *::after{box-sizing:border-box}
.epos-site .gform_wrapper form{margin:0}
.epos-site .gform_wrapper ul,.epos-site .gform_wrapper li{list-style:none!important;margin:0;padding:0}
.epos-site .gform_wrapper ul.gform_fields{display:grid!important;grid-template-columns:minmax(0,1fr);
  gap:2rem 1.25rem;margin:0!important;padding:0!important}
.epos-site .gform_wrapper li.gfield{margin:0!important;padding:0!important;width:100%!important;
  max-width:none!important;clear:none!important;background:none!important;border:0!important}

/* ---------- etiketter ---------- */
.epos-site .gform_wrapper .gfield_label,
.epos-site .gform_wrapper legend.gfield_label{display:block;margin:0 0 .65rem!important;padding:0!important;
  font:500 .74rem/1.5 var(--sans)!important;letter-spacing:.09em;text-transform:uppercase;color:var(--muted-2)!important}
.epos-site .gform_wrapper .gfield_required,
.epos-site .gform_wrapper .gfield_required .gfield_required_asterisk{color:var(--gold)!important;
  margin-left:.3rem;font-weight:500;letter-spacing:0}
.epos-site .gform_wrapper .ginput_container label,
.epos-site .gform_wrapper .ginput_complex label{display:block;margin:.45rem 0 0!important;
  font:400 .78rem/1.45 var(--sans)!important;letter-spacing:0!important;text-transform:none!important;color:var(--muted-2)!important}
.epos-site .gform_wrapper .gfield_description{margin:.6rem 0 0!important;padding:0!important;max-width:none!important;
  font:400 .86rem/1.65 var(--sans)!important;color:var(--muted-2)!important}
.epos-site .gform_wrapper .gfield_description a{color:var(--gold)}

/* ---------- tekstfelter, lister, tekstområder ---------- */
.epos-site .gform_wrapper input[type=text],
.epos-site .gform_wrapper input[type=email],
.epos-site .gform_wrapper input[type=tel],
.epos-site .gform_wrapper input[type=url],
.epos-site .gform_wrapper input[type=number],
.epos-site .gform_wrapper input[type=password],
.epos-site .gform_wrapper select,
.epos-site .gform_wrapper textarea{display:block;width:100%!important;max-width:none!important;min-height:3rem;
  padding:.8rem 1rem!important;background-color:#FFFFFF08!important;border:1px solid var(--line)!important;
  border-radius:3px!important;color:var(--ink)!important;font:400 .95rem/1.5 var(--sans)!important;
  box-shadow:none!important;transition:border-color 220ms ease,box-shadow 220ms ease;
  -webkit-appearance:none;appearance:none}
.epos-site .gform_wrapper textarea{min-height:9rem;resize:vertical}
.epos-site .gform_wrapper input::placeholder,.epos-site .gform_wrapper textarea::placeholder{color:var(--muted-2);opacity:.8}
.epos-site .gform_wrapper select{padding-right:2.6rem!important;cursor:pointer;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23A98F5F' stroke-width='1.5'/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;background-position:right 1rem center!important}
.epos-site .gform_wrapper select option{background:var(--plum-deep);color:var(--ink)}
.epos-site .gform_wrapper input:focus,.epos-site .gform_wrapper select:focus,.epos-site .gform_wrapper textarea:focus{
  outline:none!important;border-color:var(--gold-dim)!important;box-shadow:0 0 0 3px #DFC28C22!important}

/* ---------- sammensatte felter (navn, e-mail med bekræftelse, adresse) ---------- */
.epos-site .gform_wrapper .ginput_complex{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1.1rem 1.25rem;margin:0!important;padding:0!important}
.epos-site .gform_wrapper .ginput_complex > span{display:flex;flex-direction:column;float:none!important;
  width:auto!important;margin:0!important;padding:0!important;min-width:0}
.epos-site .gform_wrapper .ginput_complex .ginput_full,
.epos-site .gform_wrapper .ginput_complex .address_line_1,
.epos-site .gform_wrapper .ginput_complex .address_country{grid-column:1/-1}
.epos-site .gform_wrapper .ginput_complex .address_line_2,
.epos-site .gform_wrapper .ginput_complex .address_state{display:none}

/* ---------- valg: radioknapper og afkrydsning ---------- */
.epos-site .gform_wrapper .gfield_radio,
.epos-site .gform_wrapper .gfield_checkbox{display:grid!important;gap:.8rem;margin:0!important;padding:0!important}
.epos-site .gform_wrapper .gchoice{display:flex!important;align-items:flex-start;gap:.8rem;margin:0!important;padding:0!important}
.epos-site .gform_wrapper .gchoice input[type=radio],
.epos-site .gform_wrapper .gchoice input[type=checkbox]{-webkit-appearance:none;appearance:none;flex:none;
  position:relative;width:1.2rem!important;height:1.2rem!important;min-height:0!important;margin:.18rem 0 0!important;
  padding:0!important;background:transparent!important;border:1px solid var(--muted-2)!important;box-shadow:none!important;cursor:pointer}
.epos-site .gform_wrapper .gchoice input[type=radio]{border-radius:50%!important}
.epos-site .gform_wrapper .gchoice input[type=checkbox]{border-radius:3px!important}
.epos-site .gform_wrapper .gchoice input:checked{background:var(--gold)!important;border-color:var(--gold)!important}
.epos-site .gform_wrapper .gchoice input[type=radio]:checked::after{content:"";position:absolute;inset:.28rem;border-radius:50%;background:#241C2E}
.epos-site .gform_wrapper .gchoice input[type=checkbox]:checked::after{content:"";position:absolute;left:.34rem;top:.1rem;
  width:.32rem;height:.62rem;border:solid #241C2E;border-width:0 2px 2px 0;transform:rotate(45deg)}
.epos-site .gform_wrapper .gchoice input:focus-visible{outline:2px solid var(--gold)!important;outline-offset:2px}
.epos-site .gform_wrapper .gchoice label{display:block!important;margin:0!important;max-width:none!important;cursor:pointer;
  font:400 .95rem/1.6 var(--sans)!important;color:var(--ink)!important;letter-spacing:0!important;text-transform:none!important}

/* ---------- forklarende tekstblokke (HTML-felter) ---------- */
.epos-site .gform_wrapper li.gfield_html{padding:1.1rem 1.35rem!important;border:1px solid var(--line)!important;
  border-left:2px solid var(--gold-dim)!important;background:#DFC28C0A!important;border-radius:3px;
  color:var(--muted);font-size:.92rem;line-height:1.7}
.epos-site .gform_wrapper li.gfield_html p{margin:.55rem 0 0;color:inherit}
.epos-site .gform_wrapper li.gfield_html p:first-child{margin-top:0}
.epos-site .gform_wrapper li.gfield_html strong,.epos-site .gform_wrapper li.gfield_html b{color:var(--ink);font-weight:500}

/* ---------- Chosen (flervalgslisten "Ønsker at reservere plads på årgang") ---------- */
.epos-site .gform_wrapper .chosen-container{width:100%!important;font:400 .95rem/1.5 var(--sans)!important}
.epos-site .gform_wrapper .chosen-container-multi .chosen-choices{min-height:3rem;padding:.4rem .7rem!important;
  background:#FFFFFF08!important;background-image:none!important;border:1px solid var(--line)!important;border-radius:3px!important;box-shadow:none!important}
.epos-site .gform_wrapper .chosen-container-active .chosen-choices{border-color:var(--gold-dim)!important;box-shadow:0 0 0 3px #DFC28C22!important}
.epos-site .gform_wrapper .chosen-choices li.search-choice{margin:.2rem .35rem .2rem 0!important;padding:.3rem 1.7rem .3rem .65rem!important;
  background:#DFC28C1F!important;background-image:none!important;border:1px solid #DFC28C55!important;border-radius:3px!important;
  color:var(--ink)!important;box-shadow:none!important;font-size:.88rem!important;line-height:1.4!important}
.epos-site .gform_wrapper .chosen-choices li.search-field input[type=text]{min-height:0!important;height:1.8rem!important;
  padding:0!important;background:transparent!important;border:0!important;color:var(--ink)!important;box-shadow:none!important}
.epos-site .gform_wrapper .chosen-container .chosen-drop{background:var(--plum-deep)!important;border:1px solid var(--line)!important;
  border-top:0;border-radius:0 0 3px 3px;box-shadow:0 14px 34px #0007!important;color:var(--ink)}
.epos-site .gform_wrapper .chosen-container .chosen-results{margin:0!important;padding:.25rem 0!important;color:var(--ink)!important}
.epos-site .gform_wrapper .chosen-container .chosen-results li{padding:.6rem .9rem!important;color:var(--ink)!important;line-height:1.4!important}
.epos-site .gform_wrapper .chosen-container .chosen-results li.highlighted{background:var(--plum-lift)!important;background-image:none!important;color:var(--ink)!important}
.epos-site .gform_wrapper .chosen-container .chosen-results li.result-selected{color:var(--gold)!important}
.epos-site .gform_wrapper .chosen-container .chosen-results li.no-results{background:transparent!important;color:var(--muted-2)!important}

/* ---------- knap ---------- */
.epos-site .gform_wrapper .gform_footer,
.epos-site .gform_wrapper .gform_page_footer{margin:2.25rem 0 0!important;padding:0!important}
.epos-site .gform_wrapper .gform_footer input[type=submit],
.epos-site .gform_wrapper .gform_footer button,
.epos-site .gform_wrapper .gform_button{display:inline-flex!important;align-items:center;justify-content:center;
  width:auto!important;min-height:48px;margin:0!important;padding:.85rem 2rem!important;background:var(--gold)!important;
  border:1px solid var(--gold)!important;border-radius:3px!important;color:#241C2E!important;
  font:500 .9rem/1.4 var(--sans)!important;letter-spacing:.01em;cursor:pointer;box-shadow:none!important;
  transition:background 240ms ease,border-color 240ms ease}
.epos-site .gform_wrapper .gform_footer input[type=submit]:hover,
.epos-site .gform_wrapper .gform_button:hover{background:#EBD3A6!important;border-color:#EBD3A6!important}

/* ---------- fejl og bekræftelse ---------- */
.epos-site .gform_wrapper .gform_validation_errors,
.epos-site .gform_wrapper .validation_error{margin:0 0 2rem!important;padding:1rem 1.25rem!important;
  border:1px solid #B98A8466!important;background:#B98A8412!important;border-radius:3px;color:#E6C3BD!important;
  font:400 .92rem/1.6 var(--sans)!important;text-align:left}
.epos-site .gform_wrapper .gform_validation_errors h2{margin:0;font:500 1rem/1.5 var(--sans);color:#E6C3BD}
.epos-site .gform_wrapper .gform_validation_errors ol{margin:.6rem 0 0;padding-left:1.2rem}
.epos-site .gform_wrapper .gform_validation_errors a{color:#F0D3CE}
.epos-site .gform_wrapper li.gfield_error{padding-left:1rem!important;border-left:2px solid #D08A80!important;background:none!important}
.epos-site .gform_wrapper li.gfield_error input,
.epos-site .gform_wrapper li.gfield_error select,
.epos-site .gform_wrapper li.gfield_error textarea{border-color:#D08A80!important}
.epos-site .gform_wrapper .validation_message,
.epos-site .gform_wrapper .gfield_validation_message{margin:.55rem 0 0!important;padding:0!important;background:none!important;border:0!important;
  color:#E6A69B!important;font:400 .86rem/1.5 var(--sans)!important}
.epos-site .gform_confirmation_message{padding:1.25rem 1.5rem;border:1px solid #DFC28C55;background:#DFC28C0F;border-radius:3px;color:var(--ink)}

/* ---------- skjult skal forblive skjult (honningkrukke mod spam m.m.) ---------- */
.epos-site .gform_wrapper .gform_validation_container,
.epos-site .gform_wrapper .gform_validation_container *{display:none!important;position:absolute!important;left:-9999px!important}
.epos-site .gform_wrapper .gform_hidden,
.epos-site .gform_wrapper .gfield_visibility_hidden{display:none!important}
.epos-site .gform_wrapper .screen-reader-text,.epos-site .gform_wrapper .hidden_label .gfield_label{position:absolute!important;
  width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- rettelser fundet ved test på livesitet ----------
   Gravity Forms' legacy-CSS har højere specificitet end grundreglerne ovenfor
   på tre steder. Vælgerne her er bevidst længere. */
/* sammensatte felter fik bredden 100% + 16px (efternavn/bekræft e-mail stak ud) */
.epos-site .gform_wrapper.gform_legacy_markup_wrapper .ginput_container.ginput_complex{width:100%!important;max-width:100%!important;margin:0!important}
.epos-site .gform_wrapper.gform_legacy_markup_wrapper .ginput_complex input,
.epos-site .gform_wrapper.gform_legacy_markup_wrapper .ginput_complex select{width:100%!important;margin:0!important}
/* flervalgslisten (Chosen) blev sat til halv bredde af en regel med [style] og select + div */
html body .epos-site .gform_wrapper.gform_legacy_markup_wrapper .ginput_container select + div.chosen-container.chosen-container-multi[style]{width:100%!important}

/* ---------- felter i selve indskrivningsformularen (Gravity Forms nr. 10) ----------
   Feltnumrene hører til denne ene formular. Bygges den om, skal de tjekkes. */
/* 34: indbetaling af gebyret. Kontonummeret er det vigtigste på siden og må ikke drukne i småt */
.epos-site #field_10_34{padding:1.35rem 1.5rem!important;border:1px solid #DFC28C40!important;
  border-left:2px solid var(--gold)!important;background:#DFC28C0D!important;border-radius:3px}
.epos-site #field_10_34 .gfield_description{color:var(--ink)!important;font-size:.98rem!important;line-height:1.65!important}
.epos-site #field_10_34 .gfield_label{color:var(--gold)!important}
/* 58: formularens indledende sætning står som almindelig tekst, ikke som en boks */
.epos-site #field_10_58{padding:0!important;border:0!important;background:none!important;
  color:var(--ink)!important;font-size:1.02rem;line-height:1.7}

/* ---------- betalingsfelter i camp-tilmeldingerne ----------
   Kontonummeret er det vigtigste på hver side og må ikke drukne i småt.
   Ét felt pr. formular (Gravity Forms nr. 172 Nybyggerne, 163 Epos-uge efterår,
   164 Epos-uge vinter, 167 Rollespilscamp) — feltnumrene hører til hver sin
   formular og skal tjekkes, hvis den bygges om. */
.epos-site #field_172_54, .epos-site #field_163_5, .epos-site #field_164_5, .epos-site #field_167_5{
  padding:1.35rem 1.5rem!important;border:1px solid #DFC28C40!important;
  border-left:2px solid var(--gold)!important;background:#DFC28C0D!important;border-radius:3px}
.epos-site #field_172_54 .gfield_description, .epos-site #field_163_5 .gfield_description,
.epos-site #field_164_5 .gfield_description, .epos-site #field_167_5 .gfield_description{
  color:var(--ink)!important;font-size:.98rem!important;line-height:1.65!important;white-space:pre-line}
.epos-site #field_172_54 .gfield_label, .epos-site #field_163_5 .gfield_label,
.epos-site #field_164_5 .gfield_label, .epos-site #field_167_5 .gfield_label{color:var(--gold)!important}

/* ---------- små skærme ---------- */
@media(max-width:620px){
  .epos-site .gform_wrapper .ginput_complex{grid-template-columns:minmax(0,1fr)}
  .epos-site .gform_wrapper input[type=text],.epos-site .gform_wrapper input[type=email],
  .epos-site .gform_wrapper input[type=tel],.epos-site .gform_wrapper select,
  .epos-site .gform_wrapper textarea{font-size:16px!important}
  .epos-site .gform_wrapper .gform_footer input[type=submit],.epos-site .gform_wrapper .gform_button{width:100%!important}
}

/* ==================================================================
   Nyhedsbrevsformularen (Mailchimp for WP, formular nr. 4572).
   Formularens markup ligger i Mailchimp for WP og følger med Mailchimps egne
   "slim"-stilark (#mc_embed_signup). De slås her ud, så formularen får sitets
   udseende: etiket + felt + knap på én linje fra 620px, som demoen havde.
   Alt er afgrænset til .epos-site .mc4wp-form; markup og tilmelding er uændret.
   ================================================================== */
.epos-site .mc4wp-form{margin:1.6rem 0 0;padding:0}
.epos-site .mc4wp-form #mc_embed_signup{background:none!important;clear:none!important;float:none!important;
  width:auto!important;max-width:none!important;margin:0!important;padding:0!important;font:inherit!important;color:var(--ink)}
.epos-site .mc4wp-form #mc_embed_signup_scroll{display:grid;grid-template-columns:minmax(0,1fr);gap:1.1rem;align-items:end}
@media(min-width:620px){.epos-site .mc4wp-form #mc_embed_signup_scroll{grid-template-columns:minmax(0,1fr) auto}}
/* Etiketten ("Tilmeld dig Epos' nyhedsbrev") gentager overskriften: skjult for øjet, men læses højt. */
.epos-site .mc4wp-form #mc_embed_signup label{position:absolute!important;width:1px;height:1px;margin:-1px!important;
  padding:0!important;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.epos-site .mc4wp-form #mc_embed_signup input.email,
.epos-site .mc4wp-form #mc_embed_signup input[type=email]{display:block!important;float:none!important;width:100%!important;
  max-width:none!important;min-height:3rem;margin:0!important;padding:.85rem 1rem!important;background:#FFFFFF08!important;
  border:1px solid var(--line)!important;border-radius:3px!important;color:var(--ink)!important;
  font:400 .95rem/1.5 var(--sans)!important;box-shadow:none!important;transition:border-color 220ms ease}
.epos-site .mc4wp-form #mc_embed_signup input.email:focus{outline:none;border-color:var(--gold-dim)!important}
.epos-site .mc4wp-form #mc_embed_signup input.email::placeholder{color:var(--muted-2);opacity:.8}
.epos-site .mc4wp-form #mc_embed_signup .clear{display:block!important;float:none!important;width:auto!important;margin:0!important;padding:0!important}
.epos-site .mc4wp-form #mc_embed_signup input[type=submit],
.epos-site .mc4wp-form #mc_embed_signup #mc-embedded-subscribe{display:inline-flex!important;align-items:center;justify-content:center;
  float:none!important;width:auto!important;height:auto!important;min-height:48px;margin:0!important;padding:.85rem 2rem!important;
  background:var(--gold)!important;border:1px solid var(--gold)!important;border-radius:3px!important;color:#241C2E!important;
  font:500 .9rem/1.4 var(--sans)!important;letter-spacing:.01em;text-transform:none;cursor:pointer;box-shadow:none!important;
  transition:background 240ms ease,border-color 240ms ease}
.epos-site .mc4wp-form #mc_embed_signup input[type=submit]:hover,
.epos-site .mc4wp-form #mc_embed_signup #mc-embedded-subscribe:hover{background:#EBD3A6!important;border-color:#EBD3A6!important}
@media(max-width:620px){
  .epos-site .mc4wp-form #mc_embed_signup input.email{font-size:16px!important}
  .epos-site .mc4wp-form #mc_embed_signup #mc-embedded-subscribe{width:100%!important}
}
/* Svar efter tilmelding (Mailchimp for WP lægger dem i .mc4wp-response) */
.epos-site .mc4wp-response:empty{display:none}
.epos-site .mc4wp-response .mc4wp-alert{margin:1.25rem 0 0;padding:1rem 1.25rem;border-radius:3px;
  border:1px solid #DFC28C55;background:#DFC28C0F;color:var(--ink)}
.epos-site .mc4wp-response .mc4wp-alert p{margin:0;font:400 .92rem/1.6 var(--sans)}
.epos-site .mc4wp-response .mc4wp-error,.epos-site .mc4wp-response .mc4wp-notice{border-color:#B98A8466;background:#B98A8412;color:#E6C3BD}
