:root {
  --navy: #123f78;
  --blue: #1768c8;
  --sky: #eaf4ff;
  --ink: #102a43;
  --muted: #53687a;
  --line: #d8e3ec;
  --paper: #f7fafc;
  --white: #ffffff;
  --lime: #dcef72;
  --shadow: 0 25px 60px rgba(18, 63, 120, 0.16);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--white); font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; line-height: 1.5; }
a { color: inherit; }
.container { width: min(1120px, calc(100% - 40px)); margin: 0 auto; }

.site-header { position: sticky; top: 0; z-index: 10; border-bottom: 1px solid rgba(216, 227, 236, 0.86); background: rgba(255, 255, 255, 0.94); backdrop-filter: blur(12px); }
.navigation { display: flex; min-height: 76px; align-items: center; justify-content: space-between; gap: 20px; }
.brand { display: flex; align-items: center; }
.brand img { width: 137px; height: auto; object-fit: contain; }
.main-nav { display: flex; align-items: center; gap: 26px; font-size: 0.88rem; font-weight: 650; }
.main-nav a { color: #365168; text-decoration: none; }
.main-nav a:hover, .main-nav a:focus-visible { color: var(--blue); }
.main-nav .login-link { padding: 10px 14px; border: 1px solid #bfd2e4; border-radius: 999px; color: var(--navy); }

.hero { position: relative; overflow: hidden; color: var(--white); background: linear-gradient(90deg, rgba(10, 48, 91, 0.96) 0%, rgba(15, 61, 111, 0.86) 45%, rgba(20, 89, 145, 0.28) 100%), url("https://www.sistemasac.com/assets/images/1.jpg") center / cover no-repeat; }
.hero-grid { position: relative; display: grid; grid-template-columns: 1fr; align-items: center; min-height: 548px; padding: 80px 0; }
.hero-orb { position: absolute; border: 58px solid rgba(220, 239, 114, 0.17); border-radius: 50%; pointer-events: none; }
.hero-orb-one { width: 480px; height: 480px; top: -310px; right: -70px; }
.hero-orb-two { width: 310px; height: 310px; bottom: -220px; left: 39%; border-width: 34px; }
.eyebrow, .section-label { margin: 0 0 17px; font-size: 0.78rem; font-weight: 750; letter-spacing: 0.07em; text-transform: uppercase; }
.eyebrow { display: flex; align-items: center; gap: 9px; color: #eaf6ff; }
.eyebrow span { width: 8px; height: 8px; border-radius: 50%; background: var(--lime); }
.hero h1 { max-width: 650px; margin: 0; font-size: clamp(2.5rem, 5vw, 4.3rem); line-height: 1.02; letter-spacing: -0.065em; }
.hero-copy { max-width: 585px; margin: 24px 0 30px; color: #e9f4ff; font-size: 1.09rem; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 11px; min-height: 50px; padding: 13px 18px; border: 1px solid transparent; border-radius: 11px; font-size: 0.9rem; font-weight: 750; text-decoration: none; transition: transform 160ms ease, box-shadow 160ms ease, background 160ms ease; }
.button:hover { transform: translateY(-2px); }
.button:focus-visible, .main-nav a:focus-visible, .text-link:focus-visible { outline: 3px solid var(--lime); outline-offset: 3px; }
.button-primary { color: #1d3955; background: var(--lime); box-shadow: 0 12px 25px rgba(7, 43, 82, 0.2); }
.button-secondary { color: var(--white); border-color: rgba(255, 255, 255, 0.62); }


.pillars { background: var(--white); }.pillar-grid { display: grid; grid-template-columns: repeat(3, 1fr); }.pillar-grid article { padding: 31px 25px 35px 0; border-right: 1px solid var(--line); }.pillar-grid article + article { padding-left: 28px; }.pillar-grid article:last-child { border-right: 0; }.pillar-number { color: var(--blue); font-size: 0.78rem; font-weight: 800; }.pillar-grid h2 { margin: 11px 0 7px; font-size: 1rem; }.pillar-grid p { max-width: 280px; margin: 0; color: var(--muted); font-size: 0.88rem; }

.section { padding: 95px 0; }.solutions { background: var(--paper); }.section-label { color: var(--blue); }.section-heading { display: grid; grid-template-columns: 1fr 0.75fr; align-items: end; gap: 60px; margin-bottom: 34px; }.section-heading h2, .accompaniment h2, .contact-box h2 { max-width: 660px; margin: 0; font-size: clamp(2rem, 3.7vw, 3.25rem); line-height: 1.06; letter-spacing: -0.05em; }.section-heading p, .body-copy { margin: 0; color: var(--muted); font-size: 1rem; }
.solution-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }.solution-card { min-height: 236px; padding: 24px; border: 1px solid var(--line); border-radius: 14px; background: var(--white); }.solution-icon { display: grid; width: 39px; height: 39px; place-items: center; margin-bottom: 37px; border-radius: 10px; color: var(--navy); background: var(--sky); font-size: 1.2rem; font-weight: 800; }.solution-card h3 { margin: 0 0 8px; font-size: 1rem; }.solution-card p { margin: 0; color: var(--muted); font-size: 0.84rem; }

.accompaniment { background: var(--white); }.accompaniment-grid { display: grid; grid-template-columns: 0.93fr 1.07fr; align-items: center; gap: clamp(40px, 8vw, 118px); }.body-copy { max-width: 530px; margin: 20px 0 25px; }.text-link { color: var(--blue); font-size: 0.9rem; font-weight: 800; text-underline-offset: 4px; }.audience-list { border-top: 1px solid var(--line); }.audience-list article { display: grid; grid-template-columns: 44px 1fr; gap: 15px; padding: 20px 0; border-bottom: 1px solid var(--line); }.audience-list span { color: var(--blue); font-size: 0.78rem; font-weight: 800; }.audience-list h3 { margin: 0 0 3px; font-size: 1rem; }.audience-list p { margin: 0; color: var(--muted); font-size: 0.9rem; }

.contact-section { padding: 0 0 95px; background: var(--white); }.contact-box { display: flex; align-items: center; justify-content: space-between; gap: 40px; padding: clamp(34px, 5vw, 62px); border-radius: 20px; color: var(--white); background: var(--navy); }.contact-box .section-label { color: var(--lime); }.contact-box h2 { max-width: 600px; }.contact-box p:not(.section-label) { max-width: 570px; margin: 18px 0 0; color: #deedfb; }.button-contact { flex-shrink: 0; color: #173652; background: var(--lime); }
.site-footer { border-top: 1px solid var(--line); background: #f8fbfd; }.footer-content { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 100px; }.footer-content img { width: 112px; height: auto; object-fit: contain; }.footer-content p, .footer-content a { margin: 0; color: var(--muted); font-size: 0.82rem; }.footer-content a { color: var(--navy); font-weight: 750; }

@media (max-width: 850px) {
  .section-heading, .accompaniment-grid { grid-template-columns: 1fr; }.hero-grid { min-height: auto; padding: 70px 0; }.section-heading { gap: 18px; }.solution-grid { grid-template-columns: repeat(2, 1fr); }.section { padding: 76px 0; }.contact-section { padding-bottom: 76px; }
}

@media (max-width: 650px) {
  .container { width: min(100% - 32px, 1120px); }.navigation { min-height: 65px; }.brand img { width: 116px; }.main-nav { gap: 12px; }.main-nav a:not(.login-link) { display: none; }.main-nav .login-link { padding: 8px 10px; font-size: 0.76rem; }.hero-grid { padding: 57px 0; }.hero h1 { font-size: clamp(2.3rem, 12vw, 3.5rem); }.hero-copy { font-size: 1rem; }.button { width: 100%; }.pillar-grid, .solution-grid { grid-template-columns: 1fr; }.pillar-grid article, .pillar-grid article + article { padding: 22px 0; border-right: 0; border-bottom: 1px solid var(--line); }.pillar-grid article:last-child { border-bottom: 0; }.solution-card { min-height: 190px; }.solution-icon { margin-bottom: 23px; }.contact-box, .footer-content { align-items: flex-start; flex-direction: column; }.contact-box { gap: 25px; padding: 32px 25px; }.button-contact { width: 100%; }.footer-content { justify-content: center; padding: 25px 0; }
}

@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; }.button { transition: none; } }
