html { color: #222; font-size: 1em; line-height: 1.4; } ::-moz-selection { background: #b3d4fc; text-shadow: none; } ::selection { background: #b3d4fc; text-shadow: none; }
hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }
audio, canvas, iframe, img, svg, video { vertical-align: middle; } fieldset { border: 0; margin: 0; padding: 0; }
textarea { resize: vertical; } .browserupgrade { margin: 0.2em 0; background: #ccc; color: #000; padding: 0.2em 0; }

/* ==========================================================================
   Author's custom styles #f3523c  #b33c2d
   ========================================================================== */
@font-face {font-family: 'dm_sansmedium';src: url('../font/dmsans-medium-webfont.woff2') format('woff2'),url('../font/dmsans-medium-webfont.woff') format('woff');font-weight: normal;font-style: normal;}
@font-face {font-family: 'dm_sansmedium_italic';src: url('../font/dmsans-mediumitalic-webfont.woff2') format('woff2'),url('../font/dmsans-mediumitalic-webfont.woff') format('woff');font-weight: normal;font-style: normal;}
@font-face {font-family: 'dm_sansregular';src: url('../font/dmsans-regular-webfont.woff2') format('woff2'),url('../font/dmsans-regular-webfont.woff') format('woff');font-weight: normal;font-style: normal;}
@font-face {font-family: 'dm_sansitalic';src: url('../font/dmsans-regularitalic-webfont.woff2') format('woff2'),url('../font/dmsans-regularitalic-webfont.woff') format('woff');font-weight: normal;font-style: normal;}
@font-face {font-family: 'dm_sansbold';src: url('../font/dmsans-bold-webfont.woff2') format('woff2'),url('../font/dmsans-bold-webfont.woff') format('woff');font-weight: normal;font-style: normal;}
@font-face {font-family: 'dm_sansbold_italic';src: url('../font/dmsans-bolditalic-webfont.woff2') format('woff2'),url('../font/dmsans-bolditalic-webfont.woff') format('woff');font-weight: normal;font-style: normal;}


html{-webkit-user-select: none;
    -moz-user-select: none;
    -khtml-user-select: none;
    -ms-user-select:none;-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; margin: 0;}
*,*:before,*:after{ box-sizing: inherit; }
body{font-family: 'dm_sansregular', sans-serif; width: 100vw;overflow-x: hidden!important}
.body{overflow: hidden!important;}
a{text-decoration: none; color: red; cursor: pointer; -webkit-transition: ease-in-out .3s;-moz-transition: ease-in-out .3s;-o-transition: ease-in-out .3s;transition: ease-in-out .3s;}
ul{list-style: none; padding: 0;}

/* ==========================================================================
   ANIMACIONES
   ========================================================================== */

@keyframes hmU {
  0%{transform: rotate(0deg); margin: 0 0 0 5px; transform: translateY(0px); }
  50%{transform: rotate(0deg); margin: 0 0 0 5px; transform: translateY(6px);}
  100%{transform: rotate(45deg);margin-bottom: -4px; margin-top: 6px;width: 100%}}

-webkit-@keyframes hmU {
  0%{transform: rotate(0deg); margin: 0 0 0 5px; transform: translateY(0px); }
  50%{transform: rotate(0deg); margin: 0 0 0 5px; transform: translateY(6px);}
  100%{transform: rotate(45deg);margin-bottom: -4px; margin-top: 6px;width: 100%}}

-moz-@keyframes hmU {
  0%{transform: rotate(0deg); margin: 0 0 0 5px; transform: translateY(0px); }
  50%{transform: rotate(0deg); margin: 0 0 0 5px; transform: translateY(6px);}
  100%{transform: rotate(45deg);margin-bottom: -4px; margin-top: 6px;width: 100%}}

@keyframes hmT {
  0%{transform: rotate(0deg); margin: 0 0 0 5px; transform: translateY(0px); }
  50%{transform: rotate(0deg); margin: 0 0 0 5px; transform: translateY(-6px);}
  100%{transform: rotate(-45deg); margin-top: -12px;;width: 100%}}

-webkit-@keyframes hmT {
  0%{transform: rotate(0deg); margin: 0 0 0 5px; transform: translateY(0px); }
  50%{transform: rotate(0deg); margin: 0 0 0 5px; transform: translateY(-6px);}
  100%{transform: rotate(-45deg); margin-top: -12px;;width: 100%}}

-moz-@keyframes hmT {
  0%{transform: rotate(0deg); margin: 0 0 0 5px; transform: translateY(0px); }
  50%{transform: rotate(0deg); margin: 0 0 0 5px; transform: translateY(-6px);}
  100%{transform: rotate(-45deg); margin-top: -12px;;width: 100%}}


/* ==========================================================================
   ESTILOS DEL TOP 

   .contH{width: 25px; height: 25px; padding-top: 12px;float: right; margin-right: 20px; cursor: pointer}
.hLine1{width: 100%;  margin: 0 0 0 5px; height: 4px; background: #f7b731; border-radius: 50px;}
.hLine2{width: 100%; margin: 4px 0 4px 5px; height: 4px; background: #f7b731; border-radius: 50px;-webkit-transition: ease-in-out .2s;-moz-transition: ease-in-out .2s;-o-transition: ease-in-out .2s;transition: ease-in-out .2s;}
.hLine3{width: 100%; margin: 0 0 0 5px; height: 4px; background: #f7b731; border-radius: 50px;-webkit-transition: ease-in-out .2s;-moz-transition: ease-in-out .2s;-o-transition: ease-in-out .2s;transition: ease-in-out .2s;}
.contH:hover .hLine1,.contH:hover .hLine2,.contH:hover  .hLine3{background:#000}

.hM1{animation: hmU .5s;animation-fill-mode: forwards;-webkit-animation: hmU .5s;-moz-animation: hmU .5s;-webkit-animation-fill-mode: forwards;-moz-animation-fill-mode: forwards;}
.hM2{width: 0%;}
.hM3{animation: hmT .5s;animation-fill-mode: forwards;-webkit-animation: hmT .5s;-moz-animation: hmT .5s;-webkit-animation-fill-mode: forwards;-moz-animation-fill-mode: forwards;}

.menunavA{top: 175px; opacity: 1; height: 75vh}

   ========================================================================== */

.container{cursor: pointer!important; display: block; }
input[type="checkbox"]{display: none}
.hamburger{height: 30px; width: 30px; display: flex;flex-direction: column; justify-content: space-around; }
.hamburger span{display: inline-flex; height: 5px; position: relative;}
.hamburger span::before, .hamburger span::after{content: ''; position: absolute; height: 100%; width: 50%; background: #f7b731;  transition: all ease .2s; margin: auto}
.hamburger span::before{left: 0; background: #f7b731; transform-origin: left; border-top-left-radius: 4px; border-bottom-left-radius: 4px}
.hamburger span::after{right: 0; transform-origin: right; border-top-right-radius: 4px; border-bottom-right-radius: 4px}
.hamburger span:nth-child(2)::before, .hamburger span:nth-child(2)::after{width: 100%; border-radius: 4px; left: 0; right: 0;}
input[type="checkbox"]:checked + label .hamburger span:nth-child(1)::before{transform: translateX(32%) rotate(45deg);background: #000;}
input[type="checkbox"]:checked + label .hamburger span:nth-child(1)::after{transform: translateX(-32%) rotate(-45deg);background: #000;}
input[type="checkbox"]:checked + label .hamburger span:nth-child(2)::before{width: 0}
input[type="checkbox"]:checked + label .hamburger span:nth-child(2)::after{width: 0}
input[type="checkbox"]:checked + label .hamburger span:nth-child(3)::before{transform: translateX(32%) rotate(-45deg);background: #000;}
input[type="checkbox"]:checked + label .hamburger span:nth-child(3)::after{transform: translateX(-32%) rotate(45deg);background: #000;}

.fixed{margin-top: -130px}

header{width: 100vw; position: fixed; top: 0; z-index: 999; box-shadow: 0 0 10px 5px rgba(0,0,0,0.1);   -webkit-transition: ease-in-out .2s;-moz-transition: ease-in-out .2s;-o-transition: ease-in-out .2s;transition: ease-in-out .2s;}
header div.cont{width: 100%; margin: 0 auto; position: relative;}
div.up{ background: #202020; margin: 0; padding: 10px 15%; font-size: 12px; text-align: center; position: relative; z-index: 99}

div.direccion, div.mail, div.tel{width: auto; margin: 5px auto; padding: 0; display: block;}
div.up div.direccion p, div.up div.mail a, div.up div.tel a{margin: 0px auto; padding: 0; width: auto; color: #fff}

div.up div.direccion p::before{background: url(../img/icono-ubicacion.png); background-size: 20px; }
div.up div.mail a::before{background: url(../img/icono-mail.png); background-size: 20px;}
div.up div.tel a::before{background: url(../img/icono-tel.png); background-size: 20px;}

div.up div.direccion p::before, div.up div.mail a::before, div.up div.tel a::before{content: ''; width: 20px; height: 20px; display: inline-block; transform: translateY(6px); margin-right: 5px}

div.down{width: 100%; background: #fff; margin: 0; padding: 0;}
div.cajaTop{width: 100%; display: block; padding: 10px 0; margin: 0 auto; height: 80px; box-shadow: 0 0 5px 0px rgba(0,0,0,0.05)}
div.cajaTop img{width: 130px; float: left; margin-left: 5%}
div.cajaTop .container{float: right; margin-top: 15px;margin-right: 5%}

#menunav{width: 100vw; background: #202020; padding: 0; margin: 0; position: absolute;margin-right: -5%; left: 0 ; z-index: -1; top: -100vw;-webkit-transition: none;-moz-transition: none;-o-transition: none;transition: none;height: 50vh}
#chk1:checked ~ #menunav{top: 210px; height: 100vh;  -webkit-transition: ease-in-out .4s;-moz-transition: ease-in-out .4s;-o-transition: ease-in-out .4s;transition: ease-in-out .4s;}

nav.menunav ul{padding: 0; margin: 0;}
nav.menunav a{text-align: center; display: block;color: #fff; padding: 20px 0; -webkit-transition: ease-in-out .4s;-moz-transition: ease-in-out .4s;-o-transition: ease-in-out .4s;transition: ease-in-out .4s;}
nav.menunav a:hover{background: #f7b731; color: #202020; font-family: 'dm_sansbold';  -webkit-transition: ease-in-out .4s;-moz-transition: ease-in-out .4s;-o-transition: ease-in-out .4s;transition: ease-in-out .4s;}



/* ==========================================================================
   BOTTOM
   ========================================================================== */

#contacto{width: 100%;padding: 50px 0 0}
#contacto h4{font-size: 28px; margin: 0; text-align: center; font-family:  'dm_sansbold'; font-weight: normal;color: #202020}
#contacto p{font-size: 14px; text-align: center; margin: 0px 15% 0;color: #202020}

form{background: #000; padding: 30px 5% 0; margin: 30px 0 0}

.cajaform::-webkit-input-placeholder { color: rgba(0,0,0,0.2); }
.cajaform:-moz-placeholder { /* Firefox 18- */  color: rgba(0,0,0,0.2);}
.cajaform::-moz-placeholder { /* Firefox 19+ */  color: rgba(0,0,0,0.2); }
.cajaform:-ms-input-placeholder { color: rgba(0,0,0,0.2); }
.cajaform:-o-input-placeholder { color: rgba(0,0,0,0.2); }

.cajaform{border: 2px solid #fff;border-radius: 6px; padding: 15px 10px; width: 100%; display: block;; margin-bottom: 10px; font-size: 14px; color: #888888; background: #fff; font-weight: 500; transition: ease-in-out .3s}
.cajaform:hover{ }
.cajaform:focus{box-shadow: 0 0 5px 1px #f7b731; outline: none}
select{width: 95%; background: transparent; border: none;-webkit-appearance: none;-moz-appearance: none;-o-appearance: none;appearance: none;color: #888888;font-weight: 500}
#cajaformSelect{padding: 14px 10px}
#cajaformSelect:hover{box-shadow: 0 0 5px 1px #f7b731; outline: none}
select:focus{-webkit-outline:0 none;-moz-outline:0 none;-o-outline:0 none;outline:0 none}
textarea{max-width: 100%; min-width: 100%; max-height: 75px;min-height: 75px;color: #888888;}


 	#label{display: inline-block;cursor: pointer;color: #FF4136;position: relative;padding: 5px 15px 0px 40px;font-size: 12px;border-radius: 5px;-webkit-transition: all 0.3s ease;-o-transition: all 0.3s ease;transition: all 0.3s ease; margin-bottom: 20px}
  	#label p{padding-bottom: 5px!important; color: #fff; margin: 0}
  	#label p a{color: #f7b731}
 	#label:hover{background: #fff;}
 	#label:hover p, #label:hover p a{color: #202020}
 	#label::before{content: ""; display: inline-block; width: 17px; height: 17px; position: absolute; left: 10px; border-radius: 3px; background: none; border: 3px solid #f7b731;margin-top: 1px}
 	#aviso {display: none;}
 	#aviso:checked + #label::before {display: none; }
 	#aviso:checked + #label {background: #f7b731;color: #fff;padding: 5px 8px 0px!important;}
 	#aviso:checked + #label p, #aviso:checked + #label p a{color: #fff!important;}

 	#aviso{cursor: pointer;}
 	#term{width: 100%; font-size: 14px; color: #333333; margin: 0px 0 0 0; text-align: left;}
 	#term a{color: #808080; text-decoration: underline;}

 	#error{ border-radius: 5px;  text-align: center; color: #d23d3d!important; border: 2px solid #d23d3d; font-weight: 700; padding: 10px 0; margin: 0 0 20px!important ; width: 100%; font-size: 14px; display: none}
 	#enviado{ border-radius: 5px;  text-align: center; color:  #f7b731!important; border: 2px solid  #f7b731; font-weight: 700; padding: 10px 0; margin: 0 0 20px!important ; width: 100%; font-size: 14px; display: none}

 	#btnSubmit{width: 200px; background: #f7b731; padding: 12px 10px; border: 2px solid #f7b731; margin: 0 auto 30px; color: #fff; font-size: 14px; font-weight: 700; border-radius: 50px;transition: ease-in-out .2s; cursor: pointer; display: block}
 	#btnSubmit:hover{background: transparent; color: #f7b731; transform: scale(1.1); width: 230px}
 	#btnSubmit:focus{-webkit-outline:0 none;-moz-outline:0 none;-o-outline:0 none;outline:0 none;}

#mapa{width: 100%; height: 300px}


footer{background: #202020; padding: 30px 0 0}
footer div.cont{width: 90%; margin: 0 auto}
footer div.cont div.infoFoot{width: 100%; text-align: center}
footer div.cont div.infoFoot img{width: 150px; margin: 0 auto}
footer div.cont div.infoFoot p{color: #fff; font-size: 14px; line-height: 1.1em; text-align: justify; padding: auto}

footer div.cont div.links{width: 100%; text-align: center;}
footer div.cont div.links p.tittle{font-size: 18px; color: #f7b731;font-family: 'dm_sansbold'; margin: 20px 0 0 }
footer div.cont div.links a{font-size: 14px; color: #fff; display: block; padding: 10px 0}
footer div.cont div.links a:hover{color:#f7b731 }

footer div.cont div.contactoFoot{width: 100%; text-align: center; padding-bottom: 30px}
footer div.cont div.contactoFoot p.tittle{font-size: 18px; font-family: 'dm_sansbold';color: #f7b731; margin: 20px 0 0}
footer div.cont div.contactoFoot a{font-size: 14px; color: #fff; display: block; padding: 10px 0; margin: 0}
footer div.cont div.contactoFoot a:hover{color:#f7b731 }
footer div.cont div.contactoFoot p{font-size: 14px; color: #fff; display: block; padding: 10px 0; margin: 0}


footer div.derechos{background: #f7b731; padding: 15px 0 }
footer div.derechos .parteUno{color: #202020; text-align: center; width: 100%;}
footer div.derechos .parteUno p{color: #202020; text-align: center; margin: 0}
footer div.derechos .parteUno a{color: #202020; text-align: center; margin: 0; cursor: pointer}
footer div.derechos .parteUno a:hover{opacity: .5}

footer div.derechos .redesFoot{text-align: center; margin: 0 auto}
footer div.derechos .redesFoot a.red-face{content: ''; width: 30px; height: 30px; background: url("../img/icono-facebook-B.png"); background-size: 30px; display: inline-block; margin: 10px }
footer div.derechos .redesFoot a.red-mail{content: ''; width: 30px; height: 30px; background: url("../img/icono-mail-B.png"); background-size: 30px; display: inline-block; margin: 10px }
footer div.derechos .redesFoot a.red-tel{content: ''; width: 30px; height: 30px; background: url("../img/icono-tel-B.png"); background-size: 30px; display: inline-block; margin: 10px }

/* == 768px MEDIA QUERY ========================================================================== */
@media only screen and (min-width:448px){

  #chk1:checked ~ #menunav{top: 190px}
}


div.preloader{position: fixed; z-index: 999999; top: 0; left: 0; width: 100vw; height: 100vh; -webkit-transition: ease-in-out 1s;-moz-transition: ease-in-out 1s;transition: ease-in-out 1s; display: flex; justify-content: center; align-items: center;}
div.preloader img{z-index: 999999; opacity: 1; position: absolute; top: 55%; margin: 0 auto;  -webkit-transition: ease-in-out 1s;-moz-transition: ease-in-out 1s;transition: ease-in-out 1s; }
div.preloader.complete img{z-index: -9; opacity: 0}
div.preloader.complete{z-index: -9999}

div.preloader p{font-size: 3.5em; color: #fff; position: relative; z-index: 999999;  -webkit-transition: ease-in-out 1s;-moz-transition: ease-in-out 1s;transition: ease-in-out 1s;}
div.preloader.complete p{opacity: 0; visibility: hidden;}

div.preloader::before{content: ''; position: absolute; left: 0; width: 50%; height: 100vh; background: #f7b731;-webkit-transition: ease-in-out 1s;-moz-transition: ease-in-out 1s;transition: ease-in-out 1s;}
div.preloader::after{content: ''; position: absolute; right: 0; width: 50%; height: 100vh; background: #f7b731;-webkit-transition: ease-in-out 1s;-moz-transition: ease-in-out 1s;transition: ease-in-out 1s;}

div.preloader.complete::before{left: -50%; opacity: 0}
div.preloader.complete::after{right: -50%; opacity: 0}


div.preloaderA{;background: rgba(255,255,255,1); ;position: fixed; z-index: 999999; top: 0; left: 0; width: 100vw; height: 100vh; -webkit-transition: ease-in-out 1s;-moz-transition: ease-in-out 1s;transition: ease-in-out 1s; display: flex; justify-content: center; align-items: center;}
div.preloaderA.completeA{z-index: -9999; background: rgba(255,255,255,0)}



/* == 768px MEDIA QUERY ========================================================================== */
@media only screen and (min-width:768px){
.fixed{margin-top: -56px}

	.hamburger{display: none;}

div.up{ background: #202020; padding: 10px 5%; font-size: 14px;}

div.direccion, div.mail, div.tel{width: auto; margin: 5px auto; padding: 0; display: inline-block;}
div.up div.direccion p, div.up div.mail a, div.up div.tel a{font-size: 14px;}
div.direccion{float: left;}
div.right{float: right;}
div.mail{margin-right: 25px}

div.up div.direccion p::before{background-size: 20px;}
div.up div.mail a::before{background-size: 20px;}
div.up div.tel a::before{background-size: 20px;}

div.up div.direccion p::before, div.up div.mail a::before, div.up div.tel a::before{width: 20px; height: 20px; transform: translateY(6px); margin-right: 5px}
  
div.cajaTop img{width: 130px; float: left; margin: 0 0 0 5%}
.container{-webkit-transition: none;-moz-transition: none;-o-transition: none;transition: none;}
#menunav{width: auto; margin: 0; z-index: 2; top: 85px;height: auto; background: #fff; left: inherit; right: 5%;-webkit-transition: none;-moz-transition: none;-o-transition: none;transition: none;}
#chk1:checked ~ #menunav{top: 85px;height: auto;-webkit-transition: none;-moz-transition: none;-o-transition: none;transition: none;}

nav.menunav li{display: inline-block;}
nav.menunav a{font-family:  'dm_sansbold' ;color: #202020; background: #fff; display: inline-block; width: auto; padding: 0 20px; -webkit-transition: ease-in-out .4s;-moz-transition: ease-in-out .4s;-o-transition: ease-in-out .4s;transition: ease-in-out .4s;}
nav.menunav li:last-child a{padding-right: 0}
nav.menunav a:hover{background: none; color: #f7b731; }



/* ==========================================================================
   BOTTOM
   ========================================================================== */
	#contacto{padding: 40px 0 0}
	#contacto h4{font-size: 30px; }
#contacto p{font-size: 14px; }
	
form{background: #000; padding: 30px 5% 0; margin: 30px auto -50px; width: 90%; border-radius: 10px; position: relative; z-index: 9}
#mapa{width: 100%; height: 550px; margin-top: -150px; }
	
	#nombre{width: 49%; float: left; }
 	#email{width: 49%; float: right; }
 	#tel{width: 49%; float: left; }
 	#cajaformSelect{width: 49%; float: right; }
	
footer div.cont{width: 90%; margin: 0 auto}
footer div.cont div.infoFoot{width:  55%; float: left; text-align: left}
footer div.cont div.infoFoot img{width: 150px}
footer div.cont div.infoFoot p{font-size: 14px; text-align: justify}

footer div.cont div.links{width:  20%; float: left; padding-left: 10%}
footer div.cont div.links p.tittle{font-size: 18px; margin: 40px 0 0;  text-align: left; padding:0}
footer div.cont div.links a{font-size: 14px; text-align: left}

footer div.cont div.contactoFoot{width:  20%; float: right}
footer div.cont div.contactoFoot p.tittle{font-size: 18px;  margin: 40px 0 0; padding:0}
footer div.cont div.contactoFoot a{font-size: 14px; text-align: left}
footer div.cont div.contactoFoot p{font-size: 14px; text-align: left}


footer div.derechos{background: #f7b731; padding: 15px 0 }
footer div.derechos .parteUno{width: 70%; float: right}
footer div.derechos .redesFoot{width: 30%; float: left; text-align: left; padding-left: 5%}
footer div.derechos .parteUno p{text-align: right; margin-top: 3px; padding-right: 10%}
footer div.derechos .redesFoot a.red-face{ margin: 0 10px }
footer div.derechos .redesFoot a.red-mail{ margin: 0 10px }
footer div.derechos .redesFoot a.red-tel{ margin: 0 10px }
}

/* == 1024px MEDIA QUERY ========================================================================== */
@media only screen and (min-width:1024px){

div.up{ background: #202020; padding: 10px 10%; font-size: 14px;}
div.cajaTop img{margin: 0 0 0 10%}
#menunav{right: 10%;}
nav.menunav a{font-size: 18px!important}

	/* ==========================================================================
   BOTTOM
   ========================================================================== */
#contacto h4{font-size: 30px; }
#contacto p{font-size: 14px; }	
form{width: 80%;  padding: 2% 3% 0;}

	
	footer div.cont{width: 80%; margin: 0 auto}

}

/* == 1280px MEDIA QUERY ========================================================================== */
@media only screen and (min-width:1280px){

div.up{ background: #202020; padding: 10px 12%; font-size: 14px;}
div.cajaTop img{margin: 0 0 0 12%}
#menunav{right: 12%;}

#contacto h4{font-size: 30px; }
#contacto p{font-size: 16px; }	
	form{width: 60%}
	
	
footer div.cont{width: 76%; margin: 0 auto}
footer div.cont div.infoFoot{width:  60%; float: left; text-align: left}
footer div.cont div.infoFoot img{width: 150px}
footer div.cont div.infoFoot p{font-size: 16px; text-align: justify}

footer div.cont div.links{width:  20%; float: left; margin-left: 0%; padding-left: 5%}
footer div.cont div.links p.tittle{font-size: 18px; margin: 40px 0 0;  text-align: left; padding:0}
footer div.cont div.links a{font-size: 16px; text-align: left}

footer div.cont div.contactoFoot{width:  20%; float: right; }
footer div.cont div.contactoFoot p.tittle{font-size: 18px;  margin: 40px 0 0; padding:0}
footer div.cont div.contactoFoot a{font-size: 16px; text-align: left}
footer div.cont div.contactoFoot p{font-size: 16px; text-align: left}
	
}

/* == 1600px MEDIA QUERY ========================================================================== */
@media only screen and (min-width:1600px){
	#contacto{padding: 40px 0 0}
	#contacto h4{font-size: 30px; }
#contacto p{font-size: 18px; }

}



/* ==========================================================================
   Helper classes
   ========================================================================== */

.hidden{display:none!important}.visuallyhidden{border:0;clip:rect(0 0 0 0);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}
.visuallyhidden.focusable:active,.visuallyhidden.focusable:focus{clip:auto;-webkit-clip-path:none;clip-path:none;height:auto;margin:0;overflow:visible;position:static;width:auto;white-space:inherit}.invisible{visibility:hidden}
.clearfix:before,.clearfix:after{content:" ";display:table}.clearfix:after{clear:both}@media print{*,:before,:after{background:transparent!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}
a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="#"]:after,a[href^="javascript:"]:after{content:""}pre{white-space:pre-wrap!important}
pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}}
