/**************************************************************REGLES GLOBALES***********************************************************************/
h1, h2, h3 {
  font-size       : 30px;
  line-height     : 1.2;
  font-weight     : 700;
  letter-spacing  : 0;
}

h4 { font-size: 20px; }

p { font-size: 13px; }

[class*="kicker"] { font-size: 11px; }

/**************************************************************EN TETE DU SITE***********************************************************************/
#entete { height: 120px; }

.ent_gen {
  margin      : 0 auto;
  padding     : 15px 30px;
}

.ent_soc
{
  width         : 150px;
  flex-shrink   : 0 ;         /*Refuse de rétrécir*/
}

.ent_men
{
  display           : flex;
  width             : 75%;
  max-width         : 900px;
  justify-content   : space-around;
  align-items       : center;
}

.ent_men a
{
  font-size   : 13px;
  line-height : 24px;
}

.ent_cli { padding: 10px 20px; }

.ent_cli a { font-size: 15px; }

.men_sel a
{
  font-size   : 16px;
  line-height : 32px;
}

/*********************************************************PIED DU SITE***********************************************************************/
.pie_gen { margin : 0 auto; }

/*1ère partie du pied*/
.pie_gen > div:nth-child(1) {
  padding     : 50px 40px;
  gap         : 40px;
  flex-wrap   : wrap;
}

/*Affichage du logo*/
.pie_gen > div:nth-child(1) > div:nth-child(1) { 
  flex-shrink : 0; 
  width       : 15%;
}

.pie_gen > div:nth-child(1) > div:nth-child(1) > img { max-width: 200px; }

/*Menu de navigation*/
.pie_gen > div:nth-child(1) > div:nth-child(2) { gap: 10px; }

.pie_gen > div:nth-child(1) > div:nth-child(2) > div.pie_lien a { 
  font-size   : 14px;
  line-height : 2;
}

/*Titre des sites*/
.pie_gen > div:nth-child(1) > div:nth-child(3) > div:nth-child(1), .pie_gen > div:nth-child(1) > div:nth-child(4) > div:nth-child(1) {
  font-size     : 16px;
  margin-bottom : 20px;
}

/*Adresse des sites*/
.pie_gen > div:nth-child(1) > div:nth-child(3) > div:nth-child(2), .pie_gen > div:nth-child(1) > div:nth-child(4) > div:nth-child(2) {
  font-size   : 14px;
  line-height : 1.8;
}

/*Made in France et contactez-nous*/
.pie_gen > div:nth-child(1) > div:nth-child(5) {
  gap         : 40px;
  flex-shrink : 0;
}

/*Made In France*/
.pie_gen > div:nth-child(1) > div:nth-child(5) > div:nth-child(1) img { width : 80px; }

.pie_gen > div:nth-child(1) > div:nth-child(5) > div:nth-child(1) span {
  font-size       : 10px;
  letter-spacing  : 2px;
}

/*Contact*/
.pie_gen > div:nth-child(1) > div:nth-child(5) > div:nth-child(2) { gap: 8px; }

.pie_gen > div:nth-child(1) > div:nth-child(5) > div:nth-child(2) > a:nth-child(1) { 
  white-space : nowrap ; 
  padding     : 10px 20px;
  font-size   : 14px;
}

/*2nde partie du pied*/
.pie_gen > div:nth-child(2) { padding: 25px 40px; }

/*Copyright*/
.pie_gen > div:nth-child(2) > div:nth-child(1) { font-size : 12px; }

/*Menu navigation bas : mentions légales...*/
.pie_gen > div:nth-child(2) > div:nth-child(2) { gap: 30px; }

.pie_gen > div:nth-child(2) > div:nth-child(2) a { font-size: 12px; }

/******************************************************CONTACT MOBILE***********************************************************************/
.floating_contact {
  right   : 20px;
  bottom  : 20px;
}

.floating_contact img { width: 110px; }

/**********************************************************PAGE D'ACCUEIL***********************************************************************/
.acc_hero { padding: 80px 0; }

