body.tkp-page {
  padding-top: 118px;
  background: #ffffff !important;
  background-image: none !important;
  background-attachment: scroll !important;
  color: #10233a;
}

body.tkp-page main,
body.tkp-page section,
body.tkp-page .container,
body.tkp-page .container-xl,
body.tkp-page footer {
  background: transparent !important;
  background-image: none !important;
}

body.tkp-page [id] {
  scroll-margin-top: 96px;
}

.tkp-shell {
  background: #ffffff;
}

.tkp-page .container-xl {
  max-width: 1320px;
}

.tkp-kicker {
  margin: 0 0 0.95rem;
  font-family: 'Montserrat', sans-serif;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #0077cc;
}

.tkp-hero {
  padding: 1.15rem 0 1.95rem;
  background: #ffffff;
}

.tkp-hero-grid {
  display: grid;
  grid-template-columns: 600px minmax(460px, 520px);
  justify-content: space-between;
  gap: 3.75rem;
  align-items: center;
}

.tkp-copy {
  min-width: 0;
  max-width: 600px;
}

.tkp-copy h1,
.tkp-section h2,
.tkp-cta-card h2 {
  color: #10233a;
  letter-spacing: -0.045em;
}

.tkp-copy h1 {
  font-size: clamp(2.7rem, 3.6vw, 3.6rem);
  line-height: 0.95;
  margin: 0 0 1.2rem;
}

.tkp-copy h1 span {
  display: block;
}

.tkp-lead,
.tkp-support,
.tkp-section-intro,
.tkp-prose p,
.tkp-card p,
.tkp-check-card p,
.tkp-feature-card p,
.tkp-spotlight-copy p,
.tkp-related-body p,
.tkp-faq-item p,
.tkp-cta-card p,
.tkp-cta-info ul {
  font-size: 1.02rem;
  line-height: 1.74;
  color: #4a5e74;
}

.tkp-lead {
  max-width: 52ch;
  margin-bottom: 0.85rem;
}

.tkp-support {
  max-width: 54ch;
  margin-bottom: 0;
}

.tkp-actions {
  margin-top: 1.2rem;
}

.tkp-actions .btn,
.tkp-cta-info .btn {
  padding: 0.82rem 1.35rem;
  border-radius: 12px;
}

.tkp-visual {
  position: relative;
  min-height: 474px;
  border-radius: 28px;
  overflow: hidden;
  background: #edf2f7;
  box-shadow: 0 18px 40px rgba(16, 35, 58, 0.12);
}

.tkp-visual img,
.tkp-spotlight-media img,
.tkp-related-card img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
}

.tkp-anchor-wrap {
  padding: 0 0 1.05rem;
  background: #ffffff;
}

.tkp-anchor {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
  padding: 0.85rem;
  background: #ffffff;
  border: 1px solid #d7e1eb;
  border-radius: 20px;
}

.tkp-anchor a {
  display: inline-flex;
  align-items: center;
  padding: 0.62rem 0.95rem;
  border-radius: 999px;
  border: 1px solid #d7e1eb;
  background: #ffffff;
  color: #20364b;
  font-family: 'Montserrat', sans-serif;
  font-size: 0.92rem;
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
  transition: border-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.tkp-anchor a:hover,
.tkp-anchor a:focus {
  color: #0077cc;
  border-color: #b9d0e4;
  transform: translateY(-1px);
}

.tkp-section {
  padding: 1rem 0 3.4rem;
  background: #ffffff;
}

#hva-er {
  padding-top: 1.35rem;
  padding-bottom: 3.15rem;
}

.tkp-section-soft {
  background: #f8fbfe;
}

.tkp-intro-grid {
  display: grid;
  grid-template-columns: minmax(340px, 410px) minmax(0, 790px);
  justify-content: space-between;
  gap: clamp(3rem, 4.5vw, 4.35rem);
  align-items: start;
}

.tkp-heading-block {
  max-width: 290px;
}

.tkp-intro-aside {
  display: flex;
  flex-direction: column;
  gap: 1.35rem;
  max-width: 410px;
}

.tkp-heading-block h2 {
  font-size: clamp(1.55rem, 1.75vw, 1.9rem);
  line-height: 1.03;
  letter-spacing: -0.035em;
  margin: 0;
}

.tkp-heading-block h2 span {
  display: block;
}

