/* Fence Header 1.2.0 — Klikkbar Media
   Farger/fonter: endre variablene under. Alt annet er struktur. */
.fh{
  --fh-bg:#151C24; --fh-top-bg:#11171E; --fh-panel:#1B242E;
  --fh-hair:rgba(220,232,244,.14); --fh-hair2:rgba(220,232,244,.08);
  --fh-text:#ECF2F8; --fh-muted:#AEBDCB; --fh-faint:#94A3B2; --fh-accent:#80C183; /* samme grønn som Divi-aksentfargen */
  --fh-cta-bg:#ECF2F8; --fh-cta-text:#151C24;
  --fh-sans:"IBM Plex Sans",system-ui,sans-serif; --fh-mono:"IBM Plex Mono",ui-monospace,monospace;
  --fh-width:90%; --fh-maxw:1450px; /* samme som radene på siden */
  --fh-pad:5vw; /* = sidemargen ved 90 % bredde, brukes i mobilmenyen */
  --fh-bar-h:80px; --fh-ab:0px;
  position:relative; z-index:9999; font-family:var(--fh-sans); color:var(--fh-text); line-height:1.4;
  -webkit-font-smoothing:antialiased;
}
body.admin-bar .fh{--fh-ab:32px}
@media (max-width:782px){body.admin-bar .fh{--fh-ab:46px}}
@media (max-width:600px){body.admin-bar .fh{--fh-ab:0px}}

/* Nullstill Divi-arv */
.fh *,.fh *::before,.fh *::after{box-sizing:border-box}
.fh .fh-menu,.fh .fh-cols,.fh .fh-sub,.fh .fh-drop{list-style:none;margin:0;padding:0;line-height:inherit}
.fh :where(a){text-decoration:none;color:inherit}
.fh :where(button){font:inherit;color:inherit;background:none;border:0;margin:0;padding:0;cursor:pointer;border-radius:0;-webkit-appearance:none;appearance:none}
.fh :focus-visible{outline:1px solid var(--fh-accent);outline-offset:3px}
.fh-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
#page-container:has(.fh){padding-top:0!important}

.fh-wrap{width:var(--fh-width);max-width:var(--fh-maxw);margin:0 auto;padding:0}
.fh-mono,.fh-top,.fh-link,.fh-kicker,.fh-idx,.fh-all,.fh-cta,.fh-burger{font-family:var(--fh-mono);text-transform:uppercase}

