/**
Theme Name: GJ Produkt
Author: Gårda Johan Produkt/ Stefan Linnerhag
Author URI: http://wpastra.com/about/
Description: Denna webbplats är byggd med temat Astra som grund. Alla design- och funktionsanpassningar är gjorda i child-temats egna CSS- och template-filer, vilket gör det enkelt för framtida utvecklare eller designers att ta vid utan risk att något skrivs över vid uppdateringar. Ingenting är låst i admin-gränssnittet – alla inställningar, mallar och block kan justeras fritt. Strukturen är öppen, tydlig och hållbar över tid, så att webbplatsen enkelt kan vidareutvecklas eller administreras av andra.
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: gj-produkt
Template: astra
*/

/* =========================================================
   GÅRDA JOHAN – FÄRGER / REFERENS
   =========================================================
   Hover orange knapp: #dca441
   Background orange knapp: #f3b547
   Gårda grön background: #4e5636
   ========================================================= */


/* =========================================================
   GLOBALT
   ========================================================= */

html {
  scroll-behavior: smooth;
}


/* =========================================================
   HEADER / TOPPBAR / IKONER
   ========================================================= */

.ast-above-header-bar.ast-above-header.site-header-focus-item {
  background-color: #4e5636 !important;
}

/* Ändra färg på varukorgsikon på startsidan */
.page-id-886 .ast-header-woo-cart .ast-icon-shopping-cart svg {
  fill: #D5EAD8 !important;
}

.page-id-886 .ast-header-account .account-icon path {
  fill: #D5EAD8 !important;
}

/* Global hover-färg */
.ast-header-account a:hover .account-icon path,
.ast-header-woo-cart a:hover .ast-icon-shopping-cart path {
  fill: #FFF;
}

/* Mjuk övergång på alla header-ikoner */
.ast-header-account .account-icon path,
.ast-header-woo-cart .ast-icon-shopping-cart path {
  transition: fill 0.25s ease;
}

/* Pristexten efter varukorgen - startsida */
.home .ast-header-woo-cart .ast-woo-header-cart-total,
.home .ast-header-woo-cart .ast-woo-header-cart-total .woocommerce-Price-amount,
.home .ast-header-woo-cart .ast-woo-header-cart-total .woocommerce-Price-amount bdi,
.home .ast-header-woo-cart .ast-woo-header-cart-total .woocommerce-Price-amount span {
  color: #D5EAD8 !important;
  font-size: 13px;
  text-decoration: none;
}

/* Pristexten efter varukorgen - globalt */
.ast-header-woo-cart .ast-woo-header-cart-total,
.ast-header-woo-cart .ast-woo-header-cart-total .woocommerce-Price-amount,
.ast-header-woo-cart .ast-woo-header-cart-total .woocommerce-Price-amount bdi,
.ast-header-woo-cart .ast-woo-header-cart-total .woocommerce-Price-amount span {
  font-size: 13px;
}

/* Badgen – siffran i bubblan + bakgrund */
.home .ast-header-woo-cart .ast-icon-shopping-cart::after {
  background-color: #D5EAD8 !important;
  color: #4e5636 !important;
  transition: background-color 0.25s ease, color 0.25s ease;
}


/* =========================================================
   STARTSIDA / INSPIRATION
   ========================================================= */

/* Opacitet på sortimentbrickorna startsida */
.uagb-block-359c67d0 .spectra-image-gallery__media-thumbnail-caption--bar-inside {
  background-color: #4e5636 !important;
  opacity: 0.7 !important;
}

/* Inspirationskort – startsidan */
.home .inspiration-card {
  position: relative;
  overflow: hidden;
  transition: transform 0.5s ease;
}

/* Liten zoom */
.home .inspiration-card:hover {
  transform: scale(1.015);
}

/* Text över overlay */
.home .inspiration-card .wp-block-uagb-info-box {
  position: relative;
  z-index: 2;
}

/* Liten text-lyft */
.home .inspiration-card:hover .uagb-infobox__content-wrap {
  transform: translateY(-4px);
  transition: transform 0.35s ease;
}

.home .inspiration-card .uagb-infobox__content-wrap {
  transform: translateY(0);
  transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}


/* =========================================================
   UAGB / TABS
   ========================================================= */

.uagb-tabs__body-wrap,
.uagb-tabs__body-container,
.uagb-tabs__panel {
  transition: opacity 0.22s ease, transform 0.22s ease;
}

.uagb-tabs__panel {
  opacity: 1;
  transform: translateY(0);
}


/* =========================================================
   WOO – PRODUKTKORT / PRODUKTGRID
   ========================================================= */

/* Produktkort */
.woocommerce ul.products li.product {
  border-radius: 4px;
  overflow: hidden;
}

/* Bild */
.woocommerce ul.products li.product img {
  border-radius: 4px 4px 0 0;
  display: block;
}

/* Säkerställ att innehållet följer radius */
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap,
.woocommerce ul.products li.product .astra-shop-summary-wrap {
  overflow: hidden;
}


/* =========================================================
   WOO – PRODUKTSIDA / LAYOUT
   ========================================================= */

.single-product.ast-separate-container .ast-woocommerce-container {
  padding-top: 0.5em;
}


/* =========================================================
   WOO – BACKORDER / BESTÄLLNINGSVARA
   ========================================================= */

.gj-backorder-box {
  background: #f4f1ec;
  border-left: 4px solid #c6a27a;
  padding: 12px 14px;
  margin: 16px 0;
  font-size: 14px;
  line-height: 1.5;
  border-radius: 6px;
}


/* =========================================================
   WOO – KÖPKNAPP
   ========================================================= */

body.single-product button.single_add_to_cart_button.button.alt {
  background: #f3b547;
  color: #4e5636;
  border: none;
  border-radius: 4px;
  padding: 14px 28px;
  font-weight: 500;
  letter-spacing: 0.02em;
  transition: background 0.2s ease, transform 0.15s ease;
}

/* Hover – ljusare, inget glow */
body.single-product button.single_add_to_cart_button.button.alt:hover {
  background: #dca441;
  transform: translateY(-1px);
}

/* Active – klickkänsla */
body.single-product button.single_add_to_cart_button.button.alt:active {
  transform: translateY(0);
}

/* Disabled */
body.single-product button.single_add_to_cart_button.button.alt.disabled,
body.single-product button.single_add_to_cart_button.button.alt:disabled {
  background: #d9d6cf;
  color: #8e8c85;
  cursor: not-allowed;
  transform: none;
}


/* =========================================================
   WOO – PRODUKTGALLERI / THUMBNAILS
   ========================================================= */

/* Stylade thumbs på singelproduct */
.single-product .woocommerce-product-gallery img {
  border-radius: 6px;
  overflow: hidden;
}

.single-product .flex-control-thumbs li img.flex-active {
  border-radius: 6px !important;
}

.single-product .flex-control-thumbs li {
  border-radius: 6px;
  overflow: hidden;
}

.single-product .ast-woocommerce-product-gallery__image.flex-active-slide {
  border-radius: 6px !important;
  overflow: hidden !important;
}

.single-product .ast-woocommerce-product-gallery__image.flex-active-slide img {
  border-radius: 6px !important;
  display: block;
}

/* Thumbnail */
.single-product .ast-woocommerce-product-gallery__image {
  transition:
    box-shadow 0.22s ease,
    filter 0.22s ease,
    opacity 0.22s ease;
}

/* Hover */
.single-product .ast-woocommerce-product-gallery__image:hover {
  box-shadow: 0 8px 18px rgba(0,0,0,0.10);
}

/* Aktiv thumbnail */
.single-product .ast-woocommerce-product-gallery__image.flex-active-slide {
  filter: brightness(0.94);
  box-shadow: 0 0 0 1px rgba(78,86,54,0.16);
}