/*1ère section*/
.acc_hero > div:nth-child(1) {
  max-width       : 1200px;
  padding         : 0 40px;
}

/*Texte Votre partenaire....*/
.acc_hero > div:nth-child(1) > h1 { padding: 5px 100px; }

.acc_hero > div:nth-child(1) > h1 > span { padding: 6px 20px; }

/*Texte SGC maitrise + contact*/
.acc_hero > div:nth-child(1) > div:nth-child(2) {
  gap             : 40px;
  width           : 100%;
  margin-bottom   : 40px;
  justify-content : start;
}

.acc_hero > div:nth-child(1) > div:nth-child(2) > p { 
  font-size   : 16px;
  text-align  : center ;
  margin-left : 100px;
}

.acc_hero > div:nth-child(1) > div:nth-child(2) > div:nth-child(2) > a { gap: 8px; }

.acc_hero > div:nth-child(1) > div:nth-child(2) > div:nth-child(2) > a > span:nth-child(1) {
  padding   : 15px 30px;
  font-size : 15px;
}

.acc_hero > div:nth-child(1) > div:nth-child(2) > div:nth-child(2) > a > span:nth-child(2) {  
  width     : 45px;
  height    : 45px;
  font-size : 18px;
}

/*Made In France*/
.acc_hero > div:nth-child(1) > div:nth-child(3) { margin-bottom: 30px; }

.acc_hero > div:nth-child(1) > div:nth-child(3) span {
  font-size     : 12px;
  margin-bottom : 12px;
}

.acc_hero > div:nth-child(1) > div:nth-child(3) img { width: 100px; }

/*Texte Il nous confient....*/
.acc_hero > div:nth-child(1) > p:nth-child(4) { font-size: 16px; }

/*2nde section : Partenaires qui défilent*/
.acc_partenaires { 
  max-width     : 1400px;
  padding       : 0px 30px;
  margin        : -40px auto 0px auto; 
}

.acc_partenaires > div {
  margin        : 0 auto;
  padding       : 30px 0px;
}

.acc_partenaires > div > div > div {
  gap           : 60px;
  padding-right : 60px;
}

.acc_partenaires > div > div > div > img { 
  height  : 32px; 
  margin  : 0 35px;
}

/*3eme section*/
.acc_solutions { padding: 80px 0; }

.acc_solutions > div:nth-child(1) {
  max-width : 1400px;
  margin    : 0 auto;
  padding   : 0 30px;
}

.acc_solutions h2 { margin-bottom: 10px; }

.acc_solutions h3 { 
  margin-bottom : 50px; 
  margin-top    : 0px;
}

.acc_solutions > div:nth-child(1) > div:nth-child(3) { gap: 25px; }

.acc_solutions > div:nth-child(1) > div:nth-child(3) > div {
  padding         : 25px;
  min-height      : 320px;
}

.acc_solutions h4 { margin-bottom: 10px; }

/*4ème section*/
.acc_process h2 {
  margin        : 0px auto 50px auto;
  text-align    : right;
  max-width     : 1000px;
  padding-top   : 100px;
  line-height   : 1.5;
}

.acc_process > div:nth-child(2) > div:nth-child(1) { height: 480px; }

.acc_process > div:nth-child(2) > div:nth-child(2) { padding: 0 8% 40px 50px; }

.acc_process_text p {
  line-height   : 1.8;
  margin-bottom : 15px;
}






.acc_adaptees_subtitle
{
  margin-bottom: 15px;
}

.acc_btn_decouvrir
{
  gap: 10px;
  margin: 15px 0 0 25px;
}

.acc_btn_decouvrir::after
{
  width: 35px;
  height: 35px;
  font-size: 18px;
  margin-left: 12px;
}

.acc_emballages_badge img
{
  height: 60px;
}

.acc_emballages_btn::after
{
  width: 35px;
  height: 35px;
  margin-left: 0;
}


.acc_adaptees
{
  padding: 80px 0;
}

