/**
Theme Name: Carlosdeblas Child Theme
Author: Carlos de Blas Mateo
Author URI: https://carlosdeblas.com
Description: Child Theme de Astra creado por Carlos de Blas
Version: 1.1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: carlosdeblas-child-theme
Template: astra
*/

/* Estructura básica. Caja de 1300 px útiles: 15 px de lateral en móvil, 50 px hasta 1399 px y centrada desde 1400 px */
body{width:100%;max-width:1920px;margin:0 auto;}
.ast-container{width:100%;max-width:100%;padding-left:0;padding-right:0;}
.e-con.e-flex>.e-con-inner {width:100%;max-width:1300px;}
/* Un bloque dentro de otro: el interior no lleva relleno lateral (ya lo da el exterior; lo ordenó Carlos el 4-nov-2026) */
.e-con-inner .e-con.e-flex>.e-con-inner {padding-left:0;padding-right:0;}
.search-form input.search-field {font-family: Mulish, sans-serif;font-size: 18px !important;}

.cabecera-principal{background-color:var(--ast-global-color-0);padding-top:100px;padding-bottom:100px;margin-top:-1px;z-index:100;}
.cabecera-principal h1{color:#FFFFFF;text-align:center;}
.ast-mobile-header-content.content-align-flex-start {max-height: 80vh;}
.espizq{padding-left:50px;}
.espder{padding-right:50px;}
p{margin-bottom:18px !important;}
p:last-child{margin-bottom:0 !important;}

@media (max-width:767px){
.e-con.e-flex>.e-con-inner {padding-left: 15px;padding-right: 15px;}
.ast-header-break-point #masthead .ast-mobile-header-wrap .ast-primary-header-bar{padding-left:15px;padding-right:0px;}
.ast-header-break-point .main-navigation ul .menu-item .menu-link{padding:0 15px;}
.ast-header-break-point .main-navigation .sub-menu .menu-item .menu-link {padding: 0 15px;}
.ast-search-box.header-cover .ast-container {padding-left:15px;padding-right:0px;}
.cabecera-principal{padding-top:50px;padding-bottom:50px;}
}

@media (min-width:768px) and (max-width:1024px){
.e-con.e-flex>.e-con-inner {padding-left: 50px;padding-right:50px;}
.ast-header-break-point #masthead .ast-mobile-header-wrap .ast-primary-header-bar{padding-left:50px;padding-right:35px;}
.ast-header-break-point .main-navigation ul .menu-item .menu-link{padding:0 50px;}
.ast-header-break-point .main-navigation .sub-menu .menu-item .menu-link {padding: 0 50px;}
.ast-search-box.header-cover .ast-container {padding-left: 50px;padding-right: 35px;}
.cabecera-principal{padding-top:75px;padding-bottom:75px;}
}

/* Desde 1025 px: ancho 100% con 50 px a cada lado hasta que el contenido llega a 1300 px; a partir de ahí la caja de 1300 px queda centrada.
   Una sola fórmula (sin corte a 1400): el relleno es el mayor entre 50 px y la mitad de lo que sobra, así que el hueco nunca baja de 50 px
   aunque la barra de desplazamiento de Windows reste 15 px al ancho. Contenido y cabecera usan la misma (4-nov-2026) */
@media (min-width:1025px){
.e-con.e-flex>.e-con-inner {max-width:100%;padding-left:max(50px,calc((100% - 1300px)/2));padding-right:max(50px,calc((100% - 1300px)/2));}
.site-primary-header-wrap.ast-builder-grid-row-container.site-header-focus-item.ast-container {width:100%;max-width:100%;margin:0;padding-left:max(50px,calc((100% - 1300px)/2));padding-right:max(50px,calc((100% - 1300px)/2));}
}
@media (min-width:1025px) and (max-width:1399px){
.ast-search-box.header-cover .ast-container {padding-left: 50px;padding-right: 35px;width:100%;max-width:100%;}
}
@media (min-width:1400px){
.ast-search-box.header-cover .ast-container {max-width: 1300px;}
.ast-primary-header-bar.ast-primary-header.main-header-bar.site-header-focus-item {max-width: 1920px;}
}

/* Migas */
nav.rank-math-breadcrumb {color: #FFFFFF;margin-top: 10px;text-align: center;}
nav.rank-math-breadcrumb p{margin-bottom:0;}
nav.rank-math-breadcrumb a:hover {color: #FFFFFF;}

@media (max-width: 768px) {
.ast-separate-container #content .ast-container {padding-left: 0;padding-right: 0;}
}

/* Textos legales */
#contenido-legal h2{margin-bottom:20px !important;}
#contenido-legal h3{margin-bottom:20px !important;}
#contenido-legal p{text-align:justify;margin-bottom:20px !important;}
#contenido-legal li{text-align:justify;margin-bottom:10px !important;}
#contenido-legal a{font-weight:600;}
#contenido-legal a:hover{text-decoration:underline;}
#contenido-legal li li{margin-top:10px !important;}
#contenido-legal table{margin-bottom:30px;}
#contenido-legal thead th{background-color:var(--ast-global-color-2);text-align:center;color:#FFFFFF;font-weight:700;}
#contenido-legal tbody th{background-color:var(--ast-global-color-2);text-align:left;color:#FFFFFF;font-weight:700;vertical-align:top;}
@media (max-width:767px){
#contenido-legal p, #contenido-legal li{text-align:left;}
}
