/***********
 * FUENTES *
 ***********/
@font-face  {
    font-family:MinionPro;
    src: url('fuentes/MinionProRegular.otf')  format('opentype'); 					/* Safari, Android, iOS */
}
@font-face  {
   font-family:ArialNarrow;
   src: url('fuentes/ARIALN.TTF')  format('truetype');
}
@font-face  {
   font-family:BebasNeue;
    src: url('fuentes/BebasNeue.otf')  format('opentype');
}
@font-face  {
   font-family:BigNoodleTitling;
   src: url('fuentes/bigNoodleTitling.ttf')  format('truetype');

}
@font-face  {
   font-family:DINProBold;
   src: url('fuentes/DINProBold.ttf')  format('truetype');
}
@font-face  {
   font-family:DINProMedium;
   src: url('fuentes/DINProMedium.ttf')  format('truetype');
}

@font-face  {
  font-family:MadeTommyBold;
  src: url('fuentes/MadeTommyBold.otf')  format('truetype');
}

@font-face  {
  font-family:CanterBold;
  src: url('fuentes/CanterBold.otf')  format('truetype');
}

@font-face {
  font-family: CaviarDreams;
  src: url('fuentes/CaviarDreams.ttf') format('truetype');
}

@font-face {
  font-family: CaviarDreams_Bold;
  src: url('fuentes/CaviarDreams_Bold.ttf') format('truetype');
}


/********
 * Variables *
 ********/
:root {
  --minimoPantalla: 800px; /*Ancho minimo de pantalla para el diseño responsiv*/
  --alturaPie: 130px; /*altura del pie de la pagina*/
  --anchoLogosPie: 85px; /*Ancho de los logos de la xunta galicia puerto ... en el pie de la pagina y en la cabecera*/
  --anchoImgXunta: calc((var(--anchoLogosPie) + 25px) * 4); /*Suma del Ancho de las imagenes de puerto xunta galicia xacobeo*/
  --anchoMenuVertical: 250px;
  --margenLeftMenuVertical: 40px;
  --margenTopMenuVertical: 40px;
  --colorGris: #6b7084;
  --colorGrisClaro:#a4c1c6;
  --colorAmarillo: #e8d710;
  --colorAzul: #6fa0c9;
  --colorAzulOscuro: #0092c2;
  --colorNaranja: #d59340;
  --colorNaranjaClaro: #daaa5c;
}


/********
 * TAGS *
 ********/
html{
    height: 100%;
}

body {
  margin:0;
  min-height: 100%;
  min-width: 410px;
  display: flex;
  justify-content:space-between;
  flex-direction: column;
	width:100%;
  font-family: CaviarDreams, Arial, Helvetica, sans-serif;
  font-size:11pt;
  font-weight: 400;
  letter-spacing: 0.1em;
	text-align:left;
	color:#000; background-color: var(--colorNaranja);
  line-height: 1.3em;
}

