/*
Theme Name: SiteOrigin Corp Child
Author: SiteOrigin
Author URI: https://siteorigin.com/
Theme URI: https://siteorigin.com/theme/corp
Description: SiteOrigin Corp Child Theme
Version: 1.0.0
Template: siteorigin-corp
Text Domain: siteorigin-corp
Domain Path: /languages/
*/

/* =Theme customization starts here
-------------------------------------------------------------- */

h2, h3, h4 {
	font-weight:700 !important;
}

h2 {
	font-size:45px !important;
	line-height:50px !important;
	margin-top:0 !important;
}

.brands h2, .hub h2 {
	margin-bottom:80px !important;
}

html {
    overflow-x: hidden;
	scroll-behavior: smooth;
}

body {
    font-size: 18px !important;
    line-height: 22px !important;
    max-width: 100vw;
    overflow: hidden;
}

.corp-container {   
    max-width: 1300px !important;
}

.importante {
	display: flex;
    min-height: 300px;
    align-items: end;
}

#content {
	margin-top: -125px;
}

/*header*/
.site-header {
	background:transparent !important;
	border: none !important;
}
.site-header .site-branding img {
	max-width: 215px;
}

.main-navigation ul li {
	font-size: 18px !important;	
	text-transform: capitalize !important;
	top: -5px;
}

.main-navigation ul li a {
	font-weight: 500 !important;
}

.main-navigation ul li a:hover {
	color:#222 !important;
}

.contact-menu {
	border: 2px solid #f32735;
    padding: 10px 30px !important;
    border-radius: 10px;
	transition: .3s;
	display: flex !important;
	align-items: center;
}

.contact-menu:after, .contenedor-form .wpcf7-submit:after {	
	width:10px;
	height:20px;
    font-family: 'sow-typicons';
    display: inline-block;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: '';
	font-size: 26px;
    line-height: 18px;
	margin-left: 15px;
	transition: .3s;
}

.contact-menu:hover {
	background: white;
}

.contact-menu:hover:after {
	color:#222;
}

/*Hero*/

.hero h1 {
	font-size: 65px;
    line-height: 60px;
	font-weight:900;
}

.hero h1 b {	
	font-weight:400 !important;
}

.hero .sowb-button {
	padding: 15px 40px !important;
}

.hero .sowb-button .sow-icon-typicons {
	line-height: 0.9 !important;
}

.hero .sowb-button:hover .sow-icon-typicons {
	color: #222 !important;
}

.tag {
	letter-spacing:10px;
    font-size: 23px;
    text-transform: uppercase;
	text-align: center;
}

/*Equipo*/

.somos-e {
		text-align: center;
	}

.equipo .siteorigin-widget-tinymce {
	display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;	
	text-align:center;
}

.equipo h3 {
	font-weight:500 !important;
	margin-top:30px;
}

.body-subtitle {
	font-size: 28px;
	line-height:30px;
}

.cards-wrapper {
    width: 100%;
    margin: 0 auto;
}

/* GRID DESKTOP */
.cards-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;	
}

.cards-grid::-webkit-scrollbar {
    display: none; /* Chrome, Safari, Edge */
}

.card-item {
    background-size: cover;
    background-position: center bottom;
    border-radius: 15px;
	border: 3px solid #2A2A2A;
    padding: 25px 30px;
    display: flex;
    align-items: flex-end;
    color: #fff;
    position: relative;
	height: 520px;
	overflow:hidden;	
}

.card-item:after {
	content:'';
	position:absolute;
	width:100%;
	height:100%;
	background:#222222;
	opacity:.65;
	z-index:1;
	left:0;
	top:0;
	transition: opacity .5s ease-in-out;
}

.card-item:hover:after {
	opacity:0;
}

.card-info {
	z-index:2
}

.card-info h3 {
	font-size: 23px;  
    line-height: 26px;
	text-transform: uppercase;
}

/*Services*/

.service-item {
	text-align:center;
	border-radius: 15px;
	border: 3px solid white;
    padding: 25px 30px;
    display: flex;
    align-items: flex-end;
    color: #fff;
    position: relative;
}

.service-item h3 {
	margin-bottom:30px !important;
}

.subt {
	font-weight:600;
}

/*Hub*/