.tkp-section-head {
  max-width: 800px;
  margin-bottom: 1.5rem;
}

.tkp-section-head-narrow {
  max-width: 760px;
}

.tkp-section h2,
.tkp-cta-card h2 {
  line-height: 1.04;
  margin: 0 0 0.75rem;
}

.tkp-prose {
  width: 100%;
  max-width: 790px;
  margin-left: auto;
  padding-left: 2.35rem;
  border-left: 1px solid #d7e1eb;
}

.tkp-prose p + p,
.tkp-spotlight-copy p + p,
.tkp-cta-card p + p {
  margin-top: 1rem;
}

.tkp-prose p {
  margin-bottom: 0;
}


.tkp-prose-intro {
  margin-top: clamp(5.4rem, 7vw, 6.6rem);
}

@media (max-width: 991.98px) {
  .tkp-prose-intro {
    margin-top: 0;
  }

  .tkp-intro-photo {
    margin-bottom: 0.7rem;
  }
}

.tkp-intro-section {
  padding-top: 1rem;
}

.tkp-intro-photo {
  width: 100%;
  max-width: 410px;
  aspect-ratio: 4 / 3;
  margin: 0 0 0.95rem;
  border-radius: 22px;
  overflow: hidden;
  background: #eef3f7;
  border: 1px solid #dbe4ee;
  box-shadow: 0 10px 24px rgba(16, 35, 58, 0.05);
}

.tkp-intro-photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}


.tkp-card-grid,
.tkp-check-grid,
.tkp-feature-grid,
.tkp-related-grid,
.tkp-faq-list {
  display: grid;
  gap: 1.15rem;
}

.tkp-card-grid-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.tkp-check-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.tkp-feature-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.tkp-related-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.tkp-card,
.tkp-check-card,
.tkp-feature-card,
.tkp-related-card,
.tkp-faq-item {
  background: #ffffff;
  border: 1px solid #d7e1eb;
  border-radius: 20px;
  box-shadow: 0 10px 24px rgba(16, 35, 58, 0.05);
}

.tkp-card,
.tkp-check-card,
.tkp-feature-card,
.tkp-faq-item {
  padding: 1.45rem;
}

.tkp-card h3,
.tkp-check-card h3,
.tkp-feature-card h3,
.tkp-related-body h3,
.tkp-faq-item h3,
.tkp-cta-info h3 {
  margin: 0 0 0.7rem;
  font-size: 1.28rem;
  line-height: 1.24;
  color: #10233a;
}

.tkp-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  margin-bottom: 1rem;
  border-radius: 50%;
  background: #0077cc;
  color: #ffffff;
  font-size: 1.3rem;
}

.tkp-spotlight {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, 500px);
  gap: 2.3rem;
  align-items: center;
}

.tkp-spotlight-media {
  position: relative;
  min-height: 410px;
  border-radius: 24px;
  overflow: hidden;
  background: #dfe7ef;
  box-shadow: 0 14px 32px rgba(16, 35, 58, 0.1);
}

.tkp-related-card {
  overflow: hidden;
}

.tkp-related-card img {
  position: relative;
  inset: auto;
  aspect-ratio: 16 / 10;
}

.tkp-related-body {
  padding: 1.35rem;
}

