body,

button, .button {

  font-family: "Spartan", sans-serif;

}
*{

        box-sizing: border-box;

}
.text-dark{
    color:black;
}
.p-relative{
    position: relative
}
.justify-center{
    justify-content:center;
}
.justify-end{
    justify-content: flex-end;
}
.d-inline{
    display: inline-block;
}
.button.d-inline {
    display: inline-block;
    padding-left: 36px !important;
    padding-right: 36px !important;
}
.pointer{
    cursor:pointer;
}
.pt-4 {
    padding-top: 16px !important;
}
.pa-5{
    padding: 25px;
}
.pa-6{
    padding: 35px;
}
.pa-9{
    padding: 50px;
}

.pb-0{
    padding-bottom: 0 !important;
}
.pb-6{
    padding-bottom: 35px;
}
.pb-10{
    padding-bottom: 60px !important;
}
.mt-1 {
    margin-top: 4px !important;
}
.mb-2 {
    margin-bottom: 8px !important;
}
.mb-6 {
    margin-bottom: 24px !important;
}
.mt-8 {
    margin-top: 32px !important;
}
.mt-9 {
    margin-top: 36px !important;
}
.mb-9 {
    margin-bottom: 36px !important;
}
.pl-7 {
    padding-left: 28px !important;
}
.pr-7 {
    padding-right: 28px !important;
}
.mt-4 {
    margin-top: 16px !important;
}
.mt-5 {
    margin-top: 20px !important;
}
.pb-2 {
    padding-bottom: 8px !important;
}
.pb-6 {
    padding-bottom: 24px !important;
}
.pt-6 {
    padding-top: 24px !important;
}
.pt-9 {
    padding-top: 36px !important;
}

.my-2 {
    margin-top: 8px !important;
    margin-bottom: 8px !important;
}
.show-sm{
    display: none;
}
.hide-sm{
    display: block;
}
.d-flex{
    display: flex;
}
.text-h6 {
    font-size: 1.25rem !important;
    font-weight: 700;
    line-height: 2rem;
    letter-spacing: 0.0125em !important;
}
.text-h7 {
    font-weight: 700;

}
.text-body-2 {
    font-size: 0.875rem !important;
    font-weight: 500;
    line-height: 1.25rem;
    letter-spacing: 0.0178571429em !important;
}
.body-2 {
    font-size: 0.875rem !important;
    font-weight: 400;
    letter-spacing: 0.0178571429em !important;
    line-height: 1.25rem;
}
.bold{
    font-weight: 700 !important;
}
.row {
    display: flex;
    flex-wrap: wrap;
    flex: 1 1 auto;
    margin: -12px;
}
.container {
    width: 100%;
    padding: 12px;
    margin-right: auto;
    margin-left: auto;
}
.col-icon{
   width: 100%;
    max-width: 70px;
        max-height: 70px;
}
.col-xl, .col-xl-auto, .col-xl-12, .col-xl-11, .col-xl-10, .col-xl-9, .col-xl-8, .col-xl-7, .col-xl-6, .col-xl-5, .col-xl-4, .col-xl-3, .col-xl-2, .col-xl-1, .col-lg, .col-lg-auto, .col-lg-12, .col-lg-11, .col-lg-10, .col-lg-9, .col-lg-8, .col-lg-7, .col-lg-6, .col-lg-5, .col-lg-4, .col-lg-3, .col-lg-2, .col-lg-1, .col-md, .col-md-auto, .col-md-12, .col-md-11, .col-md-10, .col-md-9, .col-md-8, .col-md-7, .col-md-6, .col-md-5, .col-md-4, .col-md-3, .col-md-2, .col-md-1, .col-sm, .col-sm-auto, .col-sm-12, .col-sm-11, .col-sm-10, .col-sm-9, .col-sm-8, .col-sm-7, .col-sm-6, .col-sm-5, .col-sm-4, .col-sm-3, .col-sm-2, .col-sm-1, .col, .col-auto, .col-12, .col-11, .col-10, .col-9, .col-8, .col-7, .col-6, .col-5, .col-4, .col-3, .col-2, .col-1 {
    width: 100%;
    padding: 12px;
}
.col-12 {
    flex: 0 0 100%;
    max-width: 100%;
}
.col-6 {
    flex: 0 0 50%;
    max-width: 50%;
}
.col-4{
    flex: 0 0 33%;
    max-width: 33%;
}
.w-100{
    width: 100%;
}
.h-100{
    height: 100%;
}

