/*ELEMENTS*/

/*THEME COLORS
#29180A marron foncé ++
#2F1B0C marron foncé +
#433124 marron foncé
#aba39d marron clair
#F2C6DD rose
*/



/* MAIN */
@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:ital,wght@0,400;0,600;1,400;1,600&family=Instrument+Serif:ital@0;1&display=swap');

h1, h2, h3, h4, h5 {
  font-family: "Instrument Serif", serif;
  font-weight: 400;
  font-style: normal;
  line-height: 1.2em;
  /*font-style: italic;*/
}

.elementor-heading-title {line-height: 1.2em;}

h6 {
  font-family: "IBM Plex Mono", monospace !important;
  text-transform:uppercase !important; 
  letter-spacing: 3px !important;
}

body {
  font-family: "IBM Plex Mono", monospace !important;
  font-weight: 400;
  font-size: 13.5px;
  font-style: normal; 
}

/*p {font-size: 13px;}
#main .elementor p {font-size: 13px !important;}*/

.page_heading {
  padding-bottom: 10px;
}

.price, #our_price_display, .old_price, .sale_percentage {font-family: "Instrument Serif", serif;}

@media (min-width: 1025px) {
  h1 { font-size: 2.6rem ;}   /* ~48px */
  h2 { font-size: 2.25rem ;}/* ~36px */
  h3 { font-size: 1.75rem ;}/* ~28px */
  h4 { font-size: 1.5rem ;} /* ~24px */
  h5 { font-size: 1.25rem ;}/* ~20px */
  #product .product_name_wrap .product_name { font-size: 2.4rem ;}
  .page_heading {font-size: 2.25rem ;}
}

@media (min-width: 768px) and (max-width: 1024px) {
  h1 { font-size: 2.4rem ;} /* ~40px */
  h2 { font-size: 2rem ;}   /* ~32px */
  h3 { font-size: 1.5rem ;} /* ~24px */
  h4 { font-size: 1.25rem ;}/* ~20px */
  h5 { font-size: 1.25rem ;}/* ~18px */
  #product .product_name_wrap .product_name { font-size: 2rem ;}
  .page_heading {font-size: 2rem ;}
}

@media (max-width: 767px) {
  h1 { font-size: 2.0rem ;}   /* ~32px */
  h2 { font-size: 1.75rem ;} /* ~24px */
  h3 { font-size: 1.5rem ;}/* ~20px */
  h4 { font-size: 1.25rem ;}/* ~18px */
  h5 { font-size: 1.25rem ;}   /* ~16px */
  p { font-size: 14px ;} 
  #product .product_name_wrap .product_name { font-size: 2rem ;}
  .page_heading {font-size: 2rem ;}
}

.s_title_block {font-size: 1.2rem;}

.alert-warning {
  background-color: #29180A;
  border-color: #433124;
  color: #ffffff;
  margin-bottom: 10%;
  border-radius: 0;
}

.alert-danger {
  background-color: #F2C6DD;
  border-color: #F2C6DD;
  color: #2F1B0C;
  margin-bottom: 10%;
  border-radius: 0;
}

.btn {text-transform: uppercase; letter-spacing: 2px;}

.icon_btn {display: none;}
.inline_popup_content {background-color: #2F1B0C;}
.mfp-close {background-color: #2F1B0C !important; color:#fff !important;}
button.btn.show_password {color: #fff;}

button.st_modal_close {
  background: #F2C6DD;
  color: #2F1B0C;
}

button.st_modal_close:hover {
  background: #2F1B0C;
  color: #F2C6DD;
}

#st-content-inner-after,#st-pusher-after {
  background: #29180ac4;
}

/*HEADER*/
#top_bar_container {
  text-transform: uppercase; 
  font-size: 12px;
}

#top_bar_container .dropdown_list_item {
  font-size: 11px;
}

.amount_circle {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  font-size: 1em;
  border-radius: 50%;
  border: 1px solid #F2C6DD;
  background: #F2C6DD;
}

