/* søftbean – Website */
@font-face{font-family:'Bodoni Moda';font-style:normal;font-weight:400;font-display:swap;src:url(bodoni-moda-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Bodoni Moda';font-style:italic;font-weight:400;font-display:swap;src:url(bodoni-moda-latin-400-italic.woff2) format('woff2')}
@font-face{font-family:'Newsreader';font-style:normal;font-weight:300;font-display:swap;src:url(newsreader-latin-300-normal.woff2) format('woff2')}
@font-face{font-family:'Newsreader';font-style:normal;font-weight:400;font-display:swap;src:url(newsreader-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Space Mono';font-style:normal;font-weight:400;font-display:swap;src:url(space-mono-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:500;font-display:swap;src:url(hanken-grotesk-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:400;font-display:swap;src:url(manrope-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:500;font-display:swap;src:url(manrope-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:600;font-display:swap;src:url(manrope-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:700;font-display:swap;src:url(manrope-latin-700-normal.woff2) format('woff2')}
@font-face{font-family:'Quicksand';font-style:normal;font-weight:500;font-display:swap;src:url(quicksand-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'Quicksand';font-style:normal;font-weight:600;font-display:swap;src:url(quicksand-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Quicksand';font-style:normal;font-weight:700;font-display:swap;src:url(quicksand-latin-700-normal.woff2) format('woff2')}

html{scroll-behavior:smooth}
*,*::before,*::after{box-sizing:border-box}
img,video{max-width:none}
.sb-hero{position:relative;width:100%;height:100vh;height:100svh;min-height:420px;max-height:1600px;background:#6b2aac;overflow:hidden}
@media (orientation: landscape){.sb-hero{height:min(100vh,70.3125vw);height:min(100svh,70.3125vw)}}
.sb-hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 60%;display:block;background:#6b2aac}
@media (orientation: portrait){.sb-hero-video{object-position:52% 70%}}
.sb-scenewrap{--sh:clamp(560px,100vh,900px);position:relative;height:calc(var(--sh) * 4)}
@supports (height:100svh){.sb-scenewrap{--sh:clamp(560px,100svh,900px)}}
.sb-scene{position:sticky;top:0;height:var(--sh);overflow:hidden}
.sb-skip{position:absolute;left:-9999px;top:8px;z-index:200;background:#fff;color:#6b2aac;padding:10px 16px;border-radius:999px;font-weight:700}
.sb-skip:focus{left:16px}
a:focus-visible{outline:2px solid #ffffff;outline-offset:3px}
body{margin:0;background:#6b2aac}
a{color:#ffffff}a:hover{color:#e7dcf5}
@keyframes sb-kenburns{from{transform:scale(1)}to{transform:scale(1.05)}}
@keyframes sb-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes sb-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@keyframes sb-spin{to{transform:rotate(360deg)}}
@keyframes sb-float{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-28px) scale(1.08)}}
@keyframes sb-pop{from{opacity:0;transform:scale(.6) rotate(-20deg)}to{opacity:1;transform:scale(1) rotate(0)}}
@keyframes sb-up{from{opacity:0;transform:translateY(48px)}to{opacity:1;transform:translateY(0)}}
.sb-kenburns{animation:sb-kenburns 22s ease-in-out infinite alternate;transform-origin:50% 70%}
.sb-fade-x{-webkit-mask-image:linear-gradient(to right,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(to right,transparent,#000 6%,#000 94%,transparent)}
.sb-track{animation:sb-marquee 26s linear infinite}
.sb-fade-xy{-webkit-mask-image:linear-gradient(to right,transparent,#000 9%,#000 91%,transparent),linear-gradient(to bottom,transparent,#000 9%,#000 91%,transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent,#000 9%,#000 91%,transparent),linear-gradient(to bottom,transparent,#000 9%,#000 91%,transparent);mask-composite:intersect}
.sb-bob{animation:sb-bob 6s ease-in-out infinite}
.sb-badge{animation:sb-pop .9s cubic-bezier(.34,1.56,.64,1) both}
.sb-spin{animation:sb-spin 14s linear infinite;transform-origin:50% 50%}
.sb-bubble{animation:sb-float 7s ease-in-out infinite}
.sb-lift{transition:transform .35s cubic-bezier(.34,1.56,.64,1),box-shadow .35s ease}
.sb-lift:hover{transform:translateY(-8px) rotate(-.6deg);box-shadow:0 22px 44px rgba(30,8,60,.35)}
.sb-zoom img{transition:transform .6s cubic-bezier(.22,1,.36,1)}
.sb-zoom:hover img{transform:scale(1.07)}
@keyframes sb-drift{0%,100%{object-position:0% 50%}50%{object-position:100% 50%}}
.sb-drift{animation:sb-drift 18s ease-in-out infinite}
@media (prefers-reduced-motion: reduce){.sb-drift{animation:none}}
@keyframes sb-scalein{from{opacity:.35;transform:scale(.8) translateY(60px)}to{opacity:1;transform:scale(1) translateY(0)}}
@supports (animation-timeline: view()){.sb-scrollin{animation:sb-scalein linear both;animation-timeline:view();animation-range:entry 0% cover 45%}}
@media (prefers-reduced-motion: reduce){.sb-scrollin{animation:none}}
@keyframes sb-in{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
@keyframes sb-drop{from{opacity:0;transform:translateY(-36px)}to{opacity:1;transform:translateY(0)}}
@keyframes sb-twinkle{0%,100%{opacity:.2;transform:scale(.55) rotate(0deg)}50%{opacity:1;transform:scale(1.1) rotate(45deg)}}
@keyframes sb-from-left{from{opacity:0;transform:translateX(-16vw)}to{opacity:1;transform:translateX(0)}}
@keyframes sb-from-right{from{opacity:0;transform:translateX(16vw)}to{opacity:1;transform:translateX(0)}}
@keyframes sb-grow{to{transform:scaleX(1)}}
@keyframes sb-pulse{0%{box-shadow:0 0 0 0 rgba(107,42,172,.55)}100%{box-shadow:0 0 0 18px rgba(107,42,172,0)}}
@keyframes sb-nudge{0%,100%{transform:translateX(0)}50%{transform:translateX(6px)}}
@keyframes sb-tilein{from{opacity:0;transform:translateY(70px) rotate(-3deg) scale(.9)}to{opacity:1;transform:none}}
.sb-in{animation:sb-in 1s cubic-bezier(.22,1,.36,1) both}
.sb-drop{animation:sb-drop .9s cubic-bezier(.34,1.56,.64,1) both}
.sb-twinkle{animation:sb-twinkle 3.2s ease-in-out infinite}
.sb-track-rev{animation:sb-marquee 34s linear infinite reverse}
.sb-pulse{animation:sb-pulse 2.4s ease-out infinite}
.sb-arrow{animation:sb-nudge 1.6s ease-in-out infinite}
@supports (animation-timeline: view()){
.sb-sl{animation:sb-from-left linear both;animation-timeline:view();animation-range:entry 0% cover 40%}
.sb-sr{animation:sb-from-right linear both;animation-timeline:view();animation-range:entry 0% cover 40%}
.sb-tile{animation:sb-tilein linear both;animation-timeline:view();animation-range:entry 0% cover 25%}
.sb-tile:nth-child(4n+2){animation-range:entry 4% cover 30%}
.sb-tile:nth-child(4n+3){animation-range:entry 8% cover 35%}
.sb-tile:nth-child(4n+4){animation-range:entry 12% cover 40%}
}
@supports (animation-timeline: scroll()){.sb-progress{animation:sb-grow linear both;animation-timeline:scroll(root)}}
.sb-shimmer{background:linear-gradient(110deg,#ffffff 0%,#ffffff 40%,#c9a8f0 50%,#ffffff 60%,#ffffff 100%);background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:sb-shimmer 4s linear infinite}
@keyframes sb-shimmer{from{background-position:100% 0}to{background-position:0% 0}}
.sb-sep{flex:0 0 auto;animation:sb-sepspin 6s linear infinite, sb-twinkle 3s ease-in-out infinite}
@keyframes sb-sepspin{to{rotate:360deg}}
.sb-pin{animation:sb-pinbounce 2.2s cubic-bezier(.34,1.56,.64,1) infinite}
@keyframes sb-pinbounce{0%,60%,100%{transform:translateY(0)}30%{transform:translateY(-4px)}}
.sb-glint{left:-22%;animation:sb-glint 5s cubic-bezier(.65,0,.35,1) infinite}
.sb-glint-rev{animation-direction:reverse;animation-delay:-2.5s}
@keyframes sb-glint{from{left:-22%}to{left:100%}}
@keyframes sb-barin{from{opacity:0;transform:translateY(14px);filter:blur(4px)}to{opacity:1;transform:none;filter:none}}
@supports (animation-timeline: view()){.sb-barin{display:inline-block;animation:sb-barin linear both;animation-timeline:view();animation-range:entry 0% cover 40%}}
@media (prefers-reduced-motion: reduce){.sb-shimmer,.sb-sep,.sb-pin,.sb-glint,.sb-barin{animation:none}.sb-shimmer{color:#ffffff;background:none}}
.sb-hitem{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.sb-hline{align-self:stretch;height:1px;background:rgba(255,255,255,.4);transform:scaleX(0);transform-origin:0 50%;transition:transform 1.2s cubic-bezier(.65,0,.35,1)}
.sb-hlabel{font-family:'Space Mono',ui-monospace,monospace;font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:#ece3f8;background:rgba(255,255,255,.14);border-radius:4px;padding:6px 10px;opacity:0;transform:translateY(12px);transition:opacity .7s ease,transform .9s cubic-bezier(.22,1,.36,1)}
.sb-hmask{overflow:hidden;padding:.06em 0 .12em;margin-top:2px}
.sb-hval{display:inline-flex;align-items:baseline;gap:.25em;font-family:Newsreader,'Times New Roman',serif;font-weight:300;font-size:clamp(28px,3vw,44px);line-height:1.08;letter-spacing:-.01em;color:#ffffff;text-decoration:none;transform:translateY(115%);transition:transform 1.1s cubic-bezier(.22,1,.36,1)}
.sb-hlink:hover{color:#e9dcfb}
.sb-hsub{margin:0;font-family:'Hanken Grotesk','Helvetica Neue',sans-serif;font-weight:500;font-size:16px;color:#d6c2f2;opacity:0;transform:translateY(10px);transition:opacity .8s ease,transform .9s cubic-bezier(.22,1,.36,1)}
.sb-hours-in .sb-hline{transform:scaleX(1)}
.sb-hours-in .sb-hlabel,.sb-hours-in .sb-hsub{opacity:1;transform:none}
.sb-hours-in .sb-hval{transform:none}
.sb-hitem .sb-hlabel{transition-delay:.25s}
.sb-hitem .sb-hval{transition-delay:.4s}
.sb-hitem .sb-hsub{transition-delay:.65s}
.sb-hbig{font-family:Quicksand,Manrope,sans-serif !important;font-weight:600 !important;font-size:clamp(24px,2.6vw,34px) !important;letter-spacing:0 !important}
.sb-hhuge{font-family:Quicksand,Manrope,sans-serif !important;font-weight:700 !important;font-size:clamp(48px,6.4vw,92px) !important;line-height:1 !important;letter-spacing:-.02em !important}
.sb-hitem .sb-hmask + .sb-hmask .sb-hval{transition-delay:.55s}
.sb-hitem a.sb-hsub{transition-delay:.85s}
.sb-clock{opacity:0;transform:scale(.85) rotate(-8deg);transition:opacity .9s ease,transform 1.2s cubic-bezier(.34,1.56,.64,1)}
.sb-hours-in .sb-clock{opacity:1;transform:none}
.sb-clocksvg{filter:drop-shadow(0 22px 34px rgba(30,8,60,.35))}
@media (max-width: 640px){.sb-clockwrap{flex-direction:column;text-align:center}.sb-clockwrap .sb-hitem{align-items:center}}
@media (prefers-reduced-motion: reduce){.sb-clock{opacity:1;transform:none;transition:none}}
.sb-hitem:nth-child(2) .sb-hline{transition-delay:.18s}
.sb-hitem:nth-child(2) .sb-hlabel{transition-delay:.43s}
.sb-hitem:nth-child(2) .sb-hval{transition-delay:.58s}
.sb-hitem:nth-child(2) .sb-hsub{transition-delay:.83s}
.sb-hitem:nth-child(3) .sb-hline{transition-delay:.36s}
.sb-hitem:nth-child(3) .sb-hlabel{transition-delay:.61s}
.sb-hitem:nth-child(3) .sb-hval{transition-delay:.76s}
.sb-hitem:nth-child(3) .sb-hsub{transition-delay:1.01s}
@media (prefers-reduced-motion: reduce){.sb-hline,.sb-hlabel,.sb-hval,.sb-hsub{transition:none !important;transform:none !important;opacity:1 !important}}
@media (max-width: 640px){
.sb-kartepill{flex-direction:column;justify-content:center !important;text-align:center;border-radius:28px !important;padding:24px 20px !important}
.sb-iggrid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:10px !important}
.sb-iggrid > a{border-radius:16px !important}
.sb-icon{width:44px !important;height:44px !important}
.sb-cloud{opacity:.75}
.sb-scene-title{font-size:56px !important}
}
.sb-fallvid{-webkit-mask-image:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.35) 10%,#000 24%,#000 66%,transparent 100%),linear-gradient(to right,transparent,#000 9%,#000 91%,transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.35) 10%,#000 24%,#000 66%,transparent 100%),linear-gradient(to right,transparent,#000 9%,#000 91%,transparent);mask-composite:intersect}
@media (max-width: 640px){.sb-fallvid{width:160% !important;margin-left:-30%}}
.sb-fl{position:absolute;top:100%;height:auto;will-change:transform;user-select:none}
.sb-layer-back .sb-fl{opacity:.55;filter:blur(1.5px)}
.sb-layer-front .sb-fl{filter:blur(1.5px)}
@media (max-width: 640px){.sb-hide-sm{display:none}}
@media (prefers-reduced-motion: reduce){.sb-fl{display:none}}
.sb-intro{animation:sb-introfade .9s cubic-bezier(.65,0,.35,1) 2.5s forwards}
@keyframes sb-introfade{to{opacity:0;visibility:hidden}}
.sb-icloud{animation:sb-introcloud 3.3s cubic-bezier(.65,0,.35,1) both;animation-delay:var(--d,0s)}
@keyframes sb-introcloud{0%{opacity:0;transform:translate(var(--fx),var(--fy)) scale(.85)}25%{opacity:1}42%,68%{opacity:1;transform:translate(0,0) scale(1)}100%{opacity:0;transform:translate(var(--ox),var(--oy)) scale(1.2)}}
.sb-ilogo{animation:sb-ilogoout .9s cubic-bezier(.65,0,.35,1) 2.25s both}
@keyframes sb-ilogoout{to{opacity:0;transform:scale(1.1);filter:blur(8px)}}
.sb-iemblem{animation:sb-iemblem 1.1s cubic-bezier(.34,1.56,.64,1) .45s both}
@keyframes sb-iemblem{from{opacity:0;transform:scale(.3) rotate(-140deg)}to{opacity:1;transform:none}}
.sb-iword{animation:sb-iword 1s cubic-bezier(.65,0,.35,1) 1s both}
@keyframes sb-iword{from{opacity:.2;clip-path:inset(0 100% 0 0)}to{opacity:1;clip-path:inset(0 0 0 0)}}
.sb-ispark{animation:sb-ispark 1.2s ease-out 1.5s both}
@keyframes sb-ispark{0%{opacity:0;transform:scale(0) rotate(0)}40%{opacity:1;transform:scale(1.2) rotate(90deg)}100%{opacity:0;transform:scale(.6) rotate(180deg)}}
@media (prefers-reduced-motion: reduce){.sb-intro{display:none}}
.sb-root > header, .sb-root > main, .sb-root > footer, .sb-root > .sb-layer{position:relative;z-index:1}
.sb-clouds{position:absolute;inset:0;z-index:0;pointer-events:none}
.sb-cloud{position:absolute;opacity:0;transform:translate(var(--dx,0px),var(--dy,40px));transition:opacity 1.4s ease,transform 1.8s cubic-bezier(.22,1,.36,1);transition-delay:var(--delay,0s)}
.sb-cloud.is-visible{opacity:var(--alpha,1);transform:translate(0,0)}
.sb-cloud img{display:block;width:100%;height:auto;transform:scaleX(var(--flip,1))}
.sb-cloud.is-visible img{animation:sb-cloudfloat var(--float,9s) ease-in-out infinite;animation-delay:calc(var(--delay,0s) + 1.8s)}
@keyframes sb-cloudfloat{0%,100%{transform:scaleX(var(--flip,1)) translateY(0)}50%{transform:scaleX(var(--flip,1)) translateY(-12px)}}
@media (prefers-reduced-motion: reduce){.sb-cloud{opacity:var(--alpha,1);transform:none;transition:none}.sb-cloud.is-visible img{animation:none}}
@keyframes sb-ping{0%{transform:scale(1);opacity:.7}100%{transform:scale(2.6);opacity:0}}
.sb-ping{animation:sb-ping 1.6s cubic-bezier(0,0,.2,1) infinite}
@media (prefers-reduced-motion: reduce){.sb-ping{animation:none;opacity:0}}
@keyframes sb-heroout{to{transform:scale(1.14) translateY(6%);opacity:.3}}
@keyframes sb-doodle{0%,100%{transform:translateY(0) rotate(-8deg)}50%{transform:translateY(-22px) rotate(10deg)}}
@keyframes sb-steam{to{stroke-dashoffset:-24}}
@keyframes sb-draw{from{stroke-dashoffset:420}to{stroke-dashoffset:0}}
@keyframes sb-floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@keyframes sb-slowspin{to{transform:translate(-50%,-50%) rotate(360deg)}}
.sb-doodle{animation:sb-doodle 8s ease-in-out infinite}
.sb-steam{stroke-dasharray:4 4;animation:sb-steam 1.4s linear infinite}
.sb-draw{stroke-dasharray:420;stroke-dashoffset:420;animation:sb-draw 1.4s cubic-bezier(.65,0,.35,1) 1.1s forwards}
.sb-floaty{animation:sb-floaty 5s ease-in-out infinite}
.sb-lift:nth-child(2) .sb-floaty{animation-delay:-1.7s}
.sb-lift:nth-child(3) .sb-floaty{animation-delay:-3.4s}
.sb-bigstar{position:absolute;left:50%;top:50%;animation:sb-slowspin 40s linear infinite}
.sb-icon{transition:transform .4s cubic-bezier(.34,1.56,.64,1)}
.sb-icon:hover{transform:translateY(-4px) rotate(-10deg) scale(1.1)}
@supports (animation-timeline: view()){.sb-hero-out{animation:sb-heroout linear both;animation-timeline:view();animation-range:exit 0% exit 100%}}
@media (prefers-reduced-motion: reduce){.sb-hero-out,.sb-doodle,.sb-steam,.sb-floaty,.sb-bigstar{animation:none}.sb-draw{animation:none;stroke-dashoffset:0}.sb-icon{transition:none}}
@media (prefers-reduced-motion: reduce){.sb-in,.sb-drop,.sb-twinkle,.sb-track-rev,.sb-pulse,.sb-arrow,.sb-sl,.sb-sr,.sb-tile,.sb-progress{animation:none}}
.sb-cta{transition:transform .35s cubic-bezier(.34,1.56,.64,1),box-shadow .35s ease}
.sb-cta:hover{transform:translateY(-6px);box-shadow:0 22px 48px rgba(30,8,60,.35)}
.sb-arrow{transition:transform .35s cubic-bezier(.34,1.56,.64,1)}
.sb-cta:hover .sb-arrow{transform:translateX(6px)}
@supports (animation-timeline: view()){.sb-reveal{animation:sb-up linear both;animation-timeline:view();animation-range:entry 0% cover 28%}}
@media (prefers-reduced-motion: reduce){.sb-kenburns,.sb-track,.sb-bob,.sb-spin,.sb-bubble,.sb-badge,.sb-reveal{animation:none}.sb-lift,.sb-zoom img,.sb-cta,.sb-arrow{transition:none}}
