:root{--page-title-display:none;}/* Start custom CSS *//* Kundelogoer: 8 plasser som bytter logo i tur og orden (fade, blur og glid). Animasjonen stopper aldri. */
#kunder > * { position: relative; }
#kunder > * > * { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; opacity: 0; visibility: hidden; animation: fwLogoCycle 14s linear infinite both; animation-delay: calc(var(--fw-i, 0s) + var(--fw-s, 0s)); }
#kunder > * > :nth-child(2) { --fw-i: 3.5s; }
#kunder > * > :nth-child(3) { --fw-i: 7s; }
#kunder > * > :nth-child(4) { --fw-i: 10.5s; }
#kunder > :nth-child(2) { --fw-s: 0.12s; }
#kunder > :nth-child(3) { --fw-s: 0.24s; }
#kunder > :nth-child(4) { --fw-s: 0.36s; }
#kunder > :nth-child(5) { --fw-s: 0.48s; }
#kunder > :nth-child(6) { --fw-s: 0.6s; }
#kunder > :nth-child(7) { --fw-s: 0.72s; }
#kunder > :nth-child(8) { --fw-s: 0.84s; }
@keyframes fwLogoCycle {
  0% { opacity: 0; visibility: hidden; transform: translateY(14px); filter: blur(8px); }
  1% { visibility: visible; }
  4% { opacity: 1; transform: none; filter: blur(0); }
  21% { opacity: 1; transform: none; filter: blur(0); visibility: visible; }
  25% { opacity: 0; transform: translateY(-14px); filter: blur(8px); visibility: hidden; }
  100% { opacity: 0; transform: translateY(-14px); filter: blur(8px); visibility: hidden; }
}
#kunder img { width: 100%; max-width: 128px; height: auto; max-height: 64px; object-fit: contain; }
@media (max-width: 767px) { #kunder img { max-width: 96px; max-height: 40px; } }
@media (prefers-reduced-motion: reduce) { #kunder > * > * { animation: none; } #kunder > * > :first-child { opacity: 1; visibility: visible; } }

/* Rammelinjer: tegnes som egne linjer og beveger seg litt ved scroll */
@media (min-width: 768px) {
  .g-fc4936f { border-left-width: 0 !important; border-right-width: 0 !important; view-timeline: --fw-frame block; }
  .g-fc4936f::before, .g-fc4936f::after { content: ""; position: absolute; top: 0; bottom: 0; width: 1px; background-color: rgba(30, 30, 30, 0.12); pointer-events: none; z-index: 0; }
  .g-fc4936f::before { left: 0; }
  .g-fc4936f::after { right: 0; }
  .g-113e7ca::before, .g-113e7ca::after { background-color: rgba(246, 246, 241, 0.12); }
}
@supports (animation-timeline: view()) {
  @media (min-width: 768px) and (prefers-reduced-motion: no-preference) {
    @keyframes fwLineLeft { from { transform: translate(-14px, 24px); } to { transform: translate(14px, -24px); } }
    @keyframes fwLineRight { from { transform: translate(14px, 24px); } to { transform: translate(-14px, -24px); } }
    .g-fc4936f::before { animation: fwLineLeft linear both; animation-timeline: --fw-frame; }
    .g-fc4936f::after { animation: fwLineRight linear both; animation-timeline: --fw-frame; }
  }
}

/* Bildekaruseller i kundecaser (knapper og indikator lages av Custom Code-snippet) */
[id^="fw-carousel-"][id$="-track"] { scrollbar-width: none; -ms-overflow-style: none; }
[id^="fw-carousel-"][id$="-track"]::-webkit-scrollbar { display: none; }
.fw-carousel-ui { position: absolute; left: 0; right: 0; bottom: 0; z-index: 2; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 56px 20px 20px; background: linear-gradient(to top, rgba(23, 6, 20, 0.45), rgba(23, 6, 20, 0)); pointer-events: none; }
.fw-carousel-dots, .fw-carousel-nav { display: flex; align-items: center; gap: 8px; pointer-events: auto; }
button.fw-carousel-dot { box-sizing: content-box; width: 6px; height: 6px; padding: 9px 3px; margin: 0; border: 0; border-radius: 6px; background-color: rgba(246, 246, 241, 0.55); background-clip: content-box; cursor: pointer; transition: width 0.45s cubic-bezier(0.2, 0.7, 0.2, 1), background-color 0.3s ease; }
button.fw-carousel-dot:hover, button.fw-carousel-dot:focus { background-color: rgba(246, 246, 241, 0.85); color: inherit; }
button.fw-carousel-dot.is-active { width: 28px; background-color: #F6F6F1; }
button.fw-carousel-btn { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; padding: 0; margin: 0; border: 0; border-radius: 4px; background-color: rgba(246, 246, 241, 0.92); color: #1E1E1E; cursor: pointer; transition: background-color 0.3s ease, color 0.3s ease, transform 0.12s ease; }
button.fw-carousel-btn:focus:not(:hover) { background-color: rgba(246, 246, 241, 0.92); color: #1E1E1E; }
button.fw-carousel-btn:hover { background-color: #AA007A; color: #FFFFFF; }
button.fw-carousel-btn:active { transform: scale(0.95); }
button.fw-carousel-btn:focus-visible, button.fw-carousel-dot:focus-visible { outline: 2px solid #F4C6E4; outline-offset: 3px; }
@media (max-width: 767px) { .fw-carousel-ui { padding: 40px 12px 12px; } button.fw-carousel-btn { width: 36px; height: 36px; } }

/* Slik jobber vi: to trekkspill side om side, pluss som vris til kryss og innhold som fader inn */
#slik-jobber-vi summary { list-style: none; }
#slik-jobber-vi summary::-webkit-details-marker { display: none; }
#slik-jobber-vi summary::after { content: "+"; flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; font-family: 'IBM Plex Sans', sans-serif; font-size: 30px; font-weight: 300; line-height: 1; color: #55534E; transition: transform 0.4s cubic-bezier(0.2, 0.7, 0.2, 1), color 0.3s ease; }
#slik-jobber-vi summary:hover::after { color: #AA007A; }
#slik-jobber-vi details[open] > summary::after { transform: rotate(45deg); color: #1E1E1E; }
#slik-jobber-vi summary:focus-visible { outline: 2px solid #AA007A; outline-offset: 4px; }
@keyframes fwPanelFade { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }
#slik-jobber-vi details[open] > :not(summary) { animation: fwPanelFade 0.5s cubic-bezier(0.2, 0.7, 0.2, 1) both; }
@media (prefers-reduced-motion: reduce) { #slik-jobber-vi details[open] > :not(summary) { animation: none; } #slik-jobber-vi summary::after { transition: none; } }

/* Team: papirfly etter e-post og telefon etter nummer ved hover, teksten trykkes inn ved klikk */
#kontakt a[href^="mailto:"] { --fw-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 14l11 -11'/%3E%3Cpath d='M21 3l-6.5 18a.55 .55 0 0 1 -1 0l-3.5 -7l-7 -3.5a.55 .55 0 0 1 0 -1l18 -6.5'/%3E%3C/svg%3E"); --fw-from: translate(-8px, 6px); }
#kontakt a[href^="tel:"] { --fw-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 4h4l2 5l-2.5 1.5a11 11 0 0 0 5 5l1.5 -2.5l5 2v4a2 2 0 0 1 -2 2a16 16 0 0 1 -15 -15a2 2 0 0 1 2 -2'/%3E%3C/svg%3E"); --fw-from: translateX(-6px) rotate(-20deg); }
#kontakt a[href^="mailto:"], #kontakt a[href^="tel:"] { display: inline-block; transform-origin: left center; transition: color 0.2s ease, transform 0.12s ease; }
#kontakt a[href^="mailto:"]::after, #kontakt a[href^="tel:"]::after { content: ""; display: inline-block; width: 1em; height: 1em; margin-left: 0.5em; vertical-align: -0.15em; background-color: currentColor; -webkit-mask: var(--fw-icon) center / contain no-repeat; mask: var(--fw-icon) center / contain no-repeat; opacity: 0; transform: var(--fw-from); transition: opacity 0.3s ease, transform 0.35s cubic-bezier(0.2, 0.7, 0.2, 1); }
#kontakt a[href^="mailto:"]:hover::after, #kontakt a[href^="mailto:"]:focus-visible::after, #kontakt a[href^="tel:"]:hover::after, #kontakt a[href^="tel:"]:focus-visible::after { opacity: 1; transform: none; }
#kontakt a[href^="mailto:"]:active, #kontakt a[href^="tel:"]:active { transform: scale(0.95); }
@media (hover: none) { #kontakt a[href^="mailto:"]::after, #kontakt a[href^="tel:"]::after { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { #kontakt a[href^="mailto:"], #kontakt a[href^="tel:"], #kontakt a[href^="mailto:"]::after, #kontakt a[href^="tel:"]::after { transition: none; } }/* End custom CSS */