h1,h2,h3,h4,h5,h6 { margin:0; padding:0; font-weight:normal; line-height: 1em;}
h1 { font-size:2.8em; padding-top:65px; }
h2 { font-family: CaviarDreams_Bold, Arial, Helvetica, sans-serif; font-weight: 900; font-size: 1.5em; color: #000;  }
h2>spam{ color:#000}
h2.tituloSeccion {
  position: absolute;
  display:block;
  right: 0;
  width: 80%;
  margin: -120px 0 0 0;
  padding:25px;
  text-align: left;
  background-color:#231f20;
  font-family: CaviarDreams_Bold, Arial, Helvetica, sans-serif;
  font-weight: 900;
  font-size: clamp(14px, 3.5vw, 48px);
  color: #FFF;
  letter-spacing: clamp(0.05em, 0.2vw, 0.3em);
  text-transform:uppercase;
  word-wrap: break-word;
  overflow-wrap: break-word;
  -webkit-box-shadow: 0px 0px 11px 5px rgba(255, 255, 255, 0.3);
  -moz-box-shadow: 0px 0px 11px 5px rgba(255, 255, 255, 0.3);
  box-shadow: 0px 0px 11px 5px rgba(255, 255, 255, 0.3);
  text-shadow: 0 0 0.2em #fff;
 }
h2.rotulo { padding:25px; color:#000; text-transform:uppercase; }
h3 { font-size:1em; }
h4 { font-size:1.2em; color: #000;}
h4.subtitulo1 { padding:5px 40px 3px 10px; color:#000; text-align:left; text-transform:uppercase; font-weight:600;}
h4.subtitulo2 { padding:0px 40px 3px 0px; text-align:left; font-family: CaviarDreams_Bold, Arial, Helvetica, sans-serif; font-weight: 900; text-transform:uppercase; letter-spacing: .15em; }
.card-divider>h4 { margin:.5rem 0 1rem 0; }
h5 { font-size:1em; }
h6 { font-size:0.9em; }
img { border:0; }
a, a:visited { font-weight:bold; text-decoration:none; color:#000; cursor:pointer; font-family: CaviarDreams_Bold, Arial, Helvetica, sans-serif; }
a:hover { color: #000; }
a.on { color:#000; font-weight:800; }
b, strong { font-family: CaviarDreams_Bold, Arial, Helvetica, sans-serif; font-weight: 900; }
p { margin:4px 0 4px 10px; padding:2px 0 2px 0; font-size:1em; text-align:left; line-height: 1.3em;}
p.justificado { text-align:justify; }
ol{margin: 0; padding:0 0 0 18px;}
ul { margin:0 0 0 36px; padding:0 0 0 0; list-style:disc; text-align:left; line-height: 1.2em; }
ul ul {  margin:0 0 0 20px; padding:0 0 0 0; list-style:circle; text-align:left; }
input, textarea { width:350px; margin:0; padding:3px; }
#botonpaypal{ width: 150px;}
select {width:358px; padding:3px;}
sup{line-height: 0.1em;}

.negrita { font-family: CaviarDreams_Bold, Arial, Helvetica, sans-serif; font-weight: 900; }
.cursiva { font-style:italic; }
.pequena { font-size:0.9em; }
.muy_pequena { font-size:0.8em; }

/*******
 * WEB *
 *******/
/*** colores ***/
.blanco { color:#000;}
.azulCeleste {color: #bfdfe5;}
.azulClaro { color:#7faab3;}
.turquesa { color:#00958f;}
.verde { color:#003741;}
.negro {color:#000;}
.azul {color:#094866;}
.morado { color:#91487B;}
.bgTurquesa{background-color:#b6c7b8;}




/*** estados ***/
.visible { display:block; visibility:visible; }
.oculto { visibility:hidden; }

/*** efectos ***/
.sombra{
    -webkit-box-shadow: inset 0px 18px 47px -16px rgba(0,0,0,0.58);
    -moz-box-shadow: inset 0px 18px 47px -16px rgba(0,0,0,0.58);
    box-shadow: inset 0px 18px 47px -16px rgba(0,0,0,0.58);}


/*** Alineaciones para contenedores. ***/
.bottomCenter { margin:auto auto 0px auto; vertical-align:text-bottom; text-align:center; }
.bottomLeft { margin:auto auto 0px 0px; vertical-align:text-bottom; text-align:left; }
.bottomRight { margin:auto 0px 0px auto; vertical-align:text-bottom; text-align:right; }
.middleCenter { margin:auto; vertical-align:middle; text-align:center;}
.middleLeft { margin:auto auto auto 0px; vertical-align:middle; text-align:left; }
.middleRight { margin:auto auto auto 0px; vertical-align:middle; text-align:right;}
.topCenter { margin:0px auto auto auto; vertical-align:top; text-align:center; }
.topLeft { margin:0px auto auto 0px; vertical-align:top; text-align:left; }
.topRight { margin:0px 0px auto auto; vertical-align:top; text-align:right; }

.flotarIzq { float:left; }
.flotarDer { float:right; }
.flotarLimpio { clear:both; }

.panelTabla { display:table;  border-collapse: collapse; position:relative; }
.panelFila { display:table-row; border-collapse: collapse; position:relative; }
.panelCelda { display:table-cell; border-collapse: collapse; position:relative; }

/***************
 * OBJETOS E IDS
 ***************/
/*** estructura ***/

#contenido {
  position: relative;
  top: 0px;
  width: 100%;
  padding: 80px 0 0 0;
  background-color: #dbac5c;
  box-sizing: border-box;
}
#contenido p{margin: 0px; padding: 0 0 20px 0;}
#contenido>div{display: block; position: relative;}
.marcador {
  flex-shrink: 0;
  width: 50px;
  height: 50px;
  margin-left: -12px;
  border: 8px solid;
  background: transparent;
  border-radius: 50%;
  box-sizing: border-box;
}

.marcador.bgNegro {
  border-color: #231f20;
}

.marcador.bgBeige {
  border-color: #dbeed8;
}



/*** cabecera ***/
#cabecera {
  width: 100%;
  box-sizing: border-box;
}

/*** imagenes cabecera ***/
#imagenesCabecera{display: flex; align-items: center; justify-content:space-evenly; flex-wrap: wrap-reverse; margin: 0 0 20px 0px;}
#ganador{display: flex; flex-direction: column; align-items: center; justify-content:center;}
#ganador a {
  display: flex;
  align-items: center;
  justify-content: center;
}
#imgGanador {
  z-index: 1;
  width: 280px;
  margin-top: 50px;
  cursor: default;
  -webkit-box-shadow: 0px 0px 11px 5px rgba(255, 255, 255, 0.3);
  -moz-box-shadow: 0px 0px 11px 5px rgba(255, 255, 255, 0.3);
  box-shadow: 0px 0px 11px 5px rgba(255, 255, 255, 0.3);
}
#imgCartel {z-index:1;  width: 660px; margin: 50px 0;}
#imagenesCabeceraDerecha {display: flex; align-items: center; flex-direction: column; margin: 0 0 0 0;}
#tituloGanador {
	display: block;
	padding: 15px 20px 5px 20px;
	text-align: center;
	font-family: CaviarDreams, Arial, Helvetica, sans-serif;
	font-weight: 400;
	letter-spacing: -0.03em;
	line-height: 1.3em;
	color: #231f20;
	font-size: 0.832em;
	margin: 0;
	max-width: 100%;
	word-wrap: break-word;
}

#tituloGanador b {
	font-family: CaviarDreams_Bold, Arial, Helvetica, sans-serif;
	font-weight: 900;
}

@media only screen and (max-width: 1100px) {
  #tituloGanador {
     font-size: 1.1em;
     padding: 10px 15px 5px 15px;
  }
}

#contenidoCabecera {
  display: block;
  padding:calc(var(--margenTopMenuVertical) - 20px) 40px 60px calc(var(--anchoMenuVertical) + var(--margenLeftMenuVertical) + 20px);
  margin: calc(-350px - var(--margenTopMenuVertical))  0 0 0;
  min-height: 300px;
  background-color: #d59340;
}

#contenidoCabecera *{
  list-style-type: none;
}

#contenidoCabecera ul{
  list-style-type: disc;
  margin: 0 0 0 36px;
  padding: 0;
}

#contenidoCabecera li{
  list-style-type: disc;
}

#contenidoCabecera p{
  text-align: justify;
}

#contenidoCabecera h4{
  text-align: center;
}

#contenidoCabecera h4.subtitulo1{
  text-align: left;
}

#contenidoCabecera form *{
  text-align: left;
}

/*** enlaces cabecera ***/
#enlacesCabecera{
  position:absolute;
  top:0;
  right:0;
  padding:20px;
  z-index: 1;
}

#enlacesCabecera>a{
  display: block;
  font-size: 0.6em;
}

