/* Base / Global Styles */
html{scroll-behavior:auto;font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
body{
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  font-feature-settings:'liga' 1,'calt' 1;
  background:var(--bg);color:var(--text);min-height:100vh;
  overflow-x:hidden;line-height:1.5;
}
::selection{background:var(--accent);color:#fff}
::-webkit-scrollbar{width:6px}
::-webkit-scrollbar-track{background:var(--bg)}
::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:3px}
::-webkit-scrollbar-thumb:hover{background:var(--text-dim)}

/* --- Layout --- */
.app{max-width:860px;margin:0 auto;padding:var(--space-6) var(--space-5) 120px}

/* --- Section Container --- */
.section{
  display:none;opacity:0;
  padding-top:60px;
}
.section.active{display:block}
.section.visible{opacity:1;transform:none}

/* --- Typography --- */
h1{font-size:clamp(28px,5vw,42px);font-weight:600;letter-spacing:-0.03em;line-height:1.15}
h2{font-size:clamp(22px,4vw,30px);font-weight:600;letter-spacing:-0.02em;line-height:1.2;margin-bottom:8px}
h3{font-size:18px;font-weight:600;margin-bottom:4px}
.subtitle{font-size:clamp(15px,2.5vw,18px);color:var(--text-muted);margin-top:12px;line-height:1.7}
.section-instructions{
  font-size:14px;color:var(--text-muted);line-height:1.65;
  margin-bottom:var(--space-6);padding:var(--space-4) var(--space-5);
  background:var(--bg-raised);border:1px solid var(--border);
  border-radius:var(--radius);border-left:3px solid var(--accent);
}

/* --- Animations --- */
/* fadeInUp and .animate-in removed -- GSAP handles all transitions */

/* --- Press/Active States (INTX-02) --- */
/* CSS fallback: instant scale on press for all interactive elements */
.btn:active, .fund-card:active, .choice-card:active,
.multi-choice-card:active, .rating-btn:active, .mobile-rank-card:active,
.mobile-rank-chip:active, .skip-link:active, .edit-btn:active {
  transform: scale(0.95);
}

/* When GSAP is active, it handles press states with spring-back.
   Remove CSS transition on transform to prevent fighting. */
.gsap-active .btn, .gsap-active .fund-card, .gsap-active .choice-card,
.gsap-active .multi-choice-card, .gsap-active .rating-btn,
.gsap-active .mobile-rank-card, .gsap-active .mobile-rank-chip,
.gsap-active .skip-link, .gsap-active .edit-btn {
  transition: none;
}
