@charset utf-8;
/*
Theme Name: Rubicon
Author: Code by Ricardo Juárez	
Author URI: http://rjvv.com/
Version: 1.0
License: GNU/GPL Version 2 or later. http://www.gnu.org/licenses/gpl.html
Copyright: (c) 2024 Ricardo Juárez
*/

:root 	{


	--small: 16px;
	--linesmall: 24px;

	--button: 18px;
	--linebutton: 24px;

	--body: 18px;
	--linebody: 22px;
			
	--medium: 28px;
	--linemedium: 30px;
	--lsmedium: 0;
	
	--big: 40px;
	--linebig: 51.2px;
	
	--huge: 50px;
	--linehuge: 55px;
	
	
	

--app-height: 100vh;

	--primary:#FFFFFF;
	--contrast: #000000;
	--gris: rgba(0, 0, 0, 0.15);;

	--primaryrgb:255,255,255;
	--contrastrgb:0,0,0;
	
	--pads:20px;
	--pad:40px;
	--padb: 100px;

	--border: 2px solid;
	
	--sans: 'Aptos', Arial, sans-serif;
	--title: 'Loos Condensed', Arial, sans-serif;
	--buttonf: 'Loos Normal', Arial, sans-serif;

--primary:#FFF;
--contrast:#000;
--red:#E4002B;
--marine:#141B4D;
--blue:#95A9CA;
--lightblue: #DFE5EF;

--blue2: #B8BBCA;
--sidebar: 98px;

}


.small {
    font-size: var(--small);
    line-height: var(--linesmall);
    text-transform: uppercase;
    color: var(--marine);	 
    margin-bottom: 12px;
}

.button {
	cursor: pointer;
    font-size: var(--button);
    line-height: var(--linebutton);
    font-family: var(--buttonf);    
width: calc((100% / 12) * 3);
padding: 10px 10px 10px 64px;
border-bottom: 1.5px solid;
display: inline-block;
	color: var(--red);
	margin-bottom: 40px;
	position: relative;
}
footer a{
	    font-size: var(--button);
    line-height: var(--linebutton);
    font-family: var(--buttonf);    
text-transform: uppercase;
}

.button:before{
	content: '\2192';
	left: var(--pad);
	     font-family: var(--sans);
	position: absolute;
  transition: transform 0.3s ease;
}
footer h3{
	text-transform: uppercase;	
	margin-bottom: 10px !important;
}

.body {
    font-size: var(--body);
    line-height: var(--linebody);
}

.medium {
    font-size: var(--medium);
    font-weight: 600;
    line-height: var(--linemedium);
    }
.huge {
    font-size: var(--huge);
    line-height: var(--linehuge);
     font-weight: 600;
   font-family: var(--title);   
    color: var(--marine);	 
    margin-bottom: var(--pads);
}

.bgred .huge, .bgmarine .huge{
color: var(--primary);	
}

.bgred .button{
	color: var(--primary);
}

.bgred{
color: var(--primary);
background-color: var(--red);
}
.bgprimary{
background-color: var(--primary);
}
.bgmarine{
background-color: var(--marine);
color: var(--primary);
}
.bgblue{
background-color: var(--blue);
}
.bgblue2{
background-color: var(--blue2);
color: var(--marine);}

.job-opening .small{
color: var(--primary);}

.bgmarine .button{
	color: var(--blue);
}



.bgblue .button{
	color: var(--primary);
}

*{
	-webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
     -webkit-touch-callout: none;
    -webkit-tap-highlight-color: transparent;

}
html, body
{
	overscroll-behavior-block: none;
overscroll-behavior: none;
margin:0;
font-size:100%;
width:100%;
     }
     
     	html { margin-top: 0px !important; background-color: var(--primary);}
	* html body { margin-top: 0px !important; }
	@media screen and ( max-width: 782px ) {
		html { margin-top: 0px !important; }
		* html body { margin-top: 0px !important; }
	}