.small-icon{
    width: 26px;
}
.text-center{
    text-align: center;
}
.text-h5 {
    font-size: 1.5rem !important;
    font-weight: 700;
    line-height: 2rem;
    letter-spacing: normal !important;
}
.body-large{
   font-size: 20px !important;
    font-weight: 600;
}

.line-lg{
    line-height: 1.5;
}
.line-xl{
    line-height: 2;
}
.text-right {
    text-align: right !important;
}
.text-justify{
    text-align: justify;
}
.hover-box{
  transition:0.3s all linear;
  justify-content: center;
  min-height: 130px;
}
.hover-box:hover{
  background: red;
  transition:0.3s all linear;
}
.hover-box:hover .hover-title{
opacity: 0;
}
.hover-box .hover-title{
opacity: 1;
position: absolute;
    width: 100%;
    text-align: center;
    left: 0;
    transition:0.3s all linear;
        top: 50%;
    transform: translateY(-50%);
}
.hover-box .hover-content{
opacity: 0;
color:white;
transition:0.3s all linear;
align-self: center;
}
.hover-box:hover *{
    color:white;
}
.hover-box:hover .hover-content{
opacity: 1;

}
.andrew{
    position: absolute;
    top: 20%;
    z-index: 1;
    width: 150px;
    left:0
}
.thomas{
    position: absolute;
    bottom: 8%;
    z-index: 1;
    width: 150px;
    right:0
}
.reverse-profile .andrew{
    position: absolute;
    top: 50%;
    z-index: 1;
    width: 150px;
    right: 0;
    left: auto;
    transform: translateY(-50%);
       
}
.reverse-profile .andrew >div{
    padding-right: 0 !important;
    padding-left: 16px !important;
    text-align: left !important;
     left: 10px;
     position: relative;
}
.reverse-profile .thomas{
     position: absolute;
    bottom: 10px;
    z-index: 1;
    width: 150px;
    right: auto;
    left: 0;
      
}
.reverse-profile .thomas>div{
     padding-left: 0 !important;
    padding-right: 16px !important;
    text-align: right !important;
      right: 10px;
      position: relative;
}
.cookie{
    position: fixed;
    bottom: 0;
    width: 100%;
    z-index: 10000;
    background: #e3010f;
    color: white;
    padding: 15px;
    justify-content: space-between;
    align-items: center;
    line-height: 1.5;
}
.cookie button{
        border: 1px solid #e3010f;
    margin-left: 5px;
    width: 80px;
    color: #ffffff;    
    background-color: #565655;
}
.icon-img{
    max-width:120px;
    width: 100%;
}
.icon-img2{
    width: 100%;
    max-width: 100px;
    max-height: 100px;
}
.icon-img3{
    width: 100%;
    max-width: 70px;
}
.col-6 {
    flex: 0 0 50%;
    max-width: 50%;
}

.mw-3{
        max-width: 350px;
    max-height: 300px;
    width: auto;
}

a {

  text-decoration: none;
    color:red;
}



footer {

  padding: 32px 0px 16px 0px;

  background-color: #565655;

}


footer p,

footer a {

  color: #aaaaaa;

  font-weight: 500;

}

footer .social-sm{
   width: 25px;
    opacity: 1;
    margin-right: 15px;
}
footer .copyright{
        bottom: -16px;
    position: relative;
    padding: 5px;
    font-size: 12px;
    color: #565655;
}
footer p,

footer li {

  line-height: 1.6;

}




footer a:hover {
    color:white;
        font-weight: 600;
}



footer .block-wrapper {

  padding: 0;

}



footer .flex-container {

  margin: 0px 20px;

}

footer img{
    opacity:.5;
}

#footer-upper > .flex-item {

  flex-basis: 20%;

  color: #fff;

}



#footer-upper {

  font-size: 18px;

}



#info-and-contact.flex-container {

  margin: 0px -20px;
flex-direction: column;
}

#footer-upper {
    font-size: 15px;
}
#footer-upper >.flex-item{
    margin-bottom: 10px;
}

#info-and-contact.flex-item {

  flex-basis: 40%;

  flex-grow: 1;

}



.footer-social-logos > li {

  margin-bottom: 8px;

}



.footer-social-logos a {

  color: darkgrey;
display: flex;
    align-items: center;
}



.footer-social-logos i {

  width: 30px;

  text-align: center;

  font-size: 24px;

  margin-right: 20px;

  color: #cecece;

}
.dir-col{
    flex-direction: column;
}


.ripple {

  background-position: center;

  transition: background 0.8s;

}

