@charset "utf-8";

/* IMPORT RESET */
@import url("normalize.css");

* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	*behavior: url(../../js/boxsizing.htc);
	/*
		If you need support for IE7 and lower make
		sure the boxsizing.htc file is linked properly.
		More info here:  https://github.com/Schepp/box-sizing-polyfill
	*/
}

/*font*/
@font-face
{
    font-family: 'nunito';
    src: url('../../fonts/Nunito-Regular.ttf');
}

.ft-nunito {
    font-family: nunito;
}

@font-face
{
    font-family: 'nunito-medium';
    src: url('../../fonts/Nunito-Medium.ttf');
}

.ft-nunito-medium {
    font-family: nunito-medium;
}

@font-face
{
    font-family: 'nunito-italic';
    src: url('../../fonts/Nunito-Italic.ttf');
}

.ft-nunito-italic {
    font-family: nunito-italic;
}

@font-face
{
    font-family: 'nunito-medium-italic';
    src: url('../../fonts/nunito-medium-italic.ttf');
}

.ft-nunito-medium-italic {
    font-family: nunito-medium-italic;
}

@font-face
{
    font-family: 'nunito-bold';
    src: url('../../fonts/Nunito-Bold.ttf');
}

.ft-nunito-bold {
    font-family: nunito-bold;
}

@font-face
{
    font-family: 'nunito-bolditalic';
    src: url('../../fonts/Nunito-BoldItalic.ttf');
}

.ft-nunito-bolditalic {
    font-family: nunito-bolditalic;
}

@font-face
{
    font-family: 'nunito-semibold';
    src: url('../../fonts/Nunito-SemiBold.ttf');
}

.ft-nunito-semibold {
    font-family: nunito-semibold;
}

@font-face
{
    font-family: 'nunito-black';
    src: url('../../fonts/Nunito-Black.ttf');
}

.ft-nunito-black {
    font-family: nunito-black;
}

@font-face
{
    font-family: 'segoe-script';
    src: url('../../fonts/segoesc.ttf');
}

.ft-segoe-script {
    font-family: segoe-script;
}

@font-face
{
    font-family: 'anagram';
    src: url('../../fonts/ANAGRAM.TTF');
}

.ft-anagram {
    font-family: anagram;
}


/* Global */
html, body {
    padding: 0px;
    margin: 0px;
    background: #f8f8f8;
}

img {
	max-width: 100%;
}

a {
	color: inherit;
	text-decoration: none;
}

a:hover {
	/*color: inherit;*/
	text-decoration: none;
}

a:focus {
	outline: 0;
}

.window-width {
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 0px;
}

.window-height {
	position: fixed;
	top: 0px;
	left: 0px;
	height: 100vh;
	width: 0px;
}

.mid {
	position: relative;
	width: 100%;
	height: 100%;

	justify-content: center;
	display: flex;
	align-items: center;
}

.container {
	position: relative;
	display: block;
	overflow: hidden;
    color: #222;
}

.content {
    position: relative;
    display: block;
}

.header-container {
	position: fixed;
	display: block;
	width: 100%;
	height: 180px;
	background: transparent;
	left: 0px;
	top: 0px;
	z-index: 1000;
}

.header-logo {
	position: absolute;
    top: 50%;
    left: 40px;
    transform: translate(0px, -50%);
	width: 240px;
	z-index: 1;
	opacity: 1;

	-webkit-transition: opacity 0.4s;
	-moz-transition: opacity 0.4s;
	-ms-transition: opacity 0.4s;
	transition: opacity 0.4s;
}

.header-logo img {
	max-height: 100%;
    position: relative;
    display: block;
}


