@font-face{font-family:Display;src:url('/assets/fonts/display-regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Display;src:url('/assets/fonts/display-italic.ttf') format('truetype');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:Body;src:url('/assets/fonts/body-regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Body;src:url('/assets/fonts/body-medium.ttf') format('truetype');font-weight:500;font-style:normal;font-display:swap}
:root{--night:#050d16;--ink:#ded1c1;--text:#d9d3c9;--muted:#a8aaa9;--amber:#efa95d;--line:rgba(226,195,153,.22);--display:Display,Georgia,serif;--body:Body,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:55px;background:var(--night)}
body{margin:0;color:var(--text);font-family:var(--body);font-size:16px;line-height:1.55;background:var(--night);overflow-x:clip;-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.025;z-index:20;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' opacity='.8' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}
::selection{background:#d9a66b;color:var(--night)}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
button,a,input,textarea{-webkit-tap-highlight-color:transparent}
button{color:inherit}
button,a{touch-action:manipulation}
button{cursor:pointer}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--amber);outline-offset:7px}
button:disabled{cursor:default}
.skip-link{position:fixed;top:10px;left:10px;background:var(--ink);color:var(--night);padding:10px 20px;z-index:100;transform:translateY(-150%)}
.skip-link:focus{transform:none}
.site-header{height:90px;max-width:1320px;margin:auto;padding:0 6%;display:flex;align-items:center;justify-content:space-between;gap:26px;position:relative;z-index:10}
.wordmark{font-family:var(--display);font-size:37px;line-height:1;letter-spacing:-1.5px;color:#f0e3d2}
.site-header nav{display:flex;gap:32px;margin-left:auto;margin-right:64px;font-size:13px}
.site-header nav a{position:relative;padding:10px 0;transition:color .25s}
.site-header nav a::after{content:"";height:1px;background:var(--amber);position:absolute;bottom:4px;left:0;right:0;transform:scaleX(0);transform-origin:left;transition:transform .3s}
.site-header nav a:hover{color:#fff0db}
.site-header nav a:hover::after{transform:scaleX(1)}
.language-switch{display:flex;gap:6px;align-items:center;font-size:13px}
.language-switch span{color:#777c80}
.language-switch button{border:0;background:none;padding:10px 2px;color:#8b8d91;font-size:13px}
.language-switch button[aria-pressed=true]{color:#eee0cb}
.language-switch button:hover{color:var(--amber)}
main{max-width:1440px;margin:0 auto;overflow:clip}
.journey{position:relative;isolation:isolate}
.ambient{position:absolute;width:70%;height:765px;pointer-events:none;z-index:0;border-radius:50%;background:radial-gradient(ellipse,rgba(116,79,43,.1),transparent 67%)}
.ambient-one{top:76px;right:-15%}
.ambient-two{top:1000px;left:-15%}
.light-path{position:absolute;inset:0;width:100%;height:100%;overflow:visible;z-index:4;pointer-events:none}
.light-path-mobile{display:none}
.hero{height:740px;position:relative}
.hero-intro{position:absolute;z-index:5;top:52px;left:6%;width:56%}
h1,h2,p,figure{margin:0}
h1{font-family:var(--display);font-weight:400;font-size:clamp(65px,6.65vw,103px);line-height:.99;letter-spacing:-3px;color:var(--ink)}
h1>span{display:block}
h1 em{color:var(--amber);font-style:normal}
html[lang=en] h1{font-size:clamp(59px,5.65vw,88px);letter-spacing:-2.5px}
.hero-description{margin-top:26px;font-size:16px;font-weight:400;color:#d5ccbf;letter-spacing:-.2px}
.portrait{position:absolute;z-index:2;pointer-events:none;margin:0}
.portrait img,.portrait>svg{width:100%;height:100%;display:block;object-fit:contain}
.portrait-morten{right:7%;top:68px;width:39%;height:638px;--portrait-fade:linear-gradient(to bottom,#000 0%,#000 61%,rgba(0,0,0,.7) 75%,transparent 94%);mask-image:var(--portrait-fade);-webkit-mask-image:var(--portrait-fade)}
.portrait-morten img{object-position:center top}
.person-copy{position:absolute;z-index:5}
.person-copy h2{font-family:var(--display);font-size:clamp(34px,3vw,46px);font-weight:400;line-height:1.13;letter-spacing:-1px;color:#e5d5c0}
.person-copy p{font-size:15px;color:#d5ccbf;margin-top:13px}
.morten-copy{left:10%;top:560px;width:44%;scroll-margin-top:85px}
.scroll-hint{position:absolute;bottom:14px;left:10%;z-index:5;font-size:10px;text-transform:uppercase;letter-spacing:2px;color:#949493;display:flex;align-items:center;gap:14px}
.scroll-hint-line{display:block;width:26px;height:1px;background:var(--amber);opacity:.55}
.scroll-hint:hover{color:var(--amber)}
.person-section{position:relative}
.per-olav-section{height:595px}
.portrait-per-olav{top:38px;left:7%;width:35.7%;height:498px;mask-image:linear-gradient(to bottom,#000 0%,#000 65%,rgba(0,0,0,.85) 78%,transparent 99%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 65%,rgba(0,0,0,.85) 78%,transparent 99%)}
.portrait-per-olav img{object-position:center top}
.per-olav-copy{left:54%;top:149px;width:43%}
.emil-section{height:417px}
.emil-copy{left:16%;top:136px;width:49%}
.emil-placeholder{position:absolute;right:15%;top:51px;width:230px;aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:2;background:radial-gradient(circle,rgba(154,112,60,.10),rgba(154,112,60,.02) 55%,transparent 70%)}
.placeholder-ring{position:absolute;inset:0;border-radius:50%;border:1px dashed rgba(232,181,115,.45);transform:rotate(-12deg)}
.initials{font-family:var(--display);font-size:64px;line-height:1;color:#e1c9a8;letter-spacing:-2px}
.placeholder-label{font-size:13px;margin-top:13px;color:#bfb4a7}
.work-section{position:relative;height:247px}
.work-copy{position:absolute;top:26px;left:11%;z-index:5}
.eyebrow{text-transform:uppercase;letter-spacing:2.5px;font-size:10px;color:#ab9477;margin-bottom:15px}
.project-link{display:flex;align-items:center;gap:15px;width:fit-content}
.project-icon{display:block;width:36px;height:31px;color:#e9c494;transition:transform .3s}
.project-icon svg{display:block;width:100%;height:100%}
.project-link h2{font-family:var(--display);font-size:42px;font-weight:400;color:#e4d1b5;letter-spacing:-1.5px;line-height:1.15}
.project-arrow{font-family:var(--body);margin-left:12px;font-size:20px;color:#b18a5c;transition:transform .3s,color .3s}
.project-link:hover .project-arrow{transform:translate(3px,-3px);color:#ffe0ad}
.project-link:hover .project-icon{transform:translateY(-2px)}
.work-copy>p:last-child{margin-top:10px;color:#d9c9b6;font-size:15px}
.contact-section{position:relative;min-height:395px;display:flex;align-items:center;justify-content:center;text-align:center;margin-top:-30px;padding:34px 22px 64px}
.contact-copy{position:relative;z-index:5}
.contact-section h2{font-family:var(--display);font-size:clamp(55px,6.15vw,90px);font-weight:400;line-height:1.07;letter-spacing:-2px;color:#ebdcc9}
.contact-section h2>span,.contact-section h2>i{display:block}
.contact-section h2 i{font-weight:400}
.contact-section h2 em{color:var(--amber);font-weight:400}
.round-contact{border:1px solid rgba(223,193,151,.45);border-radius:50%;background:transparent;width:58px;height:58px;display:grid;place-items:center;margin:30px auto 0;transition:background .35s,border-color .35s,transform .35s}
.round-contact span{font-family:var(--body);font-size:24px;font-weight:400;color:#dabd98;transition:transform .35s}
.round-contact:hover{border-color:#efb76f;background:rgba(206,157,87,.08);transform:scale(1.07)}
.round-contact:hover span{transform:translateX(5px)}
.site-footer{max-width:1280px;margin:auto;padding:22px 6% 30px;display:flex;align-items:center;justify-content:space-between;gap:22px;font-size:11px;color:#8e9292}
.footer-brand{font-family:var(--display);font-size:21px;color:#b9b0a2}
.site-footer>a:last-child:hover{color:var(--amber)}
.reveal{--reveal-x:0px;--reveal-y:0px}
.reveal[data-reveal=left]{--reveal-x:-62px}
.reveal[data-reveal=right]{--reveal-x:62px}
.reveal[data-reveal=up]{--reveal-y:25px}
.motion-ready .reveal{transition:opacity 1.1s ease,transform 1.3s cubic-bezier(.19,1,.22,1);will-change:auto}
.motion-ready .reveal:not(.is-visible){opacity:0;transform:translate3d(var(--reveal-x),var(--reveal-y),0)}
.motion-ready .reveal.is-visible{opacity:1;transform:translateZ(0)}
.hero .portrait{transition-delay:.13s}
.contact-dialog{background:#0a141e;color:var(--text);border:1px solid rgba(216,174,113,.25);max-width:520px;width:calc(100% - 32px);padding:36px;max-height:calc(100dvh - 36px);overflow-y:auto;box-shadow:0 30px 120px #0008}
.contact-dialog::backdrop{background:rgba(1,6,12,.78);backdrop-filter:blur(9px)}
.contact-dialog h2{font-family:var(--display);font-size:37px;font-weight:400;letter-spacing:-1px;line-height:1.1;max-width:90%}
.dialog-close{position:absolute;top:15px;right:20px;font-size:28px;border:0;background:none;color:#cdbb9f;line-height:1;padding:5px}
.dialog-intro{margin:15px 0 26px;color:#aeb0ac;font-size:14px}
.contact-dialog label{display:block;margin:18px 0;font-size:12px;color:#c7c1b8}
.contact-dialog input,.contact-dialog textarea{display:block;width:100%;margin-top:8px;border:1px solid #3b4042;border-radius:0;background:#07101a;color:#ece0d0;padding:12px;font-size:15px;resize:vertical}
.preview-note{font-size:11px;line-height:1.5;color:#b2aba1;margin:20px 0}
.copy-button{display:flex;justify-content:space-between;gap:30px;width:100%;border:1px solid #9f8058;background:#bb915a;color:#07101a;padding:13px 15px;font-size:14px}
.copy-button:hover{background:#dab37a}
.form-status{min-height:22px;margin-top:13px;font-size:12px;color:#e4c897}
@media(min-width:1600px){.hero-intro{left:8%}.morten-copy{left:11%}.site-header{max-width:1440px;padding:0 8%}}
@media(max-width:1150px) and (min-width:761px){.site-header{height:82px}.site-header nav{margin-right:28px;gap:22px}.wordmark{font-size:33px}.hero{height:630px}.hero-intro{top:55px}h1{font-size:7.1vw;letter-spacing:-2px}.hero-description{font-size:15px}.portrait-morten{height:540px;right:6%;top:72px;width:40%}.morten-copy{top:480px}.person-copy h2{font-size:3.2vw}.person-copy p{font-size:13px}.per-olav-section{height:500px}.portrait-per-olav{height:459px;top:5px}.per-olav-copy{top:161px}.emil-section{height:350px}.emil-copy{left:10%;top:128px}.emil-placeholder{width:192px;right:14%;top:47px}.initials{font-size:61px}.work-section{height:230px}.contact-section{min-height:330px}.work-copy{top:42px}.project-link h2{font-size:38px}}
@media(max-width:760px){
html{scroll-padding-top:24px}
body{font-size:15px}
.site-header{height:78px;padding:0 6%;gap:14px;flex-wrap:wrap}
.wordmark{font-size:30px;letter-spacing:-1px}
.site-header nav{margin:0 0 0 auto;gap:20px;font-size:12px}
.language-switch{position:absolute;right:6%;top:71px;z-index:12}
.language-switch button{font-size:11px}
main{overflow:hidden}
.light-path-desktop{display:none}
.light-path-mobile{display:block;z-index:1}
.ambient{width:130%;height:745px;right:-45%}
.ambient-two{top:830px;left:-70%}
.hero{height:745px}
.hero-intro{top:55px;left:7%;width:88%}
h1{font-size:clamp(52px,10.6vw,76px);line-height:1.02;letter-spacing:-2px}
html[lang=en] h1{font-size:clamp(44px,9.5vw,65px);letter-spacing:-1.8px}
.hero-description{font-size:13px;max-width:260px;line-height:1.65;margin-top:20px}
.portrait-morten{top:315px;right:2%;width:72%;height:455px;mask-image:linear-gradient(to bottom,#000 0%,#000 45%,rgba(0,0,0,.5) 60%,transparent 86%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 45%,rgba(0,0,0,.5) 60%,transparent 86%)}
.person-copy h2{font-size:30px;line-height:1.05;letter-spacing:-.7px}
.person-copy p{font-size:12px;margin-top:10px}
.morten-copy{left:7%;top:650px;width:85%}
.scroll-hint{display:none}
.per-olav-section{height:535px}
.portrait-per-olav{top:25px;left:0;width:78%;height:415px;mask-image:linear-gradient(to bottom,#000 0%,#000 67%,transparent 98%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 67%,transparent 98%)}
.per-olav-copy{top:354px;left:28%;width:66%}
.per-olav-copy h2{max-width:290px}
.emil-section{height:410px}
.emil-placeholder{top:0;right:14%;width:190px}
.initials{font-size:62px}
.placeholder-label{font-size:12px}
.emil-copy{top:230px;left:8%;width:84%}
.emil-copy h2{max-width:290px}
.work-section{height:195px}
.work-copy{top:22px;left:8%;right:7%}
.eyebrow{font-size:9px;margin-bottom:13px}
.project-link{gap:12px}
.project-link h2{font-size:34px}
.project-icon{width:29px;height:26px}
.project-arrow{font-size:20px;margin-left:2px}
.work-copy>p:last-child{font-size:12px;max-width:260px}
.contact-section{min-height:295px;margin-top:-25px;padding:26px 15px 48px}
.contact-section h2{font-size:clamp(42px,8.5vw,60px);letter-spacing:-1.5px}
.round-contact{width:52px;height:52px;margin-top:25px}
.site-footer{padding:20px 7% 28px;flex-wrap:wrap;gap:9px;font-size:10px}
.site-footer>span{order:3;width:100%;font-size:10px}
.footer-brand{font-size:21px}
.site-footer>a:last-child{margin-left:auto}
.reveal[data-reveal=left]{--reveal-x:-30px}
.reveal[data-reveal=right]{--reveal-x:30px}
.contact-dialog{padding:30px 22px 24px}
.contact-dialog h2{font-size:31px}
}
@media(max-width:370px){.site-header nav{gap:13px;font-size:11px}.wordmark{font-size:29px}.hero-description{font-size:12px}.person-copy h2{font-size:28px}.per-olav-copy{left:25%;width:70%}.contact-section h2{font-size:40px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;animation-iteration-count:1!important}.motion-ready .reveal:not(.is-visible){opacity:1;transform:none}}

/* Slow movement of the light; portrait entrances remain independent. */
.light-path{transform-origin:50% 50%;animation:light-drift 20s ease-in-out infinite}
.light-breathe{animation:light-breathe 9s ease-in-out infinite;--glow-low:.29;--glow-high:.56}
.light-travel{stroke-dasharray:42 291.333;stroke-dashoffset:0;animation:light-travel 34s linear infinite}
.light-travel-soft{opacity:.14}
.light-travel-core{opacity:.57}
.light-path-mobile .light-breathe{--glow-low:.25;--glow-high:.46}
.light-path-mobile .light-travel-core{opacity:.42}
.motion-toggle{display:flex;align-items:center;gap:8px;padding:8px 0;border:0;background:none;color:#a7a39b;font-size:11px;white-space:nowrap}
.motion-toggle:hover{color:var(--amber)}
.motion-toggle:disabled{color:#838888}
.motion-toggle [data-motion-icon]{font-size:10px;width:10px;text-align:center}
.motion-paused .light-path,.motion-paused .light-breathe,.motion-paused .light-travel,
.is-page-hidden .light-path,.is-page-hidden .light-breathe,.is-page-hidden .light-travel{animation-play-state:paused}
@keyframes light-drift{0%,100%{transform:translate3d(-3px,1px,0) rotate(-.1deg)}50%{transform:translate3d(4px,-2px,0) rotate(.1deg)}}
@keyframes light-breathe{0%,100%{opacity:var(--glow-low)}50%{opacity:var(--glow-high)}}
@keyframes light-travel{to{stroke-dashoffset:-1000}}
@media(max-width:760px){
  .light-path{animation-duration:24s}
  .motion-toggle{font-size:10px;gap:6px}
}
@media(prefers-reduced-motion:reduce){
  .light-path,.light-breathe,.light-travel{animation:none!important;transform:none!important}
  .light-travel{display:none}
}

/* Approved EPM identity, 2026-09-08. Raster originals remain unchanged. */
.logo-window{position:relative;overflow:hidden;display:block;aspect-ratio:1990/319;background:#050d16;isolation:isolate}
.logo-window img{display:block;max-width:none;position:absolute;height:auto;width:109.14573%;left:-4.57286%;top:-62.69592%;mix-blend-mode:screen}
.wordmark{display:block;width:220px;flex-shrink:0;line-height:0;letter-spacing:normal}
.footer-brand{display:block;width:174px;line-height:0}
@media(max-width:760px){.wordmark{width:138px}.site-header nav{gap:17px}.footer-brand{width:145px}}
@media(max-width:370px){.wordmark{width:126px}.site-header nav{gap:11px}}

/* Company and team pages. Shared identity and approved portrait assets are retained. */
.site-header{max-width:1440px;padding-inline:7%;height:108px;gap:28px}
.site-header nav{margin-right:24px;gap:28px;font-size:13px}
.site-header nav a[aria-current=page]::after{transform:scaleX(1)}
.site-header nav a[aria-current=page]{color:#f0e3d2}
.section-shell{position:relative;padding-inline:9%;z-index:5}
.home-journey{overflow:hidden}
.home-journey .light-path{width:100%;height:2250px;top:-135px;left:18%;opacity:.72;z-index:0}
.home-journey .ambient-two{display:none}
.company-hero{position:relative;min-height:680px;padding:66px 9% 90px;display:flex;align-items:flex-start}
.company-intro{position:relative;z-index:5;width:76%;max-width:840px}
.company-intro>.eyebrow{font-size:11px;letter-spacing:2.7px;margin-bottom:24px;color:#c6aa86}
.company-intro h1{font-size:clamp(66px,7.1vw,103px);line-height:.98;letter-spacing:-2.7px}
html[lang=en] .company-intro h1{font-size:clamp(64px,6.6vw,94px);letter-spacing:-2.6px}
.company-description{max-width:510px;font-size:16px;line-height:1.75;margin-top:27px;color:#b8b9b6}
.hero-actions{display:flex;align-items:center;gap:34px;margin-top:30px;flex-wrap:wrap}
.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);padding:11px 0;font-size:13px;color:#d1c6b7;line-height:1.5;transition:color .2s,border-color .2s}
.text-link>span[aria-hidden]{color:var(--amber);font-size:19px;transition:transform .2s}
.text-link:hover{color:#fff0db;border-color:var(--amber)}
.text-link:hover>span[aria-hidden]{transform:translateX(3px)}
.primary-link{color:#f0d7b4;border-color:#926a3d}
.hero-footnote{position:absolute;right:9%;bottom:93px;display:flex;flex-direction:column;gap:8px;border-top:1px solid #94734d;padding-top:16px;width:210px;z-index:5}
.hero-footnote>span{font-size:10px;color:#bfa98c;letter-spacing:.5px}
.hero-footnote strong{font-size:18px;font-weight:400;display:flex;justify-content:space-between}
.hero-footnote strong span{color:var(--amber)}
.offering-section{padding-top:60px;padding-bottom:100px}
.section-heading{max-width:680px;margin-bottom:42px}
.section-heading h2,.about-invitation h2{font-family:var(--display);font-size:clamp(38px,3.8vw,53px);font-weight:400;line-height:1.08;letter-spacing:-1.2px;color:var(--ink)}
.offerings{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px}
.offering{border-top:1px solid var(--line);padding-top:20px}
.section-number{font-size:11px;color:#bd9b70}
.offering h3{font-family:var(--display);font-weight:400;font-size:28px;line-height:1.2;margin:23px 0 14px;color:#e4d4bd}
.offering>p{font-size:14px;line-height:1.8;color:#aeb2b1;max-width:300px}
.products-section{padding-block:65px 95px;background:linear-gradient(110deg,#111b24,#09131d 70%);border-block:1px solid #28303a}
.product-feature{display:grid;grid-template-columns:1.15fr 1fr;gap:10%;border-top:1px solid var(--line);padding-top:35px}
.product-index{font-size:10px;color:#bda484;letter-spacing:1px;text-transform:uppercase}
.product-identity h3{font-family:var(--display);font-size:clamp(42px,4.6vw,64px);line-height:1.1;letter-spacing:-1.5px;font-weight:400;margin:22px 0 16px;color:#edddc7}
.product-identity h3>span{color:var(--amber)}
.product-identity>p{font-size:14px;color:#bfc0ba}
.product-detail{align-self:center;padding-top:25px}
.product-detail>p{font-size:15px;line-height:1.8;color:#acb2b3;max-width:390px}
.product-detail .text-link{margin-top:22px}
.about-invitation{display:grid;grid-template-columns:1.15fr 1fr;gap:10%;padding-block:95px 80px}
.about-invitation h2{max-width:460px}
.about-invitation-copy{padding-top:30px}
.about-invitation-copy p{max-width:390px;font-size:15px;line-height:1.8;color:#b0b6b5}
.about-invitation-copy .text-link{margin-top:20px}
body[data-page] .contact-section{margin-top:0;padding-top:65px;padding-bottom:65px;min-height:360px}
body[data-page] .contact-section h2{font-size:clamp(48px,5.5vw,76px)}
body[data-page] .site-footer{max-width:1440px;padding-inline:7%;padding-top:28px;border-top:1px solid #242b33}
.about-intro{padding-top:55px;padding-bottom:35px}
.about-intro h1,html[lang=en] .about-intro h1{font-size:clamp(62px,6.7vw,88px);letter-spacing:-2px;line-height:1}
.about-intro .company-description{max-width:535px}
.about-intro .text-link{margin-top:20px}
.team-journey .light-path{z-index:3;opacity:.7}
.team-journey .morten-section{height:595px}
.team-journey .portrait-morten{top:0;right:9%;width:34%;height:540px}
.team-journey .morten-copy{left:12%;top:175px;width:42%}
.team-journey .morten-copy>.eyebrow{color:#b29877;font-size:10px;margin:0 0 20px}
.team-journey .per-olav-section{height:530px}
.team-journey .portrait-per-olav{height:450px;width:33%;left:9%;top:0}
.team-journey .per-olav-copy{top:110px;left:53%;width:41%}
.team-journey .emil-section{height:355px}
.team-journey .emil-copy{top:90px;left:12%;width:49%}
.team-journey .emil-placeholder{top:0;right:13%;width:220px}
.team-outro{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-block:30px 55px}
.team-outro>p{font-size:15px;color:#aab0b0}
@media(min-width:1600px){.company-hero{min-height:700px}}
@media(max-width:1050px){
  .site-header{gap:20px;padding-inline:6%}.site-header nav{gap:20px;margin-right:6px}
  .company-hero{min-height:640px;padding-inline:7%}.company-intro{width:83%}
  .hero-footnote{right:7%;bottom:50px;width:180px}
  .section-shell{padding-inline:7%}.offerings{gap:27px}
  .offering h3{font-size:26px}.team-journey .person-copy h2{font-size:36px}
}
@media(max-width:760px){
  .site-header{height:auto;min-height:115px;display:grid;grid-template-columns:1fr auto;row-gap:16px;padding:24px 7% 17px}
  .site-header .wordmark{width:154px}
  .site-header nav{grid-row:2;grid-column:1/-1;justify-content:space-between;margin:0;gap:14px;font-size:12px}
  .site-header nav a{padding-block:7px;white-space:nowrap}
  .site-header .language-switch{position:static;grid-row:1;grid-column:2}
  .company-hero{min-height:0;display:block;padding:42px 7% 42px}
  .company-intro{width:100%}
  .company-intro>.eyebrow{font-size:9px;letter-spacing:2px;margin-bottom:24px}
  .company-intro h1,html[lang=en] .company-intro h1{font-size:clamp(48px,10vw,73px);letter-spacing:-1.7px;line-height:1.02}
  .company-description{font-size:14px;line-height:1.75;margin-top:24px;max-width:440px}
  .hero-actions{gap:12px 26px;margin-top:23px}
  .text-link{font-size:12px;gap:17px}
  .hero-footnote{position:relative;right:auto;bottom:auto;margin:55px 0 0 auto;width:175px;padding-top:13px}
  .hero-footnote strong{font-size:16px}.hero-footnote>span{font-size:9px}
  .home-journey .light-path{left:20%;top:-150px;width:100%;height:1750px;opacity:.5}
  .offering-section{padding-top:46px;padding-bottom:55px}
  .section-heading{margin-bottom:30px}.section-heading h2,.about-invitation h2{font-size:37px;letter-spacing:-.8px}
  .offerings{grid-template-columns:1fr;gap:25px}
  .offering{display:grid;grid-template-columns:26px 1fr;column-gap:14px;padding-top:21px}
  .section-number{grid-column:1;grid-row:1;margin-top:7px}
  .offering h3{grid-column:2;margin:0 0 10px;font-size:28px}
  .offering>p{grid-column:2;max-width:450px;font-size:13px;line-height:1.75}
  .products-section{padding-block:45px 52px}
  .product-feature{grid-template-columns:1fr;gap:23px;padding-top:26px}
  .product-identity h3{font-size:49px;margin-block:16px 11px}.product-identity>p{font-size:13px}
  .product-detail{padding-top:0}.product-detail>p{font-size:13px;max-width:440px}
  .product-detail .text-link{margin-top:14px}
  .about-invitation{grid-template-columns:1fr;gap:24px;padding-block:53px 35px}
  .about-invitation-copy{padding-top:0}.about-invitation-copy p{font-size:13px;max-width:440px}
  .about-invitation-copy .text-link{margin-top:15px}
  body[data-page] .contact-section{min-height:305px;padding:48px 7%}
  body[data-page] .contact-section h2{font-size:49px}
  body[data-page] .site-footer{padding:23px 7% 30px;gap:18px}
  .site-footer>span{line-height:1.6}.footer-brand{width:135px}.motion-toggle{margin-left:auto}
  .about-intro{padding-top:43px;padding-bottom:35px}
  .about-intro h1,html[lang=en] .about-intro h1{font-size:clamp(47px,10vw,66px);line-height:1.03;letter-spacing:-1.5px}
  .about-intro .text-link{margin-top:16px}
  .team-journey .morten-section{height:530px}
  .team-journey .portrait-morten{width:78%;height:465px;right:3%;top:0}
  .team-journey .morten-copy{top:387px;left:7%;width:86%}
  .team-journey .morten-copy>.eyebrow{display:none}
  .team-journey .person-copy h2{font-size:33px;line-height:1.1;letter-spacing:-.8px}
  .team-journey .person-copy p{font-size:12px}
  .team-journey .per-olav-section{height:515px}
  .team-journey .portrait-per-olav{height:410px;width:85%;left:0;top:0}
  .team-journey .per-olav-copy{top:359px;left:16%;width:78%}
  .team-journey .emil-section{height:390px}
  .team-journey .emil-placeholder{width:175px;top:0;right:15%}
  .team-journey .emil-copy{top:225px;left:7%;width:86%}
  .team-outro{display:block;padding-top:0;padding-bottom:15px}
  .team-outro>p{font-size:13px}.team-outro .text-link{margin-top:8px}
}
@media(max-width:370px){
  .site-header nav{gap:8px;font-size:11px}.site-header .wordmark{width:145px}
  .company-intro h1,html[lang=en] .company-intro h1{font-size:44px;letter-spacing:-1.5px}
  .hero-actions{gap:10px 19px}.hero-actions .text-link{font-size:11px;gap:14px}
  .section-heading h2,.about-invitation h2{font-size:33px}
  .team-journey .person-copy h2{font-size:29px}
  .about-intro h1,html[lang=en] .about-intro h1{font-size:43px}
  body[data-page] .contact-section h2{font-size:43px}
}
.home-journey::after{content:"";position:absolute;inset:auto 0 0;height:105px;background:linear-gradient(transparent,var(--night));pointer-events:none;z-index:1}

/* Local navigation update: keep the header visible and allow room above anchors. */
html{scroll-padding-top:124px}
.site-header{position:sticky;top:0;z-index:50;background:rgba(5,13,22,.95);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 1px 0 rgba(226,195,153,.1)}
@media(max-width:760px){html{scroll-padding-top:150px}}

/* Let the introduction fill the opening view; meet the team just below it. */
.about-intro{min-height:calc(100vh - 108px);min-height:calc(100svh - 108px);padding-bottom:80px}
.team-journey{padding-top:40px}
.team-journey .per-olav-copy>.eyebrow{color:#b29877;font-size:10px;margin:0 0 20px}
@media(max-width:760px){
  .about-intro{min-height:calc(100vh - 115px);min-height:calc(100svh - 115px);padding-bottom:60px}
  .team-journey{padding-top:25px}
  .team-journey .per-olav-copy>.eyebrow{display:none}
}

/* Reposition the incoming view without starting a second scroll animation. */
html.view-positioning{scroll-behavior:auto!important}
main h1[tabindex="-1"]:focus{outline:none}

/* Production controls; all source design rules above are retained. */
.language-switch a{display:inline-block;border:0;background:none;padding:10px 2px;color:#8b8d91;font-size:13px;text-decoration:none}
.language-switch a[aria-current=page]{color:#eee0cb}
.language-switch a:hover{color:var(--amber)}
.language-switch a:focus-visible,.contact-email:focus-visible{outline:2px solid var(--amber);outline-offset:5px}
.contact-emails{display:grid;gap:12px}
.contact-email{position:relative;display:flex;flex-direction:column;gap:7px;border:1px solid rgba(216,174,113,.35);padding:18px 42px 18px 18px;text-decoration:none;color:var(--text);overflow-wrap:anywhere}
.contact-email strong{font-weight:500;font-size:15px}
.contact-email>span:not(.contact-email-arrow){font-size:13px;color:#c7c1b8}
.contact-email:hover{border-color:var(--amber);background:rgba(216,174,113,.06)}
.contact-email-arrow{position:absolute;right:16px;top:18px;color:var(--amber)}
.contact-email-note{font-size:12px;line-height:1.6;color:#b2aba1;margin:20px 0 0}
@media(max-width:760px){.language-switch a{font-size:11px}}