#enlacesCabecera>a:nth-child(1){
  color:#000;
}
#enlacesCabecera>a:nth-child(2){
  color:#000;
}

#enlacesCabecera>a:nth-child(1):hover{
  color:#000;
}
#enlacesCabecera>a:nth-child(2):hover{
  color:#000;
}

/*** menu item visita virtual ***/
#menu li.menuVisitaVirtual h2 > a {
  position: relative;
  top: -10px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 6px 18px;
  background-color: #f0d690;
  border: 2px solid #231f20;
  border-radius: 40px;
  color: #231f20 !important;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
  transition: background-color 0.2s ease, box-shadow 0.2s ease;
}
#cabecera:not(.no-index) #menu li.menuVisitaVirtual h2:hover {
  margin-bottom: 15px;
}
#menu li.menuVisitaVirtual h2 > a:hover {
  background-color: #f6e3b2;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25);
}
#menu li.menuVisitaVirtual h2 > a::after {
  display: none;
}
#menu li.menuVisitaVirtual .iconoVisitaVirtual {
  display: block;
  width: 28px;
  height: 28px;
  flex-shrink: 0;
  object-fit: contain;
}
#menu li.menuVisitaVirtual .textoVisitaVirtual {
  white-space: nowrap;
}

/*** popup visita virtual ***/
.visita-virtual-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.65);
  z-index: 9998;
  align-items: center;
  justify-content: center;
  padding: 20px;
  box-sizing: border-box;
  overflow-y: auto;
}
.visita-virtual-overlay.is-open {
  display: flex;
}
.visita-virtual-popup {
  position: relative;
  background-color: #f6e3b2;
  border: 2px solid #231f20;
  border-radius: 12px;
  width: 100%;
  max-width: 520px;
  padding: 36px 32px 24px 32px;
  box-sizing: border-box;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.45);
  color: #231f20;
  text-align: center;
  font-family: CaviarDreams, Arial, Helvetica, sans-serif;
}
.visita-virtual-cerrar {
  position: absolute;
  top: 10px;
  right: 14px;
  background: transparent;
  border: 0;
  font-size: 28px;
  line-height: 1;
  color: #231f20;
  cursor: pointer;
  padding: 4px 8px;
  font-family: Arial, Helvetica, sans-serif;
}
.visita-virtual-cerrar:hover {
  color: #d59340;
}
.visita-virtual-header {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding-bottom: 14px;
  margin-bottom: 14px;
  border-bottom: 2px solid #D59340;
}
.visita-virtual-badge-icon {
  display: block;
  width: 50px;
  height: 50px;
  object-fit: contain;
  flex-shrink: 0;
}
.visita-virtual-header h3 {
  font-family: CaviarDreams_Bold, Arial, Helvetica, sans-serif;
  font-weight: 900;
  font-size: 1.5em;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #231f20;
  margin: 0;
}
.visita-virtual-descripcion {
  font-size: 0.95em;
  line-height: 1.4em;
  color: #231f20;
  margin: 0 0 18px 0 !important;
  padding: 0 !important;
  text-align: center !important;
}
.visita-virtual-preview {
  position: relative;
  display: block;
  width: 100%;
  max-height: 240px;
  overflow: hidden;
  border-radius: 8px;
  margin: 0 0 20px 0;
  text-decoration: none;
}
.visita-virtual-preview img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}
.visita-virtual-preview:hover img {
  transform: scale(1.04);
}
.visita-virtual-badge-overlay {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 84px;
  height: 84px;
  border-radius: 50%;
  background-color: rgba(246, 227, 178, 0.92);
  box-shadow: 0 0 0 4px rgba(35, 31, 32, 0.6);
}
.visita-virtual-badge-overlay img {
  display: block;
  width: 52px;
  height: 52px;
  object-fit: contain;
}
.visita-virtual-boton {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  padding: 14px 20px;
  background-color: #d59340;
  border-radius: 30px;
  color: #fff !important;
  font-family: CaviarDreams_Bold, Arial, Helvetica, sans-serif;
  font-weight: 900;
  font-size: 1em;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-decoration: none;
  box-sizing: border-box;
  transition: background-color 0.2s ease, transform 0.2s ease;
}
.visita-virtual-boton:hover {
  background-color: #c08234;
  transform: translateY(-1px);
  color: #fff !important;
}
.visita-virtual-no-mostrar {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-top: 16px;
  font-size: 0.85em;
  color: #231f20;
  cursor: pointer;
  font-family: CaviarDreams, Arial, Helvetica, sans-serif;
}
.visita-virtual-no-mostrar input[type="checkbox"] {
  width: 16px;
  height: 16px;
  margin: 0;
  cursor: pointer;
}
body.visita-virtual-open {
  overflow: hidden;
}

