/* 
 Theme Name:     ABF
 Author:         AB Fermetures
 Author URI:     https://www.ab-fermetures.fr
 Template:       Extra
 Version:        3.0
 Description:    Site web AB Fermetures Le Havre
*/ 

/* ----------- PUT YOUR CUSTOM CSS BELOW THIS LINE -- DO NOT EDIT ABOVE THIS LINE --------------------------- */ 


/* ############################# */
/* ####### DEFAULT FONTS ####### */
/* ############################# */


/* ##### CUSTOM FONTS ##### */

/* ### H1 TITLE SUBPAGE ### */
.h1subpage h1{
    color:#fff;
    font-size: calc(3.5em + 1.5vw) !important;
    font-family: Roboto Slab;
    font-weight:700;
    text-transform:uppercase;
    text-align: center;
    text-shadow: 0.03em 0.03em 0.05em rgb(0 0 0 / 40%);
    line-height:1.2em;
}

/* ### H2 LEFT TITLE ### */
.fluid-title h2{
    color: var(--color-2);
    font-family:"Roboto Slab";
    font-size: calc(3.0em + 0.5vw) !important;
    font-weight:500!important;
    line-height:1.1em	
}

/* ### H2 LEFT TITLE ### */
.fluid-title-bold h2{
    color: var(--color-2);
    font-family:"Roboto Slab";
    font-size: calc(3.0em + 0.5vw) !important;
    font-weight:700!important;
    line-height:1.1em	
}

/* ### P CENTER SUBTITLE ### */
.fluid-subtitle p{
    color: var(--color-1);           
    font-size: calc(2.5em + 0.5vw) !important;
    font-weight:300!important;
    line-height:1.1em	;
}

/* ### P LEFT SUBTITLE BOLD ### */
.fluid-subtitle-bold p{
    color: var(--color-1);  
    font-size:calc(1.3em + 0.5vw) !important;
    font-weight:700!important;
    line-height:1.1em	;
    text-transform: uppercase;
}



/* ############################# */
/* ####### ORIGINAL CODE ####### */
/* ############################# */

/* ###  HIDE IN VISUAL BUILDER ### */

.et-fb .custom_top_bar,
.et-fb .custom_menu,
.et-fb .custom_footer {
    display: none !important;
}

.et-fb .cta_fixed_section {
    display:none!important;
}

.et-fb .triangle_section,
.et-fb .triangle_row,
.et-fb .triangle_module,
.et-fb .promotion_triangle,
.et-fb .contact_triangle {
    display:none!important;
}

/* ###  GENERAL ### */

#page-container {
    padding-top: 0px !important;
}

#page-container {
    overflow-x: hidden!important;
}

/* ##### TRIANGLE LEFT ##### */

