/* Inteliworks Site Design Tokens */
:root {
  --color-primary:#1e3c72;
  --color-primary-accent:#2a5298;
  --color-secondary:#7e22ce;
  --color-accent:#ffd700;
  --color-bg:#ffffff;
  --color-bg-alt:#f8f9fa;
  --color-text:#1A1D21;
  --color-text-muted:#666;
  --color-success:#16A34A;
  --color-warning:#F59E0B;
  --color-error:#DC2626;
  --radius-sm:4px;
  --radius-md:10px;
  --radius-lg:18px;
  --shadow-sm:0 2px 4px rgba(0,0,0,.06);
  --shadow-md:0 4px 12px rgba(0,0,0,.12);
  --shadow-lg:0 10px 30px rgba(0,0,0,.18);
  --space-1:4px; --space-2:8px; --space-3:12px; --space-4:16px; --space-5:24px; --space-6:32px; --space-7:48px; --space-8:64px;
  --font-stack:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,sans-serif;
  --max-width:1200px;
}

*{box-sizing:border-box;margin:0;padding:0;}body{font-family:var(--font-stack);color:var(--color-text);background:var(--color-bg);line-height:1.55;-webkit-font-smoothing:antialiased;}
a{color:var(--color-secondary);text-decoration:none;transition:.25s color;}a:hover{color:var(--color-primary);}img{max-width:100%;display:block;}

/* Layout */
.container{max-width:var(--max-width);margin:0 auto;padding:0 var(--space-4);} .stack{display:flex;flex-direction:column;gap:var(--space-5);} .grid{display:grid;gap:var(--space-5);} .center{text-align:center;}

/* Navigation */
header.site-header{position:sticky;top:0;z-index:50;background:linear-gradient(90deg,var(--color-primary),var(--color-primary-accent));color:#fff;box-shadow:var(--shadow-md);}header .inner{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);max-width:var(--max-width);margin:0 auto;} .brand{font-weight:700;font-size:1.25rem;color:#fff;} .nav-links{display:flex;gap:var(--space-4);} .nav-links a{color:#fff;font-weight:500;padding:6px 10px;border-radius:var(--radius-sm);} .nav-links a:hover{background:rgba(255,255,255,.15);} .cta-nav{background:var(--color-accent);color:var(--color-primary);padding:8px 18px;border-radius:var(--radius-md);font-weight:600;box-shadow:0 4px 12px rgba(0,0,0,.25);} .cta-nav:hover{background:#ffec4d;}

/* Footer */
footer.site-footer{background:var(--color-primary);color:#fff;padding:var(--space-7) var(--space-4) var(--space-5);}footer.site-footer .cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-5);max-width:var(--max-width);margin:0 auto var(--space-6);}footer.site-footer h4{margin-bottom:var(--space-3);font-size:1rem;letter-spacing:.5px;}footer.site-footer a{color:rgba(255,255,255,.8);}footer.site-footer a:hover{color:var(--color-accent);}footer .legal{border-top:1px solid rgba(255,255,255,.2);padding-top:var(--space-3);text-align:center;font-size:.85rem;opacity:.85;}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;font-weight:600;border:none;cursor:pointer;text-decoration:none;border-radius:var(--radius-lg);padding:14px 28px;font-size:.95rem;transition:.3s box-shadow,.3s transform,.3s background;} .btn-primary{background:var(--color-accent);color:var(--color-primary);} .btn-primary:hover{background:#ffec4d;transform:translateY(-2px);box-shadow:0 8px 22px rgba(0,0,0,.25);} .btn-outline{background:transparent;color:#fff;border:2px solid #fff;} .btn-outline:hover{background:rgba(255,255,255,.15);} .btn-dark{background:var(--color-secondary);color:#fff;} .btn-dark:hover{background:#6921b6;}

/* Hero */
.hero{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-accent) 50%,var(--color-secondary) 100%);color:#fff;padding:var(--space-8) var(--space-4) var(--space-7);position:relative;overflow:hidden;} .hero .inner{max-width:var(--max-width);margin:0 auto;position:relative;z-index:2;} .hero h1{font-size:clamp(2.2rem,4vw,3.4rem);line-height:1.15;margin-bottom:var(--space-4);} .hero p.lead{font-size:clamp(1.05rem,1.9vw,1.35rem);max-width:760px;opacity:.95;} .hero .actions{margin-top:var(--space-5);display:flex;gap:var(--space-4);flex-wrap:wrap;} .badge{display:inline-block;background:linear-gradient(90deg,rgba(255,215,0,.25),rgba(255,140,0,.25));color:var(--color-accent);padding:10px 22px;border:2px solid var(--color-accent);border-radius:100px;font-weight:600;font-size:.8rem;letter-spacing:.5px;animation:pulse 2.8s ease-in-out infinite;} @keyframes pulse{0%,100%{transform:scale(1);}50%{transform:scale(1.03);}}

/* Cards & Sections */
.section{padding:var(--space-7) 0;} .section.alt{background:var(--color-bg-alt);} .cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--space-5);} .card{background:#fff;border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-md);position:relative;display:flex;flex-direction:column;gap:var(--space-3);transition:.3s box-shadow,.3s transform;} .card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);} .card.accent{border-top:4px solid var(--color-secondary);} .card h3{font-size:1.25rem;color:var(--color-primary);} .muted{color:var(--color-text-muted);} .list-clean{list-style:none;margin:0;padding:0;} .list-clean li{padding:6px 0;font-size:.9rem;display:flex;align-items:center;gap:6px;} .list-clean li:before{content:'✓';color:var(--color-success);font-weight:600;}

/* Pricing Grid */
.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-5);} .pricing-card{background:#fff;padding:var(--space-5);border-radius:var(--radius-lg);border:2px solid #e0e0e0;display:flex;flex-direction:column;gap:var(--space-3);text-align:center;position:relative;transition:.3s border,.3s transform,.3s box-shadow;} .pricing-card:hover{border-color:var(--color-secondary);transform:translateY(-6px);box-shadow:var(--shadow-lg);} .pricing-card.featured{border:3px solid var(--color-secondary);background:linear-gradient(135deg,#fafafa,#ffffff);} .badge-pop{position:absolute;top:-14px;left:50%;transform:translateX(-50%);background:var(--color-accent);color:var(--color-primary);padding:6px 16px;border-radius:40px;font-size:.7rem;font-weight:700;letter-spacing:.8px;} .price{font-size:2.4rem;font-weight:700;color:var(--color-secondary);} .price span{font-size:.55em;color:var(--color-text-muted);} .feature-list{list-style:none;padding:0;margin:var(--space-3) 0; text-align:left;} .feature-list li{padding:8px 0;border-bottom:1px solid #eee;font-size:.85rem;} .feature-list li:before{content:'✓';color:var(--color-success);margin-right:8px;font-weight:700;}

/* Responsive */
@media (max-width:780px){.nav-links{display:none;} .hero .actions{flex-direction:column;} header.site-header .inner{flex-wrap:wrap;} .pricing-card.featured{transform:none;} footer.site-footer .cols{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));}}

