:root{
  --sim-primary: #65001a;
  --sim-primary-dark: #65001998;
  --sim-rose: #b6455acc;
  --radius-lg: 1.25rem;
  --shadow-1: 0 10px 20px rgba(16,24,40,.08);
}
*{font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, 'Helvetica Neue', Arial, 'Noto Sans', 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';}
.fw-extrabold{font-weight:800}
.btn-gradient{
  background-image: linear-gradient(135deg,var(--sim-primary),var(--sim-primary-dark));
  color:#fff;
  border:none;
  box-shadow: var(--shadow-1);
}
.btn-gradient:hover{filter:brightness(1.05); color:#fff;}
.hero-gradient{
  /* Tailwind-like: bg-gradient-to-br from-[#5c0018] via-[#800020] to-[#5c0018] */
  background: linear-gradient(to bottom right, #5c0018 0%, #800020 50%, #5c0018 100%);
  color:#fff;
  min-height: 100vh;           /* Fill screen height */
  display: flex;               /* Center content vertically */
  align-items: center;
}
.hero-gradient .container{position:relative;}
.sim-hero{position:relative;overflow:hidden;isolation:isolate;}
.sim-hero .hero-media{position:absolute;inset:0;z-index:0;}
.sim-hero .hero-media .hero-slide{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  opacity:0;transition:opacity .9s ease, transform 6s ease;
  transform: scale(1.03);
  will-change: opacity, transform;
}
.sim-hero .hero-media .hero-slide.is-active{opacity:1;transform: scale(1.08);}
.sim-hero .hero-media .hero-scrim{
  position:absolute;inset:0;
  background:
    radial-gradient(1200px 700px at 20% 30%, #00000055, transparent 60%),
    linear-gradient(180deg, #00000066 0%, #00000033 40%, #00000077 100%);
  mix-blend-mode: multiply;
  pointer-events:none;
}
.hero-illustration{
  height: 320px;
  background: conic-gradient(from 180deg at 50% 50%, #fff3 0 25%, transparent 0 50%, #fff3 0 75%, transparent 0),
              radial-gradient(120px 120px at 70% 30%, #fff8 0 40%, transparent 41%),
              linear-gradient(135deg,#ffffff22,#ffffff11);
  border: 1px solid #ffffff33;
}
.stats-row{margin-top: -1rem; margin-bottom: 2rem;}
.stat-card{
  background:#fff;
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-1);
  padding: 1rem 1.25rem;
  text-align:center;
}
.stat-value{font-size: clamp(28px, 6vw, 44px); font-weight:800; line-height:1; color:#7f0020; -webkit-text-stroke: 1px #fff5;}
.stat-label{font-size:.85rem; color:#4b5563}
.brand-badge{
  display:inline-grid; place-items:center;
  width:36px; height:36px; border-radius:10px;
  background:linear-gradient(135deg,var(--sim-primary),var(--sim-primary-dark));
  color:#fff; font-weight:800; letter-spacing:.5px;
}
.badge-tile{
  display:flex; flex-direction:column; justify-content:center; align-items:center; gap:.35rem;
  text-align:center;
  height:96px; border-radius:16px; border:1px solid #e9e9ef;
  background:#fff; box-shadow: var(--shadow-1);
  font-weight:600; color:#111827;
}
/* Icon for credentials tiles */
.badge-icon{
  font-size:1.75rem;
  line-height:1;
  color:#f0b429; /* warm accent like sample */
}
.icon-circle{
  width:48px; height:48px; border-radius:50%;
  display:grid; place-items:center;
  background: #f1f5f9; color: var(--sim-primary);
  font-size:1.25rem;
}
.avatar{
  width:40px; height:40px; border-radius:50%;
  display:grid; place-items:center; font-weight:700;
}
footer{
  background: linear-gradient(180deg, #fff 0%, #f8fafc 100%);
}
.hover-opacity:hover{opacity:1!important}
.rounded-4{border-radius: var(--radius-lg) !important;}
.py-lg-6{padding-top:5rem!important; padding-bottom:5rem!important;}

/* --- Gallery Section (Bootstrap 5) --- */
#sim-gallery{
  --gallery-accent: #7c3aed;
  background: linear-gradient(180deg, #ffffff 0%, #fdfdfd 100%);
  color:#0f172a;
  border-radius: 24px;
}


#sim-gallery .kicker{letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--gallery-accent)}
#sim-gallery .section-title{font-weight:800;line-height:1.1}
#sim-gallery .section-desc{max-width:62ch}

#sim-gallery .nav-pills .nav-link{border-radius:999px;padding:.45rem .95rem;background:#f1f3f5;color:#111827;transition:all .2s ease;margin:.25rem .5rem .25rem 0}
#sim-gallery .nav-pills .nav-link:hover{transform:translateY(-1px)}
#sim-gallery .nav-pills .nav-link.active{background:var(--gallery-accent);color:#fff;box-shadow:0 6px 16px rgba(124,58,237,.35)}

#sim-gallery .gallery-item .card{border:0;border-radius:1rem;overflow:hidden;background:#0b0f19;box-shadow:0 6px 24px rgba(0,0,0,.08);transition:transform .25s ease,box-shadow .25s ease}
#sim-gallery .gallery-item .card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(0,0,0,.12)}

#sim-gallery .ratio-4x3{--bs-aspect-ratio: 75%;} /* enforce consistent 4:3 */
#sim-gallery .gallery-img{object-fit:cover;width:100%;height:100%;filter:saturate(1.05) contrast(1.02);transform:scale(1);transition:transform .45s ease}
#sim-gallery .gallery-item .card:hover .gallery-img{transform:scale(1.06)}

#sim-gallery .gallery-overlay{position:absolute;inset:0;display:flex;align-items:end;padding:1rem;background:linear-gradient(to top, rgba(0,0,0,.6) 0%, rgba(0,0,0,.2) 50%, rgba(0,0,0,0) 100%);color:#fff;opacity:0;transition:opacity .25s ease}
#sim-gallery .gallery-item .card:hover .gallery-overlay{opacity:1}
#sim-gallery .badge-soft{background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.25);color:#fff}

#sim-gallery .reveal{opacity:0;transform:translateY(12px);transition:opacity .5s ease,transform .5s ease}
#sim-gallery .reveal.show{opacity:1;transform:none}

/* Modal */
#sim-gallery .modal-dark .modal-content{background:#0b0f19;color:#fff;border:0;border-radius:1rem}
#sim-gallery .modal-dark .btn-close{filter:invert(1) grayscale(100%)}
#sim-gallery .modal-caption{font-size:.95rem;opacity:.8}
#sim-gallery .modal-cta{border-radius:999px}

/* copy */
.sim-hero .hero-inner{position:relative;z-index:1;width:100%;}
.sim-hero .hero-copy{max-width:820px;padding:7vh 0 12vh;}
.sim-hero .kicker{letter-spacing:.12em;text-transform:uppercase;font-weight:700;opacity:.9;margin:0 0 .75rem;}
.sim-hero .hero-title{font-size:clamp(2rem, 4.5vw, 3.25rem);line-height:1.1;margin:0 0 .75rem;}
.sim-hero .hero-title .underline{box-shadow:inset 0 -0.4em 0 rgba(255,255,255,.12);}
.sim-hero .hero-sub{font-size:clamp(1rem, 2.2vw, 1.15rem);opacity:.9;max-width:66ch;margin:0 0 1.25rem;}
.sim-hero .hero-ctas{display:flex;gap:.75rem;flex-wrap:wrap;margin:1rem 0 1.25rem;}
.sim-hero .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.85rem 1.15rem;border-radius:999px;font-weight:700;text-decoration:none;transition:transform .2s ease,opacity .2s ease;}
.sim-hero .btn:hover{transform:translateY(-1px)}
.sim-hero .btn.btn-outline-light{border:1px solid #ffffff80;color:#fff;background:transparent}
.sim-hero .btn.btn-outline-light:hover{background:#ffffff18}

.sim-hero .hero-metrics{display:flex;gap:1.25rem;flex-wrap:wrap;opacity:.95}
.sim-hero .hero-metrics div{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);padding:.55rem .8rem;border-radius:999px;font-size:.95rem}
.sim-hero .hero-metrics strong{font-weight:800;color:#fff}

/* Progress dots */
.sim-hero .hero-dots{position:absolute;left:50%;bottom:32px;transform:translateX(-50%);display:flex;align-items:center;gap:.75rem;padding:.55rem .95rem;border-radius:999px;background:rgba(15,23,42,.35);border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(12px);box-shadow:0 12px 30px rgba(0,0,0,.25);}
.sim-hero .hero-dots .dot{width:12px;height:12px;border-radius:50%;border:0;background:rgba(255,255,255,.45);opacity:.9;cursor:pointer;transition:transform .25s ease,background .25s ease,box-shadow .25s ease;}
.sim-hero .hero-dots .dot:hover{transform:scale(1.15);background:rgba(255,255,255,.75);}
.sim-hero .hero-dots .dot.is-active{background:#fff;box-shadow:0 0 0 4px rgba(255,255,255,.25);transform:scale(1.25);}
@media (max-width: 768px){ .sim-hero .hero-dots{bottom:20px;padding:.4rem .7rem;gap:.55rem;} }

/* Scroll cue */
.sim-hero .scroll-cue{
  position:absolute;left:50%;bottom:18px;transform:translateX(-50%);
  background:transparent;border:0;color:#fff;display:flex;flex-direction:column;align-items:center;gap:.25rem;cursor:pointer;opacity:.9
}
.sim-hero .scroll-cue .arrow{width:22px;height:32px;border-radius:20px;border:2px solid rgba(255,255,255,.7);position:relative}
.sim-hero .scroll-cue .arrow::after{content:"";position:absolute;left:50%;top:6px;transform:translateX(-50%);width:3px;height:6px;background:#fff;border-radius:2px;animation:scrollDot 1.8s infinite}
.sim-hero .scroll-cue .scroll-text{font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;opacity:.85}
@keyframes scrollDot{
  0%{opacity:0;transform:translate(-50%,0)}
  30%{opacity:1;transform:translate(-50%,6px)}
  60%{opacity:0;transform:translate(-50%,12px)}
  100%{opacity:0;transform:translate(-50%,0)}
}

/* Parallax on scroll (subtle) */
.sim-hero[data-parallax] .hero-media{transform:translateY(calc(var(--parallax, 0) * -24px));transition:transform .1s linear}

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce) {
  .sim-hero .hero-media .hero-slide{transition:none}
}

/* Preview-only next section */
.preview-next{background:linear-gradient(180deg,#fff 0,#f8fafc 100%);color:#111827;padding:72px 0;}
.preview-next h2{margin:0 0 .5rem}



#story{
  background: linear-gradient(180deg, #f1f5f9 0%, #e2e8f0 100%);
  color:#0f172a;
}

/* ===== WHY SIM (clean, de-carded) ===== */
#why-sim{
  background: linear-gradient(180deg, #fff 0%, #f8fafc 100%);
  color:#0f172a;
}
#why-sim .kicker{letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--sim-primary);opacity:.9}
#why-sim .section-title{line-height:1.1}
#why-sim .section-desc{max-width:60ch;color:#475569}

#why-sim .mini-proof .chip{
  display:inline-flex;align-items:center;gap:.35rem;
  padding:.4rem .7rem;border-radius:999px;
  background:#fff;border:1px solid #e5e7eb;color:#334155;font-weight:600;font-size:.875rem;
}
#why-sim .mini-proof .chip::before{
  content:'';width:6px;height:6px;border-radius:50%;background:var(--sim-primary);opacity:.5
}

/* Feature list (no cards) */
#why-sim .feature{
  display:grid;grid-template-columns:56px 1fr;gap:1rem;
  padding: .75rem 0 .75rem 0;
  border-bottom:1px solid #eef2f7;
}
#why-sim .features .col-md-6:nth-last-child(-n+2) .feature{border-bottom:0;} /* remove bottom border on last row at md+ */
@media (max-width: 767.98px){
  #why-sim .features .col-md-6:last-child .feature{border-bottom:0;}
}

#why-sim .feature-icon{
  width:56px;height:56px;border-radius:16px;
  display:grid;place-items:center;
  background:#f1f5f9;border:1px solid #e5e7eb;
  color:var(--accent, var(--sim-primary));
  font-weight:800;letter-spacing:.5px;
  box-shadow: 0 1px 0 #ffffff, 0 8px 18px rgba(16,24,40,.05);
  transition: transform .2s ease;
}
#why-sim .feature-icon i{font-size:1.75rem;line-height:1;}
#why-sim .feature:hover .feature-icon{transform:translateY(-2px)}

#why-sim .feature-title{font-size:1.15rem;font-weight:800;margin:0 0 .2rem}
@media (min-width:992px){ #why-sim .feature-title{font-size:1.25rem} }
#why-sim .feature-lead{margin:0 0 .35rem;color:#334155}
#why-sim .feature-bullets{list-style:none;padding:0;margin:0;display:grid;gap:.25rem}
#why-sim .feature-bullets li{position:relative;padding-left:1.25rem;color:#475569}
#why-sim .feature-bullets li::before{
  content:"✓";position:absolute;left:0;top:0;color:var(--accent, var(--sim-primary));font-weight:800
}

/* Footnote row */
#why-sim .tick{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#e6f4ea;color:#16a34a;font-weight:800;font-size:.9rem}
#why-sim .border-top{border-top:1px solid #e5e7eb !important}



#faq{
  background: linear-gradient(180deg, #f1f5f9 0%, #e2e8f0 100%);
  color:#111827;
}