.ripple:hover {

  background: transparent radial-gradient(circle, transparent 1%, red 1%)

    center/15000%;

}



.ripple.button-green {

  background: transparent radial-gradient(circle, transparent 1%, #00ab48 1%)

    center/15000%;

}



.ripple:active {

  /*background-color: #6eb9f7;*/

  background-size: 100%;

  transition: background 0s;

}



@keyframes ripple {

  to {

    transform: scale(4);

    opacity: 0;

  }

}



.common-wrapper {

  margin: 0px 20px;

}



.block {

  position: relative;

  overflow: hidden;

}



.block-wrapper {

  max-width: 1366px;

  /*padding: 68px 98px;*/
  padding: 68px 50px;

  margin: auto;

}



.block h1 {

  font-size: 36px;

  margin-bottom: 16px;

}



.block h1,

.block h2 {

  font-weight: 700;

}



.block .subheader {

  font-weight: 600;

}



.block header {

  text-align: center;

  margin-bottom: 36px;
z-index: 1000;
    position: relative;
}



.block h2 {

  font-size: 32px;

  margin-bottom: 48px;

}



.subheader {

  font-size: 18px;

  line-height: 1.8;

}

.opa{
    opacity: .7;
}

.button-row {

  display: flex;

}



.button-row .button {

  margin-right: 16px;

}



.button {

  border: 1px solid #e3010f;

  position: relative;

  overflow: hidden;

  color: #e3010f;

  padding: 8px 16px;

  font-weight: 500;

  display: inline-block;

  font-size: 16px;

  cursor: pointer;

  transition: 0.3s;

  background-color: transparent;
  max-width: 100%;

}

.button.disabled{
    filter: grayscale(1);
    opacity: .7;
}


.button-green {

  border: 1px solid #00963f;

  color: #00963f;

}



.button:hover {

  background-color: #e3010f;

  color: white;

}



.button-green:hover {

  background-color: #00963f;

}



.button:focus {

  outline: none;

}



.button.contained {

  background-color: #e3010f;

  color: white;

}
.button.contained:hover {
    font-weight: 700
}


.button-green.contaiend {

  background-color: #00963f;

  color: white;

}



.button.contained:hover {

  color: white;

}



.highlight-yellow {

  padding: 6px;

  background-color: #ffed00;

}



.bg-grey {

  background-color: #f7f5f6;

}



.bg-white {

  background-color: #fff;

}



.bg-red {

  background-color: #e3010f;

}



.bg-orange {

  background-color: #f07c00;

}



.elevated-box {

  box-shadow: 6px 5px 5px #d4d4d4;

  margin: 16px;

}



.elevated-box-content {

  padding: 20px 28px;

}



.elevated-box-header {

  text-align: center;

  font-size: 20px;

  font-weight: 700;

  color: #fff;

  padding: 16px;

}



.elevated-box p {

  font-size: 18px;

  font-weight: 500;

  line-height: 1.8;

}



.icon-block {

  padding: 16px;

}



.icon-block .icon,

.icon-block img {

  width: 100px;

  height: 100px;

}



.icon-block .icon {

  width: 100%;

  margin-bottom: 32px;

}



.icon-block h3,

.icon-block p {

  text-align: center;

}



.icon-block h3 {

  margin-bottom: 16px;

  font-weight: 700;

}



.icon-block p {

  font-size: 14px;

  line-height: 1.3;

  font-weight: 500;

}



.icon path {

  fill: #e3010f;

}



.bold-700 {

  font-weight: 700;

}



.regular-500 {

  font-weight: 600;

}



.italic-500 {

  font-family: "Roboto", sans-serif;

  font-style: italic;

  font-weight: 500;

}



.font-size-14 {

  font-size: 14px;

}



.flex-container {

  display: flex;

  flex-wrap: wrap;

  margin: 0px -16px;

}



.flex-item-container {

  margin: 0 16px;

}



.avatar {

  vertical-align: middle;

  width: 150px;

  height: 150px;

  border-radius: 50%;

}



.logos-container {

  flex-wrap: wrap;

  justify-content: center;

}



.logos-container > div {

  padding: 25px;

}



.box {

  margin: 16px;

}



.box-icon .icon {

      width: 100%;
    max-width: 120px;

  padding: 16px;

  padding: 24px 24px 0px 24px;

}



.box .box-content {

  padding: 0px 24px 24px 24px;

}



.box .box-content p {

  line-height: 1.6;

}



.box .box-header {

  padding: 24px;

}



.box .box-header h3 {

  font-size: 30px;

  font-weight: 800;

  line-height: 1.6;

}



.flex-reverse {

  flex-direction: row-reverse;

}



.flex-basis-25 {

  flex-basis: 25%;

}



.flex-basis-50 {

  flex-basis: 50% !important;

}



.flex-basis-75 {

  flex-basis: 75%;

}



.flex-grow-1 {

  flex-grow: 1;

}



.text-right {

  text-align: right;

}



.justify-content-center {

  justify-content: center;

}



.width-50 {

  width: 50%;

}



.align-self-center {

  align-self: center;

}



.wave {

  position: relative;

  background-color: rgb(247, 245, 246);

  overflow: hidden;

}

.wave::before {

 /* content: "";*/

  display: block;

  position: absolute;

  border-radius: 100% 100% 100% 100%;

  width: 72%;

  height: 255px;

  background-color: #fff;

  right: -23%;

  bottom: -162px;

  clip-path: inset(0% 31% 0px 0%);

}

.wave::after {

 /* content: "";*/

  display: block;

  position: absolute;

  border-radius: 70% 100%;

  width: 100%;

  height: 650px;

  background-color: #f7f5f6;

  left: -26%;

  bottom: -93px;

  clip-path: inset(80% 15% 0px 23%);

  border-bottom: 90px #fff solid;

}



#cover-block.wave {

  overflow-x: clip;

  overflow-y: visible;

}
.center-wave.wave::before {
  z-index: 1;
  bottom: 32%;
}