/* =========================================================
   WOO – FRAKTLÄNK / SHIPPING TEXT
   ========================================================= */

.ast-shipping-text {
  display: block;
  margin-top: -2px;
  margin-bottom: 14px;
  font-size: 13px;
  line-height: 1.2;
  opacity: 0.78;
}

.ast-shipping-text a {
  color: #7b7b7b;
  text-decoration: none;
  border-bottom: 1px solid rgba(0,0,0,0.22);
  transition: all 0.2s ease;
}

.ast-shipping-text a:hover {
  color: #4e5636;
  border-bottom-color: rgba(78,86,54,0.45);
}


/* =========================================================
   WOO – VARIATIONSKNAPPAR
   ========================================================= */

.ast-single-variation {
  border-radius: 6px;
  transition: all 0.2s ease;
}

/* Knappar variationer */
.ast-variation-button-group .ast-single-variation.active {
  color: #ffffff;
  background: #4e5636;
  border: 1px solid #4e5636;
}

.ast-variation-button-group .ast-single-variation {
  transition: all .2s ease;
}

.ast-variation-button-group .ast-single-variation:hover {
  box-shadow: 0 4px 12px rgba(0,0,0,.08);
}


/* =========================================================
   WOO – PRODUKTTABBAR
   ========================================================= */

.woocommerce div.product .woocommerce-tabs ul.tabs {
  display: flex;
  gap: 6px;
  border-bottom: none;
  padding: 0;
  margin: 0;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
  border: none;
  background: transparent;
  margin: 0;
  padding: 0;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
  display: block;
  padding: 13px 16px;
  font-size: 14px;
  font-weight: 600;
  color: #4e5636;
  border-radius: 8px 8px 0 0;
  transition: all .2s ease;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a:hover {
  background: #f3f1ec;
  color: #2f3524;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a,
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a:hover {
  background: #f3f1ec;
  color: #2f3524;
  border-radius: 8px 8px 0 0;
  box-shadow: 0 2px 10px rgba(0,0,0,0.05);
}

.woocommerce div.product .woocommerce-tabs .panel {
  background: #f3f1ec;
  padding: 28px 30px;
  border-radius: 0 8px 8px 8px;
  box-shadow: 0 8px 22px rgba(0,0,0,0.04);
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active:before,
.woocommerce div.ast-product-tabs-layout-vertical .woocommerce-tabs ul.tabs li:hover::before {
  background: none;
}

/* Bort med linje på singelproduct */
.single-product .woocommerce-tabs ul.tabs:before,
.single-product .woocommerce-tabs ul.tabs:after,
.single-product .woocommerce-tabs ul.tabs li:before,
.single-product .woocommerce-tabs ul.tabs li:after {
  display: none !important;
  content: none !important;
  border: none !important;
  box-shadow: none !important;
}


/* =========================================================
   WOO – PRODUKTTABBAR MOBIL
   ========================================================= */

@media (max-width:768px) {

  .single-product .woocommerce-tabs ul.tabs {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    gap: 4px;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
  }

  .single-product .woocommerce-tabs ul.tabs li {
    flex: 0 0 auto;
  }

  .single-product .woocommerce-tabs ul.tabs li a {
    white-space: nowrap;
    font-size: 12px;
    padding: 12px 14px;
  }

}

/* =========================================================
   LOGIN POPUP
   ========================================================= */

/* Login-popup */
.ast-hb-account-login {
  border-radius: 12px;
  background: rgba(243,241,236,0.85) !important;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  box-shadow:
    0 12px 40px rgba(0,0,0,0.12),
    0 4px 12px rgba(0,0,0,0.06) !important;
  border: 1px solid rgba(78,86,54,0.08) !important;
  overflow: hidden;
}

/* Öppet läge */
.ast-hb-account-login-wrapper.show .ast-hb-account-login {
  transform: scale(1) translateY(-50%);
  opacity: 1;
  transition: all .25s ease;
}

/* Overlay bakom login */
.ast-hb-account-login-bg {
  background: rgba(46, 50, 32, 0.787) !important;
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
}


/* =========================================================
   BILDVÄXLING – BELYSNING
   ========================================================= */

/* Behåll befintlig bild */
.gj-lighting-swap .wp-block-uagb-image__figure {
  position: relative;
  overflow: hidden;
  border-radius: 8px;
}

/* Hoverbild */
.gj-lighting-swap .wp-block-uagb-image__figure::after {
  content: "";
  position: absolute;
  inset: 0;

  background-image: url('https://dev.gardajohan.se/wp-content/uploads/2026/06/Lightpro-2025_on.jpg');
  background-size: cover;
  background-position: center;

  opacity: 0;
  transition: opacity .6s ease;

  z-index: 1;
}

/* Tänd belysningen */
.gj-lighting-swap:hover .wp-block-uagb-image__figure::after {
  opacity: 1;
}

/* Overlay-texten */
.gj-lighting-swap .wp-block-uagb-image--layout-overlay__inner {
  z-index: 2;
}

/* Mjuk känsla */
.gj-lighting-swap img {
  transition: transform .6s ease;
}

.gj-lighting-swap:hover img {
  transform: scale(1.00);
}

/* Belysningsbild - tona bort overlay-text vid hover */
.uagb-block-ioucwgnz .wp-block-uagb-image--layout-overlay__inner {
  transition: opacity .35s ease, transform .35s ease !important;
}

.uagb-block-ioucwgnz:hover .wp-block-uagb-image--layout-overlay__inner {
  opacity: 0 !important;
  transform: translateY(-10px) !important;
}


/* =========================================================
   WOO SIDEBAR – PRODUKTKATEGORIER
   ========================================================= */

/* Woo sidebar - produktkategorier */
   .woocommerce-page #secondary .widget_categories,
   .tax-product_cat #secondary .widget_categories,
   .single-product #secondary .widget_categories{
       background:#f3f1ec;
       border-radius:6px;
       padding:18px 20px;
       box-shadow:0 4px 14px rgba(0,0,0,.03);
   }
   
   /* Lista */
   #secondary .widget_categories ul{
       list-style:none;
       margin:0;
       padding:0;
   }
   
   /* Länkar */
   #secondary .widget_categories li > a{
       display:block;
       padding:8px 10px;
       border-radius:6px;
       color:#4e5636;
       text-decoration:none;
       font-size:14px;
       transition:all .2s ease;
   }
   
   /* Hover */
   #secondary .widget_categories li > a:hover{
       background:rgba(78,86,54,.08);
       color:#2f3524;
   }
   
   /* Aktiv kategori */
   #secondary .widget_categories .current-cat > a,
   #secondary .widget_categories .current-cat-parent > a,
   #secondary .widget_categories .current-cat-ancestor > a{
       background:rgba(78,86,54,.08);
       color:#2f3524;
     //  font-weight:600;
   }
   
   /* Barnkategorier */
   #secondary .widget_categories ul.children{
       margin:2px 0 6px 14px;
   }
   
   #secondary .widget_categories li{
       margin-bottom:2px;
   }
   #secondary .widget_categories ul.children{
       border-left:1px solid rgba(78,86,54,.12);
       margin-left:14px;
       padding-left:10px;
   }
   #secondary .widget_categories a.is-active{
       background:rgba(78,86,54,0.08);
       color:#2f3524;
     //  font-weight:600;
   }
   /* Kategori med underkategorier – pil */
   #secondary .widget_categories li.cat-item:has(> ul.children) > a{
       position:relative;
       padding-right:28px;
   }
   
  #secondary .widget_categories li.cat-item:has(> ul.children) > a::after{
      content:"▾";
      position:absolute;
      right:10px;
      top:50%;
      transform:translateY(-50%);
      font-size:13px;
      line-height:1;
      opacity:.55;
      transition:all .2s ease;
  }
   
   #secondary .widget_categories li.cat-item:has(> ul.children) > a:hover::after{
       opacity:.85;
   }
   
  /* Stäng underkategorier default */
  #secondary .widget_categories ul.children{
      display:none;
  }
  
  /* Öppna klickad eller aktiv gren */
  #secondary .widget_categories li.is-open > ul.children,
  #secondary .widget_categories li.current-cat > ul.children,
  #secondary .widget_categories li.current-cat-parent > ul.children,
  #secondary .widget_categories li.current-cat-ancestor > ul.children{
      display:block;
  }
  
  /* När grenen är öppen */
  #secondary .widget_categories li.is-open > a::after,
  #secondary .widget_categories li.current-cat > a::after,
  #secondary .widget_categories li.current-cat-parent > a::after,
  #secondary .widget_categories li.current-cat-ancestor > a::after{
      font-weight:700;
      opacity:1;
      color:#4e5636;
  }