.tkp-faq-list {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.tkp-cta-card {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(320px, 420px);
  gap: 2rem;
  padding: 2rem;
  background: #f2f7fc;
  border: 1px solid #d7e1eb;
  border-radius: 26px;
}

.tkp-cta-info {
  padding: 1.35rem;
  background: #ffffff;
  border: 1px solid #d7e1eb;
  border-radius: 18px;
}

.tkp-cta-info ul {
  padding-left: 1.15rem;
  margin-bottom: 1.25rem;
}

.tkp-cta-info li + li {
  margin-top: 0.3rem;
}


@media (min-width: 1200px) {
  .tkp-intro-grid {
    grid-template-columns: minmax(340px, 400px) minmax(720px, 790px);
    gap: 3.35rem;
  }

  .tkp-prose {
    max-width: 790px;
  }
}

@media (max-width: 1199.98px) {
  .tkp-hero-grid {
    grid-template-columns: minmax(0, 1fr) minmax(380px, 430px);
    gap: 2.2rem;
  }

  .tkp-copy {
    max-width: none;
  }

  .tkp-intro-grid {
    grid-template-columns: minmax(320px, 380px) minmax(0, 1fr);
    justify-content: initial;
    gap: 3rem;
  }

  .tkp-heading-block {
    max-width: 300px;
  }

  .tkp-intro-aside {
    max-width: 380px;
  }

  .tkp-prose {
    max-width: none;
    padding-left: 2rem;
  }

  .tkp-card-grid-3,
  .tkp-feature-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 991.98px) {
  body.tkp-page {
    padding-top: 102px;
  }

  .tkp-hero {
    padding-top: 1rem;
  }

  .tkp-hero-grid,
  .tkp-intro-grid,
  .tkp-spotlight,
  .tkp-cta-card {
    grid-template-columns: 1fr;
  }

  .tkp-copy,
  .tkp-heading-block,
  .tkp-prose {
    max-width: none;
  }

  .tkp-prose {
    padding-left: 0;
    border-left: 0;
  }

  .tkp-visual,
  .tkp-spotlight-media {
    min-height: 360px;
  }

  .tkp-card-grid-3,
  .tkp-check-grid,
  .tkp-feature-grid,
  .tkp-related-grid,
  .tkp-faq-list {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767.98px) {
  .tkp-copy h1 {
    font-size: 2.55rem;
  }

  .tkp-visual,
  .tkp-spotlight-media {
    min-height: 280px;
  }

  .tkp-section,
  .tkp-section-soft {
    padding-bottom: 2.5rem;
  }

  .tkp-card,
  .tkp-check-card,
  .tkp-feature-card,
  .tkp-faq-item,
  .tkp-related-body,
  .tkp-cta-card,
  .tkp-cta-info {
    padding: 1.2rem;
  }
}

/* === Bruksområder — section-only refinement === */
#bruksomrader {
  padding-top: 0.82rem;
  padding-bottom: 3.2rem;
}

#bruksomrader .tkp-section-head {
  max-width: 730px;
  margin-bottom: 1.52rem;
}

#bruksomrader .tkp-kicker {
  margin-bottom: 0.95rem;
}

#bruksomrader .tkp-section-head h2 {
  max-width: 10.5ch;
  font-size: clamp(1.82rem, 2vw, 2.08rem);
  line-height: 1.01;
  letter-spacing: -0.035em;
  margin: 0 0 0.78rem;
}

#bruksomrader .tkp-section-intro {
  max-width: 44ch;
  margin: 0;
}

#bruksomrader .tkp-card-grid {
  gap: 1.15rem;
}

#bruksomrader .tkp-card {
  min-height: 214px;
  padding: 1.32rem 1.26rem 1.22rem;
  background: #ffffff;
  border: 1px solid #dbe4ee;
  border-radius: 22px;
  box-shadow: none;
}

#bruksomrader .tkp-card h3 {
  max-width: 14.5ch;
  margin: 0 0 0.62rem;
  font-size: 1.18rem;
  line-height: 1.16;
  letter-spacing: -0.022em;
}

#bruksomrader .tkp-card p {
  max-width: 31ch;
  margin: 0;
  font-size: 0.98rem;
  line-height: 1.66;
  color: #55687d;
}

#bruksomrader .tkp-icon {
  width: 44px;
  height: 44px;
  margin-bottom: 0.92rem;
  background: #f1f6fb;
  color: #0077cc;
  font-size: 1.02rem;
}

@media (max-width: 991.98px) {
  #bruksomrader {
    padding-top: 0.5rem;
    padding-bottom: 2.65rem;
  }

  #bruksomrader .tkp-section-head,
  #bruksomrader .tkp-section-intro,
  #bruksomrader .tkp-card h3,
  #bruksomrader .tkp-card p {
    max-width: none;
  }

  #bruksomrader .tkp-card {
    min-height: 0;
    padding: 1.18rem 1.14rem 1.08rem;
  }

  #bruksomrader .tkp-icon {
    width: 42px;
    height: 42px;
    margin-bottom: 0.82rem;
  }
}

/* === Fordeler — stronger editorial value block (section only) === */
#fordeler {
  padding-top: 0.95rem;
  padding-bottom: 3.25rem;
}

#fordeler .tkp-section-head {
  max-width: 860px;
  margin-bottom: 1.8rem;
}

#fordeler .tkp-section-head h2 {
  max-width: 13.8ch;
  font-size: clamp(1.9rem, 2.15vw, 2.18rem);
  line-height: 1.02;
  letter-spacing: -0.035em;
  margin: 0;
}

