/*
 * custom-styles/css/head.css  --  nattelyst.dk
 * Migrated from DB (Minimog custom CSS + Elementor head snippets).
 * Loaded in <head> via custom-styles/main.php. Order preserved. Conditions noted
 * per block are NOT yet enforced -- everything loads site-wide for now.
 */

/* ============================================================
   Minimog theme custom CSS  --  was: minimog_options.custom_css (printed in <head>)
   ============================================================ */

.service-point-selector-error {
    margin-top: 10px;
}

a[href="#popup-premiere-sovngaranti"]::after,
a[href="#popup-snore-guard-sovngaranti"]::after,
a[href="#popup-grind-guard-tilfredshedsgaranti"]::after {
  content: "?";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 0.9em;
  height: 0.9em;
  margin-left: 0.1em;
  font-size: 0.6em;
  padding: 6px;
  font-weight: 700;
  line-height: 1;
  color: inherit;
  background-color: transparent;
  border: 1px solid currentColor;
  border-radius: 50%;
  vertical-align: super;
  text-decoration: none;
}


/* Undo Minimog's column layout on shipping list items */
.woocommerce-shipping-methods li,
#shipping_method li,
ul#shipping_method li {
    flex-direction: row !important;
    align-items: center !important;
    min-height: 0 !important;
    padding: 6px 0 !important;
    line-height: 1.3 !important;
}

/* Keep the label on a single line with the radio */
.woocommerce-shipping-methods li label,
#shipping_method li label {
    display: inline !important;
    line-height: 1.3 !important;
    margin: 0 !important;
}

/* Keep shipping name and delivery time together, no wrap between them */
.woocommerce-shipping-methods .shipping-name,
#shipping_method .shipping-name {
    display: inline !important;
}

/* Delivery time styling */
.bc-delivery-time {
    font-size: 0.85em !important;
    color: #7a7a7a !important;
    font-weight: 400 !important;
    margin-left: 4px;
    white-space: nowrap;
    display: inline !important;
}


/* ============================================================
   Checkout shipping methods -- carrier cards (added 27.08.2026)

   Markup: woocommerce/cart/cart-shipping.php  ->  ul#shipping_method.calio-shipcards
   Logo:   per-method "Logo" setting, rendered by calio_shipcard_logo_html() in shipping.php

   Shipped to all traffic -- no split test. The plain-list rules ABOVE are the previous
   design; this block overrides them wherever the two overlap, so they are now dead weight
   and can be dropped in a later pass.

   !important below only mirrors the !important the old block already uses on the same
   properties (higher specificity decides the winner) -- it is not new stacking.
   ============================================================ */
/* The shipping row's value cell inherits the summary table's 5px cell padding
   (.wc-checkout-review-order-table td{padding:0 5px} in Minimog), which indents the
   cards away from the label above them. Only this row -- the other totals rows keep it. */
tr.cart-shipping > td.cart-totals-value {
    padding-left: 0;
}

ul#shipping_method.calio-shipcards {
    display: flex;
    flex-direction: column;
    gap: 10px;
    max-width: 480px;
    margin: 0 0 14px;
    padding: 0;
    list-style: none;
}

ul#shipping_method.calio-shipcards > li {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    column-gap: 12px;
    max-width: none;
    padding: 12px 14px !important;
    line-height: 1.35 !important;
    border: 1px solid #DDE3EC;
    border-radius: 10px;
    background: #FFFFFF;
    cursor: pointer;
    transition: border-color .15s ease, box-shadow .15s ease, background-color .15s ease;
}

ul#shipping_method.calio-shipcards > li:hover {
    border-color: #C4CFDF;
}

/* Selected card. Decoration only -- the radio still carries the real state, and the
   coloured radio dot is what actually reads as "selected", so the border stays soft. */
ul#shipping_method.calio-shipcards > li:has(input.shipping_method:checked) {
    border-color: rgba(25, 52, 92, .35);
    background: #19345C0D;
}

ul#shipping_method.calio-shipcards > li > input[type="radio"] {
    width: 18px;
    height: 18px;
    margin: 0;
    accent-color: #5097FF;
}

ul#shipping_method.calio-shipcards > li > label {
    display: grid !important;
    grid-template-columns: auto auto 1fr auto;
    grid-template-areas:
        "logo name badge price"
        "logo time time  price";
    align-items: center;
    column-gap: 10px;
    margin: 0 !important;
    cursor: pointer;
}

/* Whatever the shipping plugins print after the rate (Shipmondo pakkeshop-vaelger,
   business message, errors) becomes a full-width section at the bottom of the card,
   separated by a hairline instead of by a box of its own. */
ul#shipping_method.calio-shipcards > li > *:not(input):not(label):not(br) {
    grid-column: 1 / -1;
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid #DDE3EC;
}

ul#shipping_method.calio-shipcards .calio-shipcard-logo {
    grid-area: logo;
    width: 46px;
    height: 30px;
    object-fit: contain;
    object-position: left center;
}

ul#shipping_method.calio-shipcards .shipping-name {
    grid-area: name;
    display: block !important;
    width: auto;
    min-width: 0;
    font-weight: 600;
}

ul#shipping_method.calio-shipcards .bc-delivery-time {
    grid-area: time;
    display: block !important;
    margin-left: 0;
    white-space: normal;
}

ul#shipping_method.calio-shipcards .woocommerce-Price-amount {
    grid-area: price;
    justify-self: end;
    font-weight: 600;
    white-space: nowrap;
}

/* "Gratis" badge next to the method name on 0 kr rates (calio_shipcard_free_html()).
   Brand button pair: peach fill, navy text. */
ul#shipping_method.calio-shipcards .calio-shipcard-badge {
    grid-area: badge;
    justify-self: start;
    padding: 2px 8px;
    border-radius: 999px;
    background: #FFC1A7;
    color: #19345C;
    font-size: .72em;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: .02em;
    white-space: nowrap;
}

/* --- Shipmondo pakkeshop-vaelger, seamless inside the card -------------------
   Plugin markup (Shipmondo 5.x, verified live 27.08.2026 -- selector_type-modal):
     .shipmondo-original > .shipmondo_service_point_selection
        > .selected_service_point.service_point   (.header .name + .location, chevron via :after)
        > .powered_by_shipmondo
        > .shipmondo-modal.service_points_modal   (fixed overlay)
        > .hidden_chosen_shop                     (the posted shipmondo[0] inputs)
   Only the CHOSEN method renders a selector, so this only ever shows in the selected
   card. It keeps a border of its own so it reads as a control you can click -- the
   separator hairline the generic rule adds would be one line too many, so it goes.
   The .shipmondo-shipping-field-wrap selector is the pre-5.x wrapper, harmless if unused. */
ul#shipping_method.calio-shipcards > li > .shipmondo-original {
    border-top: 0;
    padding-top: 0;
}

ul#shipping_method.calio-shipcards .shipmondo_service_point_selection,
ul#shipping_method.calio-shipcards .shipmondo-shipping-field-wrap {
    max-width: none;
    margin: 0;
}

ul#shipping_method.calio-shipcards .selected_service_point {
    border: 1px solid #C4CFDF;
    border-radius: 8px;
    padding: 8px 34px 8px 10px;
    background: #FFFFFF;
}

ul#shipping_method.calio-shipcards .selected_service_point:hover {
    border-color: #19345C;
    background: #F2F5FA;
}

/* The plugin's chevron is the only "click me" affordance -- give it more contrast. */
ul#shipping_method.calio-shipcards .selected_service_point:after {
    opacity: .85;
}

ul#shipping_method.calio-shipcards .selected_service_point .header {
    margin-bottom: 2px;
}

ul#shipping_method.calio-shipcards .selected_service_point .header .name {
    font-weight: 600;
}

/* Both copies -- the one under the picker and the one in the modal footer. Ungated:
   the store wanted it gone regardless of which arm a visitor is in. */
ul#shipping_method.calio-shipcards .powered_by_shipmondo {
    display: none;
}

/* "Indtast leveringsadressen ..." / "ingen pakkeshop tilgaengelig" */
ul#shipping_method.calio-shipcards > li > .service-point-selector-error {
    font-size: .85em;
    color: #7A7A7A;
}

/* NOT gated -- a bug fix, not part of the tested design, so it applies in both arms.
   free_shipping is a carrier-less trigger method; shipping.php drops it from the rate
   list whenever another 0 kr option is left, and this hides the leftover row in the one
   case where it can still appear (free-shipping coupon, no other free option). */
ul#shipping_method.calio-shipcards > li.calio-shipmethod-free_shipping6 {
    display: none !important;
}

@media only screen and (max-width: 600px) {
    ul#shipping_method.calio-shipcards > li {
        padding: 10px 12px !important;
        column-gap: 10px;
    }

    ul#shipping_method.calio-shipcards .calio-shipcard-logo {
        width: 38px;
        height: 26px;
    }
}




.sendtfradk {
    display: flex !important;
    /* "Alle ordrer sendes fra vores lager i Danmark". Elementor puts margin-top:-15px on the
       container and nothing below it, so the line sat loose under the quantity row and glued to
       the block after it. Desktop pulls it a little closer to the button; mobile, where the rows
       are tighter, gives it back some air above. Both get room below. !important for the
       same reason as the display above: Elementor's own .elementor-element-<id> rule is 0,3,0. */
    margin-top: -24px !important;
    margin-bottom: 14px !important;
}

@media only screen and (max-width: 767px) {
    .sendtfradk {
        margin-top: -8px !important;
        margin-bottom: 16px !important;
    }
}




.backtocart {
    display: none !important;
}


.nl-highlight-1 {
    font-weight: 700;
    font-style: italic;
}
.nl-highlight-2 {
    color: #5097FF;
}

a.header-icon.header-login-link.hint--bounce.hint--bottom.style-icon.icon-display--icon.open-modal-login {
    display: none;
}

	/*@media only screen and (max-width: 768px) {
			 .swiper-thumbnail-wrap img
			{
				aspect-ratio: 1 / 1;
				object-fit: cover;
			}
		}*/


.single-product .woo-single-gallery.thumbs-slider-horizontal .minimog-thumbs-swiper img {
    height: 135.13px;
}
		
		body.test-css-51622-2 .mundtape-garanti {
			display: none !important;
		}
		
		body.test-css-56765-1 .topbar-wrap .uden-link {
			display: none !important;
		}
		
		body.test-css-56765-2 .topbar-wrap .med-link {
			display: none !important;
		}
		
		body.test-css-56765-2 .topbar-wrap .uden-link {
			display: block !important;
		}
		
		

/*@media (max-width: 767px) {
    .minimog-product .product-thumbnail .product-action {
        display: flex !important;
    }
    
    .minimog-product:not(.style-list).group-style-01 .product-thumbnail .product-action.woocommerce_loop_add_to_cart_wrap {
            opacity: 1;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    }
    
    .minimog-product:not(.style-list).group-style-01 .product-thumbnail .woocommerce_loop_add_to_cart_wrap a {
    padding: 0 5px;
    font-size: 80%;
}
    
}*/


/*body.test-css-66843-2 .tab-buttons {
    display: none !important;
}

body.test-css-66843-2 .tab-content {
    padding: 0 !important;
}

body.test-css-66843-2 .custom-purchase-tabs {
    border: none !important;
    margin-bottom: 0 !important;
}

body.test-css-66843-1 .tab-buttons {
    display: flex !important;
}*/


/* A/B test 141653 (Skjul "På lager" på arkivsider) (2026-10-03): variation 2 hides the in-stock line on
   shop/category product cards ("Udsolgt" still shows). Variation 1 = control, unchanged. */
body.test-css-141653-2.archive .loop-product-availability.in-stock {
    display: none !important;
}

/* A/B test 7002430 (Galleri-thumbnails på mobil ved nr. 1) (2026-10-25): variation 2 hides the product
   gallery thumbnails under the main image on mobile. Variation 1 = control, unchanged. */
@media (max-width: 767px) {
    body.test-css-7002430-2 .woo-single-gallery .minimog-thumbs-swiper-wrap {
        display: none !important;
    }
}

body.has-subscription .cart-goal-wrap {
    display: none !important;
}

body.test-css-56704-1 .minimog-tabs__content {
    height: unset !important;
}

body.test-css-56704-1 .minimog-tabs__content .tab-content:not(.active) {
    pointer-events: unset;
}

body.test-css-56704-1 .minimog-tabs__content .tab-content:not(.active)>* {
    pointer-events: unset !important;
}

body.test-css-56704-1 .minimog-tabs__content .tab-content {
    position: unset; 
    top: unset !important;
    left: unset !important;
    width: unset !important;
    opacity: unset !important;
    display: block;
}

body.test-css-56704-1 .tab-content-reviews .tab-content-wrapper {
    max-width: unset !important;
}

body.test-css-56704-1 .tab-content.tab-content-reviews {
    margin-top: 50px !important;
}

body.test-css-56704-1 .product-reviews-summary-bar .heading {
    font-size: 36px !important;
}

.custom-product-badge {
    /* Same white chip as the "Populær" badge (Emil 2026-10-03; was a yellow block). */
    display: inline-block;
    position: absolute;
    z-index: 10;
    top: 20px;
    left: 20px;
    padding: 4px 8px;
    border-radius: 4px;
    background: rgba(255,255,255,.94);
    box-shadow: 0 1px 3px rgba(25,52,92,.10);
    color: var(--minimog-color-heading);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .04em;
    line-height: 14px;
    text-transform: uppercase;
}

.variations .row-isw-swatch.row-isw-swatch--isw_select {
    padding-top: 0 !important;
    margin-top: -10px;
}

.row-isw-swatch--isw_select .label {
    margin-bottom: 7px !important;
}

.woocommerce-checkout #billing_company_field,
.woocommerce-checkout #billing_ean_nr_field,
.woocommerce-checkout #billing_cvr_field
{
    display: none;
}

/* "Populær" badge: small white chip with navy text (was a peach block, 13px; Emil 2026-10-03: looked cheap).
   Same look as the strength badges (calio-af-badge in calio-archive-filters.php). */
.woocommerce .product-badges .hot {
    --p-badge-bg: rgba(255,255,255,.94) !important;
    background: rgba(255,255,255,.94) !important;
    padding: 4px 8px !important;
    border-radius: 4px;
    box-shadow: 0 1px 3px rgba(25,52,92,.10);
}

.woocommerce .product-badges>div.hot>span {
    color: var(--minimog-color-heading);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .04em;
    line-height: 14px;
}

/* Header/menu: no bottom border anywhere (Emil 2026-10-03; it doubled up with the front page's category row line). */
.page-header-inner {
    border-bottom-color: transparent !important;
}

.woocommerce .product-badges {
    top: 15px !important;
    left: 15px !important;
}

.entry-product-badges {
    display: none !important;
}

.swiper-thumbnail-wrap img {
    border-radius: 6px;
}

.woocommerce-checkout #page-mobile-tabs {
    display: none !important;
}


.single-product .woo-single-gallery 
.minimog-thumbs-swiper .swiper-slide .swiper-thumbnail-wrap::before {
  border-radius: 6px!important;
}


.product-reviews-summary-bar .tm-button-wrapper {
    display: none;
}





body.single-product .entry-price-wrap ins > span bdi {
    color: red;
    font-weight: 600;
    font-size: 26px;
}

.stock.available-on-backorder {
    background-color: #E9F1FB;
    display: inline-block;
    border-radius: 8px;
    padding: 7px 20px 7px 40px !important;
}

.stock.available-on-backorder::before {
    left: 15px;
}

#email-warning-container {
  display: flex;
  align-items: center;
  height: 0px;
  opacity: 0;
  width: 100%;
  background-color: #fee7ba;
  overflow: hidden;
  transition: height 0.5s, opacity 1.5s, padding 0.5s, margin-bottom 0.5s;
  margin-bottom: 0px;
  border-radius: 5px;
  justify-content: space-between;
}

#warning-dismiss {
  background-color: transparent;
  border: 0;
  margin-right: 5px;
  padding: 0 !important;
  text-transform: lowercase;
  line-height: unset !important;
  font-size: 18px;
  height: unset !important;
}

#email-warning-container.view {
  height: 40px;
  opacity: 100%;
  margin: 5px 0 10px 0;
  padding: 0 15px 4px 15px;
}

#warning-dismiss {
  cursor: pointer;

}

#warning-dismiss:hover {
    box-shadow: none;
    color: inherit;
}

#warning {
  cursor: pointer;
  display: flex;
  gap: 3px;
  font-size: 90%;
}

#warning-email {
  text-decoration: underline;
}

.jul {
    text-align: center;
    margin: auto;
    color: red;
}

button#ov-onskeskyen-generated-wish-button {
    display: block;
    margin: 15px auto 0 auto !important;
    font-weight: 600;
    line-height: 1;
}
button#ov-onskeskyen-generated-wish-button:hover {
    box-shadow: 0 0 0 .2rem #cae8ee;
}

.wof-wheel .wof-title {
    font-size: 40px;
    text-transform: unset;
    line-height: 46px;
}

.woocommerce-checkout .wof-wheels,
.woocommerce-cart .wof-wheels
{
    display: none;
}



.wof-wheel .wof-slice {
    width: 41%;
}

.wof-form-fields>div {
    margin-top: 10px;
}

.wof-wheel .wof-form-wrapper button {
    margin-top: 10px;
    height: 48px;
}

.wof-wheel .wof-form-wrapper {
    margin-bottom: 10px;
}

.wof-wheel .wof-disclaimer {
    opacity: 0.8;
    text-align: center;
}

/*@media only screen and (max-width: 768px) {
    .wof-widget.wof-visible {
        bottom: 60px;
    }
}*/

#kl_newsletter_checkbox_field,
#kl_sms_consent_checkbox_field,
.visually-hidden
{
    position: absolute !important;
    clip: rect(1px, 1px, 1px, 1px);
    padding: 0 !important;
    border: 0 !important;
    height: 1px !important;
    width: 1px !important;
    overflow: hidden;
}

