/* Alle Lagersalg – basert på Andreas' prototype. Selvhostede skrifter, ingen eksterne kall. */
@font-face{font-family:'DM Sans';font-weight:400;font-display:swap;src:url(/assets/fonts/dm-sans-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'DM Sans';font-weight:500;font-display:swap;src:url(/assets/fonts/dm-sans-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'DM Sans';font-weight:700;font-display:swap;src:url(/assets/fonts/dm-sans-latin-700-normal.woff2) format('woff2')}
@font-face{font-family:Manrope;font-weight:700;font-display:swap;src:url(/assets/fonts/manrope-latin-700-normal.woff2) format('woff2')}
@font-face{font-family:Manrope;font-weight:800;font-display:swap;src:url(/assets/fonts/manrope-latin-800-normal.woff2) format('woff2')}
:root{--paper:#f7f5ee;--ink:#183b31;--orange:#e97945;--line:#d8ddd2;--card:#fffdf7;color-scheme:light}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.5 'DM Sans',system-ui,-apple-system,'Segoe UI',sans-serif}
a{color:inherit;text-decoration:none}p a,.prose a,.history a,.small a,dd a,.source-box a{text-decoration:underline;text-underline-offset:3px}
button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:5px}button{cursor:pointer}
.skip{position:absolute;left:-999px}.skip:focus{left:10px;top:10px;background:#fff;padding:8px 12px;z-index:10}
header.site,main,footer.site{max-width:1220px;margin:auto;padding:0 36px}
header.site{height:76px;display:flex;align-items:center;justify-content:space-between}
.logo{font:800 27px Manrope,sans-serif;letter-spacing:-1.4px;white-space:nowrap}.logo span{color:var(--orange)}
nav{display:flex;gap:26px;align-items:center}
.pill,.button{border:1px solid var(--ink);border-radius:100px;padding:13px 23px;display:inline-block;background:transparent;color:var(--ink);white-space:nowrap}
.button{background:var(--ink);color:#fff;border:0}
.note{background:#e9ede1;text-align:center;padding:10px;font-size:13px}
.eyebrow{text-transform:uppercase;font-size:12px;letter-spacing:2px;font-weight:700}
h1{font:800 clamp(28px,3.3vw,42px)/1.15 Manrope,sans-serif;letter-spacing:-1.5px;margin:0 0 10px}h1 em{font-style:normal;color:#bc512a}
h2{font:800 28px/1.2 Manrope,sans-serif;letter-spacing:-1px;margin:0 0 8px}
h3{font:800 20px Manrope,sans-serif}
.intro{font-size:16px;line-height:1.55;max-width:600px;color:#536359;margin:0}
.muted{color:#647166}.small{font-size:12px;line-height:1.6}.hidden{display:none!important}
.hero{padding:24px 0 20px;display:grid;grid-template-columns:1fr auto;column-gap:32px;align-items:center}
.hero .search{grid-column:2;grid-row:1/3;display:flex;gap:12px;align-items:center}
.brandhero .button{align-self:center}
select,input,textarea{color:var(--ink);background:var(--card);border:1px solid var(--line);padding:14px 18px;border-radius:8px;min-width:0}
select{min-height:50px;max-width:100%}input::placeholder,textarea::placeholder{color:#647166;opacity:1}
select:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.breadcrumb{display:block;padding:18px 0 0;font-size:14px}.breadcrumb a{text-decoration:underline;text-underline-offset:3px}
/* filtre */
.filters{margin:14px 0 18px;display:flex;flex-direction:column;gap:10px}
.cities,.chips{display:flex;gap:8px;flex-wrap:wrap}
.city{border:1px solid var(--line);padding:9px 16px;border-radius:100px;background:transparent;color:var(--ink)}.city.active{background:var(--ink);color:#fff}
.filter{background:transparent;border:1px solid var(--line);padding:8px 15px;border-radius:100px;color:var(--ink)}.filter.active{background:#e4e9dc;border-color:#9ba992}
.selects{display:flex;gap:8px;flex-wrap:wrap}.selects select{padding:10px 14px;min-height:44px;font-size:14px}
.sectionhead{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:12px}
section{margin-bottom:46px}
/* kort */
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.card{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--card);display:flex;flex-direction:column}
.card.cancelled{opacity:.72}.card.cancelled h3 a{text-decoration:line-through}
.art{height:190px;position:relative;display:grid;place-items:center;font-size:78px;background:#e7c5ac}.art.green{background:#c9d1b9}.art.blue{background:#c4d4dd}
.tag{position:absolute;top:16px;left:16px;background:#fffdf4;border-radius:100px;padding:7px 11px;font-size:11px;font-weight:700}
.cardbody{padding:22px;display:flex;flex-direction:column;flex:1}
.meta{font-size:12px;letter-spacing:1px;text-transform:uppercase;color:#697665}
.card h3{margin:10px 0 6px;font-size:21px;line-height:1.25}.card h3 a:hover{text-decoration:underline}
.brandline{margin:0;color:#536359;font-size:14px}
.details{padding-top:14px;margin-top:auto;border-top:1px solid var(--line);font-size:14px;line-height:1.85}
.cardbody .details{margin-top:16px}
.sale-link{display:inline-block;font-weight:700;padding-top:12px}
.badges{display:flex;gap:6px;margin-bottom:6px}.badge{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px;border-radius:100px;padding:4px 9px;background:#e9ede1}
.badge.bad{background:#f4d3c6;color:#8a2e12}.badge.warn{background:#f6e7bf;color:#6b4d00}
.empty{padding:30px;border:1px dashed var(--line);border-radius:14px;grid-column:1/-1;margin:0}
.firstnotice h3{margin:0 0 8px}.firstnotice p{max-width:620px}
/* nyhetsbrev */
.newsletter{background:var(--ink);color:#fffdf4;border-radius:16px;padding:46px;display:grid;grid-template-columns:1fr 1fr;gap:50px;margin:56px 0}
.newsletter h2{font-size:34px}.newsletter p{line-height:1.6;color:#d2dace}.newsletter a{color:#fffdf4}
.newsletter form{align-self:center}.newsletter input[type=email]{width:100%;margin-top:6px}
.newsletter fieldset{border:0;padding:0;margin:12px 0 0}.newsletter legend{font-size:12px;letter-spacing:1px;text-transform:uppercase;color:#b9c6b5;margin-bottom:2px}
.newsletter label{display:inline-flex;gap:7px;margin:8px 14px 4px 0;font-size:14px;align-items:center}
.newsletter details{margin-top:12px}.newsletter summary{cursor:pointer;font-size:14px;color:#d2dace}
.genderpick{display:flex;flex-wrap:wrap;align-items:center;gap:0 4px;margin:6px 0 0;padding:8px 12px;border:1px solid #3d5c52;border-radius:10px}.genderpick .small{margin-right:8px;color:#b9c6b5}.genderpick[hidden]{display:none}input[type=radio]{width:16px;height:16px;accent-color:#f1b394;min-width:0;padding:0}.newsletter .hint{color:#b9c6b5;margin:4px 0 0}.brandpick{display:grid;grid-template-columns:1fr 1fr;max-height:190px;overflow:auto;padding:4px 0}.brandpick label{margin:5px 0;font-size:13px}
.newsletter .consent{display:flex;align-items:flex-start;margin-top:16px}.newsletter .consent input{margin-top:4px;flex:0 0 18px}
.newsletter button{background:#f1b394;color:var(--ink);margin-top:10px}
input[type=checkbox]{min-width:0;width:18px;height:18px;accent-color:#f1b394;padding:0}
.feedback{font-weight:700;min-height:1em}.feedback a{word-break:break-all}
.hp{position:absolute!important;left:-5000px!important;height:1px;overflow:hidden}
/* lenkegrid */
.linkgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:14px}
.linkgrid a{border:1px solid var(--line);border-radius:12px;padding:16px 18px;background:var(--card);display:flex;flex-direction:column;gap:2px}.linkgrid a:hover{border-color:#9ba992}
.business{display:flex;justify-content:space-between;align-items:center;gap:40px;padding-bottom:30px}.business p{max-width:580px;line-height:1.7}
.faq details{border-bottom:1px solid var(--line);padding:14px 0}.faq summary{cursor:pointer;font-weight:700}.faq p{max-width:760px;line-height:1.7;color:#536359}
.history ul{padding-left:20px;line-height:1.9}.disclaimer{margin-bottom:40px}
.prose{max-width:760px}.prose p{line-height:1.75}.prose h2{font-size:22px;margin-top:28px}
/* salgsside */
.sale-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:48px;margin:20px 0 56px}
.sale-title{font-size:clamp(34px,4.6vw,56px);letter-spacing:-2px;line-height:1.08;margin:14px 0 18px}
.sale-art{height:280px;border-radius:16px;margin:28px 0}
.info-panel{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:28px;align-self:start;position:sticky;top:16px}
.info-panel h2,.content h2{font-size:24px}.info-panel dl{margin:16px 0}.info-panel dt{font-size:12px;text-transform:uppercase;letter-spacing:1px;margin-top:20px;color:#647166}.info-panel dd{margin:6px 0 0;line-height:1.6}
.hours{width:100%;border-collapse:collapse;font-size:14px}.hours caption{text-align:left}.hours td{padding:10px 0;border-bottom:1px solid var(--line)}.hours td:last-child{text-align:right}
.content p{line-height:1.8}.source-box{background:#e9ede1;padding:22px 24px;border-radius:12px;margin:24px 0}.source-box p{margin:8px 0}
.status{background:#e9ede1;border-radius:10px;padding:14px 18px;margin:0 0 18px}.status.bad{background:#f4d3c6;color:#6e230d}.status.warn{background:#f6e7bf;color:#4f3900}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.related a{display:block;padding:18px 0;border-bottom:1px solid var(--line)}
.info-panel .button{display:block;text-align:center;margin-top:22px}
/* skjema for innmelding */
.narrow main{max-width:880px}
.submitform fieldset{border:1px solid var(--line);border-radius:14px;padding:22px;margin:0 0 20px;background:var(--card)}
.submitform legend{font-weight:700;padding:0 8px}
.submitform label{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:500;margin-bottom:14px;flex:1}
.submitform .row{display:flex;gap:14px}.submitform .consent{flex-direction:row;align-items:flex-start;gap:10px}.submitform .consent input{margin-top:3px;accent-color:var(--ink)}
.submitform{margin-bottom:56px}
/* footer */
footer.site{border-top:1px solid var(--line);padding-top:30px;padding-bottom:36px;display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:24px;font-size:14px}
footer.site a:not(.logo){display:block;padding:3px 0;color:#435a50}footer.site .eyebrow{margin-bottom:8px;font-size:11px}
/* admin */
.admin main{padding-bottom:60px}.admin-login{max-width:480px;padding:40px 0}.admin-login form{display:flex;gap:10px}
.item{border:1px solid var(--line);border-radius:12px;background:var(--card);margin:12px 0;padding:18px 20px}
.item header{display:flex;justify-content:space-between;gap:12px;align-items:start;height:auto;padding:0}
.item h3{margin:0 0 4px;font-size:18px}.item form{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px;margin-top:14px}
.item form label{display:flex;flex-direction:column;gap:4px;font-size:13px}.item form .wide{grid-column:1/-1}
.item form input,.item form select,.item form textarea{padding:9px 12px;min-height:0;font-size:14px}
.item .btns{grid-column:1/-1;display:flex;gap:8px;flex-wrap:wrap}.item .btns button{padding:9px 16px}
.btn-danger{border-color:#8a2e12!important;color:#8a2e12!important}
@media(max-width:980px){.grid{grid-template-columns:repeat(2,1fr)}.linkgrid{grid-template-columns:repeat(2,1fr)}footer.site{grid-template-columns:1fr 1fr}}
@media(max-width:800px){
 header.site,main,footer.site{padding-left:20px;padding-right:20px}header.site{height:66px}.logo{font-size:23px}
 header.site nav a:not(.pill){display:none}.pill{padding:10px 16px;font-size:14px}
 .hero{display:block;padding:16px 0}.hero h1{font-size:29px;letter-spacing:-1px}.hero .search{margin-top:16px;gap:8px}.hero .search select{flex:1}.hero .search .button{padding:14px 18px}
 .brandhero .button{margin-top:16px}
 .cities{display:none}.grid{grid-template-columns:minmax(0,1fr)}.empty .button{white-space:normal;text-align:center}.art{height:170px}
 .sectionhead{align-items:start;flex-direction:column;gap:6px}h2{font-size:25px}
 .selects select{flex:1 1 45%}
 .newsletter{grid-template-columns:1fr;padding:26px;gap:10px;margin:40px 0}.newsletter h2{font-size:28px}
 .business{flex-direction:column;align-items:start}.linkgrid{grid-template-columns:1fr 1fr}
 .sale-layout{grid-template-columns:1fr;gap:16px}.sale-art{height:200px}.info-panel{position:static}
 .submitform .row{flex-direction:column;gap:0}.item form{grid-template-columns:1fr}
 footer.site{grid-template-columns:1fr}
}
.ico{width:14px;height:14px;vertical-align:-2px;margin-right:4px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.cityabout,.brandabout{margin:36px 0}.outletnote{margin-top:14px}