.fader {
}
body {
display: flex;
min-height: 100vh;
flex-direction: column;     
margin:0;
-moz-osx-font-smoothing: grayscale; 
text-rendering:geometricPrecision;
-webkit-font-smoothing: subpixel-antialiased;
font-size: var(--body);
line-height: var(--linebody);
font-weight: 300;
font-family: var(--sans);
color: var(--contrast);
background-color: var(--primary);
}
#main{
	padding-left: var(--sidebar);
	background-color: var(--primary);
	flex:1;
}


.justify{
	text-align: justify;
}


.hidden{
	opacity: 0;
}
.gradient{
	position: absolute;
	width: 100%;
	height: 240px;
background: linear-gradient(to bottom, rgba(20, 27, 77, 0.7), rgba(20, 27, 77, 0));
	top: 0;
	z-index: 1;
	mix-blend-mode: multiply;
}

header{
user-select: none;
-webkit-user-select: none;
-moz-user-select: none;
position: fixed;
top: 0;
height: 100vh;
width: var(--sidebar);
z-index: 999999999;
	background-color: var(--primary);
	border-right: var(--border);
	border-color: var(--red);
	display: flex;
	overflow: hidden;
	transition: all 0.6s ease;
}
.overflowhidden{
	overflow: hidden;
}

.logotxt{
	position: absolute;
  left: calc(75% + 40px);
  top: calc(((100vw - var(--sidebar)) / 2) - 98px);
}
header.is-active{
	width: calc(100vw + 2px);
}
svg{
	display: block;
}
.header{
height: 100vh;
width: var(--sidebar);
	align-items: center;
	display: flex;
flex-direction: column;
	justify-content: space-between;
	padding: var(--pads);
	
}
.banner-txt{
	position: relative;
	z-index: 2;
	width: 50%;
}
.banner-txt, .banner-txt .huge, .banner-txt .button{
		color: var(--primary) !important;
}
.cover_single{
	min-height: 600px;
	position: relative;
}
.cover_contact{
	position: relative;
}
.cover_single img, .cover_single video, .cover_img{
	object-fit:cover;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.offices{
	padding-top: 100px;
	display: grid;
	padding-left: var(--pad);
	grid-template-columns: 1fr 1fr 1fr 1fr;
	position: relative;
	z-index: 2;
}
.office-header img{
flex-basis: 60px;
width: 60px;
}
.office{
}
.office-header{
	text-transform: uppercase;
	font-family: var(--buttonf);
	font-weight: 300;
	align-items: center;
	gap:var(--pads);
	display: flex;
	padding: var(--pads) 0;
	border-bottom: 2px solid;
}

.menu-content .menu-main-container{
	padding: calc(100vw / 24);
}
.office-address{
	padding: var(--pads) var(--pads) var(--pads) 0;
}

.menu-content{
position: absolute;
  left: var(--sidebar);
  display: grid;
  grid-template-columns: 1fr 1fr;
  width: calc(100vw - var(--sidebar));
  height: 100vh;
}
.banner{
	overflow: hidden;
position: relative;
}
.banner a{
	width: 100%;
	height: 100%;
	position: absolute;
display: flex;
align-items: flex-end;
}
.banner:nth-of-type(even) a{
	justify-content: flex-end;
}
.banner img{
	position: absolute;
	top:0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
}
.banner .button{
	color: var(--primary);
	position: relative;
	z-index: 9;
	width: 50%;
}


.banners{
	height: 100vh;
    display: grid;
    grid-template-rows: repeat(auto-fill, 1fr);
    grid-auto-rows: 1fr;
    }
.fleet-header div, .vessel div{
	padding: var(--pads);
	flex: 1;
}
.sticky{
	position: sticky;
	top:0;
}
.stickynav{
	position: sticky;
	top:65.5px;
	z-index: 999;
}
.logo-container{
	background-color: var(--lightblue);}

.fleet-header, .vessel{
	display: flex;
	min-height: 125px;
	align-items: flex-end;
	justify-content: space-between;
}
.vessel:nth-of-type(even){
	background-color: rgba(255,255,255,0.3);
}
.vessel{
	color: var(--marine);
}
.fleet{
	background-color: var(--blue);
}
.why .padded{
	padding: 24px;
}
.why{
	display: grid;
	grid-template-columns: 1fr 1fr;
}
.why-title{
	display: flex;
}
.why h3{
	flex: 1;
}
.why-element:nth-child(2) .count,
.why-element:nth-child(3) .count,
.why-element:nth-child(6) .count,
.why-element:nth-child(7) .count{
	background-color: var(--blue) !important;
	}

.why .count{
	width: 78px;
	text-align: center;
}
.why .content.padded{
	max-width: 770px;
	padding: 24px 40px 24px 102px;
}

.banner-txt .button-group{
	margin-left: -40px;
}
.banner-full{
	padding: var(--pad) 0 var(--pad) var(--pads);
	gap:var(--pad);
	display: flex;
	align-items: flex-end;
}

.banner-full .medium{
	flex:1;
}
.banner-full .button-group{
	margin-top: 0;
	flex-basis: 25%;
}
.banner-full .button-group .button{
	color: var(--marine);
	width: 100%;
	}


.footerlogo{
	max-height: 70px;
	width: auto;
}


footer{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap:var(--pad);
	justify-content: space-between;
	background-color: var(--primary);
	padding: var(--pad) var(--pad) var(--pad) calc(var(--sidebar) + var(--pad));
	margin: 0;
	background-color: var(--marine);
	color: var(--blue);
}

.uppercase{
	text-transform: uppercase;
}

.wrap{
	flex-wrap: wrap;
}


.hero{
	height: var(--app-height);
    position: relative;
    overflow: hidden;
}
.hero-txt{
	width: 50%;
	position: relative;z-index: 1;
}
.banner-img{
	position: relative;
}

#history-and-founders{
background-color: var(--lightblue);
}
#history-and-founders .description{
	columns: 2;
	gap: var(--pad);
}
#history-and-founders .logo-container{
	border-top:none;
	justify-content: flex-start;
	padding: 0 var(--pad) var(--pad);
}