.hub:after {
	position:absolute;
	content:'';
	top:0;
	left:0;
	width:100%;
	height:100%;
	background: #F32735;
	background: linear-gradient(180deg, rgba(243, 39, 53, 1) 0%, rgba(141, 23, 31, 1) 100%);
	z-index:-2;
}

/*Brands*/

.brands, .hub {
	position:relative;
}

.brands {
	background-position: center bottom !important;
}

.brands:after {
	position:absolute;
	content:'';
	top:0;
	left:0;
	width:100%;
	height:100%;
	background: #222222;
	background: linear-gradient(180deg, rgba(34, 34, 34, 1) 10%, rgba(34, 34, 34, 0) 100%);
}

.brands .panel-grid-cell {
	z-index:2;
}

.marquee-wrap {
	width:100%;
	overflow:hidden;
	position:relative;
}
.marquee-track { 
	display:flex; 
	align-items:center; 
	will-change: transform; 
}

.brand-group { 
	display:flex; 
	align-items:center; }

.brand-item { 
	flex: 0 0 auto;
	width: 220px;
	height: 90px;
	background:#2A2A2A;
	border-radius:7px;
	display:flex;
	align-items:center;
	justify-content:center;
	margin-right: 24px; 
}

.brand-item img {
	opacity: .5;
    transition: all ease 0.3s;
    width: auto !important;
    max-height: 70px !important;
    max-width: 80% !important;
    height: auto !important;
}

.brand-item img:hover {
	opacity:1;
}


/*Pre-footer*/

.pre-footer {
	position: relative;
}

.pre-footer:after {
	position:absolute;
	content:'';
	width:100%;
	height:30%;
	background: #222222;
	background: linear-gradient(180deg, rgba(34, 34, 34, 1) 0%, rgba(68, 34, 37, 1) 100%);
	left:0;
	bottom:-15%;
	z-index:-2;
}

.pre-footer h3 {
	font-size:40px;
	line-height:43px;
	text-transform:uppercase;
}

.contenedor-form input[type=text], .contenedor-form input[type=email]{
	background-color: #2a2a2a !important;
    color: #fff !important;
    border-radius: 7px !important;
	border: none;
	width: 100%;
    margin-bottom: 15px;
}

.contenedor-form input[type=submit] {
	border-radius:5px;
	border: 2px solid #F32735;
	background: transparent;
	font-size:18px;
	text-transform: none !important;
}

.contenedor-form input[type=submit]:hover {
	background: white;
	color:#222;
}

/*Footer*/

.site-footer .widget .widget-title~* {
	font-size: 18px !important;
}

footer h2 {
	font-size:30px !important;
}

.site-info span:last-child, .site-info span:after {
    display: none !important;
}

.site-footer .info a {
	display: flex;
    align-items: center;
    gap: 15px;
}

.bottom-bar {
	display: none !important;
}


/* GRID DESKTOP / TABLET */
@media (max-width: 1024px) {
    .cards-grid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 25px;
    }
}

@media (max-width: 1440px) {
	.hero {
		padding: 240px 100px 200px 100px !important;
	}
}


@media (max-width: 767px) {
	
	#mobile-navigation ul li a {
		font-size:18px;
		color:white !important;
		font-weight:700 !important;
	}
	
	.hero {
		padding: 200px 15px 160px 15px !important;
	}
	
	.hero h1 {
    	font-size: 45px;
    	line-height: 40px;
	}
	
	h2 {
    	font-size: 35px !important;
		line-height: 40px !important;
	}
	
	.tag {
    	letter-spacing: 5px;
    	font-size: 18px;
    	text-transform: uppercase;
		text-align:left;
	}	
	
	.somos-e {
		text-align:left;	
	}

	
	.body-subtitle {
    	font-size: 25px;
    	line-height: 28px;
	}
	
    .cards-grid {
        display: flex;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
        gap: 25px;
        padding-bottom: 10px;

        scrollbar-width: none; /* Firefox */
    }
    .cards-grid::-webkit-scrollbar {
        display: none; /* Chrome, Safari, Edge */
    }

    .card-item {
        flex: 0 0 90%;
        scroll-snap-align: center;
        position: relative;
		height: 300px;
		align-items: center;
    }
	
	.service-item {
		flex: 0 0 90%;
        scroll-snap-align: center;
        position: relative;
	}
	
	.service-item .card-info p {
		text-align:left !important;
	}
    
}