.acc_adaptees_content
{
  display: grid ;
  grid-template-columns: 50% 50% ;
  align-items: start;
  max-width: 100%;
  gap: 0;
  padding: 0;
}

.acc_adaptees_text
{
  display: block ;
  padding-left: 70px;
  padding-right: 30px;
  padding-top: 60px;
  text-align: left;
}

.acc_adaptees h2
{
  font-size: 30px;
  text-align: left ;
  margin-bottom: 20px;
  line-height: 1.3;
}

.acc_adaptees_desc
{
  margin-top: 80px;
}

.acc_adaptees_desc p
{
  font-size: 14px;
  text-align: left ;
  line-height: 1.7;
}

.acc_adaptees_images
{
  display: flex ;
  gap: 25px;
  align-items: flex-start;
  height: 520px;
  justify-content: flex-end;
  position: static ;
}

.acc_img_front
{
  position: static ;
  width: 42% ;
  height: 90% ;
  border-radius: 20px ;
  margin-top: 100px ;
  margin-left: 0 ;
}

.acc_img_back
{
  position: static ;
  width: 38% ;
  height: 80% ;
  border-radius: 20px 0 0 20px ;
  margin-top: 0 ;
  margin-right: 0 ;
}

.acc_emballages
{
  padding: 0;
}

.acc_emballages_content
{
  display: grid ;
  grid-template-columns: 45% 55% ;
  align-items: center;
  max-width: 100%;
  padding: 0;
}

.acc_emballages_image
{
  order: 1;
  min-height: 450px;
  height: 100%;
  margin-bottom: 0;
}

.acc_emballages_image img
{
  border-radius: 0 25px 25px 0 ;
  height: 100%;
  object-fit: cover;
}

.acc_emballages_text
{
  order: 2;
  padding: 60px 8%;
  text-align: left ;
}

.acc_emballages h2
{
  font-size: 30px;
  margin-bottom: 30px;
  text-align: left ;
}

.acc_emballages_subtitle
{
  font-size: 14px;
  margin-bottom: 25px;
  text-align: left ;
}

.acc_emballages p
{
  font-size: 14px;
  text-align: left ;
}

.acc_emballages_engagement
{
  display: flex ;
  flex-direction: row ;
  justify-content: flex-start ;
  align-items: center ;
  gap: 30px;
  margin-top: 40px;
}

.acc_emballages_btn
{
  white-space: nowrap ;
}

.acc_emballages_badge img
{
  max-width: 140px ;
  width: auto ;
  height: auto ;
}




/***************************************A VERIFIER ------ A VERIFIER ***********************************************************************/

/**********************************************************PAGE SAVOIR-FAIRE***********************************************************************/

.sf_sites
{
  padding: 100px 0;
  min-height: 80vh;
}

.sf_sites_content
{
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 40px;
}

.sf_sites h2
{
  font-size: 40px;
}

.sf_stats_grid
{
  display: grid ;
  grid-template-columns: repeat(4, minmax(200px, 1fr));
  gap: 22px;
  margin-top: 40px;
}

.sf_stats_row
{
  display: contents ;
}

.sf_stat_item
{
  padding: 18px 20px 22px 20px;
  border-radius: 16px;
  border-right: none;
  flex-direction: column ;
  align-items: flex-start ;
  gap: 12px;
}

.sf_stat_number
{
  font-size: 52px;
  margin-bottom: 2px;
}

.sf_stat_unit
{
  font-size: 24px;
}

.sf_stat_suffix
{
  font-size: 24px;
}

.sf_stat_icon
{
  width: 62px;
  height: 62px;
}

.sf_sites_details
{
  padding: 80px 0;
}

.sf_sites_details_content
{
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 40px;
}

.sf_sites_details_kicker::before
{
  width: 24px;
  height: 2px;
  top: 50%;
}