/* =========================================================
   HIDE WOO SIDEBAR / NAV – MOBIL
   ========================================================= */

/* Hide nav on productpages on cellph */
@media (max-width:921px){
    #block-19,
    #block-20{
        display:none!important;
    }
}


/* =========================================================
 Breadcrumbs – gemensam stil
 ========================================================= */

.woocommerce-breadcrumb,
.ast-breadcrumbs,
.ast-breadcrumb,
.breadcrumbs {
    font-size:12px;
    line-height:1.4;
    color:#777;
    text-transform:none;
    letter-spacing:0;
    margin-bottom:18px;
}

/* Breadcrumb-länkar */
.woocommerce-breadcrumb a,
.ast-breadcrumbs a,
.ast-breadcrumb a,
.breadcrumbs a {
    color:#4e5636;
    text-decoration:none;
    transition:color .2s ease;
}

.woocommerce-breadcrumb a:hover,
.ast-breadcrumbs a:hover,
.ast-breadcrumb a:hover,
.breadcrumbs a:hover {
    color:#2f3524;
}

/* Woo specifikt */
.woocommerce-js .woocommerce-breadcrumb {
    margin:0 0 18px;
    padding:0;
}
.woocommerce-breadcrumb{
    text-transform:uppercase;
}
.single-product div.product .woocommerce-breadcrumb a{
    color:#777;
    text-decoration:none;
    transition:color .2s ease;
}

.single-product div.product .woocommerce-breadcrumb a:hover{
    color:#2f3524;
}

/* Kategoriintroduktion */
.woocommerce .woocommerce-products-header .term-description{
    background:#f3f1ec;
    padding:24px 30px;
    border-radius:10px;
    margin:20px 0 35px;
    border-left:5px solid rgba(78,86,54,.12);
    box-shadow:0 4px 14px rgba(0,0,0,.03);
}

/* Introduktionstext */
.woocommerce .woocommerce-products-header .term-description p{
    margin:0;
    color:#5d654b;
    font-size:15px;
    line-height:1.8;
    font-weight:400;
}

/* =========================================================
 MOBILMENY
 ========================================================= */
 
 /* Mobilmeny panel */
 @media (max-width:921px) {
 
   .ast-mobile-popup-drawer .main-header-menu .menu-link {
     padding: 11px 20px;
     line-height: 1.25;
     border-radius: 8px;
     margin: 2px 8px;
   }
 
   .ast-mobile-popup-drawer .ast-mobile-popup-inner {
     height: 86vh;
     max-height: 86vh;
     border-radius: 8px 0 0 8px;
     overflow: hidden;
     margin-top: 10px;
   }
 
   .ast-mobile-popup-drawer .main-header-menu .current-menu-item > .menu-link,
   .ast-mobile-popup-drawer .main-header-menu .current-menu-ancestor > .menu-link {
     background: rgba(78,86,54,0.12);
     color: #4E5636;
     border-radius: 8px;
     padding: 11px 16px;
     margin: 4px 8px;
   }
  }
 
 #menu-item-3510 {
 //  border-top: 1px solid #d1d1d1;
 //  border-bottom: 1px solid #d1d1d1;
   margin-top: 0px;
   padding-top: 0px;
 }

/* Mobilmeny – tydligare kategoriaccordion */
@media (max-width:921px){

 .ast-mobile-popup-content .widget_categories .wp-block-categories > li{
     margin-bottom:2px;
     list-style:none;
 }

    .ast-mobile-popup-content .widget_categories .wp-block-categories > li > a{
        display:block;
        position:relative;
        padding:6px 20px 6px 14px;
        line-height:1.4;
        margin:0;
        border-radius:8px;
        color:#4E5636;
        font-size:20px;
        font-weight:500;
        text-transform:uppercase;
        transition:.2s ease;
    }

    .ast-mobile-popup-content .widget_categories .wp-block-categories > li.is-open > a,
    .ast-mobile-popup-content .widget_categories .wp-block-categories > li.current-cat-parent > a,
    .ast-mobile-popup-content .widget_categories .wp-block-categories > li.current-cat-ancestor > a{
        background:#eef1eb;
    }

    .ast-mobile-popup-content .widget_categories .wp-block-categories > li:has(> ul.children) > a{
        padding-right:42px;
    }

    .ast-mobile-popup-content .widget_categories .wp-block-categories > li:has(> ul.children) > a::after{
        content:"⌵";
        position:absolute;
        right:17px;
        top:50%;
        transform:translateY(-50%);
        font-size:18px;
        color:#4e5636;
        opacity:.75;
    }
    

 .ast-mobile-popup-content .widget_categories .wp-block-categories ul.children{
     display:none;
     margin:4px 0 8px 4px;
     padding-left:6px;
     border-left:1px solid rgba(78,86,54,.12);
 }

    .ast-mobile-popup-content .widget_categories .wp-block-categories li.is-open > ul.children,
    .ast-mobile-popup-content .widget_categories .wp-block-categories li.current-cat > ul.children,
    .ast-mobile-popup-content .widget_categories .wp-block-categories li.current-cat-parent > ul.children,
    .ast-mobile-popup-content .widget_categories .wp-block-categories li.current-cat-ancestor > ul.children{
        display:block;
    }

    .ast-mobile-popup-content .widget_categories .wp-block-categories ul.children li{
        list-style:none;
    }

 .ast-mobile-popup-content .widget_categories .wp-block-categories ul.children li a{
     display:block;
     padding:5px 0;
     line-height:1.35;
     color:#4e5636;
     font-size:17px;
     text-decoration:none;
     text-transform:uppercase;
 }

    .ast-mobile-popup-content .widget_categories .gj-mobile-view-all{
        margin-bottom:10px;
        padding-bottom:10px;
        border-bottom:1px solid rgba(78,86,54,.12);
    }

    .ast-mobile-popup-content .widget_categories .gj-mobile-view-all > a{
        display:inline-block;
        padding:6px 0;
        font-size:17px;
        font-weight:600;
        color:#4e5636;
        text-decoration:none;
        text-transform:uppercase;
    }

    .ast-mobile-popup-content .widget_categories .gj-mobile-view-all > a::after{
        content:" →";
    }
}
/* Mobilmeny – tillåt scroll */
@media (max-width:921px){

    .ast-mobile-popup-drawer .ast-mobile-popup-inner{
        overflow-y:auto;
        overflow-x:hidden;
    }

    .ast-mobile-popup-drawer .ast-mobile-popup-content{
        max-height:86vh;
        overflow-y:auto;
        overflow-x:hidden;
        -webkit-overflow-scrolling:touch;
    }
}
@media (max-width:921px){
    .ast-mobile-popup-content .widget_categories .gj-mobile-view-all > a{
        font-weight:600;
        color:#4e5636;
        opacity:.95;
    }
}
@media (max-width:921px){

    .ast-mobile-popup-content .widget_categories .wp-block-categories{
        display:none;
    }

    .ast-mobile-popup-content .widget_categories.gj-sortiment-open .wp-block-categories{
        display:block;
    }

    .ast-mobile-popup-content .widget_categories .gj-mobile-sortiment-toggle{
        width:100%;
        display:block;
        background:none;
        border:none;
        padding:6px 20px 6px 8px;
        margin:0;
        text-align:left;
        color:#4e5636;
        font-size:20px;
        font-weight:500;
        text-transform:uppercase;
        cursor:pointer;
        position:relative;
        text-decoration: underline;
        text-decoration-color: rgba(78,86,54,.25);
        text-decoration-thickness: 1px;
        text-underline-offset: 4px;
    }

    .ast-mobile-popup-content .widget_categories .gj-mobile-sortiment-toggle::after{
        content:"⌵";
        position:absolute;
        right:18px;
        top:50%;
        transform:translateY(-50%);
        font-size:18px;
        color:#4e5636;
        opacity:.75;
    }
}
@media (max-width:921px){

    .ast-mobile-popup-drawer .main-header-menu .menu-item-has-children > .menu-link{
        position:relative;
        padding-right:42px;
    }

    .ast-mobile-popup-drawer .main-header-menu .menu-item-has-children > .menu-link::after{
        content:"⌵";
        position:absolute;
        right:26px;
        top:50%;
        transform:translateY(-50%);
        font-size:18px;
        color:#4e5636;
        opacity:.75;
    }

}
@media (max-width:921px){

    .ast-mobile-popup-content .main-header-menu .menu-item-has-children > .ast-menu-toggle{
        display:none !important;
    }

}
@media (max-width:921px){

  .ast-mobile-popup-drawer .main-header-menu .sub-menu .ast-icon.icon-arrow{
      display:none !important;
  }

}
.ast-header-break-point .main-navigation .sub-menu .menu-item .menu-link{
    padding-left:6px;
}
@media (max-width:921px){

    #menu-item-3510 > .menu-link{
        text-decoration:underline;
        text-decoration-color:rgba(78,86,54,.25);
        text-decoration-thickness:1px;
        text-underline-offset:4px;
    }

}
.ast-mobile-popup-header .menu-toggle-close svg{
    width:28px;
    height:28px;
    color:#4e5636;
}
@media (max-width:921px){

    .ast-mobile-popup-drawer.active .ast-mobile-popup-content{
        animation: gj-mobile-menu-in .28s ease both;
    }

    @keyframes gj-mobile-menu-in{
        from{
            opacity:0;
            transform:translateY(8px);
        }
        to{
            opacity:1;
            transform:translateY(0);
        }
    }

}

