/* flex center */
#cc-banner,
button,a.button,input[type=submit],
.header>div>div,
.menu>div>div,.menu>div>div:first-of-type>a,
.content .merchant a,
.footer .social,.subfooter>*
{justify-content:center;align-items:center}
/* cc banner */
#cc-banner.show{display:flex}
#cc-banner{
  position:fixed;
  display:none;
  z-index:4;
  bottom:0;
  width:100vw;
  padding:30px;
  background:#000000b9;
}
#cc-banner>p{color:white}
#cc-banner>p>a{color:var(--yellow);text-decoration:underline}
#cc-banner>button{margin-left:15px;color:var(--gray-dark);background:var(--yellow)}
#cc-banner>button:hover{background:white}
/* button, a.button */
button,a.button,input[type=submit]{
  display:inline-flex;
  padding:15px 30px;
  border:solid 2px white;
  border-radius:3px;
  font-weight:bold;
  background:var(--gray-dark);
  color:white;
  box-shadow:var(--shadow);
}
button>img,a.button>img{
  margin-right:6px;
}
button:hover,a.button:hover,input[type=submit]:hover{
  background:var(--gray);
}
/* header */
header{
  position:fixed;
  z-index:3;
  width:100%;
  overflow:hidden;
  background:white;
  box-shadow:var(--shadow-strong);
}
.header,.header>div,.header>div>div{
  display:flex;
}
.header{
  justify-content:space-between;
  align-items:center;
  margin-top:30px;
  margin-bottom:60px;
}
.header>a{
  position:relative;
  width:300px;
  height:78px;
}
.header>a>img{
  position:absolute;
}
.header>a>img:first-of-type{
  left:0;
}
.header>a>img:last-of-type{
  left:57px;
  top:44px;
}
.header>div>div{
  margin-left:30px;
  padding-left:30px;
  border-left:solid 1px var(--gray-light);
}
.header>div>div>img{
  margin-right:15px;
}
/* menu */
.menu{
  position:fixed;
  z-index:3;
  max-width:max-content;
  max-width:intrinsic;
  top:129px;
  padding:0;
  border:solid 6px white;
  border-radius:3px;
  background:var(--gray-dark);
}
.menu p{
  color:white;
}
.menu>img{
  position:absolute;
  display:none;
  top:0;
  right:0;
  width:71px;
  height:66px;
  padding:15px;
  cursor:pointer;
}
.menu>img:hover{
  background:var(--gray);
}
.menu>img.open+div>div,.menu div,.menu>div>div:first-of-type>a{
  display:flex;
}
.menu>div>div{
  position:relative;
  padding:15px;
  cursor:pointer;
}
.menu>div>div:first-of-type{
  width:66px;
  height:66px;
}
.menu>div>div>img{
  margin-left:4px;
}
.menu>div>div.active{
  background:var(--yellow);
  color:var(--gray-dark);
}
.menu>div>div:not(.active):hover{
  background:var(--gray);
}
.menu>div>div:hover div{
  display:block;
}
.menu>div>div>div{
  display:none;
}
.menu>div>div>div{
  position:absolute;
  top:66px;
  left:-6px;
  border:solid 6px white;
  border-top:none;
  background:var(--gray);
}
.menu>div>div>div>a>p{
  padding:11px 15px;
}
.menu>div>div>div>a:hover p{
  background:var(--yellow);
  color:var(--gray-dark);
}
/* carousel */
.carousel,
.carousel>div,
.carousel>div>div{
  position:relative;
}
.carousel,.carousel>*{
  display:flex;
}
.carousel,.carousel>div{
  width:100%;
}
.carousel{
  z-index:2;
  height:440px;
  min-height:440px;
  overflow:hidden;
  border-bottom:solid 6px white;
  box-shadow:var(--shadow);
}
.carousel>div{
  left:0%;
  -webkit-transition:left 1s ease-in-out;
  -o-transition:left 1s ease-in-out;
  -moz-transition:left 1s ease-in-out;
  transition:left 1s ease-in-out;
}
.carousel>div>div{
  flex-shrink:0;
  width:100%;
}
.carousel>div>div>img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.carousel>ul{
  position:absolute;
  bottom:15px;
  left:50%;
  transform:translateX(-50%);
}
.carousel>ul>li{
  width:10px;
  height:10px;
  margin:4px;
  border:solid 1px white;
  border-radius:100px;
  cursor:pointer;
}
.carousel>ul>li.carousel-active{
  background:white;
}
/* intro */
.intro,.intro>.poster{
  display:flex;
}
.intro{
  z-index:2;
  position:absolute;
  justify-content:space-around;
  align-items:center;
  top:var(--spacer-height);
  height:440px;
  overflow:hidden;
}
.intro>.poster{
  position:relative;
  flex-direction:column;
  min-width:440px;
  height:326px;
  margin-top:30px;
  padding:30px;
  justify-content:space-between;
  background:var(--gray-dark-limpid);
}
.intro>.poster *{
  color:white;
  text-shadow:1px 2px 4px #00000075;
}
.intro>.poster .phone-text{
  display:flex;
  align-items:center;
}
.intro>.poster .phone-text img{
  margin-right:10px;
}
.intro>.poster h2{
  color:var(--yellow);
}
.intro>.poster p{
  margin-top:15px;
  margin-bottom:15px;
}
.intro>.poster .seal{
  position:absolute;
  right:-30px;
}
.intro>.poster:last-child{
  display:none;
  width:100%;
  padding:15px;
}
.intro>.poster:last-child h2{
  font-size:22px;
}
.intro>.poster:last-child a:last-of-type{
  margin-top:15px;
}
/* content */
.content{
  padding-bottom:30px;
  background:white;
  box-shadow:var(--shadow);
}
.content .content-header{
  display:flex;
  align-items:center;
  margin-bottom:30px;
  padding-top:50px;
  border-bottom:solid 2px var(--yellow);
}
.content .content-header img{
  margin-right:10px;
}
.content .content-line{
  width:100%;
  height:2px;
  background:var(--yellow);
  margin-top:30px;
  margin-bottom:30px;
}
.content h2{
  margin-top:30px;
  margin-bottom:15px;
}
.content video,.content p img{
  border:solid 6px white;
  border-radius:3px;
  box-shadow:var(--shadow-light);
}
.content video{
  width:100%;
}
.content p{
  display:inline-block;
  text-align:justify;
}
.content p img{
  max-width:512px;
  margin:0 15px 15px 0;
  float:left;
}
.content p img.right{
  float:right;
  margin:0 0 15px 15px;
}
.content button,
.content a.button,
.content input[type=submit]{
  margin-top:15px;
}
/* content merchant */
.content .merchant{
  display:inline-table;
}
.content .merchant a{
  display:inline-flex;
  flex-direction:column;
  width:25%;
  min-width:192px;
  height:100px;
}
.content .merchant a:hover img{
  opacity:.5;
}
/* content contact */
.content form#contact{
  display:grid;
}
.content form#contact>label{
  height:0;
  overflow:hidden;
  z-index:-1;
}
.content form#contact input,
.content form#contact textarea{
  margin-bottom:15px;
  padding:15px;
  border:solid 1px var(--gray);
  border-radius:2px;
  resize:none;
}
.content form#contact input:not([type=submit]),
.content form#contact textarea{
  background:#f3f3f3;
}
.content form#contact input{
  max-width:480px;
}
.content form#contact input[type=submit]{
  border:solid 2px white;
}
/* footer */
footer{
  z-index:1;
  width:100%;
  border-top:solid 6px white;
  background:var(--gray);
  box-shadow:var(--shadow-strong);
}
footer *{
  color:white;
}
.footer,.footer p span,.subfooter>*{
  display:flex;
}
.footer{
  justify-content:space-between;
  padding-top:60px;
  padding-bottom:60px;
}
.footer h2{
  font-weight:normal;
  margin-bottom:15px;
  color:var(--yellow);
}
.footer p span{
  align-items:center;
}
.footer p span img{
  margin:0 6px 3px 0;
}
.footer .social{
  display:inline-flex;
  width:32px;
  height:32px;
  margin-right:10px;
  border:solid 1px white;
  border-radius:100px;

}
.footer .social:hover{
  background:#ffffff25;
}
.subfooter *{
  color:lightgray;
  text-align:center;
}
.subfooter{
  max-width:100%;
  padding-top:30px;
  padding-bottom:30px;
  background:var(--gray-dark);
}
.subfooter h3{
  text-decoration:underline;
}
.subfooter h3:hover{
  color:white;
}
.subfooter>*{
  margin-bottom:4px;
}
.subfooter>span a{
  margin:15px;
  margin-top:0;
}
.subfooter>div>p>a{
  text-decoration:underline;
}
/* --------------------------- */
.content.container:not(.news):not(.email)>a:first-of-type{
  display:none;
}
a.button.button-up{
  z-index:2;
  position:fixed;
  right:30px;
  bottom:30px;
  background:var(--yellow);
  opacity:0;
  -webkit-transition:opacity.3s;
  -o-transition:opacity.3s;
  -moz-transition:opacity.3s;
  transition:opacity.3s;
}
a.button.button-up>p{
  color:var(--gray-dark);
}
a.button.button-up:hover{
  opacity:1!important;
}
/* responsive */
@media(min-width:1280px){
  .menu>div{
    height:66px;
  }
  .menu>div>div:last-of-type>div{
    left:initial;
    right:-6px;
  }
}
@media(max-width:1279px){
  .menu{
    left:30px;
  }
  .menu>img{
    display:block;
  }
  .menu>div{
    flex-direction:column;
    width:137px;
  }
  .menu>div>div{
    display:none;
    height:44px;
  }
  .menu>div>div:first-of-type{
    display:flex;
  }
  .menu>div>div>div{
    top:-6px;
    left:100%;
    border:solid 6px white;
    border-left:none;
  }
  .menu>div>div:nth-child(6)>div{top:-108px}
  .menu>div>div:nth-child(7)>div{top:-152px}
  .menu>div>div:nth-child(8)>div{top:-93px}
  .menu>div>div:nth-child(9)>div{top:-55px}
  .menu>div>div:nth-child(10)>div{top:-81px}
  .menu>div>div:nth-child(11)>div{top:-410px}
}
@media(max-width:1199px){
  .header>a>img:last-of-type{
    margin-top:6px;
    width:182px;
    height:25px;
  }
  .header>div>div{
    margin-left:15px;
    padding:0;
    border:none;
  }
  .intro{
    justify-content:space-between;
  }
}
@media(max-width:991px){
  .header{
    max-width:100%;
  }
  .header *{
    font-size:12px;
  }
  .header>div>div>img{
    margin-right:4px;
  }
  .intro{
    max-width:100%;
    justify-content:space-evenly;
  }
  .intro>div.poster{
    min-width:272px;
  }
  .intro>div.poster h2{
    font-size:22px;
  }
  .intro>div.poster .seal{
    top:-66px;
    width:112px;
    height:112px;
  }
  .footer{
    flex-direction:column;
  }
  .footer>div:not(:nth-child(4)){
    margin-bottom:40px;
  }
  a.button.button-up{
    padding:15px;
  }
  a.button.button-up>img{
    margin-right:0;
  }
  a.button.button-up>p{
    display:none;
  }
}
@media(max-width:767px){
  .header>a>img:last-of-type{
    visibility:hidden;
  }
  .header>div>div{
    align-items:flex-start;
  }
  .header>div>div>img{
    display:none;
  }
  .intro>.poster{
    display:none;
  }
  .intro>.poster:last-child{
    display:flex;
  }
  .intro>div.poster .seal{
    top:15px;
  }
  .content h1{
    font-size:26px;
  }
  .content h2{
    font-size:16px;
  }
  .content .content-header img{
   width:25px;
   height:25px;
  }
  .content .content-header img.bvt{
    width:49px;
    height:49px;
  }
  .content .content-line.bvt{
    margin-top:-9px;
  }
  .content p img{
    width:100%;
    height:auto;
  }
  .content a.button{
    width:100%;
  }
}
@media(max-width:591px){
  .content .merchant a{
    min-width:172px;
  }
  .content form#contact input,
  .content form#contact textarea,
  .content form#contact input[type=submit]{
    width:100%;
    min-width:100%;
  }
}
@media(max-height:469px){
  div.spacer{
    height:99px;
  }
  .intro{
    top:99px;
  }
}