/**
* Tema static - Tetraware
* Bootstrap 5.3 + colores de la marca
*/
:root {
	--tw-brand: #1f6f8b;
	--tw-brand-dark: #16566c;
	--tw-brand-light: #e9f3f6;
	--tw-accent: #f2994a;
	--tw-text: #1f2d3d;
	--bs-link-color: var(--tw-brand);
	--bs-link-color-rgb: 31, 111, 139;
	--bs-link-hover-color: var(--tw-brand-dark);
	--bs-link-hover-color-rgb: 22, 86, 108;
}

body { color: var(--tw-text); }

/* Saltar al contenido */
.skip-link:focus {
	position: absolute; top: .5rem; left: .5rem; z-index: 1080;
	padding: .5rem 1rem; background: #fff; border: 2px solid var(--tw-brand); border-radius: .375rem;
}
main:focus { outline: none; }

/* Botones de la marca */
.btn-brand {
	--bs-btn-color: #fff;
	--bs-btn-bg: var(--tw-brand);
	--bs-btn-border-color: var(--tw-brand);
	--bs-btn-hover-color: #fff;
	--bs-btn-hover-bg: var(--tw-brand-dark);
	--bs-btn-hover-border-color: var(--tw-brand-dark);
	--bs-btn-active-bg: var(--tw-brand-dark);
	--bs-btn-active-border-color: var(--tw-brand-dark);
	--bs-btn-focus-shadow-rgb: 31, 111, 139;
}
.btn-accent {
	--bs-btn-color: #1f2d3d;
	--bs-btn-bg: var(--tw-accent);
	--bs-btn-border-color: var(--tw-accent);
	--bs-btn-hover-color: #1f2d3d;
	--bs-btn-hover-bg: #e5873a;
	--bs-btn-hover-border-color: #e5873a;
	--bs-btn-active-bg: #e5873a;
	--bs-btn-focus-shadow-rgb: 242, 153, 74;
}
.text-brand { color: var(--tw-brand) !important; }
.bg-brand-light { background-color: var(--tw-brand-light) !important; }

/* Menu principal */
.navbar .nav-link { font-weight: 500; color: var(--tw-text); }
.navbar .nav-link:hover,
.navbar .nav-link.active { color: var(--tw-brand); }
.navbar .nav-link.active { box-shadow: inset 0 -2px 0 var(--tw-accent); }

/* Portada */
.hero {
	background: var(--tw-brand-dark) url(../images/hero.svg) center / cover no-repeat;
	color: #fff;
}
.hero .lead { opacity: .9; }
.icono-servicio {
	display: inline-flex; align-items: center; justify-content: center;
	width: 3.25rem; height: 3.25rem; border-radius: .75rem;
	background: var(--tw-brand-light); color: var(--tw-brand); font-size: 1.4rem;
}
.card-servicio { transition: transform .2s ease, box-shadow .2s ease; }
.card-servicio:hover { transform: translateY(-3px); box-shadow: 0 .5rem 1.5rem rgba(31, 45, 61, .08); }

/* Paginas */
.cabecera-pagina { border-left: 4px solid var(--tw-accent); padding-left: 1rem; }
.texto-legal h2 { font-size: 1.25rem; margin-top: 2rem; }

/* Pie */
.pie { background: var(--tw-text); color: #fff; }
.pie a { color: #fff; }
.pie a:hover { color: #f2c79a; }
.pie .nav-link { color: rgba(255, 255, 255, .75); }
.pie .nav-link:hover,
.pie .nav-link.active { color: #fff; }

@media (prefers-reduced-motion: reduce) {
	.card-servicio { transition: none; }
	.card-servicio:hover { transform: none; }
}

/* Contenido editable desde el backend */
.contenido-html > :last-child { margin-bottom: 0; }
.bg-brand-light .contenido-html h2 { font-weight: 700; }
.card .contenido-html h2 { font-size: 1.25rem; }