/* ---------- Varsellinje ---------- */
.fh-top{background:var(--fh-top-bg);border-bottom:1px solid var(--fh-hair2);font-size:11px;letter-spacing:.12em}
.fh-top .fh-wrap{display:flex;justify-content:space-between;align-items:center;gap:18px;min-height:40px}
.fh-status{display:flex;align-items:center;gap:10px;color:var(--fh-muted);min-width:0;white-space:nowrap}
.fh-dot{width:7px;height:7px;background:var(--fh-accent);flex:none}
.fh-status-x{overflow:hidden;text-overflow:ellipsis}
.fh-meta{display:flex;align-items:center;gap:28px;white-space:nowrap}
.fh-loc{color:var(--fh-faint)}
.fh-phone{color:var(--fh-text);font-weight:500;padding:10px 0}
.fh-phone:hover{color:#fff;text-decoration:underline;text-decoration-color:var(--fh-accent);text-underline-offset:4px}

/* ---------- Hovedlinje ---------- */
.fh-barwrap{height:var(--fh-bar-h)}
.fh-bar{position:relative;background:var(--fh-bg);border-bottom:1px solid transparent;transition:border-color .25s,background .25s}
.fh.is-stuck .fh-bar{position:fixed;top:var(--fh-ab);left:0;right:0;background:rgba(21,28,36,.97);border-bottom-color:var(--fh-hair)}
.fh-bar>.fh-wrap{display:flex;align-items:stretch;justify-content:space-between;gap:28px;height:var(--fh-bar-h)}
.fh-logo{display:flex;align-items:center;flex:none;line-height:0}
.fh-logo img{height:40px;width:auto;display:block}
.fh-actions{display:flex;align-items:center;gap:18px;flex:none}

.fh-cta{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:13px 22px;font-size:11.5px;letter-spacing:.14em;font-weight:500;
  background:var(--fh-cta-bg);color:var(--fh-cta-text)!important;border:1px solid var(--fh-cta-bg);transition:background .2s,border-color .2s}
.fh-cta:hover{background:#fff;border-color:#fff}
.fh-burger,.fh-nav-foot,.fh-sub-toggle{display:none}

/* Felles innhold i panel */
.fh-kicker{font-size:11px;letter-spacing:.16em;color:var(--fh-faint)}
.fh-desc{font-size:15px;line-height:1.6;color:var(--fh-muted);max-width:34ch}
.fh-all{display:inline-flex;align-items:center;gap:10px;font-size:11px;letter-spacing:.14em;color:var(--fh-text);padding:10px 0;border-bottom:1px solid var(--fh-hair)}
.fh-all:hover{border-color:var(--fh-accent)}
.fh-arrow{transition:transform .2s}.fh-all:hover .fh-arrow{transform:translateX(3px)}
.fh-idx{display:block;font-size:10px;letter-spacing:.18em;color:var(--fh-faint)}
.fh-col-title{font-size:15.5px;font-weight:500;color:var(--fh-text)}
a.fh-col-title:hover{text-decoration:underline;text-decoration-color:var(--fh-accent);text-underline-offset:5px}
.fh-col-desc{display:block;font-size:13.5px;line-height:1.55;color:var(--fh-faint);margin:-6px 0 12px}
.fh-sublink,.fh-droplink{position:relative;display:block;font-size:14.5px;line-height:1.45;color:var(--fh-muted);padding:7px 0;transition:color .15s,padding .2s}
.fh-sublink::before,.fh-droplink::before{content:"";position:absolute;left:0;top:50%;width:0;height:1px;background:var(--fh-accent);transition:width .2s}
.fh-sublink:hover,.fh-droplink:hover,.fh-sublink[aria-current]{color:var(--fh-text);padding-left:16px}
.fh-sublink:hover::before,.fh-sublink[aria-current]::before{width:9px}
.fh-droplink:hover{padding-left:40px}.fh-droplink:hover::before{left:24px;width:9px}

/* Kolonne uten undersider = klikkbart kort */
.fh-card{display:flex;flex-direction:column;gap:12px;color:var(--fh-text)}
.fh-card .fh-col-title{display:flex;align-items:baseline;justify-content:space-between;gap:14px}
.fh-card .fh-arrow{font-family:var(--fh-mono);font-size:13px;color:var(--fh-faint)}
.fh-card .fh-col-desc{margin:0;color:var(--fh-faint);transition:color .2s}
.fh-card:hover .fh-arrow{transform:translateX(4px);color:var(--fh-accent)}
.fh-card:hover .fh-col-desc{color:var(--fh-muted)}

/* ---------- Desktop-meny ---------- */
@media (min-width:1100px){
  .fh-nav{flex:1;display:flex;justify-content:center}
  .fh-menu{display:flex;gap:clamp(22px,2.6vw,40px)}
  .fh-item{display:flex;align-items:center}
  .fh-item:not(.has-mega){position:relative}
  .fh-link{position:relative;display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:11.5px;letter-spacing:.14em;color:var(--fh-muted);transition:color .2s;white-space:nowrap}
  .fh-link::after{content:"";position:absolute;left:0;bottom:8px;height:1px;width:0;background:var(--fh-accent);transition:width .28s}
  .fh-link:hover,.fh-item.is-open>.fh-link,.fh-item.is-current>.fh-link{color:var(--fh-text)}
  .fh-link:hover::after,.fh-item.is-open>.fh-link::after,.fh-item.is-current>.fh-link::after{width:100%}
  .fh-chev{width:5px;height:5px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:translateY(-2px) rotate(45deg);opacity:.6;transition:transform .2s}
  .fh-item.is-open .fh-chev{transform:translateY(1px) rotate(-135deg)}

  .fh-panel{position:absolute;top:100%;left:0;right:0;background:var(--fh-panel);border-top:1px solid var(--fh-hair);border-bottom:1px solid var(--fh-hair);
    box-shadow:0 30px 60px -30px rgba(0,0,0,.6);visibility:hidden;opacity:0;transform:translateY(-6px);
    transition:opacity .18s ease,transform .18s ease,visibility 0s linear .18s;max-height:calc(100vh - 140px);overflow-y:auto}
  .fh-item.is-open>.fh-panel{visibility:visible;opacity:1;transform:none;transition-delay:0s}
  .fh-item:not(.has-mega)>.fh-panel{left:-24px;right:auto;min-width:290px;border:1px solid var(--fh-hair)}

  /* Megameny */
  .fh-mega{display:grid;grid-template-columns:minmax(200px,.9fr) 3.1fr;padding-top:40px;padding-bottom:44px}
  .fh-intro{display:flex;flex-direction:column;align-items:flex-start;gap:14px;padding-right:36px}
  .fh-mega:not(:has(.fh-desc,.fh-all)){grid-template-columns:1fr}
  .fh-mega:not(:has(.fh-desc,.fh-all)) .fh-intro{display:none}
  .fh-cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));row-gap:36px}
  .fh-col{padding:0 28px;border-left:1px solid var(--fh-hair2)}
  .fh-col-head{display:block;margin:10px 0 14px}
  .fh-col--card{position:relative;padding-top:0;padding-bottom:0}
  .fh-col--card::before{content:"";position:absolute;left:-1px;top:0;bottom:0;width:1px;background:var(--fh-accent);transform:scaleY(0);transform-origin:top;transition:transform .3s}
  .fh-col--card:hover::before{transform:scaleY(1)}
  .fh-card{height:100%;padding-bottom:6px}
  .fh-card .fh-col-title{margin-top:-2px}
  .fh-sub li+li{margin-top:2px}
  /* Dropdown */
  .fh .fh-drop{padding:10px 0}
  .fh-droplink{padding:11px 24px}
  .fh-drop-all{margin-top:8px;padding:14px 24px 6px;border-top:1px solid var(--fh-hair2)}
}