.sf_sites_details_kicker
{
  font-size: 11px;
  letter-spacing: 0.08em;
  margin: 0 0 18px 0;
  padding-left: 42px;
}
.sf_sites_details_title
{
  font-size: 30px;
  line-height: 1.24;
  margin-bottom: 18px;
}

.sf_sites_details_intro
{
  font-size: 12px;
  max-width: 100%;
  margin-left: 0;
  text-align: left ;
  margin-bottom: 38px;
}

.sf_sites_cards
{
  display: flex ;
  flex-direction: row ;
  gap: 40px;
  justify-content: center;
}

.sf_site_card
{
  flex: 1;
  max-width: 500px;
  aspect-ratio: 4/3;
  height: auto;
}

.sf_site_card_overlay h3
{
  font-size: 26px;
}

.sf_sites_map_content
{
  padding: 0 24px 0 0;
  gap: 22px;
  height: 700px;
}

.sf_sites_map_text
{
  max-width: 610px;
  margin-top: 150px;
}

.sf_sites_map_text h2
{
  line-height: 1.2;
  margin: 0 0 50px 0;
  font-size: 30px;
}

.sf_sites_map_intro
{
  line-height: 1.45;
  margin: 0 0 6px 0;
  font-size: 12px;
}

.sf_sites_map_points
{
  margin: 0 0 14px 18px;
}

.sf_sites_map_points li
{
  font-size: 12px;
  line-height: 1.45;
}

.sf_sites_map_cards
{
  gap: 14px;
  max-width: 610px;
  margin-top: 40px;
}

.sf_sites_map_card
{
  padding: 13px 14px 12px 30px;
}

.sf_sites_map_card::before
{
  width: 8px;
  height: 8px;
  left: 12px;
  top: 18px;
}

.sf_sites_map_card h3
{
  font-size: 12px;
  margin: 0 0 4px 0;
}

.sf_sites_map_card p
{
  line-height: 1.35;
  font-size: 10px;
  margin: 0;
}

.sf_histoire {
  padding-top: 50px;
}

.sf_histoire_header
{
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 40px;
  margin-bottom: 40px;
}

.sf_histoire h2
{
  font-size: 30px;
  text-align: left ;
}

.sf_histoire_container
{
  max-width: 1400px;
  margin: 0 ;
  padding: 60px 80px;
  border-radius: 0 40px 0 0;
}

.sf_histoire_images
{
    gap: 20px;
  margin-bottom: 15px;
}

.sf_histoire_bloc
{
  padding-left: 50px;
  margin-bottom: 60px;
}

.sf_histoire_content h3
{
  font-size: 22px;
  margin-bottom: 20px;
}

.sf_img_main
{
  width: 65%;
  height: 300px;
}

.sf_img_side
{
  width: 25%;
  height: 250px;
}

.sf_equipes
{
  padding: 80px 0;
}

.sf_equipes h2
{
  font-size: 30px;
  text-align: center ;
  margin-bottom: 60px;
}

.sf_equipes_main
{
  display: grid ;
  grid-template-columns: 50% 50% ;
  align-items: center;
  gap: 40px;
  max-width: 100%;
  padding: 0;
}

.sf_equipes_images
{
  display: flex ;
  gap: 20px;
  height: 500px;
  align-items: flex-start;
  position: static ;
}

.sf_img_back
{
  position: static ;
  width: 25% ;
  height: 70% ;
  border-radius: 0 20px 20px 0 ;
  margin: 0 ;
}

.sf_img_front
{
  position: static ;
  width: 55% ;
  height: 90% ;
  border-radius: 20px ;
  margin-top: 50px ;
  margin-right: 0 ;
}

.sf_equipes_text
{
  padding-right: 5vw;
  padding-left: 20px;
  text-align: left ;
}

.sf_equipes_text h3
{
  font-size: 12px;
  text-align: left;
  margin-bottom: 20px;
  line-height: 1.4;
}

.sf_equipes_text p
{
  font-size: 12px;
  text-align: left;
  line-height: 1.8;
  margin-bottom: 12px;
}