@media only screen and (max-width:1400px) and (min-width:1023px){
    body>.elementor>.elementor-section:not(.elementor-inner-section):not(.no-margin)>.elementor-container{
        padding:0 1.5rem
    }
}
@media only screen and (max-width:1024px){
    body>.elementor>.elementor-section:not(.elementor-inner-section):not(.no-margin)>.elementor-container{
        padding:1rem
    }
}
.cwginstock-panel-heading h4,.cwginstock-subscribe-form .panel-body .form-group,.last-p-margin p:last-child,.mb-0{
    margin-bottom:0
}
.primary-color{
    color:var(--e-global-color-primary)
}
.cart-totals-value,.modal-quick-view-popup .button.onskeskyen,.top-bar-text{
    width:100%
}
.topbar-wrap{
    display:flex;
    justify-content:space-between;
    width:100%
}
.topbar-item img{
    vertical-align:middle;
    padding-left:3px;
    margin-bottom:3px;
    width:auto
}
.topbar-item a{
    display:inline
}
.product>.product-wrapper .woocommerce-loop-product__title{
    flex-basis:100%;
    margin-bottom:5px
}
.product>.product-wrapper .loop-product-variation-selector{
    flex-basis:100%
}
.onskeskyen-wrap {
    display: flex;
    justify-content: center;
    margin-top: 10px;
}
@media only screen and (max-width: 768px) {
    .onskeskyen-wrap {
        display: none;
    }
}
.button.onskeskyen{
    background-color:unset;
    border-width:0;
    color:#009bbf;
    background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAAAmCAMAAABDGm2rAAAABlBMVEVHcEwAm79WQXmdAAAAAXRSTlMAQObYZgAAAFtJREFUeNrt1DEKwCAQAMHM/z+dLpUEcYVAcPsbLLy7Rnm6FgLrBBSCJtAEXgRYB+ZeY646TwZkQJ3nB4DheCCgEDSBJtAEqQ2A2AEOAJ9/5b6NTegXqQl7rvINH3QHV/GaEiMAAAAASUVORK5CYII=');
    background-repeat:no-repeat;
    background-size:auto 40%;
    min-width:56%;
    background-position:12px center;
    padding-top: 2px;
}
@media only screen and (max-width:1100px){
    .button.onskeskyen{
        width:100%
    }
}
.modal-quick-view-popup .inner-content{
    display:flex;
    align-items:center;
    height:unset!important;
    padding:30px 0
}
.button.onskeskyen:hover{
    background-color:unset !important;
    /*color:#fff!important;*/
    box-shadow:none!important;
    /*background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAAAmCAMAAABDGm2rAAAABlBMVEVHcEz///+flKJDAAAAAXRSTlMAQObYZgAAAFtJREFUeNrt1DEKwCAQAMHM/z+dLpUEcYVAcPsbLLy7Rnm6FgLrBBSCJtAEXgRYB+ZeY646TwZkQJ3nB4DheCCgEDSBJtAEqQ2A2AEOAJ9/5b6NTegXqQl7rvINH3QHV/GaEiMAAAAASUVORK5CYII=')*/
}
.entry-product-quantity-wrapper .screen-reader-text,.payment_box,.woobt-products-wrap .viabill-pricetag,a#top-bar-collapsible-toggle{
    display:none!important
}
.includes_tax{
    display:block
}
.includes_tax .amount{
    font-size:100%!important
}
/*@media only screen and (min-width:1100px){
    .woocommerce-cart-form{
        display:flex;
        justify-content:space-between;
        align-items:flex-start
    }
    body.woocommerce-checkout .form-row{
        max-width:100%!important;
        flex:0 0 100%;
        margin-bottom:10px!important
    }
    div#cart-table-wrap{
        flex-basis:60%
    }
    div#cart-collaterals{
        margin:0
    }
}*/
.outofstock .nattelyst-order-before-wrap,.outofstock .product-meta-shipping-delivery-time,.outofstock .product-popup-links,.product.woobt-product.woobt-product-together.woobt-hide .woobt-quantity,.shipmondo-modal-footer,.shipping_pickup_cart,.widget_product_categories li.current-cat a:after,.woo-comment-author,.woobt-block-content .product-shipping,input#shipping_method_0_free_shipping6,#shipping_method li label[for=shipping_method_0_free_shipping6],p#billing_country_field,p#shipping_country_field{
    display:none !important
}
ul.woocommerce-shipping-methods li{
    text-align:left;
    line-height:35px
}
.panel-body.cwginstock-panel-body input[type=email],ul.woocommerce-shipping-methods{
    margin-bottom:10px
}
body.woocommerce-cart tr.cart-totals-row.cart-subtotal{
    border-top:none;
    display: inline-flex;
}
/*.shipmondo_stores{
    display:flex;
    justify-content:space-between
}*/
.shipmondo_stores>div:first-child{
    flex-basis:65%
}
.shipmondo_stores>div:last-child{
    flex-basis:33%
}
.shipmondo_zipcode_error_text{
    border:none!important;
    margin:0;
    padding:0!important;
    margin-top:3px!important
}
.header-buttons>a{
    border:none!important;
    padding:0!important
}
.header-buttons>a:hover{
    background-color:#fff!important;
    border-color:#fff!important;
    box-shadow:none!important;
    color:var(--header-link-hover-color)!important
}
.entry-product-stock{
    margin-top:10px!important
}



.CybotCookiebotDialogBodyBottomWrapper,.tab-content-wrapper,.woobt-product .woobt-product-cart{
    margin:0!important
}

:focus-visible{
    outline:0
}
button.CybotCookiebotDialogBodyButton{
    height:unset!important;
    line-height:unset!important
}
button#CybotCookiebotDialogBodyButtonAccept{
    background-color:var(--e-global-color-primary)!important;
    border-color:var(--e-global-color-primary)!important
}
button#CybotCookiebotDialogBodyButtonDecline{
    border:unset!important;
    padding:5px!important
}
button#CybotCookiebotDialogBodyButtonDecline:hover{
    border:unset!important;
    box-shadow:unset!important
}
#CybotCookiebotDialog.CybotEdge #CybotCookiebotDialogBodyEdgeMoreDetails a{
    color:var(--e-global-color-primary)!important
}
.form-row.place-order{
    border-top:0!important;
    margin-top:0!important;
    padding-top:0!important
}
button#place_order{
    margin-top:0
}
body .woocommerce-terms-and-conditions-wrapper>.form-row{
    margin-bottom:5px!important;
    margin-top:25px!important
}
.payment-title-icon{
    display:flex
}
.order-total td.cart-totals-value strong .amount{
    font-size:26px!important
}
.single-post .page-content{
    margin-top:50px
}
#page-top-bar{
    padding-right:0
}
.category-description{
    background:#f7f7f7;
    padding:40px;
    margin-top:30px
}
.category-description h2{
    font-size:28px;
    margin:20px 0 10px
}
.category-description h2:first-child{
    margin-top:0;
    font-size:32px
}
.title-bar-none .page-content{
    margin-top:60px
}
@media only screen and (min-width:769px){
    .checkout-kundeservice-mobile{
        display:none
    }
}
.fly-cart-footer,button.shipmondo-modal-close:hover{
    box-shadow:none
}
ul#shipping_method>li{
    max-width:400px
}
ul#shipping_method .shipping-name{
    width:75%;
    display:inline-block
}
@media only screen and (max-width:600px){
    ul#shipping_method .shipping-name{
        width:65%
    }
}
@media only screen and (max-width:910px) and (max-width:380px){
    ul#shipping_method .shipping-name{
        width:65%
    }
}
.shipmondo-shipping-field-wrap{
    max-width:380px;
    margin:0!important
}
tr.cart-totals-row.cart-shipping.woocommerce-shipping-totals.shipping{
    flex-direction:column
}
.cart-shipping th.cart-totals-label{
    width:100%;
    max-width:100%!important;
    margin-top:10px;
    margin-bottom:5px;
    font-weight:600
}
.minimog-product .reviews-wrap{
    margin-bottom:2px
}
.status-pulse{
    margin-left:25px
}
.status-pulse::before{
    content:'';
    width:10px;
    height:10px;
    border-radius:100%;
    position:absolute;
    background:var(--color);
    top:50%;
    left:-16px;
    animation:2s infinite pulse-red;
    transform:translateY(-40%)
}
.status-pulse.online::before{
    --color:#13c58a;
    --pulse_color:19,197,138
}
.status-pulse.offline::before{
    --color:red;
    --pulse_color:255,82,82
}
@keyframes pulse-red{
    0%{
        box-shadow:0 0 0 0 rgba(var(--pulse_color),.7)
    }
    70%{
        box-shadow:0 0 0 10px rgba(var(--pulse_color),0)
    }
    100%{
        box-shadow:0 0 0 0 rgba(var(--pulse_color),0)
    }
}
.wpclv-attributes .wpclv-attribute{
    margin-top:10px;
    margin-bottom:0
}
.wpclv-attributes .wpclv-attribute-label{
    font-weight:600
}
.wpclv-attributes .wpclv-terms .wpclv-term.active,.wpclv-attributes .wpclv-terms .wpclv-term:hover{
    border-color:var(--e-global-color-primary)
}
.woocommerce-cart .page-content .cart-goal-wrap{
    margin:-20px 0 40px!important
}
.woocommerce-review-link{
    margin-left:0!important
}
.entry-product-star-rating{
    margin-right:5px
}
.woocommerce-product-details__short-description{
    margin-top:10px
}
.woocommerce-product-details__short-description li, .checkmark-list li{
    margin-top:0;
    list-style:none
}
.woocommerce-product-details__short-description li::before, .checkmark-list li::before{
    content:'✓';
    padding-right:8px
}
.woocommerce-product-details__short-description li.mark::before{
    content:'\21';
    width:20px;
    display:inline-block;
    text-align:center
}
.woocommerce-product-details__short-description ul, .checkmark-list{
    padding-left:0;
    margin:0
}
span.nattelyst-order-before{
    display:inline-block;
    color:var(--e-global-color-secondary)
}
@media only screen and (max-width:380px){
    .entry-product-meta-shipping{
        font-size:.9rem
    }
}
.shipmondo_select_button:hover{
    background-color:var(--e-global-color-primary)!important;
    color:#fff!important
}
.entry-content a,.external-label:hover,button.shipmondo-modal-close:hover{
    color:var(--e-global-color-secondary)
}
button.shipmondo-modal-close{
    background:0 0;
    border:none
}
.checkout-secure{
    color:#2b9922;
    margin-top:12px;
    font-size:.8rem;
    text-align:center;
    line-height:1.5
}
.checkout-secure i{
    font-size:90%;
    padding-right:2px;
    transform:translateY(-1px)
}
.checkout-secure svg {
    height: 10px;
}
.checkout-secure path {
    fill: #2b9922;
}
.narrow-page .container{
    max-width:900px
}
.tab-content-reviews .tab-content-wrapper{
    margin:auto!important
}
h6.woocommerce-review__author:not(.external)::after{
    content:' · verificeret';
    font-size:80%;
    vertical-align:revert
}
.external-label{
    font-size:80%;
    vertical-align:revert;
    cursor:pointer;
    margin-right:5px
}
.calio-bundlerev-from{
    flex-basis:100%;
    font-size:80%;
    opacity:.75;
    margin-top:2px
}
.review-rating-template-wrapper path,.reviews-wrap path,.woocommerce-product-rating path{
    fill:orange!important
}
.minimog-product .loop-product-availability.out-of-stock,.stock.out-of-stock.entry-product-stock,.stock.out-of-stock.entry-product-stock:before{
    color:#dc0000
}
img.product-pricerunner{
    position:absolute;
    z-index:2;
    bottom:25px;
    right:25px;
    width:110px
}
.product-badge-1{
    position:absolute;
    z-index:2;
    top:20px;
    left:20px;
    width:170px
}
.product-badge-2{
    position:absolute;
    z-index:2;
    top:20px;
    right:20px;
    width:170px;
}
.product-shipping{
    color:#ababab;
    font-size:60%;
    flex-basis:100%;
    line-height:1.2
}
.cwginstock-subscribe-form .panel-primary{
    border-color:#eee!important;
    padding:30px!important;
    box-shadow:none!important;
    margin-top:10px!important;
    margin-bottom:-10px!important
}
.cwginstock-subscribe-form .panel-primary>.panel-heading{
    background:0 0!important;
    border:none!important;
    padding:0!important
}
.cwginstock-panel-heading h4{
    color:var(--minimog-color-heading)!important
}
.panel-heading.cwginstock-panel-heading{
    padding:0
}
.cwginstock-subscribe-form .panel-body .col-md-12{
    padding:0!important
}
.cwginstock-subscribe-form .panel-body{
    padding-bottom:0
}
.panel-heading.cwginstock-panel-heading:after{
    content:'Du får en mail, når varen kommer på lager.';
    color:var(--minimog-color-text);
    display:block;
    text-align:center
}
.entry-price-wrap .price del{
    font-size:14px!important;
    margin-right:2px
}
.insight-core-bmw li.current-cat>a,.widget_archive li.current-cat>a,.widget_categories li.current-cat>a,.widget_nav_menu li.current-cat>a,.widget_pages li.current-cat>a,.widget_product_categories li.current-cat>a{
    color:var(--minimog-color-link-hover)
}
.entry-post-feature.post-thumbnail img{
    width:100%;
    max-height:550px;
    object-fit:cover
}
.page-title-bar-fill-01 .page-title-bar-bg,.page-title-bar-fill-01 .page-title-bar-bg:before{
    background-color:rgba(25,52,92,.8)!important
}
.page-title-bar-fill-01 .page-breadcrumb{
    position:unset;
    order:2
}
body .page-header a{
    color:var(--header-link-color)
}
p#kl_newsletter_checkbox_field label{
    margin-bottom:0!important
}
#ship-to-different-address{
    font-size:1rem!important
}
div#page-title-bar{
    max-width:1410px;
    margin-left:auto;
    margin-right:auto;
    overflow:hidden;
    border-radius:12px
}
@media only screen and (max-width:1410px){
    div#page-title-bar{
        border-radius:0
    }
}
@media only screen and (max-width:767px){
    body.single-product div#page-title-bar{
        display:none
    }
}
.woocommerce-product-details__short-description p{
    margin-bottom:.5em
}
.wp-block-heading{
    margin-top:40px
}

.single-post.page-has-no-sidebar .entry-wrapper {
    max-width: 700px;
}
body.single-post .entry-content a:not(:has(img)):not(.elementor-button) {
    color: var(--minimog-color-link) !important;
    border-bottom: 3px solid var(--e-global-color-secondary);
}
div#ez-toc-container{
    border:none;
    border-radius:8px;
    padding: 15px 30px !important;
    box-shadow:none;
    width: 100%;
}
#ez-toc-container .ez-toc-js-icon-con {
    border: none;
}
@media only screen and (max-width:768px){
    .checkout-kundeservice-desktop,.hide-mobile{
        display:none
    }
    .branding__logo img{
        max-height:45px;
        width:auto
    }
    .page-header-inner{
        padding:12px 0
    }
    .category-description{
        padding:40px 15px
    }
    .checkout-kundeservice-mobile{
        margin-top:30px
    }
    .cart_totals,.woocommerce-order-details{
        width:100%!important;
        box-shadow:none!important;
        padding:0!important
    }
    .title-bar-none .page-content{
        margin-top:10px
    }
    .page-title-bar-fill-01 .page-title-bar-content{
        min-height:unset!important
    }
    div#ez-toc-container{
        padding:30px!important
    }
}
.ez-toc-title{
    font-weight:700!important;
    font-size:18px!important
}
ul.ez-toc-list{
    margin-top:5px!important
}
ul.ez-toc-list>li{
    margin-bottom:3px!important
}
.ez-toc-counter nav ul li a::before{
    opacity:.6;
    width:20px
}
#ez-toc-container a,#ez-toc-container a:visited{
    color:#19345c !important
}
.entry-price-wrap{
    margin-bottom:7px!important
}
@media only screen and (min-width:768px){
    .hide-desktop{
        display:none
    }
    .entry-price-wrap .price{
        flex-wrap:nowrap!important
    }
    .blog-side-image{
        margin:0!important
    }
}
.entry-post-meta .post-date{
    color:unset
}
.entry-post-feature.post-thumbnail{
    max-width:700px;
    margin-left:auto;
    margin-right:auto
}
/* .wpg-linkify::after {
     content: "\f059";
     font-family: 'Font Awesome 6 Free';
     margin-left: 2px;
     font-size: 75%;
     vertical-align: bottom;
}*/
 .woocommerce-cart .viabill-pricetag {
     display: none !important;
}
/*.elementor-widget-container:has(table) {
     overflow-x: auto;
}
*/
 .single-product .entry-summary form.cart .variations td, .single-product .entry-summary form.cart .variations td.label {
     padding: 0 !important;
}
 .payment_method_lunar span.payment-title-icon img {
     padding: 4px;
}
 span.awdr_free_product_text {
     background-color: unset;
     padding: 0;
     color: var(--minimog-color-link);
}
 .awdr_free_product_text .fly-cart-content .cart-goal-text {
     text-align: center;
}
 .reset_variations {
     display: none !important;
}
 /*.fly-cart-footer {
     padding-top: 20px !important;
}*/
 @media only screen and (max-width: 768px) {
     .topbar-wrap {
         justify-content: center;
    }
}
/*.fly-cart-body {
     height: unset !important;
}
*/
 .cart-totals-table tr.cart-totals-row.cart-shipping.woocommerce-shipping-totals.shipping .cart-totals-label {
     display: none;
}
 .cart-totals-table .shipping_method {
     margin-top: 10px !important;
}
 @-webkit-keyframes nat_bounce {
     0%, 5%, 12.5%, 20%, 25% {
        -webkit-transform: translateY(0);
    }
     10% {
        -webkit-transform: translateY(-16px);
    }
     15% {
        -webkit-transform: translateY(-3px);
    }
}
 @keyframes nat_bounce {
     0%, 5%, 12.5%, 20%, 25% {
        transform: translateY(0);
    }
     10% {
        transform: translateY(-16px);
    }
     15% {
        transform: translateY(-3px);
    }
}
 .fly-cart-header .cart-goal:not(.shakeY) .cart-goal-text {
     -webkit-animation-name: nat_bounce;
     animation-name: nat_bounce;
     -webkit-animation-duration: 3s;
     animation-duration: 3s;
     animation-delay: 0s;
     animation-iteration-count: infinite;
}


 .woocommerce-mini-cart__buttons.buttons {
     display: flex;
}
 a.button.checkout.wc-forward.wp-element-button {
     order: 2;
     flex-basis: 80%;
}
.fly-cart-footer a.view-cart {
    flex-basis: 40%;
    margin: 0;
    background-color: transparent;
    border-color: var(--minimog-color-button-text);
    padding: 0;
}

.fly-cart-footer a.view-cart:hover {
    background-color: var(--minimog-color-button-text);
    color: #fff;
}

.fly-cart-footer .button.checkout {
    flex-basis: 60%;
    margin-left: 10px;
}

