/*
 * Colour system for content following the opening banner only.
 * The opening banner is intentionally outside this stylesheet's scope.
 */
:root {
  --below-navy-950: #061224;
  --below-navy-900: #0a1d36;
  --below-navy-800: #10345d;
  --below-blue-600: #0b74c9;
  --below-blue-500: #1593e6;
  --below-orange-600: #e86616;
  --below-orange-500: #f58634;
  --below-ice: #f4f8fc;
  --below-warm: #fff8f1;
  --below-line: rgba(19, 88, 145, 0.16);
}

main > .trust-strip {
  background: linear-gradient(to bottom, var(--below-navy-950) 0 2rem, transparent 2rem);
}

main > .trust-strip .trust-strip-inner {
  border-color: rgba(92, 181, 244, 0.22);
  background: linear-gradient(115deg, rgba(7, 27, 52, 0.98), rgba(13, 51, 88, 0.96) 62%, rgba(89, 42, 20, 0.94));
  box-shadow: 0 28px 62px -38px rgba(2, 12, 27, 0.85);
}

main > .trust-strip .trust-strip-inner > p {
  color: #ffb477;
}

main > .trust-strip .trust-pills span {
  border: 1px solid rgba(143, 207, 250, 0.16);
  background: rgba(255, 255, 255, 0.075);
  color: #e5f3ff;
}

main > #servicios {
  background: linear-gradient(180deg, #f7fbff 0%, var(--below-ice) 52%, #fffaf5 100%) !important;
}

main > #servicios .section-badge,
main > #metodologia .section-badge,
main > #casos .section-badge {
  border-color: rgba(11, 116, 201, 0.22);
  background: linear-gradient(110deg, rgba(219, 239, 255, 0.9), rgba(255, 232, 211, 0.88));
  color: #0b5798;
}

main > #servicios .section-title span,
main > #metodologia .title-accent,
main > #casos .title-accent {
  background: linear-gradient(105deg, #07539b 0%, #168edc 48%, #ed701f 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

main > #servicios .service-card {
  border-color: var(--below-line);
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 24px 52px -40px rgba(6, 38, 72, 0.48);
}

main > #servicios .service-card::before {
  background: linear-gradient(90deg, var(--below-blue-600), var(--below-orange-500));
}

main > #servicios .service-card:hover {
  border-color: rgba(21, 147, 230, 0.34);
  box-shadow: 0 30px 62px -40px rgba(6, 50, 96, 0.58);
}

main > #servicios .service-green .service-icon,
main > #servicios .service-slate .service-icon {
  background: linear-gradient(135deg, #0c4f92, #1593e6);
}

main > #servicios .service-red .service-icon,
main > #servicios .service-amber .service-icon {
  background: linear-gradient(135deg, #f59a4f, #de5c10);
}

main > #servicios .service-features li::before,
main > #servicios .service-cta {
  color: #0b67b2;
}

main > #servicios .service-red .service-features li::before,
main > #servicios .service-amber .service-features li::before {
  color: var(--below-orange-600);
}

main > #servicios .service-cta {
  border-top-color: rgba(19, 88, 145, 0.14);
}

main > #estadisticas {
  background:
    radial-gradient(circle at 10% 20%, rgba(21, 147, 230, 0.16), transparent 34%),
    radial-gradient(circle at 90% 82%, rgba(245, 134, 52, 0.14), transparent 32%),
    linear-gradient(135deg, var(--below-navy-950), var(--below-navy-900) 52%, #152538);
}

main > #estadisticas .section-badge-dark,
main > .cta-section .section-badge-dark {
  border-color: rgba(245, 134, 52, 0.32);
  background: rgba(245, 134, 52, 0.1);
  color: #ffad6f;
}

main > #estadisticas .section-title span {
  color: #ffad6f !important;
}

main > #estadisticas .stats-grid > div {
  border-color: rgba(139, 203, 246, 0.13);
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.055), rgba(11, 116, 201, 0.045));
}

main > #estadisticas .stat-number {
  color: #ffad6f;
}

main > #metodologia {
  background: linear-gradient(180deg, #ffffff, #f3f8fd);
}