.triangle_row .triangle_left {
   background-image: linear-gradient(45deg,#c60505 46%,rgba(41,196,169,0) 0%);
}
/* ##### TRIANGLE LEFT ##### */

.triangle_row .triangle_left {
    height: 200px !important;
    width: 200px !important;
}

/* ##### TRIANGLE RIGHT ##### */

.triangle_row .triangle_right {
    background-image: linear-gradient(225deg,#01254c 46%,rgba(41,196,169,0) 0%);
}

/* ##### TRIANGLE RIGHT ##### */

.triangle_row .triangle_right {
    height: 200px !important;
    width: 200px !important;
}


/* ##### TRIANGLE LEFT AND RIGHT MAP ##### */

.triangle_contact .triangle_left {
	background-image: linear-gradient(45deg,#c60505 46%,rgba(41,196,169,0) 0%);
}

.triangle_contact .triangle_right {
	background-image: linear-gradient(225deg,#c60505 46%,rgba(41,196,169,0) 0%);
}

/* ##### TRIANGLE LEFT AND RIGHT MAP ##### */

.triangle_contact .triangle_left {
    height: 200px !important;
    width: 200px !important;
}

.triangle_contact .triangle_right {
    height: 200px !important;
    width: 200px !important;
}

/* ##### PROMOTION TRIANGLE ##### */ 

.et_pb_text.promotion_triangle {
    text-align: center!important;
    z-index: 0;
    position: relative;
    display: flex!important;
    justify-content: center!important;
    align-items: flex-end!important;
    position: absolute;
    right: -107px!important;
    top: -29px!important;
    height: 120px!important;
    width: 300px!important;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(40deg);
    padding-bottom: 15px!important;
}

.promotion_triangle .discount_text {
    font-size: 14px !important;
    margin-bottom: -5px!important;
    display: inline-block!important;
}

@media only screen and (max-width: 479px) {
.et_pb_text.promotion_triangle {
    right: -70px !important;
    top: -14px !important;
    height: 80px !important;
    width: 200px !important;
    font-size: 22px !important;
    padding-bottom: 5px !important;
}

.promotion_triangle .discount_text {
	font-size: 11px !important;
	margin-bottom: -10px!important;
	display: inline-block!important;
}}

@media only screen and (min-width: 981px) and (max-width: 1500px) {
.et_pb_text.promotion_triangle {
    right: -70px !important;
    top: -14px !important;
    height: 80px !important;
    width: 200px !important;
    font-size: 22px !important;
    padding-bottom: 5px !important;
}

.promotion_triangle .discount_text {
	font-size: 11px !important;
	margin-bottom: -10px!important;
	display: inline-block!important;
}}

/* Promotion triangle */
.et_pb_text.promotion_triangle {
    padding: 0px!important;
}
/* Promotion discount texte */
.discount_text {
   position: absolute!important;
   margin-top: 18px!important;
   left: 0!important;
   right: 0!important;
}

/* ##### CONTACT FORM TRIANGLE ##### */ 
.blurb_contact{
    margin-bottom:0!important
}

.et_pb_text.contact_triangle {
    text-align: center;
    z-index: 0;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    position: absolute;
    padding-bottom: 5px;
    right: -132px;
    top: -48px;
    height: 120px;
    width: 300px!important;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(40deg);
}

.contact_triangle .service_text {	
    margin-bottom: -5px;
    margin-left:-2px;
    display: block;
    text-transform:uppercase;
    font-weight:700!important;
}

.contact_banner_title {
    display: block;
    margin-bottom: -7px!important;
    font-size:28px;
    font-weight:700!important;
}

.blurb_contact .et_pb_blurb_container {
    padding-left: 5px !important;
    padding:22px;
}

.blurb_contact.et_pb_blurb_position_left .et_pb_blurb_content {
    margin-left: 4px;
}

.blurb_contact.blurb_contact.et_pb_blurb .et_pb_main_blurb_image {
    width: 92px !important;
    height:auto;
    vertical-align:middle;
}

.blurb_contact h2.et_pb_module_header {
    display: flex!important;
    align-items: center;
    width: 70%;
    font-family: "Roboto Slab"!important;
    font-weight: 700!important;
    margin-left:-8px;
}

.blurb_contact.et_pb_blurb .et_pb_module_header {
    min-height:72px!important;
}

/* ##### CTA RIGHT FIXED ##### */

.cta_fixed_section {
	position:fixed!important;
	top: 40%!important;
	right:0px!important;
	z-index:9999999 !important;
	transition: 0.5s ease-out;
	transform: translateX(285px);
}

.cta_fixed_section:hover {
    transform: translateX(0px);
}

/* ########################### */
/* # HEADER # */
/* ########################### */

/* ###  TOP HEADER ### */

.custom_logo {
    padding: 10px;
    display: flex;
    justify-content: center;
    align-items: center;
}

@media only screen and (min-width: 981px) and (max-width: 1650px) {
.phone_header {
    width: 27.875% !important;	
}

.custom_top_bar .et_pb_column {
    margin-right: 2.5% !important; 
}}

@media only screen and (min-width: 1101px) and (max-width: 1600px) {
.custom_top_bar .et_pb_blurb .et_pb_module_header {
    padding-top: 20px !important;
}}

@media only screen and (min-width: 981px) and (max-width: 1100px) {
.custom_logo {
	padding: 10px;
	display: flex;
  	justify-content: center;
  	align-items: center;
}

.custom_top_bar .et_pb_blurb .et_pb_module_header {
    padding-top: 10px !important;
}}

/* ### CTA IN MENU ### */

.cta_menu a {
    background-color: #c60505!important;
    color: #fff !important;
    padding:12px 32px!important;
    top:-12px;
    font-size:24px!important;
    border-radius:2px;
    text-align:center;
}
@media only screen and (max-width: 1024px) {
.cta_menu a {
    margin:42px 0;
}}

/* ########################### */
/* # HOME # */
/* ########################### */

/* ##### HOME PAGE ##### */

/* ###  CONTACT BUTTON HOME PAGE ### */

.contact_home .et_contact_bottom_container {
	
}

.contact_home .et_pb_contact_submit {
	
}

.contact_home .et_pb_contact_submit {

}

/* ##### BLOG HOME PAGE ##### */

.blog_home .more-link {
    padding: 2px 15px 2px 15px;
    font-size: 13px;
    margin-top: 15px;
    display: inline-block;
}

/* ### PROJECT HOME IMAGE ### */

.home_services .et_pb_column_1_4 {
	border:2px solid #fff !important;
}

@media only screen and (min-width: 981px) {
.home_project_1,
.home_project_2,
.home_project_3,
.home_project_4 {
	border-left: 2px solid #fff!important;
	border-right: 2px solid #fff!important;
	border-top: 4px solid #fff!important;
	border-bottom: 4px solid #fff!important;
}

.home_project_1,
.home_project_2 {
	border-bottom: 2px solid #fff!important;
}

.home_project_2,
.home_project_4 {
	border-right: 4px solid #fff!important;
}}

@media only screen and (max-width: 980px) {
.home_project_1,
.home_project_2,
.home_project_3,
.home_project_4 {
	border-bottom: 4px solid #fff!important;
}}

/* ##### PROJECTS HOMEPAGE ##### */

@media only screen and (max-width: 479px) {
.project_row .button_project {
	position: absolute!important;
	left: 35px!important;
	bottom: 23px!important;
}}

@media only screen and (min-width: 480px) {
.project_row .button_project {
	position: absolute!important;
	right: 35px!important;
	bottom: 38px!important;
}
	.project_row .et_pb_text {
	padding-bottom: 32px !important;
	padding-top: 42px !important;	
	padding-right: 35px !important;
}}

@media only screen and (min-width: 981px) and (max-width: 1400px) {
.project_row .button_project {
	position: absolute;
	left: 0px!important;
	right: unset!important;
	bottom: 23px!important;
}

.project_row .et_pb_text {
	padding-bottom: 60px !important;
	padding-right: 35px !important;
}}


.project_row .et_pb_column:before  {
    content: "";
    display: block!important;
    position: absolute!important;
    top: 0!important;
    bottom: 0!important;
    left: 0!important;
    right: 0!important;
    -webkit-transition: all .2s ease-in-out !important;
    -moz-transition: all .2s ease-in-out !important;
    transition: all .2s ease-in-out !important;
} 

.project_row .et_pb_column:hover:before  {
    background-color: rgba(0,0,0,0)!important;
    -webkit-transition: all .2s ease-in-out !important;
    -moz-transition: all .2s ease-in-out !important;
    transition: all .2s ease-in-out !important;
} 

/* ##### CONTACT SECTION HOME PAGE ##### */

@media only screen and (min-width: 981px) and (max-width: 1500px) {
.contact_home_column_1 {
    padding-left: 50px !important;
}}


/* ##### Home Map ##### */

@media only screen and (min-width: 981px) {
.home_map, 
.home_map .et_pb_map {
    height: 100% !important;
}}


