/*
Theme Name: Notafred
Theme URI: https://www.notafred.com
Author: Frederic Ansermoz - Notafred
Version: 1.0
*/


figure.wp-caption.alignleft, img.alignleft {margin: 7px 24px 7px 0;}

.wp-caption.alignleft {margin: 7px 14px 7px 0;}

figure.wp-caption.alignright, img.alignright {margin: 7px 0 7px 24px;}

.wp-caption.alignright {margin: 7px 0 7px 14px;}

img.aligncenter, .wp-caption.aligncenter {margin-top: 7px;margin-bottom: 7px;}

.wp-caption {margin-bottom: 24px;}

.wp-caption img[class*="wp-image-"] {display: block;margin: 0;}


.wp-caption, img {
	max-width: 100%;
}

/* Custom */

	.make-it-aligned {align-items: center;display: inline-flex;justify-content: space-around;}
	.make-it-aligned img { max-width: 30%; }
	.mia-50 {align-items: start;display: inline-flex;justify-content: start;}
		.mia-50 img { max-width: 50%; }
	.opa0 {opacity:0 !important;}
	.mw-30 {max-width:27%;}

	.push-it-down {
		justify-content: space-between;
		flex-direction: column;
		display: flex;
	}

/* Header */

	.header-mobile {
		padding: 0;
		background: none transparent;
		position: absolute;
	    top: 0;
	    width: 100%;
	    z-index: 100;
	    left: 0;
	    right: 0;
	    height:65px !important;
	}
	html.fixed .header-menu {
		overflow: hidden;
	}
	
	#hamburger {
		display:block;
		width:42px;
		overflow:hidden;
		float:right;
	}
	
	#hamburger span {
		background:#fff;
		display:block;
		height:2px;
		margin:9px 0;
		position:relative;
		-webkit-transform:rotate(0);
		-ms-transform:rotate(0);
		transform:rotate(0);
		top:0;
		left:0;
		opacity:1;
		filter:alpha(opacity=100);
		-webkit-transition:none .5s ease;
		transition:none .5s ease;
		-webkit-transition-property:-webkit-transform,top,left,opacity;
		transition-property:transform,top,left,opacity;
	}

	html.mm-wrapper--opened #hamburger span.top-bar {
		-webkit-transform:rotate(45deg);
		-ms-transform:rotate(45deg);
		transform:rotate(45deg);
		top:12px;
	}
	
	html.mm-wrapper--opened #hamburger span.middle-bar {
		opacity:0;
		filter:alpha(opacity=0);
	}
	
	html.mm-wrapper--opened #hamburger span.bottom-bar {
		-webkit-transform:rotate(-45deg);
		-ms-transform:rotate(-45deg);
		transform:rotate(-45deg);
		top:-10px;
	}
	
	html.mm-wrapper--opened #hamburger span.middle-bar { left:-40px; }
	
	.no-page-header {height: 100px;}

	.wrapper > header {
		position: fixed;
		left: 0;
		right: 0;
		bottom: auto;
		height: 100px;
		z-index: 100000000000;
		top: 0;
		transition: opacity 1.4s ease;
		background: none transparent;
	}
	html.mm-wrapper--opened.no-page-header .wrapper > header {position:relative;}
	
	nav#menu-mobile:not(.mm-menu--opened) {
	    opacity: 0;
	    z-index: -1;
	}

		header .navbar-nav {
			float: right;
		}
		.nav-top, 
		.nav-bottom {
			width: 100%;
		}
		.header-menu {
		    position: relative;
    		z-index: 200;
    	}
		.header-menu .navbar-nav,
		.header-menu .navbar-nav li {
			display: inline-block;
		}
		.header-menu .navbar-nav li {
			margin: 0 16px;
		}
		.header-menu .navbar-nav li:first-child {
			margin-left: 0;
		}
		.header-menu .navbar-nav li:last-child {
			margin-right: 0;
		}
			.navbar-nav li a {
				color: #fff !important;
				font-size: 15px;
				font-weight: 600;
				line-height: 32px;
				text-decoration:none !important;
				padding-top: 0;
				padding-bottom: 0;
				text-transform: uppercase;
				opacity: .65;
				font-family: "Montserrat",sans-serif;;
			}
			.navbar-nav li a i {color: #fff !important;}
			.nav-top .navbar-nav li a {
				font-size: 15px;
				line-height: 29px;
				opacity: .5;
				font-family: "Montserrat",sans-serif;;
    			font-weight: 600;
			}
			.navbar-nav li a:hover {opacity:.8;}
			.navbar-nav li a.active{opacity:1;}
			body.home:not(.darker) .navbar-nav li a {
				color: #fff;
			}
			.navbar-nav li a.active {
				text-decoration: underline;
			}
	html.fixed header {
		height: 60px !important;
	}
	html.fixed header a#logo-link img {
		width: 200px;
	}
	html.fixed .header-menu {
		position: fixed;
		background-image: none;
		top:0;
		z-index:10000;
		height: 60px !important;
		left: 0;
	    right: 0;
	    width: 100%;
	    bottom: auto;
	}
	
	html.fixed .nav-top {
		display: none !important;
	}
	html.fixed .nav-bottom ul {margin-top: 7px;}
	
	
	.modal-open :where(.mm-slideout) {z-index: 1051;}
	.wrapper {position: relative;z-index: 2;}
	.modal-open :where(.mm-slideout) > .wrapper {z-index: 1052;}
	.modal-header {padding: 4px 16px;}
	div#cookiesPrefModal {z-index: 101010;}
	.btn-cookiespref,
	.btn-cookiespref:hover {
		background-color: #000;
	    color: #fff;
	    letter-spacing: .25px;
	    border-radius: 3px;
	    text-decoration: none;
	    padding: 8.5px 10px;
	    line-height: 1;
	    font-weight: 400;
	    font-size: 13px;
	    text-align: center;
	    display: inline-block;
	    white-space: nowrap;
	    border: none;
	    position: relative;
   		top: -1px;
	}
	
	a#logo-link {
		padding-left:0;
	}
	
	.header-mask {
	position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;
	background-color:#404040;
	background: -webkit-linear-gradient(180deg, rgba(64, 64, 64, 1) 0%,  rgba(64, 64, 64, .4) 80%, rgba(255, 255, 255, 0) 100%);
	background: -moz-linear-gradient(180deg, rgba(64, 64, 64, 1) 0%,  rgba(64, 64, 64, .4) 80%, rgba(255, 255, 255, 0) 100%);
	background: linear-gradient(180deg, rgba(64, 64, 64, 1) 0%,  rgba(64, 64, 64, .4) 80%, rgba(255, 255, 255, 0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#404040", endColorstr="#FFFFFF", GradientType=0);
	z-index:0;opacity:0.45;
	}


    
    .mmenu-section-li span.mm-listitem__text {
	    padding: 5px 0px;
	    text-align: center;
	    background-color: #404040;
	    color: #fff;
	    margin: 0 0 0 20px;
	    font-size: .8em;
	}
    

  
  nav#menu-mobile .mm-navbars .mm-navbar,
  .mm-panel {background-color: #404040; color:#fff;}
  
  .mm-panels,
  .mm-panel {border:none;}
  li.mm-listitem {border-color:#fff;color:#fff;}
  .mm-listitem__text {
    padding-top: 10px;
    padding-bottom: 10px;
}
  
    /* Forms */

	.wpcf7 {color: #626262;}
    body.page-template-page-contact-tpl .section_formulaire .wpcf7 {color: #000;} 
		.wpcf7-form-control-wrap {
			width: 100%;
			display: block;
		}
            .wpcf7-form label,
			.wpcf7-form-control-wrap input, 
            .wpcf7-form-control-wrap textarea {
				width: 100%;
				outline:none;
			}
			.wpcf7-form-control-wrap textarea {
				min-height:32px;
				height:120px;
				max-height:200px;
			}
			.wpcf7 label {}
			.wpcf7-form-control-wrap input:focus, .wpcf7-form-control-wrap textarea:focus {
				box-shadow: 1px 0px 10px #9E2A2B;
			}
			.wpcf7-spinner {
				display: none;
			}
			.wpcf7-form-control.wpcf7-submit {
				padding:2px 35px;
				color: #000;
			    background-color: #fefefe;
			    border: 1px solid #000;
			}
			.wpcf7-form-control.wpcf7-submit:hover {
				cursor:pointer;
				color: #fefefe;
			    background-color: #000;
			}

/* Footer */

    footer {}
    footer a {}

		 
/* Scroll Sidebar */

	.scroll-sidebar {
		background-color:#333;
		color: #fff;
		right:-56px;
		width:56px;
		top: 40%;
		position: fixed;
		left: auto;
		bottom: auto;
		z-index: 10000000;
		-webkit-transition: all .5s ease;
		transition: all .5s ease;
		text-align: center;
	}
	html.fixed .scroll-sidebar {
		right:15px;
	}
		.scroll-sidebar ul {
			list-style:none;
			margin:0;
			padding: 0;
		}
			.scroll-sidebar ul li {
				margin: 10px 0;
			}
				.scroll-sidebar ul li a,
				.scroll-sidebar ul li span {
					color: #fff;
					font-size: 30px;
					text-decoration: none !important;
				}
					.scroll-sidebar ul li a i,
					.scroll-sidebar ul li span i {
						position: relative;
					}
	
	.cv-file {position:relative;}
	.cv-file::after, .cv-en::after, .cv-fr::after {font-size: 12px;line-height: 12px;position:absolute;font-weight: 400;font-family: 'Nunito Sans', sans-serif;}
	.cv-file::after {color: #333;}
	.cv-en::after, .cv-fr::after {
		padding: 2px 0 0 4px;
	    right: -7px;
	    bottom: -3px;
	    background-color: #333;
	    border-radius: 5px;
	    letter-spacing: 1px;
	}
	.cv-file::after {content:"cv";left: 2px;bottom:18px;}
	.cv-en::after {content:"EN";}
	.cv-fr::after {content:"FR";}
	
	footer .cv-file::after, footer .cv-en::after, footer .cv-fr::after {font-size: 9px;line-height: 9px;}
	footer .cv-file::after {left: 1px;bottom: 8px;}

/* Back To Top Button */
	
	#backtotopBtn {
	    display: none;
	    position: fixed;
	    bottom: 32px;
	    right: 15px;
	    z-index: 99999;
	    border: none;
	    outline: none;
	    color: #fff;
	    background-color: rgba(0,0,0,.5);
	    cursor: pointer;
	    height: 56px;
		width: 56px;
	}
	.mm-wrapper--opened #backtotopBtn {display:none !important;}
	
	#backtotopBtn:hover { background-color: rgba(0,0,0,.8); }



/* Responsive */
	
	/* Max Width */
	
		@media (max-width: 1199.98px) {
			body {font-size: 17px;}
			.h2, h2 {font-size: calc(0.925rem + .9vw);}
			.header-slide .slide-extra {width: 500px;}
		}
		
		@media (max-width: 991.98px) {
            .header-slide .slide-extra {width: 400px;}
			header {height: 65px !important;}
            /*html .col-logo {padding-top: 9px !important;}
            a#logo-link {padding-top: 4px;}*/
		}
		
		@media (max-width: 767.98px) {
		  .header-slide .slide-extra {width: 325px;}
		  html.fixed .header-menu,
		  html.fixed header { height: 45px !important; }
		}
		
		@media (max-width: 575.98px) { 
            .header-slide .slide-extra {width: 270px;opacity:1;}
			#backtotopBtn {height: 46px;width: 46px;}
			.scroll-sidebar {right:-46px;width:46px;}
			.scroll-sidebar ul li a, .scroll-sidebar ul li span {font-size: 24px;}
            a#logo-link {padding-top: 0px;}
            .scroll-sidebar {display:none;}
            .btn-cookiespref {display: inline-block;width: 40%;margin-top: 10px;}
		}
	
	/* Min Width */

		@media (min-width: 576px) { 
			
		}
		
		@media (min-width: 768px) {
		
		}
		
		@media (min-width: 992px) { 
			
		}
		
		@media (min-width: 1200px) { 
			.container {width:94%;max-width:1180px;}
		}
		
		@media (min-width: 1300px) { 
			.container {width:96%;max-width:1220px;}
		}
		
		@media (min-width: 1440px) { 
			.container {width:98%;max-width:1460px;}
            .container.container_larger {max-width:1460px;}
		}
        
		@media (min-width: 1980px) { 
            body {font-size:20px;}
			.container {width:98%;max-width:1460px;}
            .container.container_larger {max-width:1460px;}
			.video-foreground iframe {scale: 1.055};
		}