/*** banner promocion ***/
#bannerPromocionOverlay {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.7);
  z-index: 998;
  cursor: pointer;
}
#bannerPromocion {
  display: block;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 50%;
  max-width: 800px;
  z-index: 999;
  margin: 0;
  padding: 0;
  -webkit-box-shadow: 0px 0px 30px 10px rgba(0, 0, 0, 0.8);
  -moz-box-shadow: 0px 0px 30px 10px rgba(0, 0, 0, 0.8);
  box-shadow: 0px 0px 30px 10px rgba(0, 0, 0, 0.8);
}
#bannerPromocion img {
  width: 100%;
  height: auto;
  display: block;
  margin: 0;
  padding: 0;
}
#bannerPromocion .bannerAreaBases {
  position: absolute;
  bottom: 14%;
  left: 50%;
  transform: translateX(-50%);
  width: 40%;
  height: 8%;
  z-index: 1000;
  cursor: pointer;
}

@media only screen and (max-width: 1100px) {
  #bannerPromocion {
    width: 90%;
    max-width: 90%;
  }
}

/*** barras de idiomas ***/
#barraMenuSuperior {
  width: auto;
  background-color: transparent;
  padding: 0;
  box-sizing: border-box;
  margin-left: var(--margenLeftMenuVertical);
}

