/******* Box ********/
div.variations {
/*  margin-left:20px;*/
  margin-top:20px;
}

div.variations div.variation {
  margin-bottom:30px;
}



/******** Titre *********/
div.variations div.variation div.title {
  color:#eb9000;
  /*font-weight:bold;*/
  font-size:1.5em;
  width:100%;
  background-color:#ff9600;
  border-radius:10px;
  color:white;
  padding:10px;

  
 background-image: url(../images/product-title-bg.png);
 background-position: 100% center;
 background-repeat: no-repeat;
}

/******** Box sous titre (contient l'option) *********/
div.variations div.variation div.oneatt {
  padding-top:15px;
  padding-left:20px;
  padding-bottom:10px;
  border-left:1px solid #fedfb2;
}

/******** texte d'aide dans variation dessus options *********/
div.var_aide_dans_variation {
  padding-bottom:7px;
  color:red;
}

/******** Barre d'aide *********/
div.imgaide {
  display:inline-block;
  vertical-align:top;
  width:16px;
  height:35px;
  /*background-image: url(../images/aide.gif);*/
  background-image: url(../images/exclamation_dancing.gif);
  background-position: center center;
  background-repeat: no-repeat;
}
div.txtaide {
  display:table;
  vertical-align:top;
  height:35px;
  margin-top:-10px;
  color:#d48200!important;
  text-decoration: underline;
  font-weight: normal!important;

}
div.txtaide:hover {
  text-decoration: none;
}
div.txtaide span {
  display:table-cell;
  line-height:1em;
  vertical-align:middle;
}

/******** texte d'aide dessous *********/
div.var_aide_option {
  display:table;
  clear:both;
  align:center;
  vertical-align:bottom;
  font-weight:normal!important;
  font-size:0.8em;
  text-align: justify; text-align-last: center;
  line-height:1.3em!important;
}


/******** OPTION : Mode liste : SELECT *********/
div.variations div.selectplusbox {
  /*display:table-cell!important;*/
  display:inline-block!important;
  height:60px;
  /*padding-right:7px;*/
  margin-left:0px;
  margin-bottom:0px;
  margin-right:-1px;
  /*width:60px;*/
  line-height:1em!important;
  width:22px;
}
div.variations span.selectplus {
  position:relative;
  top:10px;
  font-weight:bold;
  /*font-size:2em;*/
  font-size:60px;
  font-family:Georgia, serif;
  /*line-height:1em!important;*/
}


div.variations div.oneselectbox {
  display:inline-block!important;
  height:60px;
}
div.variations select {
    font-size:1.5em;
    /*line-height: 50px!important;*/
    height:50px!important;
    /*width:200px;*/
    padding-right:40px;

   color: #2b2b2b;
   background-image: url(../images/select-fle.png), -webkit-linear-gradient(#f08d01, #ffecd2 45%, #FFFFFF);
   background-color: #FFF; /*Fond quand ouvert */
   background-position: 97% center;
   background-repeat: no-repeat;
/*   border: 1px solid #AAA;
   margin: 20px;
   overflow: hidden;
   text-overflow: ellipsis;
   white-space: nowrap;*/
     -webkit-appearance: none;
   -moz-appearance: none;
   appearance: none;

//   -webkit-appearance: button;
//   -webkit-border-radius: 2px;
//   -webkit-box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.1);
//   -webkit-padding-end: 20px;
//   -webkit-padding-start: 2px;
   -webkit-user-select: none;

   -webkit-border-radius: 20px;
   -moz-border-radius: 20px;
   border-radius: 20px;
   padding-left: 15px;

}


.noselect {
  -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
     -khtml-user-select: none; /* Konqueror HTML */
       -moz-user-select: none; /* Firefox */
        -ms-user-select: none; /* Internet Explorer/Edge */
            user-select: none; /* Non-prefixed version, currently
                                  supported by Chrome and Opera */
}


/*div.button_dsm_zapbox {
  border-radius:10px;
  border:1px dotted grey;
  display:inline-block!important;
  margin:7px;
  padding:7px;
  text-align:center;
  vertical-align:top;
}*/

div.variations div.color_name {
  font-weight:normal;

}
div.variations div.variation.colorral .opttitle {
  color:#C0C0C0;
}
div.variations div.colorral_attention {
  padding-bottom:10px;
  color:red;
  font-size:0.9em;
}
div.variations div.variation.colorral div.oneradio div.oneradiopadding {
  width:148px;
}
div.variations div.oneradiopadding, div.variations div.oneradio label {
	text-align:center!important;
}
div.variations div.variation.colorral div.oneradio.selected div.oneradiopadding {
  width:144px!important;
}
div.variations div.variation.colorral div.oneradio {
  width:150px!important;
}
div.variations div.variation.colorral div.oneradio {
  border-radius:0px!important;
}
div.variations div.variation.colorral div.title {
  border-radius:0px!important;
}
div.variations div#ral-other-color{
  background-image:url(/wp-content/uploads/ral-choix.jpg);
  background-repeat:no-repeat;
}

