.year-shortcode{background:#6A5F55;color:#fff;padding:15px 0}
.red-number{color:#C7352D}
a{color:inherit;text-decoration:none}
p a:hover{text-decoration:underline}
li::marker{color:#C7352D;font-size:20px}

.woocommerce button.button,
.woocommerce-page button.button,
.woocommerce a.button,
.woocommerce-page a.button,
.woocommerce input.button{
  background:#C7352D !important;
  color:#fff !important;
  border-radius:4px;
  padding:12px 20px;
  text-transform:capitalize;
  font-weight:600;
  transition:background-color .3s ease
}
.woocommerce button.button:hover,
.woocommerce a.button:hover,
.woocommerce input.button:hover{
  background:#8F1F1B !important;
  color:#fff !important
}

.woocommerce ul.products{display:flex;flex-wrap:wrap;gap:0;align-items:flex-start}
.woocommerce ul.products li.product{
  display:flex;flex-direction:column;justify-content:flex-start;align-items:center;text-align:center;
  padding:18px 18px 22px;background:#fff;border-radius:10px;border:1px solid rgba(0,0,0,.04);
  box-shadow:0 10px 28px rgba(0,0,0,.12);transition:transform .25s ease, box-shadow .25s ease
}
.woocommerce ul.products li.product:hover{transform:translateY(-4px);box-shadow:0 14px 36px rgba(0,0,0,.18)}
.woocommerce ul.products li.product a img{border-radius:8px;display:block;max-width:100%;box-shadow:0 3px 8px rgba(0,0,0,.10);margin-bottom:12px}
.woocommerce ul.products li.product > *:not(.button){flex-shrink:0}
.woocommerce ul.products li.product h2.woocommerce-loop-product__title{color:#6A5F55 !important;font-size:12px;padding:5px;font-weight:400;margin-bottom:10px;text-align:center}
.woocommerce ul.products li.product .price{
  font-size:17px !important;font-weight:700 !important;color:#C7352D !important;background:#F5F2ED;
  padding:10px 14px;border-radius:6px;display:inline-block;margin:15px 0;box-shadow:0 0 6px rgba(199,53,45,.10);text-align:center
}
.woocommerce ul.products li.product .button{
  margin-top:auto;background:#C7352D !important;color:#fff !important;font-weight:600;padding:12px 20px;border-radius:4px;
  transition:background-color .3s ease;align-self:stretch
}
.woocommerce ul.products li.product .button:hover{background:#8F1F1B !important}

@media (max-width:1048px){
  .woocommerce ul.products{flex-direction:column;gap:16px}
  .woocommerce ul.products li.product{width:100% !important;padding:16px;box-shadow:0 1px 6px rgba(0,0,0,.05);border-radius:6px;margin:0 auto}
  .woocommerce ul.products li.product h2.woocommerce-loop-product__title{font-size:17px;margin-bottom:8px;text-align:center}
  .woocommerce ul.products li.product .price{font-size:16px !important;padding:8px 10px;margin:12px 0}
  .woocommerce ul.products li.product .button{padding:10px 16px;font-size:15px;width:100%}
}

@media (max-width:600px){
  .woocommerce ul.products{flex-direction:column;gap:16px}
  .woocommerce ul.products li.product{width:100% !important;padding:16px;box-shadow:0 1px 6px rgba(0,0,0,.05);border-radius:6px;margin:0 auto}
  .woocommerce ul.products li.product h2.woocommerce-loop-product__title{font-size:17px;margin-bottom:8px;text-align:center}
  .woocommerce ul.products li.product .price{font-size:16px !important;padding:8px 10px;margin:12px 0}
  .woocommerce ul.products li.product .button{padding:10px 16px;font-size:15px;width:100%}
}

.woocommerce div.product{background:#fff;padding:40px;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.1)}
.woocommerce div.product .product_title{font-size:28px;color:#2B2B2B;font-weight:600}
.woocommerce div.product p.price,
.woocommerce div.product span.price{
  font-size:26px;font-weight:700;color:#C7352D;background:linear-gradient(180deg,#F9F6F1 0%,#F2EBE2 100%);display:inline-flex;gap:6px;align-items:baseline;padding:10px 14px;border-radius:10px;margin-bottom:20px;border:1px solid rgba(199,53,45,.12);box-shadow:0 6px 16px rgba(199,53,45,.08)
}
.woocommerce div.product .km-price-unit{font-size:14px;font-weight:600;color:#6A5F55}
.woocommerce div.product .woocommerce-product-details__short-description{font-size:16px;color:#444;line-height:1.6}
.woocommerce .single_add_to_cart_button{background:#6A5F55 !important;color:#fff !important;padding:14px 28px;font-size:16px;text-transform:uppercase;border-radius:6px}
.woocommerce .single_add_to_cart_button:hover{background:#8F1F1B !important}

.single-product form.cart{display:flex;flex-wrap:wrap;align-items:flex-end;gap:16px;margin-top:24px}
.single-product form.cart .quantity{display:inline-flex;align-items:center;margin:0}
.single-product form.cart .single_add_to_cart_button{margin:0}
.single-product form.cart #product_volume_field{flex-basis:100% !important;width:100% !important;max-width:100%;margin-top:15px;margin-bottom:15px}
.single-product form.cart #product_volume_field input.input-text{width:100% !important}
#product_volume_field label{font-weight:600;color:#2B2B2B;margin-bottom:6px;display:block}
#product_volume_field input{background:#fff !important;border:1px solid rgba(0,0,0,.15) !important;border-radius:6px;padding:12px 14px;width:100%;box-shadow:0 3px 10px rgba(0,0,0,.06)}

.km-m2-input{display:block;width:100%;box-sizing:border-box;margin:16px 0 8px;padding:12px 12px 10px;border:1px solid #e6e6e6;border-radius:8px;background:#faf8f4}
.km-m2-input label{display:block;font-weight:600;margin:0 0 6px}
.km-m2-input input[type="number"]{width:100%;height:40px;padding:6px 10px;border-radius:6px;border:1px solid #d6d6d6}
.km-m2-input small{display:block;margin-top:6px;color:#6b6b6b}
.km-packages-row{margin-top:12px}
.km-packages-controls{display:grid;grid-template-columns:44px 1fr 44px;gap:8px;align-items:center}
.km-packages-btn{height:40px;border:none;border-radius:6px;background:#c62828;color:#fff;font-weight:700;cursor:pointer}
.km-packages-btn:focus,.km-packages-btn:hover{background:#b11f1f}
body.km-m2-product form.cart .quantity{display:none}

.woocommerce div.product{background:#fff;padding:40px;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.1)}
.woocommerce div.product .product_title{font-size:28px;color:#2B2B2B;font-weight:600}
.woocommerce div.product p.price,
.woocommerce div.product span.price{
  font-size:26px;font-weight:700;color:#C7352D;background:#F5F2ED;display:inline-block;padding:10px 14px;border-radius:6px;margin-bottom:20px
}

.single-product .related ul.products li.product h2.woocommerce-loop-product__title{font-size:12px !important;color:#6A5F55 !important}

@media (max-width:600px){
  .woocommerce div.product{padding:0;box-shadow:none;border-radius:0}
  .woocommerce div.product .product_title{font-size:18px;text-align:left}
  .woocommerce div.product p.price,
  .woocommerce div.product span.price{font-size:14px;text-align:left;padding:8px 12px}
  .single-product form.cart{flex-direction:column;gap:12px}
  .single-product form.cart .single_add_to_cart_button{width:100%}
}

.woocommerce-account input,
.woocommerce-checkout input,
#order_comments.input-text{
  background:#E9E9E9 !important;color:#2B2B2B !important;border:1px solid #ccc;border-radius:4px;padding:10px
}

.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register,
.woocommerce form.woocommerce-checkout{
  background:#f9f9f9;padding:20px;border-radius:6px;font-size:12px
}

.woocommerce-cart .woocommerce-cart-form,
.woocommerce-cart .cart-collaterals .cart_totals{
  background:#fff;padding:20px;border-radius:6px;font-size:12px
}

.woocommerce-order,
.woocommerce-order p{font-size:12px;line-height:1.5;color:#2B2B2B}

.products .outofstock .button.product_type_simple{visibility:hidden}
.products .outofstock .button.product_type_simple::before{
  content:"Slut i lager";background:#D8C7AF;position:absolute;left:0;right:0;text-align:center;border-radius:3px;padding:9% 2%;color:#2B2B2B
}

@media (min-width:768px) and (max-width:1024px){
  .woocommerce ul.products{display:grid !important;grid-template-columns:repeat(auto-fill,minmax(220px,1fr)) !important;gap:20px !important}
}

.price-request{display:inline-block;background:#F5F2ED;color:#6A5F55;font-weight:700;padding:10px 14px;border-radius:6px;box-shadow:0 0 6px rgba(106,95,85,.10)}
body.km-quote-mode .woocommerce ul.products li.product .price{display:none !important}
body.km-quote-mode.single-product .woocommerce div.product p.price,
body.km-quote-mode.single-product .woocommerce div.product span.price{display:none !important}
.woocommerce-Price-amount{display:inline !important}
/* ===== Ar-shortcode (tidigare svart -> palettens morkare ton) ===== */
.year-shortcode{
  background: #6A5F55; /* var(--brand-plum) */
  color:#fff;
  padding-bottom:15px;
  padding-top:15px;
}
.red-number { color: var(--brand-primary); } /* rod effekt enligt paletten */
a { color: inherit; text-decoration: none; }
p a:hover { text-decoration: underline; }
li::marker { color: var(--brand-primary); font-size: 20px; }

/*****************************************************/
/******************** FARGVARIABLER ******************/
/*****************************************************/
:root{
  --brand-dark:    #2B2B2B;
  --brand-primary: #C7352D;
  --brand-accent:  #D8C7AF;
  --brand-plum:    #6A5F55;
  --brand-wine:    #8F1F1B;

  --bg-primary-10: #F5F2ED;
  --bg-accent-10:  #F0E6D8;
  --bg-plum-10:    #F3EEE7;
}

/*****************************************************/
/************ WOO COMMERCE GLOBALT *******************/
/*****************************************************/
.woocommerce button.button,
.woocommerce-page button.button,
.woocommerce a.button,
.woocommerce-page a.button,
.woocommerce input.button {
  background: var(--brand-primary) !important;
  color:#fff !important;
  border-radius:4px;
  padding:12px 20px;
  text-transform:capitalize;
  font-weight:600;
  transition: background-color .3s ease;
}
.woocommerce button.button:hover,
.woocommerce a.button:hover,
.woocommerce input.button:hover {
  background: var(--brand-wine) !important;
  color:#fff !important;
}

/*****************************************************/
/*********** PRODUKTLISTOR & KATALOG *****************/
/*****************************************************/
.woocommerce ul.products {
  display:flex;
  flex-wrap:wrap;
  gap:0px;
  align-items:flex-start;
}

.woocommerce ul.products li.product {
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  align-items:center;
  text-align:center;
  padding:18px 18px 22px;
  background-color:#fff;
  border-radius:10px;
  border:1px solid rgba(0,0,0,.04);
  box-shadow:0 10px 28px rgba(0,0,0,.12);
  transition: transform .25s ease, box-shadow .25s ease;
}

.woocommerce ul.products li.product:hover {
  transform:translateY(-4px);
  box-shadow:0 14px 36px rgba(0,0,0,.18);
}

.woocommerce ul.products li.product a img {
  border-radius:8px;
  display:block;
  max-width:100%;
  box-shadow:0 3px 8px rgba(0,0,0,.10);
  margin-bottom:12px;
}

.woocommerce ul.products li.product > *:not(.button){ flex-shrink:0; }

.woocommerce ul.products li.product h2.woocommerce-loop-product__title {
  color: var(--brand-plum) !important;
  font-size:12px;
  padding:5px;
  font-weight:400;
  margin-bottom:10px;
  text-align:center;
}
.woocommerce ul.products li.product .price {
  font-size:17px !important;
  font-weight:700 !important;
  color: var(--brand-primary) !important;
  background: var(--bg-primary-10);
  padding:10px 14px;
  border-radius:6px;
  display:inline-block;
  margin:15px 0;
  box-shadow:0 0 6px rgba(199,53,45,.10);
  text-align:center;
}
.woocommerce ul.products li.product .button {
  margin-top:auto;
  background-color: var(--brand-primary) !important;
  color:#fff !important;
  font-weight:600;
  padding:12px 20px;
  border-radius:4px;
  transition: background-color .3s ease;
  align-self:stretch;
}
.woocommerce ul.products li.product .button:hover {
  background-color: var(--brand-wine) !important;
}

@media (max-width:1048px){
  .woocommerce ul.products{ flex-direction:column; gap:16px; }
  .woocommerce ul.products li.product{
    width:100% !important;
    padding:16px;
    box-shadow:0 1px 6px rgba(0,0,0,.05);
    border-radius:6px;
    margin:0 auto;
  }
  .woocommerce ul.products li.product h2.woocommerce-loop-product__title{
    font-size:17px; margin-bottom:8px; text-align:center;
  }
  .woocommerce ul.products li.product .price{
    font-size:16px !important; padding:8px 10px; margin:12px 0;
  }
  .woocommerce ul.products li.product .button{
    padding:10px 16px; font-size:15px; width:100%;
  }
}

/*****************************************************/
/*********** MOBILANPASSNING: PRODUKTLISTA ***********/
/*****************************************************/
@media (max-width:600px){
  .woocommerce ul.products{ flex-direction:column; gap:16px; }
  .woocommerce ul.products li.product{
    width:100% !important; padding:16px; box-shadow:0 1px 6px rgba(0,0,0,.05);
    border-radius:6px; margin:0 auto;
  }
  .woocommerce ul.products li.product h2.woocommerce-loop-product__title{
    font-size:17px; margin-bottom:8px; text-align:center;
  }
  .woocommerce ul.products li.product .price{
    font-size:16px !important; padding:8px 10px; margin:12px 0;
  }
  .woocommerce ul.products li.product .button{
    padding:10px 16px; font-size:15px; width:100%; 
  }
}

/*****************************************************/
/********************** ENKEL PRODUKTVY **************/
/*****************************************************/
.woocommerce div.product{
  background-color:#fff;
  padding:40px;
  border-radius:8px;
  box-shadow:0 4px 12px rgba(0,0,0,.1);
}
.woocommerce div.product .product_title{
  font-size:28px;
  color: var(--brand-dark);
  font-weight:600;
}
.woocommerce div.product p.price{
  font-size:26px;
  font-weight:700;
  color: var(--brand-primary);
  background-color: var(--bg-primary-10);
  display:inline-block;
  padding:10px 14px;
  border-radius:6px;
  margin-bottom:20px;
}
.woocommerce div.product .woocommerce-product-details__short-description{
  font-size:16px; color:#444; line-height:1.6;
}
.woocommerce .single_add_to_cart_button{
  background-color: var(--brand-plum) !important;
  color:#fff !important;
  padding:14px 28px;
  font-size:16px;
  text-transform:uppercase;
  border-radius:6px;
}
.woocommerce .single_add_to_cart_button:hover{
  background-color: var(--brand-wine) !important;
}

/*****************************************************/
/*** ENKEL PRODUKT - VOLYM + ANTAL + OFFERTKNAPP  ****/
/*****************************************************/
.single-product form.cart{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-end;
  gap:16px;
  margin-top:24px;
}

.single-product form.cart .quantity{
  display:inline-flex;
  align-items:center;
  margin:0;
}
.single-product form.cart .single_add_to_cart_button{
  margin:0;
}

/* ===== FULLBREDD VOLYM-FALTET ===== */
.single-product form.cart #product_volume_field{
    flex-basis:100% !important;  /* RADBRYTNING */
    width:100% !important;
    max-width:100%;
    margin-top:15px;
    margin-bottom:15px;
}

.single-product form.cart #product_volume_field input.input-text{
    width:100% !important;
}

/*****************************************************/
/* Rubriker pa produkt */
/*****************************************************/
.single-product h2 { font-size:22px !important; }
.single-product h3 { font-size:18px !important; }
.single-product h4 { font-size:16px !important; }
.single-product h5 { font-size:15px !important; }
.single-product h6 { font-size:14px !important; }

@media (max-width:600px){
  .single-product h2 { font-size:18px !important; }
  .single-product h3 { font-size:16px !important; }
  .single-product h4 { font-size:15px !important; }
  .single-product h5 { font-size:14px !important; }
  .single-product h6 { font-size:13px !important; }
}

/*****************************************************/
/* Relaterade produkter */
/*****************************************************/
.single-product .related ul.products li.product h2.woocommerce-loop-product__title {
  font-size:12px !important;
  color: var(--brand-plum) !important;
}

/*****************************************************/
/********************** MOBILANPASSNING **************/
/*****************************************************/
@media (max-width:600px){
  .woocommerce div.product{
    padding:0px;
    box-shadow:none;
    border-radius:0;
  }
  .woocommerce div.product .product_title{
    font-size:18px;
    text-align:left;
  }
  .woocommerce div.product p.price{
    font-size:14px;
    text-align:left;
    padding:8px 12px;
  }
  .single-product form.cart{
    flex-direction:column;
    gap:12px;
  }
  .single-product form.cart .single_add_to_cart_button{
    width:100%;
  }
}

/*****************************************************/
/********************** FORMS ************************/
/*****************************************************/
.woocommerce-account input,
.woocommerce-checkout input,
#order_comments.input-text{
  background-color:#E9E9E9 !important;
  color: var(--brand-dark) !important;
  border:1px solid #ccc;
  border-radius:4px;
  padding:10px;
}

/*****************************************************/
/******************** CHECKOUT ***********************/
/*****************************************************/
.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register,
.woocommerce form.woocommerce-checkout{
  background:#f9f9f9;
  padding:20px;
  border-radius:6px;
  font-size:12px;
}

/*****************************************************/
/********************** CART *************************/
/*****************************************************/
.woocommerce-cart .woocommerce-cart-form,
.woocommerce-cart .cart-collaterals .cart_totals{
  background:#fff;
  padding:20px;
  border-radius:6px;
  font-size:12px;
}

/*****************************************************/
/*************** THANK YOU / ORDER RECEIVED **********/
/*****************************************************/
.woocommerce-order,
.woocommerce-order p{
  font-size:12px;
  line-height:1.5;
  color: var(--brand-dark);
}

/*****************************************************/
/*************** SLUT I LAGER-MARKNING ***************/
/*****************************************************/
.products .outofstock .button.product_type_simple{ visibility:hidden; }
.products .outofstock .button.product_type_simple::before{
  content:"Slut i lager";
  background-color: var(--brand-accent);
  position:absolute;
  left:0; right:0;
  text-align:center;
  border-radius:3px;
  padding:9% 2%;
  color: var(--brand-dark);
}

/*****************************************************/
/******************* MEDIA QUERIES *******************/
/*****************************************************/
@media (min-width:768px) and (max-width:1024px){
  .woocommerce ul.products{
    display:grid !important;
    grid-template-columns:repeat(auto-fill,minmax(220px,1fr)) !important;
    gap:20px !important;
  }
}
.woocommerce-Price-amount{
  display:none;
}

.woocommerce ul.products li.product .price{
  background:none;
  padding:0;
  box-shadow:none;
}

body.km-m2-product .woocommerce div.product p.price,
body.km-m2-product .woocommerce div.product span.price{
  background:none;
  padding:0;
  border:0;
  box-shadow:none;
  margin:0 0 14px;
}

body.km-m2-product .woocommerce-Price-amount{
  display:inline;
}

.km-price-stack{
  display:inline-flex;
  flex-direction:column;
  gap:6px;
  align-items:flex-start;
  background:#FFF6ED;
  border:1px solid #F1D8C3;
  padding:12px 16px;
  border-radius:10px;
  box-shadow:0 6px 16px rgba(158,92,41,.12);
}

.km-price-main,
.km-price-sub,
.km-price-meta,
.km-price-tax{
  display:block;
}

.km-price-main{
  font-size:34px;
  font-weight:800;
  color:#C86B2A;
  line-height:1.05;
  letter-spacing:-0.02em;
}

.km-price-sub{
  font-size:18px;
  font-weight:700;
  color:#2B2B2B;
}

.km-price-meta{
  font-size:16px;
  font-weight:600;
  color:#2B2B2B;
}

.km-price-tax{
  font-size:13px;
  font-weight:500;
  color:#8A8A8A;
}

.km-price-stack .km-price-unit{
  font-size:0.78em;
  font-weight:700;
  margin-left:6px;
  color:inherit;
}

.km-price-stack .woocommerce-Price-amount{
  display:inline !important;
}

@media (max-width:600px){
  .km-price-stack{padding:10px 12px}
  .km-price-main{font-size:26px}
  .km-price-sub{font-size:16px}
  .km-price-meta{font-size:14px}
  .km-price-tax{font-size:12px}
}
