/* ═══════════════════════════════════════════════════
   NEO-BRUTALISM OVERRIDE — collinsasein.com
   Applied globally across all pages
   Colors: #0F0F1A (ink) · #4B1E8C (purple) · #C6B7FF (lavender) · #F5F5FF (chalk)
═══════════════════════════════════════════════════ */

/* ── GLOBAL ── */
:root { --r: 0px !important; }
*, *::before, *::after { border-radius: 0 !important; }

/* ── NAV (glass pill — overrides global border-radius reset) ── */
.store-nav {
  background: rgba(13,10,34,0.68) !important;
  border: 1px solid rgba(198,183,255,0.18) !important;
  border-radius: 100px !important;
  border-bottom: none !important;
  padding: 10px 8px !important;
  box-shadow:
    0 4px 6px rgba(0,0,0,0.14),
    0 14px 50px rgba(0,0,0,0.55),
    0 1px 0 rgba(255,255,255,0.06) inset,
    0 0 0 1px rgba(124,58,237,0.1) inset !important;
}
.store-nav a {
  border-radius: 100px !important;
  font-weight: 700 !important;
  letter-spacing: 2.5px !important;
  font-size: 10px !important;
}
.nav-brand { display: block !important; }
.nav-toggle span { background: #F5F5FF !important; }

/* ── SCROLL PROGRESS ── */
#scrollProgress { height: 3px !important; box-shadow: none !important; }

/* ── CURSOR ── */
.cursor-ring { border-radius: 0 !important; border-width: 2px !important; }

/* ── PRELOADER ── */
.pre-bar-wrap { height: 4px !important; }

/* ── HERO ── */
.name-hero { border-bottom: 5px solid #4B1E8C !important; }
.name-hero-title { font-weight: 900 !important; letter-spacing: -0.05em !important; }
.name-hero-top-rule    { border-top: 4px solid rgba(75,30,140,0.45) !important; }
.name-hero-bottom-rule { border-top: 4px solid rgba(75,30,140,0.45) !important; }

/* ── MARQUEE ── */
.marquee-strip { border-top: 3px solid rgba(75,30,140,0.3) !important; border-bottom: 3px solid rgba(75,30,140,0.3) !important; }
.marquee-strip.lime      { border-color: #4B1E8C !important; }
.marquee-strip.dark-lime { border-color: rgba(75,30,140,0.35) !important; }

/* ── SECTIONS ── */
.section-dark  { border-top: 5px solid #4B1E8C !important; }
.section-light { border-top: 5px solid #4B1E8C !important; }
.section-label { font-weight: 900 !important; letter-spacing: 5px !important; font-size: 11px !important; }
.section-title { font-weight: 900 !important; letter-spacing: -2px !important; }

/* ── FILTER TABS ── */
.filter-tab {
  border: 3px solid rgba(245,245,255,0.3) !important;
  border-radius: 0 !important;
  font-weight: 900 !important;
  letter-spacing: 2px !important;
  padding: 10px 22px !important;
  transition: box-shadow .12s, transform .12s, background .12s, border-color .12s !important;
}
.filter-tab:hover {
  border-color: #7C3AED !important;
  color: #C6B7FF !important;
  box-shadow: 4px 4px 0 #4B1E8C !important;
  transform: translate(-2px,-2px) !important;
}
.filter-tab.active {
  background: #4B1E8C !important;
  border-color: #4B1E8C !important;
  color: #F5F5FF !important;
  font-weight: 900 !important;
  box-shadow: 5px 5px 0 rgba(75,30,140,0.45) !important;
}

/* ── BOOK CARDS ── */
.book-card {
  border: 3px solid rgba(245,245,255,0.1) !important;
  border-radius: 0 !important;
  box-shadow: 6px 6px 0 #4B1E8C !important;
  transition: box-shadow .12s, transform .12s, border-color .12s !important;
}
.book-card:hover {
  border-color: #7C3AED !important;
  transform: translate(-4px,-4px) !important;
  box-shadow: 10px 10px 0 #4B1E8C !important;
}
.book-cat   { font-weight: 900 !important; letter-spacing: 3px !important; }
.book-title { font-weight: 800 !important; font-size: 13px !important; }
.book-price { font-weight: 900 !important; font-size: 15px !important; }
.btn-amazon {
  border: 3px solid #4B1E8C !important;
  border-radius: 0 !important;
  box-shadow: 4px 4px 0 #4B1E8C !important;
  font-weight: 900 !important;
  letter-spacing: 2px !important;
  padding: 10px 18px !important;
  transition: box-shadow .12s, transform .12s !important;
}
.btn-amazon:hover {
  box-shadow: 6px 6px 0 #7C3AED !important;
  transform: translate(-2px,-2px) !important;
}

/* ── LOAD MORE ── */
.btn-load-more {
  border: 4px solid rgba(245,245,255,0.25) !important;
  border-radius: 0 !important;
  font-weight: 900 !important;
  letter-spacing: 3px !important;
  padding: 18px 56px !important;
  box-shadow: 6px 6px 0 rgba(75,30,140,0.35) !important;
  transition: box-shadow .12s, transform .12s, background .12s, border-color .12s !important;
}
.btn-load-more:hover {
  border-color: #7C3AED !important;
  box-shadow: 8px 8px 0 #4B1E8C !important;
  transform: translate(-3px,-3px) !important;
}
.view-all-link { font-weight: 900 !important; }

/* ── BUNDLE CARDS ── */
.bundle-card {
  border: 4px solid rgba(245,245,255,0.1) !important;
  border-radius: 0 !important;
  box-shadow: 8px 8px 0 #4B1E8C !important;
  padding: 48px 40px !important;
  transition: box-shadow .12s, transform .12s, border-color .12s !important;
}
.bundle-card:hover {
  border-color: #7C3AED !important;
  transform: translate(-4px,-4px) !important;
  box-shadow: 12px 12px 0 #4B1E8C !important;
}
.bundle-card.featured {
  border-color: #7C3AED !important;
  box-shadow: 8px 8px 0 rgba(124,58,237,0.5) !important;
}
.bundle-card.featured:hover { box-shadow: 12px 12px 0 rgba(124,58,237,0.65) !important; }
.bundle-badge {
  border: 3px solid #C6B7FF !important;
  border-radius: 0 !important;
  font-weight: 900 !important;
  letter-spacing: 3px !important;
  padding: 6px 16px !important;
}
.bundle-name  { font-weight: 900 !important; }
.bundle-price { font-weight: 900 !important; }
.bundle-save  { font-weight: 900 !important; letter-spacing: 3px !important; }
.btn-bundle {
  border: 4px solid rgba(245,245,255,0.18) !important;
  border-radius: 0 !important;
  font-weight: 900 !important;
  letter-spacing: 3px !important;
  padding: 18px 24px !important;
  box-shadow: 5px 5px 0 rgba(75,30,140,0.3) !important;
  transition: box-shadow .12s, transform .12s, border-color .12s !important;
}
.btn-bundle:hover {
  border-color: #7C3AED !important;
  box-shadow: 8px 8px 0 #4B1E8C !important;
  transform: translate(-3px,-3px) !important;
}
.bundle-card.featured .btn-bundle {
  border-color: rgba(245,245,255,0.3) !important;
  box-shadow: 5px 5px 0 rgba(0,0,0,0.35) !important;
}
.bundle-card.featured .btn-bundle:hover { box-shadow: 8px 8px 0 rgba(0,0,0,0.45) !important; }

/* ── APP CARDS ── */
.app-card {
  border: 3px solid rgba(245,245,255,0.08) !important;
  border-radius: 0 !important;
  box-shadow: 6px 6px 0 #4B1E8C !important;
  padding: 28px !important;
  transition: box-shadow .12s, transform .12s, border-color .12s !important;
}
.app-card:hover {
  border-color: #7C3AED !important;
  box-shadow: 10px 10px 0 #4B1E8C !important;
  transform: translate(-4px,-4px) !important;
}
.app-icon     { border-radius: 0 !important; }
.app-name     { font-weight: 900 !important; font-size: 19px !important; }
.app-platform { font-weight: 900 !important; letter-spacing: 3px !important; }
.btn-app {
  border: 3px solid rgba(245,245,255,0.2) !important;
  border-radius: 0 !important;
  font-weight: 900 !important;
  letter-spacing: 2px !important;
  padding: 9px 20px !important;
  box-shadow: 4px 4px 0 rgba(75,30,140,0.28) !important;
  transition: box-shadow .12s, transform .12s, background .12s, border-color .12s !important;
}
.btn-app:hover {
  border-color: #7C3AED !important;
  box-shadow: 6px 6px 0 #4B1E8C !important;
  transform: translate(-2px,-2px) !important;
}

/* ── MUSIC CARDS ── */
.music-card {
  border: 3px solid rgba(245,245,255,0.1) !important;
  border-radius: 0 !important;
  transition: border-color .12s, box-shadow .12s, transform .12s !important;
}
.music-card:hover {
  border-color: #7C3AED !important;
  box-shadow: 6px 6px 0 #4B1E8C !important;
  transform: translate(-3px,-3px) !important;
}
.music-title          { font-weight: 800 !important; }
.music-section-label  { font-weight: 900 !important; letter-spacing: 4px !important; }
.music-embed-wrap     { border: 3px solid rgba(245,245,255,0.12) !important; border-radius: 0 !important; }

/* ── EMPIRE / HEXAGONS ── */
.empire-section    { border-top: none !important; border-bottom: none !important; }
.empire-headline   { font-weight: 900 !important; letter-spacing: -1.5px !important; }
.empire-eyebrow    { font-weight: 900 !important; letter-spacing: 5px !important; }
.empire-stat-num   { font-weight: 900 !important; font-size: 42px !important; }
.empire-stat-label { font-weight: 800 !important; letter-spacing: 3px !important; }
.empire-stats      { border-top-width: 1px !important; }
.h-hex::before     { background: linear-gradient(135deg, #7C3AED, #4B1E8C) !important; }
.h-name            { font-weight: 900 !important; }

/* ── FOOTER ── */
.site-footer          { border-top: 3px solid rgba(75,30,140,0.4) !important; }
.footer-brand         { font-weight: 900 !important; }
.footer-follow-label  { font-weight: 900 !important; letter-spacing: 4px !important; }
.footer-nl-form {
  border: 2px solid rgba(198,183,255,0.2) !important;
  border-radius: 0 !important;
}
.footer-nl-form:focus-within { border-color: #7C3AED !important; }
.footer-nl-form button { font-weight: 900 !important; letter-spacing: 3px !important; }

/* ── SCROLL TO TOP ── */
#scrollTop {
  border: 3px solid #4B1E8C !important;
  border-radius: 0 !important;
  box-shadow: 5px 5px 0 #4B1E8C !important;
}
#scrollTop:hover {
  box-shadow: 8px 8px 0 #7C3AED !important;
  transform: translate(-2px,-2px) !important;
}

/* ── ABOUT PAGE ── */
.about-section        { border-top: 5px solid #4B1E8C !important; }
.about-block          { border: 4px solid rgba(245,245,255,0.1) !important; box-shadow: 8px 8px 0 #4B1E8C !important; }
.about-block:hover    { box-shadow: 12px 12px 0 #7C3AED !important; transform: translate(-3px,-3px) !important; }

/* ── CONTACT PAGE ── */
.contact-form         { border: 4px solid rgba(245,245,255,0.12) !important; box-shadow: 8px 8px 0 #4B1E8C !important; }
.contact-input,
.contact-textarea {
  border: 3px solid rgba(245,245,255,0.18) !important;
  border-radius: 0 !important;
  font-weight: 700 !important;
  transition: border-color .15s, box-shadow .15s !important;
}
.contact-input:focus,
.contact-textarea:focus {
  border-color: #7C3AED !important;
  box-shadow: 4px 4px 0 #4B1E8C !important;
  outline: none !important;
}
.btn-contact,
.btn-submit,
input[type="submit"],
button[type="submit"] {
  border: 4px solid #4B1E8C !important;
  border-radius: 0 !important;
  font-weight: 900 !important;
  letter-spacing: 3px !important;
  box-shadow: 5px 5px 0 #4B1E8C !important;
  transition: box-shadow .12s, transform .12s !important;
}
.btn-contact:hover,
.btn-submit:hover,
input[type="submit"]:hover,
button[type="submit"]:hover {
  box-shadow: 8px 8px 0 #7C3AED !important;
  transform: translate(-3px,-3px) !important;
}

/* ── PRIVACY PAGE ── */
.privacy-section      { border-top: 5px solid #4B1E8C !important; }
.privacy-content h2   { font-weight: 900 !important; border-bottom: 3px solid rgba(75,30,140,0.35) !important; padding-bottom: 12px !important; }
.privacy-content h3   { font-weight: 900 !important; }

/* ── FOCUS ── */
:focus-visible { outline: 3px solid #7C3AED !important; outline-offset: 3px !important; }

/* ── ALL INPUT FIELDS GLOBALLY ── */
input, textarea, select {
  border-radius: 0 !important;
  font-weight: 600 !important;
}
input:focus, textarea:focus, select:focus {
  outline: 3px solid #7C3AED !important;
  outline-offset: 0 !important;
}

/* ── ALL LINKS IN CONTENT ── */
a:not(.store-nav a):not(.btn-amazon):not(.btn-app):not(.btn-bundle):not(.footer-social-link):not(.music-card):not(.book-card) {
  font-weight: 700 !important;
}

/* ── SECTION NUMBER DECORATORS ── */
.section-num { font-weight: 900 !important; }

/* ── PLACEHOLDER BLOCKS ── */
.placeholder-dark,
.placeholder-light {
  border: 3px dashed rgba(75,30,140,0.35) !important;
  border-radius: 0 !important;
}

/* ═══════════════════════════════════════════════════
   RESPONSIVE — Mobile-first 360px → 768px → 1440px
═══════════════════════════════════════════════════ */

* { box-sizing: border-box !important; }

img, video, iframe, embed {
  max-width: 100% !important;
  height: auto !important;
  display: block !important;
}

body { overflow-x: hidden !important; }

/* ── MOBILE: 360px–767px ── */
@media (max-width: 767px) {

  /* Nav */
  .store-nav {
    top: 10px !important;
    padding: 8px 6px !important;
    max-width: calc(100vw - 20px) !important;
    border-radius: 100px !important;
  }
  .nav-brand { font-size: 13px !important; }

  /* Hero */
  .name-hero { padding: 80px 16px 28px !important; }
  .name-hero-title { font-size: clamp(48px, 18vw, 90px) !important; letter-spacing: -0.03em !important; white-space: nowrap !important; }
  .name-hero-footer { flex-direction: column !important; gap: 6px !important; text-align: center !important; }

  /* Sections */
  .section-dark,
  .section-light { padding: 48px 16px !important; }
  .section-title { font-size: clamp(28px, 8vw, 44px) !important; letter-spacing: -1px !important; white-space: normal !important; }
  .section-label { font-size: 10px !important; letter-spacing: 3px !important; }

  /* Grids */
  .books-grid    { grid-template-columns: repeat(2, 1fr) !important; gap: 12px !important; }
  .bundles-grid  { grid-template-columns: 1fr !important; max-width: 100% !important; }
  .apps-grid     { grid-template-columns: repeat(2, 1fr) !important; gap: 12px !important; }
  .music-grid-albums { grid-template-columns: repeat(2, 1fr) !important; gap: 10px !important; }

  /* Bundle cards */
  .bundle-card { padding: 32px 20px !important; box-shadow: 5px 5px 0 #4B1E8C !important; }
  .bundle-price { font-size: 44px !important; }
  .bundle-name  { font-size: 22px !important; }

  /* Book cards */
  .book-card { box-shadow: 4px 4px 0 #4B1E8C !important; }
  .book-title { font-size: 12px !important; }
  .btn-amazon { font-size: 9px !important; padding: 8px 12px !important; }

  /* App cards */
  .app-card { padding: 20px 16px !important; box-shadow: 4px 4px 0 #4B1E8C !important; }
  .app-name { font-size: 16px !important; }

  /* Filter tabs */
  .filter-tabs  { gap: 8px !important; }
  .filter-tab   { padding: 8px 14px !important; font-size: 10px !important; letter-spacing: 1px !important; }

  /* Load more */
  .btn-load-more { padding: 14px 32px !important; font-size: 11px !important; letter-spacing: 2px !important; }

  /* Footer */
  .footer-nl-form { flex-direction: column !important; gap: 10px !important; }
  .footer-nl-form input  { border: 2px solid rgba(198,183,255,0.2) !important; padding: 14px 16px !important; }
  .footer-nl-form button { padding: 14px 20px !important; width: 100% !important; border: 2px solid #4B1E8C !important; }

  /* Empire stats */
  .empire-stats { gap: 20px !important; }
  .empire-stat-num { font-size: 32px !important; }
  .empire-section { padding: 48px 16px 64px !important; }
  .empire-headline { font-size: clamp(22px, 6vw, 36px) !important; }

  /* Scroll to top */
  #scrollTop { bottom: 16px !important; right: 16px !important; width: 44px !important; height: 44px !important; }

  /* Touch targets */
  .btn-amazon, .btn-app, .btn-bundle, .btn-load-more,
  .filter-tab, .store-nav a {
    min-height: 44px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  /* Marquee text */
  .marquee-inner span { font-size: 10px !important; padding-right: 36px !important; }

  /* Disable hover transforms on touch */
  .book-card:hover, .app-card:hover, .bundle-card:hover,
  .music-card:hover, .btn-amazon:hover, .btn-app:hover,
  .btn-bundle:hover, .btn-load-more:hover {
    transform: none !important;
  }
}

/* ── SMALL MOBILE: 360px ── */
@media (max-width: 390px) {
  .books-grid { grid-template-columns: 1fr !important; }
  .apps-grid  { grid-template-columns: 1fr !important; }
  .name-hero-title { font-size: clamp(44px, 17vw, 80px) !important; }
  .section-dark, .section-light { padding: 40px 12px !important; }
  .bundle-card { padding: 28px 16px !important; }
}

/* ── TABLET: 768px–1023px ── */
@media (min-width: 768px) and (max-width: 1023px) {

  /* Nav */
  .store-nav {
    padding: 10px 8px !important;
    border-radius: 100px !important;
  }

  /* Sections */
  .section-dark,
  .section-light { padding: 72px 32px !important; }
  .section-title { font-size: clamp(32px, 5vw, 54px) !important; }

  /* Grids */
  .books-grid    { grid-template-columns: repeat(3, 1fr) !important; gap: 16px !important; }
  .bundles-grid  { grid-template-columns: 1fr !important; max-width: 520px !important; }
  .apps-grid     { grid-template-columns: repeat(3, 1fr) !important; gap: 16px !important; }
  .music-grid-albums { grid-template-columns: repeat(3, 1fr) !important; }

  /* Bundle */
  .bundle-card { padding: 40px 28px !important; }
  .bundle-price { font-size: 52px !important; }

  /* Hero */
  .name-hero { padding: 80px 32px 44px !important; }
  .name-hero-title { font-size: clamp(64px, 13vw, 130px) !important; }

  /* Empire */
  .empire-section { padding: 72px 28px 88px !important; }
}

/* ── DESKTOP: 1024px–1439px ── */
@media (min-width: 1024px) and (max-width: 1439px) {
  .section-dark,
  .section-light { padding: 100px 48px !important; }
  .books-grid    { grid-template-columns: repeat(4, 1fr) !important; }
  .apps-grid     { grid-template-columns: repeat(4, 1fr) !important; }
  .bundles-grid  { grid-template-columns: repeat(3, 1fr) !important; }
}

/* ── WIDE DESKTOP: 1440px+ ── */
@media (min-width: 1440px) {
  .section-dark,
  .section-light { padding: 120px 60px !important; }
  .store-nav {
    padding: 12px 10px !important;
    border-radius: 100px !important;
  }
  .name-hero { padding: 90px 60px 64px !important; }
  .books-grid { grid-template-columns: repeat(4, 1fr) !important; }
}

/* ── DISABLE CURSOR ON TOUCH DEVICES ── */
@media (hover: none) and (pointer: coarse) {
  .cursor-dot, .cursor-ring { display: none !important; }
  * { cursor: auto !important; }
  a, button, .filter-tab, .book-card, .app-card,
  .bundle-card, .music-card { cursor: pointer !important; }
}