@media (min-width:1100px) and (max-width:1279px){
  .fh-mega{grid-template-columns:160px 1fr}
  .fh-intro{padding-right:24px}
  .fh-desc{display:none}
  .fh-col{padding:0 20px}
}

/* ---------- Nettbrett og mobil ---------- */
@media (max-width:1099px){
  .fh{--fh-bar-h:68px}
  .fh-logo img{height:34px}
  .fh-burger{display:inline-flex;align-items:center;gap:12px;min-height:44px;padding:0 2px;font-size:11px;letter-spacing:.18em;color:var(--fh-text)}
  .fh-burger-i{position:relative;width:20px;height:9px}
  .fh-burger-i::before,.fh-burger-i::after{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:currentColor;transition:transform .2s,top .2s}
  .fh-burger-i::after{top:8px}
  .fh.is-menu-open .fh-burger-i::before{top:4px;transform:rotate(45deg)}
  .fh.is-menu-open .fh-burger-i::after{top:4px;transform:rotate(-45deg)}

  .fh-nav{position:fixed;left:0;right:0;top:var(--fh-drawer-top,108px);bottom:0;background:var(--fh-bg);border-top:1px solid var(--fh-hair);
    overflow-y:auto;overscroll-behavior:contain;visibility:hidden;opacity:0;transition:opacity .2s,visibility 0s linear .2s}
  .fh.is-menu-open .fh-nav{visibility:visible;opacity:1;transition-delay:0s}
  .fh-item{border-bottom:1px solid var(--fh-hair2)}
  .fh-link{display:flex;width:100%;justify-content:space-between;align-items:center;min-height:60px;padding:0 var(--fh-pad);font-size:12.5px;letter-spacing:.14em;color:var(--fh-text);text-align:left}
  .fh-item.is-current>.fh-link{box-shadow:inset 2px 0 0 var(--fh-accent)}
  .fh-chev{width:8px;height:8px;border-right:1px solid var(--fh-faint);border-bottom:1px solid var(--fh-faint);transform:rotate(45deg);transition:transform .2s;margin-right:4px}
  .fh-item.is-open>.fh-link .fh-chev{transform:rotate(-135deg)}

  .fh-panel{display:none;background:var(--fh-panel);border-top:1px solid var(--fh-hair2)}
  .fh-item.is-open>.fh-panel{display:block}
  .fh-mega{padding:0}
  .fh-intro{padding:16px var(--fh-pad) 4px}
  .fh-intro:not(:has(.fh-all)){display:none}
  .fh-kicker,.fh-desc{display:none}
  .fh-col{border-top:1px solid var(--fh-hair2)}
  .fh-intro:has(.fh-all)+.fh-cols .fh-col:first-child{margin-top:12px}
  .fh-idx{display:none}
  .fh-col-head{display:flex;align-items:center;justify-content:space-between;min-height:54px;padding-left:var(--fh-pad)}
  .fh-col-title{font-size:15px;padding:14px 0}
  .fh-col-desc{display:none}
  .fh-card{display:block;padding:16px var(--fh-pad) 18px}
  .fh-card .fh-col-title{font-size:15px;padding:0}
  .fh-card .fh-col-desc{display:block;font-size:13.5px;margin-top:6px}
  .fh-sub-toggle{display:flex;flex:none;align-items:center;justify-content:center;width:calc(44px + var(--fh-pad));height:54px;position:relative}
  .fh-sub-toggle::before,.fh-sub-toggle::after{content:"";position:absolute;width:11px;height:1px;background:var(--fh-muted);transition:transform .2s}
  .fh-sub-toggle::after{transform:rotate(90deg)}
  .fh-col.is-open .fh-sub-toggle::after{transform:rotate(0)}
  .fh .fh-sub{display:none;padding:0 var(--fh-pad) 14px}
  .fh-col.is-open>.fh-sub{display:block}
  .fh-sublink{padding:10px 0 10px 16px;font-size:15px}
  .fh-sublink::before{width:6px;background:var(--fh-hair)}
  .fh-sublink:hover{padding-left:16px}
  .fh .fh-drop{padding:6px 0 10px}
  .fh-droplink{padding:12px var(--fh-pad)}
  .fh-droplink:hover{padding-left:var(--fh-pad)}
  .fh-droplink::before{display:none}
  .fh-drop-all{padding:4px var(--fh-pad) 8px}

  .fh-nav-foot{display:flex;flex-direction:column;gap:20px;padding:28px var(--fh-pad) 40px}
  .fh-nav-foot .fh-cta{width:100%;min-height:52px}
  .fh-tel{display:flex;flex-direction:column;gap:6px;font-family:var(--fh-mono);font-size:20px;letter-spacing:.06em;color:var(--fh-text)}
  .fh-tel span{font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--fh-faint)}
}
@media (max-width:980px){.fh{--fh-width:85%;--fh-pad:7.5vw}} /* som Divi-radene under 980 px */
@media (max-width:900px){.fh-status-x{display:none}}
@media (max-width:600px){
  .fh-loc,.fh-actions .fh-cta{display:none}
  .fh-top{font-size:10.5px;letter-spacing:.1em}
}
@media (max-width:370px){.fh-status{display:none}.fh-top .fh-wrap{justify-content:flex-end}}

html.fh-lock,html.fh-lock body{overflow:hidden}
@media (prefers-reduced-motion:reduce){.fh *{transition:none!important}}