/**********************************************************PAGE QUALITE DURABILITE RESPONSABILITE***********************************************************************/

.qdr_hero
{
  padding: 80px 0;
}

.qdr_hero_content
{
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 40px;
}

.qdr_hero h1
{
  font-size: 30px;
  text-align: left ;
}

.qdr_savoirfaire
{
  padding: 60px 0;
}

.qdr_savoirfaire_content
{
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 40px;
}

.qdr_savoirfaire_kicker
{
  font-size: 11px;
  padding-left: 38px;
  margin: 0 0 14px 0;
}

.qdr_savoirfaire_kicker::before
{
  width: 28px;
  height: 2px;
  top: 50%;
}

.qdr_savoirfaire h2
{
  font-size: 30px;
  text-align: left ;
  margin-bottom: 16px;
}

.qdr_savoirfaire_intro
{
  font-size: 14px;
  margin-bottom: 40px;
  text-align: left;
}

.qdr_secteurs_grid
{
  display: grid ;
  grid-template-columns: 55% 1fr ;
  gap: 16px;
  min-height: 420px;
}

.qdr_secteur_card
{
  border-radius: 14px;
}

.qdr_iso_badge
{
  width: 74px;
  height: 74px;
  margin-bottom: 12px;
  line-height: 1.04;
  font-size: 12px;
}

.qdr_qualite
{
  padding: 80px 0;
}

.qdr_qualite h2
{
  font-size: 30px;
  text-align: left ;
  margin-bottom: 20px;
}

.qdr_qualite_main
{
  display: grid ;
  grid-template-columns: 48% 1fr ;
  align-items: flex-start;
  gap: 40px;
}

.qdr_qualite_images
{
  display: flex ;
  gap: 20px;
  height: 450px;
  align-items: flex-start;
  order: 1;
  position: static ;
}

.qdr_qualite_list
{
  padding-right: 3vw;
  order: 2;
}

.qdr_qualite_kicker
{
  gap: 10px;
  font-size: 11px;
  letter-spacing: 0.12em;
  margin: 0 0 14px;
}

.qdr_qualite_kicker::before
{
  width: 24px;
  height: 2px;
}

.qdr_qualite_checks
{
  gap: 10px;
  margin-bottom: 22px;
  width: 350px;
}

.qdr_check_icon
{
  width: 32px;
  height: 32px;
  font-size: 12px;
}

.qdr_check_item
{
  gap: 14px;
  font-size: 13px;
  padding: 12px 16px;
}

.qdr_certif_logos
{
  gap: 10px;
}

.qdr_certif_badge
{
  padding: 0;
  font-size: 12px;
}

.qdr_certif_badge img
{
  max-height: 50px;
}

.qdr_img_back
{
  position: static ;
  width: 20% ;
  height: 70% ;
  border-radius: 0 20px 20px 0 ;
  margin: 0 ;
}

.qdr_img_front
{
  position: static ;
  width: 55% ;
  height: 90% ;
  border-radius: 20px ;
  margin-top: 40px ;
  margin-right: 0 ;
}

.qdr_durabilite h2
{
  font-size: 30px;
  margin-bottom: 20px;
}

.qdr_durabilite_content
{
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(300px, 0.8fr);
  gap: 60px;
  align-items: stretch;
  width: 100%;
  margin: 0;
  padding: 0 0 0 40px;
}

.qdr_durabilite_text
{
  padding: 0 0 36px 0;
  max-width: 680px;
  width: 100%;
  justify-self: center;
  align-self: center;
  align-items: flex-start;
  text-align: left;
}

.qdr_durabilite_image
{
  margin-bottom: -1px;
}

.qdr_durabilite_image img
{
  width: 100%;
  height: 320px;
  border-radius: 18px 0 0 0;
}

.qdr_engagements
{
  padding: 0 40px 40px 40px;
}

.qdr_engagements_titre
{
  font-size: 30px;
}

.qdr_engagement_item {
  padding: 0 24px;
}

.qdr_eng_title
{
  font-size: 13px;
}