/* === Mobile Responsiveness Improvements (2025-11-20) === */
@media (max-width: 600px) {
  .container {
    padding-left: 8px;
    padding-right: 8px;
  }
  .card, .card.accent {
    padding: 18px 8px !important;
    border-radius: 12px !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08) !important;
  }
  .section, .section.alt {
    padding: 24px 0 !important;
  }
  .cards, .pricing-grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }
  .hero .inner {
    padding: 0 !important;
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }
  .hero h1 {
    font-size: 1.5rem !important;
  }
  .lead, .muted, p, li {
    font-size: 1rem !important;
  }
  input, select, button {
    font-size: 1rem !important;
    padding: 10px !important;
  }
  .onboard-container {
    padding: 18px 4px !important;
    max-width: 100vw !important;
  }
  .footer-nav {
    font-size: 0.95rem !important;
    flex-direction: column !important;
    gap: 8px !important;
  }
}

/* Utility */
.text-center{text-align:center;} .mt-1{margin-top:var(--space-1);} .mt-2{margin-top:var(--space-2);} .mt-3{margin-top:var(--space-3);} .mt-4{margin-top:var(--space-4);} .mt-5{margin-top:var(--space-5);} .mb-5{margin-bottom:var(--space-5);} .flow > *+*{margin-top:var(--space-3);} .highlight{color:var(--color-secondary);font-weight:600;}

/* Accessibility focus */
:focus-visible{outline:3px solid var(--color-secondary);outline-offset:2px;border-radius:4px;}

/* === Accessibility Improvements (2025-11-20) === */
.muted { color: #444 !important; }
.btn-outline { background: transparent; color: #1e3c72 !important; border: 2px solid #1e3c72 !important; }
.btn-outline:hover { background: rgba(30,60,114,.08) !important; color: #7e22ce !important; border-color: #7e22ce !important; }
a, button, input, select, textarea {
  transition: outline 0.2s, box-shadow 0.2s;
}
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: 3px solid #7e22ce !important;
  outline-offset: 2px;
  box-shadow: 0 0 0 3px #e9d5ff;
  border-radius: 4px;
}
