@font-face{font-family:Montserrat;src:url(/assets/fonts/montserrat-0.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Montserrat;src:url(/assets/fonts/montserrat-1.woff2) format("woff2");font-style:normal;font-weight:500;font-display:swap}@font-face{font-family:Montserrat;src:url(/assets/fonts/montserrat-2.woff2) format("woff2");font-style:normal;font-weight:600;font-display:swap}@font-face{font-family:Montserrat;src:url(/assets/fonts/montserrat-3.woff2) format("woff2");font-style:normal;font-weight:700;font-display:swap}:root{--sand:#fbfaf7;--cream:#f6f4f0;--line:#e5e1d8;--ink:#12293d;--muted:#55677a;--blue:#1a385c;--blue-hover:#254a73;--tint:#edf3f8;--green:#2f6b4f;--red:#c0584a;--panel:440px;color-scheme:light;font-family:Montserrat,Segoe UI,sans-serif;font-size:15px;line-height:1.5;color:var(--ink);background:var(--sand)}@media(min-width:1700px){:root{--panel:480px}}*{box-sizing:border-box}html,body{height:100%;margin:0;overflow:hidden}body{display:flex;flex-direction:column;background:var(--sand)}h1,h2,h3,p{margin:0}button{font:inherit;color:inherit;cursor:pointer;border-radius:2px;touch-action:manipulation}button:disabled{cursor:not-allowed}a{color:var(--blue)}button:focus-visible,a:focus-visible,canvas:focus-visible{outline:2px solid var(--blue);outline-offset:3px}[hidden]{display:none!important}.topbar{height:64px;flex:none;display:flex;align-items:center;gap:20px;padding:0 24px;background:#fff;border-bottom:1px solid var(--line)}.topbar img{width:150px;height:auto}.topbar h1{font-size:20px;font-weight:600;letter-spacing:-.02em}.topbar h1 span{color:var(--muted);font-weight:500;margin-left:8px}.topbar-note{font-size:13px;color:var(--muted);margin-left:auto}.lukk{flex:none;width:44px;height:44px;margin-right:-10px;display:grid;place-items:center;border:0;background:none;color:var(--ink)}.lukk:hover{background:var(--tint)}.lukk svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.workspace{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) var(--panel);grid-template-rows:minmax(0,1fr)}.steg,.steg-neste{display:none}@media(min-width:901px)and (min-height:501px){.workspace{grid-template-columns:172px minmax(0,1fr) var(--panel)}.steg{display:flex;flex-direction:column;gap:2px;padding:16px 10px;background:#fff;border-right:1px solid var(--line);counter-reset:steg;overflow-y:auto;min-height:0}.steg button{display:flex;align-items:center;gap:10px;min-height:44px;padding:0 10px;border:0;background:none;text-align:left;font-size:14px;font-weight:500;color:var(--muted);white-space:nowrap}.steg button:not(.siste):before{counter-increment:steg;content:counter(steg);flex:none;width:24px;height:24px;border-radius:50%;border:1.5px solid currentColor;display:grid;place-items:center;font-size:12px;font-weight:600;line-height:1}.steg button:hover{background:var(--tint);color:var(--ink)}.steg button[aria-current=step]{color:var(--blue);font-weight:600;background:var(--tint)}.steg button[aria-current=step]:before{background:var(--blue);border-color:var(--blue);color:#fff}.steg .siste{margin-top:auto;border-top:1px solid var(--line);border-radius:0;padding-top:12px;min-height:56px}.options[data-steg] .group{display:none;margin-top:0}.options[data-steg=pakke] .group[data-steg=pakke],.options[data-steg=storrelse] .group[data-steg=storrelse],.options[data-steg=beis] .group[data-steg=beis],.options[data-steg=ovn] .group[data-steg=ovn],.options[data-steg=vinduer] .group[data-steg=vinduer],.options[data-steg=dor] .group[data-steg=dor],.options[data-steg=tilvalg] .group[data-steg=tilvalg],.options[data-steg=levering] .group[data-steg=levering],.options[data-steg=oppsummering] .group[data-steg=oppsummering]{display:block}.options[data-steg] .group+.group{margin-top:28px}.steg-neste{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:48px;margin-top:24px;padding:10px 16px;border:1px dashed var(--blue);background:#fff;color:var(--blue);font-size:14px;font-weight:600}.steg-neste:hover{background:var(--tint)}}.stage{position:relative;min-width:0;min-height:0;background:var(--cream);overflow:hidden}canvas{width:100%;height:100%;display:block;touch-action:none}.stage.statisk canvas{touch-action:pan-y;cursor:default}.loading{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2;display:flex;align-items:center;gap:12px;padding:16px 22px;background:#fbfaf7f5;border-radius:4px;font-size:14px;max-width:80%;box-shadow:0 8px 40px #12293d10}.spinner{width:18px;height:18px;border:2px solid var(--line);border-top-color:var(--blue);border-radius:50%;animation:spin .9s linear infinite;flex-shrink:0}@keyframes spin{to{transform:rotate(360deg)}}.camera-controls{position:absolute;left:50%;bottom:20px;transform:translate(-50%);display:flex;gap:2px;background:#fff;border:1px solid var(--line);padding:4px;border-radius:4px;box-shadow:0 3px 20px #12293d0a;max-width:calc(100% - 32px)}.camera-controls button{border:0;background:none;min-height:44px;padding:0 16px;font-size:13px;font-weight:600;color:var(--ink);white-space:nowrap}.camera-controls button:hover{background:var(--tint)}.camera-controls button[aria-pressed=true]{background:var(--blue);color:#fff}.camera-controls .divider{width:1px;align-self:stretch;margin:6px;background:var(--line)}.camera-controls .skog{display:inline-flex;align-items:center;gap:8px}.camera-controls .skog:before{content:"";width:9px;height:9px;border-radius:50%;border:1.5px solid currentColor;box-sizing:border-box}.camera-controls .skog[aria-pressed=true]:before{background:currentColor}.panel{display:flex;flex-direction:column;min-height:0;min-width:0;background:#fff;border-left:1px solid var(--line)}.options{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:20px 24px 28px;scrollbar-width:thin;scrollbar-color:#cfcac2 transparent}.group{margin-top:28px}.group:first-child{margin-top:0}.group h3{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px;display:flex;justify-content:space-between;align-items:baseline;gap:12px}.small-label{font-size:12px;font-weight:500;letter-spacing:0;text-transform:none;color:var(--muted)}.notice{font-size:13px;line-height:1.55;color:var(--muted);padding:10px 14px;border-left:2px solid #cad7e4;background:#f5f8fa;margin-top:10px}.notice.warning{background:#fbf4ef;border-color:#bf8b60;color:#75543a}.fine-print{font-size:12px;color:var(--muted);line-height:1.6;margin-top:14px}.packages{display:grid;gap:8px}.package{border:1px solid var(--line);background:#fff;padding:12px 14px;text-align:left;display:grid;grid-template-columns:1fr auto;gap:2px 12px;min-height:44px;align-items:center;position:relative}.package:hover{border-color:var(--blue)}.package[aria-pressed=true]{border-color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue);background:#f7f9fb}.package-name{font-size:15px;font-weight:600;grid-column:1;grid-row:1}.package-tag{font-size:12px;font-weight:600;color:var(--blue);margin-left:8px}.package-desc{font-size:13px;color:var(--muted);grid-column:1}.package-price{font-size:14px;font-weight:600;grid-column:2;grid-row:1/3;white-space:nowrap}.package-state{font-size:13px;color:var(--muted);margin-top:10px;line-height:1.5}.package-state strong{color:var(--green);font-weight:600}.chips{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.chip{border:1px solid var(--line);background:#fff;min-height:52px;padding:8px 10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;text-align:center}.chip:hover{border-color:var(--blue)}.chip[aria-pressed=true]{border-color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue);background:#f7f9fb}.chip-name{font-size:15px;font-weight:600;line-height:1.3}.chip-price{font-size:13px;color:var(--muted)}.chip-folk{font-size:12px;color:var(--muted)}.size-slider{margin-top:10px}.size-slider input{width:100%;height:44px;margin:0;accent-color:var(--blue);cursor:pointer}.size-readout{font-size:14px;font-weight:600;text-align:center}.choice-stack{display:grid;gap:8px}.choice{border:1px solid var(--line);background:#fff;padding:11px 14px;text-align:left;display:grid;grid-template-columns:1fr auto;gap:2px 12px;align-items:center;min-height:44px;width:100%}.choice:hover:not(:disabled){border-color:var(--blue)}.choice:disabled{opacity:.5}.choice[aria-pressed=true]{border-color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue);background:#f7f9fb}.choice-title{font-size:15px;font-weight:600;line-height:1.4;grid-column:1;grid-row:1}.choice-desc{font-size:13px;color:var(--muted);line-height:1.5;grid-column:1}.choice-price{font-size:14px;font-weight:500;color:var(--muted);white-space:nowrap;grid-column:2;grid-row:1/3;justify-self:end}.choice[aria-pressed=true] .choice-price{color:var(--ink)}.choice-diagram{grid-column:1/-1}.choice:has(.choice-img){grid-template-columns:auto 1fr auto;gap:2px 12px}.choice-img{grid-column:1;grid-row:1/3;width:56px;height:56px;object-fit:contain;background:#fff;border:1px solid var(--line);border-radius:2px}.choice:has(.choice-img) .choice-title,.choice:has(.choice-img) .choice-desc{grid-column:2}.choice:has(.choice-img) .choice-price{grid-column:3}.layout-diagram{display:flex;height:36px;gap:3px;margin-top:6px}.layout-diagram span{background:#d8e2eb;border:1px solid #b7cadb;display:grid;place-items:center;font-size:12px;color:var(--blue);padding:0 6px;overflow:hidden;white-space:nowrap}.layout-diagram span.sauna{background:#eae0cd;border-color:#d3c6a9;color:#655840}.layout-diagram span.terrace{background:#f7f4ed;border-color:#e4dac7;color:#78684e}.swatches{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.swatch{border:1px solid transparent;background:transparent;padding:6px 2px;font-size:12px;color:var(--muted);line-height:1.3;display:flex;flex-direction:column;align-items:center;gap:8px;min-height:44px}.swatch span{display:block;width:38px;height:38px;border-radius:50%;outline:1px solid #00000018;outline-offset:3px}.swatch:hover{color:var(--ink)}.swatch[aria-pressed=true] span{outline:2px solid var(--blue)}.swatch[aria-pressed=true]{color:var(--blue);font-weight:600}.toggle{display:flex;gap:14px;align-items:center;padding:12px 0;border:0;border-bottom:1px solid var(--line);background:transparent;width:100%;text-align:left;min-height:44px}.toggle:last-child{border-bottom:0}.toggle-text{flex:1;min-width:0}.toggle-title{font-size:15px;font-weight:600;display:block;line-height:1.4}.toggle-desc{font-size:13px;color:var(--muted);display:block;margin-top:2px;line-height:1.5}.toggle-price{font-size:14px;display:block;margin-top:3px;color:var(--muted)}.toggle[aria-pressed=true] .toggle-price{color:var(--ink)}.switch{flex:none;width:44px;height:24px;border-radius:12px;background:#cfd5db;padding:3px;transition:background .15s}.switch:before{content:"";display:block;background:#fff;width:18px;height:18px;border-radius:50%;transition:transform .15s}.toggle[aria-pressed=true] .switch{background:var(--blue)}.toggle[aria-pressed=true] .switch:before{transform:translate(20px)}.toggle:disabled{opacity:1;cursor:default}.toggle:disabled .switch{opacity:.55}.spec-row{display:flex;justify-content:space-between;gap:16px;font-size:14px;line-height:1.5;padding:8px 0;border-bottom:1px solid var(--line)}.spec-row span:last-child{white-space:nowrap;text-align:right}.spec-row.discount{color:var(--green)}.spec-row.total{font-size:18px;font-weight:600;border-bottom:0;padding-top:14px}.panel-footer{flex:none;border-top:1px solid var(--line);padding:14px 24px 16px;background:#fff}.price-row{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:12px}.price-value{font-size:32px;font-weight:600;letter-spacing:-.03em;line-height:1.1;white-space:nowrap}.price-value small{font-size:18px;font-weight:400}.venter{visibility:hidden}.price-meta{display:flex;flex-direction:column;align-items:flex-end;gap:2px;font-size:13px;color:var(--muted);text-align:right;line-height:1.4}.saving{color:var(--green);font-weight:600}.saving:empty{display:none}.primary{width:100%;min-height:52px;padding:12px 20px;border:2px solid var(--blue);background:var(--blue);color:#fff;font-size:15px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:12px}.primary:hover:not(:disabled){background:var(--blue-hover);border-color:var(--blue-hover)}.primary:disabled{opacity:.6}.tilbud-status{font-size:13px;line-height:1.5;margin-top:10px;padding:8px 12px;border-left:2px solid var(--line);background:var(--cream)}.tilbud-status.ok{color:var(--green);border-color:var(--green);background:#eef5f1}.tilbud-status.error{color:#8a3b30;border-color:var(--red);background:#fbf1ee}.tilbud-status a{font-weight:600}@media(max-width:900px),(max-height:500px){:root{--panel:340px}.workspace{grid-template-columns:minmax(0,1fr) var(--panel)}.topbar{height:52px;gap:12px;padding:0 16px}.topbar img{width:100px}.topbar h1{font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.topbar h1 span{margin-left:4px}.topbar-note{display:none}.lukk{margin-left:auto}.stage{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:minmax(0,1fr) auto}canvas{grid-column:1/-1;grid-row:1;height:100%;min-height:0}.stage>.sb-plan{bottom:48px}.camera-controls{display:contents}.camera-controls .divider{display:none}.camera-controls button{position:relative;grid-row:2;min-height:48px;padding:0 4px;font-size:13px;background:#fff;border-top:1px solid var(--line);border-radius:0}.camera-controls button:hover{background:#fff}.camera-controls button[aria-pressed=true]{background:var(--blue)}.camera-controls .skog{position:absolute;grid-row:auto;top:10px;right:10px;width:84px;min-height:44px;justify-content:center;border:1px solid var(--line);border-radius:4px;background:#fffffff0;box-shadow:0 3px 14px #12293d14}.camera-controls #maal{right:10px}.stage:has(.sb-plan:not([hidden])) .skog{display:none}.options{padding:16px 16px 20px}.group{margin-top:22px}.panel-footer{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 14px;padding:10px 16px calc(10px + env(safe-area-inset-bottom))}.price-row{flex-direction:column;align-items:flex-start;gap:2px;margin:0;min-width:0}.price-value{font-size:26px}.price-value small{font-size:15px}.price-meta{flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:0 8px;font-size:12px;text-align:left}.primary{width:auto;min-height:48px;padding:10px 18px;max-width:52vw}.tilbud-status{grid-column:1/-1;margin-top:4px}}@media(max-width:900px)and (min-height:501px){.workspace{grid-template-columns:minmax(0,1fr);grid-template-rows:48% minmax(0,1fr);transition:grid-template-rows .25s ease}.workspace.krympet{grid-template-rows:28% minmax(0,1fr)}.workspace.krympet .camera-controls .skog{display:none}.panel{border-left:0;border-top:1px solid var(--line)}.workspace:has(.sb-plan:not([hidden])){grid-template-rows:64% minmax(0,1fr)}}@media(max-width:380px){.price-value{font-size:23px}.primary{padding:10px 14px}}@media(max-height:500px){.topbar{height:44px}.options{padding-top:12px}}@media(prefers-reduced-motion:reduce){.spinner{animation-duration:1.5s}.switch,.switch:before,.workspace{transition-duration:.01s}}.ar-knapp{position:absolute;top:16px;left:16px;z-index:3;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;border:1px solid var(--line);border-radius:4px;background:#fffffff0;box-shadow:0 3px 14px #12293d14;font-size:13px;font-weight:600;color:var(--ink)}.ar-knapp:hover:not(:disabled){background:var(--tint)}.ar-knapp svg{width:18px;height:18px;fill:currentColor}.ar-knapp.ar-fremhevet{background:var(--blue);border-color:var(--blue);color:#fff}.ar-knapp.ar-fremhevet:hover:not(:disabled){background:var(--blue-hover)}.ar-knapp:disabled{opacity:.7}.stage:has(.sb-plan:not([hidden])) .ar-knapp{display:none}.ar-qr{position:absolute;top:68px;left:16px;z-index:3;width:260px;padding:16px;background:#fff;border:1px solid var(--line);border-radius:4px;box-shadow:0 8px 40px #12293d1a}.ar-qr svg{display:block;width:100%;height:auto}.ar-qr p{margin-top:10px;font-size:13px;line-height:1.5;color:var(--muted)}.ar-qr strong{display:block;color:var(--ink);font-weight:600}.ar-xr{position:fixed;inset:auto 0 0;display:flex;align-items:center;gap:12px;padding:16px 16px calc(16px + env(safe-area-inset-bottom));font-family:Montserrat,Segoe UI,sans-serif;font-size:15px;color:#fff;background:linear-gradient(transparent,#12293dcc)}.ar-xr p{flex:1}.ar-xr button{min-height:44px;padding:0 18px;border:0;border-radius:2px;background:#fff;color:var(--ink);font-weight:600}@media(max-width:900px),(max-height:500px){.ar-knapp{top:10px;left:10px}}