.icon-title{
	display: flex;
	align-items: center;
	padding: var(--pads) var(--pad) var(--pads) 0; 
}
.icon-title .icon-img{
	flex-basis: calc(100% / 6);
	display: flex;
	justify-content: center;
}
.icon-svg{
	max-height: 100px;
	width: auto;
}

.list-item:nth-of-type(even){
	background-color: var(--primary);

}
.list-item{
	padding: var(--pads) var(--pad) var(--pads) calc(100% / 6);
	display: flex;
	gap:var(--pad);
	background-color: var(--lightblue); 
}
.list-title{
	flex-basis: calc(100% / 3);
    text-transform: uppercase;
    color: var(--marine);	 
    font-family: var(--buttonf);
    font-size: 16px;
}
.list-desc{
	flex-basis: 50%;
}
.icon-title .huge{
	margin-bottom: 0;
	flex:1;
}
.grid-3{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.is-block{
	flex-basis: calc(100% / 3);
}
.is-title{
background-color: var(--marine);
color: var(--primary);
}
.is-block:nth-of-type(even) .is-title {
  background-color: var(--blue);
  color: var(--marine);
}

.is-title:first-letter {
  color: var(--blue);
}

.is-block:nth-of-type(even) .is-title:first-letter {
  color: var(--primary);
}


.full_width{
	position: relative;
	overflow: hidden;
	min-height: 400px;
}
.banner img, .banner-img img{
	object-fit:cover;
	height: 100%;
}
.full_width .banner-img{
	position: absolute;
	display: flex;
	width: 100%;
	height: 100%;
	align-items: center;
	}
.trans .small, .trans .button, .trans .huge, .trans{
		color: var(--primary) !important;

}

.full_width .banner-content{
	position: relative;
	z-index: 1;
	color: var(--primary) !important;
}

.masked-content {
    width: 75%;
    height: 100%;
    mask-image: url('data:image/svg+xml;utf8,<svg width="1008" height="1343" viewBox="0 0 1008 1343" xmlns="http://www.w3.org/2000/svg"><path d="M0 671.44H672.038L434.477 434.09C371.441 371.11 286.015 335.777 196.915 335.777H0V671.44Z" fill="%23000"/><path d="M909.6 237.35L672.038 0V671.44H1008V474.815C1008 385.794 972.636 300.33 909.6 237.465V237.35Z" fill="%23000"/><path d="M672.038 671.44V1342.88H1008V1146.25C1008 1057.23 972.636 971.77 909.6 908.905L672.038 671.555V671.44Z" fill="%23000"/></svg>');
    mask-size: cover;
    mask-position: top left;
    position: absolute;
    top:0;
    z-index: 0;
}
.cover_single .graphic-logo{
	width: 50%;
}


.graphic-logo{
    width: 100%;
    height: 100%;
    background-image: url('data:image/svg+xml;utf8,<svg width="1008" height="1343" viewBox="0 0 1008 1343" xmlns="http://www.w3.org/2000/svg"><path d="M0 671.44H672.038L434.477 434.09C371.441 371.11 286.015 335.777 196.915 335.777H0V671.44Z" fill="rgba(255, 255, 255, 0.3)"/><path d="M909.6 237.35L672.038 0V671.44H1008V474.815C1008 385.794 972.636 300.33 909.6 237.465V237.35Z" fill="rgba(255, 255, 255, 0.3)"/><path d="M672.038 671.44V1342.88H1008V1146.25C1008 1057.23 972.636 971.77 909.6 908.905L672.038 671.555V671.44Z" fill="rgba(255, 255, 255, 0.3)"/></svg>');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top left;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
}

.masked-content video,
.masked-content img {
    width: 100%;
    height: 100%;
    object-fit: cover; 
}


.padded{
	padding: var(--pad);
}

.relative{
	position: relative;
}
.fixed{
	position: fixed;
}

a.underline{
text-decoration: underline;	
}

.home-banner .button, .button-group .button{
	width: 50%;
}
.full_width .button{
	width: 25%;
}
.button-group{
	display: flex;
	margin-top: var(--pad);
	flex-direction: column;
}
.button-group .button{
	margin-bottom: 0;
}



.txt-img:nth-of-type(even){
flex-direction: row-reverse;
}
/*
.txt-img:last-of-type{
	border-bottom: none;
}
*/

.team-block{
	margin-top: -2px;
	border-top: 2px solid var(--marine);	
}
.team-row{
	border-bottom: 2px solid var(--marine);
	padding: var(--pads);
}
.member-title{
	flex: 1;
	border-bottom: 2px solid;
	background-color: var(--lightblue);
}
.member-position{
	font-size: 13px;
	text-transform: uppercase;
}

.member-title, .member-bio{
	padding: 12px;
	font-size: 15px;
	line-height: 18px;	
}
.block-text *:last-child{
	margin-bottom: 0 !important;
}
.members{
	flex-wrap: wrap;
	display: flex;
	border-bottom: 2px solid;
	margin-bottom: -4px;
}
#key-partners{
	border-top: 2px solid;
	background-color: var(--primary);
}
.member{
	display: flex;
	flex-direction: column;
	border-right: 2px solid;
	border-bottom: 2px solid;
	flex-basis: calc(100% / 6);
	position:relative;
}
.member-bio{
position:absolute;
z-index: 99;
width: 100%;
aspect-ratio:3/4;
bottom:0;
overflow: auto;
background-color: var(--primary);
display: none;
}