.center-wave.wave::after {
  bottom: 40%;
}
.split-bg {
  position: absolute;
    height: 100%;
    top: 0;
    left: 0;
    width: 100%;
    background: linear-gradient(to bottom, #f7f5f6 40%, white 40%);
}
.split-bg:before {
  content: "";
      background-image: url(../images/wave1.svg);
width: 100%;
    position: absolute;
    top: -10%;
    height: 100%;
    background-size: 100% 100%;
}
.wave-top .split-top {
  position: absolute;
    height: 100%;
    top:-10vw;
    left: 0;
    width: 100%;
   background-image: url(../images/wave1.svg);
    background-size: 100% auto;
    background-repeat: no-repeat;
}

.first-section{
    margin-top: 88px;
}

.margin-bottom-32 {

  margin-bottom: 32px;

}

input[type=checkbox]:checked+label::before {
  content: url('data:image/svg+xml; utf8, <svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" fill="white" viewBox="0 0 24 24"><path d="M20.285 2l-11.285 11.567-5.286-5.011-3.714 3.716 9 8.728 15-15.285z"/></svg>');
    display: inline-flex;
    position: relative;
    text-align: center;
    height: 27.3px;
    width: 27.3px;
    background-color: red;
    border-radius: 5px;
    font-family: "Montserrat";
    border-radius: 5px;
    border: 1px solid rgb(150 150 150 / 30%);
    justify-content: center;
    align-items: center;
    margin:5px 7px 5px 0
}
input[type=checkbox]:checked{
    display: none
}

input[type="radio"] {
  /*
  display: none;
  */
  position: absolute;
  opacity: 0;
}
input[type="radio"] + *::before {
  content: "";
  display: inline-block;
  vertical-align: bottom;
  position: relative;
  top:0.2rem;
  width: 1.2rem;
  height: 1.2rem;
  margin-right: 0.5rem;
  border-radius: 50%;
  border-style: solid;
  border-width: 0.15rem;
  border-color: gray;
}
input[type="radio"]:checked + * {
  color: red;
}
input[type="radio"]:checked + *::before {
  background: radial-gradient(red 0%, red 40%, transparent 50%, transparent);
  border-color: red;
}
input[type="radio"] + * {
  display: inline-block;
  padding: 0.5rem 1rem;
}


.text-dark-gray {

  color: darkgray;

}



.text-center {

  text-align: center;

}
.radius-50{
    border-radius: 50%;
}
.align-center{
    align-items: center;
}
.text-500{
    font-weight: 500;
}
div.altamira-gdpr-cookie-consent form input{
    display: inline-block !important;
        width: 10px;
}
@media (min-width: 768px){

.col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%;
}

}
@media (min-width: 960px){

.col-md-6 {
    flex: 0 0 50%;
    max-width: 50%;
}
.col-md-3 {
    flex: 0 0 25%;
    max-width: 25%;
}
.col-md-4 {
    flex: 0 0 33%;
    max-width: 33%;
}
.col-md-8 {
    flex: 0 0 67%;
    max-width: 67%;
}
.col-md-9{
    flex: 0 0 75%;
    max-width: 75%;
}
.col-md-50{
    flex: 0 0 20%;
    max-width: 20%;
}
.container {
    max-width: 900px;
}
}