main > #metodologia .step-card {
  border-color: rgba(11, 116, 201, 0.17);
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 22px 48px -40px rgba(5, 49, 91, 0.5);
}

main > #metodologia .step-card:nth-child(n) .step-number {
  background: linear-gradient(135deg, #e5f4ff, #fff0e4);
  color: #0b5fa5;
}

main > #metodologia .step-card:nth-child(2) .step-number {
  color: var(--below-orange-600);
}

main > #metodologia .step-duration {
  border: 1px solid rgba(11, 116, 201, 0.12);
  background: #f3f8fd;
  color: #315b7e;
}

main > #casos {
  background: linear-gradient(135deg, #edf6fd 0%, #f7f9fb 48%, #fff4ea 100%);
}

main > #casos .use-case-card {
  border-color: rgba(11, 116, 201, 0.16);
  box-shadow: 0 30px 60px -48px rgba(4, 42, 79, 0.58);
}

main > #casos .use-case-featured {
  border-color: rgba(245, 134, 52, 0.28);
  background:
    radial-gradient(circle at 90% 10%, rgba(245, 134, 52, 0.15), transparent 35%),
    linear-gradient(145deg, var(--below-navy-950), var(--below-navy-800));
}

main > #casos .use-case-icon {
  color: rgba(11, 116, 201, 0.2);
}

main > #casos .use-case-featured .use-case-icon {
  color: rgba(255, 173, 111, 0.3);
}

main > #casos .use-case-tag,
main > #casos .use-case-card a {
  color: #0a65ad;
}

main > #casos .use-case-featured .use-case-tag,
main > #casos .use-case-featured a {
  color: #ffad6f;
}

main > .cta-section {
  background: linear-gradient(180deg, #fffaf5, #f4f8fc);
}

main > .cta-section .cta-card {
  border: 1px solid rgba(92, 181, 244, 0.16);
  background:
    radial-gradient(circle at 12% 16%, rgba(21, 147, 230, 0.17), transparent 34%),
    radial-gradient(circle at 88% 86%, rgba(245, 134, 52, 0.18), transparent 34%),
    linear-gradient(135deg, var(--below-navy-950), var(--below-navy-900));
  box-shadow: 0 38px 80px -48px rgba(2, 19, 39, 0.82);
}

main > .cta-section .cta-title span {
  color: #ffad6f;
}

.registration-schedule {
  background: linear-gradient(90deg, #edf6fd, #fff5ec);
}

.registration-schedule .registration-schedule-card {
  border-color: rgba(11, 116, 201, 0.18);
  border-left-color: var(--below-orange-500);
  background: rgba(255, 255, 255, 0.88);
  box-shadow: 0 16px 36px -28px rgba(5, 45, 82, 0.48);
}

.registration-schedule .registration-schedule-copy a {
  color: #0966ae;
}

.footer {
  border-top-color: rgba(92, 181, 244, 0.16);
  background:
    radial-gradient(circle at 8% 10%, rgba(21, 147, 230, 0.12), transparent 28%),
    radial-gradient(circle at 92% 90%, rgba(245, 134, 52, 0.1), transparent 26%),
    linear-gradient(145deg, #071629, #0b2039);
}

.footer .footer-description,
.footer .footer-links a,
.footer .footer-copyright,
.footer .footer-legal a {
  color: #aebfd0;
}

.footer .footer-heading {
  color: #f3f8fc;
}

.footer .footer-heading::before {
  background: linear-gradient(to bottom, var(--below-blue-500), var(--below-orange-500));
}

.footer .footer-social a,
.footer .footer-social button {
  border: 1px solid rgba(139, 203, 246, 0.12);
  background: rgba(255, 255, 255, 0.06);
  color: #dceaf6;
}

.footer .footer-social a:hover,
.footer .footer-social button:hover {
  background: rgba(245, 134, 52, 0.14);
  color: #ffad6f;
}

.footer .footer-links a:hover,
.footer .footer-legal a:hover {
  color: #ffad6f;
}

.footer .footer-bottom {
  border-top-color: rgba(139, 203, 246, 0.12);
}