#staff .member{
	flex-basis: calc(100% / 8);
}

.member-protrait{
	aspect-ratio: 3/4;
	background-color: var(--lightblue);
}
.member-protrait img{
	object-fit:cover;
	height: 100%;
	object-position: top center;
}

.logo-container{
	display: flex;
	border-top:2px solid;
	justify-content: center;
	gap:var(--pad);
	flex-wrap: wrap;
	padding: var(--pad);
}
.logo-partner{
	margin: var(--pads) 0;
	display: flex;
  align-items: center;
  justify-content: center;

}
.logo-partner img{
	max-height: 100px;
	max-width: 250px;
width: auto;	
mix-blend-mode: multiply;
}
.txt-img, .home-banner.columned{
	display: flex;
	background-color: var(--marine);
	justify-content: space-between;
/* 	border-bottom: 2px solid; */
}
.quote{
	width: calc(100% - var(--pad));
	padding: var(--pad) 0 var(--pad) var(--pad);
	border-bottom: 2px solid;
	position: relative;
	z-index: 1;
	margin-bottom: 40px !important;
	position: sticky;
	top:65.5px;
}
.block-img{
	position: relative;
}
.block-img img{
	mix-blend-mode: multiply;
	position: absolute;
	height: 100%;
	object-fit:cover;
	top:0;
filter: saturate(0);
}
.block-img.bgblue .huge{
	color: var(--primary) !important;
}

