:root{
  --bone:#f3f1ec;--paper:#fff;--ink:#0f2230;--navy:#1d4762;--navy-2:#163a51;--teal:#1f6c7b;--teal-bright:#2d8fa1;
  --signal:#e8e881;--line:#dcd8cf;--line-dark:#2f566f;--ash:#55616b;--kraft:#c39a62;
  --f-head:"Schibsted Grotesk",system-ui,sans-serif;--f-body:"Figtree",system-ui,sans-serif;
  --gut:clamp(16px,4vw,40px);--max:1240px;--sec:clamp(64px,9vw,112px);--r:12px;--r-s:6px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--bone);color:var(--ink);font:400 1.0625rem/1.6 var(--f-body);font-variant-numeric:tabular-nums}
img,video,canvas{display:block;max-width:100%}
img{height:auto}
a{color:inherit}
h1,h2,h3,h4{font-family:var(--f-head);font-weight:600;line-height:1.08;margin:0 0 .5em;letter-spacing:-.01em;text-wrap:balance}
h1{font-size:clamp(2.4rem,5vw,4.25rem)}
h2{font-size:clamp(1.9rem,3.4vw,2.9rem)}
h3{font-size:clamp(1.25rem,1.6vw,1.5rem);line-height:1.2}
p{margin:0 0 1em;max-width:62ch}
.lead{font-size:clamp(1.125rem,1.4vw,1.3rem);line-height:1.5;color:var(--ash)}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gut)}
.grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(16px,2.4vw,32px)}
.sec{padding:var(--sec) 0}
.sec--line{border-top:1px solid var(--line)}
.skip{position:absolute;left:-9000px;top:8px;background:var(--signal);color:var(--ink);padding:8px 14px;border-radius:var(--r-s);z-index:50}
.skip:focus{left:8px}
:focus-visible{outline:3px solid var(--teal-bright);outline-offset:3px;border-radius:4px}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:.5em;font:600 1rem/1 var(--f-body);text-decoration:none;padding:15px 22px;border-radius:var(--r-s);border:1.5px solid var(--navy);color:var(--navy);background:transparent;cursor:pointer;transition:background .2s,color .2s}
.btn:hover{background:var(--navy);color:#fff}
.btn--fill{background:var(--navy);color:#fff}
.btn--fill:hover{background:var(--ink);border-color:var(--ink)}
.btn--signal{background:var(--signal);border-color:var(--signal);color:var(--ink)}
.btn--signal:hover{background:#fff;border-color:#fff;color:var(--ink)}
.btn--ghost-light{border-color:#9fb5c4;color:#fff}
.btn--ghost-light:hover{background:#fff;color:var(--navy)}
.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.tlink{font-weight:600;color:var(--teal);text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1.5px}
.tlink:hover{color:var(--ink)}

/* header */
.hdr{position:sticky;top:0;z-index:40;background:rgba(243,241,236,.97);border-bottom:1px solid var(--line)}
.hdr__in{display:flex;align-items:center;justify-content:space-between;height:72px}
.hdr__logo img{height:38px;width:auto}
.nav{display:flex;align-items:center;gap:28px}
.nav a{text-decoration:none;font-weight:500;font-size:.98rem}
.nav a:not(.btn):hover,.nav a[aria-current=page]{color:var(--teal);text-decoration:underline;text-underline-offset:6px}
.nav .btn{padding:11px 16px}
.menu-btn{display:none;background:none;border:1.5px solid var(--navy);border-radius:var(--r-s);padding:9px 12px;font:600 .95rem var(--f-body);color:var(--navy);cursor:pointer}
@media (max-width:860px){
  .menu-btn{display:block}
  .nav{position:absolute;top:72px;left:0;right:0;flex-direction:column;align-items:flex-start;gap:4px;background:var(--bone);border-bottom:1px solid var(--line);padding:12px var(--gut) 24px;display:none}
  .nav.open{display:flex}
  .nav a{padding:10px 0;font-size:1.1rem}
  .nav .btn{margin-top:8px}
}

/* hero */
.hero{padding:clamp(40px,6vw,80px) 0 var(--sec)}
.hero__text{grid-column:1/7;align-self:center}
.hero__media{grid-column:7/13}
.hero__media video,.hero__media img{width:100%;aspect-ratio:4/3.4;object-fit:cover;border-radius:var(--r);background:#dfe4e6}
.cap{font-size:.85rem;color:var(--ash);margin-top:10px}
.counter{margin:28px 0 0;padding-top:20px;border-top:1px solid var(--line)}
.counter__n{font:600 clamp(2.2rem,4.4vw,3.6rem)/1 var(--f-head);color:var(--navy);letter-spacing:-.01em}
.counter__n mark{background:linear-gradient(transparent 58%,var(--signal) 58%);color:inherit;padding:0 2px}
.counter__l{color:var(--ash);margin-top:8px;font-size:.98rem}
@media (max-width:860px){.hero__text,.hero__media{grid-column:1/-1}}

/* facts */
.facts{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.fact{padding:28px 24px 28px 0}
.fact+.fact{padding-left:24px;border-left:1px solid var(--line)}
.fact b{display:block;font:600 clamp(1.8rem,2.6vw,2.3rem)/1.1 var(--f-head);color:var(--navy)}
.fact span{display:block;color:var(--ash);font-size:.95rem;margin-top:6px}
@media (max-width:860px){.facts{grid-template-columns:1fr 1fr}.fact:nth-child(3){padding-left:0;border-left:0}.fact:nth-child(n+3){border-top:1px solid var(--line)}}

/* section head */
.shead{grid-column:1/8;margin-bottom:clamp(28px,4vw,48px)}
.shead p{color:var(--ash)}

/* solutions */
.sols{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(16px,2.4vw,32px)}
.sol{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column}
.sol img{width:100%;aspect-ratio:16/9;object-fit:cover}
.sol__b{padding:24px 26px 28px;display:flex;flex-direction:column;flex:1}
.sol__b p{color:var(--ash)}
.sol__b .tlink{margin-top:auto}
@media (max-width:760px){.sols{grid-template-columns:1fr}}
.after{margin-top:36px;display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px;padding:24px 28px;border:1px solid var(--line);border-radius:var(--r);background:var(--paper)}
.after p{margin:0;font-weight:500}

/* configurator */
.cfg-sec{background:var(--navy);color:#fff}
.cfg-sec .lead,.cfg-sec .shead p{color:#c9d6df}
.cfg{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(20px,3vw,40px);align-items:start}
.cfg__ctrl fieldset{border:0;padding:0;margin:0 0 26px}
.cfg__ctrl legend,.cfg__ctrl .lbl{font:600 1rem var(--f-head);margin-bottom:10px;display:block;padding:0}
.seg{display:flex;flex-wrap:wrap;gap:8px}
.seg label{position:relative}
.seg input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.seg span{display:block;padding:10px 14px;border:1.5px solid var(--line-dark);border-radius:var(--r-s);font-weight:500;font-size:.95rem;cursor:pointer;transition:background .15s,border-color .15s}
.seg input:checked+span{background:var(--signal);border-color:var(--signal);color:var(--ink)}
.seg input:focus-visible+span{outline:3px solid #8fd3e0;outline-offset:2px}
.range{width:100%;accent-color:var(--signal);height:28px}
.range-row{display:flex;justify-content:space-between;font-size:.88rem;color:#c9d6df}
.hint{font-size:.92rem;color:#c9d6df;margin:8px 0 0}
.warn{font-size:.92rem;background:#3b2f12;color:#f6e9b0;border-left:3px solid var(--signal);padding:10px 12px;margin:10px 0 0;border-radius:4px}
.chk{display:flex;gap:10px;align-items:flex-start;font-size:.98rem;cursor:pointer}
.chk input{width:20px;height:20px;accent-color:var(--signal);margin-top:2px;flex:none}
.cfg__stage{background:#12324a;border:1px solid var(--line-dark);border-radius:var(--r);overflow:hidden}
.cfg__canvas{width:100%;aspect-ratio:1/0.92}
.cfg__bar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:12px 16px;border-top:1px solid var(--line-dark);font-size:.9rem;color:#c9d6df}
.cfg__bar button{background:none;border:1.5px solid var(--line-dark);color:#fff;border-radius:var(--r-s);padding:7px 12px;font:500 .88rem var(--f-body);cursor:pointer}
.cfg__bar button[aria-pressed=true]{background:var(--signal);color:var(--ink);border-color:var(--signal)}
.cfg__btns{display:flex;gap:8px}
.result{margin-top:20px;background:var(--paper);color:var(--ink);border-radius:var(--r);padding:24px 26px}
.result__top{display:flex;gap:18px;align-items:center;margin-bottom:12px}
.result__top img{width:96px;height:auto;flex:none}
.result h3{margin:0}
.result__sub{color:var(--ash);font-size:.95rem;margin:2px 0 0}
.result dl{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.result dt{font-size:.82rem;color:var(--ash)}
.result dd{margin:2px 0 0;font:600 1.1rem var(--f-head)}
.result ul{margin:0 0 16px;padding-left:1.1em;color:var(--ash);font-size:.95rem}
.result .actions{margin-top:8px}
.note{font-size:.85rem;color:#9fb5c4;margin-top:14px}
@media (max-width:960px){.cfg{grid-template-columns:1fr}.result dl{grid-template-columns:1fr 1fr}}

/* proof */
.proof{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(16px,2.4vw,32px)}
.feature{grid-column:1/8;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.feature img{width:100%;aspect-ratio:16/8;object-fit:cover}
.feature__b{padding:26px 28px 30px}
.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0 22px}
.metrics b{display:block;font:600 1.7rem/1.1 var(--f-head);color:var(--navy)}
.metrics span{font-size:.86rem;color:var(--ash)}
.quotes{grid-column:8/13;display:flex;flex-direction:column;gap:clamp(16px,2.4vw,32px)}
blockquote{margin:0;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:26px 26px 24px}
blockquote p{font:500 1.12rem/1.45 var(--f-head);color:var(--ink)}
blockquote footer{font-size:.9rem;color:var(--ash)}
blockquote footer b{color:var(--ink);font-weight:600}
@media (max-width:960px){.feature,.quotes{grid-column:1/-1}.metrics{grid-template-columns:1fr 1fr}}

/* news band */
.news{background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.news__a{grid-column:1/6}
.news__b{grid-column:7/13}
.news__amt{font:600 clamp(3rem,6vw,4.5rem)/1 var(--f-head);color:var(--navy)}
.news__amt mark{background:linear-gradient(transparent 60%,var(--signal) 60%);color:inherit}
@media (max-width:860px){.news__a,.news__b{grid-column:1/-1}}

/* contact */
.contact__t{grid-column:1/6}
.contact__f{grid-column:7/13}
form label{display:block;font-weight:600;font-size:.95rem;margin:0 0 6px}
form input,form textarea,form select{width:100%;font:400 1rem var(--f-body);padding:12px 14px;border:1.5px solid #b9b4a8;border-radius:var(--r-s);background:var(--paper);color:var(--ink);margin-bottom:18px}
form textarea{min-height:120px;resize:vertical}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.formnote{font-size:.88rem;color:var(--ash);margin-top:12px}
@media (max-width:860px){.contact__t,.contact__f{grid-column:1/-1}.frow{grid-template-columns:1fr}}

/* sub pages */
.phero{padding:clamp(40px,6vw,80px) 0 clamp(40px,5vw,64px)}
.phero__t{grid-column:1/8}
.phero__m{grid-column:8/13;align-self:end}
.phero__m img{border-radius:var(--r);width:100%;aspect-ratio:4/3;object-fit:cover}
@media (max-width:860px){.phero__t,.phero__m{grid-column:1/-1}}
.tiers{width:100%;border-collapse:collapse;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.tiers th,.tiers td{padding:14px 18px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top;font-size:.98rem}
.tiers thead th{font:600 1.2rem var(--f-head);vertical-align:bottom}
.tiers thead img{width:120px;margin-bottom:8px}
.tiers tbody th{font-weight:500;color:var(--ash);width:28%}
.yes{color:var(--teal);font-weight:600}
.no{color:#8a8f94}
.tbl-wrap{overflow-x:auto;border-radius:var(--r)}
.split{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(16px,2.4vw,32px);align-items:center}
.split__m{grid-column:1/7}
.split__m img{border-radius:var(--r);width:100%;object-fit:cover}
.split__t{grid-column:8/13}
.split--rev .split__m{grid-column:7/13;order:2}
.split--rev .split__t{grid-column:1/6;order:1}
@media (max-width:860px){.split__m,.split__t,.split--rev .split__m,.split--rev .split__t{grid-column:1/-1;order:0}}
.cases{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2.4vw,32px)}
.case{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column}
.case img{width:100%;aspect-ratio:3/2;object-fit:cover}
.case__b{padding:22px 24px 26px;display:flex;flex-direction:column;flex:1}
.case__b p{color:var(--ash);font-size:.98rem}
.case__b .tlink{margin-top:auto}
.case__meta{font-size:.88rem;color:var(--ash);margin-bottom:6px}
@media (max-width:960px){.cases{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.cases{grid-template-columns:1fr}}
.timeline{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.timeline li{display:grid;grid-template-columns:minmax(120px,2fr) 10fr;gap:24px;padding:24px 0;border-bottom:1px solid var(--line)}
.timeline time,.timeline .tl{font:600 1.15rem var(--f-head);color:var(--navy)}
.timeline p{margin:0;color:var(--ash)}
.timeline h3{margin-bottom:.3em}
.people{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(16px,2.4vw,32px)}
.person{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:26px;display:flex;gap:20px;align-items:center}
.person img{width:112px;height:112px;object-fit:cover;border-radius:var(--r-s);flex:none}
.person .mono{width:112px;height:112px;border-radius:var(--r-s);background:var(--navy);color:#fff;display:grid;place-items:center;font:600 2rem var(--f-head);flex:none}
.person p{margin:0;color:var(--ash)}
@media (max-width:760px){.people{grid-template-columns:1fr}.person{flex-direction:column;align-items:flex-start}}

/* footer */
.ftr{background:var(--ink);color:#c9d3da;padding:64px 0 32px;font-size:.95rem}
.ftr a{color:#fff;text-decoration:none}
.ftr a:hover{text-decoration:underline}
.ftr__top{display:grid;grid-template-columns:4fr 2fr 2fr 3fr;gap:32px;padding-bottom:40px;border-bottom:1px solid #2a3d4b}
.ftr__top img{height:40px;width:auto;margin-bottom:16px}
.ftr h4{color:#fff;font-size:1rem;margin-bottom:12px}
.ftr ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.ftr__credit{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding-top:24px;font-size:.88rem;color:#9aa8b2}
.ftr__credit a{text-decoration:underline}
@media (max-width:860px){.ftr__top{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.ftr__top{grid-template-columns:1fr}}
