/* ====================================================================================================
   vp-checkout.css – kurv og kasse (D33): Privat/Bedrift-bryter, fri frakt-melding, fraktforespørsel.
   ==================================================================================================== */
.vp-ctype{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:0 0 16px;padding:12px 16px;background:#fff;border:1px solid var(--vp-skifer-lys);border-radius:var(--vp-r-2)}
.vp-ctype__label{font-family:"Archivo Narrow","Archivo",sans-serif;font-size:.8125rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--vp-blekk-2)}
.vp-ctype .vp-ctype__btn{min-height:40px;padding:0 16px;border:1.5px solid var(--vp-skifer);border-radius:999px;background:#fff;color:var(--vp-blekk);font:inherit;font-weight:600;font-size:.9375rem;cursor:pointer;transition:background .12s,border-color .12s,color .12s;text-transform:none;letter-spacing:0}
.vp-ctype .vp-ctype__btn:hover{border-color:var(--vp-kobolt);color:var(--vp-kobolt)}
.vp-ctype .vp-ctype__btn.is-active,.vp-ctype .vp-ctype__btn[aria-pressed="true"]{background:var(--vp-blekk);border-color:var(--vp-blekk);color:var(--vp-is)}
.vp-ctype .vp-ctype__btn:focus-visible{outline:3px solid var(--vp-indigo);outline-offset:2px}
.vp-ctype__hint{flex:1 1 100%;margin:0;font-size:.875rem;color:var(--vp-blekk-2)}
.vp-ctype--locked{display:block;padding:12px 16px;background:var(--vp-isblaa,#DEE3FA);border-radius:var(--vp-r-2);color:var(--vp-blekk)}
.vp-ctype.is-busy{opacity:.6;pointer-events:none}
.vp-freenote{margin:0 0 16px;padding:10px 14px;border-radius:var(--vp-r-1);background:var(--vp-isblaa,#DEE3FA);color:var(--vp-blekk);font-size:.9375rem;font-weight:600}
.vp-freenote--ok{background:#EAF7EE;color:#124D27}
.vp-freenote--unknown{background:#FFF4D6;color:#5C4300}
.vp-freenote[hidden]{display:none}
.widget_shopping_cart .vp-freenote{font-size:.8125rem;padding:8px 10px;margin:8px 0}
/* Fraktforespørsel for bedrift (D34): knapp ved kassen og bunnark/dialog. I kurven bare for Bedrift. */
.vp-freight[data-vp-ctype-only=organization]{display:none}
body.vp-ctype-organization .vp-freight[data-vp-ctype-only=organization]{display:flex}
.vp-freight{margin:16px 0;padding:16px 18px;background:#fff;border:1px solid var(--vp-skifer-lys);border-radius:var(--vp-r-2);display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px}
.vp-freight__text{flex:1 1 320px;margin:0;color:var(--vp-blekk-2);font-size:.9375rem}
.vp-freight__text strong{color:var(--vp-blekk)}
.vp-freight .vp-freight__btn{min-height:44px;padding:0 18px;border:1.5px solid var(--vp-blekk);border-radius:var(--vp-r-1);background:#fff;color:var(--vp-blekk);font:inherit;font-weight:600;cursor:pointer;text-transform:none;letter-spacing:0}
.vp-freight .vp-freight__btn:hover{background:var(--vp-blekk);color:var(--vp-is)}
.vp-sheet.vp-sheet--freight{max-height:92vh;max-height:92dvh}
.vp-sheet--freight .vp-sheet__body{padding:16px 20px 24px}
.vp-sheet--freight .jet-form-builder{max-width:none}
.vp-cartsnap{margin:0 0 16px;padding:12px 14px;background:var(--vp-is);border-radius:var(--vp-r-1);font-size:.875rem}
.vp-cartsnap ul{margin:6px 0 0;padding:0 0 0 1rem}
.vp-cartsnap li{margin:2px 0}
@media (min-width:1025px){
  .vp-sheet.vp-sheet--freight{inset:50% auto auto 50%;transform:translate(-50%,-50%);width:min(720px,92vw);max-height:90vh;border-radius:var(--vp-r-3)}
}
/* Bunnark-/dialogstiler (delt med filtrene i vp-filters.css – kopiert hit fordi kurv/kasse ikke laster den) */
.vp-sheet{position:fixed;inset:auto 0 0 0;max-width:100%;width:100%;max-height:88vh;max-height:88dvh;margin:0;padding:0;border:0;border-radius:16px 16px 0 0;background:var(--vp-is);color:var(--vp-blekk);box-shadow:0 -12px 40px rgba(15,18,48,.25);display:none;flex-direction:column}
.vp-sheet[open]{display:flex}
.vp-sheet::backdrop{background:rgba(15,18,48,.45)}
.vp-sheet__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px 10px;border-bottom:1px solid var(--vp-skifer)}
.vp-sheet__head h2{margin:0;font-family:"Archivo Expanded","Archivo",sans-serif;font-weight:800;font-size:1.0625rem}
.vp-sheet .vp-sheet__close{display:inline-grid;place-items:center;width:44px;height:44px;margin:-6px -10px -6px 0;padding:0!important;border:0!important;background:transparent!important;color:var(--vp-blekk)!important;font-size:22px;line-height:1;cursor:pointer;border-radius:50%!important;box-shadow:none!important}
.vp-sheet .vp-sheet__close:hover{background:#fff!important;color:var(--vp-indigo)!important}
.vp-sheet__body{flex:1 1 auto;overflow:auto;padding:0 20px 8px;-webkit-overflow-scrolling:touch}
.vp-sheet__body .vp-filters.e-con{position:static;max-height:none;overflow:visible;padding:0}
.vp-sheet__body .vp-filters__title{display:none}
.vp-sheet__foot{display:flex;gap:10px;align-items:center;padding:12px 20px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--vp-skifer);background:var(--vp-is)}
.vp-sheet__foot .jet-remove-all-filters{flex:0 0 auto}
.vp-sheet .vp-sheet__show{flex:1 1 auto;min-height:48px;border:0;border-radius:var(--vp-r-1);background:var(--vp-indigo);color:#fff;font:inherit;font-weight:700;font-size:.9375rem;letter-spacing:.02em;cursor:pointer}
.vp-sheet .vp-sheet__show:hover{background:var(--vp-kobolt)}
.vp-sheet__show:focus-visible,.vp-sheet__close:focus-visible,.vp-toolbar__filter:focus-visible{outline:3px solid var(--vp-indigo);outline-offset:2px}
body.vp-sheet-open{overflow:hidden}

/* ====================================================================================================
   D61 – handlekurv og kasse i palett B. Kurv: JWB-mal «VP Kurv» (build-cart.php) med jet-cart-table/-totals;
   kasse: Kustom-rammen (#kco-wrapper) med vårt sammendrag i sidepanelet (class-checkout.php).
   ==================================================================================================== */

/* ---- felles: steg, meldinger ---- */
.vp-steps{display:flex;align-items:center;gap:0;margin:0;padding:0;list-style:none;font-family:"Archivo",system-ui,sans-serif}
.vp-steps__item{display:flex;align-items:center;gap:8px;color:var(--vp-blekk-3);font-size:.875rem;font-weight:600}
.vp-steps__item+.vp-steps__item::before{content:"";display:block;width:28px;height:1px;margin:0 10px;background:var(--vp-skifer)}
.vp-steps__item a{display:inline-flex;align-items:center;gap:8px;color:inherit;text-decoration:none}
.vp-steps__item a:hover .vp-steps__label{color:var(--vp-indigo);text-decoration:underline;text-underline-offset:3px}
.vp-steps__n{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;border:1.5px solid var(--vp-skifer);font-family:"Archivo Data","Archivo",sans-serif;font-size:.75rem;font-weight:700;background:#fff}
.vp-steps__item.is-current{color:var(--vp-blekk)}
.vp-steps__item.is-current .vp-steps__n{background:var(--vp-indigo);border-color:var(--vp-indigo);color:#fff}
.vp-steps__item.is-done{color:var(--vp-blekk-2)}
.vp-steps__item.is-done .vp-steps__n{background:var(--vp-isblaa);border-color:var(--vp-isblaa);color:var(--vp-indigo)}
.vp-steps__item.is-done .vp-steps__n::before{content:"✓"}
.vp-steps__item.is-done .vp-steps__n{font-size:0}
.vp-steps__item.is-done .vp-steps__n::before{font-size:.75rem}
@media (max-width:600px){.vp-steps__item:not(.is-current) .vp-steps__label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.vp-steps__item+.vp-steps__item::before{width:18px;margin:0 6px}}

body.vp-cart-page .woocommerce-message,body.vp-cart-page .woocommerce-info,body.vp-cart-page .woocommerce-error,
body.vp-checkout .woocommerce-message,body.vp-checkout .woocommerce-info:not(.woocommerce-form-coupon-toggle *),body.vp-checkout .woocommerce-error{
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;margin:0 auto 16px;max-width:1392px;padding:12px 16px 12px 18px;background:#fff;border:1px solid var(--vp-skifer-lys);border-left:4px solid var(--vp-indigo);border-radius:var(--vp-r-2);color:var(--vp-blekk);font-size:.9375rem;box-shadow:none}
body.vp-cart-page .woocommerce-error,body.vp-checkout .woocommerce-error{border-left-color:var(--vp-salg)}
body.vp-cart-page .woocommerce-message::before,body.vp-cart-page .woocommerce-info::before,body.vp-checkout .woocommerce-message::before,body.vp-checkout .woocommerce-info::before{display:none}
body.vp-cart-page .woocommerce-message .button,body.vp-checkout .woocommerce-message .button{order:2;margin:0;min-height:40px;padding:0 14px;border:1.5px solid var(--vp-blekk);border-radius:var(--vp-r-1);background:#fff;color:var(--vp-blekk);font-weight:600;font-size:.875rem;text-transform:none;letter-spacing:0}
body.vp-cart-page .woocommerce-message .button:hover,body.vp-checkout .woocommerce-message .button:hover{background:var(--vp-blekk);color:#fff}
body.vp-cart-page .woocommerce-notices-wrapper:empty{display:none}

/* ---- kurv: tabellen som kort ---- */
.vp-cart .jet-cart-table .shop_table,.vp-cart .woocommerce-cart-form .shop_table{display:block;width:100%;border:0;margin:0;background:transparent}
.vp-cart .shop_table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.vp-cart .shop_table tbody{display:block}
.vp-cart .shop_table tr.cart_item{display:grid;grid-template-columns:88px minmax(0,1fr) auto auto auto;grid-template-areas:"thumb name remove qty total" "thumb price remove qty total";column-gap:16px;row-gap:2px;align-items:center;padding:16px;margin:0 0 12px;background:#fff;border:1px solid var(--vp-skifer-lys);border-radius:14px}
.vp-cart .shop_table tr.cart_item td{display:block;padding:0;border:0;background:transparent;text-align:left;font-family:"Archivo",system-ui,sans-serif}
.vp-cart .shop_table tr.cart_item td::before{display:none}
.vp-cart .shop_table td.product-thumbnail{grid-area:thumb}
.vp-cart .shop_table td.product-thumbnail img{display:block;width:88px;height:88px;object-fit:contain;background:#fff;border:1px solid var(--vp-skifer-lys);border-radius:10px;padding:4px}
.vp-cart .shop_table td.product-name{grid-area:name;align-self:end;font-weight:600;font-size:1rem;line-height:1.3}
.vp-cart .shop_table td.product-name a{color:var(--vp-blekk);text-decoration:none}
.vp-cart .shop_table td.product-name a:hover{color:var(--vp-indigo);text-decoration:underline;text-underline-offset:3px}
.vp-cart .shop_table td.product-name .variation{margin:4px 0 0;font-size:.8125rem;color:var(--vp-blekk-3);display:flex;flex-wrap:wrap;gap:2px 8px}
.vp-cart .shop_table td.product-name .variation dt,.vp-cart .shop_table td.product-name .variation dd{margin:0;padding:0;float:none;font-weight:500}
.vp-cart .shop_table td.product-price{grid-area:price;align-self:start;font-size:.8125rem;color:var(--vp-blekk-3)}
.vp-cart .shop_table td.product-price .amount::before{content:"à ";}
.vp-cart .shop_table td.product-remove{grid-area:remove;align-self:center;justify-self:end}
.vp-cart .shop_table td.product-remove a.remove{display:inline-flex;align-items:center;gap:6px;width:auto;height:auto;min-height:32px;padding:0;color:var(--vp-blekk-3)!important;font-size:.8125rem;font-weight:500;line-height:1;border-radius:0;background:transparent!important;text-decoration:none}
.vp-cart .shop_table td.product-remove a.remove svg{display:none}
.vp-cart .shop_table td.product-remove a.remove::before{content:"×";font-size:1rem;line-height:1}
.vp-cart .shop_table td.product-remove a.remove::after{content:"Fjern"}
.vp-cart .shop_table td.product-remove a.remove:hover{color:var(--vp-salg)!important;text-decoration:underline;text-underline-offset:3px}
.vp-cart .shop_table td.product-quantity{grid-area:qty}
.vp-cart .shop_table td.product-subtotal{grid-area:total;min-width:96px;text-align:right;font-family:"Archivo Data","Archivo",sans-serif;font-variant-numeric:tabular-nums;font-weight:700;font-size:1.0625rem;color:var(--vp-blekk)}
.vp-cart .shop_table tr.cart_item br{display:none}
/* antall: −/+ */
.vp-cart .quantity.vp-qty{display:inline-flex;align-items:stretch;border:1.5px solid var(--vp-skifer);border-radius:999px;background:#fff;overflow:hidden}
.vp-cart .quantity.vp-qty input[type=number]{width:40px;min-height:40px;margin:0;padding:0;border:0;background:transparent;text-align:center;font-family:"Archivo Data","Archivo",sans-serif;font-weight:700;font-size:.9375rem;color:var(--vp-blekk);-moz-appearance:textfield;appearance:textfield}
.vp-cart .quantity.vp-qty input::-webkit-outer-spin-button,.vp-cart .quantity.vp-qty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.vp-cart .quantity .vp-qty__btn{width:36px;min-height:40px;padding:0;border:0;background:transparent;color:var(--vp-indigo);font-size:1.125rem;font-weight:600;line-height:1;cursor:pointer;transition:background-color .12s}
.vp-cart .quantity .vp-qty__btn:hover{background:var(--vp-isblaa)}
.vp-cart .quantity .vp-qty__btn:focus-visible,.vp-cart .quantity.vp-qty input:focus-visible{outline:3px solid var(--vp-indigo);outline-offset:-3px}
/* kupong + (skjult) oppdater-knapp */
.vp-cart .shop_table td.actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:4px 0 0;border:0;background:transparent}
.vp-cart .shop_table td.actions .coupon{display:flex!important;flex-wrap:nowrap!important;flex-direction:row!important;flex:1 1 320px;gap:8px;align-items:stretch;float:none!important}
.vp-cart .shop_table td.actions .coupon input.input-text{flex:1 1 160px;min-width:0;width:auto!important;min-height:46px;padding:0 14px;border:1.5px solid var(--vp-skifer);border-radius:var(--vp-r-1);background:#fff;font:inherit;font-size:.9375rem}
.vp-cart .shop_table td.actions .coupon input.input-text:focus-visible{outline:3px solid var(--vp-indigo);outline-offset:1px;border-color:var(--vp-indigo)}
.vp-cart .shop_table td.actions .coupon .button{min-height:46px;padding:0 18px;border:1.5px solid var(--vp-blekk);border-radius:var(--vp-r-1);background:#fff;color:var(--vp-blekk);font:inherit;font-weight:600;font-size:.9375rem;text-transform:none;letter-spacing:0;cursor:pointer}
.vp-cart .shop_table td.actions .coupon .button:hover{background:var(--vp-blekk);color:#fff}
.vp-cart .shop_table td.actions > p{margin:0}
.vp-cart .shop_table td.actions button[name=update_cart]{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap} /* kurven oppdateres automatisk (vp-checkout.js); knappen finnes for skjermleser/uten JS */
.vp-cart .shop_table td.actions br{display:none}
.vp-cart .woocommerce-cart-form .vp-ctype{margin:0 0 12px}

/* ---- kurv: sammendraget ---- */
.vp-cart-aside{position:sticky;top:calc(var(--vp-header-h,124px) + 16px)}
.vp-cart .cart_totals{width:100%;float:none;padding:22px 24px 24px;background:#fff;border:1px solid var(--vp-skifer-lys);border-radius:14px;box-shadow:var(--vp-shadow-1)}
.vp-cart .cart_totals h2{margin:0 0 12px;font-family:"Archivo Expanded","Archivo",sans-serif;font-weight:800;font-size:1.125rem;letter-spacing:-.01em;color:var(--vp-blekk)}
.vp-cart .cart_totals .shop_table{display:table;width:100%;border:0;margin:0 0 16px}
.vp-cart .cart_totals .shop_table tbody{display:table-row-group}
.vp-cart .cart_totals .shop_table tr{display:table-row;border-top:1px solid var(--vp-skifer-lys)}
.vp-cart .cart_totals .shop_table tr:first-child{border-top:0}
.vp-cart .cart_totals .shop_table th,.vp-cart .cart_totals .shop_table td{display:table-cell;padding:10px 0;border:0;background:transparent;font-family:"Archivo",sans-serif;font-size:.9375rem;color:var(--vp-blekk-2);vertical-align:top}
.vp-cart .cart_totals .shop_table th{width:38%;font-weight:500;text-align:left}
.vp-cart .cart_totals .shop_table td{text-align:right;color:var(--vp-blekk);font-family:"Archivo Data","Archivo",sans-serif;font-variant-numeric:tabular-nums}
.vp-cart .cart_totals .shop_table td::before{display:none}
.vp-cart .cart_totals .shipping td{font-family:"Archivo",sans-serif;font-size:.875rem;color:var(--vp-blekk-3)}
.vp-cart .cart_totals .order-total th,.vp-cart .cart_totals .order-total td{padding-top:14px;font-size:1.125rem;font-weight:700;color:var(--vp-blekk)}
.vp-cart .cart_totals .order-total small{display:block;font-size:.75rem;font-weight:500;color:var(--vp-blekk-3)}
.vp-cart .cart_totals .wc-proceed-to-checkout{padding:0;margin:0}
.vp-cart .cart_totals .wc-proceed-to-checkout > p{margin:0}
.vp-cart .cart_totals .checkout-button{display:flex!important;align-items:center!important;justify-content:center;gap:10px;line-height:1.2;width:100%;min-height:54px;margin:0;padding:0 18px;border:0;border-radius:var(--vp-r-1);background:var(--vp-indigo);color:#fff!important;font-family:"Archivo",sans-serif;font-weight:700;font-size:1.0625rem;text-transform:none;letter-spacing:0;text-decoration:none!important;transition:background-color .15s}
.vp-cart .cart_totals .checkout-button::after{content:"\00a0→";font-weight:500}
.vp-cart .cart_totals .checkout-button:hover{background:var(--vp-kobolt)}
.vp-cart .cart_totals .checkout-button:focus-visible{outline:3px solid var(--vp-indigo);outline-offset:3px}
.vp-cart .cart_totals .checkout-button br{display:none}
.vp-cart .cart_totals .vp-freight{margin:14px 0 0;padding:12px 14px;background:var(--vp-is);border-color:transparent}
.vp-cart .cart_totals .vp-freight__text{flex-basis:100%;font-size:.875rem}
.vp-cart .vp-trust{list-style:none;margin:0;padding:0 4px;display:grid;gap:8px;color:var(--vp-blekk-2)}
.vp-cart .vp-trust li{position:relative;padding-left:22px}
.vp-cart .vp-trust li::before{content:"";position:absolute;left:0;top:.45em;width:12px;height:6px;border-left:2px solid var(--vp-indigo);border-bottom:2px solid var(--vp-indigo);transform:rotate(-45deg)}
.vp-cart .elementor-widget-jet-cart-return-to-shop a,.vp-cart .return-to-shop a{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0;border:0;background:transparent!important;color:var(--vp-indigo)!important;font-family:"Archivo",sans-serif;font-weight:600;font-size:.9375rem;text-transform:none;letter-spacing:0;text-decoration:underline;text-underline-offset:4px}
.vp-cart .elementor-widget-jet-cart-return-to-shop a::before,.vp-cart .return-to-shop a::before{content:"←"}
.vp-cart .elementor-widget-jet-cart-return-to-shop a:hover,.vp-cart .return-to-shop a:hover{color:var(--vp-kobolt)!important}
.vp-cart .cross-sells h2,.vp-cart .jet-cart-cross-sells h2{font-family:"Archivo Expanded","Archivo",sans-serif;font-weight:800;font-size:1.375rem;letter-spacing:-.015em;margin:8px 0 16px}
/* klebrig knappelinje på mobil */
.vp-cart-bar{position:fixed;left:0;right:0;bottom:0;z-index:900;display:none;align-items:center;gap:12px;padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));background:#fff;border-top:1px solid var(--vp-skifer-lys);box-shadow:0 -8px 24px rgba(21,24,43,.08)}
.vp-cart-bar.is-visible{display:flex}
.vp-cart-bar__total{display:flex;flex-direction:column;line-height:1.15;font-family:"Archivo Data","Archivo",sans-serif;font-variant-numeric:tabular-nums;font-weight:700;font-size:1.0625rem;color:var(--vp-blekk)}
.vp-cart-bar__total small{font-family:"Archivo",sans-serif;font-weight:500;font-size:.75rem;color:var(--vp-blekk-3)}
.vp-cart-bar__btn{flex:1;display:inline-flex;align-items:center;justify-content:center;min-height:48px;border-radius:var(--vp-r-1);background:var(--vp-indigo);color:#fff!important;font-weight:700;font-size:1rem;text-decoration:none!important}
@media (min-width:1025px){.vp-cart-bar.is-visible{display:none}}
@media (max-width:1024px){.vp-cart-aside{position:static}body.vp-cart-page{padding-bottom:72px}}
@media (max-width:600px){
  .vp-cart .shop_table tr.cart_item{grid-template-columns:72px minmax(0,1fr) auto;grid-template-areas:"thumb name remove" "thumb price remove" "qty qty total";row-gap:8px;padding:14px}
  .vp-cart .shop_table td.product-thumbnail img{width:72px;height:72px}
  .vp-cart .shop_table td.product-remove{justify-self:start;padding-left:0}
  .vp-cart .shop_table td.product-subtotal{align-self:center}
  .vp-cart .cart_totals{padding:18px 16px 20px}
}

/* ---- kasse ---- */
body.vp-checkout h1.page-title,body.vp-checkout .page-title{display:none} /* temaets «Kasse»-tittel – vår topp har H1 */
body.vp-checkout .woocommerce{max-width:1392px;margin:0 auto;padding:40px 24px 72px}
.vp-checkout-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px 24px;margin:0 0 28px}
.vp-checkout-head__text{display:grid;gap:10px}
.vp-checkout-head__title{margin:0;font-family:"Archivo Expanded","Archivo",sans-serif;font-weight:800;font-size:clamp(1.75rem,3.4vw,2.5rem);line-height:1.05;letter-spacing:-.02em;color:var(--vp-blekk)}
body.vp-checkout #kco-wrapper{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:40px;align-items:start}
body.vp-checkout #kco-iframe{order:1;min-width:0;padding:8px 0 0;background:#fff;border:1px solid var(--vp-skifer-lys);border-radius:14px;overflow:hidden}
body.vp-checkout #kco-order-review{order:2;position:sticky;top:calc(var(--vp-header-h,124px) + 16px);display:grid;gap:14px;width:auto;float:none}
body.vp-checkout .vp-sum{margin:0;padding:0 24px 22px;background:#fff;border:1px solid var(--vp-skifer-lys);border-radius:14px;box-shadow:var(--vp-shadow-1)}
body.vp-checkout .vp-sum__head{display:flex;align-items:center;gap:10px;min-height:60px;list-style:none;cursor:pointer;color:var(--vp-blekk)}
body.vp-checkout .vp-sum__head::-webkit-details-marker{display:none}
body.vp-checkout .vp-sum__title{flex:1 1 auto;font-family:"Archivo Expanded","Archivo",sans-serif;font-weight:800;font-size:1.0625rem;letter-spacing:-.01em}
body.vp-checkout .vp-sum__count{margin-left:6px;font-family:"Archivo",sans-serif;font-weight:500;font-size:.8125rem;color:var(--vp-blekk-3)}
body.vp-checkout .vp-sum__total-mini{font-family:"Archivo Data","Archivo",sans-serif;font-variant-numeric:tabular-nums;font-size:1rem}
body.vp-checkout .vp-sum__chev{width:9px;height:9px;border-right:2px solid var(--vp-blekk-3);border-bottom:2px solid var(--vp-blekk-3);transform:rotate(45deg);transition:transform .15s;margin:0 4px 4px}
body.vp-checkout .vp-sum[open] .vp-sum__chev{transform:rotate(-135deg);margin:4px 4px 0}
body.vp-checkout .vp-sum__lines{list-style:none;margin:0;padding:0;border-top:1px solid var(--vp-skifer-lys)}
body.vp-checkout .vp-sum__line{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--vp-skifer-lys)}
body.vp-checkout .vp-sum__thumb{position:relative;display:block;width:56px;height:56px}
body.vp-checkout .vp-sum__img{display:block;width:56px;height:56px;object-fit:contain;border:1px solid var(--vp-skifer-lys);border-radius:8px;background:#fff;padding:2px}
body.vp-checkout .vp-sum__qty{position:absolute;top:-6px;right:-6px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--vp-blekk);color:#fff;font-family:"Archivo Data","Archivo",sans-serif;font-size:.6875rem;font-weight:700;line-height:20px;text-align:center}
body.vp-checkout .vp-sum__name{display:grid;gap:2px;min-width:0;font-family:"Archivo",sans-serif;font-size:.9375rem;font-weight:600;line-height:1.3}
body.vp-checkout .vp-sum__name a{color:var(--vp-blekk);text-decoration:none}
body.vp-checkout .vp-sum__name a:hover{color:var(--vp-indigo);text-decoration:underline;text-underline-offset:3px}
body.vp-checkout .vp-sum__name small{font-size:.75rem;font-weight:500;color:var(--vp-blekk-3)}
body.vp-checkout .vp-sum__price{font-family:"Archivo Data","Archivo",sans-serif;font-variant-numeric:tabular-nums;font-weight:700;font-size:.9375rem;white-space:nowrap}
body.vp-checkout .vp-sum__totals{display:grid;gap:8px;margin:14px 0 0;padding:0}
body.vp-checkout .vp-sum__totals > div{display:flex;justify-content:space-between;gap:12px;font-family:"Archivo",sans-serif;font-size:.9375rem;color:var(--vp-blekk-2)}
body.vp-checkout .vp-sum__totals dt,body.vp-checkout .vp-sum__totals dd{margin:0}
body.vp-checkout .vp-sum__totals dd{font-family:"Archivo Data","Archivo",sans-serif;font-variant-numeric:tabular-nums;color:var(--vp-blekk);text-align:right}
body.vp-checkout .vp-sum__shiplabel,body.vp-checkout .vp-sum__code{display:block;font-size:.75rem;color:var(--vp-blekk-3)}
body.vp-checkout .vp-sum__grand{margin-top:6px;padding-top:12px;border-top:1px solid var(--vp-skifer-lys);font-size:1.125rem!important;font-weight:700;color:var(--vp-blekk)!important}
body.vp-checkout .vp-sum__grand dd{font-size:1.25rem}
body.vp-checkout .vp-sum__tax{font-size:.8125rem!important;color:var(--vp-blekk-3)!important}
body.vp-checkout .vp-sum__tax dd{color:var(--vp-blekk-3)}
body.vp-checkout .vp-sum__note{margin:14px 0 0;font-size:.8125rem;color:var(--vp-blekk-3)}
body.vp-checkout .vp-sum__note a{color:var(--vp-indigo)}
/* sidepanelets øvrige kort: kupong, notater, fraktforespørsel, annen betalingsmåte */
body.vp-checkout #kco-order-review .vp-coupon,body.vp-checkout #kco-order-review #kco-extra-checkout-fields,body.vp-checkout #kco-order-review .vp-freight{margin:0;padding:16px 20px;background:#fff;border:1px solid var(--vp-skifer-lys);border-radius:14px}
body.vp-checkout #kco-order-review .woocommerce-additional-fields{margin:0;padding:0;border:0;background:transparent}
body.vp-checkout #kco-order-review .woocommerce-additional-fields__field-wrapper:empty,body.vp-checkout #kco-order-review .form-row.kco_shipping_data{display:none}
body.vp-checkout .vp-coupon__toggle{appearance:none;display:inline-flex;align-items:center;gap:8px;min-height:32px;padding:0;border:0;background:transparent;color:var(--vp-indigo);font:600 .9375rem/1.2 "Archivo",sans-serif;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
body.vp-checkout .vp-coupon__toggle::before{content:"+";display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--vp-isblaa);font-weight:700;text-decoration:none}
body.vp-checkout .vp-coupon__toggle[aria-expanded="true"]::before{content:"−"}
body.vp-checkout .vp-coupon__row{display:flex;gap:8px;margin:12px 0 0}
body.vp-checkout .vp-coupon__row[hidden]{display:none}
body.vp-checkout .vp-coupon__input{flex:1 1 120px;min-width:0;min-height:46px;padding:0 14px;border:1.5px solid var(--vp-skifer);border-radius:var(--vp-r-1);font:inherit;font-size:.9375rem}
body.vp-checkout .vp-coupon__input:focus-visible{outline:3px solid var(--vp-indigo);outline-offset:1px}
body.vp-checkout .vp-coupon__apply{min-height:46px;padding:0 18px;border:1.5px solid var(--vp-blekk);border-radius:var(--vp-r-1);background:#fff;color:var(--vp-blekk);font:600 .9375rem/1 "Archivo",sans-serif;cursor:pointer}
body.vp-checkout .vp-coupon__apply:hover{background:var(--vp-blekk);color:#fff}
body.vp-checkout .vp-coupon.is-busy .vp-coupon__row{opacity:.6;pointer-events:none}
body.vp-checkout .vp-coupon__msg:empty{display:none}
body.vp-checkout .vp-coupon__msg{margin:10px 0 0;padding:8px 12px;border-radius:var(--vp-r-1);font-size:.875rem;background:var(--vp-is);color:var(--vp-blekk)}
body.vp-checkout .vp-coupon__msg.is-error{background:#FBE9E7;color:#7A1F17}
body.vp-checkout .vp-coupon__msg.is-ok{background:#EAF7EE;color:#124D27}
body.vp-checkout .vp-sum__rmcoupon{color:var(--vp-indigo)}
body.vp-checkout .woocommerce-form-coupon-toggle .woocommerce-info{margin:0;padding:0;border:0;background:transparent;box-shadow:none;font-size:.9375rem;color:var(--vp-blekk)}
body.vp-checkout .woocommerce-form-coupon-toggle .woocommerce-info::before{display:none}
body.vp-checkout .woocommerce-form-coupon-toggle .showcoupon{color:var(--vp-indigo);font-weight:600;text-decoration:underline;text-underline-offset:3px}
body.vp-checkout form.checkout_coupon{margin:12px 0 0;padding:0;border:0;display:flex;gap:8px;flex-wrap:wrap}
body.vp-checkout form.checkout_coupon > p{margin:0}
body.vp-checkout form.checkout_coupon .form-row-first{flex:1 1 160px;width:auto;float:none}
body.vp-checkout form.checkout_coupon .form-row-last{flex:0 0 auto;width:auto;float:none}
body.vp-checkout form.checkout_coupon input.input-text{min-height:46px;padding:0 14px;border:1.5px solid var(--vp-skifer);border-radius:var(--vp-r-1);font:inherit;font-size:.9375rem}
body.vp-checkout form.checkout_coupon .button{min-height:46px;padding:0 16px;border:1.5px solid var(--vp-blekk);border-radius:var(--vp-r-1);background:#fff;color:var(--vp-blekk);font:inherit;font-weight:600;text-transform:none;letter-spacing:0}
body.vp-checkout form.checkout_coupon .button:hover{background:var(--vp-blekk);color:#fff}
body.vp-checkout #kco-order-review h3{margin:0 0 8px;font-family:"Archivo Expanded","Archivo",sans-serif;font-weight:800;font-size:1rem;letter-spacing:-.01em}
body.vp-checkout #kco-order-review .form-row{margin:0;padding:0}
body.vp-checkout #kco-order-review label{font-size:.875rem;font-weight:600;color:var(--vp-blekk-2)}
body.vp-checkout #kco-order-review textarea{min-height:84px;padding:10px 12px;border:1.5px solid var(--vp-skifer);border-radius:var(--vp-r-1);font:inherit;font-size:.9375rem}
body.vp-checkout #kco-order-review .vp-freight{display:grid;gap:10px}
body.vp-checkout #kco-order-review .vp-freight__text{flex-basis:auto;font-size:.875rem}
body.vp-checkout #kco-order-review .vp-freight .vp-freight__btn{justify-self:start}
body.vp-checkout .woocommerce-privacy-policy-text{max-width:1392px;margin:16px auto 0;font-size:.8125rem;color:var(--vp-blekk-3)}
body.vp-checkout #kco-order-review .vp-ctype{margin:0}
@media (max-width:1024px){
  body.vp-checkout #kco-wrapper{grid-template-columns:1fr;gap:16px}
  body.vp-checkout #kco-order-review{order:1;position:static}
  body.vp-checkout #kco-iframe{order:2}
  body.vp-checkout .vp-sum{padding:0 18px 18px}
}
@media (max-width:600px){body.vp-checkout .woocommerce{padding:24px 16px 56px}}
/* D61 rettinger etter første gjennomsyn: JWB strekker antall-feltet og kupongknappen – lås breddene */
.vp-cart .shop_table tr.cart_item{grid-template-columns:88px minmax(160px,1fr) auto auto auto}
.vp-cart .shop_table td.product-quantity{justify-self:start}
.vp-cart .quantity.vp-qty{width:auto!important;max-width:max-content}
.vp-cart .quantity.vp-qty input[type=number]{width:40px!important;min-width:40px;max-width:40px;flex:0 0 40px}
.vp-cart .shop_table td.actions .coupon input.input-text{flex:1 1 auto!important}
.vp-cart .shop_table td.actions .coupon .button{flex:0 0 auto!important;width:auto!important;white-space:nowrap}
@media (max-width:600px){.vp-cart .shop_table tr.cart_item{grid-template-columns:72px minmax(0,1fr) auto}}

/* ---- D63: WooCommerce-kassen for firmabrukere (faktura, ingen Kustom-ramme). Malen er JetWooBuilder «Utsjekk» (#6705):
   venstre kolonne skjema-widgeter, høyre ordreoversikt + betaling. Widgetenes egne stiler har høy spesifisitet → body-prefiks. ---- */
body.vp-firma.vp-checkout .woocommerce-form-coupon-toggle,body.vp-firma.vp-checkout form.checkout_coupon{display:none!important}
body.vp-firma.vp-checkout .elementor-6705 .elementor-element-3071ec2c{display:none} /* malens egen tittel «Utsjekk» – vi har allerede H1 */
body.vp-firma.vp-checkout .elementor-6705 h3.elementor-heading-title,body.vp-firma.vp-checkout .elementor-6705 h5.elementor-heading-title,body.vp-firma.vp-checkout .elementor-6705 .woocommerce-billing-fields h3{font:800 20px/1.2 "Archivo Expanded","Archivo",sans-serif!important;letter-spacing:-.01em;color:var(--vp-blekk)!important;margin:0 0 14px}
body.vp-firma.vp-checkout .elementor-6705 .form-row label{font:600 13px/1.3 "Archivo",sans-serif;color:var(--vp-blekk-3)}
body.vp-firma.vp-checkout .elementor-6705 .input-text,body.vp-firma.vp-checkout .elementor-6705 select,body.vp-firma.vp-checkout .elementor-6705 .select2-selection{min-height:46px;border:1.5px solid var(--vp-skifer)!important;border-radius:6px!important;background:#fff;padding:0 12px;font:400 15px/1.3 "Archivo",sans-serif}
body.vp-firma.vp-checkout .elementor-6705 textarea.input-text{padding:10px 12px;min-height:90px}
body.vp-firma.vp-checkout .elementor-6705 #ship-to-different-address{font:600 15px/1.3 "Archivo",sans-serif}
body.vp-firma.vp-checkout .elementor-widget-jet-checkout-order-review .shop_table{display:table!important;width:100%;border:1px solid var(--vp-skifer-lys)!important;border-radius:14px;overflow:hidden;background:#fff!important;font:400 15px/1.4 "Archivo",sans-serif;border-collapse:separate;border-spacing:0}
body.vp-firma.vp-checkout .elementor-widget-jet-checkout-order-review .shop_table th,body.vp-firma.vp-checkout .elementor-widget-jet-checkout-order-review .shop_table td{background:#fff!important;border:0!important;border-bottom:1px solid var(--vp-skifer-lys)!important;padding:12px 16px!important;color:var(--vp-blekk)!important;font-family:"Archivo",sans-serif!important;vertical-align:middle;text-align:left}
body.vp-firma.vp-checkout .elementor-widget-jet-checkout-order-review .shop_table thead th{font:600 12px/1.3 "Archivo Narrow","Archivo",sans-serif!important;letter-spacing:.1em;text-transform:uppercase;color:var(--vp-blekk-3)!important;background:var(--vp-is)!important}
body.vp-firma.vp-checkout .elementor-widget-jet-checkout-order-review .shop_table .product-total,body.vp-firma.vp-checkout .elementor-widget-jet-checkout-order-review .shop_table tfoot td{text-align:right!important;font-variant-numeric:tabular-nums;white-space:nowrap}
body.vp-firma.vp-checkout .elementor-widget-jet-checkout-order-review .shop_table tfoot th{font-weight:600!important;color:var(--vp-blekk-2)!important;white-space:nowrap}
body.vp-firma.vp-checkout .elementor-widget-jet-checkout-order-review .shop_table tr.order-total th,body.vp-firma.vp-checkout .elementor-widget-jet-checkout-order-review .shop_table tr.order-total td{font:800 18px/1.2 "Archivo Expanded","Archivo",sans-serif!important;border-bottom:0!important}
body.vp-firma.vp-checkout .elementor-widget-jet-checkout-order-review .shop_table .woocommerce-Price-amount{font-weight:600}
body.vp-firma.vp-checkout .elementor-widget-jet-checkout-order-review .shop_table small.tax_label,body.vp-firma.vp-checkout .elementor-widget-jet-checkout-order-review .shop_table .includes_tax{font-size:12px;color:var(--vp-blekk-3)}
body.vp-firma.vp-checkout #shipping_method{margin:0;padding:0;list-style:none;display:grid;gap:8px}
body.vp-firma.vp-checkout #shipping_method li{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.35;margin:0}
body.vp-firma.vp-checkout #shipping_method li label{font-weight:500;color:var(--vp-blekk);font-size:14px}
body.vp-firma.vp-checkout #shipping_method li label .woocommerce-Price-amount{font-weight:600}
body.vp-firma.vp-checkout #payment{background:transparent!important;border-radius:0}
body.vp-firma.vp-checkout #payment ul.payment_methods{margin:0;padding:0;border:0;list-style:none}
body.vp-firma.vp-checkout #payment ul.payment_methods li{padding:14px 16px;background:#fff;border:1px solid var(--vp-skifer-lys);border-radius:12px;font-weight:700;margin:0}
body.vp-firma.vp-checkout #payment ul.payment_methods li label{font:700 15px/1.3 "Archivo",sans-serif;color:var(--vp-blekk)}
body.vp-firma.vp-checkout #payment .payment_box{margin:8px 0 0!important;padding:0!important;background:transparent!important;font-weight:400;font-size:14px;color:var(--vp-blekk-2)}
body.vp-firma.vp-checkout #payment .payment_box::before{display:none}
body.vp-firma.vp-checkout #payment .place-order{padding:0!important;margin-top:16px}
body.vp-firma.vp-checkout #payment .woocommerce-privacy-policy-text p{font-size:13px;color:var(--vp-blekk-3);line-height:1.5}
body.vp-firma.vp-checkout #payment .woocommerce-terms-and-conditions-wrapper{margin:10px 0 14px;font-size:14px}
body.vp-firma.vp-checkout #payment button#place_order{width:100%;min-height:54px;border-radius:6px!important;background:var(--vp-indigo)!important;border:0!important;color:#fff!important;font:700 16px/1 "Archivo",sans-serif!important;text-transform:none!important;letter-spacing:0!important}
body.vp-firma.vp-checkout #payment button#place_order:hover{background:var(--vp-marine)!important}
body.vp-firma.vp-checkout .woocommerce-info{border-left-color:var(--vp-indigo)}
body.vp-firma.vp-checkout .woocommerce-message{margin-bottom:16px}
