/* ============================================================
   Behandlingsnett – Designlag (bnett-design.css)
   Mobil-først. Lett. Recolorer den eksisterende plugin-UI-en via
   variabel-overstyring, setter fontene, og styler [bnett_hero].
   Lastes ETTER plugin-ens egen CSS (bnett-custom.css).
   NB: !important brukt bevisst på nøkkelfarger for å slå Elementors
   kit-spesifisitet (.elementor-kit-XX h1/a/button ...).
   ============================================================ */

/* ---- 1. Design-tokens: overstyrer plugin-ens egne variabler ---- */
:root{
  --bnett-green:#83b773;
  --bnett-green-dark:#3e8e5a;
  --bnett-green-darker:#16352b;
  --bnett-text:#14241d;
  --bnett-muted:#5a6b62;
  --bnett-soft:#f2f7ee;
  --bnett-border:rgba(20,36,29,.10);
  --bnett-radius:18px;
  --bnett-shadow:0 12px 30px -16px rgba(16,40,30,.22);
  --bnett-badge-count-bg:#e4efdc;

  --bnett-brand:#3e8e5a; --bnett-brand-dark:#2f7048; --bnett-pine:#16352b;
  --bnett-accent:#83b773; --bnett-sage:#e4efdc; --bnett-sage-50:#f2f7ee; --bnett-mint:#c9e0bd;
  --bnett-ink:#14241d; --bnett-paper:#fbfcfa; --bnett-line:rgba(20,36,29,.10);
  --bnett-font-head:"Bricolage Grotesque",-apple-system,system-ui,sans-serif;
  --bnett-font-body:"Inter",-apple-system,system-ui,sans-serif;
}

/* ---- 2. Fonter (Hello Elementor = tomt lerret, trygt globalt) ---- */
body{ font-family:var(--bnett-font-body) !important; color:var(--bnett-ink) !important; }
h1,h2,h3,h4,h5,h6,
.elementor-heading-title{ font-family:var(--bnett-font-head) !important; letter-spacing:-.02em; }

/* ============================================================
   3. HERO  [bnett_hero]  – mobil-først
   Legg shortcoden i en full-bredde seksjon uten padding.
   ============================================================ */
.bnett-hero{
  position:relative; width:100%;
  padding:84px 20px 60px;
  background:
    radial-gradient(70% 80% at 82% 12%, rgba(94,160,106,.50), transparent 60%),
    radial-gradient(85% 95% at 6% 96%, rgba(11,33,25,.95), transparent 70%),
    linear-gradient(160deg,#1f4a3a 0%,#16352b 55%,#0f2a21 100%);
  overflow:hidden;
}
.bnett-hero__inner{ max-width:1100px; margin:0 auto; }

.bnett-hero__eyebrow{
  display:inline-flex; align-items:center; gap:8px;
  color:#eaf3e3 !important; font:600 13px/1.2 var(--bnett-font-body);
  background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.22);
  padding:7px 13px 7px 11px; border-radius:100px; margin-bottom:18px;
}
.bnett-hero__dot{ width:7px;height:7px;border-radius:50%;background:#9ad77f; box-shadow:0 0 0 4px rgba(154,215,127,.25); }

.bnett-hero__title{
  font-family:var(--bnett-font-head); font-weight:700; color:#ffffff !important;
  font-size:clamp(2rem,7vw,4rem); line-height:1.05; letter-spacing:-.03em;
  margin:0 0 16px; max-width:16ch; text-wrap:balance;
}
.bnett-hero__sub{
  color:rgba(255,255,255,.9) !important; font-size:clamp(1rem,2.4vw,1.25rem);
  line-height:1.5; max-width:54ch; margin:0;
}

/* Søkekort */
.bnett-hero__card{
  margin-top:26px; background:#fff; border-radius:20px; padding:12px;
  box-shadow:0 2px 4px rgba(8,22,16,.10), 0 24px 50px -28px rgba(8,22,16,.5);
  max-width:760px;
}
.bnett-hero__row{ display:flex; flex-direction:column; gap:8px; }

.bnett-hero__field{
  position:relative; flex:1; min-width:0;
  display:flex; flex-direction:column; gap:1px;
  background:var(--bnett-sage-50); border:1px solid var(--bnett-line);
  border-radius:13px; padding:9px 14px;
}
.bnett-hero__flabel{
  font:600 11px/1.3 var(--bnett-font-body); letter-spacing:.04em;
  text-transform:uppercase; color:var(--bnett-muted);
}
.bnett-hero__select, .bnett-hero__input{
  width:100%; border:0; background:transparent; outline:0; padding:2px 0;
  font:600 16px/1.4 var(--bnett-font-body); color:var(--bnett-ink) !important;
  -webkit-appearance:none; appearance:none;
}
.bnett-hero__select{
  padding-right:22px;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%235a6b62' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M4 6l4 4 4-4'/></svg>");
  background-repeat:no-repeat; background-position:right center;
}
.bnett-hero__input::placeholder{ color:var(--bnett-muted); font-weight:500; }
.bnett-hero__input:disabled{ color:var(--bnett-muted) !important; cursor:not-allowed; }

.bnett-hero__btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px; flex:none;
  background:var(--bnett-brand) !important; color:#fff !important; border:0; border-radius:13px;
  padding:15px 22px; font:600 16px/1 var(--bnett-font-body); cursor:pointer;
  box-shadow:0 10px 22px -12px rgba(62,142,90,.9); text-decoration:none !important;
  transition:background .18s, transform .12s;
}
.bnett-hero__btn:hover{ background:var(--bnett-brand-dark) !important; }
.bnett-hero__btn:active{ transform:translateY(1px); }

