/* ============================================================
   Lillehammer Liftutleie — DESIGNSYSTEM
   Én kilde til sannhet for alle sider (forside, kategori, produkt, støtte).
   Endres her, slår gjennom overalt. Bygget for statiske sider på Cloudflare Pages.
   Font: Arial (som logoen) – Arial Bold i overskrifter, Arial i brødtekst. Byttet fra Anton/Inter 11.10.2026. Aksent: grønn.
   ============================================================ */

:root{
  --svart:#0e1110; --off:#f5f4ef; --gronn:#0f9d4e; --gronn-m:#0b7f3e; --gronn-d:#075f2e;
  --grå:#5a615f; --linje:#e2e1da; --kort:#fff; --maks:1200px;
  /* Firkantet formspråk, matcher logoen. Én verdi styrer alle avrundinger. */
  --rad:4px;      /* knapper, chips, skjemafelt, små elementer */
  --rad-lg:7px;   /* kort, paneler, bilder, tabeller */
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:Arial,Helvetica,sans-serif;color:var(--svart);background:var(--off);line-height:1.55;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.wrap{max-width:var(--maks);margin:0 auto;padding:0 24px}
/* Hopp til innhold: skjult til den får tastaturfokus */
.hopp{position:fixed;top:8px;left:8px;z-index:100;background:#fff;color:var(--gronn-d);font-weight:800;
  padding:12px 18px;border-radius:var(--rad);box-shadow:0 8px 24px rgba(0,0,0,.28);
  transform:translateY(-200%);transition:transform .15s}
.hopp:focus{transform:none;outline:3px solid var(--gronn);outline-offset:2px}
h1,h2,h3{font-family:Arial,Helvetica,sans-serif;font-weight:700;letter-spacing:-.01em;line-height:1.05;text-transform:uppercase}
.eyebrow{font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;font-weight:700;color:#fff}
.tag{display:inline-block;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;font-weight:700;color:var(--gronn-d);margin-bottom:12px}

/* --- Knapper (gjenbruk overalt) --- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:700;padding:14px 24px;border-radius:var(--rad);font-size:1rem;transition:.15s;border:0;cursor:pointer}
.btn-p{background:var(--gronn-m);color:#fff}
.btn-p:hover{background:var(--gronn-d)}
.btn-lett{background:#eefaf3;color:var(--gronn-d);border:1.5px solid var(--gronn)}
.btn-lett:hover{background:#dff5e8}

/* --- Topbar (header, delt på alle sider) --- */
.topbar{position:sticky;top:0;z-index:50;background:rgba(11,127,62,.97);backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.14)}
.topbar .wrap{display:flex;align-items:center;gap:24px;height:66px}
.brand img{height:46px;width:auto}
.nav{display:flex;gap:20px;margin-left:auto;align-items:center}
.nav a{color:#fff;font-weight:600;font-size:.94rem}
.nav>a,.nav .ndrop>a{padding:3px 0}
.nav a:hover{color:#c9f5da}
a.tlf{display:inline-flex;align-items:center;gap:8px;background:#fff;color:var(--gronn-d);font-weight:800;padding:10px 18px;border-radius:var(--rad);font-size:.95rem}
a.tlf:hover{background:#e6f8ed;color:var(--gronn-d)}
.burger{display:none;margin-left:auto;background:none;border:0;color:#fff;font-size:1.6rem;cursor:pointer;padding:8px 10px;min-width:44px;min-height:44px;line-height:1}
/* Nedtrekksmeny */
.nav .ndrop{position:relative;display:inline-flex;align-items:center}
.nav .ndrop>a{display:inline-flex;align-items:center}
/* Pila er en egen knapp: lenken går til oversiktssiden, pila bretter ut på mobil */
.ncaret{background:none;border:0;color:#fff;font-size:.6rem;opacity:.9;cursor:pointer;line-height:1;
  /* 24×24 trykkeflate uten å flytte pila: negativ margin spiser opp polstringen */
  min-width:24px;min-height:24px;padding:0 0 0 5px;margin:-3px -6px -3px 0;display:inline-flex;align-items:center;justify-content:center}
.nsub{position:absolute;top:calc(100% + 12px);left:50%;transform:translateX(-50%);background:#fff;border-radius:var(--rad);border-top:3px solid var(--gronn);box-shadow:0 18px 40px rgba(0,0,0,.24);min-width:200px;padding:6px 0;display:none;flex-direction:column;z-index:60}
.nsub::before{content:"";position:absolute;top:-14px;left:0;right:0;height:14px}
.nav .ndrop:hover .nsub,.nav .ndrop:focus-within .nsub{display:flex}
.nsub a{color:var(--svart);font-weight:600;font-size:.9rem;padding:9px 20px;white-space:nowrap}
.nsub a:hover{background:var(--off);color:var(--gronn-d)}
/* Bred undermeny i to kolonner for «Maskiner og utstyr» */
.nsub.nsub-2{grid-template-columns:1fr 1fr;min-width:470px;padding:8px 0 0}
.nav .ndrop:hover .nsub.nsub-2,.nav .ndrop:focus-within .nsub.nsub-2{display:grid}
.nsub-kol{display:flex;flex-direction:column;padding:0 0 8px}
.nsub-tit{font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--grå);font-weight:800;padding:8px 20px 4px}
.nsub-bunn{grid-column:1/-1;display:flex;justify-content:space-between;background:var(--off);border-top:1px solid var(--linje)}
.nsub-bunn a{color:var(--gronn-d);font-weight:700}
.nsub-bunn a:hover{background:#ecebe4}
/* Siste undermeny (Om oss) står helt til høyre — åpne mot venstre så den ikke går ut av skjermen */
.nav>.ndrop:last-of-type .nsub{left:auto;right:-10px;transform:none}


/* --- Brødsmuler (kategori-/produktsider) --- */
.crumbs{background:#eeede6;font-size:.85rem;color:var(--grå)}
.crumbs .wrap{padding-top:12px;padding-bottom:12px;display:flex;flex-wrap:wrap;gap:6px}
.crumbs a{color:var(--gronn-d);font-weight:600;padding:3px 0;display:inline-block}
.crumbs a:hover{text-decoration:underline}
.crumbs span[aria-current]{color:var(--svart)}

/* --- Hero (forside: foto + forespørselspanel) --- */
.hero{position:relative;color:#fff;overflow:hidden}
.hero img.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 60%}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,17,16,.5) 0%,rgba(14,17,16,.35) 45%,rgba(14,17,16,.85) 100%)}
.hero .wrap{position:relative;z-index:2;padding-top:64px;padding-bottom:64px}
.hero .wrap>div{max-width:640px}
.hero h1{font-size:clamp(1.95rem,4.88vw,3.6rem);margin:14px 0 16px;max-width:22ch}
.hero p.lead{font-size:clamp(1rem,1.8vw,1.2rem);max-width:46ch;color:#eef0ee}
.hero-sok-tit{margin-top:22px;font-weight:700;font-size:1.05rem;color:#fff}
.hero-sok{display:flex;gap:10px;margin-top:10px;max-width:540px;position:relative}
.sok-pop{position:absolute;top:calc(100% + 8px);left:0;right:0;background:#fff;border-radius:var(--rad-lg);box-shadow:0 18px 46px rgba(0,0,0,.30);overflow:hidden;z-index:70;color:var(--svart);text-align:left}
.sok-res{display:flex;align-items:center;gap:12px;padding:10px 14px;border-bottom:1px solid var(--linje);text-decoration:none}
.sok-res:last-of-type{border-bottom:0}
.sok-res:hover{background:var(--off)}
.sok-th{width:54px;height:44px;flex:none;background:#fff;border-radius:4px;border:1px solid var(--linje);display:flex;align-items:center;justify-content:center;overflow:hidden}
.sok-th img{max-width:100%;max-height:100%;object-fit:contain}
.sok-txt{display:flex;flex-direction:column;line-height:1.28;min-width:0}
.sok-kat{font-size:.68rem;text-transform:uppercase;letter-spacing:.04em;color:var(--gronn-m);font-weight:700}
.sok-navn{font-size:.98rem;color:var(--svart);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sok-katres{display:flex;align-items:center;gap:12px;padding:12px 14px;border-bottom:1px solid var(--linje);text-decoration:none;background:#eef6ec}
.sok-katres:hover{background:#e3f0e0}
.sok-katres .sok-txt{flex:1}
.sok-katres .sok-navn{font-weight:800}
.sok-antall{color:var(--grå);font-weight:600;font-size:.85rem}
.sok-pil{flex:none;color:var(--gronn-d);font-weight:800;font-size:1.05rem}
.sok-alle{display:block;padding:12px 14px;text-align:center;font-weight:700;color:var(--gronn-d);text-decoration:none;background:#fafbf8;border-top:1px solid var(--linje)}
.sok-alle:hover{background:var(--off)}
.sok-tom{padding:16px;color:var(--grå);text-align:center;font-size:.95rem}
.sok-tom a{color:var(--gronn-d);font-weight:700}
.hero-sok input{flex:1;min-width:0;padding:14px 16px;border:0;border-radius:var(--rad);font-size:16px;font-family:inherit;background:#fff;color:var(--svart)}
.hero-sok .btn{flex:none}
.hero-alt{margin-top:14px;font-size:.98rem}
.hero-alt a{color:#fff;font-weight:600;text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(255,255,255,.5)}
.hero-alt a:hover{text-decoration-color:#fff}
@media(max-width:560px){.hero-sok{flex-wrap:wrap}}
/* Hero v2 — to kolonner: ren mørk tekstflate + foto i ramme (lesbarhet først) */
.hero2{background:linear-gradient(155deg,#0c1611 0%,#0e2418 55%,#0b1a12 100%);color:#fff}
/* Hero v3 — som live: fotobakgrunn, men mørkere og grønnere overlegg */
.hero3{position:relative}  /* ikke overflow:hidden — det klipper søkedropdownen */
.hero3>.bgfoto,.hero3::after{border-radius:inherit}
.hero3 .bgfoto{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 60%}
.hero3::after{content:"";position:absolute;inset:0;background:linear-gradient(155deg,rgba(6,19,12,.93) 0%,rgba(9,34,20,.78) 55%,rgba(5,16,10,.92) 100%)}
.hero3 .hero2-grid{position:relative;z-index:2}
.hero2-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:52px;align-items:center;padding-top:72px;padding-bottom:72px}
.h2-tekst h1{font-size:clamp(2.25rem,4.5vw,3.9rem);margin:16px 0 18px;max-width:20ch}
.h2-tekst .lead2{font-size:clamp(1.12rem,1.9vw,1.38rem);line-height:1.5;color:#e7ece8;max-width:40ch}
.h2-tekst .hero-sok-tit{font-size:1.08rem}
.h2-media img{width:100%;height:100%;min-height:440px;object-fit:cover;object-position:center 60%;border-radius:var(--rad-lg);display:block;box-shadow:0 30px 70px -30px rgba(0,0,0,.6)}
@media(max-width:900px){
  .hero2-grid{grid-template-columns:1fr;gap:30px;padding-top:48px;padding-bottom:48px}
  .h2-media img{min-height:240px;max-height:300px}
}
.hero-kontakt{display:flex;justify-content:space-between;align-items:center;gap:12px 30px;flex-wrap:wrap;margin-top:30px;border-top:1px solid rgba(255,255,255,.22);padding-top:20px;font-size:.98rem}
.hero-kontakt .tid{color:#eef0ee;font-weight:700}
.hero-kontakt .hk-hoyre{display:flex;gap:26px;flex-wrap:wrap;align-items:center}
.hero-kontakt .hk-hoyre a{color:#fff;font-weight:700;display:inline-flex;align-items:center;gap:8px}
.hero-kontakt .hk-hoyre a:hover{text-decoration:underline;text-underline-offset:3px}
.hero-kontakt .hk-alle{flex-basis:100%;color:#cfd3d0;font-weight:600;font-size:.86rem;text-decoration:underline;text-underline-offset:2px;padding:3px 0}
.hero-kontakt .hk-alle:hover{color:#fff}
.hero .facts{display:flex;gap:26px;flex-wrap:wrap;margin-top:28px;border-top:1px solid rgba(255,255,255,.22);padding-top:20px}
.hero .facts b{font-family:Arial,Helvetica,sans-serif;font-weight:700;font-size:1.6rem;display:block;line-height:1}
.hero .facts small{color:#cfd3d0;font-size:.78rem;letter-spacing:.04em}

/* --- Forespørselspanel (mailto-skjema) --- */
.book{background:#fff;color:var(--svart);border-radius:var(--rad-lg);padding:28px;box-shadow:0 30px 60px -20px rgba(0,0,0,.5)}
.book h2{font-size:1.6rem;margin-bottom:4px}
.book .sub{color:var(--grå);font-size:.9rem;margin-bottom:18px}
.book .sub a{color:var(--gronn-d);font-weight:800}
.book form{display:grid;gap:13px}
.book label{font-size:.8rem;font-weight:700;color:#3c423f;display:block;margin-bottom:5px}
.book select,.book input,.book textarea{width:100%;padding:12px 14px;border-radius:var(--rad);border:1.5px solid var(--linje);background:#fafaf7;font-family:inherit;font-size:.95rem;color:var(--svart)}
.book select:focus,.book input:focus,.book textarea:focus{outline:0;border-color:var(--gronn)}
.book textarea{resize:vertical;min-height:60px}
.book .alt{text-align:center;color:var(--grå);font-size:.85rem}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:13px}

/* --- Seksjoner + asymmetrisk seksjonstittel --- */
section{padding:80px 0}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;flex-wrap:wrap;margin-bottom:38px}
.sec-head h2{font-size:clamp(1.5rem,3.38vw,2.4rem);max-width:22ch}
.sec-head p{max-width:38ch;color:var(--grå)}

/* --- USP-stripe --- */
.usp{background:var(--gronn-d);color:#fff;padding:13px 0}
.usp .wrap{display:flex;gap:10px 32px;flex-wrap:wrap;justify-content:center;font-weight:600;font-size:.93rem}
.usp span::before{content:"✓ ";color:#fff;font-weight:800}

/* --- Referanse-band (mørkt, f.eks. Birken) --- */
.band-ref{background:var(--svart);color:#fff}
.band-ref .wrap{padding:64px 24px}
.band-ref .eyebrow{color:#fff}
.band-ref h2{font-size:clamp(1.5rem,3.75vw,2.55rem);margin:12px 0 16px;max-width:28ch}
.band-ref p{color:#d4d8d4;max-width:60ch;font-size:1.05rem}
.band-ref .band-stats{display:flex;gap:40px;flex-wrap:wrap;margin:30px 0 28px}
.band-ref .band-stats b{font-family:Arial,Helvetica,sans-serif;font-weight:700;font-size:2.6rem;display:block;line-height:1;color:#fff}
.band-ref .band-stats small{color:#9aa39b;font-size:.82rem;letter-spacing:.05em;text-transform:uppercase}

/* --- Kategori-kort med foto --- */
.kat{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}
.kat .kcard{grid-column:span 4}
.kat .kcard.sm{grid-column:span 3;height:260px}
.kcard.sm h3{font-size:1.35rem}
.kcard{position:relative;height:340px;overflow:hidden;border-radius:var(--rad-lg);display:flex;flex-direction:column;justify-content:flex-end;color:#fff;cursor:pointer;border:0;text-align:left;font-family:inherit}
.kcard .bg{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform .6s}
.kcard:hover .bg{transform:scale(1.07)}
.kcard::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,17,16,.05) 30%,rgba(14,17,16,.9))}
.kcard .body{position:relative;z-index:2;padding:22px}
.kcard h3{font-size:1.7rem}
.kcard p{color:#d9ded9;font-size:.88rem;margin-top:3px}
.kcard .pris{color:#fff;font-weight:800;font-size:.92rem;margin-top:8px}
.kat-mer-tit{margin:34px 0 4px;font-family:Arial,Helvetica,sans-serif;font-weight:800;font-size:.8rem;text-transform:uppercase;letter-spacing:.14em;color:var(--grå)}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.chip{border:1.5px solid var(--linje);border-radius:var(--rad);padding:11px 20px;font-size:.95rem;color:#3c423f;background:#fff;cursor:pointer;font-family:inherit;font-weight:600}
.chip:hover{border-color:var(--gronn);color:var(--gronn-d);background:#f3faf5}
/* Bestselgere på forsiden */
/* Tåler hvor mange bestselgere som helst: tre per rad, siste rad midtstilt
   med samme kortbredde som resten. Antallet styres i admin. */
.best-forside{display:flex;flex-wrap:wrap;justify-content:center;gap:18px}
.best-forside>.best-kort{flex:1 1 280px;max-width:calc((100% - 36px)/3)}
.best-kort{background:var(--kort);border:1px solid var(--linje);border-radius:var(--rad-lg);overflow:hidden;display:block;transition:.15s}
.best-kort:hover{box-shadow:0 14px 34px -14px rgba(0,0,0,.28);transform:translateY(-2px)}
.bk-foto{height:210px;background:#fff;display:flex;align-items:center;justify-content:center;padding:18px;border-bottom:1px solid var(--linje)}
.bk-foto img{max-height:100%;width:auto;object-fit:contain}
.bk-info{padding:16px 20px 20px}
.bk-kat{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--gronn-m);font-weight:700}
.bk-info h3{font-size:1.35rem;margin:4px 0 10px}
.bk-cta{color:var(--gronn-d);font-weight:700}
@media(max-width:980px){.best-forside>.best-kort{max-width:calc((100% - 18px)/2)}}
@media(max-width:760px){.best-forside>.best-kort{max-width:none;flex-basis:100%}}

/* --- Produktkort (kategori-hub + relaterte) --- */
.prod{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:18px}
.pcard{background:var(--kort);border:1px solid var(--linje);border-radius:var(--rad-lg);overflow:hidden;transition:.18s;display:flex;flex-direction:column}
.pcard:hover{transform:translateY(-4px);box-shadow:0 16px 34px -20px rgba(0,0,0,.4)}
.pcard .ph{aspect-ratio:4/3;background:#fff;display:flex;align-items:center;justify-content:center;padding:16px;border-bottom:1px solid var(--linje)}
.pcard .ph img{max-height:100%;width:auto;object-fit:contain}
.pcard .pb{padding:16px 18px 20px;display:flex;flex-direction:column;flex:1}
.pcard h3{font-size:1.12rem;margin-bottom:3px;text-transform:none;font-family:Arial,Helvetica,sans-serif;font-weight:800;letter-spacing:0}
.pcard .spec-lbl{color:var(--grå);font-size:.86rem;min-height:2.4em}
.pcard .pris{margin-top:auto;font-weight:800;color:var(--gronn-d)}
.pcard .pris small{color:var(--grå);font-weight:500}

/* --- Produkt-hero (produktside: foto + tittel + pris + CTA) --- */
.phero{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;padding:48px 0}
.phero .foto{background:#fff;border:1px solid var(--linje);border-radius:var(--rad-lg);aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;padding:24px;overflow:hidden}
.phero .foto img{max-width:100%;max-height:100%;width:auto;height:auto;min-width:0;min-height:0;object-fit:contain}
.phero h1{font-size:clamp(1.5rem,3.38vw,2.25rem);margin-bottom:10px}
.phero .modell{color:var(--gronn-m);font-weight:700;margin-bottom:14px}
.phero .pluss{color:var(--grå);font-size:1.02rem;max-width:46ch}
.phero .prisboks{margin:22px 0;font-family:Arial,Helvetica,sans-serif;font-weight:700;font-size:2.2rem;color:var(--gronn-d);line-height:1}
.phero .prisboks small{display:block;font-family:Arial,Helvetica,sans-serif;font-weight:500;font-size:.82rem;color:var(--grå);text-transform:none;letter-spacing:0;margin-top:4px}
.phero .cta{display:flex;gap:12px;flex-wrap:wrap}
.phero .foto-kol{display:flex;flex-direction:column;gap:12px}
.pgalleri{display:flex;gap:8px}
.pgalleri button{width:72px;height:64px;border:1.5px solid var(--linje);border-radius:var(--rad);background:#fff;padding:3px;cursor:pointer;overflow:hidden;flex:none}
.pgalleri button.akt{border-color:var(--gronn-m)}
.pgalleri img{width:100%;height:100%;object-fit:contain}
.pspec{margin-top:16px}
.pspec:empty{display:none}

/* --- Spesifikasjonstabell (produktside) --- */
.spec-wrap{overflow-x:auto;border:1px solid var(--linje);border-radius:var(--rad-lg);background:var(--kort)}
.spec{border-collapse:collapse;width:100%}
.spec th,.spec td{text-align:left;padding:12px 18px;border-bottom:1px solid var(--linje);font-size:.95rem}
.spec th{width:42%;color:var(--grå);font-weight:600}
.spec td{font-weight:600;font-variant-numeric:tabular-nums}
.spec tr:last-child th,.spec tr:last-child td{border-bottom:0}

/* --- Prosa / SEO-tekstblokk --- */
/* Støttesider (avdelinger, priser, kurs, om oss ...) */
.sidehero{position:relative;color:#fff;overflow:hidden;background:var(--gronn-d)}
.sidehero img.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 50%}
.sidehero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,17,16,.5),rgba(14,17,16,.78))}
.sidehero .wrap{position:relative;z-index:2;padding-top:66px;padding-bottom:58px}
.sidehero .eyebrow{color:#fff;opacity:.9}
.sidehero h1{font-size:clamp(1.8rem,4.13vw,3rem);margin-top:8px;color:#fff}
.sidehero p.underhero{margin-top:14px;max-width:56ch;color:#eef0ee;font-size:1.08rem}
section.innhold{padding:52px 0}
section.innhold .wrap>.prose:first-child{margin-top:0}
.pristab{width:100%;min-width:0;border-collapse:collapse;margin:6px 0 22px;font-size:.98rem}
.pristab caption{text-align:left;font-weight:800;font-size:1.05rem;padding:0 0 10px}
.pristab th,.pristab td{text-align:left;padding:11px 14px;border-bottom:1px solid var(--linje)}
.pristab thead th{background:#fafbf8;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:#556}
.pristab td:last-child,.pristab th:last-child{text-align:right;white-space:nowrap;font-weight:700}
.verdier{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin:8px 0 8px}
.verdier .v{background:var(--kort);border:1px solid var(--linje);border-radius:var(--rad-lg);padding:18px 20px}
.verdier .v strong{display:block;margin-bottom:5px;font-size:1.02rem;color:var(--svart)}
.verdier .v span{color:#555;font-size:.93rem;line-height:1.45;max-width:52ch}
.team{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px;margin:10px 0 26px}
.tcard{background:var(--kort);border:1px solid var(--linje);border-radius:var(--rad-lg);display:flex;align-items:center;gap:16px;padding:14px 18px}
.tcard .foto{width:72px;height:72px;flex:none;border-radius:var(--rad);object-fit:cover;object-position:center 22%;background:#e7e6dd}
.tcard .foto-init{display:flex;align-items:center;justify-content:center;font-family:Arial,Helvetica,sans-serif;font-weight:700;font-size:1.5rem;color:#fff;background:var(--gronn-m)}
.tcard .tinfo{min-width:0}
.tcard h3{font-size:1.05rem;margin-bottom:1px;text-transform:none;font-family:Arial,Helvetica,sans-serif;font-weight:800;letter-spacing:0}
.tcard .rolle{color:var(--gronn-m);font-weight:700;font-size:.8rem;margin-bottom:7px}
.tcard a{display:block;color:var(--gronn-d);font-weight:600;font-size:.92rem;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tcard a:hover{text-decoration:underline}
.faktaboks{background:var(--off);border:1px solid var(--linje);border-radius:var(--rad-lg);padding:20px 24px;margin:20px 0}
.faktaboks h2{margin-bottom:8px;font-size:1.25rem}

/* Tekst + bilde-seksjon (landingssider) */
.tb{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:center;margin:44px 0}
.tb-speil .tb-tekst{order:2}
.tb-tekst h2{margin-bottom:14px}
.tb-tekst p{color:#3f4644;margin-bottom:12px;max-width:62ch;font-size:1.02rem;line-height:1.65}
.tb-foto img{width:100%;height:auto;border-radius:var(--rad-lg);display:block}
/* height:auto er nødvendig: bildene har width/height i HTML for å unngå layouthopp,
   og uten den brukes høyden fra attributtet mens bredden er 100 %. Det strekker bildet. */
.mer-lenke{color:var(--gronn-d);font-weight:700}
.mer-lenke:hover{text-decoration:underline;text-underline-offset:3px}
/* Lifttyper — beskrivende kort */
.lt-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:22px 0 8px}
.lt{background:var(--kort);border:1px solid var(--linje);border-radius:var(--rad-lg);padding:22px 24px}
.lt h3{font-size:1.15rem;margin-bottom:9px}
.lt p{color:#3f4644;font-size:.96rem;line-height:1.6}
.lt-mer{margin-top:12px}
.lt-mer a{color:var(--gronn-d);font-weight:700;font-size:.93rem}
.lt-mer a:hover{text-decoration:underline;text-underline-offset:3px}
@media(max-width:900px){
  .tb,.tb-speil{grid-template-columns:1fr;gap:22px}
  .tb-speil .tb-tekst{order:0}
  .lt-grid{grid-template-columns:1fr}
}


/* Modellkort — produktbilde ved siden av spesifikasjonene */
.mk-liste{display:flex;flex-direction:column;gap:18px;margin:22px 0 10px}
.mkort{display:grid;grid-template-columns:230px 1fr;gap:26px;align-items:center;background:var(--kort);border:1px solid var(--linje);border-radius:var(--rad-lg);padding:20px 24px}
.mk-foto{height:180px;display:flex;align-items:center;justify-content:center;background:#fff}
.mk-foto img{min-width:0;max-width:100%;max-height:100%;width:auto;object-fit:contain}
.mk-info h3{font-size:1.3rem;margin-bottom:6px}
.mk-tekst{color:#3f4644;font-size:.98rem;margin-bottom:12px;max-width:60ch}
.mk-spec{width:100%;border-collapse:collapse;font-size:.94rem}
.mk-spec td{padding:6px 0;border-bottom:1px solid var(--linje)}
.mk-spec td:first-child{color:var(--grå);width:48%}
.mk-spec td:last-child{font-weight:700;text-align:right}
.mk-spec tr:last-child td{border-bottom:0}
.mk-lenke{display:inline-block;margin-top:12px;color:var(--gronn-d);font-weight:700;font-size:.95rem}
.mk-lenke:hover{text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px){
  /* minmax(0,1fr): ellers blir kolonnen like bred som bildet (width-attributtet) */
  .mkort{grid-template-columns:minmax(0,1fr);gap:14px;padding:18px}
  .mk-spec{min-width:0}
  /* Faktatabeller (adresse, kontaktperson) må kunne bryte linjen på mobil */
  .pristab td:last-child{white-space:normal;overflow-wrap:anywhere}
  .mk-foto{height:200px}
}

.innhold p:not([class]){max-width:68ch}

/* Prisliste */
/* ── Leiepriser ─────────────────────────────────────────────── */
.pris-merk{margin-top:10px;color:var(--grå);font-size:.95rem}
.pris-merk a{color:var(--gronn-d);font-weight:700;text-decoration:underline;text-underline-offset:3px}

/* Klistret kategorinavigasjon, rett under toppmenyen (66 px) */
.pris-nav{position:sticky;top:66px;z-index:40;background:rgba(245,244,239,.94);backdrop-filter:blur(8px);border-top:1px solid var(--linje);border-bottom:1px solid var(--linje);margin:22px 0 6px}
.pris-nav-i{display:flex;gap:8px;overflow-x:auto;padding:10px 0;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.pris-nav-i::-webkit-scrollbar{display:none}
.pris-nav a{flex:none;border:1.5px solid var(--linje);border-radius:var(--rad);background:#fff;padding:8px 14px;font-size:.88rem;font-weight:700;color:#3c423f;white-space:nowrap;transition:border-color .12s,background .12s}
.pris-nav a:hover{border-color:var(--gronn-m);color:var(--gronn-d)}
.pris-nav a.akt{background:var(--gronn-m);border-color:var(--gronn-m);color:#fff}
.pris-nav a:focus-visible{outline:2px solid var(--gronn-d);outline-offset:2px}

/* Én tabell per toppkategori */
/* Hver kategori er en <section> og arvet 80 px topp- og bunnpolstring fra
   section{padding:80px 0}. Sammen med margin-top ga det 198 px mellom en
   tabell og neste overskrift. Avstanden styres nå kun av margin-top. */
.pris-blokk{padding:0;margin-top:56px;scroll-margin-top:146px}
.pris-blokk:first-of-type{margin-top:38px}
.pris-gruppe{font-size:1.65rem;margin:0 0 12px;color:var(--svart)}
.pristabell-wrap{overflow-x:auto;background:#fff;border:1px solid var(--linje);border-radius:var(--rad-lg)}
.pristabell{width:100%;border-collapse:collapse;font-size:.95rem}
/* Topplinja i vår egen grønnfarge, ikke svart */
.pristabell thead th{background:var(--gronn-d);text-align:right;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.94);font-weight:700;padding:12px 14px 11px;border-bottom:0}
.pristabell thead th:first-child{text-align:left}
.pristabell td{padding:11px 14px;border-bottom:1px solid var(--linje);text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.pristabell tbody tr:last-child td{border-bottom:0}
.pristabell tbody tr:not(.pr-gruppe):hover td{background:#fbfbf7}
.pristabell td.pr-utstyr{text-align:left;white-space:normal}
.pristabell td.pr-hoved{font-weight:800;color:var(--svart);font-size:1.02rem}
/* Eks. mva står ved siden av, dempet — leieprisen inkl. mva er hovedtallet */
.pristabell td.pr-eks{color:var(--grå);font-weight:600}
.pristabell td small{display:block;font-weight:500;font-size:.75rem;line-height:1.25;color:var(--grå);
  letter-spacing:0;text-transform:none;margin-top:2px;white-space:nowrap}
/* Gruppert topprad: Døgn / Helg over hvert sitt par kolonner */
.pristabell thead tr:first-child th.pr-th-grp{text-align:center;padding-bottom:6px}
.pristabell thead tr:last-child th.pr-th-sub{font-size:.66rem;padding-top:0;padding-bottom:12px;
  color:rgba(255,255,255,.75);font-weight:600;white-space:nowrap}
/* Skillelinje mellom døgn og helg — går gjennom hele tabellen, ikke bare toppen */
.pristabell th.pr-skille{border-left:1px solid rgba(255,255,255,.22)}
.pristabell td.pr-skille{border-left:1px solid var(--linje)}

.pristabell th.pr-th-navn{vertical-align:bottom;padding-bottom:12px;width:36%}
.pristabell td.pr-note{font-weight:500;color:var(--grå);font-size:.85rem;white-space:normal}
/* Undergruppe = skillerad inni tabellen, ikke egen tabell */
.pristabell tr.pr-gruppe th{text-align:left;background:#f4f4ee;color:var(--grå);font-family:Arial,Helvetica,sans-serif;font-weight:800;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;padding:9px 14px;border-top:1px solid var(--linje);border-bottom:1px solid var(--linje)}
.pristabell thead+tbody tr.pr-gruppe:first-child th{border-top:0}
.pr-navn{display:flex;align-items:center;gap:12px;color:var(--svart);font-weight:600}
.pr-navn img{width:52px;height:44px;flex:none;object-fit:contain;background:#fff;border:1px solid var(--linje);border-radius:4px}
.pr-navn small{display:block;color:var(--gronn-d);font-weight:600;font-size:.78rem}
a.pr-navn:hover small{text-decoration:underline;text-underline-offset:3px}

/* Vilkår etter lista — to spalter, ingen kort: tabellene er objektene */
.pris-vilkar{display:grid;grid-template-columns:1fr 1fr;gap:20px 40px;margin:44px 0 28px;max-width:900px}
.pris-vilkar h3{font-size:1.1rem;margin-bottom:10px;color:var(--svart)}
.pris-vilkar ul{list-style:none}
.pris-vilkar li{padding:7px 0;border-bottom:1px solid var(--linje);font-size:.95rem;color:#3c423f}
.pris-vilkar li:last-child{border-bottom:0}
.pris-vilkar a{color:var(--gronn-d);font-weight:700;text-decoration:underline;text-underline-offset:3px}

@media(max-width:640px){
  .pris-nav{top:66px}
  .pris-blokk{margin-top:40px;scroll-margin-top:132px}
  .pris-gruppe{font-size:1.4rem}
  .pristabell-wrap{background:none;border:0}
  .pristabell thead{display:none}
  /* table{min-width:520px} globalt ville ellers klippe kortvisningen */
  .pristabell{min-width:0}
  .pristabell-wrap{overflow-x:visible}
  .pristabell,.pristabell tbody,.pristabell tr,.pristabell td,.pristabell th{display:block;width:100%}
  .pristabell tr{border:1px solid var(--linje);border-radius:var(--rad-lg);margin-bottom:10px;padding:6px 4px;background:#fff}
  .pristabell tr.pr-gruppe{border:0;background:none;padding:14px 2px 4px;margin:0}
  .pristabell tr.pr-gruppe th{background:none;border:0;padding:0}
  .pristabell td{border:0;display:flex;justify-content:space-between;align-items:center;text-align:right;padding:6px 12px;white-space:normal}
  .pristabell tbody tr:not(.pr-gruppe):hover td{background:none}
  .pristabell td.pr-utstyr{padding-bottom:10px;border-bottom:1px solid var(--linje);margin-bottom:6px}
  .pristabell td[data-l]::before{content:attr(data-l);color:var(--grå);font-size:.8rem;font-weight:600;text-align:left;flex:none;padding-right:14px}
  .pristabell td[data-l]>span{text-align:right}
  .pristabell td.pr-skille{border-left:0}
  .pristabell td small{white-space:normal}
  .pris-vilkar{grid-template-columns:1fr;gap:22px}
}
/* «Hva trenger du?» — kort veiledning, dempet så den ikke konkurrerer med produktkortene */
.velg3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:18px 0 8px}
@media(max-width:820px){.velg3{grid-template-columns:1fr}}
.velg3 .v{background:var(--off);border:1px solid var(--linje);border-radius:var(--rad-lg);padding:16px 18px}
.velg3 .v strong{display:block;margin-bottom:5px;font-size:1rem;color:var(--svart)}
.velg3 .v span{color:#555;font-size:.92rem;line-height:1.45}

/* Film (YouTube) på landingssider */
.filmer{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:22px 0}
.filmer.n1{grid-template-columns:minmax(0,640px)}
.filmer.n2{grid-template-columns:repeat(2,1fr)}
@media(max-width:900px){.filmer,.filmer.n2{grid-template-columns:repeat(2,1fr);gap:14px}}
@media(max-width:560px){.filmer,.filmer.n1,.filmer.n2{grid-template-columns:1fr}}
.film{position:relative;padding-top:56.25%;border-radius:var(--rad-lg);overflow:hidden;background:#000}
.film iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.spec-tab td:first-child{width:46%;color:#555;font-weight:600}

/* Produktkort på landingssider — samme uttrykk som katalogkortene */
.lkgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:22px 0 6px}
@media(max-width:900px){.lkgrid{grid-template-columns:repeat(2,1fr);gap:14px}}
@media(max-width:560px){.lkgrid{grid-template-columns:1fr}}
.lkort{background:#fff;border:1px solid var(--linje);border-radius:var(--rad-lg);overflow:hidden;display:flex;flex-direction:column;transition:.15s;box-shadow:0 1px 2px rgba(20,40,28,.04),0 8px 20px -14px rgba(20,40,28,.22)}
.lkort:hover{border-color:var(--gronn);box-shadow:0 16px 32px -18px rgba(0,0,0,.42);transform:translateY(-3px)}
.lk-foto{height:170px;background:#fff;display:flex;align-items:center;justify-content:center;padding:16px;border-bottom:1px solid var(--linje);overflow:hidden}
.lk-foto img{max-width:100%;max-height:100%;width:auto;height:auto;min-width:0;object-fit:contain}
.lk-info{padding:14px 16px 16px;display:flex;flex-direction:column;flex:1}
.lk-kat{font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;color:var(--gronn-m);font-weight:700;margin-bottom:4px}
.lkort h3{font-size:1.02rem;font-family:Arial,Helvetica,sans-serif;font-weight:800;line-height:1.2;text-transform:none;margin:0}
.lk-pris{margin-top:auto;padding-top:12px;font-weight:900;color:var(--svart);font-size:1.2rem;line-height:1.05}
.lk-pris small{display:block;color:var(--grå);font-weight:500;font-size:.74rem;margin-top:3px}
.lk-pris.ring{font-size:1rem;color:var(--gronn-d)}
.side-cta{display:flex;gap:12px;flex-wrap:wrap;margin:26px 0 4px}
.prose{max-width:70ch;color:var(--svart)}
.prose h2{font-size:1.6rem;margin:32px 0 12px}
.prose h3{font-size:1.2rem;text-transform:none;font-family:Arial,Helvetica,sans-serif;font-weight:800;margin:24px 0 8px}
.prose p{max-width:68ch;margin-bottom:14px;color:#333}
.prose ul{margin:0 0 16px 22px}
.prose li{margin-bottom:6px}

/* --- Pris-tabell (forside + prisside) --- */
.pris-wrap{overflow-x:auto;border:1px solid var(--linje);border-radius:var(--rad-lg);background:var(--kort)}
table{border-collapse:collapse;width:100%;min-width:520px}
th,td{text-align:left;padding:14px 18px;border-bottom:1px solid var(--linje);font-size:.95rem}
thead th{background:var(--svart);color:#fff;font-weight:600;font-size:.82rem;letter-spacing:.05em;text-transform:uppercase}
tbody tr:last-child td{border-bottom:0}
tbody tr:hover{background:#faf9f4}
td.num{font-variant-numeric:tabular-nums;font-weight:600}
.pris-note{color:var(--grå);font-size:.85rem;margin-top:12px}

/* --- Steg (slik gjør du) --- */
.steg{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:20px}
.steg .s{background:var(--kort);border:1px solid var(--linje);border-radius:var(--rad-lg);padding:28px 24px}
.steg .s b.no{font-family:Arial,Helvetica,sans-serif;font-weight:700;font-size:1.1rem;color:#fff;background:var(--gronn-m);width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:16px}
.steg .s h3{font-size:1.2rem;margin-bottom:6px;text-transform:none;font-family:Arial,Helvetica,sans-serif;font-weight:800}
.steg .s p{color:var(--grå);font-size:.92rem;max-width:44ch}

/* --- Anmeldelser --- */
.anm{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:16px}
.acard-r{background:var(--kort);border:1px solid var(--linje);border-radius:var(--rad-lg);padding:26px 24px;display:flex;flex-direction:column}
.acard-r .stj{color:#c07b00;letter-spacing:2px;font-size:1rem;margin-bottom:10px}
.acard-r p{font-size:.97rem;flex:1}
.acard-r .kilde{padding:14px 0 0;color:var(--grå);font-size:.85rem;font-weight:600}

/* --- Avdelinger --- */
.avd{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-bottom:32px}
.acard{background:var(--kort);border:1px solid var(--linje);border-radius:var(--rad-lg);padding:24px}
.acard h2{font-size:1.3rem;margin-bottom:10px}
.acard .adr{color:var(--grå);font-size:.92rem;line-height:1.5}
.acard .adr strong{color:var(--svart)}
.acard a.tel{display:inline-block;margin-top:12px;color:var(--gronn-d);font-weight:700}
/* Avdelingskort v2 — lokasjon/adresse/tider/tlf i front */
.acard .a-type{display:inline-block;vertical-align:middle;font-family:Arial,Helvetica,sans-serif;font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--gronn-m);background:#e8f5ec;border-radius:var(--rad);padding:4px 8px;margin-left:6px}
.acard .a-info{margin:14px 0 4px;display:flex;flex-direction:column;gap:8px;font-size:1.02rem;line-height:1.45}
.acard .a-info strong{color:var(--svart)}
.acard .a-tlf{display:block;margin-top:12px;color:var(--gronn-d);font-weight:800;font-size:1.35rem}
.acard .a-tlf:hover{text-decoration:underline}
.acard .a-mer{display:inline-block;margin-top:12px;color:var(--gronn-m);font-weight:600;font-size:.9rem}
.acard .a-mer:hover{text-decoration:underline}
.kart{border:0;width:100%;height:360px;border-radius:var(--rad-lg);filter:grayscale(.15)}

/* --- FAQ --- */
.faq details{background:var(--kort);border:1px solid var(--linje);border-radius:var(--rad-lg);padding:0 22px;margin-bottom:12px}
.faq summary{cursor:pointer;padding:20px 0;font-weight:700;font-size:1.05rem;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--gronn);font-size:1.5rem;font-weight:400}
.faq details[open] summary::after{content:"–"}
.faq details p{padding:0 0 22px;color:var(--grå);max-width:70ch}

/* --- Footer --- */
footer{background:var(--svart);color:#c9cdca;padding:64px 0 30px;margin-top:20px}
.fgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr 1fr;gap:30px 34px;padding-bottom:40px;border-bottom:1px solid rgba(255,255,255,.1)}
@media(max-width:1000px){.fgrid{grid-template-columns:1fr 1fr 1fr;gap:26px}.fgrid>div:first-child{grid-column:1/-1}}
footer h4,footer .f-tit{color:#fff;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;margin-bottom:16px;font-family:Arial,Helvetica,sans-serif;font-weight:700}
footer a{color:#c9cdca;display:block;padding:3px 0;margin-bottom:5px;font-size:.94rem}
footer a:hover{color:#fff}
.fbot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;padding-top:24px;font-size:.84rem;color:#8a908d}
.fbot a{display:inline;color:#8a908d}

/* --- Animasjon + tilgjengelighet --- */
.js .reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}
.js .reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.js .reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--gronn-d);outline-offset:2px;border-radius:6px}
/* Paa moerke/groenne flater maa ringen vaere hvit for aa vaere synlig (WCAG 3:1) */
.topbar a:focus-visible,.topbar button:focus-visible,.hero2 a:focus-visible,.hero2 button:focus-visible,.hero2 input:focus-visible,.hero3 a:focus-visible,.band-ref a:focus-visible,footer a:focus-visible,.ringbar:focus-visible{outline-color:#fff}

/* --- Handlekurv / bestilling --- */
.kurv-knapp{display:inline-flex;align-items:center;gap:7px;background:rgba(255,255,255,.14);color:#fff;border:1px solid rgba(255,255,255,.3);font-family:inherit;font-weight:700;font-size:.9rem;padding:9px 15px;border-radius:var(--rad);cursor:pointer}
.kurv-knapp:hover{background:rgba(255,255,255,.24)}
.kurv-ant{background:#fff;color:var(--gronn-d);font-weight:800;font-size:.78rem;min-width:20px;height:20px;border-radius:100px;display:inline-flex;align-items:center;justify-content:center;padding:0 5px}
.leggkurv{display:inline-flex;align-items:center;gap:8px;background:#eefaf3;color:var(--gronn-d);border:1.5px solid var(--gronn);font-family:inherit;font-weight:800;font-size:.95rem;padding:13px 22px;border-radius:var(--rad);cursor:pointer}
.leggkurv:hover{background:#dff5e8}
.kort-kurv{position:absolute;bottom:10px;right:10px;z-index:3;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.92);border:1px solid var(--linje);color:var(--gronn-d);font-size:1.15rem;font-weight:800;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px -2px rgba(0,0,0,.2);opacity:.85;transition:.15s}
.kort-kurv:hover{background:var(--gronn);color:#fff;border-color:var(--gronn);opacity:1}
.kurv-overlay{position:fixed;inset:0;z-index:120;background:rgba(14,17,16,.5);display:flex;justify-content:flex-end}
.kurv-overlay[hidden]{display:none}
.kurv-skuff{background:var(--off);width:min(420px,100%);height:100%;overflow-y:auto;padding:22px;display:flex;flex-direction:column;gap:14px}
.kurv-topp{display:flex;justify-content:space-between;align-items:center;font-size:1.3rem;font-family:Arial,Helvetica,sans-serif;font-weight:700;text-transform:uppercase}
.kurv-x{background:none;border:0;font-size:1.3rem;cursor:pointer;color:var(--grå)}
.kurv-liste{display:flex;flex-direction:column;gap:8px}
.kurv-item{background:#fff;border:1px solid var(--linje);border-radius:var(--rad);padding:12px 14px;display:flex;justify-content:space-between;align-items:center;gap:10px}
.kurv-navn b{display:block;font-size:.98rem}.kurv-navn span{color:var(--grå);font-size:.82rem}
.kurv-hoyre{display:flex;align-items:center;gap:10px;white-space:nowrap}
.kurv-pris{font-weight:800;color:var(--gronn-d);font-size:.95rem}
.kurv-ring{color:var(--grå);font-size:.82rem;font-weight:600}
.kurv-fjern{background:none;border:0;color:var(--grå);font-size:1rem;cursor:pointer}
.kurv-sum{background:#fff;border:1px solid var(--linje);border-radius:var(--rad);padding:12px 14px}
.kurv-sumrad{display:flex;justify-content:space-between;align-items:baseline;font-size:1.05rem}
.kurv-sumrad b{font-family:Arial,Helvetica,sans-serif;font-weight:700;font-size:1.5rem;color:var(--gronn-d)}
.kurv-sumnote{color:var(--grå);font-size:.78rem}
.kurv-tom{color:var(--grå);font-size:.92rem;padding:12px 0}
.kurv-form{display:flex;flex-direction:column;gap:11px}
.kurv-form label{font-size:.8rem;font-weight:700;color:#3c423f;display:flex;flex-direction:column;gap:4px}
.kurv-form input,.kurv-form textarea{padding:11px 13px;border-radius:var(--rad);border:1.5px solid var(--linje);background:#fff;font-family:inherit;font-size:.95rem}
.kurv-form textarea{min-height:54px;resize:vertical}
.kurv-rad{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.kurv-lev{display:flex;flex-direction:column;gap:7px}
.kurv-lev-tit{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--grå)}
.kurv-lev label{display:flex;flex-direction:row;align-items:center;gap:9px;cursor:pointer;font-size:.98rem;font-weight:500;color:var(--svart)}
.kurv-lev input{width:17px;height:17px;accent-color:var(--gronn);flex:none}
.kurv-lev em{font-style:normal;color:var(--gronn-d);font-weight:600}
.kurv-transport{font-size:.92rem;color:var(--grå);margin-top:3px}
.kurv-transport b{font-family:inherit;font-size:.98rem;color:var(--gronn-d)}
.kurv-note{font-size:.82rem;color:var(--grå)}.kurv-note a{color:var(--gronn-d);font-weight:700}

/* --- Sticky ring-knapp på mobil --- */
.ringbar{display:none}

@media(max-width:900px){
  .nav{display:none}
  .nav.open{display:flex;position:absolute;top:66px;left:0;right:0;flex-direction:column;align-items:stretch;background:var(--gronn-d);padding:20px 24px 24px;gap:16px;border-bottom:1px solid rgba(255,255,255,.15);
    /* Headeren er klistret, så menyen må kunne scrolle når en undermeny er brettet ut.
       Høyden stopper over ringeknappen nederst, så den aldri dekker siste lenke. */
    max-height:calc(100vh - 160px);max-height:calc(100dvh - 160px);overflow-y:auto;overscroll-behavior:contain}
  /* Alle punkter venstrestilt, også de uten undermeny. Telefonknappen går i full bredde. */
  .nav.open>a{text-align:left}
  .nav.open>a.tlf{justify-content:center;margin-top:4px;padding:13px 18px}
  /* Mobil: bare hovedpunktene synes. Pila bretter ut undermenyen. */
  .nav .ndrop{display:flex;flex-wrap:wrap;align-items:center;width:100%}
  .nav .ndrop>a{flex:1}
  .ncaret{font-size:.85rem;min-width:44px;min-height:36px;padding:0;margin:-8px -12px -8px 0;transition:transform .15s}
  .nav .ndrop.apen>.ncaret{transform:rotate(180deg)}
  .nsub,.nsub.nsub-2{position:static;transform:none;display:none;background:transparent;border:0;box-shadow:none;padding:2px 0 6px 14px;min-width:0;width:100%}
  .nav .ndrop:hover .nsub,.nav .ndrop:focus-within .nsub,
  .nav .ndrop:hover .nsub.nsub-2,.nav .ndrop:focus-within .nsub.nsub-2{display:none}
  .nav .ndrop.apen>.nsub,.nav .ndrop.apen>.nsub.nsub-2{display:flex;flex-direction:column}
  .nsub::before{display:none}
  .nsub a{color:#dff5e8;padding:7px 0;font-weight:500}
  .nsub-kol{padding:0}
  .nsub-tit{color:rgba(255,255,255,.5);padding:10px 0 2px}
  .nsub-bunn{background:none;border:0;flex-direction:column}
  .nsub-bunn a{color:#fff}
  .nav>.ndrop:last-of-type .nsub{right:auto}
  .burger{display:block}
  .hero .wrap{grid-template-columns:1fr}
  .kat{grid-template-columns:1fr 1fr}
  .kat .kcard,.kat .kcard.sm{grid-column:span 2}
  .kat .kcard.sm{grid-column:span 1;height:200px}
  .kcard.sm .body{padding:14px}
  .kcard.sm p{display:none}
  .kcard.sm h3{font-size:1.05rem;overflow-wrap:anywhere}
  .kcard{height:280px}
  .phero{grid-template-columns:1fr;gap:24px}
  .phero .foto{aspect-ratio:1/1;padding:30px}
  section{padding:60px 0}
  .fgrid{grid-template-columns:1fr;gap:28px}
  .ringbar{display:flex;position:fixed;left:14px;right:14px;bottom:14px;z-index:60;background:var(--gronn-m);color:#fff;border-radius:var(--rad);padding:15px 22px;justify-content:center;align-items:center;gap:10px;font-weight:800;font-size:1.08rem;box-shadow:0 12px 32px -8px rgba(7,95,46,.6)}
  body{padding-bottom:78px}
}

/* «Noen av de som stoler på oss» — logokolonne øverst på arrangement */
.arr-topp{display:grid;grid-template-columns:1fr 230px;gap:20px 56px;align-items:start;margin-bottom:10px}
.stoler-kol{display:flex;flex-direction:column;align-items:center;gap:20px;padding:20px 16px;background:#fff;border:1px solid #e4e2da;border-radius:12px}
.stoler-tit{font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#666;text-align:center}
.stoler-kol img{max-width:170px;max-height:74px;width:auto;height:auto;object-fit:contain}
@media(max-width:820px){.arr-topp{grid-template-columns:1fr}
.stoler-kol{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:18px 30px}
.stoler-tit{flex-basis:100%}
.stoler-kol img{max-height:52px;max-width:130px}}

/* ---------- Samtykkebanner (samtykke.js) ----------
   Avslå og Godta er like store og like synlige: å si nei skal være like lett som ja. */
.samtykke{position:fixed;left:20px;bottom:20px;z-index:90;max-width:360px;background:#fff;color:var(--svart);
  border:1px solid var(--linje);border-top:3px solid var(--gronn);border-radius:var(--rad-lg);
  box-shadow:0 14px 40px -12px rgba(0,0,0,.32);padding:14px 16px;font-size:.86rem;line-height:1.45}
.samtykke p{margin:0 0 12px}
.samtykke a{color:var(--gronn-d);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.samtykke-knapper{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.samtykke-knapper button{font:inherit;font-weight:800;font-size:.9rem;padding:8px 12px;border-radius:var(--rad);cursor:pointer;min-height:40px}
.samtykke-nei{background:#fff;color:var(--svart);border:2px solid var(--svart)}
.samtykke-nei:hover{background:var(--off)}
.samtykke-ja{background:var(--gronn-d);color:#fff;border:2px solid var(--gronn-d)}
.samtykke-ja:hover{background:var(--gronn-m);border-color:var(--gronn-m)}
.samtykke button:focus-visible{outline:3px solid var(--gronn);outline-offset:2px}
@media(max-width:900px){
  /* Over ringeknappen, så «Ring 948 87 000» fortsatt kan trykkes. 44 px knapper for fingre. */
  .samtykke{left:12px;right:12px;bottom:82px;max-width:none;padding:12px 14px;font-size:.84rem}
  .samtykke p{margin-bottom:10px}
  .samtykke-knapper button{min-height:44px}
}

/* --- Guider --- */
.g-meta{font-size:.9rem;color:var(--grå);margin:0 0 22px}
.g-meta a{color:var(--gronn-d);font-weight:700}
.g-verktoy{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:14px 24px;margin:26px 0 6px}
.g-verktoy .chips{margin-top:0}
.g-verktoy .chip span{color:var(--grå);font-weight:500;margin-left:4px}
.g-verktoy .chip[aria-pressed="true"]{border-color:var(--gronn-d);background:var(--gronn-d);color:#fff}
.g-verktoy .chip[aria-pressed="true"] span{color:#d9eee0}
.g-sort{display:flex;align-items:center;gap:10px;font-size:.92rem;font-weight:600;color:#3c423f}
.g-sort select{font:inherit;font-weight:600;padding:10px 12px;border:1.5px solid var(--linje);border-radius:var(--rad);background:#fff;color:var(--svart)}
.g-antall{font-size:.9rem;color:var(--grå);margin:6px 0 16px;min-height:1.4em}
.ggrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.gkort{display:flex;flex-direction:column;background:var(--kort);border:1px solid var(--linje);border-radius:var(--rad-lg);overflow:hidden;color:inherit;text-decoration:none;transition:border-color .15s,transform .15s}
.gkort:hover{border-color:var(--gronn);transform:translateY(-2px)}
.gkort[hidden]{display:none}
.gk-foto{aspect-ratio:16/9;background:#fff;border-bottom:1px solid var(--linje);overflow:hidden}
.gk-foto img{width:100%;height:100%;object-fit:cover}
.gk-info{padding:16px 18px 18px;display:flex;flex-direction:column;flex:1}
.gkort h3{font-family:Arial,Helvetica,sans-serif;font-weight:800;font-size:1.12rem;line-height:1.25;text-transform:none;margin:0 0 8px}
.gk-info p{font-size:.93rem;color:#3f4644;line-height:1.5;margin:0 0 12px}
.gk-meta{margin-top:auto;font-size:.82rem;color:var(--grå);font-weight:600}
@media(max-width:900px){.ggrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.ggrid{grid-template-columns:minmax(0,1fr)}.g-sort{width:100%}.g-sort select{flex:1}}
@media(prefers-reduced-motion:reduce){.gkort{transition:none}.gkort:hover{transform:none}}
.gpris td small{display:block;font-weight:500;color:var(--grå);font-size:.8rem;margin-top:2px}
.gpris td:last-child,.gpris th:last-child{text-align:left}
.gpris-merk{font-size:.88rem;color:var(--grå);margin:-10px 0 18px}
@media(max-width:600px){.prose .pristab th,.prose .pristab td{padding:10px 8px;font-size:.9rem}.prose .pristab thead th{font-size:.7rem;letter-spacing:.02em}}
.tl-str .chip{text-decoration:none;display:inline-block}
.tl-str .chip[aria-current="page"]{border-color:var(--gronn-d);background:var(--gronn-d);color:#fff}
/* Toalettkalkulator */
.tkalk{background:var(--kort);border:1px solid var(--linje);border-radius:var(--rad-lg);padding:22px 24px;margin:8px 0 26px;max-width:640px}
.tk-rad{display:flex;justify-content:space-between;align-items:baseline;font-weight:700;margin-top:14px}
.tk-rad:first-child{margin-top:0}
.tk-rad output{font-family:Arial,Helvetica,sans-serif;font-weight:700;font-size:1.5rem;color:var(--gronn-d)}
.tkalk input[type=range]{width:100%;accent-color:var(--gronn-d);height:28px;margin:4px 0}
.tk-var{border:0;padding:0;margin:14px 0 0;display:flex;flex-wrap:wrap;gap:8px 22px}
.tk-var legend{font-weight:700;margin-bottom:8px;width:100%}
.tk-var label{display:flex;align-items:center;gap:8px;min-height:32px}
.tk-var input{accent-color:var(--gronn-d);width:18px;height:18px}
.tk-svar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:20px}
.tk-tall{background:var(--off);border-radius:var(--rad);padding:14px 10px;text-align:center}
.tk-tall strong{display:block;font-family:Arial,Helvetica,sans-serif;font-weight:700;font-size:2.4rem;line-height:1;color:var(--gronn-d)}
.tk-tall span{font-size:.85rem;color:#3c423f}
.tk-forslag{margin:16px 0 6px !important;font-weight:600}
.tk-merk{font-size:.85rem;color:var(--grå) !important;margin:0 !important}
@media(max-width:600px){.tkalk{padding:18px 16px}.tk-tall strong{font-size:2rem}}
.plande{margin:14px 0 0}.plande a{color:var(--gronn-d);font-weight:700}.plande a:hover{text-decoration:underline;text-underline-offset:3px}
.tk-da{font-weight:800;font-size:1.05rem;margin:22px 0 8px !important}
.tk-svar{margin-top:0}
.tk-cta{margin-top:16px}
.tk-cta .btn{width:100%;justify-content:center;text-align:center}
.tk-var input[type=checkbox]{accent-color:var(--gronn-d);width:18px;height:18px}
.tk-var + .tk-rad{margin-top:18px}

.h1-tillegg{display:block;font-size:.5em;color:var(--gronn-d);margin-top:6px}

/* Nyhet på forsiden */
.nyhet-kort{display:grid;grid-template-columns:1fr 1.1fr;align-items:center;background:#fff;border:1px solid #e3e2da;border-radius:var(--rad-lg);overflow:hidden;color:inherit;transition:box-shadow .2s}
.nyhet-kort:hover{box-shadow:0 18px 40px -18px rgba(7,95,46,.35)}
.nyhet-foto{background:#fff;padding:10px}
.nyhet-foto img{width:100%;height:auto;display:block;transition:transform .6s}
.nyhet-kort:hover .nyhet-foto img{transform:scale(1.04)}
.nyhet-tekst{padding:36px 40px 36px 10px}
.nyhet-merke{display:inline-block;background:var(--gronn);color:#fff;font-weight:800;font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;padding:6px 12px;border-radius:var(--rad)}
.nyhet-tekst h2{font-size:clamp(2.6rem,6vw,4.2rem);line-height:1;margin:14px 0 4px}
.nyhet-under{font-weight:800;color:var(--gronn-d);font-size:1.2rem;margin-bottom:14px}
.nyhet-tall{list-style:none;display:flex;gap:28px;margin:22px 0 26px;padding:0}
.nyhet-tall b{display:block;font-size:1.5rem}
.nyhet-tall span{font-size:.82rem;color:var(--grå)}
@media(max-width:900px){
  .nyhet-kort{grid-template-columns:1fr}
  .nyhet-tekst{padding:4px 22px 28px}
  .nyhet-foto img{aspect-ratio:3/2;object-fit:cover}
  .nyhet-tall{gap:18px}
}
.nyhet-kort+.nyhet-kort{margin-top:16px}
.nyhet-kort.snu{grid-template-columns:1.1fr 1fr}
.nyhet-kort.snu .nyhet-foto{order:2}
.nyhet-kort.snu .nyhet-tekst{padding:36px 10px 36px 40px}
@media(max-width:900px){
  .nyhet-kort.snu{grid-template-columns:1fr}
  .nyhet-kort.snu .nyhet-foto{order:0}
  .nyhet-kort.snu .nyhet-tekst{padding:4px 22px 28px}
}

/* To nyheter side om side */
.nyhet-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.nyhet-grid .nyhet-kort{grid-template-columns:1fr;align-items:start;margin-top:0}
.nyhet-grid .nyhet-foto{padding:16px 16px 0}
.nyhet-grid .nyhet-foto img{aspect-ratio:4/3;object-fit:contain}
.nyhet-grid .nyhet-tekst{padding:6px 30px 30px}
.nyhet-grid .nyhet-tekst h2{font-size:clamp(2.2rem,4vw,3.2rem)}
.nyhet-grid .nyhet-tall{gap:22px;margin:18px 0 22px}
@media(max-width:900px){
  .nyhet-grid{grid-template-columns:1fr}
  .nyhet-grid .nyhet-tekst{padding:4px 22px 28px}
}
.nyhet-merker{display:flex;gap:8px;flex-wrap:wrap}
.nyhet-merke.el{display:inline-flex;align-items:center;gap:5px;background:#fff;color:var(--gronn-d);box-shadow:inset 0 0 0 1.5px var(--gronn)}
.nyhet-grid .nyhet-foto{height:300px}
.nyhet-grid .nyhet-foto img{height:100%;aspect-ratio:auto}
@media(max-width:900px){.nyhet-grid .nyhet-foto{height:240px}}
.nyhet-grid .nyhet-kort{align-content:start}

/* Forespørselsskjema (vindu) – /foresporsel.js */
.fsp-apen{overflow:hidden}
.fsp{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:16px}
.fsp-bak{position:absolute;inset:0;background:rgba(14,17,16,.62)}
.fsp-boks{position:relative;background:#fff;border-radius:var(--rad-lg);width:100%;max-width:620px;max-height:calc(100vh - 32px);overflow:auto;padding:30px 30px 24px;box-shadow:0 30px 80px -20px rgba(0,0,0,.5)}
.fsp-x{position:absolute;top:10px;right:12px;border:0;background:none;font-size:2rem;line-height:1;cursor:pointer;color:#555;padding:4px 8px}
.fsp-skjema{display:grid;grid-template-columns:1fr 1fr;gap:12px 14px}
.fsp-skjema h2,.fsp-takk h2{grid-column:1/-1;font-size:1.7rem;margin:0}
.fsp-ingress{grid-column:1/-1;margin:-4px 0 4px;color:#444;font-size:.95rem}
.fsp-ingress a,.fsp-liten a,.fsp-feil a,.fsp-takk a{color:var(--gronn-d);font-weight:700}
.fsp-skjema label{display:flex;flex-direction:column;gap:5px;font-weight:700;font-size:.88rem}
.fsp-skjema input,.fsp-skjema textarea{font:inherit;font-weight:400;font-size:1rem;padding:11px 12px;border:1.5px solid #cfd3cf;border-radius:var(--rad);background:#fff;width:100%;box-sizing:border-box}
.fsp-skjema input:focus,.fsp-skjema textarea:focus{outline:none;border-color:var(--gronn);box-shadow:0 0 0 3px rgba(15,157,78,.18)}
.fsp-full{grid-column:1/-1}
.fsp-skjema [hidden],.fsp-skjema[hidden],.fsp-takk[hidden]{display:none!important}
.fsp-valg{border:0;padding:0;margin:0;display:flex;gap:18px;flex-wrap:wrap}
.fsp-valg legend{font-weight:700;font-size:.88rem;margin-bottom:6px;padding:0}
.fsp-valg label{flex-direction:row;align-items:center;font-weight:400;font-size:1rem;gap:8px}
.fsp-valg input{width:auto}
.fsp-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.fsp-feil{grid-column:1/-1;margin:0;background:#fdecea;color:#8a1c12;padding:10px 12px;border-radius:var(--rad);font-size:.92rem}
.fsp-send{grid-column:1/-1;justify-self:start;font-size:1.05rem;padding:15px 28px}
.fsp-send:disabled{opacity:.6;cursor:wait}
.fsp-liten{grid-column:1/-1;margin:0;font-size:.8rem;color:var(--grå)}
.fsp-takk{text-align:center;padding:20px 6px 6px}
.fsp-takk p{color:#444;margin:10px auto 20px;max-width:42ch}
.fsp-hake{width:64px;height:64px;border-radius:50%;background:var(--gronn);color:#fff;font-size:2rem;line-height:64px;margin:0 auto 14px}
.cta-epost{font-size:.88rem;color:var(--grå);margin:10px 0 0}
.cta-epost a{color:var(--gronn-d);font-weight:700}
@media(max-width:560px){
  .fsp{padding:0;align-items:flex-end}
  .fsp-boks{max-height:94vh;border-radius:var(--rad-lg) var(--rad-lg) 0 0;padding:24px 18px 20px}
  .fsp-skjema{grid-template-columns:1fr}
}

/* Stedssider (liftutleie-<sted>) */
.sted-fakta{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:22px}
.sted-fakta>div{background:#fff;border:1px solid #e3e2da;border-radius:var(--rad-lg);padding:14px 16px;display:flex;flex-direction:column;gap:3px;font-size:.92rem}
.sted-fakta b{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--grå)}
.sted-fakta a{color:var(--gronn-d);font-weight:800;font-size:1.05rem}
@media(max-width:900px){.sted-fakta{grid-template-columns:1fr 1fr}}