#fordeler .tkp-feature-grid {
  counter-reset: fordel-item;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 2rem 2.45rem;
  align-items: start;
}

#fordeler .tkp-feature-card {
  position: relative;
  padding: 1.08rem 0 0.05rem;
  border: 0;
  border-top: 2px solid #2b8edc;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

#fordeler .tkp-feature-card::before {
  counter-increment: fordel-item;
  content: "0" counter(fordel-item);
  display: block;
  margin-bottom: 0.7rem;
  font-family: 'Montserrat', sans-serif;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  color: #0077cc;
}

#fordeler .tkp-feature-card h3 {
  max-width: 18ch;
  margin: 0 0 0.62rem;
  font-size: 1.22rem;
  line-height: 1.16;
  letter-spacing: -0.022em;
}

#fordeler .tkp-feature-card p {
  max-width: 41ch;
  margin: 0;
  font-size: 0.98rem;
  line-height: 1.68;
  color: #55687d;
}

#gjennomforinger {
  padding-top: 1.2rem;
}

@media (max-width: 991.98px) {
  #fordeler {
    padding-top: 0.62rem;
    padding-bottom: 2.75rem;
  }

  #fordeler .tkp-section-head {
    max-width: none;
    margin-bottom: 1.35rem;
  }

  #fordeler .tkp-section-head h2,
  #fordeler .tkp-feature-card h3,
  #fordeler .tkp-feature-card p {
    max-width: none;
  }

  #fordeler .tkp-feature-grid {
    grid-template-columns: 1fr;
    gap: 1.45rem;
  }

  #fordeler .tkp-feature-card {
    padding-top: 0.98rem;
  }

  #fordeler .tkp-feature-card::before {
    margin-bottom: 0.62rem;
  }

  #gjennomforinger {
    padding-top: 0.9rem;
  }
}

/* === Unified section heading system + Gjennomføringer polish === */
#hva-er .tkp-heading-block h2,
#vurdering .tkp-section-head h2,
#fordeler .tkp-section-head h2,
#relatert .tkp-section-head h2,
#faq .tkp-section-head h2,
#kontaktblokk .tkp-cta-card h2,
#gjennomforinger .tkp-spotlight-copy h2 {
  font-size: clamp(1.8rem, 2vw, 2.08rem);
  line-height: 1.01;
  letter-spacing: -0.035em;
  color: #10233a;
}

#hva-er .tkp-heading-block h2,
#vurdering .tkp-section-head h2,
#fordeler .tkp-section-head h2,
#relatert .tkp-section-head h2,
#faq .tkp-section-head h2,
#kontaktblokk .tkp-cta-card h2,
#gjennomforinger .tkp-spotlight-copy h2 {
  margin: 0 0 0.8rem;
}

#hva-er .tkp-heading-block h2 {
  max-width: 10.6ch;
}

#vurdering .tkp-section-head h2 {
  max-width: 12.8ch;
}

#fordeler .tkp-section-head h2 {
  max-width: 11.8ch;
}

#relatert .tkp-section-head h2 {
  max-width: 13ch;
}

#faq .tkp-section-head h2 {
  max-width: 9.2ch;
}

#kontaktblokk .tkp-cta-card h2 {
  max-width: 12.5ch;
}

#gjennomforinger {
  padding-top: 1.45rem;
}

#gjennomforinger .tkp-kicker {
  margin-bottom: 0.95rem;
  color: #0077cc;
}

#gjennomforinger .tkp-spotlight {
  grid-template-columns: minmax(0, 1.02fr) minmax(390px, 520px);
  gap: clamp(2.5rem, 4vw, 3.35rem);
  align-items: center;
}

#gjennomforinger .tkp-spotlight-copy {
  max-width: 720px;
}

#gjennomforinger .tkp-spotlight-copy h2 {
  max-width: 14.8ch;
}

#gjennomforinger .tkp-spotlight-copy p {
  max-width: 58ch;
}

#gjennomforinger .tkp-spotlight-copy p + p {
  margin-top: 0.9rem;
}

#gjennomforinger .tkp-spotlight-media {
  min-height: 430px;
  border-radius: 24px;
  box-shadow: 0 16px 34px rgba(16, 35, 58, 0.1);
}

