/*
Theme Name: All in port
Theme URI: dev-site.ar/allinport
Version: 1.0
Author: @marugarcia
Author URI: maru.garciam@gmail.com

*/

/***/
.btn-edit-page{
    position: fixed;
    bottom: 20px;
    left: 20px;
    z-index: 99999;
    
    background: #000;
    color: #fff;
    padding: 10px 14px;
    border-radius: 50px;
    
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
    
    display: flex;
    align-items: center;
    gap: 6px;

    box-shadow: 0 5px 20px rgba(0,0,0,.2);
    transition: .2s;
}

.btn-edit-page:hover{
    transform: translateY(-2px);
    background: #333;
     color: #fff;
}

:root,
[data-bs-theme=light]{

	/* Defaults */
	--header-min-height: 65px;	

	/* Colors */
	--bs-heading-color: inherit; /* H1, H2 colors */

    --bs-body-color: #084554;
    --bs-body-bg: #fff;

    --bs-primary:  #084554;
	--bs-primary-rgb: 8,69,84; 
	--bs-secondary-text-emphasis:  #810030;

    --bs-secondary: #E97F29; 
	--bs-secondary-rgb: 233,127,41; 

	--bs-highlight-bg:  #E97F29; 
	--bs-highlight-color: #fff;

	--bs-green: #1DAA61;
    --bs-white: #fff;

    --bs-light: #F4F1E9;
    --bs-light-rgb: 244,241,233;


    --bs-dark: #023541;
    --bs-dark-rgb: 0,44,92;


    --bs-black: #000;

	--bs-gray: #cacaca; 

	/* Links */
    --bs-link-color: #0d6efd;
    --bs-link-color-rgb: 13,110,253;
    --bs-link-decoration: underline;
    --bs-link-hover-color: #0a58ca;
    --bs-link-hover-color-rgb: 10,88,202;
}



@media screen and (min-width:1200px){
	:root,
	[data-bs-theme=light]{
		--header-min-height: 72px;
		--header-fixed-min-height: 72px;
	}
}

html{
	scroll-behavior: smooth;
}

body {
	font-size: 16px;
	font-weight: 500;
	font-family: "Quicksand", sans-serif;
	font-smoothing: antialiased;
	-webkit-font-smoothing: antialiased;
	letter-spacing: -3%;
}

body:has(.header.fixed){
	padding-top: var(--header-min-height);
}

mark{
	padding: 0 0.2em;
	font-weight: 700;
}

/*.wow {
	visibility: hidden;
}*/

.overh {
	overflow: hidden;
}

*:focus {
	outline: none !important;
}

a,
a:hover,
a:focus {
	color: inherit;
	text-decoration: none;
	transition: 0.3s all;
}

h1, h2, h3, h4, h5, h6 {
	font-weight: 600;
	line-height: 1.2em;
	/*letter-spacing: -0.03em;*/
}

h1 { font-size: 30px; }
h2 { font-size: 28px; }
h3 { font-size: 24px; }
h4 { font-size: 20px; }
h5 { font-size: 18px; }
h6 { font-size: 16px; }

@media screen and (min-width: 992px) {

	h1 { font-size: 34px; }
	h2 { font-size: 30px; }
	h3 { font-size: 32px; }
	h4 { font-size: 22px; }
	h5 { font-size: 20px; }
	h6 { font-size: 18px; }
}

b, strong {
    font-weight: 600;
}

.fw-500{
	font-weight: 500;
}
.fw-600{
	font-weight: 600;
}

.text-shadow {
	text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
}

/* Framework */

.main {
	width: 100%;
	min-height: 80vh;
	background: #fff;
	/*overflow: hidden;*/
}

.container{
	width: 100%;
	max-width: 100%;
}
@media screen and (min-width: 992px) {
	.container{
		max-width: 1440px !important;
		padding: 0 70px;
	}
}

/* Extras */

