/* Åstveit Footer — only var(--e-global-…) for colors/fonts. */
.as-ftr{ position:relative; background:var(--e-global-color-footerbg); color:var(--e-global-color-text); padding-top:calc(clamp(110px, 11vw, 180px) - var(--as-ftr-ridge)); overflow-x:clip; overflow-y:visible; }
/* Wave hangs over the section above, so it blends into any background. */
.as-ftr .as-ridges--top{ top:calc(1px - var(--as-ftr-ridge)); height:var(--as-ftr-ridge); }
.as-ftr .r-top{ fill:transparent !important; }
.as-ftr .r-1{ fill:var(--e-global-color-border); fill-opacity:.7; }
.as-ftr .r-2{ fill:var(--e-global-color-accent); }
.as-ftr .r-3{ fill:var(--e-global-color-footerbg); }
.as-ftr .as-mist--light{ width:1000px; height:1000px; right:-320px; bottom:-460px; }

.as-ftr .as-ftr__cta{
  --as-cta-from:var(--e-global-color-secondary); --as-cta-to:var(--e-global-color-primary);
  display:flex; align-items:center; justify-content:space-between; gap:28px; flex-wrap:wrap;
  padding:clamp(30px, 4vw, 52px); border-radius:var(--as-radius-lg); margin-bottom:76px; color:var(--e-global-color-surface);
  background:linear-gradient(115deg, var(--as-cta-from) 0%, var(--as-cta-to) 55%, color-mix(in srgb, var(--as-cta-to) 75%, var(--e-global-color-surface)) 130%);
  box-shadow:var(--as-shadow);
}
.as-section.as-ftr .as-ftr__cta h2{ color:var(--e-global-color-surface); font-size:clamp(1.6rem, 1.2rem + 1.4vw, 2.4rem); margin:0 0 .25em; }
.as-ftr .as-ftr__cta p{ color:var(--e-global-color-surface); margin:0; }
.as-ftr .as-ftr__cta-actions{ display:flex; flex-wrap:wrap; gap:14px; }

.as-ftr .as-ftr__grid{ display:grid; grid-template-columns:1.3fr 1fr 1fr 1fr 1fr; gap:44px; padding-bottom:56px; }
.as-ftr .as-ftr__logo{ width:auto; height:auto; max-height:72px; max-width:100%; margin-bottom:26px; }
.as-ftr .as-ftr__contact{ font-style:normal; display:grid; gap:14px; }
.as-ftr .as-ftr__contact a,.as-ftr .as-ftr__contact span{ display:flex; gap:12px; align-items:flex-start; color:var(--e-global-color-text); text-decoration:none; font-size:1.0625rem; font-weight:600; }
.as-ftr .as-ftr__contact a:hover{ color:var(--e-global-color-text); text-decoration:underline; }
.as-ftr .as-ftr__contact svg{ width:22px; height:22px; flex:none; margin-top:3px; color:var(--e-global-color-primary); }
.as-section.as-ftr .as-ftr__col h3{ font-family:var(--e-global-typography-h3-font-family); font-size:1.125rem; font-weight:700; line-height:1.15; color:var(--e-global-color-text); margin:0 0 16px; }
.as-ftr .as-ftr__col ul{ list-style:none; margin:0; padding:0; display:grid; gap:10px; }
.as-ftr .as-ftr__col a{ color:var(--e-global-color-text); text-decoration:none; font-size:1rem; line-height:1.4; }
.as-ftr .as-ftr__col a:hover{ color:var(--e-global-color-text); text-decoration:underline; }
.as-ftr .as-ftr__bottom{ display:flex; flex-wrap:wrap; justify-content:space-between; gap:16px; align-items:center; border-top:1px solid color-mix(in srgb, var(--e-global-color-dark) 12%, transparent); padding-block:26px 10px; font-size:.95rem; }
.as-ftr .as-ftr__bottom ul{ display:flex; gap:24px; list-style:none; margin:0; padding:0; flex-wrap:wrap; }
.as-ftr .as-ftr__bottom a{ color:var(--e-global-color-text); }
.as-ftr .as-ftr__credit a{ text-decoration:none; }
.as-ftr .as-ftr__credit a:hover{ text-decoration:underline; }

.as-ftr .as-ftr__end{ position:relative; z-index:1; display:block; width:100%; height:auto; color:var(--e-global-color-primary); }

@media (max-width:1300px){
  .as-ftr .as-ftr__grid{ grid-template-columns:1fr 1fr 1fr; }
  .as-ftr .as-ftr__grid > :first-child{ grid-column:1 / -1; }
}
@media (max-width:640px){
  .as-ftr .as-ftr__grid{ grid-template-columns:1fr 1fr; gap:36px 24px; }
  .as-ftr .as-ftr__logo{ max-height:60px; }
  .as-ftr .as-ftr__cta .as-btn{ width:100%; justify-content:center; }
}
@media (max-width:440px){ .as-ftr .as-ftr__grid{ grid-template-columns:1fr; } }

/* fix (user): less empty space at the very bottom — wave band kept low, anchored to the bottom */
.as-ftr .as-ftr__end{ height:clamp(34px, 3.6vw, 64px); margin-top:-8px; }
.nnwp-footer, .nnwp-footer .elementor, .nnwp-footer .e-con{ margin-bottom:0 !important; padding-bottom:0 !important; }

/* fix (user): the light mist circle stuck out 460px below the footer and made white space under the page. Keep only its visible top half inside the footer. */
.as-ftr .as-mist--light{ bottom:0; height:540px; border-radius:0; background:radial-gradient(500px 500px at 50% 100%, color-mix(in srgb, var(--e-global-color-surface) 95%, transparent), transparent); }