/* Cadre du choix des couleurs */
div.colorral_choice_box {
  position:fixed;
  background-color:rgba(0, 0, 0, 0.7);

  z-index:100000;
  width:100%;
  height:100%;
  left:0px;
  top:0px;
  /*left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);*/
  overflow-y:hidden;

}
div.colorral_choice {
  position:fixed;
  background-color:white;
  border:3px solid grey;
  border-radius:15px;
  width:90%;
  height:90%;
  /*left: 50%;
  top: 50%;*/
  left:0; right:0;
  top:0; bottom:0;
  margin:auto;
  /*transform: translate(-50%, -50%);*/
  overflow-y:scroll;
  padding:15px;
  z-index:100001;
}
div.colral_close_button {
  border:1px solid grey;
  position:fixed;
  right:5%;
  top:5%;
  margin-left:-25px;
  margin-top:-25px;
  cursor:pointer;
  z-index:100002;
  padding:10px;
  background-color:#ffffff;
  text-align:center;
  border-radius:25px;
}
/* Les couleurs */
div.colral_box div.colral_attention {
  padding:15px;
  color:red;
}

div.colral_box div.colral_title {
  clear:both;
  font-size:2em;
  background-color:#ff9600;
  color:white;
  line-height:2em;
  padding-left:15px;
}
div.colral_box div.colral_sbox {
  padding:15px;
}

  div.colral_box div.colral_cbox {
    display:inline-block;
    margin:10px;
    min-width:150px;
    text-align:center;
  }
div.variations div.color_help {
  font-weight:normal;
  font-size:0.9em;
  color:#ff9600;
  display:none;
}
/******** OPTION : Mode texte/image : Bouton Radio *********/
div.variations div.oneradio {
  display:inline-block;
  vertical-align:top;
  text-align:center;
  border:1px dotted grey;
  border-radius:10px;
  /*box-shadow: -3px -3px 5px #aaa;*/
  /*padding:12px;*/
  margin:3px;
}
div.variations div.oneradio div.oneradiopadding {
  padding:10px 9px 10px 9px; /*Mofifier dessous : -2*/
}
div.variations div.oneradio.selected div.oneradiopadding {
  padding:8px 7px 8px 7px; /*Mofifier dessus : +2*/
}

div.variations div.oneradio:hover {
  background-color:#fae3c4;
}
div.variations div.oneradio.selected {
  background-color:#fae3c4;
  border:3px solid grey;
  /*padding:10px;*/
  /*box-shadow: -1px -1px 3px #aaa;*/
}
div.oneradiopadding.variation-brut {
  vertical-align:top;
  /*margin-top:7px!important;*/
  width:130px;
  /*height:46px;*/
  /*background-image: url(../images/aide.gif);*/
  background-image: url(../images/variation-brut.png);
  background-position: center center;
  background-repeat: no-repeat;
}
div.oneradiopadding.variation-appret-noir {
  vertical-align:top;
  /*margin-top:7px!important;*/
  width:130px;
  /*height:46px;*/
  /*background-image: url(../images/aide.gif);*/
  background-image: url(../images/variation-appret-noir.png);
  background-position: center center;
  background-repeat: no-repeat;
}


div.variations div.oneradio input[type="radio"] {
  display:none;
/*  width:20px;
  height:20px;
  cursor: pointer;
  display:inline-block;
  margin-right:10px;
  background-color:red;*/
}
div.variations div.oneradio label {
  cursor: pointer;
}
label.opttitle {
  margin-bottom:7px;
}

