/* Vinka-merket: samme toppstripe med logo, navn og slagord på alle sider – forsiden, demoen, vilkårssidene og
   innloggingen i appen. Stripen er full bredde, innholdet står i samme kolonne som forsiden (maks 1120 px). */
/* Fredoka (SIL Open Font License) til navnet i logoen. Ligger på vår egen server, så ingen besøksdata går til Google. */
@font-face { font-family: "Fredoka"; font-style: normal; font-weight: 600; font-display: swap; src: url("/fonter/fredoka-600.woff2") format("woff2"); }
html { scrollbar-gutter: stable; } /* plass til rullefeltet alltid, så logoen står likt på sider med og uten */
.vinka-topp, .vinka-topp * { box-sizing: border-box; }
.vinka-topp { position: sticky; top: 0; z-index: 10; background: rgba(255, 248, 242, .94); backdrop-filter: blur(10px); border-bottom: 1px solid #efe3d8; }
.vinka-topp .indre { width: min(100% - 40px, 1120px); margin: 0 auto; min-height: 64px; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 8px 0; }
.vinka { display: inline-flex; align-items: center; gap: 10px; text-decoration: none; color: #c4452a; }
.vinka img { width: 40px; height: 40px; border-radius: 11px; display: block; flex: none; }
.vinka b { display: block; font-family: "Fredoka", system-ui, sans-serif; font-size: 1.7rem; font-weight: 600; line-height: 1; letter-spacing: .01em; }
.vinka small { display: block; font-size: .8rem; font-weight: 500; line-height: 1.2; color: #6e625a; margin-top: 2px; }
.vinka-topp nav { display: flex; align-items: center; gap: 10px; }
.vinka-topp .lenke { font-weight: 600; color: #c4452a; text-decoration: none; padding: 10px 6px; white-space: nowrap; }
.vinka-topp .knapp-topp { background: #c4452a; color: #fff; border-radius: 10px; padding: 10px 16px; font-weight: 700; text-decoration: none; white-space: nowrap; }
.vinka-topp .knapp-topp:hover { background: #a3371f; }
.vinka small { white-space: nowrap; }
.meny-knapp { display: none; }
/* Mobil: lenkene ligger bak ☰ og åpnes under stripen, så logoen står likt som på PC. */
@media (max-width: 759px) {
  .vinka-topp .indre { position: relative; }
  .meny-knapp { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 12px; border: 1px solid #efe3d8; background: #fff; color: #c4452a; font-size: 22px; cursor: pointer; }
  .vinka-topp nav { display: none; position: absolute; top: 100%; left: -20px; right: -20px; flex-direction: column; align-items: stretch; gap: 0;
    background: #fff8f2; border-bottom: 1px solid #efe3d8; padding: 6px 20px 12px; box-shadow: 0 12px 24px rgba(42, 33, 29, .12); }
  .vinka-topp.apen nav { display: flex; }
  .vinka-topp nav .lenke { padding: 12px 4px; border-top: 1px solid #efe3d8; }
  .vinka-topp nav .knapp-topp { margin-top: 10px; text-align: center; }
}

/* 6 måneder gratis: smal linje nederst i headeren (offentlige sider og styrers sider i appen), står fast ved scrolling */
.seksstripe { display: flex; align-items: center; justify-content: center; gap: 18px; padding: 8px 16px; background: #fff4d6; border-top: 1px solid #f0d58a; color: #2a211d; text-decoration: none; font-size: .92rem; font-weight: 400; line-height: 1.3; }
.seksstripe .cta { flex: none; white-space: nowrap; background: #c4452a; color: #fff; border-radius: 999px; padding: 7px 16px; font-weight: 700; }
.seksstripe.rod { background: #fdecea; border-top-color: #f2b8b0; }
@media (max-width: 759px) { .seksstripe { justify-content: space-between; gap: 8px; padding: 6px 12px; font-size: .82rem; } .seksstripe .cta { padding: 6px 12px; } }

.seksstripe b { font-weight: 800; }
.seksstripe .kort { display: none; }
@media (max-width: 759px) { .seksstripe .lang { display: none; } .seksstripe .kort { display: inline; } }
/* Lenker til avsnitt (f.eks. /vilkar#tilbud) havner under headeren som står fast øverst */
h2[id] { scroll-margin-top: 140px; }
/* Initialene til den som er innlogget, i en sirkel øverst til høyre (appen og de offentlige sidene) */
.megknapp { display: inline-grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; border: 1px solid #efe3d8; background: #fff; color: #c4452a; font-weight: 800; font-size: .9rem; text-decoration: none; flex: none; }
.megknapp.aktiv { background: #c4452a; color: #fff; border-color: #c4452a; }
.megknapp:active { transform: scale(.94); }
.vinka-topp .indre > .megknapp { margin-left: 12px; }
/* Med initialene til høyre skal menyen fortsatt stå til høyre (ikke midt mellom logo og initialer) */
.vinka-topp .indre:has(> .megknapp) > nav { margin-left: auto; }
@media (max-width: 759px) { .vinka-topp .indre > .megknapp { margin-left: auto; margin-right: 8px; } }
.megknapp.admin { width: auto; padding: 0 14px; border-radius: 999px; }

/* Bunnen på de offentlige sidene (vilkår, personvern, om, demo, 404): samme innhold og lenker som i bunnen av forsiden */
.vinka-bunn { border-top: 1px solid #efe3d8; padding: 28px 0 40px; font-size: .9rem; color: #6e625a; }
.vinka-bunn .indre { width: min(100% - 40px, 1120px); margin: 0 auto; display: flex; flex-wrap: wrap; gap: 10px 28px; justify-content: space-between; align-items: center; }
.vinka-bunn a { color: #c4452a; }
.vinka-bunn nav { display: flex; gap: 18px; flex-wrap: wrap; }
.vinka-bunn .copyright { flex-basis: 100%; font-size: .85rem; color: #5f544c; }
