/**
 * Theme Name: Blocksy Child
 * Description: Blocksy Child theme
 * Author: Creative Themes
 * Template: blocksy
 * Text Domain: blocksy
 */

:root{
	--rose : #D8127E;
	--violet : #683477;
	--turquoise : #305A68;
	--blue : #00A3DA;
	--jaune : #F3B22A;
	--vert : #009645;
	--gris : #CEDADD;
	--gris-fonce: #90AAB3;
	--rouge : #912B55;
	--dark : #204B5A;
	
}

/*** CARRÉS BLEUS - en bas à gauche ***/
/* colCarreLeft => Desktop : Colonnes en bas à gauche | Mobile : img en bas a gauche */
/* carreLeft => Img en bas a gauche */
/* carreDarkTop => ligne en haut a gauche */

.carreLeft, .colCarreLeft, .carreDarkTop{
	position:relative!important;
}
.carreLeft>div, .brz .colCarreLeft>.brz-bg,  .brz .carreDarkTop>.brz-bg{
	z-index:1!important;
}
.colCarreLeft> .brz-column__items, .carreDarkTop> .brz-column__items {
	z-index:2!important;
}

.carreLeft:after, .colCarreLeft:after{
	content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    transform: translate(-30px, 35px);
    width: 185px;
    height: 100px;
    background: var(--blue);
    z-index: 0;
}
.carreDarkTop:after{
	content:"";
	position:absolute;
	left:0;
	top:0;
	transform:translate(-30px, -35px);
	width: 75%;
	height:120px;
	background:var(--dark);
	z-index:0;
	max-height: 100%;
}

@media screen and (max-width:999px){
	.carreLeft:after, .colCarreLeft:after{
		transform:translate(-20px, 25px);
		width: 170px;
		height:100px;
	}
	.carreDarkTop:after{
		transform:translate(-20px, -25px);
		width: 70%;
	}
	.noCarreMobile.colCarreLeft:after{
		display:none;
	}
}
@media screen and (max-width:767px){
	.carreLeft:after, .colCarreLeft:after{
		transform:translate(-10px, 10px);
		width: 120px;
		height:80px;
	}
	.noCarreMobile.colCarreLeft:after{
		display:none;
	}
	.carreDarkTop:after{
		transform: translate(10px, -10px);
        left: unset;
        right: 0;
	}
}

/* FONTS SIZES */

.h1 {
  font-size: 46px;
	line-height: normal;
}

.h2 {
  font-size: 38px;
	line-height: normal;
}

.h3 {
  font-size: 32px;
	line-height: normal;
}

.h4 {
  font-size: 28px;
	line-height: normal;
}

.h5 {
  font-size: 24px;
	line-height: normal;
}

.h6 {
  font-size: 18px;
	line-height: normal;
}

.p {
  font-size: 18px;
	line-height: normal;
}

.button {
  font-size: 18px;
}

.btn {
    background: var(--blue);
    padding: 12px 24px;
    border-radius: 30px;
    font-weight: 900;
	color:black;
	transition:0.3s ease-in-out;
	font-size: 18px; 
	line-height:normal;
}
.btn:hover {
    color:white;
}


@media (max-width: 1000px) {
  .h1 {
    font-size: 38px;
  }

  .h2 {
    font-size: 34px;
  }

  .h3 {
    font-size: 30px;
  }

  .h4 {
    font-size: 26px;
  }

  .h5 {
    font-size: 22px;
  }

  .h6 {
    font-size: 17px;
  }

  .p {
    font-size: 17px;
  }

  .button, .btn {
    font-size: 17px;
  }
}

@media (max-width: 768px) {
  .h1 {
    font-size: 36px;
  }

  .h2 {
    font-size: 30px;
  }

  .h3 {
    font-size: 24px;
  }

  .h4 {
    font-size: 22px;
  }

  .h5 {
    font-size: 20px;
  }

  .h6 {
    font-size: 16px;
  }

  .p {
    font-size: 16px;
  }

  .button,.btn {
    font-size: 16px;
  }
}

