*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#f6f1e7;color:#16233f;font-family:'Libre Franklin',system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:#8a6d3b;text-decoration:none}
a:hover{color:#6f5729}
img,video{max-width:100%}
::selection{background:#0e1c39;color:#f6f1e7}

/* Buttons (specificity beats the generic a:hover above) */
a.btn-dark:hover{background:#1b2f56}
a.btn-accent:hover{filter:brightness(1.08)}
.module-card:hover{background:#fffdf8}
a.social-icon:hover{border-color:#a5824a;color:#a5824a}

/* TikTok marquee */
.tt-scroller{overflow:hidden !important;cursor:grab;touch-action:pan-y}
.tt-scroller.dragging{cursor:grabbing}
.tt-scroller::-webkit-scrollbar{display:none}
.tt-vid{opacity:0;transition:opacity .3s ease}
.tt-vid.is-ready{opacity:1}
.tt-icon{display:none}
.tt-icon.is-active{display:block}

/* Hero mute icon */
.hero-icon{display:none}
.hero-icon.is-active{display:block}

/* FAQ */
.faq-answer{display:none}
.faq-answer.is-open{display:block}
.faq-sign{transform:translateY(-2px)}

/* ---- Tablet ---- */
@media (max-width:900px){
  [style*="grid-template-columns"]{grid-template-columns:1fr !important;gap:40px !important}
  section, section > div, footer > div{padding-left:32px !important;padding-right:32px !important}
  .topbar-inner{padding-left:32px !important;padding-right:32px !important}
  h1{font-size:46px !important}
  .hero-img{height:480px !important}
  .hero-img-wrap{order:-1 !important;margin-bottom:12px !important}
  .diff-cell-a{border-right:none !important;padding:0 0 32px !important;border-bottom:1px solid rgba(246,241,231,0.16) !important}
  .diff-cell-b{padding:32px 0 0 !important}
}

/* ---- Mobile ---- */
@media (max-width:600px){
  section, section > div, footer > div{padding-left:20px !important;padding-right:20px !important;padding-top:60px !important;padding-bottom:60px !important}
  .topbar-inner{padding:14px 20px !important}
  h1{font-size:34px !important}
  h2{font-size:28px !important}
  h3{font-size:24px !important}
  .hook-quote{font-size:25px !important;line-height:1.35 !important}
  .nav-link{display:none !important}
  [style*="grid-template-columns"]{gap:28px !important}
  .tt-card{width:210px !important;height:373px !important}
  .hero-frame{display:none !important}
  .hero-img{height:400px !important;object-position:60% 22% !important}
  footer > div{padding-top:32px !important;padding-bottom:32px !important;text-align:center;justify-content:center}
}

@media (prefers-reduced-motion: reduce){
  .tt-track{transform:none !important}
  html{scroll-behavior:auto}
}
