:root{
  --petrol:#0C2E3A; --ink:#04131A; --ink2:#071C24; --mint:#3FD0B0; --paper:#F2F1EC;
  --mute:#9AB0B8; --line:rgba(255,255,255,.14); --dline:rgba(12,46,58,.18);
  --display:'Archivo','Arial Narrow',sans-serif; --body:'General Sans','Segoe UI',sans-serif; --mono:'JetBrains Mono',ui-monospace,monospace;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--body);background:var(--ink);color:#E9F0F2;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
.wrap{width:min(1320px,100% - 48px);margin-inline:auto}
.eyebrow{font:500 12px/1.4 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--mint)}
h1,h2,h3{font-family:var(--display);letter-spacing:-.02em}
.pill{display:inline-flex;align-items:center;gap:10px;border-radius:999px;padding:15px 24px;font-weight:600;font-size:15px;transition:transform .2s,background .2s,color .2s}
.pill:hover{transform:translateY(-1px)}
.pill.solid{background:#fff;color:var(--petrol)}
.pill.solid:hover{background:var(--mint);color:var(--ink)}
.pill.ghost{border:1px solid rgba(255,255,255,.4);color:#fff}
.pill.ghost:hover{background:rgba(255,255,255,.08)}
.pill.dark{background:var(--petrol);color:#fff}
.pill:focus-visible,a:focus-visible{outline:2px solid var(--mint);outline-offset:3px}
.fig{position:relative;overflow:hidden}
.fig img{width:100%;height:100%;object-fit:cover}

/* Nav */
.nav{position:absolute;top:0;left:0;right:0;z-index:10}
.nav .in{display:flex;align-items:center;justify-content:space-between;height:92px}
.nav .logo{height:40px;width:auto}
.nav ul{display:flex;gap:28px;list-style:none;font-size:15px;font-weight:500;color:#DCE6E9}
.nav ul a:hover{color:#fff}
.nav .right{display:flex;gap:18px;align-items:center;font-size:14px}
.lang b{color:#fff}.lang{color:#8AA2AA}
.language{position:relative;z-index:30}.language summary{list-style:none;cursor:pointer;font-size:18px;line-height:1;padding:8px}.language summary::-webkit-details-marker{display:none}.language-menu{position:absolute;right:0;top:calc(100% + 8px);width:150px;padding:10px;background:#fff;color:var(--petrol);border-radius:12px;box-shadow:0 12px 30px rgba(0,0,0,.2);display:grid;gap:7px;font:500 13px/1.25 var(--body)}.language-menu a,.language-menu b{color:inherit;text-decoration:none}.language-menu a:hover{text-decoration:underline}.language-menu b{font-weight:700}

/* Hero */
.hero{position:relative;min-height:100vh;display:flex;align-items:flex-end;overflow:hidden}
.hero .bg{position:absolute;inset:0}
.hero .bg img{width:100%;height:100%;object-fit:cover;animation:zoom 24s ease-out both}
.hero .bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,19,26,.6) 0%,rgba(4,19,26,.12) 28%,rgba(4,19,26,.82) 66%,var(--ink) 100%)}
@keyframes zoom{from{transform:scale(1.07)}to{transform:scale(1)}}
.hero .copy{position:relative;z-index:2;padding:0 0 84px}
.hero .eyebrow{margin-bottom:26px;color:#7FF0D4;text-shadow:0 1px 12px rgba(0,0,0,.8)}
.hero h1,.hero p{text-shadow:0 2px 24px rgba(4,19,26,.55)}
.hero h1{font-size:clamp(46px,7vw,112px);line-height:.95;font-weight:720;font-stretch:90%;max-width:15ch}
.hero h1 span{color:var(--mint)}
.hero .row{display:grid;grid-template-columns:1fr auto;gap:48px;align-items:end;margin-top:44px;padding-top:30px;border-top:1px solid var(--line)}
.markets{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:center;padding:96px 0;background:var(--ink)}.markets h2{font-size:clamp(34px,4vw,58px);margin:16px 0}.markets>div>p{max-width:38ch;color:#B8C8CD;line-height:1.6}.market-map{width:70%;justify-self:center;padding:12px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:#0c2e3a}.markets img{display:block;width:100%;border-radius:10px}.map-note{margin:8px 8px 2px;color:#9eb7be;font-size:11px;line-height:1.35;white-space:nowrap}@media(max-width:700px){.markets{grid-template-columns:1fr;padding:64px 0;gap:28px}}
.hero p{max-width:54ch;font-size:19px;line-height:1.6;color:#C9D7DC}
.hero .btns{display:flex;gap:12px;flex-wrap:wrap}

/* Why now */
.why{padding:170px 0 150px}
.why .grid{display:grid;grid-template-columns:repeat(12,1fr);gap:24px}
.why .lab{grid-column:1/4}
.why .main{grid-column:4/13}
.why h2{font-size:clamp(38px,5vw,78px);line-height:1;font-stretch:88%;font-weight:650;max-width:19ch}
.why h2 em{font-style:normal;color:#5E7A84}
.why .cols{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-top:56px;font-size:18px;line-height:1.7;color:#B9CACF}
.why .cols p:first-child::first-line{color:#fff}

/* Offer */
.offer{padding:0 0 160px}
.offer .head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:56px}
.offer h2{font-size:clamp(36px,4.2vw,64px);line-height:1;font-stretch:90%;max-width:16ch}
.offer .head p{max-width:40ch;color:var(--mute);font-size:17px;line-height:1.6}
.panels{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.panel{position:relative;min-height:620px;border-radius:6px;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;isolation:isolate}
.panel .fig{position:absolute;inset:0;z-index:-1}
.panel .fig img{transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.panel:hover .fig img{transform:scale(1.05)}
.panel .fig::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,19,26,.15) 0%,rgba(4,19,26,.55) 45%,rgba(4,19,26,.96) 100%)}
.panel .body{padding:34px 32px 36px}
.panel .who{font:500 12px/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--mint)}
.panel h3{font-size:32px;line-height:1.05;margin:16px 0 16px;font-stretch:92%;font-weight:650}
.panel p{font-size:16px;line-height:1.62;color:#C9D7DC}
.panel .go{display:inline-block;margin-top:26px;font-weight:600;padding-bottom:4px;border-bottom:1px solid var(--mint)}

/* Why Sambuild (light) */
.us{background:var(--paper);color:var(--petrol);padding:160px 0;
  background-image:linear-gradient(rgba(12,46,58,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(12,46,58,.05) 1px,transparent 1px);background-size:52px 52px}
.us .eyebrow{color:#1E7F6E}
.us .grid{display:grid;grid-template-columns:1.1fr 1fr;gap:96px;align-items:start}
.us blockquote{font-family:var(--display);font-size:clamp(36px,4.2vw,66px);line-height:1.02;font-stretch:84%;font-weight:700;margin-top:24px;letter-spacing:-.02em}
.us blockquote span{color:#5B7A85;font-weight:400}
.us .fig{margin-top:56px;height:380px;border:1px solid var(--dline)}
.us .args{border-top:2px solid var(--petrol)}
.us .arg{padding:34px 0 36px;border-bottom:1px solid var(--dline)}
.us .arg h3{font-size:28px;font-stretch:88%;font-weight:700}
.us .arg p{margin-top:12px;font-size:17px;line-height:1.65;color:#36535D;max-width:52ch}

/* Concepts */
.concept{position:relative;height:96vh;min-height:640px;overflow:hidden}
.concept .fig{position:absolute;inset:0}
.concept .fig::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,19,26,.94) 0%,rgba(4,19,26,.55) 42%,rgba(4,19,26,0) 72%)}
.concept .wrap{position:relative;z-index:2;height:100%;display:flex;align-items:center}
.concept .txt{max-width:560px}
.concept h2{font-size:clamp(42px,5.4vw,86px);line-height:.96;font-stretch:86%;margin-top:22px}
.concept p{margin-top:26px;font-size:19px;line-height:1.6;color:#C9D7DC}
.concept .btns{margin-top:36px;display:flex;gap:12px;flex-wrap:wrap}
.duo{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:20px 0 0}
.duo .fig{height:440px}
.duo figure figcaption{display:flex;justify-content:space-between;margin-top:14px;font:500 11px/1.4 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:#7F98A1}

/* Partnership story */
.story{padding:170px 0 160px}
.story h2{font-size:clamp(38px,4.6vw,72px);line-height:1;font-stretch:88%;max-width:16ch;margin-top:22px}
.story .lead{font-size:19px;line-height:1.6;color:var(--mute);max-width:56ch;margin-top:24px}
.chapters{margin-top:90px;display:grid;grid-template-columns:repeat(3,1fr);gap:0;position:relative}
.chapters::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--line)}
.chapter{padding:40px 40px 0 0;position:relative}
.chapter::before{content:"";position:absolute;top:-5px;left:0;width:11px;height:11px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 6px rgba(63,208,176,.15)}
.chapter .n{font:500 12px/1 var(--mono);letter-spacing:.14em;color:#6F8C96;text-transform:uppercase}
.chapter h3{font-size:30px;font-stretch:90%;margin:16px 0 14px;font-weight:650}
.chapter p{font-size:16.5px;line-height:1.68;color:#AFC2C8;max-width:38ch}

/* CTA */
.cta{position:relative;overflow:hidden;padding:170px 0 150px;border-top:1px solid var(--line)}
.cta .bg{position:absolute;inset:0;opacity:.28}
.cta .bg img{width:100%;height:100%;object-fit:cover}
.cta .bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,var(--ink) 0%,rgba(4,19,26,.4) 50%,var(--ink) 100%)}
.cta .wrap{position:relative}
.cta h2{font-size:clamp(48px,7.4vw,124px);line-height:.92;font-stretch:84%;max-width:13ch;font-weight:720}
.cta .row{display:grid;grid-template-columns:1fr auto;gap:48px;align-items:end;margin-top:52px}
.cta p{max-width:50ch;color:#B9CACF;font-size:19px;line-height:1.6}

footer{border-top:1px solid var(--line);padding:56px 0 64px}
footer .in{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;font-size:14px;color:#8FA6AE;line-height:1.7}
footer img{height:34px;margin-bottom:18px}
footer h4{font:500 11px/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:#E9F0F2;margin-bottom:16px}
footer .disc{margin-top:48px;padding-top:24px;border-top:1px solid var(--line);font-size:12px;color:#6C858E;line-height:1.6;display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}

/* Reveal */
.rv{opacity:1;transform:none}
.js .rv{opacity:0;transform:translateY(28px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.7,.2,1)}
.js .rv.in{opacity:1;transform:none}

@media (max-width:1020px){
  .hero .row,.cta .row{grid-template-columns:1fr}
  .why .lab,.why .main{grid-column:1/-1}
  .why .cols{grid-template-columns:1fr;gap:20px}
  .offer .head{flex-direction:column;align-items:start}
  .panels{grid-template-columns:1fr}.panel{min-height:520px}
  .us .grid{grid-template-columns:1fr;gap:56px}
  .duo{grid-template-columns:1fr}
  .chapters{grid-template-columns:1fr;gap:0}
  .chapters::before{top:0;bottom:0;left:5px;right:auto;width:1px;height:auto}
  .chapter{padding:0 0 48px 40px}.chapter::before{top:4px}
  footer .in{grid-template-columns:1fr 1fr}
}
@media (max-width:560px){
  .nav .logo{height:32px}.nav .pill{display:none}
  .hero .copy{padding-bottom:56px}
  .hero p,.cta p,.concept p{font-size:17px}
  .why,.story,.us,.cta{padding:100px 0}
  .offer{padding-bottom:100px}
  .concept{height:auto;min-height:0}
  .concept .fig{position:relative;height:320px}
  .concept .fig::after{background:linear-gradient(0deg,var(--ink),transparent 60%)}
  .concept .wrap{height:auto;padding:12px 0 72px}
  .duo .fig{height:300px}
  .us .fig{height:260px}
  footer .in{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.js .rv{opacity:1;transform:none}}

/* ===== Undersidor ===== */
.nav ul a[aria-current=page]{color:var(--mint)}
.hero.sub{min-height:82vh}
.hero.sub h1{font-size:clamp(44px,6.2vw,100px);max-width:16ch}
.crumb{font:500 12px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#9AB0B8;margin-bottom:22px;text-shadow:0 1px 12px rgba(0,0,0,.8)}
.crumb a:hover{color:#fff}
.crumb span{color:var(--mint)}

.intro{padding:160px 0 130px}
.intro .grid{display:grid;grid-template-columns:repeat(12,1fr);gap:24px}
.intro .lab{grid-column:1/4}
.intro .main{grid-column:4/13}
.intro h2{font-size:clamp(36px,4.6vw,72px);line-height:1.02;font-stretch:88%;font-weight:650;max-width:20ch}
.intro h2 em{font-style:normal;color:#5E7A84}
.intro .cols{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-top:52px;font-size:18px;line-height:1.7;color:#B9CACF}
.intro .cols b{color:#fff;font-weight:600}

.feats{padding:0 0 150px;display:grid;gap:130px}
.feat{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:center}
.feat.rev .fig{order:2}
.feat .fig{height:600px;border-radius:6px}
.feat .num{font:500 12px/1 var(--mono);letter-spacing:.16em;color:#6F8C96;text-transform:uppercase}
.feat h2{font-size:clamp(34px,3.8vw,58px);line-height:1.02;font-stretch:88%;margin:18px 0 22px;font-weight:650}
.feat p{font-size:18px;line-height:1.7;color:#B9CACF;max-width:50ch}
.feat p+p{margin-top:16px}
.feat .tagline{margin-top:30px;padding-top:22px;border-top:1px solid var(--line);font-size:15px;line-height:1.7;color:#8FA6AE}
.feat .tagline b{color:var(--mint);font-weight:500;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;display:block;margin-bottom:8px}

.chain-sec{background:var(--paper);color:var(--petrol);padding:150px 0;background-image:linear-gradient(rgba(12,46,58,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(12,46,58,.05) 1px,transparent 1px);background-size:52px 52px}
.chain-sec .eyebrow{color:#1E7F6E}
.chain-sec h2{font-size:clamp(36px,4.4vw,70px);line-height:1;font-stretch:84%;font-weight:700;max-width:18ch;margin-top:22px}
.chain-sec h2 span{color:#5B7A85;font-weight:400}
.chain{margin-top:72px;display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 0;font-family:var(--display);font-stretch:80%;font-weight:700;font-size:clamp(28px,3.2vw,48px);line-height:1.25;letter-spacing:-.02em}
.chain span{white-space:nowrap}
.chain i{font-style:normal;color:#9BB0B6;font-weight:300;margin:0 .45em}
.chain-sec .after{margin-top:56px;max-width:60ch;font-size:18px;line-height:1.7;color:#36535D}

.cpanels{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:0 0 150px}
.cpanel{background:var(--ink2);border:1px solid var(--line);border-radius:6px;padding:44px 44px 48px;display:flex;flex-direction:column}
.cpanel .diag{height:240px;border:1px solid var(--line);border-radius:4px;display:grid;place-items:center;margin-bottom:40px;background:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:24px 24px}
.cpanel .diag svg{width:78%;height:auto}
.cpanel .who{font:500 12px/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--mint)}
.cpanel h3{font-size:clamp(32px,3vw,46px);font-stretch:88%;margin:14px 0 18px;font-weight:650}
.cpanel p{font-size:17px;line-height:1.65;color:#B9CACF}
.cpanel .big{margin-top:auto;padding-top:34px;display:flex;align-items:baseline;gap:14px;border-top:1px solid var(--line)}
.cpanel .big b{font:700 clamp(48px,5vw,76px)/1 var(--display);font-stretch:78%;letter-spacing:-.03em}
.cpanel .big small{font-size:14px;color:#8FA6AE;line-height:1.4}
.cpanel .spacer{height:34px}
.lit{fill:rgba(63,208,176,.18);stroke:#3FD0B0;stroke-width:1.5}
.ghost-r{fill:none;stroke:rgba(255,255,255,.35);stroke-width:1.2;stroke-dasharray:5 5}
.dlab{font:500 9px var(--mono);letter-spacing:.12em;fill:#8FA6AE;text-transform:uppercase}
.pulse{animation:pulse 3.2s ease-in-out infinite}
@keyframes pulse{0%,100%{fill-opacity:.18}50%{fill-opacity:.42}}

.notice{margin-top:28px;font-size:13px;line-height:1.6;color:#7F98A1;max-width:70ch}
.us.alt .grid{grid-template-columns:1fr 1.1fr}
.args.two{display:grid;grid-template-columns:1fr 1fr;column-gap:48px;border-top:2px solid var(--petrol)}
.why-inv{padding:160px 0 130px}

@media (max-width:1020px){
  .intro .lab,.intro .main{grid-column:1/-1}
  .intro .cols{grid-template-columns:1fr;gap:20px}
  .feat{grid-template-columns:1fr;gap:36px}
  .feat.rev .fig{order:0}
  .feat .fig{height:420px}
  .feats{gap:96px}
  .cpanels{grid-template-columns:1fr}
  .us.alt .grid{grid-template-columns:1fr}
  .args.two{grid-template-columns:1fr}
}
@media (max-width:560px){
  .hero.sub{min-height:88vh}
  .intro,.why-inv{padding:96px 0 80px}
  .feats{padding-bottom:96px;gap:80px}
  .feat .fig{height:300px}
  .chain-sec{padding:96px 0}
  .chain span{white-space:normal}
  .cpanel{padding:28px 24px 32px}
  .cpanel .diag{height:180px}
  .cpanels{padding-bottom:96px}
}

/* ===== v3: fler sidor ===== */
.burger{display:none;width:44px;height:44px;border:1px solid rgba(255,255,255,.35);border-radius:50%;background:transparent;color:#fff;cursor:pointer;place-items:center}
.burger span,.burger span::before,.burger span::after{display:block;width:16px;height:1.5px;background:#fff;position:relative;content:""}
.burger span::before{position:absolute;top:-5px}.burger span::after{position:absolute;top:5px}
@media (max-width:1180px){
  .nav ul{display:none}
  .burger{display:grid}
  .nav.open ul{display:flex;flex-direction:column;gap:0;position:fixed;inset:0;background:var(--ink);padding:110px 28px 40px;z-index:-1;font:600 30px/1 var(--display);font-stretch:88%}
  .nav.open ul li{border-bottom:1px solid var(--line)}
  .nav.open ul a{display:block;padding:20px 0}
  .nav.open{position:fixed}
}
.lead-p{font-size:19px;line-height:1.65;color:#B9CACF;max-width:60ch}
.sec{padding:150px 0}
.sec.tight{padding-top:0}
.sec h2.big{font-size:clamp(36px,4.6vw,72px);line-height:1.02;font-stretch:88%;font-weight:650;max-width:20ch;margin:22px 0 26px}
.sec h2.big span{color:#5E7A84}
.light{background:var(--paper);color:var(--petrol);background-image:linear-gradient(rgba(12,46,58,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(12,46,58,.05) 1px,transparent 1px);background-size:52px 52px}
.light .eyebrow{color:#1E7F6E}
.light .lead-p,.light p{color:#36535D}
.light h2.big span{color:#5B7A85}

/* stats */
.stats{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}
.stat{padding:36px 28px 8px 0;border-right:1px solid var(--line);margin-right:28px}
.stat:last-child{border-right:0}
.stat b{display:block;font:700 clamp(44px,4.6vw,72px)/1 var(--display);font-stretch:78%;letter-spacing:-.03em;color:#fff}
.stat b small{font-size:.45em;color:var(--mint);margin-left:4px;letter-spacing:0}
.stat span{display:block;margin-top:14px;font-size:15px;line-height:1.5;color:#8FA6AE;max-width:26ch}
.light .stats{border-color:var(--dline)}.light .stat{border-color:var(--dline)}.light .stat b{color:var(--petrol)}.light .stat b small{color:#1E7F6E}.light .stat span{color:#4C6872}

/* cards grid */
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:64px}
.cards.c3{grid-template-columns:repeat(3,1fr)}
.cards.c2{grid-template-columns:repeat(2,1fr)}
.card{background:var(--ink2);border:1px solid var(--line);border-radius:6px;padding:34px 30px 36px;display:flex;flex-direction:column}
.card .n{font:500 12px/1 var(--mono);letter-spacing:.16em;color:var(--mint);text-transform:uppercase}
.card h3{font-size:clamp(24px,2.1vw,32px);line-height:1.08;font-stretch:90%;font-weight:650;margin:18px 0 14px}
.card p{font-size:16px;line-height:1.65;color:#AFC2C8}
.card .kpi{margin-top:auto;padding-top:26px;border-top:1px solid var(--line);font:700 40px/1 var(--display);font-stretch:80%}
.card .kpi small{display:block;font:400 13px/1.4 var(--body);color:#8FA6AE;margin-top:8px}
.card .go{margin-top:auto;padding-top:26px;font-weight:600;color:#fff}
.card .go span{border-bottom:1px solid var(--mint);padding-bottom:3px}
.card .spacer{height:26px}
a.card{transition:border-color .2s,transform .2s}a.card:hover{border-color:var(--mint);transform:translateY(-2px)}
.light .card{background:#fff;border-color:var(--dline)}
.light .card p{color:#4C6872}.light .card .n{color:#1E7F6E}.light .card .kpi{border-color:var(--dline)}

/* steps */
.steps{list-style:none;display:grid;grid-template-columns:repeat(5,1fr);margin-top:72px;position:relative;counter-reset:s}
.steps::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--line)}
.steps li{padding:38px 28px 0 0;position:relative}
.steps li::before{content:"";position:absolute;top:-5px;left:0;width:11px;height:11px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 6px rgba(63,208,176,.15)}
.steps .n{font:500 12px/1 var(--mono);letter-spacing:.14em;color:#6F8C96;text-transform:uppercase}
.steps h3{font-size:24px;font-stretch:90%;font-weight:650;margin:14px 0 12px;line-height:1.1}
.steps p{font-size:15.5px;line-height:1.65;color:#AFC2C8}
.light .steps::before{background:var(--dline)}.light .steps p{color:#4C6872}

/* value ladder */
.ladder{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;align-items:end;margin-top:72px;height:420px}
.ladder .bar{display:flex;flex-direction:column;justify-content:flex-end;height:100%}
.ladder .col{background:linear-gradient(180deg,#1E7F6E,var(--petrol));border-radius:4px 4px 0 0;position:relative}
.ladder .bar:last-child .col{background:linear-gradient(180deg,var(--mint),#1E7F6E)}
.ladder .lab{padding-top:16px;border-top:2px solid var(--petrol)}
.ladder .lab b{display:block;font:650 20px/1.15 var(--display);font-stretch:90%}
.ladder .lab span{display:block;font-size:14px;line-height:1.5;color:#4C6872;margin-top:6px}
.ladder .lab i{font:500 11px/1 var(--mono);font-style:normal;letter-spacing:.14em;color:#1E7F6E;text-transform:uppercase;display:block;margin-bottom:10px}

/* rows (risk etc) */
.rows{margin-top:64px;border-top:2px solid var(--mint)}
.rowi{display:grid;grid-template-columns:1fr 1.6fr;gap:48px;padding:32px 0;border-bottom:1px solid var(--line)}
.rowi h3{font-size:28px;font-stretch:88%;font-weight:650;line-height:1.1}
.rowi h3 small{display:block;font:500 11px/1 var(--mono);letter-spacing:.14em;color:#6F8C96;text-transform:uppercase;margin-bottom:12px}
.rowi p{font-size:17px;line-height:1.7;color:#B9CACF;max-width:62ch}
.light .rows{border-color:var(--petrol)}.light .rowi{border-color:var(--dline)}

/* faq */
.faq{margin-top:56px;border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;padding:28px 48px 28px 0;font:650 24px/1.2 var(--display);font-stretch:90%;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:4px;top:22px;font:300 32px/1 var(--body);color:var(--mint)}
.faq details[open] summary::after{content:"–"}
.faq details p{padding:0 0 30px;font-size:17px;line-height:1.7;color:#B9CACF;max-width:70ch}

/* split media */
.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.split .fig{height:560px;border-radius:6px}
.split.rev .fig{order:2}

/* campus svg */
.grow{margin-top:64px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.grow .card svg{width:100%;height:auto;margin-bottom:24px}
.blk{fill:rgba(63,208,176,.2);stroke:#3FD0B0;stroke-width:1.4}
.blk2{fill:none;stroke:rgba(255,255,255,.3);stroke-dasharray:4 4}

/* contact form */
.form{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.form label{display:flex;flex-direction:column;gap:8px;font:500 11px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#8FA6AE}
.form label.full{grid-column:1/-1}
.form input,.form select,.form textarea{font:400 16px var(--body);color:#fff;background:var(--ink2);border:1px solid var(--line);border-radius:4px;padding:15px 16px;text-transform:none;letter-spacing:0}
.form textarea{min-height:150px;resize:vertical}
.form input:focus,.form select:focus,.form textarea:focus{outline:2px solid var(--mint);border-color:transparent}
.form button{justify-self:start;border:0;cursor:not-allowed;opacity:.6;font:600 15px var(--body)}
.addr{font-size:17px;line-height:1.8;color:#B9CACF}
.addr b{color:#fff}

@media (max-width:1020px){
  .stats{grid-template-columns:1fr 1fr}.stat:nth-child(2){border-right:0}
  .cards,.cards.c3,.cards.c2,.grow{grid-template-columns:1fr 1fr}
  .steps{grid-template-columns:1fr;margin-top:48px}
  .steps::before{top:0;bottom:0;left:5px;right:auto;width:1px;height:auto}
  .steps li{padding:0 0 40px 40px}.steps li::before{top:4px}
  .ladder{height:auto;grid-template-columns:1fr;gap:10px}
  .ladder .bar{display:grid;grid-template-columns:90px 1fr;gap:18px;align-items:center;height:auto}
  .ladder .col{height:auto!important;border-radius:4px;align-self:stretch;min-height:64px}
  .ladder .lab{border-top:0;padding-top:0}
  .rowi{grid-template-columns:1fr;gap:12px}
  .split{grid-template-columns:1fr;gap:40px}.split.rev .fig{order:0}.split .fig{height:400px}
}
@media (max-width:560px){
  .sec{padding:96px 0}
  .stats{grid-template-columns:1fr}.stat{border-right:0;margin-right:0;border-bottom:1px solid var(--line);padding-bottom:28px}
  .cards,.cards.c3,.cards.c2,.grow{grid-template-columns:1fr}
  .form{grid-template-columns:1fr}
  .split .fig{height:280px}
  .ladder .bar{grid-template-columns:56px 1fr}
}
.m-only{display:none}
@media (max-width:1180px){.nav.open .m-only{display:block}}
.hero.sub{min-height:88vh}
.hero.sub h1{font-size:clamp(42px,5.4vw,88px);max-width:18ch}
.card>p{padding-bottom:24px}
.cpanels.tracks{padding:0;margin-top:48px}
.sec.nobot{padding-bottom:48px}
.intro .main>.eyebrow{margin-bottom:26px}
.stat b{white-space:nowrap;font-size:clamp(40px,4.2vw,64px)}
.stats3 .stats{grid-template-columns:repeat(3,1fr)}
@media(max-width:900px){.stats3 .stats{grid-template-columns:1fr}}
/* tätare avstånd */
.intro{padding:120px 0 70px}
.sec{padding:110px 0}
.sec.tight{padding-top:0}
.intro+.sec:not(.light):not(.tight){padding-top:30px}
.sec:not(.light)+.sec:not(.light){padding-top:20px}
.why{padding:120px 0 110px}.us{padding:120px 0}.story{padding:120px 0 110px}
.cta{padding:130px 0 120px}
.feats{padding-bottom:110px;gap:100px}
.chain-sec{padding:110px 0}
.cpanels{padding-bottom:110px}
.why-inv{padding:120px 0 90px}
@media(max-width:900px){.intro{padding:90px 0 50px}.sec{padding:80px 0}.sec.tight{padding-top:0}.why,.story,.us,.cta{padding:80px 0}.feats{gap:72px;padding-bottom:80px}}
.sec.light+.offer{padding-top:110px}@media(max-width:900px){.sec.light+.offer{padding-top:80px}}
/* concept: gradient följer textkolumnen även på breda skärmar */
.concept{max-height:1040px}
.concept .fig::after{background:linear-gradient(90deg,rgba(4,19,26,.95) 0,rgba(4,19,26,.9) calc(50% - 120px),rgba(4,19,26,.5) calc(50% + 160px),rgba(4,19,26,0) calc(50% + 520px))}
.concept .txt{max-width:600px}
@media(max-width:1020px){.concept{max-height:none}.concept .fig::after{background:linear-gradient(0deg,var(--ink),transparent 60%)}}
/* intro vänsterställd som övriga avsnitt */
.intro .main{grid-column:1/-1}
.intro .cols{max-width:1080px}
@media(min-width:1700px){.wrap{width:min(1440px,100% - 96px)}}
/* Typografisk balans: större brödtext, något lugnare rubriker */
.eyebrow,.panel .who,.cpanel .who,.card .n,.feat .num,.chapter .n,.steps .n,.crumb{font-size:13px}
.nav ul{font-size:16px;gap:30px}.nav .right{font-size:15px}.pill{font-size:16px}
.hero p,.concept p,.cta p,.lead-p,.story .lead{font-size:clamp(19px,1.35vw,22px)}
.why .cols,.intro .cols,.feat p,.chain-sec .after{font-size:clamp(18px,1.25vw,20px)}
.panel p,.card p,.cpanel p,.rowi p,.faq details p,.us .arg p,.chapter p,.addr{font-size:clamp(17px,1.15vw,18.5px)}
.steps p,.stat span,.feat .tagline{font-size:clamp(16px,1.05vw,17px)}
.ladder .lab span,.cpanel .big small,.card .kpi small{font-size:15px}
.offer .head p{font-size:18px}
footer .in{font-size:15.5px}footer h4{font-size:12px}footer .disc{font-size:13px}
.hero h1{font-size:clamp(46px,6.4vw,100px)}
.hero.sub h1{font-size:clamp(42px,5vw,82px)}
.cta h2{font-size:clamp(46px,6.4vw,106px)}
.concept h2{font-size:clamp(40px,4.8vw,78px)}
.why h2,.intro h2,.sec h2.big,.story h2,.chain-sec h2{font-size:clamp(36px,4.2vw,66px)}
@media(max-width:700px){.hero p,.concept p,.cta p,.lead-p{font-size:18px}}
.rv p{font-size:clamp(17px,1.15vw,18.5px)}
/* Teknik och utveckling */
.filters{display:flex;flex-wrap:wrap;gap:10px;margin-top:40px}
.filters button{font:500 15px var(--body);color:#DCE6E9;background:transparent;border:1px solid var(--line);border-radius:999px;padding:10px 18px;cursor:pointer;transition:border-color .2s,background .2s,color .2s}
.filters button:hover{border-color:var(--mint)}.filters button.on{background:#fff;color:var(--petrol);border-color:#fff}
.filters button:disabled{opacity:.45;cursor:default}
.agrid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-top:40px}
.more .agrid{grid-template-columns:repeat(3,1fr)}
.acard{display:flex;flex-direction:column;background:var(--ink2);border:1px solid var(--line);border-radius:6px;overflow:hidden;transition:border-color .2s,transform .2s}
.acard:hover{border-color:var(--mint);transform:translateY(-2px)}.acard[hidden]{display:none}
.acard .fig{aspect-ratio:16/8;overflow:hidden}.acard .fig img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.acard:hover .fig img{transform:scale(1.03)}
.acard .body{padding:28px 30px 32px;display:flex;flex-direction:column;flex:1}
.acard .meta{display:flex;gap:16px;align-items:center;font:500 13px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:#8FA6AE}
.acard .tag{color:var(--mint)}
.acard h3{font-size:clamp(24px,2.1vw,32px);line-height:1.1;font-stretch:90%;font-weight:650;margin:18px 0 14px}
.more .acard h3{font-size:clamp(22px,1.7vw,26px)}
.acard p{font-size:clamp(17px,1.15vw,18.5px);line-height:1.6;color:#AFC2C8}
.acard .go{margin-top:auto;padding-top:24px;font-weight:600;font-size:16px;color:#fff;text-decoration:underline;text-underline-offset:6px;text-decoration-color:var(--mint)}
.hero.art{min-height:74vh}.hero.art h1{font-size:clamp(36px,4.2vw,66px);max-width:22ch;line-height:1}
.hero.art .row{grid-template-columns:1fr}.hero.art .btns:empty{display:none}
.hero.art .crumb a{color:inherit}
.article{background:var(--paper);color:var(--petrol);padding:96px 0 110px}
.agrid2{display:grid;grid-template-columns:260px minmax(0,720px);gap:80px;justify-content:start}
.ameta{position:sticky;top:110px;align-self:start;display:flex;flex-direction:column;gap:22px;font-size:16px;line-height:1.5;color:#36535D}
.ameta b{display:block;font:500 12px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#1E7F6E;margin-bottom:8px}
.ameta .pill{align-self:start;color:var(--petrol);border-color:var(--dline);margin-top:6px}
.prose h2{font-family:var(--display);font-size:clamp(26px,2.2vw,34px);font-stretch:90%;font-weight:650;line-height:1.1;margin:48px 0 16px;color:var(--petrol)}
.prose h2:first-child{margin-top:0}
.prose p{font-size:clamp(18px,1.25vw,20px);line-height:1.75;color:#24424C;margin-bottom:18px}
.prose a{color:#0E6B5C;text-decoration:underline;text-underline-offset:3px}
.sources{margin-top:56px;padding-top:32px;border-top:1px solid var(--dline)}
.sources h2{font-size:22px;margin:0 0 16px}
.sources ol{padding-left:22px;font-size:16px;line-height:1.6;color:#36535D;display:flex;flex-direction:column;gap:10px}
@media(max-width:1020px){.agrid2{grid-template-columns:1fr;gap:40px}.ameta{position:static;display:grid;grid-template-columns:1fr 1fr;gap:20px}.more .agrid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.agrid,.more .agrid{grid-template-columns:1fr}.article{padding:64px 0 80px}.ameta{grid-template-columns:1fr}}
.sec.more{padding-top:100px}@media(max-width:700px){.sec.more{padding-top:72px}}
.hero .crumb a{color:inherit}.hero .crumb a:hover{color:#fff}
/* 20 analyser: tre kolumner i översikten */
#analyser .agrid{grid-template-columns:repeat(3,1fr)}
#analyser .acard h3{font-size:clamp(22px,1.7vw,26px)}
@media(max-width:1020px){#analyser .agrid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){#analyser .agrid{grid-template-columns:1fr}}
.lang a{color:inherit;text-decoration:none}.lang a:hover{color:#fff}
/* Inspeqt – fördelar i rad */
.bensec{padding:110px 0}
.bensec h2.big{max-width:24ch;margin-bottom:0}
.bens{display:grid;grid-template-columns:repeat(5,1fr);margin-top:56px;border-top:2px solid var(--petrol)}
.ben{padding:26px 26px 6px 0}
.ben+.ben{padding-left:26px;border-left:1px solid rgba(12,46,58,.14)}
.ben .n{font:500 12px/1 var(--mono);letter-spacing:.14em;color:#2A8F78}
.ben h3{margin-top:16px;font-size:21px;font-stretch:88%;font-weight:700;color:var(--ink)}
.ben p{margin-top:10px;font-size:15px;line-height:1.6;color:#36535D}
@media(max-width:1100px){.bens{grid-template-columns:repeat(3,1fr)}.ben:nth-child(4){padding-left:0;border-left:0}.ben:nth-child(n+4){border-top:1px solid rgba(12,46,58,.14);margin-top:20px}}
@media(max-width:640px){.bensec{padding:80px 0}.bens{grid-template-columns:1fr 1fr}.ben,.ben+.ben{padding:22px 16px 4px 0;border-left:0;margin-top:0}.ben:nth-child(even){padding-left:16px;border-left:1px solid rgba(12,46,58,.14)}.ben:nth-child(n+3){border-top:1px solid rgba(12,46,58,.14)}.ben:nth-child(4){padding-left:16px;border-left:1px solid rgba(12,46,58,.14)}.ben h3{font-size:18px}.ben p{font-size:14px}}
/* Större menytext */
.nav ul{font-size:17.5px;gap:32px}
@media(max-width:1440px){.nav ul{font-size:17px;gap:26px}}
@media(max-width:1320px){.nav ul{font-size:16.5px;gap:20px}}

/* Compact reading scale for tablets and phones */
@media(max-width:1020px){
  .hero h1{font-size:clamp(42px,7vw,68px);max-width:14ch}
  .hero.sub h1{font-size:clamp(38px,6vw,60px)}
  .cta h2{font-size:clamp(38px,6.5vw,64px)}
  .why h2,.intro h2,.sec h2.big,.story h2,.chain-sec h2,.offer h2{font-size:clamp(32px,5.5vw,50px)}
  .panel h3{font-size:28px}.panel{min-height:480px}
  .lead-p,.hero p,.offer .head p{font-size:17px}
  .panel p,.card p,.us .arg p,.chapter p{font-size:16px}
}
@media(max-width:560px){
  .wrap{width:min(100% - 40px,1320px)}
  .hero h1{font-size:clamp(38px,11vw,48px);line-height:.98}
  .hero.sub h1{font-size:clamp(34px,9.5vw,42px);line-height:1}
  .cta h2{font-size:clamp(36px,10vw,46px)}
  .why h2,.intro h2,.sec h2.big,.story h2,.chain-sec h2,.offer h2{font-size:clamp(30px,8.5vw,38px);line-height:1.04}
  .offer .head{gap:20px;margin-bottom:32px}.offer{padding-bottom:72px}
  .panel{min-height:440px}.panel .body{padding:26px 24px 28px}.panel h3{font-size:26px;line-height:1.08;margin:12px 0}.panel p{font-size:16px;line-height:1.5}
  .sec{padding:68px 0}.intro{padding:72px 0 40px}.why,.story,.us,.cta{padding:72px 0}
  .hero p,.cta p,.concept p,.lead-p,.offer .head p{font-size:16px;line-height:1.55}
}
