/* GTI Karmøy AS, utkast. Fonter selvhostet, ingen tredjepart. */
@font-face{font-family:'Nippo';src:url('../assets/fonts/nippo-normal.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:'Bevellier';src:url('../assets/fonts/bevellier-normal.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:'Archivo';src:url('../assets/fonts/archivo-normal.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:'Suisse Intl';src:url('../assets/fonts/suisse-intl-400-normal.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Suisse Intl';src:url('../assets/fonts/suisse-intl-700-normal.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}

:root{
  /* Palett 1: GTI-oransje og grafitt på varm stein */
  --c-papir:#ECE8E0; --c-flate:#E0DBD0; --c-blekk:#15191C; --c-dempet:#4A5054;
  --c-aksent:#FF8200; --c-pa-aksent:#15191C; --c-linje:rgba(21,25,28,.22); --c-fokus:#15191C;
  --c-dyp:#15191C; --c-dyp-tekst:#EDEAE4; --c-dyp-dempet:rgba(237,234,228,.8); --c-dyp-linje:rgba(237,234,228,.28); --c-dyp-fokus:#FF8200;
  --c-input:#F6F3EC;
  /* Skrift 1: Nippo */
  --f-display:'Nippo',Arial,sans-serif; --w-display:700; --lh-display:.96; --sp-display:-.01em; --skala:1;
  --f-tekst:'Archivo',Arial,sans-serif;
  --topp-h:72px; --t-tekst:18px; --gutter:clamp(16px,4vw,48px); --maks:1360px;
  --z-dekor:1; --z-sticky:100; --z-dokk:200; --z-overlay:300; --z-panel:400; --z-varsel:500;
  --ease:cubic-bezier(.23,1,.32,1);
}
html[data-pal="2"]{
  --c-papir:#0F1315; --c-flate:#171C1F; --c-blekk:#EDEAE4; --c-dempet:#A9AEB0;
  --c-aksent:#FF8200; --c-pa-aksent:#0F1315; --c-linje:rgba(237,234,228,.22); --c-fokus:#FF8200;
  --c-dyp:#080A0B; --c-dyp-tekst:#EDEAE4; --c-dyp-dempet:rgba(237,234,228,.8); --c-input:#0F1315;
}
html[data-pal="3"]{
  --c-papir:#E3EDEB; --c-flate:#D3E3E0; --c-blekk:#0E2426; --c-dempet:#38565A;
  --c-aksent:#19AEB5; --c-pa-aksent:#0E2426; --c-linje:rgba(14,36,38,.24); --c-fokus:#0E2426;
  --c-dyp:#0E2426; --c-dyp-tekst:#E3EDEB; --c-dyp-dempet:rgba(227,237,235,.82); --c-dyp-fokus:#19AEB5; --c-input:#F2F8F7;
}
html[data-font="2"]{--f-display:'Bevellier',Arial,sans-serif; --w-display:700; --lh-display:.92; --sp-display:0; --skala:1.28}
html[data-font="3"]{--f-display:'Suisse Intl',Arial,sans-serif; --w-display:700; --lh-display:.95; --sp-display:-.04em; --skala:1.02; --f-tekst:'Suisse Intl',Arial,sans-serif}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--c-papir);color:var(--c-blekk);font:400 var(--t-tekst)/1.55 var(--f-tekst);font-variant-numeric:lining-nums;-webkit-font-smoothing:antialiased}
img,video{display:block;max-width:100%;height:auto}
h1,h2,h3,p,ul,figure,blockquote{margin:0}
ul{padding:0;list-style:none}
a{color:inherit}
button{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--c-fokus);outline-offset:3px;border-radius:2px}
.vis-skjermleser{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.hopp{position:absolute;left:12px;top:-60px;z-index:var(--z-varsel);background:var(--c-aksent);color:var(--c-pa-aksent);padding:12px 16px;font-weight:700}
.hopp:focus{top:12px}
.wrap{width:100%;max-width:var(--maks);margin-inline:auto;padding-inline:var(--gutter)}

/* ---------- Topp ---------- */
.topp{position:sticky;top:0;z-index:var(--z-sticky);background:#15191C;color:#EDEAE4;--c-fokus:#FF8200}
html[data-pal="3"] .topp{background:#0E2426}
.topp__rad{height:var(--topp-h);display:flex;align-items:center;gap:24px}
.merke{display:inline-flex;align-items:center;min-height:44px;min-width:44px}
.merke img{height:40px;width:auto}
.meny{margin-left:auto;display:flex;gap:4px}
.meny a{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;text-decoration:none;font-weight:600;font-size:.9375rem;letter-spacing:.04em;text-transform:uppercase}
.meny a:hover{color:#FF8200}
.ring{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:0 20px;background:var(--c-aksent);color:var(--c-pa-aksent);text-decoration:none;font-weight:700;letter-spacing:.03em}
html[data-pal="2"] .ring,html[data-pal="2"] .knapp--flate{color:#0F1315}
.ring svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

/* ---------- Typografi ---------- */
.h1,.h2{font-family:var(--f-display);font-weight:var(--w-display);line-height:calc(var(--lh-display) + .08);letter-spacing:var(--sp-display);text-transform:uppercase;text-wrap:balance}
.h2{font-size:calc(clamp(2.25rem,5.6vw,5rem) * var(--skala))}

/* ---------- Hero ---------- */
html:not([data-hero="2"]) .hero:not([data-hero="1"]),html[data-hero="2"] .hero:not([data-hero="2"]){display:none}
.hero{position:relative;display:flex;align-items:flex-end;min-height:clamp(560px,calc(100svh - var(--topp-h)),860px);background:#15191C;color:#EDEAE4;overflow:hidden;--c-fokus:#FF8200;container-type:inline-size}
html[data-pal="3"] .hero{background:#0E2426}
.hero__bg,.hero__film{position:absolute;inset:0}
.hero__bg img,.hero__film video{width:100%;height:100%;object-fit:cover}
.hero__bg img{object-position:50% 42%}
.hero__film video{object-position:50% 50%}
.hero__bg::after,.hero__film::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,15,17,.72) 0%,rgba(12,15,17,.55) 46%,rgba(12,15,17,.34) 100%),linear-gradient(0deg,rgba(12,15,17,.92) 0%,rgba(12,15,17,.62) 42%,rgba(12,15,17,.2) 80%)}
.hero__innhold{position:relative;z-index:var(--z-dekor);padding-block:72px 56px;container-type:inline-size}
.hero__sted{font-weight:600;font-size:.9375rem;letter-spacing:.06em;text-transform:uppercase;margin-bottom:20px;color:#EDEAE4}
.h1{font-size:calc(min(8.2cqi,130px) * var(--skala));display:flex;flex-direction:column;margin-bottom:clamp(20px,2.4vw,32px)}
.hero--typo .h1{font-size:calc(min(12.4cqi,196px) * var(--skala))}
.hero .h1 .hero__line{display:block;overflow:hidden;padding:.2em .25em .26em;margin:-.2em -.25em -.26em;max-width:100%}
.hero .h1 .hero__line-in{display:block}
.anim-hero .hero__line-in{transform:translateY(150%)}
.anim-hero :is(.hero__sted,.hero__sub,.hero__cta,.hero__film){opacity:0}
.hero__sub{max-width:34em;font-size:1.1875rem;line-height:1.5;color:#EDEAE4;margin-bottom:28px}
.hero__cta{display:flex;flex-wrap:wrap;gap:12px}
.knapp{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 26px;border:2px solid transparent;font:700 1rem/1 var(--f-tekst);letter-spacing:.04em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:background-color .15s var(--ease),color .15s var(--ease),border-color .15s var(--ease)}
.knapp--flate{background:var(--c-aksent);color:var(--c-pa-aksent)}
.knapp--strek{border-color:currentColor;color:#EDEAE4}
@media (hover:hover){.knapp--flate:hover{background:#EDEAE4;color:#15191C}.knapp--strek:hover{background:#EDEAE4;color:#15191C}}
.knapp:active{transform:scale(.98)}

/* ---------- Fakta ---------- */
.fakta{background:var(--c-aksent);color:var(--c-pa-aksent)}
.fakta__rad{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;padding-block:28px}
.fakta p{display:flex;flex-direction:column;gap:2px}
.fakta strong,.fakta b{font:var(--w-display) 1.5rem/1.1 var(--f-display);text-transform:uppercase;letter-spacing:var(--sp-display)}
.fakta span{font-weight:500}

/* ---------- Seksjoner ---------- */
.sek{padding-block:clamp(72px,9vw,136px)}
.sek--papir{background:var(--c-papir)}
.sek--flate{background:var(--c-flate)}
.sek--dyp{background:var(--c-dyp);color:var(--c-dyp-tekst);--c-fokus:var(--c-dyp-fokus);--c-dempet:var(--c-dyp-dempet);--c-linje:var(--c-dyp-linje)}
.sek__topp{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:32px;align-items:end;margin-bottom:clamp(40px,5vw,72px)}
.sek__ingress{max-width:30em;color:var(--c-dempet);font-size:1.1875rem}
.sek__ingress a{display:flex;align-items:center;min-height:44px;color:inherit;text-underline-offset:3px;width:fit-content}

/* Tjenester: tre kolonner, midtkolonnen forskjøvet */
.tjen{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 32px}
.tjen__kort:nth-child(3n+2){margin-top:56px}
.tjen__kort summary{display:block;list-style:none;cursor:default}
.tjen__kort summary::-webkit-details-marker{display:none}
.tjen__kort img{width:100%;aspect-ratio:4/3;object-fit:cover;margin-bottom:18px;background:var(--c-flate)}
.tjen__navn{display:block;font:var(--w-display) 1.75rem/1 var(--f-display);text-transform:uppercase;letter-spacing:var(--sp-display);margin-bottom:8px}
.tjen__nokkel{display:none;color:var(--c-dempet);font-size:.9375rem}
.tjen__kort p{color:var(--c-dempet);max-width:32em}

/* Prosjekter: uregelmessig rutenett, oransje blokk bak to bilder */
.pros{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:48px 32px;align-items:start}
.pros__kort figcaption{display:flex;flex-direction:column;gap:6px;margin-top:16px;max-width:34em}
.pros__kort strong,.pros__kort b{font:var(--w-display) 1.375rem/1.05 var(--f-display);text-transform:uppercase;letter-spacing:var(--sp-display)}
.pros__kort span{color:var(--c-dempet);font-size:1rem}
.pros__bilde{position:relative}
.pros__bilde img{width:100%;height:100%;object-fit:cover;position:relative}
.pros__kort--1{grid-column:1/8}.pros__kort--1 .pros__bilde{aspect-ratio:16/10}
.pros__kort--2{grid-column:8/13;margin-top:96px}.pros__kort--2 .pros__bilde{aspect-ratio:4/3}
.pros__kort--3{grid-column:1/6}.pros__kort--3 .pros__bilde{aspect-ratio:4/3}
.pros__kort--4{grid-column:6/9}.pros__kort--4 .pros__bilde{aspect-ratio:3/4}
.pros__kort--5{grid-column:9/13;margin-top:64px}.pros__kort--5 .pros__bilde{aspect-ratio:4/3}
.pros__kort--6{grid-column:2/7}.pros__kort--6 .pros__bilde{aspect-ratio:4/3}
.pros__kort--7{grid-column:7/13}.pros__kort--7 .pros__bilde{aspect-ratio:16/10}
.pros__kort--1 .pros__bilde::before,.pros__kort--5 .pros__bilde::before{content:"";position:absolute;right:-14px;bottom:-14px;width:46%;height:46%;background:var(--c-aksent)}

/* Om */
.om__rad{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(32px,6vw,96px);align-items:center}
.om__bilde img{width:100%;aspect-ratio:4/3;object-fit:cover}
.om__tekst{display:flex;flex-direction:column;gap:20px}
.om__tekst .h2{margin-bottom:8px}
.om__tekst p{max-width:32em;color:var(--c-dempet)}
.om__liste{display:grid;gap:0;margin-top:8px;border-top:1px solid var(--c-linje)}
.om__liste li{padding:14px 0;border-bottom:1px solid var(--c-linje);font-weight:600}

/* Befaring */
.befaring__rad{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,96px);align-items:start}
.befaring__intro{display:flex;flex-direction:column;gap:20px;position:sticky;top:calc(var(--topp-h) + 32px)}
.befaring__intro p{color:var(--c-dempet);max-width:28em}
.befaring__ring{display:flex;flex-direction:column;gap:2px}
.befaring__ring a{color:var(--c-blekk);font-weight:700;font-size:1.25rem;min-height:44px;display:inline-flex;align-items:center}
.befaring__kort{background:var(--c-papir);border:1px solid var(--c-linje);padding:clamp(20px,3vw,40px);min-height:420px}
.bef__topp{display:flex;align-items:center;justify-content:space-between;gap:16px;font-weight:600;margin-bottom:20px}
.bef__fremdrift{flex:1;max-width:160px;height:4px;background:var(--c-linje);overflow:hidden}
.bef__fremdrift i{display:block;height:100%;background:var(--c-aksent);transform-origin:left;transform:scaleX(.25);transition:transform .25s var(--ease)}
.sp{display:none;border:0;margin:0;padding:0;min-width:0}
.sp.er-aktiv{display:block}
.sp legend{padding:0;font:var(--w-display) clamp(1.5rem,2.6vw,2.125rem)/1.05 var(--f-display);text-transform:uppercase;letter-spacing:var(--sp-display);margin-bottom:18px}
.valg{display:flex;align-items:center;gap:14px;min-height:52px;padding:8px 14px;margin-bottom:8px;border:1px solid var(--c-linje);background:var(--c-input);cursor:pointer;transition:border-color .15s var(--ease),background-color .15s var(--ease)}
.valg input{position:absolute;opacity:0;width:1px;height:1px}
.valg__bokstav{display:inline-grid;place-items:center;width:28px;height:28px;border:1px solid var(--c-linje);font-weight:700;font-size:.875rem;flex:none}
.valg:has(input:checked){border-color:var(--c-blekk);background:var(--c-aksent);color:var(--c-pa-aksent)}
.valg:has(input:checked) .valg__bokstav{border-color:var(--c-pa-aksent)}
.valg:has(input:focus-visible){outline:2px solid var(--c-fokus);outline-offset:3px}
.bef__nav{display:flex;justify-content:space-between;gap:12px;margin-top:12px}
.bef__tilbake,.bef__igjen{min-height:44px;background:none;border:0;padding:0 4px;text-decoration:underline;text-underline-offset:3px;cursor:pointer;font-weight:600}
.res{outline:0}
.res__tittel{font:var(--w-display) clamp(1.75rem,3vw,2.5rem)/1 var(--f-display);text-transform:uppercase;letter-spacing:var(--sp-display);margin-bottom:14px}
.res__tekst{max-width:34em;margin-bottom:10px}
.res__neste{max-width:34em;color:var(--c-dempet);margin-bottom:22px}
.bef__post{display:grid;gap:14px;max-width:30em}
.felt label:not(.samtykke){display:block;font-weight:600;margin-bottom:6px}
.felt input[type=text],.felt input[type=tel],.felt input[type=email]{width:100%;min-height:52px;padding:0 14px;border:1px solid var(--c-blekk);background:var(--c-input);color:var(--c-blekk);font:inherit;border-radius:0}
.felt input[aria-invalid="true"]{border-width:2px;border-color:#B3261E}
html[data-pal="2"] .felt input[aria-invalid="true"]{border-color:#FF8A80}
.samtykke{display:flex;gap:12px;align-items:flex-start;min-height:44px;cursor:pointer}
.samtykke input{width:24px;height:24px;margin:2px 0 0;flex:none;accent-color:var(--c-blekk)}
.liten{font-size:.875rem;color:var(--c-dempet);margin-top:4px}
.feil{color:#B3261E;font-weight:600;font-size:.9375rem;margin-top:6px}
html[data-pal="2"] .feil{color:#FF8A80}
.kvittering{padding:20px;border:2px solid var(--c-blekk);outline:0}
.kvittering__tittel{font:var(--w-display) 1.75rem/1 var(--f-display);text-transform:uppercase;letter-spacing:var(--sp-display);margin-bottom:10px}
.bef__igjen{margin-top:18px}

/* Omtaler */
.omt{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 56px}
.omt__kort{padding:28px 0;border-top:1px solid var(--c-linje);display:flex;flex-direction:column;gap:16px}
.omt__kort p{font-size:1.25rem;line-height:1.45;max-width:32em}
.omt__kort cite{font:700 .9375rem/1 var(--f-tekst);font-style:normal;letter-spacing:.06em;text-transform:uppercase;color:var(--c-dempet)}

/* Kontakt */
.kontakt__rad{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,96px);align-items:start}
.kontakt__liste{display:grid;gap:28px;margin-top:36px}
.kontakt__liste li{display:flex;flex-direction:column;gap:4px;font-size:1.1875rem}
.kontakt__liste a{display:inline-flex;align-items:center;min-height:44px;text-underline-offset:3px;font-weight:600}
.kontakt__tlf{font:var(--w-display) clamp(2.25rem,4.6vw,4rem)/1 var(--f-display);letter-spacing:var(--sp-display);text-decoration:none;color:var(--c-aksent)}
.kontakt__liste span{color:var(--c-dempet)}
.kontakt__adresse{color:var(--c-dyp-tekst)!important}
.kart__bilde{position:relative;aspect-ratio:1440/640;background:#ddd;overflow:hidden}
.kart__bilde img{width:100%;height:100%;object-fit:cover}
.kart__nal{position:absolute;left:50%;top:50%;transform:translate(-50%,-100%);display:flex;flex-direction:column;align-items:center;gap:4px;color:#15191C}
.kart__nal svg{width:34px;height:46px;fill:var(--c-aksent);stroke:#15191C;stroke-width:1.5}
.kart__nal b{background:#15191C;color:#EDEAE4;padding:4px 10px;font-size:.8125rem;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}
.kart__fot{display:flex;flex-wrap:wrap;gap:6px 24px;margin-top:14px;font-size:.9375rem;color:var(--c-dempet)}
.kart__fot a{display:inline-flex;align-items:center;min-height:44px;text-underline-offset:3px;color:var(--c-dyp-tekst)}
.kart__fot small{flex-basis:100%;font-size:.8125rem}
.kart__fot small a{min-height:0}

/* Bunn */
.bunn{background:#15191C;color:#EDEAE4;padding-block:36px;--c-fokus:#FF8200}
html[data-pal="3"] .bunn{background:#0E2426}
.bunn__rad{display:flex;flex-wrap:wrap;align-items:center;gap:16px 40px}
.bunn__info{font-size:.9375rem;color:rgba(237,234,228,.8)}
.bunn__kreditt{margin-left:auto;font-size:.875rem}
.bunn__kreditt a{display:inline-flex;align-items:center;min-height:44px;color:rgba(237,234,228,.8);text-underline-offset:3px}

/* ---------- Design Lab ---------- */
.lab{position:fixed;left:16px;bottom:16px;z-index:var(--z-panel);font-family:'Archivo',Arial,sans-serif;display:flex;flex-direction:column-reverse;align-items:flex-start;color:#1E2326}
.lab__veksle{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border-radius:100px;border:.5px solid rgba(255,255,255,.4);background:rgba(255,255,255,.62);-webkit-backdrop-filter:blur(30px) saturate(210%);backdrop-filter:blur(30px) saturate(210%);color:#1E2326;font:600 .9375rem/1 'Archivo',Arial,sans-serif;cursor:pointer;box-shadow:0 8px 32px rgba(0,0,0,.12),inset 0 1.5px .5px rgba(255,255,255,.65),inset 0 -1px 2px rgba(0,0,0,.05),inset 0 10px 20px rgba(255,255,255,.3);transition:transform .2s var(--ease)}
.lab__panel{margin-bottom:10px;padding:14px;border-radius:24px;border:.5px solid rgba(255,255,255,.4);background:rgba(255,255,255,.74);-webkit-backdrop-filter:blur(30px) saturate(210%);backdrop-filter:blur(30px) saturate(210%);box-shadow:0 8px 32px rgba(0,0,0,.12),inset 0 1.5px .5px rgba(255,255,255,.65),inset 0 -1px 2px rgba(0,0,0,.05),inset 0 10px 20px rgba(255,255,255,.3)}
.lab__gruppe{display:flex;align-items:center;gap:6px;margin-bottom:6px}
.lab__merke{width:28px;text-align:center}
.lab__gruppe button{width:44px;height:44px;border-radius:100px;border:1px solid rgba(30,35,38,.18);background:rgba(255,255,255,.55);color:#1E2326;font:600 1rem/1 'Archivo',Arial,sans-serif;cursor:pointer;transition:transform .2s var(--ease),background-color .15s var(--ease)}
.lab__gruppe button[aria-pressed="true"]{background:#1E2326;color:#fff}
.lab :focus-visible{outline-color:#1E2326}
.design-lab__credit{margin-top:10px;font-size:.8125rem;color:#4A5054;display:flex;gap:6px;align-items:center}
.design-lab__credit-logo{display:inline-flex;align-items:center;gap:2px;font-weight:700;color:#1E2326;text-decoration:none;transition:transform .2s var(--ease)}
.design-lab__credit-dot,.design-lab__credit-spark{color:#C25A00}
.design-lab__credit-spark{width:12px;height:12px;transition:transform .3s var(--ease)}
@media (hover:hover){.lab__veksle:hover{transform:translateY(-1px)}.lab__gruppe button:hover{transform:scale(1.04)}.design-lab__credit-logo:hover{transform:scale(1.04)}.design-lab__credit-logo:hover .design-lab__credit-spark{transform:rotate(90deg) scale(1.3)}}
.lab__gruppe button:active{transform:scale(.96)}
@media (prefers-reduced-motion:reduce){.knapp,.lab__veksle,.lab__gruppe button,.design-lab__credit-logo,.design-lab__credit-spark,.valg,.bef__fremdrift i{transition-property:background-color,color,border-color}.knapp:active,.lab__gruppe button:active{transform:none}}

/* ---------- Nettbrett ---------- */
@media (max-width:1100px){
  .tjen{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tjen__kort:nth-child(3n+2){margin-top:0}
  .tjen__kort:nth-child(2n){margin-top:40px}
  .sek__topp,.om__rad,.befaring__rad,.kontakt__rad{grid-template-columns:minmax(0,1fr)}
  .befaring__intro{position:static}
  .meny a{padding:0 9px}
}

/* ---------- Mobil: rute, ikke stable ---------- */
@media (max-width:760px){
  :root{--topp-h:60px;--t-tekst:16px}
  .meny{display:none}
  .ring{margin-left:auto;min-height:44px;padding:0 14px}
  .merke img{height:34px}
  .hero{min-height:0;display:block}
  .hero__bg,.hero__film{bottom:auto;height:min(50svh,420px)}
  .hero__bg::after,.hero__film::after{background:linear-gradient(0deg,#15191C 0%,rgba(21,25,28,.55) 26%,rgba(21,25,28,0) 62%)}
  html[data-pal="3"] .hero__bg::after,html[data-pal="3"] .hero__film::after{background:linear-gradient(0deg,#0E2426 0%,rgba(14,36,38,.55) 26%,rgba(14,36,38,0) 62%)}
  .hero__innhold{padding-block:min(41svh,340px) 28px}
  .h1{font-size:calc(min(10.8cqi,64px) * var(--skala));margin-bottom:16px}
  .hero--typo .h1{font-size:calc(min(11.2cqi,72px) * var(--skala))}
  .hero__sted{font-size:.8125rem;margin-bottom:14px}
  .hero__sub{font-size:1rem;margin-bottom:18px}
  .hero__cta{flex-direction:column}
  .hero__cta .knapp{width:100%}
  .fakta__rad{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding-block:20px}
  .fakta strong,.fakta b{font-size:1.125rem}
  .fakta span{font-size:.875rem}
  .sek{padding-block:48px}
  .h2{font-size:calc(clamp(2rem,10.4vw,3rem) * var(--skala))}
  .sek__topp{margin-bottom:28px;gap:14px}
  .sek__ingress{font-size:1rem}
  /* Tjenester: seks ikoner med etikett og én linje, detaljene ett trykk unna */
  .tjen{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .tjen__kort:nth-child(2n){margin-top:0}
  .tjen__kort{border:1px solid var(--c-linje);align-self:start}
  .tjen__kort summary{cursor:pointer;min-height:44px}
  .tjen__kort img{aspect-ratio:16/9;margin:0}
  .tjen__navn{font-size:1.0625rem;padding:10px 10px 2px;margin:0}
  .tjen__nokkel{display:block;padding:0 10px 10px;font-size:.8125rem;line-height:1.3}
  .tjen__kort p{padding:0 10px 12px;font-size:.9375rem}
  /* Prosjekter: sidelengs stripe i stedet for sju stablede kort */
  .pros{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:var(--gutter);margin-inline:calc(var(--gutter) * -1);padding-inline:var(--gutter);padding-bottom:8px;-webkit-overflow-scrolling:touch}
  .pros__kort{flex:0 0 78%;scroll-snap-align:start;margin-top:0!important}
  .pros__kort .pros__bilde{aspect-ratio:4/3!important}
  .pros__bilde::before{display:none}
  .pros__kort strong,.pros__kort b{font-size:1.125rem}
  .pros__kort span{font-size:.9375rem}
  .om__rad{gap:20px}
  .om__bilde img{aspect-ratio:16/10}
  .om__tekst{gap:12px}
  .om__liste li{padding:10px 0}
  .befaring__rad{gap:20px}
  .befaring__intro{gap:12px}
  .befaring__kort{padding:16px;min-height:0}
  .sp legend{font-size:1.5rem;margin-bottom:12px}
  .valg{min-height:48px;margin-bottom:6px}
  .omt{grid-template-columns:minmax(0,1fr)}
  .omt__kort{padding:18px 0;gap:10px}
  .omt__kort p{font-size:1.0625rem}
  .omt__kort--ekstra{display:none}
  .kontakt__liste{gap:14px;margin-top:20px}
  .kontakt__liste li{font-size:1rem}
  .kontakt__tlf{font-size:2.25rem}
  .kart__bilde{aspect-ratio:16/10}
  .kart__fot{margin-top:6px}
  .bunn{padding-block:24px}
  .bunn__kreditt{margin-left:0}
  .lab__veksle-tekst{display:none}
  .lab{left:auto;right:16px;align-items:flex-end}
  .lab__veksle{padding:0 14px}
}