/* =========================================================
   GÅRDA JOHAN – BERÄKNA FRAKT / TRANSPORTKAPACITET
   ========================================================= */


/* Produktgalleriet staplas vertikalt */
.single-product .woocommerce-product-gallery {
    display: flex;
    flex-direction: column;
}


/* Gemensam beige ruta */
.single-product #gj-heavy-capacity-product {
    order: 99;
    width: 100%;
    margin: 18px 0 30px;
    padding: 24px 26px;
    box-sizing: border-box;

    background: #f3f1ec;
    border-left: 5px solid #e4e0d7;
    border-radius: 14px;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.03);

    color: #66705c;
    line-height: 1.55;
}


/* Kapacitetsdelen använder den gemensamma rutan */
.single-product #gj-heavy-capacity-product .gj-heavy-capacity {
    width: 100%;
    margin: 0;
    padding: 0;
    box-sizing: border-box;

    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
}


/* Rubrik */
.gj-heavy-capacity__title {
    margin: 0 0 12px;
    color: #5d6655;
    font-size: 20px;
    line-height: 1.25;
    font-weight: 600;
}


/* Viktvärden */
.gj-heavy-capacity__values p {
    margin: 0 0 6px;
    line-height: 1.45;
}


/* Kapacitetsstapel */
.gj-heavy-capacity__bar {
    width: 100%;
    height: 10px;
    margin-top: 12px;
    overflow: hidden;

    background: #ddd9d1;
    border-radius: 999px;
}

.gj-heavy-capacity__bar-fill {
    display: block;
    height: 100%;

    background: #7a846d;
    border-radius: inherit;
    transition: width 0.25s ease;
}


/* Procenttext */
.gj-heavy-capacity__percentage {
    margin: 7px 0 0;
    font-size: 13px;
    line-height: 1.45;
    color: #6f7768;
}


/* Eventuella meddelanden */
.gj-heavy-capacity__message {
    margin: 10px 0 0;
    font-weight: 600;
    color: #5f6d55;
}

.gj-heavy-capacity__warning {
    margin: 10px 0 0;
    font-weight: 700;
    color: #9b3b32;
}


/* Fraktkalkylatorn inne i samma beige ruta */
.single-product #gj-heavy-capacity-product
.gj-product-shipping-calculator {
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid rgba(93, 102, 85, 0.2);
}


/* Kalkylatorrubrik – om den fortfarande används */
.single-product #gj-heavy-capacity-product
.gj-product-shipping-calculator__title {
    margin: 0 0 8px;
    font-size: 17px;
    line-height: 1.3;
}


/* Introduktionstext – om den används */
.single-product #gj-heavy-capacity-product
.gj-product-shipping-calculator__intro {
    margin: 0 0 10px;
    line-height: 1.45;
}


/* Formulärfält */
.single-product #gj-heavy-capacity-product
.gj-product-shipping-calculator__field {
    margin-bottom: 10px;
}

.single-product #gj-heavy-capacity-product
.gj-product-shipping-calculator__field label {
    display: block;
    margin-bottom: 4px;
    font-weight: 600;
    line-height: 1.35;
}


/* Postnummerfält */
.single-product #gj-heavy-capacity-product
.gj-product-shipping-calculator__field input {
    display: block;
    width: 100%;
    height: 44px;
    padding: 8px 12px;
    box-sizing: border-box;

    border-radius: 5px;
    line-height: 1.2;
}


/* Knappen */
.single-product #gj-heavy-capacity-product
.gj-product-shipping-calculator__button {
    width: 100%;
    min-height: 42px;
    margin-top: 2px;
    padding: 8px 14px;

    border-radius: 5px;
    line-height: 1.2;
}


/* Resultat i beige ruta */
.single-product #gj-heavy-capacity-product
.gj-product-shipping-calculator__result {
    margin-top: 12px;
}

.gj-product-shipping-calculator__rate {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 14px;

    margin: 8px 0 0;
    padding-top: 8px;

    border-top: 1px solid rgba(93, 102, 85, 0.2);
}

.gj-product-shipping-calculator__rate strong {
    white-space: nowrap;
}

.gj-product-shipping-calculator__result.is-error {
    color: #9b3b32;
}


/* =========================================================
   MOBIL
   ========================================================= */

@media (max-width: 768px) {

    .single-product #gj-heavy-capacity-product {
        margin: 16px 0 24px;
        padding: 20px;
        border-radius: 12px;
    }

    .gj-heavy-capacity__title {
        margin-bottom: 10px;
        font-size: 19px;
    }

    .gj-heavy-capacity__values p {
        margin-bottom: 5px;
    }

    .gj-heavy-capacity__bar {
        margin-top: 10px;
    }

    .single-product #gj-heavy-capacity-product
    .gj-product-shipping-calculator {
        margin-top: 14px;
        padding-top: 14px;
    }

    .single-product #gj-heavy-capacity-product
    .gj-product-shipping-calculator__field input {
        height: 44px;
        font-size: 16px;
    }

    .single-product #gj-heavy-capacity-product
    .gj-product-shipping-calculator__button {
        min-height: 44px;
    }

    .gj-product-shipping-calculator__rate {
        gap: 10px;
    }
}


@media (max-width: 480px) {

    .single-product #gj-heavy-capacity-product {
        padding: 18px 16px;
    }

    .gj-product-shipping-calculator__rate {
        display: block;
    }

    .gj-product-shipping-calculator__rate strong {
        display: block;
        margin-top: 3px;
    }
}
/* =========================================================
   TRANSPORTBOX – VARUKORG OCH CHECKOUT
   ========================================================= */

