/* ==========================================================================
   Pagelook Prosjekter – stil for enkeltprosjekt og arkiv
   Alt er skopet under .plp så det ikke påvirker resten av nettstedet.
   Farger og fonter styres av variablene under – endre her for å justere hele malen.
   ========================================================================== */

.plp{
	--plp-midnight:#070F2B; --plp-navy-950:#0A1433; --plp-navy-900:#0F1E52;
	--plp-navy:#1E3A8E; --plp-royal:#1C55A6; --plp-azure:#1B6BB5;
	--plp-sky:#7DB8F0; --plp-mist:#C9DCF5; --plp-ice:#EEF4FC;
	--plp-ink:#0A1433; --plp-text:#3A4870; --plp-muted:#5B6890; --plp-line:#DCE6F5;
	--plp-grad:linear-gradient(135deg,#1E3A8E,#1C55A6 55%,#1B6BB5);
	--plp-sans:"Schibsted Grotesk",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
	--plp-serif:"Instrument Serif",Georgia,serif;
	--plp-pad:clamp(20px,4.5vw,72px);
	--plp-ease:cubic-bezier(.2,.7,.1,1);
	font-family:var(--plp-sans); color:var(--plp-ink); background:#fff;
	font-size:17px; line-height:1.55; -webkit-font-smoothing:antialiased; overflow-x:clip;
}
.plp *,.plp *::before,.plp *::after{box-sizing:border-box}
.plp a{color:inherit;text-decoration:none}
.plp img{max-width:100%;height:auto;display:block}
.plp figure{margin:0}
.plp h1,.plp h2,.plp h3{font-family:var(--plp-sans);color:inherit;text-transform:none;margin:0}
.plp p{margin:0}
.plp button{font:inherit;cursor:pointer;border:0;background:none;color:inherit}
.plp-wrap{max-width:1600px;margin:0 auto;padding:0 var(--plp-pad)}
.plp-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.plp-serif{font-family:var(--plp-serif);font-style:italic;font-weight:400;letter-spacing:-.01em;color:var(--plp-royal)}
.plp mark.plp-ph{background:rgba(125,184,240,.22);color:var(--plp-royal);border-radius:6px;padding:0 .2em;font-weight:700}
.plp-sec{padding:clamp(72px,9vw,140px) 0}
.plp-sec + .plp-sec{padding-top:0}

/* ---- typografi ---- */
.plp-eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--plp-royal)}
.plp-eyebrow::before{content:"";width:22px;height:1.5px;background:currentColor}
.plp-h1{margin-top:16px!important;font-size:clamp(42px,6.2vw,104px);line-height:.95;letter-spacing:-.05em;font-weight:700;max-width:1150px}
.plp-h2{margin-top:16px!important;font-size:clamp(34px,4vw,62px);line-height:1;letter-spacing:-.045em;font-weight:700}
.plp-lead{font-size:clamp(18px,1.5vw,22px);color:var(--plp-text)}
.plp-p{color:var(--plp-text);font-size:18px;margin-top:18px!important}