/*Tailles spécifiques*/
div.variation.fixation div.oneradio {
  width:250px;
  min-height:170px;
}
div.variation.cachescellement div.oneradio {
  margin-top:20px;
  width:170px;
  height:155px;
}
div.variation.packs div.oneradio {
  margin-top:20px;
  width:170px;
  height:230px;
}
div.variation.packs div.oneradio label.opttitle {
  min-height:60px;
}


div.variation.packs div.txtaidebox {
  margin-top:-19px;
  margin-left:15px;
  position:absolute;
  color:#c67900!important;
  text-decoration: underline;
}
div.variation.packs div.txtaidebox:hover {
  text-decoration: none;
}


div.variation.po_fixation div.oneradio {
  margin-bottom:25px;
}
div.variation.po_fixation div.txtaidebox {
  margin-top:10px;
  margin-left:45px;
  position:absolute;
  color:#c67900!important;
  text-decoration: underline;
}
div.variation.po_fixation div.txtaidebox:hover {
  text-decoration: none;
}


div.variation.pose div.oneradio {
  width:230px;
  height:340px;
}

div.variation.go_montage div.oneradio {
  width:210px;
  height:300px;
}


div.variation.go_frise div.oneradio {
  width:220px;
  height:110px;
}

div.variation.go_serrure div.oneradio {
  width:220px;
  height:240px;
}


div.dsm_dim_sm {
  display:inline-block;
}
div.dsm_dim_sm div {
  display:inline-block;
  margin-left:10px;
}





/* Prix et bouton ajouter au panier */
div.gd_product_pricequantity {
  display:inline-block;
  position:relative;
  width:100%;
  border:1px solid #e8dbc8;
  padding : 15px 10px 15px 10px;
  background-color:#fff5e6;
  border-radius:10px;
  margin-right:10px!important;
}
a.link_floating_price_tarif {
  font-size:0.85em;
}
  form.cart div.gd_product_price {
    display:inline-block;
    float:left!important;
  }
  form.cart div.bd-productprice-5 {
    margin-bottom:0px!important;
  }
  form.cart div.gd_add_to_cart, form.cart div.quantity {
    display:inline-block;
    float:right!important;
    width:100px;
  }
  form.cart div.gd_add_to_cart button {
    margin-top:0px!important;
  }

  form.cart div.quantity input {
    height:50px!important;
  }




/***********************************************/
/*****************DEBUT BANNIERE EN BAS ********/
.bottom_cart_banner {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background: #f7f7f7;
  border-top: 2px solid #ddd;
  padding: 10px 15px;
  box-shadow: 0 -2px 8px rgba(0,0,0,0.1);
  z-index: 9999;
}
body:has(#cookie-notice.cookie-notice-visible) .bottom_cart_banner {
  bottom: 61px;
}

.bottom_cart_banner .banner_content {
  /*max-width: 1000px;*/
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 15px;
}

.bottom_cart_banner  .banner_content .banner_left   { margin-right: auto; }
.bottom_cart_banner  .banner_content .banner_center { margin: 0 auto; }
.bottom_cart_banner .banner_content  .banner_right  { margin-left: auto; }