p:empty {
	display:none;
}

/* WIDTH */

.row {
  width: 100% !important;
  max-width: 1400px !important;
  margin: auto !important;
  padding-left: 60px;
  padding-right: 60px;
}

@media screen and (max-width: 1000px) {
  .row {
    padding-left: 40px;
    padding-right: 40px;
  }
}

@media screen and (max-width: 767px) {
  .row {
    padding-left: 20px;
    padding-right: 20px;
  }
}

/**** Banner HEADER ****/

.contact-header{
	padding: 15px 0 15px;
	background:white;
}
.contact-header-wrap{
	display:flex;
	justify-content: end;
	gap:15px;
}
.contact-box{
	display:flex;
	gap:15px;
	background: white; /*var(--gris)*/
	padding: 8Px ;
	border : 1px solid black;
	width: fit-content;
}
.contact-box-img{
	width: 120px;
}
.contact-box-img img {
    height: 100%;
    object-fit: cover;
}
.contact-box-txt{
	max-width: calc(50% - 0px);
	width: fit-content;
}
.contact-box-txt {
    display: flex;
    flex-direction: column;
    gap: 15px;
	align-self: center;
    align-items: start;
}
.contact-box-txt .h5{
	font-weight:700;
	font-size: 16px;
}
.contact-box-txt .btn{
	color:white!important;
    padding: 8px 16px;
    font-size: 14px;
	width: max-content;
}
.contact-box-txt .btn:hover{
	color:black!important;
}

@media screen and (max-width:1100px){
	.contact-header-wrap.row {
		padding-left: 40px;
		padding-right: 40px;
	}
	
}
@media screen and (max-width:992px){
	.contact-header-wrap{
		justify-content:center;
	}
	.contact-box{
	  padding: 10px;
	}
	.contact-box-img {
		display: none;
	}
	.contact-box br{
		display:none;
	}
	.contact-box-txt{
		max-width:unset;
		width:100%;
		align-items: center;
		text-align:center;
	}
}
@media screen and (max-width:767px){
	.contact-header-wrap.row{
		padding-left: 20px;
        padding-right: 20px;
	}
}
@media screen and (max-width:650px){
	.contact-header-wrap {
		flex-wrap: wrap;
		gap: 10px;
	}
	.contact-box{
		width:fit-content;
	}
	.contact-box-txt .h5 {
		font-size: 15px;
	}
}
@media screen and (max-width:450px){
	.contact-box{
		width:100%;
	}
	.contact-box-txt{
		gap:12px;
	}
}

/**** HEADER ****/
#header .ct-sticky-container [data-sticky] {
	position: relative!important;
}
#header .ct-sticky-container [data-sticky="yes:shrink"] {
    position: fixed!important;
}

#header [data-row*=middle] .ct-container {
    max-width: 1400px !important;
    padding-left: 60px;
    padding-right: 60px;
}
.ct-menu-link {
    line-height: normal !important;
}
[class*=animated-submenu]>.sub-menu{
	width: max-content!important;
}

@media screen and (max-width: 1000px) {
	#header [data-row*=middle] .ct-container {
		padding-left: 40px;
		padding-right: 40px;
	}
}
@media screen and (max-width: 767px) {
	#header [data-row*=middle] .ct-container {
		padding-left: 20px;
		padding-right: 20px;
	}
}

/* Header burger en Desktop */
#header .ct-sticky-container [data-sticky]{
	position: fixed;
    z-index: 5;
    top: calc(var(--admin-bar, 0px) + var(--theme-frame-size, 0px) + var(--header-sticky-offset, 0px));
    left: var(--theme-frame-size, 0px);
    right: calc(var(--theme-frame-size, 0px) + var(--scrollbar-width, 0px));
}