.grecaptcha-badge{
	opacity:0;
}

/* Columns */

@media screen and (min-width: 992px){
	.col-lg-5-2{
		-ms-flex: 0 0 20%;
	    flex: 0 0 20%;
	    max-width: 20%;
	}
}

/* Keyframes */

@keyframes bounce {
	0% {
		transform: translate(-50%, 0);
		-webkit-transform: translate(-50%, 0);
		-moz-transform: translate(-50%, 0);
	}
	50% {
		transform: translate(-50%, -10%);
		-webkit-transform: translate(-50%, -10%);
		-moz-transform: translateY(-50%, -10%);
	}
	100% {
		transform: translate(-50%, 0);
		-webkit-transform: translate(-50%, 0);
		-moz-transform: translate(-50%, 0);
	}          
}

/* Colors */

.bg-green{
	background-color: var(--bs-green);
}

/* Components > buttons */

.btn{
	min-width: 150px;
	--bs-btn-padding-x: 30px;
	--bs-btn-padding-y: 10px;
	--bs-btn-font-weight: 500;
	border-radius: 100px;
}
.btn i{
	vertical-align: -1px;
	font-size: 18px;
	margin-right: 6px;
}

@media screen and (max-width: 576px){
	.btn-block-mobile{
		width: 100%;
	}
}

.btn-primary{
    --bs-btn-bg: var(--bs-primary);
    --bs-btn-color: var(--bs-light);
    --bs-btn-border-color: var(--bs-primary);

    --bs-btn-hover-bg: var(--bs-secondary);
    --bs-btn-hover-color: var(--bs-light);
    --bs-btn-hover-border-color: var(--bs-secondary);

    --bs-btn-active-bg: var(--bs-secondary);
    --bs-btn-active-color: var(--bs-light);
    --bs-btn-active-border-color: var(--bs-secondary);
}
.btn-outline-primary{
    --bs-btn-bg: transparent;
    --bs-btn-color: var(--bs-primary);
    --bs-btn-border-color: var(--bs-primary);

    --bs-btn-hover-bg: var(--bs-primary);
    --bs-btn-hover-color: var(--bs-light);
    --bs-btn-hover-border-color: var(--bs-primary);

    --bs-btn-active-bg: var(--bs-primary);
    --bs-btn-active-color: var(--bs-light);
    --bs-btn-active-border-color: var(--bs-primary);
}

.btn-secondary{
    --bs-btn-bg: var(--bs-secondary);
    --bs-btn-color: var(--bs-light);
    --bs-btn-border-color: var(--bs-secondary);

    --bs-btn-hover-bg: var(--bs-green);
    --bs-btn-hover-color: var(--bs-light);
    --bs-btn-hover-border-color: var(--bs-green);

    --bs-btn-active-bg: var(--bs-green);
    --bs-btn-active-color: var(--bs-light);
    --bs-btn-active-border-color: var(--bs-green);
}

.btn-green{
    --bs-btn-bg: var(--bs-green);
    --bs-btn-color: var(--bs-light);
    --bs-btn-border-color: var(--bs-green);

    --bs-btn-hover-bg: var(--bs-secondary);
    --bs-btn-hover-color: var(--bs-light);
    --bs-btn-hover-border-color: var(--bs-secondary);

    --bs-btn-active-bg: var(--bs-secondary);
    --bs-btn-active-color: var(--bs-light);
    --bs-btn-active-border-color: var(--bs-secondary);
}

/***/
.card {
	padding: 60px 24px;
	background: #FFF;
	box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.05);
	border-radius: 24px;
	border: none;
	color: inherit;
	height: 100%;
}

.brands .card {
	justify-content: center;
}


/* Header */