.columned.lefted{
  flex-direction: row-reverse;
}
.cover_single.righted{
	display: flex;
	justify-content: flex-end;
	align-items: flex-end;
}
.cover_single.righted .banner-txt{
position: absolute;
}
.flex50{
	flex-basis: 50%;
	position: relative;
}
#onepagenav li{
	flex: 1;
	text-align: center;
	padding: var(--pads) 0;
	position: relative;
	}
#onepagenav li:after{
display: block;
content:'';
position: absolute;
bottom:0;
left: 0;
width: 0;
height: 2px;
transition: width 0.3s ease;
background: var(--marine);
}
#onepagenav li.current:after{
width: 100%;
}
#onepagenav:has(li.current) li:before {
  width: 100%;
}

#onepagenav{
	display: flex;
	justify-content: space-between;
	border-bottom: 2px solid;
	color: var(--marine);
	margin-bottom: 0 !important;
	position: sticky;
	top:0;
	background-color: var(--primary);
	z-index: 9999;
}


/* TEXTS */
.post-content .wp-video, .post-content iframe, .post-content img{}

.post-content h2, .post-content h3, .post-content h4{
		margin-bottom: var(--linebody);

}

.portfolio-content .post-content ul, .portfolio-content .post-content ol{
	padding-left: calc(var(--padm) * 2);
}

.post-content ul, .post-content ol{
	padding-left: var(--padb);
	margin-top: var(--padm);
}
.post-content li{
	list-style: disc;
}
.post-content ul, .post-content ol, .post-content p{
	margin-bottom: var(--linebody);
}
.post-content *:first-child{
	margin-top: 0;
	}
.post-content *:last-child{
	margin-bottom: 0;
}

.single-portfolio .video-section .videoload, .single-portfolio .video-section{
	width: 100%;
	max-height: 100%;
}



.mobile-menu{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
/* hamburger btn */
.navbar-toggler {
   width: 56px;
   height: 40px;
 position: relative; /* -=TS*=-  */
  display: flex;
  background: transparent;
  cursor: pointer;
  outline: unset;
  border: unset;
  z-index: 5;
}
/* -= btn lines =- */
.navbar-toggler .line {
  display: block;
  width: 56px;
  height: 2px;
  background-color: var(--marine);
  transition: all 0.2s linear;
}
.navbar-toggler.is-active .line:nth-child(2) {
  width: 0 !important;
}

#navbar-toggler3.is-active .line:nth-child(1) {
  transform: translateY(19px) rotate(34deg)
}
#navbar-toggler3.is-active .line:nth-child(3) {
  transform: translateY(-19px) rotate(-34deg)
}

video{
height: 100%;
width: 100%;
object-fit:cover;
}
.cover-img{
	width: 100%;
	height: 100%;
	object-fit:cover;
}
.no-click {
	pointer-events: none;
}
.clickable {
	pointer-events: all;
}

	.header-single{
		padding: 80px 60px;
	}
	.page-cont{
		padding: 0px 60px 80px;
		
	}
	.formcont h2{
		padding: 60px 60px 0;
	}
	