#contenedorBanderas {
  display: flex;
  align-items: center;
  width: 100%;
  box-sizing: border-box;
  gap: 0;
  padding-left: 0;
  margin-left: 0;
}

.bordeSuperior {
  flex: 1;
  height: 10px;
  object-fit: fill;
  min-width: 0;
  margin-right: 4%;
}

#barraMenuInferior {
  width: 100%;
  background-color: transparent;
  padding: 0;
  box-sizing: border-box;
}

.bordeInferior {
  width: 100%;
  height: 10px;
  display: block;
  transform: rotate(180deg) scaleY(-1);
  padding: 0 4%;
  box-sizing: border-box;
}

body.bases .bordeInferior {
  display: none !important;
}

/*** idiomas ***/
#idiomas {
  position: relative;
  z-index: 2;
  margin: 0;
  padding: 15px 0;
  list-style: none;
  display: flex;
  justify-content: flex-start;
  flex-shrink: 0;
  align-items: center;
  gap: 10px;
  background-color: var(--colorNaranja);
  width: 280px;
}

#idiomas li {
  display: inline-block;
  margin: 0;
  padding: 0;
}

#idiomas li img {
  width: 40px;
  height: auto;
  cursor: pointer;
  transition: transform 0.2s ease;
}

#idiomas li img:hover {
  transform: scale(1.1);
}

/*** menu ***/
#panelMenu {position:relative; float: left; top:0px; margin: 20px 0 20px var(--margenLeftMenuVertical); width: var(--anchoMenuVertical); vertical-align:top; border-bottom: none !important;}
#menu-toggle{ display: none;}
#menu { position:relative;  z-index: 2; margin:0 0 0 0; list-style: none; }
#cabecera.no-index #menu { display: flex; flex-direction: column; align-items: flex-start; }
#cabecera.no-index #menu li.menuVisitaVirtual { order: -1; }
/*#menu a::before {
  content: "•";
  color: #FFF;
}*/

#menu li{
  display: table;
  border-bottom: none !important;
}

#menu li:nth-child(odd)>div{
  border-color: yellow;
  border-style: solid;
}
#menu li:nth-child(even)>div{
  border-color: rgb(255, 255, 255);
  border-style: solid;
}
#menu li:nth-child(odd) a:visited, #menu li:nth-child(odd) a{
  color: #000 ;
}
#menu li:nth-child(even) a:visited, #menu li:nth-child(even) a{
  color: #000 ;
}
#menu li:nth-child(even) a:hover{
  color: #000;
}