/************** BESOIN D'AIDE ***********/
.banner_left .help_block {display:flex; flex-direction:column; gap:0px; color:#222; font-size:1.2rem;}
.banner_left .help_title {font-weight:600; margin-bottom:0px;}
.banner_left .help_item {display:flex; align-items:center; gap:6px;}
.banner_left .help_icon {flex-shrink:0; fill:#444;}
.banner_left .help_link {color:#222; text-decoration:none; font-weight:500; white-space: nowrap;}
.banner_left .help_link:hover { text-decoration:underline;}

/************** CENTRE : AJOUTER AU PANIER ***********/
.banner_row {display: flex; justify-content: center; align-items: center; gap: 12px; }

.banner_product_block {display: flex; flex-direction: column; align-items: center; text-align: center; gap: 6px;}
.banner_center {display: flex; justify-content: center; align-items: center; gap: 12px;}
.banner_center .banner_product_name {font-size: 1.5em;font-weight: 600;color: #666;}
.banner_center .banner_price { min-width:130px!important;text-align:right;font-weight: 600; font-size: 2em; white-space: nowrap; color:#666; white-space: nowrap;}
.banner_center .banner_qty input { width: 80px!important; padding: 6px 8px; border: 1px solid #ccc; border-radius: 6px; text-align: center; font-size:2em; font-weight:bold;}
.banner_center .banner_add_btn { display: flex; align-items: center; gap: 6px; background: #111; color: #fff; border: none; border-radius: 8px; padding: 8px 12px; cursor: pointer;}
.banner_center .banner_add_btn:hover {filter: brightness(.9);}
.banner_center .icon_cart path { fill:#fff; }
.icon_cart path{fill:#fff}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.banner_note {font-size: 1.5em; color: #666; white-space: nowrap;}

/************** PANIER A DROITE ************/
.banner_right .cart_btn{display:flex; align-items:center; gap:12px; background:#232323; color:#fff; text-decoration:none; padding:10px 14px; border-radius:10px;}
.banner_right .cart_icon{ display:block;}
.banner_right .cart_icon path {fill: #f18d00;}
.banner_right .cart_info{ display:flex; flex-direction:column; line-height:1.1; }
.banner_right .cart_qty{ font-weight:600; font-size:1em; white-space: nowrap;}
.banner_right .cart_total{ font-size:1em; opacity:.9; white-space: nowrap;}
.banner_right .cart_cta{ margin-left:8px; padding:6px 10px; background:#f18d00; border-radius:8px; font-weight:600; white-space: nowrap;}
.banner_right .cart_btn:hover .cart_cta{ filter:brightness(0.9); }
/* Ajoute du padding en bas de page pour ne pas masquer le contenu */
body {
  padding-bottom: 70px; /* hauteur bannière + marge */
}


@media (max-width:1100px){
  .bottom_cart_banner .banner_note {display:none;}
}/*
@media (max-width:1250px){
  .bottom_cart_banner .banner_product_name {display:none;}
}*/

@media (max-width:800px){
  .bottom_cart_banner .banner_right {display:none;}
}
@media (max-width:500px){
  .bottom_cart_banner .banner_left {display:none;}
}
/*********************** FIN BANNIERE EN BAS *********************************************/


/* Prix flottant */
div.floating_price_box {
  position:absolute;
  right:170px; /*Modifier aussi 2563*/
  z-index:100;
  

}
div.floating_price {
  display: none;
  position:absolute;
  margin-top:0px;
  background-color:#FFF;
  padding:5px 10px 5px 10px;
  border:1px dotted grey;
  border-radius:10px;
min-width:170px;/*Modifier aussi 2563*/
  text-align:center;
}
div.floating_price_tarif_box {
  min-height:40px;
}
div.floating_price.fixed {
 position:fixed;
 top:0px;

}
div.floating_price_loader {
  display:none;
}
div.floating_price_tarif {
  font-size:2em;
  font-weight:bold;
}

/* 2025-09-18 Dimensions grilles de fenêtre*/
.dimension_outer_box {background: #f9f9f9; border: 1px solid #ddd; border-radius: 8px; padding: 10px 5px; margin-bottom: 20px;}
.dimension_title{font-weight:bold;font-size:1.2em;color:#292929;margin-bottom:5px;}
.dimension_table{display:block!important;clear:both!important;padding-left:10px;}
.dimension_table .dimension_row{display:flex; flex-wrap:wrap; align-items:center; gap:11px;}
.dimension_table .dimension_pair{display:flex; align-items:center; gap:11px; flex: 0 1 auto;}
.dimension_table .dimension_col_title{flex:0 0 auto; font-weight:bold; white-space:nowrap; min-width:60px;}
.dimension_table .dimension_col{flex:0 1 auto;}
.dimension_table .dimension_col select{width:100%; max-width:200px; padding:4px 6px; box-sizing:border-box; text-align:center;}
.dimension_table .dimension_col input{text-align:center;width:90px!important; height:45px;padding:4px 6px; box-sizing:border-box; text-align:center;font-weight:bold;font-size:1.5em;padding-top:7px;padding-bottom:7px;}
.dimension_outer_box .dimension_htitle {text-align:center;color:red;font-weight:bold;font-size:1.1em;margin-bottom:7px;}
.dimension_table .dimension_col_spacer{width:15px;}

.prod_nbr_barreaux {
  padding-top:4px;
}