.woocommerce-cart .gj-heavy-capacity,
.woocommerce-checkout .gj-heavy-capacity {
    width: 100%;
    margin: 0 0 24px;
    padding: 24px;
    box-sizing: border-box;

    background: #f3f1ec;
    border-left: 5px solid #e4e0d7;
    border-radius: 14px;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.03);

    color: #66705c;
    line-height: 1.55;
}
.woocommerce-cart .gj-heavy-capacity {
    padding: 20px 18px;
    margin-bottom: 18px;
}

.woocommerce-cart .gj-heavy-capacity__title {
    margin-bottom: 10px;
    font-size: 19px;
}

.woocommerce-cart .gj-heavy-capacity__values p {
    margin-bottom: 5px;
    line-height: 1.4;
}

.woocommerce-cart .gj-heavy-capacity__bar {
    margin-top: 10px;
}

.woocommerce-cart .gj-heavy-capacity__percentage {
    margin-top: 7px;
    font-size: 13px;
}
@media (max-width: 768px) {

    .woocommerce-cart .gj-heavy-capacity,
    .woocommerce-checkout .gj-heavy-capacity {
        padding: 18px 16px;
        margin-bottom: 18px;
        border-radius: 12px;
    }
}
/* Leveransresultat på produktsidan */
.gj-product-shipping-result-below-cart {
    margin: 14px 0 16px;
    padding: 14px 16px;

    background: #f8f7f3;
    border-left: 4px solid #e4e0d7;
    border-radius: 8px;

    color: #66705c;
}

/* Dölj WooCommerces tillfälliga AJAX-länk.
   Vi använder vår egen konsekventa länk i stället. */
.single-product form.cart > a.added_to_cart.wc-forward {
  display: none !important;
}

/* Egen Visa varukorg-länk */
.single-product .gj-product-cart-link {
  display: inline-flex;
  align-items: center;
  margin-left: 14px;
  vertical-align: middle;
}

.single-product .gj-product-cart-link a {
  color: #596043;
  font-size: 14px;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 3px;
  white-space: nowrap;
}

.single-product .gj-product-cart-link a:hover {
  color: #343923;
}
/* Fraktkalkylator – fält och knapp på samma rad */
.single-product #gj-heavy-capacity-product
.gj-product-shipping-calculator__form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) max-content;
  gap: 12px;
  align-items: end;
}

/* Fältets wrapper */
.single-product #gj-heavy-capacity-product
.gj-product-shipping-calculator__field {
  min-width: 0;
  margin: 0;
}

/* Etiketten */
.single-product #gj-heavy-capacity-product
.gj-product-shipping-calculator__field label {
  display: block;
  margin: 0 0 6px;
}

/* Postnummerfältet */
.single-product #gj-heavy-capacity-product
.gj-product-shipping-calculator__field input[name="postcode"] {
  display: block;
  width: 100%;
  min-width: 0;
  height: 44px;
  min-height: 44px;
  margin: 0;
  padding: 8px 12px;
  box-sizing: border-box;
  line-height: 1.2;
}

/* Knappen */
.single-product #gj-heavy-capacity-product
.gj-product-shipping-calculator__button {
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: end;

  width: auto;
  min-width: max-content;
  height: 44px;
  min-height: 44px;

  margin: 0;
  padding: 0 14px;
  box-sizing: border-box;

  line-height: 1;
  white-space: nowrap;
}

/* Mobil */
@media (max-width: 600px) {
  .single-product #gj-heavy-capacity-product
  .gj-product-shipping-calculator__form {
    grid-template-columns: 1fr;
  }

  .single-product #gj-heavy-capacity-product
  .gj-product-shipping-calculator__button {
    width: 100%;
    min-width: 0;
  }
}
/* vi gömemr varukorgknapp på produktsidan */
.single-product .woocommerce-variation-add-to-cart a.added_to_cart.wc-forward,
.single-product .single_add_to_cart_button + a.added_to_cart.wc-forward {
    display: none !important;
}
/* infofält checkout */
.gj-offert-notice {
    width: 100%;
    margin: 18px 0 30px;
    padding: 24px 26px;
    box-sizing: border-box;

    background: #f3f1ec;
    border-left: 5px solid #e4e0d7;
    border-radius: 14px;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.03);

    color: #66705c;
    line-height: 1.55;
}

.gj-offert-notice__title {
    display: block;
    margin: 0 0 14px;
    color: #3f3f3f;
    font-size: 1.2rem;
    line-height: 1.3;
}

.gj-offert-notice p {
    margin: 0 0 14px;
}

.gj-offert-notice__last {
    margin-bottom: 0;
}
/* Dölj WooPayments Express Checkout i offertkassan */
.gj-offert-checkout .wcpay-express-checkout-wrapper {
    display: none !important;
}
/* =========================================================
   PRODUKTKATEGORIER – KATEGORIHERO
   ========================================================= */

.gj-category-hero {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 275px;
    margin: 0 0 34px;
    padding: clamp(30px, 5vw, 56px);
    box-sizing: border-box;

    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    border-radius: 6px;
    overflow: hidden;
}

.gj-category-hero__content {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: 630px;
    color: #fff;
}

.gj-category-hero__eyebrow {
    margin: 0 0 12px;
    color: rgba(255, 255, 255, 0.86);
    font-size: 12px;
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: 0.13em;
    text-transform: uppercase;
}

.gj-category-hero h1 {
    margin: 0 0 16px;
    color: #fff;
    font-size: clamp(2.2rem, 4.3vw, 3.7rem);
    font-weight: 400;
    line-height: 1.05;
    letter-spacing: -0.025em;
}

.gj-category-hero__intro {
    max-width: 570px;
    margin: 0;
    color: rgba(255, 255, 255, 0.92);
    font-size: 17px;
    line-height: 1.65;
}

@media (max-width: 768px) {

    .gj-category-hero {
        min-height: 280px;
        margin-bottom: 26px;
        padding: 30px 24px;
        background-position: center;
    }

    /*
     * Behåll Belysningsbildens särskilda mobilplacering.
     */
    .gj-category-hero--belysning {
        background-position: 62% center;
    }

    .gj-category-hero h1 {
        font-size: clamp(2rem, 10vw, 2.8rem);
    }

    .gj-category-hero__intro {
        font-size: 15px;
        line-height: 1.55;
    }
}
/* =========================================================
   BELYSNING – KATEGORIBADGES
   ========================================================= */

/* Dölj WooCommerces vanliga kategorikort på Belysningssidan */
.term-belysning ul.products > li.product-category {
    display: none !important;
}

/* Automatisk kategorinavigering */
.gj-category-badges {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin: 0 0 30px;
}

/* Badge */
.gj-category-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;

    min-height: 42px;
    padding: 9px 14px;
    box-sizing: border-box;

    background: #f3f1ec;
    border: 1px solid rgba(78, 86, 54, 0.14);
    border-radius: 6px;

    color: #4e5636;
    font-size: 14px;
    line-height: 1.2;
    text-decoration: none;

    transition:
        background-color 0.2s ease,
        border-color 0.2s ease,
        color 0.2s ease,
        transform 0.2s ease;
}

/* Produktantal */
.gj-category-badge small {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-width: 23px;
    height: 23px;
    padding: 0 6px;

    background: rgba(78, 86, 54, 0.09);
    border-radius: 999px;

    color: inherit;
    font-size: 11px;
    line-height: 1;
}

/* Hover */
.gj-category-badge:hover {
    background: #ebe8e1;
    border-color: rgba(78, 86, 54, 0.3);
    color: #2f3524;
    transform: translateY(-1px);
}