#menu li>div{
  border-width:0;
}

#menu li h2 { position: relative; font-family:CaviarDreams_Bold, Arial, Helvetica, sans-serif;font-weight: 900; font-size:1.5em; margin:12px 20px 3px 0; padding:0; color:#000; letter-spacing: -0.03em; white-space: nowrap; }
#menu li h2 > div{position:relative; float:left; height: 10px; width: 5px; border: solid red 0px; margin-right: 5px; };
#menu li h2 > a {
  position: relative;
  color: inherit;
  margin: 0px;
  transition: all 0.3s ease;
}

#menu li h2 > a::after {
  content: '';
  position: absolute;
  bottom: -10px;
  left: 0;
  width: 100%;
  height: 3px;
  background-color: #f6e3b2;
  opacity: 0;
  transform: translateY(0);
  transition: all 0.3s ease;
}

#menu li h2 > a:hover::after {
  opacity: 1;
  transform: translateY(-5px);
}


/*** pie ***/
footer {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  background-color: #dbac5c;
  gap: 12px;
  padding: 10px 1% 0;
  flex-wrap: wrap;
  width: 98%;
  min-height: var(--alturaPie);
  color: #000;
  overflow: hidden;
}

/*** footer index ***/
footer.footerIndex {
  display: flex !important;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  width: 100%;
  gap: 30px;
  padding: 20px;
  box-sizing: border-box;
}

footer.footerIndex #xuntaPie {
  flex-basis: 100%;
  width: 100%;
  margin-top: 0;
  order: -1;
}

footer.footerIndex #socialTurismo,
footer.footerIndex #socialTerras,
footer.footerIndex #legal {
  flex: 0 0 auto;
}

#xuntaPie{ margin-top: 30px;}
.xuntaLogosPie{display: flex; align-items: center; justify-content: center;}
.xuntaLogosPie img{ margin: 0 10px 0 10px; width: var(--anchoLogosPie); height: 80px; object-fit: contain; }

#logoPuertoVigo {width: var(--anchoLogosPie); height: 80px; object-fit: contain;}
#logoGalicia {width: var(--anchoLogosPie); height: 80px; object-fit: contain;}
#logoDeputacionPontevedra {width: var(--anchoLogosPie); height: 80px; object-fit: contain;}
#logoXacobeo {width: var(--anchoLogosPie); height: 80px; object-fit: contain;}
#logoXunta {width: var(--anchoLogosPie); height: 80px; object-fit: contain;}

/*** social y legal ***/
#socialTerras, #socialTurismo {
  display: flex;
  gap:3px;
  justify-content: space-around;
  align-items: center;
}

#socialTerras img, #socialTurismo img{width: 15px; filter: brightness(0) saturate(100%);}

#legal{display: flex;  align-items: flex-end;}
#legal a, #legal a:visited{color: #000;}
#legal div{font-family: CaviarDreams_Bold, arial; letter-spacing: -0.03em; height: 60px;margin: 0 !important; padding: 0 10px; text-transform: none;}
.botonSocial a{display: inline-block; background-color: #f6e3b2; padding: 3px;}

#socialTerras>a, #socialTerras>a:visited, #socialTerras>a:hover, #socialTurismo>a, #socialTurismo>a:visited, #socialTurismo>a:hover { color: #000; font-size: 1.4em; font-family: CaviarDreams_Bold, Arial, Helvetica, sans-serif; }
#enlace_infoLegal{padding-left: 0 !important; border-right: solid #f6e3b2 1px; }


/*** bases ***/
#panelCartelWeb {position:absolute; top:-20px; left:-50px; z-index:-1; width:480px; height:628px; overflow: hidden; }
#imgCartelWeb {width:480px; height:auto; }
#logoTerrasBases {width:auto; height:70px; }
#textoContenido {background-color: #dbac5c; width: 100%; padding: 40px 60px 10px 60px; box-sizing: border-box;}
.textoContenido {background-color: #dbac5c; width: 100%; padding: 40px 60px 10px 60px; box-sizing: border-box;}
#lopd {
  padding: 20px 40px;
  margin: 30px 0 -5px 0;
  border: solid #fff 5px;
  color: #fff;
  background-color: #231f20;
  text-align: justify;
  font-family: CaviarDreams, Arial, Helvetica, sans-serif;
  font-weight: 400;
  -webkit-box-shadow: 0px 0px 11px 5px rgba(255, 255, 255, 0.3);
  -moz-box-shadow: 0px 0px 11px 5px rgba(255, 255, 255, 0.3);
  box-shadow: 0px 0px 11px 5px rgba(255, 255, 255, 0.3);
  position: relative;
  z-index: 2;
}

#lopd b, #lopd strong {
  font-family: CaviarDreams_Bold, Arial, Helvetica, sans-serif;
  font-weight: 900;
}
#basesTurismoGalicia {color:#000; background-color: #d59340; padding: 100px 60px 40px 60px; box-sizing: border-box; width: 100%; margin-top: -80px; position: relative; z-index: 1;}
#marcadores{
  display: flex;
  flex-direction: column;
  justify-content: space-around;
  align-items: center;
  margin-right: 30px;
  position: absolute;
  left: 0;
  top: 0;
  width: auto;
  height: 100%;
  z-index: 2;
}

