/* Mat i hagen – referanse-CSS. Gjengir prototypen 1:1. Bruddpunkt: 999.98px. */
:root{
  --plomme:#4a2c3a;--mose:#2F3E1B;--koks:#2B2A29;--terrakotta:#D27D56;--terrakotta-hover:#bc6a43;
  --bakgrunn:#FBFBFA;--hvit:#FFFFFF;--faktaboks:#EAECE6;--faktaboks-hover:#dfe3d7;--ramme:#d6d9cf;
  --dempet:#6b6a68;--feil:#a5432a;
  --serif:'Lora',Georgia,serif;--sans:'Montserrat',system-ui,sans-serif;
  --wrap:1120px;--side:40px;--box-pad:30px 34px;--h1:52px;
}
@media (max-width:999.98px){:root{--side:20px;--box-pad:22px;--h1:36px}}

*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--bakgrunn);color:var(--koks);font:16px/1.65 var(--serif);overflow-anchor:none}
img{max-width:100%;height:auto;display:block}
a{color:var(--plomme)}a:hover{color:var(--terrakotta-hover)}
:focus-visible{outline:2px solid var(--terrakotta);outline-offset:2px}
input,textarea,button{font-family:inherit}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}

.mih-wrap{max-width:var(--wrap);margin:0 auto;padding-left:var(--side);padding-right:var(--side)}

/* Header */
.site-header{position:sticky;top:0;z-index:20;background:var(--hvit);border-bottom:3px solid var(--terrakotta);transition:box-shadow .25s}
.site-header__top{max-width:var(--wrap);margin:0 auto;padding:22px 40px 10px;display:flex;align-items:center;justify-content:space-between;gap:24px;transition:padding .25s}
.site-logo img{height:86px;width:auto;transition:height .25s}
.is-scrolled .site-header{box-shadow:0 4px 14px rgba(47,62,27,.10)}
.is-scrolled .site-header__top{padding:8px 40px 0}
.is-scrolled .site-logo img{height:52px}
.search-form{display:flex;gap:8px}
.search-form input{border:1px solid var(--ramme);border-radius:6px;padding:11px 14px;width:240px;font:500 16px var(--sans);color:var(--koks);background:var(--hvit);outline-color:var(--terrakotta)}
.primary-nav ul{list-style:none;margin:0 auto;max-width:var(--wrap);padding:0 40px;display:flex;flex-wrap:wrap;column-gap:28px;row-gap:0}
.primary-nav a{display:block;padding:14px 0;font:600 16px var(--sans);color:var(--mose);text-decoration:none;border-bottom:3px solid transparent}
.primary-nav a:hover{color:var(--terrakotta-hover)}
.primary-nav .current-menu-item>a,.primary-nav .current-post-ancestor>a,.primary-nav .current-category-ancestor>a,.primary-nav .current-menu-parent>a{border-bottom-color:var(--terrakotta)}
.menu-toggle,.mobile-menu{display:none}