/* ---- knapper ---- */
.plp-btn{position:relative;display:inline-flex;align-items:center;gap:12px;height:58px;padding:0 10px 0 28px;border-radius:999px;font-weight:600;font-size:16px;background:var(--plp-navy);color:#fff!important;overflow:hidden;isolation:isolate;transition:color .4s var(--plp-ease)}
.plp-btn::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;background:var(--plp-azure);transform:translateY(101%);transition:transform .5s var(--plp-ease)}
.plp-btn:hover::before{transform:none}
.plp-ic{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--plp-navy);transition:transform .5s var(--plp-ease)}
.plp-btn:hover .plp-ic{transform:rotate(-45deg)}
.plp-btn--white{background:#fff;color:var(--plp-navy)!important}
.plp-btn--white::before{background:var(--plp-mist)}
.plp-btn--white .plp-ic{background:var(--plp-navy);color:#fff}
.plp-link{display:inline-flex;align-items:center;gap:10px;font-weight:600;white-space:nowrap}
.plp-link span{background:linear-gradient(currentColor,currentColor) 0 100%/0 1.5px no-repeat;transition:background-size .45s var(--plp-ease)}
.plp-link:hover span{background-size:100% 1.5px}

/* ---- dekor ---- */
.plp-blob{position:absolute;border-radius:50%;filter:blur(80px);opacity:.55;pointer-events:none;z-index:-1}
.plp-b1{width:560px;height:560px;background:#CFE0F7;top:-160px;right:-120px}
.plp-b2{width:420px;height:420px;background:#E3EDFB;top:260px;left:-160px}
.plp-prog{position:fixed;top:0;left:0;height:3px;width:100%;background:var(--plp-grad);transform-origin:0 50%;transform:scaleX(0);z-index:9999;pointer-events:none}

/* ---- reveal ---- */
.plp-js .plp-rv{opacity:0;transform:translateY(28px);transition:opacity .9s var(--plp-ease),transform .9s var(--plp-ease)}
.plp-js .plp-rv.plp-in{opacity:1;transform:none}

/* ---- rammer ---- */
.plp-bw{position:relative;border-radius:14px;background:#fff;box-shadow:0 30px 80px -20px rgba(10,20,51,.35),0 0 0 1px rgba(10,20,51,.06);overflow:hidden}
.plp-bw-bar{display:flex;align-items:center;gap:6px;height:30px;padding:0 12px;background:#F2F5FB;border-bottom:1px solid #E3EAF6}
.plp-bw-bar i{width:9px;height:9px;border-radius:50%;background:#D3DCEC}
.plp-bw-bar span{margin-left:10px;flex:1;max-width:320px;height:18px;border-radius:6px;background:#fff;font-size:11px;line-height:18px;color:var(--plp-muted);padding:0 10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.plp-bw img{width:100%}
.plp-phone{position:relative;border-radius:40px;background:var(--plp-navy-950);padding:9px;box-shadow:0 30px 70px -18px rgba(10,20,51,.5)}
.plp-phone::before{content:"";position:absolute;top:16px;left:50%;width:30%;height:16px;border-radius:10px;background:var(--plp-navy-950);transform:translateX(-50%);z-index:2}
.plp-tablet{border-radius:26px;background:var(--plp-navy-950);padding:12px;box-shadow:0 30px 80px -20px rgba(10,20,51,.45)}
.plp-scr{overflow:hidden;border-radius:32px;background:#fff}
.plp-tablet .plp-scr{border-radius:14px}
.plp-scr img{width:100%}

/* ---- brødsmuler ---- */
.plp-crumbs{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:14px;color:var(--plp-muted);margin-bottom:28px}
.plp-crumbs a:hover{color:var(--plp-navy)}
.plp-crumbs span[aria-hidden]{opacity:.5}

/* ==========================================================================
   1 · HERO
   ========================================================================== */
.plp-hero{position:relative;isolation:isolate;padding:clamp(120px,11vw,160px) 0 0}
.plp-intro{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(28px,5vw,80px);margin-top:36px;align-items:start}
.plp-acts{display:flex;gap:22px;align-items:center;flex-wrap:wrap;margin-top:28px}
.plp-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;border-top:1px solid var(--plp-line)}
.plp-meta div{padding:14px 0;border-bottom:1px solid var(--plp-line);min-width:0}
.plp-meta div:nth-child(odd){padding-right:16px}
.plp-meta div:last-child:nth-child(odd){grid-column:1/-1}
.plp-meta dt{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--plp-muted)}
.plp-meta dd{margin:4px 0 0;font-weight:600;font-size:15.5px}

/* ==========================================================================
   2 · HOVEDBILDE
   ========================================================================== */
.plp-main{padding-top:clamp(40px,6vw,80px)}
.plp-stage{border-radius:36px;background:linear-gradient(160deg,#EEF4FC 0%,#D5E4F8 60%,#BCD4F3 100%);padding:clamp(24px,6vw,90px) clamp(16px,7vw,120px) 0;overflow:hidden}
.plp-stage .plp-bw{border-radius:14px 14px 0 0}
.plp-full{border-radius:36px;overflow:hidden;background:var(--plp-ice)}
.plp-full img{width:100%;max-height:820px;object-fit:cover}

/* ==========================================================================
   3 · SKJERMBILDER (karusell)
   ========================================================================== */
.plp-head{display:flex;justify-content:space-between;align-items:flex-end;gap:28px;flex-wrap:wrap;margin-bottom:8px}
.plp-head-r{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.plp-dsw{display:inline-flex;gap:4px;padding:5px;border-radius:999px;background:var(--plp-ice);position:relative}
.plp-dsw button{position:relative;z-index:1;height:44px;padding:0 20px;border-radius:999px;font-weight:600;font-size:15px;color:var(--plp-navy-900);transition:color .3s}
.plp-dsw button[aria-selected="true"]{color:#fff}
.plp-pill{position:absolute;top:5px;left:5px;height:44px;border-radius:999px;background:var(--plp-navy);transition:transform .5s var(--plp-ease),width .5s var(--plp-ease)}
.plp-nav{display:flex;gap:8px}
.plp-nav button{width:54px;height:54px;border-radius:50%;border:1.5px solid var(--plp-line);display:grid;place-items:center;color:var(--plp-navy);transition:all .3s}
.plp-nav button:hover{background:var(--plp-navy);border-color:var(--plp-navy);color:#fff}
.plp-rail{display:flex;gap:clamp(16px,2vw,28px);overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:var(--plp-pad);padding:34px var(--plp-pad) 30px;margin:0 calc(var(--plp-pad) * -1);scrollbar-width:thin;scroll-behavior:smooth}
.plp-rail[hidden]{display:none}
.plp-rail:focus-visible{outline:2px solid var(--plp-royal);outline-offset:-2px}
.plp-rail>figure{flex-shrink:0;scroll-snap-align:start}
.plp-rail[data-kind="mobile"]>figure{width:clamp(220px,22vw,290px)}
.plp-rail[data-kind="tablet"]>figure{width:clamp(280px,34vw,440px)}
.plp-rail[data-kind="desktop"]>figure{width:clamp(300px,62vw,880px)}
.plp-rail figcaption{margin-top:14px;font-size:15px;color:var(--plp-text)}

/* ==========================================================================
   4 · HISTORIEN
   ========================================================================== */
.plp-story-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,6vw,110px)}
.plp-side{position:sticky;top:110px;align-self:start}
.plp-q{padding:0 0 clamp(32px,4vw,52px)}
.plp-q + .plp-q{padding-top:clamp(32px,4vw,52px);border-top:1px solid var(--plp-line)}
.plp-n{font-size:13px;font-weight:700;letter-spacing:.12em;color:var(--plp-royal)}
.plp-q h3{margin:10px 0 14px!important;font-size:clamp(26px,2.4vw,36px);letter-spacing:-.03em;line-height:1.1;font-weight:700}
.plp-prose{color:var(--plp-text);font-size:18px}
.plp-prose p{margin:0 0 14px}
.plp-prose ul{margin:8px 0 0;padding:0;list-style:none;display:grid;gap:10px}
.plp-prose li{position:relative;padding-left:30px;color:var(--plp-ink);font-size:17px}
.plp-prose li::before{content:"";position:absolute;left:2px;top:7px;width:14px;height:8px;border-left:2.4px solid var(--plp-royal);border-bottom:2.4px solid var(--plp-royal);transform:rotate(-45deg)}
.plp-prose strong{color:var(--plp-ink)}

/* ==========================================================================
   5 · RESULTATER
   ========================================================================== */
.plp-nums{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:22px}
.plp-nums--1{grid-template-columns:minmax(0,1fr)}
.plp-nums--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.plp-nums--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.plp-nums>div{padding:26px 24px 26px 0;border-top:2px solid var(--plp-navy);min-width:0}
.plp-nums>div + div{padding-left:24px;border-left:1px solid var(--plp-line)}
.plp-nums b{display:block;font-size:clamp(40px,5.2vw,84px);font-weight:700;letter-spacing:-.06em;line-height:.95;color:var(--plp-navy);overflow-wrap:anywhere}
.plp-nums b .plp-ph{font-size:.7em}
.plp-nums span{display:block;margin-top:12px;font-size:15.5px;color:var(--plp-text);max-width:260px}
.plp-nums small{display:block;margin-top:6px;font-size:12.5px;color:var(--plp-muted)}
.plp-chart{margin-top:clamp(40px,5vw,64px)!important;border-radius:28px;background:var(--plp-ice);padding:clamp(22px,3vw,40px)}
.plp-chart figcaption{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:26px}
.plp-chart figcaption b{font-size:18px}
.plp-chart figcaption small{color:var(--plp-muted);font-size:13px}
.plp-bars{display:flex;align-items:flex-end;gap:clamp(6px,1.2vw,16px);height:260px}
.plp-bar{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;min-width:0}
.plp-bar i{display:block;width:100%;max-width:64px;height:calc(var(--h) * .8);border-radius:10px 10px 4px 4px;background:var(--plp-grad);transform-origin:bottom;transition:transform 1.1s var(--plp-ease)}
.plp-js .plp-chart:not(.plp-in) .plp-bar i{transform:scaleY(0)}
.plp-bar-v{font-size:12px;font-weight:700;color:var(--plp-navy);margin-bottom:6px;white-space:nowrap}
.plp-bar-l{font-size:12px;color:var(--plp-muted);margin-top:8px;white-space:nowrap}

/* ==========================================================================
   6 · EKSTRA SEKSJONER
   ========================================================================== */
.plp-feat-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(28px,5vw,90px);align-items:center}
.plp-flip .plp-feat-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}
.plp-flip .plp-txt{order:2}
.plp-pts{list-style:none;margin:24px 0 0;padding:0;display:grid;gap:4px;counter-reset:plp}
.plp-pts li{counter-increment:plp;display:grid;grid-template-columns:36px 1fr;gap:14px;padding:14px 0;border-top:1px solid var(--plp-line)}
.plp-pts li::before{content:counter(plp,decimal-leading-zero);width:36px;height:36px;border-radius:50%;background:var(--plp-ice);color:var(--plp-navy);display:grid;place-items:center;font-size:12.5px;font-weight:700}
.plp-pts b{display:block;font-size:17px}
.plp-pts li span span{display:block;font-size:15.5px;color:var(--plp-text)}
.plp-panel{position:relative;border-radius:32px;background:linear-gradient(160deg,#EEF4FC,#D6E5F8);padding:clamp(20px,3.4vw,48px) clamp(20px,3.4vw,48px) clamp(34px,4vw,56px);overflow:hidden;min-width:0}
.plp-duo{position:relative;padding:12% 20% 0 0}
.plp-duo>.plp-phone{position:absolute;right:0;bottom:-28px;width:31%;z-index:2}
.plp-solo{display:flex;justify-content:center}
.plp-solo .plp-phone{width:min(60%,300px);margin-bottom:-60px}
/* før/etter */
.plp-ba{position:relative;--p:50%;user-select:none;touch-action:pan-y}
.plp-ba img{width:100%;pointer-events:none}
.plp-ba-after{position:absolute;inset:0;clip-path:inset(0 0 0 var(--p))}
.plp-ba-after img{height:100%;object-fit:cover;object-position:top}
.plp-ba-line{position:absolute;top:0;bottom:0;left:var(--p);width:2px;background:#fff;box-shadow:0 0 0 1px rgba(10,20,51,.15);transform:translateX(-1px)}
.plp-ba-knob{position:absolute;top:50%;left:var(--p);width:52px;height:52px;border-radius:50%;background:var(--plp-navy);color:#fff;display:grid;place-items:center;transform:translate(-50%,-50%);box-shadow:0 10px 30px rgba(10,20,51,.35)}
.plp-ba input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0}
.plp-ba-l,.plp-ba-r{position:absolute;bottom:14px;height:32px;padding:0 12px;border-radius:999px;background:rgba(10,20,51,.82);color:#fff;font-size:13px;font-weight:700;display:flex;align-items:center}
.plp-ba-l{left:14px}.plp-ba-r{right:14px;background:var(--plp-royal)}
/* designsystem (mørk) */
.plp-dark{background:var(--plp-navy-950);color:#fff;border-radius:40px;margin:0 clamp(8px,1.4vw,20px)}
.plp-sec.plp-dark{padding-top:clamp(72px,9vw,140px)}
.plp-sec.plp-dark + .plp-sec{padding-top:clamp(72px,9vw,140px)}
.plp-dark .plp-eyebrow{color:var(--plp-sky)}
.plp-dark .plp-p{color:var(--plp-mist);max-width:620px}
.plp-dgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:clamp(36px,5vw,60px)}
.plp-cell{border-radius:24px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);padding:clamp(20px,2.4vw,30px);min-width:0}
.plp-cell--wide{grid-column:span 2}
.plp-cell--full{grid-column:1/-1}
.plp-cell h3{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--plp-sky);margin-bottom:18px!important}
.plp-swatches{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px}
.plp-swatches div{border-radius:16px;overflow:hidden;background:#fff;color:#1F2521}
.plp-swatches i{display:block;height:92px;box-shadow:inset 0 -1px 0 rgba(0,0,0,.06)}
.plp-swatches b{display:block;padding:10px 10px 0;font-size:12.5px}
.plp-swatches div small{display:block;padding:0 10px 10px;font-size:11.5px;color:#5c665f;font-family:ui-monospace,Menlo,monospace}
.plp-font-h{font-size:clamp(30px,3vw,44px);line-height:1.05;margin-top:4px!important}
.plp-font-b{font-size:20px;margin-top:18px!important}
.plp-cell small{color:var(--plp-mist);font-size:13px}
.plp-prin{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:22px}
.plp-prin b{display:block;font-size:19px;letter-spacing:-.02em}
.plp-prin span{font-size:15px;color:var(--plp-mist)}
/* galleri + video */
.plp-gal{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:32px}
.plp-gal figure{border-radius:24px;overflow:hidden;background:var(--plp-ice)}
.plp-gal-big{grid-column:1/-1}
.plp-gal img{width:100%;height:100%;object-fit:cover}
.plp-gal figcaption{padding:12px 16px;font-size:14px;color:var(--plp-text)}
.plp-embed{margin-top:32px;border-radius:24px;overflow:hidden;aspect-ratio:16/9;background:#000}
.plp-embed iframe{width:100%;height:100%;border:0}

/* ==========================================================================
   7 · SITAT · 8 · TEKNOLOGI
   ========================================================================== */
.plp-quote{background:var(--plp-ice);border-radius:32px;padding:clamp(32px,6vw,90px)}
.plp-quote blockquote{margin:0;font-size:clamp(26px,3vw,46px);line-height:1.15;letter-spacing:-.03em;max-width:1100px}
.plp-quote figcaption{display:flex;align-items:center;gap:12px;margin-top:26px;font-size:15px}
.plp-quote small{display:block;color:var(--plp-muted);font-size:13px}
.plp-av{width:44px;height:44px;border-radius:50%;background:var(--plp-grad);color:#fff;display:grid;place-items:center;font-weight:700;flex-shrink:0}
.plp-tech{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:clamp(28px,4vw,48px)}
.plp-tech div{border-radius:20px;background:var(--plp-ice);padding:20px;min-width:0}
.plp-tech b{display:block;font-size:17px}
.plp-tech span{font-size:14px;color:var(--plp-text)}

/* ==========================================================================
   9 · NESTE PROSJEKT
   ========================================================================== */
.plp-next{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:center;border-radius:36px;overflow:hidden;background:var(--plp-navy-950);color:#fff!important;padding:clamp(28px,5vw,72px)}
.plp-next small{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--plp-sky)}
.plp-next h2{margin:14px 0 18px!important;font-size:clamp(40px,5.4vw,88px);line-height:.95;letter-spacing:-.05em;font-weight:700;color:#fff}
.plp-next p{color:var(--plp-mist);font-size:18px;max-width:440px}
.plp-next-img .plp-bw{transform:rotate(-2deg) translateY(10px);transition:transform .9s var(--plp-ease)}
.plp-next:hover .plp-next-img .plp-bw{transform:none}
.plp-arrow{display:inline-grid;place-items:center;width:64px;height:64px;border-radius:50%;background:#fff;color:var(--plp-navy);margin-top:28px;transition:transform .5s var(--plp-ease)}
.plp-next:hover .plp-arrow{transform:translateX(8px)}
.plp-grid--rel{margin-top:clamp(48px,6vw,80px)}
.plp-all{text-align:center;margin-top:48px!important}

/* ==========================================================================
   KORT (arkiv + relaterte)
   ========================================================================== */
.plp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(40px,5vw,72px) clamp(24px,3vw,44px)}
.plp-card{display:flex;flex-direction:column;gap:14px;color:var(--plp-ink)}
.plp-card[hidden]{display:none}
.plp-shot{position:relative;border-radius:24px;background:linear-gradient(150deg,#EEF4FC,#D6E5F8);padding:clamp(18px,3vw,36px) clamp(18px,3vw,36px) 0;overflow:hidden;aspect-ratio:16/11}
.plp-cover{position:absolute;inset:0}
.plp-cover img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--plp-ease)}
.plp-card:hover .plp-cover img{transform:scale(1.04)}
.plp-next-img .plp-cover{position:relative;border-radius:18px;overflow:hidden;aspect-ratio:16/10;transform:rotate(-2deg);transition:transform .9s var(--plp-ease)}
.plp-next:hover .plp-next-img .plp-cover{transform:none}
.plp-shot .plp-bw{border-radius:12px 12px 0 0;transition:transform .9s var(--plp-ease)}
.plp-card:hover .plp-shot .plp-bw{transform:translateY(-10px) scale(1.015)}
.plp-go{position:absolute;right:18px;top:18px;width:48px;height:48px;border-radius:50%;background:#fff;color:var(--plp-navy);display:grid;place-items:center;transform:scale(.6);opacity:0;transition:all .5s var(--plp-ease);box-shadow:0 10px 30px rgba(10,20,51,.18)}
.plp-card:hover .plp-go{transform:none;opacity:1}
.plp-client{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:14px;color:var(--plp-muted);font-weight:600}
.plp-client b{color:var(--plp-ink);font-size:15px}
.plp-client i{width:4px;height:4px;border-radius:50%;background:#B8C4DC}
.plp-card h3{font-size:clamp(22px,2vw,30px);line-height:1.12;letter-spacing:-.03em;font-weight:700;margin-top:4px!important}
.plp-card-body{display:flex;flex-direction:column;gap:12px}
.plp-tags{display:flex;gap:6px;flex-wrap:wrap}
.plp-tags span{display:inline-flex;align-items:center;height:28px;padding:0 11px;border-radius:999px;background:var(--plp-ice);font-size:12.5px;font-weight:700;color:var(--plp-navy)}
.plp-card--res .plp-shot{background:var(--plp-navy-950);display:flex;flex-direction:column;justify-content:space-between;padding:clamp(24px,3vw,40px);color:#fff}
.plp-big{font-size:clamp(56px,7vw,110px);font-weight:700;letter-spacing:-.06em;line-height:.9}
.plp-card--res .plp-shot p{font-size:18px;color:var(--plp-mist);max-width:360px;margin-top:10px}
.plp-card--res mark.plp-ph{color:var(--plp-sky);background:rgba(125,184,240,.14)}
.plp-ring{position:absolute;right:-80px;top:-80px;width:320px;height:320px;border-radius:50%;border:1px solid rgba(125,184,240,.25)}
.plp-kind{font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--plp-sky)}
/* utvalgt (stort kort) */
.plp-card--big{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.9fr);gap:clamp(28px,4vw,64px);align-items:center;margin:36px 0 clamp(64px,8vw,110px)}
.plp-card--big h3{font-size:clamp(30px,3.4vw,54px);line-height:1.02;letter-spacing:-.04em}
.plp-card--big .plp-p{margin-top:0!important}
.plp-new{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--plp-royal)}
.plp-new::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--plp-azure);box-shadow:0 0 0 4px rgba(27,107,181,.18)}
.plp-hook{display:flex;gap:18px;padding:18px 0;border-top:1px solid var(--plp-line);border-bottom:1px solid var(--plp-line)}
.plp-hook div{flex:1;min-width:0}
.plp-hook b{display:block;font-size:28px;letter-spacing:-.04em;line-height:1.1;color:var(--plp-navy)}
.plp-hook span{font-size:13px;color:var(--plp-muted)}
.plp-card--big .plp-btn{align-self:flex-start;margin-top:8px}

/* ==========================================================================
   ARKIV
   ========================================================================== */
.plp-hero--archive{padding-bottom:30px}
.plp-arch-top{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:40px;align-items:end}
.plp-arch-top .plp-lead{margin-bottom:10px}
.plp-fbar{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.9);backdrop-filter:blur(12px);padding:14px 0;border-bottom:1px solid transparent;transition:border-color .3s}
.plp-fbar.plp-stuck{border-bottom-color:var(--plp-line)}
.plp-frow{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.plp-chips{display:flex;gap:8px;flex-wrap:wrap}
.plp-chips button{height:44px;padding:0 16px;border-radius:999px;background:var(--plp-ice);font-size:15px;font-weight:600;color:var(--plp-navy-900);transition:all .3s;display:inline-flex;align-items:center;gap:6px}
.plp-chips sup{font-size:11px;font-weight:700;color:var(--plp-muted);top:0}
.plp-chips button:hover{background:#DDE8F8}
.plp-chips button[aria-pressed="true"]{background:var(--plp-navy);color:#fff}
.plp-chips button[aria-pressed="true"] sup{color:var(--plp-sky)}
.plp-sel{position:relative;margin-left:auto}
.plp-sel select{appearance:none;-webkit-appearance:none;height:44px;border-radius:999px;border:1.5px solid var(--plp-line);background:#fff;padding:0 42px 0 18px;font:600 15px var(--plp-sans);color:var(--plp-navy-900);cursor:pointer}
.plp-sel::after{content:"";position:absolute;right:18px;top:50%;width:8px;height:8px;border-right:2px solid var(--plp-navy);border-bottom:2px solid var(--plp-navy);transform:translateY(-70%) rotate(45deg);pointer-events:none}
.plp-count{font-size:14px;color:var(--plp-muted)}
.plp-list{padding-top:8px;padding-bottom:clamp(80px,10vw,140px)}
.plp-empty{grid-column:1/-1;display:none;padding:40px;border-radius:24px;background:var(--plp-ice);text-align:center;color:var(--plp-text)}
.plp-empty a{color:var(--plp-royal);font-weight:700}

/* ==========================================================================
   10 · CTA
   ========================================================================== */
.plp-cta{position:relative;overflow:hidden;background:var(--plp-navy-950);color:#fff;padding:clamp(88px,11vw,170px) 0;text-align:center}
.plp-cta .plp-eyebrow{color:var(--plp-sky)}
.plp-cta .plp-eyebrow::before{display:none}
.plp-cta h2{margin:18px auto 20px!important;font-size:clamp(40px,6vw,96px);line-height:.95;letter-spacing:-.05em;font-weight:700;max-width:1000px;color:#fff}
.plp-cta p{color:var(--plp-mist);font-size:clamp(17px,1.4vw,20px);max-width:620px;margin:0 auto 34px!important}
.plp-glow{position:absolute;left:50%;top:40%;width:700px;height:700px;border-radius:50%;background:radial-gradient(circle,rgba(28,85,166,.55),transparent 65%);transform:translate(-50%,-50%);pointer-events:none}
.plp-cta .plp-wrap{position:relative}

/* ==========================================================================
   RESPONSIVT
   ========================================================================== */
@media (max-width:1100px){
	.plp-tech{grid-template-columns:repeat(2,minmax(0,1fr))}
	.plp-dgrid{grid-template-columns:minmax(0,1fr)}
	.plp-cell--wide{grid-column:auto}
}
@media (max-width:900px){
	.plp-intro,.plp-story-grid,.plp-feat-grid,.plp-flip .plp-feat-grid,.plp-next,.plp-card--big,.plp-arch-top{grid-template-columns:minmax(0,1fr)}
	.plp-flip .plp-txt{order:0}
	.plp-side{position:static}
	.plp-grid{grid-template-columns:minmax(0,1fr)}
	.plp-nums,.plp-nums--3{grid-template-columns:repeat(2,minmax(0,1fr))}
	.plp-nums>div:nth-child(3){padding-left:0;border-left:0}
	.plp-sel{margin-left:0}
	.plp-chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:0 calc(var(--plp-pad) * -1);padding:0 var(--plp-pad);width:calc(100% + var(--plp-pad) * 2)}
	.plp-chips::-webkit-scrollbar{display:none}
	.plp-chips button{flex-shrink:0}
}
@media (max-width:640px){
	.plp-meta{grid-template-columns:minmax(0,1fr)}
	.plp-meta div:nth-child(odd){padding-right:0}
	.plp-nums>div,.plp-nums>div + div{padding:18px 12px 18px 0}
	.plp-nums>div:nth-child(even){padding-left:12px}
	.plp-nums--1>div{padding-left:0!important}
	.plp-nums b{font-size:40px}
	.plp-tech{grid-template-columns:minmax(0,1fr)}
	.plp-duo{padding:18% 22% 0 0}
	.plp-duo>.plp-phone{width:36%}
	.plp-dark,.plp-next{border-radius:28px;margin:0}
	.plp-stage,.plp-full{border-radius:24px}
	.plp-gal{grid-template-columns:minmax(0,1fr)}
	.plp-hook b{font-size:22px}
	.plp-card--res .plp-shot{aspect-ratio:auto;min-height:280px;gap:24px}
	.plp-nav{display:none}
	.plp-bars{height:200px}
	.plp-bar-v{font-size:10px}
}
@media (prefers-reduced-motion:reduce){
	.plp-js .plp-rv{opacity:1;transform:none;transition:none}
	.plp-rail{scroll-behavior:auto}
}

/* ==========================================================================
   ELEMENTOR – arkivsiden «Prosjekter» og malen «Prosjekt – enkelt»
   Seksjonene er Elementor-containere med klassen «plp». Avstander, bredde og
   rekkefølge styres i Elementor; her ligger bare utseendet på byggeklossene.
   ========================================================================== */
.e-con.plp{background-color:transparent;overflow-x:visible;--plp-pad:64px}
@media (max-width:1024px){.e-con.plp{--plp-pad:32px}}
@media (max-width:767px){.e-con.plp{--plp-pad:20px}}
.plp .elementor-shortcode:empty{display:none}

/* ---- filterlinjen (container «plp-fbar») ---- */
.e-con.plp-fbar{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.92)!important;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid transparent;transition:border-color .3s}
.e-con.plp-fbar.plp-stuck{border-bottom-color:var(--plp-line)}
.plp-filter .e-filter{display:flex;flex-wrap:wrap;gap:8px}
.plp-filter .e-filter-item{height:44px!important;padding:0 16px!important;border-radius:999px!important;border:0!important;background:var(--plp-ice)!important;color:var(--plp-navy-900)!important;font:600 15px/1 var(--plp-sans)!important;letter-spacing:0!important;text-transform:none!important;cursor:pointer;transition:background .3s,color .3s;white-space:nowrap}
.plp-filter .e-filter-item:hover{background:#DDE8F8!important}
.plp-filter .e-filter-item[aria-pressed="true"]{background:var(--plp-navy)!important;color:#fff!important}
.plp-filter--ind{margin-left:auto}
.plp-filter--ind .e-filter-item{background:#fff!important;box-shadow:inset 0 0 0 1.5px var(--plp-line);height:40px!important;font-size:14px!important}
.plp-filter--ind .e-filter-item[aria-pressed="true"]{box-shadow:none}
@media (max-width:767px){
	.plp-filter,.plp-filter--ind{width:100%;margin-left:0}
	.plp-filter .e-filter{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:0 -20px;padding:0 20px}
	.plp-filter .e-filter::-webkit-scrollbar{display:none}
}

/* ---- rutenettet (Loop Grid «plp-loop») ---- */
.plp-loop{--grid-row-gap:clamp(40px,5vw,72px);--grid-column-gap:clamp(24px,3vw,44px);--grid-row-gap-tablet:48px;--grid-row-gap-mobile:40px}
.plp-loop .elementor-loop-container{row-gap:clamp(40px,5vw,72px);column-gap:clamp(24px,3vw,44px)}
.plp-loop .e-loop-nothing-found-message{grid-column:1/-1;padding:40px;border-radius:24px;background:var(--plp-ice);text-align:center;color:var(--plp-text);font-size:17px}
.plp-loop .elementor-pagination{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:8px;margin-top:clamp(48px,6vw,80px)}
.plp-loop .elementor-pagination .page-numbers{display:inline-grid;place-items:center;min-width:48px;height:48px;padding:0 16px;border-radius:999px;background:var(--plp-ice);color:var(--plp-navy-900);font-weight:600;font-size:15px;text-decoration:none;transition:background .3s,color .3s}
.plp-loop .elementor-pagination a.page-numbers:hover{background:#DDE8F8}
.plp-loop .elementor-pagination .page-numbers.current{background:var(--plp-navy);color:#fff}
.plp-loop .elementor-pagination .page-numbers.prev,.plp-loop .elementor-pagination .page-numbers.next{background:#fff;box-shadow:inset 0 0 0 1.5px var(--plp-line)}
.plp-loop .elementor-pagination .page-numbers.dots{background:none}

/* ---- kortene (Loop Item «Prosjektkort» og «Prosjektkort – stort») ---- */
a.plp-card.e-con{color:var(--plp-ink);text-decoration:none}
.plp-card.e-con{background:none}
.plp-card-title{font-family:var(--plp-sans);font-size:clamp(22px,2vw,30px);line-height:1.12;letter-spacing:-.03em;font-weight:700;margin:4px 0 0;color:var(--plp-ink)}
.plp-card--big .plp-card-title{font-size:clamp(30px,3.4vw,54px);line-height:1.02;letter-spacing:-.04em}
.plp-card--big.e-con{margin:0 0 clamp(8px,2vw,24px)}
.plp-card .plp-p{margin-top:0!important}
.plp-card .plp-btn{align-self:flex-start;margin-top:6px}
.plp-shot--res{background:var(--plp-navy-950)!important;display:flex;flex-direction:column;justify-content:space-between;padding:clamp(24px,3vw,40px)!important;color:#fff}
.plp-shot--res p{font-size:18px;color:var(--plp-mist);max-width:360px;margin-top:10px}
.plp-card:hover .plp-shot .plp-bw{transform:translateY(-10px) scale(1.015)}
.plp-card:hover .plp-go{transform:none;opacity:1}
.plp-card:focus-visible{outline:2px solid var(--plp-royal);outline-offset:6px;border-radius:24px}

/* ---- enkeltprosjekt ---- */
.plp-el-hero .plp-crumbs{margin-bottom:26px}
.plp-el-hero .plp-h1{margin-top:14px!important}
.e-con.plp-side{position:sticky;top:110px;align-self:start}
.plp-screens--el .plp-head-r{justify-content:flex-end;margin-top:-76px;position:relative;z-index:1;pointer-events:none}
.plp-screens--el .plp-head-r > *{pointer-events:auto}
.plp-results-el .plp-nums{margin-top:0}
.plp-next-el .plp-grid--rel{margin-top:clamp(40px,5vw,64px)}
.plp-blocks-el .plp-sec:first-child{padding-top:0}
@media (max-width:900px){
	.plp-screens--el .plp-head-r{margin-top:0;justify-content:flex-start}
	.e-con.plp-side{position:static}
}

/* ---- overskrifter: vinner over temaets globale H1–H6 (Elementor Site Settings) ---- */
.plp :is(h1,h2,h3,h4).plp-h1,.plp .plp-h1{font-family:var(--plp-sans);font-size:clamp(42px,6.2vw,104px);line-height:.95;letter-spacing:-.05em;font-weight:700;color:inherit;text-transform:none}
.plp :is(h2,h3).plp-h2,.plp .plp-h2{font-family:var(--plp-sans);font-size:clamp(34px,4vw,62px);line-height:1;letter-spacing:-.045em;font-weight:700;color:inherit;text-transform:none}
.plp .plp-q h3{font-family:var(--plp-sans);font-size:clamp(26px,2.4vw,36px);line-height:1.1;letter-spacing:-.03em;font-weight:700;color:inherit}
.plp .plp-card-title,.plp .plp-card h3{font-family:var(--plp-sans);font-size:clamp(22px,2vw,30px);line-height:1.12;letter-spacing:-.03em;font-weight:700;color:var(--plp-ink)}
.plp .plp-card--big .plp-card-title{font-size:clamp(30px,3.4vw,54px);line-height:1.02;letter-spacing:-.04em}
.plp .plp-next h2{font-family:var(--plp-sans);font-size:clamp(40px,5.4vw,88px);line-height:.95;letter-spacing:-.05em;font-weight:700;color:#fff}
.plp .plp-cell h3{font-family:var(--plp-sans);font-size:13px;line-height:1.4;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--plp-sky)}
.plp .plp-dark :is(h2,h3):not(.plp-cell h3){color:#fff}
.plp .plp-cta h2{color:#fff}

/* ---- filterlinjen havner under toppmenyen når menyen er synlig ---- */
body:has(.pl-header:not(.is-hidden)) .e-con.plp-fbar{top:84px}
@media (max-width:1024px){body:has(.pl-header:not(.is-hidden)) .e-con.plp-fbar{top:70px}}
.e-con.plp-fbar{transition:border-color .3s,top .35s var(--plp-ease)}

/* ==========================================================================
   GALLERI – [plp_galleri]: MacBook, iPhone og iPad i ren CSS (2.1)
   Rammene måles i cqw (1 % av rammens bredde), så de ser like ut i alle størrelser.
   Skjermbilder som er høyere enn skjermen, ruller ned og opp av seg selv.
   ========================================================================== */
.plp-gx{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(48px,5vw,80px) clamp(20px,2.4vw,36px)}
.plp-gi{min-width:0;display:flex;flex-direction:column;margin:0}
.plp-gi--full{grid-column:1/-1}
.plp-gi-head{display:grid;gap:8px;margin-bottom:18px;max-width:720px}
.plp-gkind{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--plp-royal)}
.plp-gkind i{width:8px;height:8px;border-radius:50%;background:var(--plp-azure);box-shadow:0 0 0 4px rgba(27,107,181,.16)}
.plp .plp-gi h3{margin:0;font-family:var(--plp-sans);font-size:clamp(22px,2vw,30px);letter-spacing:-.03em;line-height:1.12;font-weight:700;color:var(--plp-ink);text-transform:none}
.plp-gi-head p{margin:0;color:var(--plp-text);font-size:16.5px;line-height:1.55}
.plp-gpanel{position:relative;flex:1;border-radius:clamp(20px,2.2vw,32px);background:linear-gradient(160deg,#EEF4FC 0%,#D8E6F9 70%,#C7DAF5 100%);padding:clamp(24px,4vw,64px) clamp(16px,4.5vw,72px) 0;overflow:hidden;display:flex;align-items:flex-end;justify-content:center}
.plp-gpanel--dev,.plp-gpanel--img{padding-bottom:clamp(28px,4vw,56px);align-items:center}
.plp-gshot{width:100%;border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 24px 60px -24px rgba(10,20,51,.35)}
.plp-gshot img{width:100%}
.plp-chip{position:absolute;left:clamp(16px,2vw,28px);top:clamp(16px,2vw,28px);z-index:2;display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 14px;border-radius:999px;background:var(--plp-navy);color:#fff;font-weight:600;font-size:14px;box-shadow:0 10px 30px -8px rgba(10,20,51,.45)}
.plp-chip b{color:var(--plp-sky)}

.plp-mac,.plp-iphone,.plp-ipad{container-type:inline-size;position:relative;min-width:0}
/* MacBook */
.plp-mac{width:100%;max-width:1000px;margin:0 auto}
.plp-mac-lid{position:relative;padding:2.1cqw 2.1cqw 2.5cqw;border-radius:3cqw 3cqw .9cqw .9cqw;background:#0c0c0e;box-shadow:inset 0 0 0 .14cqw #2b2c30,0 0 0 .22cqw #c9ccd2,0 0 0 .36cqw #a9adb4,0 3cqw 6cqw -2.6cqw rgba(10,20,51,.55)}
.plp-mac-lid::before{content:"";position:absolute;z-index:3;top:1.9cqw;left:50%;width:11cqw;height:2.2cqw;transform:translateX(-50%);border-radius:0 0 1.1cqw 1.1cqw;background:#0c0c0e}
.plp-mac-lid::after{content:"";position:absolute;z-index:4;top:2.55cqw;left:50%;width:.8cqw;height:.8cqw;transform:translateX(-50%);border-radius:50%;background:radial-gradient(circle at 35% 35%,#3c4a66,#101218 70%)}
.plp-mac .plp-view{aspect-ratio:16/10;border-radius:.5cqw}
.plp-mac-base{position:relative;width:116%;margin-left:-8%;height:2.3cqw;border-radius:.3cqw .3cqw 3.6cqw 3.6cqw/.3cqw .3cqw 2cqw 2cqw;background:linear-gradient(#f3f4f6 0,#dfe1e5 22%,#c7cad0 62%,#9ea2aa 100%);box-shadow:inset 0 .12cqw 0 #fff,inset 0 -.2cqw .3cqw rgba(0,0,0,.18)}
.plp-mac-base::before{content:"";position:absolute;top:0;left:50%;width:14%;height:45%;transform:translateX(-50%);border-radius:0 0 1.2cqw 1.2cqw;background:linear-gradient(#b4b8bf,#d3d6db)}
.plp-mac-base::after{content:"";position:absolute;left:4%;right:4%;bottom:-1.4cqw;height:1.6cqw;border-radius:50%;background:rgba(10,20,51,.35);filter:blur(1.1cqw);z-index:-1}
/* iPhone */
.plp-iphone{width:100%}
.plp-iphone-body{position:relative;padding:3.4cqw;border-radius:16cqw;background:#0b0b0c;box-shadow:inset 0 0 0 .7cqw #1d1e21,0 0 0 1cqw #5d5f64,0 0 0 1.6cqw #a6a8ad,0 0 0 1.9cqw #6e7075,0 9cqw 16cqw -5cqw rgba(10,20,51,.55)}
.plp-iphone .plp-screen{border-radius:12.6cqw}
.plp-iphone .plp-view{aspect-ratio:9/18.2}
.plp-status{position:relative;display:flex;justify-content:space-between;align-items:center;height:11cqw;padding:0 8cqw 0 11cqw;font:600 5cqw/1 -apple-system,"SF Pro Text",Inter,system-ui,sans-serif;color:#111;letter-spacing:-.01em}
.plp-status--light{color:#fff}
.plp-status svg{height:3.6cqw;width:auto;display:block;fill:currentColor}
.plp-status span:last-child{display:flex;gap:1.4cqw;align-items:center}
.plp-island{position:absolute;z-index:3;top:5.8cqw;left:50%;width:30cqw;height:8.8cqw;transform:translateX(-50%);border-radius:99px;background:#000}
.plp-island::after{content:"";position:absolute;right:3cqw;top:50%;width:3cqw;height:3cqw;transform:translateY(-50%);border-radius:50%;background:radial-gradient(circle at 35% 35%,#2d3a55,#07080b 70%)}
.plp-sbtn{position:absolute;width:1.6cqw;border-radius:1cqw;background:linear-gradient(90deg,#6e7075,#b3b5ba,#6e7075)}
.plp-sbtn.l1{left:-3.3cqw;top:17%;height:6%}.plp-sbtn.l2{left:-3.3cqw;top:26%;height:10%}.plp-sbtn.l3{left:-3.3cqw;top:38.5%;height:10%}.plp-sbtn.r1{right:-3.3cqw;top:29%;height:15%}
/* iPad */
.plp-ipad{width:100%;max-width:560px;margin:0 auto}
.plp-ipad-body{position:relative;padding:4.2cqw;border-radius:7cqw;background:#0c0c0e;box-shadow:inset 0 0 0 .5cqw #1d1e21,0 0 0 .7cqw #c9ccd2,0 0 0 1.1cqw #9ea2aa,0 6cqw 12cqw -4cqw rgba(10,20,51,.5)}
.plp-ipad-body::before{content:"";position:absolute;top:1.6cqw;left:50%;width:1.2cqw;height:1.2cqw;transform:translateX(-50%);border-radius:50%;background:radial-gradient(circle at 35% 35%,#34425f,#0b0c10 70%)}
.plp-ipad .plp-screen{border-radius:2.6cqw}
.plp-ipad .plp-view{aspect-ratio:820/1180}
/* skjerm + rulling */
.plp-screen{position:relative;overflow:hidden;background:#fff;isolation:isolate}
.plp-view{position:relative;overflow:hidden;background:#fff}
.plp .plp-view img{display:block;width:100%;height:auto;max-width:none;will-change:transform;animation:plpScroll var(--plp-dur,18s) cubic-bezier(.45,.05,.55,.95) var(--plp-delay,0s) infinite}
.plp-view--short{display:flex;align-items:center}
.plp .plp-view--short img{animation:none}
.plp-view::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,rgba(255,255,255,.07) 0 30%,transparent 30%);pointer-events:none}
@keyframes plpScroll{0%,8%{transform:translateY(0)}46%,54%{transform:translateY(calc(var(--plp-dist,0px) * -1))}92%,100%{transform:translateY(0)}}
.plp-gpanel:hover .plp-view img{animation-play-state:paused}
.plp-js .plp-rv:not(.plp-in) .plp-view img{animation-play-state:paused}
/* laptop + mobil */
.plp-show{display:block;padding:clamp(40px,6vw,96px) clamp(24px,7vw,120px) clamp(48px,6.5vw,104px)}
.plp-show .plp-iphone{position:absolute;z-index:2;right:clamp(10px,4.5vw,80px);bottom:clamp(20px,3.2vw,56px);width:clamp(96px,16%,220px)}
.plp-live{position:absolute;left:clamp(16px,2vw,28px);top:clamp(16px,2vw,28px);display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 13px;border-radius:999px;background:rgba(255,255,255,.85);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:13px;font-weight:700;color:var(--plp-navy);z-index:3}
.plp-live i{width:8px;height:8px;border-radius:50%;background:#2BB673;animation:plpPulse 1.8s infinite}
@keyframes plpPulse{0%{box-shadow:0 0 0 0 rgba(43,182,115,.5)}70%{box-shadow:0 0 0 8px rgba(43,182,115,0)}100%{box-shadow:0 0 0 0 rgba(43,182,115,0)}}
/* rad med 1–3 enheter */
.plp-row{display:flex;justify-content:center;align-items:flex-end;gap:clamp(20px,4vw,64px);width:100%;padding-bottom:clamp(28px,4vw,56px)}
.plp-row>figure{margin:0;flex:0 1 250px;min-width:0;display:flex;flex-direction:column;align-items:center;gap:22px}
.plp-row--desktop>figure{flex:1 1 0}
.plp-row--desktop[data-n="1"]>figure{flex:0 1 1000px}
.plp-row--tablet>figure{flex:0 1 420px}
.plp-row--tablet[data-n="1"]>figure{flex:0 1 560px}
.plp-gpanel--dev .plp-row{padding-bottom:0}
.plp-row[data-n="3"]:not(.plp-row--desktop)>figure:nth-child(2){transform:translateY(-7%)}
.plp-row figcaption{font-size:14px;font-weight:600;color:var(--plp-navy);display:flex;align-items:center;gap:8px}
.plp-row figcaption::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--plp-azure)}
@media (max-width:767px){
	.plp-gx{grid-template-columns:minmax(0,1fr)}
	.plp-show{padding:64px 18px 18%}
	.plp-show .plp-mac{width:84%;margin:0 0 0 5%}
	.plp-show--solo .plp-mac{width:100%;margin:0}
	.plp-show .plp-iphone{right:5%;bottom:14px;width:27%}
	.plp-row{justify-content:flex-start;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 18vw 28px;margin:0 -16px;gap:26px;scrollbar-width:none}
	.plp-row::-webkit-scrollbar{display:none}
	.plp-row>figure{flex:0 0 58vw;scroll-snap-align:center}
	.plp-row--desktop>figure,.plp-row--tablet>figure{flex:0 0 78vw}
	.plp-row[data-n="3"]>figure:nth-child(2){transform:none!important}
	.plp-row[data-n="1"]{justify-content:center;padding:6px 0 28px;margin:0;overflow:visible}
	.plp-row[data-n="1"]>figure{flex:0 1 100%}
	.plp-row--mobile[data-n="1"]>figure,.plp-row:not(.plp-row--desktop):not(.plp-row--tablet)[data-n="1"]>figure{flex:0 1 62%}
	.plp-chip{position:static;align-self:flex-start;margin-bottom:14px}
	.plp-gpanel--img{flex-direction:column}
}
@media (prefers-reduced-motion:reduce){.plp .plp-view img{animation:none!important}}

/* ---- Flere seksjoner: liggende bilde eller 1–3 stående ---- */
.plp-gpanel--ex{padding-bottom:clamp(24px,4vw,64px);align-items:center}
.plp-exrow{display:grid;gap:clamp(16px,2.4vw,36px);width:100%;justify-content:center}
.plp-exrow--h{grid-template-columns:minmax(0,1fr);max-width:1100px}
.plp-exrow--v{grid-template-columns:repeat(var(--plp-n,2),minmax(0,340px))}
.plp-exrow--v[data-n="1"]{--plp-n:1}.plp-exrow--v[data-n="2"]{--plp-n:2}.plp-exrow--v[data-n="3"]{--plp-n:3}
.plp-exbox{border-radius:clamp(12px,1.4vw,20px);overflow:hidden;background:#fff;box-shadow:0 24px 60px -24px rgba(10,20,51,.35),0 0 0 1px rgba(10,20,51,.05);align-self:start}
.plp-exbox>img{width:100%;height:auto;display:block}
.plp-exbox .plp-view{aspect-ratio:var(--plp-r,.75)}
@media (max-width:767px){
	.plp-exrow--v{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:68vw;justify-content:start;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin:0 -16px;padding:0 16px 4px}
	.plp-exrow--v::-webkit-scrollbar{display:none}
	.plp-exrow--v>.plp-exbox{scroll-snap-align:center}
	.plp-exrow--v[data-n="1"]{grid-auto-columns:80%;justify-content:center;overflow:visible;margin:0;padding:0}
}

/* ---- Leveranse: tjenester som lenker til filtrert arkiv ---- */
.plp-meta .plp-meta-full{grid-column:1/-1;padding-right:0!important}
.plp-svc{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.plp-svc a{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 12px;border-radius:999px;background:var(--plp-ice);font-size:13px;font-weight:700;color:var(--plp-navy)!important;text-decoration:none;transition:background .3s,color .3s}
.plp-svc a svg{transition:transform .4s var(--plp-ease)}
.plp-svc a:hover{background:var(--plp-navy);color:#fff!important}
.plp-svc a:hover svg{transform:translate(2px,-2px)}

/* ---- historien: nummer til venstre, nøkkeltall under resultatet (2.1) ---- */
.plp-story-list .plp-q{display:grid;grid-template-columns:64px minmax(0,1fr);gap:18px}
.plp-story-list .plp-n{font-family:var(--plp-serif);font-style:italic;font-weight:400;font-size:42px;line-height:1;letter-spacing:0;color:var(--plp-sky)}
.plp-story-list .plp-q h3{margin-top:0!important}
.plp-snums{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:22px}
.plp-snums--1{grid-template-columns:minmax(0,1fr)}.plp-snums--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.plp-snums div{border-radius:20px;background:var(--plp-ice);padding:20px 20px 18px;min-width:0}
.plp-snums b{display:block;font-size:clamp(34px,3.4vw,52px);line-height:1;letter-spacing:-.05em;color:var(--plp-navy);font-weight:700;overflow-wrap:anywhere}
.plp-snums span{display:block;margin-top:8px;font-size:14px;line-height:1.4;color:var(--plp-text)}
.plp-snums small{display:block;margin-top:6px;font-size:12px;color:var(--plp-muted)}
@media (max-width:767px){
	.plp-story-list .plp-q{grid-template-columns:minmax(0,1fr);gap:6px}
	.plp-story-list .plp-n{font-size:32px}
	.plp-snums{grid-template-columns:minmax(0,1fr)}
}

/* ==========================================================================
   2.4 · PROSJEKTKORT: bildet fyller hele flaten + kundelogo
   Bildet dekker hele den lyse flaten med samme runde hjørner (24px).
   Logoen sitter på en hvit pille nederst til venstre; mangler logo, vises kundenavnet som tekst.
   ========================================================================== */
.plp-shot--img{padding:0!important;background:var(--plp-ice);isolation:isolate}
.plp-shot--img .plp-cover{position:absolute;inset:0;border-radius:inherit;overflow:hidden}
.plp-shot--img .plp-cover img{display:block;width:100%;height:100%;object-fit:cover}
.plp-card--big .plp-shot--img{aspect-ratio:16/11}
.plp-logo{position:absolute;left:clamp(14px,1.6vw,22px);bottom:clamp(14px,1.6vw,22px);z-index:2;display:inline-flex;align-items:center;height:clamp(48px,3.8vw,56px);max-width:calc(100% - 40px);padding:0 clamp(8px,.9vw,12px);border-radius:999px;background:#fff;box-shadow:0 10px 30px -10px rgba(10,20,51,.35),0 0 0 1px rgba(10,20,51,.04)}
/* Logofilene er 480×160 med luft rundt, så høyden styrer størrelsen. */
.plp-logo img{display:block;width:auto!important;height:clamp(36px,3vw,44px)!important;max-width:none}
.plp-card--big .plp-logo{height:clamp(52px,4.4vw,64px)}
.plp-card--big .plp-logo img{height:clamp(42px,3.6vw,52px)!important}
.plp-logo--dark{background:var(--plp-navy-950)}
.plp-logo--text{padding:0 clamp(16px,1.4vw,20px);font:700 clamp(14px,1.1vw,16px)/1 var(--plp-sans);letter-spacing:-.01em;color:var(--plp-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.plp-card .plp-excerpt{font-size:16.5px;line-height:1.55;color:var(--plp-text);margin:0!important;max-width:560px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
@media (max-width:767px){.plp-card .plp-excerpt{font-size:16px}}


/* ==========================================================================
   2.5 · LIVE-RAMMER: kundens nettside live i MacBook, iPhone og iPad
   Siden lastes i en iframe som er 1440 / 390 / 820 px bred og skaleres ned til rammen.
   «Prøv selv» gjør rammen klikkbar (til da ruller vanlig siderulling forbi).
   ========================================================================== */
.plp-view--live{position:relative;background:#fff}
.plp-lv{position:absolute;inset:0;overflow:hidden;background:#fff}
.plp-lv::before{content:attr(data-host);position:absolute;inset:0;display:grid;place-items:center;padding:0 8%;text-align:center;font:600 13px/1.3 var(--plp-sans);color:#9AA6C2}
.plp-lv iframe{position:absolute;top:0;left:0;border:0;transform-origin:0 0;background:#fff;opacity:0;transition:opacity .6s;max-width:none}
.plp-lv.plp-ready iframe{opacity:1}
.plp .plp-lv iframe,.plp-lv iframe{max-width:none!important;max-height:none!important;min-width:0!important}
.plp-view--live::after{z-index:2}
.plp-act{position:absolute;inset:0;z-index:3;display:flex;align-items:flex-end;justify-content:center;padding:0 0 7%;margin:0;border:0;width:100%;background:linear-gradient(180deg,transparent 55%,rgba(10,20,51,.28));opacity:0;transition:opacity .35s;cursor:pointer;font:inherit}
.plp-act span{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 15px;border-radius:999px;background:#fff;color:var(--plp-navy);font-weight:700;font-size:13px;box-shadow:0 10px 30px -8px rgba(10,20,51,.45);white-space:nowrap}
.plp-act span i{width:8px;height:8px;border-radius:50%;background:#2BB673}
.plp-gpanel:hover .plp-act,.plp-act:focus-visible{opacity:1}
.plp-view--live.plp-on .plp-act,.plp-view--live.plp-on::after{display:none}
.plp-iphone .plp-act span{height:30px;font-size:12px;padding:0 11px}
@media (hover:none){.plp-act{opacity:1;background:none}.plp-act span{height:30px;font-size:12px;padding:0 12px}}
.plp-row--mix>figure.plp-f--phone{flex:0 1 240px}
.plp-row--mix>figure.plp-f--tablet{flex:0 1 380px}
.plp-row--mix>figure{transform:none!important}
@media (max-width:767px){
	.plp-show--live .plp-iphone{display:none}
	.plp-show--live{padding:56px 14px 32px}
	.plp-show--live .plp-mac{width:100%;margin:0}
	.plp-row--mix>figure.plp-f--phone{flex:0 0 62vw}
	.plp-row--mix>figure.plp-f--tablet{flex:0 0 78vw}
}

/* ==========================================================================
   2.5 · RESULTATER: stort liggende skjermbilde + forklaring + tre tall
   ========================================================================== */
.plp-res{display:grid;gap:clamp(56px,6vw,96px)}
.plp-res-item{display:grid;gap:clamp(18px,2vw,28px)}
.plp-res-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap}
.plp .plp-res-head h3{margin:8px 0 0;font-family:var(--plp-sans);font-size:clamp(28px,3vw,46px);line-height:1.04;letter-spacing:-.04em;font-weight:700;color:var(--plp-ink);max-width:22ch;text-transform:none}
.plp-res-head h3 b{color:var(--plp-royal)}
.plp-res-period{font-size:14px;color:var(--plp-muted);font-weight:600}
.plp-res-shot{border-radius:clamp(18px,2vw,28px);background:linear-gradient(160deg,#EEF4FC 0%,#D8E6F9 70%,#C7DAF5 100%);padding:clamp(14px,3vw,48px)}
.plp-res-card{border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 30px 80px -24px rgba(10,20,51,.38),0 0 0 1px rgba(10,20,51,.06)}
.plp-res-card img{display:block;width:100%;height:auto}
.plp-res-bar{display:flex;align-items:center;gap:10px;height:42px;padding:0 16px;border-bottom:1px solid #E3EAF6;font-size:13px;font-weight:700;color:var(--plp-navy)}
.plp-res-bar i{width:10px;height:10px;border-radius:50%}
.plp-res-bar span{margin-left:auto;font-weight:600;color:var(--plp-muted)}
.plp-res-body{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(24px,5vw,80px);align-items:start}
.plp-res-kpi{display:grid;grid-template-columns:repeat(var(--n,3),minmax(0,1fr));gap:10px}
.plp-res-kpi--1{--n:1}.plp-res-kpi--2{--n:2}
.plp-res-kpi div{border-radius:18px;background:var(--plp-ice);padding:16px 16px 14px;min-width:0}
.plp-res-kpi small{display:block;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--plp-muted)}
.plp-res-kpi b{display:block;margin-top:6px;font-size:clamp(26px,2.4vw,36px);letter-spacing:-.04em;line-height:1;color:var(--plp-navy);overflow-wrap:anywhere}
.plp-res-kpi span{display:block;margin-top:6px;font-size:13px;color:var(--plp-text)}
@media (max-width:900px){.plp-res-body{grid-template-columns:minmax(0,1fr)}}
@media (max-width:520px){.plp-res-kpi{grid-template-columns:minmax(0,1fr)}}

/* ---- Bransje som lenke + merkelapp over rutenettet ---- */
.plp-meta a.plp-ind{color:var(--plp-navy);text-decoration:underline;text-decoration-color:rgba(28,85,166,.35);text-underline-offset:3px;transition:text-decoration-color .3s}
.plp-meta a.plp-ind:hover{text-decoration-color:currentColor}
.plp-indchip{display:inline-flex;align-items:center;gap:8px;margin:0 0 20px;height:40px;padding:0 8px 0 16px;border-radius:999px;background:var(--plp-ice,#EEF4FC);font:600 15px/1 var(--plp-sans,inherit);color:#3A4870}
.plp-indchip b{color:#0A1433}
.plp-indchip a{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#fff;color:#0A1433;text-decoration:none;font-size:12px}

/* ==========================================================================
   2.5.3 · KUNDELOGO PÅ KORTENE – alltid originalfarger.
   --frame: ramme som følger logoens form (wide / square / tall); hvit, eller
            mørk (--frame-dark) når logoen selv er hvit/lys.
   --bare:  logoen akkurat som originalen, uten bakgrunn.
   Logoen beskjæres på serveren og får lik optisk størrelse (--k).
   ========================================================================== */
.plp-logo,.plp-logo--dark{--lb:clamp(24px,2vw,30px);left:clamp(16px,1.6vw,22px)!important;bottom:clamp(16px,1.6vw,22px)!important;background:none!important;box-shadow:none!important;padding:0!important;border-radius:0;height:auto!important;max-width:calc(100% - 44px);display:inline-flex!important;align-items:center;justify-content:center}
.plp-card--big .plp-logo{--lb:clamp(28px,2.5vw,38px)}
.plp-shot .plp-logo img{display:block;height:calc(var(--lb) * var(--k,1))!important;width:auto!important;max-width:260px!important;object-fit:contain;object-position:left center;filter:none!important}
.plp-card--big .plp-shot .plp-logo img{max-width:320px!important}
/* Hvit ramme – formen følger logoen */
.plp-logo--frame{background:#fff!important;border-radius:14px;box-shadow:0 12px 32px -14px rgba(8,24,52,.5),0 0 0 1px rgba(8,24,52,.05)!important}
.plp-logo--frame.plp-logo--wide{padding:12px 18px!important}
.plp-logo--frame.plp-logo--square{padding:12px!important;border-radius:16px}
.plp-logo--frame.plp-logo--tall{padding:12px 14px!important}
.plp-card--big .plp-logo--frame.plp-logo--wide{padding:14px 22px!important}
.plp-card--big .plp-logo--frame.plp-logo--square{padding:14px!important}
.plp-shot .plp-logo--frame img{height:calc(var(--lb) * var(--k,1) * .95)!important;object-position:center}
.plp-logo--frame-dark{background:var(--plp-navy-950,#0A1433)!important;box-shadow:0 12px 32px -14px rgba(0,0,0,.55),0 0 0 1px rgba(255,255,255,.08)!important}
/* Uten ramme – originalen som den er */
.plp-logo--bare{background:none!important;box-shadow:none!important;padding:0!important}
/* Uten logo: kundenavnet */
.plp-logo--text{font:700 clamp(14px,1.15vw,16px)/1.1 var(--plp-sans)!important;letter-spacing:.06em;text-transform:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.plp-logo--text.plp-logo--frame{color:var(--plp-ink)!important;padding:12px 18px!important;text-shadow:none!important}
.plp-logo--text.plp-logo--bare{color:#fff!important;text-shadow:0 1px 12px rgba(0,0,0,.35)!important}

/* ==========================================================================
   Rettelser 8. oktober 2026 (mobil + rene prosjektbilder)
   ========================================================================== */
/* 1 · Prosjektkort på mobil: Elementor setter «wrap» på containere på mobil som standard.
       Da kollapset bildet til 0 px høyde, og kortene la seg oppå hverandre i arkivet. */
.plp-card.e-con,.plp-card-body.e-con{--flex-wrap:nowrap;--flex-wrap-mobile:nowrap;flex-wrap:nowrap}

/* 2 · Rene prosjektbilder: ingen nettleserlinje (adressefelt) og ingen lys ramme rundt bildet.
       Gjelder hovedbildet, «Neste prosjekt» og de relaterte kortene – alle vises nå som rene bilder. */
.plp-bw{border-radius:24px;box-shadow:none;background:transparent}
.plp-bw-bar{display:none!important}
.plp-bw img{display:block}
.plp-stage{background:none;padding:0;border-radius:24px}
.plp-stage .plp-bw{border-radius:24px}
.plp-shot:not(.plp-shot--img){padding:0;background:none}

/* 3 · Ingen sideveis rulling på mobil: pynte-lyset bak toppen av prosjektsiden stakk ut til høyre. */
.e-con.plp.plp-el-hero{overflow-x:clip}

/* 4 · Luft mellom galleriet og «Neste prosjekt» (lå tett inntil / oppå galleriet på mobil). */
.e-con.plp-vis-neste{margin-top:clamp(56px,8vw,120px)}

/* ==========================================================================
   SYNLIGHET I GOOGLE – resultatmerker på kortene (2.7.0)
   ========================================================================== */
.plp-kpis{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:14px 0 0!important;padding:0!important}
.plp-kpis li{margin:0!important;padding:6px 10px;border-radius:8px;background:rgba(30,58,142,.07);font-size:12.5px;line-height:1.3;color:var(--plp-muted,#5B6890);white-space:normal;max-width:100%}
.plp-kpis li::before,.plp-kpis li::marker{content:none}
.plp-kpis b{margin-right:4px;font-weight:700;white-space:nowrap;color:var(--plp-navy,#1E3A8E)}
.plp-snums--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.plp-snums + .plp-snums{margin-top:12px}
.plp-snums-foot{margin:10px 0 0!important;font-size:13px;color:var(--plp-muted,#5B6890)}
@media (max-width:1024px){.plp-snums--4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:767px){.plp-snums--4{grid-template-columns:minmax(0,1fr)}}

/* Kortet: tittel til venstre, maks 3 tjenester til høyre (2.7.0) */
.plp-card-head{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;justify-content:space-between!important;align-items:flex-start!important;gap:12px!important;padding:0!important}
.plp-card-head > .elementor-widget{width:auto!important;margin:0!important}
.plp-card-head > .elementor-widget:first-child{flex:0 1 auto;min-width:48%}
.plp-card-head > .elementor-widget:last-child{flex:1 1 0;min-width:0}
.plp-card-head .plp-tags{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;margin:0!important;padding-top:3px}
.plp-card-head .plp-tags span:nth-child(n+4){display:none}
@media (max-width:420px){
	.plp-card-head{flex-direction:column!important;gap:8px!important}
	.plp-card-head .plp-tags{justify-content:flex-start}
}