@media screen and (min-width:1000px) and (max-width:1300px){
	#header [data-device=desktop]{
		display:none!important;
	}
	#offcanvas [data-device=desktop] {
		display: none;
		height: 0;
	}
	#header [data-device=mobile]{
		display:block!important;
		min-height: 70px;
	}
	[data-header*="type-1"] #offcanvas .ct-panel-inner {
        background-color: white;
		box-shadow:0px 6px 16px 0px rgba(0, 0, 0, 0.16)!important;
		width: 50vw;
        max-width: 50vw;
    }
	#offcanvas [data-device=mobile]{
		display:flex!important;
		height:100%!important;
		flex-direction:row!important;
	}
	#offcanvas .ct-panel-content-inner {
		align-self: center;
        width: 100%;
        height: 100%;
        display: flex;
        flex-direction: column!important;
        align-items: start;
        justify-content: center;
		flex-wrap: nowrap!important;
	}
	button.ct-header-trigger.ct-toggle svg.ct-icon {
		width: 30px;
	}
	[data-header*="type-1"] #offcanvas .ct-toggle-close, [data-header*="type-1"] [data-id="trigger"] {
        --theme-icon-size: 25px!important;
    }
	[data-header*="type-1"] #offcanvas .ct-toggle-close svg{
		fill:black;
	}
	#menu-menu-principal-1 >li > .ct-menu-link, #menu-menu-principal-1 >li > span > .ct-menu-link {
		padding: 10px 0!important;
	}
	ul.sub-menu a.ct-menu-link {
		padding: 2px;
	}
	#header [data-device='mobile'] [data-sticky]{
		transition:0.3s ease-in-out;
	}
	#header [data-device='mobile'] [data-sticky].scrolled{
		background:white!important;
	}
}

/* Menu CPT */
.menu-custom a[href="#"] {
    display: none;
}

/*** FOOTER ***/
[data-footer*="type-1"] .ct-footer [data-row*="middle"] > .ct-container{
	max-width:1400px!important;
	padding-left:60px;
	padding-right:60px;
}

div#block-8 img.wp-image-1217 {
    max-width: 200px;
}

.menu-footer-wrap {
    display: flex;
	justify-content:space-between;
    gap: 30px;
    margin-bottom: 0!important;
}
.menu-footer-wrap *, .menu-footer-wrap a:hover{
	color:white;
}
.menu-footer-titre {
    font-weight: bold;
    margin-bottom: 15px;
    display: flex;
}

.footer-last-wrap {
    display: flex;
    flex-direction: column;
    gap: 30px;
    margin-bottom: 0!important;
}
.footer-last-wrap *, .footer-last-wrap a:hover{
	color:white;
}

#gform_fields_2 {
    column-gap: 0 !important;
	width: 100%;
    display: flex !important;
	justify-content: space-between;
	background: white;
    border-radius: 30px;
}
div#field_2_1 input {
    border: 0px;
}
#gform_fields_2 .gfield--width-half {
	grid-column: unset;
	display: flex;
	width: fit-content!important;
}
form#gform_2 {
    display: flex;
}
input#gform_submit_button_2 {
    min-width: 90px;
	font-weight:bold;
	background: var(--dark);
}

.liens-wrap {
    display: flex;
    flex-wrap: wrap;
	align-items:center;
    gap: 20px;
}
.lien-footer svg {
    height: 30px;
    fill: white;
}
.lien-alsace img {
    height: 40px;
    object-fit: contain;
}
.lien-btp img {
    height: 50px;
    object-fit: contain;
}

#block-19>p {
    display: none;
}