/* Alla produkter */
.gj-category-badge.is-active {
    background: #4e5636;
    border-color: #4e5636;
    color: #fff;
}

.gj-category-badge.is-active small {
    background: rgba(255, 255, 255, 0.16);
}

/* Mobil */
@media (max-width: 600px) {

    .gj-category-badges {
        gap: 8px;
        margin-bottom: 24px;
    }

    .gj-category-badge {
        min-height: 40px;
        padding: 8px 12px;
        font-size: 13px;
    }
}
/* =========================================================
   GÅRDA JOHAN – FRAKTPRESENTATION
   Varukorg och kassa
   ========================================================= */


/* Introduktion */

.woocommerce-cart
tr.gj-shipping-presentation td,
.woocommerce-checkout
tr.gj-shipping-presentation td {
    padding: 18px 0 10px !important;
    border-top: 1px solid rgba(78, 86, 54, 0.16);
}

.gj-shipping-presentation__intro {
    display: block;
    text-align: left;
}

.gj-shipping-presentation__title {
    display: block;
    margin: 0 0 4px;

    color: #3f4732;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.3;
}

.gj-shipping-presentation__text {
    display: block;

    color: #66705c;
    font-size: 13px;
    line-height: 1.45;
}


/* Låt fraktvalet använda hela radens bredd */

.woocommerce-cart
tr.woocommerce-shipping-totals.shipping > th,
.woocommerce-checkout
tr.woocommerce-shipping-totals.shipping > th {
    display: none;
}

.woocommerce-cart
tr.woocommerce-shipping-totals.shipping > td,
.woocommerce-checkout
tr.woocommerce-shipping-totals.shipping > td {
    width: 100%;
    padding: 0 0 18px !important;
    text-align: left !important;
}


/* Lista med fraktalternativ */

.woocommerce-cart
ul#shipping_method,
.woocommerce-checkout
ul#shipping_method {
    display: grid;
    gap: 8px;

    width: 100%;
    margin: 0 0 14px;
    padding: 0;

    text-align: left;
    list-style: none;
}

.woocommerce-cart
ul#shipping_method li,
.woocommerce-checkout
ul#shipping_method li {
    position: relative;
    width: 100%;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.35;
}


/* Radiofält */

.woocommerce-cart
ul#shipping_method li input,
.woocommerce-checkout
ul#shipping_method li input {
    position: absolute;
    z-index: 2;

    left: 15px;
    top: 50%;
    width: 16px;
    height: 16px;
    margin: 0;

    transform: translateY(-50%);
    accent-color: #66705c;
}


/* Hela etiketten blir ett klickbart kort */

.woocommerce-cart
ul#shipping_method li label,
.woocommerce-checkout
ul#shipping_method li label {
    display: flex !important;
    align-items: center;
    gap: 10px;

    width: 100%;
    min-height: 52px;
    margin: 0;
    padding: 12px 14px 12px 43px;
    box-sizing: border-box;

    background: #fff;
    border: 1px solid rgba(78, 86, 54, 0.18);
    border-radius: 7px;

    color: #444a3d;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.35;
    text-align: left;
    cursor: pointer;

    transition:
        background-color 0.2s ease,
        border-color 0.2s ease,
        box-shadow 0.2s ease;
}


/* Hover */

.woocommerce-cart
ul#shipping_method li label:hover,
.woocommerce-checkout
ul#shipping_method li label:hover {
    background: #fafbf8;
    border-color: rgba(78, 86, 54, 0.35);
}


/* Valt alternativ */

.woocommerce-cart
ul#shipping_method li input:checked + label,
.woocommerce-checkout
ul#shipping_method li input:checked + label {
    background: #eef1eb;
    border-color: #7a846d;
    box-shadow: 0 0 0 1px rgba(78, 86, 54, 0.08);
}


/* Tangentbordsfokus */

.woocommerce-cart
ul#shipping_method li input:focus-visible + label,
.woocommerce-checkout
ul#shipping_method li input:focus-visible + label {
    outline: 2px solid #4e5636;
    outline-offset: 2px;
}


/* Fraktpris */

.woocommerce-cart
ul#shipping_method li label .amount,
.woocommerce-checkout
ul#shipping_method li label .amount,
.gj-shipping-presentation__offer-price {
    margin-left: auto;

    color: #303629;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.2;
    white-space: nowrap;
}

.gj-shipping-presentation__offer-price {
    font-size: 13px;
    color: #5d6655;
}


/* Leveransadress och ändringslänk */

.woocommerce-cart
.woocommerce-shipping-destination,
.woocommerce-checkout
.woocommerce-shipping-destination {
    margin: 12px 0 4px;

    color: #4e5636;
    font-size: 13px;
    line-height: 1.45;
    text-align: left;
}

.woocommerce-cart
.woocommerce-shipping-calculator,
.woocommerce-checkout
.woocommerce-shipping-calculator {
    margin: 4px 0 0;
    text-align: left;
}

.woocommerce-cart
.shipping-calculator-button,
.woocommerce-checkout
.shipping-calculator-button {
    color: #596043;
    font-size: 13px;
    text-decoration: underline;
    text-decoration-color: rgba(78, 86, 54, 0.35);
    text-underline-offset: 3px;
}

.woocommerce-cart
.shipping-calculator-button:hover,
.woocommerce-checkout
.shipping-calculator-button:hover {
    color: #343923;
    text-decoration-color: #343923;
}


/* WooCommerce kan lägga till extra text efter alternativen */

.woocommerce-cart
.woocommerce-shipping-contents,
.woocommerce-checkout
.woocommerce-shipping-contents {
    margin-top: 8px;
    color: #66705c;
    font-size: 12px;
}


/* =========================================================
   FRAKTPRESENTATION – MOBIL
   ========================================================= */

@media (max-width: 600px) {

    .woocommerce-cart
    tr.gj-shipping-presentation td,
    .woocommerce-checkout
    tr.gj-shipping-presentation td {
        padding-top: 15px !important;
    }

    .gj-shipping-presentation__title {
        font-size: 15px;
    }

    .woocommerce-cart
    ul#shipping_method li label,
    .woocommerce-checkout
    ul#shipping_method li label {
        min-height: 50px;
        padding: 11px 12px 11px 40px;
        font-size: 13px;
    }

    .woocommerce-cart
    ul#shipping_method li input,
    .woocommerce-checkout
    ul#shipping_method li input {
        left: 13px;
    }

    .woocommerce-cart
    ul#shipping_method li label .amount,
    .woocommerce-checkout
    ul#shipping_method li label .amount,
    .gj-shipping-presentation__offer-price {
        font-size: 13px;
    }
}
/* =========================================================
   FRAKTKORT – BREDD OCH PRISVISNING
   ========================================================= */

/*
 * WooCommerce delar normalt fraktraden i två tabellkolumner.
 * Gör raden fullbred så korten får tillräckligt med plats.
 */
.woocommerce-cart
tr.woocommerce-shipping-totals.shipping,
.woocommerce-checkout
tr.woocommerce-shipping-totals.shipping {
    display: block;
    width: 100%;
}

.woocommerce-cart
tr.woocommerce-shipping-totals.shipping > td,
.woocommerce-checkout
tr.woocommerce-shipping-totals.shipping > td {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    padding: 0 0 18px !important;
    box-sizing: border-box;
}

.woocommerce-cart
ul#shipping_method,
.woocommerce-checkout
ul#shipping_method,
.woocommerce-cart
ul#shipping_method li,
.woocommerce-checkout
ul#shipping_method li {
    width: 100% !important;
    max-width: none !important;
}

.woocommerce-cart
ul#shipping_method li label,
.woocommerce-checkout
ul#shipping_method li label {
    width: 100% !important;
    max-width: none !important;
}

/*
 * Momsinformationen finns fortfarande i totalsumman.
 * Dölj den inne i varje litet fraktkort för en renare vy.
 */