/* MENU */

[id^="menu-main"] li a{
	font-family: var(--title);
	display: block;
	font-size: 50px;
	line-height: 55px;
	padding: 20px 0 20px 40px;
	color: var(--blue);
	border-bottom: var(--border);
}
[id^="menu-main"] li.current-menu-item a, [id^="menu-main"] li a:active, [id^="menu-main"] li a:focus{
	color: var(--marine);
		border-color: var(--red);

}



[id^="menu-legal"], [id^="menu-social"]{
	display: flex;
}
[id^="menu-social"] li a{
	margin-right: 15px;
}

[id^="menu-legal"] li a{
	margin-right: 15px;
}
.icon-menu, .icon-close{
	display: inline-block;
	    font-size: 24px;
	    cursor: pointer;
}
.inverter{
	    mix-blend-mode: difference;
	    color:var(--primary);
position: fixed;
z-index: 99999999
	
}

.mobile-menu.icon-close{
	color: var(--contrast);
}

.icon-close{
	    mix-blend-mode: difference;
	    color:var(--primary);
position: fixed;
z-index: 99999;
top:var(--padm);
right:var(--padb);	
	}

.menu-hover{
	overflow: hidden;
transition: all 0.6s ease;
pointer-events: none;
	position: fixed;
	width: 100%;
	height: 0;
	top: 0;
	background-color: var(--primary);
z-index: 999}
.menu-int{
		    height: var(--app-height);
padding: 20px 10px;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
}
.menu-int [id^="menu-main"]{
	text-align: center;
	text-transform: uppercase;
}

.menu-int [id^="menu-main"] a{
margin-bottom: 5px;
display: inline-block;
}
.menu-int [id^="menu-legal"]{
	display: block;
}
.menu-int [id^="menu-legal"] a{
	margin-top: 10px;
	display: inline-block;
}
.menu-hover.appear{
	    height: var(--app-height);
pointer-events: all;}



/* INPUTS */

.custom-file-upload {
    position: relative;
    display: inline-block;
}

.input-file {
    opacity: 0;
    position: absolute;
    z-index: -1;
}

.wpcf7-form .custom-file-upload p{
	text-align: left;
    position: relative;
    display: flex;
    align-items: center;
    gap: 10px;
         margin: 0px 60px var(--pads);

}

.input-file {
    opacity: 0;
    position: absolute;
    z-index: -1;
}
.custom-file-upload .wpcf7-form-control-wrap{
	display: none;
	
}
.custom-file-upload{
	width: 100%;
}
.custom-browse-button {
	color: var(--marine) !important;
		cursor: pointer;
    font-size: var(--button);
    line-height: var(--linebutton);
    font-family: var(--buttonf);    
padding: 10px 10px 10px 64px;
border-bottom: 1.5px solid;
display: inline-block;
	position: relative;
	border-top:none;
	border-left: none;
	border-right:none;
	background: transparent;
	 -webkit-appearance: none;
     -moz-appearance: none;
     appearance: none;
     outline: none;
     text-align: left;
     width: 50%;
     margin-bottom: 0 !important;
}



.file-name {
	color: var(--marine);
    font-size: 14px;
}

input[type="checkbox"]
{
     -webkit-appearance: none;
     -moz-appearance: none;
     appearance: none;
     display: inline-block;
     position: relative;
     height: 0px;
     border-radius: 0;
     width: 0px;
     cursor: pointer;     
     outline: none;
     border: none;
     margin: 0;
}

input[type="checkbox"]:checked + label{
	color: #444444;
}
input[type="checkbox"]:hover
{
     background-color: var(--contrast);
}
input[type="checkbox"]:checked
{
background-color: var(--contrast);
}