.not-active.headroom--pinned {
    opacity: 1 !important;
	top: 0px !important;
	background: linear-gradient(to top, transparent, #f8f8f8);

    -webkit-transition: opacity 0.4s, top 0.4s, background 0.4s, height 0.4s;
    -moz-transition: opacity 0.4s, top 0.4s, background 0.4s, height 0.4s;
    -ms-transition: opacity 0.4s, top 0.4s, background 0.4s, height 0.4s;
    transition: opacity 0.4s, top 0.4s, background 0.4s, height 0.4s;
}

.not-active.headroom--unpinned {
    opacity: 0 !important;
	top: -180px !important;

    -webkit-transition: opacity 0.4s, top 0.4s, background 0.4s, height 0.4s;
    -moz-transition: opacity 0.4s, top 0.4s, background 0.4s, height 0.4s;
    -ms-transition: opacity 0.4s, top 0.4s, background 0.4s, height 0.4s;
    transition: opacity 0.4s, top 0.4s, background 0.4s, height 0.4s;
}

.not-active.headroom--top {
	opacity: 1 !important;
	top: 0px !important;
	background: transparent !important;

    -webkit-transition: opacity 0.4s, top 0.4s, background 0.4s, height 0.4s;
    -moz-transition: opacity 0.4s, top 0.4s, background 0.4s, height 0.4s;
    -ms-transition: opacity 0.4s, top 0.4s, background 0.4s, height 0.4s;
    transition: opacity 0.4s, top 0.4s, background 0.4s, height 0.4s;
}

.not-active.headroom--not-top {
	height: 180px;
    background: linear-gradient(to top, transparent, #f8f8f8);

    -webkit-transition: opacity 0.4s, top 0.4s, background 0.4s, top 0.4s;
    -moz-transition: opacity 0.4s, top 0.4s, background 0.4s, top 0.4s;
    -ms-transition: opacity 0.4s, top 0.4s, background 0.4s, top 0.4s;
    transition: opacity 0.4s, top 0.4s, background 0.4s, top 0.4s;
}

.header-nav-group {
    position: absolute;
    top: 50%;
    right: 40px;
    transform: translate(0px, -50%);
    font-size: 0px;
}

.header-nav-group > * {
    font-size: 14px;
    line-height: 16px;
}

.header-nav-item {
    position: relative;
    display: inline-block;
    margin-left: 40px;
    padding-bottom: 2px;
    color: #222;
    letter-spacing: 0.7px;
    border-bottom: 4px solid transparent;

    -webkit-transition: border 0.4s;
    -moz-transition: border 0.4s;
    -ms-transition: border 0.4s;
    transition: border 0.4s;
}

.header-nav-item:first-child {
    margin-left: 0px;
}

.header-nav-item:hover {
    /* border-bottom: 4px solid #6dd7ef; */
    border-bottom: 4px solid #b9defc;

    -webkit-transition: border 0.4s;
    -moz-transition: border 0.4s;
    -ms-transition: border 0.4s;
    transition: border 0.4s;
}

.footer-container {
    position: relative;
    display: block;
    width: 100%;
    padding-bottom: 80px;
    line-height: 20px;
    font-size: 14px;
    color: #222;
    text-align: center;
}

.blur-container {
    position: fixed;
    display: block;
    width: 100%;
    height: 100vh;
    background: rgba(248, 248, 248, 0.8);
    color: #222222;
    left: 0px;
    top: 0px;
    z-index: -1;
    overflow: auto;
    opacity: 0;

    -webkit-transition: 0.4s opacity 0s, 0 z-index 0.4s;
    -moz-transition: 0.4s opacity 0s, 0 z-index 0.4s;
    -ms-transition: 0.4s opacity 0s, 0 z-index 0.4s;
    transition: 0.4s opacity 0s, 0 z-index 0.4s;
}

.blur-container.notif {
    opacity: 1;
    z-index: 9999;
    align-content: center;
    text-align: center;
}

.blur-container.active {
    z-index: 9999;
    opacity: 1;

    -webkit-transition: 0.4s opacity 0s;
    -moz-transition: 0.4s opacity 0s;
    -ms-transition: 0.4s opacity 0s;
    transition: 0.4s opacity 0s;
}

.blur-container .mid {
    overflow: auto;
    padding: 50px 0px;
    height: auto;
    /* min-height: calc(100vh - 50px); */
    min-height: calc(100vh - 0px);
}

.blur-content .psi-item-img:before {
    display: none;
}

.blur-content {
    position: relative;
    display: block;
    width: calc(100% - 40px) !important;
    max-width: 530px;
    margin: 0px auto !important;
    height: auto !important;
    padding: 50px !important;
    top: 100px;
    opacity: 0;
    border-radius: 60px 0px 60px !important;
    -webkit-border-radius: 60px 0px 60px !important;
    -moz-border-radius: 60px 0px 60px !important;
    -ms-border-radius: 60px 0px 60px !important;
    -o-border-radius: 60px 0px 60px !important;

    -webkit-transition: top 0.4s, opacity 0.4s;
    -moz-transition: top 0.4s, opacity 0.4s;
    -ms-transition: top 0.4s, opacity 0.4s;
    transition: top 0.4s, opacity 0.4s;
}

.active .blur-content {
    top: 0px;
    opacity: 1;

    -webkit-transition: top 0.4s, opacity 0.4s;
    -moz-transition: top 0.4s, opacity 0.4s;
    -ms-transition: top 0.4s, opacity 0.4s;
    transition: top 0.4s, opacity 0.4s;
}

.blur-close {
    position: absolute;
    display: block;
    width: 28px;
    height: 28px;
    cursor: pointer;
    right: 10px;
    top: 10px;

    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.blur-close:before {
    content: '';
    position: absolute;
    display: block;
    width: 1px;
    height: 100%;
    background: #32362e;
    left: calc((100% - 1px) / 2);
    top: 0px;
}

.blur-close:after {
    content: '';
    position: absolute;
    display: block;
    height: 1px;
    width: 100%;
    background: #32362e;
    top: calc((100% - 1px) / 2);
    left: 0px;
}

.blur-content .psi-item-img {
    width: 250px;
    margin-bottom: 25px;
}

.blur-content .psi-item-img img {
    border-radius: 40px 0px 40px !important;
    -webkit-border-radius: 40px 0px 40px !important;
    -moz-border-radius: 40px 0px 40px !important;
    -ms-border-radius: 40px 0px 40px !important;
    -o-border-radius: 40px 0px 40px !important;
}

.blur-content .psi-item-title {
    font-size: 32px;
    line-height: 33px;
    margin-bottom: 20px;
}

.blur-content .psi-item-desc {
    font-size: 14px;
    line-height: 24px;
}

.blur-content .psi-item-desc ul {
    padding-left: 18px;
    margin: 0px;
}


.line80 {
	position: fixed;
	top: 80vh;
	left: 0px;
	width: 0px;
	height: 0px;
}

.line100 {
	position: fixed;
	top: 100vh;
	left: 0px;
	width: 0px;
	height: 0px;
}

.left-anim {
	left: 300px;
	opacity: 0;

    -webkit-transition: 0s left 0.2s, 0s opacity 0.2s;
    -moz-transition: 0s left 0.2s, 0s opacity 0.2s;
    -ms-transition: 0s left 0.2s, 0s opacity 0.2s;
    transition: 0s left 0.2s, 0s opacity 0.2s;
}

.left-anim.animate-active {
    left: 0px;
    opacity: 1;

    -webkit-transition: 1.1s left 0s, 1.1s opacity 0s;
    -moz-transition: 1.1s left 0s, 1.1s opacity 0s;
    -ms-transition: 1.1s left 0s, 1.1s opacity 0s;
    transition: 1.1s left 0s, 1.1s opacity 0s;
}

.header-menu-anim.animate-active {
    left: 0px;
    opacity: 1;

    -webkit-transition: 1.1s left 0s, 1.1s opacity 0s;
    -moz-transition: 1.1s left 0s, 1.1s opacity 0s;
    -ms-transition: 1.1s left 0s, 1.1s opacity 0s;
    transition: 1.1s left 0s, 1.1s opacity 0s;
}

.header-nav-item.animate-active {
    left: 0px;
    opacity: 1;

    -webkit-transition: 1.1s left 0s, 1.1s opacity 0s;
    -moz-transition: 1.1s left 0s, 1.1s opacity 0s;
    -ms-transition: 1.1s left 0s, 1.1s opacity 0s;
    transition: 1.1s left 0s, 1.1s opacity 0s;
}

.wa-float {
    position: fixed;
    display: block;
    width: 112px;
    right: -300px;
    opacity: 0;
    bottom: 24px;
    font-size: 14px;
    line-height: 18px;
    z-index: 10;

    -webkit-transition: 0s right 0.2s, 0s opacity 0.2s;
        -moz-transition: 0s right 0.2s, 0s opacity 0.2s;
        -ms-transition: 0s right 0.2s, 0s opacity 0.2s;
        transition: 0s right 0.2s, 0s opacity 0.2s;
}

.wa-float.animate-active {
    right: 24px;
    opacity: 1;

    -webkit-transition: 1.1s right 0s, 1.1s opacity 0s;
        -moz-transition: 1.1s right 0s, 1.1s opacity 0s;
        -ms-transition: 1.1s right 0s, 1.1s opacity 0s;
        transition: 1.1s right 0s, 1.1s opacity 0s;
}

.wa-float span {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    text-align: center;
    align-content: center;
    left: 0px;
    top: 0px;
    padding-bottom: 15px;
}

.wa-float span:before {
    content: '';
    position: absolute;
    display: block;
    width: 16px;
    aspect-ratio: 1/1;
    top: 18px;
    right: 30px;
    background: url('../../img/front/whatsapp_icon_black.svg') no-repeat;
    background-size: contain !important;
    background-position: center !important;
}

.header-menu-switch {
    display: none;
}

@media (max-width: 1024px) {
    .header-logo {
        width: 200px;
    }

    .header-nav-item {
        margin-left: 30px;
    }
}

@media (max-width: 768px) {
    .header-container {
        height: 100px;
    }

    .not-active.headroom--not-top {
        height: 100px;
    }

    .header-logo {
        left: 30px;
        width: 130px;
    }

    .header-menu-switch {
        position: absolute;
        display: block;
        width: 35px;
        height: 18px;
        cursor: pointer;
        transform: translate(0px, -50%);
        right: 30px;
        top: calc(50% - 10px);

        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
        transform: rotate(0deg);

        -webkit-transition: -webkit-transform 0.4s;
        -moz-transition: -moz-transform 0.4s;
        -ms-transition: -ms-transform 0.4s;
        transition: transform 0.4s;
    }

    .header-menu-switch.active {
        -webkit-transform: rotate(180deg);
        -moz-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
        transform: rotate(180deg);

        -webkit-transition: -webkit-transform 0.4s;
        -moz-transition: -moz-transform 0.4s;
        -ms-transition: -ms-transform 0.4s;
        transition: transform 0.4s;
    }

    .header-menu-anim {
        position: relative;
        display: block;
        left: 300px;
        opacity: 0;
    }

    .header-menu-line {
        position: relative;
        display: block;
        width: 100%;
        height: 2px;
        border-radius: 2px;
        background: #222;
        margin-bottom: 6px;
        opacity: 1;
        top: 0px;
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
        transform: rotate(0deg);
        -webkit-transition: -webkit-transform 0.4s, opacity 0.4s, width 0.4s, top 0.4s;
        -moz-transition: -moz-transform 0.4s, opacity 0.4s, width 0.4s, top 0.4s;
        -ms-transition: -ms-transform 0.4s, opacity 0.4s, width 0.4s, top 0.4s;
        transition: transform 0.4s, opacity 0.4s, width 0.4s, top 0.4s;
        -webkit-border-radius: 2px;
        -moz-border-radius: 2px;
        -ms-border-radius: 2px;
        -o-border-radius: 2px;
}

    .header-menu-line:last-child {
        margin-bottom: 0px;
    }

    .header-menu-line.line1 {
        width: 30px;
    }

    .active .header-menu-line.line1 {
        width: 100%;
        top: 8px;

        -webkit-transform: rotate(45deg);
        -moz-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg);

        -webkit-transition: -webkit-transform 0.4s, opacity 0.4s, width 0.4s, top 0.4s;
        -moz-transition: -moz-transform 0.4s, opacity 0.4s, width 0.4s, top 0.4s;
        -ms-transition: -ms-transform 0.4s, opacity 0.4s, width 0.4s, top 0.4s;
        transition: transform 0.4s, opacity 0.4s, width 0.4s, top 0.4s;
    }

    .active .header-menu-line.line2 {
        opacity: 0;

        -webkit-transition: -webkit-transform 0.4s, opacity 0.4s, width 0.4s, top 0.4s;
        -moz-transition: -moz-transform 0.4s, opacity 0.4s, width 0.4s, top 0.4s;
        -ms-transition: -ms-transform 0.4s, opacity 0.4s, width 0.4s, top 0.4s;
        transition: transform 0.4s, opacity 0.4s, width 0.4s, top 0.4s;
    }

    .header-menu-line.line3 {
        width: 25px;
    }

    .active .header-menu-line.line3 {
        width: 100%;
        top: -8px;

        -webkit-transform: rotate(-45deg);
        -moz-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg);

        -webkit-transition: -webkit-transform 0.4s, opacity 0.4s, width 0.4s, top 0.4s;
        -moz-transition: -moz-transform 0.4s, opacity 0.4s, width 0.4s, top 0.4s;
        -ms-transition: -ms-transform 0.4s, opacity 0.4s, width 0.4s, top 0.4s;
        transition: transform 0.4s, opacity 0.4s, width 0.4s, top 0.4s;
    }

    .header-nav-group {
        display: none;
        padding-top: 80px;
        position: fixed;
        height: 100vh;
        width: 100vw;
        background: rgba(248, 248, 248, 0.8);
        backdrop-filter: blur(5px);
        -webkit-backdrop-filter: blur(5px);
        left: 0px;
        top: 0px;
        transform: translate(0px);
        align-content: center;
        text-align: center;
    }

    .header-nav-item {
        font-size: 26px;
        display: table;
        line-height: normal;
        margin: 0px auto 30px !important;

        left: 300px;
        opacity: 0;
    }

    .header-nav-item:last-child {
        margin-bottom: 0px;
    }
}

@media (max-width: 500px) {
    .header-logo {
        left: 20px;
        width: 130px;
    }

    .header-nav-group {
        bottom: 10px;
        transform: translate(0px, 0%);
        -webkit-transform: translate(0px, 0%);
        -moz-transform: translate(0px, 0%);
        -ms-transform: translate(0px, 0%);
        -o-transform: translate(0px, 0%);
    }

    .blur-content {
        padding: 30px !important;
    }

    .blur-content .psi-item-title {
        font-size: 28px;
    }

    .wa-float {
        width: 80px;
        font-size: 12px;
        line-height: 15px;
    }

    .wa-float span:before {
        top: 9px;
        right: 15px;
        width: 15px;
    }

    .wa-float.animate-active {
        right: 20px;
        bottom: 20px;
    }

    .wa-float.on-bottom {
        position: absolute;
        bottom: 115px;
    }

    .header-menu-switch {
        right: 20px;
    }
}