/* Rishah website. Same green and ink as the platform; nothing fetched from other sites (system fonts only). */
:root{--blaek:#15202b;--fjer:#1f8a70;--fjer-m:#176a56;--taage:#eef4f2;--papir:#fff;--graa:#55636b;--linje:rgba(21,32,43,.14);--mynte:#dff0e9}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--papir);color:var(--blaek);font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto}
a{color:var(--fjer-m)}
a:focus-visible,summary:focus-visible,.prisrul:focus-visible{outline:3px solid var(--fjer);outline-offset:3px;border-radius:6px}
h1,h2,h3{line-height:1.12;letter-spacing:-.02em;margin:0}
h1{font-size:clamp(34px,5.2vw,58px);font-weight:850;max-width:15ch}
h2{font-size:clamp(27px,3.4vw,38px);font-weight:820}
h3{font-size:20px;font-weight:780}
.ind{font-size:clamp(17px,1.6vw,20px);color:var(--graa);margin:18px 0 0}
.ramme{max-width:1180px;margin:0 auto;padding:0 24px}

.spring{position:absolute;left:-999px;top:8px;background:var(--blaek);color:#fff;padding:8px 14px;border-radius:8px;z-index:10}.spring:focus{left:12px}

/* Top */
.top{position:sticky;top:0;z-index:5;background:rgba(255,255,255,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--linje)}
.topramme{display:flex;align-items:center;gap:28px;height:72px}
.logo img{display:block;height:44px;width:auto}
.menu{display:flex;gap:24px;margin-right:auto}
.menu a{color:var(--blaek);text-decoration:none;font-weight:620;font-size:16px}
.menu a:hover{color:var(--fjer-m)}
.handling{display:flex;align-items:center;gap:18px}
.lnk{color:var(--blaek);font-weight:620;text-decoration:none;font-size:16px}
.knap{display:inline-block;background:var(--fjer);color:#fff;text-decoration:none;font-weight:750;font-size:16px;padding:10px 18px;border-radius:10px;border:2px solid var(--fjer)}
.knap:hover{background:var(--fjer-m);border-color:var(--fjer-m)}
.knap.lys{background:transparent;color:var(--fjer-m)}.knap.lys:hover{background:var(--mynte)}
.knap.stor{font-size:18px;padding:14px 26px;border-radius:12px}
.knap.hvid{background:#fff;color:var(--fjer-m);border-color:#fff}.knap.hvid:hover{background:var(--mynte)}
.sprog{position:relative}
.sprog summary{list-style:none;cursor:pointer;font-weight:700;font-size:14px;padding:6px 10px;border:1px solid var(--linje);border-radius:8px}
.sprog summary::-webkit-details-marker{display:none}
.sprogliste{position:absolute;right:0;top:40px;background:#fff;border:1px solid var(--linje);border-radius:12px;padding:6px;min-width:150px;box-shadow:0 12px 30px rgba(21,32,43,.12)}
.sprogliste a{display:block;padding:8px 12px;border-radius:8px;color:var(--blaek);text-decoration:none}
.sprogliste a:hover{background:var(--taage)}.sprogliste a[aria-current]{font-weight:750;color:var(--fjer-m)}

/* Hero: the invoice and the way it travels – the one moving thing on the page */
.helt{padding:72px 0 88px;background:var(--papir);border-bottom:1px solid var(--linje)}
.heltramme{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:56px;align-items:center}
.knapper{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.fakta{list-style:none;padding:0;margin:26px 0 0;display:flex;flex-wrap:wrap;gap:8px 22px;color:var(--graa);font-size:15px;font-weight:600}
.fakta li::before{content:"✓";color:var(--fjer);font-weight:900;margin-right:7px}
.levering{margin:0;position:relative}
.papir{background:#fff;border:1px solid var(--linje);border-radius:0 0 14px 14px;border-top:0;padding:22px 26px 24px;box-shadow:0 30px 60px -30px rgba(21,32,43,.30)}
.fil{display:flex;align-items:center;gap:12px;background:var(--blaek);color:#fff;border-radius:14px 14px 0 0;padding:14px 20px;font-size:15px}
.filikon{background:#e04f3f;color:#fff;font-weight:900;font-size:11px;letter-spacing:.04em;padding:5px 7px;border-radius:5px}
.filnavn{font-weight:650}
.filok{margin-left:auto;color:#9fe0c8;font-weight:700}
.filok::before{content:"✓ "}
.papirtop{display:flex;gap:14px;align-items:center;padding-bottom:16px;border-bottom:1px solid var(--linje);margin-bottom:10px}
.papirtop strong{display:block;font-size:18px}.papirtop span{color:var(--graa);font-size:14px}
.papir table{width:100%;border-collapse:collapse;font-size:15px}
.papir td{padding:8px 0}.papir td:nth-child(2){color:var(--graa);padding:0 12px}.papir td:last-child{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.papir .sum td{border-top:2px solid var(--blaek);font-weight:800;padding-top:12px}
.spor{list-style:none;margin:22px 0 0 18px;padding:0 0 0 22px;border-left:2px dashed rgba(31,138,112,.45)}
.spor li{position:relative;padding:7px 0;font-weight:650;font-size:16px;opacity:0;transform:translateY(6px);animation:frem .45s ease-out forwards;animation-delay:calc(.6s + var(--i) * .75s)}
.spor li::before{content:"✓";position:absolute;left:-36px;top:7px;width:26px;height:26px;border-radius:50%;background:var(--fjer);color:#fff;font-size:14px;font-weight:900;display:grid;place-items:center}
.spor li:last-child{color:var(--fjer-m)}
@keyframes frem{to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.spor li{animation:none;opacity:1;transform:none}}

/* Sections */
.blok{padding:84px 0}
.taaget{background:var(--taage)}
.maader{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:44px}
.maade{border-top:4px solid var(--fjer);padding-top:20px}
.maade.m1{border-top-color:var(--blaek)}
.maade.m2{border-top-color:#7d8fae}
.maade p{color:var(--graa);margin:10px 0 0}
.tospalte{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:start}
.hvem{margin:0;display:grid;gap:0}
.hvem div{padding:20px 0;border-bottom:1px solid var(--linje)}.hvem div:first-child{padding-top:4px}
.hvem dt{font-weight:780;font-size:19px}.hvem dd{margin:6px 0 0;color:var(--graa)}
.modtag{border-left:6px solid var(--fjer);padding-left:28px}
.punkter{list-style:none;padding:0;margin:22px 0 0;max-width:760px}.punkter li{position:relative;padding:0 0 12px 28px}.punkter li::before{content:"✓";position:absolute;left:0;color:var(--fjer);font-weight:900}

/* Prices – one honest table, the 100-package marked as the one most people pick */
.prisrul{overflow-x:auto;margin-top:36px;background:#fff;border-radius:16px;border:1px solid var(--linje)}
.priser{width:100%;border-collapse:collapse;min-width:720px}
.priser th,.priser td{padding:15px 18px;text-align:center;border-bottom:1px solid var(--linje);font-size:16px}
.priser th[scope=row]{text-align:left;font-weight:600;color:var(--graa)}
.priser thead th{font-size:17px;font-weight:800;padding-top:22px}
.priser .pris td{font-weight:820;font-size:18px}
.priser .mest{background:var(--mynte)}
.priser tr:last-child th,.priser tr:last-child td{border-bottom:0}
.gratis{color:var(--fjer-m);font-weight:750}
.ind.lille{font-size:16px;margin-top:12px}
.ja{color:var(--fjer);font-weight:900;font-size:19px}.nej{color:#9aa5ab}
.note{color:var(--graa);margin:20px 0 26px;font-size:16px}

/* The upload feature – a real sequence, so the steps are numbered */
.upl{background:var(--blaek);color:#fff}
.upl .ind{color:#c9d3d8}
.trin{list-style:none;counter-reset:trin;margin:40px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.trin li{counter-increment:trin;border-top:2px solid rgba(255,255,255,.18);padding-top:18px}
.trin li::before{content:counter(trin);display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--fjer);color:#fff;font-weight:850;margin-bottom:14px}
.trin h3{font-size:20px}
.trin p{color:#c9d3d8;margin:8px 0 0}
.vs{margin:40px 0 0;font-size:clamp(19px,2vw,24px);font-weight:780;color:#9fe0c8}
@media (max-width:980px){.trin{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.trin{grid-template-columns:1fr}}

/* Who it is for */
.til h2{max-width:none}
.tilgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;margin-top:36px}
.tilgrid article{display:flex;flex-direction:column}
.tilgrid h3{font-size:21px;min-height:2.3em}
.tilgrid p{color:var(--graa);margin:10px 0 14px;flex:1}
.tilgrid a{font-weight:750;text-decoration:none;color:var(--fjer-m)}
.tilgrid a:hover{text-decoration:underline}
@media (max-width:1100px){.tilgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.tilgrid{grid-template-columns:1fr}.tilgrid h3{min-height:0}}
.stjerner{margin:0 0 8px;color:#e8a317;font-size:20px;letter-spacing:2px}

/* Comparison and reviews */
.samm{min-width:600px}
.samm td,.samm th{font-variant-numeric:tabular-nums}
.samm thead th{text-align:center}.samm thead th:first-child{text-align:left}
.samm .os{background:var(--mynte);font-weight:820;color:var(--fjer-m)}
.anm{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 56px;margin-top:36px}
.anm figure{margin:0;border-left:4px solid var(--fjer);padding-left:20px}
.anm blockquote{margin:0;font-size:17px;line-height:1.65}
.anm figcaption{margin-top:14px;font-weight:750}
@media (max-width:980px){.anm{grid-template-columns:1fr;gap:28px}}

/* Questions */
.sp{border-bottom:1px solid var(--linje)}
.sp summary{cursor:pointer;list-style:none;padding:20px 40px 20px 0;font-weight:720;font-size:19px;position:relative}
.sp summary::-webkit-details-marker{display:none}
.sp summary::after{content:"+";position:absolute;right:6px;top:16px;font-size:26px;color:var(--fjer);font-weight:500}
.sp[open] summary::after{content:"–"}
.sp p{margin:0 0 22px;color:var(--graa)}
.smal h2{margin-bottom:12px}

.slut{background:var(--fjer);color:#fff;padding:76px 0;text-align:left}
.slut p{font-size:20px;margin:12px 0 28px;opacity:.92}
.fod{background:var(--blaek);color:#cfd6da;padding:40px 0;font-size:15px}
.fodramme{display:flex;align-items:center;gap:28px;flex-wrap:wrap}
.fod img{filter:brightness(0) invert(1);opacity:.9}
.fod p{margin:0;margin-right:auto}
.fod nav{display:flex;gap:20px;flex-wrap:wrap}.fod a{color:#fff;text-decoration:none}.fod a:hover{text-decoration:underline}

/* Phone and tablet */
@media (max-width:980px){
  .menu{display:none}
  .heltramme,.tospalte{grid-template-columns:1fr;gap:44px}
  .maader{grid-template-columns:1fr;gap:30px}
  .helt{padding:48px 0 56px}
  .blok{padding:60px 0}
}
@media (max-width:560px){
  .ramme{padding:0 16px}
  .topramme{gap:12px;height:64px}
  .logo img{height:36px}
  .lnk{display:none}
  .knap{padding:9px 14px;font-size:15px}
  .papir{padding:18px}
  .fil{padding:12px 16px}
  .papir td:nth-child(2){display:none}
}

/* Text follows the page's width (Marsha 8 Nov 2026: «den skal følge siden») – the hero keeps its own column */
.helttekst .ind{max-width:60ch}
.betal{margin:30px 0 8px;background:var(--taage);border-radius:16px;padding:24px 28px}
.betal p{color:var(--graa);margin:8px 0 0}
.betal dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:20px 0 0}
.betal dt{font-weight:780}.betal dd{margin:4px 0 0;color:var(--graa);font-size:16px}
@media (max-width:760px){.betal dl{grid-template-columns:1fr;gap:14px}}
/* Text pages: terms, privacy, cookies */
.jura{padding:56px 0 84px}
.jura h1{font-size:clamp(30px,4vw,42px);margin:0 0 6px}
.jura .dato{color:#5b6b78;margin:0 0 32px}
.jura h2{font-size:22px;margin:36px 0 10px}
.jura h3{font-size:18px;margin:26px 0 8px}
.jura p,.jura li{line-height:1.65}
.jura ul{padding-left:22px}
.jura table{border-collapse:collapse;width:100%;margin:12px 0;font-size:15px}
.jura th,.jura td{text-align:left;padding:9px 10px;border-bottom:1px solid rgba(21,32,43,.12);vertical-align:top}
.jura .hint{color:#5b6b78}
.jura .aaben{background:#fff4d6;border-left:4px solid #c98a00;padding:10px 14px;border-radius:6px}
@media (max-width:640px){.jura table,.jura tbody,.jura tr,.jura th,.jura td{display:block;width:auto}.jura tr:first-child{display:none}.jura tr{border-bottom:1px solid rgba(21,32,43,.14);padding:8px 0}.jura td{border:0;padding:2px 0}.jura td:first-child{font-weight:700}}

/* Cookie bar (11 Nov 2026): «Afvis alle» and «Accepter alle» look exactly the same – no is as easy as yes */
.cookiebar{position:fixed;left:0;right:0;bottom:0;z-index:50;padding:0 16px 16px}
.cookiebar-in{max-width:760px;margin:0 auto;background:#fff;color:#15202b;border-radius:18px;box-shadow:0 -4px 40px rgba(0,0,0,.18);padding:20px 22px}
.cookiebar h2{margin:0 0 6px;font-size:20px}
.cookiebar p{margin:0 0 12px;font-size:15px}
.cookie-main{display:flex;gap:10px;flex-wrap:wrap}
.cookie-btn{flex:1 1 180px;text-align:center;background:#15202b;color:#fff;border:0;border-radius:10px;padding:11px 18px;font:inherit;font-weight:700;font-size:16px;cursor:pointer}
.cookie-btn:hover{background:#2a3a4c}
.cookie-btn:focus-visible{outline:3px solid #1f8a70;outline-offset:3px}
.cookie-choose{margin-top:10px;font-size:15px}
.cookie-choose summary{cursor:pointer;font-weight:700;color:#176a56}
.cookie-check{display:flex;gap:8px;align-items:center;margin-top:8px}
.cookie-choose .cookie-btn{margin-top:12px}
.fodcookie{background:none;border:0;padding:0;font:inherit;color:inherit;text-decoration:underline;cursor:pointer}
@media (max-width:860px){.cookiebar-in{padding:16px}}

/* Price table: the first rows, the rest behind «Se alle» (Marsha 12 Nov 2026) – a checkbox, so no script is needed */
.visalle{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.visalle:not(:checked)~.prisrul tr.ekstra{display:none}
.flere{display:inline-flex;align-items:center;gap:8px;margin-top:14px;cursor:pointer;font-weight:750;color:var(--fjer-m);padding:10px 18px;border:2px solid var(--fjer);border-radius:10px;background:#fff}
.flere:hover{background:var(--mynte)}
.flere::after{content:'';width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin-top:-4px}
.visalle:checked~.flere::after{transform:rotate(-135deg);margin-top:4px}
.visalle:checked~.flere .f1,.visalle:not(:checked)~.flere .f2{display:none}
.visalle:focus-visible~.flere{outline:3px solid var(--fjer);outline-offset:3px}

/* The two agreements beside the packages (Marsha 12 Nov 2026) */
.aftaler{margin-top:56px;padding-top:40px;border-top:1px solid var(--linje)}
.aftaler h3{font-size:clamp(23px,2.6vw,30px)}
.aftalegrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:26px 0 28px}
.aftalegrid article{background:#fff;border:1px solid var(--linje);border-radius:16px;padding:26px 26px 22px}
.aftalegrid h4{font-size:20px;margin:0 0 8px}
.aftalegrid p{margin:0 0 14px}
.niveauer{list-style:none;padding:0;margin:0 0 16px;border-top:1px solid var(--linje)}
.niveauer li{padding:9px 0;border-bottom:1px solid var(--linje);font-weight:650;font-variant-numeric:tabular-nums}
.regler{color:var(--graa);font-size:15px}
@media (max-width:760px){.aftalegrid{grid-template-columns:1fr}}

/* The contact form */
.kontaktform{margin-top:48px;padding:30px;background:var(--taage);border-radius:18px}
.kontaktform h2{font-size:clamp(24px,3vw,32px);margin-bottom:18px}
.kontaktform form{display:grid;gap:16px}
.kffelt{display:grid;gap:6px}
.kffelt span{font-weight:650;font-size:16px}
.kffelt small{color:var(--graa);font-size:14px}
.kffelt abbr{text-decoration:none;color:var(--fjer-m)}
.kontaktform input,.kontaktform select,.kontaktform textarea{font:inherit;font-size:16px;color:var(--blaek);background:#fff;border:1px solid rgba(21,32,43,.28);border-radius:10px;padding:11px 13px;width:100%}
.kontaktform input:focus-visible,.kontaktform select:focus-visible,.kontaktform textarea:focus-visible,.kontaktform button:focus-visible{outline:3px solid var(--fjer);outline-offset:2px}
.kfto{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media (max-width:620px){.kfto{grid-template-columns:1fr}.kontaktform{padding:22px 18px}}
.kfaftale{display:grid;gap:14px}
.kfpris{background:#fff;border:2px solid var(--fjer);border-radius:12px;padding:14px 18px}
.kfpris p{margin:4px 0 0;font-weight:600}
.kfskjult{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.kfprivat{margin:0;font-size:14px}
.kfsvar{border-radius:10px;padding:12px 16px;font-weight:650;margin:0 0 16px}
.kfsvar.ok{background:var(--mynte);color:var(--fjer-m)}
.kfsvar.fejl{background:#fdecea;color:#9b2c1f}
.kontaktform button{justify-self:start;cursor:pointer;font:inherit;font-weight:750}
.kfaftale[hidden],.kfpris[hidden]{display:none}
