
/* CSS Document */

html, body {
  max-width: 100%;
  overflow-x: hidden;
}

body{
	font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, "Open Sans", verdana, sans-serif;
	color: #000000;
	line-height: 1.170;
	margin: 0px;
	padding: 0px;
	background: #ffffff;
	font-size: 16px;
}

/***********************************************/

/******* hipervinculo  *******/

a:link, a:visited{
	color: #0066FF;
	text-decoration: none;
}

a:hover{
	text-decoration: underline;
}

/************** encabezados **************/

h1{
 font: 150%;
 color: #000000;
 margin: 0px;
 padding: 0px;
}

h2{
	font: bold 130%;
	color: #000000;
	margin: 0px;
	padding: 0px;
	text-align:center;
}

h3{
 font: bold 100%;
 color: #999999;
 margin: 0px;
 padding: 0px;
 text-align:center;
}

h4{
 font: 100%;
 color: #333333;
 margin: 0px;
 padding: 0px;
}

h5{
 font: 100%;
 color: #334d55;
 margin: 0px;
 padding: 0px;
}


/***************  tag  ***************/

ul{
 list-style-type: square;
}

ul ul{
 list-style-type: disc;
}

ul ul ul{
 list-style-type: none;
}

/********* formulario *********/


form {
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
}

    

.form-table {
    width: 100%;
    margin: auto;
}

.form-table td {
	width: 218px;
    height: 25px;
    padding: 10px;
}

.form-table input[type="text"] {
    width: 100%;
    padding: 5px;
    box-sizing: border-box;
    background-color: #CCCCCC;
    color: #000000;
    border: none;
    font-family: verdana;
}

input[type="submit"], input[type="reset"] {
    background-color: #CCCCCC;
    border: none;
    padding: 10px 20px;
    cursor: pointer;
}

input[type="submit"]:hover, input[type="reset"]:hover {
    background-color: #AAA;
}



label{
 font: bold 1em Arial,sans-serif;
 color: #334d55;
}
				
input{
font-family: Arial,sans-serif;
}

/********* p align-center *********/
.p-centro {
  text-align: center;
}

/********* div align-center *********/
.div-centrado {
  display: block;
  margin: 0 auto;
}
/***********************************************/
/* plano de divisiones                         */
/***********************************************/
#pagecell1{
	position:relative;
	top: 7px;
	width: 100%;
	background-color: #ffffff;
	margin:auto
}



/* ── PC y tablet horizontal ── */
.castor-header {
  display: flex;
  align-items: stretch; 
  justify-content: space-between;
  padding: 0 28px;        /* solo padding horizontal, nada vertical */
  background: #ffffff;
  width: 100%;
  box-sizing: border-box;
}

.castor-zone {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 14px 16px;     /* el padding vertical va aquí */
  border-radius: 6px;
  text-decoration: none;
  color: inherit;
  flex: 1;
  transition: background 0.18s, transform 0.15s;
}
.castor-zone:hover {
  background: rgba(204,0,0,0.06);
  transform: translateY(-1px);
}

.castor-header .divider {
  width: 1px;
  align-self: stretch;
  background: #ddd0c4;
  flex-shrink: 0;
}

.castor-header .logo-img {
  height: 60px;
  width: auto;
}

.contact-icon-wrap {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.icon-tel { background: #fff0f0; border: 1px solid #f5c0c0; }
.icon-wa  { background: #edfbf2; border: 1px solid #b2e8c4; }

.contact-label {
  font-family: Arial, sans-serif;
  font-size: 10px;
  color: #aaa;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  margin: 0 0 2px 0;
}
.contact-number {
  font-family: Arial, sans-serif;
  font-size: 18px;
  font-weight: 700;
  color: #1a1a1a;
  white-space: nowrap;
  margin: 0;
}

#masthead{
	position: absolute;
	top: 0px;
	left: 2%;
	right: 2%;
	width:95.6%;
	
}

#masterhead img{
	float: left;
	padding: 0px 10px 0px 0px;
	width:80%; height:auto;
}
	

#pageNav{
	float: left;
	width:29%;
	padding: 0px;
	background-color: #F5f7f7;
	border-right: 1px solid #cccccc;
	border-bottom: 1px solid #cccccc;
	font: medium Verdana, sans-serif;
}


#content{
	padding: 0px 10px 0px 0px;
	margin:0px 0px 0px 29%;
	border-left: 1px solid #ccd2d2;
}

/************** utilidades *****************/

#utility{
	font: 75% Verdana,sans-serif;
	position: absolute;
	top: 16px;
	right: 0px;
	color: #919999;
}

#utility a{
	color: #ffffff;
}

#utility a:hover{
	text-decoration: underline;
}

/************** nombre de pagina ****************/