#gjennomforinger .tkp-spotlight-media img {
  object-position: center;
}

@media (max-width: 991.98px) {
  #hva-er .tkp-heading-block h2,
  #vurdering .tkp-section-head h2,
  #fordeler .tkp-section-head h2,
  #relatert .tkp-section-head h2,
  #faq .tkp-section-head h2,
  #kontaktblokk .tkp-cta-card h2,
  #gjennomforinger .tkp-spotlight-copy h2 {
    max-width: none;
  }

  #gjennomforinger {
    padding-top: 1rem;
  }

  #gjennomforinger .tkp-spotlight {
    gap: 1.5rem;
  }

  #gjennomforinger .tkp-spotlight-copy,
  #gjennomforinger .tkp-spotlight-copy p {
    max-width: none;
  }

  #gjennomforinger .tkp-spotlight-media {
    min-height: 320px;
  }
}

/* === Relaterte områder — PRO refinement === */
#relatert {
  padding-top: 1.1rem;
  padding-bottom: 3rem;
}

#relatert .tkp-section-head {
  max-width: 780px;
  margin-bottom: 1.45rem;
}

#relatert .tkp-section-intro {
  max-width: 58ch;
  margin: 0;
}

#relatert .tkp-related-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.35rem;
  align-items: stretch;
}

#relatert .tkp-related-card {
  display: grid;
  grid-template-rows: 280px auto;
  background: #ffffff;
  border: 1px solid #d7e1eb;
  border-radius: 22px;
  overflow: hidden;
  box-shadow: 0 12px 28px rgba(16, 35, 58, 0.05);
}

#relatert .tkp-related-card img {
  position: relative;
  inset: auto;
  width: 100%;
  height: 100%;
  aspect-ratio: auto;
  object-fit: cover;
  object-position: center;
  display: block;
}

#relatert .tkp-related-body {
  padding: 1.15rem 1.25rem 1.25rem;
}

#relatert .tkp-related-body h3 {
  margin: 0 0 0.55rem;
  font-size: 1.22rem;
  line-height: 1.18;
  letter-spacing: -0.02em;
}

#relatert .tkp-related-body p {
  max-width: 38ch;
  margin: 0;
  font-size: 0.98rem;
  line-height: 1.68;
  color: #4a5e74;
}

@media (max-width: 991.98px) {
  #relatert {
    padding-top: 0.9rem;
    padding-bottom: 2.6rem;
  }

  #relatert .tkp-section-head,
  #relatert .tkp-section-intro,
  #relatert .tkp-related-body p {
    max-width: none;
  }

  #relatert .tkp-related-grid {
    grid-template-columns: 1fr;
    gap: 1.15rem;
  }

  #relatert .tkp-related-card {
    grid-template-rows: 240px auto;
  }
}

@media (max-width: 767.98px) {
  #relatert .tkp-related-body {
    padding: 1rem 1.05rem 1.1rem;
  }

  #relatert .tkp-related-card {
    grid-template-rows: 220px auto;
  }
}

/* === FAQ — editorial Q&A refinement (FAQ only) === */
#faq {
  padding-top: 1rem;
  padding-bottom: 2.95rem;
}

#faq .tkp-section-head {
  max-width: 720px;
  margin-bottom: 1.45rem;
}

#faq .tkp-faq-list {
  grid-template-columns: 1fr;
  gap: 0;
  max-width: 1120px;
}

#faq .tkp-faq-item {
  display: grid;
  grid-template-columns: minmax(320px, 460px) minmax(0, 1fr);
  gap: 2.4rem;
  align-items: start;
  padding: 1.25rem 0 1.3rem;
  background: transparent;
  border: 0;
  border-top: 1px solid #d7e1eb;
  border-radius: 0;
  box-shadow: none;
}

#faq .tkp-faq-item:last-child {
  border-bottom: 1px solid #d7e1eb;
}

#faq .tkp-faq-item h3 {
  margin: 0;
  max-width: 18ch;
  font-size: 1.22rem;
  line-height: 1.16;
  letter-spacing: -0.022em;
}

#faq .tkp-faq-item p {
  margin: 0;
  max-width: 64ch;
  font-size: 0.98rem;
  line-height: 1.68;
  color: #55687d;
}

