/* Modernización global Grupo Nostradamus */
:root {
  --nostra-primary: #088698;
  --nostra-dark: #0F2239;
  --nostra-gold: #FFB539;
  --nostra-light: #F3F7FB;
  --nostra-text: #334155;
  --nostra-shadow: 0 18px 45px rgba(15, 34, 57, 0.14);
}
html { scroll-behavior: smooth; }
body { color: var(--nostra-text); letter-spacing: .1px; background: #fff; }
p { font-size: 17px; line-height: 1.78; }
.th-btn { border-radius: 16px !important; font-weight: 800 !important; letter-spacing: .25px; box-shadow: 0 12px 28px rgba(15, 34, 57, .16); transition: transform .25s ease, box-shadow .25s ease !important; }
.th-btn:hover { transform: translateY(-3px); box-shadow: 0 18px 38px rgba(15, 34, 57, .22); }
.th-btn.style3 { background: linear-gradient(135deg, var(--nostra-primary), #0aa8bd) !important; border: 0 !important; }
.header-top { background: linear-gradient(90deg, var(--nostra-dark), #12395d) !important; }
.header-links li, .header-links a, .social-title { color: #fff !important; }
.sec-title { color: var(--nostra-dark); font-weight: 900; letter-spacing: -.7px; }
.sub-title { color: var(--nostra-primary) !important; font-weight: 900; }
.space { padding-top: 95px; padding-bottom: 95px; }
.bg-smoke, .gr-bg1 { background-color: var(--nostra-light) !important; }
.about-grid3, .counter-card, .course-box, .team-card, .blog-card, .feature-card, .service-card, .contact-form, .widget, .th-team, .category-card { border-radius: 24px !important; box-shadow: 0 12px 32px rgba(15, 34, 57, .10); transition: transform .25s ease, box-shadow .25s ease; overflow: hidden; }
.about-grid3:hover, .counter-card:hover, .course-box:hover, .team-card:hover, .blog-card:hover, .feature-card:hover, .service-card:hover, .th-team:hover, .category-card:hover { transform: translateY(-6px); box-shadow: var(--nostra-shadow); }
.counter-card_number { color: var(--nostra-dark) !important; font-weight: 900; }
.counter-card_text strong { color: var(--nostra-primary); }
.breadcumb-wrapper, .breadcumb-area { background: linear-gradient(135deg, rgba(15,34,57,.94), rgba(8,134,152,.88)) !important; }
.breadcumb-title { color: #fff !important; font-weight: 900; }
.breadcumb-menu li, .breadcumb-menu a { color: #fff !important; }
.hero-style6 .hero-title, .hero-style6 h1 { color: #fff; text-shadow: 0 12px 30px rgba(0,0,0,.35); }
input, textarea, select, .form-control { border-radius: 14px !important; }
.footer-wrapper { background: radial-gradient(circle at top left, #12395d, var(--nostra-dark) 55%) !important; }
@media (max-width: 991px) { .th-menu-area { background: linear-gradient(180deg, var(--nostra-dark), #0b2c45) !important; } .th-mobile-menu a { font-weight: 800; } }
@media (max-width: 767px) { .space { padding-top: 65px; padding-bottom: 65px; } .sec-title { font-size: 30px; line-height: 1.18; } p { font-size: 16px; } .header-logo img { max-width: 165px; } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation: none !important; transition: none !important; } }
