/* ============================== BJØRN DETAILING — case ============================== */
.bj{--bl:#0080ff;--bl-d:#0062c4;--bl-s:#e8f2ff;--gy:#62666d;--bk:#0b0d10;background:#fff;color:var(--bk)}
.bj .cap2__t{font-weight:700;letter-spacing:-.035em}
.bj .cap2__t span{color:var(--bl);opacity:1}
.bj .cap2--w .cap2__t span{color:#fff;opacity:.6}
.bj-h2{font:700 clamp(36px,5.6vw,104px)/.96 var(--display);letter-spacing:-.045em;margin:22px 0 0}

/* ---------- HERO ---------- */
.bj-hero .pin{background:#fff;color:var(--bk)}
.bj-hero__glow{position:absolute;inset:0;background:#fff}
.bj-hero__logo{transform:translateY(calc(var(--p,0)*var(--u)*-5)) scale(calc(1 + var(--p,0)*.3))}
.bj-hero__tilt{position:relative}
.bj-hero__tilt img{width:100%}
.cm{position:absolute;width:calc(var(--u)*2);height:calc(var(--u)*2);border:0 solid rgba(11,13,16,.35)}
.cm--tl{left:calc(var(--u)*-2.4);top:calc(var(--u)*-2.4);border-left-width:2px;border-top-width:2px}
.cm--tr{right:calc(var(--u)*-2.4);top:calc(var(--u)*-2.4);border-right-width:2px;border-top-width:2px}
.cm--bl{left:calc(var(--u)*-2.4);bottom:calc(var(--u)*-2.4);border-left-width:2px;border-bottom-width:2px}
.cm--br{right:calc(var(--u)*-2.4);bottom:calc(var(--u)*-2.4);border-right-width:2px;border-bottom-width:2px}
.bj-hero__txt{opacity:calc(1 - var(--o,0));transform:translateY(calc(var(--o,0)*var(--u)*-3))}
.bj-hero__sub{font:700 calc(var(--u)*3.4)/1 var(--display);letter-spacing:-.035em;margin-bottom:calc(var(--u)*2)}
.bj-hero__tags{display:flex;flex-wrap:wrap;gap:calc(var(--u)*.8)}
.bj-hero__tags li{font:600 calc(var(--u)*.85)/1 var(--text);letter-spacing:.12em;text-transform:uppercase;padding:calc(var(--u)*.9) calc(var(--u)*1.4);border:1px solid rgba(11,13,16,.22);border-radius:99px}
.bj-hero__tags li:first-child{background:var(--bl);border-color:var(--bl);color:#fff}
.bj-hero__meta{position:absolute;left:var(--g);bottom:5vh;font:600 11px/1 var(--text);letter-spacing:.16em;text-transform:uppercase;opacity:calc(.6*(1 - var(--o,0)))}

/* ---------- HISTORIEN ---------- */
.bj-story{padding:clamp(64px,8vw,130px) 0;background:#fff;position:relative;z-index:2}
.bj-story__grid{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(32px,6vw,120px);align-items:start}
.bj-story .lead{max-width:34ch}
.bj-story__ph{margin-top:clamp(32px,5vw,72px);border-radius:14px;overflow:hidden;aspect-ratio:3/2;background:var(--bl-s)}
.bj-story__img{display:block;height:116%;margin-top:-8%;transform:translate3d(0,calc(var(--pv,0)*-5%),0);will-change:transform}
.bj-story__img img{width:100%;height:100%;object-fit:cover}
.bj-story__k{font:600 12px/1 var(--text);letter-spacing:.16em;text-transform:uppercase;color:var(--bl);margin-bottom:22px}
.bj-needs{border-top:1px solid rgba(11,13,16,.16)}
.bj-needs li{display:grid;grid-template-columns:3.4rem 1fr;align-items:baseline;padding:clamp(16px,2vw,28px) 0;border-bottom:1px solid rgba(11,13,16,.16);font:700 clamp(26px,3.3vw,58px)/1.02 var(--display);letter-spacing:-.04em}
.bj-needs b{font:600 12px/1 var(--text);letter-spacing:.14em;color:var(--bl)}

/* ---------- LOGOSYSTEM ---------- */
.bj-logo .pin{background:#eef3f9}
.lg-card{background:#fff;border:1px solid rgba(11,13,16,.08);border-radius:calc(var(--u)*1.3);overflow:hidden;opacity:var(--s,0);transform:translateY(calc((1 - var(--s,0))*var(--u)*3))}
.lg-card>img{position:absolute;left:50%;top:56%;width:calc(var(--u)*19);transform:translate(-50%,-50%)}
.lg-lbl{position:absolute;left:calc(var(--u)*1.6);top:calc(var(--u)*1.4);font:600 calc(var(--u)*.72)/1 var(--text);letter-spacing:.16em;text-transform:uppercase;color:var(--bl)}
.lg-c2{background:var(--bl);border-color:transparent}
.lg-c2 .lg-lbl{color:rgba(255,255,255,.8)}
.lg-c3{background:#eceff3}
.lg-c3 .lg-lbl{color:var(--gy)}
.lg-c4>img{width:calc(var(--u)*11)}
.lg-lock{opacity:1;transform:translate(calc((1 - var(--s,0))*var(--u)*15),calc((1 - var(--s,0))*var(--u)*11.6)) scale(calc(1 + (1 - var(--s,0))*.55))}
.lg-lock img{width:100%}
.lg-icon{position:absolute;left:calc(var(--u)*2);top:calc(var(--u)*4);width:calc(var(--u)*9);aspect-ratio:1;border-radius:22%;background:#fff;box-shadow:0 calc(var(--u)*.6) calc(var(--u)*1.6) rgba(11,13,16,.16),0 0 0 1px rgba(11,13,16,.06);display:grid;place-items:center}
.lg-icon img{width:62%}
.lg-sizes{position:absolute;left:calc(var(--u)*12.6);bottom:calc(var(--u)*2.2);display:flex;align-items:flex-end;gap:calc(var(--u)*1.2)}
.lg-sizes img{width:calc(var(--px)*1px);height:auto}
/* favicon: blå flade med det hvide mærke — læses også i lille størrelse */
.fv{display:grid;place-items:center;aspect-ratio:1;background:var(--bl);border-radius:22%;box-shadow:0 1px 2px rgba(11,13,16,.18)}
.fv img{width:70%;height:auto}
.lg-tab{position:absolute;right:calc(var(--u)*1.6);width:calc(var(--u)*15.6);top:calc(var(--u)*3.8);background:#eceff3;border-radius:calc(var(--u)*.8);padding:calc(var(--u)*.6) calc(var(--u)*.8)}
.lg-tab__dots{display:flex;gap:calc(var(--u)*.3);margin-bottom:calc(var(--u)*.5)}
.lg-tab__dots b{width:calc(var(--u)*.55);aspect-ratio:1;border-radius:50%;background:#c5cad1}
.lg-tab__t{text-overflow:ellipsis;display:flex;align-items:center;gap:calc(var(--u)*.5);background:#fff;border-radius:calc(var(--u)*.5) calc(var(--u)*.5) 0 0;padding:calc(var(--u)*.45) calc(var(--u)*.7);font:500 calc(var(--u)*.62)/1.1 var(--text);white-space:nowrap;overflow:hidden}
.lg-tab__t .fv{width:calc(var(--u)*1.1);flex:none;border-radius:24%}
.lg-tab__url{display:block;background:#fff;margin-top:calc(var(--u)*.25);border-radius:99px;padding:calc(var(--u)*.4) calc(var(--u)*.8);font:500 calc(var(--u)*.6)/1 var(--text);color:var(--gy)}
.lg-fav{position:absolute;left:calc(var(--u)*1.8);bottom:calc(var(--u)*1.8);display:flex;align-items:flex-end;flex-wrap:wrap;width:calc(var(--u)*9.6);gap:calc(var(--u)*1.1)}
.lg-fav span{flex-basis:100%;font:600 calc(var(--u)*.7)/1 var(--text);letter-spacing:.1em;color:var(--gy);margin-top:calc(var(--u)*.2)}
.lg-fav .fv:nth-child(1){width:calc(var(--u)*4.6)}
.lg-fav .fv:nth-child(2){width:calc(var(--u)*2.8)}

/* ---------- FARVE ---------- */
.bj-color .pin{background:#fff;color:#fff}
.cl-flood{position:absolute;inset:0;background:var(--bl);clip-path:circle(calc(var(--u)*1.2 + var(--s,0)*var(--u)*140) at 50% 49%)}
.cl-lock{opacity:calc(var(--s,0)*(1 - var(--o,0)));transform:scale(calc(.92 + var(--s,0)*.08 + var(--o,0)*.1))}
.cl-hex{opacity:calc(var(--s,0)*(1 - var(--o,0)));transform:translateY(calc((1 - var(--s,0))*var(--u)*2))}
.cl-hex b{display:block;font:800 calc(var(--u)*7.4)/1 var(--display);letter-spacing:-.05em}
.cl-hex span{display:block;margin-top:calc(var(--u)*.8);font:600 calc(var(--u)*.85)/1 var(--text);letter-spacing:.16em;text-transform:uppercase;opacity:.75}
.cl-small{opacity:calc(var(--s,0)*(1 - var(--o,0)))}
.cl-type{opacity:calc(1 - var(--o,0))}
.cl-line{font:700 calc(var(--u)*7.8)/1.02 var(--display);letter-spacing:-.045em;overflow:hidden;padding-bottom:calc(var(--u)*.6)}
.cl-line span{display:block;transform:translateY(calc((1 - var(--s,0))*112%))}
.cl-line:last-child{opacity:.62}
.cl-car{opacity:calc(.14*var(--s,0)*(1 - var(--o,0)));transform:translateX(calc((1 - var(--s,0))*var(--u)*6))}
.cl-pal{position:absolute;inset:auto 0 0 0;height:100%;pointer-events:none;color:#fff}
.cl-prim{position:absolute;left:var(--g);top:calc(var(--hdr) + 1.5vh);display:grid;gap:calc(var(--u)*.4);opacity:var(--s,0);transform:translateY(calc((1 - var(--s,0))*var(--u)*2))}
.cl-prim em{font:700 calc(var(--u)*1.8)/1 var(--display);letter-spacing:-.03em;font-style:normal;opacity:.7;margin-bottom:calc(var(--u)*.7)}
.cl-prim span{font:600 calc(var(--u)*.8)/1 var(--text);letter-spacing:.16em;text-transform:uppercase;opacity:.75}
.cl-prim b{font:800 calc(var(--u)*6.6)/.9 var(--display);letter-spacing:-.055em}
.cl-bands{position:absolute;left:0;right:0;bottom:0;height:calc(var(--u)*36)}
.cl-band{position:absolute;left:0;right:0;height:calc(var(--u)*9 + 40px);display:flex;align-items:flex-start;justify-content:space-between;padding:calc(var(--u)*1.6) var(--g) 0;border-radius:calc(var(--u)*2.4) calc(var(--u)*2.4) 0 0;opacity:var(--s,0);transform:translateY(calc((1 - var(--s,0))*110%))}
.cl-band span{font:600 calc(var(--u)*.8)/1 var(--text);letter-spacing:.16em;text-transform:uppercase;opacity:.7}
.cl-band b{font:800 calc(var(--u)*3.6)/.9 var(--display);letter-spacing:-.045em}
.cl-band--wh{bottom:calc(var(--u)*27);background:#fff;color:var(--bk)}
.cl-band--bs{bottom:calc(var(--u)*18);background:var(--bl-s);color:var(--bk)}
.cl-band--gr{bottom:calc(var(--u)*9);background:var(--gy);color:#fff}
.cl-band--bk{bottom:calc(var(--u)*-1);height:calc(var(--u)*10);background:var(--bk);color:#fff}

/* ---------- TYPOGRAFI ---------- */
.bj-type .pin{background:var(--bl-s);color:var(--bk)}
.ty-aa{font:800 calc(var(--u)*26)/.78 var(--display);letter-spacing:-.07em;color:var(--bl);opacity:calc(1 - var(--o,0));transform:translateY(calc(var(--o,0)*var(--u)*-4))}
.ty-spec{display:grid;gap:calc(var(--u)*.4);opacity:calc(var(--s,0)*(1 - var(--o,0)));transform:translateY(calc((1 - var(--s,0))*var(--u)*2))}
.ty-spec b{font:800 calc(var(--u)*3.6)/1 var(--display);letter-spacing:-.04em}
.ty-spec--b b{font-family:var(--text);font-weight:600;letter-spacing:-.03em}
.ty-spec span{font:600 calc(var(--u)*.95)/1.2 var(--text);color:var(--bl)}
.ty-spec i{font:500 calc(var(--u)*.95)/1.2 var(--text);font-style:normal;opacity:.6}
.ty-rows{overflow:visible;opacity:calc(1 - var(--o,0))}
.ty-row{font:800 calc(var(--u)*4.8)/1.06 var(--display);letter-spacing:-.045em;white-space:nowrap;margin:0 0 calc(var(--u)*.5);transform:translateX(calc(var(--s,0)*-50%))}
.ty-row--lc{color:var(--bl);transform:translateX(calc(-50% + var(--s,0)*50%))}
.ty-row:nth-child(3){color:transparent;-webkit-text-stroke:2px var(--bk)}
.ty-brand{pointer-events:none}
.ty-h{font:700 calc(var(--u)*7.6)/1 var(--display);letter-spacing:-.045em}
.ty-ln{display:block;overflow:hidden;padding-bottom:calc(var(--u)*.5)}
.ty-ln>span{display:block;transform:translateY(calc((1 - var(--s,0))*112%))}
.ty-ln--b{color:var(--bl)}
.ty-h{opacity:var(--s,0)}
.ty-p{font:500 calc(var(--u)*1.6)/1.5 var(--text);max-width:calc(var(--u)*38);margin-top:calc(var(--u)*2);opacity:var(--s,0);transform:translateY(calc((1 - var(--s,0))*var(--u)*1.6))}
.ty-btns{display:flex;gap:calc(var(--u)*1);margin-top:calc(var(--u)*2.4);opacity:var(--s,0)}
.ty-b{font:600 calc(var(--u)*1.2)/1 var(--text);padding:calc(var(--u)*1.3) calc(var(--u)*2.4);border-radius:99px;border:1px solid rgba(11,13,16,.3)}
.ty-b--p{background:var(--bl);border-color:var(--bl);color:#fff}
.ty-hint{font:500 calc(var(--u)*1.05)/1.45 var(--text);opacity:calc(var(--s,0)*.65);border-left:2px solid var(--bl);padding-left:calc(var(--u)*1.2)}

/* ---------- VISITKORT + FLYER (fysiske objekter) ---------- */
.bj-card .pin,.bj-flyer .pin{background:linear-gradient(180deg,#eef2f7,#dde5ee);color:var(--bk)}
.bk-floor{position:absolute;inset:auto 0 0 0;height:36%;background:radial-gradient(60% 100% at 50% 100%,rgba(11,13,16,.06),transparent 70%)}
.bk-sf{perspective:calc(var(--u)*140)}
.bk-shadow,.fl-shadow{border-radius:50%;background:radial-gradient(closest-side,rgba(11,13,16,.34),transparent);opacity:calc(var(--s,0)*.9)}
.bk-rig{transform-style:preserve-3d;--zz:calc(var(--zoom,0)*(1 - var(--back,0)));transform:translate3d(calc(var(--zz)*var(--u)*-12 + var(--fan,0)*var(--u)*-13),calc((1 - var(--s,0))*var(--u)*30 + var(--flip,0)*(1 - var(--flip,0))*var(--u)*-6 + var(--zz)*var(--u)*-4),calc((1 - var(--s,0))*var(--u)*-14 + var(--zz)*var(--u)*16)) rotateX(calc(14deg + (1 - var(--s,0))*46deg - var(--zz)*14deg)) rotateY(calc(-12deg - var(--flip,0)*180deg + var(--back,0)*180deg + var(--zz)*12deg*(1 - var(--back,0)))) rotateZ(calc(-5deg + (1 - var(--s,0))*-8deg + var(--fan,0)*-3deg + var(--zz)*5deg));opacity:calc(.3 + var(--s,0)*.7)}
.bk-card{position:absolute;inset:0;transform-style:preserve-3d}
.bk-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:calc(var(--u)*.9);overflow:hidden;box-shadow:0 calc(var(--u)*2.6) calc(var(--u)*5) rgba(11,13,16,.3),0 0 0 1px rgba(11,13,16,.06)}
.bk-face--b{transform:rotateY(180deg)}
.bk-face img{width:100%;height:100%}
.bk-twin{opacity:var(--s,0);transform:translate3d(calc((1 - var(--s,0))*var(--u)*10),0,0) rotate(5deg);filter:drop-shadow(0 calc(var(--u)*2.2) calc(var(--u)*3) rgba(11,13,16,.3))}
.bk-twin img{border-radius:calc(var(--u)*.9)}
.bk-call{display:grid;grid-template-columns:auto 1fr;column-gap:calc(var(--u)*1.2);align-items:start;font:500 calc(var(--u)*1.1)/1.35 var(--text);opacity:calc(var(--s,0)*(1 - var(--o,0)));transform:translateY(calc((1 - var(--s,0))*var(--u)*1.2))}
.bk-call i,.bk-pin{display:grid;place-items:center;width:calc(var(--u)*2.2);aspect-ratio:1;border-radius:50%;background:var(--bl-d);color:#fff;font:700 calc(var(--u)*1.1)/1 var(--text);font-style:normal}
.bk-call i{grid-row:1/3}
.bk-pin{position:absolute;margin:calc(var(--u)*-1.1) 0 0 calc(var(--u)*-1.1);box-shadow:0 0 0 calc(var(--u)*.35) #fff,0 calc(var(--u)*.6) calc(var(--u)*1.4) rgba(11,13,16,.35);opacity:calc(var(--s,0)*(1 - var(--o,0)));transform:scale(calc(.6 + var(--s,0)*.4))}
.bk-call b{font:700 calc(var(--u)*1.7)/1 var(--display);letter-spacing:-.03em}
.bk-call span{opacity:.7}

.fl-rig{transform-style:preserve-3d;transform:translate3d(calc(var(--flip,0)*var(--u)*22.4),calc((1 - var(--s,0))*var(--u)*28),calc((1 - var(--s,0))*var(--u)*-10)) rotateX(calc(6deg + (1 - var(--s,0))*36deg)) rotateY(calc(-8deg - var(--flip,0)*180deg)) rotateZ(calc(-3deg + (1 - var(--s,0))*-6deg));opacity:calc(.3 + var(--s,0)*.7)}
.fl-sheet{position:absolute;inset:0;transform-style:preserve-3d}
.fl-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:calc(var(--u)*.7);overflow:hidden;box-shadow:0 calc(var(--u)*2.6) calc(var(--u)*5) rgba(11,13,16,.3),0 0 0 1px rgba(11,13,16,.06)}
.fl-face--b{transform:rotateY(180deg)}
.fl-face img{width:100%;height:100%}
.fl-ring,.fl-loupe{--cx:calc(.45 + .05*var(--f1,0));--cw:calc(.8 + .1*var(--f1,0));--cy:calc(.395 + .265*var(--f1,0) + .245*var(--f2,0));--ch:calc(.14 + .08*var(--f1,0) - .05*var(--f2,0))}
.fl-ring{position:absolute;left:calc((var(--cx) - var(--cw)/2)*100%);width:calc(var(--cw)*100%);top:calc((var(--cy) - var(--ch)/2)*100%);height:calc(var(--ch)*100%);border:2px solid var(--bl);border-radius:calc(var(--u)*1);backface-visibility:hidden;opacity:calc(1 - var(--o,0));box-shadow:0 0 0 calc(var(--u)*.5) rgba(0,128,255,.18),0 0 0 calc(var(--u)*.5) rgba(0,128,255,.18) inset}
.fl-loupe{--lw:calc(var(--u)*30);border-radius:50%;overflow:hidden;background:#fff;border:calc(var(--u)*.4) solid #fff;box-shadow:0 calc(var(--u)*2) calc(var(--u)*5) rgba(11,13,16,.3),0 0 0 1px rgba(11,13,16,.08);opacity:calc(var(--s,0)*(1 - var(--o,0)));transform:scale(calc(.7 + var(--s,0)*.3))}
.fl-loupe span{position:absolute;inset:0;background:url(/assets/img/bd/flyer-forside.webp) no-repeat;background-size:calc(var(--lw)/var(--cw)) auto;background-position:calc(var(--lw)/2 - var(--cx)*var(--lw)/var(--cw)) calc(var(--lw)/2 - var(--cy)*var(--lw)/var(--cw)*2.1243)}
.fl-note{pointer-events:none}
.fl-note__t{position:absolute;left:0;top:0;display:flex;align-items:center;gap:calc(var(--u)*1.2);font:700 calc(var(--u)*2.2)/1.1 var(--display);letter-spacing:-.035em;opacity:calc(var(--s,0)*(1 - var(--o,0)));transform:translateY(calc((1 - var(--s,0))*var(--u)*1.2))}
.fl-note__t i{flex:none;display:grid;place-items:center;width:calc(var(--u)*2.6);aspect-ratio:1;border-radius:50%;background:var(--bl-d);color:#fff;font:700 calc(var(--u)*1.2)/1 var(--text);font-style:normal}
.bk-call--3{grid-template-columns:1fr}


/* ============ HISTORIEN: pinned scene (foto + udgangspunkt → otte krav) ============ */
.bj-need .pin{background:#0b0d10;color:#fff}
.nd-photo{position:absolute;top:0;bottom:0;right:0;left:calc(50% + var(--u)*3);overflow:hidden}
.nd-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:46% 50%;transform:scale(calc(1.2 - var(--p,0)*.06));transform-origin:46% 6%}
.nd-k,.nd-lbl{font:600 calc(var(--u)*.85)/1 var(--text);letter-spacing:.16em;text-transform:uppercase;color:#6db4ff;opacity:calc(var(--s,0)*(1 - var(--o,0)))}
.nd-h{font:700 calc(var(--u)*5.3)/.98 var(--display);letter-spacing:-.05em;opacity:calc(var(--s,0)*(1 - var(--o,0)));transform:translateY(calc((1 - var(--s,0))*var(--u)*2))}
.nd-h span{display:block;color:#3c9cff}
.nd-lead{font:500 calc(var(--u)*1.4)/1.5 var(--text);color:#c4cad2;opacity:calc(var(--s,0)*(1 - var(--o,0)))}
.nd-list{opacity:var(--s,0);border-top:1px solid rgba(255,255,255,.16)}
.nd-list li{display:grid;grid-template-columns:calc(var(--u)*3.4) 1fr;align-items:baseline;padding:calc(var(--u)*.62) 0;border-bottom:1px solid rgba(255,255,255,.16);font:700 calc(var(--u)*3.5)/1.04 var(--display);letter-spacing:-.045em;color:rgba(255,255,255,.4);transition:color .5s var(--ease),transform .7s var(--ease)}
.nd-list b{font:600 calc(var(--u)*.8)/1 var(--text);letter-spacing:.14em;color:#6db4ff}
.nd-list li.is-on{color:#fff;transform:translateX(calc(var(--u)*1.2))}
.nd-list li.is-done{color:rgba(255,255,255,.68)}
@media (orientation:portrait){
  .nd-photo{left:0;bottom:auto;height:calc(var(--hdr) + var(--hc)*.3)}
  .nd-k,.nd-lbl{font-size:max(10px,calc(var(--ps)*2.7))}
  .nd-h{font-size:calc(var(--ps)*10.4)}
  .nd-lead{font-size:calc(var(--ps)*4.2)}
  .nd-list li{grid-template-columns:calc(var(--pu)*9) 1fr;font-size:calc(var(--ps)*7.4);padding:calc(var(--ps)*1.9) 0}
  .nd-list b{font-size:max(10px,calc(var(--ps)*2.6))}
  .nd-list li.is-on{transform:translateX(calc(var(--pu)*2))}
}

/* ============ flatview (mobil + reduceret bevægelse) ============ */
.fvb--light{--fb:#eef3f9}
.fvb--blue{--fb:#0080ff;--ff:#fff}
.fvb--sky{--fb:#e8f2ff}
.fvb--mist{--fb:#e7edf4}
.fvb__grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.fvb__tile{position:relative;background:#fff;border-radius:14px;padding:30px 14px 18px;display:grid;place-items:center;min-height:120px;border:1px solid rgba(11,13,16,.08)}
.fvb__tile--wide{grid-column:1/-1;min-height:150px;padding-inline:8%}
.fvb__tile--blue{background:var(--bl);border-color:transparent}
.fvb__tile--gray{background:#eceff3}
.fvb__tile img{width:78%}
.fvb__tile .fvb__mark{width:44%}
.fvb__tile figcaption{position:absolute;left:14px;top:12px;font:600 10px/1 var(--text);letter-spacing:.14em;text-transform:uppercase;color:var(--bl)}
.fvb__tile--blue figcaption{color:rgba(255,255,255,.8)}
.fvb__tile--gray figcaption{color:var(--gy)}
.fvb__favs{display:flex;align-items:flex-end;gap:12px}
.fvb__favs .fv{width:64px}.fvb__favs .fv+.fv{width:36px}
.fvb__tile--fav figcaption{white-space:nowrap}
.fvb__lock{width:min(76vw,420px);margin-bottom:28px}
.fvb__pal{display:grid;gap:0;margin-inline:calc(var(--g)*-1);border-radius:18px 18px 0 0;overflow:hidden}
.fvb__pal li{display:flex;justify-content:space-between;align-items:baseline;padding:20px var(--g);background:var(--c);color:var(--i)}
.fvb__pal span{font:600 11px/1 var(--text);letter-spacing:.16em;text-transform:uppercase;opacity:.75}
.fvb__pal b{font:800 clamp(24px,7vw,40px)/1 var(--display);letter-spacing:-.04em}
.fvb__aa{font:800 clamp(140px,48vw,300px)/.78 var(--display);letter-spacing:-.07em;color:var(--bl);margin-bottom:24px}
.fvb__specs{display:grid;gap:18px;margin:24px 0}
.fvb__specs dt{font:800 28px/1 var(--display);letter-spacing:-.03em;color:var(--bk)}
.fvb__specs dd{margin:6px 0 0;font:500 14px/1.45 var(--text);opacity:.7}
.fvb__abc{font:700 clamp(18px,5.4vw,34px)/1.2 var(--display);letter-spacing:-.03em;color:var(--bl);word-break:break-all}
.fvb__cards{display:grid;gap:18px;padding:0 0 12px}
.fvb__cards img{border-radius:10px;box-shadow:0 18px 40px -16px rgba(11,13,16,.4)}
.fvb__cards img:nth-child(1){transform:rotate(-2deg)} .fvb__cards img:nth-child(2){transform:rotate(2deg)}
.fvb__flyers{display:grid;grid-template-columns:1fr 1fr;gap:14px;max-width:560px}
.fvb__flyers img{border-radius:8px;box-shadow:0 18px 40px -16px rgba(11,13,16,.4)}
.fvb__flyers img:nth-child(1){transform:rotate(-2deg)} .fvb__flyers img:nth-child(2){transform:rotate(2deg);margin-top:18px}

/* ---------- BRANDVÆG ---------- */
.bj-wall .pin{background:#e6ecf3}
.wall-bg{position:absolute;inset:0;background:radial-gradient(circle,rgba(11,13,16,.12) 1px,transparent 1.6px) 0 0/calc(var(--u)*2.4) calc(var(--u)*2.4)}
.wall{position:absolute;left:0;top:0;width:calc(var(--u)*120);height:calc(var(--u)*70);transform:translate3d(calc(var(--bx,17)*var(--u)),calc(var(--by,6.3)*var(--u)),0) scale(var(--bs,1.1));transform-origin:0 0;will-change:transform}
.wall-layer{position:absolute;inset:0;-webkit-mask-image:linear-gradient(180deg,transparent calc(var(--hdr) - 6px),#000 calc(var(--hdr) + 5vh),#000 calc(50% + var(--u)*15),transparent calc(50% + var(--u)*17.6));mask-image:linear-gradient(180deg,transparent calc(var(--hdr) - 6px),#000 calc(var(--hdr) + 5vh),#000 calc(50% + var(--u)*15),transparent calc(50% + var(--u)*17.6))}
.wl-insta-w{transform:translate3d(calc(var(--bx,0)*var(--dp,0)*var(--u)*-.025),calc(var(--by,0)*var(--dp,0)*var(--u)*-.025),0) rotate(var(--rot,0deg));filter:drop-shadow(0 calc(var(--u)*1.4) calc(var(--u)*2.2) rgba(11,13,16,.32))}
.wl-insta-w img{display:block;width:100%;height:auto}
.wl-t{font:600 calc(var(--u)*.8)/1 var(--text);letter-spacing:.18em;text-transform:uppercase;color:var(--gy)}
.wl{border-radius:calc(var(--u)*1.2);overflow:hidden;background:#fff;box-shadow:0 calc(var(--u)*1.4) calc(var(--u)*3) rgba(11,13,16,.18),0 0 0 1px rgba(11,13,16,.05);transform:translate3d(calc(var(--bx,0)*var(--dp,0)*var(--u)*-.025),calc(var(--by,0)*var(--dp,0)*var(--u)*-.025),0) rotate(var(--rot,0deg))}
.wl>img{width:100%;height:100%;object-fit:cover}
.wl-blue{background:var(--bl);display:grid;place-items:center}
.wl-blue img{width:72%;height:auto}
.wl-white,.wl-gray{display:grid;place-items:center}
.wl-white img{width:52%;height:auto}
.wl-gray{background:#eceff3}
.wl-gray img{width:48%;height:auto}
.wl-icon{border-radius:22%;display:grid;place-items:center}
.wl-icon img{width:62%;height:auto}
.wl-fav{background:var(--bl);border-radius:22%;display:grid;place-items:center}
.wl-fav img{width:62%;height:auto}
.wl-pal{display:grid;grid-auto-rows:min-content}
.wl-pal li{display:flex;align-items:center;justify-content:space-between;height:calc(var(--u)*var(--r));padding:0 calc(var(--u)*1.6);background:var(--c);color:var(--i)}
.wl-pal span{font:600 calc(var(--u)*.7)/1 var(--text);letter-spacing:.14em;text-transform:uppercase;opacity:.75}
.wl-pal b{font:800 calc(var(--u)*2.2)/1 var(--display);letter-spacing:-.04em}
.wl-aa{background:#fff;padding:calc(var(--u)*1.8) calc(var(--u)*1.8) 0}
.wl-aa b{display:block;font:800 calc(var(--u)*8.2)/.82 var(--display);letter-spacing:-.07em;color:var(--bl)}
.wl-aa span{position:absolute;left:calc(var(--u)*1.8);bottom:calc(var(--u)*1.6);font:600 calc(var(--u)*.8)/1 var(--text);letter-spacing:.12em;text-transform:uppercase;color:var(--gy)}
.wl-h1{padding:calc(var(--u)*1.8)}
.wl-h1 p{font:700 calc(var(--u)*2.5)/1.05 var(--display);letter-spacing:-.04em}
.wl-h1 p span{display:block;color:var(--bl)}
.wl-h1 i{position:absolute;left:calc(var(--u)*1.8);bottom:calc(var(--u)*1.6);font:600 calc(var(--u)*.9)/1 var(--text);font-style:normal;background:var(--bl);color:#fff;padding:calc(var(--u)*.8) calc(var(--u)*1.6);border-radius:99px}
.wl-card,.wl-fly{border-radius:calc(var(--u)*.7)}
.wl-card>img,.wl-fly>img{object-fit:fill}

/* ---------- FRA PRINT TIL PIXEL ---------- */
.bj-bridge .pin{background:linear-gradient(180deg,#eef2f7,#dde5ee);color:var(--bk)}
.bb-bg{position:absolute;inset:0;background:#0a1014;opacity:var(--s,0)}
.bb-flood{position:absolute;inset:0;background:var(--bl);clip-path:circle(calc(var(--s,0)*var(--u)*150) at 50% 48%)}
.bb-card{transform-style:preserve-3d;opacity:calc(var(--s,0)*(1 - var(--gone,0)));transform:translate3d(0,calc((1 - var(--s,0))*var(--u)*20),0) rotateX(calc((1 - var(--s,0))*30deg + 8deg*(1 - var(--grow,0)))) rotateZ(calc((1 - var(--s,0))*-8deg - 3deg*(1 - var(--grow,0)))) scale(calc(1 + var(--grow,0)*.72))}
.bb-card__in img{width:100%;border-radius:calc(var(--u)*.9);box-shadow:0 calc(var(--u)*2.6) calc(var(--u)*5) rgba(11,13,16,.3)}
.bb-lock{opacity:calc(var(--s,0)*(1 - var(--o,0)));z-index:3}
.bb-ph{display:none}
.bb-lock img{width:100%}
.bb-line{opacity:calc(var(--s,0)*(1 - var(--o,0)));font:700 calc(var(--u)*5.2)/1.04 var(--display);letter-spacing:-.045em;color:#fff;overflow:hidden}
.bb-line span{display:block;transform:translateY(calc((1 - var(--s,0))*110%))}
.bb-win{opacity:var(--s,0);transform:translateY(calc((1 - var(--s,0))*var(--u)*3)) scale(calc(.88 + var(--s,0)*.12 + var(--fill,0)*.06));z-index:2}
.bb-win .bw{box-shadow:0 calc(var(--u)*3) calc(var(--u)*8) rgba(0,0,0,.4)}
.bb-win .bw__body{position:relative}
.bb-win img[data-s]{clip-path:inset(calc((1 - var(--s,0))*50%) calc((1 - var(--s,0))*50%) calc((1 - var(--s,0))*50%) calc((1 - var(--s,0))*50%))}

/* ---------- HJEMMESIDEN ---------- */
.bj-web .pin{background:#0a1014;color:#fff}
.ws-bg{display:none}
.ws-win{opacity:var(--s,0);transform:translateY(calc((1 - var(--s,0))*var(--u)*8)) scale(calc(.94 + var(--s,0)*.06))}
.ws-win .bw{box-shadow:0 calc(var(--u)*3) calc(var(--u)*8) rgba(0,0,0,.55)}
.ws-long{display:block;transform:translateY(calc(var(--s,0)*-90.5%));will-change:transform}
.ws-long img{width:100%;height:auto}
.ws-call{background:#fff;color:#0a1014;border-radius:99px;padding:calc(var(--u)*.9) calc(var(--u)*1.6);font:600 calc(var(--u)*1.05)/1.2 var(--text);box-shadow:0 calc(var(--u)*1) calc(var(--u)*2.4) rgba(0,0,0,.4);opacity:calc(var(--s,0)*(1 - var(--o,0)));transform:translateY(calc((1 - var(--s,0))*var(--u)*1));z-index:4}
.ws-call::before{content:"";display:inline-block;width:calc(var(--u)*.7);aspect-ratio:1;border-radius:50%;background:var(--bl);margin-right:calc(var(--u)*.8)}
.ws-rail{color:#fff}

/* ---------- FØR / EFTER ---------- */
.bj-ba .pin{background:#0a1014;color:#fff}
.ba{margin:0;border-radius:calc(var(--u)*1.2);overflow:hidden;background:#000;box-shadow:0 calc(var(--u)*2) calc(var(--u)*5) rgba(0,0,0,.5)}
.ba img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ba__a{clip-path:inset(0 calc((1 - var(--s,0))*100%) 0 0)}
.ba__l{position:absolute;top:0;bottom:0;left:0;width:100%;pointer-events:none;transform:translateX(calc((var(--s,0) - 1)*100%));opacity:calc(1 - (var(--s,0) - .96)*25)}
.ba__l::after{content:"";position:absolute;top:0;bottom:0;right:-1px;width:2px;background:#fff;box-shadow:0 0 14px rgba(0,128,255,.9)}
.ba__t{position:absolute;top:calc(var(--u)*1.1);font:700 calc(var(--u)*.85)/1 var(--text);letter-spacing:.14em;text-transform:uppercase;padding:calc(var(--u)*.6) calc(var(--u)*1);border-radius:99px;background:rgba(10,16,20,.7);backdrop-filter:blur(6px)}
.ba__t--b{left:calc(var(--u)*1.1)}
.ba__t--a{right:calc(var(--u)*1.1);background:var(--bl);opacity:var(--s,0)}
.ba figcaption{position:absolute;left:0;right:0;bottom:0;padding:calc(var(--u)*3) calc(var(--u)*1.4) calc(var(--u)*1.2);background:linear-gradient(transparent,rgba(0,0,0,.72));font:600 calc(var(--u)*1)/1.25 var(--text)}
.bj-ba .cap2--c{left:50%;right:auto;text-align:center;transform:translate(-50%,calc((1 - var(--s,1))*var(--u)*1.4));max-width:calc(var(--u)*70)}

/* ---------- MOBIL ---------- */
.bj-mob .pin{background:#0a1014;color:#fff}
.mb-bg{display:none}
.mb-phone{opacity:var(--s,0);transform:translateY(calc((1 - var(--s,0))*var(--u)*10)) rotate(calc((1 - var(--s,0))*4deg))}
.mb-phone .phone{width:100%;height:100%;aspect-ratio:auto}
.mb-phone .phone__scr{position:relative}
.m-st{position:absolute;left:0;top:0;width:100%;height:auto;max-width:none;opacity:calc(var(--in,1)*(1 - var(--o,0)));transform:translateY(calc(var(--s,0)*-61%));will-change:transform}
.m-st0{transform:none;height:100%;object-fit:cover}
.mb-ghost,.bk-ghost{font:800 calc(var(--u)*13)/.86 var(--display);letter-spacing:-.06em;color:transparent;-webkit-text-stroke:2px rgba(255,255,255,.16);opacity:var(--s,0)}
.bk-ghost{-webkit-text-stroke-color:rgba(0,128,255,.22)}
.mb-glow{display:none}

/* ---------- BOOKING ---------- */
.bj-book .pin{background:var(--bl-s);color:var(--bk)}
.bu{background:#fff;border-radius:calc(var(--u)*1.8);padding:calc(var(--u)*2.4);box-shadow:0 calc(var(--u)*3) calc(var(--u)*8) rgba(11,13,16,.18),0 0 0 1px rgba(11,13,16,.05);opacity:var(--s,0);transform:translateY(calc((1 - var(--s,0))*var(--u)*5));display:flex;flex-direction:column}
.bu-steps{position:relative;display:flex;justify-content:space-between;gap:calc(var(--u)*.6);padding-bottom:calc(var(--u)*1.4);border-bottom:1px solid #e3e8ee;margin-bottom:calc(var(--u)*2)}
.bu-steps li{display:flex;align-items:center;gap:calc(var(--u)*.5);font:600 calc(var(--u)*.8)/1 var(--text);color:#8a929c;transition:color .4s}
.bu-steps b{display:grid;place-items:center;width:calc(var(--u)*1.9);aspect-ratio:1;border-radius:50%;background:#eef1f5;font-size:calc(var(--u)*.7);transition:background .4s,color .4s}
.bu-steps li.is-on,.bu-steps li.is-done{color:var(--bk)}
.bu-steps li.is-on b,.bu-steps li.is-done b{background:var(--bl);color:#fff}
.bu-prog{position:absolute;left:0;bottom:-1px;height:2px;width:calc(var(--s,0)*100%);background:var(--bl)}
.bu-stage{position:relative;flex:1}
.bu-pane{position:absolute;inset:0;opacity:calc(var(--s,1)*(1 - var(--o,0)));transform:translateX(calc((1 - var(--s,1))*var(--u)*2 - var(--o,0)*var(--u)*2))}
.bu-h{font:700 calc(var(--u)*2.2)/1.1 var(--display);letter-spacing:-.035em;margin-bottom:calc(var(--u)*1.4)}
.bu-h--big{font-size:calc(var(--u)*3);text-align:center}
.bu-sub{font:500 calc(var(--u)*1.1)/1.3 var(--text);color:var(--gy);margin:calc(var(--u)*-.8) 0 calc(var(--u)*1.4)}
.bu-opt{position:relative;display:grid;grid-template-columns:1fr auto calc(var(--u)*2.2);gap:calc(var(--u)*1.2);align-items:center;border:1px solid #e3e8ee;border-radius:calc(var(--u)*1);padding:calc(var(--u)*1.2) calc(var(--u)*1.4);margin-bottom:calc(var(--u)*.9)}
.bu-opt em{display:inline-block;font:600 calc(var(--u)*.65)/1 var(--text);font-style:normal;letter-spacing:.06em;color:var(--bl);background:var(--bl-s);padding:calc(var(--u)*.35) calc(var(--u)*.6);border-radius:calc(var(--u)*.4);margin-bottom:calc(var(--u)*.5)}
.bu-opt em.feat{background:var(--bl);color:#fff}
.bu-opt h4{font:700 calc(var(--u)*1.3)/1.15 var(--display);letter-spacing:-.02em}
.bu-opt p{font:500 calc(var(--u)*.85)/1.35 var(--text);color:var(--gy);margin-top:calc(var(--u)*.3)}
.bu-pr{text-align:right}
.bu-pr s{display:block;font:500 calc(var(--u)*.8)/1 var(--text);color:#99a1ab}
.bu-pr b{font:800 calc(var(--u)*1.8)/1.1 var(--display);letter-spacing:-.03em}
.bu-radio{width:calc(var(--u)*1.6);aspect-ratio:1;border-radius:50%;border:2px solid #cfd6df;justify-self:end}
.bu-selbox{position:absolute;inset:-1px;border:2px solid var(--bl);border-radius:inherit;background:rgba(0,128,255,.06);opacity:var(--s,0)}
.bu-selbox::after{content:"";position:absolute;right:calc(var(--u)*1.7 - 1px);top:50%;width:calc(var(--u)*1);height:calc(var(--u)*1);margin-top:calc(var(--u)*-.5);border-radius:50%;background:var(--bl);box-shadow:0 0 0 calc(var(--u)*.35) #fff inset}
.bu-cal__h{display:flex;align-items:center;justify-content:space-between;font:700 calc(var(--u)*1.2)/1 var(--text);margin-bottom:calc(var(--u)*1)}
.bu-cal__h span{color:var(--gy);font-size:calc(var(--u)*1.6)}
.bu-cal__wk,.bu-cal__g{display:grid;grid-template-columns:repeat(7,1fr);gap:calc(var(--u)*.35)}
.bu-cal__wk span{text-align:center;font:600 calc(var(--u)*.75)/1 var(--text);color:#99a1ab;padding-bottom:calc(var(--u)*.5)}
.bu-cal__g b{position:relative;text-align:center;font:600 calc(var(--u)*1)/1 var(--text);padding:calc(var(--u)*.78) 0;border-radius:calc(var(--u)*.6)}
.bu-cal__g b.off{opacity:.28}
.bu-cal__g u,.bu-times u{position:absolute;inset:0;display:grid;place-items:center;text-decoration:none;background:var(--bl);color:#fff;border-radius:inherit;opacity:var(--s,0);transform:scale(calc(.7 + var(--s,0)*.3))}
.bu-times{display:grid;grid-template-columns:repeat(3,1fr);gap:calc(var(--u)*.9)}
.bu-times span{position:relative;text-align:center;font:600 calc(var(--u)*1.2)/1 var(--text);padding:calc(var(--u)*1.3) 0;border:1px solid #e3e8ee;border-radius:calc(var(--u)*.9)}
.bu-times span.off{opacity:.3;text-decoration:line-through}
.bu-f{margin-bottom:calc(var(--u)*1.1)}
.bu-f label{display:block;font:600 calc(var(--u)*.8)/1 var(--text);color:var(--gy);margin-bottom:calc(var(--u)*.45)}
.bu-f label small{font-weight:500;opacity:.7}
.bu-f div{border:1px solid #d6dde6;border-radius:calc(var(--u)*.8);padding:calc(var(--u)*1.05) calc(var(--u)*1.3);min-height:calc(var(--u)*3.7);font:600 calc(var(--u)*1.2)/1.2 var(--text)}
.bu-sum{display:grid;border:1px solid #e3e8ee;border-radius:calc(var(--u)*1);overflow:hidden}
.bu-sum div{display:flex;justify-content:space-between;gap:calc(var(--u)*1);padding:calc(var(--u)*1.05) calc(var(--u)*1.4);border-bottom:1px solid #eef1f5;font:500 calc(var(--u)*1.05)/1.3 var(--text)}
.bu-sum dt{color:var(--gy)}
.bu-sum dd{margin:0;font-weight:700;text-align:right}
.bu-sum .tot{background:var(--bl-s);border-bottom:0}
.bu-sum .tot dd{font:800 calc(var(--u)*1.5)/1 var(--display);color:var(--bl)}
.bu-done{display:grid;place-content:center;justify-items:center;gap:calc(var(--u)*1.2);text-align:center}
.bu-ok{display:grid;place-items:center;width:calc(var(--u)*6);aspect-ratio:1;border-radius:50%;background:var(--bl);color:#fff;transform:scale(calc(.6 + var(--s,0)*.4))}
.bu-ok svg{width:50%;height:50%}
.bu-thx{font:500 calc(var(--u)*1.2)/1.4 var(--text);color:var(--gy);max-width:calc(var(--u)*28)}
.bu-ok-sum{display:flex;flex-wrap:wrap;justify-content:center;gap:calc(var(--u)*.6)}
.bu-ok-sum span{font:600 calc(var(--u)*.9)/1 var(--text);background:var(--bl-s);color:var(--bl-d);padding:calc(var(--u)*.7) calc(var(--u)*1.1);border-radius:99px}
.bu-foot{display:flex;justify-content:space-between;align-items:center;margin-top:calc(var(--u)*1.2);font:600 calc(var(--u)*1.1)/1 var(--text);color:var(--gy)}
.bu-next{background:var(--bl);color:#fff;padding:calc(var(--u)*1.1) calc(var(--u)*2.4);border-radius:99px}
.bu-demo{text-align:center;font:500 calc(var(--u)*.75)/1 var(--text);color:#62666d;margin-top:calc(var(--u)*.9)}

/* ---------- AFSLUTNING ---------- */
.bj-end .pin{background:var(--bl);color:#fff}
.be-bg{position:absolute;inset:0;background:var(--bl)}
.be-lock{opacity:var(--s,0);transform:translate(calc(var(--up,0)*var(--u)*-35),calc(var(--up,0)*var(--u)*-15)) scale(calc((.9 + var(--s,0)*.1)*(1 - var(--up,0)*.5)))}
.be-lock img{width:100%}
.be-o{opacity:calc(var(--s,0)*(1 - var(--dim,0)*.72));transform:translate3d(calc((1 - var(--s,0))*var(--fx,0)*var(--u)),calc((1 - var(--s,0))*var(--fy,0)*var(--u)),0) rotate(var(--rot,0deg));filter:drop-shadow(0 calc(var(--u)*1.6) calc(var(--u)*2.6) rgba(0,40,110,.4))}
.be-o img{width:100%;border-radius:calc(var(--u)*.7)}
.be-o .bw,.be-o .phone{box-shadow:none}
.be-card{--fx:-24;--fy:-8}.be-card2{--fx:-20;--fy:14}.be-fly{--fx:16;--fy:-16}.be-web{--fx:24;--fy:14}.be-ph{--fx:6;--fy:18}.be-icon{--fx:12;--fy:-12}.be-swatches{--fx:0;--fy:-10}
.be-icon{background:#fff;border-radius:22%;display:grid;place-items:center}
.be-icon img{width:66%;border-radius:0}
.be-swatches{display:flex;gap:calc(var(--u)*.8)}
.be-swatches i{display:block;width:calc(var(--u)*2.6);aspect-ratio:1;border-radius:50%;background:var(--c);box-shadow:0 0 0 2px rgba(255,255,255,.7)}
.be-stmt{font:700 calc(var(--u)*6.4)/1.04 var(--display);letter-spacing:-.045em;z-index:3;text-shadow:0 calc(var(--u)*.6) calc(var(--u)*2.4) rgba(0,40,110,.4)}
.be-ln{display:block;overflow:hidden;padding-bottom:calc(var(--u)*.7)}
.be-ln>span{display:block;transform:translateY(calc((1 - var(--s,0))*112%))}
.be-sign{display:flex;flex-wrap:wrap;gap:calc(var(--u)*2.4);font:600 calc(var(--u)*1)/1 var(--text);letter-spacing:.14em;text-transform:uppercase;opacity:var(--s,0);z-index:3}
.be-sign span+span{opacity:.7}

/* ============ flatviews, del 2 ============ */
.fvb--ink{--fb:#0a1014;--ff:#fff}
.fvb__wall{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.fw{margin:0;border-radius:12px;overflow:hidden;background:#fff;display:grid;place-items:center;min-height:100px}
.fw--blue{background:var(--bl);grid-column:1/-1;padding:28px}
.fw--blue img{width:64%}
.fw .fw__mark{width:46%;padding:18px 0}
.fw--pal{grid-auto-flow:column;grid-auto-columns:1fr;padding:0}
.fw--pal li{background:var(--c);height:100%;min-height:100px}
.fw--card{background:transparent;box-shadow:0 14px 32px -14px rgba(11,13,16,.4)}
.fw--tall{background:transparent;box-shadow:0 14px 32px -14px rgba(11,13,16,.4)}
.fw--photo{grid-column:1/-1}
.fw img{width:100%;height:100%;object-fit:cover}
.fvb__bridge{display:grid;gap:18px}
.fvb__bcard{border-radius:10px;box-shadow:0 18px 40px -16px rgba(0,30,90,.6);transform:rotate(-3deg);width:78%}
.fvb__bw{margin-top:8px}
.fvb__bw .bw__body{aspect-ratio:16/11}
.fvb__chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.fvb__chips li{font:600 11px/1 var(--text);letter-spacing:.1em;text-transform:uppercase;padding:9px 12px;border:1px solid rgba(255,255,255,.25);border-radius:99px}
.fvb__ba{display:grid;gap:22px}
.fvb__ba figure{margin:0}
.fvb__ba figure>div{display:grid;grid-template-columns:1fr 1fr;gap:4px;border-radius:12px;overflow:hidden}
.fvb__ba img{aspect-ratio:3/4;object-fit:cover;width:100%}
.fvb__ba figcaption{font:600 13px/1.3 var(--text);margin-top:10px;opacity:.85}
.fvb__snap{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px var(--g) 24px;margin:0 calc(var(--g)*-1);scrollbar-width:none}
.fvb__snap::-webkit-scrollbar{display:none}
.fvb__snap>.phone{flex:0 0 min(62vw,260px);scroll-snap-align:center}
.fvb__note{font:500 14px/1.45 var(--text);color:var(--gy);margin:-18px 0 22px;max-width:36ch}
.fvb__steps{display:grid;gap:0;margin-bottom:26px;border-top:1px solid rgba(11,13,16,.14)}
.fvb__steps li{display:flex;gap:14px;align-items:baseline;padding:14px 0;border-bottom:1px solid rgba(11,13,16,.14);font:700 22px/1 var(--display);letter-spacing:-.03em}
.fvb__steps b{font:600 11px/1 var(--text);letter-spacing:.14em;color:var(--bl)}
.fvb__prices{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.fvb__prices img{border-radius:10px;box-shadow:0 12px 28px -14px rgba(11,13,16,.4)}
.fvb__t--stmt{font-size:clamp(32px,9vw,76px);letter-spacing:-.045em}
.fvb__sig{font:600 11px/1.6 var(--text);letter-spacing:.14em;text-transform:uppercase;opacity:.8;margin-top:22px}

@media (max-width:900px){
  .fvb__prices{grid-template-columns:repeat(3,1fr)}
}

@media (max-width:900px){
  .bj-story__grid{grid-template-columns:1fr}
}
@media (max-width:760px){
  .bj-needs li{grid-template-columns:2.6rem 1fr}
}
@media (prefers-reduced-motion:reduce){
  .bj-story__img{transform:none}
}

/* ---------- kontrast (WCAG AA): brandblå til flader og stor tekst — mørk blå eller blæk til lille tekst ---------- */
.bj-hero__tags li:first-child,.ty-b--p,.wl-h1 i,.ba__t--a,.bu-next{background:var(--bl-d);border-color:var(--bl-d)}
.bu-steps li.is-on b,.bu-steps li.is-done b{background:var(--bl-d)}
.bj-story__k,.bj-needs b,.lg-lbl,.fvb__tile figcaption,.fvb__k,.bu-sum .tot dd,.bu-opt em{color:var(--bl-d)}
.lg-c2 .lg-lbl,.fvb__tile--blue figcaption,.fvb--blue .fvb__k,.fvb--blue .fvb__sig,.fvb--blue .fvb__pal span,.cl-prim span,.bj-bridge .cap2--w .cap2__k{color:var(--bk);opacity:1}
.fvb__tile--gray figcaption{color:var(--gy)}
.fvb--blue .fvb__t span,.cl-prim em,.bj-bridge .cap2--w .cap2__t span{color:#fff;opacity:1}
.wl-pal span,.cl-band--gr span,.fvb__pal span{opacity:1}
.fvb__k{opacity:1}
.fvb--ink .fvb__k{color:#7bbaff}
.fvb__steps b{color:var(--bl-d)}
.fvb__pal li:nth-child(4),.wl-pal li:nth-child(4){color:#fff}
.fvb--blue .fvb__pal li:nth-child(4) span{color:#fff}

/* ============================== PORTRÆT (telefon + tablet stående) ============================== */
@media (orientation:portrait){
  /* logosystem */
  .lg-card{border-radius:calc(var(--pu)*3)}
  .lg-lbl{left:calc(var(--pu)*4);top:calc(var(--pu)*3.6);font-size:max(9px,calc(var(--ps)*2.4))}
  .lg-card>img{width:58%;top:58%}
  .lg-c4>img{width:52%;top:60%}
  .lg-c5{display:flex;align-items:flex-end;gap:calc(var(--pu)*2);padding:0 calc(var(--pu)*3.5) calc(var(--pu)*3.5)}
  .lg-c5 .lg-icon{position:static;flex:none;width:calc(var(--pu)*9)}
  .lg-c5 .lg-sizes{position:static;flex:none;gap:calc(var(--pu)*1.2)}
  .lg-sizes img{width:calc(var(--px)*var(--pu)*.17)}
  .lg-c6 .lg-tab{left:auto;right:calc(var(--pu)*4);top:calc(var(--pu)*9);width:calc(var(--pu)*52);border-radius:calc(var(--pu)*2);padding:calc(var(--pu)*1.5)}
  .lg-tab__dots b{width:calc(var(--pu)*1.4)}
  .lg-tab__t{font-size:max(9px,calc(var(--ps)*2.3));padding:calc(var(--pu)*1.1) calc(var(--pu)*1.6);gap:calc(var(--pu)*1.2)}
  .lg-tab__t .fv{width:calc(var(--pu)*3.6)}
  .lg-tab__url{font-size:max(9px,calc(var(--ps)*2.2));padding:calc(var(--pu)*1) calc(var(--pu)*1.6);margin-top:calc(var(--pu)*.8)}
  .lg-fav{left:calc(var(--pu)*4);bottom:calc(var(--pu)*5);right:auto;gap:calc(var(--pu)*2.4);flex-wrap:wrap;width:calc(var(--pu)*26)}
  .lg-fav .fv:nth-child(1){width:calc(var(--pu)*10)}
  .lg-fav .fv:nth-child(2){width:calc(var(--pu)*6)}
  .lg-fav span{flex-basis:100%;margin:calc(var(--pu)*.4) 0 0;font-size:max(9px,calc(var(--ps)*2.2))}
  .lg-lock{display:grid;place-items:center;transform:translateY(calc((1 - var(--s,0))*(50svh - var(--hdr) - var(--hc)*.13))) scale(calc(1 + (1 - var(--s,0))*.55))}
  .lg-lock img{width:58%}

  /* farve */
  .cl-flood{clip-path:circle(calc(var(--pu)*3 + var(--s,0)*var(--pu)*190) at 50% 52%)}
  .cl-lock{display:grid;place-items:center}
  .cl-lock img{width:100%}
  .cl-hex{top:calc(var(--hdr) + var(--hc)*.18 + var(--pu)*25.5)}
  .cl-hex b{font-size:calc(var(--ps)*17)}
  .cl-hex span{font-size:max(10px,calc(var(--ps)*2.7));margin-top:calc(var(--pu)*2)}
  .cl-small{height:auto}
  .cl-line{font-size:calc(var(--ps)*11.4);line-height:1;padding-bottom:calc(var(--pu)*1)}
  .cl-car{height:auto}
  .cl-prim{left:calc(50% - var(--pu)*44);top:calc(var(--hdr) + var(--pu)*4);gap:calc(var(--pu)*1)}
  .cl-prim em{font-size:calc(var(--ps)*6.4);margin-bottom:calc(var(--ps)*2)}
  .cl-prim span{font-size:max(10px,calc(var(--ps)*2.6))}
  .cl-prim b{font-size:calc(var(--ps)*17)}
  .cl-bands{--st:min(calc(var(--pu)*28),calc((100svh - var(--hdr) - var(--pu)*52)/4));height:calc(var(--st)*4)}
  .cl-band{height:calc(var(--st) + 40px);padding:calc(var(--pu)*4) calc(50% - var(--pu)*44) 0;border-radius:calc(var(--pu)*6) calc(var(--pu)*6) 0 0}
  .cl-band span{font-size:max(10px,calc(var(--ps)*2.6))}
  .cl-band b{font-size:calc(var(--ps)*11.6)}
  .cl-band--wh{bottom:calc(var(--st)*3)}
  .cl-band--bs{bottom:calc(var(--st)*2)}
  .cl-band--gr{bottom:calc(var(--st))}
  .cl-band--bk{bottom:calc(var(--pu)*-2);height:calc(var(--st) + var(--pu)*2)}
  /* typografi */
  .ty-aa{font-size:calc(var(--ps)*58)}
  .ty-spec b{font-size:calc(var(--ps)*7.6)}
  .ty-spec span{font-size:max(10px,calc(var(--ps)*2.8))}
  .ty-spec i{font-size:max(10px,calc(var(--ps)*2.8))}
  .ty-row{font-size:calc(var(--ps)*14.4);margin-bottom:calc(var(--pu)*1.4)}
  .ty-h{font-size:calc(var(--ps)*13.6)}
  .ty-p{font-size:calc(var(--ps)*4);max-width:none;margin-top:calc(var(--pu)*5)}
  .ty-btns{margin-top:calc(var(--pu)*5);gap:calc(var(--pu)*2.4)}
  .ty-b{font-size:calc(var(--ps)*3.6);padding:calc(var(--pu)*3.2) calc(var(--pu)*6.4)}
  .ty-hint{font-size:max(11px,calc(var(--ps)*3.2));padding-left:calc(var(--pu)*3)}
}
@media (orientation:portrait){
  /* visitkort */
  .bk-sf{perspective:calc(var(--pu)*170)}
  .bk-rig,.bk-twin{--cw:min(calc(var(--pu)*88),calc(var(--hc)*.42*1.5435));left:calc((100% - var(--cw))/2);width:var(--cw);height:auto;aspect-ratio:1003/650}
  .bk-rig{transform:translate3d(0,calc((1 - var(--s,0))*var(--pu)*44 + var(--flip,0)*(1 - var(--flip,0))*var(--pu)*-4 + var(--zz)*var(--pu)*-4),calc((1 - var(--s,0))*var(--pu)*-24 + var(--zz)*var(--pu)*10)) rotateX(calc(12deg + (1 - var(--s,0))*46deg - var(--zz)*12deg)) rotateY(calc(-10deg - var(--flip,0)*180deg + var(--back,0)*180deg + var(--zz)*10deg*(1 - var(--back,0)))) rotateZ(calc(-4deg + (1 - var(--s,0))*-8deg + var(--fan,0)*-2deg + var(--zz)*4deg))}
  .bk-twin{transform:translate3d(0,calc((1 - var(--s,0))*var(--pu)*18),0) rotate(2.5deg)}
  .bk-call{font-size:max(12px,calc(var(--ps)*3.7));column-gap:calc(var(--pu)*3)}
  .bk-call b{font-size:calc(var(--ps)*5.2)}
  .bk-call i,.bk-pin{width:calc(var(--pu)*6.4);font-size:calc(var(--ps)*3.2);margin-top:0}
  .bk-pin{margin:calc(var(--pu)*-3.2) 0 0 calc(var(--pu)*-3.2)}
  .bk-call--3{padding-left:0}
  /* flyer */
  .fl-rig{--fw:min(calc(var(--pu)*50),calc(var(--hc)*.82*.4708));width:var(--fw);height:auto;aspect-ratio:1168/2481;transform:translate3d(calc(var(--flip,0)*(50*var(--pu) - 4*var(--pu) - var(--fw)/2)),calc((1 - var(--s,0))*var(--pu)*30),calc((1 - var(--s,0))*var(--pu)*-10)) rotateX(calc(5deg + (1 - var(--s,0))*36deg)) rotateY(calc(-8deg - var(--flip,0)*180deg)) rotateZ(calc(-3deg + (1 - var(--s,0))*-6deg))}
  .fl-shadow{left:calc(var(--pu)*2)}
  .fl-loupe{--lw:calc(var(--pu)*40);height:var(--lw);border-width:calc(var(--pu)*1)}
  .fl-note{top:calc(var(--hdr) + var(--hc)*.04 + var(--pu)*40 + var(--pu)*7)}
  .fl-note__t{font-size:calc(var(--ps)*4.8);gap:calc(var(--pu)*3);align-items:flex-start;line-height:1.08}
  .fl-note__t i{width:calc(var(--pu)*6.4);font-size:calc(var(--ps)*3.2)}
}
@media (orientation:portrait){
  /* brandvæg: lodret bræt, kameraet kører ned gennem fire felter */
  .wall{width:calc(var(--pu)*100);height:calc(var(--pu)*390);transform:translate3d(calc(var(--bx,0)*var(--pu)),calc(var(--hdr) + var(--by,2)*var(--pu)),0) scale(var(--bs,1))}
  .wall .at{left:calc(var(--pu)*var(--px,0));top:calc(var(--pu)*var(--py,0));width:calc(var(--pu)*var(--pw,10));height:calc(var(--pu)*var(--ph,0))}
  .wall-layer{-webkit-mask-image:linear-gradient(180deg,transparent calc(var(--hdr) - 4px),#000 calc(var(--hdr) + var(--pu)*5),#000 calc(100% - var(--cap) - var(--pu)*2),transparent calc(100% - var(--cap) + var(--pu)*8));mask-image:linear-gradient(180deg,transparent calc(var(--hdr) - 4px),#000 calc(var(--hdr) + var(--pu)*5),#000 calc(100% - var(--cap) - var(--pu)*2),transparent calc(100% - var(--cap) + var(--pu)*8))}
  .wl{border-radius:calc(var(--pu)*3);transform:translate3d(0,calc(var(--by,0)*var(--dp,0)*var(--pu)*-.04),0) rotate(var(--rot,0deg))}
  .wl-insta-w{transform:rotate(var(--rot,0deg));filter:drop-shadow(0 calc(var(--pu)*1.4) calc(var(--pu)*2.4) rgba(11,13,16,.32))}
  .wl-card,.wl-fly{border-radius:calc(var(--pu)*1.6)}
  .wl-t{font-size:max(10px,calc(var(--ps)*2.8));padding-left:calc(var(--pu)*.5)}
  .wl-pal li{height:calc(var(--pu)*var(--r)*2);padding:0 calc(var(--pu)*3)}
  .wl-pal span{font-size:max(9px,calc(var(--ps)*2.2))}
  .wl-pal b{font-size:calc(var(--ps)*4.6)}
  .wl-aa{padding:calc(var(--pu)*3.4)}
  .wl-aa b{font-size:calc(var(--ps)*20)}
  .wl-aa span{left:calc(var(--pu)*4);bottom:calc(var(--pu)*3);font-size:max(9px,calc(var(--ps)*2.2))}
  .wl-h1{padding:calc(var(--pu)*4)}
  .wl-h1 p{font-size:calc(var(--ps)*4.2)}
  .wl-h1 i{left:calc(var(--pu)*4);bottom:calc(var(--pu)*4);font-size:calc(var(--ps)*3);padding:calc(var(--pu)*2.2) calc(var(--pu)*4.4)}
  /* print → pixel */
  .bb-card{height:auto;aspect-ratio:1003/650;transform:translate3d(0,calc((1 - var(--s,0))*var(--pu)*44),0) rotateX(calc((1 - var(--s,0))*30deg + 8deg*(1 - var(--grow,0)))) rotateZ(calc((1 - var(--s,0))*-8deg - 3deg*(1 - var(--grow,0)))) scale(calc(1 + var(--grow,0)*.08))}
  .bb-lock{display:grid;place-items:center}
  .bb-lock img{width:100%}
  .bb-line{font-size:calc(var(--ps)*11)}
  .bb-win{display:none}
  .bb-ph{display:block;height:auto;opacity:var(--s,0);transform:translateY(calc((1 - var(--s,0))*var(--pu)*10)) scale(calc(.9 + var(--s,0)*.1 + var(--fill,0)*.07));z-index:2}
  .bb-ph .phone{width:100%;aspect-ratio:560/1212}
}
@media (orientation:portrait){
  /* hero */
  .bj-hero__logo{transform:translateY(calc(var(--p,0)*var(--hc)*.13)) scale(calc(1 + var(--p,0)*.1))}
  .bj-hero__sub{font-size:calc(var(--ps)*8.4);margin-bottom:calc(var(--pu)*4);line-height:1.02}
  .bj-hero__tags{gap:calc(var(--pu)*2)}
  .bj-hero__tags li{font-size:max(10px,calc(var(--ps)*2.7));padding:calc(var(--pu)*2.4) calc(var(--pu)*3.4)}
  .bj-hero__meta{left:calc(50% - var(--pu)*44);bottom:4svh}
  /* hjemmesiden */
  .ws-win{height:calc(var(--hc)*var(--ph)/100)}
  .ws-win .bw{height:100%;display:flex;flex-direction:column}
  .ws-win .bw__body{aspect-ratio:auto;flex:1;min-height:0}
  .ws-call{display:none}
  .ws-rail{right:auto;left:calc(50% - var(--pu)*44);width:calc(var(--pu)*88);top:calc(var(--hdr) + var(--hc)*.845);flex-direction:row;flex-wrap:wrap;justify-content:flex-start;gap:calc(var(--pu)*1.8);transform:none}
  .ws-rail li{opacity:1;justify-content:center;font-size:max(10px,calc(var(--ps)*2.6));letter-spacing:.08em;padding:calc(var(--pu)*1.8) calc(var(--pu)*3);border:1px solid rgba(255,255,255,.22);border-radius:99px;color:rgba(255,255,255,.72);transition:background .4s,color .4s}
  .ws-rail li::after{display:none}
  .ws-rail li.is-on{background:#fff;color:#0a1014;border-color:#fff}
  .ws-rail li.is-done{color:#fff}
  /* før / efter: ét kort ad gangen */
  .ba{opacity:calc(var(--s,1)*(1 - var(--o,0)));border-radius:calc(var(--pu)*3)}
  .ba figcaption{font-size:max(12px,calc(var(--ps)*3.4));padding:calc(var(--pu)*8) calc(var(--pu)*3.6) calc(var(--pu)*3.4)}
  .ba__t{top:calc(var(--pu)*3);font-size:max(10px,calc(var(--ps)*2.6));padding:calc(var(--pu)*1.6) calc(var(--pu)*2.6)}
  .ba__t--b{left:calc(var(--pu)*3)}
  .ba__t--a{right:calc(var(--pu)*3)}
  .bj-ba .cap2--c{left:calc(var(--pu)*6);transform:translateY(calc((1 - var(--s,1))*var(--pu)*2));max-width:none;text-align:left}
  /* mobil */
  .mb-phone{--phw:min(calc(var(--pu)*66),calc(var(--hc)*.9/2.1635));left:calc((100% - var(--phw))/2);width:var(--phw);height:auto;aspect-ratio:520/1125}
  .mb-phone .phone{height:100%}
  .mb-ghost{display:none}
  .bk-ghost{font-size:calc(var(--ps)*30)}
  .mb-glow{height:calc(var(--pu)*120)}
  .mb-rail{display:none}
  /* booking */
  .bj-book .bu{--u:min(calc(var(--pu)*2.9),calc(var(--hc)/56));height:auto;top:calc(var(--hdr) + var(--hc)*.03);padding:calc(var(--u)*2)}
  .bj-book .bu-stage{flex:none;height:calc(var(--u)*34)}
  .bj-book .bu-opt{padding:calc(var(--u)*1) calc(var(--u)*1.3);margin-bottom:calc(var(--u)*.7)}
  .bj-book .bu-opt p{display:none}
  .bj-book .bu-steps li{font-size:0}
  .bj-book .bu-steps li b{font-size:calc(var(--u)*.8);width:calc(var(--u)*2.4)}
  .bj-book .bu-steps li.is-on{font-size:calc(var(--u)*.9)}
  /* afslutning */
  .be-lock{transform:translate(0,calc(var(--up,0)*var(--hc)*-.3)) scale(calc((.9 + var(--s,0)*.1)*(1 - var(--up,0)*.3)))}
  .be-stmt{font-size:calc(var(--ps)*10.4)}
  .be-sign{font-size:max(10px,calc(var(--ps)*2.7));gap:calc(var(--pu)*3)}
}

@media (orientation:portrait){.bj-hero{--cap:calc(var(--pu)*12)}}
@media (orientation:portrait) and (min-width:700px){.bj-hero__logo{--py:36!important}.bj-hero__txt{--py:57!important}}

/* mørk skærm mod mørk ramme: tynd lys kant, så skærmen tydeligt slutter ved telefonens kant */
.phone>img,.phone__scr{box-shadow:0 0 0 1px rgba(255,255,255,.2)}
@media (min-width:901px){.phone>img,.phone__scr{box-shadow:0 0 0 1.5px rgba(255,255,255,.42)}}
.phone>img,.phone__scr>img{background:linear-gradient(90deg,#dadada,#eaeaea 50%,#e7e7e5)}

/* brandvæg på mobil: ingen kamerabevægelse, rolig liste (desktop uændret) */
@media (max-width:760px){
.bj-wall.scene{height:auto}
.bj-wall>.pin{display:none}
.bj-wall>.flatview{display:block}
}