@media (max-width: 991.98px) {
  #faq {
    padding-top: 0.9rem;
    padding-bottom: 2.55rem;
  }

  #faq .tkp-section-head,
  #faq .tkp-faq-item h3,
  #faq .tkp-faq-item p {
    max-width: none;
  }

  #faq .tkp-faq-item {
    grid-template-columns: 1fr;
    gap: 0.7rem;
    padding: 1.05rem 0 1.1rem;
  }
}

/* === Forespørsel — final premium CTA polish (only this section) === */
#kontaktblokk{
  padding-top: 0.78rem;
  padding-bottom: 2.78rem;
}

#kontaktblokk .tkp-cta-card{
  grid-template-columns: minmax(0, 1.18fr) minmax(312px, 348px);
  gap: clamp(1.55rem, 2.8vw, 2.35rem);
  align-items: center;
  padding: clamp(1.38rem, 2.15vw, 1.78rem);
  background: linear-gradient(180deg, #f5f9fd 0%, #eef4f9 100%);
  border: 1px solid #d8e3ee;
  border-radius: 28px;
  box-shadow: 0 14px 32px rgba(16, 35, 58, 0.06);
}

#kontaktblokk .tkp-cta-card > div:first-child{
  max-width: 860px;
  padding-right: clamp(0rem, 0.8vw, 0.45rem);
}

#kontaktblokk .tkp-kicker{
  margin-bottom: 0.88rem;
}

#kontaktblokk .tkp-cta-card h2{
  max-width: 14.6ch;
  margin: 0 0 0.82rem;
  font-size: clamp(1.9rem, 2.15vw, 2.12rem);
  line-height: 1.02;
  letter-spacing: -0.038em;
}

#kontaktblokk .tkp-cta-card > div:first-child p{
  max-width: 57ch;
  margin: 0;
  font-size: 0.99rem;
  line-height: 1.72;
  color: #4a5e74;
}

#kontaktblokk .tkp-cta-info{
  align-self: center;
  padding: 1.18rem 1.26rem 1.16rem;
  background: rgba(255,255,255,0.95);
  border: 1px solid #d7e1eb;
  border-radius: 20px;
  box-shadow: 0 8px 18px rgba(16, 35, 58, 0.05);
}

#kontaktblokk .tkp-cta-info h3{
  margin: 0 0 0.72rem;
  font-size: 1.12rem;
  line-height: 1.18;
  letter-spacing: -0.02em;
}

#kontaktblokk .tkp-cta-info ul{
  padding-left: 1.05rem;
  margin: 0 0 0.95rem;
}

#kontaktblokk .tkp-cta-info li{
  color: #4a5e74;
  line-height: 1.58;
  margin-bottom: 0.18rem;
}

#kontaktblokk .tkp-cta-info li + li{
  margin-top: 0;
}

#kontaktblokk .tkp-cta-info .btn{
  min-width: 0;
  padding: 0.78rem 1.18rem;
  border-radius: 12px;
  box-shadow: 0 10px 22px rgba(0, 119, 204, 0.16);
}

@media (max-width: 991.98px){
  #kontaktblokk{
    padding-top: 0.66rem;
    padding-bottom: 2.5rem;
  }

  #kontaktblokk .tkp-cta-card{
    grid-template-columns: 1fr;
    gap: 1.18rem;
    padding: 1.2rem;
  }

  #kontaktblokk .tkp-cta-card > div:first-child,
  #kontaktblokk .tkp-cta-card > div:first-child p,
  #kontaktblokk .tkp-cta-card h2{
    max-width: none;
  }

  #kontaktblokk .tkp-cta-info{
    padding: 1.08rem;
  }
}

@media (max-width: 767.98px){
  #kontaktblokk .tkp-cta-card{
    border-radius: 22px;
  }

  #kontaktblokk .tkp-cta-info{
    border-radius: 16px;
  }
}


/* === Final kicker + section-title unification (safe override only) === */
.tkp-kicker,
#hva-er .tkp-kicker,
#bruksomrader .tkp-kicker,
#vurdering .tkp-kicker,
#fordeler .tkp-kicker,
#gjennomforinger .tkp-kicker,
#relatert .tkp-kicker,
#faq .tkp-kicker,
#kontaktblokk .tkp-kicker {
  margin: 0 0 0.95rem !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 0.78rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  color: #0077cc !important;
}