input[type="submit"], button.button{
	color: var(--marine) !important;
		cursor: pointer;
    font-size: var(--button);
    line-height: var(--linebutton);
    font-family: var(--buttonf);    
width: calc((100% / 12) * 3);
padding: 10px 10px 10px 64px;
border-bottom: 1.5px solid;
display: inline-block;
	margin-bottom: 40px;
	position: relative;
	border-top:none;
	border-left: none;
	border-right:none;
	background: transparent;
	 -webkit-appearance: none;
     -moz-appearance: none;
     appearance: none;
     display: inline-block;
     outline: none;
     text-align: left;
     width: 50%;
     margin-left: auto;
     margin-top: 40px;
}


input[type="text"],
input[type="tel"], 
input[type="email"], 
input[type="password"],
select,
textarea{
	flex: 1;
	  font-size: var(--body);
	padding: 10px 0px 5px;
	 -webkit-appearance: none;
     -moz-appearance: none;
     appearance: none;
     display: inline-block;
     position: relative;
     background-color: transparent;
     font-family: var(--sans);
     color: var(--marine);
     border: none;
     border-bottom: 1.5px solid var(--marine);
     border-radius: 0px;
     outline: none;
     width: calc(100% - 120px);
     margin: 0px 60px var(--pads);
}

input[type="text"]:focus,
input[type="tel"]:focus, 
input[type="email"]:focus,
input[type="password"]:focus,
select:focus,
textarea:focus{
} 


input[type="date"],
input[type="file"] {
    flex: 1;
    font-size: var(--body);
    padding: 10px 0px 5px;
    -webkit-appearance: none; /* Remove default styling */
    -moz-appearance: none; /* Remove default styling */
    appearance: none; /* Remove default styling */
    display: inline-block;
    position: relative;
    background-color: transparent;
    font-family: var(--sans);
    color: var(--marine);
    border: none;
    border-bottom: 1.5px solid var(--marine);
    border-radius: 0px;
    outline: none;
    width: calc(100% - 120px);
    margin: 0px 60px var(--pads);
    text-align: left; /* Align text for consistency */
    cursor: pointer; /* Add pointer cursor for file input */
}

input[type="date"]::-webkit-calendar-picker-indicator {
    opacity: 0; /* Hide the default calendar icon */
    cursor: pointer; /* Add pointer cursor */
}

input[type="file"]::-webkit-file-upload-button {
    display: none; /* Hide the default file button */
}




.wpcf7-form .label-form{
width: 100% !important;
  text-align: left;
  display: block;
	margin: 0 60px 0 !important;
font-size: 14px;
text-transform: uppercase;
color: var(--marine);  }

.job-opening{
	padding: var(--pad) 0 var(--pad) var(--pad);
	aspect-ratio:1;
}
.job-openings{
		display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
}
.job-opening .button{
	margin-left: calc(100% / 3);
	margin-top: 60px;
	width: calc(100% / 3 * 2) !important;
}
.wpcf7-form{
	padding: 70px 0;

}

.wpcf7-form p{
	text-align: right;
}

textarea{
	  resize: none;
}

.wpcf7-not-valid{
	border-color:var(--primary) !important;
}
.wpcf7-not-valid-tip{
	margin-top: -16px;
	text-align: left;
	color: var(--primary);
	font-size: 15px;
	text-transform: uppercase;
	margin-left: 60px;
}
.wpcf7-response-output{
	text-align: left;
	background-color: var(--blue2);
	font-size: 15px;
	text-transform: uppercase;
	margin: 0 60px 0 !important;
	border:none !important;
	color: var(--marine);
}


      ::-webkit-input-placeholder { /* Chrome, Safari, Opera */
  color: var(--marine) !important;
  opacity: 1 !important;
}
::-moz-placeholder { /* Firefox 19+ */
  color: var(--marine) !important;
  opacity: 1 !important;
}
:-moz-placeholder { /* Firefox 18- */
  color: var(--marine) !important;
  opacity: 1 !important;
}
:-ms-input-placeholder { /* IE 10+ */
  color: var(--marine) !important;
}

div[pseudo="placeholder"] {
  color: var(--marine) !important;
opacity: 1 !important;}

.flex{
	display: flex;	
}
@media all and (-ms-high-contrast:none){}