.qdr_eng_desc
{
  font-size: 12px;
}

.qdr_rse_cta_image
{
  width: 38%;
}

.qdr_rse_cta_text
{
  padding: 60px 40px 60px 50px;
}

.qdr_rse_cta_text h2
{
  font-size: 26px;
}

/**********************************************************PAGE CONTACT***********************************************************************/

.contact_section
{
  padding-bottom: 50px;
}

.contact_layout
{
  display: grid ;
  grid-template-columns: 1fr minmax(320px, 480px) ;
  gap: 20px;
  align-items: stretch;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 30px;
}

.contact_form_card,
.contact_infos
{
  display: flex ;
  flex-direction: column ;
  width: 100% ;
}

.contact_form_card
{
  padding: 28px 24px;
  min-height: 520px;
  height: auto;
  gap: 15px;
  display: flex;
  flex-direction: column;
  overflow: visible;
}

.contact_form_card h1
{
  font-size: 36px;
  text-align: left ;
  margin-bottom: 10px;
  color: #17213A;
}

.ctc_check input 
{
  width: 14px;
  height: 14px;
  margin: 0;
  flex-shrink: 0;    
}

.ctc_intro
{
  font-size: 12px;
  text-align: left ;
  color: #2F567D;
  margin-bottom: 18px;
}

.contact_form
{
  gap: 20px;
}

.ctc_row
{
  gap: 9px;
}

.ctc_field
{
  gap: 4px;
}

.ctc_field label
{
  font-size: 12px;
  color: #17213A;
}

.contact_form input
{
  height: 30px;
  padding: 0 12px;
  font-size: 13px;
}

.contact_form textarea
{
  min-height: 100px;
  padding: 10px 12px;
  font-size: 13px;
}

.ctc_check span
{
  font-size: 10px;
  color: #17213A;
}

.ctc_submit
{
  height: 42px;
  font-size: 14px;
}

.contact_infos
{
  gap: 12px;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.ctc_image img {
  height: 100%;
  min-height: 300px;
  object-fit: cover;
  border-radius: 16px;
}

.ctc_image {
  margin-bottom: 0;
  flex: 1;
}

.ctc_icon img {
  width: 38px;
}

.ctc_infos_card
{
  padding: 16px;
  gap: 10px;
  background: #FFFFFF;
  border-radius: 12px;
}

.ctc_info_item
{
  padding: 8px 12px;
  gap: 10px;
}

.ctc_icon
{
  width: 36px;
  height: 36px;
}

.ctc_label
{
  font-size: 11px;
}

.ctc_value
{
  font-size: 11px;
}

.ctc_sites_row
{
  gap: 8px;
}

/**************************************************************EN TETE — COMPLÉMENTS***********************************************************************/
/**********************************************************PAGE D'ACCUEIL — COMPLÉMENTS***********************************************************************/
/**********************************************************PAGE SAVOIR-FAIRE — COMPLÉMENTS***********************************************************************/

.sf_sites_subtitle
{
  font-size: 18px;
}

.sf_site_card_overlay p
{
  font-size: 14px;
}

.sf_equipes_image
{
  flex: 0 0 50%;
}

.sf_equipes_link a
{
  font-size: 12px;
  gap: 10px;
}

.sf_equipes_link a:after
{
  width: 34px;
  height: 34px;
  margin-left: 0;
}

/**********************************************************PAGE QDR — COMPLÉMENTS***********************************************************************/

.qdr_savoirfaire_image img
{
  margin-top: 40px;
}

.qdr_qualite_content
{
  gap: 80px;
}

.qdr_qualite h3
{
  font-size: 20px;
}

.qdr_qualite p
{
  font-size: 15px;
}

.qdr_qualite_right h2:nth-of-type(2)
{
  font-size: 30px;
}
.qdr_durabilite
{
  padding-top: 80px;
}

.qdr_durabilite_content
{
  width: 100%;
  padding: 0 0 0 20px;
  gap: clamp(40px, 4vw, 100px);
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr);
}