#hva-er .tkp-heading-block h2,
#bruksomrader .tkp-section-head h2,
#vurdering .tkp-section-head h2,
#fordeler .tkp-section-head h2,
#gjennomforinger .tkp-spotlight-copy h2,
#relatert .tkp-section-head h2,
#faq .tkp-section-head h2,
#kontaktblokk .tkp-cta-card h2 {
  font-size: clamp(1.8rem, 2vw, 2.08rem) !important;
  line-height: 1.01 !important;
  letter-spacing: -0.035em !important;
  color: #10233a !important;
}

#hva-er .tkp-heading-block h2,
#bruksomrader .tkp-section-head h2,
#vurdering .tkp-section-head h2,
#fordeler .tkp-section-head h2,
#gjennomforinger .tkp-spotlight-copy h2,
#relatert .tkp-section-head h2,
#faq .tkp-section-head h2,
#kontaktblokk .tkp-cta-card h2 {
  margin: 0 0 0.8rem !important;
}

#kontaktblokk .tkp-kicker {
  color: #0077cc !important;
}

/* === Vurdering — editorial technical criteria matrix (section-only refinement) === */
#vurdering {
  padding-top: 0.95rem;
  padding-bottom: 3.15rem;
}

#vurdering .tkp-section-head {
  max-width: 920px;
  margin-bottom: 1.45rem;
}

#vurdering .tkp-kicker {
  margin-bottom: 0.95rem;
}

#vurdering .tkp-section-head h2 {
  max-width: 16.8ch;
  margin: 0 0 0.72rem;
}

#vurdering .tkp-check-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 2.6rem;
  border-top: 1px solid #d7e1eb;
  border-bottom: 1px solid #d7e1eb;
}

#vurdering .tkp-check-card {
  position: relative;
  min-height: 0;
  padding: 1.45rem 0 1.45rem;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

#vurdering .tkp-check-card:nth-child(odd) {
  padding-right: 1.45rem;
}

#vurdering .tkp-check-card:nth-child(even) {
  padding-left: 1.45rem;
  border-left: 1px solid #d7e1eb;
}

#vurdering .tkp-check-card:nth-child(n + 3) {
  border-top: 1px solid #d7e1eb;
}

#vurdering .tkp-check-card::before {
  display: block;
  margin: 0 0 0.82rem;
  font-family: 'Montserrat', sans-serif;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #0077cc;
}

#vurdering .tkp-check-card:nth-child(1)::before { content: '01'; }
#vurdering .tkp-check-card:nth-child(2)::before { content: '02'; }
#vurdering .tkp-check-card:nth-child(3)::before { content: '03'; }
#vurdering .tkp-check-card:nth-child(4)::before { content: '04'; }

#vurdering .tkp-check-card h3 {
  max-width: 18ch;
  margin: 0 0 0.62rem;
  font-size: 1.22rem;
  line-height: 1.16;
  letter-spacing: -0.022em;
}

#vurdering .tkp-check-card p {
  max-width: 41ch;
  margin: 0;
  font-size: 0.98rem;
  line-height: 1.68;
  color: #55687d;
}

@media (max-width: 991.98px) {
  #vurdering {
    padding-top: 0.7rem;
    padding-bottom: 2.7rem;
  }

  #vurdering .tkp-section-head,
  #vurdering .tkp-section-head h2,
  #vurdering .tkp-check-card h3,
  #vurdering .tkp-check-card p {
    max-width: none;
  }

  #vurdering .tkp-section-head {
    margin-bottom: 1.3rem;
  }

  #vurdering .tkp-check-grid {
    grid-template-columns: 1fr;
    gap: 0;
  }

  #vurdering .tkp-check-card,
  #vurdering .tkp-check-card:nth-child(odd),
  #vurdering .tkp-check-card:nth-child(even) {
    padding: 1.12rem 0;
  }

  #vurdering .tkp-check-card:nth-child(even) {
    border-left: 0;
  }

  #vurdering .tkp-check-card:nth-child(n + 2) {
    border-top: 1px solid #d7e1eb;
  }

  #vurdering .tkp-check-card:nth-child(n + 3) {
    border-top: 1px solid #d7e1eb;
  }

  #vurdering .tkp-check-card::before {
    margin-bottom: 0.68rem;
  }
}



/* === Gjennomføringer — section-only PRO refinement from baseline === */
#gjennomforinger {
  padding-top: 1.28rem;
  padding-bottom: 3.05rem;
}