#lopd>h4.subtitulo2{
  color: #fff;
  font-family: CaviarDreams_Bold, Arial, Helvetica, sans-serif;
  font-weight: 900;
}


/*** recursos ***/
#listaRecursos{text-align: center;}
#listaRecursos>div{ display: inline-block; border: solid #004668 1px; padding: 3px; margin:5px 0;}
#listaRecursos a { font-size:1.1em; line-height:2em;}

/*** francisco mantecon ***/
#listaTrabajos { width:100%; margin:0; }
#listaTrabajos>li { display: inline-block; margin:5px; }
.rota5 {
    padding:  20px 0 0 20px;
    transform: rotate(-10deg);
        -webkit-transform: rotate(-10deg);
        -moz-transform: rotate(-10deg);
        -o-transform: rotate(-10deg);
}

/*** contacto ***/
#formContacto{color: #000; }
#formContacto>div{margin:0 0 10px 0px; }

#formContacto>div>label{display: inline-block; margin: 0 10px; width: 300px;}
#formContacto button {
        margin:10px; padding:10px 20px 10px 20px;
        font-family:"Libel", Arial, Helvetica, sans-serif;  font-size:1.2em;
        text-transform: uppercase; color:#000;
        background-color: transparent;
        border: solid 1px #004368;
        }
/*** Registro ***/
#formRegistro{display: flex; flex-wrap: wrap; color: #000;}
#formRegistro>div{margin:10px 10px 10px 10px;}
#formRegistro input[type="checkbox"]{vertical-align: top; width: 25px; height: 25px;}
.form-group{ width: 350px; }


#formRegistro>div>label {display: inline-block; margin: 0 10px; width: 300px;}
.botonRegistrar {
        width: auto;
        margin:10px; padding:10px 20px 10px 20px;
        font-family:"Libel", Arial, Helvetica, sans-serif;  font-size:1.2em;
        text-transform: uppercase; color:#000;
        background-color: transparent;
        border: solid 1px #004368;
        }


/*** galeria ***/
#carteles{display: block !important; padding-top: 20px;}
/*#carteles{display: none !important;}*/

#carteles, #carteles a {color: #000}
#listaPremiados { width:100%; list-style:none; margin: 0; }
#listaPremiados li { display: inline-block; padding:10px 20px 10px 0; font-size:1.6em; }
#premiado, #accesit, #finalistas {display: flex; justify-content: space-around; flex-wrap: wrap; padding: 20px; }
#carteles h3{font-size: 1.3em; bottom:0;}
.tituloPremio{margin:0 0 10px 0;}
#premiado img{ min-width: 300px; width: 100%; margin: 5px 0;}
#accesit img{ width: 300px; margin-bottom: 5px;}
#accesit>div{margin: 20px 10px 0}
#carteles>h4{padding:20px;text-align: center; }
#finalistas {flex-wrap: wrap; padding:10px 20px 10px;}
#finalistas div{width: 200px; margin:10px 5px 0px;}
#finalistas img{width: 200px; height: 280px;}