@media only screen and (max-width: 768px) {
    .fly-cart-footer a.view-cart,
    .fly-cart-footer .button.checkout
    {
        flex-basis: 100%;
    }
    .fly-cart-footer .button.checkout {
        flex-basis: 100%;
    margin: 0
    }
    .fly-cart-footer .buttons {
        flex-wrap: wrap;
    }

} 

 li[item-id="7842"] .quantity {
     display: none;
}
 .slik {
     display: flex;
     flex-wrap: wrap;
     justify-content: space-between;
     align-items: center;
}
 .slik-left {
     flex-basis: 60%;
}
 .slik-right {
     flex-basis: 25%;
     margin-right: 5%;
}
 .slik-left, .slik-right {
     margin-bottom: 30px;
}
 .xlwcty_textBox {
     padding: 30px 50px !important;
}
 @media only screen and (max-width: 768px) {
     .xlwcty_textBox {
         padding: 30px !important;
    }
}
 .status-hide {
     display: none;
}
 .woocommerce-NoticeGroup.woocommerce-NoticeGroup-checkout {
     position: relative;
     width: 100%;
     border: 0;
     color: var(--minimog-color-heading);
     background: #f7f7f7;
     margin-bottom: 30px!important;
     padding: 1em 2em 1em 2em;
     list-style: none outside;
     word-wrap: break-word;
     border-left: 5px solid #19345C;
}
 [data-elementor-type="product-post"] {
     margin: -15px;
}
.tab-content-wrapper [data-elementor-type="product-post"] {
    margin: -15px -15px 0 -15px;
}
 @media only screen and (max-width: 768px) {
     /* The price takes only the room it needs. A fixed 55% basis reserved ~190px for a price
        that renders at ~57px, which left too little for the review link beside it and pushed
        it onto its own line. */
     .summary .price {
         flex-basis: auto;
         margin-right: 10px;
    }
     /* The tax suffix ("inkl. MwSt.", "sis. alv.") sits beside the amount by default, which makes
        the price block ~155px wide. Price 155 + review link 208 does not fit the 345px summary
        column, so the stars dropped to their own line. Stacking the suffix under the amount takes
        the price block to ~91px and both fit. The .price element is a flex container, so the
        suffix has to leave flex layout for the block to stack at all.
        NB: a simple product nests .price inside .price, a variable one has a single .price — so
        this deliberately matches any depth. Checked against both, and against a sale price with a
        struck-out <del>, where it changes nothing. */
     .entry-price-wrap .price {
         display: block;
    }
     .entry-price-wrap .woocommerce-price-suffix {
         display: block;
         margin-left: 0;
    }
     .cwginstock-subscribe-form .panel {
         margin: 0 -0.9375rem;
         border-right: none;
         border-left: none;
         border-radius: 0px;
         padding: 25px 15px 15px 15px !important;
    }
     .entry-price-wrap {
         --price-font-size: 22px !important;
    }
     .page-scroll-up {
         display: none !important;
    }
     /*.woocommerce-product-gallery__image img {
         aspect-ratio: 1 / 1;
         object-fit: cover;
    }*/
}
 .entry-price-wrap > .price > .price {
     flex-basis: 100%;
}

/* "Fra"/"Von" + amount on one baseline: Minimog sets the amount to inline-block + vertical-align:middle,
   which sits it ~3px lower than the prefix once mobile turns .price into a block. Emil 2026-10-03 */
.entry-price-wrap .price .woocommerce-Price-amount {
    vertical-align: baseline;
}

 .wpclv-term {
     padding: 0 !important;
     border: none !important;
     margin: 10px 10px 0 0 !important;
     height: unset !important;
}
 .wpclv-attributes .wpclv-terms .wpclv-term span, .wpclv-attributes .wpclv-terms .wpclv-term a {
     background: none;
     border: 1px solid #eee;
     text-transform: uppercase;
     font-size: 13px !important;
     font-weight: 660;
}

.wpclv-term-image.wpclv-term.hint--top.active span,
.wpclv-term-image.wpclv-term.hint--top.active img {
    border-radius: 4px;
}

 .wpclv-term.hint--top.active span {
     border-color: #19345C;
}
 .wpclv-term a:hover {
     color: inherit !important;
     border-color: #19345C !important;
}
.wpclv-term.outofstock a {
    color: #989898 !important;
}
.wpclv-term.outofstock a:hover {
    border: 1px solid #eee !important;
}

.blog-oss {
    background-color: #f9f9f9;
    padding: 0 40px 40px 40px;
}

@media only screen and (max-width: 768px) {
    .blog-oss {
        padding: 0 20px 20px 20px;
    }
}

@media only screen and (min-width: 769px) {
    .blog-image figure {
        margin: 0 0 0 45px !important;
    }
}

@media only screen and (max-width: 768px) {
    .blog-image figure {
        margin: 1em 0;
    }

}

.wpclv-term.long:after {
    width: 200px;
    white-space: normal;
    line-height: 1.15;
}

/* 
Woocommerce Bundles Styling by Jonathan
*/

/*.woosb-products::before {
    content: "Inkluderet:";
    display: block;
    font-size: 1em;
    font-weight: bold;
    color: #1a3d6f;
    padding-top: 3px;
    padding-left: 5px;
    padding-bottom: 1px;
}


.woosb-products.woosb-products-layout-list {
    padding: 5px 5px 8px 5px;
    border: 1.5px solid #e3e3e3;
    border-radius: 8px;
}

.woosb-products .woosb-product {
    border-bottom: none!important;
    padding: 5px 0!important;
}

.woosb-products .woosb-product .woosb-thumb {
    width: 70px;
    flex: 0 0 70px;
}*/

img.attachment-woocommerce_thumbnail.size-woocommerce_thumbnail {
    border-radius: 6px;
}

/* 
Woocommerce Bundles Styling by Jonathan
*/


/*.woocommerce form .form-row {
    margin-bottom: 15px !important;
}

.woocommerce form .form-row label {
    margin-bottom: 5px !important;
}
.form-coupon .form-row {
    margin-bottom: 10px !important;
}

.woosb-product-info {
    display: flex;
    align-items: center;
}*/


.woocommerce-cart .wt_coupon_wrapper {
    display: none;
}
.woocommerce-cart #page-breadcrumb {
    display: none;
}
.woocommerce-cart .page-title-bar-content {
    padding: 10px 0 20px 0;
}

/* ============================================================
   Cart page — the cart line
   Markup: woocommerce/cart/cart-content.php, rebuilt 2026-09-22. Minimog's four-column table is
   gone; each line is a plain row separated by a hairline. No card background: the fly-cart's
   cards work because that panel is narrow and tinted, while the cart page is a wide white column
   where a tinted card just looks like a stray box.

   The two amounts are the point of the layout. The line total sits top right, on the title's
   line, where the eye lands; the unit price sits under the title as supporting text and spells
   out the arithmetic above one unit ("3 x 289 kr"), so it is obvious which number is which.
   ============================================================ */
.calio-cart-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 16px 0;
    border-bottom: 1px solid #e8ebf0;
}
.calio-cart-item:first-child {
    border-top: 1px solid #e8ebf0;
}

.calio-cart-item__media {
    flex: 0 0 auto;
    width: 64px;
}
.calio-cart-item__media a,
.calio-cart-item__media img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 6px;
}

/* min-width:0 is what lets a long product name wrap instead of stretching the row and pushing
   the line total off the edge — the usual flex-item overflow trap. */
.calio-cart-item__body {
    flex: 1 1 auto;
    min-width: 0;
}

.calio-cart-item__title {
    margin: 0 0 3px;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.3;
}
.calio-cart-item__title a {
    color: inherit;
    text-decoration: none;
}

.calio-cart-item__meta {
    font-size: 13px;
    line-height: 1.4;
    opacity: .65;
}
.calio-cart-item__meta p,
.calio-cart-item__meta dl,
.calio-cart-item__meta dd {
    margin: 0;
}

/* Supporting text, one step below the title, so the total is the only amount competing with the
   product name. */
.calio-cart-item__price {
    font-size: 14px;
    font-weight: 400;
    line-height: 1.4;
    opacity: .7;
}
/* The theme renders .woocommerce-Price-amount at 16px, so the amount ignored the 14px above and
   only the struck-out "before" price came out at 14. Both belong at 14. */
.calio-cart-item__price .woocommerce-Price-amount,
.calio-cart-item__price .woocommerce-Price-amount * {
    font-size: 14px;
}
.calio-cart-item__price del {
    margin-right: 4px;
    opacity: .6;
}
.calio-cart-item__price ins {
    text-decoration: none;
}

.calio-cart-item__actions {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-top: 10px;
}
.calio-cart-item__qty {
    flex: 0 0 auto;
}
.calio-cart-item__qty:empty {
    display: none;
}

/* The theme's stepper is built for a product page: 120px wide with a 16px input, which on a cart
   line is the loudest thing on the row. 90x34 is close to the fly-cart's own 90x30, with a
   little more height left for the tap target. Three things have to give at once: the box and the
   input narrow together (the minus and plus are positioned against the box's edges, so narrowing
   one alone leaves the plus hanging outside), and the height needs min-height as well — that is
   what was holding the input at 40px. The long selector is what it takes to outrank the theme. */
.woocommerce-cart .calio-cart-item__qty .quantity-button-wrapper .quantity,
.woocommerce-cart .calio-cart-item__qty .quantity-button-wrapper .quantity input.qty {
    width: 90px;
}
.woocommerce-cart .calio-cart-item__qty .quantity-button-wrapper .quantity input.qty {
    height: 34px;
    min-height: 34px;
    font-size: 14px;
}
.woocommerce-cart .calio-cart-item__qty .quantity-button-wrapper .quantity .decrease,
.woocommerce-cart .calio-cart-item__qty .quantity-button-wrapper .quantity .increase {
    height: 34px;
}

.calio-cart-item .remove.btn-remove-from-cart {
    flex: 0 0 auto;
    font-size: 11px;
    line-height: 1;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: #c4585e;
}

.calio-cart-item__total {
    flex: 0 0 auto;
    align-self: flex-start;
    padding-left: 12px;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.3;
    white-space: nowrap;
    text-align: right;
}

/* A gift line has no stepper and no remove link, so the template leaves its action row out. */
.calio-cart-item.calio-gift-line .calio-cart-item__media {
    width: 52px;
}

/* Bundle in the cart: the bundled products sit tight under the bundle as one group, no line
   between them, small thumbnails like the gift lines; the group ends with the usual line.
   Classes from WPC Product Bundles (woosb-item-parent / woosb-item-child). Emil 2026-10-03 */
.calio-cart-item.woosb-item-parent:has(+ .woosb-item-child),
.calio-cart-item.woosb-item-child:has(+ .woosb-item-child) {
    border-bottom: 0;
}
.calio-cart-item.woosb-item-parent:has(+ .woosb-item-child) {
    padding-bottom: 8px;
}
.calio-cart-item.woosb-item-child {
    padding-top: 6px;
    padding-bottom: 6px;
}
.calio-cart-item.woosb-item-child:not(:has(+ .woosb-item-child)) {
    padding-bottom: 16px;
}
.calio-cart-item.woosb-item-child .calio-cart-item__media {
    width: 52px;
}
.calio-cart-item.woosb-item-child .calio-cart-item__title {
    font-size: 14px;
}
/* Same grouping in the checkout's order summary (Minimog flex rows with a top border). */
.wc-checkout-review-order-table tr.woosb-item-parent:has(+ tr.woosb-item-child),
.wc-checkout-review-order-table tr.woosb-item-child:has(+ tr.woosb-item-child) {
    padding-bottom: 4px;
}
.wc-checkout-review-order-table tr.woosb-item-child {
    border-top: 0;
    padding-top: 4px;
}
.wc-checkout-review-order-table tr.woosb-item-child .product-thumbnail {
    width: 45px;
}
.wc-checkout-review-order-table tr.woosb-item-child .product-name {
    font-size: 14px;
    line-height: 20px;
}

@media only screen and (min-width: 768px) {
    .calio-cart-item {
        gap: 16px;
        padding: 18px 0;
    }
    .calio-cart-item__media {
        width: 76px;
    }
    .calio-cart-item__title {
        font-size: 16px;
    }
    .calio-cart-item__total {
        font-size: 16px;
    }
}
.cart_totals {
    box-shadow: none !important;
    width: 100% !important;
    padding: 0 !important;
}
.woocommerce-cart tr.cart-totals-row.order-total {
    display: none;
}
tr.cart-totals-row.cart-subtotal .amount {
    font-size: 26px;
}
.cart-footer-actions {
    display: block !important;
    margin: 25px 0 25px 5% !important;
}
.woocommerce-cart form.form-coupon {
    display: flex;
    flex-wrap: wrap;
    max-width: 400px;
}
.cart-collaterals {
    margin-top: 0 !important
}
.wc-proceed-to-checkout {
    margin-top: 0 !important;
    padding: 10px 20px 20px 20px;
    background-color: #f6f6f6;
    border-radius: 0 0 8px 8px;
}
/*form.form-coupon > .form-row {
    margin-right: 10px;
}*/
input#coupon_code {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-right: none;
    font-size: 14px;
    height: unset !important;
    min-height: unset !important;
    padding: 1.5px 20px;
    width: 180px;
}
.woocommerce-cart button[name="apply_coupon"] {
    background-color: transparent;
    color: var( --e-global-color-primary );
    border-color: var( --e-global-color-primary );
    border-top-left-radius: 0;
    border-bottom-left-radius: 0px;
    font-size: 12px;
    padding: 20px;
    line-height: 0;
    height: unset;
}
/* calio 2026-10-12: coupon field + apply button always on one line on the cart page. The input
   was a fixed 180px inside a wrapping flex row, so a long button text (or a 320px phone) pushed
   the button to a second line. Now the field shrinks to make room; desktop is unchanged. */
.cart-footer-actions form.form-coupon {
    flex-wrap: nowrap;
}
.cart-footer-actions form.form-coupon .form-row {
    flex: 0 1 180px;
    min-width: 0;
}
.cart-footer-actions form.form-coupon input#coupon_code {
    width: 100%;
}
.cart-footer-actions form.form-coupon .form-submit {
    flex: none;
}
.cart-footer-actions form.form-coupon button[name="apply_coupon"] {
    white-space: nowrap;
}
.cart-totals-table {
    background-color: #f6f6f6;
    padding: 0 0 15px 0;
    border-radius: 8px 8px 0 0;
}
.woocommerce-cart .cart-totals-table {
    padding: 15px 20px 5px 20px;
}
.cart-totals-table tfoot {
    text-align: right;
}

th.cart-totals-label {
    padding: 0 8px 3px 0 !important;
}

/* Coupon row in the totals table — let the label use the whole width.
   The theme caps .cart-totals-label at max-width:50%, which is right for "Subtotal" but not for
   "Rabatkupon: cap-37pygf": the code wrapped onto two or three lines with an empty half beside
   it, worst on a phone. Taking this one row out of the table layout (display:flex) lets the
   label run the full width and leaves every other totals row on its own two columns, untouched —
   verified: subtotal, shipping and order-total keep the exact widths they had.
   Scoped to .cart-discount, so it covers the coupon row on both the cart page and the checkout. */
tr.cart-totals-row.cart-discount {
    display: flex;
    align-items: baseline;
    gap: 12px;
    width: 100%;
}
tr.cart-totals-row.cart-discount > .cart-totals-label {
    display: block;
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
    max-width: none;
}
tr.cart-totals-row.cart-discount > .cart-totals-value {
    display: block;
    flex: 0 0 auto;
    width: auto;
    max-width: none;
    text-align: right;
}
.cart-footer-actions .modal-title {
    margin-bottom: 20px 0 0 0 !important;
}
.wc-proceed-to-checkout {
    display: flex;
    justify-content: space-between;
}
.woocommerce-cart .checkout-button {
    max-width: 300px !important;
}
.shop-videre {
    background-color: transparent !important;
    color: var( --e-global-color-primary ) !important;
    border-color: var( --e-global-color-primary ) !important;
}
.shop-videre:hover {
    color: #fff !important;
    background-color: var( --e-global-color-primary ) !important;
}

@media only screen and (max-width: 768px) {
    .shop-videre {
        flex-basis: 100%;
        order: 1;
        margin-top: 10px;

    }
    body.woocommerce-cart .checkout-button {
        max-width: unset !important;
        flex-basis: 100%;

    }
    .wc-proceed-to-checkout {
        flex-wrap: wrap;
    }
}


.product-wrapper.quick-view-btn {
    cursor: pointer;
}

.offer-products .product-thumbnail {
    border-radius: 4px;
    overflow: hidden;
}

.remove-product .product-wrapper .product-thumbnail,
.product-wrapper.quick-view-btn.loading,
.remove-product .product-wrapper .product-info > *:not(button) {
    opacity: 0.6 !important
}



/*.remove-product .product-thumbnail:before {
    content: '';
    background-color: #000000c2;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    display: grid;
    place-items: center;
    color: #fff;
    font-size: 50px;
    z-index: 1;
}*/

/*body .popup-fly-cart>.inner {
    left: 50%;
    transform: translate(-50%, -50%) !important;
    height: unset;
    min-height: unset;
    top: 25%;
    float: unset;
    border-radius: 4px;
    overflow: hidden;
}

.fly-cart-footer {
    margin-top: 0px !important;
}

.fly-cart-body {
    height: unset !important;
    max-height: 320px;
}

.fly-cart-content .product-thumbnail img {
    aspect-ratio: 1 / 1.1;
    object-fit: cover;
}

.fly-cart-footer tr.cart-totals-row.cart-subtotal .cart-totals-label {
    padding-bottom: 0 !important;
}*/

.offer-products .product-wrapper .woocommerce-loop-product__title {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: block !important;
}

.upsell-image-percentage {
    position: absolute;
    top: 10px;
    right: 10px;
    background-color: var(--e-global-color-secondary);
    border-radius: 100%;
    line-height: 1.1;
    font-size: 15px;
    font-weight: bold;
    height: 45px;
    width: 45px;
    display: grid;
    place-items: center;
}

@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

body:not(.test-css-13383-2) .offer-products:not(.hasUpsells) .product-wrapper {
    opacity: 0;
    animation: fadeIn 0.35s ease-in forwards;
    animation-delay: var(--delay, 0s);
}

.woocommerce-checkout tr.cart-footer-actions-row {
    display: none;
}

.woocommerce-checkout .cart-discount a {
    display: none;
}

.cart-item-label-mobile {
    display: none !important;
}

@media only screen and (max-width: 768px) {
    .fly-cart-footer a.view-cart {
        order: 1;
        margin: 10px 0 0 0;
    }
}

@media only screen and (max-width: 1000px) {
    .offer-products {
        grid-template-columns: repeat(2, 1fr) !important;
        grid-column-gap: 20px;
        grid-row-gap: 20px;
    }
}




@media only screen and (max-width: 768px) {
    .entry-product-quantity-wrapper {
        flex-direction: column;
    }
    
    .entry-product-quantity-wrapper .quantity-button-wrapper {
        margin: 10px 0 5px 0 !important;
        order: 2;
        width: 100%;
    }
    
    .entry-product-quantity-wrapper .quantity-button-wrapper .quantity {
        width: 100%;
    }
    
    .entry-product-quantity-wrapper .button {
        width: 100% !important;
        margin: 0;
        height: 55px;
    }
    
    .woobt-block-content {
        padding-top: 10px !important;
    }

}


.custom-error {
    color: #d9534f;
}

.woocommerce-terms-and-conditions-checkbox-text {
    font-size: 16px !important;
}

.custom-error.terms {
    margin-top: -20px;
    margin-bottom: 20px;
}

.custom-error.shop {
    margin-top: -5px;
    margin-bottom: 5px;
}

.autocomplete-container {
    /* relative position for at de absolut positionerede forslag får korrekt placering.*/
    position: relative;
    width: 100%;
    max-width: 30em;
}

.autocomplete-container input {
    /* Både input og forslag får samme bredde som omkringliggende DIV */
    width: 100%;
    box-sizing: border-box;
}

.dawa-autocomplete-suggestions {
    margin: 0.3em 0 0 0;
    padding: 0;
    text-align: left;
    border-radius: 0.3125em;
    background: #fcfcfc;
    box-shadow: 0 0.0625em 0.15625em rgba(0,0,0,.15);
    position: absolute;
    left: 0;
    right: 0;
    z-index: 9999;
    overflow-y: auto;
    box-sizing: border-box;
}

.dawa-autocomplete-suggestions .dawa-autocomplete-suggestion {
    margin: 0;
    list-style: none;
    cursor: pointer;
    padding: 0.4em 0.6em;
    color: #333;
    border: 0.0625em solid #ddd;
    border-bottom-width: 0;
}

