* { box-sizing: border-box; }
body { margin: 0; background: #070C1C; color: #EAF0F5; font-family: 'Inter', sans-serif; min-height: 100vh; overflow-x: hidden; }
a { text-decoration: none; color: inherit; }
input, textarea, button, select { font-family: inherit; }
h1, h2, h3 { font-family: 'Space Grotesk', sans-serif; }

@keyframes ismti-marquee { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } }
@keyframes ismti-pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.35; } }
@keyframes ismti-float { 0%, 100% { transform: translateY(0) rotate(0deg); } 50% { transform: translateY(-4px) rotate(-2deg); } }
@keyframes ismti-glow { 0%, 100% { filter: drop-shadow(0 0 4px rgba(65,227,212,0.35)); } 50% { filter: drop-shadow(0 0 12px rgba(65,227,212,0.7)); } }
@keyframes ismti-fadeup { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }

.ismti-page { animation: ismti-fadeup .4s ease; }
.ismti-logo-img { animation: ismti-float 4.5s ease-in-out infinite, ismti-glow 4.5s ease-in-out infinite; will-change: transform, filter; }
@media (prefers-reduced-motion: reduce) { .ismti-logo-img { animation: none; } }

.ismti-hamburger { display: none; }
.ismti-mobile-menu { display: none; }
.ismti-social-icon { transition: all .2s ease; }
.ismti-tab.active { color: #0A0F1E !important; }

/* nav tabs — plain text, no chip/box; hover = zoom + text-color change + soft glow (single accent, no multi-colour here) */
.ismti-nav-tab {
  display: inline-flex; align-items: center;
  padding: 6px 4px; border-radius: 6px;
  background: none; border: none;
  font-size: 15.5px; font-weight: 700; white-space: nowrap;
  color: #D3DAE8;
  transition: transform .22s cubic-bezier(.34,1.56,.64,1), color .22s ease, text-shadow .22s ease;
}
.ismti-nav-tab:hover, .ismti-nav-tab:focus-visible { transform: scale(1.1); color: #41E3D4; text-shadow: 0 0 14px rgba(65,227,212,.65); }
.ismti-nav-tab.active { color: #41E3D4; }
@media (prefers-reduced-motion: reduce) { .ismti-nav-tab { transition: none; } .ismti-nav-tab:hover { transform: none; } }

/* market/plan tabs (e.g. Stock/Forex/Gold switcher) — THIS is where the 3-colour mixed glow-button look lives */
.ismti-tab-btn {
  flex: 1; padding: 10px 16px; border-radius: 8px; border: 1px solid transparent; cursor: pointer;
  font-weight: 600; font-size: 14px; background: transparent; color: #9BA6BA;
  transition: transform .22s cubic-bezier(.34,1.56,.64,1), box-shadow .22s ease, background .22s ease, color .22s ease, border-color .22s ease;
}
.ismti-tab-btn:hover { transform: scale(1.06); }
.ismti-tab-btn.tone-cyan:hover { color: #41E3D4; border-color: rgba(65,227,212,.4); box-shadow: 0 10px 22px -10px rgba(65,227,212,.55); }
.ismti-tab-btn.tone-gold:hover { color: #E6B450; border-color: rgba(230,180,80,.4); box-shadow: 0 10px 22px -10px rgba(230,180,80,.55); }
.ismti-tab-btn.tone-green:hover { color: #3FD68C; border-color: rgba(63,214,140,.4); box-shadow: 0 10px 22px -10px rgba(63,214,140,.55); }
.ismti-tab-btn.active.tone-cyan { background: #41E3D4; color: #0A0F1E; box-shadow: 0 10px 22px -10px rgba(65,227,212,.55); }
.ismti-tab-btn.active.tone-gold { background: #E6B450; color: #0A0F1E; box-shadow: 0 10px 22px -10px rgba(230,180,80,.55); }
.ismti-tab-btn.active.tone-green { background: #3FD68C; color: #0A0F1E; box-shadow: 0 10px 22px -10px rgba(63,214,140,.55); }
@media (prefers-reduced-motion: reduce) { .ismti-tab-btn { transition: none; } .ismti-tab-btn:hover { transform: none; } }

.ismti-mobile-link { display: flex; align-items: center; gap: 10px; }
.ismti-mobile-link .tab-dot { width: 7px; height: 7px; border-radius: 50%; flex-shrink: 0; }

/* form inputs (contact page) */
.ismti-input { background: rgba(0,0,0,0.25); border: 1px solid rgba(255,255,255,0.12); border-radius: 9px; padding: 12px 14px; color: #F8FAFB; font-size: 14.5px; width: 100%; transition: border-color .18s ease, box-shadow .18s ease; }
.ismti-input:focus { outline: none; border-color: rgba(65,227,212,.55); box-shadow: 0 0 0 3px rgba(65,227,212,.12); }
.ismti-field-label { font-size: 12.5px; color: #8B95A7; font-weight: 600; margin-bottom: 6px; display: block; letter-spacing: .01em; }

/* Google Maps directions button */
.ismti-maps-btn { display: inline-flex; align-items: center; gap: 8px; margin-top: 12px; padding: 9px 16px; border-radius: 9px; background: linear-gradient(135deg, rgba(65,227,212,.16), rgba(65,227,212,.05)); border: 1px solid rgba(65,227,212,.3); color: #41E3D4; font-weight: 600; font-size: 13px; transition: transform .18s ease, box-shadow .18s ease, background .18s ease; }
.ismti-maps-btn:hover { transform: translateY(-2px); box-shadow: 0 10px 22px -10px rgba(65,227,212,.5); background: linear-gradient(135deg, rgba(65,227,212,.24), rgba(65,227,212,.08)); }

.btn-primary { background: linear-gradient(135deg,#E6B450,#C6963A); color: #231604; font-weight: 700; padding: 13px 26px; border-radius: 9px; display: inline-block; border: none; cursor: pointer; font-size: 14.5px; }
.btn-ghost { background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.14); color: #EAF0F5; font-weight: 600; padding: 13px 24px; border-radius: 9px; display: inline-flex; align-items: center; gap: 8px; cursor: pointer; font-size: 14.5px; }
.ismti-card { background: rgba(255,255,255,0.03); border: 1px solid rgba(255,255,255,0.07); border-radius: 14px; padding: 22px; }
.ismti-pagehero { padding: 56px 24px 40px; text-align: center; max-width: 900px; margin: 0 auto; }
.ismti-eyebrow { color: #41E3D4; font-size: 13px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; }
.ismti-risk-box { padding: 16px 20px; background: rgba(248,113,113,0.06); border: 1px solid rgba(248,113,113,0.2); border-radius: 10px; color: #E8A5A5; font-size: 13.5px; line-height: 1.6; }

@media (max-width: 860px) {
  .ismti-desktop-nav { display: none !important; }
  .ismti-header-cta { display: none !important; }
  .ismti-hamburger { display: block !important; }
  .ismti-mobile-menu.open { display: flex !important; }
  .ismti-2col { grid-template-columns: 1fr !important; }
  .ismti-3col { grid-template-columns: 1fr !important; }
  .ismti-4col { grid-template-columns: repeat(2,1fr) !important; }
}
