/* betterworkwear.no — designutkast v2 (2026-10-02). Videreføring av dagens BWW-profil:
   svart / hvit / gul, Montserrat + DM Sans. Inline-stilene i utkastet er flyttet hit som klasser. */

:root{
  --black:#111111; --black-2:#1C1C1C; --line-dark:#2E2E2E; --white:#FFFFFF; --off:#F5F4F0; --line:#E8E6E0;
  --grey:#555550; --grey-2:#888888; --yellow:#FFC107; --yellow-soft:#FFF3CD;
  --head:"Montserrat",sans-serif; --body:"DM Sans",sans-serif;
  --max:1280px; --gutter:clamp(16px,4vw,40px); --r:4px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--body);font-size:16px;line-height:1.6;color:var(--black);background:var(--white);-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%;height:auto}
.wrap,.ramme{max-width:var(--max);margin:0 auto;padding:0 var(--gutter);width:100%}
h1,h2,h3,h4{font-family:var(--head);line-height:1.1;letter-spacing:-.02em}
.title{font-weight:900;text-transform:uppercase;font-size:clamp(30px,3.6vw,46px)}
.eyebrow{font-family:var(--head);font-weight:800;font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.badge{display:inline-block;font-family:var(--head);font-weight:800;font-size:11px;letter-spacing:.12em;text-transform:uppercase;padding:5px 10px;border-radius:3px}
.badge--outline{color:var(--yellow);border:1px solid rgba(255,193,7,.6);background:rgba(255,193,7,.08)}
.badge--dark{background:var(--black);color:var(--yellow)}
.skjult{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.hopp{position:absolute;left:-999px;top:0;background:var(--yellow);padding:8px 12px;z-index:100}
.hopp:focus{left:8px}
:focus-visible{outline:3px solid var(--yellow);outline-offset:2px}

/* Knapper */
.btn,.knapp{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-family:var(--head);font-weight:700;font-size:14px;letter-spacing:.04em;text-transform:uppercase;padding:17px 28px;border-radius:var(--r);border:2px solid transparent;transition:background .2s,color .2s,border-color .2s,transform .2s;cursor:pointer}
.btn:hover,.knapp:hover{transform:translateY(-1px)}
.btn--yellow,.knapp-gul{background:var(--yellow);color:var(--black)}
.btn--yellow:hover,.knapp-gul:hover{background:#FFD24A}
.btn--black{background:var(--black);color:var(--white)}
.btn--black:hover{background:#2A2A2A}
.btn--outline{border-color:var(--white);color:var(--white)}
.btn--outline:hover{background:var(--white);color:var(--black)}
.knapp-hvit{border-color:var(--black);color:var(--black);background:var(--white)}
.knapp-hvit:hover{background:var(--black);color:var(--white)}
.btn--block{width:100%}
.knapper{display:flex;flex-wrap:wrap;gap:14px}

/* Topplinje */
.topbar{background:var(--black);color:rgba(255,255,255,.75);font-size:15px;border-bottom:1px solid var(--line-dark)}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;height:46px}
.topbar .links{display:flex;align-items:center}
.topbar .links a{padding:0 18px;border-left:1px solid rgba(255,255,255,.35);line-height:1}
.topbar .links a:first-child{padding-left:0;border-left:0}
.topbar a:hover{color:var(--white)}
.topbar .acc{display:flex;gap:20px;align-items:center}
.topbar .portal-link{color:var(--yellow);font-weight:700}
.topbar .portal-link:hover{color:var(--yellow);text-decoration:underline}

/* Header */
header.site{background:var(--black);position:sticky;top:0;z-index:40}
.head-main .wrap{display:flex;align-items:center;gap:40px;height:110px}
.logo img{height:56px;width:auto}
.search{flex:1;position:relative}
.search input{width:100%;height:48px;background:#1E1E1E;border:1px solid #3A3A3A;border-radius:var(--r);padding:0 16px 0 46px;color:var(--white);font:inherit;font-size:15px;outline:none;transition:border-color .2s}
.search input::placeholder{color:rgba(255,255,255,.55)}
.search input:focus{border-color:var(--yellow)}
.search svg{position:absolute;left:16px;top:50%;transform:translateY(-50%);pointer-events:none}
.sok-forslag{position:absolute;top:100%;left:0;right:0;background:var(--white);color:var(--black);border:1px solid var(--line);box-shadow:0 14px 34px rgba(0,0,0,.18);z-index:60;border-radius:0 0 var(--r) var(--r)}
.sok-forslag a{display:flex;gap:12px;align-items:center;padding:8px 12px;border-bottom:1px solid var(--line)}
.sok-forslag a:hover{background:var(--off)}
.sok-forslag img{width:44px;height:44px;object-fit:contain}
.sok-forslag small{display:block;color:var(--grey)}
.head-actions{display:flex;align-items:center;gap:14px}
.head-actions .btn{padding:13px 18px;font-size:13px}
.icon-btn{width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.4);display:grid;place-items:center;background:none;cursor:pointer}
.icon-btn:hover{border-color:var(--yellow)}
nav.cats{border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark)}
nav.cats .wrap{display:flex;justify-content:center;gap:4px;height:58px;align-items:stretch}
nav.cats a{display:flex;align-items:center;padding:0 22px;color:var(--white);font-weight:700;font-size:16px;position:relative}
nav.cats a::after{content:"";position:absolute;left:22px;right:22px;bottom:0;height:3px;background:var(--yellow);transform:scaleX(0);transition:transform .2s}
nav.cats a:hover::after,nav.cats a[aria-current="page"]::after{transform:scaleX(1)}
nav.cats .sep{width:1px;background:var(--line-dark);margin:16px 10px}
nav.cats a.b2b{color:var(--yellow)}
.burger{display:none}
/* Mobilmeny som sidepanel fra venstre (samme mønster som handlekurven fra høyre) */
.menypanel-bak{position:fixed;inset:0;background:rgba(0,0,0,.5);opacity:0;transition:opacity .25s;z-index:90}
.menypanel-bak.apen{opacity:1}
.mobilmeny{position:fixed;top:0;left:0;bottom:0;width:min(360px,88vw);background:var(--black);color:var(--white);z-index:91;display:flex;flex-direction:column;transform:translateX(-100%);transition:transform .25s ease;box-shadow:8px 0 30px rgba(0,0,0,.25)}
.mobilmeny.apen{transform:none}
.mobilmeny[hidden],.menypanel-bak[hidden]{display:none}
.mobilmeny-topp{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 14px 20px;border-bottom:1px solid var(--line-dark)}
.mobilmeny-innhold{flex:1;overflow-y:auto;padding:16px 20px 20px}
.mobilmeny .search{display:block;margin-bottom:12px}
.mobilmeny-innhold>a{display:block;color:var(--white);font-family:var(--head);font-weight:700;font-size:17px;padding:14px 0;border-bottom:1px solid var(--line-dark)}
.mobilmeny-innhold>a[aria-current="page"]{color:var(--yellow)}
.mobilmeny a.b2b{color:var(--yellow)}
.mobilmeny-sma{display:grid;gap:2px;margin-top:18px}
.mobilmeny-sma a{color:rgba(255,255,255,.75);font-size:15px;padding:8px 0}
.mobilmeny-bunn{padding:16px 20px 22px;border-top:1px solid var(--line-dark)}

/* Hero */
.hero{position:relative;min-height:640px;display:flex;align-items:center;color:var(--white);background:#222 url("/media/wysiwyg/hero-test3.jpg") 70% 30%/cover no-repeat;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,10,10,.85) 0%,rgba(10,10,10,.6) 38%,rgba(10,10,10,0) 70%)}
.hero .wrap{position:relative;width:100%;padding-top:80px;padding-bottom:80px}
.hero-copy{max-width:620px}
.hero h1{font-weight:800;font-size:clamp(36px,4.6vw,60px);margin:20px 0 22px}
.hero p{font-size:19px;color:rgba(255,255,255,.88);max-width:520px;margin-bottom:34px}
.hero .actions{display:flex;flex-wrap:wrap;gap:14px}
.hero-trust{display:flex;flex-wrap:wrap;gap:28px;margin-top:42px;padding-top:26px;border-top:1px solid rgba(255,255,255,.2);max-width:560px}
.hero-trust div{font-size:14px;color:rgba(255,255,255,.75)}
.hero-trust b{display:block;font-family:var(--head);font-weight:900;font-size:26px;color:var(--yellow);line-height:1.1}

/* Seksjoner */
section.block{padding:clamp(64px,8vw,100px) 0}
section.block--kort-bunn{padding-bottom:40px}
section.block--kort-topp{padding-top:40px}
section.block--tett-topp{padding-top:20px}
.sec-title{display:flex;align-items:baseline;gap:18px;flex-wrap:wrap;padding-bottom:18px;border-bottom:2px solid var(--black);margin-bottom:44px}
.sec-title .eyebrow{color:var(--grey)}
.dark .sec-title{border-color:var(--line-dark)}
.dark .sec-title .eyebrow{color:rgba(255,255,255,.6)}

/* Fordeler */
.benefits{display:grid;grid-template-columns:repeat(4,1fr);border-top:2px solid var(--black);margin-top:44px}
.benefit{padding:32px 26px;border-right:1px solid var(--line)}
.benefit:last-child{border-right:0}
.ibox{width:50px;height:50px;border-radius:2px;background:var(--yellow);display:grid;place-items:center;margin-bottom:20px}
.benefit h3{font-weight:800;font-size:16px;text-transform:uppercase;letter-spacing:0}
.benefit p{color:var(--grey);font-size:15px;margin-top:8px}

/* Split */
.split{display:grid;grid-template-columns:1fr 1fr;min-height:460px}
.split .img{background:#ddd url("/media/wysiwyg/os.jpg") center/cover}
.split .panel{background:var(--yellow);padding:clamp(36px,5vw,64px);display:flex;flex-direction:column;justify-content:center}
.split h2{font-weight:900;text-transform:uppercase;font-size:clamp(30px,3.4vw,44px);margin-bottom:22px}
.split p{font-size:17px;margin-bottom:16px}
.split .btn{margin-top:18px;align-self:stretch}

/* Sparekort */
.save-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:36px;flex-wrap:wrap}
.save-head p{color:var(--grey);font-size:17px}
.save{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.card{border:1px solid var(--line);border-radius:2px;padding:28px 26px 30px;background:var(--white);transition:box-shadow .2s,transform .2s;display:flex;flex-direction:column}
.card:hover{box-shadow:0 14px 34px rgba(0,0,0,.08);transform:translateY(-3px)}
.card .ibox{background:var(--yellow-soft);width:46px;height:46px}
.card h3{font-weight:700;font-size:18px;letter-spacing:-.01em}
.card p{color:var(--grey);margin-top:10px;font-size:15.5px}
.card--yellow{background:var(--yellow);border-color:var(--yellow)}
.card--yellow .ibox{background:rgba(0,0,0,.1)}
.card--yellow p{color:var(--black)}
.card--yellow .btn{margin-top:auto;padding-top:15px;padding-bottom:15px}
.card--yellow .spacer{height:20px}

/* Bedriftsportal */
.portal{background:var(--black);color:var(--white)}
.portal-grid{display:grid;grid-template-columns:5fr 6fr;gap:64px;align-items:center}
.portal h2{font-weight:900;text-transform:uppercase;font-size:clamp(30px,3.6vw,46px);margin:18px 0 20px}
.portal h2 span{color:var(--yellow)}
.portal p.lead{color:rgba(255,255,255,.75);font-size:17px;margin-bottom:28px;max-width:480px}
.portal .knapper{gap:14px}
.checks{list-style:none;margin-bottom:34px}
.checks li{display:flex;gap:14px;align-items:flex-start;padding:12px 0;border-bottom:1px solid var(--line-dark);color:rgba(255,255,255,.88)}
.checks li:first-child{border-top:1px solid var(--line-dark)}
.checks i{flex:0 0 22px;height:22px;border-radius:2px;background:var(--yellow);display:grid;place-items:center;margin-top:1px}
.mock{background:var(--white);color:var(--black);border-radius:6px;overflow:hidden;box-shadow:0 30px 60px rgba(0,0,0,.45)}
.mock-top{background:#1E1E1E;display:flex;align-items:center;gap:14px;padding:10px 14px;color:rgba(255,255,255,.6);font-size:12px}
.mock-top .d{display:flex;gap:6px}.mock-top .d i{width:9px;height:9px;border-radius:50%;background:#3A3A3A}
.mock-top .url{flex:1;background:#2A2A2A;border-radius:3px;padding:4px 10px}
.mock-head{background:var(--black);color:var(--white);display:flex;justify-content:space-between;align-items:center;padding:12px 18px}
.mock-head img{height:24px;width:auto}
.mock-head span{font-size:13px;color:rgba(255,255,255,.75)}
.mock-body{padding:20px 18px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}
.mock-row{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center}
.mock-row h4{font-weight:800;text-transform:uppercase;font-size:14px}
.budget{grid-column:1/-1;background:var(--off);border-radius:3px;padding:12px 14px}
.budget .lbl{display:flex;justify-content:space-between;font-size:13px;color:var(--grey);margin-bottom:8px}
.budget .lbl b{color:var(--black)}
.track{height:8px;background:var(--line);border-radius:4px;overflow:hidden}
.fill{height:100%;width:0;background:var(--yellow);border-radius:4px;transition:width 1.4s ease}
.prod{border:1px solid var(--line);border-radius:3px;padding:8px}
/* Produktbilder fra katalogen (transparente PNG): vises hele på hvit bakgrunn, ikke beskåret */
.prod .ph{aspect-ratio:1;background:var(--white) center/contain no-repeat;border-radius:2px;margin-bottom:8px}
.prod .ph--jakke{background-image:url("/media/catalog/product/wrks/w/r/wr10102-colomel-softshell-hv-jckt-m-safety-yellow-2.png")}
.prod .ph--bukse{background-image:url("/media/catalog/product/wrks/w/r/wr10121-bismuth-stretch-pant-m-ss24-black-beauty.png")}
.prod .ph--sko{background-image:url("/media/catalog/product/h/u/hunter.png")}
.prod b{display:block;font-size:12.5px;line-height:1.3}
.prod small{font-size:11.5px;color:var(--grey)}
.prod.sel{border-color:var(--yellow);box-shadow:inset 0 0 0 1px var(--yellow)}
.mock-foot{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:12px;font-size:13px;color:var(--grey)}
.mock-foot .btn{padding:9px 14px;font-size:11px}

/* Steg */
.steps-img{height:420px;background:#ddd url("/media/wysiwyg/alt-paa-et-sted-desktop-2.jpg") center/cover;border-radius:2px}
.steps-box{background:var(--white);margin:-90px clamp(16px,4vw,48px) 0;position:relative;border:1px solid var(--line);box-shadow:0 20px 40px rgba(0,0,0,.06)}
.steps-box h2{font-weight:900;text-transform:uppercase;font-size:clamp(24px,2.6vw,32px);padding:32px 30px 24px}
.steps{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
.step{padding:24px 30px 28px;border-right:1px solid var(--line);position:relative}
.step:last-child{border-right:0}
.step:not(:first-child)::before{content:"";position:absolute;left:-1px;top:28px;border-left:9px solid var(--yellow);border-top:9px solid transparent;border-bottom:9px solid transparent}
.step .eyebrow{color:var(--grey);font-size:13px}
.step h3{font-weight:700;font-size:17px;margin:6px 0 4px;letter-spacing:-.01em}
.step p{color:var(--grey);font-size:15px}
.cta-row{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;margin-top:56px;padding-top:28px;border-top:2px solid var(--black)}
.cta-row p{font-size:21px;font-weight:500}

/* Kategorifliser */
.cat-grid{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:260px 260px;gap:16px}
.cat{position:relative;border-radius:2px;overflow:hidden;background:#222 center/cover;color:var(--white);display:flex;align-items:flex-end;padding:22px}
.cat::before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.7) 0%,rgba(0,0,0,0) 60%);transition:background .3s}
.cat:hover::before{background:linear-gradient(0deg,rgba(0,0,0,.8) 0%,rgba(0,0,0,.15) 70%)}
.cat > div{position:relative}
.cat h3{font-weight:900;text-transform:uppercase;font-size:24px}
.cat span{font-size:14px;color:rgba(255,255,255,.8)}
.cat .go{display:inline-block;margin-top:8px;font-weight:700;font-size:14px;color:var(--yellow)}
.cat:first-child{grid-row:span 2}
.cat:first-child h3{font-size:34px}
/* Kategoriflisene viser produktbilder fra katalogen (transparente PNG), øverst til høyre så teksten
   nede til venstre står fritt. Mørke plagg (undertøyet) får lys flis. */
.cat--yttertoy,.cat--mellomlag,.cat--sko,.cat--plain,.cat--yellow{background-repeat:no-repeat;background-position:right 18px top 14px;background-size:auto 50%}
.cat--yttertoy{background-color:#1C1C1C;background-image:url("/media/catalog/product/wrks/w/r/wr10088-beryl-jckt-hv-m-ss24-safety-yellow.png");background-position:center 28px;background-size:auto 64%}
.cat--mellomlag{background-color:#1C1C1C;background-image:url("/media/catalog/product/wrks/w/r/wr10138-albite-fleece-jacket-grey-melange.png")}
.cat--sko{background-color:#1C1C1C;background-image:url("/media/catalog/product/1/0/102157307.png");background-size:50% auto;background-position:right 14px top 18px}
.cat--plain{background-color:var(--off);background-image:url("/media/catalog/product/wrks/w/r/wr10156-bronitt-woolnet-sweater-ss24-black-beauty-7073393014643_2_1.png");color:var(--black)}
.cat--plain::before{display:none}
.cat--plain span,.cat--plain .go{color:var(--black)}
.cat--plain .go{text-decoration:underline;text-decoration-color:var(--yellow);text-decoration-thickness:2px;text-underline-offset:3px}
.cat--yellow{background-color:var(--yellow);background-image:url("/media/catalog/product/wrks/w/r/wr10435-force-wool-hat-black-beauty--2.png");color:var(--black)}
.cat--yellow::before{display:none}
.cat--yellow span,.cat--yellow .go{color:var(--black)}

/* Butikker (mørk seksjon) */
.dark{background:var(--black);color:var(--white)}
.store-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.store{background:var(--black-2);border:1px solid #333;border-radius:6px;padding:22px 22px 24px;transition:border-color .2s,transform .2s;display:block}
.store:hover{border-color:var(--yellow);transform:translateY(-3px)}
.store .badge{margin-bottom:12px}
.store h3{font-weight:900;font-size:20px;margin-bottom:10px}
.store address{font-style:normal;font-size:15px;color:rgba(255,255,255,.65);margin-bottom:14px}
.store .go{font-weight:700;font-size:15px;color:var(--yellow)}
.store--hl{background:var(--yellow);border-color:var(--yellow);color:var(--black)}
.store--hl address,.store--hl .go{color:var(--black)}
.store-foot{display:flex;justify-content:flex-end;align-items:center;gap:24px;margin-top:36px;padding-top:26px;border-top:1px solid var(--line-dark);color:rgba(255,255,255,.65)}

/* Nyheter */
.news{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.post{border:1px solid var(--line);border-radius:2px;overflow:hidden;background:var(--white);transition:box-shadow .2s;display:block}
.post:hover{box-shadow:0 14px 34px rgba(0,0,0,.08)}
.post .img{aspect-ratio:16/9;background:#ddd center/cover;position:relative;overflow:hidden}
.post .img img{width:100%;height:100%;object-fit:cover}
.post .badge{position:absolute;left:16px;top:16px}
.post .txt{padding:22px 24px 26px}
.post h2,.post h3{font-weight:800;font-size:22px;text-transform:uppercase;margin-bottom:8px}
.post p{color:var(--grey)}
.post .go{display:inline-block;margin-top:12px;font-weight:700}

/* Merker */
.brands{padding:56px 0 64px;border-top:1px solid var(--line)}
.brands .eyebrow{color:var(--grey-2);margin-bottom:22px}
/* Merkekarusell: to like sett etter hverandre, glir -50 % i løkke. Padding i stedet for gap, så -50 % treffer eksakt. */
.logos-bane{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.logos{display:flex;width:max-content;animation:logos-gli 32s linear infinite}
.logos-bane:hover .logos,.logos-bane:focus-within .logos{animation-play-state:paused}
.logos-sett{display:flex;align-items:center;flex-shrink:0}
.logos-sett>*{flex-shrink:0;padding:0 24px;display:flex;align-items:center}
.logos img{height:64px;width:auto;filter:grayscale(1);opacity:.6;transition:opacity .2s,filter .2s}
.logos a:hover img,.logos a:focus-visible img{opacity:1;filter:none}
@keyframes logos-gli{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){
  .logos-bane{-webkit-mask-image:none;mask-image:none}
  .logos{animation:none;width:auto;max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}
  .logos-sett{flex-wrap:wrap;justify-content:center;gap:16px 0}
  .logos-sett[aria-hidden]{display:none}
}

/* Tilbudsskjema */
.offer{background:var(--off)}
.offer-grid{display:grid;grid-template-columns:5fr 7fr;gap:56px;align-items:start}
.offer h2,.offer h1{font-weight:900;text-transform:uppercase;font-size:clamp(30px,3.6vw,46px);margin:16px 0 18px}
.offer .lead{color:var(--grey);font-size:17px;margin-bottom:30px}
.contact-box{border-top:2px solid var(--black);padding-top:20px}
.contact-box a.tlf{display:block;font-family:var(--head);font-weight:800;font-size:24px}
.contact-box small{color:var(--grey);font-size:15px}
.contact-box .epost{font-family:var(--body);font-weight:500;font-size:15px}
form.frm{background:var(--white);border:1px solid var(--line);border-radius:2px;padding:clamp(22px,3vw,36px)}
.frm .grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 18px}
.f{display:flex;flex-direction:column;gap:6px}
.f.full{grid-column:1/-1}
.f label,.f .l{font-weight:700;font-size:14px}
.f input,.f select,.f textarea{font:inherit;height:48px;padding:0 14px;border:1px solid #CFCFCF;border-radius:var(--r);background:var(--white);outline:none;transition:border-color .2s,box-shadow .2s}
.f textarea{height:auto;padding:12px 14px;resize:vertical}
.f input:focus,.f select:focus,.f textarea:focus{border-color:var(--black);box-shadow:0 0 0 3px rgba(255,193,7,.35)}
.opts{display:flex;flex-wrap:wrap;gap:8px}
.opts label{cursor:pointer;position:relative}
.opts input{position:absolute;opacity:0;pointer-events:none}
.opts span{display:inline-block;padding:9px 14px;border:1px solid #CFCFCF;border-radius:var(--r);font-size:14px;font-weight:500;transition:all .15s}
.opts input:checked + span{background:var(--black);border-color:var(--black);color:var(--white)}
.opts input:focus-visible + span{outline:3px solid var(--yellow);outline-offset:2px}
.frm .btn{margin-top:24px}
.frm .note{font-size:13px;color:var(--grey);margin-top:12px;text-align:center}
.melding{padding:14px 16px;border-left:4px solid;margin-bottom:18px;background:var(--white)}
.melding-ok{border-color:#2e7d32}
.melding-feil{border-color:#c62828}

/* Footer */
footer.bunn{background:var(--black);color:rgba(255,255,255,.65);padding:64px 0 0}
.foot{display:grid;grid-template-columns:2fr 1.4fr 1.2fr 1.4fr;gap:36px;padding-bottom:52px}
footer.bunn h4{font-weight:900;text-transform:uppercase;color:var(--white);font-size:18px;margin-bottom:18px;letter-spacing:0}
footer.bunn ul{list-style:none}
footer.bunn li{padding:5px 0;display:flex;gap:14px}
footer.bunn li::before{content:"*";color:rgba(255,255,255,.5)}
footer.bunn a:hover{color:var(--yellow)}
footer.bunn .orgnr{margin-top:12px}
footer.bunn .orgnr b{color:var(--white)}
.logo-f img{height:40px;width:auto}
.foot-bottom{border-top:1px solid var(--line-dark);padding:18px 0;font-size:14px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px}

/* ---- Undersider i samme formspråk ---- */
.brodsmuler{font-size:14px;color:var(--grey);margin-bottom:18px}
.brodsmuler a{color:var(--grey)}
.brodsmuler a:hover{color:var(--black);text-decoration:underline}
.side-topp{padding:40px 0 0}
.liste{padding-top:40px;padding-bottom:80px}
.liste-topp{display:flex;align-items:baseline;gap:18px;flex-wrap:wrap;padding-bottom:18px;border-bottom:2px solid var(--black);margin-bottom:28px}
.liste-topp h1{font-weight:900;text-transform:uppercase;font-size:clamp(28px,3.4vw,42px)}
.antall{color:var(--grey);font-family:var(--head);font-weight:800;font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.kategori-tekst{max-width:760px;color:var(--grey);margin-bottom:24px}
.underkategorier{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0 0 28px}
.underkategorier a{display:block;padding:9px 14px;border:1px solid #CFCFCF;border-radius:var(--r);font-size:14px;font-weight:500}
.underkategorier a:hover{background:var(--black);border-color:var(--black);color:var(--white)}
.liste-oppsett{display:grid;grid-template-columns:250px 1fr;gap:40px}
.filter details{border-bottom:1px solid var(--line);padding:14px 0}
.filter summary{font-family:var(--head);font-weight:800;font-size:13px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}
.filter ul{list-style:none;padding:10px 0 0;max-height:320px;overflow-y:auto}
.filter li a{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:15px}
.filter li a:hover{color:var(--grey)}
.filter li a span:last-child{margin-left:auto;color:var(--grey-2);font-size:13px}
.filter a[aria-current="true"]{font-weight:700}
.filter a[aria-current="true"]::before{content:"";width:8px;height:8px;background:var(--yellow);border-radius:2px}
.storrelsesvalg{display:flex;flex-wrap:wrap;gap:6px}
.storrelsesvalg li a{border:1px solid #CFCFCF;border-radius:var(--r);padding:5px 9px}
.storrelsesvalg li a[aria-current="true"]{background:var(--black);color:var(--white);border-color:var(--black)}
.storrelsesvalg li a[aria-current="true"]::before{display:none}
.nullstill{display:inline-block;margin-bottom:6px;font-size:14px;text-decoration:underline}
.filter-knapp{display:none}
.sidebytte{display:flex;justify-content:center;gap:24px;align-items:center;margin-top:44px;font-family:var(--head);font-weight:700;font-size:14px}
.sidebytte a{border-bottom:3px solid var(--yellow)}
.tomt{padding:40px 0;color:var(--grey)}

/* Produktkort */
.kortrutenett{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:20px}
.kort{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:2px;background:var(--white);transition:box-shadow .2s,transform .2s}
.kort:hover{box-shadow:0 14px 34px rgba(0,0,0,.08);transform:translateY(-3px)}
.kort-bilde{aspect-ratio:1;background:var(--off);display:flex;align-items:center;justify-content:center;overflow:hidden}
.kort-bilde img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.kort-tomt{display:block;width:100%;aspect-ratio:1;background:var(--off)}
.kort-tekst{padding:14px 16px 18px;display:flex;flex-direction:column;gap:3px}
.kort-merke{font-family:var(--head);font-weight:800;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--grey)}
.kort-navn{font-weight:700;line-height:1.35}
.kort-pris{font-size:14px;color:var(--grey)}
.kort-farger{display:flex;gap:5px;margin-top:6px}
.prikk{display:inline-block;width:14px;height:14px;border-radius:50%;border:1px solid rgba(0,0,0,.25);background:var(--prikk,#ccc);vertical-align:middle}

/* Produktside */
.produkt{padding-top:40px;padding-bottom:40px}
.produkt-topp{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:56px}
.galleri-hoved{width:100%;aspect-ratio:1;object-fit:contain;background:var(--off);border-radius:2px}
.galleri-miniatyrer{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin-top:12px}
.galleri-miniatyrer button{padding:0;border:2px solid transparent;border-radius:2px;background:var(--off);cursor:pointer}
.galleri-miniatyrer button[aria-current="true"]{border-color:var(--yellow)}
.galleri-miniatyrer li[hidden]{display:none}
.galleri-miniatyrer img{width:76px;height:76px;object-fit:contain;mix-blend-mode:multiply}
.produkt-merke{font-family:var(--head);font-weight:800;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--grey)}
.produkt-info h1{font-weight:900;text-transform:uppercase;font-size:clamp(28px,3.2vw,40px);margin:10px 0 8px}
.varenr{color:var(--grey);font-size:14px;margin-bottom:18px}
.pris{font-family:var(--head);font-weight:900;font-size:30px;margin-bottom:20px}
.pris span{display:block;font-family:var(--body);font-weight:400;font-size:14px;color:var(--grey)}
.ingress{font-size:17px;color:var(--grey);margin-bottom:22px;max-width:640px}
.valg{border:0;margin:0 0 20px}
.valg legend,.valg-tittel{font-family:var(--head);font-weight:800;font-size:12px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:10px}
.farge{padding:3px;border:2px solid transparent;border-radius:50%;background:none;cursor:pointer;margin-right:4px}
.farge .prikk{width:30px;height:30px}
.farge[aria-pressed="true"]{border-color:var(--black)}
.storrelser{display:flex;flex-wrap:wrap;gap:6px;list-style:none}
.storrelser li{min-width:48px;text-align:center;padding:8px 10px;border:1px solid #CFCFCF;border-radius:var(--r);font-size:14px;font-weight:500}
.storrelser li.utilgjengelig{color:#bbb;text-decoration:line-through;border-color:var(--line)}
.storrelsestabell{margin-top:12px}
.storrelsestabell summary{cursor:pointer;font-weight:700;text-decoration:underline}
.storrelsestabell table,.ren-tekst table{border-collapse:collapse;font-size:14px;margin-top:10px;display:block;overflow-x:auto;max-width:100%}
.storrelsestabell td,.storrelsestabell th,.ren-tekst td,.ren-tekst th{border:1px solid var(--line);padding:6px 10px}
.kjop-i-butikk{background:var(--black);color:var(--white);border-radius:2px;padding:26px 28px;margin:26px 0}
.kjop-i-butikk h2{font-weight:900;text-transform:uppercase;font-size:20px;margin-bottom:8px}
.kjop-i-butikk p{color:rgba(255,255,255,.75);margin-bottom:16px}
.kjop-i-butikk .knapper .btn{padding:14px 20px;font-size:13px}
.ikoner{display:flex;flex-wrap:wrap;gap:8px;list-style:none}
.produkt-detaljer{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:40px;margin-top:64px;padding-top:28px;border-top:2px solid var(--black)}
.produkt-detaljer h2{font-weight:900;text-transform:uppercase;font-size:18px;margin-bottom:12px}
.ren-tekst{color:var(--grey);overflow-wrap:anywhere}
.ren-tekst p+p{margin-top:10px}
.ren-tekst ul{padding-left:20px}
.pdf{font-weight:700;border-bottom:3px solid var(--yellow)}

/* Butikkside og liste */
.butikkside{padding-top:40px}
.butikkside h1{font-weight:900;text-transform:uppercase;font-size:clamp(28px,3.4vw,42px);margin-bottom:12px}
.apningstider{display:grid;grid-template-columns:auto 1fr;gap:4px 16px;font-size:15px;margin-top:12px}
.apningstider dd{margin:0}
.store .apningstider{color:rgba(255,255,255,.65);font-size:14px;margin-bottom:12px}
.store--hl .apningstider{color:var(--black)}
.butikk-fakta{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:start;padding-bottom:28px;border-bottom:2px solid var(--black);margin-bottom:28px}
.butikk-fakta address{font-style:normal;font-size:17px}
.butikk-fakta .tlf{font-family:var(--head);font-weight:800;font-size:22px;display:block;margin-top:8px}

/* Nyhetsliste og artikkel */
.nyhetsliste{padding-top:40px;padding-bottom:80px}
.artikkel-topp{padding-top:40px}
.artikkel-topp time{display:block;color:var(--grey);font-size:14px}
.cms-innhold{overflow-x:hidden}
.cms-innhold img{height:auto}

/* Kontaktside */
.kontakt-side{padding-top:40px;padding-bottom:80px}

/* 404 */
.ikke-funnet{padding:80px 0}
.ikke-funnet h1{font-weight:900;text-transform:uppercase;font-size:clamp(30px,3.6vw,46px);margin-bottom:12px}
.sok-stor{display:flex;gap:10px;max-width:520px;margin-top:24px}
.sok-stor input{flex:1;height:52px;padding:0 14px;border:1px solid #CFCFCF;border-radius:var(--r);font:inherit}

/* Responsiv */
@media (max-width:1100px){
  .head-main .search{display:none}
  .head-main .wrap{justify-content:space-between;height:84px}
  .logo img{height:44px}
  nav.cats{display:none}
  .burger{display:grid}
  .store-grid{grid-template-columns:repeat(3,1fr)}
  .save{grid-template-columns:1fr 1fr}
  .benefits{grid-template-columns:1fr 1fr}
  .benefit:nth-child(2){border-right:0}
  .benefit:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .portal-grid,.offer-grid{grid-template-columns:1fr}
  .liste-oppsett,.produkt-topp{grid-template-columns:1fr;gap:28px}
  .filter-knapp{display:block;width:100%;padding:14px;font-family:var(--head);font-weight:800;font-size:13px;letter-spacing:.1em;text-transform:uppercase;background:var(--off);border:1px solid var(--line);border-radius:var(--r);cursor:pointer}
  .filter-innhold{display:none}
  .filter-innhold.apen{display:block}
}
@media (max-width:760px){
  .topbar .links{display:none}
  .topbar .wrap{justify-content:flex-end}
  .head-actions .btn{display:none}
  .hero{min-height:560px;background-position:65% center}
  .hero::before{background:linear-gradient(0deg,rgba(10,10,10,.9) 0%,rgba(10,10,10,.55) 60%,rgba(10,10,10,.3) 100%)}
  .hero .wrap{align-self:flex-end;padding-bottom:44px}
  .split{grid-template-columns:1fr}
  .split .img{min-height:280px}
  .steps{grid-template-columns:1fr}
  .step{border-right:0;border-bottom:1px solid var(--line)}
  .step:not(:first-child)::before{display:none}
  .steps-img{height:260px}
  .steps-box{margin:-60px 0 0}
  .cat-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto}
  .cat{min-height:200px}
  .cat--mellomlag,.cat--plain,.cat--yellow{background-size:auto 46%}
  .cat--sko{background-size:56% auto}
  .cat:first-child{grid-column:1/-1;grid-row:auto;min-height:300px}
  .store-grid{grid-template-columns:1fr 1fr}
  .store-foot{flex-direction:column;align-items:stretch;text-align:center}
  .news{grid-template-columns:1fr}
  .foot{grid-template-columns:1fr 1fr}
  .logos img{height:44px}
  .logos-sett>*{padding:0 14px}
  .butikk-fakta{grid-template-columns:1fr}
}
@media (max-width:520px){
  .save,.benefits{grid-template-columns:1fr}
  .benefit{border-right:0;border-bottom:1px solid var(--line)}
  .store-grid{grid-template-columns:1fr}
  .frm .grid{grid-template-columns:1fr}
  .mock-body{grid-template-columns:1fr 1fr}
  .prod:nth-of-type(3){display:none}
  .foot{grid-template-columns:1fr}
  .hero .actions .btn{width:100%}
  .kortrutenett{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .kort-tekst{padding:10px 10px 14px}
}

/* ---- handel: kjøpsboks, handlekurv, kasse, kvittering ---- */
.pris .pris-tall{display:inline;font-family:var(--head);font-weight:900;font-size:30px;color:var(--black)}
.storrelser li{padding:0;border:0;min-width:0}
.storrelser li button{font:inherit;min-width:48px;padding:8px 10px;border:1px solid #CFCFCF;border-radius:var(--r);background:var(--white);font-size:14px;font-weight:500;cursor:pointer}
.storrelser li button:hover{border-color:var(--black)}
.storrelser li button[aria-pressed="true"]{background:var(--black);border-color:var(--black);color:var(--white)}
.storrelser li.utilgjengelig button,.storrelser li button:disabled{color:#bbb;text-decoration:line-through;border-color:var(--line);cursor:not-allowed}
.kjop{margin:26px 0;padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.kjop-rad{display:flex;gap:10px}
.kjop-antall{width:76px;height:52px;font:inherit;font-size:16px;text-align:center;border:1px solid #CFCFCF;border-radius:var(--r)}
.kjop-knapp{flex:1;justify-content:center}
.kjop-melding{min-height:1.4em;margin-top:10px;font-weight:500}
.kjop-melding a{color:var(--black);text-decoration:underline;text-decoration-color:var(--yellow);text-decoration-thickness:2px}
.kjop-butikk{font-size:14px;color:var(--grey)}
.kjop-butikk a{color:var(--black);text-decoration:underline}

.kurv-ikon{position:relative}
.kurv-antall{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:var(--yellow);color:var(--black);font-size:12px;font-weight:700;display:grid;place-items:center}
.kurv-antall[hidden]{display:none}

.handel{padding-top:40px;padding-bottom:60px}
.handel-tittel{font-family:var(--head);font-weight:900;text-transform:uppercase;font-size:clamp(28px,3.4vw,42px);margin:12px 0 24px}
.kurv-oppsett,.kasse-oppsett{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:32px;align-items:start}
.kurv-linje{display:grid;grid-template-columns:88px minmax(0,1fr) auto auto auto;gap:16px;align-items:center;padding:16px 0;border-bottom:1px solid var(--line)}
.kurv-bilde{width:88px;height:88px;background:var(--off);display:block}
.kurv-bilde img{width:100%;height:100%;object-fit:contain}
.kurv-info{display:flex;flex-direction:column;gap:2px}
.kurv-navn{font-weight:700;color:var(--black)}
.kurv-info small{color:var(--grey);font-size:13px}
.kurv-antall-valg{display:flex;align-items:center;border:1px solid #CFCFCF;border-radius:var(--r)}
.kurv-antall-valg button{width:36px;height:40px;border:0;background:none;font-size:18px;cursor:pointer}
.kurv-antall-valg span{min-width:28px;text-align:center;font-weight:700}
.kurv-linjesum{font-weight:700;min-width:90px;text-align:right}
.kurv-fjern{border:0;background:none;color:var(--grey);text-decoration:underline;cursor:pointer;font:inherit;font-size:13px}
.kurv-sum{background:var(--off);border:1px solid var(--line);padding:24px;position:sticky;top:20px}
.kurv-sum h2{font-family:var(--head);font-weight:900;text-transform:uppercase;font-size:18px;margin-bottom:14px}
.kurv-sum dl div{display:flex;justify-content:space-between;padding:6px 0}
.kurv-sum dt{color:var(--grey)}
.kurv-total{border-top:1px solid #CFCFCF;margin-top:6px;padding-top:12px !important;font-weight:900;font-size:18px}
.kurv-total dt,.kurv-total td{color:var(--black) !important}
.kurv-mva,.kurv-mva dt,.kurv-mva dd{font-size:13px;color:var(--grey)}
.kurv-sum .btn{margin-top:16px;justify-content:center}
.kurv-fortsett{display:block;text-align:center;margin-top:14px;font-size:14px;color:var(--black);text-decoration:underline}
.kurv-tom{padding:40px 0}
.kurv-tom p{margin-bottom:18px;font-size:18px}
.kurv-laster{color:var(--grey)}

.kasse-skjema{display:flex;flex-direction:column;gap:20px}
.kasse-boks{background:var(--white);border:1px solid var(--line);border-radius:2px;margin:0;padding:clamp(20px,3vw,32px);padding-top:clamp(16px,2vw,24px);min-width:0}
.kasse-boks legend{font-family:var(--head);font-weight:900;text-transform:uppercase;font-size:16px;padding:0 6px;float:left;width:100%;margin-bottom:18px;padding:0}
.kasse-boks legend + *{clear:both}
.valgfritt{font-weight:400;color:var(--grey);text-transform:none;font-family:var(--body);font-size:13px}
.kasse-valg{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:14px 16px;border:1px solid #CFCFCF;border-radius:var(--r);margin-bottom:10px;cursor:pointer}
.kasse-valg:has(input:checked){border-color:var(--black);box-shadow:0 0 0 2px var(--yellow)}
.kasse-valg input{accent-color:var(--black);width:18px;height:18px}
.kasse-valg-tekst{display:flex;flex-direction:column}
.kasse-valg-tekst small{color:var(--grey);font-size:13px}
.kasse-valg-pris{font-weight:700}
.kasse-butikk{margin-top:6px}
.kasse-butikk[hidden]{display:none}
.kasse-linjer{list-style:none;margin:0 0 12px;padding:0 0 8px;border-bottom:1px solid #CFCFCF}
.kasse-linjer li{display:flex;justify-content:space-between;gap:12px;padding:6px 0;font-size:14px}
.kasse-linjer small{display:block;color:var(--grey);font-size:12px}
.kasse-vilkar{display:flex;gap:8px;align-items:center;margin-top:16px;font-size:14px}
.kasse-vilkar a{text-decoration:underline}
.btn:disabled{opacity:.5;cursor:not-allowed}

.kvittering .lead{font-size:17px;color:var(--grey);max-width:640px;margin-bottom:28px}
.kvittering-oppsett{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:32px;margin-bottom:28px}
.kvittering-linjer{width:100%;border-collapse:collapse}
.kvittering-linjer td{padding:10px 8px;border-bottom:1px solid var(--line)}
.kvittering-linjer td:last-child{text-align:right;white-space:nowrap}
.kvittering-adresse{background:var(--off);padding:20px}
.kvittering-adresse h2{font-family:var(--head);font-weight:900;text-transform:uppercase;font-size:16px;margin-bottom:8px}
.kvittering-adresse p{margin-bottom:8px}

@media (max-width:900px){
  .kurv-oppsett,.kasse-oppsett,.kvittering-oppsett{grid-template-columns:1fr}
  .kurv-sum{position:static}
  .kurv-linje{grid-template-columns:64px minmax(0,1fr) auto;grid-template-areas:"b i i" "b a s" "b f f"}
  .kurv-bilde{width:64px;height:64px;grid-area:b}
  .kurv-info{grid-area:i}.kurv-antall-valg{grid-area:a;justify-self:start}.kurv-linjesum{grid-area:s}.kurv-fjern{grid-area:f;justify-self:start}
  .frm .grid{grid-template-columns:1fr}
}

/* ---- butikkside: fakta fra admin, butikksjef fra innholdet ---- */
.butikk-hero{background:var(--black);color:var(--white);position:relative;overflow:hidden;padding:36px 0 64px}
.butikk-hero::before{content:"BWW";position:absolute;right:-10px;top:-10px;font-family:var(--head);font-weight:900;font-size:clamp(120px,20vw,260px);line-height:1;color:rgba(255,193,7,.05);pointer-events:none}
.butikk-hero .wrap{position:relative}
.brodsmuler--mork,.brodsmuler--mork a{color:rgba(255,255,255,.6)}
.butikk-hero .badge{margin:26px 0 0}
.butikk-hero h1{font-weight:900;text-transform:uppercase;font-size:clamp(40px,7vw,80px);line-height:.95;margin:22px 0 18px}
.butikk-hero h1 span{color:var(--yellow)}
.butikk-hero p{color:rgba(255,255,255,.65);font-size:18px;max-width:560px;margin-bottom:28px}
.butikk-info{background:var(--off);padding:48px 0}
.butikk-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
.butikk-bilde{width:100%;height:100%;min-height:260px;object-fit:cover;display:block}
.info-kort{background:var(--white);border-left:4px solid var(--yellow);padding:26px 28px}
.info-kort h2{font-family:var(--head);font-weight:800;font-size:12px;letter-spacing:.14em;text-transform:uppercase;margin:0 0 8px}
.info-kort address,.info-kort p{font-style:normal;margin-bottom:20px}
.info-kort a:not(.btn){color:var(--black)}
.tider{list-style:none;margin:0;padding:0}
.tider li{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px solid var(--line)}
.tider li:last-child{border-bottom:0}
.tider span:first-child{color:var(--grey)}
.tider .stengt{color:var(--grey-2)}
.butikk-cta{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.butikk-cta p{color:rgba(255,255,255,.7);margin-top:8px}
@media (max-width:900px){.butikk-info-grid{grid-template-columns:1fr}.butikk-bilde{min-height:220px}}

/* ---- handlekurv som sidepanel ---- */
.kurvpanel-bak{position:fixed;inset:0;background:rgba(0,0,0,.5);opacity:0;transition:opacity .25s;z-index:90}
.kurvpanel-bak.apen{opacity:1}
.kurvpanel{position:fixed;top:0;right:0;bottom:0;width:min(440px,100vw);background:var(--white);z-index:91;display:flex;flex-direction:column;transform:translateX(100%);transition:transform .25s ease;box-shadow:-8px 0 30px rgba(0,0,0,.18)}
.kurvpanel.apen{transform:none}
.kurvpanel[hidden],.kurvpanel-bak[hidden]{display:none}
html.panel-apent{overflow:hidden}
.kurvpanel-topp{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;background:var(--black);color:var(--white)}
.kurvpanel-topp h2{font-family:var(--head);font-weight:900;text-transform:uppercase;font-size:18px;margin:0}
.kurvpanel-lukk{background:none;border:0;color:var(--white);width:40px;height:40px;display:grid;place-items:center;cursor:pointer;border-radius:50%}
.kurvpanel-lukk:hover,.kurvpanel-lukk:focus-visible{background:rgba(255,255,255,.12)}
.kurvpanel-linjer{flex:1;overflow-y:auto;padding:4px 24px}
.kurvpanel .kurv-linje{grid-template-columns:64px minmax(0,1fr) auto;grid-template-areas:"b i i" "b a s" "b f f";gap:6px 14px}
.kurvpanel .kurv-bilde{width:64px;height:64px;grid-area:b}
.kurvpanel .kurv-info{grid-area:i}.kurvpanel .kurv-antall-valg{grid-area:a;justify-self:start}
.kurvpanel .kurv-linjesum{grid-area:s;min-width:0}.kurvpanel .kurv-fjern{grid-area:f;justify-self:start;padding:0}
.kurvpanel-tom{padding:32px 0;color:var(--grey)}
.kurvpanel-bunn{border-top:1px solid var(--line);padding:18px 24px 22px;background:var(--off)}
.kurvpanel-bunn[hidden]{display:none}
.kurvpanel-sum{display:flex;justify-content:space-between;font-size:18px;font-weight:700;margin-bottom:4px}
.kurvpanel-bunn .btn{margin-top:14px;justify-content:center}
@media (prefers-reduced-motion:reduce){.kurvpanel,.kurvpanel-bak,.mobilmeny,.menypanel-bak{transition:none}}

/* Samtykkebanner (Google Analytics) */
.samtykke{position:fixed;left:var(--gutter);right:var(--gutter);bottom:16px;max-width:640px;margin:0 auto;background:var(--black);color:var(--white);border-radius:var(--r);padding:18px 20px;z-index:80;box-shadow:0 8px 30px rgba(0,0,0,.3);display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.samtykke[hidden]{display:none}
.samtykke p{margin:0;flex:1 1 280px;font-size:15px;line-height:1.45}
.samtykke-knapper{display:flex;gap:10px;flex-wrap:wrap}
.samtykke .btn--outline-dark{background:transparent;color:var(--white);border:1px solid rgba(255,255,255,.5)}
.samtykke .btn--outline-dark:hover{background:var(--white);color:var(--black)}
.lenkeknapp{background:none;border:0;padding:0;font:inherit;color:inherit;text-decoration:underline;cursor:pointer}

/* Egen side for tilbud til bedrifter */
.tilbud-steg{list-style:none;counter-reset:steg;margin:0 0 32px;padding:0;display:grid;gap:18px}
.tilbud-steg li{counter-increment:steg;display:grid;grid-template-columns:40px 1fr;column-gap:14px;align-items:start}
.tilbud-steg li::before{content:counter(steg);grid-row:span 2;width:40px;height:40px;border-radius:2px;background:var(--yellow);display:grid;place-items:center;font-family:var(--head);font-weight:900;font-size:18px}
.tilbud-steg b{font-family:var(--head);font-weight:800;font-size:16px;line-height:1.3}
.tilbud-steg span{color:var(--grey);font-size:15px;line-height:1.45}
@media (min-width:1101px){.bedriftskunde .offer-grid>div:first-child{position:sticky;top:24px}}
.frm fieldset{border:0;padding:0;margin:0;min-width:0}
.frm fieldset legend{padding:0;margin-bottom:8px}
@media (max-width:520px){.samtykke{bottom:10px;padding:16px}.samtykke-knapper{width:100%}.samtykke-knapper .btn{flex:1 1 0;justify-content:center;padding-left:10px;padding-right:10px}}

/* Bryter for priser inkl./eks. mva (topplinja) */
.mva-valg{display:inline-flex;border:1px solid rgba(255,255,255,.35);border-radius:999px;padding:2px}
.mva-valg[hidden]{display:none}
.mva-valg button{background:none;border:0;color:rgba(255,255,255,.75);font:inherit;font-size:13px;font-weight:600;padding:4px 11px;border-radius:999px;cursor:pointer;line-height:1.2}
.mva-valg button:hover{color:var(--white)}
.mva-valg button[aria-pressed="true"]{background:var(--yellow);color:var(--black)}
.mva-valg button:focus-visible{outline:2px solid var(--yellow);outline-offset:2px}

/* Kategoriflisene på smal mobil: to kolonner, så titlene må få plass og bildet over teksten */
@media (max-width:520px){
  .cat:not(:first-child){min-height:230px;padding:16px}
  .cat:not(:first-child) h3{font-size:18px;letter-spacing:-.01em;overflow-wrap:anywhere}
  .cat:not(:first-child) span{font-size:13px}
  .cat--mellomlag,.cat--plain,.cat--yellow{background-size:auto 42%;background-position:right 12px top 12px}
  .cat--sko{background-size:62% auto;background-position:right 10px top 14px}
}