@media (min-width: 1264px){

.v-container {
    max-width: 1185px;
}
.col-lg-3 {
    flex: 0 0 25%;
    max-width: 25%;
}
.col-lg-50{
    flex: 0 0 20%;
    max-width: 20%;
}
}


@media screen and (max-width: 1365px) {

  .block-wrapper {

    padding: 68px 48px;

  }



  #info-and-contact .flex-item {

    flex: 50%;

  }



  footer .flex-item {

    /*flex-basis: 25%;*/

    margin-bottom: 32px;

  }



  footer .flex-container .flex-item:nth-child(1) {

    flex-basis: 100%;

  }

}

@media(min-width: 1024px){
    footer .social-logos-cont{
    justify-content: flex-end;
    display: flex;
}
footer .footer-social-logos{
    width:125px;
}
}

@media screen and (max-width: 1023px) {

  footer .flex-item {

    flex-basis: 50%;

    margin-bottom: 32px;

  }

.first-section{
    margin-top: 60px;
}

  #footer-upper > .flex-item:nth-child(1) {

    flex: 100%;

  }

  #footer-upper > .flex-item:nth-child(2) {

    flex: 0%;

  }

  #footer-upper > .flex-item:last-child {

    flex: 100%;

  }



  .footer-social-logos {

    display: flex;

    justify-content: space-between;

  }



  .footer-social-logos i {

    margin-right: 5px;

  }

}



@media screen and (max-width: 767px) {
    .mt-sm-5{
    margin-top: 20px;
}
.pt-4 {
    padding-top: 9px !important;
}
.pa-5{
    padding: 13px;
}
.pa-6{
    padding: 18px;
}
.pa-9{
    padding: 26px;
}

.pb-10{
    padding-bottom: 30px !important;
}
.mt-1 {
    margin-top: 3px !important;
}
.mb-2 {
    margin-bottom: 5px !important;
}
.mb-6 {
    margin-bottom: 15px !important;
}
.mt-8 {
    margin-top: 18px !important;
}
.mt-9 {
    margin-top: 20px !important;
}
.mb-9 {
    margin-bottom: 20px !important;
}
.pl-7 {
    padding-left: 16px !important;
}
.pr-7 {
    padding-right: 16px !important;
}
.mt-4 {
    margin-top: 9px !important;
}
.mt-5 {
    margin-top: 13px !important;
}
.pb-2 {
    padding-bottom: 5px !important;
}
.pb-6{
    padding-bottom: 16px !important;
}
.pt-6 {
    padding-top: 16px !important;
}
.pt-9 {
    padding-top: 20px !important;
}
  .my-2 {
    margin-top: 4px !important;
    margin-bottom: 4px !important;
}  
    .block header {
    margin-bottom: 20px;

}
  #footer-upper > .flex-item:nth-child(2) {

    flex: 100%;

  }

  #info-and-contact.flex-container {

    margin: 0;

  }

  .footer-social-logos span {

    display: none;

  }
.pa-sm-0{
    padding: 0 !important;
}
.button-row{
        flex-flow: column;
}
.button-row button:nth-of-type(2){
        margin-top:15px
}
.button{
    font-size: 12px;
    padding: 8px;
    width: 100% !important;
}
.hover-box{
    display: block;
    margin: 0;
}
.hover-box br{
    display: none
}
.hover-box .hover-title{
  position: relative;
    text-align: left !important;
    opacity: 1 !important;
    font-size: 17px !important;
    line-height: 1.2;
    transform: unset;
    top: auto;
    margin-bottom: 5px;
    
}
.hover-box .hover-content{
    opacity: 1;
        color: black;
        text-align: left !important;
        font-size: 16px !important;
        line-height: 1.5;
}
.subheader {
    font-size: 17px !important;
    line-height: 1.5;
}
.block h2 {
    font-size: 22px;
    margin-bottom: 25px;
    line-height: 1.5;
}
.block h1 {
    font-size: 25px;
    margin-bottom: 25px;
    line-height: 1.5;
}
.show-sm{
    display: block;
}
.hide-sm{
    display: none;
}
body{
    font-size: 15px
}
.container{
    padding: 0 !important;
}
.text-h5 {
    font-size: 18px !important;
}
.block-wrapper {
    padding: 40px 16px;
}
}