#pageName{
	padding: 0px 0px 4px 10px;
	margin: 0px;
	border-bottom:3px solid #ccd2d2;
	color: #ffffff;
	background: #ffffff;
}

#pageName{
	font: 200% Roboto, "Open Sans", verdana;
	color: #000000;
	text-align:center;
}

#pageName img{
	position: absolute;
	top: 0px;
	right: 6px;
	padding: 0px;
	margin: 0px;
}

/************* global navegacion ****************/

#globalNav {
    position: relative;
    width: 100%; /* Cambiado de max-width a width para que ocupe todo el ancho */
    height: 35px;
    color: #cccccc;
    padding: 0px;
    margin: auto;
    background-color: #ffffff; /* Establecer el fondo blanco */
    top: 3px;
	display: flex; /* Utilizamos flexbox para alinear los elementos */
    justify-content: space-between; /* Espacio entre el botón y los enlaces */
    align-items: center;
}


#globalNav img{
	margin-bottom:0px;
 
}



#globalLink{
    top: 1px;
	height: 100px;
	padding: 0px;
	margin: 0px;
	display: flex; /* Para que los links se muestren horizontalmente */
    align-items: center; /* Centrar verticalmente los links */;
}



#globalLink a {
    display: inline-block;
    padding: 10px 20px;
    color: #000000;
    text-decoration: none;
    font-weight: bold;
    position: relative; /* Necessary for positioning the pseudo-element */
	}

#globalLink a::before {
    content: "";
    position: absolute;
    top: 0; /* Position the line at the top of the link */
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 3px;
    background-color: #000; /* Color of the line */
    transition: width 0.3s ease-in-out; /* Smooth transition */
}

.nav-links {
    display: flex; /* Los enlaces se muestran horizontalmente */
}

.glink {
    display: block; /* Los enlaces ocupan todo el ancho disponible */
    padding: 10px 20px;
    color: #000000;
    text-decoration: none;
    font-weight: bold;
    position: relative;
}

#globalLink a:hover::before {
    width: 100%; /* Width of the line on hover */
}

a.glink:hover{
  	
	text-decoration: none;
}

.skipLinks {display: none;}

/*************** buscador *****************/

#search{
	position: absolute;
	top: 10px;
	right: 50px;
	z-index: 101;
	width: 1px;
}

#search input{
	font-size: 70%;
	margin: 0px  0px 0px 10px;
	
 }
 
#search a:link, #search a:visited {
	font-size: 80%;
	font-weight: bold;
	
}

#search a:hover{
	margin: 0px;
}


/************* restos ***************/

#breadCrumb{
	padding: 5px 0px 5px 10px;
	font: small Verdana,sans-serif;
	color: #AAAAAA;
}

#breadCrumb a{
	color: #AAAAAA;
}

#breadCrumb a:hover{
	color: #005FA9;
	text-decoration: underline;
}


/************** introduccion *****************/

.feature{
	padding: 0px 0px 10px 10px;
	color: #000000;
}
html>body .feature {height: auto;}

.feature h3{
	font: bold 125% Verdana;
	color: #000000;
	padding: 30px 0px 5px 0px;
}

.feature img{
	display:block; 
	margin-left: auto; 
	margin-right: auto;
	padding: 10px 10px 10px 10px;
	width:96%; height:auto;
	box-sizing:border-box
}

.feature figure {
  margin: 0;
}

.feature.capsule img{
	float:right;
	width:33%
}

/*************** comentarios ******************/

.story {
	padding: 10px 0px 0px 10px;
	box-sizing:border-box;
}

.story img { 
    display:block; 
	margin-left: auto; 
	margin-right: auto;
	padding: 10px 10px 10px 10px;
	width:66%; height:auto;
}

.story h3{
	font: bold 125% Verdana;
	color: #000000;
}

.story p {
	padding: 0px 0px 10px 0px;
	color: #000000;
	text-align: left;
}

.story a.capsule{
	font: bold 1em Arial,sans-serif;
	color: #005FA9;
	display:block;
	padding-bottom: 5px;
	box-sizing:border-box;
}

.story a.capsule:hover{
	text-decoration: underline;
}

.storyLeft{
	float:left;
	width:48%;
	padding-right: 12px;
	box-sizing:border-box;
}
.storyRight{
	float:right;
	width:48%;
	padding-right: 12px;
	box-sizing:border-box;
}

/************** form ****************/
form {
	margin: 0;
	padding: 0;
}

label{
 font: bold 1em Arial,sans-serif;
 color: #334d55;
}
				
input{
font-family: Arial,sans-serif;
}

/************** facebook box ****************/

.fb-page{
	display: flex;
  justify-content: center;
	}

/************** info-web ****************/

#siteInfo{
	clear: both;
	border-top: 1px solid #cccccc;
	font-size: small;
	color: #000000;
	padding: 10px 10px 10px 10px;
	margin-top: 0px;
}