.qdr_durabilite h2
{
  font-size: 48px;
  margin-bottom: 24px;
}

.qdr_durabilite_intro_bold
{
  margin-bottom: 16px;
}

.qdr_durabilite h3
{
  font-size: 24px;
  margin-top: 32px;
  margin-bottom: 0;
}

.qdr_durabilite_text
{
  padding: 0 0 48px 0;
  max-width: 760px;
  width: 100%;
  justify-self: center;
  align-self: center;
  align-items: flex-start;
  text-align: left;
}

.qdr_durabilite_image img
{
  width: 100%;
  height: min(52vw, 560px);
  border-radius: 22px 0 0 0;
}

.qdr_engagements
{
  padding: 0 48px 48px 48px;
  gap: 32px;
}

.qdr_engagements_items
{
  gap: 0;
}

.qdr_engagement_item
{
  padding: 0 24px;
}

.qdr_engagement_item:first-child
{
  padding-left: 0;
}

.qdr_eng_num
{
  width: 38px;
  height: 38px;
  font-size: 15px;
  margin-bottom: 14px;
}

.qdr_eng_title
{
  font-size: 14px;
  margin-bottom: 8px;
}

.qdr_eng_desc
{
  font-size: 13px;
  line-height: 1.5;
  margin: 0;
}

.qdr_rse_cta_image
{
  width: 42%;
}

.qdr_rse_cta_text
{
  padding: 80px max(40px, 6vw) 80px 60px;
}

.qdr_rse_cta_kicker
{
  font-size: 11px;
  letter-spacing: 0.1em;
  margin: 0 0 16px;
}

.qdr_rse_cta_text h2
{
  font-size: 32px;
  margin: 0 0 20px;
  line-height: 1.2;
}

.qdr_rse_cta_text p
{
  font-size: 15px;
  line-height: 1.6;
  margin: 0 0 32px;
}

.qdr_rse_cta_actions
{
  gap: 32px;
}

.qdr_rse_cta_btn
{
  gap: 10px;
  font-size: 14px;
  padding: 14px 22px;
}

.qdr_rse_cta_arrow
{
  width: 28px;
  height: 28px;
  font-size: 14px;
}

.qdr_rse_made
{
  height: 48px;
  width: auto;
}
.qdr_secteur_overlay
{
  padding: 20px 20px 24px;
  bottom: 0;
  left: 0;
  right: 0;
}

.qdr_secteur_tag
{
  padding: 6px 16px;
  font-size: 12px;
  margin-bottom: 8px;
}

.qdr_materiaux h2
{
  font-size: 30px;
}

.qdr_materiaux p
{
  font-size: 15px;
}

.qdr_materiau_diagram img
{
  max-width: 480px;
}

.qdr_durabilite h3
{
  font-size: 20px;
}

.qdr_rse_cta_kicker
{
  font-size: 11px;
  letter-spacing: 0.1em;
  margin: 0 0 14px;
}

.qdr_rse_cta_text p
{
  font-size: 14px;
  line-height: 1.6;
  margin: 0 0 28px;
}

.qdr_rse_cta_actions
{
  gap: 28px;
}

.qdr_rse_cta_btn
{
  gap: 10px;
  font-size: 13px;
  padding: 12px 20px;
}

.qdr_rse_cta_arrow
{
  width: 26px;
  height: 26px;
  font-size: 13px;
}

.qdr_rse_made
{
  height: 44px;
  width: auto;
}

.acc_adaptees h2,
.acc_emballages h2,
.sf_sites h2,
.sf_sites_details_title,
.sf_sites_map_text h2,
.sf_histoire h2,
.sf_equipes h2,
.qdr_hero h1,
.qdr_savoirfaire h2,
.qdr_qualite h2,
.qdr_durabilite h2,
.qdr_rse_cta_text h2,
.contact_form_card h1
{
  font-size: 30px;
  line-height: 1.2;
  font-weight: 700;
}