/* Resultat-dropdown (søk) */
.bnett-hero__results{
  position:absolute; left:0; right:0; top:calc(100% + 6px); z-index:40;
  background:#fff; border:1px solid var(--bnett-line); border-radius:13px;
  box-shadow:0 18px 40px -18px rgba(8,22,16,.4); overflow:hidden;
}
.bnett-hero__result{
  display:flex; align-items:center; gap:10px; padding:11px 14px;
  color:var(--bnett-ink) !important; text-decoration:none !important; font-size:15px;
}
.bnett-hero__result:hover{ background:var(--bnett-sage-50); }
.bnett-hero__pill{
  flex:none; font:600 11px/1 var(--bnett-font-body); color:var(--bnett-brand-dark);
  background:var(--bnett-sage); padding:4px 8px; border-radius:100px;
}

/* Hurtigvalg */
.bnett-hero__chips{ display:flex; flex-wrap:wrap; align-items:center; gap:7px; padding:12px 6px 4px; }
.bnett-hero__chips-label{ font-size:13px; color:rgba(255,255,255,.85) !important; margin-right:2px; }
.bnett-hero__chip{
  font:500 13px/1 var(--bnett-font-body); color:var(--bnett-ink) !important;
  background:#fff; border:1px solid var(--bnett-line); border-radius:100px;
  padding:7px 13px; text-decoration:none !important; transition:.16s;
}
.bnett-hero__chip:hover{ background:var(--bnett-sage-50); border-color:var(--bnett-accent); color:var(--bnett-brand-dark) !important; }

/* Trygghetsrad */
.bnett-hero__trust{ display:flex; flex-wrap:wrap; gap:10px 20px; margin-top:22px; }
.bnett-hero__trust-item{ display:inline-flex; align-items:center; gap:8px; color:rgba(255,255,255,.92) !important; font:500 14px/1.3 var(--bnett-font-body); }
.bnett-hero__check{ width:18px; height:18px; border-radius:50%; background:rgba(154,215,127,.22); color:#bfe6a8; display:grid; place-items:center; flex:none; }

/* Desktop: felt på rad, mer luft */
@media (min-width:680px){
  .bnett-hero{ padding:128px 32px 92px; }
  .bnett-hero__row{ flex-direction:row; align-items:stretch; }
  .bnett-hero__btn{ padding:0 26px; }
}

/* ============================================================
   4. Lett komponent-finpuss på plugin-ens utdata
   ============================================================ */

/* Fagområde-oversikten (pt_category_overview) */
.pt-coming__grid{ display:grid; grid-template-columns:1fr; gap:12px; }
@media (min-width:560px){ .pt-coming__grid{ grid-template-columns:repeat(2,1fr); } }
@media (min-width:900px){ .pt-coming__grid{ grid-template-columns:repeat(4,1fr); gap:16px; } }

.pt-coming__card{
  background:#fff; border:1px solid var(--bnett-line); border-radius:var(--bnett-radius);
  padding:20px; display:flex; flex-direction:column; gap:12px;
  transition:transform .2s, box-shadow .2s, border-color .2s;
}
.pt-coming__card:hover{ transform:translateY(-3px); box-shadow:var(--bnett-shadow); border-color:var(--bnett-mint); }
.pt-coming__h{ font-family:var(--bnett-font-head); font-weight:600; font-size:1.18rem; letter-spacing:-.01em; color:var(--bnett-ink) !important; margin:0; }
.pt-coming__badge{ font:600 11px/1 var(--bnett-font-body); color:var(--bnett-brand-dark); background:var(--bnett-sage); padding:5px 10px; border-radius:100px; }
.pt-coming__actions{ margin-top:auto; }
.pt-coming__btn--primary{
  display:inline-flex; align-items:center; justify-content:center;
  background:var(--bnett-brand) !important; color:#fff !important; text-decoration:none !important;
  border-radius:12px; padding:10px 16px; font:600 14px/1 var(--bnett-font-body);
  transition:background .18s;
}
.pt-coming__btn--primary:hover{ background:var(--bnett-brand-dark) !important; }

/* Søke-autocomplete på rute-sider (.ptlr-search) */
.ptlr-search-results{ border:1px solid var(--bnett-line); border-radius:var(--bnett-radius); box-shadow:var(--bnett-shadow); overflow:hidden; }
.ptlr-search-results a{ display:flex; align-items:center; gap:10px; padding:11px 14px; text-decoration:none !important; }
.ptlr-search-results a:hover{ background:var(--bnett-sage-50); }
.ptlr-search-pill{ font:600 11px/1 var(--bnett-font-body); color:var(--bnett-brand-dark); background:var(--bnett-sage); padding:4px 8px; border-radius:100px; }
.ptlr-search-title{ font-weight:600; color:var(--bnett-ink) !important; }
.ptlr-search-sub{ color:var(--bnett-muted); font-size:13px; }

/* Filterlinje (.ptlr-facets) */
.ptlr-facets__btn{ border:1px solid var(--bnett-line); border-radius:13px; }
.ptlr-facets__search{ border:1px solid var(--bnett-line); border-radius:12px; background:var(--bnett-sage-50); }
.ptlr-facets__chip.is-on{ background:var(--bnett-brand) !important; border-color:var(--bnett-brand) !important; color:#fff !important; }

/* Generelle CTA-er + paginering */
.ptlr-cta{ background:var(--bnett-brand) !important; color:#fff !important; border-radius:12px; padding:11px 18px; font-weight:600; text-decoration:none !important; display:inline-flex; align-items:center; gap:8px; transition:background .18s; }
.ptlr-cta:hover{ background:var(--bnett-brand-dark) !important; }
.ptlr-pagination a, .ptlr-pagination span{ border-radius:10px; }