.ajax_cart_bag .amount_circle {border: 2px solid #F2C6DD;}

.stmenu_multi_level li a {border-bottom: 1px solid #433124}

span.cart_text,
span.ajax_cart_total,
span.ajax_cart_quantity {
  padding: 5px;
}

/*CATEGORY*/
#js-product-list-top {display:none;}
.hover_fly.hover_fly_1 {opacity: 0.6;}
.hover_fly.hover_fly_1:hover {opacity: 0.8;}

.ajax_block_product .s_title_block a, .pro_column_right .s_title_block a {
    font-family: "IBM Plex Mono", monospace;
    text-transform: capitalize;
    font-style: normal;
}

.product_view_more_box {
    padding-top: 5%;
}


/*PRODUCTS*/
@media only screen and (min-width: 992px) {
.product_middle_column_inner {padding: 40px;}
}

.pro_extra_info {font-size: 12px; text-transform:uppercase;}
a.add_to_wishlist {font-size: 12px;}

.qty.qty_wrap.qty_wrap_big {display: none;}

.product-variants .product-variants-item select {
  border: 1px solid #aba39d;
  color: #fff;
  width: auto;
  padding: 0 20px;
  text-transform: uppercase;
}

.accordion_more_info .mobile_tab .tab-pane {border-bottom: 1px solid #433124;}

/*FORMS*/
input.form-control, textarea.form-control, .form-control-select, input.form-control:focus, textarea.form-control:focus, .form-control-select:focus {
  background: #29180A;
  color: #fff;
}

.form-control:disabled, .form-control[readonly] {
  background-color: #29180A;
  opacity: 1;
}

span.input-group-btn {
  background: #29180A;
  color: #fff !important;
}


.bootstrap-touchspin .btn-touchspin,.bootstrap-touchspin .form-control {
    border-color: #433124;
}

.bootstrap-touchspin .btn-touchspin {
  background-color: #2F1B0C;
  color: #aba39d;
}

.bootstrap-touchspin .btn-touchspin:hover {
    background-color: #433124;
}

.input-color:checked+span,.input-color:hover+span,.input-radio:checked+span,.input-radio:hover+span {
    border-color: #F2C6DD;

}

.color,.radio-label {
    display: inline-block;
    border: 1px solid #433124;
}

.radio-label {
    background: #2F1B0C;
    padding: 4px 9px;
}

.st-input-loading {
  background: #433124;
}

/*CREATIVE ELEMENTS*/
.swiper-button-next .fto-right-open-3, .swiper-button-prev .fto-left-open-3 {display: none;}
.swiper-button-tr .swiper-button {width:50px;}
i.fto-right-open.slider_arrow_right, i.fto-left-open.slider_arrow_left {display: none;}
.swiper-button {background: none !important;}
.swiper-button:hover {color:#F2C6DD !important;}
.swiper-button-disabled {color: transparent !important;}

/*MY_ACCOUNT*/
#my-account .columns-container,
#history .columns-container {
  margin-bottom: 20%;
}

.my_account_page_footer {
    margin-top: 40px !important;
}

/* --- Grille Mon Compte full-width sans fond blanc --- */
.myaccount-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);  /* 2 colonnes sur mobile */
  gap: 20px;
  width: 100%;               /* prend toute la largeur */
  margin: 0;
  padding: 10px;
}

@media (min-width: 768px) {   /* tablette */
  .myaccount-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (min-width: 1200px) {  /* desktop */
  .myaccount-grid {
    grid-template-columns: repeat(4, 1fr);
  }
}

/* Chaque bloc occupe tout l'espace de sa colonne */
.myaccount-item {
  width: 100%;
  border: 1px solid #433124;
  background-color: #29180A;
}

/* Style des tuiles (sans fond blanc) */
.myaccount-grid .account-tile {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  text-align: center;
  padding: 1rem;
  border: none;            /* plus de contour */
  background: none;        /* supprime fond blanc */
  box-shadow: none;
  transition: transform .2s ease;
}
.myaccount-grid .account-tile:hover {
  transform: translateY(-2px);
}

.myaccount-grid .img_account {
  width: 48px;
  height: 48px;
  object-fit: contain;
}

/*CHECKOUT*/
.checkout_wrapper {
  padding-top: 5%;
}

.card.card_trans {
    background: #29180A;
}

.checkout_left_column, .checkout_right_column {
  border: 1px solid #433124;
  background:#29180A;
}

textarea#delivery_message {
    background: #29180A;
    border: 1px solid #433124;
    color: #fff;
}

/*SHIPPING*/
/* --- Neutralise les règles du thème qui cassent le flex sur mobile --- */
@media (max-width: 991px) {
  body#checkout section.checkout-step .delivery-option {
    display: block !important;          /* annule display:-webkit-box/-moz-box/... du thème */
  }

  body#checkout section.checkout-step .delivery-option-2 {
    display: block !important;
    flex-direction: initial !important; /* supprime le flex column imposé */
  }
}

/* Remise à plat des textes (annule break-word du thème) */
#checkout-delivery-step .carrier-name,
#checkout-delivery-step .carrier-delay,
#checkout-delivery-step .carrier-price,
#checkout-delivery-step .carrier-extra-content {
  display: block !important;
  width: 100% !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  white-space: normal !important;
  text-align: left;
}

/* Optionnel : style visuel de chaque option */
.delivery-option {
}

.carrier_logo {margin-left: 10px;}
.carrier-name {font-size: 1.4em; font-weight: bold;}
.carrier-price {font-size: 1.1em; font-weight: bold;}
.text-muted {color: #aba39d !important; line-height: 1em;}

/*BOXTAL*/
.maplibregl-popup-content {
  color:#29180A;
  background:#fff;
  border-radius: 0;
}


/*BLOG*/
.blog_content {
  max-width: 900px;
  margin: auto;
  padding: 5% 0;
}

.block_blog {
  margin-bottom: 30px;
}