/* ============================================================
   LAWGIC DESIGN SYSTEM — Global + Store Page Overrides
      v2.0 — Febrero 2026
         Paleta: Primary-600 #3C65E2 | Navy-900 #101836
            Font: Plus Jakarta Sans
               ============================================================ */
               
               @import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,200..800;1,200..800&display=swap');
               
               /* ── CSS Variables ─────────────────────────────────────────── */
               :root {
                     --lw-p600: #3C65E2;
                       --lw-p700: #4056BE;
                         --lw-p500: #4166D4;
                           --lw-p200: #DDE8FD;
                             --lw-p100: #E8F2FC;
                               --lw-p50:  #F2F8FF;
                                 --lw-white: #FFFFFF;
                                   --lw-surface: #F5F6FA;
                                     --lw-border: #E9EEF5;
                                       --lw-t900: #0B0F1A;
                                         --lw-t600: #7C86A4;
                                           --lw-muted: #C0C3CF;
                                             --lw-navy900: #101836;
                                               --lw-navy800: #182249;
                                                 --lw-navy700: #1E2A59;
                                                   --lw-shadow-sm: 0 1px 2px rgba(16,24,40,0.06);
                                                     --lw-shadow-md: 0 8px 24px rgba(16,24,40,0.08);
                                                       --lw-shadow-fab: 0 10px 30px rgba(16,24,40,0.18);
                                                         --lw-grad-text: linear-gradient(90deg, #3860D8 0%, #A818F0 55%, #F06838 100%);
                                                           --lw-grad-border: linear-gradient(90deg, #B0C0F0 0%, #D8A0F8 55%, #F89050 100%);
                                                             --lw-r-pill: 9999px;
                                                               --lw-r-card: 16px;
                                                                 --lw-r-card-sm: 14px;
                                                                   --lw-r-input: 12px;
               }
               
               /* ── Global Typography ─────────────────────────────────────── */
               #encore-theme,
               #encore-theme *,
               #encore-theme h1,
               #encore-theme h2,
               #encore-theme h3,
               #encore-theme h4,
               #encore-theme h5,
               #encore-theme h6,
               #encore-theme p,
               #encore-theme a,
               #encore-theme button,
               #encore-theme input,
               #encore-theme select,
               #encore-theme textarea,
               #encore-theme .btn,
               #encore-theme .link-list__link,
               #encore-theme .logo__text {
                     font-family: 'Plus Jakarta Sans', sans-serif !important;
               }
               
               /* ── Navbar ────────────────────────────────────────────────── */
               #encore-theme .navbar {
                     background: rgba(255,255,255,0.97) !important;
                       backdrop-filter: blur(12px);
                         border-bottom: 1px solid var(--lw-border) !important;
                           box-shadow: 0 1px 0 rgba(16,24,40,0.04) !important;
               }
               
               #encore-theme .navbar .logo__text,
               #encore-theme .navbar__brand {
                     font-weight: 800 !important;
                       color: var(--lw-t900) !important;
                         letter-spacing: -0.02em !important;
               }
               
               #encore-theme .navbar .link-list__link,
               #encore-theme .header__link,
               #encore-theme .nav-link {
                     font-weight: 600 !important;
                       font-size: 14px !important;
                         color: var(--lw-t900) !important;
                           transition: color 0.2s !important;
               }
               
               #encore-theme .navbar .link-list__link:hover,
               #encore-theme .header__link:hover {
                     color: var(--lw-p600) !important;
               }
               
               /* CTA button in nav */
               #encore-theme .navbar .btn--primary,
               #encore-theme .header__cta .btn {
                     background: var(--lw-p600) !important;
                       border-radius: var(--lw-r-pill) !important;
                         font-weight: 600 !important;
                           font-size: 14px !important;
                             padding: 10px 22px !important;
                               color: #fff !important;
                                 border: none !important;
                                   transition: background 0.2s, transform 0.2s !important;
                                     box-shadow: var(--lw-shadow-md) !important;
               }
               
               #encore-theme .navbar .btn--primary:hover,
               #encore-theme .header__cta .btn:hover {
                     background: var(--lw-p700) !important;
                       transform: translateY(-1px) !important;
               }
               
               /* ── Store Page — Hero Section ─────────────────────────────── */
               /* Hero wrapper — Soft Sky gradient background */
               body.store #encore-theme .section:first-child,
               body.store #encore-theme [class*="hero"],
               body.store #encore-theme .global-hero,
               body.store #encore-theme section:first-of-type {
                     background: radial-gradient(1200px circle at 50% 15%, #F2F8FF 0%, #FFFFFF 70%) !important;
               }
               
               /* Hero label — "Lawgic Educación" */
               body.store #encore-theme .hero-label,
               body.store #encore-theme .eyebrow,
               body.store #encore-theme [class*="eyebrow"],
               body.store #encore-theme .section-label {
                     display: inline-block;
                       background: var(--lw-p100) !important;
                         color: var(--lw-p600) !important;
                           font-size: 12px !important;
                             font-weight: 700 !important;
                               letter-spacing: 0.04em !important;
                                 padding: 6px 14px !important;
                                   border-radius: var(--lw-r-pill) !important;
                                     margin-bottom: 16px !important;
               }
               
               /* ── Store — Section Headings (Featured / Available) ──────── */
               
               /* Target the section heading containers */
               body.store #encore-theme .card-heading,
               body.store #encore-theme .col-md-12.card--heading {
                     padding: 48px 0 12px !important;
               }
               
               /* Section heading h3 — translate & style */
               body.store #encore-theme .col-md-12.card--heading h3,
               body.store #encore-theme .store-section-title {
                     font-size: 28px !important;
                       font-weight: 800 !important;
                         color: var(--lw-t900) !important;
                           letter-spacing: -0.02em !important;
                             margin-bottom: 0 !important;
               }
               
               /* Hide the default <hr> separator and replace with styled version */
               body.store #encore-theme .col-md-12.card--heading hr {
                     display: none !important;
               }
               
               /* ── Store — Product Grid Layout ───────────────────────────── */
               body.store #encore-theme .row {
                     gap: 0;
               }
               
               /* The products container */
               body.store #encore-theme .products,
               body.store #encore-theme .store-products {
                     background: var(--lw-surface) !important;
                       padding: 40px 0 80px !important;
               }
               
               /* ── Store — Offer Cards ───────────────────────────────────── */
               body.store #encore-theme .col-4,
               body.store #encore-theme .col-md-4 {
                     padding: 8px !important;
               }
               
               /* Card anchor wrapper */
               body.store #encore-theme a.col-4,
               body.store #encore-theme a[class*="col-"] {
                     padding: 8px !important;
               }
               
               /* Store card */
               body.store #encore-theme .store-card,
               body.store #encore-theme [class*="store-card"],
               body.store #encore-theme .offer-card,
               body.store #encore-theme [class*="offer-card"] {
                     background: var(--lw-white) !important;
                       border: 1px solid var(--lw-border) !important;
                         border-radius: var(--lw-r-card) !important;
                           overflow: hidden !important;
                             box-shadow: var(--lw-shadow-sm) !important;
                               transition: box-shadow 0.2s, border-color 0.2s, transform 0.2s !important;
                                 display: flex !important;
                                   flex-direction: column !important;
                                     height: 100% !important;
               }
               
               body.store #encore-theme .store-card:hover,
               body.store #encore-theme [class*="store-card"]:hover,
               body.store #encore-theme .offer-card:hover,
               body.store #encore-theme [class*="offer-card"]:hover {
                     box-shadow: var(--lw-shadow-md) !important;
                       border-color: var(--lw-p200) !important;
                         transform: translateY(-2px) !important;
               }
               
               /* Card image */
               body.store #encore-theme .store-card__image,
               body.store #encore-theme [class*="store-card__image"] img,
               body.store #encore-theme .offer-card__image img {
                     width: 100% !important;
                       height: 200px !important;
                         object-fit: cover !important;
                           display: block !important;
               }
               
               /* Card body */
               body.store #encore-theme .store-card__body,
               body.store #encore-theme [class*="store-card__body"] {
                     padding: 20px 20px 24px !important;
                       flex: 1 !important;
                         display: flex !important;
                           flex-direction: column !important;
                             gap: 6px !important;
               }
               
               /* Card title */
               body.store #encore-theme .store-card__title,
               body.store #encore-theme h5[class*="store-card"] {
                     font-size: 16px !important;
                       font-weight: 700 !important;
                         color: var(--lw-t900) !important;
                           line-height: 1.3 !important;
                             letter-spacing: -0.01em !important;
                               margin-bottom: 4px !important;
               }
               
               /* Card description */
               body.store #encore-theme .store-card__description,
               body.store #encore-theme p[class*="store-card"] {
                     font-size: 13px !important;
                       color: var(--lw-t600) !important;
                         line-height: 1.6 !important;
                           margin-bottom: 8px !important;
                             flex: 1 !important;
               }
               
               /* Card price */
               body.store #encore-theme .store-card__price,
               body.store #encore-theme h5.store-card__price {
                     font-size: 15px !important;
                       font-weight: 700 !important;
                         color: var(--lw-p600) !important;
                           margin-top: auto !important;
                             padding-top: 8px !important;
               }
               
               /* ── Store — Hero text overrides ───────────────────────────── */
               /* The store hero section structure */
               body.store #encore-theme .section.section--hero,
               body.store #encore-theme .hero-section {
                     background: radial-gradient(1200px circle at 50% 15%, #F2F8FF 0%, #FFFFFF 70%) !important;
                       padding: 80px 0 60px !important;
                         text-align: center !important;
               }
               
               /* Main headings in store */
               body.store #encore-theme h1,
               body.store #encore-theme .hero__title {
                     font-size: 52px !important;
                       font-weight: 800 !important;
                         color: var(--lw-t900) !important;
                           letter-spacing: -0.03em !important;
                             line-height: 1.08 !important;
               }
               
               body.store #encore-theme h2 {
                     font-size: 40px !important;
                       font-weight: 800 !important;
                         color: var(--lw-t900) !important;
                           letter-spacing: -0.02em !important;
                             line-height: 1.15 !important;
               }
               
               /* ── Store — Section background ────────────────────────────── */
               body.store #encore-theme .section {
                     background: var(--lw-white) !important;
               }
               
               body.store #encore-theme .section:nth-child(odd) {
                     background: var(--lw-surface) !important;
               }
               
               /* ── Store — Products section container ────────────────────── */
               body.store #encore-theme .sizer {
                     max-width: 1200px !important;
                       margin: 0 auto !important;
                         padding: 0 24px !important;
               }
               
               body.store #encore-theme .container {
                     max-width: 1200px !important;
                       padding: 0 24px !important;
               }
               
               /* ── Store — Translate section titles via CSS ───────────────── */
               /* Hide English text and show Spanish equivalent */
               body.store #encore-theme h3:has(+ hr) {
                     font-size: 22px !important;
                       font-weight: 800 !important;
                         color: var(--lw-t900) !important;
                           letter-spacing: -0.02em !important;
                             margin-bottom: 24px !important;
                               padding-top: 16px !important;
                                 border-bottom: 2px solid var(--lw-p200) !important;
                                   padding-bottom: 12px !important;
               }
               
               /* Hide the default hr */
               body.store #encore-theme h3 + hr {
                     display: none !important;
               }
               
               /* ── Store — Spacing & Layout ───────────────────────────────── */
               body.store #encore-theme .section {
                     padding: 72px 0 !important;
               }
               
               body.store #encore-theme .section:first-child {
                     padding: 80px 0 60px !important;
               }
               
               /* ── Store — Footer ─────────────────────────────────────────── */
               #encore-theme footer,
               #encore-theme .footer {
                     background: var(--lw-navy900) !important;
                       color: rgba(255,255,255,0.7) !important;
                         padding: 40px 24px !important;
                           font-size: 14px !important;
               }
               
               #encore-theme footer a,
               #encore-theme .footer a {
                     color: rgba(255,255,255,0.7) !important;
                       font-weight: 500 !important;
                         transition: color 0.2s !important;
               }
               
               #encore-theme footer a:hover,
               #encore-theme .footer a:hover {
                     color: #fff !important;
               }
               
               #encore-theme .footer__powered-by a {
                     color: rgba(255,255,255,0.4) !important;
                       font-size: 12px !important;
               }
               
               /* ── Global Buttons ─────────────────────────────────────────── */
               #encore-theme .btn--primary,
               #encore-theme [class*="btn-primary"] {
                     background: var(--lw-p600) !important;
                       border-radius: var(--lw-r-pill) !important;
                         font-weight: 600 !important;
                           color: #fff !important;
                             border: none !important;
                               transition: background 0.2s, transform 0.2s !important;
                                 box-shadow: var(--lw-shadow-md) !important;
                                   font-family: 'Plus Jakarta Sans', sans-serif !important;
               }
               
               #encore-theme .btn--primary:hover,
               #encore-theme [class*="btn-primary"]:hover {
                     background: var(--lw-p700) !important;
                       transform: translateY(-1px) !important;
               }
               
               #encore-theme .btn--secondary,
               #encore-theme [class*="btn-secondary"] {
                     background: var(--lw-white) !important;
                       border-radius: var(--lw-r-pill) !important;
                         font-weight: 600 !important;
                           color: var(--lw-t900) !important;
                             border: 1px solid var(--lw-border) !important;
                               transition: all 0.2s !important;
                                 font-family: 'Plus Jakarta Sans', sans-serif !important;
               }
               
               #encore-theme .btn--secondary:hover {
                     border-color: var(--lw-p200) !important;
                       color: var(--lw-p600) !important;
               }
               
               /* ── Preview mode banner fix ─────────────────────────────────── */
               .preview-bar {
                     background: var(--lw-navy800) !important;
                       font-family: 'Plus Jakarta Sans', sans-serif !important;
               }
               
               /* ── Responsive ──────────────────────────────────────────────── */
               @media (max-width: 768px) {
                     body.store #encore-theme h1,
                       body.store #encore-theme .hero__title {
                               font-size: 36px !important;
                       }
                       
                         body.store #encore-theme h2 {
                                 font-size: 28px !important;
                         }
                         
                           body.store #encore-theme .sizer,
                             body.store #encore-theme .container {
                                     padding: 0 16px !important;
                             }
                             
                               body.store #encore-theme .section {
                                       padding: 48px 0 !important;
                               }
                               
                                 body.store #encore-theme .col-4,
                                   body.store #encore-theme .col-md-4 {
                                           padding: 6px !important;
                                   }
               }
                                   }
                               }
                             }
                         }
                       }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }
               }