.woocommerce-cart
ul#shipping_method .tax_label,
.woocommerce-checkout
ul#shipping_method .tax_label {
    display: none;
}


/* =========================================================
   VARUKORG – KNAPP TILL KASSAN
   ========================================================= */

.woocommerce-cart
.wc-proceed-to-checkout {
    margin: 0;
    padding: 18px 0 12px;
}

.woocommerce-cart
.wc-proceed-to-checkout a.checkout-button,
.woocommerce-cart
.wc-proceed-to-checkout a.button {
    display: flex !important;
    align-items: center;
    justify-content: center;

    width: 100%;
    min-height: 52px;
    margin: 0 !important;
    padding: 13px 20px !important;
    box-sizing: border-box;

    background: #f3b547 !important;
    border: 0 !important;
    border-radius: 5px !important;
    box-shadow: none !important;

    color: #4e5636 !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 1.2;
    letter-spacing: 0.02em;
    text-align: center;
    text-decoration: none;

    transition:
        background-color 0.2s ease,
        transform 0.15s ease;
}

.woocommerce-cart
.wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce-cart
.wc-proceed-to-checkout a.button:hover {
    background: #dca441 !important;
    color: #4e5636 !important;
    transform: translateY(-1px);
}

.woocommerce-cart
.wc-proceed-to-checkout a.checkout-button:active,
.woocommerce-cart
.wc-proceed-to-checkout a.button:active {
    transform: translateY(0);
}


/* Luft mellan kassaknappen och Express Pay */

.woocommerce-cart
.wcpay-express-checkout-wrapper {
    margin-top: 10px;
}


/* =========================================================
   KASSA – BESTÄLLKNAPP
   ========================================================= */

.woocommerce-checkout
#payment #place_order,
.woocommerce-checkout
button#place_order {
    display: flex !important;
    align-items: center;
    justify-content: center;

    float: none !important;
    width: 100% !important;
    min-height: 52px;
    margin: 18px 0 0 !important;
    padding: 13px 20px !important;
    box-sizing: border-box;

    background: #f3b547 !important;
    border: 0 !important;
    border-radius: 5px !important;
    box-shadow: none !important;

    color: #4e5636 !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 1.2;
    letter-spacing: 0.02em;
    text-align: center;

    transition:
        background-color 0.2s ease,
        transform 0.15s ease;
}

.woocommerce-checkout
#payment #place_order:hover,
.woocommerce-checkout
button#place_order:hover {
    background: #dca441 !important;
    color: #4e5636 !important;
    transform: translateY(-1px);
}

.woocommerce-checkout
#payment #place_order:active,
.woocommerce-checkout
button#place_order:active {
    transform: translateY(0);
}


/* Beställknappen innan villkoren är godkända */

.woocommerce-checkout
#payment #place_order:disabled,
.woocommerce-checkout
#payment #place_order.disabled,
.woocommerce-checkout
button#place_order:disabled,
.woocommerce-checkout
button#place_order.disabled {
    background: #d9d6cf !important;
    color: #77766f !important;
    cursor: not-allowed;
    transform: none;
}


/* =========================================================
   KNAPPAR – MOBIL
   ========================================================= */

@media (max-width: 600px) {

    .woocommerce-cart
    .wc-proceed-to-checkout a.checkout-button,
    .woocommerce-cart
    .wc-proceed-to-checkout a.button,
    .woocommerce-checkout
    #payment #place_order,
    .woocommerce-checkout
    button#place_order {
        min-height: 50px;
        padding: 12px 16px !important;
        font-size: 14px !important;
    }
}
/* =========================================================
   FRAKTPRESENTATION – TEXTFLÖDE OCH FULLBREDD
   ========================================================= */


/* Återställ tabellraden efter tidigare blockregler */

.woocommerce-cart
tr.woocommerce-shipping-totals.shipping.gj-shipping-row-ready,
.woocommerce-checkout
tr.woocommerce-shipping-totals.shipping.gj-shipping-row-ready {
    display: table-row !important;
    width: 100% !important;
}

.woocommerce-cart
tr.woocommerce-shipping-totals.shipping.gj-shipping-row-ready > th,
.woocommerce-checkout
tr.woocommerce-shipping-totals.shipping.gj-shipping-row-ready > th {
    display: none !important;
}

.woocommerce-cart
tr.woocommerce-shipping-totals.shipping.gj-shipping-row-ready > td,
.woocommerce-checkout
tr.woocommerce-shipping-totals.shipping.gj-shipping-row-ready > td {
    display: table-cell !important;
    width: 100% !important;
    max-width: none !important;
    padding: 0 0 18px !important;
    box-sizing: border-box;
}


/* Fraktkort */

.woocommerce-cart
ul#shipping_method li label,
.woocommerce-checkout
ul#shipping_method li label {
    display: flex !important;
    align-items: center;
    gap: 14px;

    width: 100% !important;
    max-width: none !important;
    min-height: 54px;

    padding: 12px 14px 12px 48px !important;
    box-sizing: border-box;
}


/* Ge radion en egen tydlig plats */

.woocommerce-cart
ul#shipping_method li input,
.woocommerce-checkout
ul#shipping_method li input {
    left: 16px !important;
}


/* Leveranssätt */

.gj-shipping-method__name {
    display: block;
    flex: 1 1 auto;
    min-width: 0;

    color: #444a3d;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.35;

    overflow-wrap: normal;
    word-break: normal;
    hyphens: none;
}


/* Pris */

.gj-shipping-method__price {
    display: block;
    flex: 0 0 auto;
    margin-left: auto;

    color: #303629;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.2;
    text-align: right;
    white-space: nowrap;
}

.gj-shipping-method__price
.woocommerce-Price-amount {
    margin: 0 !important;
    color: inherit;
    font-size: inherit;
    font-weight: inherit;
}

.gj-shipping-method__offer {
    color: #5d6655;
    font-size: 13px;
    font-weight: 600;
}


/* Mobil */

@media (max-width: 600px) {

    .woocommerce-cart
    ul#shipping_method li label,
    .woocommerce-checkout
    ul#shipping_method li label {
        gap: 10px;
        min-height: 52px;
        padding: 11px 12px 11px 43px !important;
    }

    .woocommerce-cart
    ul#shipping_method li input,
    .woocommerce-checkout
    ul#shipping_method li input {
        left: 14px !important;
    }

    .gj-shipping-method__name {
        font-size: 13px;
    }

    .gj-shipping-method__price {
        font-size: 13px;
    }
}
/* =========================================================
   FRAKTPRESENTATION – FINJUSTERING
   ========================================================= */


/* Mer plats mellan radio och leveransnamn */

body.woocommerce-cart
.cart_totals ul#shipping_method li label,
body.woocommerce-checkout
#order_review ul#shipping_method li label {
    padding-left: 54px !important;
}

body.woocommerce-cart
.cart_totals ul#shipping_method li input,
body.woocommerce-checkout
#order_review ul#shipping_method li input {
    left: 17px !important;
}


/*
 * Extra säkerhetsavstånd om Astra justerar
 * etikettens inre padding.
 */
body.woocommerce-cart
.gj-shipping-method__name,
body.woocommerce-checkout
.gj-shipping-method__name {
    padding-left: 5px;
}


/* Tydligare leveranspostnummer */

body.woocommerce-cart
.woocommerce-shipping-destination,
body.woocommerce-checkout
.woocommerce-shipping-destination {
    display: block;

    margin: 14px 0 8px;
    padding: 11px 13px;
    box-sizing: border-box;

    background: #eef1eb;
    border: 1px solid rgba(78, 86, 54, 0.18);
    border-left: 4px solid #7a846d;
    border-radius: 6px;

    color: #4e5636;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.4;
    text-align: left;
}

body.woocommerce-cart
.woocommerce-shipping-destination strong,
body.woocommerce-checkout
.woocommerce-shipping-destination strong {
    color: #3f4732;
    font-weight: 700;
}


