/* Trønderske Gründere – felles grunnstil og responsivt design.
   Varm lys flate, skoggrønt og gult, IBM Plex Sans lagt lokalt.
   Ingen eksterne kall: fontene ligger i assets/ (SIL OFL, se plex-sans-OFL.txt).
   Rette linjer: alt henger på samme venstrekant (.ramme), skillelinjer i
   stedet for skygger, tekst venstrestilt på alle bredder. */

@font-face { font-family: 'Plex Sans'; src: url('plex-sans-400.woff2') format('woff2'); font-weight: 400; font-display: swap; }
@font-face { font-family: 'Plex Sans'; src: url('plex-sans-600.woff2') format('woff2'); font-weight: 600; font-display: swap; }
@font-face { font-family: 'Plex Sans'; src: url('plex-sans-700.woff2') format('woff2'); font-weight: 700; font-display: swap; }

:root {
  --bg: #FFFFFF;
  --flate: #F2F4F1;
  --tekst: #16201B;
  --dempet: #4A5650;
  --linje: #D3D9D4;
  --aksent: #1E5B43;
  --aksent-mork: #164634;
  --aksent-lys: #E4EEE8;
  --feil: #A3261B;
  --ramme: 1120px;
}

* { box-sizing: border-box; margin: 0; padding: 0; }
[hidden] { display: none !important; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body {
  font-family: 'Plex Sans', system-ui, -apple-system, 'Segoe UI', sans-serif;
  font-size: 17px; line-height: 1.6; color: var(--tekst); background: var(--bg);
  overflow-x: hidden; -webkit-font-smoothing: antialiased;
}
img, svg { display: block; max-width: 100%; }
a { color: var(--aksent); }
a:hover { color: var(--aksent-mork); }
:focus-visible { outline: 3px solid var(--aksent); outline-offset: 2px; }

.ramme { width: min(var(--ramme), calc(100% - 32px)); margin: 0 auto; }

h1, h2, h3 { font-weight: 700; line-height: 1.12; letter-spacing: -0.015em; text-wrap: balance; }
h1 { font-size: clamp(36px, 6vw, 64px); letter-spacing: -0.025em; }
h2 { font-size: clamp(28px, 3.6vw, 40px); }
h3 { font-size: 20px; line-height: 1.3; letter-spacing: -0.01em; }
p { text-wrap: pretty; }
.ingress { font-size: clamp(18px, 1.6vw, 20px); color: var(--dempet); max-width: 60ch; }
.etikett { display: block; font-size: 14px; font-weight: 600; color: var(--aksent); letter-spacing: .01em; margin-bottom: 14px; }

/* ---------- Topp ---------- */
.topp { border-bottom: 1px solid var(--linje); }
.topp .ramme { display: flex; align-items: center; justify-content: space-between; gap: 16px; height: 68px; }
.merke { display: inline-flex; align-items: center; gap: 12px; font-weight: 700; font-size: 18px; color: var(--tekst); text-decoration: none; letter-spacing: -0.01em; }
.merke:hover { color: var(--tekst); }
.merke img { width: 32px; height: 32px; }

/* ---------- Knapper ---------- */
.knapp {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  font: inherit; font-weight: 600; font-size: 16.5px; line-height: 1;
  padding: 16px 26px; border-radius: 8px; border: 2px solid var(--aksent);
  background: var(--aksent); color: #FFFFFF; text-decoration: none; cursor: pointer;
  transition: background .15s ease, border-color .15s ease;
}
.knapp:hover { background: var(--aksent-mork); border-color: var(--aksent-mork); color: #FFFFFF; }
.knapp--sekundar { background: transparent; color: var(--aksent); }
.knapp--sekundar:hover { background: var(--aksent-lys); color: var(--aksent-mork); border-color: var(--aksent); }
.knapp--liten { padding: 11px 18px; font-size: 15px; }
.knapp[disabled] { opacity: .6; cursor: progress; }

/* ---------- Seksjoner ---------- */
.seksjon { padding: 88px 0; border-top: 1px solid var(--linje); }
.seksjon--flate { background: var(--flate); }
.hode { max-width: 720px; margin-bottom: 44px; }
.hode .ingress { margin-top: 14px; }

/* Førsteseksjon på undersider: ingen dobbel linje under toppen. */
.seksjon--forst { border-top: 0; padding: 64px 0 88px; }
.hode h1 { font-size: clamp(32px, 4.6vw, 48px); }

/* ---------- Hero ---------- */
.hero { padding: 72px 0 88px; }
.hero__rad { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); gap: 64px; align-items: end; }
.hero h1 { margin-bottom: 22px; }
.hero h1 span { color: var(--aksent); }
.hero .ingress { margin-bottom: 32px; }
.hero__knapper { display: flex; flex-wrap: wrap; gap: 12px; }
.fakta { border-top: 2px solid var(--tekst); }
.fakta div { display: grid; grid-template-columns: 120px 1fr; gap: 16px; padding: 14px 0; border-bottom: 1px solid var(--linje); }
.fakta dt { font-size: 14.5px; color: var(--dempet); }
.fakta dd { font-weight: 600; }

/* ---------- Tre kolonner ---------- */
.kolonner { display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; }
.kolonner > div { border-top: 2px solid var(--aksent); padding-top: 20px; }
.kolonner h3 { margin-bottom: 10px; }
.kolonner p { color: var(--dempet); font-size: 16.5px; }
.regler { margin-top: 56px; display: grid; grid-template-columns: 240px 1fr; gap: 40px; border-top: 1px solid var(--linje); padding-top: 28px; }
.regler h3 { font-size: 18px; }
.regler ul { list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 40px; }
.regler li { position: relative; padding-left: 22px; }
.regler li::before { content: ""; position: absolute; left: 0; top: .62em; width: 10px; height: 2px; background: var(--aksent); }

/* ---------- Arrangementer ---------- */
.arr-liste { list-style: none; border-top: 2px solid var(--tekst); }
.arr { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 28px; padding: 26px 0; border-bottom: 1px solid var(--linje); }
.arr__dato { display: grid; align-content: start; }
.arr__dag { font-size: 40px; font-weight: 700; line-height: 1; letter-spacing: -0.03em; color: var(--aksent); }
.arr__mnd { font-size: 14.5px; font-weight: 600; text-transform: uppercase; letter-spacing: .06em; margin-top: 6px; }
.arr__tid { font-size: 14.5px; color: var(--dempet); }
.arr h3 { margin-bottom: 6px; }
.arr__meta { font-size: 15px; color: var(--dempet); margin-bottom: 10px; }
.arr__beskrivelse { max-width: 68ch; white-space: pre-line; overflow-wrap: anywhere; }
.arr__lenke { display: inline-block; margin-top: 12px; font-weight: 600; }
.arr-handlinger { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 28px; margin-top: 32px; }
.arr-handlinger a:not(.knapp) { font-weight: 600; }
.tom { border-top: 2px solid var(--tekst); padding: 28px 0 0; }
.tom > * { max-width: 62ch; }
.tom p { color: var(--dempet); margin-bottom: 20px; }
.tom strong { display: block; font-size: 20px; color: var(--tekst); margin-bottom: 8px; }

/* ---------- Skjemaer ---------- */
.delt { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.25fr); gap: 64px; align-items: start; }
.skjema { display: grid; gap: 18px; }
.skjema__rad { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.felt { display: grid; gap: 6px; font-size: 15px; font-weight: 600; }
.felt small { font-weight: 400; color: var(--dempet); font-size: 14px; }
.felt input, .felt textarea {
  font: inherit; font-weight: 400; font-size: 16.5px; color: var(--tekst);
  padding: 12px 14px; border: 1.5px solid #9AA59E; border-radius: 8px; background: #FFFFFF; width: 100%;
}
.felt textarea { min-height: 136px; resize: vertical; line-height: 1.5; }
.felt input:focus, .felt textarea:focus { outline: none; border-color: var(--aksent); box-shadow: 0 0 0 3px var(--aksent-lys); }
.felt [aria-invalid="true"] { border-color: var(--feil); }
.teller { justify-self: end; font-size: 13.5px; font-weight: 400; color: var(--dempet); }
.avkryss { display: grid; grid-template-columns: 22px 1fr; gap: 12px; align-items: start; font-size: 15.5px; font-weight: 400; cursor: pointer; }
.avkryss input { width: 20px; height: 20px; margin-top: 2px; accent-color: var(--aksent); }
.honning { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.merknad { font-size: 14.5px; color: var(--dempet); }
.status { font-size: 15.5px; font-weight: 600; min-height: 1px; }
.status[data-tilstand="feil"] { color: var(--feil); }
.kvittering { border: 2px solid var(--aksent); background: var(--aksent-lys); border-radius: 8px; padding: 26px 24px; display: grid; gap: 10px; justify-items: start; }
.kvittering svg { width: 36px; height: 36px; }
.kvittering strong { font-size: 22px; line-height: 1.25; }
.kvittering p { color: var(--tekst); }
.kvittering .knapp { margin-top: 8px; }
.kvittering--info { border-color: var(--linje); background: var(--flate); }

/* ---------- FAQ ---------- */
.faq { max-width: 820px; border-top: 2px solid var(--tekst); }
.faq details { border-bottom: 1px solid var(--linje); }
.faq summary { list-style: none; cursor: pointer; padding: 20px 40px 20px 0; position: relative; font-weight: 600; font-size: 18px; }
.faq summary::-webkit-details-marker { display: none; }
.faq summary::after { content: ""; position: absolute; right: 6px; top: 50%; width: 10px; height: 10px; border-right: 2px solid var(--aksent); border-bottom: 2px solid var(--aksent); transform: translateY(-70%) rotate(45deg); transition: transform .15s ease; }
.faq details[open] summary::after { transform: translateY(-20%) rotate(-135deg); }
.faq details p { padding: 0 40px 22px 0; color: var(--dempet); }

/* ---------- Bunn ---------- */
.bunn { border-top: 1px solid var(--linje); padding: 32px 0 40px; font-size: 14.5px; color: var(--dempet); }
.bunn .ramme { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px 32px; }
.bunn a { color: var(--dempet); }
.bunn a:hover { color: var(--tekst); }

/* ---------- Tekstsider (personvern) ---------- */
.tekstside { padding: 64px 0 88px; }
.tekstside .ramme > * { max-width: 68ch; }
.tekstside h1 { font-size: clamp(32px, 5vw, 48px); margin-bottom: 18px; }
.tekstside h2 { font-size: 22px; margin: 40px 0 10px; }
.tekstside p, .tekstside li { color: var(--dempet); }
.tekstside p + p { margin-top: 12px; }
.tekstside ul { margin: 10px 0 0 20px; display: grid; gap: 6px; }
.todo { background: #FFF3C4; color: var(--tekst); padding: 0 4px; border-radius: 3px; font-weight: 600; }

/* ---------- Responsivt ---------- */
@media (max-width: 960px) {
  .hero__rad, .delt { grid-template-columns: 1fr; gap: 44px; }
  .kolonner { grid-template-columns: 1fr; gap: 28px; }
  .regler { grid-template-columns: 1fr; gap: 14px; }
}
@media (max-width: 640px) {
  body { font-size: 16.5px; }
  .seksjon { padding: 60px 0; }
  .seksjon--forst { padding: 40px 0 60px; }
  .hero { padding: 40px 0 60px; }
  .hode { margin-bottom: 32px; }
  .topp .ramme { height: 60px; }
  .merke { font-size: 16.5px; }
  .merke img { width: 28px; height: 28px; }
  .hero__knapper .knapp { flex: 1 1 100%; }
  .regler ul, .skjema__rad { grid-template-columns: 1fr; }
  .fakta div { grid-template-columns: 104px 1fr; }
  .arr { grid-template-columns: 64px minmax(0, 1fr); gap: 18px; }
  .arr__dag { font-size: 32px; }
  .delt > .skjema .knapp, .skjema > .knapp { width: 100%; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } * { transition: none !important; } }
/* Visuelt uttrykk, oktober 2026: varm papirflate, skoggrønt og gult. */
:root { --bg:#f7f5ef; --flate:#f7f5ef; --tekst:#173f35; --dempet:#57625b; --linje:#d4d7cb; --aksent:#173f35; --aksent-mork:#0e3027; --aksent-lys:#e3e8d9; --ramme:1240px; }
body { overflow-x:visible; }
.ramme { width:min(var(--ramme),calc(100% - 96px)); }
h1,h2,h3,.merke { font-family:Georgia,'Times New Roman',serif; font-weight:500; letter-spacing:-.045em; }
h1 { font-size:clamp(38px,4.6vw,68px); line-height:1.06; }
h2 { font-size:clamp(32px,3.3vw,48px); line-height:1.12; }
h3 { font-size:25px; line-height:1.18; letter-spacing:-.035em; }
.hopp { position:fixed; top:8px; left:16px; transform:translateY(-160%); z-index:20; padding:12px 20px; background:var(--tekst); color:white; }
.hopp:focus { transform:none; }
.topp { border:0; }
.topp .ramme { height:100px; }
.merke { font-size:27px; gap:0; white-space:nowrap; }
.merke img { display:none; }
.topp nav { display:flex; gap:34px; align-items:center; }
.topp nav>a:not(.knapp) { font-size:15px; text-decoration:none; color:var(--tekst); }
.topp nav>a:not(.knapp):hover { text-decoration:underline; text-underline-offset:5px; }
.knapp { border-radius:5px; border:1px solid #ffdb59; background:#ffdb59; color:#15362d; font-size:15px; padding:17px 25px; min-height:48px; }
.knapp:hover { background:#f4ca37; color:#15362d; border-color:#f4ca37; }
.knapp--sekundar { border-color:var(--aksent); background:transparent; color:var(--aksent); }
.knapp--sekundar:hover { border-color:var(--aksent); background:var(--aksent-lys); }
.knapp--liten { min-height:44px; padding:13px 25px; }
.hero { padding:26px 0 0; }
.hero__rad { grid-template-columns:minmax(0,1.38fr) minmax(0,1fr); gap:10px; align-items:center; min-height:440px; }
.hero__rad>div { min-width:0; }
.hero h1 { margin-bottom:24px; }
.hero h1 span { display:block; }
.hero .ingress { font-size:clamp(19px,1.85vw,26px); margin-bottom:35px; color:var(--tekst); }
.hero__kunst { align-self:end; }
.hero__kunst img { width:100%; height:auto; max-height:450px; object-fit:contain; object-position:bottom; }
.hero__knapper { gap:16px; }
.faktalinje { list-style:none; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); padding:28px 0; margin-top:32px; border-top:1px solid var(--linje); border-bottom:1px solid var(--linje); }
.faktalinje li { display:flex; align-items:center; justify-content:center; gap:20px; padding:0 16px; font-size:16px; }
.faktalinje li+li { border-left:1px solid #bdc6b9; }
.faktalinje li span { font-size:12px; color:var(--dempet); }
.seksjon { padding:76px 0; border-top:0; }
.hode { max-width:none; margin-bottom:40px; }
.fellesskap-intro { margin-top:16px; max-width:65ch; color:var(--dempet); font-size:18px; }
.kolonner { gap:0; }
.kolonner>div { border:0; padding:0 34px; }
.kolonner>div:first-child { padding-left:0; }
.kolonner>div:last-child { padding-right:0; }
.kolonner>div+div { border-left:1px solid var(--linje); }
.nummer { display:inline-flex; align-items:center; justify-content:center; width:44px; height:44px; border-radius:50%; background:var(--aksent-lys); font-size:14px; font-weight:600; margin-bottom:25px; }
.kolonner h3 { margin-bottom:14px; }
.kolonner p { max-width:32ch; line-height:1.7; }
.regler { background:var(--aksent-lys); margin-top:46px; border:0; padding:24px 30px; gap:30px; grid-template-columns:205px 1fr; align-items:center; }
.regler h3 { font-size:24px; }
.regler ul { display:flex; flex-wrap:wrap; gap:8px 22px; font-size:14px; }
.regler li { padding-left:0; }
.regler li::before { display:none; }
#fellesskapet { padding-bottom:0; }
#arrangementer .hode { margin-bottom:36px; }
#arrangementer .hode .ingress { font-size:17px; }
.tom { text-align:center; border:0; padding:22px 24px 8px; }
.tom>* { margin-left:auto; margin-right:auto; }
.tom::before { content:''; display:block; width:40px; height:40px; background:var(--aksent-lys); border:12px solid var(--aksent-lys); border-radius:50%; margin:0 auto 20px; }
.tom strong { font-family:Georgia,serif; font-size:28px; font-weight:500; letter-spacing:-.025em; }
.tom p { max-width:65ch; font-size:16px; }
.tom .knapp { margin-top:4px; }
.sporsmal { background:#fbfaf6; padding-top:66px; }
.faq { max-width:none; border-top:0; }
.faq summary { font-size:17px; font-weight:400; padding:22px 40px 22px 18px; }
.faq details p { max-width:85ch; padding-left:18px; }
#bli-med { background:var(--tekst); color:var(--bg); padding:68px 0; }
#bli-med .delt { grid-template-columns:1fr 1fr; gap:80px; align-items:center; }
#bli-med h2 { max-width:14ch; }
#bli-med .hode .ingress { color:#e1e7db; font-size:18px; max-width:40ch; line-height:1.7; margin-top:24px; }
#bli-med .hode { margin-bottom:0; }
#bli-med .skjema { padding:32px; border-radius:8px; background:var(--bg); color:var(--tekst); gap:16px; }
#bli-med .skjema>.knapp { width:100%; }
#bli-med .merknad { text-align:center; }
#bli-med .status:empty { display:none; }
#bli-med .kvittering { background:var(--bg); color:var(--tekst); }
#bli-med noscript a { color:#ffdb59; }
.felt input,.felt textarea { border-radius:4px; border:1px solid #bfc7bc; background:#fffefa; }
.bunn { border:0; padding:30px 0; font-size:13px; }
.tekstside h1,.hode h1 { overflow-wrap:anywhere; }
.tekstside .ramme { max-width:860px; }
.tekstside h2 { font-size:28px; }
.arr-liste { border-top:1px solid var(--linje); }
.arr__dag { color:var(--tekst); }
.arr__lenke { text-underline-offset:4px; }
@media(min-width:1600px) { .hero__rad { min-height:480px; } }
@media(max-width:1050px) {
 .ramme { width:calc(100% - 64px); }
 .hero__rad { grid-template-columns:minmax(0,1.5fr) minmax(0,1fr); gap:0; min-height:350px; }
 .hero h1 { font-size:clamp(36px,4.8vw,52px); }
 .delt { gap:40px; }
 .kolonner { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .kolonner>div { padding:0 20px; }
 #bli-med .delt { gap:45px; }
 .faktalinje li { font-size:14px; gap:10px; }
 .regler { grid-template-columns:180px 1fr; }
}
@media(max-width:760px) {
 .ramme { width:calc(100% - 40px); }
 .topp .ramme { height:82px; gap:10px; }
 .merke { font-size:21px; letter-spacing:-.045em; }
 .topp nav { gap:0; }
 .topp nav>a:not(.knapp) { display:none; }
 .knapp--liten { padding:12px 16px; font-size:14px; }
 .hero { padding-top:24px; }
 .hero__rad { grid-template-columns:1fr; gap:24px; }
 .hero h1 { font-size:clamp(34px,8.2vw,54px); overflow-wrap:anywhere; hyphens:manual; max-width:100%; }
 .hero h1 span { max-width:100%; }
 .hero .ingress { font-size:20px; max-width:26ch; margin-bottom:26px; }
 .hero__knapper { gap:10px; }
 .hero__knapper .knapp { flex:0 1 auto; font-size:14px; padding:15px 17px; }
 .hero__kunst { max-width:400px; width:85%; justify-self:center; }
 .hero__kunst img { max-height:280px; }
 .faktalinje { margin-top:0; grid-template-columns:1fr; gap:14px; padding:22px 0; }
 .faktalinje li { justify-content:flex-start; padding:0; font-size:15px; gap:20px; }
 .faktalinje li+li { border:0; }
 .seksjon { padding:50px 0; }
 .hode { margin-bottom:30px; }
 .kolonner { grid-template-columns:1fr; gap:28px; }
 .kolonner>div,.kolonner>div:first-child,.kolonner>div:last-child { padding:0 0 28px; border:0; border-bottom:1px solid var(--linje); }
 .kolonner>div:last-child { border-bottom:0; padding-bottom:0; }
 .nummer { width:36px; height:36px; margin-bottom:14px; }
 .kolonner p { max-width:45ch; }
 .regler { grid-template-columns:1fr; padding:25px; gap:16px; margin-top:30px; }
 .regler ul { display:grid; grid-template-columns:1fr; gap:8px; font-size:15px; }
 .tom { padding:12px 0 0; }
 .tom strong { font-size:25px; }
 .tom .knapp { width:100%; }
 .sporsmal { padding-top:45px; }
 .faq summary { padding-left:0; font-size:16px; }
 .faq details p { padding-left:0; }
 #bli-med .delt { grid-template-columns:1fr; gap:30px; }
 #bli-med { padding:48px 0; }
 #bli-med h2 { max-width:17ch; }
 #bli-med .skjema { padding:24px 20px; }
 .bunn .ramme { gap:14px; }
 .skjema__rad { grid-template-columns:1fr; }
}
@media(prefers-reduced-motion:reduce) { .hopp { transition:none; } }

.ikon { width:28px; height:28px; flex-shrink:0; }
.faktalinje .ikon { width:26px; height:26px; }
.kolonner .ikon { width:36px; height:36px; margin-bottom:18px; }
.tom::before { display:none; }
.tom>.ikon { box-sizing:content-box; width:32px; height:32px; padding:18px; background:var(--aksent-lys); border-radius:50%; margin:0 auto 22px; }

h1,h2,h3,.merke { font-weight:600; }
.seksjonstittel { display:flex; gap:32px; align-items:center; justify-content:space-between; }
.seksjonstittel>a { font-size:14px; white-space:nowrap; text-underline-offset:4px; }
#bli-med h2 { max-width:none; font-size:clamp(32px,3.2vw,46px); }
@media(max-width:760px) { .seksjonstittel { align-items:flex-start; flex-direction:column; gap:16px; } }

.seksjonstittel>a { display:inline-flex; align-items:center; gap:12px; }
.pil { width:20px; height:20px; flex-shrink:0; }

/* Fellesskapets uttrykk: Hanken i overskrifter, Plex i løpende tekst. */
@font-face {font-family:'Hanken Grotesk';src:url('hanken-grotesk.woff2') format('woff2');font-weight:100 900;font-display:swap;}
h1,h2,h3,.merke,.tom strong {font-family:'Hanken Grotesk','Plex Sans',sans-serif;letter-spacing:-.035em;}
h1 {font-weight:650;} h2 {font-weight:600;} h3 {font-weight:600;}
.merke {font-size:27px;font-weight:700;letter-spacing:-.04em;}
.hero {padding-top:34px;}
.hero__rad {min-height:460px;gap:35px;}
.hero h1 {font-size:clamp(36px,4.5vw,66px);line-height:1.07;letter-spacing:-.05em;}
.hero .ingress {font-size:20px;line-height:1.65;max-width:45ch;margin-bottom:25px;}
.initiativ {font-size:15px;color:var(--dempet);margin-top:22px;}
.initiativ a {text-underline-offset:3px;}
.kolonner .ikon {box-sizing:content-box;background:var(--aksent-lys);border-radius:50%;padding:13px;width:32px;height:32px;margin-bottom:20px;}
.kolonner h3 {font-size:25px;letter-spacing:-.025em;}
.regler {grid-template-columns:245px 1fr;border-radius:8px;padding:28px 30px;}
.regler h3 {font-size:22px;}
.regler ul {font-size:15px;gap:9px 22px;}
#bli-med .hode>.knapp {margin-top:28px;}
.bli-med__merknad {font-size:14px;line-height:1.6;color:#e1e7db;margin-top:15px;max-width:40ch;}
.skjema-intro h3 {font-size:25px;margin-bottom:10px;}
.skjema-intro p {font-size:16px;font-weight:400;color:var(--dempet);line-height:1.6;}
#bli-med .avkryss {min-height:44px;align-items:start;}
#bli-med .skjema {gap:20px;}
.felt input,.felt textarea {border-color:#6c7d6e;}
.topp nav a:not(.knapp) {display:inline-flex;align-items:center;min-height:44px;}
.topp nav a[aria-current="page"] {text-decoration:underline;text-underline-offset:6px;}
.bunn {font-size:14px;}
#bli-med :focus-visible {outline-color:#ffdb59;}
#bli-med .skjema :focus-visible,#bli-med .kvittering :focus-visible {outline-color:var(--aksent);}
.felt input:focus-visible,.felt textarea:focus-visible {outline:3px solid var(--aksent);outline-offset:3px;box-shadow:none;}
html {scroll-padding-top:20px;}
@media(max-width:1050px) {.regler {grid-template-columns:1fr;gap:18px;}.hero__rad {gap:25px;}}
@media(max-width:760px) {
 .topp .ramme {position:relative;min-height:110px;height:auto;display:flex;flex-wrap:wrap;gap:0;padding:16px 0 8px;}
 .merke {font-size:clamp(18px,5.3vw,22px);min-height:44px;display:flex;align-items:center;max-width:calc(100% - 92px);white-space:normal;line-height:1.15;}
 .topp nav {display:flex;width:100%;gap:8px;align-items:center;justify-content:space-between;}
 .topp nav a:not(.knapp) {display:flex!important;justify-content:center;flex:1;min-height:44px;font-size:14px;}
 .topp nav .knapp {position:absolute;right:0;top:16px;min-height:44px;padding:12px 16px;font-size:14px;}
 .hero {padding-top:28px;}
 .hero__rad {min-height:0;gap:28px;}
 .hero h1 {font-size:clamp(34px,8.7vw,54px);}
 .hero .ingress {font-size:18px;line-height:1.65;max-width:36ch;}
 .initiativ {font-size:14px;margin-top:18px;}
 .hero__kunst {width:80%;}
 .regler {padding:25px;gap:16px;}
 .kolonner h3 {font-size:24px;}
 .bunn .ramme {gap:16px;}
 #bli-med h2 {font-size:36px;max-width:none;}
 #bli-med .hode>.knapp {width:100%;font-size:15px;padding:17px 14px;}
 .skjema-intro h3 {font-size:24px;}
}
@media(max-width:380px) {.topp nav{gap:0;}.topp nav a:not(.knapp){font-size:13px;}.topp nav .knapp {padding:12px;font-size:13px;}}
/* Innholdet skal kunne brytes også ved stor tekst eller nettleserforstørring. */
.topp .ramme {height:auto;min-height:100px;flex-wrap:wrap;}
.topp nav {flex-wrap:wrap;}
.hero h1 {overflow-wrap:anywhere;}
@media(max-width:760px){.topp .ramme{min-height:110px;}}


/* Felles footer og innganger til innholdet. */
.bunn{border-top:1px solid var(--linje);padding:34px 0;background:var(--bg);margin-top:0}.bunn>.ramme{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}.bunn__identitet>a{font-family:'Hanken Grotesk',sans-serif;font-size:22px;font-weight:700;text-decoration:none}.bunn__identitet p{margin:8px 0 0;font-size:14px;color:var(--dempet)}.bunn nav{display:flex;gap:12px 24px;flex-wrap:wrap}.bunn nav a{display:inline-flex;align-items:center;min-height:44px;text-underline-offset:4px}.innholdsveier{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.innholdsvei{display:flex;flex-direction:column;align-items:start;border:1px solid var(--linje);border-radius:6px;padding:30px;background:var(--bg)}.innholdsvei .ikon{width:30px;height:30px;margin-bottom:22px;color:var(--aksent)}.innholdsvei h3{font-size:27px;margin:0 0 15px}.innholdsvei p{font-size:17px;line-height:1.65;margin:0 0 24px;color:var(--dempet)}.innholdsvei>a{margin-top:auto;display:inline-flex;align-items:center;min-height:44px;font-weight:600;text-underline-offset:5px}.topp nav{column-gap:24px}.vilkar{padding:55px 0 70px;max-width:780px}.vilkar h1{font-size:clamp(38px,5vw,60px);line-height:1.12;margin-bottom:22px}.vilkar h2{font-size:27px;margin:34px 0 12px}.vilkar p{line-height:1.75;margin-bottom:14px}@media(max-width:1050px){.innholdsveier{gap:18px}.innholdsvei{padding:24px}.topp nav{column-gap:16px}}@media(max-width:760px){.innholdsveier{grid-template-columns:1fr}.bunn>.ramme{align-items:flex-start;gap:22px}.bunn nav{gap:0 22px;width:100%}.topp nav a:not(.knapp){flex:1 1 40%;justify-content:flex-start;font-size:14px}.topp .ramme{padding-bottom:12px}.innholdsvei{padding:25px}.vilkar{padding-top:35px}}


/* Tilgjengelig hamburgermeny på mobil. Lenker vises uten JavaScript. */
.menyknapp{display:none}.topp nav[hidden]{display:none!important}
@media(max-width:760px){
 .mobilmeny-klar .topp>.ramme{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:0 16px;min-height:80px;height:auto;padding:16px 0}
 .mobilmeny-klar .topp .merke{max-width:none;min-width:0;width:auto;white-space:normal;font-size:clamp(19px,5.3vw,22px);line-height:1.15}
 .mobilmeny-klar .topp .menyknapp{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-width:88px;min-height:48px;padding:10px 12px;border:1px solid var(--linje);border-radius:5px;background:transparent;color:var(--tekst);font:inherit;font-size:15px;cursor:pointer}
 .menyknapp__kryss{display:none}.menyknapp[aria-expanded="true"] .menyknapp__streker{display:none}.menyknapp[aria-expanded="true"] .menyknapp__kryss{display:block}
 .mobilmeny-klar .topp nav{grid-column:1/-1;display:flex;flex-direction:column;align-items:stretch;gap:0;width:100%;margin-top:16px;padding-top:8px;border-top:1px solid var(--linje)}
 .mobilmeny-klar .topp nav a:not(.knapp){display:flex!important;flex:none;justify-content:flex-start;min-height:48px;padding:10px 0;font-size:17px}
 .mobilmeny-klar .topp nav .knapp{position:static;min-height:48px;width:100%;margin:10px 0 4px;padding:15px 20px;font-size:16px}
}

/* Illustrasjonen introduserer fellesskapet før overskriften på mobil. */
@media(max-width:760px){.hero__kunst{order:-1;align-self:center;justify-self:center;width:70%;max-width:260px}.hero__kunst img{max-height:205px}.hero__rad{gap:24px}}

/* Tydelig avslutning med fellesskapets skoggrønne farge. */
.bunn{background:#173f35;color:#f7f5ef;border-top:0}.bunn a,.bunn__identitet p{color:#f7f5ef}.bunn a:hover{color:#ffdb59}.bunn :focus-visible{outline-color:#ffdb59}