/* Knapper */
.btn{display:inline-block;font:700 17px var(--sans);background:var(--terrakotta);color:#fff;padding:14px 30px;border-radius:6px;border:0;text-decoration:none;cursor:pointer;transition:background-color .3s}
.btn:hover{background:var(--terrakotta-hover);color:#fff}
.btn--search{font-size:15px;padding:0 18px}
.btn--block{display:block;width:100%;font-size:16px;padding:13px 20px}
.btn-outline{display:inline-block;font:700 16px var(--sans);color:var(--mose);border:2px solid var(--mose);padding:12px 28px;border-radius:6px;text-decoration:none;background:none;cursor:pointer}
.btn-outline:hover{background:var(--mose);color:#fff}
.btn-outline--sm{font-size:15px;padding:10px 20px}
.link-arrow{font:600 16px var(--sans);color:var(--mose)}

/* Annonser */
.ad{display:flex;flex-direction:column;align-items:center;gap:6px}
.ad--top{padding:22px 0}
.ad__label{font:500 11px var(--sans);letter-spacing:.1em;color:var(--dempet);text-transform:uppercase}
.ad__slot{display:flex;align-items:center;justify-content:center;max-width:100%}
.ad--728x90 .ad__slot{width:728px;min-height:90px}
.ad--320x100 .ad__slot{width:320px;min-height:100px}
.ad--300x250 .ad__slot{width:300px;min-height:250px}
.ad--300x600 .ad__slot{width:300px;min-height:600px}
.ad--336x280 .ad__slot{width:100%;max-width:336px;min-height:280px}
.ad--article{padding:6px 0}
.ad__placeholder{width:100%;height:100%;min-height:inherit;background:repeating-linear-gradient(45deg,#ecebe7 0 10px,#f4f3f0 10px 20px);border:1px dashed #c9c7c0;display:flex;align-items:center;justify-content:center;font:500 12px ui-monospace,Menlo,monospace;color:#77756f;letter-spacing:.08em}

/* Layout */
.site-main{max-width:var(--wrap);margin:0 auto;padding:8px 40px 64px;display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:48px}
.content{display:grid;gap:40px;align-content:start;min-width:0}
.sidebar{display:grid;gap:32px;align-content:start}

/* Typografi */
.kicker{font:700 13px var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--terrakotta);text-decoration:none}
.kicker--sm{font-size:12px}.kicker--xs{font-size:11px}.kicker--wide{font-size:12px;letter-spacing:.1em}
.h1{margin:0;font:600 var(--h1)/1.15 var(--serif);color:var(--plomme);text-wrap:balance}
.h2{margin:0;font:700 28px/1.25 var(--sans);letter-spacing:-.02em;color:var(--mose)}
.h4{margin:0;font:700 21px var(--sans);letter-spacing:-.02em;color:var(--mose)}
.lead{margin:0;font:400 18px/1.6 var(--serif);color:var(--koks);text-wrap:pretty}
.meta{font:500 15px var(--sans);color:var(--dempet)}

/* Hero */
.hero{display:grid;gap:16px}
.hero__img{display:block;aspect-ratio:16/8;border-radius:8px;overflow:hidden;background:var(--faktaboks)}
.hero__img img{width:100%;height:100%;object-fit:cover}

/* Bokser */
.box{background:var(--faktaboks);border-radius:8px;padding:var(--box-pad);display:grid;gap:12px}
.box ul,.entry-content ul,.entry-content ol{margin:0;padding-left:22px;font:16px/1.75 var(--serif);color:var(--koks)}

/* Kort */
.cards{display:grid;grid-template-columns:1fr 1fr;gap:30px 28px}
.card{display:grid;gap:12px 14px;text-decoration:none;align-items:start}
.card:hover{opacity:.85}
.card__img{aspect-ratio:3/2;border-radius:6px;overflow:hidden;background:var(--faktaboks)}
.card__img img{width:100%;height:100%;object-fit:cover}
.card__body{display:grid;gap:6px}
.card__title{margin:0;font:700 22px/1.3 var(--sans);letter-spacing:-.02em;color:var(--mose)}
.card__excerpt{margin:0;font:16px/1.6 var(--serif);color:var(--koks)}
.section{display:grid;gap:22px}
.center{display:flex;justify-content:center}

/* Brødsmulesti */
.breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;font:500 15px/1.4 var(--sans);color:var(--dempet)}
.breadcrumbs a{display:flex;align-items:center;gap:7px;color:var(--mose);text-decoration:none;background:var(--faktaboks);padding:6px 12px;border-radius:999px}
.breadcrumbs a:hover{background:var(--faktaboks-hover);color:var(--mose)}
.breadcrumbs .home::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--terrakotta)}
.breadcrumbs .sep{color:var(--terrakotta);font-weight:700}
.breadcrumbs .current{color:var(--plomme);font-weight:600;max-width:360px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* Artikkel */
.article{display:grid;gap:20px;max-width:700px}
.article__img{aspect-ratio:16/9;border-radius:8px;overflow:hidden}
.article__img img{width:100%;height:100%;object-fit:cover}
.article .lead{line-height:1.65}
.entry-content{display:grid;gap:20px}
.entry-content>*{margin:0}
.entry-content p{font:16px/1.7 var(--serif);color:var(--koks);text-wrap:pretty}
.entry-content h2{margin:12px 0 0;font:700 30px/1.25 var(--sans);letter-spacing:-.02em;color:var(--mose)}
.entry-content h3{font:700 22px/1.3 var(--sans);letter-spacing:-.02em;color:var(--mose)}
.entry-content img{border-radius:8px}
.entry-content figcaption{font:500 14px var(--sans);color:var(--dempet);margin-top:8px}
.entry-content blockquote{border-left:3px solid var(--terrakotta);padding-left:20px;font:italic 18px/1.6 var(--serif)}
.entry-content .is-style-fakta{background:var(--faktaboks);border-radius:8px;padding:var(--box-pad);display:grid;gap:10px}
.entry-content .is-style-fakta>*{margin:0}
.entry-content .is-style-fakta h3{font-size:22px}
.entry-content .is-style-fakta ul{line-height:1.75}
.article__footer{border-top:1px solid var(--faktaboks);padding-top:22px;display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.article__footer .home-link{font:600 15px var(--sans);color:var(--mose)}

/* Relevante artikler */
.related{margin-top:16px;background:var(--faktaboks);border-radius:8px;padding:var(--box-pad);display:grid;gap:20px}
.related__head{display:grid;gap:4px}
.related__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.rcard{display:grid;gap:12px 14px;align-content:start;background:var(--bakgrunn);border-radius:6px;padding:12px;text-decoration:none;transition:transform .2s,box-shadow .2s}
.rcard:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(47,62,27,.12)}
.rcard__img{aspect-ratio:3/2;border-radius:4px;overflow:hidden;background:#dfe3d7}
.rcard__img img{width:100%;height:100%;object-fit:cover}
.rcard__body{display:grid;gap:6px;align-content:start}
.rcard__title{margin:0;font:700 19px/1.3 var(--sans);letter-spacing:-.01em;color:var(--mose)}
.rcard__meta{font:500 13px var(--sans);color:var(--dempet)}

/* Sidekolonne */
.cat-list{display:grid}
.cat-list a{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--faktaboks);font:16px/1 var(--serif);color:var(--koks);text-decoration:none}
.cat-list a:hover{color:var(--terrakotta-hover)}
.cat-list .count{font:500 14px var(--sans);color:var(--dempet)}
.widget-block{display:grid;gap:12px}
.newsletter{background:var(--faktaboks);border-radius:8px;padding:24px;display:grid;gap:12px}
.newsletter p{margin:0;font:16px/1.6 var(--serif)}

/* Skjema */
.field{display:grid;gap:6px;font:600 15px var(--sans);color:var(--mose)}
.field input,.field textarea,.newsletter input{border:1px solid var(--ramme);border-radius:6px;padding:13px 14px;font:16px/1.5 var(--serif);color:var(--koks);background:var(--hvit)}
.newsletter input{font:500 16px var(--sans);padding:12px 14px}
.field textarea{resize:vertical}
.has-error input,.has-error textarea,.newsletter.has-error input{border-color:var(--feil)}
.field-error{font:600 14px var(--sans);color:var(--feil);margin-top:-10px}
.form-box{background:var(--faktaboks);border-radius:8px;padding:var(--box-pad);display:grid;gap:16px}
.contact{display:grid;gap:20px;max-width:640px}
.page-narrow{display:grid;gap:20px;max-width:700px}
.empty{background:var(--faktaboks);border-radius:8px;padding:28px;font:16px/1.65 var(--serif)}

/* Paginering */
.pagination .nav-links{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;font:600 15px var(--sans)}
.pagination .page-numbers{min-width:44px;height:44px;padding:0 12px;display:flex;align-items:center;justify-content:center;border:1px solid var(--ramme);border-radius:6px;color:var(--mose);text-decoration:none}
.pagination .current{background:var(--mose);border-color:var(--mose);color:#fff}

/* Footer */
.site-footer{background:var(--mose);color:#EAECE6;padding:36px 0;border-top:4px solid var(--terrakotta)}
.site-footer__inner{max-width:var(--wrap);margin:0 auto;padding:0 var(--side);display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px}
.site-footer__brand{display:flex;align-items:center;gap:14px}
.site-footer__brand img{width:52px;height:52px;border-radius:50%}
.site-footer__name{font:600 21px var(--serif);color:#fff}
.site-footer__tag{font:italic 16px var(--serif)}
.footer-nav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:24px}
.footer-nav a{font:600 15px var(--sans);color:#EAECE6;text-decoration:none}
.footer-nav a:hover{color:#fff}

/* ---------- Mobil (< 1000px) ---------- */
@media (max-width:999.98px){
  .site-header{padding:10px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px}
  .site-header__top{padding:0;display:contents}
  .site-header .search-form,.primary-nav{display:none}
  .site-logo img,.is-scrolled .site-logo img{height:50px}
  .is-scrolled .site-header{box-shadow:none}
  .menu-toggle{display:flex;align-items:center;gap:8px;background:transparent;color:var(--mose);border:1px solid var(--ramme);border-radius:6px;height:44px;padding:0 14px;font:600 14px var(--sans);cursor:pointer}
  .menu-toggle__bars{display:grid;gap:3px}
  .menu-toggle__bars span{display:block;width:16px;height:2px;background:var(--terrakotta);border-radius:2px}
  .mobile-menu.is-open{display:grid;gap:4px;background:var(--hvit);border-bottom:1px solid var(--faktaboks);padding:8px 20px 22px;box-shadow:0 10px 20px rgba(0,0,0,.08)}
  .mobile-menu .search-form{padding:8px 0 10px}
  .mobile-menu .search-form input{flex:1;min-width:0;width:auto;padding:12px 14px}
  .mobile-menu .btn--search{padding:0 16px}
  .mobile-menu ul{list-style:none;margin:0;padding:0}
  .mobile-menu a{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:50px;border-bottom:1px solid var(--faktaboks);font:600 18px var(--sans);color:var(--mose);text-decoration:none;white-space:nowrap}
  .mobile-menu a::after{content:"›";color:var(--terrakotta);font-size:22px}
  .ad--top{padding:16px}
  .site-main{padding:4px 20px 36px;grid-template-columns:minmax(0,1fr)}
  .sidebar{display:none}
  .hero__img{aspect-ratio:4/3}
  .cards{grid-template-columns:1fr}
  .card{grid-template-columns:104px 1fr}
  .card__img{aspect-ratio:1}
  .card__excerpt{display:none}
  .card__title{font-size:22px}
  .breadcrumbs .current{max-width:150px}
  .related__grid{grid-template-columns:1fr}
  .rcard{grid-template-columns:88px 1fr}
  .rcard__img{aspect-ratio:1}
  .newsletter{padding:22px}
  .newsletter .btn--block{min-height:50px}
}
@media (min-width:1000px){.only-mobile{display:none!important}}
@media (max-width:999.98px){.only-desktop{display:none!important}}
@media (prefers-reduced-motion:reduce){*{transition:none!important;transform:none!important}}

/* WordPress templates and native forms. Reference tokens/layout above stay intact. */
/* Prototype's 1120px is the content width; padding sits outside that maximum. */
.mih-wrap,.site-header__top,.primary-nav>ul,.site-main,.site-footer__inner{box-sizing:content-box}
@media(min-width:1000px){.site-header__top .search-form input{box-sizing:content-box}}
[hidden]{display:none!important}
.skip-link:focus{clip:auto!important;width:auto;height:auto;top:8px;left:8px;padding:12px;background:#fff;z-index:10000}
.site-logo a{display:block}.site-logo img{max-width:100%;object-fit:contain}
.lead p,.archive-intro p,.form-box p{margin:0}
.archive-section{display:grid;gap:24px}.archive-intro{margin:0;font:16px/1.65 var(--serif)}
.image-placeholder{display:block;width:100%;height:100%;background:repeating-linear-gradient(135deg,#dfe3d7 0 12px,#e8ebe2 12px 24px)}
.page-portrait{aspect-ratio:4/3;max-width:420px;border-radius:8px;overflow:hidden}
.page-portrait img{height:100%;width:100%;object-fit:cover}
.entry-content{min-width:0}.entry-content figure{margin:0;border-radius:8px}
.entry-content h4{font:700 21px/1.3 var(--sans);color:var(--mose)}
.entry-content .wp-block-group__inner-container{display:grid;gap:20px}
.entry-content .is-style-fakta>.wp-block-group__inner-container{gap:10px}
.entry-content .wp-block-group__inner-container>*{margin:0}
.entry-content blockquote p{font:italic 18px/1.6 var(--serif)}
.entry-content .wp-block-button__link{font:700 17px var(--sans);background:var(--terrakotta);color:#fff;padding:14px 30px;border-radius:6px;text-decoration:none}
.entry-content .wp-block-button__link:hover{background:var(--terrakotta-hover)}
.newsletter-form{display:grid;gap:12px}.newsletter-form input{width:100%;min-width:0}
.newsletter .field-error{margin-top:0}.contact-thanks{font-size:26px}.contact-submit{padding:14px 32px}
.field input,.field textarea{width:100%;min-width:0}.field-error[hidden]{display:none}
.mih-honeypot{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.btn:disabled{opacity:.65;cursor:wait}
.primary-nav li{position:relative}
.primary-nav ul ul{display:none;position:absolute;top:100%;left:-16px;min-width:220px;background:#fff;padding:6px 16px;box-shadow:0 4px 14px rgba(47,62,27,.1);z-index:21}
.primary-nav li:hover>ul,.primary-nav li:focus-within>ul{display:block}
.primary-nav ul ul a{padding:12px 0}
.ad__slot:has(>script){display:block}.ad__slot iframe,.ad__slot img{max-width:100%}
.mih-external-form form{display:grid;gap:16px}.mih-external-form p{margin:0}
.mih-external-form label{display:grid;gap:6px;font:600 15px var(--sans);color:var(--mose)}
.mih-external-form input:not([type=submit]):not([type=checkbox]):not([type=radio]),.mih-external-form textarea{width:100%;min-width:0;border:1px solid var(--ramme);border-radius:6px;padding:13px 14px;font:16px/1.5 var(--serif);color:var(--koks);background:#fff}
.mih-external-form input[type=submit],.mih-external-form button[type=submit]{font:700 16px var(--sans);background:var(--terrakotta);color:#fff;padding:13px 20px;border-radius:6px;border:0;cursor:pointer}
.mih-external-form input[type=submit]:hover{background:var(--terrakotta-hover)}
.mih-external-form .wpcf7-not-valid{border-color:var(--feil)!important}
.mih-external-form .wpcf7-not-valid-tip{font:600 14px var(--sans);color:var(--feil)}
.mih-external-form .wpcf7-response-output{margin:0;padding:12px;border-radius:6px;font:600 14px var(--sans)}
.newsletter .mih-external-form input[type=submit]{width:100%}
.cat-list a{gap:12px;line-height:1.4}
.widget-block h2,.widget-block h3,.widget-block .wp-block-search__label{margin:0;font:700 21px/1.3 var(--sans);letter-spacing:-.02em;color:var(--mose)}
.widget-block p,.widget-block ul{margin:0}.widget-block ul{padding-left:22px}.widget-block li+li{margin-top:6px}
.widget-block .wp-block-search__inside-wrapper{margin-top:12px;gap:8px}
.widget-block .wp-block-search__input{min-width:0;border:1px solid var(--ramme);border-radius:6px;padding:11px 14px;font:500 16px var(--sans)}
.widget-block .wp-block-search__button{margin:0;border:0;border-radius:6px;background:var(--terrakotta);color:#fff;padding:0 18px;font:700 15px var(--sans)}
.admin-bar .site-header{top:32px}
@media(max-width:999.98px){
  .site-logo{min-width:0}.site-logo img{height:auto;max-height:50px;width:auto}.menu-toggle{flex-shrink:0}
  .mobile-menu .sub-menu{padding-left:16px}.mobile-menu .current-menu-item>a,.mobile-menu .current-category-ancestor>a{color:var(--terrakotta-hover)}
  .site-header .site-logo{flex-shrink:1}.mih-external-form input[type=submit]{min-height:50px}
}
@media(max-width:782px){.admin-bar .site-header{top:46px}}
@media(max-width:600px){.admin-bar .site-header{top:0}}