/* Ändra adress knyts visuellt till postnummerrutan */

body.woocommerce-cart
.woocommerce-shipping-calculator,
body.woocommerce-checkout
.woocommerce-shipping-calculator {
    margin: 0 0 4px;
    padding-left: 2px;
}


/* Mobil */

@media (max-width: 600px) {

    body.woocommerce-cart
    .cart_totals ul#shipping_method li label,
    body.woocommerce-checkout
    #order_review ul#shipping_method li label {
        padding-left: 49px !important;
    }

    body.woocommerce-cart
    .cart_totals ul#shipping_method li input,
    body.woocommerce-checkout
    #order_review ul#shipping_method li input {
        left: 15px !important;
    }

    body.woocommerce-cart
    .woocommerce-shipping-destination,
    body.woocommerce-checkout
    .woocommerce-shipping-destination {
        padding: 10px 12px;
    }
}
/* ---------------------------------------------------------
   KASSA – EXPRESSBETALNING
--------------------------------------------------------- */

.gj-checkout-express-payment {
  margin: 24px 0;
  padding: 22px;
  background: #f3f1ec;
  border: 1px solid rgba(78, 86, 54, 0.16);
  border-radius: 12px;
}

.gj-checkout-express-payment__intro {
  margin-bottom: 16px;
  text-align: center;
}

.gj-checkout-express-payment__intro h3 {
  margin: 0 0 4px;
  color: #4e5636;
  font-size: 20px;
}

.gj-checkout-express-payment__intro p {
  margin: 0;
  color: #747866;
  font-size: 14px;
}

.gj-checkout-express-payment .wcpay-express-checkout-wrapper {
  margin: 0;
}

/* Behåll knapparna bredvid varandra på större skärmar */
.gj-checkout-express-payment
.wcpay-express-checkout-wrapper
.wcpay-express-checkout-button-container {
  margin-bottom: 0;
}

@media (max-width: 767px) {
  .gj-checkout-express-payment {
    padding: 18px 14px;
  }
}
/* ---------------------------------------------------------
   KASSASTEG – LJUS GLASKÄNSLA
--------------------------------------------------------- */

#ast-checkout-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  width: max-content;
  max-width: calc(100% - 32px);
  margin: 0 auto 30px;
  padding: 8px 10px;
  overflow-x: auto;
  background: rgba(248, 248, 245, 0.72);
  border: 1px solid rgba(78, 86, 54, 0.11);
  border-radius: 10px;
  box-shadow:
    0 5px 18px rgba(56, 64, 45, 0.045),
    inset 0 1px 0 rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(14px) saturate(125%);
  -webkit-backdrop-filter: blur(14px) saturate(125%);
  -webkit-overflow-scrolling: touch;
}

/* Varje steg */
#ast-checkout-wrap > a {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 7px;
  min-height: 38px;
  padding: 7px 12px;
  background: rgba(255, 255, 255, 0.68);
  border: 1px solid rgba(78, 86, 54, 0.11);
  border-radius: 7px;
  color: #626957;
  text-decoration: none;
  transition:
    background-color 160ms ease,
    border-color 160ms ease,
    color 160ms ease;
}

#ast-checkout-wrap > a p {
  margin: 0;
  color: inherit;
  font-size: 12px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.01em;
  text-transform: none;
  white-space: nowrap;
}

/* Sifferbadge */
#ast-checkout-wrap .ast-step-number {
  display: inline-flex;
  flex: 0 0 22px;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  margin: 0;
  background: rgba(78, 86, 54, 0.08);
  border: 1px solid rgba(78, 86, 54, 0.08);
  border-radius: 50%;
  color: #69705d;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
}

/* Aktivt steg */
#ast-checkout-wrap > a.ast-current {
  background: rgba(233, 238, 226, 0.88);
  border-color: rgba(78, 86, 54, 0.24);
  color: #4e5636;
  box-shadow:
    0 3px 10px rgba(78, 86, 54, 0.05),
    inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

#ast-checkout-wrap > a.ast-current .ast-step-number {
  background: #6f7b60;
  border-color: #6f7b60;
  color: #fff;
}

/* Klickbart, redan passerat steg */
#ast-checkout-wrap > a:not(.ast-current):not(.ast-disable-click):hover {
  background: rgba(240, 243, 235, 0.86);
  border-color: rgba(78, 86, 54, 0.2);
  color: #4e5636;
}

/* Kommande steg */
#ast-checkout-wrap > a.ast-disable-click {
  background: rgba(255, 255, 255, 0.38);
  border-color: rgba(78, 86, 54, 0.06);
  color: #9a9e96;
  cursor: default;
}

#ast-checkout-wrap > a.ast-disable-click .ast-step-number {
  background: rgba(130, 136, 126, 0.1);
  border-color: transparent;
  color: #92978f;
}

/* Pilar */
#ast-checkout-wrap > .ahfb-svg-iconset {
  display: inline-flex;
  flex: 0 0 14px;
  align-items: center;
  justify-content: center;
  width: 14px;
  color: #a4a9a0;
  opacity: 0.75;
}

#ast-checkout-wrap > .ahfb-svg-iconset svg {
  width: 14px;
  height: 14px;
  fill: currentColor;
  stroke: currentColor;
}

/* Mobil */
@media (max-width: 600px) {
  #ast-checkout-wrap {
    justify-content: flex-start;
    gap: 4px;
    max-width: calc(100% - 20px);
    margin-bottom: 23px;
    padding: 6px;
    border-radius: 8px;
  }

  #ast-checkout-wrap > a {
    gap: 5px;
    min-height: 35px;
    padding: 6px 9px;
    border-radius: 6px;
  }

  #ast-checkout-wrap > a p {
    font-size: 10px;
  }

  #ast-checkout-wrap .ast-step-number {
    flex-basis: 20px;
    width: 20px;
    height: 20px;
    font-size: 10px;
  }

  #ast-checkout-wrap > .ahfb-svg-iconset,
  #ast-checkout-wrap > .ahfb-svg-iconset svg {
    width: 11px;
    height: 11px;
    flex-basis: 11px;
  }
}
/* =========================================================
   PRODUKTSIDA – LÄNK TILL VARUKORGEN
   ========================================================= */

.single-product .gj-product-cart-link {
  margin: 8px 0 0 65px;
}

.single-product .gj-product-cart-link__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 36px;
  padding: 8px 14px;

  border: 1px solid #4f5e3d;
  border-radius: 4px;
  background: transparent;
  color: #4f5e3d;

  font-size: 12px;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: 0.03em;
  text-decoration: none;
  text-transform: uppercase;

  transition:
    background-color 0.2s ease,
    color 0.2s ease;
}
.single-product .gj-product-cart-link {
  margin-top: 8px;
  margin-bottom: 14px;
  margin-left: 65px;
}

.single-product .gj-product-cart-link__button:hover,
.single-product .gj-product-cart-link__button:focus {
  border-color: #4f5e3d;
  background: #4f5e3d;
  color: #fff !important;
  text-decoration: none;
}

.single-product .gj-product-cart-link__button:hover,
.single-product .gj-product-cart-link__button:focus {
  background: #4f5e3d;
  color: #fff;
}

@media (max-width: 768px) {
  .single-product .gj-product-cart-link {
    margin-left: 0;
  }
}
/* Tätare text i offertinformationen på varukorgssidan */
.woocommerce-cart .gj-offert-notice__title {
    display: block;
    margin-bottom: 10px;
}

.woocommerce-cart .gj-offert-notice p {
    margin-top: 0;
    margin-bottom: 10px;
    line-height: 1.5;
}
.woocommerce-cart .gj-offert-notice {
    margin-top: 0;
}

.woocommerce-cart .gj-offert-notice p:last-child {
    margin-bottom: 0;
}