.dawa-autocomplete-suggestions .dawa-autocomplete-suggestion:first-child {
    border-top-left-radius: inherit;
    border-top-right-radius: inherit;
}

.dawa-autocomplete-suggestions .dawa-autocomplete-suggestion:last-child {
    border-bottom-left-radius: inherit;
    border-bottom-right-radius: inherit;
    border-bottom-width: 0.0625em;
}

.dawa-autocomplete-suggestions .dawa-autocomplete-suggestion.dawa-selected,
.dawa-autocomplete-suggestions .dawa-autocomplete-suggestion:hover {
    background: #f0f0f0;
}

.single-product .entry-summary form.cart .variations td.label {
    min-width: 150px!important;
}

.calio-cart-item[data-product-id="36838"] .calio-cart-item__qty:not(:empty):after {
    content: ' stk.';
}

/*.woocommerce-cart-form__cart-item[product-id="36838"] .increase,
.woocommerce-cart-form__cart-item[product-id="36838"] .decrease
{
    display: none;
}

.woocommerce-cart-form__cart-item[product-id="36838"] .quantity input {
    border: none;
}*/


.cl-usp-box .elementor-icon-box-wrapper {
    align-content: center !important;
    align-items: center !important;
}


.hidecheckmark *::before {
  display: none !important;
}


/* Product badges side by side (e.g. "98%" and "Populær" on one line) instead of Minimog's column;
   they wrap if a card is too narrow. Emil 2026-10-03. */
.woocommerce .product .product-badges {
	flex-direction: row;
	flex-wrap: wrap;
	align-items: center;
	gap: 5px;
	max-width: calc(100% - 30px);
}
.woocommerce .product .product-badges > div {
	margin: 0;
}
/* Round menu badges above the label's top-right corner (Emil 2026-10-03): gift emoji on Gaveideer,
   "%" on Bundles, both on a light grey circle. Classes giftbadgemenu / bundlebadgemenu are set on the menu items. */
.giftbadgemenu .menu-item-wrap,
.bundlebadgemenu .menu-item-wrap {
	position: relative;
}
.giftbadgemenu .menu-item-wrap::before,
.bundlebadgemenu .menu-item-wrap::before {
	content: "\1F381";
	position: absolute;
	top: -14px;
	right: -22px;
	width: 20px;
	height: 20px;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #ececec;
	color: #19345c;
	border-radius: 50%;
	font-size: 10px;
	font-weight: 700;
	line-height: 1;
}
.giftbadgemenu .menu-item-wrap::before {
	font-size: 12px; /* The emoji is small at 10px on the grey circle. */
}
.bundlebadgemenu .menu-item-wrap::before {
	content: "%";
	font-size: 11px;
}
/* Header changes (Emil 2026-10-03). Account icon hidden on all devices. */
.page-header .header-login-link {
	display: none !important;
}
@media (max-width: 767px) {
	/* Header bottom border. */
	.page-header-inner {
		border-bottom: 1px solid #e6e6e6;
	}
	/* Logo centred in the header (relative to .page-header-inner, full width). */
	.page-header .branding {
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translate(-50%, -50%);
		padding: 0;
	}
	/* Bigger "MENU" button: icon and label. */
	.page-header .page-open-mobile-menu .icon svg {
		width: 25px;
		height: 25px;
	}
	.page-header #page-open-mobile-menu .icon::after {
		font-size: 18px;
		padding-left: 6px;
	}
	/* Smaller logo, centred inside its (wider) lazy-image wrapper. */
	.page-header .branding__logo img {
		max-height: 42px;
		margin-left: auto;
		margin-right: auto;
	}
	/* Search + cart: bigger icons, more space, small label under each (text = the link's aria-label,
	   shown through the theme's hint tooltip pseudo-element instead of as a hover tooltip). */
	.page-header a.page-open-popup-search,
	.page-header a.mini-cart__button {
		flex-direction: column;
		align-items: center;
		padding: 0 11px;
	}
	/* Cart closer to the right edge: the theme gives the last badge item margin-right 15px; 12px keeps the cart count bubble 6px inside the screen edge (4px clipped it by 2px). */
	.page-header .header-col-end > .header-content-inner > a.mini-cart__button {
		padding-right: 2px;
		margin-right: 12px;
	}
	.page-header a.page-open-popup-search .icon svg,
	.page-header a.mini-cart__button .icon svg {
		width: 27px;
		height: 27px;
	}
	.page-header a.page-open-popup-search::before,
	.page-header a.mini-cart__button::before {
		display: none !important;
	}
	.page-header a.page-open-popup-search::after,
	.page-header a.mini-cart__button::after {
		position: static !important;
		visibility: visible !important;
		opacity: 1 !important;
		transform: none !important;
		background: none !important;
		box-shadow: none !important;
		padding: 0 !important;
		margin: 3px 0 0 !important;
		color: var(--e-global-color-primary, #19345c) !important;
		font-size: 11px !important;
		line-height: 1 !important;
		text-shadow: none !important;
		white-space: nowrap;
	}
	/* Product pages have no title bar on mobile: space under the header. */
	body.single-product #page-content {
		margin-top: 12px;
	}
}

.sticky-product-bar-showing .wof-widget {
    bottom: 110px !important;
}

@media only screen and (max-width: 768px) {
    .sticky-product-bar-showing .wof-widget {
        bottom: 83px !important;
    }
    
    .sticky-product-bar-showing .emaerket-widget-hide-print {
        bottom: 85px !important;
    }
    
    .wof-widget.wof-widget-right.wof-visible {
        bottom: 5px;
        right: 5px;
    }
    
    .emaerket-widget-hide-print {
        transition: all .25s;
    }
}




		
		.woocommerce-cart .product-price,
		.woocommerce-cart .subscription-price
		{
			white-space: nowrap !important;
		}
		
		.tab-buttons {
			display: flex;
		}
		
.custom-purchase-tabs {
    border: 1px solid #19345c5c;
    border-radius: 8px;
    margin-bottom: 20px;
	overflow: hidden;
}
		
.tab-button {
    flex-basis: 50%;
    text-align: center;
    padding: 15px;
	cursor: pointer;
	display: flex;
    align-items: center;
    justify-content: center;
	font-weight: 600;
	border-bottom: 1px solid #fff;
}
		
.tab-content {
    padding: 20px;
}

@media only screen and (max-width: 768px) {
    .tab-content {
        padding: 20px 10px;
    }
}


		
.tab-button.active[data-tab="single"] {
    border-right: 1px solid #19345c5c;
}
		
.tab-button.active[data-tab="subscription"] {
    border-left: 1px solid #19345c5c;
}
		
.tab-button:not(.active) {
    border-bottom: 1px solid #19345c5c;
    background-color: #f9f9f9;
}
		
		
.subscription-content {
    display: flex;
}

span.subscription-price .amount {
    margin-right: 5px;
}
		
.subscription-image {
    flex-basis: 25%;
    margin-right: 30px;
}

@media (max-width: 767px) {
    body.woocommerce-account table.shop_table td {
        padding: 10px !important;
    }
    
    .woocommerce-account table.shop_table tr > *:first-child {
        text-align: left;
        font-weight: 700;
    }
    
    table.shop_table.subscription_details tr > td:last-child {
        padding-bottom: 20px;
        border-top: unset;
    }
    
    table.shop_table.subscription_details .woocommerce-button {
        max-width: unset;
    }
    
}

@media only screen and (max-width: 375px) {
    .tab-best-value, .wpcpq-item-text {
        display: none !important;
    }
}

.woocommerce-account section.woocommerce-order-details header > h2 {
    font-size: 24px;
    margin-top: 30px;
    margin-bottom: 0;
}

.woocommerce-view-subscription.woocommerce-account .minimog-wc-account-content h2 {
    font-size: 24px;
    margin-top: 30px;
    margin-bottom: 10px;
}



		.woocommerce-cart .cart-totals-label {
			flex-basis: 80%;
			text-align: right;
			max-width: unset;
			padding-right: 0 !important;
			font-weight: 600;
		}
		
@media (max-width: 980px) {
	.woocommerce-cart .cart-totals-label {
		flex-basis: 50%;
		text-align: left;
		max-width: 100%;
		padding-right: 10px !important;
		font-weight: 600;
	}
}

		
		body.woocommerce-cart tr.cart-totals-row.cart-subtotal {
			width: 100%;
		}
		
.tab-button span.tab-marker {
    padding: 2px;
    border: 1px solid #ccd2e3;
    height: 21px;
    width: 21px;
    border-radius: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #fff;
    margin-right: 8px;
}
		
.tab-button span.tab-marker:before {
    content: "";
    display: block;
    height: 13px;
    width: 13px;
    background: #fff;
    border-radius: 20px;
}
		
.tab-button.active span.tab-marker:before {
    background: var( --e-global-color-secondary );
}

.tab-title-outer-wrap {
    display: flex;
}

.tab-top {
    display: flex;
    align-items: center;
}

