/* Offer label / divider / heading rhythm, matching Hjem and Om oss. */
:is(body.skema-service-custom-hero, body.page-id-10693) #pxl-main {
  --skema-section-divider-gap: 30px;
}
:is(body.skema-service-custom-hero, body.page-id-10693) #pxl-main :is(.skema-hero-test__divider, .skema-audit-divider) {
  margin: var(--skema-section-divider-gap) 0;
}
/* Elementor headings below a separate divider share the same lower gap. */
:is(body.skema-service-custom-hero, body.page-id-10693) #pxl-main .elementor-widget-pxl_divider + .elementor-widget-pxl_heading > .elementor-widget-container {
  margin-top: var(--skema-section-divider-gap);
}

/* Audit introduction places its heading inside the following grid. */
body.page-id-10693 #pxl-main .elementor-element-d83e704 {
  --margin-top: var(--skema-section-divider-gap);
  margin-top: var(--skema-section-divider-gap);
}

/* Homepage section label: wrap naturally instead of overflowing small screens. */
@media (max-width:767px) {
 body.page-id-9966 .elementor-element-22e12bb .pxl-heading--inner,
 body.page-id-9966 .elementor-element-22e12bb .pxl-item--subtitle { min-width:0; max-width:100%; }
 body.page-id-9966 .elementor-element-22e12bb .pxl-item--subtext { white-space:normal; display:block; max-width:100%; font-size:14px; line-height:1.45; overflow-wrap:break-word; }
}
/* Shared service introductions. Hero cards and unrelated sections are unchanged. */
#pxl-main .elementor .skema-offer-intro { min-width: 0; }
/* One shared grid keeps the heading over the white panel on all three offers. */
#pxl-main .elementor .skema-offer-intro__wrapper {
  --skema-intro-columns: minmax(0, 352px) minmax(0, 1fr);
  --skema-intro-column-gap: clamp(32px, 4vw, 64px);
  --skema-intro-panel-inset: 40px;
  --display: grid;
  --margin-top: clamp(56px, 7vw, 104px);
  display: grid;
  grid-template-columns: var(--skema-intro-columns);
  column-gap: var(--skema-intro-column-gap);
  row-gap: 0;
  align-items: start;
  margin-top: clamp(56px, 7vw, 104px);
  min-width: 0;
}
#pxl-main .elementor .skema-offer-intro__label,
#pxl-main .elementor .skema-offer-intro__divider { grid-column: 1 / -1; min-width: 0; }
#pxl-main .elementor .skema-offer-intro__label .pxl-item--title { display: none; }
#pxl-main .elementor .skema-offer-intro__heading {
  --align-self: start;
  grid-column: 2;
  align-self: start;
  width: 100%;
  min-width: 0;
}
#pxl-main .elementor .skema-offer-intro__heading > .elementor-widget-container { margin: 30px 0 0; }
#pxl-main .elementor .skema-offer-intro__heading .pxl-heading { text-align: left; justify-content: flex-start; }
#pxl-main .elementor .skema-offer-intro__heading .pxl-heading--inner { width: 100%; max-width: 100%; }
#pxl-main .elementor .skema-offer-intro__heading .pxl-item--title {
  font-family: 'Funnel Display', sans-serif;
  font-size: clamp(36px, 3.6vw, 48px);
  font-weight: 400;
  line-height: 1.2;
  text-wrap: balance;
  color: #171717;
}
#pxl-main .elementor .skema-offer-intro__row {
  --display: grid;
  --margin-top: 36px;
  --container-widget-height: initial;
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: var(--skema-intro-columns);
  column-gap: var(--skema-intro-column-gap);
  row-gap: 32px;
  align-items: start;
  margin-top: 36px;
  min-width: 0;
}
#pxl-main .elementor .skema-offer-intro__benefits,
#pxl-main .elementor .skema-offer-intro__prose {
  --width: 100%;
  --justify-content: flex-start;
  --container-widget-height: initial;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  height: auto;
  align-self: start;
}
/* The rail sits beside the panel; its final line aligns with the panel text. */
#pxl-main .elementor .skema-offer-intro__benefits {
  align-self: end;
  padding: 0 0 var(--skema-intro-panel-inset);
}
#pxl-main .elementor .skema-offer-intro__benefits .skema-service-benefits { padding-top: 0; }
#pxl-main .elementor .skema-offer-intro__prose {
  --gap: 0px;
  gap: 0;
  padding: var(--skema-intro-panel-inset);
  border-radius: 10px;
  background-color: #fff;
}
#pxl-main .elementor .skema-offer-intro__prose .pxl-text-editor { color: #171717; }
#pxl-main .elementor .skema-offer-intro__prose .pxl-text-editor p { margin: 0; font-size: 22px; line-height: 1.5; }
#pxl-main .elementor .skema-offer-intro__prose > .elementor-widget > .elementor-widget-container { margin: 0 0 24px; }
#pxl-main .elementor .skema-offer-intro__prose > .elementor-widget:last-child > .elementor-widget-container { margin-bottom: 0; }
.skema-service-benefits {
  --skema-benefit-lime: #d9fe00;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 24px;
  width: 100%;
  min-width: 0;
  padding-top: 8px;
  color: #171717;
}
.skema-service-benefits .skema-benefit-feature {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr);
  align-items: start;
  gap: 16px;
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.skema-service-benefits .skema-benefit-feature + .skema-benefit-feature { padding-top: 24px; border-top: 1px solid #dedede; }
.skema-benefit-feature__icon {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: 8px;
  background: var(--skema-benefit-lime, #d9fe00);
  color: #171717;
}
.skema-benefit-feature__icon svg { display: block; width: 23px; height: 23px; }
.skema-benefit-feature__copy { min-width: 0; }
.skema-service-benefits .skema-benefit-feature h3 {
  margin: 2px 0 8px;
  font-family: 'Funnel Display', sans-serif;
  font-size: 24px;
  line-height: 1.25;
  font-weight: 400;
  letter-spacing: -.4px;
  color: #171717;
  overflow-wrap: break-word;
}
.skema-service-benefits .skema-benefit-feature p { margin: 0; font-size: 16px; line-height: 1.6; color: #454545; overflow-wrap: break-word; }
.skema-context-cta__button:focus-visible { outline: 3px solid #d9fe00; outline-offset: 5px; }
/* Keep service labels and the currency unit in Norwegian sentence case. */
.pxl-post-reveal.pxl-post-reveal1 .pxl-item--reveal .pxl-item--category,
.pxl-post-reveal.pxl-post-reveal1 .pxl-column--categories .pxl-item--category,
.skema-service-custom-hero #pxl-main .pxl-pricing.pxl-pricing1 .pxl--billing-cycle { text-transform: none; }
/* Process copy sits on the light service background, not in the dark hero. */
.skema-service-custom-hero #pxl-main .pxl-list .pxl-content { color: #595959; }
/* Readable price units and descriptions on both the light and hovered dark card. */
.skema-service-custom-hero #pxl-main .pxl-pricing.pxl-pricing1 .pxl--billing-cycle,
.skema-service-custom-hero #pxl-main .pxl-pricing.pxl-pricing1 .pxl-item--desc { color: #595959; }
.skema-service-custom-hero #pxl-main .pxl-pricing.pxl-pricing1:hover .pxl--billing-cycle,
.skema-service-custom-hero #pxl-main .pxl-pricing.pxl-pricing1:hover .pxl-item--desc { color: #e5e5e5; }
.skema-service-custom-hero #pxl-main .pxl-pricing.pxl-pricing1 .pxl-item--title { line-height: 1.25; }
.skema-service-custom-hero #pxl-main .pxl-pricing.pxl-pricing1 .pxl-pricing--feature { line-height: 1.5; }
@media (max-width: 1024px) {
  #pxl-main .elementor .skema-offer-intro__wrapper {
    --skema-intro-columns: minmax(0, 1fr);
    --skema-intro-panel-inset: 32px;
  }
  #pxl-main .elementor .skema-offer-intro__heading { grid-column: 1 / -1; }
  #pxl-main .elementor .skema-offer-intro__benefits { align-self: start; padding: 0; }
  #pxl-main .elementor .skema-offer-intro__row { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  #pxl-main .elementor .skema-offer-intro__prose .pxl-text-editor p { font-size: 20px; line-height: 1.55; }
  .skema-service-benefits { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 32px; padding-top: 0; }
  .skema-service-benefits .skema-benefit-feature + .skema-benefit-feature { padding-top: 0; border-top: 0; }
}
@media (max-width: 600px) {
  #pxl-main .elementor .skema-offer-intro__heading > .elementor-widget-container { margin-top: 24px; }
  #pxl-main .elementor .skema-offer-intro__heading .pxl-item--title { font-size: 32px; line-height: 1.2; }
  #pxl-main .elementor .skema-offer-intro__row { --margin-top: 28px; margin-top: 28px; gap: 28px; }
  #pxl-main .elementor .skema-offer-intro__prose { padding: 24px 20px; }
  #pxl-main .elementor .skema-offer-intro__prose .pxl-text-editor p { font-size: 18px; line-height: 1.6; }
  #pxl-main .elementor .skema-offer-intro__prose > .elementor-widget > .elementor-widget-container { margin-bottom: 20px; }
  #pxl-main .elementor .skema-offer-intro__prose > .elementor-widget:last-child > .elementor-widget-container { margin-bottom: 0; }
  .skema-service-benefits { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .skema-service-benefits .skema-benefit-feature + .skema-benefit-feature { padding-top: 20px; border-top: 1px solid #dedede; }
  .skema-service-benefits .skema-benefit-feature h3 { font-size: 22px; }
  #pxl-footer-elementor .skema-context-cta__button { max-width: 100%; padding-right: 14px; }
  #pxl-footer-elementor .skema-context-cta__button .pxl--btn-text { white-space: normal; font-size: 14px; line-height: 1.5; }
}
