* { -o-box-sizing: border-box; box-sizing: border-box; }
a{ color:inherit; /*text-decoration:inherit; -webkit-transition:all 0.1s; transition:all 0.1s;*/ }
html{ padding:0; margin:0; width:100%; height:100%; }
body{ position: relative; overflow-x: hidden; font-family:var(--wp--custom--font-primary); position: relative; padding:0; margin: 0; background:#ffffff;  }
body{
	--contentSize:1260px;
	--wideSize:1600px;
}


section>*{ width:calc(100% - 40px);  max-width:var(--contentSize) !important; margin-left:auto; margin-right:auto; }
.alignnormal{ width:calc(100% - 40px);  max-width:var(--contentSize) !important; margin-left:auto; margin-right:auto; }
.alignwide{ width:calc(100% - 40px);  max-width:var(--wideSize) !important; margin-left:auto; margin-right:auto; }
.alignfull{ width:100% !important; max-width:none !important; }

iframe{ margin-left: auto !important; margin-right: auto !important;}

h2 strong{ color: var(--wp--preset--color--black); }
h2 strong:after{ content: "."; color: var(--wp--preset--color--red);}


hr{ border: none !important; background: var(--wp--preset--color--mid-gray); height: 5px; margin-top:20px; margin-bottom:20px;  }

img{ display: block; max-width:100%; height: auto; width: auto; }

@media screen and (max-width:1024px) {
	body{
		--wp--preset--spacing--20:30px;
    --wp--preset--spacing--30: 30px;
    --wp--preset--spacing--40: 30px;
    --wp--preset--spacing--50: 30px;
    --wp--preset--spacing--60: 30px;
    --wp--preset--spacing--70: 30px;
    --wp--preset--spacing--80: 30px;
    --wp--preset--spacing--100: 30px;
    --wp--preset--spacing--150: 30px;
    --wp--preset--spacing--200: 30px;
	}
	br{ display: none;}
	.wp-block-spacer{ max-height: 30px;}
}
	
	
	
.ico:before{ content:""; margin-right:2px;  display: inline-block; vertical-align: middle;  width: 30px; height: 30px; background:url(../images/pictos.svg); background-size: 90px 60px; }
.ico.msg:before{ background-position:-30px 0px;  }
.ico.tel:before{ background-position:-60px 0px;  }

.ico.white.map:before{ background-position:0px -30px;  }
.ico.white.msg:before{ background-position:-30px -30px;  }
.ico.white.tel:before{ background-position:-60px -30px;  }


.ico a{ display: inline-block;text-decoration: underline;}

.ico{font-size: 11px; line-height: 30px; text-transform: uppercase;}

.topbar .ico.tel{font-size:16px;/*font-family: var(--wp--preset--font-family--titre);*/ font-weight:700; }

.topbar{text-transform: uppercase; position: absolute; color:var(--wp--preset--color--black); line-height: 30px; list-style: none; margin: 0; padding: 0; top:5px; right:5px; font-size: 11px;}
.topbar li{ display: inline-block; vertical-align: middle;}
.topbar li:not(.lang-item){ margin-right:20px; }
.topbar li.lang-item a{ display: block; padding:1px 5px; }

.topbar li.lang-item a{ background: #f5f5f5; border:1px solid #cccccc; border-radius:3px; margin-right:5px; }

.topbar li.current-lang a{ background: #AFAFAF; border-color:#AFAFAF;  color:#eaeaea; }
.topbar img,.topbar span{ display: inline-block; vertical-align:middle;}




header{ display: flex; justify-content: space-between; gap:10px; align-items: flex-end; width: 100%; max-width:var(--contentSize); height:130px; margin: auto;}

header>*{}
header>nav{ text-align: right; }
#Logo{ display: block; text-indent:200%; white-space: nowrap; overflow: hidden;width:180px; height: 66px; background:#e31f26 url(../images/logo-cmoi.svg) center center no-repeat;}



#mainmenu{  font-family: var(--wp--preset--font-family--titre); font-size: 13px; display: flex; justify-content:flex-end; align-items:center; gap:20px;  list-style: none; padding: 0; margin: 0; height:66px; line-height:1.1; }
.menu-item{ font-weight:700; display: flex;  align-items: center; position: relative; height: 100%; /* border:1px dotted green;*/ }
.menu-item>a{ display: block; padding:10px 0;  }
nav>ul>li>a{ text-decoration: none;}
nav>ul>li>a:after{ content:""; display: block; position: absolute; height:5px; width:100%; left:0px;  bottom:0;  background:var(--wp--preset--color--mid-gray); }
nav>ul>li.current_page_item>a , nav>ul>li.current-menu-ancestor>a{ color:#e31f26; }
nav>ul>li:hover>a:after{ background:var(--wp--preset--color--black); }
nav>ul>li.current_page_item>a:after,nav>ul>li.current-menu-ancestor>a:after{ height: 5px;  background:#e31f26; }

@media screen and (min-width:1025px) {
.sub-menu{ min-width:100%;  opacity: 0; pointer-events: none; z-index:1000; font-size: 12px; position: absolute; background: #ffffff; top:100%; left:50%; transform: translateX(-50%); margin: 0; padding:15px; list-style: none; box-shadow:0 2px 3px rgba(0,0,0,0.2);  }
.menu-item-has-children:hover>.sub-menu{ opacity: 1; pointer-events: auto;}
nav>ul>li>ul>li{ font-weight: 400; display: block;padding:3px 0; line-height:1.2; }
nav>ul>li>ul>li:not(:last-child){ border-bottom:1px dotted #cccccc;}
nav>ul>li>ul>li>a{ display: block;padding:5px 0; white-space: nowrap; text-decoration: underline; text-decoration-color: rgba(0,0,0,0.3);}
nav>ul>li>ul>li.current_page_item>a,nav>ul>li>ul>li.current-menu-item>a{color:#e31f26; text-decoration: none;}
}

#showmenu{ display: none; }
#mobilelang{ display: none; }

@media screen and (max-width:1024px) {
	
	.topbar{ display: none;}

	header{ background: #ffffff; height:70px; position: sticky; z-index:1000; top: 0; left: 0; width: 100%; box-shadow:0 0 15px rgba(0,0,0,0.4);  }
	header>*:last-child{ flex: 1;}
	#Logo{ height:70px;}
	
	
	#mobilelang{ display: flex; flex-direction: column; gap:5px;list-style: none; margin: 0; padding: 0; align-self: center; font-size: 12px; }
	#mobilelang a{ display: block; white-space: nowrap; padding:3px; background: #f5f5f5; }
	#mobilelang img{ display:inline-block; vertical-align:middle; }
	
	
	#mainmenu{ transition:transform 0.2s ease; transform: translateX(110%); height:calc(100vh - 70px); overflow-y: auto; position: absolute; padding:10px; gap:0; display: block; z-index: 100; align-items:initial; text-align: left;  right: 0; top:70px; width: 250px;background: #f5f5f5; opacity: 0; pointer-events: none; box-shadow:5px 5px 5px rgba(0,0,0,0.1),-5px 5px 5px rgba(0,0,0,0.1);  }
	#mainmenu.on{ transform: translateX(0%); opacity:1; pointer-events:auto; }
	
	.menu-item{ height: auto;}
	
	#mainmenu>.menu-item{ flex-direction: column;align-items:flex-start; }
	#mainmenu>.menu-item:not(:last-child){ border-bottom: 1px dotted #cccccc; }

	#mainmenu>.menu-item>a:after{ content: none;}
	#mainmenu>.menu-item-has-children>a:before{ content:""; position: absolute; top:5px; left: 0; display: block; width:40px; height:40px; }
	#mainmenu>.menu-item-has-children>a.open:before{transform: rotate(90deg);}
	
	#mainmenu>.menu-item>a:before{ background: url("../images/fl-root.svg") center center no-repeat; }
	
	
	#mainmenu>.menu-item>a{ padding:0 5px 0 40px; line-height:50px; }
	
	.sub-menu{ padding:0 0 15px 40px; display: none;}	
	.sub-menu .menu-item{ font-weight: normal; }
	
	
	
	
	#showmenu{ transition:all 0.3s ease-out; display: flex; width:70px; height:70px; margin: 0 0 0 auto; }
	#showmenu div{ margin: auto; }
	#showmenu span{ transition: all 0.2s linear; display: block; width:34px; height:4px; background:var(--wp--preset--color--black);  }
	#showmenu span:not(:last-child){ margin-bottom:5px; }
	#showmenu span:nth-child(3){ margin-top:-9px; }
	#showmenu.on{ background: #f5f5f5;}
	#showmenu.on span:nth-child(1){ transform:scaleX(0);}
	#showmenu.on span:nth-child(2){ transform: rotate(45deg);}
	#showmenu.on span:nth-child(3){ transform: rotate(-45deg);}
	#showmenu.on span:nth-child(4){ transform:scaleX(0);}	

}


.wrap{ position: relative; max-width:1240px; margin: auto; padding:0 20px; width: 100%; /*border:1px dashed green;*/}
.wrap.paddV{ padding-top:20px; padding-bottom:20px; }

.txt a{ color:#e31f26; text-decoration:underline;}
.txt a:hover{ color:#000000;}

/*
#Ariane{ font-size:12px;}
#Ariane>span{ display: inline-block; vertical-align: middle;margin:0 2px; }
#Ariane>span:last-child a{text-decoration: underline;}
#Ariane a:hover{text-decoration: underline;}
*/

.rank-math-breadcrumb{font-family: var(--wp--preset--font-family--titre); font-size: 13px !important; }
.rank-math-breadcrumb a{ text-decoration: underline; }


.link .plus{ transition:color 0.2s ease-out; z-index: 100;   position: absolute; font-family: var(--wp--preset--font-family--titre); font-size:37px; font-weight:900; text-align: center; line-height:28px; bottom:0; right: 0; width: 30px; height: 30px; display: block; }
.link .plus:before{ transition:transform 0.2s ease-out; transform:translate3d(130px,130px,0) rotate(45deg) scale(1); transform-origin:center center;  content:''; position:absolute; bottom:-15px; right: -15px;  z-index:-1; display: block; width:160px; height:160px; background:#e31f26;}
.link:hover .plus{ color:#ffffff; }
.link:hover .plus:before{ transform:translate3d(90px,90px,0) rotate(45deg) scale(1); }


.Pagination{ display: table; table-layout: fixed;margin:30px auto; max-width: 800px; width:100%;}
.Pagination>*{ display: table-cell; }
.Pagination>*:last-child{ text-align: right;}
.Pagination a{ display: inline-block; padding:5px 8px; background: #f5f5f5; }




.cols{ display: flex; width: 100%; justify-content: space-between; align-items:center; }
.col{  }
.col img{ display:block;width: 100%; height: auto;  }
.col .txt{ padding:30px; text-align: justify;}
.col p:not(:last-child){ margin:0 0 5px 0;   }
.col p:last-child{ margin:0;   }

@media screen and (max-width:1024px) {
	.cols{ flex-direction: column; }
	
}

/* ACCUEIL */
/*
#accueil .b-title{ text-align: center; }
#accueil .b-title h1{  font-size: 30px; line-height: 30px; }

#accueil .b-intro{ text-align: center; background:#ffffff; background-size: cover; color: #000000; text-shadow: none;  }
#accueil .b-intro p{ margin:0; max-width:inherit;  }


#accueil .col{ background:#f5f5f5; }

#accueil .col:nth-child(2){ background:#ffffff; }
*/

#news{ display: flex; flex-wrap:wrap; gap:30px;  margin-top:30px; }
#news>*{ display: flex; width:calc(100% / 2 - 15px);position: relative;background: #ffffff;box-shadow: 0 3px 7px rgba(0,0,0,0.15);padding:20px; gap:20px; align-items: center;}
#news>*>*:first-child{  position: relative;}
#news>*>*:first-child img{ display: block; width:150px; height:auto;}
#news>*>*:last-child{ flex: 1; }
#news h3{ font-size:16px; color:var(--wp--preset--color--black); margin:0 0 5px 0;  }
#news a{  color:var(--wp--preset--color--red);}

@media screen and (max-width:1024px) {
	#news{ flex-direction: column;}
	#news>*{ width:100%;align-items:flex-start; }
	#news>*>*:first-child img{ display: block; width:70px; height:auto;}
}



#machines{ display: flex; flex-wrap:wrap; gap:30px;  margin-top:30px; }
#machines>*{ display: flex; flex-direction: column; width:calc(100% / 3 - 20px);position: relative;background: #ffffff;box-shadow: 0 3px 7px rgba(0,0,0,0.15);padding:20px; gap:20px; align-items: center;}
#machines>*>*:first-child{  position: relative;}
#machines>*>*:first-child img{ display: block; max-width: none; width:100%; height:auto; aspect-ratio:4/3; object-fit: cover; }
#machines>*>*:last-child{ flex: 1; }
#machines h3{ font-size:16px; color:var(--wp--preset--color--black); margin:0 0 5px 0;  }
#machines a{  color:var(--wp--preset--color--red);}

@media screen and (max-width:1024px) {
	#machines{ flex-direction: column;}
	#machines>*{ width:100%;align-items:flex-start; }
	#machines>*>*:first-child img{ display: block; width:70px; height:auto;}
}


/* GRID */

#filters{margin-left: auto; margin-right: auto; max-width:var(--contentSize); font-size: 13px !important;}
#filters ul{ align-items: center; list-style: none; gap:10px; display: flex; flex-direction: row; flex-wrap: wrap; margin:0; padding: 0; }
#filters li a{ display: block; padding:5px 10px; background:#ffffff;   }

#filters li:not(.on) a{ text-decoration:underline; text-decoration-color:rgba(0,0,0,0.3); }
#filters li:not(.on) a:hover{ text-decoration-color:#000000; }
#filters li.on a{ color: var(--wp--preset--color--red); font-weight: 700; }

@media screen and (max-width:1024px) {
	#filters{ padding-left:30px; padding-right:30px;  }
}

.grid{ padding:40px 10px;  background-color:#f5f5f5; }

#Grid{ margin-left: auto; margin-right: auto; max-width:var(--contentSize);  }
#Grid:after {content: '';display: block;clear: both;}
#Grid .elt{ text-decoration: none; box-shadow: rgba(0, 0, 0, 0.1) 0px 10px 15px -3px, rgba(0, 0, 0, 0.05) 0px 4px 6px -2px; width: 290px; overflow: hidden; position: relative; font-size: 12px; display:block; float: left; margin-bottom:30px; background: #ffffff; }
#Grid .elt .vis{ display: block;  }
#Grid .elt .vis img{ display: block; width: 100%; height:100%; object-fit:scale-down; }
#Grid .elt .txt{ display: block; padding:20px; }
#Grid .elt .txt strong{ display: block; font-family: var(--wp--preset--font-family--titre); font-size:16px; line-height:1.2;  color:#000000;}
#Grid .elt .txt i{ font-style: normal; display: block; margin-top:5px;  font-size:12px; line-height: 1.1; font-weight: 600; color:#b4b4b4;}
#Grid .elt .plus{ transition:color 0.2s ease-out; z-index: 100;   position: absolute; font-family: var(--wp--preset--font-family--titre); font-size:37px; font-weight:900; text-align: center; line-height:28px; bottom:0; right: 0; width: 30px; height: 30px; display: block; }
#Grid .elt .plus:before{ transition:transform 0.2s ease-out; transform:translate3d(130px,130px,0) rotate(45deg) scale(1); transform-origin:center center;  content:''; position:absolute; bottom:-15px; right: -15px;  z-index:-1; display: block; width:160px; height:160px; background:#e31f26;}
#Grid .elt:hover .plus{ color:#ffffff; }
#Grid .elt:hover .plus:before{ transform:translate3d(90px,90px,0) rotate(45deg) scale(1); }
#Grid .elt:active{ box-shadow:1px 0px 2px rgba(0,0,0,0.15);}
@media screen and (max-width:1024px) {
	#Grid{ padding-left:30px; padding-right:30px;  }
	#Grid .elt{  width:calc(50% - 50px); min-width: 130px; max-width:250px;  }
	#Grid .elt .txt{ padding:10px; }
	#Grid .elt .txt strong{ font-size: 14px; }
}
@media screen and (max-width:360px) {
		#Grid .elt{  width:calc(100% - 60px); min-width:none; max-width:none;  }

}

.fiche{ display: flex; gap:50px; margin-top:40px; margin-bottom:40px; }
.fiche>*{ flex: 1; }
.fiche .txt{ }
.fiche .brand{ display:flex; align-items: center; width: 100%; gap:20px; padding:20px; background:var(--wp--preset--color--light-gray);font-size:var(--wp--preset--font-size--small); margin-bottom:30px;}
.fiche .brand>div{ flex: 1; }
.fiche .brand>div:first-child{ flex: none; width:100px; }
.fiche .brand img{ mix-blend-mode: darken; }
.fiche .brand p{ margin:0; }

.fiche .brand:empty{ display: none;}

.fiche .tb{ width: 100%; border-top:1px solid var(--wp--preset--color--mid-gray);  }
.fiche .tb>div{ width: 100%; }
.fiche .tb>div.flex{ display: flex;}
.fiche .tb>div>span{ padding:4px 10px; border-bottom:1px solid var(--wp--preset--color--mid-gray); }
.fiche .tb>div>span:first-child{ flex:1; }
.fiche .tb>div>span:last-child{ width:40%;  }
.fiche .tb>div>p{ padding:4px 10px; margin:0; border-bottom:1px solid var(--wp--preset--color--mid-gray); }
.fiche .tb table{ border: none; border-spacing:0; padding:0;   width: 100%; }
.fiche .tb tr{ display: flex; }
.fiche .tb td{ border:none;  padding:4px 10px; border-bottom:1px solid var(--wp--preset--color--mid-gray); }
.fiche .tb td:first-child{flex:1;  }
.fiche .tb td:last-child{width:40%; }
.fiche .tb td strong{ font-weight: 400; }

.fichelinks{ margin-top:30px; margin-bottom:30px;  /*border-top:5px solid var(--wp--preset--color--black);*/ display: flex; flex-wrap: wrap; }
.fichelinks{font-family: var(--wp--preset--font-family--titre); font-weight:700; color: #ffffff; }
.fichelinks a{ display: flex; box-shadow:0 3px 8px rgba(0,0,0,0.3); transition:all 0.1s linear; margin-right: 20px; margin-bottom:20px;  line-height:40px;  padding:0 15px 0 0; position: relative;  background:#e31f26;}
.fichelinks a span{ border-right:1px solid rgba(255,255,255,0.2);  width:40px; height:40px; display: block; margin-right:15px; }
.fichelinks a.sheet span{ background:var(--wp--preset--color--black) url(../images/download.svg);}
.fichelinks a.video span{ background: var(--wp--preset--color--black) url(../images/video.svg);}
.fichelinks a.contact span{ background: var(--wp--preset--color--black) url(../images/contact.svg);}
.fichelinks a:hover{ background:var(--wp--preset--color--black);  box-shadow:0 0 2px rgba(0,0,0,0.3);}

#galerie{ display: flex; gap:20px; flex-wrap: wrap;  margin-bottom:30px; }
#galerie>*{ position: relative; flex: 1; border:1px solid var(--wp--preset--color--mid-gray);  }
#galerie>*:after{ content: "";  width:30px; height:30px;  position: absolute; top:0; right:0; background:var(--wp--preset--color--red) url("../images/plus-white.svg") center center no-repeat; color: #ffffff; }
#galerie>*:first-child{ flex: none; width:100%; }
#galerie>*:first-child img{ width:100%;  }
#galerie>*:not(:first-child){ max-width:150px;  }
#galerie>*:not(:first-child) img{ aspect-ratio:1/1; object-fit: cover; }

@media screen and (max-width:1024px) {
	.fiche{ flex-direction: column; gap:0;}
	
}





.captcha-image{ border: none !important; background: #f0f0f0; display: block !important;}
.captcha-image label > input:checked + i{ border-color:transparent !important; color:#e31f26; }



.trame{ background-image:url(../images/trame.png); }
.center{ text-align: center; }


.txt hr{ display: block; border:none; height:3px; background:#cccccc; margin:20px 0;   }



iframe{ display: block; margin: 0; }

footer>div:nth-child(1){  background-color:#e31f26; padding: 15px; }
footer>div:nth-child(1)>*{ max-width:var(--wp--style--global--content-size); margin-left: auto; margin-right: auto;  }

footer .col{ color: #ffffff;}
footer .col:nth-child(1){ width:160px; height: 56px; background:#e31f26 url(../images/logo-cmoi.svg) center center no-repeat;}

footer .col:nth-child(2){ text-align: right; vertical-align: middle;}
footer .col:nth-child(2) span{ display:inline-block; white-space: nowrap; margin-left: 30px;}

footer>div:nth-child(2){ background-color:#ffffff;position: relative; z-index: 100; box-shadow:0 1px 3px rgba(0,0,0,0.3);  }
footer>div:nth-child(2)>*{ max-width:var(--wp--style--global--content-size); margin-left: auto; margin-right: auto;  }

footer>div:nth-child(3){ background-color:#e6e6e6;  font-size: 12px; line-height:1.2; font-weight: 300; color:#5a5a5a; font-family: var(--wp--preset--font-family--titre); }
footer>div:nth-child(3)>*{ max-width:var(--wp--style--global--content-size); margin-left: auto; margin-right: auto;  }


footer>div:nth-child(3) ul{list-style: none; margin: 0; padding: 0;}
footer>div:nth-child(3)>ul{display: table; border-spacing:20px; /*max-width: 1220px;*/ margin: auto; width:90%; table-layout: fixed;}
footer>div:nth-child(3)>ul>li{ display: table-cell; position: relative; }

footer>div:nth-child(3)>ul>li:before{ content: ""; background: #cccccc; display: block; position: absolute; top: 0; left:-10px; width: 1px; height: 100%;}

footer>div:nth-child(3)>ul>li:last-child:after{ content: ""; background: #cccccc; display: block; position: absolute; top: 0; right:-10px; width: 1px; height: 100%;}


footer>div:nth-child(3)>ul>li>a{ text-transform: uppercase; font-weight: 500;}

footer>div:nth-child(3) .children>li{ margin-top:4px;  }

footer>div:nth-child(3) .children>li:before{ content:"• "; }

footer .current_page_item>a{ color:#000000;}

footer .trame{ padding:30px; }

#logosfooter{ display: table; width: 100%; border-spacing:15px; }
#logosfooter>span{ display:table-cell; vertical-align: middle; }
#logosfooter>span>img{ display: block; margin: auto; max-width: 100%; height: auto;}



@media screen and (max-width:1024px) {
	footer .col:nth-child(2){ text-align: center;}
	footer .col:nth-child(2) span{ display: block; margin:15px 0;  white-space: normal;}
	footer .ico{ line-height: 1.4; }
	footer .ico:before{ display: block; margin:auto; }
}


/*=============================================================*/
/*===== GUTENBERG =============================================*/
/*=============================================================*/




/*=============================================================*/
/*===== CUSTOM FORM ===========================================*/
/*=============================================================*/
.wpcf7-form{ margin:0 auto; max-width:800px;  }
.wpcf7-form br{ display: none;}
.wpcf7-form p{ margin: 0;}
.wpcf7-form p>label{ margin:0 0 20px 0; font-family:var(--wp--preset--font-family--titre); font-weight: 700; }
.wpcf7-form p>label:not(.full){ width:calc(50% - 20px); vertical-align: top; display: inline-block;}
.wpcf7-form p>label:not(.full):nth-child(2n + 0){margin-left:40px; }
@media screen and (max-width:900px){
	.wpcf7-form p>label:not(.full){ width:100%; margin:0 !important; }

}
.wpcf7-form p>label.full{ display:block; width: 100%;}
.wpcf7-form-control-wrap{ display: block;position: relative; overflow: hidden; margin-top:4px; }
/* INPUT */
.wpcf7-form input[type=text],.wpcf7-form input[type=tel],.wpcf7-form input[type=email],.wpcf7-form textarea{ display: block; width: 100%; font-size:14px; background:none; border: 2px solid #cccccc; padding:13px;  }
.wpcf7-form input[type=text]:focus,.wpcf7-form input[type=tel]:focus,.wpcf7-form input[type=email]:focus,.wpcf7-form textarea:focus{ outline: none; background:#f5f5f5; }

/*.wpcf7-form input[type=text],.wpcf7-form input[type=tel],.wpcf7-form input[type=email]{ border-radius: 999px;}*/
.wpcf7-form textarea{ height: 130px;}
/* SELECT */
.wpcf7-form-control-wrap select{/*-webkit-appearance: none;-moz-appearance: none;appearance: none;overflow: hidden; */ font-size:14px;  background:none; border: 2px solid #cccccc; padding:13px; width:100%; height: auto;border-radius: 0;text-overflow: ellipsis;}

/* CAPTCHA */
.wpcf7-form .kc_captcha{ display: block; margin:0 0 20px 0;}
.wpcf7-form .kc_captcha>*:first-child{ text-align: center;display: block; background: #f5f5f5;  }
.wpcf7-form .captcha-image{padding:10px !important; background: none !important; text-align: left !important; border: none !important;}
.wpcf7-form .cf7ic_instructions{ display: inline-block !important; vertical-align: middle; margin-right: 15px;}
.wpcf7-form .captcha-image label{ vertical-align: middle; width:40px !important; height: 40px !important;}
.wpcf7-form .captcha-image svg{ width: 40px; height: 40px;}
.wpcf7-form .captcha-image svg>*{ fill:#8f8d8d; }
.wpcf7-form .captcha-image label > input{ position: absolute;}
.wpcf7-form .captcha-image label > input:checked + svg, .captcha-image label > input:focus + svg{ border-color:transparent !important; }
.wpcf7-form .captcha-image label > input:checked + svg>*, .captcha-image label > input:focus + svg>*{ fill:#e31f26; }
.wpcf7-form .captcha-image .cf7ic_instructions span{ color: #e31f26 !important; }
/* ERROR */
span.wpcf7-not-valid-tip{ position: absolute; right:0; top:0; width: 0;height: 0;border-style: solid;border-width: 0 12px 12px 0;border-color: transparent red transparent transparent;   display: block; text-indent: 200%; white-space: nowrap; overflow: hidden;  }
div.wpcf7-response-output{ border: none !important; margin:30px 0 !important; padding:0 !important;  font-weight: 700;  }
span.wpcf7-list-item{ margin: 0 !important;}
/* ACCEPTANCE */
.wpcf7-acceptance{ display: block; margin:0 0 20px 0;  padding:20px; border:2px solid #f5f5f5;}
.wpcf7-acceptance input[type="checkbox"]:not(:checked),.wpcf7-acceptance input[type="checkbox"]:checked{position: absolute; opacity: 0; pointer-events: none;}
.wpcf7-acceptance label{ cursor:pointer; }
.wpcf7-acceptance label>span{ font-size: 12px; text-align: left; position: relative; display: block; margin-left: 30px; width: calc(100% - 40px);}
.wpcf7-acceptance label>span:before{ border:1px solid #9da0a2;   position: absolute; content:"-"; display:block; left:-30px;  background:#ffffff; color: #ffffff; text-align: center; line-height:20px; font-size: 16px; width:20px;  }
.wpcf7-acceptance [type="checkbox"]:checked + span:before{content:"\2714"; color: #e31f26;  }
/* SUBMIT */
.wpcf7-form input[type=submit]{ display: block;  margin: auto; font-size:14px; cursor: pointer; background: none; border-radius: 0; background:red; border: none;  color:#ffffff; padding:10px 15px;  }
.wpcf7-form input[type=submit]:disabled{ opacity: 0.5; filter:grayscale(1); }
.wpcf7-form input[type=submit]:not(:disabled):hover{background:#e31f26; }


[data-class="wpcf7cf_group"]{ margin-bottom: 20px;}


@media screen and (max-width:900px){
	.wpcf7-form p>label:not(.full){ margin:0 0 20px 0 !important; }
}


.wpcf7 .ajax-loader{ margin:5px auto; }