.tab-best-value {
    max-width: 85px;
    display: flex;
    background: linear-gradient(90deg, #80A0CF 0%, #0A6DFF 100%);
    border-radius: 4px;
    color: #fff;
    padding: 5px 10px;
    align-items: center;
    margin-left: 10px;
}

.tab-free-shipping {
    display: flex;
    color: #2F7DF0;
    font-size: 12px;
    margin-left: 24px;
    margin-top: -8px;
}

span.tab-free-shipping-title {
    font-size: 0.7rem;
}

.tab-free-shipping img {
    margin-right: 3px;
}

.best-value-title {
    font-size: 0.6rem;
    line-height: 1.2;
    text-align: left;
}

.tab-best-value img {
    height: 20px !important;
    width: 20px !important;
    margin-right: 6px;
}

@media only screen and (max-width: 1120px) and (min-width: 769px) {
    .tab-best-value img {
        display: none;
    }
}

/*.tab-button.active .custom-tab-title {
    border-bottom: 2px solid;
}*/

.custom-tab-title {
    line-height: 1.3;
}


.woobt-body {
    border: none!important;
    padding-top: 0 !important;
    border-bottom: 1px solid #eee !important;
    padding-bottom: 15px !important;
    margin-top: 0 !important;
}

.woobt-layout-default .woobt-products>.woobt-product {
    border: none!important;
}

.entry-summary .woobt-products {
    border: none!important;
}

h6.woobt-block-heading {
    display: none;
}

.woobt-summary {
    display: none;
}

.woobt-thumb img {
    aspect-ratio: 1 / 1;
    object-fit: cover;
}

.woobt-product {
    /*padding-top: 0 !important;
    padding-bottom: 0 !important;*/
    min-height: 0 !important;
}

.woobt-total .amount{
    color:var(--minimog-color-heading)
}

.woobt-wrap{
    margin-top:0 !important
}
.woobt-product .woobt-product-info{
    display:flex;
    flex-direction:column;
    justify-content:center
}
.woobt-product select {
    width: auto;
    border: 0;
    box-shadow: none !important;
    min-height: 26px;
    line-height: 28px;
    padding: 0 15px 0 0;
    background-position: 100% 50%;
    color: var(--minimog-color-text);
}
.woobt-product .woobt-title .variation .label {
    display: none;
}

/* Bought together (WPC woobt): no side padding, names on one line when they fit (max 2), dropdown like the product upsell's. calio 2026-10-25, Emil */
.woobt-wrap .woobt-body { padding-left: 0 !important; padding-right: 0 !important; }
.woobt-wrap .woobt-title-inner { display: block; min-width: 0; margin-right: 0; }
.woobt-wrap .woobt-title-inner a, .woobt-wrap .woobt-title-inner > span:not(.woobt-qty-num) { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
.woobt-wrap .woobt-title { min-width: 0; }
.woobt-wrap .woobt_variations_form.calio-woobt-has-dd .variations { display: none; }
.calio-woobt-dd { position: relative; display: inline-block; max-width: 100%; margin-top: 6px; font-size: 13px; line-height: 1.3; }
.calio-woobt-dd-toggle {
	display: inline-flex; align-items: center; max-width: 100%; height: 30px; padding: 0 28px 0 10px;
	border: 1px solid #e3e3e3; border-radius: 6px; background-color: #fff;
	color: var(--minimog-color-text); font-weight: 500; white-space: nowrap; cursor: pointer; position: relative;
}
.calio-woobt-dd-toggle::after {
	content: ''; position: absolute; right: 11px; top: 50%; width: 6px; height: 6px;
	border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: translateY(-70%) rotate(45deg);
}
.calio-woobt-dd.is-open .calio-woobt-dd-toggle::after { transform: translateY(-30%) rotate(225deg); }
.calio-woobt-dd-toggle:focus-visible { outline: 2px solid var(--minimog-color-heading, #19345C); outline-offset: 2px; }
.calio-woobt-dd-menu {
	display: none; position: absolute; top: calc(100% + 4px); left: 0; z-index: 30; min-width: 100%; width: max-content;
	max-width: min(320px, calc(100vw - 40px)); padding: 4px; background-color: #fff;
	border: 1px solid var(--minimog-color-form-border, #ddd); border-radius: 8px; box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
}
.calio-woobt-dd.is-open .calio-woobt-dd-menu { display: block; }
.calio-woobt-dd-head {
	display: block; padding: 6px 12px 4px; color: var(--minimog-color-heading, #19345C);
	font-size: 10px; font-weight: 700; line-height: 1.1; letter-spacing: 0.06em; text-transform: uppercase;
}
.calio-woobt-dd-option {
	display: block; padding: 8px 12px; border-radius: 6px; color: var(--minimog-color-heading, #19345C);
	font-weight: 600; white-space: nowrap; cursor: pointer;
}
.calio-woobt-dd-option:hover, .calio-woobt-dd-option:focus-visible { background-color: #f6f6f6; outline: none; }
.calio-woobt-dd-option[aria-selected="true"] { background-color: #E9F1FB; }
.calio-woobt-dd-note { display: block; margin-top: 4px; padding: 6px 12px 4px; border-top: 1px solid #ececec; font-size: 0.7rem; line-height: 1.35; opacity: 0.75; }
/* Slightly bigger, clearer checkbox (theme draws a 16px light-grey box). calio 2026-10-25, Emil */
.woobt-wrap .woobt-products .woobt-product input[type='checkbox'].woobt-checkbox { width: 19px; height: 19px; margin: 0; -webkit-appearance: none; appearance: none; }
.woobt-wrap .woobt-products .woobt-product.woobt-product-together { padding-left: 100px; } /* min-height: 60px image + air, rows are one line now */
.woobt-wrap .woobt-products .woobt-product.woobt-product-together { min-height: 88px !important; }
.woobt-wrap .woobt-products .woobt-product.woobt-product-together .woobt-thumb { left: 30px; }
.woobt-wrap .woobt-products .woobt-product input[type='checkbox'].woobt-checkbox::before {
	box-sizing: border-box; width: 19px; height: 19px; top: 50%; left: 50%; transform: translate(-50%, -50%);
	border: 1.5px solid #9aa3b0; border-radius: 4px; background-color: #fff;
}
.woobt-wrap .woobt-products .woobt-product input[type='checkbox'].woobt-checkbox:checked::before { background-color: var(--minimog-color-heading, #19345C); border-color: var(--minimog-color-heading, #19345C); }
.woobt-wrap .woobt-products .woobt-product input[type='checkbox'].woobt-checkbox::after {
	content: ''; font-family: inherit; box-sizing: border-box; width: 6px; height: 10px; top: 45%; left: 50%;
	border: solid #fff; border-width: 0 2px 2px 0; background: none; transform: translate(-50%, -50%) rotate(45deg) scale(0);
}
.woobt-wrap .woobt-products .woobt-product input[type='checkbox'].woobt-checkbox:checked::after { transform: translate(-50%, -50%) rotate(45deg) scale(1); }



/*Smart bundle css styling*/

.woosb-wrap.woosb-bundled {
    border: none;
    border-top: 1px solid #eee !important;
    border-bottom: 1px solid #eee !important;
    border-radius: 0px;
    padding: 0;
}

/* Bundle row: title with the size selector (and size hint) under it on the left, price on the right,
   both vertically centred on the image. Emil 2026-10-02 */
.woosb-products .woosb-product {
    align-items: center;
}

.woosb-products .woosb-product .woosb-product-info {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    column-gap: 12px;
    align-items: center;
}

.woosb-products .woosb-product .woosb-product-main-info {
    display: contents;
}

.woosb-products .woosb-product .woosb-title-wrap {
    grid-column: 1;
    grid-row: 1;
}

.woosb-products .woosb-product .woosb-product-cart {
    grid-column: 1;
    grid-row: 2;
    margin-top: 4px;
}

/* Size hint: own full-width line under the whole row (image included) */
.woosb-products .woosb-product:has(> .calio-woosb-hint) {
    flex-wrap: wrap;
}

.calio-woosb-hint {
    flex: 0 0 100%;
    margin-top: 6px;
    font-size: 12px;
    line-height: 1.4;
}
.calio-woosb-hint .elementor-top-section {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

/* Light box so the bundle's size selector reads as a selector. Emil 2026-10-02 */
.woosb-products .woosb-product select.product-variation-select {
    background-color: #f1f4f8;
    border: 1px solid #dfe5ee;
    border-radius: 6px;
    padding: 2px 30px 2px 10px;
    background-position: right 10px center;
    height: auto;
    width: auto;
}

/* Bundle pages: no lines and less space around the USP row (Elementor section in the short description). Emil 2026-10-02 */
.product-type-woosb .woocommerce-product-details__short-description .elementor-top-section {
    border: 0 !important;
    margin: 12px 0 !important;
    padding: 0 !important;
}

.woosb-price .product-shipping {
    display: none;
}

.woosb-products>.woosb-item-text, .woosb-products>.woosb-product {
    margin: 10px 0 0 !important;
    padding: 10px 0 0 !important;
}

@media only screen and (min-width: 768px) {
    .woosb-products>.woosb-item-text, .woosb-products>.woosb-product {
        flex-basis: 50%;
    }
}

.woosb-products .woosb-thumb {
    width: 45px;
}

.woosb-products .woosb-product .woosb-price {
    grid-column: 2;
    grid-row: 1;
    margin: 0 !important;
    text-align: right;
    white-space: nowrap;
}

.woosb-price .price bdi {
    font-size: 16px;
}

/*.woosb-products {
    margin: 0 0 10px !important;
    display: flex !important;
    flex-wrap: wrap !important;
}*/

.woosb-item-product:first-child {
    margin-top: 0 !important;
}

.woocommerce form .form-row {
    margin-bottom: 15px !important;
}

.woocommerce form .form-row label {
    margin-bottom: 5px !important;
}
.form-coupon .form-row {
    margin-bottom: 10px !important;
}

.woosb-product-info {
    display: flex;
    align-items: center;
}
.woosb-total {
    display: none !important;
}

/* (The rule that hid .product-subtotal on mobile is gone: the line total is now the only
   amount the mobile cart line shows. See the cart-line grid further up this file.) */

#place_order.loading:before {
    -webkit-animation: rotating 1s 
linear infinite !important;
    animation: rotating 1s 
linear infinite !important;
    content: "" !important;
    margin-right: 10px;
        -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
    font-family: "Font Awesome 5 Pro";
    font-weight: 400;
}


/* category pages */
 .page-title-bar-fill-01 .page-title-bar-bg:before {
    background-color: rgb(0 0 0 / 40%) !important;
}
.page-title-bar-fill-01 .page-title-bar-bg {
    background-color: #285695 !important;
}

/* Gaveideer category (/kategori/gaveideer/): Christmas hero. Image = category banner (media 39259,
   set on the category edit screen); this adds falling snow and a gift emoji. Emil 2026-10-03. */
.term-gaveideer .page-title-bar-bg {
    background-size: cover;
    background-position: center 35%;
}
.term-gaveideer .page-title-bar-bg::after,
body.calio-cat-header.term-gaveideer #page-title-bar .page-title-bar-bg::after { /* 2nd selector beats the category-header rule in page-inserts.php that hides ::after */
    display: block;
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-image:
        radial-gradient(5px 5px at 20px 30px, #fff 50%, transparent 51%),
        radial-gradient(6px 6px at 90px 80px, rgba(255,255,255,.95) 50%, transparent 51%),
        radial-gradient(4px 4px at 150px 20px, rgba(255,255,255,.9) 50%, transparent 51%),
        radial-gradient(7px 7px at 200px 130px, #fff 50%, transparent 51%),
        radial-gradient(4px 4px at 60px 160px, rgba(255,255,255,.85) 50%, transparent 51%),
        radial-gradient(5px 5px at 120px 180px, #fff 50%, transparent 51%),
        radial-gradient(3px 3px at 230px 60px, rgba(255,255,255,.8) 50%, transparent 51%),
        radial-gradient(6px 6px at 35px 110px, rgba(255,255,255,.9) 50%, transparent 51%),
        radial-gradient(4px 4px at 175px 95px, #fff 50%, transparent 51%),
        radial-gradient(3px 3px at 105px 40px, rgba(255,255,255,.8) 50%, transparent 51%);
    background-size: 240px 200px;
    animation: calio-snow 8s linear infinite;
}
@keyframes calio-snow {
    from { background-position: 0 0; }
    to { background-position: 40px 200px; }
}
@media (prefers-reduced-motion: reduce) {
    .term-gaveideer .page-title-bar-bg::after,
    body.calio-cat-header.term-gaveideer #page-title-bar .page-title-bar-bg::after { animation: none; }
}
.term-gaveideer .page-title-bar-heading .heading span::after { content: "\00A0\1F381"; }


.search-page-search-form.above {
    max-width: 300px;
    margin: auto;
}







.product-popup-links {
    display: none !important;
}

.product-byline {
    font-weight: 500;
    font-size: 18px;
    margin-bottom: 10px;
}

.product-byline .high {
    font-style: italic;
    font-weight: 700;
}

.calio-shipping-badge {
    background-color: #5097FF;
    color: #fff;
    font-size: 0.7rem;
    font-weight: 600;
    border-radius: 8px;
    padding: 2px 6px;
    /* Hug the text and keep clear air on both sides, so a long translation
       ("ILMAINEN TOIMITUS") wraps inside the badge instead of squeezing the price
       onto a second line. Paired with .wpcpq-item-price in body-start.css. */
    width: fit-content;
    text-align: center;
    line-height: 1.25;
    margin-left: 10px;
    margin-right: 10px;
}


/* Split-test 100854 won — now shown to everyone (test-css gate removed). */
.calio-shipping-badge {
    display: block;
}

/* ============================================================
 Quantity -> free-gift ribbon (calio)
 Ribbon hanging under every price-by-quantity box that guarantees the gift.
 Output and rules live in calio-gift-rules.php.

 The wpcpq hook fires INSIDE the tier box, so the ribbon is taken out of flow and
 pinned to the outside of the box instead. Three things this has to work around:
   - NO CHILD COMBINATOR on the ribbon. In the default layout the plugin wraps the
     quantity in an unclassed flex div and fires the hook inside it, so the ribbon's
     parent is that wrapper, not .wpcpq-row. Keying on the class alone also survives
     the next plugin markup change. Same reason .calio-shipping-badge above is a
     bare class selector.
   - the ribbon is out of flow, so its row has to reserve the room itself. .wpcpq-table
     is a plain BLOCK and the tier boxes stack vertically, so the reserve is a bigger
     margin-bottom on the row carrying the ribbon -- NOT padding on the table, which
     only ever lands under the last box and lets a middle ribbon fall on the box below.
   - the wrapper is position:static, so the ribbon still resolves against .wpcpq-row.
     left/right -2px cancels the box's 2px border so the ribbon is exactly as wide as
     the box.
 The box's own bottom radius is removed so box + ribbon read as one card. The ribbon
 keeps a palette of its own (see the custom properties below); only its border tracks
 the box, turning the active colour when the tier is selected, where a tick also appears
 at the end of the row. The box's bottom border is painted in the ribbon's fill, so no
 line ever separates the two. Nothing is animated and nothing changes size -- selection
 only recolours the border and reveals the tick.

 The ribbon is ONE fixed size in both states, so nothing below it ever moves and one reserve
 value serves both. A tier carrying two rules is clipped to that height; raise it if that is
 ever used. 'body ' prefix for the same reason as the badge above: the base wpcpq rules load
 later, in body-start.css.
   ============================================================ */
/* Reserve, on the row itself: the ribbon is 36px tall and starts 2px up at the box's padding
   edge, so it reaches 34px below the box; + the 10px gap the rows normally carry = 44px. Every
   qualifying tier gets a ribbon, so a middle box needs this just as much as the last one --
   a table-level padding-bottom only ever reserved room under the LAST box, which dropped a
   middle ribbon on top of the box below it and left dead space at the bottom.
   Tuned against a pane that zeroes .wpcpq-wrap's bottom margin; nudge it if this store leaves
   more cushion under the table. */
body .wpcpq-table .wpcpq-row:has(.calio-giftrule-strip) {
    margin-bottom: 44px;
    position: relative;
    /* .wpcpq-click-yes .wpcpq-item sets overflow:hidden, which clips the ribbon away. */
    overflow: visible;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;

    /* The ribbon's palette, declared here so the box's own border can match it and so there
       is a single place to retune it. #E9F1FB is free for the ribbon because the active box
       no longer fills with it (see body-start.css), so the ribbon can use the store's normal
       light blue and still stand clear of the #f6f6f6 box in both states. */
    --calio-giftrule-fill: #E9F1FB;
    --calio-giftrule-ink: #19345C;
    --calio-giftrule-tick: #1F7A18;

    /* Paint the 2px between box and ribbon in the ribbon's own fill so no line separates
       them -- including when selection turns the rest of the border navy. Zeroing the width
       instead would move the padding box, and with it the ribbon's top anchor. */
    border-bottom-color: var(--calio-giftrule-fill);
}

body .calio-giftrule-strip {
    position: absolute;
    top: calc(100% - 2px);
    left: -2px;
    right: -2px;
    margin-top: 2px;
    height: 36px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 0 8px;
    border: 2px solid var(--calio-giftrule-fill);
    border-top: 0;
    border-radius: 0 0 10px 10px;
    background-color: var(--calio-giftrule-fill);
    color: var(--calio-giftrule-ink);
    font-size: 0.7rem;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    overflow: hidden;
}

/* Selected tier: same fill and same size -- only the border colour is taken over from the
   box, so the outline runs unbroken around box + ribbon. */
body .wpcpq-item-active .calio-giftrule-strip {
    border-color: var(--minimog-color-heading, #19345C);
}

/* Selected tier: a green tick closing the row, after the value. It is an ordinary flex item,
   so the row's 6px gap spaces it and it stays inside the centred group instead of being
   pushed to the edge. */
body .wpcpq-item-active .calio-giftrule-row::after {
    content: '\2713';
    flex: 0 0 auto;
    margin-bottom: 4px;
    color: var(--calio-giftrule-tick);
    font-size: 1rem;
    line-height: 1;
}

body .calio-giftrule-row {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}

body img.calio-giftrule-img {
    flex: 0 0 auto;
    width: 26px;
    height: 26px;
    object-fit: cover;
    border-radius: 4px;
    background-color: #fff;
}

/* Separator dot between the gift text and its value. Its own flex item, so the row's
   align-items:center centres it and the row's 6px gap spaces it evenly on both sides. */
body .calio-giftrule-sep {
    flex: 0 0 auto;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background-color: currentColor;
}

/* The value is emitted as plain text, not wc_price() markup -- see calio-gift-rules.php.
   Nothing here has to fight the theme's .woocommerce-Price-amount styling as a result. */
body .calio-giftrule-value {
    flex: 0 0 auto;
    white-space: nowrap;
}

@media only screen and (max-width: 768px) {
    body .wpcpq-item-price {
        flex-direction: column !important;
        align-items: start !important;
    }
    body span.wpcpq-item-text {
        background-image: none !important;
        color: inherit !important;
        width: unset !important;
        height: unset !important;
        margin: unset !important;
        padding: 0px !important;
        font-size: 10px !important;
        white-space: nowrap;
    }
    /* Tier label stays on one line on mobile: kill the <br> the stored tier text
       carries ("spar<br> 20 kr", shapes the desktop star badge) and stop it
       wrapping in the narrow row. */
    body span.wpcpq-item-text br {
        display: none;
    }

    body .wpcpq-table .wpcpq-row {
        padding: 15px !important;
    }
}

/* Strikket Tyngdetæppe (131968): the colour swatches (global pa_farve, colour type, shared with
   other products and used by the feed/filters) shown as text buttons like the Tyngdedyne sizes,
   CSS only so the attribute stays untouched. The term name comes from the swatch's aria-label;
   hint.css' tooltip pseudo-elements are reused/disabled. Value next to the label hidden (Emil 2026-10-08). */
.postid-131968 .isw-swatch--isw_color .isw-term {
    width: auto !important;
    height: 38px !important;
    min-width: 0 !important;
    margin: 8px 8px 0 0 !important;
    padding: 0 14px !important;
    border: 1px solid #e5e5e5 !important;
    border-radius: 5px !important;
    background: #fff !important;
    display: inline-flex !important;
    align-items: center;
    text-decoration: none !important;
    color: var(--minimog-color-heading);
    font-size: 15px;
    line-height: 38px;
    box-shadow: none !important;
}
.postid-131968 .isw-swatch--isw_color .isw-term .term-shape {
    display: none !important;
}
.postid-131968 .isw-swatch--isw_color .isw-term::before {
    content: attr(aria-label) !important;
    position: static !important;
    visibility: visible !important;
    opacity: 1 !important;
    transform: none !important;
    border: 0 !important;
    background: none !important;
    margin: 0 !important;
    padding: 0 !important;
    width: auto !important;
    height: auto !important;
    color: inherit !important;
    font-size: 15px !important;
    pointer-events: none;
}
.postid-131968 .isw-swatch--isw_color .isw-term::after {
    display: none !important;
}
.postid-131968 .isw-swatch--isw_color .isw-term.isw-selected {
    box-shadow: inset 0 0 0 1px var(--minimog-color-heading) !important;
    border-color: var(--minimog-color-heading) !important;
}
.postid-131968 .row-isw-swatch .selected-term-name {
    display: none !important;
}
.postid-131968 .row-isw-swatch .label {
    margin-bottom: 0 !important;
}

/* Mobile, quantity tiers WITHOUT any "GRATIS FRAGT" badge in the table: keep the desktop look
   for the saving (the navy star next to the price) instead of the small text under the price.
   Table-level :has(), so every tier on a product shares one design: as soon as one tier carries
   the badge, all tiers use the text-under-price layout above (Emil 2026-10-08). */
@media only screen and (max-width: 768px) {
    body .wpcpq-table:not(:has(.calio-shipping-badge)) .wpcpq-item-price {
        flex-direction: row-reverse !important;
        align-items: center !important;
    }
    body .wpcpq-table:not(:has(.calio-shipping-badge)) span.wpcpq-item-text {
        background-image: url('https://nattelyst.dk/wp-content/uploads/2022/08/star.svg') !important;
        color: #fff !important;
        width: 48px !important;
        height: 48px !important;
        margin: -14px 10px -14px 0 !important; /* bigger star eats the row's padding, row height unchanged */
        position: relative;
        top: -3px; /* .wpcpq-item-price has margin-top 6px: centre the star on the row, not on the price */
        padding: 7px !important;
        font-size: 8px !important;
        white-space: normal !important;
    }
    body .wpcpq-table:not(:has(.calio-shipping-badge)) span.wpcpq-item-text br {
        display: inline !important;
    }
}

/* Saving star bigger on desktop too (50px, same as body-start.css, but in a lower row). Negative top/bottom
   margin lets it reach into the row padding, so a tier with a star is never taller than the
   1-pcs tier; every tier gets the 1-pcs tier's 65px min-height so the boxes line up (Emil 2026-10-08). */
body .wpcpq-table .wpcpq-row.wpcpq-item {
    min-height: 65px;
}
@media only screen and (min-width: 769px) {
    body span.wpcpq-item-text {
        width: 50px;
        height: 50px;
        margin: -12px 14px -12px 0;
        padding: 6px;
        font-size: 8px;
        position: relative;
        top: -3px; /* .wpcpq-item-price has margin-top 6px: centre the star on the row, not on the price */
    }
}

#ez-toc-container a:hover {
    text-decoration: unset !important;
}
/* ============================================================
   Snippet #55280 "KURV"  --  was: elementor_head, conditions: include/singular/page/7 -- now site-wide
   ============================================================ */

.cart-gift__wrapper {
    margin: 30px 0;
    padding: 40px;
    background-color: #f8f8f8;
    border-radius: 8px;
}
	
	a.cart-gift__product.product-item:hover {
    color: inherit;
}
	
	.cart-gift__product.product-item path {
		fill: orange !important;
	}

.cart-gift__badge {
    background-color: #FFBC11;
    font-weight: bold;
    border-radius: 4px;
    display: inline-block;
    padding: 2px 10px 0 10px;
    font-size: 0.8rem;
    line-height: 2;
    text-transform: uppercase;
    margin-bottom: 5px;
	  position: absolute;
    top: -14px;
    right: 20px;
}

	span.amount-left {
    background: var(--minimog-color-button-border);
    padding: 2px 10px;
    border-radius: 8px;
    font-size: 0.9rem;
    text-transform: uppercase;
    font-weight: 600;
}
	
	.cart-gift__goal-desc {
		font-size: 18px;
	}
	
.cart-gift__main {
    display: flex;
    justify-content: space-between;
}
	
	.cart-gift__amount-left {
    display: flex;
    align-items: center;
		flex-basis: 48%;
}

.cart-gift__main h6 {
		font-size: 16px;
		margin-top: 5px;
    margin-bottom: 5px;
}

/*.cart-gift__amount-left {
    font-size: 16px;
    color: #333;
    margin-bottom: 15px;
}*/
	
	.cart-gift__recommendations {
    padding-top: 20px;
}

.cart-gift__product {
    display: flex;
    align-items: center;
		background: #fff;
		border: 3px solid #FFD8C8;
		border-radius: 13px;
		padding: 15px;
		position: relative;
		flex-basis: 48%;
}

.cart-gift__product img {
    max-width: 80px;
    margin-right: 15px;
}

.cart-gift__recommendations-title {
    margin-top: 20px;
    margin-bottom: 15px;
		text-align: center;
}
	


.cart-gift__product-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.cart-gift__item {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    text-align: left;
    flex-basis: 32%;
    padding: 15px;
    background-color: #fff;
    border-radius: 8px;
}

.cart-gift__item-image {
    flex-basis: 40%;
}

.cart-gift__item-details {
    flex-basis: 60%;
}

.cart-gift__item-title {
		font-size: 1rem;
		margin-bottom: 5px;
}

.cart-gift__item img {
    padding-right: 15px;
}

.cart-gift__item p {
    margin-bottom: 10px;
    font-size: 14px;
    color: #333;
}
	
.cart-gift__item.product-item a.button {
    width: 100%;
		margin-top: 10px;
}
	
	.cart-gift__recommendations,
	.cart-gift__goal-reached,
	.cart-gift__goal-unreached
	{
		display: none;
	}
	
	.cart-gift__wrapper.unreached .cart-gift__recommendations {
		display: block;
	}
	
	.cart-gift__wrapper.unreached .cart-gift__goal-unreached {
		display: block;
	}
	
	.cart-gift__wrapper.reached .cart-gift__goal-reached {
		display: block;
	}
	
	@media only screen and (min-width: 981px) {
		.cart-gift__product-list > div:nth-child(4) {
			display: none;
		}
	}
	
	@media only screen and (max-width: 890px) {
		.cart-gift__main {
			flex-direction: column;
		}
		
		.cart-gift__wrapper {
			padding: 40px 20px;
		}
		
		.cart-gift__product {
			margin-top: 25px;
		}
		
		.cart-gift__amount-left {
			text-align: center;
		}
		
		.cart-gift__item.product-item a.button {
			padding: 0px;
		}
		
		.cart-gift__item-image {
			flex-basis: 100%;
		}

		
		.cart-gift__item-image img {
			padding: 0;
		}
		
		.cart-gift__item {
			flex-basis: 47%;
			margin-bottom: 4%;
		}
		
		.cart-gift__item-details {
			flex-basis: 100%;
			margin-top: 12px;
		}
		
		.cart-gift__item-title {
			margin-bottom: 0;
			  display: -webkit-box;
  -webkit-line-clamp: 2;       /* Limit to 2 lines */
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
		}
		
		.cart-gift__amount-left h4 {
			font-size: 25px;
		}
		
		.cart-gift__item p {
			margin-bottom: 0;
		}
		
					
		.cart-gift__item-image img {
			aspect-ratio: 1 / 1;
			object-fit: cover;
	}
		
		
	}
	
	.cart_item[gave] .quantity {
    display: none;
}
/* ============================================================
   Snippet #73389 "Flyout Cart CSS"  --  was: elementor_head, conditions: general (all pages)
   ============================================================ */

.fly-cart-footer,button.shipmondo-modal-close:hover{
    box-shadow:none
}
	
	 .cart_list.product_list_widget .product-thumbnail {
     width: 82px!important;
}
	
	
	 .awdr_free_product_text .fly-cart-content .cart-goal-text {
     text-align: center;
}
	
	
	 .fly-cart-header .cart-goal:not(.shakeY) .cart-goal-text {
     -webkit-animation-name: nat_bounce;
     animation-name: nat_bounce;
     -webkit-animation-duration: 3s;
     animation-duration: 3s;
     animation-delay: 0s;
     animation-iteration-count: infinite;
}

	.fly-cart-footer a.view-cart {
    flex-basis: 40%;
    margin: 0;
    background-color: transparent;
    border-color: var(--minimog-color-button-text);
    padding: 0;
}

.fly-cart-footer a.view-cart:hover {
    background-color: var(--minimog-color-button-text);
    color: #fff;
}

.fly-cart-footer .button.checkout {
    flex-basis: 60%;
    margin-left: 10px;
}

@media only screen and (max-width: 768px) {
    .fly-cart-footer a.view-cart,
    .fly-cart-footer .button.checkout
    {
        flex-basis: 100%;
    }
    .fly-cart-footer .button.checkout {
        flex-basis: 100%;
    margin: 0
    }
    .fly-cart-footer .buttons {
        flex-wrap: wrap;
    }
    
} 

 .fly-cart-header {
     padding: 10px 20px 20px 20px;
}
	
	
	
	.fly-cart-body .subscription-usps {
    margin-left: -10px;
}

.fly-cart-body .subscription-usp {
    font-size: 90%;
    margin: 0;
}

	
.fly-cart-header .cart-goal-wrap {
    margin: 10px 0 0!important;
}
	
	
		/* from the theme*/
	
	
	
	
	
	
		/* Progress bar */
	
	.cart-progress-message {
    padding-bottom: 0px!important;
    margin-bottom: 0 !important;
    /* Sentence at 500, the amount at 600 (see the rules below). */
    font-weight: 500 !important;
			    -webkit-animation-name: nat_bounce;
    animation-name: nat_bounce;
    -webkit-animation-duration: 3s;
    animation-duration: 3s;
    animation-delay: 0s;
    animation-iteration-count: infinite;
}
	
	.cart-progress-message {
    color: var(--minimog-color-heading)!important;
}

/* Two states, told apart by the plugin's own data-ccpb-phase on the wrapper:
     - still short of the goal  -> sentence 500, the amount 600, so the number is what the eye
       lands on. Any <b> in the plugin's own message text just inherits the sentence weight.
     - goal reached (phase "second") -> the whole congratulation is 600; there is no amount in
       that message, so nothing needs to stand out inside it.
   Using the phase attribute rather than :has() keeps this working in every browser. */
.cart-progress-message b {
    font-weight: inherit;
}
.cart-progress-message .woocommerce-Price-amount,
.cart-progress-message .woocommerce-Price-amount * {
    font-weight: 600;
}
.cart-progress-bar-wrapper[data-ccpb-phase="second"] .cart-progress-message,
.cart-progress-bar-wrapper[data-ccpb-phase="second"] .cart-progress-message * {
    font-weight: 600 !important;
}


/* Cart progress bar (custom-cart-progress-bar plugin): the plugin gives its milestone icons z-index 10/11 inside a track with no stacking context, so they leaked above the header (z-index 4) and covered the mega menu on /kurv. isolation keeps every z-index inside the bar local, whatever the plugin sets. calio 2026-10-03 */
.ccpb-track {
	isolation: isolate;
}

	.milestone-icon span {
		color: var(--minimog-color-heading)!important;
}
	


.cart-progress-bar {
    height: 10px;
    max-width: 600px;
}


.cart-progress-bar-wrapper, .cart-sidebar-progress-bar-wrapper {
    margin: 15px 40px 5px 34px !important;
 }


.milestone-icon img {
    width: 30px;
 }


.circle-icon {
    width: 35px !important;
    height: 35px !important;
}
	
		
		
	.milestone-icon.milestone-gift {
    max-width: 40px;
}
	
	
	/* Progress bar */
	
	
	
	
	
/* payment icons at bottom */
.woocommerce-mini-cart__buttons img.payment-icons {
    display: block;
    margin: 12px auto 0;
    height: auto;
    text-align: center;
    width: 350px;
}

/* footer spacing */
.fly-cart-footer {
    margin-top: 0;
    padding-top: 10px;
    padding-bottom: 5px;
    padding-left: 10px;
    padding-right: 10px;
    background: transparent;
    border-top: 5px solid #e9f1fb85 !important;
}

/* Hide the Note/Shipping/Coupon action row in the fly-cart. */
.popup-fly-cart .cart-footer-actions {
    display: none !important;
}

/* tighten header padding to match your look */
.fly-cart-header {
    padding: 0;
    border-bottom: 5px solid #e9f1fb85 !important;
}

/* title */
h3.fly-cart-title {
    padding: 15px 50px 0 26px;
    font-size: 18px;
    font-weight: 600;
    text-align: left;
}

.bc-cart-header {
    display: flex;
    align-items: center;
    padding: 7px 15px !important;
    column-gap: 6px !important;
}

/* Title sits flush inside the flex header; the wrapper provides the padding. */
.bc-cart-header .fly-cart-title {
    padding: 0;
    margin: 0;
    line-height: 1.2;
}

/* Live cart-count pill (refreshed via the span.js-fly-cart-count WC fragment). */
.bc-cart-header .fly-cart-count {
    display: block;
    padding: 5px 8px;
    min-width: 24px;
    background: #19345C;
    color: #fff;
    border-radius: 25px;
    font-weight: 700;
    font-size: 12px;
    line-height: 1;
    text-align: center;
}

/* free shipping goal text */
.cart-goal-text {
    padding: 0 26px 0 26px;
    text-align: center;
    font-size: 16px;
}

/* progress bar spacing */
.cart-goal-progress.minimog-progress {
    padding: 0 26px 20px 26px;
}
	
	.fly-out-cart-payment-icons-div {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-top: 6px;
}
/* Only spread apart when a shipping icon is present too (nattelyst.dk); otherwise centre the lone payment icon. */
.fly-out-cart-payment-icons-div:has(.shipping-icons) {
    justify-content: space-between;
}

.fly-out-cart-payment-icons-div .payment-icons {
    height: 25px;
    width: auto;
}

.fly-out-cart-payment-icons-div .shipping-icons {
    height: 25px;
    width: auto;
}
	
	.popup-fly-cart .cart-totals-table {
    padding: 0 !important;
    background-color: #fff;
}

/* Fly-cart totals only: label column takes 60%, amount takes the rest. */
.popup-fly-cart .cart-totals-table .cart-totals-label {
    flex: 0 0 60%;
    max-width: 60%;
}

/* Total row: trim the CCAP total's top padding (8px source in class-ccap-freegift.php). */
.popup-fly-cart .ccap-cart-total .cart-totals-label,
.popup-fly-cart .ccap-cart-total .cart-totals-value {
    padding-top: 4px !important;
}

/* Coupon row: prefix + code + remove link in a centred flex row so the smaller
   "Fjern" lines up with the code; label keeps its column width, amount stays right. */
.popup-fly-cart .cart-totals-row.cart-discount .cart-totals-label {
    display: flex;
    align-items: center;
    gap: 5px;
}
.popup-fly-cart .cart-totals-row.cart-discount .remove-coupon-link {
    font-size: 12px;
    color: #d81f2a;
    white-space: nowrap;
}
.popup-fly-cart .cart-totals-row.cart-discount .remove-coupon-link .coupon-icon {
    font-size: 12px;
}

/* Compact fly-cart totals + buttons on mobile; hide only the "Rabatkode:" prefix. */
@media only screen and (max-width: 768px) {
    .popup-fly-cart .cart-totals-row.cart-discount .coupon-label-prefix {
        display: none;
    }
    .popup-fly-cart .cart-totals-row {
        min-height: 22px;
    }
    .popup-fly-cart .cart-subtotal .cart-totals-value .amount {
        font-size: 22px;
    }
    .popup-fly-cart .fly-cart-footer .buttons {
        margin-top: 8px;
    }
    .popup-fly-cart .fly-cart-footer a.view-cart {
        margin-top: 4px;
        height: 38px;
        min-height: 0;
        line-height: 36px;
        align-self: center;
    }
}
	
	@media (max-width: 768px) {
			a.button.checkout.wc-forward {
				margin-bottom: 0;
		}
}

	.fly-cart-body {
    height: 10px !important;
}

body .cart_list.product_list_widget li+li {
    margin-top: 10px !important;
}

.cart_list.product_list_widget .product-thumbnail {
	width: 70px !important;
	border-radius: 8px !important;
	}
/* --- Fly-cart tweaks (nattelyst) --------------------------------------- */

/* Drawer body: light-blue backdrop with white item cards. */
.popup-fly-cart .fly-cart-body {
	background: #e9f1fb85 !important;
	padding: 10px;
	padding-top: 5px;
	padding-bottom: 5px !important;
}
/* White cards for real cart items only — the .special-product-item offer keeps
   its own .special-product box (no white li background or padding). */
.popup-fly-cart .cart_list.product_list_widget .woocommerce-mini-cart-item:not(.special-product-item) {
	background: #fff;
	border-radius: 8px;
	padding: 10px;
	align-items: center;
}

/* Keep the progress-bar milestone icons behind the cart-updating overlay
   (the overlay is .inner:before at z-index 2); cap the icon stack below it. */
.popup-fly-cart .milestone-icons {
	z-index: 1 !important;
}
.popup-fly-cart .milestone-icon {
	z-index: 2 !important;
}

/* Compact cart line items: smaller product title + price, tighter quantity stepper.
   Scoped to .popup-fly-cart so only the drawer is affected. */
.popup-fly-cart .cart_list.product_list_widget .product-name {
	font-size: 14px;
	line-height: 1.3;
	margin-bottom: 2px;
}
.popup-fly-cart .cart_list.product_list_widget .product-price,
.popup-fly-cart .cart_list.product_list_widget .product-price .amount {
	font-size: 14px;
	line-height: 1.3;
}
/* The stepper size is driven by the --size token; shrinking it compacts the
   input and both buttons together. */
.popup-fly-cart .cart_list.product_list_widget div.quantity {
	--size: 30px;
	--icon-size: 13px;
	width: 90px;
}
.popup-fly-cart .cart_list.product_list_widget div.quantity input.qty {
	font-size: 14px;
}

/* Free-gift lines: quantity is locked to 1, so hide the "1" Calio Capture prints. Our own two
   gift systems print no quantity at all. */
.popup-fly-cart .ccap-gift-qty {
	display: none;
}

/* Free-gift lines: smaller thumbnail, in the fly-cart and on the cart page. Every gift line
   carries .calio-gift-line (calio-gift-rules.php), whichever system added it. */
.popup-fly-cart .cart_list.product_list_widget .woocommerce-mini-cart-item.calio-gift-line .product-thumbnail {
	width: 55px !important;
}
/* (The cart-page half of this rule moved into the .calio-cart-item block above when the cart
   line was rebuilt 2026-09-22; the fly-cart rule above is the one that is left.) */

/* Bundle lines: the bundled products join the bundle's white card (no left indent, no gap),
   with small thumbnails like the gift lines. Minimog indents .woosb-item-child 30px (10px on
   mobile); the li+li 10px gap rule above is !important, hence the !important here. Emil 2026-10-03 */
.popup-fly-cart .cart_list.product_list_widget .woocommerce-mini-cart-item.woosb-item-parent:has(+ .woosb-item-child) {
	border-radius: 8px 8px 0 0;
	padding-bottom: 6px;
}
.popup-fly-cart .cart_list.product_list_widget .woocommerce-mini-cart-item.woosb-item-child {
	margin-left: 0;
	margin-top: 0 !important;
	border-radius: 0;
	border-top: 1px solid #eef1f5;
	padding-top: 6px;
	padding-bottom: 6px;
}
.popup-fly-cart .cart_list.product_list_widget .woocommerce-mini-cart-item.woosb-item-child:not(:has(+ .woosb-item-child)) {
	border-radius: 0 0 8px 8px;
	padding-bottom: 10px;
}
.popup-fly-cart .cart_list.product_list_widget .woocommerce-mini-cart-item.woosb-item-child .product-thumbnail {
	width: 55px !important;
}
/* Minimog hides the bundled product's quantity row; it now holds "2 stk." when above 1 (cart-checkout.php). */
.popup-fly-cart .cart_list.product_list_widget .woocommerce-mini-cart-item.woosb-item-child .product-quantity-wrap {
	display: flex;
	font-size: 14px;
}

/* Remove link + quantity row: tighten vertical rhythm inside the item. */
.popup-fly-cart .cart_list.product_list_widget .remove.js-remove-from-cart {
	line-height: 1;
	padding-top: 0;
	padding-bottom: 0;
}
/* "Fjern" link: red, no underline, in cart page and fly-cart (Emil 2026-10-03). */
.popup-fly-cart .cart_list.product_list_widget .remove.js-remove-from-cart,
.popup-fly-cart .cart_list.product_list_widget .remove.js-remove-from-cart:hover,
.calio-cart-item .remove.btn-remove-from-cart:hover {
	text-decoration: none;
	color: #c4585e;
}
.popup-fly-cart .cart_list.product_list_widget .remove.js-remove-from-cart,
.calio-cart-item .remove.btn-remove-from-cart {
	font-size: 11px;
	font-weight: 600;
	text-transform: none;
	letter-spacing: normal;
}
.popup-fly-cart .cart_list.product_list_widget .product-quantity-wrap {
	margin-top: 5px;
}
/* Quantity-discount nudge under the price (flycart-quantity-discount.php). */
.popup-fly-cart .calio-qty-discount-hint {
	display: inline-block;
	margin-top: 6px;
	padding: 4px 10px;
	font-size: 12px;
	line-height: 1.35;
	color: #19345C;
	background: #e9f1fb;
	border-radius: 999px;
}

/* Close button vertically centred on the header row (matches buddyschoice). */
.popup-fly-cart .btn-close-fly-cart {
	top: 0;
	right: 0;
	color: #d81f2a;
}


/* Logged-in drawer height: the parent theme's .admin-bar rules replace the
   top/bottom anchor with a vh/% height, which lets the footer slip behind the
   mobile browser's bottom bar. Re-anchor top + bottom like the logged-out
   drawer (which works) and only offset the top by the admin-bar height. */
body.admin-bar .popup-fly-cart {
	top: 32px;
	bottom: 0;
	height: auto;
}
@media screen and (max-width: 782px) {
	body.admin-bar .popup-fly-cart { top: 46px; }
}
@media screen and (max-width: 600px) {
	body.admin-bar .popup-fly-cart { top: 0; }
}

/* Fly-cart free-gift notice (CCAP_FreeGift::flycart_notice_html) — the inner
   .woocommerce-message is the visible box, so the frame goes on that. */
.ccap-flycart-notice .woocommerce-message {
	border-radius: 8px;
	margin-bottom: 10px !important;
	border: 1px solid #f3c7a6 !important;
	background: #fff3e8 !important;
}

/* ============================================================
   Snippet #74319 "Black Friday"  --  was: elementor_head, conditions: general (all pages)
   ============================================================ */

.hot.hot-sale span {
    color: white!important;
}

	.hot.hot-sale {
		background: black!important;
	}


.black-friday-menu-item span.menu-item-title {
    background-color: black!important;
    color: white;
    padding: 4px 10px 4px 10px;
    border-radius: 6px;
    margin: -4px -10px -4px -10px;
}
	
	
@media (min-width: 768px) {
    div#page-title-bar {
        margin-top: 20px;
    }
}
/* ============================================================
   Snippet #77969 "Sales CSS [Christmas, Black Friday ETC. ]"  --  was: elementor_head, conditions: general (all pages)
   ============================================================ */

/*
	.christmas-gift-badge {
    background: #ab001b !important;
    border-radius: 4px!important;
}
	
		.christmas-gift-badge span {
		font-size: 13px!important;
}
	
	
	
	.christmas-menu-item span.menu-item-title {
    background-color: var(--e-global-color-81d4ae5);
    color: white;
    padding: 4px 10px 4px 10px;
    border-radius: 6px;
    margin: -4px -10px -4px -10px;
}
	
	
	.christmas-gift-badge {
    padding-left: 26px !important;
}
.christmas-gift-badge:before {
    content: url('/wp-content/uploads/2025/12/christmas-badge.svg');
    top: 5px !important;
    left: 5px !important;
}
	
	
	
	
	
	
	
	
	.january-sale-badge {
    background: var(--e-global-color-c9ea37d) !important;
    border-radius: 4px!important;
}
	
		.january-sale-badge span {
		font-size: 13px!important;
}
	
	
	
	.january-sale span.menu-item-title {
    background-color: var(--e-global-color-c9ea37d);
    color: white;
    padding: 4px 10px 4px 10px;
    border-radius: 6px;
    margin: -4px -10px -4px -10px;
}


	
	
	
	
	
	.valentines-sale-badge {
    background: var(--e-global-color-9acc42e) !important;
    border-radius: 4px!important;
}
	
		.valentines-sale-badge span {
		font-size: 13px!important;
}
	
	
	
	.valentines-sale span.menu-item-title {
    background-color: var(--e-global-color-9acc42e);
    color: white;
    padding: 4px 10px 4px 10px;
    border-radius: 6px;
    margin: -4px -10px -4px -10px;
}
	
	*/
	
	
		
	.regular-sale-badge {
    background: var(--e-global-color-c9ea37d) !important;
    border-radius: 4px!important;
}
	
		.regular-sale-badge span {
		font-size: 13px!important;
}
	
	
	
	.regular-sale span.menu-item-title {
    background-color: var(--e-global-color-c9ea37d);
    color: white;
    padding: 4px 10px 4px 10px;
    border-radius: 6px;
    margin: -4px -10px -4px -10px;
}
/* ============================================================
   Snippet #114516 "Active Campaign [CSS]"  --  was: elementor_head, conditions: general (all pages)
   ============================================================ */

/* Campaign badge — uses CSS vars with fallback values */
.campaign-badge {
    background: var(--campaign-badge-bg, var(--e-global-color-c9ea37d)) !important;
    color: var(--campaign-badge-fg, #ffffff) !important;
    border-radius: 4px !important;
}
.campaign-badge span {
    font-size: 13px !important;
}
.campaign-badge-menu span.menu-item-title {
    background: var(--campaign-badge-bg, var(--e-global-color-c9ea37d)) !important;
    color: var(--campaign-badge-fg, #ffffff) !important;
    padding: 4px 10px 4px 10px !important;
    border-radius: 6px !important;
    margin: -4px -10px -4px -10px;
}

/* ============================================================
   A/B test: skip the cart page  --  gate for the elements added to
   fly-cart.php ("Gå til kassen" + lock) and form-checkout.php (the
   "Har du en rabatkode?" block).

   Test 133224. Variation 1 = skip the cart page, variation 2 = today's
   site. Both new elements sit in the markup on every page with an inline
   display:none, so until the -1 class lands the site is exactly the
   control even if this cached file lags — which is also why the reveal
   rules below need !important to beat that inline style.

   Coexists with the MobilePay-express test: both fly-cart buttons carry
   `button checkout wc-forward`, so that test's layout rules apply to
   whichever one is showing.

   When the test concludes: delete this whole block, then the elements in
   fly-cart.php and form-checkout.php (or keep the winner and drop the
   loser's markup + its inline display:none).
   ============================================================ */

body.test-css-133224-1 .calio-cartskip-checkout {
    display: flex !important;
    align-items: center;
    justify-content: center;
}
body.test-css-133224-1 .calio-cartskip-cart {
    display: none !important;
}
body.test-css-133224-1 .calio-cartskip-coupon {
    display: block !important;
}

/* Discrete coupon block: a small toggle line, one tight field row once clicked.
   Field and button are pinned to the same 46px so the row reads as one control;
   !important because this stylesheet resets input heights with it elsewhere. */
/* Collapsed, the toggle line is all there is, so the block keeps only a small
   margin. The open state's extra room is padding on the form — padding, not
   margin, so it neither collapses into the margin below nor applies while the
   form is display:none. */
.calio-cartskip-coupon {
    margin: 0 0 10px;
}
.calio-cartskip-coupon .woocommerce-form-coupon-toggle {
    margin: 0;
    font-size: 14px;
}
.calio-cartskip-coupon form.checkout_coupon {
    margin: 4px 0 0;
    padding-bottom: 18px;
    max-width: 380px;
}
.calio-cartskip-coupon form.checkout_coupon .form-group {
    display: flex;
    gap: 8px;
    margin: 0;
}
/* margin:0 on both — the theme gives the button a top margin, which knocks it out
   of line with the field and pushes the whole row away from the toggle. */
.calio-cartskip-coupon form.checkout_coupon input.input-text {
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
    height: 46px !important;
    min-height: 46px !important;
    margin: 0;
    padding: 0 14px;
    border-radius: 5px;
}
.calio-cartskip-coupon form.checkout_coupon .btn-apply-coupon {
    flex: 0 0 auto;
    height: 46px;
    min-height: 46px;
    margin: 0;
    padding: 0 22px;
    border-radius: 5px;
    line-height: 1;
}


/* ============================================================
   CookieYes consent banner + preference modal

   The one and only .cky-* block in this file -- keep it that way.

   Layout (unchanged from what has been live): the notice is pulled out of
   CookieYes' bottom bar into a centred 500px modal with a shadow, 27px
   padding, a 28px title and buttons capped at 200px spread space-between.
   Under 550px it goes near-full-width and centres its text.

   Colour: CookieYes writes its palette as INLINE style attributes on these
   elements, so every colour declaration below needs !important to win --
   an author !important beats a normal inline declaration. Brand palette is
   #19345C (text) on #FFC1A7 (accent).
   ============================================================ */

/* --- Layout ------------------------------------------------------------ */
.cky-consent-container {
    bottom: 50% !important;
    left: 50% !important;
    transform: translate(-50%, 50%);
    width: 500px !important;
}

.cky-consent-container .cky-consent-bar {
    box-shadow: 0 32px 68px rgba(0, 0, 0, .3) !important;
    padding: 27px !important;
}

/* CookieYes' inner wrapper adds 24px of its own on top of the bar's 27px.
   Zero it so the bar's padding is the only thing setting the gutter. */
.cky-consent-bar .cky-notice-content-wrapper {
    padding: 0 !important;
}

/* "Powered by CookieYes" is hidden further down, but its wrapper div keeps a
   12px padding-bottom that leaves a gap under the buttons -- drop the wrapper
   as well. :has() is unsupported on Firefox below 121, where the whole
   selector is simply ignored and the old gap stays; nothing else breaks. */
.cky-consent-bar > div:has(> [data-cky-tag="powered-by"]) {
    display: none !important;
}

.cky-notice .cky-title {
    font-size: 28px !important;
    margin-bottom: 15px !important;
}

/* Never scroll the description. CookieYes caps it with max-height:40vh plus
   overflow-y:scroll at (max-width:440px) and at (min-width:576px) and
   (max-height:660px). Its own @media (max-height:480px) rule, which scrolls
   .cky-consent-container as a whole on very short screens, is left alone. */
.cky-notice-des {
    max-height: none !important;
    overflow: visible !important;
}

.cky-btn {
    max-width: 200px !important;
}

.cky-notice-btn-wrapper {
    justify-content: space-between !important;
}

/* Notice buttons are 8px; the preference modal's are 5px (CookieYes' own
   class name carries the "prefrence" typo -- do not correct it). */
button.cky-btn.cky-btn-accept,
button.cky-btn.cky-btn-reject {
    border-radius: 8px;
}

.cky-prefrence-btn-wrapper .cky-btn {
    border-radius: 5px !important;
}

/* The toggle knob ships mis-centred; unset the theme's transform and drive
   the checked position ourselves. */
.cky-switch input[type="checkbox"]:before {
    top: unset !important;
    transform: unset !important;
}

.cky-switch input[type="checkbox"]:checked:before {
    -webkit-transform: translateX(20px) !important;
    -ms-transform: translateX(20px) !important;
    transform: translateX(20px) !important;
}

/* --- Colour ------------------------------------------------------------ */
/* Title, body copy and category headings, banner and modal alike. The
   wildcards cover the rich-text description, whose spans carry their own
   inline colour. */
.cky-title,
.cky-preference-title,
.cky-notice-des,
.cky-notice-des *,
.cky-preference-content-wrapper,
.cky-preference-content-wrapper *,
.cky-accordion-header .cky-accordion-btn,
.cky-accordion-header-des,
.cky-accordion-header-des *,
.cky-always-active,
.cky-gpc-wrapper .cky-gpc-desc,
.cky-gpc-wrapper .cky-gpc-desc * {
    color: #19345C !important;
}

/* Accept -- the one filled button, in both the notice and the modal. */
button.cky-btn.cky-btn-accept {
    background-color: #FFC1A7 !important;
    border-color: #FFC1A7 !important;
    color: #19345C !important;
}

/* Customize -- text only, no frame. */
.cky-notice .cky-btn-customize,
button.cky-btn.cky-btn-customize {
    background-color: transparent !important;
    border-color: transparent !important;
    color: #19345C !important;
}

/* Save preferences and reject -- outlined. Reject is never hidden: .se shows
   it in the banner and it has to stay clickable. */
button.cky-btn.cky-btn-preferences,
button.cky-btn.cky-btn-reject {
    background-color: transparent !important;
    border-color: #FFC1A7 !important;
    color: #19345C !important;
}

.cky-switch input[type="checkbox"]:checked {
    background-color: #FFC1A7 !important;
}

/* "Show more" and any link inside the banner or the modal. */
.cky-show-desc-btn,
.cky-notice-des a,
.cky-preference-content-wrapper a,
.cky-accordion-header-des a,
.cky-gpc-wrapper .cky-gpc-desc a {
    color: #19345C !important;
}

/* CookieYes' own branding, in the banner footer and in the modal footer. */
[data-cky-tag="powered-by"],
[data-cky-tag="detail-powered-by"] {
    display: none !important;
}

/* --- Mobile ------------------------------------------------------------ */
@media (max-width: 550px) {
    .cky-custom-brand-logo-wrapper,
    .cky-notice .cky-title,
    .cky-notice-des,
    .cky-notice-btn-wrapper {
        padding: 0 !important;
    }

    body .cky-btn {
        max-width: unset !important;
    }

    body .cky-consent-container {
        width: 93% !important;
    }

    body .cky-consent-container .cky-consent-bar {
        padding: 35px 28px 20px 28px !important;
        text-align: center !important;
    }

    .cky-notice .cky-title {
        line-height: 26px !important;
    }
}

/* Checkout fields at 16px: iOS Safari zooms the page when a focused field is under 16px. */
.woocommerce-checkout .input-text,
.woocommerce-checkout input[type="text"],
.woocommerce-checkout input[type="email"],
.woocommerce-checkout input[type="tel"],
.woocommerce-checkout input[type="number"],
.woocommerce-checkout input[type="password"],
.woocommerce-checkout select,
.woocommerce-checkout textarea {
    font-size: 16px !important;
}

/* Checkout collapses to one column on tablet so #order_review is wide enough for the shipping cards. */
@media (max-width: 1024px) {
    .row-checkout-wrap {
        flex-wrap: wrap;
    }

    .row-checkout-wrap > [class*="col-md-"] {
        flex: 0 0 100%;
        max-width: 100%;
    }

    /* The review column is flex-end with a 440px .inner cap; at full width that strands it right. */
    .row-checkout-wrap > .col-checkout-review-order {
        justify-content: flex-start;
    }

    .row-checkout-wrap > .col-checkout-review-order > .inner {
        width: 100%;
        max-width: none;
    }
}

/* Hide floating reCAPTCHA v3 badge (Elementor forms). visibility, not display:none, keeps reCAPTCHA working. */
.grecaptcha-badge { visibility: hidden; }


/* ============================================================
   Coupon "apply" button — hover
   Minimog's global button hover paints a 0.2rem ring
   (box-shadow: 0 0 0 .2rem var(--minimog-color-button-hover-background)), which next to
   the coupon field reads as a stray shadow. Fill the button instead, matching the border
   and text colour it already carries. Cart page and both coupon modals.
   ============================================================ */
.form-coupon button[name="apply_coupon"]:hover,
.form-coupon button[name="apply_coupon"]:focus {
    box-shadow: none;
    background-color: var(--minimog-color-heading);
    border-color: var(--minimog-color-heading);
    color: #fff;
}


/* ============================================================
   Cart / checkout page heading
   "Kurv" / "Kasse" take the theme's default 42px everywhere, which reads small on a phone.
   One step up at phone width only; desktop keeps the theme's own size.
   ============================================================ */
@media only screen and (max-width: 767px) {
    .woocommerce-cart .page-title-bar-heading .heading,
    .woocommerce-checkout .page-title-bar-heading .heading {
        font-size: 48px;
    }
}


/* ============================================================
   Elementor loop grids — short badges split per character
   Elementor Pro's own custom-frontend.min.css sets
   .elementor-grid-0 .elementor-grid .elementor-grid-item { word-break: break-word }.
   Inside a flex product card that makes a short label's min-content ONE CHARACTER wide, so
   the card shrinks the badge to ~23px and "Ny" comes out as "N" over "y" (seen in the mobile
   slide-out menu's product grid on .no). Headings in a loop item are labels, not prose, so they
   break on words like everything else; long product names still wrap normally.
   ============================================================ */
.e-loop-item .elementor-heading-title {
    word-break: normal;
}

/* Header cart badge pulses while the cart has items (data-count is refreshed by WC fragments). */
@keyframes calio-cart-pulse {
    0%   { transform: scale(1); box-shadow: 0 0 0 0 rgba(25, 52, 92, .6); }
    70%  { transform: scale(1.12); box-shadow: 0 0 0 7px rgba(25, 52, 92, 0); }
    100% { transform: scale(1); box-shadow: 0 0 0 0 rgba(25, 52, 92, 0); }
}
.mini-cart-badge:not([data-count="0"]) {
    animation: calio-cart-pulse 1.6s ease-out infinite;
}
@media (prefers-reduced-motion: reduce) {
    .mini-cart-badge { animation: none; }
}

/* Hide lightGallery caption and toolbar buttons (share, zoom, fullscreen, autoplay, download) */
.lg-sub-html,
.lg-share,
#lg-share,
.lg-actual-size,
#lg-actual-size,
.lg-zoom-out,
#lg-zoom-out,
.lg-zoom-in,
#lg-zoom-in,
.lg-fullscreen,
.lg-autoplay-button,
.lg-download,
#lg-download {
    display: none;
}

/* Modern Accordion (tm-accordion, style 01): titles 600 weight, keep the normal text colour when
   open or hovered (the theme turns them black), and 16px on mobile instead of the theme's 15px.
   "body" prefix beats the theme's 0,5,0 selectors. Emil 2026-10-02. */
body .minimog-accordion-style-01 .minimog-accordion .accordion-title {
    font-weight: 600;
}
body .minimog-accordion-style-01 .minimog-accordion .accordion-section.active .accordion-title,
body .minimog-accordion-style-01 .minimog-accordion .accordion-section.active .accordion-icon,
body .minimog-accordion-style-01 .minimog-accordion .accordion-section:hover .accordion-title,
body .minimog-accordion-style-01 .minimog-accordion .accordion-section:hover .accordion-icon {
    color: inherit;
}
@media (max-width: 767px) {
    body .minimog-accordion-style-01 .minimog-accordion .accordion-title {
        font-size: 16px;
    }
}
/* Open item: keep the light grey line under the question instead of the theme's black one (Emil 2026-10-06). */
body .minimog-accordion-style-01 .minimog-accordion .accordion-section.active .accordion-header {
    border-bottom-color: #eee;
}


/* "MENU" label after the mobile menu icon, same as buddyschoice.dk (Emil 2026-10-03). */
#page-open-mobile-menu .icon::after {
    content: 'MENU';
    font-size: 17px;
    font-weight: 600;
    letter-spacing: 0.2px;
    text-transform: uppercase;
    padding-left: 4px
}

/* Desktop main menu: active item (current page or its parent), hover colour and hover underline all in #5097FF instead of the theme's light nav hover colour (#FFC1A7), which was hard to read. Set on the menu itself so it beats the header-variant colours. calio 2026-10-03 */
.page-header .page-navigation .menu__container {
	--header-nav-link-hover-color: #5097FF;
	--nav-item-hover-line-color: #5097FF;
}

/* ===== Small fixes, all stores (Emil 2026-10-03) ===== */
/* A free gift's quantity with no stepper ("3 stk."), cart page and fly-cart. */
.calio-cart-item.calio-gift-line .calio-cart-item__qty,
.popup-fly-cart .cart_list.product_list_widget .woocommerce-mini-cart-item.calio-gift-line .product-quantity-wrap {
	font-size: 14px;
}
/* Bundled products on the cart page: title centred on the small image, as in the fly-cart. */
.calio-cart-item.woosb-item-child {
	align-items: center;
}
.calio-cart-item.woosb-item-child .calio-cart-item__title {
	margin-bottom: 0;
}
.calio-cart-item.woosb-item-child .calio-cart-item__price:empty {
	display: none;
}
.calio-cart-item.woosb-item-child .calio-cart-item__actions {
	margin-top: 2px;
}
/* Search page: no "Search results for" title bar and no "we found some products" line;
   the search field shows the query. */
body.search .page-title-bar {
	display: none;
}
body.search .product-search-results > .search-results-heading {
	display: none;
}
body.search .search-page-search-form {
	margin-top: 40px;
}
@media (max-width: 767px) {
	body.search .search-page-search-form {
		margin-top: 24px;
	}
}

/* ===== Small fixes, round 2 (Emil 2026-10-03) ===== */
/* Header: the "Kundeservice" button and the icons (search, cart, menu) hover in #5097FF like the
   main menu, instead of the theme's light #FFC1A7. Set on those header elements only. */
.page-header .header-buttons,
.page-header .header-icon {
	--header-link-hover-color: #5097FF;
	--header-icon-hover-color: #5097FF;
}
/* Footer: room for the Calio Capture tab (60px tall, 10px from the bottom) so it never covers the
   last footer line. On product pages the theme already pads the body by the height of the sticky
   add-to-cart bar and the tab sits above that bar, so the same 75px is enough there too. */
body:has(#ccap-floating-tab) .page-footer {
	padding-bottom: 75px;
}

/* ===== Cart, round 3 (Emil 2026-10-04) ===== */
/* Bundled product with "2 stk.": the quantity sits right under the title. Only bundled lines;
   their quantity row is plain text, so it needs no 28px stepper line height. */
.popup-fly-cart .cart_list.product_list_widget .woocommerce-mini-cart-item.woosb-item-child .product-quantity-wrap {
	margin-top: 2px;
	line-height: 18px;
}
.calio-cart-item.woosb-item-child .calio-cart-item__actions {
	line-height: 18px;
}
/* Cart page: every line centred vertically on its image (text block and line total). */
.calio-cart-item {
	align-items: center;
}
.calio-cart-item .calio-cart-item__total {
	align-self: center;
}
/* Cart goals (cart page + fly-cart): labels on two lines ("Gratis" / "Levering"), so the last
   label no longer needs a wide right margin and the bar sits centred. Replaces the old
   translate(-66%) and the 48px/30px margins. 13px more room under the bar for the second line. */
/* .ccpb-track prefix: the plugin prints its own CSS after this file, so equal selectors lose. */
.ccpb-track .milestone-icon span {
	white-space: normal;
	width: min-content;
	line-height: 1.15;
}
.cart-progress-bar-wrapper .ccpb-track,
.cart-sidebar-progress-bar-wrapper .ccpb-track {
	padding-bottom: 47px;
}
/* Gift lines ("5 stk." with no stepper): the quantity sits right under the title, like the
   bundled products. Fly-cart and cart page. Emil 2026-10-04 */
.popup-fly-cart .cart_list.product_list_widget .woocommerce-mini-cart-item.calio-gift-line .product-quantity-wrap {
	margin-top: 2px;
	line-height: 18px;
}
.calio-cart-item.calio-gift-line .calio-cart-item__actions {
	line-height: 18px;
}

/* Tyngdedyne (131966) + Strikket Tyngdetæppe (131968) only (Emil 2026-10-08):
   size as buttons (attribute pa_dynestoerrelse, type "text", used by no other product)
   and less space above and below the variant choice. */
.postid-131966 .isw-swatch--isw_text .isw-term {
    min-width: 0;
    height: 38px;
    margin: 8px 8px 0 0;
    padding: 0 14px;
    font-size: 15px;
    line-height: 38px;
}
.postid-131966 .isw-swatch--isw_text .isw-term.isw-selected {
    box-shadow: inset 0 0 0 1px var(--minimog-color-heading);
}
/* Beats the theme's .single-product .entry-summary form.cart .label > label (500) */
.postid-131966 .entry-summary form.cart .row-isw-swatch .label > label,
.postid-131968 .entry-summary form.cart .row-isw-swatch .label > label {
    font-weight: 600;
}
.postid-131966 .row-isw-swatch--isw_text .selected-term-name {
    display: none;
}
.postid-131966 .row-isw-swatch--isw_text .label {
    margin-bottom: 0;
}
/* OEKO-TEX logo (ACF produkt_badge_2, page-inserts.php) bottom right instead of top right */
.postid-131966 .woo-single-gallery .product-main-image:after,
.postid-131968 .woo-single-gallery .product-main-image:after {
    top: auto;
    bottom: 12px;
    right: 12px;
    width: 76px;
    height: 76px;
    background-size: contain;
}
.postid-131966 form.variations_form,
.postid-131968 form.variations_form {
    margin-top: 12px !important;
}
.postid-131966 .variations .row-isw-swatch,
.postid-131968 .variations .row-isw-swatch {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
.postid-131966 .woocommerce-variation-add-to-cart,
.postid-131968 .woocommerce-variation-add-to-cart {
    padding-top: 14px !important;
}
.postid-131966 .wpcpq-wrap,
.postid-131968 .wpcpq-wrap {
    margin-bottom: 0;
}
.postid-131966 .elementor-97658 .elementor-element-f8e425b,
.postid-131968 .elementor-97658 .elementor-element-f8e425b {
    margin-bottom: 4px !important;
}

/* Product title line-height on mobile: theme 1.54 looked too airy when the title wraps to two lines (Emil 2026-10-08) */
@media (max-width: 767px) {
    .single-product .entry-summary .product_title.entry-title {
        line-height: 1.3;
    }
    /* A little air between title and byline (Emil 2026-10-08) */
    .single-product .entry-summary .product_title.entry-title + .product-byline {
        margin-top: 6px;
    }
}

/* CALIO 2026-10-22: play button for autoplay videos the browser blocks (iOS Low Power Mode, in-app browsers).
   Added by the "autoplay video fallback" block in js/body-end.js. Nattelyst blue, shown over the poster. */
.elementor-widget-video .elementor-wrapper {
    position: relative;
}
.calio-video-play {
    position: absolute;
    left: 50%;
    top: 50%;
    z-index: 2;
    width: 56px;
    height: 56px;
    margin: -28px 0 0 -28px;
    border-radius: 50%;
    cursor: pointer;
    background: rgba(25, 52, 92, .92);
    box-shadow: 0 0 0 4px rgba(255, 255, 255, .35), 0 6px 18px rgba(25, 52, 92, .35);
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px);
    transition: transform .2s ease, background .2s ease;
}
.calio-video-play:hover,
.calio-video-play:focus-visible {
    transform: scale(1.06);
    background: #19345C;
}
.calio-video-play:after {
    content: "";
    position: absolute;
    left: 22px;
    top: 18px;
    border-style: solid;
    border-width: 10px 0 10px 16px;
    border-color: transparent transparent transparent #fff;
}
.calio-video-play[hidden] {
    display: none;
}

/* Mobile: first product-gallery image 10:11 instead of 3:4, so title and price show sooner on landing
   (Emil 2026-10-25: 10:11 on all, 1:1 was too tight on some). Only products whose first image (and variation
   images) fit 10:11 without cutting anything (checked by hand 2026-10-25; left out: photos and packs that touch
   the edge, square images). The gallery has that shape while the first image is shown (also before Swiper loads)
   and grows back to the other images' height when swiped (max-height transition). Product page only.
   New product: add its postid after checking its first image. */
@media (max-width: 767px) {
    :is(
        .postid-3525, .postid-5180, .postid-5200, .postid-5603, .postid-6856, .postid-7041, .postid-7063, .postid-7576,
        .postid-7582, .postid-7584, .postid-7589, .postid-7594, .postid-7597, .postid-7600, .postid-7602, .postid-7641,
        .postid-7666, .postid-7696, .postid-8133, .postid-8870, .postid-8889, .postid-9046, .postid-9163, .postid-10252,
        .postid-10300, .postid-10355, .postid-10357, .postid-10361, .postid-10946, .postid-10953, .postid-10956, .postid-10958,
        .postid-11628, .postid-12442, .postid-12443, .postid-12492, .postid-12651, .postid-12706, .postid-12770, .postid-12782,
        .postid-12897, .postid-12917, .postid-12947, .postid-12962, .postid-13081, .postid-13128, .postid-13482, .postid-13490,
        .postid-13501, .postid-13547, .postid-13597, .postid-13615, .postid-13618, .postid-15055, .postid-15150, .postid-15153,
        .postid-15156, .postid-15158, .postid-15161, .postid-15164, .postid-15541, .postid-15549, .postid-15709, .postid-15762,
        .postid-15766, .postid-15771, .postid-15808, .postid-15872, .postid-16209, .postid-16212, .postid-16215, .postid-16217,
        .postid-16226, .postid-16230, .postid-16232, .postid-16236, .postid-16240, .postid-16427, .postid-16452, .postid-16683,
        .postid-17395, .postid-19516, .postid-19602, .postid-21228, .postid-21259, .postid-21721, .postid-22199, .postid-22220,
        .postid-25439, .postid-32279, .postid-32908, .postid-34669, .postid-35340, .postid-36780, .postid-36838, .postid-37571,
        .postid-37820, .postid-39833, .postid-56668, .postid-56671, .postid-58217, .postid-58227, .postid-58239, .postid-64280,
        .postid-64291, .postid-66601, .postid-66609, .postid-66672, .postid-68249, .postid-69324, .postid-70053, .postid-71343,
        .postid-71395, .postid-71446, .postid-72482, .postid-72485, .postid-72489, .postid-74769, .postid-113532, .postid-118587,
        .postid-118593, .postid-118596, .postid-123534, .postid-127566, .postid-131565, .postid-131567, .postid-131569, .postid-131571,
        .postid-131966, .postid-131968
    ) .woo-single-gallery .minimog-main-swiper .swiper-inner {
        container-type: inline-size;
    }
    :is(
        .postid-3525, .postid-5180, .postid-5200, .postid-5603, .postid-6856, .postid-7041, .postid-7063, .postid-7576,
        .postid-7582, .postid-7584, .postid-7589, .postid-7594, .postid-7597, .postid-7600, .postid-7602, .postid-7641,
        .postid-7666, .postid-7696, .postid-8133, .postid-8870, .postid-8889, .postid-9046, .postid-9163, .postid-10252,
        .postid-10300, .postid-10355, .postid-10357, .postid-10361, .postid-10946, .postid-10953, .postid-10956, .postid-10958,
        .postid-11628, .postid-12442, .postid-12443, .postid-12492, .postid-12651, .postid-12706, .postid-12770, .postid-12782,
        .postid-12897, .postid-12917, .postid-12947, .postid-12962, .postid-13081, .postid-13128, .postid-13482, .postid-13490,
        .postid-13501, .postid-13547, .postid-13597, .postid-13615, .postid-13618, .postid-15055, .postid-15150, .postid-15153,
        .postid-15156, .postid-15158, .postid-15161, .postid-15164, .postid-15541, .postid-15549, .postid-15709, .postid-15762,
        .postid-15766, .postid-15771, .postid-15808, .postid-15872, .postid-16209, .postid-16212, .postid-16215, .postid-16217,
        .postid-16226, .postid-16230, .postid-16232, .postid-16236, .postid-16240, .postid-16427, .postid-16452, .postid-16683,
        .postid-17395, .postid-19516, .postid-19602, .postid-21228, .postid-21259, .postid-21721, .postid-22199, .postid-22220,
        .postid-25439, .postid-32279, .postid-32908, .postid-34669, .postid-35340, .postid-36780, .postid-36838, .postid-37571,
        .postid-37820, .postid-39833, .postid-56668, .postid-56671, .postid-58217, .postid-58227, .postid-58239, .postid-64280,
        .postid-64291, .postid-66601, .postid-66609, .postid-66672, .postid-68249, .postid-69324, .postid-70053, .postid-71343,
        .postid-71395, .postid-71446, .postid-72482, .postid-72485, .postid-72489, .postid-74769, .postid-113532, .postid-118587,
        .postid-118593, .postid-118596, .postid-123534, .postid-127566, .postid-131565, .postid-131567, .postid-131569, .postid-131571,
        .postid-131966, .postid-131968
    ) .woo-single-gallery .minimog-main-swiper .swiper {
        max-height: 200cqw;
        transition: max-height .3s ease;
    }
    :is(
        .postid-3525, .postid-5180, .postid-5200, .postid-5603, .postid-6856, .postid-7041, .postid-7063, .postid-7576,
        .postid-7582, .postid-7584, .postid-7589, .postid-7594, .postid-7597, .postid-7600, .postid-7602, .postid-7641,
        .postid-7666, .postid-7696, .postid-8133, .postid-8870, .postid-8889, .postid-9046, .postid-9163, .postid-10252,
        .postid-10300, .postid-10355, .postid-10357, .postid-10361, .postid-10946, .postid-10953, .postid-10956, .postid-10958,
        .postid-11628, .postid-12442, .postid-12443, .postid-12492, .postid-12651, .postid-12706, .postid-12770, .postid-12782,
        .postid-12897, .postid-12917, .postid-12947, .postid-12962, .postid-13081, .postid-13128, .postid-13482, .postid-13490,
        .postid-13501, .postid-13547, .postid-13597, .postid-13615, .postid-13618, .postid-15055, .postid-15150, .postid-15153,
        .postid-15156, .postid-15158, .postid-15161, .postid-15164, .postid-15541, .postid-15549, .postid-15709, .postid-15762,
        .postid-15766, .postid-15771, .postid-15808, .postid-15872, .postid-16209, .postid-16212, .postid-16215, .postid-16217,
        .postid-16226, .postid-16230, .postid-16232, .postid-16236, .postid-16240, .postid-16427, .postid-16452, .postid-16683,
        .postid-17395, .postid-19516, .postid-19602, .postid-21228, .postid-21259, .postid-21721, .postid-22199, .postid-22220,
        .postid-25439, .postid-32279, .postid-32908, .postid-34669, .postid-35340, .postid-36780, .postid-36838, .postid-37571,
        .postid-37820, .postid-39833, .postid-56668, .postid-56671, .postid-58217, .postid-58227, .postid-58239, .postid-64280,
        .postid-64291, .postid-66601, .postid-66609, .postid-66672, .postid-68249, .postid-69324, .postid-70053, .postid-71343,
        .postid-71395, .postid-71446, .postid-72482, .postid-72485, .postid-72489, .postid-74769, .postid-113532, .postid-118587,
        .postid-118593, .postid-118596, .postid-123534, .postid-127566, .postid-131565, .postid-131567, .postid-131569, .postid-131571,
        .postid-131966, .postid-131968
    ) .woo-single-gallery .minimog-main-swiper .swiper:not(.swiper-initialized),
    :is(
        .postid-3525, .postid-5180, .postid-5200, .postid-5603, .postid-6856, .postid-7041, .postid-7063, .postid-7576,
        .postid-7582, .postid-7584, .postid-7589, .postid-7594, .postid-7597, .postid-7600, .postid-7602, .postid-7641,
        .postid-7666, .postid-7696, .postid-8133, .postid-8870, .postid-8889, .postid-9046, .postid-9163, .postid-10252,
        .postid-10300, .postid-10355, .postid-10357, .postid-10361, .postid-10946, .postid-10953, .postid-10956, .postid-10958,
        .postid-11628, .postid-12442, .postid-12443, .postid-12492, .postid-12651, .postid-12706, .postid-12770, .postid-12782,
        .postid-12897, .postid-12917, .postid-12947, .postid-12962, .postid-13081, .postid-13128, .postid-13482, .postid-13490,
        .postid-13501, .postid-13547, .postid-13597, .postid-13615, .postid-13618, .postid-15055, .postid-15150, .postid-15153,
        .postid-15156, .postid-15158, .postid-15161, .postid-15164, .postid-15541, .postid-15549, .postid-15709, .postid-15762,
        .postid-15766, .postid-15771, .postid-15808, .postid-15872, .postid-16209, .postid-16212, .postid-16215, .postid-16217,
        .postid-16226, .postid-16230, .postid-16232, .postid-16236, .postid-16240, .postid-16427, .postid-16452, .postid-16683,
        .postid-17395, .postid-19516, .postid-19602, .postid-21228, .postid-21259, .postid-21721, .postid-22199, .postid-22220,
        .postid-25439, .postid-32279, .postid-32908, .postid-34669, .postid-35340, .postid-36780, .postid-36838, .postid-37571,
        .postid-37820, .postid-39833, .postid-56668, .postid-56671, .postid-58217, .postid-58227, .postid-58239, .postid-64280,
        .postid-64291, .postid-66601, .postid-66609, .postid-66672, .postid-68249, .postid-69324, .postid-70053, .postid-71343,
        .postid-71395, .postid-71446, .postid-72482, .postid-72485, .postid-72489, .postid-74769, .postid-113532, .postid-118587,
        .postid-118593, .postid-118596, .postid-123534, .postid-127566, .postid-131565, .postid-131567, .postid-131569, .postid-131571,
        .postid-131966, .postid-131968
    ) .woo-single-gallery .minimog-main-swiper .swiper:has(.product-main-image.swiper-slide-active) {
        max-height: 110cqw;
    }
    :is(
        .postid-3525, .postid-5180, .postid-5200, .postid-5603, .postid-6856, .postid-7041, .postid-7063, .postid-7576,
        .postid-7582, .postid-7584, .postid-7589, .postid-7594, .postid-7597, .postid-7600, .postid-7602, .postid-7641,
        .postid-7666, .postid-7696, .postid-8133, .postid-8870, .postid-8889, .postid-9046, .postid-9163, .postid-10252,
        .postid-10300, .postid-10355, .postid-10357, .postid-10361, .postid-10946, .postid-10953, .postid-10956, .postid-10958,
        .postid-11628, .postid-12442, .postid-12443, .postid-12492, .postid-12651, .postid-12706, .postid-12770, .postid-12782,
        .postid-12897, .postid-12917, .postid-12947, .postid-12962, .postid-13081, .postid-13128, .postid-13482, .postid-13490,
        .postid-13501, .postid-13547, .postid-13597, .postid-13615, .postid-13618, .postid-15055, .postid-15150, .postid-15153,
        .postid-15156, .postid-15158, .postid-15161, .postid-15164, .postid-15541, .postid-15549, .postid-15709, .postid-15762,
        .postid-15766, .postid-15771, .postid-15808, .postid-15872, .postid-16209, .postid-16212, .postid-16215, .postid-16217,
        .postid-16226, .postid-16230, .postid-16232, .postid-16236, .postid-16240, .postid-16427, .postid-16452, .postid-16683,
        .postid-17395, .postid-19516, .postid-19602, .postid-21228, .postid-21259, .postid-21721, .postid-22199, .postid-22220,
        .postid-25439, .postid-32279, .postid-32908, .postid-34669, .postid-35340, .postid-36780, .postid-36838, .postid-37571,
        .postid-37820, .postid-39833, .postid-56668, .postid-56671, .postid-58217, .postid-58227, .postid-58239, .postid-64280,
        .postid-64291, .postid-66601, .postid-66609, .postid-66672, .postid-68249, .postid-69324, .postid-70053, .postid-71343,
        .postid-71395, .postid-71446, .postid-72482, .postid-72485, .postid-72489, .postid-74769, .postid-113532, .postid-118587,
        .postid-118593, .postid-118596, .postid-123534, .postid-127566, .postid-131565, .postid-131567, .postid-131569, .postid-131571,
        .postid-131966, .postid-131968
    ) .woo-single-gallery .minimog-main-swiper .swiper-wrapper {
        align-items: flex-start;
    }
    :is(
        .postid-3525, .postid-5180, .postid-5200, .postid-5603, .postid-6856, .postid-7041, .postid-7063, .postid-7576,
        .postid-7582, .postid-7584, .postid-7589, .postid-7594, .postid-7597, .postid-7600, .postid-7602, .postid-7641,
        .postid-7666, .postid-7696, .postid-8133, .postid-8870, .postid-8889, .postid-9046, .postid-9163, .postid-10252,
        .postid-10300, .postid-10355, .postid-10357, .postid-10361, .postid-10946, .postid-10953, .postid-10956, .postid-10958,
        .postid-11628, .postid-12442, .postid-12443, .postid-12492, .postid-12651, .postid-12706, .postid-12770, .postid-12782,
        .postid-12897, .postid-12917, .postid-12947, .postid-12962, .postid-13081, .postid-13128, .postid-13482, .postid-13490,
        .postid-13501, .postid-13547, .postid-13597, .postid-13615, .postid-13618, .postid-15055, .postid-15150, .postid-15153,
        .postid-15156, .postid-15158, .postid-15161, .postid-15164, .postid-15541, .postid-15549, .postid-15709, .postid-15762,
        .postid-15766, .postid-15771, .postid-15808, .postid-15872, .postid-16209, .postid-16212, .postid-16215, .postid-16217,
        .postid-16226, .postid-16230, .postid-16232, .postid-16236, .postid-16240, .postid-16427, .postid-16452, .postid-16683,
        .postid-17395, .postid-19516, .postid-19602, .postid-21228, .postid-21259, .postid-21721, .postid-22199, .postid-22220,
        .postid-25439, .postid-32279, .postid-32908, .postid-34669, .postid-35340, .postid-36780, .postid-36838, .postid-37571,
        .postid-37820, .postid-39833, .postid-56668, .postid-56671, .postid-58217, .postid-58227, .postid-58239, .postid-64280,
        .postid-64291, .postid-66601, .postid-66609, .postid-66672, .postid-68249, .postid-69324, .postid-70053, .postid-71343,
        .postid-71395, .postid-71446, .postid-72482, .postid-72485, .postid-72489, .postid-74769, .postid-113532, .postid-118587,
        .postid-118593, .postid-118596, .postid-123534, .postid-127566, .postid-131565, .postid-131567, .postid-131569, .postid-131571,
        .postid-131966, .postid-131968
    ) .woo-single-gallery .minimog-main-swiper .swiper-slide {
        height: auto;
    }
    :is(
        .postid-3525, .postid-5180, .postid-5200, .postid-5603, .postid-6856, .postid-7041, .postid-7063, .postid-7576,
        .postid-7582, .postid-7584, .postid-7589, .postid-7594, .postid-7597, .postid-7600, .postid-7602, .postid-7641,
        .postid-7666, .postid-7696, .postid-8133, .postid-8870, .postid-8889, .postid-9046, .postid-9163, .postid-10252,
        .postid-10300, .postid-10355, .postid-10357, .postid-10361, .postid-10946, .postid-10953, .postid-10956, .postid-10958,
        .postid-11628, .postid-12442, .postid-12443, .postid-12492, .postid-12651, .postid-12706, .postid-12770, .postid-12782,
        .postid-12897, .postid-12917, .postid-12947, .postid-12962, .postid-13081, .postid-13128, .postid-13482, .postid-13490,
        .postid-13501, .postid-13547, .postid-13597, .postid-13615, .postid-13618, .postid-15055, .postid-15150, .postid-15153,
        .postid-15156, .postid-15158, .postid-15161, .postid-15164, .postid-15541, .postid-15549, .postid-15709, .postid-15762,
        .postid-15766, .postid-15771, .postid-15808, .postid-15872, .postid-16209, .postid-16212, .postid-16215, .postid-16217,
        .postid-16226, .postid-16230, .postid-16232, .postid-16236, .postid-16240, .postid-16427, .postid-16452, .postid-16683,
        .postid-17395, .postid-19516, .postid-19602, .postid-21228, .postid-21259, .postid-21721, .postid-22199, .postid-22220,
        .postid-25439, .postid-32279, .postid-32908, .postid-34669, .postid-35340, .postid-36780, .postid-36838, .postid-37571,
        .postid-37820, .postid-39833, .postid-56668, .postid-56671, .postid-58217, .postid-58227, .postid-58239, .postid-64280,
        .postid-64291, .postid-66601, .postid-66609, .postid-66672, .postid-68249, .postid-69324, .postid-70053, .postid-71343,
        .postid-71395, .postid-71446, .postid-72482, .postid-72485, .postid-72489, .postid-74769, .postid-113532, .postid-118587,
        .postid-118593, .postid-118596, .postid-123534, .postid-127566, .postid-131565, .postid-131567, .postid-131569, .postid-131571,
        .postid-131966, .postid-131968
    ) .woo-single-gallery .minimog-main-swiper .product-main-image img {
        width: 100%;
        height: auto;
        aspect-ratio: 10 / 11;
        object-fit: cover;
    }
}

/* Mobile: 4.2 gallery thumbnails visible instead of 3.5, so a 5th peeks in (Emil 2026-10-25). Same simple selector as
   the 135.13px rule above (Seraphinite keeps that one in its critical CSS; a width-based version was left out, so
   thumbs showed 3.5 until the first scroll). Theme slides are width:auto, so the 3:4 thumb width follows this height:
   width = (100vw - 2x15px gutter - 4x10px gaps) / 4.2, height = width x 4/3 = (100vw - 70px) / 3.15. */
@media (max-width: 767px) {
    .single-product .woo-single-gallery.thumbs-slider-horizontal .minimog-thumbs-swiper img {
        height: calc((100vw - 70px) / 3.15);
        aspect-ratio: 3 / 4; /* square or 4:5 gallery images get the same 3:4 thumb */
        object-fit: cover;
    }
    /* Uncached pages (logged in, cache rebuild) wrap the thumb in <m-image>, which otherwise sizes to 100px and
       leaves the frame wider than the image */
    .single-product .woo-single-gallery.thumbs-slider-horizontal .minimog-thumbs-swiper .minimog-lazy-image {
        width: calc((100vw - 70px) / 4.2);
        max-width: none;
    }
}