#gjennomforinger .tkp-kicker {
  margin-bottom: 0.98rem;
}

#gjennomforinger .tkp-spotlight {
  grid-template-columns: minmax(0, 1.01fr) minmax(390px, 500px);
  gap: clamp(2.25rem, 3.8vw, 3rem);
  align-items: center;
}

#gjennomforinger .tkp-spotlight-copy {
  max-width: 690px;
}

#gjennomforinger .tkp-spotlight-copy h2 {
  max-width: 13.7ch;
  margin-bottom: 0.92rem;
}

#gjennomforinger .tkp-spotlight-copy p {
  max-width: 56ch;
}

#gjennomforinger .tkp-spotlight-copy p + p {
  margin-top: 0.82rem;
}

#gjennomforinger .tkp-spotlight-media {
  min-height: 392px;
  border-radius: 24px;
  border: 1px solid #dbe4ee;
  box-shadow: 0 14px 30px rgba(16, 35, 58, 0.08);
}

#gjennomforinger .tkp-spotlight-media img {
  object-position: 43% 52%;
}

@media (max-width: 991.98px) {
  #gjennomforinger {
    padding-top: 0.98rem;
    padding-bottom: 2.65rem;
  }

  #gjennomforinger .tkp-spotlight {
    gap: 1.4rem;
  }

  #gjennomforinger .tkp-spotlight-copy,
  #gjennomforinger .tkp-spotlight-copy p,
  #gjennomforinger .tkp-spotlight-copy h2 {
    max-width: none;
  }

  #gjennomforinger .tkp-spotlight-media {
    min-height: 320px;
  }

  #gjennomforinger .tkp-spotlight-media img {
    object-position: center;
  }
}

@media (max-width: 991.98px) {
  .tkp-intro-section {
    padding-top: 0.9rem;
  }

  .tkp-intro-aside {
    max-width: none;
    gap: 1rem;
  }

  .tkp-intro-photo {
    max-width: 420px;
    aspect-ratio: 16 / 10;
  }
}

@media (max-width: 767.98px) {
  .tkp-intro-photo {
    max-width: none;
    aspect-ratio: 16 / 10;
    border-radius: 18px;
  }
}

/* === Final7: intro section rebuild + heading consistency === */
#fordeler .tkp-feature-card h3,
#faq .tkp-faq-item h3 {
  font-size: 1.22rem;
  line-height: 1.16;
  letter-spacing: -0.022em;
}

#fordeler .tkp-feature-card h3 {
  max-width: 18ch;
}

#faq .tkp-faq-item h3 {
  max-width: 18ch;
}


/* === Typography reset by user preference === */
/* Bruksområder keeps the lighter/smaller title style from FINAL.css */
#bruksomrader .tkp-card h3 {
  max-width: 14.5ch;
  margin: 0 0 0.62rem;
  font-size: 1.18rem;
  line-height: 1.16;
  letter-spacing: -0.022em;
}

/* Sections below use the same smaller bold title style as Vurdering */
#fordeler .tkp-feature-card h3,
#relatert .tkp-related-body h3,
#faq .tkp-faq-item h3,
#kontaktblokk .tkp-cta-info h3 {
  margin: 0 0 0.62rem;
  font-size: 1.22rem;
  line-height: 1.16;
  letter-spacing: -0.022em;
  color: #10233a;
}

#fordeler .tkp-feature-card h3,
#relatert .tkp-related-body h3,
#faq .tkp-faq-item h3 {
  max-width: 18ch;
}

/* FAQ keeps the same rhythm but no hanging oversized question style */
#faq .tkp-faq-item h3 {
  margin: 0 0 0.62rem;
}

@media (max-width: 991.98px) {
  #bruksomrader .tkp-card h3,
  #fordeler .tkp-feature-card h3,
  #relatert .tkp-related-body h3,
  #faq .tkp-faq-item h3,
  #kontaktblokk .tkp-cta-info h3 {
    max-width: none;
  }
}


/* === EN page heading wrap polish (scoped override only) === */
html[lang="en"] #hva-er .tkp-heading-block h2 {
  max-width: 17.2ch !important;
}

html[lang="en"] #fordeler .tkp-section-head h2 {
  max-width: 17.4ch !important;
}

html[lang="en"] #faq .tkp-section-head h2 {
  max-width: 17.4ch !important;
}
