/* [timaca_servicios] — carrusel de tarjetas verticales (copia de .sol-wrap del HTML de referencia) */
.timaca-servicios {
	--navy: #0C2340;
	--accent: #7db2d4;
	--bg-2: #E4ECF2;
	--shadow: 0 2px 14px rgba(12, 35, 64, .08);
	--gutter: 24px;
	--head: "Montserrat", "Segoe UI", Helvetica, Arial, sans-serif;
}
.timaca-servicios .sol-wrap{ position: relative; margin-inline: calc(var(--gutter) * -1); }
.timaca-servicios .sol-track{ display: flex; gap: 18px; overflow-x: auto; scroll-snap-type: x mandatory; padding: 8px var(--gutter) 28px; scrollbar-width: none; }
.timaca-servicios .sol-track::-webkit-scrollbar{ display: none; }
.timaca-servicios .sol{ position: relative; flex: 0 0 300px; height: 420px; scroll-snap-align: start; border-radius: 2px; overflow: hidden; text-decoration: none; color: #fff; background: var(--navy); box-shadow: var(--shadow); isolation: isolate; }
.timaca-servicios .sol img{ position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .6s; z-index: -2; }
.timaca-servicios .sol::before{ content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(12,35,64,.05) 30%, rgba(12,35,64,.55) 62%, rgba(12,35,64,.92) 100%); z-index: -1; transition: opacity .3s; }
.timaca-servicios .sol:hover img{ transform: scale(1.05); }
.timaca-servicios .sol-cap{ position: absolute; left: 0; right: 0; bottom: 0; padding: 22px 22px 24px; }
.timaca-servicios .sol h3{ color: #fff; font-family: var(--head); font-size: 20px; font-weight: 500; margin-bottom: 0; padding-bottom: 0; line-height: 1.25; }
.timaca-servicios .sol p{ color: rgba(255,255,255,.9); font-size: 14px; line-height: 1.5; margin: 10px 0 0; padding-bottom: 0; max-height: 0; overflow: hidden; opacity: 0; transition: max-height .4s, opacity .3s; }
.timaca-servicios .sol:hover p,
.timaca-servicios .sol:focus-visible p{ max-height: 140px; opacity: 1; }
.timaca-servicios .sol .more{ display: block; margin-top: 12px; font-size: 14px; font-weight: 600; color: #fff; }
.timaca-servicios .sol-nav{ display: flex; justify-content: center; gap: 8px; margin-top: 2px; }
.timaca-servicios .sol-btn{ width: 40px; height: 40px; padding: 0; border-radius: 50%; border: 0; background: transparent; color: var(--navy); cursor: pointer; display: grid; place-items: center; transition: background-color .2s, color .2s; }
.timaca-servicios .sol-btn svg{ width: 20px; height: 20px; }
.timaca-servicios .sol-btn:hover{ background: var(--bg-2); color: var(--accent); }
.timaca-servicios .sol-btn:active{ background: var(--bg-2); }
@media (max-width: 700px){
	.timaca-servicios .sol{ flex-basis: 76vw; height: 380px; }
}
