html,body { overflow-x: hidden;  }
html { font-size: 15px; scroll-behavior: smooth; }
body { display: flex; flex-direction: column; font-family: 'Open Sans', sans-serif; }

.fw-6 { font-weight: 600; }
.fw-4 { font-weight: 400; }
.fw-2 { font-weight: 300; }
.f-it { font-style: italic; }
.f-black { color:#1c1c1c; }
.f-white { color:#ffffff; }
.fs-0 { font-size: 11px; }
.fs-1 { font-size:1.2em; } /*  Use in menus and such */
.fs-2 { font-size:1.3em; }
.fs-3 { font-size:1.4em; } /*  Use for texts */
.fs-4 { font-size:1.5em; }
.fs-5 { font-size:1.75em; } /*  Use for titles */
.fs-6 { font-size:2em; }
.fs-8 { font-size:2.25em; }
.fs-9 { font-size:3em; }
.flh-1 { line-height: 1.3em; }
.flh-2 { line-height: 1.5em; }
.flh-3 { line-height: 1.8em; }
.f-inherit { font-family: inherit !important; }

/* Links */
a {	text-decoration: none !important; color:inherit !important; }
a:hover { text-decoration: none !important; color:inherit !important; }
a:visited { text-decoration: none !important; color:inherit !important; }

/* Viewports */
.vh-100 { min-height: 100vh ; }
.vh-90 { min-height: 90vh ; }
.vh-80 { min-height: 80vh ; }
.vh-70 { min-height: 70vh ; }
.vh-60 { min-height: 60vh ; }
.vh-50 { min-height: 50vh ; }
.vh-40 { min-height: 40vh ; }
.vh-35 { min-height: 35vh ; }
.vh-30 { min-height: 30vh ; }
.vh-25 { min-height: 25vh ; }
.vh-20 { min-height: 20vh ; }
.vh-15 { min-height: 15vh ; }
.vh-10 { min-height: 10vh ; }
.vh-5 { min-height: 5vh ; }

.vw-100 { min-width: 100vw ; }
.vw-75 { min-width: 75vw ; }
.vw-50 { min-width: 50vw ; }
.vw-35 { min-width: 35vw ; }
.vw-25 { min-width: 25vw ; }
.vw-10 { min-width: 10vw ; }

/* Spacers */
.spacer-2 { height: 2vh; }
.spacer-4 { height: 4vh; }
.spacer-6 { height: 6vh; }
.spacer-8 { height: 8vh; }

/* Background Colors */
.black { background-color: #231f20; }
.light-grey { background-color: #f0f0f0; }
.grey { background-color: #c3c3c3; }
.greydark { background-color: #9e9e9e; }
.dark-grey { background-color: #a7a7a7; }
.white { background-color: #fff; }
.purple { background-color: #8381a8; }
.primary { background-color: #f15a29 }
.secondary { background-color: #dd4f41 }
.alternative { background-color: #be1e2e }
.menu { background-color: #696b79 }
.blue { background-color: #28609b }

/* Font Colors */
.f-black { color: #231f20; }
.f-red { color: #870a0a; }
.f-light-grey { color: #f0f0f0; }
.f-grey { color: #c3c3c3; }
.f-dark-grey { color: #a7a7a7; }
.f-white { color: #fff; }
.f-purple { color: #8381a8; }
.f-primary { color: #f15a29 }
.f-secondary { color: #dd4f41 }
.f-alternative { color: #be1e2e }
.f-menu { color: #696b79 }

/* Cursors */
.cp { cursor: pointer; }
.cn { cursor: default; }
.cd { cursor: no-drop; }

/* Images */
.round { border-radius: 3em; }

/* Spacers */
.spacer-2 { min-height: 2vh; }
.spacer-4 { min-height: 4vh; }
.spacer-6 { min-height: 6vh; }
.spacer-8 { min-height: 8vh; }

/* Specifics */
.img-card { width: 100%; height: auto; max-height: 10em; }

#history-board { border-radius: 3em; margin-bottom: 1rem; }
.history-item { border-radius: 100%; }

/* Utils */
.flex-v { flex-direction: column; }

/* Menu */
#navbar-container {
	width: 100vw;
	height: 100vh;
	position: fixed;
	top:0;
	left:0;
	z-index: 10;
}

#navbar-menu {
	position: fixed;
	left: 0;
	width: 35vw;
	height: 100vh;
	z-index: 11;
	background-color: rgb(105, 107, 121);
}

#menu-escape {
	position: fixed;
	right: 0;
	width: 65vw;
	height: 100vh;
	z-index: 10;
	background-color: rgba(21,21,21, 0.5);
}

.menu-option { border-left: 0.2em solid rgb(105, 107, 121); transition: 0.2s;}
.menu-option:hover { cursor: pointer; color:#fff; transition: 0.2s;}
.menu-option-active { border-left: 0.2em solid #f15a29 !important; color:#fff; }

/* Menu Buttons and Dropdown */
button, [type="button"] {
	cursor: pointer;
}
.btn-language {
	cursor: pointer;
	background-color: #34353d;
	border-radius: 1em !important;
	-webkit-box-shadow: 0px 10px 6px 0px rgba(0,0,0,0.16);
    -moz-box-shadow: 0px 10px 6px 0px rgba(0,0,0,0.16);
	box-shadow: 0px 10px 6px 0px rgba(0,0,0,0.16);
}

.btn-custom {
	cursor: pointer;
	background-color: #34353d;
	border-radius: 2em !important;
	-webkit-box-shadow: 1px 1px 10px 0px rgba(28,28,28,0.5);
    -moz-box-shadow: 1px 1px 10px 0px rgba(28,28,28,0.5);
	box-shadow: 1px 1px 10px 0px rgba(28,28,28,0.5);
}

.dropdown-menu.dropdown-menu-wide {
	margin-top: 0;
	border-top-right-radius: 0 !important;
	border-top-left-radius: 0 !important;
	border-bottom-right-radius: 0.5em !important;
	border-bottom-left-radius: 0.5em !important;
  	min-width: 100%;
  	color: #fff;
  	text-align: center;
  	background-color: #34353d;
}

.dropdown-item { transition: 0.2s; }
.dropdown-item:hover {
	background-color: #34353d !important;
	color: #cecece !important;
	transition: 0.2s;
}

.btn-round { border-radius: 5em !important; }
.btn-lang:hover,
.btn-lang:focus { color: rgb(221, 79, 65); }
.icon-caret-up, .icon-caret-down { opacity: .5; height: 8px; }
.icon-caret-up:hover,
.icon-caret-up:focus,
.icon-caret-down:hover,
.icon-caret-down:focus { opacity: 1; }

#menu-icon {
	transform: translate(-0.4em,-0.3em);
	-ms-transform: translate(-0.4em,-0.3em);
	-webkit-transform: translate(-0.4em,-0.3em);
}

/* Products */
/* single icon mouse states */
.ib-container .ib-back,
.ib-container .ib-icon {
	fill: #dd4f41;
	stroke: #fff;
	transition: all .2s;
}
.ib-container-active .ib-back,
.ib-container-active .ib-icon,
.ib-container:hover .ib-back,
.ib-container:hover .ib-icon {
	fill: #fff;
	stroke: #dd4f41;
}

.ib-container-alt .ib-back-alt,
.ib-container-alt .ib-icon-alt {
	fill: #f15a29;
	stroke: #fff;
	transition: all .2s;
}
.ib-container-active-alt .ib-back-alt,
.ib-container-active-alt .ib-icon-alt,
.ib-container-alt:hover .ib-back-alt,
.ib-container-alt:hover .ib-icon-alt {
	fill: #fff;
	stroke: #f15a29;
}

.product-image-right {
	border-top-left-radius: 5em !important;
	border-bottom-left-radius: 5em !important;
	width: 85%;
	height: 70vh;
	object-fit: cover;
}

.product-image-left {
	border-top-right-radius: 5em !important;
	border-bottom-right-radius: 5em !important;
	width: 85%;
	height: 70vh;
	object-fit: cover;
}

.product-image-mobile {
	border-radius: 2em;
	width: 90%;
	height: 20vh;
}

.product-plus {
	margin:auto;
	background-color: #fff;
	cursor: pointer;
	height: 2em;
	width: 2em;
	border-radius: 100%;
	transform: translate(0,-2.5vh);
	-ms-transform: translate(0,-2.5vh);
	-webkit-transform: translate(0,-2.5vh);
	border: 1px solid rgba(0,0,0,0.16);
	-webkit-box-shadow: 0px 2px 6px 0px rgba(0,0,0,0.16);
    -moz-box-shadow: 0px 2px 6px 0px rgba(0,0,0,0.16);
	box-shadow: 0px 2px 6px 0px rgba(0,0,0,0.16);
	transition: 0.2s;
}

.product-plus:hover {
	-webkit-box-shadow: 0px 2px 6px 0px rgba(0,0,0,0.3);
    -moz-box-shadow: 0px 2px 6px 0px rgba(0,0,0,0.3);
	box-shadow: 0px 2px 6px 0px rgba(0,0,0,0.3);
	transition: 0.2s;
}

.product-plus-svg path {
	stroke: #f15a29 !important;
	transform: scale(0.3, 0.3) translate(3.8em,3.8em);
	-ms-transform: scale(0.3, 0.3) translate(3.8em,3.8em);
	-webkit-transform: scale(0.3, 0.3) translate(3.8em,3.8em);
}

/* Client Citations Section */
#client_citation {
	position: absolute;
	left: 10vh;
	top: 25vh;
	width: 70%;
	padding-top: 3vh;
	padding-bottom: 3vh;
	background-color: #f0f0f0 ;
	z-index:2 ;
	border-radius: 4em;
}

#client_citation_back {
	position: relative;
	min-height: 100vh;
	background-color: #fff ;
	z-index:0 ;
}

#client_citation_video {
	position: absolute;
	right: 0;
	top: 0;
	width: 80%;
	min-height: 100vh;
	background-color: #a7a7a7;
}

#client_citation_mobile {
	position: absolute;
	top: 5%;
	left: 10vw;
	height: auto;
	width: 80vw;
	background-color: #f0f0f0 ;
	border-radius: 2em;
}

#client_citation_mobile_back {
	background-image: url("img/bottom.jpg");
	background-size: cover;
}

#citation_image {
   	height: 100vh;
   	width: auto;
   	overflow:hidden;
   	left:0;
}

.announcment-container {
	background-color: #eaeaea;
	padding: 2rem 0;
}
.announcment-wrapper {
	line-height: 1.4;
}
.announcment-wrapper .title{
	margin-bottom: 1rem;
}
.announcment-list {
	list-style: none;
	padding: 0;
 }
 .announcment-list strong {
	 margin-right: 10px;
 }

.btn-color-primary,
.btn-color-secondary,
.btn-color-secondary-inv,
.btn-color-alternative,
.btn-color-generic {
	-webkit-box-shadow: 1px 1px 10px 0px rgba(28,28,28,0.5);
    -moz-box-shadow: 1px 1px 10px 0px rgba(28,28,28,0.5);
	box-shadow: 1px 1px 10px 0px rgba(28,28,28,0.5);
}

.btn.btn-color-generic {
	background-color: #fff;
	border: 2px solid #1c1c1c;
	transition: 0.2s;
	color: #000;
}
.btn.btn-color-generic:hover {
	background-color: #1c1c1c;
	border: 2px solid #1c1c1c;
	transition: 0.2s;
	color: #fff;
}

.btn-color-primary {
	background-color: #f15a29;
	color:#fff;
	border-radius: 5em !important;
	border: 2px solid #f15a29 !important;
	transition: 0.2s;
}

.btn-color-primary:hover {
	background-color: rgba(0,0,0,0) !important;
	color: #f15a29;
	border: 2px solid #f15a29;
	transition: 0.2s;
}

a.btn-color-secondary p { color: #fff; }
a.btn-color-secondary:hover p { color: #dd4f41; }
.btn-color-secondary {
	background-color: rgba(221, 79, 65, 1);
	color:#fff;
	border-radius: 5em !important;
	border: 2px solid #dd4f41 !important;
	transition: 0.2s;
}

.btn-color-secondary:hover {
	background-color: rgba(255,255,255,1) !important;
	color: #dd4f41;
	border: 2px solid #dd4f41;
	transition: 0.2s;
}

.btn-color-secondary-inv {
	background-color: rgba(255,255,255,1);
	color:#dd4f41;
	border-radius: 5em !important;
	border: 2px solid #dd4f41 !important;
	transition: 0.2s;
}

.btn-color-secondary-inv:hover {
	background-color: rgba(221, 79, 65,1) !important;
	color: #fff;
	border: 2px solid #dd4f41;
	transition: 0.2s;
}

.btn-color-alternative {
	background-color: #be1e2e;
	color:#fff;
	border-radius: 5em !important;
	border: 2px solid #be1e2e !important;
	transition: 0.2s;
}

.btn-color-alternative:hover {
	background-color: rgba(0,0,0,0) !important;
	color: #be1e2e;
	border: 2px solid #be1e2e;
	transition: 0.2s;
}

.product-hvr-icon {
	background-color: #dd4f41;
	border-radius: 5em !important;
	border: 2px solid #fff !important;
	-webkit-transition-duration: 0.2s;
  	transition-duration: 0.2s;
    -webkit-transition-property: color, background-color, border;
  	transition-property: color, background-color, border;
}

.product-hvr-icon:hover {
	background-color: #fff !important;
	color: #dd4f41;
	border: 2px solid #dd4f41 !important;
	-webkit-transition-duration: 0.2s;
  	transition-duration: 0.2s;
    -webkit-transition-property: color, background-color, border;
  	transition-property: color, background-color, border;
}

.product-hvr-icon-active {
	background-color: #fff !important;
	color: #dd4f41;
	border: 2px solid #dd4f41 !important;
	border-radius: 5em !important;
	-webkit-transition-duration: 0.2s;
  	transition-duration: 0.2s;
    -webkit-transition-property: color;
  	transition-property: color;
}

.product-hvr-icon-active:hover {
	color: #be1e2e;
	-webkit-transition-duration: 0.2s;
  	transition-duration: 0.2s;
    -webkit-transition-property: color;
  	transition-property: color;
}

.product-hvr-icon-back {
	color: #dd4f41 !important;
	-webkit-transition-duration: 0.2s;
  	transition-duration: 0.2s;
    -webkit-transition-property: color;
  	transition-property: color;
}

.product-hvr-icon-back:hover {
	color: #fff !important;
	-webkit-transition-duration: 0.2s;
  	transition-duration: 0.2s;
    -webkit-transition-property: color;
  	transition-property: color;
}

.product-hvr-icon-back-active {
	color: #fff !important;
}

.product-hvr-icon-prm {
	background-color: #f15a29;
	border-radius: 5em !important;
	border: 2px solid #fff !important;
	-webkit-transition-duration: 0.2s;
  	transition-duration: 0.2s;
    -webkit-transition-property: color, background-color, border;
  	transition-property: color, background-color, border;
}

.product-hvr-icon-prm:hover {
	background-color: #fff !important;
	color: #f15a29;
	border: 2px solid #f15a29 !important;
	-webkit-transition-duration: 0.2s;
  	transition-duration: 0.2s;
    -webkit-transition-property: color, background-color, border;
  	transition-property: color, background-color, border;
}

.product-hvr-icon-prm-active {
	background-color: #fff !important;
	color: #f15a29;
	border: 2px solid #f15a29 !important;
	border-radius: 5em !important;
	-webkit-transition-duration: 0.2s;
  	transition-duration: 0.2s;
    -webkit-transition-property: color;
  	transition-property: color;
}

.product-hvr-icon-prm-active:hover {
	color: #d84515;
	-webkit-transition-duration: 0.2s;
  	transition-duration: 0.2s;
    -webkit-transition-property: color;
  	transition-property: color;
}

.product-hvr-icon-prm-back {
	color: #f15a29 !important;
	-webkit-transition-duration: 0.2s;
  	transition-duration: 0.2s;
    -webkit-transition-property: color;
  	transition-property: color;
}

.product-hvr-icon-prm-back:hover {
	color: #fff !important;
	-webkit-transition-duration: 0.2s;
  	transition-duration: 0.2s;
    -webkit-transition-property: color;
  	transition-property: color;
}

.product-hvr-icon-prm-back-active { color: #fff !important; }

.history-hvr-icon {
	background-color: #fff;
	color: #878787;
	border-radius: 5em !important;
	border: 2px solid #fff !important;
	-webkit-transition-duration: 0.2s;
  	transition-duration: 0.2s;
    -webkit-transition-property: color, background-color, border;
  	transition-property: color, background-color, border;
}

.history-hvr-icon:hover {
	background-color: #fff !important;
	color: #dd4f41;
	border: 2px solid #dd4f41 !important;
	-webkit-transition-duration: 0.2s;
  	transition-duration: 0.2s;
    -webkit-transition-property: color, background-color, border;
  	transition-property: color, background-color, border;
}

.abt-active { border: 2px solid #dd4f41 !important; color: #dd4f41; }
.abt-active-text { color: #dd4f41; }

/* Team Section */

#close-button path { stroke: white !important; }

.team-member-top {
	border-top-left-radius: 1em;
	border-top-right-radius: 1em;
}

.team-member-bottom {
	border-bottom-left-radius: 1em;
	border-bottom-right-radius: 1em;
}

.team-member-pic {
	width: 100%;
	height: auto;
	max-height: 20vh;
	border-top-right-radius: 1em;
	border-top-left-radius: 1em;
	border-bottom-right-radius: 0em;
	border-bottom-left-radius: 0em;
}

.team-member-email {
	background-color:  #f15a29 ;
	color: #fff;
	border-bottom-left-radius: 1em;
	-webkit-transition-duration: 0.2s;
  	transition-duration: 0.2s;
    -webkit-transition-property: color, background-color;
  	transition-property: color, background-color;
}

.team-member-email:hover {
	background-color: #ed4f1c ;
	-webkit-transition-duration: 0.2s;
  	transition-duration: 0.2s;
    -webkit-transition-property: color, background-color;
  	transition-property: color, background-color;
}

.team-member-linkedin {
	background-color: #125b9b ;
	color: #fff;
	border-bottom-right-radius: 1em;
	border-bottom-left-radius: 1em;
	-webkit-transition-duration: 0.2s;
  	transition-duration: 0.2s;
    -webkit-transition-property: color, background-color;
  	transition-property: color, background-color;
}

.team-member-linkedin:hover {
	background-color: #0c4d87 ;
	-webkit-transition-duration: 0.2s;
  	transition-duration: 0.2s;
    -webkit-transition-property: color, background-color;
  	transition-property: color, background-color;
}

.btn-linkedin {
	position: absolute;
	bottom: 0;
	right: 0;
}
.btn-linkedin .icon-linkedin { width: 30px; height: 30px; }

.close-button {
	height: 3em;
	width: 3em;
	background-color: #f15a29 ;
	border-radius: 100%;
	transform: scale(0.5, 0.5) translate(-1.5em,3em);
	-ms-transform: scale(0.5, 0.5) translate(-1.5em,3em);
	-webkit-transform: scale(0.5, 0.5) translate(-1.5em,3em);
}

.close-button-icon path {
	stroke: #fff !important;
	transform: scale(0.3, 0.3) translate(4.5em,4.2em);
	-ms-transform: scale(0.3, 0.3) translate(4.5em,4.2em);
	-webkit-transform: scale(0.3, 0.3) translate(4.5em,4.2em);
}

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

.toggle-svg {
	width: 100%;
	max-height: 10vh;
}

.toggle-svg path {
	transform: scale(0.2,0.2) translate(-6em,3.8em);
	-ms-transform: scale(0.2,0.2) translate(-6em,3.8em);
	-webkit-transform: scale(0.2,0.2) translate(-6em,3.8em);
}

.toggle-svg circle {
	transform: scale(0.2,0.2) translate(-6em,3.8em);
	-ms-transform: scale(0.2,0.2) translate(-6em,3.8em);
	-webkit-transform: scale(0.2,0.2) translate(-6em,3.8em);
}

.hvr-prm {
	color: inherit;
	-webkit-transition-duration: 0.2s;
  	transition-duration: 0.2s;
    -webkit-transition-property: color;
  	transition-property: color;
}

.hvr-prm:hover {
	color: #f15a29 !important;
	-webkit-transition-duration: 0.2s;
  	transition-duration: 0.2s;
    -webkit-transition-property: color;
  	transition-property: color;
}

.hvr-sec {
	color: inherit;
	-webkit-transition-duration: 0.2s;
  	transition-duration: 0.2s;
    -webkit-transition-property: color;
  	transition-property: color;
}

.hvr-sec:hover {
	color: #dd4f41 !important;
	-webkit-transition-duration: 0.2s;
	transition-duration: 0.2s;
	-webkit-transition-property: color;
	transition-property: color;
}

.logo-landing {
	height: 5vh;
	width: auto;
	/* transform: translate(0,-1.5vh);
	-ms-transform: translate(0,-1.5vh);
	-webkit-transform: translate(0,-1.5vh); */
}

#logo-footer {
	height: 4vh;
	width: auto;
}


#aboutus_container
{
	position: relative;
  	overflow: hidden;
	left:0;
	top:0;
	width: 20em;
	height: 20em;
	border-radius: 4em;
	-webkit-transform: rotate(35deg) translate(5vw,20vh);
	transform: rotate(35deg) translate(5vw,20vh);
	-ms-transform: rotate(35deg) translate(5vw,20vh);
}

#aboutus_container_mobile
{
	position: relative;
  	overflow: hidden;
	left:0;
	top:0;
	width: 15em;
	height: 15em;
	border-radius: 4em;
	-webkit-transform: rotate(35deg) translate(5vw,-20vh);
	transform: rotate(35deg) translate(5vw,-20vh);
	-ms-transform: rotate(35deg) translate(5vw,-20vh);
}

#aboutus_container_ipad
{
	position: relative;
  	overflow: hidden;
	left:0;
	top:0;
	width: 20em;
	height: 20em;
	border-radius: 4em;
	background-color: red;
	-webkit-transform: rotate(35deg) translate(35vw,-20vh);
	transform: rotate(35deg) translate(35vw,-20vh);
	-ms-transform: rotate(35deg) translate(35vw,-20vh);
}

#aboutus_pic
{
	width: 150%;
	height: 200%;
	background-image: url("img/bottom.jpg");
	background-size: cover;
	transform: rotate(-35deg) translate(0,-15vh);
	-ms-transform: rotate(-35deg) translate(0,-15vh);
	-webkit-transform: rotate(-35deg) translate(0,-15vh);
	overflow:hidden;
}

#aboutus_pic_mobile
{
	width: 150%;
	height: 200%;
	background-image: url("img/about-softfinanca.jpg");
	background-size: cover;
	transform: rotate(-35deg) translate(0,-15vh);
	-ms-transform: rotate(-35deg) translate(0,-15vh);
	-webkit-transform: rotate(-35deg) translate(0,-15vh);
	overflow:hidden;
}

#section_0 {
	position: relative;
}

.icon-size { height: 5vh; width: auto; }

.icon-shift {
	transform: translate(0,-1.5vh);
	-webkit-transform: translate(0,-1.5vh);
	-ms-transform: translate(0,-1.5vh);
}

.fa-youtube:hover { color: red; transition: 0.2s; }
.fa-envelope:hover { color: #f15a29; transition: 0.2s; }
.fa-linkedin-in:hover { color: #006699; transition: 0.2s; }
.show-extras { color: #1c1c1c; transition: 0.2s; }
.show-extras:hover { color: #dd4f41; transition: 0.2s; }
.cit_control { color: #777777; }
.cit_control:hover { color: #515151; }
.cit_control_active { color: #f15a29; }
.text-shadow { text-shadow: 1px 1px rgba(255, 255, 255, 1); }
.behind { z-index: 10; }
.infront { z-index: 15; }

/* Team Cards */
.team-card { border-radius: 1em !important; min-height: 100px; position: relative; }

.team-card-icon {
    -webkit-transform: translate(0, -20px);  /* Chrome, Opera 15+, Safari 3.1+  */
    -ms-transform: translate(0, -20px);   /* IE 9 */
	transform: translate(0, -40px);   /* Firefox 16+, IE 10+, Opera  */
}

.team-card-blur {
	position: relative;
	border-radius: 0.5em;
	left: 0;
	top: 0 ;
	background-color: #eaeaea;
  min-width: 100%;
}

.team-card-image {
	min-height: 100px !important;
	max-height: 100px !important;
	border-top-left-radius: 1em;
	border-bottom-right-radius: 1em;
}

.f-blue
{
	color: #006699;
	transition: 0.2s;
}

.f-blue:hover
{
	color: #003b59;
	transition: 0.2s;
}

.team-card-name
{
	font-size: 1em;
}

.team-card-title
{
	font-size: 0.75em;
}

.footer-orange
{
	color: #f15a29;
	transition: 0.2s;
}

.footer-orange:hover
{
	color: #b7431d;
	transition: 0.2s;
}


.footer-blue
{
	color: #006699 !important;
	transition: 0.2s;
}

.footer-blue:hover
{
	color: #003b59 !important;
	transition: 0.2s;
}

.footer-red
{
	color: #dd2525 !important;
	transition: 0.2s;
}

.footer-red:hover
{
	color: #9e1111 !important;
	transition: 0.2s;
}

/* icons */
.icon-youtube, .icon-linkedin, .icon-envelope { width: 45px; height: 45px; border-radius: 50%; margin: 10px; transition: 0.2s; }
nav .icon-youtube, nav .icon-linkedin, nav .icon-envelope { width: 35px; height: 35px; margin: 2px; }
.icon-linkedin { background-color: #006699; }
.icon-linkedin:hover, .icon-linkedin:focus { background-color: #003b59; }
.icon-youtube { background-color: #dd2525; }
.icon-youtube:hover, .icon-youtube:focus { background-color: #9e1111; }
.icon-envelope { background-color: #f15a29; }
.icon-envelope:hover, .icon-envelope:focus { background-color: #b7431d; }
.icon-left, .icon-right { height: 20px; opacity: .5; }
.icon-left:hover,
.icon-left:focus,
.icon-right:hover,
.icon-right:focus { opacity: 1; }
.icon-play { width: 100%; }

/* scroll.js */
[data-scroll] { transition: all 1s; }
[data-scroll="in"] { opacity: 1; transform: translateX(0); }
[data-scroll="out"] { opacity: 0; transform: translateX(-400px); }
@media (max-width: 991px) {
	[data-scroll="in"] { opacity: 1; transform: translateY(0); }
	[data-scroll="out"] { opacity: 0; transform: translateY(400px); }
}

/*  2019 */
/* footer */
.wrapper-footer {
	background-color: #231f20;
	padding: 30px 0;
}
.wrapper-footer article {
	display: grid;
	grid-gap: 1rem;
	grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
	max-width: 83.333333%;
	margin: 0 auto;
}
.btn-team {
	border-top: 1px solid #eaeaea;
	margin-top: 1.5rem;
	text-transform: uppercase;
	display: inline-block;
	padding-top: .5rem;
	font-size: 12px;
	color: #fff!important;
}
.btn-team:hover {
	color: rgb(221, 79, 65)!important;
}
.footer-sponsor a {
	margin-bottom: 1rem;
	display: inline-block;
	text-align: center;
}
.footer-sponsor {
	text-align: left;
	color: #fff;
}
.footer-social {
	text-align: right;
}
.video-wrapper {
	position: absolute;
	width: 100%;
	height: 90vh;
	z-index: -1;
	top: 0;
}
.social-link + .social-link { margin-right: 1rem; margin-left: 0.938rem; }
.wrapper-footer small { font-size: .75rem; }
@media (max-width: 768px) {
	.footer-social { text-align: left; }
	.footer-grid { text-align: left; padding: 0; }
}

/* svg */
#masked{
	mask:url("#mask-layer");
}
#bg {
	position: absolute;
	top: 0;
	right: 0;
	z-index: -1;
	width: 100%;
	height: 100%;
}
.svg-wrapper {
	display: none;
}
.svg-wrapper, #mask-layer, #masked, .mask-rect {
	width: 100%;
	height: 90vh;
}
.mask-rect, #masked  {
	fill: rgba(255,255,255,1);
}

.iframe {
	width: var(--vw);
	height: var(--vh);
}

/* site main wrapper */
.wrapper {
	max-width: 1024px;
	margin: 0 auto;
}

.video-popup {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,.8);
	display: none;
	z-index: 999999;
}

/* video popup */
.btn-close-popup {
	position: absolute;
	border: 0;
	top: 0;
	background-color: transparent;
	padding: 1rem;
	cursor: pointer;
}
.video-popup-wrapper {
	width: 100vw;
	height: 100vh;
	display: flex;
	justify-content: center;
	align-items: center;
}
.video-popup-iframe {
	width: 80vw;
	height: calc(80vw * .5625);
	background-color: #000;
}
.mask-shape {
	transform-origin: calc(100vw - var(--w) / 2) calc(var(--vh) / 2);
	animation: rodaroda 30s infinite linear reverse;
}

.hideMobile {display:block;}
.showMobile {display:none;}

#section_4 .hidden-lg-up .prd-video-overlay .play-button {
	top: 40% !important;
	left: 45% !important;
	right: auto !important;
}

/* video ui */
#video-player
{
	position: fixed;
	top:0;
	left: 0;
	width: 100vw;
	height: 100vh;
	display: flex;
	/* establish flex container */
	flex-direction: column;
	/* make main-axis vertical */
	justify-content: center;
	/* align items vertically, in this case */
	align-items: center;
	/* align items horizontally, in this case */
	background-color: rgba(21,21,21,0.85);
	z-index: 150;
	text-align: center;
}

#vid-container
{
	width: 75%;
	height: auto;
	z-index: 151;
}

#close-video
{
	position: fixed;
	color: white;
	top: 5vh;
	left: 5vw;
}
.prd-video-overlay
{
	position: relative;
}

.prd-video-overlay:hover .video-cover {
  	opacity: 0.5;
  	transition: 0.2s;
}

.prd-video-overlay:hover .play-button {
  	opacity: 1;
  	transition: 0.2s;
    -ms-transform: scale(1.5, 1.5); /* IE 9 */
    -webkit-transform: scale(1.5, 1.5); /* Safari */
    transform: scale(1.5, 1.5);
}

.play-button
{
	position: absolute;
	top: 50%;
  	left: 35%;
  	color: #fff;
  	transition: 0.2s;
}

.text-left .play-button {
	left: 35%;
}

.text-right .play-button{
	left: auto;
	right: 35%;
}

.video-cover
{
	opacity: 0.75;
	transition: 0.2s;
}

.play-button-product
{
	position: absolute;
	top: 35%;
  	left: 45%;
  	transition: 0.2s;
}

.prd-video-overlay:hover .play-button-product {
  	opacity: 1;
  	transition: 0.2s;
    -ms-transform: scale(1.1, 1.1); /* IE 9 */
    -webkit-transform: scale(1.1, 1.1); /* Safari */
    transform: scale(1.1, 1.1);
}

#aboutus_container,
#aboutus_container_ipad,
#aboutus_container_mobile { display: none; }

.svg-header {
	width: 100%;
	max-height: 720px;
	position: absolute;
	top: 0;
	left: 0;
	cursor: pointer;
	z-index: -1;
}

.svg {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}

.rect {
	fill: rgba(255, 255, 255, 1);
}

.svg > rect {
	fill: #ffffff;
	-webkit-mask: url(#mask);
	mask: url(#mask);
}

.video-bg {
	position: absolute;
	width: 100%;
	max-height: 720px;
	top: 0;
	right: 0;
	text-align: right;
	background-color: #000;
}

.video-bg video {
	height: 720px;
}

.svg-bg-mobile {
	display: none;
	position: relative;
	width: 100vw;
	min-height: 90vh;
	overflow: hidden;
}

/* contact form xs */
.contact-modal {
	padding: 1rem 0;
}

.contact-form-xs {
	background-color: #fff;
	padding: 2rem 1rem 0 1rem;
}

.contact-form-xs strong {
	font-weight: bold;
	color: rgb(239, 64, 54);
}

.btn-close-contact-modal {
	border: 0;
	font-size: 2rem;
	background: #fff;
	color: #666;
	cursor: pointer;
}

.btn-close-contact-modal:hover {
	color: rgb(239, 64, 54);
}

/* NEW CONTACT FORM */
.contact-wrapper {
	position: fixed;
	top: 0;
	left: 0;
	bottom: 0;
	overflow: auto;
	width: 100%;
	background-color: rgba(0, 0, 0, .5);
	padding: 1rem;
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 99;
}
.contact-container {
	background-color: #fff;
	max-width: 900px;
	flex: 1;
	border-radius: 1rem;
	overflow: hidden;
	color: #000;
	-webkit-box-shadow: 1px 1px 10px 0px rgba(28,28,28,0.5);
    -moz-box-shadow: 1px 1px 10px 0px rgba(28,28,28,0.5);
    box-shadow: 1px 1px 10px 0px rgba(28,28,28,0.5);
}
.contact-content-container {
	padding: 1.5rem 1rem;
}
.feedback-container {
	text-align: center;
}
.feedback-container button {
	width: 15rem;
}
.icon-feedback {
	width: 8rem;
}
.feedback-text {
	margin: 2rem 0;
	font-size: 1.4rem;
	line-height: 1.3;
}
.debug-scroll {
	width: 2px;
	margin: 0 auto;
	opacity: 0;
	background-color: transparent;
	height: 25vh;
	display: none;
}
.contact-form label { font-weight: bold; color: #dd4f41; }
.contact-form input { height: 38px; }
.contact-form .form-control { background-color: #dadada; }
#contact-form .form-control:focus { border-color: #dd4f41; background-color: #dadada; }
.form-group-textarea { grid-column: span 2; }
.form-title {
	background-color: #dd4f41;
	color: #fff;
	padding: 1rem;
	margin: 0;
	text-align: center;
	border-bottom: 2px solid #5d0000;
}
.form-logo { display: block; text-align: center; margin-top: 1.5rem; }
.form-logo img { max-width: 15.625rem; }
.form-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
	gap: 0 1rem;
}
.flex-buttons {
	display: flex;
	margin-top: 1rem;
	justify-content: flex-end;
}
.flex-buttons button {
	flex: .25;
	font-size: 18px;
	font-weight: 400;
}
.flex-buttons button:first-of-type {
	margin-right: 1rem;
}
.form-control.error {
	border-color: #dd4f41;
}
.contact-form .error {
	line-height: 1;
	margin-top: 5px;
	display: flex;
	align-items: center;
}
.contact-form .error::before {
	line-height: 1;
	content: "";
	width: 15px;
	height: 15px;
	background-image: url('icons/icon-alert.svg');
	background-repeat: no-repeat;
	background-size: contain;
	display: inline-block;
	margin-right: .4rem;
}
.icon-animation {
	animation: 1.5s rodaroda linear infinite;
	opacity: .5;
}
@keyframes rodaroda {
	to { transform: rotate(1turn); }
}
/* END NEW CONTACT FORM */

/* new header */
.header {
	min-height: 90vh;
	width: 85vw;
	margin: 0 auto;
	padding: 1rem 0;
}

.header-wrapper {
	height: 80vh;
	display: grid;
	grid-template-rows: 1fr .5fr 2fr 2fr .5fr;
	align-items: center;
	justify-items: start;
}

.section-mobile {
	min-height: 90vh;
}

.header-mobile {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 20px;
}

.btn-toggle-menu {
	cursor: pointer;
	border: 0;
	padding: 0;
	background-color: transparent;
}

/* .header-wrapper */
.header-title {
	font-weight: 600;
	font-size: 3rem;
	margin: 0;
	align-self: end;
	text-shadow:
   -1px -1px 0 #fff,
    1px -1px 0 #fff,
   -1px  1px 0 #fff,
    1px  1px 0 #fff;
}

/* .header-wrapper */
.header-subtitle {
	font-weight: 600;
	font-size: 1.5rem;
	margin: 0;
	align-self: start;
	margin-top: 2rem;
	text-shadow:
   -1px -1px 0 #fff,
    1px -1px 0 #fff,
   -1px  1px 0 #fff,
    1px  1px 0 #fff;
}
/* .header-wrapper  */
.header-nav {
	display: flex;
	align-self: end;
	justify-content: center;
}

.video-mobile {
	position: relative;
	width: 100vw;
	height: auto;
	min-height: 30vh;
	overflow: hidden;
	margin-bottom: 2rem;
	margin-top: 1rem;
}

.vimeo {
	padding: 56.25% 0 0 0;
	position: relative;
}

.video-mobile > div > iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.announcment-header-wrapper {
	display: flex;
}
.stamp-new {
	position: relative;
}
.stamp-new::after {
	content: "";
	width: 40px;
	height: 40px;
	background-image: url('icons/stamp-color-outline.svg');
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	right: -15px;
	top: -15px;
}

/* ABOUT US */
.btn-vid-institucional {
	padding: 0;
	border: 0;
	background-color: #fff;
	border-radius: 8px;
	max-width: 340px;
	margin-bottom: 1rem;
	overflow: hidden;
	position: relative;
}
.btn-vid-institucional:hover .fake-btn,
.btn-vid-institucional:focus .fake-btn {
	background-color: #dd4f41;
}
.vid-institucional-cover { width: 100%; margin: 0; display: block; }
.fake-btn-wrapper {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: flex;
}
.fake-btn {
	background: rgba(0,0,0,.8);
	border-radius: 5px;
	padding: 19px 30px;
	margin: auto;
	background-image: url('icons/icon-seta.svg');
	background-size: 36%;
	background-repeat: no-repeat;
	background-position: center center;
}

/* @MEDIA QUERIES MOBILE DEVICES */

/* Laptop */
@media (min-width: 1368px) and (max-width: 1440px) {
	.svg {
		left: 25vw;
		height: 102%;
	}
	.video-bg {
		right: -40vw;
	}
	.header-title {
		font-size: 4rem;
	}
	.header-subtitle {
		font-size: 2.25rem;
	}
}

/* iPad Pro */
@media (max-width: 1367px) {
	.svg {
		left: 25vw;
	}
	.video-bg {
		right: -11vw;
	}
}

/* Tablet | iPad | Medium screen devices */
@media (max-width: 1024px) and (orientation: landscape) {
	.svg-header, .header, .svg {
		display: none;
	}
	.svg-bg-mobile {
		display: block;
	}
	.header-mobile {
		padding: 25px;
	}
	.header-title {
		padding-left: 85px;
		padding-right: 85px;
	}
	.header-subtitle {
		font-weight: 400;
		font-size: 2rem;
		padding-left: 85px;
		padding-right: 85px;
		margin-bottom: 4rem;
	}
	.header-nav {
		margin-bottom: 4rem;
	}
}

/* Tablet | iPad Pro */
@media (max-width: 1024px) and (orientation: portrait) {
	.svg-header, .header, .svg {
		display: none;
	}
	.svg-bg-mobile {
		display: block;
		min-height: auto;
	}
	.section-mobile {
		min-height: auto;
	}
	.header-mobile {
		padding: 40px;
	}
	.logo-landing {
		height: 4.5vh;
		width: auto;
	}.video-mobile {
		margin-bottom: 4rem;
	}
	.header-title {
		padding-left: 80px;
		padding-right: 80px;
	}
	.header-subtitle {
		font-weight: 400;
		font-size: 2rem;
		padding-left: 80px;
		padding-right: 80px;
		margin-bottom: 4rem;
	}
	.header-nav {
		justify-content: space-around;
		padding-left: 250px;
		padding-right: 250px;
	}
}

/* iPad | Small screen devices */
@media (max-width: 768px) and (orientation: landscape) {
	.svg-header, .header, .svg {
		display: none;
	}
	.svg-bg-mobile {
		display: block;
	}
	.header-mobile {
		padding: 30px;
	}
	.header-title {
		font-size: 2.75rem;
		padding-left: 30px;
		padding-right: 30px;
		margin-top: 6rem;
	}
	.header-subtitle {
		padding-left: 30px;
		padding-right: 30px;
		margin-bottom: 6rem;
	}
	.header-nav {
		justify-content: space-evenly;
		padding-left: 100px;
		padding-right: 100px;
	}
	.footer-social {
		grid-column: span 2;
		text-align: left;
	}
}

/* iPad | Medium screen devices */
@media (max-width: 768px) and (orientation: portrait) {
	.hidden-md-down {
		display: block !important;
	}
	.header-mobile {
		padding: 20px;
	}
	.logo-landing {
		height: 4vh;
		width: auto;
	}
	.header-title {
		font-size: 2.5rem;
		padding-left: 70px;
		padding-right: 70px;
		margin-top: 3rem;
	}
	.header-subtitle {
		font-size: 1.75rem;
		padding-left: 70px;
		padding-right: 70px;
		margin-bottom: 3rem;
	}
	.header-nav {
		padding-left: 55px;
		padding-right: 55px;
	}
	.footer-social {
		grid-column: span 2;
		text-align: left;
	}
}

/* Small screen devices */
@media (max-width: 415px) and (orientation: portrait) {
	.logo-landing {
		height: 3.25vh;
		width: auto;
	}
	.video-mobile {
		min-height: 20vh;
		margin-bottom: 0;
	}
	.header-title {
		font-size: 2rem;
		padding-left: 45px;
		padding-right: 45px;
		margin-bottom: 2rem;
	}
	.header-subtitle {
		font-size: 1.5rem;
		padding-left: 45px;
		padding-right: 45px;
		margin-bottom: 2rem;
	}
	.header-nav {
		padding-left: 25px;
		padding-right: 25px;
	}
	.wrapper-footer article {
		display: block;
		/* grid-template-columns: 1fr; */
	}
	.footer-social, .footer-sponsor, .footer-address {
		text-align-last: left;
	}
	.contact-wrapper {
		display: block;
		padding: 1rem;
		-webkit-overflow-scrolling: touch;
	}
	.debug-scroll { display: block; }
	.form-group-textarea { grid-column: span 1; }
	.flex-buttons { flex-direction: column; }
	.flex-buttons button { flex: 1; }
	.flex-buttons button:first-of-type { margin: 0 0 1rem 0; }
	.feedback-container button { width: 100%; }

	.announcment-header-wrapper { flex-direction: column; }
}


@media (max-width: 812px) and (orientation: landscape){
	.debug-scroll { display: block; }
	.contact-wrapper {
		display: block;
		padding: 1rem;
		-webkit-overflow-scrolling: touch;
	}
}

/* PT2020 */
.logo-pt2020 {
	width: 100%;
	max-width: 400px;
	display: block;
}

/* a11y */
a:focus,
button:focus {
	outline: 2px dashed rgba(221, 79, 65, 1)!important;
	outline-offset: 2px!important;
}