/* ==========================================================================
   Base: tipografía y reset equivalentes al diseño original.
   Neutraliza los estilos por defecto de GeneratePress donde difieren.
   ========================================================================== */

:root {
	--sico-primary: #003049;
	--sico-accent: #C3E2C0;
	--sico-text: #181818;
	--sico-green: #738F71;
	--sico-green-dark: #40633D;
	--sico-green-bar: #6B8D68;
	--sico-light: #F6F6F6;
	--sico-font: "Poppins", sans-serif;
	--sico-font-system: var(--sico-font); /* Una sola tipografía en todo el sitio */
	--sico-container: 1140px;
}

html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

body,
button,
input,
select,
textarea {
	font-family: var(--sico-font-system);
}

body {
	margin: 0;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	color: #333;
	background-color: #fff;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4, h5, h6 {
	margin-block-start: .5rem;
	margin-block-end: 1rem;
	margin-top: .5rem;
	margin-bottom: 1rem;
	font-family: inherit;
	font-weight: 500;
	line-height: 1.2;
	color: inherit;
	text-transform: none;
}

h1 { font-size: 2.5rem; }
h2 { font-size: 2rem; }
h3 { font-size: 1.75rem; }
h4 { font-size: 1.5rem; }
h5 { font-size: 1.25rem; }
h6 { font-size: 1rem; }

p {
	margin-block-start: 0;
	margin-block-end: .9rem;
	margin-top: 0;
	margin-bottom: .9rem;
}

a {
	background-color: transparent;
	text-decoration: none;
	color: #c36;
}

a:hover,
a:active {
	color: #336;
}

img {
	border-style: none;
	height: auto;
	max-width: 100%;
	vertical-align: middle;
}

b,
strong {
	font-weight: bolder;
}

ul,
ol {
	margin: 0 0 0 0;
	padding-inline-start: 40px;
}

li,
dd,
dl,
dt {
	margin-block-start: 0;
	margin-block-end: 0;
}

ul ul,
ol ol {
	margin: 0;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 0;
}

button,
[type=button],
[type=submit] {
	font-family: inherit;
}

label {
	display: inline-block;
	line-height: 1;
	vertical-align: middle;
}

/* GeneratePress: contenedor de página a ancho completo y sin márgenes */
.sico-page .site-content,
.sico-page .inside-article,
.sico-page .entry-content,
.sico-page .site-main {
	padding: 0;
	margin: 0;
}

.sico-page .site.grid-container,
.sico-page .container.grid-container {
	max-width: 100%;
}

.sico-page .entry-content:not(:first-child) {
	margin-top: 0;
}

.site-content {
	display: block;
}

.site {
	overflow-x: clip;
}

.screen-reader-text:focus {
	z-index: 100000;
}

/* Contenedor centrado equivalente al "boxed" original */
.sico-container {
	max-width: var(--sico-container);
	margin-left: auto;
	margin-right: auto;
}

/* Reducción de animaciones si el usuario lo pide */
@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: .01ms !important;
		transition-duration: .01ms !important;
	}
}
