/* IBM Plex (SIL Open Font License 1.1), lagt på egen server - PROMPT 115 */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonter/IBMPlexMono-400-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonter/IBMPlexMono-400-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonter/IBMPlexMono-500-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonter/IBMPlexMono-500-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonter/IBMPlexMono-600-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonter/IBMPlexMono-600-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(fonter/IBMPlexSans-400-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(fonter/IBMPlexSans-400-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(fonter/IBMPlexSans-500-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(fonter/IBMPlexSans-500-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url(fonter/IBMPlexSans-600-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url(fonter/IBMPlexSans-600-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'IBM Plex Sans Condensed';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonter/IBMPlexSansCondensed-500-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'IBM Plex Sans Condensed';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonter/IBMPlexSansCondensed-500-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'IBM Plex Sans Condensed';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonter/IBMPlexSansCondensed-600-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'IBM Plex Sans Condensed';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonter/IBMPlexSansCondensed-600-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'IBM Plex Sans Condensed';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonter/IBMPlexSansCondensed-700-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'IBM Plex Sans Condensed';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonter/IBMPlexSansCondensed-700-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root{
  --papir:#F5F6F8; --blekk:#14284B; --blekk-mork:#0A1830; --gul:#E9B82B; --gul-lys:#F5D774;
  --linje:#E3E6EB; --linje-lys:#EDEFF2; --dempet:#515A6B; --tekst2:#3A4458; --kort:#FFFFFF;
  --ark:#FFFFFF; --rute:#E9ECF0; --bla:#10244A; --blagul:#F0C23B; --blatekst:#F5F6F8; --blalys:#D8DEEA;
  --sans:'IBM Plex Sans',system-ui,'Segoe UI',Roboto,Arial,sans-serif;
  --smal:'IBM Plex Sans Condensed','Arial Narrow','Roboto Condensed','Segoe UI',Arial,sans-serif;
  --mono:'IBM Plex Mono',Consolas,'Cascadia Mono','Courier New',monospace;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--papir);color:var(--blekk);font-family:var(--sans);font-size:16px;line-height:1.5;overflow-x:hidden}
a{color:var(--blekk)}a:hover{color:var(--blekk-mork)}
h1,h2,h3{font-family:var(--smal);font-weight:700;margin:0;line-height:1.1}
.dempet{color:var(--dempet)}
.liten{font-size:13px;color:var(--dempet);margin:6px 0}
.tall,.pris{font-family:var(--mono)}
button{font-family:var(--sans)}
:focus-visible{outline:3px solid var(--gul);outline-offset:2px}

/* topp */
.topp{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 56px;border-bottom:1px solid var(--linje)}
.merke{display:flex;align-items:baseline;gap:14px;text-decoration:none}
.logo{font-family:var(--smal);font-weight:700;font-size:28px;letter-spacing:-.5px}
.slagord{font-family:var(--mono);font-size:13px;color:var(--dempet)}
.meny{display:flex;gap:28px;font-size:15px}.meny a{text-decoration:none}

/* søk */
.sok{display:flex;flex-direction:column;gap:6px;min-width:0}
.topp .sok{flex-direction:row;align-items:center;gap:8px}
.topp .sok label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}   /* PROMPT 209: «Adresse» sto løst øverst på PC; bare for skjermlesere */
.sok label{font-weight:600;font-size:14px}
.topp .sok label{font-weight:400}
.sok-rad{display:flex;gap:8px;min-width:0}
.sok-boks{position:relative;flex:1 1 auto;min-width:0}
.sok input{width:100%;height:44px;padding:0 14px;border:1px solid var(--blekk);border-radius:6px;background:var(--kort);font:15px var(--sans);color:var(--blekk)}
.topp .sok-boks{width:320px}
.sok.stor input{height:60px;padding:0 20px;border-width:2px;border-radius:8px;font-size:18px}
.knapp-sok{height:60px;padding:0 28px;border:0;border-radius:8px;background:var(--blekk);color:var(--papir);font-weight:600;font-size:17px;cursor:pointer;flex:none}
.knapp-ikon{width:44px;height:44px;border:0;border-radius:6px;background:var(--blekk);color:var(--papir);display:flex;align-items:center;justify-content:center;cursor:pointer;flex:none}
.forslag{position:absolute;z-index:20;left:0;right:0;top:calc(100% + 4px);margin:0;padding:4px 0;list-style:none;background:var(--kort);border:1px solid var(--blekk);border-radius:6px;box-shadow:0 6px 18px rgba(20,40,75,.15);max-height:340px;overflow:auto}
.forslag li{display:flex;justify-content:space-between;gap:10px;padding:11px 14px;cursor:pointer;font-size:16px;color:var(--blekk);background:#fff;text-align:left;font-weight:500}
.forslag li+li{border-top:1px solid var(--linje-lys)}
.forslag li[aria-selected=true],.forslag li:hover{background:var(--blekk);color:#fff}
.forslag .st{font-family:var(--mono);font-size:11px;color:var(--dempet);white-space:nowrap}
.forslag li[aria-selected=true] .st,.forslag li:hover .st{color:#D8DEEA}
.forslag{background:#fff}
@media (max-width: 640px){.forslag{max-height:min(340px,45vh)}}   /* PROMPT 121: ikke utenfor skjermen */   /* PROMPT 120: Daniel «grå og usynlige» - mørk tekst på hvitt, uansett hvor søket står */
.sok-melding{font-size:13px;color:var(--dempet);min-height:0}
.topp .sok-melding{position:absolute}

/* forside */
.helt{display:grid;grid-template-columns:minmax(0,1fr) 520px;gap:48px;padding:64px 56px;align-items:center;max-width:1280px;margin:0 auto;box-sizing:border-box}
.helt-tekst{display:flex;flex-direction:column;gap:22px;min-width:0}
.overskrift-liten{font-family:var(--mono);font-size:13px;letter-spacing:1px;color:var(--dempet)}
.helt h1{font-size:64px;line-height:1.02;letter-spacing:-1px}
.ingress-stor{font-size:19px;line-height:1.5;color:var(--tekst2);max-width:560px;margin:0}
.helt .sok{max-width:600px}
.helt-kort{display:flex;flex-direction:column;gap:14px;min-width:0}
.rapport-kort{background:#fff;border:1px solid #B9B1A0;box-shadow:0 2px 0 var(--linje);padding:26px;display:flex;flex-direction:column;gap:12px;position:relative;transform:rotate(-1deg)}
.stempel{position:absolute;top:18px;right:18px;padding:3px 8px;border:1.5px solid var(--blekk);font:600 11px var(--mono);letter-spacing:1px}
.kort-tittel{font-family:var(--smal);font-weight:700;font-size:22px}
.kort-under{font-size:13px;color:var(--dempet);padding-right:80px}
.kort-figur{border:1px solid var(--linje);background:var(--ark);display:flex;align-items:center;justify-content:center;padding:8px;min-height:150px}
.kort-figur svg{max-width:100%;height:auto;max-height:180px}
.kort-tabell{display:flex;flex-direction:column;font-size:13px;border-top:1px solid var(--blekk)}
.kort-rad{display:flex;justify-content:space-between;gap:10px;padding:6px 0;border-bottom:1px solid var(--linje-lys)}
.kort-rad:last-child{border-bottom:0}
.kort-fot{font-family:var(--mono);font-size:10px;color:var(--dempet)}
.kort-lenker{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;font-size:14px}
.kort-lenker a{font-weight:600}
.seksjon{padding:64px max(56px, calc((100% - 1280px) / 2 + 56px));border-top:1px solid var(--linje);display:flex;flex-direction:column;gap:32px}
.seksjon h2{font-size:40px}
.tre-kort{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.valgkort{border:1px solid var(--blekk);border-radius:6px;background:var(--kort);padding:28px;display:flex;flex-direction:column;gap:16px}
.valgkort.gul{border-width:2px;background:var(--gul)}
.valgkort h3{font-size:28px}
.valgkort p{margin:0;font-size:16px;line-height:1.55;color:var(--tekst2)}
.valgkort.gul p{color:var(--blekk)}
.valgkort ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--linje);font-size:15px}
.valgkort li{padding:9px 0;border-bottom:1px solid var(--linje)}
.nr{font-family:var(--mono);font-size:13px;color:var(--dempet)}
.valgkort.gul .nr{color:var(--blekk)}
.nr-rad{display:flex;justify-content:space-between;align-items:center}
.merkelapp{padding:4px 10px;border-radius:999px;border:1px solid var(--blekk);font-size:12px;font-weight:600}
.merkelapp.mork{background:var(--blekk);color:var(--papir)}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips span{padding:6px 12px;border:1px solid var(--blekk);border-radius:999px;font-size:14px;background:var(--gul-lys)}
.kort-fot-rad{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:14px}
.kort-fot-rad .dempet{font-size:13px}
.tre-steg{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.steg{display:flex;flex-direction:column;gap:10px;border-top:3px solid var(--blekk);padding-top:18px}
.steg .nr{font-size:14px;color:var(--blekk)}
.steg h3{font-family:var(--sans);font-weight:600;font-size:20px}
.steg p{margin:0;font-size:15px;line-height:1.55;color:var(--tekst2)}
.to-bokser{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.infoboks{padding:24px;border:1px solid var(--linje);border-radius:6px;background:var(--kort)}
.infoboks h3{font-family:var(--sans);font-weight:600;font-size:18px;margin-bottom:8px}
.infoboks p{margin:0;font-size:15px;line-height:1.55;color:var(--tekst2)}
.handverker{padding:56px max(56px, calc((100% - 1280px) / 2 + 56px));background-color:var(--bla);background-image:linear-gradient(rgba(242,238,228,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(242,238,228,.06) 1px,transparent 1px);background-size:32px 32px;color:var(--blatekst);display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:48px;align-items:center}
.handverker h2{font-size:40px;color:var(--blatekst);margin:14px 0}
.handverker p{font-size:17px;line-height:1.6;color:var(--blalys);max-width:560px;margin:0}
.gul-tekst{color:var(--blagul)}
.handverker-knapp{display:flex;flex-direction:column;gap:10px}
[hidden]{display:none!important}     /* PROMPT 112: skjulte skjema og kort ble vist av display:flex */
.knapp-blaagul{height:56px;border:0;border-radius:6px;background:var(--blagul);color:var(--bla);font-weight:700;font-size:17px;cursor:pointer}
.handverker .betaling-melding{font-size:14px;color:var(--blalys);text-align:center}
.interesse-skjema label{font-size:14px;color:var(--blatekst)}
.interesse-skjema input[type=text],.interesse-skjema input[type=tel]{font:16px var(--sans);padding:10px;border:1.5px solid var(--blalys);border-radius:6px;background:var(--blatekst);color:var(--bla);width:100%}
.interesse-skjema fieldset{border:1px solid rgba(216,222,234,.4);border-radius:6px;margin:0;padding:8px 12px;display:flex;flex-direction:column;gap:4px}
.interesse-skjema legend{font-size:14px;padding:0 4px}
.interesse-skjema small{color:var(--blalys)}
.kontakt-skjema{grid-column:1 / -1;display:flex;flex-direction:column;gap:6px;max-width:520px}
.kontakt-skjema[hidden]{display:none}
.kontakt-skjema label{font-weight:600;font-size:14px}
.kontakt-skjema input[type=tel],.kontakt-skjema input[type=text]{font:16px var(--sans);padding:10px;border:1.5px solid var(--blekk);border-radius:6px;background:var(--kort);color:var(--blekk);width:100%}
.kontakt-skjema .samtykke{display:flex;gap:8px;align-items:flex-start;font-weight:400}
.kontakt-skjema .samtykke input{margin-top:4px;width:18px;height:18px;flex:none}

/* bunn */
.bunn{padding:20px 56px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-family:var(--mono);font-size:12px;color:var(--dempet);border-top:1px solid var(--linje)}
.bunn-lenker{display:block;line-height:2}   /* PROMPT 239: « · » mellom lenkene i teksten */

/* adressesiden */
.adresse{padding:28px 56px 48px;display:flex;flex-direction:column;gap:24px;max-width:1400px;margin:0 auto}
.tittelrad{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}
.tittelrad h1{font-size:48px;line-height:1;overflow-wrap:anywhere}
.under{font-size:16px;color:var(--dempet);margin-top:6px}
.status-boks{display:flex;flex-direction:column;align-items:flex-end;gap:6px;text-align:right}
.status{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;font-weight:600;font-size:14px;border:1.5px solid var(--blekk)}
.status .dott{width:10px;height:10px;border-radius:50%}
.status.maalt{background:var(--blekk);color:var(--papir)}.status.maalt .dott{background:var(--gul)}
.status.delvis{background:var(--gul);color:var(--blekk)}.status.delvis .dott{background:var(--blekk)}
.status.ikke{background:transparent;color:var(--blekk);border-style:dashed}.status.ikke .dott{background:transparent;border:1.5px solid var(--blekk)}
.laser{font-family:var(--mono);font-size:12px;color:var(--dempet)}
.prosjekt{font-family:var(--mono);font-size:10.5px;color:var(--dempet);opacity:.85}
.hovedgrid{display:grid;grid-template-columns:minmax(0,1fr) 440px;gap:32px;align-items:start}

/* arket (1) og blåkopien (4) */
.ark{--a-bg:var(--ark);--a-rute:var(--rute);--a-strek:var(--blekk);--a-tekst:var(--blekk);--a-dempet:var(--dempet);--a-lav:#EDEFF2;--a-fyll:1;
  border:1px solid var(--a-strek);border-radius:4px;background-color:var(--a-bg);background-image:linear-gradient(var(--a-rute) 1px,transparent 1px),linear-gradient(90deg,var(--a-rute) 1px,transparent 1px);background-size:24px 24px;display:flex;flex-direction:column;color:var(--a-tekst);min-width:0}
.ark.bla{--a-bg:var(--bla);--a-rute:rgba(242,238,228,.07);--a-strek:var(--blatekst);--a-tekst:var(--blatekst);--a-dempet:#B9C3D6;--a-lav:rgba(242,238,228,.12);--a-fyll:.35;background-size:32px 32px}
.ark-topp{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 18px;border-bottom:1px solid var(--a-strek);background:var(--a-bg)}
.ark-topp h2{font-family:var(--smal);font-weight:600;font-size:16px;letter-spacing:.4px;text-transform:uppercase}
.ark-valg{display:flex;border:1px solid var(--a-strek);border-radius:4px;overflow:hidden}
.ark-valg button{border:0;background:transparent;color:var(--a-tekst);font-size:13px;padding:5px 10px;cursor:pointer}
.ark-valg button[aria-pressed=true]{background:var(--a-strek);color:var(--a-bg)}
.ark-figur{padding:18px;display:flex;justify-content:center}
.husfigur{max-width:100%;height:auto;display:block}
.ark-figur.fyll{padding:8px}
.ark-figur.kartbilde-ramme{padding:0!important;background:#E3CDB9}   /* PROMPT 116: også på mobil */
.kort-figur .kartbilde{width:100%}
.kartbilde{position:relative;width:100%;aspect-ratio:640/440;overflow:hidden;background:#E3CDB9}
.kartbilde img{position:absolute;max-width:none;image-rendering:auto}
.kartbilde-merke{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none}
.kartbilde-hus{fill:none;stroke:#C8102E;stroke-width:2;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.kartbilde-naal path{fill:#C8102E;stroke:#fff;stroke-width:1.5;vector-effect:non-scaling-stroke}
.kartbilde-naal circle{fill:#fff}
.kartbilde-skala{position:absolute;left:12px;bottom:10px;height:6px;border:1.5px solid #2B2B2B;border-top:0;background:rgba(255,255,255,.55)}
.kartbilde-skala span{position:absolute;left:100%;bottom:-5px;margin-left:6px;font:600 12px var(--mono);color:#2B2B2B;white-space:nowrap}
.kartbilde-nord{position:absolute;right:12px;top:10px;font:600 13px var(--mono);color:#2B2B2B;background:rgba(255,255,255,.7);padding:1px 5px;border-radius:3px}
.kartbilde-kilde{position:absolute;right:6px;bottom:4px;font-size:11px;color:#2B2B2B;background:rgba(255,255,255,.8);padding:1px 5px;border-radius:3px;text-decoration:none}
.ark-figur.fyll .husfigur{width:100%;max-height:440px}
.husfigur .tak-nabo.svak{fill:#E9E1D2;fill-opacity:1;stroke:#B9AE9C;stroke-width:1}
.husfigur.sentrert path,.husfigur.sentrert line{vector-effect:non-scaling-stroke}
.husfigur .hus-ramme{fill:none;stroke:none}
.deler-tekst{display:block;margin-top:4px}
.husfigur .flate{fill-opacity:var(--a-fyll);stroke:var(--a-strek);stroke-width:1.4;stroke-linejoin:round}
.husfigur .flate-lav{fill:var(--a-lav);stroke:var(--a-strek);stroke-width:1;stroke-dasharray:4 3;stroke-linejoin:round}
.husfigur .etikett{fill:var(--a-tekst);font-family:var(--mono);font-weight:600;paint-order:stroke;stroke:var(--a-bg);stroke-width:3px;stroke-linejoin:round}
.husfigur .vinkel{font-weight:500}
.husfigur .skala line{stroke:var(--a-strek);stroke-width:1.5}
.husfigur .skala text,.husfigur .nord text{fill:var(--a-tekst);font-family:var(--mono)}
.kort-figur .husfigur .flate{fill-opacity:1;stroke:var(--blekk);stroke-width:1.5}
.kort-figur .husfigur .flate-lav{fill:#EDEFF2;stroke:var(--blekk)}
.ark-bunn{margin-top:auto;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:12px 18px;border-top:1px solid var(--a-strek);background:var(--a-bg);font-family:var(--mono);font-size:12px}
.ark-kilde{color:var(--a-dempet);align-self:flex-end}
.flateliste{list-style:none;margin:0 0 6px;padding:0;display:flex;flex-wrap:wrap;gap:4px 16px}
.flateliste li{white-space:nowrap}
.fargeklasser{display:flex;flex-wrap:wrap;gap:4px 14px;color:var(--a-dempet)}
.prikk{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:6px;vertical-align:-1px;border:1px solid rgba(20,40,75,.4)}
.prikk.lav{background:var(--a-lav);border-style:dashed}
.ark.tom{min-height:300px}
.ark-tom-tekst{padding:40px 28px;margin:auto;max-width:420px;text-align:center}
.ark-tom-tekst p{margin:6px 0}

.fakta{display:flex;flex-direction:column;gap:14px;min-width:0}
.fakta h2{font-size:24px}
.blokk-tittel{font-family:var(--mono);font-size:12px;letter-spacing:.6px;color:var(--dempet);text-transform:uppercase;margin-top:4px;display:flex;justify-content:space-between;align-items:center;gap:8px}
.hele{font-family:var(--sans);text-transform:none;letter-spacing:0;font-size:12px;font-weight:600;color:var(--blekk);background:var(--gul-lys);border:1px solid var(--blekk);border-radius:999px;padding:2px 9px}
.fareliste,.maalliste{list-style:none;margin:0;padding:0;border-top:1px solid var(--linje)}
.fareliste li,.maalliste li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 0;border-bottom:1px solid var(--linje)}
.fare-svar{display:block;font-size:14px;text-align:right}
.fare-svar svg{display:inline-block;vertical-align:-3px;margin-right:6px}   /* PROMPT 138: haken fløt midt i raden */
.fare-svar:not(.ok){color:var(--dempet)}
.maalliste .navn{display:flex;align-items:center;gap:8px;font-size:15px}
.maalliste .navn small{color:var(--dempet)}
.maalliste .verdi{display:flex;align-items:center;gap:10px;font-family:var(--mono);font-size:13px;white-space:nowrap}
.slort{filter:blur(3px);opacity:.55;user-select:none}
.maalliste .ikke-klar .navn{color:var(--dempet)}
.maalliste .ikke-klar .verdi{color:var(--dempet);font-family:var(--sans);font-style:italic}
.knapp-hoved{margin-top:6px;height:52px;border:0;border-radius:6px;background:var(--blekk);color:var(--papir);font-weight:600;font-size:16px;cursor:pointer}
.liten-rad{display:flex;justify-content:space-between;gap:10px;font-size:13px;color:var(--dempet)}
.merknad{border:1.5px solid var(--blekk);border-radius:6px;padding:14px 16px;background:var(--kort)}
.merknad.delvis{background:#FBEFC6;border-color:#B98C10}
.merknad.ikke{background:var(--kort);border-style:dashed}
.merknad h3{font-family:var(--sans);font-weight:600;font-size:16px;margin-bottom:6px}
.merknad ul{margin:0;padding-left:18px;font-size:15px}
.merknad li{margin:3px 0}
.merknad details{margin-top:8px;font-size:12px;color:var(--dempet)}
.merknad details ul{font-size:12px;font-family:var(--mono)}
.merknad summary{cursor:pointer}
.ingen-maal{border:1px dashed var(--blekk);border-radius:6px;padding:14px 16px}
.ingen-maal p{margin:4px 0}
.utenfor{margin:-12px 0 0}

/* tjenestene (3) som liste */
.tjenester{border-top:1px solid var(--linje);padding-top:28px;display:flex;flex-direction:column;gap:16px}
.tjenester h2{font-size:32px}
.ingress{margin:0;color:var(--tekst2)}
.tj-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.tj-gruppe h3{font-family:var(--mono);font-weight:500;font-size:12px;letter-spacing:.6px;text-transform:uppercase;color:var(--dempet);margin-bottom:6px}
.tj-gruppe ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--linje)}
.tj-gruppe li{display:flex;justify-content:space-between;align-items:center;gap:10px;border-bottom:1px solid var(--linje)}
.tj-gruppe label{display:grid;grid-template-columns:22px 1fr;column-gap:8px;align-items:center;padding:10px 0;cursor:pointer;flex:1;min-width:0}
.tj-gruppe input{width:18px;height:18px;accent-color:var(--blekk);margin:0}
.tj-gruppe small{grid-column:2;color:var(--dempet);font-size:12px}
.tj-gruppe .pris{font-size:13px;color:var(--dempet)}
.tj-gruppe .pris-kol{display:flex;flex-direction:column;align-items:flex-end;text-align:right;max-width:48%}
.tj-gruppe li[data-fra] .pris{color:var(--blekk);white-space:nowrap}
.tj-gruppe small.tj-merk{font-size:11px}
.tj-gruppe li.valgt{background:#F3EAD0}
.overslag{border:2px solid var(--blekk);border-radius:6px;background:var(--gul);padding:20px 22px;display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:6px 24px;align-items:center}
.overslag-linje{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-weight:600;font-size:18px;grid-column:1}
.overslag .pris.stor{font-size:20px}
.overslag .liten{grid-column:1;color:var(--blekk);margin:0}
.overslag[data-uten-maal=true]{background:var(--kort)}
.overslag[data-uten-maal=true] .pris.stor{font-family:var(--sans);font-size:15px;font-style:italic}
.knapp-gul{grid-column:2;grid-row:1 / span 2;height:52px;border:0;border-radius:6px;background:var(--blekk);color:var(--papir);font-weight:600;font-size:16px;cursor:pointer}
.knapp-gul:disabled{background:transparent;color:var(--blekk);border:1.5px dashed var(--blekk);cursor:not-allowed}
.kontakt-melding{grid-column:1 / -1;color:var(--blekk)!important}
.forelopig{margin:0;font-size:13px;color:#8A1C12}
.knapp-test{margin-top:4px;height:44px;border:2px dashed #B3261E;border-radius:6px;background:#FFF4F2;color:#B3261E;font-weight:700;font-size:15px;cursor:pointer}
.maalliste li.opplast .verdi{color:var(--blekk);font-weight:600;white-space:normal;text-align:right}
.husfigur .tak-omriss,.husfigur .flate-forenklet{fill:#C48723;fill-opacity:var(--a-fyll);stroke:#5B3A0A;stroke-width:1.8;stroke-linejoin:round}
.husfigur .tak-tilbygg{fill:#DDB06A;fill-opacity:var(--a-fyll);stroke:#5B3A0A;stroke-width:1.2;stroke-linejoin:round}
.husfigur .tak-kant{fill:none;stroke:#5B3A0A;stroke-width:1.8;stroke-linejoin:round}
.ark.bla .husfigur .tak-kant{stroke:var(--blatekst)}
.husfigur .tak-linje{fill:none;stroke:#8C8C8C;stroke-width:1.3;stroke-linecap:round}
.husfigur .tak-nabo{fill:#DDB06A;fill-opacity:var(--a-fyll);stroke:#5B3A0A;stroke-width:1.2;stroke-linejoin:round}
.husfigur .tak-egen{fill:none;stroke:#14284B;stroke-width:3.5;stroke-linejoin:round}
.ark.bla .husfigur .tak-egen{stroke:var(--blagul)}
.ark.bla .husfigur .tak-omriss,.ark.bla .husfigur .flate-forenklet,.ark.bla .husfigur .tak-tilbygg{fill:var(--blatekst);stroke:var(--blatekst)}
.ark.bla .husfigur .tak-linje{stroke:var(--blatekst)}
.husfigur .flate-forenklet-gammel{fill:#D3DDEA;fill-opacity:var(--a-fyll);stroke:var(--a-strek);stroke-width:1.6;stroke-linejoin:round}
.husfigur .forenklet-merke{fill:var(--a-dempet);font-family:var(--mono);letter-spacing:.5px}
.husfigur .ark-del{stroke-width:1.8}
.fargeklasser .ikke-med{font-family:var(--sans);font-size:12px}
.forenklet-tekst{margin:0 0 6px;font-family:var(--sans);font-size:13px;color:var(--a-dempet)}

.eksempel-banner{border:2px solid var(--blekk);background:var(--gul);border-radius:6px;padding:12px 16px;font-size:15px}
.eksempel-banner b{font-family:var(--mono);letter-spacing:1px;margin-right:10px}
.tabell-rull{overflow-x:auto;max-width:100%}
.tabell{border-collapse:collapse;width:100%;font-size:14px}
.tabell th{font:500 12px var(--mono);text-transform:uppercase;letter-spacing:.4px;color:var(--dempet);text-align:left;padding:6px 8px;border-bottom:1px solid var(--linje)}
.tabell td{padding:7px 8px;border-bottom:1px solid var(--linje-lys);vertical-align:top}
.maal-tabell td:last-child{font-family:var(--mono);text-align:right}
.seksjon-smal{display:flex;flex-direction:column;gap:10px;border-top:1px solid var(--linje);padding-top:24px}
.seksjon-smal h2,.tekstside h2{font-size:26px}
.tekstside{max-width:920px}
.tekstside section{display:flex;flex-direction:column;gap:10px}
.status-forklaring{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}
.status-forklaring .status{margin-right:8px}
.skjema{display:flex;flex-direction:column;gap:6px;max-width:560px}
.skjema label{font-weight:600;margin-top:8px}
.skjema input,.skjema select,.skjema textarea{font:16px var(--sans);padding:10px;border:1.5px solid var(--blekk);border-radius:6px;background:var(--kort);color:var(--blekk)}
.skjema-melding{font-weight:600}
.alle-gruppe{margin-top:8px}
.alle-gruppe h2{font-size:22px;display:flex;align-items:center;gap:10px;margin-bottom:8px}
.alle{columns:4 220px;margin:0;padding:0;list-style:none;font-size:14px}
.alle li{padding:2px 0;break-inside:avoid}
.samlet{white-space:nowrap}
@media (max-width:640px){.topp.uten-sok-mobil form.sok{display:none}}
.alle-sok{background:var(--kort,#fff);border:1px solid var(--linje);border-radius:12px;padding:12px 14px;margin:8px 0 14px;max-width:560px}
.alle-sok p{margin:0 0 8px}
.alle-hopp{display:flex;flex-wrap:wrap;gap:4px 10px;margin:10px 0 4px;font-size:16px}
.alle-bokstav{font-size:20px;margin:18px 0 6px;scroll-margin-top:80px}
.alle li::before,.alle-forklaring span::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;margin:0 6px 1px 0;box-sizing:border-box}
.alle .s-maalt::before,.alle-forklaring .s-maalt::before{background:var(--blekk)}
.alle .s-delvis::before,.alle-forklaring .s-delvis::before{background:var(--gul)}
.alle .s-ikke::before,.alle-forklaring .s-ikke::before{border:1.5px solid var(--blekk)}
.alle-forklaring span{margin-right:14px;white-space:nowrap}

/* H2: valg på adressesiden, kort mobilliste, følg huset */
.hovedgrid > .ark{order:1}.hovedgrid > .fakta{order:2}
.valg-adresse{order:3;grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.valg-flis{display:flex;flex-direction:column;gap:6px;padding:18px 20px;border:1px solid var(--blekk);border-radius:6px;background:var(--kort);text-decoration:none;color:var(--blekk)}
.valg-flis b{font-family:var(--smal);font-size:22px}
.valg-flis span{font-size:14px;color:var(--tekst2)}
.valg-flis em{display:none}
.valg-flis.gul{background:var(--gul)}
.valg-flis.gul span{color:var(--blekk)}
.maalliste-kort{display:none}
.folg-huset{display:flex;flex-direction:column;gap:4px;padding:16px 18px;border-radius:8px;background:var(--blekk);color:var(--papir)}
.folg-huset b{font-family:var(--smal);font-size:18px}
.folg-huset span{font-size:14px;color:var(--blalys)}
.folg-huset .kommer{display:inline-block;margin-left:8px;padding:1px 8px;border-radius:10px;background:var(--gul);color:var(--blekk);font-family:var(--mono);font-size:11px;vertical-align:middle}

/* mobil (5) */
@media (max-width:1100px){
  .helt{grid-template-columns:minmax(0,1fr);}
  .helt-kort{max-width:560px}
  .hovedgrid{grid-template-columns:minmax(0,1fr);row-gap:18px}   /* PROMPT 125: priskortene på første iPhone-skjerm også med lang adresse */
  .handverker{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:760px){
  .topp{flex-direction:column;align-items:stretch;gap:12px;padding:14px 16px}
  .topp .sok{flex-direction:column;align-items:stretch;gap:4px}
  .topp .sok label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .topp .sok-boks{width:auto}
  .topp .sok input{height:48px;font-size:16px}
  .knapp-ikon{width:48px;height:48px}
  .forside-topp{flex-direction:row;align-items:center;flex-wrap:wrap}
  .meny{display:flex;width:100%;gap:6px 18px;flex-wrap:wrap;font-size:14px;order:2}   /* PROMPT 112: var skjult */
  .meny a{display:inline-block;min-height:44px;line-height:44px}
  .logo{font-size:24px}
  .helt{padding:28px 16px;gap:28px}
  .helt h1{font-size:38px;letter-spacing:-.5px}
  .ingress-stor{font-size:17px}
  .sok.stor input{height:54px;font-size:16px}
  .knapp-sok{height:54px;padding:0 16px;font-size:16px}
  .rapport-kort{transform:none;padding:18px}
  .seksjon{padding:40px 16px;gap:22px}
  .seksjon h2{font-size:30px}
  .tre-kort,.tre-steg,.to-bokser{grid-template-columns:minmax(0,1fr)}
  .valgkort{padding:20px}
  .handverker{padding:36px 16px;gap:24px}
  .handverker h2{font-size:30px}
  .bunn{padding:16px}
  .adresse{padding:18px 16px 32px;gap:18px}
  .tittelrad{flex-direction:column-reverse;align-items:flex-start;gap:12px}
  .tittelrad h1{font-size:34px}
  .status-boks{align-items:flex-start;text-align:left;flex-direction:row;flex-wrap:wrap;gap:6px 12px}
  .status-boks .prosjekt{flex-basis:100%}
  .ark-figur{padding:10px}
  .husfigur .etikett{font-size:30px;stroke-width:5px}
  .husfigur .skala text,.husfigur .nord text{font-size:24px}
  .ark-topp{padding:10px 12px}
  .ark-bunn{padding:10px 12px}
  .kart-ark .ark-bunn{padding:6px 12px;font-size:11px}   /* PROMPT 124: priskortene på første iPhone-skjerm (664 px) */
  .ark-bunn > div:empty{display:none}
  .flateliste li{white-space:normal}
  .tj-grid{grid-template-columns:minmax(0,1fr)}
  .tjenester h2{font-size:26px}
  .overslag{grid-template-columns:minmax(0,1fr);padding:16px}
  .knapp-gul{grid-column:1;grid-row:auto;width:100%}
  .overslag-linje{flex-wrap:wrap}
  .alle{columns:1}
  .valg-adresse{order:2;display:flex;flex-wrap:wrap;gap:8px}
  .hovedgrid > .fakta{order:3}
  .valg-flis{flex-direction:row;padding:10px 16px;border-radius:24px;border-color:var(--linje)}
  .valg-flis b,.valg-flis span{display:none}
  .valg-flis em{display:inline;font-style:normal;font-size:15px}
  .valg-flis.gul em{font-weight:600}
  .maalliste.full{display:none}
  .maalliste-kort{display:block;border-top:0}
  .maalliste-kort li{border:1px solid var(--linje);border-radius:8px;padding:12px 14px;margin-bottom:8px;background:var(--kort)}
  body.opplast .maalliste.full{display:block}
  body.opplast .maalliste-kort{display:none}
  .tabell{font-size:13px}
  .tabell th,.tabell td{padding:6px 5px;overflow-wrap:anywhere}
  .eksempel-banner{font-size:14px}
}

@media (max-width: 640px){
  .merke{min-height:44px;display:flex;align-items:center}
  .ark-valg button{min-height:44px;min-width:64px;padding:0 14px}
  .merknad details summary{min-height:44px;display:flex;align-items:center;padding:4px 0}
  .liten-rad a, .overslag a, .tjenester a{display:inline-block;min-height:44px;line-height:44px}
  small, .kommer, .prosjekt{font-size:12px !important}   /* var 10,5-11,7 px */
}

.salgsboks .sb-levering{margin:0 0 12px;font-size:14px;font-weight:600;color:var(--gul-lys)}
.salgsboks.kjopt .sb-levering{color:var(--blekk)}
/* PROMPT 121: priskortene høyt opp. PC: under kartbildet i venstre kolonne (3 og 3), salgsboksen og
   målene til høyre over begge radene. Mobil: kart → priskort (2 i bredden) → salgsboks → mål. */
.hovedgrid > .ark{grid-column:1;grid-row:1}
.hovedgrid > .kalk{grid-column:1;grid-row:2;margin:0}
.hovedgrid > .fakta{grid-column:2;grid-row:1 / span 2}
.hovedgrid.salg-grid > .salgsboks{grid-column:1;grid-row:3;margin:0}
.hovedgrid.salg-grid > .gaard-del{grid-column:1;grid-row:4;margin:0}
.hovedgrid.salg-grid > .fakta{grid-row:1 / span 4}
.hus-ingress{margin:-6px 0 14px;font-size:17px;line-height:1.4;color:var(--blekk)}
.hele-linje{margin:-6px 0 10px;font-size:16px;color:var(--blekk)}
.tl-mer{margin:14px 0 0;padding:14px 16px;border:1px solid var(--linje);border-radius:12px;background:var(--kort)}
.tl-mer .tl-mer-tekst{margin:0 0 10px;font-size:16px;line-height:1.45}
.tl-mer .tl-mer-fil{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}
.tl-mer .tl-mer-velg{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border-radius:10px;background:var(--blekk);color:#fff;font:700 16px var(--sans);cursor:pointer}
.tl-mer .tl-mer-velg[aria-disabled=true]{opacity:.6;pointer-events:none}
.tl-mer .tl-mer-melding{margin:10px 0 0;font-size:15px}
.tl-mer .tl-mer-melding.tl-feil{color:#B3261E}
.tegn-boks{margin:12px 0 0;padding:14px 16px;border:1px solid var(--linje);border-radius:12px;background:var(--kort);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 14px}
.tegn-boks .tegn-boks-tekst{margin:0;font-size:16px;line-height:1.4}
.tegn-boks .tegnknapp{display:inline-block;width:auto;margin:0;min-height:48px;padding:0 20px;border:0;border-radius:10px;background:var(--gul);color:var(--blekk);font:700 16px var(--sans);text-align:center;cursor:pointer}
.tegn-boks .tegnknapp[aria-expanded=true]{background:var(--blekk);color:#fff}
.dokboks .dok-linje{margin:0 0 12px;font-size:17px;line-height:1.45}
.slik154 h2{margin:26px 0 8px}
.slik154 p{max-width:680px;font-size:17px;line-height:1.55}
.slik154-knapp{display:inline-block;margin-top:14px;padding:14px 22px;border-radius:10px;text-decoration:none;font-weight:700}
.kalk .kalk-forbehold{margin:4px 0 0;font-size:14px;color:var(--dempet)}
.hovedgrid > .kalk .k-kort-liste{grid-template-columns:repeat(3,minmax(0,1fr))}
.kalk .k-kort{cursor:default}
.kalk .k-kort-liste{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;margin:12px 0 16px}
@media (max-width: 860px){
  .hovedgrid > .ark,.hovedgrid > .kalk,.hovedgrid > .fakta{grid-column:1;grid-row:auto}
  .hovedgrid > .ark{order:1}.hovedgrid > .kalk{order:2}.hovedgrid > .fakta{order:3}
  .hovedgrid.salg-grid > .ark,.hovedgrid.salg-grid > .kalk,.hovedgrid.salg-grid > .fakta,.hovedgrid.salg-grid > .salgsboks,.hovedgrid.salg-grid > .gaard-del{grid-column:1;grid-row:auto}
  main.adresse .tittelrad{flex-direction:column}   /* PROMPT 153: adressen først, statusmerket under */
  .hovedgrid.salg-grid > .ark .kartbilde-ramme{background:transparent}
  .hovedgrid.salg-grid > .kalk{order:1}.hovedgrid.salg-grid > .fakta{order:2}.hovedgrid.salg-grid > .salgsboks{order:3}
  .hovedgrid.salg-grid > .ark{order:4}.hovedgrid.salg-grid > .gaard-del{order:5}
  .hovedgrid.salg-grid > .ark .kartbilde{width:72%;margin:0 auto}   /* PROMPT 153: kartet lavere på mobil */
  .hovedgrid > .kalk .k-kort-liste,.kalk .k-kort-liste{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .kalk .k-kort .k-mer{display:none}
  .kalk .k-kort[aria-expanded=true] .k-mer{display:block}
  .kalk .k-kort:not([aria-expanded=true]) .k-to .k-spenn{display:none}   /* PROMPT 240: spennet under firmaprisen, åpnes som før */
}
.kalk .k-kort{padding:14px 16px;border:1px solid var(--linje);border-radius:12px;background:var(--kort)}
.kalk .k-kort-topp{display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap}
.kalk .k-kort-topp b{font-size:17px}
.kalk .k-ett{display:block;margin-top:4px;font-size:14px;color:var(--dempet)}
.kalk .k-typisk{display:block;margin-top:8px;font:700 24px var(--sans);color:var(--blekk)}
/* PROMPT 229: «Utført av firma» og «Bare materialer» side om side (Workeren setter dem inn, worker/src/materialer.js) */
.kalk .k-to{display:grid;row-gap:4px;margin-top:8px}
.kalk .k-to .k-typisk{margin-top:0;font-size:22px;white-space:nowrap}
.kalk .k-hvem{display:block;font-size:12px;line-height:1.3;color:var(--dempet)}
.kalk .k-mat-sum{display:block;font:700 18px var(--sans);color:var(--blekk);white-space:nowrap}
.kalk .k-mat-merke{display:block;font-size:12px;line-height:1.3;color:var(--dempet)}
.kalk .k-stillas{display:block;margin-top:2px;font-size:12px;line-height:1.3;color:var(--dempet)}   /* PROMPT 240c: stillaset for seg, med spenn */
.kalk .k-stillas-sum{white-space:nowrap}
.kalk .k-mat-tekst{display:block;margin-top:4px;font-size:12px;line-height:1.35;color:var(--dempet)}
body.kjopt .kalk .k-mat-tekst{display:none}
/* PROMPT 125: lavere priskort på mobil, så salgsboksen kommer innen 2 skjermer på iPhone 13 (664 px).
   Beløpet på én linje der det får plass, «Trykk for spenn» er et lite +-ikon (bare på kort som kan åpnes). */
@media (max-width: 860px){
  .kalk .k-kort{position:relative;padding:8px 10px;cursor:pointer}
  .kalk .k-kort-topp{padding-right:24px}
  .kalk .k-kort-topp b{font-size:15px}
  .kalk .k-typisk{margin-top:2px;font-size:18px}
  .kalk .k-to{margin-top:2px;row-gap:2px}.kalk .k-to .k-typisk{font-size:17px}.kalk .k-mat-sum{font-size:15px}.kalk .k-hvem,.kalk .k-mat-merke{font-size:11px}
  .kalk .k-kort[role=button]::after{content:"+";position:absolute;top:6px;right:8px;width:18px;height:18px;line-height:16px;text-align:center;border:1px solid var(--linje);border-radius:50%;font-size:14px;color:var(--dempet)}
  .kalk .k-kort[role=button][aria-expanded=true]::after{content:"−"}
}
.kalk .k-spenn{display:block;font-size:13px;color:var(--dempet)}
.kalk .k-tillegg{margin:6px 0 0;font-size:13px;color:var(--dempet)}
/* PROMPT 232: «Si fra til meg» (sjekk-tilbud.html og svaret på et tilbud vi ikke kan vurdere) */
.samler-skjema{display:grid;gap:6px;max-width:420px;margin:10px 0 18px;padding:14px 16px;border-radius:12px;background:var(--kort);border:1px solid var(--linje)}
.samler-skjema label{font-weight:600;font-size:15px}.samler-skjema input:not([type=checkbox]){font:16px var(--sans);padding:10px 12px;border:1px solid var(--linje);border-radius:8px}
.samler-skjema .samler-samtykke{display:flex;gap:8px;align-items:flex-start;font-weight:400}
.samler-skjema button{min-height:46px;border:0;border-radius:10px;background:var(--blekk);color:#fff;font:600 16px var(--sans);cursor:pointer}
.samler-melding:empty{display:none}
/* PROMPT 236: lenken til tilbudssjekken på prissidene, og kalkulatoren på /pris/vinduer/ */
.pris-tilbud{margin:6px 0 14px;font-size:16px}.pris-tilbud a{font-weight:600}
.vindu-kalk fieldset{border:0;margin:0 0 10px;padding:0}.vindu-kalk legend{font-weight:600;margin-bottom:6px}
.vk-valg{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.vk-valg button{font:600 14px var(--sans);padding:8px 12px;border:1px solid var(--linje);border-radius:999px;background:var(--kort);color:var(--blekk);cursor:pointer}
.vk-valg button[aria-pressed=true]{background:var(--blekk);border-color:var(--blekk);color:#fff}
.vk-mal{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:10px}
.vk-mal label{display:flex;flex-direction:column;gap:4px;font-weight:600;font-size:15px}
.vk-mal input{font:16px var(--sans);padding:10px 12px;border:1px solid var(--linje);border-radius:8px;background:#fff}
.vk-svar{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin:8px 0}
.vk-del{padding:14px 16px;border-radius:12px;background:var(--kort);border:1px solid var(--linje)}
.vk-hvem{display:block;font-size:13px;color:var(--dempet)}.vk-del b{display:block;font-size:24px;color:var(--blekk)}
.vk-spenn{display:block;font-size:14px;color:var(--dempet)}
.vk-totalt,.vk-usikker{grid-column:1/-1;margin:0}.vk-usikker{color:#8A4B12}
/* PROMPT 234: små valgknapper under prisene (Workeren setter dem inn, worker/src/google.js valgKnapper) */
.kalk .k-valg{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:8px 0 2px}
.kalk .k-valg-tittel{flex-basis:100%;font-size:12px;line-height:1.2;color:var(--dempet)}
.kalk .k-valg-merk{flex-basis:100%;font-size:12px;line-height:1.3;color:#8A4B12}
.kalk .kalk-forbehold .k-mat-tekst{display:inline;margin:0;font-size:inherit}
.kalk .k-valg-knapp{font:600 13px var(--sans);line-height:1.2;padding:6px 10px;min-height:32px;border:1px solid var(--linje);border-radius:999px;background:var(--kort);color:var(--blekk);cursor:pointer}
.kalk .k-valg-knapp[aria-pressed=true]{background:var(--blekk);border-color:var(--blekk);color:#fff}
.kalk .k-valg-knapp:focus-visible{outline:2px solid var(--gul);outline-offset:2px}
@media (max-width: 860px){.kalk .k-valg{gap:4px;margin-top:6px}.kalk .k-valg-knapp{font-size:12px;padding:4px 7px;min-height:30px}}
.kalk .k-uten{opacity:.75}
.kalk .k-gjelder{display:block;font-size:12px;line-height:1.25;color:var(--dempet)}   /* PROMPT 127: «Ditt tak» / «Hele bygget (N boenheter)» */
.kalk .kalk-merke{display:inline-block;margin-left:8px;padding:2px 8px;border-radius:999px;background:var(--gul-lys);color:var(--blekk);font:600 13px var(--sans);vertical-align:middle}
.kalk .k-tomt,.kalk .k-etter{margin:6px 0;font-size:15px}
/* PROMPT 133 tillegg 2: gårdsplasskortet går over hele bredden, tekst til venstre og stor knapp til høyre */
.kalk .k-kort.k-gaard{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;cursor:default}
.kalk .k-gaard .k-typisk{color:var(--blekk)}
.kalk .k-gaard-knapp{min-height:48px;padding:0 20px;border:0;border-radius:10px;background:var(--gul);color:var(--blekk);font:700 16px var(--sans);cursor:pointer}
.kalk .k-gaard-knapp:hover{filter:brightness(.95)}
/* mobil: tittelen på én linje over hele bredden, knappen til høyre for «Asfalt …» og beløpet (PROMPT 125: salgsboksen innen 2 skjermer) */
@media (max-width: 860px){.kalk .k-kort.k-gaard{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:10px;row-gap:2px;align-items:center;padding:8px 10px}
  .kalk .k-gaard-tekst{display:contents}.kalk .k-gaard .k-kort-topp{grid-column:1/-1;padding-right:0}
  .kalk .k-gaard .k-gjelder{grid-column:1}.kalk .k-gaard .k-typisk{grid-column:1;margin-top:0}
  .kalk .k-gaard-knapp{grid-column:2;grid-row:2/4;min-height:44px;padding:0 12px;font-size:15px}}
.kalk .k-etter{font-weight:600}
/* PROMPT 140: TILBUDSSJEKK - låste priser og opplastingen */
.kalk .k-laast{color:var(--dempet)}
.kalk .k-laast .sladd{color:var(--blekk);opacity:.35;letter-spacing:-2px}
.tilbudslas{margin:14px 0 6px;padding:14px 16px;border:1px solid var(--linje);border-radius:12px;background:var(--kort)}
.tilbudslas .tl-tekst{margin:0 0 10px;font-size:16px;line-height:1.45}
.tilbudslas .tl-skjema{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.tilbudslas .tl-fil{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}
.kalk .tl-skjult{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.tilbudslas .tl-velg{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 22px;border-radius:8px;
  background:var(--blekk);color:#fff;font-size:17px;font-weight:700;cursor:pointer;width:100%;max-width:360px}
.tilbudslas .tl-fil:focus-visible+.tl-velg{outline:3px solid var(--blagul,#F2B21B);outline-offset:2px}
.tilbudslas .tl-velg[aria-disabled=true]{opacity:.6;pointer-events:none}
.tilbudslas .tl-faar{margin:0 0 10px;font-size:15px}
/* PROMPT 143: hengelås på de låste kortene, løft av opplastingsboksen, etter opplasting */
.kalk .k-laas-merke{display:inline-block;width:13px;height:15px;margin-left:8px;vertical-align:-2px;opacity:.7;
  background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 13 15'%3E%3Crect x='1' y='6.5' width='11' height='8' rx='1.5' fill='%2314284B'/%3E%3Cpath d='M3.5 6.5V4.5a3 3 0 0 1 6 0v2' fill='none' stroke='%2314284B' stroke-width='1.6'/%3E%3C/svg%3E")}
.kalk .k-kort:has(.k-laast){cursor:pointer}
.tilbudslas{scroll-margin-top:90px;transition:box-shadow .3s,transform .3s}
.tilbudslas.tl-loft{box-shadow:0 0 0 3px #F2B21B,0 8px 24px rgba(20,40,75,.18);transform:translateY(-2px)}
.tilbudslas .tl-kjop{margin:8px 0 0;font-size:15px}
.tilbudslas .tl-filnavn:empty{display:none}
.tilbudslas .tl-kjop a{color:inherit}
.tilbudslas .tl-etter h3{margin:0 0 8px;font-size:19px}
.tilbudslas .tl-flere{margin:8px 0}
.tilbudslas .tl-en-til{display:inline-block;margin-left:4px;padding:4px 12px;border:1px solid var(--blekk);border-radius:6px;font-size:14px;font-weight:600;cursor:pointer}
.tilbudslas .tl-apen{margin:8px 0 0;font-weight:400}
.tilbudslas .tl-apen a{color:inherit}
.kalk .kalk-forbehold{margin:12px 0 0;font-size:15px}
.kalk .kalk-under{margin:-2px 0 10px;font-size:16px;line-height:1.4}
.kalk .kalk-under a{color:inherit}
.kalk .k-gratis-merke{margin-left:8px;font-size:12px;font-weight:700;background:#E4F1E4;color:#1F5B24;border-radius:4px;padding:1px 6px}
.salgsboks .sb-faar{margin:6px 0 0;font-size:15px}
.tilbudslas .tl-personvern{margin:8px 0 0;line-height:1.4}
.tilbudslas .tl-melding{margin:10px 0 0;font-weight:600}
.tilbudslas .tl-feil{color:#8A2A12}
.tilbudslas .tl-apen{margin:0;font-weight:600}
.tilbudslas.tl-aapnet{background:transparent}
.tilbudslas .tl-svar{margin-top:12px;border-top:1px solid var(--linje);padding-top:12px}
.tilbudslas .tl-svar h3{margin:0 0 8px;font-size:19px}
.tilbudslas .tl-svar p{margin:0 0 8px}
.tilbudslas .tl-lister{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:8px 0}
.tilbudslas .tl-lister h4{margin:0 0 4px;font-size:15px}
.tilbudslas .tl-lister ul{margin:0;padding-left:18px}
@media (max-width:640px){.tilbudslas .tl-lister{grid-template-columns:1fr}
  .tilbudslas{padding:12px 14px}.tilbudslas .tl-tekst{font-size:15px}}   /* PROMPT 143: 49 kr-lenka innen 2 skjermhøyder på iPhone */
.kalk .k-fot{font-size:14px;color:var(--dempet);margin:8px 0 0}
.dokboks{position:relative;margin:28px 0;padding:20px 20px 18px;border:2px solid var(--blekk);border-radius:14px;background:var(--kort);color:var(--blekk)}
.dokboks h2{margin:0 0 6px;font:700 22px/1.25 var(--sans);text-transform:none;letter-spacing:0;color:var(--blekk)}
.dokboks .dok-pris{display:inline-block;margin-left:6px;padding:2px 10px;border-radius:999px;background:var(--gul);font-size:17px;vertical-align:2px}
.dokboks .dok-kommer{display:inline-block;margin:0 0 8px;padding:2px 10px;border-radius:999px;background:var(--blekk);color:#fff;font:600 12px var(--sans);letter-spacing:.5px;text-transform:uppercase}
.dokboks p{margin:0 0 12px;font-size:16px}
.dokboks .dok-knapp,.dokboks button[type=submit]{min-height:46px;padding:0 18px;border:0;border-radius:10px;background:var(--gul);color:var(--blekk-mork);font:600 16px var(--sans);cursor:pointer}
.dokboks .dok-skjema{display:grid;gap:8px;max-width:440px}
.dokboks input[type=email]{min-height:44px;padding:0 10px;border:1px solid var(--linje);border-radius:8px;font:16px var(--sans)}
.dokboks .dok-samtykke{display:flex;gap:8px;align-items:flex-start;font-size:14px}
.dokboks .dok-melding:empty{display:none}
.dokboks .dok-ord a,.dokboks .dok-kommune a{color:var(--blekk);font-weight:600}
.ordliste .ord-meny{margin:12px 0 20px;line-height:1.9;font-size:15px}
.ordliste .ord-liste{margin:0}
.ordliste .ord{padding:14px 0;border-top:1px solid var(--linje-lys);scroll-margin-top:80px}
.ordliste dt{font:700 19px var(--sans);color:var(--blekk)}
.ordliste dd{margin:6px 0 0}
.ordliste dd p{margin:0 0 6px}
.ordliste .for-deg{color:var(--blekk)}
.ordliste .kilde{font-size:13px;color:var(--dempet)}
.dokboks-forside{max-width:1200px;margin:0 auto;padding:0 16px}
.rapport-ark{max-width:1000px;margin:0 auto;padding:24px 16px 40px;position:relative}
.rapport-ark h1{font-size:30px;margin:0 0 4px;padding-right:240px}
.rapport-ark h2{margin:28px 0 10px}
.rapport-sted{margin:0;color:var(--dempet)}
.rapport-hjorne{position:sticky;top:8px;float:right;z-index:50;margin:0 0 12px 16px;padding:12px 14px;border-radius:12px;background:var(--bla);color:var(--blatekst);box-shadow:0 6px 18px rgba(10,24,48,.2);max-width:230px}
.rapport-hjorne .pdf-stor{display:block;width:100%;min-height:52px;border:0;border-radius:10px;background:var(--gul);color:var(--blekk-mork);font:700 17px var(--sans);cursor:pointer}
.rapport-hjorne .pdf-stor:disabled{opacity:.6;cursor:default}
.rapport-hjorne .rapport-epost{margin:8px 0 0;font-size:13px}
.rapport-topp{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:20px;align-items:start;margin-top:16px;clear:both}
.rapport-kart{min-width:0}
.rapport-kart .kartbilde{width:100%;max-width:100%;border:1px solid var(--linje);border-radius:8px}
.rapport-ark .maalliste li{flex-wrap:wrap}
.rapport-ark .maalliste .verdi{white-space:normal;text-align:right;min-width:0}
.rapport-topp > *{min-width:0}
.rapport-ark .kalk .k-kort::after{content:none}
.rapport-ark .kalk .k-kort{cursor:default}
@media (max-width: 760px){.rapport-ark .kalk .k-kort-liste{grid-template-columns:1fr}}
.rapport-feil{margin:40px 0;padding:16px;border:2px solid #B3261E;border-radius:10px;background:#fff;font-weight:600}
.del-naboen-rad{margin:12px 0 0}.del-naboen{font:inherit;font-weight:600;padding:10px 16px;border-radius:10px;border:1.5px solid var(--blekk-mork);background:transparent;color:var(--blekk-mork);cursor:pointer}.del-naboen-svar{margin-left:10px;font-size:14px}
.sb-rapport-knapp{display:inline-block;margin-top:6px;padding:12px 18px;border-radius:10px;background:var(--gul);color:var(--blekk-mork)!important;font-weight:700;text-decoration:none}
@media (max-width: 760px){
  .rapport-ark h1{padding-right:0;font-size:24px}
  .rapport-hjorne{position:sticky;top:0;float:none;max-width:none;margin:0 -16px 14px;border-radius:0 0 12px 12px}
  .rapport-topp{grid-template-columns:1fr}
}
@media print{.rapport-hjorne{display:none!important}.rapport-ark h1{padding-right:0}}
.pdf-knapp{display:inline-block;min-height:44px;margin:10px 0 0;padding:0 18px;border-radius:10px;border:2px solid var(--blekk);background:#fff;color:var(--blekk);font:600 15px var(--sans);cursor:pointer}
.eksempel-banner .levering{display:block;margin-top:6px;font-weight:600}
@media print{
  @page{size:A4;margin:14mm 14mm 16mm}
  body{background:#fff!important;color:#000;font-size:11pt}
  .topp,.bunn,.salgsboks,.kalk,#kalkulator,.kartseksjon,.gratis-linje,.valg-adresse,.pdf-knapp,.sok,
  .maalliste-kort,.liten-rad,.tjenester,.folg-huset,script,.eksempel-banner .pdf-knapp,.dokboks{display:none!important}
  .eksempel-banner{border:1px solid #999!important;background:#fff!important;color:#000!important;padding:6px 8px!important;font-size:9pt}
  .maalliste.full{display:block!important}
  .hovedgrid{display:block!important}
  .ark{break-inside:avoid;box-shadow:none!important;border:1px solid #999!important;margin:0 0 8mm!important;max-width:120mm}
  .fakta{break-inside:avoid}
  .maalliste li{padding:4px 0!important;break-inside:avoid}
  table{break-inside:auto}tr{break-inside:avoid}
  h1{font-size:18pt!important;margin:0 0 2mm!important}
  a{color:#000;text-decoration:none}
}
.salgsboks{margin:0 0 22px;padding:18px 18px 16px;border-radius:14px;background:var(--bla);color:var(--blatekst);box-shadow:0 6px 20px rgba(10,24,48,.18)}
.salgsboks h2{margin:0 0 10px;font:700 22px/1.2 var(--sans);color:#fff;text-transform:none;letter-spacing:0}
.salgsboks .sb-pris{display:inline-block;margin-left:6px;padding:2px 10px;border-radius:999px;background:var(--gul);color:var(--blekk-mork);font-size:18px;vertical-align:2px}
.salgsboks .sb-punkter{margin:0 0 14px;padding:0;list-style:none}
.salgsboks .sb-punkter li{position:relative;padding:3px 0 3px 24px;font-size:15px}
.salgsboks .sb-punkter li::before{content:"";position:absolute;left:2px;top:9px;width:12px;height:7px;border-left:2.5px solid var(--gul);border-bottom:2.5px solid var(--gul);transform:rotate(-45deg)}
.salgsboks .sb-samtykke{display:flex;gap:10px;align-items:flex-start;margin:0 0 12px;font-size:14px}
.salgsboks .sb-samtykke input{width:20px;height:20px;flex:none;margin-top:1px;accent-color:var(--gul)}
.salgsboks .vipps-knapp{display:block;width:100%;min-height:52px;border:0;border-radius:10px;background:#FF5B24;color:#fff;font:600 18px var(--sans);cursor:pointer}
.salgsboks .vipps-knapp:disabled{opacity:.55;cursor:default}
.salgsboks .liten,.salgsboks .sb-status{color:var(--blatekst);opacity:.9;margin:8px 0 0}
.salgsboks .sb-status:empty{display:none}
.salgsboks .sb-snart{font-weight:600;color:var(--gul-lys);opacity:1}
.salgsboks a{color:var(--gul-lys)}
.salgsboks .sb-eksempel{display:inline-block;margin-top:10px;font-size:14px}
.salgsboks.kjopt{background:var(--kort);color:var(--blekk);border:2px solid var(--gul);box-shadow:none}
.salgsboks.kjopt h2,.salgsboks.kjopt .sb-status,.salgsboks.kjopt a{color:var(--blekk)}
.salgsboks.kjopt .sb-punkter,.salgsboks.kjopt .sb-eksempel{display:none}
.kjopt .maalliste.full{display:block}.kjopt .maalliste-kort{display:none}
.gratis-linje{margin:24px 0 8px;border:1px solid var(--linje);border-radius:10px;background:var(--kort)}
.gratis-linje summary{cursor:pointer;padding:12px 14px;font-size:15px}
.gratis-linje[open] summary{border-bottom:1px solid var(--linje-lys)}
.gratis-linje .fareliste,.gratis-linje p{margin:8px 14px 12px}
.kartbilde-ring .halo{fill:none;stroke:#fff;stroke-width:6;vector-effect:non-scaling-stroke;opacity:.9}
.kartbilde-ring .ring{fill:rgba(20,40,75,.10);stroke:var(--blekk);stroke-width:2.5;vector-effect:non-scaling-stroke}
.kartbilde-ring .kjerne{fill:var(--blekk);stroke:#fff;stroke-width:1.5;vector-effect:non-scaling-stroke}
@media (max-width: 860px){.salgsboks{margin:4px 0 22px}}
/* PROMPT 149: én lys boks med to like store valg rett under prisene */
.salgsboks{margin:14px 0 18px;padding:16px;border-radius:14px;background:var(--kort);color:var(--blekk);border:2px solid var(--gul);box-shadow:none}
.salgsboks h2{margin:0 0 12px;font:700 22px/1.2 var(--sans);color:var(--blekk)}
.salgsboks .sb-valg{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}
.salgsboks .sb-valg1,.salgsboks .sb-valg2{padding:14px;border:1px solid var(--linje);border-radius:12px;background:#fff;display:flex;flex-direction:column}
.salgsboks h3,.salgsboks .tl-tittel{margin:0 0 6px;font:700 19px/1.25 var(--sans);color:var(--blekk)}
.salgsboks .sb-hva,.salgsboks .tl-tekst{margin:0 0 12px;font-size:16px;line-height:1.45}
.salgsboks .tl-hva{margin:0 0 8px;font-size:16px;line-height:1.45;font-weight:600}
.salgsboks .sb-hva{font-weight:600}
.salgsboks .sb-faar,.salgsboks .tl-faar{margin:0 0 10px;font-size:15px}
.salgsboks .vipps-knapp,.salgsboks .tl-velg{width:100%;max-width:none;min-height:52px;font:700 18px var(--sans);border-radius:10px}
.salgsboks .tl-velg{background:var(--blekk);color:#fff}
.salgsboks .tilbudslas{margin:0;padding:0;border:0;background:none}
.salgsboks .tl-gratis{display:inline-block;margin-left:6px;padding:1px 8px;border-radius:999px;background:#E4F1E4;color:#1F5B24;font-size:14px;vertical-align:2px}
.salgsboks .liten,.salgsboks .sb-status{color:var(--dempet);opacity:1;margin:8px 0 0}
.salgsboks .sb-snart{color:var(--blekk);font-weight:600}
.salgsboks .sb-har-kjopt{margin:14px 0 0;font-size:15px}
/* PROMPT 165-167: brødsmuler, kommune-, gate- og prissider, naboer, spørsmål og svar, faktatabellen */
.brodsmuler{font-size:14px;margin:4px 0 12px;color:#5b6577;line-height:1.6}
.brodsmuler a{color:inherit;display:inline-block;padding:6px 0}
main.hub{max-width:880px;margin:0 auto;padding:16px}
.hub .ingress{font-size:18px;line-height:1.5}
.hub h2{margin-top:28px}
.hub-liste{list-style:none;padding:0;margin:8px 0 20px}
.hub-liste li{padding:4px 0;border-bottom:1px solid #e6e0d2;break-inside:avoid}
.hub-liste a,.naboliste a{padding:11px 0}   /* 44 px trykkflate uten luft mellom linjene */
.hub-liste.kolonner{columns:2;column-gap:28px}
@media (max-width:640px){.hub-liste.kolonner,.naboliste{columns:1}}
.faq{border-bottom:1px solid #e6e0d2}
.faq summary{cursor:pointer;font-weight:600;min-height:44px;display:flex;align-items:center}
.tabell-ramme{overflow-x:auto;margin:8px 0}
table.fakta{border-collapse:collapse;font-size:14px}
table.fakta th,table.fakta td{padding:6px 8px;border-bottom:1px solid #e6e0d2;text-align:right;white-space:nowrap}
table.fakta th[scope=row],table.fakta thead th:first-child{text-align:left}
.naboer{margin:28px 0}
.naboliste{columns:2;column-gap:24px;list-style:none;padding:0}
.skjul-lenke{display:none}   /* Claude 12.10 kl. 16:45: Daniel vil ikke ha knappen; fjernes fra malen ved neste hele bygg */
.tl-fremdrift{display:block;height:6px;margin-top:8px;background:#e6eaf2;border-radius:3px;overflow:hidden}   /* PROMPT 170 */
.tl-fremdrift>span{display:block;height:100%;width:0;background:#14284B;transition:width 20s cubic-bezier(.1,.7,.3,1)}
.tl-epost{margin:10px 0}.tl-epost label{display:block;font-weight:600;margin-bottom:4px}   /* PROMPT 171 */
.tl-epost input{width:100%;max-width:320px;min-height:44px;font-size:16px;padding:6px 10px;margin:0 8px 8px 0;border:1px solid #9aa5b8;border-radius:6px}
.tl-epost button{min-height:44px;padding:0 16px;border-radius:6px;border:0;background:#14284B;color:#fff;font-size:16px;cursor:pointer}
.salgsboks a{color:var(--blekk)}
.salgsboks .sb-eksempel{margin-top:10px;font-size:14px}
.salgsboks .sb-hvorfor{margin:12px 0 0;font-size:14px;color:var(--dempet)}
.salgsboks .sb-samtykke input{accent-color:var(--blekk)}
.salgsboks.kjopt .sb-valg2,.salgsboks.kjopt .sb-hvorfor{display:none}
.sb-valg2.tl-loft{box-shadow:0 0 0 3px #F2B21B,0 8px 24px rgba(20,40,75,.18)}
/* PROMPT 200: to valg med en stor ELLER mellom. Side om side bare når boksen er bred nok, ellers under hverandre. */
.salgsboks{container-type:inline-size;scroll-margin-top:80px;transition:box-shadow .3s}
.salgsboks.tl-loft{box-shadow:0 0 0 3px #F2B21B,0 8px 24px rgba(20,40,75,.18)}
.salgsboks .sb-under{margin:-4px 0 14px;font-size:17px;line-height:1.4}
.salgsboks.to-valg .sb-valg{grid-template-columns:1fr;gap:0}
.salgsboks .sb-eller{position:relative;display:flex;align-items:center;justify-content:center;min-height:68px}
.salgsboks .sb-eller::before{content:"";position:absolute;left:0;right:0;top:50%;border-top:2px solid var(--linje)}
.salgsboks .sb-eller span{position:relative;display:inline-flex;align-items:center;justify-content:center;width:58px;height:58px;
  border-radius:50%;background:var(--blekk);color:#fff;font:800 15px var(--sans);letter-spacing:.06em;box-shadow:0 0 0 6px var(--kort)}
@container (min-width:640px){
  .salgsboks.to-valg .sb-valg{grid-template-columns:minmax(0,1fr) 72px minmax(0,1fr)}
  .salgsboks .sb-eller::before{left:50%;right:auto;top:0;bottom:0;border-top:0;border-left:2px solid var(--linje)}}
.salgsboks .sb-valg2{border:2px solid var(--gul)}
.salgsboks .sb-merke{align-self:flex-start;margin:0 0 8px;padding:3px 14px;border-radius:999px;background:var(--gul);color:var(--blekk);font:800 15px var(--sans)}
.salgsboks .sb-begge{margin:14px 0 0;font-size:16px;line-height:1.45;font-weight:600}
.salgsboks .sb-periode{margin:4px 0 0}
.salgsboks.kjopt .sb-eller,.salgsboks.kjopt .sb-under,.salgsboks.kjopt .sb-begge,.salgsboks.kjopt .sb-periode,
.salgsboks.aapnet .sb-eller,.salgsboks.aapnet .sb-under,.salgsboks.aapnet .sb-begge,.salgsboks.aapnet .sb-periode,.salgsboks.aapnet .sb-merke{display:none}
.nb{white-space:nowrap}   /* PROMPT 202: «e-post» brytes ikke */
.kalk .k-laas-tekst{display:block;margin-top:2px;font-size:12px;line-height:1.3;color:var(--dempet)}
@media (max-width: 860px){.salgsboks{margin:10px 0 16px;padding:12px}.salgsboks h2{font-size:20px}}

/* PROMPT 118: forside A/B. Én sterk farge (--f118-farge) på alle knapper. */
.f118{--f118-farge:#F2B21B;--f118-farge-mork:#D99A06;--f118-rod:#C8102E}
.f118 .knapp-sok,.f118 .knapp118{background:var(--f118-farge);color:var(--blekk);font-weight:700;border:0;box-shadow:0 3px 0 var(--f118-farge-mork);transition:transform .12s,box-shadow .12s}
.f118 .knapp-sok:hover,.f118 .knapp118:hover{transform:translateY(-1px);box-shadow:0 4px 0 var(--f118-farge-mork)}
.f118 .knapp-blaagul{background:var(--f118-farge);color:var(--bla)}
.f118 .knapp-ikon{background:var(--f118-farge);color:var(--blekk)}
.f118 main{overflow-x:clip}
.f118 .handverker a{color:var(--blagul)}   /* e-postlenken var blekk på blått - usynlig */
.knapper118{display:flex;gap:12px;flex-wrap:wrap}
.knapp118{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 26px;border-radius:8px;font-size:17px;text-decoration:none}
.f118 .knapp118-strek{background:transparent;color:var(--blekk);box-shadow:inset 0 0 0 2px var(--blekk)}
.f118 .knapp118-strek:hover{box-shadow:inset 0 0 0 2px var(--blekk);background:rgba(20,40,75,.05)}
.f118 .h1-gul118{color:var(--f118-farge)}   /* PROMPT 141: lang tekst, må kunne brytes (pris118 brytes ikke) */
.pris118{display:inline-block;white-space:nowrap;background:var(--f118-farge);color:var(--blekk);padding:0 .22em;border-radius:6px;transform:rotate(-1.5deg)}
.pil118{display:inline-block;transition:transform .15s}
.skjult118{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* PROMPT 121: prisraden under søket */
.priser118{margin:18px 0 6px;padding:16px 16px 14px;border-radius:14px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);text-align:left}
.priser118-tittel{margin:0;font:700 20px var(--sans);color:#fff}
.priser118-under{margin:2px 0 10px;font-size:15px;color:var(--blatekst)}
.priser118-rad{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none}
.priser118-rad li{padding:10px 12px;border-radius:10px;background:#fff;color:var(--blekk)}
.priser118-rad span{display:block;font-size:14px;color:var(--dempet)}
.priser118-rad b{display:block;font:700 19px var(--sans)}
.priser118-fot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin:12px 0 0}
.priser118-merke{font-family:var(--mono);font-size:12px;color:var(--blatekst)}
.priser118-knapp{min-height:46px;font-size:16px}
@media (max-width: 640px){.priser118-rad{grid-template-columns:repeat(2,minmax(0,1fr))}.priser118-rad b{font-size:17px}}

/* tallet */
.tall118{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px}
.tall118-stort{font-family:var(--smal);font-weight:700;font-size:56px;line-height:1;letter-spacing:-1px}
.tall118-tekst{font-family:var(--smal);font-weight:600;font-size:24px}
.tall118-del{flex-basis:100%;font-family:var(--mono);font-size:12px;color:var(--dempet)}

/* arket */
.ark118{position:relative;display:flex;flex-direction:column;gap:10px;background:#fff;color:var(--blekk);text-decoration:none;padding:28px 28px 20px;
  transform:rotate(-2deg);box-shadow:0 1px 2px rgba(20,40,75,.12),0 10px 24px rgba(20,40,75,.14),0 28px 60px -12px rgba(20,40,75,.28);
  transition:transform .2s ease,box-shadow .2s ease;
  background-image:linear-gradient(225deg,transparent 22px,#fff 22px)}
.ark118::before{content:"";position:absolute;top:0;right:0;width:31px;height:31px;background:linear-gradient(225deg,transparent 50%,#E3E6EB 50%,#F5F6F8 70%);box-shadow:-2px 2px 4px rgba(20,40,75,.12)}
.ark118:hover{transform:rotate(-.5deg) translateY(-4px);color:var(--blekk);box-shadow:0 1px 2px rgba(20,40,75,.12),0 14px 30px rgba(20,40,75,.16),0 36px 70px -12px rgba(20,40,75,.32)}
.ark118:hover .pil118{transform:translateX(4px)}
.ark118:focus-visible{outline:3px solid var(--f118-farge);outline-offset:6px}
.ark118-merke{font-family:var(--mono);font-size:11px;letter-spacing:1.5px;color:var(--dempet)}
.ark118-tittel{font-family:var(--smal);font-weight:700;font-size:28px;line-height:1.1;padding-right:24px}
.ark118-under{font-size:13px;color:var(--dempet);margin-top:-6px}
.ark118-kart{position:relative;display:block;border:1px solid var(--linje);margin-top:4px}
.ark118-kart .kartbilde{display:block}
.ark118-tabell{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;margin:4px 0 0;border-top:2px solid var(--blekk)}
.ark118-maal{display:flex;flex-direction:column;padding:9px 0 8px;border-bottom:1px solid var(--linje-lys);min-width:0}
.ark118-maal dt{font-size:12px;color:var(--dempet)}
.ark118-maal dd{margin:0;font-family:var(--smal);font-weight:700;font-size:24px;line-height:1.25;white-space:nowrap}
.ark118-fot{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;padding-top:4px;font-family:var(--mono);font-size:11px;color:var(--dempet)}
.ark118-se{font-family:var(--sans);font-size:15px;font-weight:700;color:var(--blekk);border-bottom:3px solid var(--f118-farge)}
.ark118-stempel{position:absolute;z-index:3;top:18px;left:-16px;transform:rotate(-12deg);padding:6px 14px;
  border:3px double var(--f118-rod);border-radius:6px;color:var(--f118-rod);font:700 22px var(--mono);letter-spacing:4px;
  background:rgba(255,255,255,.88);opacity:.92;box-shadow:0 1px 3px rgba(200,16,46,.15);
  -webkit-mask-image:radial-gradient(circle at 30% 40%,#000 60%,rgba(0,0,0,.75) 100%);mask-image:radial-gradient(circle at 30% 40%,#000 60%,rgba(0,0,0,.75) 100%)}

/* stegene */
.steg118{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.steg118 li{position:relative;display:flex;flex-direction:column;gap:8px;padding:24px;background:var(--kort);border:1px solid var(--linje);border-radius:10px}
.steg118-ikon{display:flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;background:var(--blekk);color:var(--f118-farge);margin-bottom:6px}
.steg118-nr{position:absolute;top:18px;right:20px;font-family:var(--smal);font-weight:700;font-size:44px;line-height:1;color:var(--linje)}
.steg118 h3{font-family:var(--sans);font-weight:600;font-size:20px}
.steg118 p{margin:0;font-size:15px;line-height:1.55;color:var(--tekst2)}

/* ---------- A ---------- */
.helt118a{display:grid;grid-template-columns:minmax(0,1fr) 500px;gap:64px;align-items:center;max-width:1280px;margin:0 auto;padding:56px 56px 72px}
.helt118a-tekst{display:flex;flex-direction:column;gap:20px;min-width:0}
.helt118a h1{font-size:66px;line-height:1.02;letter-spacing:-1px}
.helt118a .sok{max-width:600px}
.helt118a .liten{margin:-8px 0 0}
.helt118a .tall118{margin-top:10px;padding-top:20px;border-top:1px solid var(--linje)}
.helt118a-ark{padding:12px 8px 12px 0;min-width:0}
.slik118a{padding:64px max(56px, calc((100% - 1280px) / 2 + 56px));border-top:1px solid var(--linje);display:flex;flex-direction:column;gap:32px;background:linear-gradient(var(--papir),#EDEFF2)}
.slik118a h2{font-size:40px}
.tillit118{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 48px;padding:48px max(56px, calc((100% - 1280px) / 2 + 56px));border-top:1px solid var(--linje)}
.tillit118 h3{font-family:var(--sans);font-weight:600;font-size:18px;margin-bottom:6px}
.tillit118 p{margin:0;font-size:15px;line-height:1.55;color:var(--tekst2)}
.tillit118 a{font-weight:600}

/* ---------- B ---------- */
.helt118b{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:22px;padding:72px 24px 200px;
  background-color:var(--bla);color:var(--blatekst);
  background-image:linear-gradient(rgba(242,238,228,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(242,238,228,.06) 1px,transparent 1px);background-size:32px 32px}
.helt118b .overskrift-liten{color:var(--blalys)}
.helt118b h1{font-size:84px;line-height:1;letter-spacing:-1.5px;color:var(--blatekst);max-width:1000px}
.helt118b .pris118{margin-top:12px}
.helt118b .ingress-stor{color:var(--blalys);max-width:620px}
.helt118b .sok{width:100%;max-width:640px;text-align:left}
.helt118b .sok label{color:var(--blatekst)}
.helt118b .sok input{border-color:var(--blatekst)}
.helt118b .sok-melding{color:var(--blalys)}
.helt118b .tall118{justify-content:center;margin-top:8px}
.helt118b .tall118-stort{color:var(--f118-farge);font-size:64px}
.helt118b .tall118-tekst{color:var(--blatekst)}
.helt118b .tall118-del{color:var(--blalys);text-align:center}
.scene118b{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 520px minmax(0,1fr);grid-template-rows:auto auto;gap:24px 40px;
  max-width:1280px;margin:-160px auto 0;padding:0 56px 72px;align-items:start}
.scene118b-ark{grid-column:2;grid-row:1 / span 2;min-width:0}
.ark118-stor{transform:rotate(-2deg)}
.steg118-rundt{display:contents}
.steg118-rundt li{box-shadow:0 8px 24px rgba(20,40,75,.10)}
.steg118-rundt li:nth-child(1){grid-column:1;grid-row:1;margin-top:220px;transform:rotate(1deg)}
.steg118-rundt li:nth-child(2){grid-column:3;grid-row:1;margin-top:300px;transform:rotate(-1deg)}
.steg118-rundt li:nth-child(3){grid-column:1 / span 3;grid-row:3;justify-self:center;max-width:520px;flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px 18px;background:var(--blekk);border-color:var(--blekk);color:var(--papir)}
.steg118-rundt li:nth-child(3) h3{color:var(--papir)}
.steg118-rundt li:nth-child(3) p{color:var(--blalys);flex-basis:100%}
.steg118-rundt li:nth-child(3) .steg118-ikon{background:var(--f118-farge);color:var(--blekk);margin:0}
.steg118-rundt li:nth-child(3) .steg118-nr{color:rgba(242,238,228,.18)}
.slutt118b{display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px;padding:56px 24px 72px;border-top:1px solid var(--linje)}
.slutt118b h2{font-size:32px}
.slutt118b p{margin:0;max-width:640px;font-size:16px;line-height:1.6;color:var(--tekst2)}
.slutt118b .knapper118{justify-content:center;margin-top:8px}

/* ---------- mellomstor og mobil ---------- */
@media (max-width:1100px){
  .helt118a{grid-template-columns:minmax(0,1fr);gap:48px}
  .helt118a-ark{max-width:520px;width:100%;justify-self:center}
  .scene118b{grid-template-columns:minmax(0,1fr);margin-top:-150px;max-width:600px}
  .scene118b-ark{grid-column:1;grid-row:auto}
  .steg118-rundt{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
  .steg118-rundt li:nth-child(3) p{flex-basis:auto}
  .steg118-rundt li:nth-child(n){grid-column:auto;grid-row:auto;margin:0;transform:none;max-width:none;justify-self:stretch}
}
@media (max-width:760px){
  .helt118a{padding:28px 16px 40px;gap:36px}
  .helt118a h1{font-size:40px;letter-spacing:-.5px}
  .helt118a-ark{padding:8px 4px}
  .tall118-stort{font-size:44px}
  .tall118-tekst{font-size:20px}
  .slik118a{padding:40px 16px;gap:22px}
  .slik118a h2{font-size:30px}
  .steg118{grid-template-columns:minmax(0,1fr);gap:14px}
  .steg118 li{padding:18px 18px 18px 96px;min-height:96px;justify-content:center;gap:4px}
  .steg118-ikon{position:absolute;left:18px;top:18px;width:60px;height:60px;margin:0}
  .steg118-nr{font-size:32px;top:12px;right:14px}
  .steg118 h3{font-size:18px;padding-right:24px}
  .tillit118{grid-template-columns:minmax(0,1fr);padding:36px 16px}
  .knapp118{flex:1 1 auto}
  .ark118{padding:20px 18px 16px;transform:rotate(-1.2deg)}
  .ark118-tittel{font-size:23px}
  .ark118-maal dd{font-size:20px}
  .ark118-tabell{gap:0 14px}
  .ark118-stempel{top:12px;left:-8px;font-size:16px;letter-spacing:3px;padding:3px 9px}
  .helt118b{padding:40px 16px 170px;gap:18px}
  .helt118b h1{font-size:46px;letter-spacing:-.5px}
  .helt118b .tall118-stort{font-size:46px}
  .scene118b{padding:0 16px 40px;margin-top:-140px;gap:16px}
  .ark118-stor{transform:rotate(-1.2deg)}
  .steg118-rundt li:nth-child(3){flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:4px}
  .steg118-rundt li:nth-child(3) .steg118-ikon{position:absolute;left:18px;top:18px}
  .slutt118b{padding:40px 16px 48px}
  .slutt118b h2{font-size:26px}
}
@media (prefers-reduced-motion:reduce){.ark118,.knapp118,.f118 .knapp-sok,.pil118{transition:none}}

/* PROMPT 155: arket med priser og mål rett under søket, «Hva får du?» i egen boks */
.eksark155{max-width:620px}
.eksark155 .ark118{transform:rotate(-1deg)}
.ark155-del{display:block;margin:6px 0 -4px;font-family:var(--mono);font-size:12px;letter-spacing:1.2px;text-transform:uppercase;color:var(--dempet)}
.eksark155 .del153-anslag{margin-top:14px}
.del153.hva155{margin-top:28px;padding:22px 24px 18px;border-radius:14px;background:#FFF4D6;border:2px solid var(--f118-farge)}
.hva155 h2{margin-top:0}
.hva155 .valg153{font-size:19px}
.hva155 .del153-hvorfor{font-size:17px}
/* PROMPT 200: samme oppsett som boksen på hussiden, i liten versjon */
.valg200{display:grid;grid-template-columns:minmax(0,1fr) 64px minmax(0,1fr);align-items:stretch;margin:4px 0 10px}
.valg200-kort{margin:0;padding:12px 14px;border:1px solid #e2d6b4;border-radius:10px;background:#fff;font-size:18px;line-height:1.35}
.valg200-gratis{border:2px solid #E8B21B}
.valg200-merke{display:inline-block;margin-left:6px;padding:1px 10px;border-radius:999px;background:#E8B21B;color:#14284B;font-size:14px;font-weight:800;vertical-align:2px}
.valg200-eller{position:relative;margin:0;display:flex;align-items:center;justify-content:center}
.valg200-eller::before{content:"";position:absolute;left:50%;top:0;bottom:0;border-left:2px solid #e2d6b4}
.valg200-eller span{position:relative;display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;
  background:#14284B;color:#fff;font-size:13px;font-weight:800;letter-spacing:.06em;box-shadow:0 0 0 5px #FFF4D6}
.valg200-begge{margin:0 0 10px;font-size:17px;font-weight:600}
/* PROMPT 234: boksene er ekte knapper som går til søket (velg huset først) */
button.valg200-knapp{font:inherit;text-align:left;color:var(--blekk);cursor:pointer;width:100%}
button.valg200-knapp:hover{box-shadow:0 2px 0 #14284B}
button.valg200-knapp:focus-visible{outline:3px solid #14284B;outline-offset:2px}
.valg200-hva{display:block;margin-top:6px;font-size:15px;font-weight:600;text-decoration:underline;text-underline-offset:3px}
@media (max-width:560px){.valg200{grid-template-columns:1fr}.valg200-eller{min-height:58px}
  .valg200-eller::before{left:0;right:0;top:50%;bottom:auto;border-left:0;border-top:2px solid #e2d6b4}}
@media (max-width:760px){.del153.hva155{margin:24px 16px 0;padding:18px 16px 14px}.hva155 .valg153{font-size:18px}}
/* PROMPT 153: forside C */
.helt153{padding:56px 20px 48px;gap:18px}
.helt153 h1{font-size:60px;line-height:1.05;max-width:900px}
.helt153 .ingress-stor{margin:0;color:var(--blatekst)}
.f118c .helt153 .sok label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.del153{max-width:1080px;margin:0 auto;padding:40px 24px 8px}
.del153 h2{font-size:32px;margin:0 0 12px}
.del153 p{margin:0 0 8px;font-size:17px;line-height:1.5}
.del153-under{color:var(--tekst2)}
.slik153{margin:0;padding-left:1.4em;font-size:18px;line-height:1.5}
.slik153 li{margin:0 0 6px}
.eks153{list-style:none;margin:16px 0 10px;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.eks153-kort{display:flex;flex-direction:column;gap:8px;padding:18px;border:1px solid var(--linje);border-radius:14px;background:var(--kort)}
.eks153-kort h3{margin:0;font:700 20px var(--sans)}
.eks153-tak{margin:0;color:var(--tekst2);font-size:16px}
.eks153-priser{list-style:none;margin:4px 0 8px;padding:0;display:flex;flex-direction:column;gap:6px}
.eks153-priser li{display:flex;justify-content:space-between;gap:10px;padding:8px 10px;border-radius:8px;background:#fff;font-size:16px}
.eks153-priser b{white-space:nowrap}
.eks153-knapp{margin-top:auto;min-height:48px}
.del153-anslag{color:var(--dempet)}
.valg153{margin:0 0 10px;padding-left:1.2em;font-size:17px;line-height:1.5}
.valg153 li{margin:0 0 6px}
.del153-hvorfor{color:var(--tekst2)}
.kommer153{padding-bottom:48px}
.kommer153 ul{margin:0;padding-left:1.2em;font-size:16px;line-height:1.6;color:var(--tekst2)}
@media (max-width:760px){
  .helt153{padding:32px 16px 32px}
  .helt153 h1{font-size:36px;letter-spacing:-.3px}
  .del153{padding:28px 16px 4px}
  .del153 h2{font-size:26px}
  .eks153{grid-template-columns:minmax(0,1fr)}
}

.betalt{margin:28px 0;padding:18px 18px 14px;border:1px solid var(--linje);border-radius:14px;background:var(--kort)}
.betalt h2{margin:0 0 6px}.betalt-under{margin:0 0 14px;color:var(--dempet)}
.betalt-snitt{margin:0 0 16px;padding:12px 14px;border-radius:10px;background:var(--papir)}
.betalt-snitt h3{margin:0 0 6px;font-size:16px}.betalt-snitt ul{margin:0;padding-left:18px}.betalt-snitt li{margin:2px 0}
.betalt-skjema{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px 16px;align-items:start}
.betalt-skjema label{display:flex;flex-direction:column;gap:4px;font-weight:600;font-size:15px}
.betalt-skjema input,.betalt-skjema select{font:16px var(--sans);padding:10px 12px;border:1px solid var(--linje);border-radius:8px;background:#fff;color:var(--blekk)}
.betalt-med{grid-column:1/-1;margin:0;padding:10px 12px;border:1px solid var(--linje);border-radius:8px}
.betalt-med legend{font-weight:600;font-size:15px;padding:0 4px}
.betalt-med-liste{display:flex;flex-wrap:wrap;gap:6px 16px}
.betalt-skjema .betalt-punkt{flex-direction:row;align-items:center;font-weight:400}
.betalt-knapp{grid-column:1/-1;min-height:50px;border:0;border-radius:10px;background:var(--gul);color:var(--blekk);font:700 17px var(--sans);cursor:pointer}
.betalt-knapp[disabled]{opacity:.6}
.betalt-skjema > .liten{grid-column:1/-1;margin:0}
.betalt-svar{grid-column:1/-1;padding:12px 14px;border-radius:10px;background:var(--papir);border-left:6px solid var(--gul)}
.betalt-svar p{margin:4px 0}.betalt-niva{font:700 20px var(--sans)}
.betalt-svar.lav{border-left-color:#2E6B3F}.betalt-svar.hoy{border-left-color:#A33A2B}.betalt-svar.feil{border-left-color:#A33A2B}
@media (max-width:860px){.betalt{padding:14px 12px}}