.header {
	position: relative;
	top: 0;
	left: 0;
	width: 100%;
	min-height: var(--header-min-height);
	background: transparent;
	transition: 0.3s all;
	z-index: 999;
	align-content: center;
}
.header .container{
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.header .logo{
	display: inline-block;
	max-width: 149px;
	margin: 8px 0;
}

.header.fixed .logo, .header.active .logo{
	opacity: 1;
}

.header.fixed{
	position: fixed;
	background: #fff;
	box-shadow: 0 2px 5px 0 rgba(0,0,0,0.1);
	z-index: 9998;
    -webkit-animation: slideInDown 0.3s ease-out;
    -moz-animation: slideInDown 0.3s ease-out;
    border-bottom: none;
}

.header.active{
	background: #fff;
}

/* Header > Navigation */

.header .nav-menu {
	position: relative;
	float: right;
	width: 35px;
	padding: 10px 0;
	cursor: pointer;
	z-index: 21;
	overflow: hidden;
}
.header .nav-menu .menu-line {
	float: right;
    display: block;
    width: 100%;
    height: 3px;
    margin: 3px 0;
    background: var(--bs-primary);
    transition: 0.3s;
    border-radius: 0;
}
.header .nav-menu.active .menu-line:nth-child(1) { transform: rotate(45deg); width: 40px; margin-top: 14px; }
.header .nav-menu.active .menu-line:nth-child(3) { transform: rotate(-45deg); width: 40px; margin-top: -16px; }
.header .nav-menu.active .menu-line:nth-child(2) { opacity: 0; }

.header .navigation {
	display: none;
	position: absolute;
	top: 60px;
	left: 0;
	width: 100%;
	margin: 0;
	/*text-align: center;*/
	background: #fff;
}
.header .navigation.active {
	display: block;
}
.header .navigation .menu {
	position: relative;
}
.header .navigation .menu li a {
	display: block;
	position: relative;
	padding: 10px 12px;
	font-size: 16px;	
	font-weight: 600;
}

.header .navigation .menu li.open-submenu > ul{
	display: block;
}

.header .navigation .menu .menu-contact a{
	background: var(--bs-green);
	color: #fff;
    padding: 8px 25px;    
    border-radius: 100px;
}
.header .navigation .menu .menu-contact a:hover{
	background: var(--bs-primary);
}

@media screen and (min-width: 1200px) {

	.header .nav-menu {
		display: none;
	}

	.header .navigation{
		display: flex;
		align-items: center;
		position: relative;
		top: auto;
		left: auto;
		width: auto;
		background: transparent;
	}
	.header .navigation ul,
	.header .navigation ul li {
		position: relative;
		display: inline-block;
		vertical-align: middle;
	}
	.header .navigation ul{
		margin: 0;
	}

	.header .navigation ul li {
		padding-left: 10px;
	}
	.header .navigation .menu > li a {
		padding: 10px 15px;
		font-size: 16px;
	}

	.header .navigation .menu {
		margin-right: 16px;
	}
	.header .navigation .menu li a {
		text-align: left;
	}	

	.header.fixed{
		min-height: 60px;
	}

	.header .navigation .menu li:not(.menu-contact) a:before{
        content: '';
        position: absolute;
        bottom: 0;
        left: 50%;
        width: 0;
        height: 2px;
        background: var(--bs-secondary);
        transition: 0.3s all;
    }
    .header .navigation .menu li:not(.menu-contact).active a:before,
    .header .navigation .menu li:not(.menu-contact).current-menu-item a:before,
    .header .navigation .menu li:not(.menu-contact) a:hover:before{
        left: 10%;
        width: 80%;
    } 
	
}



@media screen and (max-width: 1199px){
	.header .navigation{
		box-shadow: 0 2px 5px 0 rgba(0,0,0,0.1);
	}
	.header .navigation .menu li.active a,
	.header .navigation .menu li:not(.menu-contact).current-menu-item a,
	.header .navigation .menu li a:hover{
		background: var(--bs-primary);
		color: #fff;
	}

	.header .navigation ul li.open-submenu > ul{
		background: rgba(0,0,0,0.05);
	}
	.header .navigation ul li ul li a{
		padding-top: 6px;
		padding-bottom: 6px;
		font-size: 16px;
	}
}


/* Modules > Title */

.title{
	position: relative;
	margin-bottom: 30px;
}
.title h1{
	font-size: 48px;
}
.title h3{
	text-transform: uppercase;
	font-size: 32px;
}
.title h2.small{
	font-size: 21px;
}
.title h4{
	font-size: 28px;
}
.title span {
	font-weight: 700;
	color: var(--bs-secondary);
}

.title p:not(.subtitle){
	margin: 0;
	margin-top: 5px;
}
.title .icon{
	margin-bottom: 15px;
}
.title .subtitle{
	margin: 0;
	text-transform: uppercase;
	font-size: 12px;
	margin-bottom: 10px;
    letter-spacing: 0.03em;
    font-weight: 500;
}

.title .description{
	font-size: 18px;
}
.title .btn{
	margin-top: 20px;
}

.title.max-width{
	max-width: 610px;
}
.title.max-width-lg{
	max-width: 990px;
}

@media screen and (min-width: 992px){
	.title{
		margin-bottom: 50px;
	}
	.title h1{
		font-size: 58px;
	}
	.title h2 {
		font-size: 54px;
	}
	.title h2.small{
		font-size: 32px;
	}
	.title h3{
		font-size: 38px;
	}
	.title h3.small{
		font-size: 32px;
	}
	.title h4{
		font-size: 32px;
	}
	.title p:not(.subtitle){
		margin-top: 15px;
	}

	.title .description{
		font-size: 22px;
	}

	.title .btn{
		margin-top: 30px;
	}

}

.legal p{
	font-style: italic;
	font-weight: 400;
	font-size: 23px;
}

/* Framework */

.section{
	position: relative;
	padding: 50px 0;
	background-repeat: no-repeat;
	background-size: cover;
}

@media screen and (min-width: 992px){
	.section{
		padding: 100px 0;
	}	
}




/* Module > Video Player */

.video-player{
	position: relative;
	width: 100%;
	padding: 30% 0;
	background: #f1f1f1 no-repeat center;
	background-size: cover;
}
.video-player .play{
	display: none;
	position: absolute;
	top: calc(50% - 30px);
	left: calc(50% - 30px);
	width: 60px;
	height: 60px;
	font-size: 24px;
	line-height: 60px;
	text-align: center;
	background: #080808;
	color: #fff;
	border-radius: 50%;
	transition: 0.3s all;
	cursor: pointer;
}
.video-player.active .play,
.video-player:hover .play{
	background: #080808;
	color: #fff;
}
.video-player .play:hover{
	transform: scale(1.1);
	-webkit-transform: scale(1.1);
}
.video-player .play i{
	margin-left: 4px;
}

.video-player.allowed{
	cursor: pointer;
}
.video-player.allowed .play{
	display: block;
}

/* Module > Presentation */

.presentation{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height:calc(100dvh - var(--header-min-height));
	padding: 30px 0 120px 0;
	background: no-repeat bottom;
	background-size: cover;
	text-align: center;
}

.presentation .title {
	max-width: 1200px;
	margin: 0 auto;
	color: var(--bs-white);
	z-index: 4;
}
.presentation .title h1 {
	font-size: 38px;
	text-transform: uppercase;
	text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
	font-weight: 700;
}

.presentation .title p{
	font-size: 18px;
}

.presentation .bg{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}
.presentation .bg img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.presentation video{
	position: relative;
	width: 655px;
	max-width: 100%;
	border-radius: 10px;
	z-index: 3;
}

@media screen and (min-width: 992px) {
    .presentation .title h1 {
		font-size: 58px;
	 }
	 .presentation .title p{
		font-size: 22px;
	}
	
}

/* Page > Home */
.page.home .how article{
	margin-top: -50px;
	position: relative;
	z-index: 12;
}

.page.home .how article h4{
	font-size: 24pz;
}

.page.home .reserve .items .card {
	background: rgba(255, 255, 255, 0.2);
}


.page.home .prices .wrap {
	max-width: 820px;
	margin: 0 auto;
	background: rgba(233, 127, 41, 0.84);
	border-radius: 41px 41px 0px 0px;
	padding: 30px 50px;
}

.page.home .prices .wrap .items {
	background: #fff;
	padding: 20px;
	border-radius: 20px;
	filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
}
.page.home .prices .legal p{
	font-size: 14px;
}

.page.home .instagram {
	background: #FAB47B;
}

.page.home .testimonial .items .image{
	border: solid 1px var(--bs-primary);
	border-radius: 30px;
	padding: 20px;
}

@media screen and (min-width: 992px){
	.page.home .cta .price {
		font-size: 80px;
	}
}


.page.home .testimonial mark{
	background-color: var(--bs-primary);
	color: #fff;
	font-weight: 400;
}

table.table {
	margin: 0 auto;
	border-radius: 20px;
	overflow: hidden;	
}
.table>thead tr th {
	background: var(--bs-primary);
	color: #fff;
	padding: 20px;
}

.table>:not(caption)>*>* {
	color: #464646;
	padding: 20px;
	font-size: 20px;
}

@media screen and (min-width: 992px){
	.table>:not(caption)>*>* {
		font-size: 20px;
	}


}


/* Pages > Internal */

.page.internal .content{
	
}
.page.internal .content article {
	max-width: 850px;
	margin-left: auto;
	margin-right: auto;
}

/* Pages > Page 404 */

.page.page-404 .content{
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	min-height: 80vh;
}

/* Pages > Page Maintenance */

.page.page-maintenance .content{
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	min-height: 100vh;
}

/* Errors */

.errors {
	text-align: center;
	padding: 30px 0;
}
.errors.error-nologued {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 60vh;
}

.errors .smile {
	margin: 0;
	font-size: 50px;
	-webkit-transform: rotate(90deg);
	color: #080808;
}
@media screen and (min-width: 992px){
	.errors .smile {
		font-size: 80px;
	}
}


/* Footer */

.footer{
	border-top: solid 5px var(--bs-secondary);
}

.footer .widgets{
	padding: 30px 0;
	text-align: center;
}

.footer .widgets .logo{
	display: block;
	width: 200px;
	margin: 0 auto 30px;
}


.footer .widgets .socialmedia {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	gap: 20px;
}

.footer .widgets .socialmedia li a{
	display: block;
	font-size: 26px;
}
.footer .widgets .socialmedia li a:hover{
	transform: translateY(-2px);
}

.footer .copyright {
	border-top: solid 1px #fff;
	padding-top: 30px;
	margin-top: 30px;
	font-size: 14px;
}

.footer .menu a:hover{
	text-decoration: underline;
	text-underline-offset: 5px;
}

@media screen and (min-width: 992px){
	.footer .widgets{
		padding: 60px 0;
		text-align: left;
	}
	.footer .widgets .logo{
		margin: 0;
	}
	.footer .widgets .socialmedia li a{
		font-size: 32px;
	}

	.footer .menu,
	.footer .vias {
		display: flex;
		gap: 20px;
	}

	.footer .menu:after {
		content: ' | ';
		margin-right: 20px;
	}
}


/* Components > Slider  */

.slider{
	position: relative;
}


/* Components > Slider > Swiper */

.slider{
	position: relative;
}

.swiper-button-next svg, .swiper-button-prev svg {
	display: none;
}
.swiper:has(.swiper-pagination){
    padding-bottom: 60px;
}
.swiper-pagination {
	bottom: 0;
}
.swiper-pagination-bullet{
	background: #ccc;
	opacity: 1;
}
.swiper-pagination-bullet-active {
	background:var(--bs-dark);
}

.swiper-button-prev,
.swiper-button-next{
	position: absolute;
	width: 45px;
	height: 45px;
    color: transparent;
}

.swiper-button-prev::after{
  content:'';
  position:absolute;
  inset:0;
  -webkit-mask: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.7069 17.293L8.41394 13H17.9999V11H8.41394L12.7069 6.70697L11.2929 5.29297L4.58594 12L11.2929 18.707L12.7069 17.293Z'/%3E%3C/svg%3E") no-repeat center / 24px 24px;
          mask: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.7069 17.293L8.41394 13H17.9999V11H8.41394L12.7069 6.70697L11.2929 5.29297L4.58594 12L11.2929 18.707L12.7069 17.293Z'/%3E%3C/svg%3E") no-repeat center / 24px 24px;
  background-color: currentColor;
}
.swiper-button-next::after {
  content: '';
  position: absolute;
  inset: 0;
  -webkit-mask: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.2931 6.70703L15.5861 11L6.00006 11L6.00006 13L15.5861 13L11.2931 17.293L12.7071 18.707L19.4141 12L12.7071 5.29303L11.2931 6.70703Z'/%3E%3C/svg%3E") no-repeat center / 24px 24px;
          mask: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.2931 6.70703L15.5861 11L6.00006 11L6.00006 13L15.5861 13L11.2931 17.293L12.7071 18.707L19.4141 12L12.7071 5.29303L11.2931 6.70703Z'/%3E%3C/svg%3E") no-repeat center / 24px 24px;
  background-color: currentColor;
}

@media screen and (min-width: 992px){
	.swiper-button-prev {
		left: -70px;
	}
	.swiper-button-next{
		right: -70px;
	}

}

/* Circle arrows */

.circle.swiper-button-prev,
.circle.swiper-button-next{
	width: 56px;
	height: 56px;
}
.circle.swiper-button-next,
.circle.swiper-button-prev{
	background-color: transparent;
	border: 1px solid var(--bs-dark);
	border-radius: 50%;
}
.circle.swiper-button-next:hover,
.circle.swiper-button-prev:hover{
	border-color: var(--bs-primary);
}

.swiper-button-prev, .swiper-button-next{ color: var(--bs-dark); }
.swiper-button-prev:hover, .swiper-button-next:hover{ color:#EA856E; }



/*  Modals */

.modal{
	z-index: 99999;
}
.modal-backdrop{
	z-index: 9999;
}
.modal .modal-content{
	border: 0;
	border-radius: 0;
}

.modal .btn-close{
	position: absolute;
	top: -50px;
	right: 15px;
	width: 30px;
	height: 30px;
	padding: 0;
	background: url('assets/img/icons/icon-cross.svg') no-repeat center;
	background-size: contain;
	z-index: 10;
	opacity: 0.5;
}

@media screen and (min-width: 992px) {
	.modal .btn-close{
		top: 20px;
		right: -50px;
	}
}

/* Modals > Video */

#modalVideo .modal-content{
	background-color: #080808;
}
#modalVideo .modal-body{
	padding: 0;
}
#modalVideo .btn-close{
	top: -40px;
	right: 0;
	color: #fff;
	font-size: 30px;
	filter: brightness(0) invert(1);
}

/* Wahtsapp  */

.button-whatsapp{
	display: flex;
	align-items: center;
	justify-content: center;
    position: fixed;
    bottom: 10px;
    right: 10px;
    width: 70px;
    height: 70px;
    color: #fff;
    font-size: 40px;
    text-align: center;
    background: #25D366;
    border-radius: 50%;
    box-shadow: 0 0 15px 0 rgba(0,0,0,0.1);
    transition: 0.3s all;
    z-index: 9999;
}
.button-whatsapp:hover{
    background: #fff;
    color: #25D366;
}

@media screen and (min-width: 992px) {
	.button-whatsapp{
		right: 30px;
		bottom: 30px;
	}
}