/*** noticias ***/
.noticia { margin:0px 0px 20px 0px; padding:15px 0px 15px 0px; border-top:1px solid #004368; }
.noticia-info { width:100%;  padding-bottom:0px; }
.noticia-info ul { margin:0px; padding:0px; list-style:none;}
.noticia-info ul li { margin:0px; padding:5px 0px 5px 0px; }
.textoCampo { width:180px; font-size:1.2em; font-weight:bold; }
.textoInfo { font-size:1.1em; font-variant:small-caps; font-style:italic; }
.noticia-titular { margin:0px; padding:10px 0px 10px 0px; width:100%; }
.textoTitular { font-size:2em; }
.noticia-cuerpo { clear:both; }

@media only screen and (max-width: 1100px) {
  /*** popup visita virtual ***/
  .visita-virtual-popup {
    padding: 30px 20px 20px 20px;
  }
  .visita-virtual-header h3 {
    font-size: 1.2em;
  }
  .visita-virtual-preview {
    max-height: 200px;
  }

  /*** boton visita virtual en menu vertical ***/
  #menu li.menuVisitaVirtual h2 > a {
    top: 0;
  }
  #menu li.menuVisitaVirtual h2,
  #menu li.menuVisitaVirtual h2:hover {
    margin-bottom: 0;
  }

  /*** barras idiomas ***/
  .bordeSuperior { display: none; }
  #contenedorBanderas { justify-content: center; padding-left: 0; }

  /*** Cabecera ***/
  #contenidoCabecera {
    display: flex;
    padding:20px 20px 60px 20px;
    margin: 0;
    min-height: 260px;
  }

  /* Ocultar ganador solo en galería móvil */
  body.pagina-galeria #ganador {
    display: none !important;
  }

  #ganador #imgGanador {max-width: 320px; width: 90%;}
  #imgCartel{max-width: 550px; width: 90%;  }
  #separadorMenu{display: none;}
  #panelMenu {position:relative; display: flex; flex-direction: column; width: 100%; margin:0px; padding: 20px 0; top:0px; align-items:center; }
  #menu li{margin: 20px;}

  #enlacesCabecera{
    display: none;
  }

  /***Menu hambuguesa***/
  .botonMenu {
    position: fixed;
    top: 5px;
    right: 5px;
    z-index: 10;
    margin: 0 auto;
    display: block;
    width: 40px;
    height: 36px;
    padding: 10px;
    border-radius: 7px;
    background: var(--colorAmarillo);
    color: #000;
    cursor: pointer;
  }

  .botonMenu span {
    display: block;
    width: 40px;
    height: 4px;
    background: #000;
    margin: 6px 0 6px 0;
  }
  label{cursor: pointer;}
  #menu{
    display: none  !important;
    position: fixed;
    top:0px;
    width: 100%;
    background-color: #f6e3b2;
    padding: 10px 0;
    -webkit-box-shadow: 5px 5px 20px -4px rgba(0,0,0,0.6);
    -moz-box-shadow: 5px 5px 20px -4px rgba(0,0,0,0.6);
    box-shadow: 5px 5px 20px -4px rgba(0,0,0,0.6);
  }
  #menu li a{display: block; padding: 10px 0;}
  #menu li h2{margin: 0 !important;}
  #menu-toggle:checked + #menu{display: flex !important; flex-direction: column;}
  #menu li.menuVisitaVirtual{order: -1;}
  /*** pie ***/
  footer{flex-wrap: wrap; flex-direction:column; align-items: center;}
  footer.footerIndex {
    flex-direction: row;
    flex-wrap: wrap;
  }
  #socialLegal{flex-direction:column; align-items: center;}
  #separadorPie{display: none;}
  #social {margin-right: 0px; min-width: 0px;}

  /*** Logos pie responsive ***/
  :root {
    --anchoLogosPie: 65px;
  }

  .xuntaLogosPie img {
    margin: 0 6px 0 6px;
  }
}