@media screen and (min-width:1000px){
	[data-footer*="type-1"] .ct-footer [data-row*="middle"] > div{
		--grid-template-columns: 1fr 3fr 1fr!important;
	}
}
@media screen and (min-width:1000px) and (max-width:1300px){
	[data-footer*="type-1"] .ct-footer [data-row*="middle"] > div {
        --grid-template-columns: 1fr 3fr !important;
    }
	.ct-footer [data-column="widget-area-3"] {
		 grid-column: 1 / -1 !important;
	}
	.footer-last-wrap {
		flex-direction: row;
		gap: 60px;
	}
	.liens-wrap {
		align-items: end;
	}
}
@media screen and (max-width:1000px){
	[data-footer*="type-1"] .ct-footer [data-row*="middle"] > .ct-container{
		padding-left:40px;
		padding-right:40px;
	}	
	.footer-last-wrap {
		flex-direction: row;
		gap: 20px 40px;
		flex-wrap:wrap;
	}
	.liens-wrap {
		align-items: end;
	}
}
@media screen and (max-width:767px){
	[data-footer*="type-1"] .ct-footer [data-row*="middle"] > .ct-container{
		padding-left:20px;
		padding-right:20px;
	}	
	.menu-footer-wrap {
		display: grid;
		grid-template-columns: 1fr 1fr;
	}
	#block-16 {
		margin-top: 10px;
	}
}
@media screen and (max-width:450px){
	.menu-footer-wrap {
		grid-template-columns: 1fr;
	}
}

/*** ENVOI DE FICHIERS ***/
.gform_drop_area, .gform-theme--foundation .gform_drop_area{
	padding:20px!important;
}
.gform-theme--framework .gfield:where(.gfield--type-fileupload, .gfield--input-type-fileupload) .gform_drop_area::before{
	color:var(--blue)!important;
}
.gform_button_select_files, #gform_3 input[type="submit"]{
	background:var(--blue)!important;
}
#gform_3 .gform-field-label{
	color:black!important;
}
#gform_3 input[type="submit"]{
	font-weight: 900;
}


/*** ARCHIVES OFFRES EMPLOI ***/
.banner--division{
	background:url(/wp-content/uploads/2025/04/AdobeStock_512081235-scaled.jpeg);
	background-size:cover;
	background-position:50% 65%;
	background-repeat:no-repeat;
	position:relative;
	min-height:350px;
	display:flex;
	justify-content:center;
	align-items:center;
}
.banner--division .container{
	display:flex;
	justify-content:center;
	align-items:center;
	z-index:2;
}
.banner--division:after{
	content:"";
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	background:rgba(255, 255, 255, 0.5);
	z-index:0;
}
.banner--division *{
	text-align:center;
}
.banner--division *, .section--recrutements * {
    line-height: normal;
}
.section--recrutements .container{
	display:flex;
	justify-content:space-between;
	align-items:start;
	gap:50px;
	padding-top: 60px;
	padding-bottom: 60px;
}
.offres-liste, .form-candidature{
	width:calc(50% - 25px);
}
.offres {
    display: flex;
    flex-direction: column;
    gap: 40px;
}
.offre__titre a{
	color:black!important;
}
.form-candidature{
    padding: 40px;
	background:var(--turquoise);
}
.form-candidature h2, .form-candidature .gform_fileupload_rules, .form-candidature #gform_3 .gform-field-label{
	color:white!important;
}
.offre__actions .btn {
	color:white;
}
.offre__actions .btn:hover {
    color:black;
}

@media screen and (max-width:992px){
	.section--recrutements .container{
		flex-direction:column;
	}
	.offres-liste, .form-candidature{
		width:100%;
	}
	.form-candidature {
		padding: 30px;
	}
}
@media screen and (max-width:767px){
	.form-candidature {
		padding: 20px;
	}
}



/*** COMPLIANZ ***/
body.cmplz-document main{
	margin: 70px auto;
}

body.cmplz-document main h1{
	font-size:70px!important;
}
body.cmplz-document main p{
	font-size:16px!important;
}
@media screen and (max-width:992px){
	body.cmplz-document main{
		margin: 60px auto;
	}
	body.cmplz-document main h1{
		font-size:52px!important;
	}
}
@media screen and (max-width:767px){
	body.cmplz-document main{
		margin: 50px auto;
		padding:20px;
	}
	body.cmplz-document main h1{
		font-size:45px!important;
	}
}