#siteInfo img{
	padding: 4px 4px 4px 0px;
	vertical-align: baseline;
}



/************ enlaces laterales **************/

#sectionLinks{
	margin: 0px;
	padding: 0px;

}

#sectionLinks{
	font: 130% Arial,sans-serif;
	padding: 0px 0px 0px 0px;
	border-bottom: 1px solid #cccccc;
}

#sectionLinks a:link, #sectionLinks a:visited {
	display: block;
	border-top: 1px solid #ffffff;
	border-bottom: 1px solid #cccccc;
	background-color: #ffffff;
	padding: 14px 0px 14px 10px;
	color: #545454;
	text-decoration: none;
	font-weight: bold;
	
}

#sectionLinks a:hover{
	border-top: 1px solid #cccccc;
	background-color: #FFCC33;
	background-image: none;
	font-weight: bold;
	text-decoration: none;
	color: #009900;
}


/************* enlaces vacios laterales **************/


.relatedLinks{
	margin: 0px;
	padding: 10px 10px 10px 10px;
	border-bottom: 1px solid #000000;
	background-color: #ffffff;
}

.relatedLinks h2{
	padding: 10px 0px 2px 0px;
}

.relatedLinks a{
	display: block; 
}

/* Estilos para iconos SVG de redes sociales */
.relatedLinks svg {
  display: block;
  transition: transform 0.2s ease, opacity 0.2s ease;
}

.relatedLinks a:hover svg {
  transform: scale(1.1);
  transform-origin: right center; /* Crece hacia la izquierda */
  opacity: 0.8;
}
/**************** comentario foto lateral *****************/

#advert{
	padding: 10px;
	background-color: #CCCCCC;
	font-family: Verdana, sans-serif;
}

#advert img{
	display: block;
	background-color: #FF9966;
	width:90%; height:auto;
}

/*******************************************/
#pagecell1 #pageNav .relatedLinks a {
	background-color: #ffffff;
}
#pagecell1 #pageNav .relatedLinks h3 {
	background-color: #CCCC33;
}
#pagecell1 #pageNav .relatedLinks a {
	border-top-color: #CCCCCC;
	border-right-color: #CCCCCC;
	border-bottom-color: #99FFCC;
	border-left-color: #99FFCC;
}

#pagecell1 #pageNav #advert img {
	background-color: #ffffff;
}
#pagecell1 #pageNav #advert {
	background-color: #ffffff;
}

 

  @media (max-width: 768px) {
	  
	  h1 {
    font-size: 1.5rem;
  }
	
	.menu-toggle {
        display: flex; /* Muestra el botón hamburguesa */
        flex-direction: column;
        cursor: pointer;
        padding: 10px;
        margin-right: 10px;
        z-index: 11; /* Asegura que esté por encima del menú desplegable */
    }

    .menu-toggle .bar {
        width: 30px;
        height: 4px;
        background-color: #000;
        margin: 5px 0;
    }

    .nav-links {
        display: none; /* Oculta el menú desplegable por defecto */
        flex-direction: column;
	    position:absolute;
        width: 100%;
        background-color: #ffffff;
        position: absolute;
        top: 48px;
        left: 0;
        z-index: 1000;
        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    }

    #globalNav.active .nav-links {
        display: flex; /* Muestra el menú cuando la clase 'active' está presente */
    }

    .nav-links a {
        padding: 10px;
        border-bottom: 1px solid #ddd;
        display: block; /* Asegura que los links ocupen todo el ancho */
		color: #333;
        text-decoration: none;
    }
	
/* ── MÓVIL Y TABLET (@768px, tu corte habitual) ── */
  .castor-header {
    flex-direction: column;
    padding: 14px 16px;
    gap: 2px;
  }
  .castor-header .divider {
    width: 75%;
    height: 1px;
    align-self: center;
  }
  .castor-zone {
    width: 100%;
    justify-content: center;
    padding: 12px 16px;
    flex: none;
  }
  .castor-header .logo-img {
    height: 46px;
  }
  .contact-number {
    font-size: 20px;
  }	

#pagecell1 {width:100%;}
#content {width:98%;margin:0px 0px 0px 0px;}
#content img {width:98%; height:auto; display:block; margin-left: auto; margin-right: auto;
padding: 1px 1px 1px 1px;}
#pageNav {width:100%; box-sizing:border-box;}
.feature img {width:95%; height:auto; display:block; margin-left: auto; margin-right: auto;
padding: 1px 1px 1px 1px;}
.storyLeft {width:100%;}
.storyRight {width:100%;}
.feature.capsule img {width:95%; height:auto; display:block; margin-left: auto; margin-right: auto;
padding: 1px 1px 1px 1px;}
  html, body {
    overflow-x: hidden;
  }
}

