/* ============================================================
   CHARCOAL & CRIMSON — light theme for Mishra Enterprise
   Loads after harvest-theme.css and overrides it completely.
   Palette: charcoal black + crimson red, light gray base, lavender-white base.
   ============================================================ */

:root {
  --rv-bg: #f5f6f8;
  --rv-surface: #ffffff;
  --rv-surface-2: #f0f1f4;
  --rv-line: #e3e4e8;
  --rv-violet: #d6223a;
  --rv-violet-dark: #17191d;
  --rv-violet-deep: #0e1013;
  --rv-sun: #d6223a;
  --rv-sun-dark: #d6223a;
  --rv-sale: #c01c31;
  --rv-text: #1d2129;
  --rv-text-soft: #4d5560;
  --rv-text-mute: #7b8591;
  --rv-shadow: 0 12px 32px rgba(20, 22, 26, .12);
  --rv-shadow-sm: 0 4px 14px rgba(20, 22, 26, .09);
}

/* ---------- base ---------- */
body.gm-theme {
  background: var(--rv-bg) !important;
  color: var(--rv-text) !important;
}
body.gm-theme h1, body.gm-theme h2, body.gm-theme h3,
body.gm-theme .gm-section-title, body.gm-theme .product-info h1,
body.gm-theme .policy-content h1, body.gm-theme .gm-mega-title,
body.gm-theme .gm-filter-heading, body.gm-theme .gm-filter-title,
body.gm-theme .gm-col-head h3, body.page-home .gm-col-head h3 {
  color: var(--rv-violet-dark) !important;
}
body.gm-theme a { color: var(--rv-violet) !important; }
body.gm-theme a:hover { color: var(--rv-sale) !important; }
body.gm-theme p, body.gm-theme li, body.gm-theme dd { color: var(--rv-text-soft) !important; }
body.gm-theme dt, body.gm-theme strong { color: var(--rv-text) !important; }
body.gm-theme .gm-section-title::after { background: var(--rv-sun) !important; }

