@font-face{font-family:Newsreader;src:url('assets/newsreader.woff2') format('woff2');font-weight:200 800;font-display:swap}
@font-face{font-family:Schibsted;src:url('assets/schibsted.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{--night:#0d151f;--paper:#f6f7f6;--mint:#bfeee1;--muted:#aabbbd;--line:#ffffff26;--ink:#123c40}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--night);color:var(--paper);font-family:Schibsted,Arial,sans-serif;-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid var(--mint);outline-offset:6px}button{color:inherit}::selection{background:var(--mint);color:var(--night)}.skip{position:fixed;top:-70px;left:20px;padding:15px;background:var(--paper);color:var(--night);z-index:20}.skip:focus{top:10px}
.header{height:104px;padding:0 4.5%;display:flex;align-items:center;justify-content:space-between;gap:30px;position:absolute;inset:0 0 auto;z-index:5}.brand{display:block;width:150px;line-height:0}.brand img{width:100%;height:auto}.header nav{display:flex;gap:36px;margin-left:auto;margin-right:40px;font-size:14px}.header nav a{padding:12px 0}.header nav a:hover{color:var(--mint)}.contact{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;min-height:47px;padding:13px 20px;border:1px solid #718183;background:none;font-size:14px;font-weight:500;transition:background .2s,color .2s}.contact:hover{background:var(--paper);color:var(--night)}.contact span{font-size:22px;line-height:16px}.primary{color:var(--night);background:var(--mint);border-color:var(--mint);min-width:245px}.primary:hover{background:#e1fff6;border-color:#e1fff6}
.hero{position:relative;min-height:680px;height:100svh;max-height:1200px;isolation:isolate;overflow:hidden}.stage{position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 50% 43%,#18313550 0%,transparent 50%)}canvas{width:100%;height:100%;display:block}.fallback{display:none;position:absolute;left:50%;top:25%;width:220px;height:auto;transform:translateX(-50%);opacity:.3}.failed .fallback{display:block}.hero-context{position:absolute;top:16.5%;left:0;right:0;text-align:center;font-size:14px;color:#c3d1d1;letter-spacing:.015em}h1{font-family:Newsreader,Georgia,serif;font-weight:400;font-size:clamp(52px,5.85vw,112px);line-height:1.03;letter-spacing:-.04em;margin:0;position:absolute;top:44%;left:4.5%;right:4.5%;display:flex;justify-content:space-between;pointer-events:none;text-shadow:0 2px 28px var(--night)}h1 span{display:block}.hero-bottom{position:absolute;bottom:132px;left:4.5%;right:4.5%;display:flex;justify-content:space-between;align-items:end;gap:36px}.hero-bottom p{font-size:17px;line-height:1.55;margin:0;max-width:460px}.hero-bottom p span{display:inline-block;color:var(--muted);margin-top:10px;font-size:14px}.hero-actions{display:flex;flex-direction:column;gap:16px;align-items:stretch}.explore{font-size:13px;display:flex;justify-content:space-between;align-items:center;min-height:28px;color:#c6d3d3}.explore span{font-size:20px}.motion-bar{position:absolute;bottom:35px;left:4.5%;right:4.5%;display:flex;align-items:center;justify-content:space-between;gap:10px}.sequence{display:flex;gap:13px;align-items:center}.sequence button{background:none;border:0;padding:12px 0;font-size:12px;color:#96abad;transition:color .3s;white-space:nowrap}.sequence button span{font-size:10px;margin-right:8px;opacity:.8}.sequence button[aria-pressed=true]{color:var(--mint)}.sequence i{height:1px;width:24px;background:#78939155}.motion-buttons{display:flex;gap:18px;align-items:center}.motion-buttons button{border:0;background:none;min-height:44px;min-width:44px;padding:8px 0;font-size:12px;color:#b5c6c6}.motion-buttons #replay{font-size:25px;min-width:34px}.motion-buttons #pause{display:flex;align-items:center;gap:9px;min-width:70px}.progress{position:absolute;bottom:0;height:1px;left:4.5%;right:4.5%;background:#7289883b}.progress span{display:block;height:1px;width:0;background:var(--mint);opacity:.65}
.services{background:var(--paper);color:var(--ink);display:grid;grid-template-columns:1fr 1.25fr;gap:9%;padding:105px 7% 110px}.section-intro>p:first-child{font-size:14px;margin:0 0 25px}.section-intro h2{font-family:Newsreader,Georgia,serif;font-size:clamp(38px,3.8vw,64px);font-weight:400;letter-spacing:-.035em;line-height:1.04;margin:0 0 28px}.intro-copy{font-size:16px;line-height:1.65;max-width:400px;color:#496066}.service-list a{display:flex;gap:23px;align-items:start;border-top:1px solid #123c4033;padding:25px 0 30px}.service-list a:last-child{border-bottom:1px solid #123c4033}.service-list a>span:last-child{margin-left:auto;font-size:20px}.service-number{font-size:12px;color:#5d797b;padding-top:6px}.service-list h3{font-size:20px;font-weight:500;line-height:1.35;margin:0 0 13px}.service-list p{font-size:15px;line-height:1.6;margin:0;max-width:400px;color:#496066}.service-list a:hover h3{text-decoration:underline;text-underline-offset:5px}footer{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:25px 4.5%;font-size:11px;color:#a8babb}dialog{max-width:480px;width:calc(100% - 32px);padding:40px;border:1px solid #607779;color:var(--paper);background:var(--night)}dialog::backdrop{background:#071016c9;backdrop-filter:blur(8px)}dialog h2{font-family:Newsreader,Georgia,serif;font-size:45px;font-weight:400;letter-spacing:-.03em;margin:24px 0 16px}dialog p{font-size:16px;line-height:1.6;color:#c1cfd0}dialog .dialog-note{font-size:12px;color:var(--mint)}dialog .primary{margin-top:15px;width:100%;font-size:13px;gap:15px}.dialog-close{position:absolute;right:12px;top:10px;width:44px;height:44px;border:0;background:none;font-size:28px}
@media(min-width:1600px){.header{height:120px}.brand{width:175px}.header nav{font-size:16px}.hero-bottom{bottom:150px}.hero-bottom p{font-size:20px}.hero-bottom p span{font-size:15px}.hero-context{font-size:16px}.sequence button{font-size:13px}}
@media(max-width:850px){.header{height:86px;padding:0 5%;gap:15px}.brand{width:125px}.header nav{gap:20px;margin-right:10px;font-size:12px}.team-link{display:none}.nav-contact{font-size:12px;padding:10px 13px;gap:18px}.hero{min-height:800px}.hero-context{top:17%;font-size:12px}h1{top:28%;font-size:8vw;left:5%;right:5%}.hero-bottom{bottom:128px;left:5%;right:5%}.hero-bottom p{font-size:15px;max-width:350px}.hero-bottom p span{font-size:12px}.primary{min-width:220px;font-size:12px}.services{padding:70px 6%;gap:7%;grid-template-columns:1fr 1.1fr}.service-list h3{font-size:18px}.sequence{gap:10px}.sequence i{width:12px}}
@media(max-width:700px){.header{height:80px}.header nav{display:none}.brand{width:118px}.nav-contact{min-height:42px;padding:9px 12px;font-size:11px;gap:12px}.nav-contact span{font-size:18px}.hero{height:100svh;min-height:830px;max-height:1050px}.hero-context{top:112px;font-size:11px;letter-spacing:0}h1{top:154px;display:block;text-align:center;font-size:60px;line-height:.95;letter-spacing:-.045em}h1 span+span{margin-top:3px}.hero-bottom{bottom:123px;display:block;left:6%;right:6%}.hero-bottom p{font-size:15px;line-height:1.4;text-align:center;max-width:100%}.hero-bottom p span{margin-top:9px;font-size:11px}.hero-actions{margin-top:20px;align-items:center;gap:10px}.primary{min-width:260px;min-height:45px;font-size:12px}.explore{font-size:11px;gap:30px}.motion-bar{left:6%;right:6%;bottom:20px;flex-wrap:wrap;justify-content:center;gap:0}.sequence{width:100%;justify-content:center;gap:8px}.sequence button{font-size:10px;padding:7px 0;min-height:32px}.sequence button span{font-size:9px;margin-right:4px}.sequence i{width:12px}.motion-buttons{position:relative;gap:12px;justify-content:center}.motion-buttons button{min-height:34px}.motion-buttons #replay{font-size:22px}.motion-buttons #pause{font-size:10px;min-width:60px}.services{display:block;padding:58px 6%}.section-intro h2{font-size:45px}.intro-copy{font-size:15px}.service-list{margin-top:36px}.service-list a{gap:15px}.service-list h3{font-size:17px}.service-list p{font-size:14px}footer{font-size:10px;padding:22px 6%;gap:12px}footer span{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

@media(max-width:350px){.brand{width:105px}.nav-contact{font-size:10px;gap:8px;padding:8px 10px;white-space:nowrap}.header{gap:10px}}
@media(min-width:701px) and (max-width:850px){h1{top:19.5%;font-size:7.3vw}.hero-context{top:13.5%}}
.art-window{display:none}
.header nav{gap:32px}
.hero-context{font-size:14px;letter-spacing:.005em}
.hero-bottom p{font-size:17px;line-height:1.5}
.sequence{gap:15px}
.sequence button{font-size:12px;min-height:44px;color:#afbfbd;border-bottom:1px solid transparent;padding:10px 0}
.sequence button[aria-pressed=true]{border-bottom-color:#bfeee199}
.motion-buttons button{min-width:44px;min-height:44px}
.motion-buttons #replay{min-width:44px}
.primary{transition:background .2s,box-shadow .2s}
.primary:hover{box-shadow:0 0 24px #bfeee113}
.services a:focus-visible{outline-color:#12545a}
@media(max-width:900px){
 .header{height:80px;padding:0 6%;gap:18px}
 .brand{width:124px}.header nav{display:none}
 .nav-contact{font-size:12px;min-height:44px;padding:10px 14px;gap:15px}
 .hero{display:grid;grid-template-columns:minmax(0,1fr);align-content:center;gap:14px;padding:104px 6% 20px;height:auto;min-height:100svh;max-height:none}
 .hero-context{position:static;inset:auto;text-align:center;font-size:12px;line-height:1.4}
 h1{position:static;inset:auto;font-size:clamp(44px,7.3vw,64px);text-align:center;display:flex;justify-content:center;gap:.18em;line-height:1.02;margin:0}
 h1 span+span{margin:0}
 .art-window{display:block;width:100%;height:clamp(210px,31svh,350px)}
 .hero-bottom{position:static;inset:auto;display:flex;flex-direction:column;align-items:center;gap:16px}
 .hero-bottom p{max-width:500px;text-align:center;font-size:16px;line-height:1.45;margin:0}
 .hero-bottom p span{display:block;margin-top:8px;font-size:12px;line-height:1.4}
 .hero-actions{margin:0;gap:10px;align-items:center;width:100%}
 .primary{font-size:13px;min-height:46px;min-width:260px}
 .explore{font-size:12px;gap:35px;min-height:30px}
 .motion-bar{position:static;inset:auto;flex-wrap:nowrap;justify-content:center;gap:24px;margin-top:6px}
 .sequence{width:auto;gap:10px;justify-content:center}
 .sequence button{font-size:11px;min-height:44px}
 .sequence button span{display:none}.sequence i{display:none}
 .motion-buttons{gap:0}.motion-buttons #pause{min-width:44px;justify-content:center}.motion-buttons #pause-label{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}.motion-buttons #pause-icon{font-size:17px}
 .progress{left:6%;right:6%}
}
@media(max-width:600px){
 .brand{width:116px}.nav-contact{font-size:11px;padding:10px 12px;gap:12px}
 .hero{padding-top:96px;gap:12px}
 .hero-context{font-size:11px}
 h1{display:block;font-size:clamp(46px,13.7vw,60px);line-height:.98}
 .art-window{height:clamp(190px,29svh,270px)}
 .hero-bottom p{font-size:15px}.hero-bottom p span{font-size:12px}
 .hero-bottom{gap:15px}
 .motion-bar{gap:12px;justify-content:space-between;margin-top:0}
 .sequence{gap:9px}.sequence button{font-size:10px}
 .motion-buttons #replay{font-size:22px;min-width:36px}.motion-buttons #pause{min-width:36px}
}
@media(max-width:600px) and (max-height:720px){
 .header{height:68px}.hero{padding-top:76px;padding-bottom:10px;gap:8px}
 h1{font-size:clamp(44px,12.4vw,51px)}
 .art-window{height:clamp(170px,30svh,210px)}
 .hero-bottom{gap:10px}.hero-bottom p{font-size:14px;line-height:1.35}.hero-bottom p span{font-size:11px;margin-top:6px}
 .hero-actions{gap:3px}.primary{min-height:44px}.explore{min-height:26px;font-size:11px}
}
@media(max-width:350px){.brand{width:105px}.header{gap:10px}.nav-contact{font-size:10px;gap:8px;padding:8px 10px}.sequence{gap:7px}.sequence button{font-size:9px}.motion-bar{gap:6px}}
@media(max-width:350px) and (max-height:600px){.art-window{height:140px}}