/* ---------- utility strip: sunshine yellow ---------- */
body.gm-theme .gm-utility {
  background: var(--rv-sun) !important;
  color: #ffffff !important;
  border-bottom: 3px solid var(--rv-violet-deep) !important;
}
body.gm-theme .gm-utility a, body.gm-theme .gm-utility-links a { color: #ffffff !important; }
body.gm-theme .gm-utility a:hover, body.gm-theme .gm-utility-links a:hover { color: #ffe1e5 !important; }
body.gm-theme .gm-utility-promo { color: #ffffff !important; }
body.gm-theme .gm-utility-meta { color: rgba(255,255,255,.78) !important; }

/* ---------- header row: clean white band, violet accents ---------- */
body.gm-theme .gm-header {
  background: #ffffff !important;
  border-bottom: 1px solid var(--rv-line) !important;
  box-shadow: 0 4px 18px rgba(20,22,26,.08) !important;
  padding: 16px 0 !important;
}
body.gm-theme .gm-brand strong, body.gm-theme .gm-brand span,
body.gm-theme .gm-drawer-brand strong, body.gm-theme .gm-drawer-brand span {
  color: var(--rv-violet) !important;
  letter-spacing: .5px !important;
}
body.gm-theme .gm-header-action {
  background: var(--rv-surface-2) !important;
  border: 1.5px solid var(--rv-line) !important;
  border-radius: 14px !important;
  color: var(--rv-violet-dark) !important;
  box-shadow: none !important;
}
body.gm-theme .gm-header-action:hover {
  background: var(--rv-violet) !important;
  border-color: var(--rv-violet) !important;
  color: #ffffff !important;
}
body.gm-theme .gm-header-action:hover .gm-action-icon,
body.gm-theme .gm-header-action:hover .gm-action-text strong,
body.gm-theme .gm-header-action:hover .gm-action-text small { color: #ffffff !important; }
body.gm-theme .gm-action-icon, body.gm-theme .gm-header-action { color: var(--rv-violet) !important; }
body.gm-theme .gm-action-text strong { color: var(--rv-violet-dark) !important; }
body.gm-theme .gm-action-text small { color: var(--rv-text-mute) !important; }
body.gm-theme .gm-cart-badge { background: var(--rv-sale) !important; color: #ffffff !important; }

/* search: lavender bar with yellow button */
body.gm-theme .gm-header .gm-search, body.gm-theme .gm-search {
  background: var(--rv-surface-2) !important;
  border: 2px solid var(--rv-line) !important;
  border-radius: 14px !important;
}
body.gm-theme .gm-search input { color: var(--rv-text) !important; }
body.gm-theme .gm-search input::placeholder { color: var(--rv-text-mute) !important; }
body.gm-theme .gm-search:focus-within { border-color: var(--rv-violet) !important; }
body.gm-theme .gm-search button {
  background: var(--rv-sun) !important;
  color: #ffffff !important;
  border-radius: 10px !important;
}
body.gm-theme .gm-search button:hover { background: var(--rv-violet) !important; color: #ffffff !important; }

/* ---------- navbar: full-width flat deep-violet bar ---------- */
body.gm-theme .gm-header .gm-navbar, body.gm-theme .gm-navbar {
  background: var(--rv-violet-dark) !important;
  box-shadow: 0 5px 16px rgba(14,16,19,.35) !important;
  padding: 0 !important;
}
body.gm-theme .gm-navbar-inner {
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 6px 10px !important;
}
/* kill the navy tile boxes from the base theme */
body.gm-theme .gm-nav-dropdown,
body.gm-theme .gm-nav-tile,
body.gm-theme .gm-nav-link,
body.gm-theme .gm-nav-mega-trigger {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 8px !important;
  color: #f1f2f4 !important;
}
body.gm-theme .gm-nav a, body.gm-theme .gm-navbar a { color: #f1f2f4 !important; }
body.gm-theme .gm-nav a:hover, body.gm-theme .gm-navbar a:hover,
body.gm-theme .gm-nav-dropdown.is-open .gm-nav-mega-trigger,
body.gm-theme .gm-nav-dropdown:hover .gm-nav-mega-trigger,
body.gm-theme .gm-nav-tile:hover, body.gm-theme .gm-nav-link:hover {
  color: #ffffff !important;
  background: var(--rv-sun) !important;
}
body.gm-theme .gm-browse-btn {
  background: var(--rv-sun) !important;
  color: #ffffff !important;
  border-radius: 8px !important;
}
body.gm-theme .gm-browse-btn:hover { background: #ffffff !important; color: var(--rv-violet-deep) !important; }
body.gm-theme .gm-nav-badge-hot { background: var(--rv-sale) !important; color: #ffffff !important; }
body.gm-theme .gm-nav-badge-sale { background: #ffffff !important; color: var(--rv-sun) !important; }
body.gm-theme .gm-menu-btn, body.gm-theme .gm-navbar .gm-menu-btn { color: var(--rv-sun) !important; }

/* menu labels: inherit the light link colour (fixes invisible dark text) */
body.gm-theme .gm-navbar .gm-nav-tile-copy strong,
body.gm-theme .gm-navbar .gm-nav-tile-copy small,
body.gm-theme .gm-navbar .gm-nav-caret,
body.gm-theme .gm-nav .gm-nav-tile-copy strong,
body.gm-theme .gm-nav .gm-nav-tile-copy small,
body.gm-theme .gm-nav .gm-nav-caret {
  color: inherit !important;
}

/* ---------- mega menu / dropdowns: white with violet top bar ---------- */
body.gm-theme .gm-mega-menu {
  background: var(--rv-surface) !important;
  border-top: 4px solid var(--rv-violet) !important;
  box-shadow: var(--rv-shadow) !important;
}
body.gm-theme .gm-mega-title { border-bottom-color: var(--rv-sun) !important; color: var(--rv-violet-dark) !important; }
body.gm-theme .gm-mega-list a { color: var(--rv-text-soft) !important; }
body.gm-theme .gm-mega-list a:hover { background: var(--rv-violet) !important; color: #ffffff !important; }
body.gm-theme .gm-mega-list a.gm-mega-aisle { color: var(--rv-violet) !important; }
body.gm-theme .gm-mega-list a.gm-mega-aisle:hover { background: rgba(214,34,58,.10) !important; color: var(--rv-violet-dark) !important; }
body.gm-theme .gm-mega-featured { background: var(--rv-surface-2) !important; border-left-color: var(--rv-line) !important; }
body.gm-theme .gm-mega-product { background: var(--rv-surface) !important; border-color: var(--rv-line) !important; }
body.gm-theme .gm-mega-product-name { color: var(--rv-text) !important; }
body.gm-theme .gm-mega-product-price { color: var(--rv-violet) !important; }
body.gm-theme .gm-nav-dropdown .gm-dropdown-menu, body.gm-theme .gm-browse-menu {
  background: var(--rv-surface) !important;
  border: 1px solid var(--rv-line) !important;
  border-top: 4px solid var(--rv-violet) !important;
}
body.gm-theme .gm-browse-menu a, body.gm-theme .gm-dropdown-menu a { color: var(--rv-text-soft) !important; }
body.gm-theme .gm-browse-menu a:hover, body.gm-theme .gm-dropdown-menu a:hover {
  background: var(--rv-violet) !important; color: #ffffff !important;
}

/* ---------- buttons: violet primary ---------- */
body.gm-theme .btn-primary, body.gm-theme .gm-btn-shop, body.gm-theme .gm-filter-apply {
  background: var(--rv-violet) !important;
  color: #ffffff !important;
  box-shadow: 0 6px 18px rgba(214,34,58,.32) !important;
}
body.gm-theme .btn-primary:hover, body.gm-theme .gm-btn-shop:hover, body.gm-theme .gm-filter-apply:hover {
  background: var(--rv-violet-dark) !important;
  color: #ffffff !important;
  box-shadow: 0 10px 26px rgba(214,34,58,.40) !important;
}

/* ---------- sections ---------- */
body.gm-theme .gm-section-muted { background: #eee9fa !important; }
body.gm-theme .gm-breadcrumb-bar { background: #eee9fa !important; }
body.gm-theme .gm-breadcrumb a { color: var(--rv-violet) !important; }

/* ---------- cards ---------- */
body.gm-theme .gm-cat-card, body.gm-theme .gm-collection-card,
body.gm-theme .gm-promo-grid > *, body.gm-theme .gm-banner-card,
body.gm-theme .panel, body.gm-theme .buy-panel, body.gm-theme .summary-box,
body.gm-theme .policy-card, body.gm-theme .contact-card, body.gm-theme .gm-testimonial,
body.gm-theme .gm-product-card, body.gm-theme .gm-feature,
body.gm-theme .gm-filter-panel, body.gm-theme .gm-shop-sidebar .panel {
  background: var(--rv-surface) !important;
  border: 1px solid var(--rv-line) !important;
  box-shadow: var(--rv-shadow-sm) !important;
}
body.gm-theme .gm-product-card:hover, body.gm-theme .gm-cat-card:hover,
body.gm-theme .gm-collection-card:hover, body.gm-theme .gm-banner-card:hover,
body.gm-theme .gm-testimonial:hover {
  border-color: var(--rv-violet) !important;
  box-shadow: 0 16px 38px rgba(214,34,58,.18) !important;
}
body.gm-theme .gm-product-title, body.gm-theme .gm-product-title a,
body.gm-theme .gm-cat-name, body.gm-theme .gm-collection-name { color: var(--rv-text) !important; }
body.gm-theme .gm-product-title a:hover { color: var(--rv-violet) !important; }

/* category tiles -> soft violet-family tints */
body.gm-theme .gm-cat-mint, body.gm-theme .gm-promo-mint { background: #e4f3ec !important; }
body.gm-theme .gm-cat-sage, body.gm-theme .gm-promo-sage { background: #e8f1e2 !important; }
body.gm-theme .gm-cat-lemon { background: #fdf6d8 !important; }
body.gm-theme .gm-cat-peach { background: #fceedd !important; }
body.gm-theme .gm-cat-rose, body.gm-theme .gm-promo-lavender { background: #fbe9f1 !important; }
body.gm-theme .gm-cat-sky { background: #e5eef9 !important; }
body.gm-theme .gm-cat-lavender { background: #efe9fb !important; }
body.gm-theme .gm-banner-cream { background: #f1ebfb !important; }
body.gm-theme .gm-banner-pink { background: #fceaf2 !important; }

/* product image panel: soft lavender */
body.gm-theme .gm-product-img {
  background: linear-gradient(160deg, #f4f5f7 0%, #ebecef 100%) !important;
  border-bottom-color: var(--rv-line) !important;
}

/* ---------- prices / badges / stars ---------- */
body.gm-theme .gm-price, body.gm-theme .gm-row-price, body.gm-theme .gm-promo-price,
body.gm-theme .price-lg { color: var(--rv-violet-dark) !important; }
body.gm-theme .gm-price.is-sale { color: var(--rv-sale) !important; }
body.gm-theme .gm-price-was { color: var(--rv-text-mute) !important; }
body.gm-theme .gm-sale-badge, body.gm-theme .gm-sale-badge-sm, body.gm-theme .gm-promo-tag-sale {
  background: var(--rv-sale) !important;
}
body.gm-theme .gm-promo-tag, body.gm-theme .gm-sold-badge { background: var(--rv-violet) !important; color: #ffffff !important; }
body.gm-theme .gm-star { color: #e0e2e6 !important; }
body.gm-theme .gm-star.is-filled { color: var(--rv-sun-dark) !important; }
body.gm-theme .gm-reviews { color: var(--rv-text-mute) !important; }

/* product button */
body.gm-theme .gm-product-btn { background: var(--rv-surface-2) !important; color: var(--rv-violet-dark) !important; border: 1px solid var(--rv-line) !important; }
body.gm-theme .gm-product-card:hover .gm-product-btn, body.gm-theme .gm-product-btn:hover {
  background: var(--rv-violet) !important; color: #ffffff !important; border-color: var(--rv-violet) !important;
}
body.gm-theme .gm-product-btn-options:hover { background: var(--rv-violet) !important; color: #ffffff !important; }

/* features */
body.gm-theme .gm-feature-icon { color: var(--rv-violet) !important; }
body.gm-theme .gm-feature strong { color: var(--rv-text) !important; }
body.gm-theme .gm-feature span { color: var(--rv-text-mute) !important; }

/* ---------- hero carousel: light airy violet, no dark band ---------- */
body.page-home .gm-hero-slider,
body.page-home .gm-hero-slide {
  background: linear-gradient(180deg, #eef0f3 0%, #f5f6f8 100%) !important;
  border-radius: 0 !important;
}
body.page-home .gm-hero-slider::before, body.page-home .gm-hero-slider::after {
  opacity: .12 !important;
}
body.page-home .gm-hero-slide-inner {
  background: #ffffff !important;
  border: 1px solid var(--rv-line) !important;
  border-left: 8px solid var(--rv-violet) !important;
  box-shadow: var(--rv-shadow) !important;
}
body.page-home .gm-hero-slide-inner::before { border-color: rgba(214,34,58,.14) !important; }
body.page-home .gm-hero-slide-inner::after { background: rgba(214,34,58,.10) !important; }
body.page-home .gm-hero-copy h1 { color: var(--rv-violet-deep) !important; }
body.page-home .gm-hero-sub { color: var(--rv-text-soft) !important; }
body.page-home .gm-hero-price .gm-price { color: var(--rv-violet) !important; }
body.page-home .gm-hero-price .gm-price-was { color: var(--rv-text-mute) !important; }
body.page-home .gm-btn-shop {
  background: var(--rv-sun) !important;
  color: #ffffff !important;
  box-shadow: 0 8px 20px rgba(214,34,58,.42) !important;
}
body.page-home .gm-btn-shop:hover { background: var(--rv-violet-dark) !important; color: #ffffff !important; }
body.page-home .gm-hero-visual-imgwrap {
  border-color: var(--rv-violet) !important;
  background: #f5f6f8 !important;
  box-shadow: 0 18px 44px rgba(20,22,26,.20) !important;
}
body.page-home .gm-hero-visual-tag { background: var(--rv-sale) !important; color: #ffffff !important; }
body.page-home .gm-hero-arrow {
  background: #ffffff !important;
  color: var(--rv-violet) !important;
  border: 2px solid var(--rv-violet) !important;
}
body.page-home .gm-hero-arrow:hover { background: var(--rv-violet) !important; color: #ffffff !important; }

/* ---------- shop chrome ---------- */
body.gm-theme .gm-shop-hero { background: var(--rv-surface) !important; border: 1px solid var(--rv-line) !important; }
body.gm-theme .gm-shop-hero h1, body.gm-theme .gm-shop-hero p { color: var(--rv-text) !important; }
body.gm-theme .gm-collection-toolbar, body.gm-theme .gm-toolbar-right {
  background: var(--rv-surface) !important;
  border-color: var(--rv-line) !important;
}
body.gm-theme .gm-view-btn { color: var(--rv-violet) !important; }
body.gm-theme .gm-view-btn.is-active { background: var(--rv-violet) !important; color: #ffffff !important; }
body.gm-theme .gm-result-meta { color: var(--rv-text-soft) !important; }
body.gm-theme .gm-filter-group { border-color: var(--rv-line) !important; }
body.gm-theme .gm-check input { accent-color: var(--rv-violet) !important; }
body.gm-theme .gm-price-range { accent-color: var(--rv-violet) !important; }
body.gm-theme .gm-filter-clear { color: var(--rv-sale) !important; }
body.gm-theme .gm-page-num, body.gm-theme .gm-page-next {
  background: var(--rv-surface) !important;
  border-color: var(--rv-line) !important;
  color: var(--rv-violet) !important;
}
body.gm-theme .gm-page-num.is-active, body.gm-theme .gm-page-num:hover, body.gm-theme .gm-page-next:hover {
  background: var(--rv-violet) !important;
  color: #ffffff !important;
  border-color: var(--rv-violet) !important;
}

/* ---------- forms ---------- */
body.gm-theme .form-grid input, body.gm-theme .form-grid select, body.gm-theme .form-grid textarea,
body.gm-theme .buy-form select, body.gm-theme .gm-sort select, body.gm-theme .gm-check input,
body.gm-theme input[type="text"], body.gm-theme input[type="email"], body.gm-theme input[type="search"],
body.gm-theme input[type="password"], body.gm-theme select, body.gm-theme textarea {
  background: var(--rv-surface) !important;
  border: 1px solid var(--rv-line) !important;
  color: var(--rv-text) !important;
}
body.gm-theme input:focus, body.gm-theme select:focus, body.gm-theme textarea:focus {
  border-color: var(--rv-violet) !important;
  box-shadow: 0 0 0 3px rgba(214,34,58,.14) !important;
}
body.gm-theme label { color: var(--rv-text-soft) !important; }

/* ---------- product / cart / auth ---------- */
body.gm-theme .buy-panel { border-top-color: var(--rv-sun) !important; }
body.gm-theme .spec-list dt { color: var(--rv-violet) !important; }
body.gm-theme .gm-backdrop { background: rgba(10,12,15,.55) !important; }
body.gm-theme .cart-table th { background: var(--rv-surface-2) !important; color: var(--rv-violet-dark) !important; }
body.gm-theme .cart-table td { border-color: var(--rv-line) !important; color: var(--rv-text-soft) !important; }
body.gm-theme .auth-page { background: var(--rv-bg) !important; }
body.gm-theme .auth-split-gate { background: var(--rv-surface) !important; border-color: var(--rv-line) !important; }
body.gm-theme .auth-split-tabs { background: var(--rv-violet-dark) !important; }
body.gm-theme .auth-tab-indicator { background: var(--rv-sun) !important; }
body.gm-theme .auth-sidebar { background: var(--rv-violet-dark) !important; }
body.gm-theme .auth-split-tab.is-active { color: var(--rv-sun) !important; }
body.gm-theme .auth-main, body.gm-theme .auth-split-panel.is-focused { background: var(--rv-surface) !important; }
body.gm-theme .auth-panel-register { background: var(--rv-surface-2) !important; }
body.gm-theme .auth-dash-layout { border-color: var(--rv-line) !important; }
body.gm-theme .notice, body.gm-theme .highlight-box {
  background: #f0f1f4 !important;
  border-color: var(--rv-violet) !important;
  color: var(--rv-violet-dark) !important;
}
body.gm-theme .notice.error { background: #fce7f0 !important; border-color: var(--rv-sale) !important; color: var(--rv-sale) !important; }
body.gm-theme .gm-testimonial footer strong { color: var(--rv-text) !important; }
body.gm-theme .gm-testimonial footer span { color: var(--rv-text-mute) !important; }
body.gm-theme .gm-scroll-top { background: var(--rv-violet) !important; color: #ffffff !important; }
body.gm-theme .gm-scroll-top:hover { background: var(--rv-sale) !important; color: #ffffff !important; }
body.gm-theme .empty-state p, body.gm-theme .empty-state .sub { color: var(--rv-text-mute) !important; }
body.gm-theme .policy-nav a { color: var(--rv-text-soft) !important; }
body.gm-theme .policy-nav a.active, body.gm-theme .policy-nav a:hover { color: var(--rv-violet) !important; }
body.gm-theme .contact-card dd, body.gm-theme .contact-card dt { color: var(--rv-text-soft) !important; }

/* ---------- newsletter + footer ---------- */
body.gm-theme .gm-newsletter {
  background: var(--rv-surface-2) !important;
  border: 1px solid var(--rv-line) !important;
}
body.gm-theme .gm-newsletter h2, body.gm-theme .gm-newsletter p,
body.gm-theme .gm-newsletter-copy { color: var(--rv-text) !important; }
body.gm-theme .gm-newsletter-form button { background: var(--rv-violet) !important; color: #ffffff !important; }
body.gm-theme .gm-newsletter-form button:hover { background: var(--rv-violet-dark) !important; }

body.gm-theme .gm-footer {
  background: var(--rv-violet-deep) !important;
  color: rgba(255,255,255,.78) !important;
  border-top: 4px solid var(--rv-sun) !important;
}
body.gm-theme .gm-footer h4, body.gm-theme .gm-footer strong,
body.gm-theme .gm-footer-brand strong { color: #ffffff !important; }
body.gm-theme .gm-footer a { color: rgba(255,255,255,.85) !important; }
body.gm-theme .gm-footer a:hover { color: #ffffff !important; text-decoration: underline !important; }
body.gm-theme .gm-footer-col, body.gm-theme .gm-footer-contact, body.gm-theme .gm-footer-hours {
  color: rgba(255,255,255,.62) !important;
}
body.gm-theme .gm-footer-base, body.gm-theme .gm-footer-base span { color: rgba(255,255,255,.75) !important; }

/* footer paragraphs (address, hours, contact) must stay light on charcoal */
body.gm-theme .gm-footer p, body.gm-theme .gm-footer li,
body.gm-theme .gm-footer dd, body.gm-theme .gm-footer span {
  color: rgba(255,255,255,.82) !important;
}
body.gm-theme .gm-footer a:hover { color: #ffffff !important; }

/* testimonial footers live on white cards: keep them light/neutral */
body.gm-theme .gm-testimonial footer {
  background: transparent !important;
  border: none !important;
  color: inherit !important;
}
