/*
Theme Name: Shop ReadyToGoCables
Theme URI: https://shop.readytogocables.com
Description: Professional high-performance e-commerce child theme for ReadyToGoCables custom cables, M12 industrial connectors, and automation wiring solutions, powered by GeneratePress and WooCommerce.
Author: ReadyToGoCables
Author URI: https://shop.readytogocables.com
Template: generatepress
Version: 1.0.0
License: GNU General Public License v2 or later
Text Domain: shop-readytogocables
*/

/* ==========================================================================
   MULTI-BRAND DESIGN TOKENS (Ready To Go Cables)
   ========================================================================== */
:root {
  /* 1. Core Brand Colors */
  --brand-primary: #006BAC;          /* Color principal / CTA / Botones / Badges */
  --brand-primary-hover: #004d7c;    /* Hover principal */
  --brand-primary-glow: rgba(0, 107, 172, 0.20);
  --brand-primary-soft: rgba(0, 107, 172, 0.08);

  --brand-secondary: #00235D;        /* Titulares / Navbar / Header / Footer */
  --brand-secondary-dark: #001538;
  --brand-secondary-soft: rgba(0, 35, 93, 0.06);
  --brand-secondary-border: rgba(0, 35, 93, 0.12);

  --brand-accent: #e6f3fa;           /* Píldoras / Fondos sutiles */
  --brand-accent-soft: rgba(230, 243, 250, 0.60);

  --brand-surface: #f8fafc;          /* Fondo secciones secundarias */
  --brand-surface-muted: #ededed;
  --brand-white: #ffffff;

  --brand-text-main: #00235D;
  --brand-text-body: #334155;
  --brand-text-muted: #64748B;

  /* 2. Brand Typography - Universal Inter */
  --brand-font-heading: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --brand-font-body: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;

  /* 3. Component Aliases (Compatibilidad total con el motor de componentes) */
  --wc-magenta: var(--brand-primary);
  --wc-magenta-hover: var(--brand-primary-hover);
  --wc-magenta-glow: var(--brand-primary-glow);
  --wc-magenta-soft: var(--brand-primary-soft);

  --wc-navy: var(--brand-secondary);
  --wc-navy-dark: var(--brand-secondary-dark);
  --wc-navy-soft: var(--brand-secondary-soft);
  --wc-navy-border: var(--brand-secondary-border);

  --wc-rose: var(--brand-accent);
  --wc-rose-soft: var(--brand-accent-soft);

  --wc-surface-soft: var(--brand-surface);
  --wc-surface-muted: var(--brand-surface-muted);
  --wc-white: var(--brand-white);

  --wc-text-main: var(--brand-text-main);
  --wc-text-body: var(--brand-text-body);
  --wc-text-muted: var(--brand-text-muted);

  --wc-font-heading: var(--brand-font-heading);
  --wc-font-body: var(--brand-font-body);

  /* Geometry & Elevation */
  --wc-radius-sm: 6px;
  --wc-radius-md: 10px;
  --wc-radius-lg: 16px;
  --wc-radius-pill: 9999px;

  --wc-shadow-sm: 0 2px 8px rgba(38, 48, 101, 0.04);
  --wc-shadow-md: 0 6px 24px rgba(38, 48, 101, 0.07);
  --wc-shadow-lg: 0 16px 40px rgba(38, 48, 101, 0.11);

  --wc-max-width: 1260px;
  --wc-transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1);
}

/* ==========================================================================
   GLOBAL RESET & TYPOGRAPHY
   ========================================================================== */
html, body {
  overflow-x: clip !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

body {
  font-family: var(--wc-font-body);
  color: var(--wc-text-body);
  background-color: var(--wc-white);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4, h5, h6,
.entry-title {
  font-family: var(--wc-font-heading) !important;
  color: var(--wc-navy);
  letter-spacing: -0.02em;
  font-weight: 700;
}

/* ==========================================================================
   GENERATEPRESS & GUTENBERG FULL-WIDTH PAGE LAYOUT RESET
   ========================================================================== */
html,
body {
  overflow-x: clip !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

#page,
.site,
.grid-container,
.site-content,
.content-area,
.site-main,
.wanglas-page-main,
.wanglas-page-article,
.inside-article {
  width: 100% !important;
  max-width: 100% !important;
  flex: 1 1 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
  box-sizing: border-box !important;
}

/* Enforce 1260px container & lateral paddings on all non-home pages (Cart, Checkout, Account, Static) */
body:not(.home) .wanglas-entry-content,
.woocommerce-cart .wanglas-entry-content,
.woocommerce-checkout .wanglas-entry-content,
.woocommerce-account .wanglas-entry-content {
  width: 100% !important;
  max-width: var(--wc-max-width, 1260px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: clamp(16px, 3vw, 24px) !important;
  padding-right: clamp(16px, 3vw, 24px) !important;
  padding-top: clamp(24px, 4vw, 48px) !important;
  padding-bottom: clamp(40px, 5vw, 64px) !important;
  box-sizing: border-box !important;
}

/* Home Page Full-Width Reset: Sections span 100% full bleed without lateral margins */
body.home #page,
body.home #page.grid-container,
body.home .site,
body.home .grid-container,
body.home #content,
body.home .site-content,
body.home .content-area,
body.home #primary,
body.home .site-main,
body.home .wanglas-page-main,
body.home .wanglas-home-main,
body.home .wanglas-home-content,
body.home .wanglas-entry-content,
body.home .entry-content,
body.page-id-96 #page,
body.page-id-96 .site,
body.page-id-96 .grid-container,
body.page-id-96 #content,
body.page-id-96 .site-content,
body.page-id-96 .content-area,
body.page-id-96 #primary,
body.page-id-96 .site-main,
body.page-id-96 .wanglas-entry-content,
body.page-id-96 .entry-content {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.home .entry-header,
.home .page-header,
.page-id-96 .entry-header,
.page-id-96 .page-header {
  display: none !important;
}

/* Full Bleed Gutenberg Group Sections */
.entry-content > .alignfull,
.wp-block-group.alignfull,
.wanglas-billboard-hero,
.wanglas-hero-section,
.wanglas-section-categories,
.wanglas-section-featured,
.wanglas-section-distributor-banner {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  position: static !important;
  left: auto !important;
  right: auto !important;
  box-sizing: border-box !important;
}

.wp-block-group__inner-container,
.wanglas-hero-container {
  max-width: var(--wc-max-width, 1260px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* Gutenberg responsive flex columns */
.wp-block-columns {
  display: flex !important;
  flex-wrap: wrap !important;
  box-sizing: border-box !important;
}

@media (min-width: 782px) {
  .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
    flex-basis: 0 !important;
    flex-grow: 1 !important;
  }
}

/* ==========================================================================
   TOPBAR (LUXURY EDITORIAL BAR)
   ========================================================================== */
.wanglas-topbar {
  background: linear-gradient(90deg, #1d2552 0%, #263065 50%, #1d2552 100%);
  color: var(--wc-white);
  font-size: 0.79rem;
  font-family: var(--wc-font-body);
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
  padding: 8px 0;
}

.wanglas-topbar-inner {
  max-width: var(--wc-max-width);
  margin: 0 auto;
  padding: 0 24px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.wanglas-topbar-link {
  color: rgba(255, 255, 255, 0.92) !important;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-weight: 500;
  letter-spacing: 0.01em;
  transition: var(--wc-transition);
}

.wanglas-topbar-link:hover {
  color: var(--wc-rose) !important;
}

.wanglas-topbar-center {
  display: flex;
  align-items: center;
  gap: 10px;
}

.wanglas-badge-mini {
  background: linear-gradient(135deg, var(--wc-magenta) 0%, #d81b85 100%);
  color: var(--wc-white);
  font-family: var(--wc-font-heading);
  font-size: 0.66rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  padding: 3px 10px;
  border-radius: var(--wc-radius-pill);
  box-shadow: 0 2px 6px rgba(190, 23, 117, 0.35);
}

.wanglas-topbar-text {
  font-weight: 500;
  letter-spacing: 0.02em;
  color: rgba(255, 255, 255, 0.92);
}

.wanglas-topbar-right {
  display: flex;
  align-items: center;
  gap: 12px;
}

.wanglas-topbar-social-label {
  font-size: 0.72rem;
  color: rgba(255, 255, 255, 0.65);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.wanglas-social-icon {
  color: rgba(255, 255, 255, 0.85) !important;
  display: inline-flex;
  align-items: center;
  transition: var(--wc-transition);
}

.wanglas-social-icon:hover {
  color: var(--wc-rose) !important;
  transform: translateY(-1px);
}

.wanglas-social-icon:hover {
  color: var(--wc-rose) !important;
  transform: translateY(-1px);
}

/* ==========================================================================
   MAIN HEADER (2-ROW LUXURY ARCHITECTURE)
   ========================================================================== */
.wanglas-main-header {
  background-color: var(--wc-white);
  border-bottom: 1px solid var(--wc-navy-border);
  box-shadow: 0 4px 18px rgba(38, 48, 101, 0.05);
  position: sticky;
  top: 0;
  z-index: 999;
}

/* FILA 1: Top Row (Logo, Search, Distribuidora CTA, Icons) */
.wanglas-header-top-row {
  border-bottom: 1px solid rgba(38, 48, 101, 0.06);
}

.wanglas-header-inner {
  max-width: var(--wc-max-width);
  margin: 0 auto;
  padding: 14px 24px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
}

.wanglas-mobile-toggle {
  display: none;
  background: transparent;
  border: none;
  padding: 8px;
  color: var(--wc-navy);
  cursor: pointer;
}

.wanglas-header-logo {
  flex-shrink: 0;
  max-width: 190px;
  display: flex;
  align-items: center;
}

.wanglas-header-logo a,
.wanglas-logo-link {
  display: inline-flex;
  align-items: center;
}

.wanglas-header-logo img,
.wanglas-header-logo .custom-logo,
.wanglas-logo-img {
  height: 48px !important;
  max-height: 48px !important;
  width: auto !important;
  max-width: 190px !important;
  object-fit: contain !important;
  display: block !important;
}

/* ==========================================================================
   FIBOSEARCH LUXURY BRAND STYLING & AUTOCOMPLETE OVERRIDES
   ========================================================================== */
.wanglas-header-search {
  flex: 1;
  max-width: 520px;
  position: relative;
}

/* FiboSearch Master Wrapper */
.dgwt-wcas-search-wrapp {
  max-width: 100% !important;
  width: 100% !important;
  margin: 0 !important;
}

.dgwt-wcas-search-wrapp .dgwt-wcas-search-form {
  position: relative !important;
  margin: 0 !important;
}

/* Outer Border & Input Container */
.dgwt-wcas-search-wrapp .dgwt-wcas-sf-wrapp {
  display: flex !important;
  align-items: center !important;
  background-color: var(--wc-surface-soft) !important;
  border: 1.5px solid rgba(38, 48, 101, 0.12) !important;
  border-radius: 9999px !important;
  padding: 3px 4px 3px 18px !important;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
  position: relative !important;
  box-sizing: border-box !important;
  height: 46px !important;
}

/* Remove any Solaris theme pseudo-elements (like the left arrow triangle) */
.dgwt-wcas-search-wrapp::before,
.dgwt-wcas-search-wrapp::after,
.dgwt-wcas-sf-wrapp::before,
.dgwt-wcas-sf-wrapp::after,
.dgwt-wcas-search-form::before,
.dgwt-wcas-search-form::after {
  display: none !important;
  content: none !important;
}

.dgwt-wcas-search-wrapp.dgwt-wcas-search-focused .dgwt-wcas-sf-wrapp,
.dgwt-wcas-search-wrapp .dgwt-wcas-sf-wrapp:focus-within {
  background-color: #ffffff !important;
  border-color: var(--wc-magenta) !important;
  box-shadow: 0 0 0 3.5px var(--wc-magenta-soft) !important;
}

/* Search Text Input Field */
.dgwt-wcas-search-wrapp input[type="search"].dgwt-wcas-search-input {
  flex: 1 !important;
  width: 100% !important;
  height: 100% !important;
  background: transparent !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  padding: 0 10px 0 0 !important;
  margin: 0 !important;
  font-family: var(--wc-font-body) !important;
  font-size: 0.88rem !important;
  color: var(--wc-navy) !important;
}

.dgwt-wcas-search-wrapp input[type="search"].dgwt-wcas-search-input::placeholder {
  color: #94a3b8 !important;
  font-size: 0.86rem !important;
}

/* Submit Button / Magnifier Icon */
.dgwt-wcas-search-wrapp .dgwt-wcas-search-submit {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  max-width: 36px !important;
  border-radius: 50% !important;
  background: var(--wc-magenta) !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 0 0 auto !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  box-shadow: 0 2px 8px rgba(190, 23, 117, 0.25) !important;
  position: relative !important;
  overflow: hidden !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.dgwt-wcas-search-wrapp .dgwt-wcas-search-submit:hover {
  background: var(--wc-magenta-hover) !important;
  transform: scale(1.04) !important;
}

/* Always render clean White Magnifier Vector */
.dgwt-wcas-search-wrapp .dgwt-wcas-search-submit svg,
.dgwt-wcas-search-wrapp .dgwt-wcas-ico-magnifier {
  display: block !important;
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
  min-height: 16px !important;
  fill: #ffffff !important;
  stroke: #ffffff !important;
  color: #ffffff !important;
  opacity: 1 !important;
  visibility: visible !important;
  margin: auto !important;
  transform: none !important;
}

.dgwt-wcas-search-wrapp .dgwt-wcas-search-submit svg path,
.dgwt-wcas-search-wrapp .dgwt-wcas-ico-magnifier path {
  fill: #ffffff !important;
  stroke: #ffffff !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Hide Fibo default separate handler icon, voice search, and idle preloader */
.dgwt-wcas-search-icon,
.dgwt-wcas-voice-search,
.dgwt-wcas-icon-preloader,
.dgwt-wcas-preloader {
  display: none !important;
}

.dgwt-wcas-search-wrapp.dgwt-wcas-search-loading .dgwt-wcas-preloader {
  display: block !important;
  right: 48px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
}

/* Suggestions Dropdown Card */
.dgwt-wcas-suggestions-wrapp {
  border-radius: 16px !important;
  border: 1px solid rgba(38, 48, 101, 0.1) !important;
  box-shadow: 0 16px 40px rgba(38, 48, 101, 0.14) !important;
  background: #ffffff !important;
  padding: 8px 0 !important;
  margin-top: 8px !important;
  overflow: hidden !important;
  z-index: 99999 !important;
}

/* Suggestion Items */
.dgwt-wcas-suggestion {
  padding: 10px 16px !important;
  border-bottom: 1px solid rgba(38, 48, 101, 0.05) !important;
  transition: background-color 0.15s ease !important;
  display: flex !important;
  align-items: center !important;
}

.dgwt-wcas-suggestion:last-child {
  border-bottom: none !important;
}

.dgwt-wcas-suggestion.dgwt-wcas-suggestion-selected,
.dgwt-wcas-suggestion:hover {
  background-color: var(--wc-magenta-soft) !important;
}

/* Product Thumbnail */
.dgwt-wcas-suggestion .dgwt-wcas-si-thumb {
  width: 44px !important;
  height: 44px !important;
  border-radius: 10px !important;
  object-fit: cover !important;
  background: #f8f9fa !important;
  border: 1px solid rgba(38, 48, 101, 0.08) !important;
  margin-right: 12px !important;
}

/* Product Title */
.dgwt-wcas-suggestion .dgwt-wcas-st-title {
  font-family: var(--wc-font-heading) !important;
  font-weight: 700 !important;
  font-size: 0.92rem !important;
  color: var(--wc-navy) !important;
  line-height: 1.3 !important;
}

/* Product Price */
.dgwt-wcas-suggestion .dgwt-wcas-st-price {
  font-family: var(--wc-font-heading) !important;
  font-weight: 800 !important;
  color: var(--wc-magenta) !important;
  font-size: 0.88rem !important;
  margin-top: 2px !important;
}

/* "See All Results" Link at bottom */
.dgwt-wcas-suggestion-more {
  background-color: #faf5f6 !important;
  text-align: center !important;
  padding: 12px 16px !important;
  margin-top: 4px !important;
  border-top: 1px solid rgba(190, 23, 117, 0.15) !important;
}

.dgwt-wcas-suggestion-more a {
  font-family: var(--wc-font-heading) !important;
  font-weight: 700 !important;
  font-size: 0.88rem !important;
  color: var(--wc-magenta) !important;
  text-decoration: none !important;
  display: block !important;
  transition: color 0.2s ease !important;
}

.dgwt-wcas-suggestion-more a:hover {
  color: var(--wc-navy) !important;
}

/* Fallback Search Input */
.wanglas-search-form {
  position: relative;
  display: flex;
  align-items: center;
}

.wanglas-search-icon {
  position: absolute;
  left: 12px;
  color: var(--wc-text-muted);
  pointer-events: none;
}

.wanglas-search-input {
  width: 100%;
  padding: 9px 80px 9px 36px !important;
  background-color: var(--wc-surface-soft) !important;
  border: 1px solid var(--wc-navy-border) !important;
  border-radius: var(--wc-radius-pill) !important;
  font-size: 0.88rem !important;
  color: var(--wc-navy) !important;
  font-family: var(--wc-font-body) !important;
  transition: var(--wc-transition);
}

.wanglas-search-input:focus {
  background-color: var(--wc-white) !important;
  border-color: var(--wc-magenta) !important;
  box-shadow: 0 0 0 3px var(--wc-magenta-soft) !important;
  outline: none;
}

.wanglas-search-btn {
  position: absolute;
  right: 4px;
  background-color: var(--wc-navy) !important;
  color: var(--wc-white) !important;
  border: none !important;
  border-radius: var(--wc-radius-pill) !important;
  padding: 6px 14px !important;
  font-size: 0.78rem !important;
  font-weight: 600 !important;
  cursor: pointer;
}

/* FILA 2: Dedicated Navigation Row */
.wanglas-header-nav-row {
  background-color: #ffffff;
}

.wanglas-nav-row-inner {
  max-width: var(--wc-max-width);
  margin: 0 auto;
  padding: 0 24px;
}

/* Desktop Navigation List */
.wanglas-desktop-nav {
  display: flex;
  align-items: center;
}

.wanglas-primary-menu {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
  gap: 28px;
}

.wanglas-primary-menu > li {
  position: relative;
  margin: 0;
  padding: 8px 0;
}

.wanglas-primary-menu > li > a {
  font-family: var(--wc-font-heading);
  font-size: 0.94rem;
  font-weight: 700;
  color: var(--wc-navy);
  text-decoration: none !important;
  padding: 6px 4px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  position: relative;
  transition: color 0.25s ease;
}

.wanglas-primary-menu > li > a::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 2.5px;
  background-color: var(--wc-magenta);
  border-radius: 2px;
  transition: width 0.25s ease;
}

.wanglas-primary-menu > li > a:hover,
.wanglas-primary-menu > li.current-menu-item > a {
  color: var(--wc-magenta) !important;
}

.wanglas-primary-menu > li > a:hover::after,
.wanglas-primary-menu > li.current-menu-item > a::after {
  width: 100%;
}

/* Has dropdown indicator icon */
.wanglas-primary-menu > li.menu-item-has-children > a {
  padding-right: 14px;
}

.wanglas-primary-menu > li.menu-item-has-children > a::before {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  width: 5px;
  height: 5px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: translateY(-70%) rotate(45deg);
  transition: transform 0.25s ease;
}

.wanglas-primary-menu > li.menu-item-has-children:hover > a::before {
  transform: translateY(-30%) rotate(-135deg);
}

/* Dropdown Sub-menu */
.wanglas-primary-menu .sub-menu {
  position: absolute;
  top: 100%;
  left: 0;
  background-color: #ffffff;
  border: 1px solid rgba(190, 23, 117, 0.12);
  border-radius: 16px;
  box-shadow: 0 16px 36px rgba(38, 48, 101, 0.12), 0 4px 12px rgba(38, 48, 101, 0.04);
  list-style: none;
  margin: 0;
  padding: 10px;
  min-width: 250px;
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
  z-index: 1000;
}

.wanglas-primary-menu li:hover > .sub-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.wanglas-primary-menu .sub-menu li {
  margin: 0;
  list-style: none;
  padding: 0;
}

.wanglas-primary-menu .sub-menu li a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 16px;
  font-family: var(--wc-font-heading);
  font-size: 0.9rem;
  font-weight: 600;
  color: var(--wc-navy);
  text-decoration: none !important;
  border-radius: 10px;
  transition: all 0.2s ease;
}

.wanglas-primary-menu .sub-menu li a::after {
  display: none !important;
}

.wanglas-primary-menu .sub-menu li a:hover {
  background-color: var(--wc-rose-soft);
  color: var(--wc-magenta);
  transform: translateX(4px);
}

/* Header Right Actions */
.wanglas-header-right {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-shrink: 0;
}

.wanglas-btn-distribuidora {
  background-color: var(--wc-magenta) !important;
  color: var(--wc-white) !important;
  font-family: var(--wc-font-heading);
  font-size: 0.85rem;
  font-weight: 700;
  text-decoration: none;
  padding: 9px 20px;
  border-radius: var(--wc-radius-pill);
  box-shadow: 0 4px 14px var(--wc-magenta-glow);
  transition: var(--wc-transition);
  white-space: nowrap;
}

.wanglas-btn-distribuidora:hover {
  background-color: var(--wc-magenta-hover) !important;
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(190, 23, 117, 0.35);
}

.wanglas-icons-group {
  display: flex;
  align-items: center;
  gap: 8px;
}

.wanglas-action-btn {
  color: var(--wc-navy) !important;
  padding: 8px;
  border-radius: var(--wc-radius-pill);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  transition: var(--wc-transition);
}

.wanglas-action-btn:hover {
  background-color: var(--wc-surface-soft);
  color: var(--wc-magenta) !important;
}

.wanglas-cart-count {
  position: absolute;
  top: 0;
  right: 0;
  background-color: var(--wc-magenta);
  color: var(--wc-white);
  font-size: 0.68rem;
  font-weight: 700;
  font-family: var(--wc-font-heading);
  min-width: 18px;
  height: 18px;
  border-radius: 9px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 4px;
}

/* ==========================================================================
   MOBILE DRAWER NAVIGATION
   ========================================================================== */
.wanglas-nav-drawer {
  position: fixed !important;
  top: 0 !important;
  left: -100% !important;
  width: 320px !important;
  max-width: 85vw !important;
  height: 100vh !important;
  max-height: 100vh !important;
  background: #ffffff !important;
  border-right: 1px solid var(--wc-navy-border) !important;
  box-shadow: 10px 0 40px rgba(0, 0, 0, 0.25) !important;
  z-index: 999999 !important;
  display: flex !important;
  flex-direction: column !important;
  overflow-y: auto !important;
  transition: left 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.wanglas-nav-drawer.is-open {
  left: 0 !important;
}

/* Mobile Nav Backdrop Overlay with Luxury Blur */
.wanglas-nav-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(38, 48, 101, 0.6);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  z-index: 999998;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.wanglas-nav-overlay.is-active {
  display: block;
  opacity: 1;
}

.wanglas-drawer-header {
  padding: 18px 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid var(--wc-navy-border);
}

.wanglas-drawer-title {
  font-family: var(--wc-font-heading);
  font-weight: 800;
  color: var(--wc-navy);
  font-size: 1.08rem;
}

.wanglas-drawer-close {
  background: transparent;
  border: none;
  color: var(--wc-navy);
  cursor: pointer;
  padding: 6px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: var(--wc-transition);
}

.wanglas-drawer-close:hover {
  background: var(--wc-rose-soft);
  color: var(--wc-magenta);
}

.wanglas-drawer-search {
  padding: 16px 20px 0;
}

.wanglas-drawer-body {
  padding: 16px 20px 24px;
  flex: 1;
  display: flex;
  flex-direction: column;
}

.wanglas-mobile-menu {
  list-style: none;
  margin: 0 0 24px 0;
  padding: 0;
}

.wanglas-mobile-menu li {
  margin: 0;
  border-bottom: 1px solid rgba(38, 48, 101, 0.06);
}

.wanglas-mobile-menu li a {
  display: block;
  padding: 12px 0;
  font-family: var(--wc-font-heading);
  font-size: 1rem;
  font-weight: 600;
  color: var(--wc-navy);
  text-decoration: none;
  transition: color 0.2s ease;
}

.wanglas-mobile-menu li a:hover {
  color: var(--wc-magenta);
}

.wanglas-mobile-menu .sub-menu {
  list-style: none;
  margin: 0;
  padding: 0 0 8px 16px;
}

.wanglas-mobile-menu .sub-menu li a {
  padding: 7px 0;
  font-size: 0.9rem;
  font-weight: 500;
  color: var(--wc-text-muted);
}

.wanglas-drawer-cta {
  margin-top: auto;
  padding-top: 16px;
}

.wanglas-drawer-cta .is-block {
  display: block;
  text-align: center;
}

/* ==========================================================================
   DEFAULT PAGE TEMPLATE (PAGE.PHP LUXURY LAYOUT)
   ========================================================================== */
.wanglas-page-main {
  background-color: #ffffff;
  min-height: 60vh;
}

.wanglas-page-header {
  background: linear-gradient(135deg, #263065 0%, #1a224a 100%);
  padding: clamp(36px, 5vw, 64px) 24px;
  color: #ffffff;
  position: relative;
  overflow: hidden;
}

.wanglas-page-header::before {
  content: "";
  position: absolute;
  top: -50%;
  right: -10%;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(190, 23, 117, 0.22) 0%, rgba(190, 23, 117, 0) 70%);
  pointer-events: none;
}

.wanglas-page-header-inner {
  max-width: var(--wc-max-width);
  margin: 0 auto;
  position: relative;
  z-index: 2;
}

.wanglas-page-breadcrumbs {
  font-size: 0.84rem;
  color: rgba(255, 255, 255, 0.7);
  margin-bottom: 12px;
  font-family: var(--wc-font-heading);
}

.wanglas-page-breadcrumbs a {
  color: rgba(255, 255, 255, 0.85);
  text-decoration: none !important;
}

.wanglas-page-breadcrumbs a:hover {
  color: var(--wc-rose);
}

.wanglas-page-title {
  color: #ffffff !important;
  font-family: var(--wc-font-heading) !important;
  font-size: clamp(2rem, 3.8vw, 2.75rem) !important;
  font-weight: 800 !important;
  margin: 0 !important;
  line-height: 1.2 !important;
}

.wanglas-page-container {
  max-width: var(--wc-max-width);
  margin: 0 auto;
  padding: clamp(40px, 6vw, 72px) 24px;
}

.wanglas-page-container.is-fullwidth {
  max-width: 100%;
  padding: 0;
}

.wanglas-page-content {
  font-size: 1.05rem;
  line-height: 1.8;
  color: #2d3748;
}

.wanglas-page-content h2 {
  font-family: var(--wc-font-heading) !important;
  font-size: 1.65rem !important;
  font-weight: 800 !important;
  color: var(--wc-navy) !important;
  margin: 36px 0 16px 0 !important;
}

.wanglas-page-content h3 {
  font-family: var(--wc-font-heading) !important;
  font-size: 1.3rem !important;
  font-weight: 700 !important;
  color: var(--wc-navy) !important;
  margin: 28px 0 12px 0 !important;
}

.wanglas-page-content p {
  margin-bottom: 20px;
}

.wanglas-page-content ul,
.wanglas-page-content ol {
  margin: 0 0 24px 20px;
  padding: 0;
}

.wanglas-page-content li {
  margin-bottom: 8px;
}

/* ==========================================================================
   NUESTRA MARCA - LUXURY EDITORIAL STYLING
   ========================================================================== */
.wanglas-brand-page-wrapper {
  padding: 40px 0 80px !important;
  max-width: var(--wc-max-width);
  margin: 0 auto;
  box-sizing: border-box;
}

@media (max-width: 768px) {
  .wanglas-brand-page-wrapper {
    padding: 10px 0 50px !important;
  }

  .wanglas-brand-page-wrapper > .wp-block-group__inner-container {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

.wanglas-brand-story-hero {
  margin-bottom: 30px;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 36px !important;
  align-items: center !important;
}

@media (max-width: 960px) {
  .wanglas-brand-story-hero {
    flex-direction: column !important;
    gap: 28px !important;
  }
  
  .wanglas-brand-story-text-col,
  .wanglas-brand-story-media-col {
    flex-basis: 100% !important;
    width: 100% !important;
    min-width: 100% !important;
  }
}

.wanglas-brand-tag-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--wc-rose-soft);
  border: 1px solid rgba(190, 23, 117, 0.18);
  padding: 6px 14px;
  border-radius: var(--wc-radius-pill);
  margin-bottom: 16px;
}

.wanglas-tag-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--wc-magenta);
}

.wanglas-tag-label {
  font-family: var(--wc-font-heading);
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  color: var(--wc-magenta);
  text-transform: uppercase;
}

.wanglas-brand-hero-h2 {
  font-family: var(--wc-font-heading) !important;
  font-size: clamp(1.8rem, 3.8vw, 3.1rem) !important;
  font-weight: 800 !important;
  color: var(--wc-navy) !important;
  line-height: 1.15 !important;
  letter-spacing: -0.02em !important;
  margin: 0 0 20px 0 !important;
}

.wanglas-gradient-accent {
  background: linear-gradient(135deg, #be1775 0%, #e0318f 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.wanglas-brand-paragraph-highlight {
  font-size: 1.05rem !important;
  line-height: 1.7 !important;
  color: var(--wc-navy) !important;
  font-weight: 500 !important;
  margin-bottom: 16px !important;
}

.wanglas-brand-paragraph-regular {
  font-size: 0.95rem !important;
  line-height: 1.7 !important;
  color: #4b5563 !important;
  margin-bottom: 24px !important;
}

/* Stats Row */
.wanglas-brand-stats-row {
  display: flex;
  align-items: center;
  justify-content: space-around;
  gap: 8px;
  background: var(--wc-surface-soft);
  border: 1px solid var(--wc-navy-border);
  padding: 14px 12px;
  border-radius: 18px;
  width: 100%;
  box-sizing: border-box;
}

.wanglas-stat-item {
  text-align: center;
  flex: 1;
  min-width: 0;
}

.wanglas-stat-number {
  font-family: var(--wc-font-heading);
  font-size: clamp(1.1rem, 3.8vw, 1.35rem);
  font-weight: 800;
  color: var(--wc-magenta);
  line-height: 1.1;
  white-space: nowrap;
}

.wanglas-stat-label {
  font-size: clamp(0.62rem, 2.1vw, 0.76rem);
  font-weight: 700;
  color: var(--wc-navy);
  text-transform: uppercase;
  letter-spacing: 0.01em;
  margin-top: 4px;
  line-height: 1.2;
  word-break: keep-all;
}

.wanglas-stat-divider {
  width: 1px;
  height: 26px;
  background: var(--wc-navy-border);
  flex-shrink: 0;
}

/* Media Composition Card */
.wanglas-brand-composition-card {
  position: relative;
  border-radius: 28px;
  overflow: visible;
  padding: 12px;
  background: linear-gradient(145deg, #ffffff 0%, #fdf2f4 100%);
  border: 1px solid rgba(190, 23, 117, 0.12);
  box-shadow: 0 20px 48px rgba(38, 48, 101, 0.08);
  box-sizing: border-box;
  width: 100%;
}

.wanglas-brand-img-main img {
  border-radius: 20px;
  width: 100%;
  height: auto;
  display: block;
}

.wanglas-floating-glass-badge {
  position: absolute;
  bottom: 20px;
  left: 12px;
  background: rgba(255, 255, 255, 0.94);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid rgba(190, 23, 117, 0.2);
  border-radius: 16px;
  padding: 10px 16px;
  display: flex;
  align-items: center;
  gap: 12px;
  box-shadow: 0 14px 32px rgba(38, 48, 101, 0.14);
  max-width: calc(100% - 24px);
}

.wanglas-glass-badge-icon {
  width: 36px;
  height: 36px;
  border-radius: 10px;
  background: var(--wc-rose-soft);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.wanglas-glass-badge-text {
  display: flex;
  flex-direction: column;
}

.wanglas-glass-badge-text strong {
  font-family: var(--wc-font-heading);
  font-size: 0.86rem;
  color: var(--wc-navy);
  font-weight: 700;
}

.wanglas-glass-badge-text span {
  font-size: 0.74rem;
  color: var(--wc-magenta);
  font-weight: 600;
}

/* Pillars Section */
.wanglas-brand-pillars-section {
  background: linear-gradient(180deg, #f8f9fa 0%, #ffffff 100%);
  border: 1px solid rgba(38, 48, 101, 0.06);
  border-radius: 28px;
  padding: 48px 36px;
  position: relative;
  box-sizing: border-box;
  width: 100%;
}

@media (max-width: 768px) {
  .wanglas-brand-pillars-section {
    padding: 32px 18px !important;
    border-radius: 20px !important;
  }
}

.wanglas-brand-section-header-box {
  text-align: center;
  max-width: 620px;
  margin: 0 auto 36px;
}

.wanglas-brand-mini-eyebrow {
  font-family: var(--wc-font-heading);
  font-size: 0.74rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  color: var(--wc-magenta);
  text-transform: uppercase;
  display: block;
  margin-bottom: 8px;
}

.wanglas-brand-pillars-title {
  font-family: var(--wc-font-heading) !important;
  font-size: clamp(1.5rem, 2.6vw, 2.2rem) !important;
  font-weight: 800 !important;
  color: var(--wc-navy) !important;
  letter-spacing: -0.01em !important;
  margin: 0 0 10px 0 !important;
}

.wanglas-brand-pillars-subtitle {
  font-size: 0.94rem;
  color: #6b7280;
  line-height: 1.6;
  margin: 0;
}

.wanglas-brand-editorial-cards-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  width: 100%;
  box-sizing: border-box;
}

@media (max-width: 960px) {
  .wanglas-brand-editorial-cards-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }
}

.wanglas-brand-card-editorial {
  background: #ffffff;
  border: 1px solid rgba(38, 48, 101, 0.08);
  border-radius: 20px;
  padding: 32px 26px;
  position: relative;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  width: 100%;
}

@media (max-width: 768px) {
  .wanglas-brand-card-editorial {
    padding: 24px 20px !important;
  }
}

.wanglas-brand-card-editorial:hover {
  transform: translateY(-6px);
  border-color: var(--wc-magenta);
  box-shadow: 0 18px 36px rgba(190, 23, 117, 0.1);
}

.wanglas-brand-card-editorial.wanglas-card-highlighted {
  border-color: rgba(190, 23, 117, 0.25);
  background: linear-gradient(180deg, #ffffff 0%, #fff7f9 100%);
}

.wanglas-editorial-card-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
}

.wanglas-icon-halo {
  width: 52px;
  height: 52px;
  border-radius: 14px;
  background: var(--wc-rose-soft);
  display: flex;
  align-items: center;
  justify-content: center;
}

.wanglas-card-order {
  font-family: var(--wc-font-heading);
  font-size: 1.1rem;
  font-weight: 800;
  color: rgba(38, 48, 101, 0.2);
}

.wanglas-card-heading {
  font-family: var(--wc-font-heading) !important;
  font-size: 1.22rem !important;
  font-weight: 700 !important;
  color: var(--wc-navy) !important;
  margin: 0 0 12px 0 !important;
}

.wanglas-card-desc {
  font-size: 0.92rem !important;
  line-height: 1.65 !important;
  color: #4b5563 !important;
  margin: 0 !important;
}

/* Billboard CTA */
.wanglas-brand-cta-billboard,
.wanglas-page-content .wanglas-brand-cta-billboard {
  background: linear-gradient(135deg, #1f2752 0%, #131733 100%) !important;
  border-radius: 24px;
  padding: 56px 36px !important;
  color: #ffffff !important;
  text-align: center;
  position: relative;
  overflow: hidden;
  box-shadow: 0 20px 48px rgba(31, 39, 82, 0.25);
  box-sizing: border-box;
  width: 100%;
}

@media (max-width: 768px) {
  .wanglas-brand-cta-billboard,
  .wanglas-page-content .wanglas-brand-cta-billboard {
    padding: 36px 20px !important;
    border-radius: 20px !important;
  }
}

.wanglas-brand-cta-billboard::before {
  content: "";
  position: absolute;
  top: -40%;
  right: -10%;
  width: 400px;
  height: 400px;
  background: radial-gradient(circle, rgba(190, 23, 117, 0.4) 0%, rgba(190, 23, 117, 0) 70%);
  pointer-events: none;
}

.wanglas-brand-cta-inner {
  position: relative;
  z-index: 2;
  max-width: 620px;
  margin: 0 auto;
}

.wanglas-cta-pill {
  display: inline-block;
  background: rgba(190, 23, 117, 0.35) !important;
  border: 1px solid rgba(245, 209, 215, 0.6) !important;
  color: #ffffff !important;
  font-family: var(--wc-font-heading);
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  padding: 6px 16px;
  border-radius: var(--wc-radius-pill);
  margin-bottom: 18px;
}

.wanglas-brand-cta-billboard h3,
.wanglas-page-content .wanglas-brand-cta-billboard h3,
.wanglas-cta-heading {
  color: #ffffff !important;
  font-family: var(--wc-font-heading) !important;
  font-size: clamp(1.65rem, 2.8vw, 2.3rem) !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
  letter-spacing: -0.01em !important;
  margin: 0 0 14px 0 !important;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
}

.wanglas-brand-cta-billboard p,
.wanglas-page-content .wanglas-brand-cta-billboard p,
.wanglas-cta-sub {
  color: #f1f5f9 !important;
  font-size: 1.02rem !important;
  line-height: 1.7 !important;
  margin: 0 0 28px 0 !important;
  text-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
}

.wanglas-cta-actions {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  flex-wrap: wrap;
}

.wanglas-btn-primary {
  background: var(--wc-magenta) !important;
  color: #ffffff !important;
  font-family: var(--wc-font-heading);
  font-size: 0.95rem;
  font-weight: 700;
  padding: 13px 28px;
  border-radius: var(--wc-radius-pill);
  text-decoration: none !important;
  transition: all 0.25s ease;
  box-shadow: 0 8px 24px rgba(190, 23, 117, 0.45);
}

.wanglas-btn-primary:hover {
  background: #a31162 !important;
  transform: translateY(-2px);
  box-shadow: 0 12px 28px rgba(190, 23, 117, 0.55);
}

.wanglas-btn-ghost {
  background: rgba(255, 255, 255, 0.12) !important;
  color: #ffffff !important;
  border: 1px solid rgba(255, 255, 255, 0.4) !important;
  font-family: var(--wc-font-heading);
  font-size: 0.95rem;
  font-weight: 700;
  padding: 13px 28px;
  border-radius: var(--wc-radius-pill);
  text-decoration: none !important;
  transition: all 0.25s ease;
}

.wanglas-btn-ghost:hover {
  background: rgba(255, 255, 255, 0.25) !important;
  border-color: #ffffff !important;
}

/* ==========================================================================
   404 ERROR PAGE (HIGH-END LUXURY EDITORIAL)
   ========================================================================== */
.wanglas-404-page {
  background: linear-gradient(180deg, #ffffff 0%, #fdf5f7 100%);
  min-height: 75vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 60px 24px;
}

.wanglas-404-hero {
  width: 100%;
  max-width: 780px;
  margin: 0 auto;
  text-align: center;
}

.wanglas-404-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--wc-rose-soft);
  border: 1px solid rgba(190, 23, 117, 0.2);
  padding: 6px 16px;
  border-radius: var(--wc-radius-pill);
  font-family: var(--wc-font-heading);
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  color: var(--wc-magenta);
  margin-bottom: 20px;
}

.wanglas-404-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--wc-magenta);
}

.wanglas-404-code {
  font-family: var(--wc-font-heading) !important;
  font-size: clamp(5rem, 12vw, 8.5rem) !important;
  font-weight: 900 !important;
  line-height: 0.95 !important;
  letter-spacing: -0.04em !important;
  background: linear-gradient(135deg, #263065 0%, #be1775 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  margin: 0 0 16px 0 !important;
}

.wanglas-404-title {
  font-family: var(--wc-font-heading) !important;
  font-size: clamp(1.6rem, 3vw, 2.2rem) !important;
  font-weight: 800 !important;
  color: var(--wc-navy) !important;
  margin: 0 0 16px 0 !important;
}

.wanglas-404-subtitle {
  font-size: 1.05rem !important;
  line-height: 1.75 !important;
  color: #4b5563 !important;
  max-width: 600px;
  margin: 0 auto 36px !important;
}

.wanglas-404-search-box {
  max-width: 520px;
  margin: 0 auto 40px;
}

.wanglas-404-quicklinks {
  border-top: 1px solid rgba(38, 48, 101, 0.08);
  padding-top: 32px;
}

.wanglas-quicklinks-title {
  font-family: var(--wc-font-heading);
  font-size: 0.84rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--wc-text-muted);
  display: block;
  margin-bottom: 18px;
}

.wanglas-quicklinks-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
}

.wanglas-quicklink-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #ffffff;
  border: 1px solid rgba(38, 48, 101, 0.12);
  border-radius: var(--wc-radius-pill);
  padding: 10px 20px;
  font-family: var(--wc-font-heading);
  font-size: 0.88rem;
  font-weight: 700;
  color: var(--wc-navy);
  text-decoration: none !important;
  transition: all 0.25s ease;
  box-shadow: 0 2px 8px rgba(38, 48, 101, 0.04);
}

.wanglas-quicklink-pill:hover {
  background: var(--wc-rose-soft);
  border-color: var(--wc-magenta);
  color: var(--wc-magenta);
  transform: translateY(-2px);
  box-shadow: 0 8px 18px rgba(190, 23, 117, 0.12);
}

.wanglas-quicklink-pill.wanglas-quicklink-featured {
  background: var(--wc-magenta);
  color: #ffffff !important;
  border-color: var(--wc-magenta);
  box-shadow: 0 6px 16px rgba(190, 23, 117, 0.3);
}

/* ==========================================================================
   QUIERO SER DISTRIBUIDORA - LUXURY PAGE STYLING
   ========================================================================== */
.wanglas-distribuidora-page {
  padding: 40px 24px 80px !important;
}

.wanglas-distrib-hero-section {
  margin-bottom: 20px;
}

.wanglas-distrib-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--wc-rose-soft);
  border: 1px solid rgba(190, 23, 117, 0.2);
  padding: 6px 16px;
  border-radius: var(--wc-radius-pill);
  font-family: var(--wc-font-heading);
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  color: var(--wc-magenta);
  margin-bottom: 16px;
}

.wanglas-badge-pulse {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--wc-magenta);
  box-shadow: 0 0 0 3px rgba(190, 23, 117, 0.25);
}

.wanglas-distrib-main-title {
  font-family: var(--wc-font-heading) !important;
  font-size: clamp(2.2rem, 3.8vw, 3.1rem) !important;
  font-weight: 800 !important;
  color: var(--wc-navy) !important;
  line-height: 1.12 !important;
  letter-spacing: -0.02em !important;
  margin: 0 0 20px 0 !important;
}

.wanglas-distrib-intro-p {
  font-size: 1.05rem !important;
  line-height: 1.75 !important;
  color: #374151 !important;
  margin-bottom: 28px !important;
}

.wanglas-distrib-bullets {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.wanglas-bullet-item {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  background: var(--wc-surface-soft);
  border: 1px solid rgba(38, 48, 101, 0.08);
  border-radius: 16px;
  padding: 16px 20px;
  transition: all 0.25s ease;
}

.wanglas-bullet-item:hover {
  background: #ffffff;
  border-color: var(--wc-magenta);
  transform: translateX(4px);
  box-shadow: 0 10px 24px rgba(190, 23, 117, 0.08);
}

.wanglas-bullet-check {
  width: 40px;
  height: 40px;
  border-radius: 12px;
  background: var(--wc-rose-soft);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.wanglas-bullet-text {
  display: flex;
  flex-direction: column;
}

.wanglas-bullet-text strong {
  font-family: var(--wc-font-heading);
  font-size: 0.98rem;
  font-weight: 700;
  color: var(--wc-navy);
  margin-bottom: 2px;
}

.wanglas-bullet-text span {
  font-size: 0.88rem;
  color: #6b7280;
  line-height: 1.5;
}

/* Wholesale Glassmorphic Card */
.wanglas-wholesale-card {
  background: linear-gradient(145deg, #ffffff 0%, #fff6f8 100%);
  border: 1px solid rgba(190, 23, 117, 0.2);
  border-radius: 28px;
  padding: 36px 32px;
  box-shadow: 0 24px 56px rgba(38, 48, 101, 0.1);
  position: relative;
  overflow: hidden;
}

.wanglas-wholesale-card::before {
  content: "";
  position: absolute;
  top: -50px;
  right: -50px;
  width: 180px;
  height: 180px;
  background: radial-gradient(circle, rgba(190, 23, 117, 0.15) 0%, rgba(190, 23, 117, 0) 70%);
  pointer-events: none;
}

.wanglas-card-tag {
  display: inline-block;
  font-family: var(--wc-font-heading);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  color: var(--wc-magenta);
  text-transform: uppercase;
  background: var(--wc-rose-soft);
  padding: 4px 12px;
  border-radius: var(--wc-radius-pill);
  margin-bottom: 12px;
}

.wanglas-card-title {
  font-family: var(--wc-font-heading) !important;
  font-size: 1.45rem !important;
  font-weight: 800 !important;
  color: var(--wc-navy) !important;
  margin: 0 0 10px 0 !important;
}

.wanglas-card-desc {
  font-size: 0.92rem !important;
  color: #4b5563 !important;
  line-height: 1.6 !important;
  margin: 0 0 24px 0 !important;
}

.wanglas-wholesale-highlights {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-bottom: 28px;
}

.wanglas-highlight-item {
  background: #ffffff;
  border: 1px dashed rgba(190, 23, 117, 0.25);
  border-radius: 12px;
  padding: 12px 16px;
  display: flex;
  flex-direction: column;
}

.wanglas-highlight-item strong {
  font-size: 0.9rem;
  color: var(--wc-navy);
  margin-bottom: 2px;
}

.wanglas-highlight-item span {
  font-size: 0.8rem;
  color: #6b7280;
}

.wanglas-btn-whatsapp-wholesale {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  background: #25d366;
  color: #ffffff !important;
  font-family: var(--wc-font-heading);
  font-size: 1rem;
  font-weight: 700;
  padding: 15px 24px;
  border-radius: var(--wc-radius-pill);
  text-decoration: none !important;
  transition: all 0.25s ease;
  box-shadow: 0 10px 28px rgba(37, 211, 102, 0.4);
}

.wanglas-btn-whatsapp-wholesale:hover {
  background: #1ebc59;
  transform: translateY(-2px);
  box-shadow: 0 14px 32px rgba(37, 211, 102, 0.5);
}

.wanglas-direct-phone {
  display: block;
  text-align: center;
  font-size: 0.84rem;
  color: #6b7280;
  margin-top: 14px;
}

.wanglas-direct-phone strong {
  color: var(--wc-navy);
}

/* Steps Section */
.wanglas-steps-container {
  background: linear-gradient(180deg, #f8f9fa 0%, #ffffff 100%);
  border: 1px solid rgba(38, 48, 101, 0.06);
  border-radius: 28px;
  padding: 48px 36px;
}

.wanglas-steps-header {
  text-align: center;
  max-width: 600px;
  margin: 0 auto 36px;
}

.wanglas-steps-tag {
  font-family: var(--wc-font-heading);
  font-size: 0.74rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  color: var(--wc-magenta);
  text-transform: uppercase;
  display: block;
  margin-bottom: 8px;
}

.wanglas-steps-h3 {
  font-family: var(--wc-font-heading) !important;
  font-size: clamp(1.6rem, 2.6vw, 2.2rem) !important;
  font-weight: 800 !important;
  color: var(--wc-navy) !important;
  margin: 0 0 8px 0 !important;
}

.wanglas-steps-sub {
  font-size: 0.94rem;
  color: #6b7280;
  margin: 0;
}

.wanglas-steps-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}

.wanglas-step-card {
  background: #ffffff;
  border: 1px solid rgba(38, 48, 101, 0.08);
  border-radius: 20px;
  padding: 32px 24px;
  position: relative;
  transition: all 0.3s ease;
}

.wanglas-step-card:hover {
  transform: translateY(-4px);
  border-color: var(--wc-magenta);
  box-shadow: 0 14px 32px rgba(190, 23, 117, 0.1);
}

.wanglas-step-badge {
  display: inline-block;
  background: var(--wc-rose-soft);
  color: var(--wc-magenta);
  font-family: var(--wc-font-heading);
  font-size: 0.78rem;
  font-weight: 800;
  padding: 4px 12px;
  border-radius: var(--wc-radius-pill);
  margin-bottom: 16px;
}

.wanglas-step-card h4 {
  font-family: var(--wc-font-heading) !important;
  font-size: 1.18rem !important;
  font-weight: 700 !important;
  color: var(--wc-navy) !important;
  margin: 0 0 10px 0 !important;
}

.wanglas-step-card p {
  color: #6b7280 !important;
  font-size: 0.9rem !important;
  line-height: 1.6 !important;
  margin: 0 !important;
}

/* ==========================================================================
   SINGLE PRODUCT FAQS ACCORDION (SCF DYNAMIC REPEATER)
   ========================================================================== */
.wanglas-product-faqs-section {
  max-width: var(--wc-max-width);
  margin: 56px auto 40px;
  padding: 48px 36px;
  background: linear-gradient(180deg, #fbfbfd 0%, #ffffff 100%);
  border: 1px solid rgba(38, 48, 101, 0.08);
  border-radius: 28px;
}

.wanglas-product-faqs-header {
  text-align: center;
  max-width: 620px;
  margin: 0 auto 36px;
}

.wanglas-faqs-badge {
  display: inline-block;
  background: var(--wc-rose-soft);
  color: var(--wc-magenta);
  font-family: var(--wc-font-heading);
  font-size: 0.74rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  padding: 5px 14px;
  border-radius: var(--wc-radius-pill);
  margin-bottom: 10px;
  text-transform: uppercase;
}

.wanglas-faqs-title {
  font-family: var(--wc-font-heading) !important;
  font-size: clamp(1.6rem, 2.8vw, 2.2rem) !important;
  font-weight: 800 !important;
  color: var(--wc-navy) !important;
  margin: 0 0 10px 0 !important;
}

.wanglas-faqs-subtitle {
  font-size: 0.96rem !important;
  color: #6b7280 !important;
  line-height: 1.6 !important;
  margin: 0 !important;
}

.wanglas-accordion-wrapper {
  max-width: 820px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.wanglas-accordion-item {
  background: #ffffff;
  border: 1px solid rgba(38, 48, 101, 0.1);
  border-radius: 18px;
  overflow: hidden;
  transition: all 0.25s ease;
  box-shadow: 0 2px 8px rgba(38, 48, 101, 0.03);
}

.wanglas-accordion-item:hover {
  border-color: rgba(190, 23, 117, 0.3);
  box-shadow: 0 8px 20px rgba(38, 48, 101, 0.06);
}

.wanglas-accordion-item[open] {
  border-color: var(--wc-magenta);
  box-shadow: 0 12px 28px rgba(190, 23, 117, 0.08);
}

.wanglas-accordion-summary {
  list-style: none;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 20px 24px;
  cursor: pointer;
  user-select: none;
  font-family: var(--wc-font-heading);
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--wc-navy);
  transition: color 0.2s ease;
}

.wanglas-accordion-summary::-webkit-details-marker {
  display: none;
}

.wanglas-accordion-summary:hover,
.wanglas-accordion-item[open] .wanglas-accordion-summary {
  color: var(--wc-magenta);
}

.wanglas-summary-icon {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--wc-surface-soft);
  color: var(--wc-navy);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: all 0.25s ease;
  margin-left: 16px;
}

.wanglas-accordion-item[open] .wanglas-summary-icon {
  background: var(--wc-rose-soft);
  color: var(--wc-magenta);
}

.wanglas-accordion-item[open] .wanglas-icon-v-line {
  display: none;
}

.wanglas-accordion-body {
  padding: 0 24px 22px;
  font-size: 0.96rem;
  line-height: 1.7;
  color: #4b5563;
  border-top: 1px solid rgba(190, 23, 117, 0.08);
  padding-top: 16px;
}

.wanglas-accordion-body p {
  margin: 0;
}

@media (max-width: 768px) {
  .wanglas-product-faqs-section {
    padding: 32px 18px;
    margin: 40px auto 28px;
  }
  .wanglas-accordion-summary {
    padding: 16px 18px;
    font-size: 0.96rem;
  }
  .wanglas-accordion-body {
    padding: 0 18px 18px;
    padding-top: 14px;
  }
}


/* ==========================================================================
   HOMEPAGE PREMIUM SECTIONS
   ========================================================================== */
/* ==========================================================================
   HOMEPAGE BILLBOARD HERO (LUMINOUS FULL-WIDTH EDITORIAL HERO)
   ========================================================================== */
.wanglas-billboard-hero,
.wp-block-cover.wanglas-billboard-hero,
.wp-block-group.wanglas-billboard-hero,
.wanglas-billboard-hero.alignfull {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border-bottom: 1px solid rgba(190, 23, 117, 0.12);
  background-color: #faf5f6;
  position: relative !important;
  overflow: hidden !important;
  display: block !important;
}

.wp-block-cover.wanglas-billboard-hero .wp-block-cover__image-background {
  object-position: right center !important;
  opacity: 1 !important;
}

.wp-block-cover.wanglas-billboard-hero .wp-block-cover__inner-container {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  color: var(--wc-navy) !important;
  background: linear-gradient(
    90deg,
    rgba(250, 245, 246, 0.97) 0%,
    rgba(250, 245, 246, 0.88) 40%,
    rgba(250, 245, 246, 0.3) 65%,
    rgba(250, 245, 246, 0) 100%
  ) !important;
}

@media (max-width: 768px) {
  .wp-block-cover.wanglas-billboard-hero .wp-block-cover__inner-container {
    background: linear-gradient(
      180deg,
      rgba(250, 245, 246, 0.96) 0%,
      rgba(250, 245, 246, 0.85) 60%,
      rgba(250, 245, 246, 0.5) 100%
    ) !important;
  }
}

.wanglas-billboard-hero .wp-block-group__inner-container,
.wp-block-group.wanglas-billboard-hero > .wp-block-group__inner-container,
.wanglas-billboard-hero > .wanglas-billboard-canvas,
.wanglas-billboard-hero.is-layout-constrained > .wanglas-billboard-canvas,
.wanglas-billboard-hero.is-layout-flow > .wanglas-billboard-canvas,
.wanglas-billboard-canvas {
  width: 100% !important;
  max-width: 100% !important;
  min-height: clamp(500px, 72vh, 640px) !important;
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  border: none !important;
  box-shadow: none !important;
}

/* Background Media & Scrim */
.wanglas-billboard-media {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  z-index: 1 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.wanglas-billboard-img {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  object-fit: cover !important;
  object-position: right center !important;
  display: block !important;
}

.wanglas-billboard-overlay {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  background: linear-gradient(
    90deg,
    rgba(250, 245, 246, 0.96) 0%,
    rgba(250, 245, 246, 0.85) 38%,
    rgba(250, 245, 246, 0.3) 60%,
    rgba(250, 245, 246, 0) 100%
  ) !important;
  z-index: 2 !important;
}

/* Content Wrapper & Typography */
.wanglas-billboard-content-wrapper {
  position: relative !important;
  z-index: 3 !important;
  width: 100% !important;
  max-width: var(--wc-max-width) !important;
  margin: 0 auto !important;
  padding: clamp(48px, 8vh, 88px) 24px 32px 24px !important;
  box-sizing: border-box !important;
}

.wanglas-billboard-content {
  max-width: 580px;
}

.wanglas-billboard-tag {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(245, 209, 215, 0.7);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(190, 23, 117, 0.25);
  padding: 6px 16px;
  border-radius: var(--wc-radius-pill);
  margin-bottom: 20px;
}

.wanglas-tag-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--wc-magenta);
  box-shadow: 0 0 8px var(--wc-magenta);
  display: inline-block;
}

.wanglas-tag-text {
  font-family: var(--wc-font-heading);
  font-weight: 800;
  font-size: 0.72rem;
  letter-spacing: 0.14em;
  color: var(--wc-magenta);
  text-transform: uppercase;
}

.wanglas-tag-divider {
  color: var(--wc-magenta);
  font-size: 0.8rem;
  opacity: 0.5;
}

.wanglas-tag-sub {
  font-family: var(--wc-font-heading);
  font-weight: 700;
  font-size: 0.7rem;
  letter-spacing: 0.08em;
  color: var(--wc-navy);
  text-transform: uppercase;
}

.wanglas-billboard-title {
  font-family: var(--wc-font-heading) !important;
  font-size: clamp(2.4rem, 4.8vw, 4.2rem) !important;
  font-weight: 800 !important;
  line-height: 1.06 !important;
  letter-spacing: -0.025em !important;
  color: var(--wc-navy) !important;
  margin: 0 0 18px 0 !important;
}

.wanglas-billboard-highlight {
  color: var(--wc-magenta) !important;
  display: inline;
}

.wanglas-billboard-desc {
  font-family: var(--wc-font-body);
  font-size: clamp(1rem, 1.2vw, 1.12rem);
  line-height: 1.6;
  color: #4a5568;
  margin: 0 0 32px 0;
  max-width: 500px;
}

.wanglas-billboard-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 16px;
}

.wanglas-billboard-btn-main {
  background: var(--wc-magenta) !important;
  color: #ffffff !important;
  font-family: var(--wc-font-heading) !important;
  font-weight: 700 !important;
  font-size: 0.95rem !important;
  padding: 15px 32px !important;
  border-radius: var(--wc-radius-pill) !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  box-shadow: 0 8px 24px var(--wc-magenta-glow) !important;
  transition: var(--wc-transition) !important;
}

.wanglas-billboard-btn-main:hover {
  background: var(--wc-magenta-hover) !important;
  transform: translateY(-2px);
  box-shadow: 0 12px 32px rgba(190, 23, 117, 0.45) !important;
}

.wanglas-billboard-btn-ghost {
  background: #ffffff !important;
  border: 1.5px solid var(--wc-navy-border) !important;
  color: var(--wc-navy) !important;
  font-family: var(--wc-font-heading) !important;
  font-weight: 700 !important;
  font-size: 0.95rem !important;
  padding: 14px 28px !important;
  border-radius: var(--wc-radius-pill) !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04) !important;
  transition: var(--wc-transition) !important;
}

.wanglas-billboard-btn-ghost:hover {
  background: #ffffff !important;
  border-color: var(--wc-magenta) !important;
  color: var(--wc-magenta) !important;
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(190, 23, 117, 0.12) !important;
}

/* Families Ticker Wrap (Luminous Glassmorphism) */
.wanglas-billboard-families-wrap {
  position: relative;
  z-index: 3;
  width: 100%;
  background: rgba(255, 255, 255, 0.88);
  backdrop-filter: blur(20px);
  border-top: 1px solid rgba(190, 23, 117, 0.15);
  box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.02);
}

.wanglas-billboard-families {
  max-width: var(--wc-max-width);
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}

.wanglas-family-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 28px;
  text-decoration: none !important;
  color: var(--wc-navy) !important;
  border-right: 1px solid rgba(38, 48, 101, 0.08);
  transition: var(--wc-transition);
}

.wanglas-family-card:last-child {
  border-right: none;
}

.wanglas-family-card:hover {
  background: rgba(245, 209, 215, 0.35);
}

.wanglas-family-num {
  font-family: var(--wc-font-heading);
  font-size: 0.95rem;
  font-weight: 800;
  color: var(--wc-magenta);
}

.wanglas-family-info {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}

.wanglas-family-name {
  font-family: var(--wc-font-heading);
  font-size: 0.92rem;
  font-weight: 700;
  color: var(--wc-navy);
}

.wanglas-family-desc {
  font-family: var(--wc-font-body);
  font-size: 0.78rem;
  color: #718096;
}

.wanglas-family-icon {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--wc-surface-soft);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--wc-magenta);
  flex-shrink: 0;
  transition: var(--wc-transition);
}

.wanglas-family-card:hover .wanglas-family-icon {
  background: var(--wc-magenta);
  color: #ffffff;
  transform: translateX(4px);
}

/* Mobile & Tablet */
@media (max-width: 1024px) {
  .wanglas-billboard-families {
    grid-template-columns: 1fr;
  }

  .wanglas-family-card {
    border-right: none;
    border-bottom: 1px solid rgba(38, 48, 101, 0.06);
    padding: 14px 20px;
  }
}

@media (max-width: 600px) {
  .wanglas-billboard-canvas {
    min-height: auto;
  }

  .wanglas-billboard-overlay {
    background: linear-gradient(
      180deg,
      rgba(250, 245, 246, 0.95) 0%,
      rgba(250, 245, 246, 0.88) 55%,
      rgba(250, 245, 246, 0.96) 100%
    );
  }

  .wanglas-billboard-content-wrapper {
    padding: 36px 20px 24px 20px;
  }

  .wanglas-billboard-actions {
    flex-direction: column;
    width: 100%;
  }

  .wanglas-billboard-btn-main,
  .wanglas-billboard-btn-ghost {
    width: 100% !important;
    justify-content: center;
    text-align: center;
  }
}

/* Benefits Section */
.wanglas-section-benefits {
  padding: clamp(50px, 7vw, 90px) 24px !important;
  max-width: var(--wc-max-width, 1260px) !important;
  width: 100% !important;
  margin: 0 auto !important;
  box-sizing: border-box !important;
}

.wanglas-section-header {
  text-align: center;
  max-width: 760px;
  margin: 0 auto 48px auto;
}

.wanglas-section-subtitle {
  color: var(--wc-magenta);
  font-family: var(--wc-font-heading);
  font-weight: 700;
  font-size: 0.82rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  display: block;
  margin-bottom: 10px;
}

.wanglas-section-title {
  font-size: clamp(1.8rem, 3.2vw, 2.6rem) !important;
  color: var(--wc-navy);
  margin-bottom: 14px;
}

.wanglas-section-intro {
  color: var(--wc-text-muted);
  font-size: 1rem;
  line-height: 1.6;
}

.wanglas-cards-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
}

@media (max-width: 1024px) {
  .wanglas-cards-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 600px) {
  .wanglas-cards-grid {
    grid-template-columns: 1fr;
  }
}

.wanglas-luxury-card-wrap {
  display: flex;
}

.wanglas-luxury-card {
  background: #ffffff;
  border: 1px solid rgba(190, 23, 117, 0.12);
  border-radius: 20px;
  padding: 32px 26px;
  box-shadow: 0 4px 20px rgba(38, 48, 101, 0.04);
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
  position: relative;
  display: flex;
  flex-direction: column;
  text-decoration: none !important;
  width: 100%;
  box-sizing: border-box;
  overflow: hidden;
}

.wanglas-luxury-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--wc-magenta) 0%, var(--wc-rose) 100%);
  opacity: 0;
  transition: opacity 0.35s ease;
}

.wanglas-luxury-card:hover {
  border-color: rgba(190, 23, 117, 0.3);
  transform: translateY(-6px);
  box-shadow: 0 16px 36px rgba(190, 23, 117, 0.09), 0 4px 12px rgba(38, 48, 101, 0.05);
}

.wanglas-luxury-card:hover::before {
  opacity: 1;
}

.wanglas-card-top-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.wanglas-card-icon-wrap {
  width: 48px;
  height: 48px;
  border-radius: 14px;
  background: rgba(245, 209, 215, 0.45);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--wc-magenta);
  transition: all 0.35s ease;
}

.wanglas-luxury-card:hover .wanglas-card-icon-wrap {
  background: var(--wc-magenta);
  color: #ffffff;
  transform: scale(1.08);
  box-shadow: 0 6px 18px var(--wc-magenta-glow);
}

.wanglas-card-badge {
  font-family: var(--wc-font-heading);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--wc-magenta);
  background: var(--wc-rose-soft);
  padding: 4px 10px;
  border-radius: var(--wc-radius-pill);
}

.wanglas-card-heading {
  font-size: 1.18rem !important;
  color: var(--wc-navy) !important;
  margin-bottom: 8px !important;
  font-weight: 700 !important;
  transition: color 0.25s ease;
}

.wanglas-luxury-card:hover .wanglas-card-heading {
  color: var(--wc-magenta) !important;
}

.wanglas-card-text {
  color: var(--wc-text-muted);
  font-size: 0.9rem;
  line-height: 1.55;
  margin: 0 0 20px 0;
  flex-grow: 1;
}

.wanglas-card-action {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-family: var(--wc-font-heading);
  font-size: 0.84rem;
  font-weight: 700;
  color: var(--wc-magenta);
  padding-top: 14px;
  border-top: 1px solid rgba(38, 48, 101, 0.06);
  transition: gap 0.25s ease;
}

.wanglas-luxury-card:hover .wanglas-card-action {
  gap: 10px;
}

.wanglas-card-action svg {
  transition: transform 0.25s ease;
}

.wanglas-luxury-card:hover .wanglas-card-action svg {
  transform: translateX(3px);
}

/* Trust Bar (Barra de Confianza y Envíos) */
.wanglas-trust-bar {
  background-color: var(--wc-white) !important;
  border-bottom: 1px solid var(--wc-navy-border);
  padding: 32px 24px !important;
}

.wanglas-trust-container {
  max-width: var(--wc-max-width);
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 20px;
}

.wanglas-trust-box {
  background: var(--wc-surface-soft);
  border: 1px solid var(--wc-navy-border);
  border-radius: var(--wc-radius-lg);
  padding: 18px 20px;
  display: flex;
  align-items: center;
  gap: 16px;
  box-shadow: 0 2px 8px rgba(38, 48, 101, 0.03);
  transition: var(--wc-transition);
}

.wanglas-trust-box:hover {
  border-color: var(--wc-magenta);
  background: var(--wc-white);
  transform: translateY(-3px);
  box-shadow: 0 8px 24px rgba(38, 48, 101, 0.08);
}

.wanglas-trust-icon {
  width: 48px;
  height: 48px;
  min-width: 48px;
  border-radius: var(--wc-radius-md);
  background: var(--wc-white);
  border: 1.5px solid var(--wc-navy-border);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--wc-magenta);
  box-shadow: var(--wc-shadow-sm);
  transition: var(--wc-transition);
}

.wanglas-trust-box:hover .wanglas-trust-icon {
  background: var(--wc-magenta);
  color: var(--wc-white);
  border-color: var(--wc-magenta);
  transform: scale(1.05);
}

.wanglas-trust-info {
  flex: 1;
  text-align: left;
}

.wanglas-trust-title {
  color: var(--wc-navy);
  font-size: 0.94rem;
  font-weight: 700;
  margin: 0 0 3px 0;
  line-height: 1.25;
}

.wanglas-trust-desc {
  color: var(--wc-text-muted);
  font-size: 0.8rem;
  line-height: 1.35;
  margin: 0;
}

/* Reviews Section (Trustindex Google Integration) */
.wanglas-reviews-section {
  padding: clamp(40px, 5vw, 64px) 24px !important;
  max-width: var(--wc-max-width);
  margin: 0 auto;
}

.wanglas-reviews-section .ti-widget {
  margin: 0 auto !important;
}

/* Instagram Feed Section (Elfsight Full Width Integration) */
.wanglas-instagram-section {
  padding: clamp(40px, 5vw, 64px) 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto;
}

.wanglas-instagram-section .wanglas-section-header {
  max-width: var(--wc-max-width);
  margin: 0 auto 32px auto;
  padding: 0 24px;
}

.wanglas-instagram-section [class*="elfsight-app"] {
  width: 100% !important;
  max-width: 100% !important;
}

/* ==========================================================================
   BUTTONS (GLOBAL REFINEMENT)
   ========================================================================== */
.button,
.ast-button,
.wp-block-button__link,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
  background-color: var(--wc-magenta) !important;
  color: var(--wc-white) !important;
  font-family: var(--wc-font-heading) !important;
  font-weight: 600 !important;
  font-size: 0.92rem !important;
  border-radius: var(--wc-radius-md) !important;
  padding: 12px 28px !important;
  border: none !important;
  transition: var(--wc-transition) !important;
  box-shadow: 0 4px 14px var(--wc-magenta-glow) !important;
}

.button:hover,
.ast-button:hover,
.wp-block-button__link:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover {
  background-color: var(--wc-magenta-hover) !important;
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(190, 23, 117, 0.3) !important;
}

.wp-block-button.is-style-outline .wp-block-button__link {
  background-color: transparent !important;
  color: var(--wc-navy) !important;
  border: 1.5px solid var(--wc-navy) !important;
  box-shadow: none !important;
}

.wp-block-button.is-style-outline .wp-block-button__link:hover {
  background-color: var(--wc-navy) !important;
  color: var(--wc-white) !important;
}

/* ==========================================================================
   LEGAL PAGES & POLICIES (EDITORIAL LUXURY DESIGN)
   ========================================================================== */
.wanglas-legal-content-wrapper {
  max-width: 920px !important;
  margin: 40px auto 80px !important;
  padding: 0 20px !important;
  font-family: var(--wc-font-body);
  color: #374151;
  line-height: 1.8;
}

.wanglas-legal-header-card {
  background: linear-gradient(135deg, #ffffff 0%, #faf5f8 100%);
  border: 1px solid rgba(190, 23, 117, 0.12);
  border-radius: 24px;
  padding: 36px 32px;
  box-shadow: 0 10px 30px rgba(38, 48, 101, 0.04);
  margin-bottom: 36px;
}

.wanglas-legal-meta {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 18px;
  flex-wrap: wrap;
}

.wanglas-legal-badge {
  background: var(--wc-rose-soft);
  color: var(--wc-magenta);
  font-family: var(--wc-font-heading);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  padding: 5px 14px;
  border-radius: var(--wc-radius-pill);
  text-transform: uppercase;
}

.wanglas-legal-updated {
  font-size: 0.84rem;
  color: #6b7280;
  font-weight: 600;
}

.wanglas-legal-lead {
  font-size: 1.08rem;
  color: var(--wc-navy);
  font-weight: 500;
  line-height: 1.75;
  margin: 0 0 14px 0 !important;
}

.wanglas-legal-lead-sub {
  font-size: 0.98rem;
  color: #4b5563;
  margin: 0 !important;
}

.wanglas-legal-section-block {
  background: #ffffff;
  border: 1px solid rgba(38, 48, 101, 0.08);
  border-radius: 20px;
  padding: 32px;
  margin-bottom: 24px;
  box-shadow: 0 4px 16px rgba(38, 48, 101, 0.02);
  transition: var(--wc-transition);
}

.wanglas-legal-section-block:hover {
  border-color: rgba(190, 23, 117, 0.25);
  box-shadow: 0 8px 24px rgba(190, 23, 117, 0.05);
}

.wanglas-legal-section-block h2 {
  font-family: var(--wc-font-heading) !important;
  font-size: clamp(1.25rem, 2.2vw, 1.5rem) !important;
  font-weight: 800 !important;
  color: var(--wc-navy) !important;
  margin: 0 0 16px 0 !important;
  display: flex;
  align-items: center;
  gap: 12px;
}

.wanglas-legal-section-block h2::before {
  content: "";
  display: inline-block;
  width: 6px;
  height: 22px;
  background: var(--wc-magenta);
  border-radius: 4px;
}

.wanglas-legal-section-block p {
  font-size: 0.96rem;
  line-height: 1.8;
  color: #4b5563;
  margin-bottom: 16px;
}

.wanglas-legal-section-block p:last-child {
  margin-bottom: 0;
}

.wanglas-legal-section-block ul {
  padding-left: 20px;
  margin-bottom: 16px;
}

.wanglas-legal-section-block li {
  font-size: 0.95rem;
  color: #4b5563;
  margin-bottom: 8px;
  line-height: 1.7;
}

.wanglas-legal-data-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 14px;
  background: var(--wc-surface-soft);
  border-radius: 16px;
  padding: 20px;
  margin-bottom: 20px;
}

.wanglas-legal-data-item {
  font-size: 0.92rem;
  color: var(--wc-navy);
}

.wanglas-legal-data-item a {
  color: var(--wc-magenta);
  text-decoration: none;
  font-weight: 600;
}

.wanglas-legal-contact-card {
  background: #fdf2f7;
  border-left: 4px solid var(--wc-magenta);
  padding: 16px 20px;
  border-radius: 0 14px 14px 0;
  margin-bottom: 20px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.wanglas-legal-contact-card a {
  color: var(--wc-magenta);
  text-decoration: none;
  font-weight: 700;
}

.wanglas-legal-note {
  background: #f3f4f6;
  border-left: 4px solid var(--wc-navy);
  padding: 12px 18px;
  border-radius: 0 12px 12px 0;
  font-size: 0.92rem !important;
  font-style: italic;
  color: var(--wc-navy) !important;
}

.wanglas-legal-highlight {
  background: #fdf2f7;
  border-left: 4px solid var(--wc-magenta);
  padding: 14px 18px;
  border-radius: 0 12px 12px 0;
  color: var(--wc-navy) !important;
}

.wanglas-legal-contact-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 14px;
  margin: 20px 0;
}

.wanglas-contact-box {
  background: var(--wc-surface-soft);
  border-radius: 14px;
  padding: 16px;
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.wanglas-contact-box strong {
  font-family: var(--wc-font-heading);
  font-size: 0.8rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #6b7280;
}

.wanglas-contact-box span,
.wanglas-contact-box a {
  font-size: 0.92rem;
  font-weight: 700;
  color: var(--wc-navy);
  text-decoration: none;
}

.wanglas-contact-box a {
  color: var(--wc-magenta);
}

.wanglas-legal-declaration {
  font-size: 0.9rem !important;
  color: #6b7280 !important;
  text-align: center;
  margin-top: 24px !important;
  font-style: italic;
}

@media (max-width: 768px) {
  .wanglas-legal-header-card {
    padding: 24px 20px;
  }
  .wanglas-legal-section-block {
    padding: 22px 18px;
  }
}

/* ==========================================================================
   RESPONSIVE BREAKPOINTS
   ========================================================================== */
@media (max-width: 1100px) {
  .wanglas-primary-menu {
    gap: 18px;
  }
  .wanglas-btn-distribuidora {
    padding: 8px 16px;
    font-size: 0.82rem;
  }
}

@media (max-width: 960px) {
  .wanglas-topbar-center {
    display: none;
  }
  .wanglas-header-nav-row {
    display: none;
  }
  .wanglas-desktop-nav,
  .wanglas-btn-distribuidora {
    display: none;
  }
  .wanglas-mobile-toggle {
    display: block;
  }
  .wanglas-header-search {
    max-width: 320px;
  }
}

@media (max-width: 600px) {
  .wanglas-topbar {
    display: none;
  }
  .wanglas-header-inner {
    padding: 10px 16px;
    gap: 12px;
  }
  .wanglas-header-logo svg,
  .wanglas-header-logo img {
    max-width: 140px;
    height: auto;
  }
  .wanglas-header-search {
    display: none;
  }
}

/* ==========================================================================
   CATEGORY CIRCULAR GRID (LUXURY EDITORIAL PHOTOGRAPHY)
   ========================================================================== */
.wanglas-categories-section {
  padding: clamp(56px, 7vw, 96px) 24px !important;
  background-color: #faf5f6;
  border-bottom: 1px solid rgba(190, 23, 117, 0.08);
}

.wanglas-categories-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  gap: clamp(20px, 3vw, 36px);
  max-width: 1080px;
  margin: 0 auto;
  padding: 0 16px;
}

.wanglas-category-circle-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-decoration: none !important;
  transition: var(--wc-transition);
  width: clamp(120px, 14vw, 155px);
  flex-shrink: 0;
}

.wanglas-category-circle-img {
  width: clamp(105px, 12vw, 140px);
  height: clamp(105px, 12vw, 140px);
  border-radius: 50%;
  overflow: hidden;
  border: 3px solid rgba(245, 209, 215, 0.95);
  box-shadow: 0 8px 24px rgba(38, 48, 101, 0.08);
  margin-bottom: 12px;
  position: relative;
  background-color: var(--wc-white);
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
}

@media (max-width: 768px) {
  .wanglas-categories-grid {
    gap: 20px 14px;
    max-width: 100%;
  }

  .wanglas-category-circle-card {
    width: calc(33.333% - 10px);
    max-width: 120px;
  }

  .wanglas-category-circle-img {
    width: 92px;
    height: 92px;
  }
}

@media (max-width: 480px) {
  .wanglas-categories-grid {
    gap: 16px 8px;
  }

  .wanglas-category-circle-card {
    width: calc(33.333% - 6px);
  }

  .wanglas-category-circle-img {
    width: 82px;
    height: 82px;
    border-width: 2.5px;
  }

  .wanglas-category-circle-title {
    font-size: 0.82rem !important;
  }
}

.wanglas-category-circle-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1);
}

.wanglas-category-circle-card:hover .wanglas-category-circle-img {
  border-color: var(--wc-magenta);
  transform: translateY(-6px);
  box-shadow: 0 16px 36px rgba(190, 23, 117, 0.28);
}

.wanglas-category-circle-card:hover .wanglas-category-circle-img img {
  transform: scale(1.12);
}

.wanglas-category-circle-title {
  font-family: var(--wc-font-heading);
  font-size: 0.95rem;
  font-weight: 700;
  color: var(--wc-navy);
  text-align: center;
  transition: var(--wc-transition);
}

.wanglas-category-circle-card:hover .wanglas-category-circle-title {
  color: var(--wc-magenta);
}

/* ==========================================================================
   WOOCOMMERCE FEATURED PRODUCTS & ARRIVALS GRID
   ========================================================================== */
.wanglas-featured-section,
.wanglas-arrivals-section {
  padding: clamp(56px, 7vw, 96px) 24px !important;
  max-width: var(--wc-max-width);
  margin: 0 auto;
}

.wanglas-arrivals-section {
  background-color: #fafbfc;
  border-top: 1px solid var(--wc-navy-border);
  border-bottom: 1px solid var(--wc-navy-border);
}

.woocommerce ul.products,
.woocommerce-page ul.products,
ul.products {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)) !important;
  gap: 24px !important;
  margin: 0 0 40px 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

/* Explicit column modifiers for shortcodes & widgets (Desktop only) */
@media (min-width: 1025px) {
  .woocommerce .columns-1 ul.products,
  .woocommerce ul.products.columns-1,
  ul.products.columns-1,
  .elementor-grid.columns-1 {
    grid-template-columns: 1fr !important;
  }

  .woocommerce .columns-2 ul.products,
  .woocommerce ul.products.columns-2,
  ul.products.columns-2,
  .elementor-grid.columns-2 {
    grid-template-columns: repeat(2, 1fr) !important;
  }

  .woocommerce .columns-3 ul.products,
  .woocommerce ul.products.columns-3,
  ul.products.columns-3,
  .elementor-grid.columns-3 {
    grid-template-columns: repeat(3, 1fr) !important;
  }

  .woocommerce .columns-4 ul.products,
  .woocommerce ul.products.columns-4,
  ul.products.columns-4,
  .elementor-grid.columns-4 {
    grid-template-columns: repeat(4, 1fr) !important;
  }

  .woocommerce .columns-5 ul.products,
  .woocommerce ul.products.columns-5,
  ul.products.columns-5,
  .elementor-grid.columns-5 {
    grid-template-columns: repeat(5, 1fr) !important;
  }

  .woocommerce .columns-6 ul.products,
  .woocommerce ul.products.columns-6,
  ul.products.columns-6,
  .elementor-grid.columns-6 {
    grid-template-columns: repeat(6, 1fr) !important;
  }
}

/* Remove WooCommerce core float clearfix pseudo-elements that create empty grid cells */
.woocommerce ul.products::before,
.woocommerce ul.products::after,
.woocommerce-page ul.products::before,
.woocommerce-page ul.products::after,
ul.products::before,
ul.products::after {
  content: none !important;
  display: none !important;
}

@media (max-width: 1024px) {
  .woocommerce ul.products,
  .woocommerce-page ul.products,
  .woocommerce ul.products[class*="columns-"],
  .woocommerce [class*="columns-"] ul.products,
  ul.products[class*="columns-"],
  ul.products.elementor-grid,
  .elementor-grid[class*="columns-"],
  .elementor-products-grid ul.products {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 16px !important;
  }
}

@media (max-width: 640px) {
  .woocommerce ul.products,
  .woocommerce-page ul.products,
  .woocommerce ul.products[class*="columns-"],
  .woocommerce [class*="columns-"] ul.products,
  ul.products[class*="columns-"],
  ul.products.elementor-grid,
  .elementor-grid[class*="columns-"],
  .elementor-products-grid ul.products {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
  }
}

@media (max-width: 480px) {
  .woocommerce ul.products,
  .woocommerce-page ul.products,
  .woocommerce ul.products[class*="columns-"],
  .woocommerce [class*="columns-"] ul.products,
  ul.products[class*="columns-"],
  ul.products.elementor-grid,
  .elementor-grid[class*="columns-"],
  .elementor-products-grid ul.products {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 10px !important;
  }

  .woocommerce ul.products li.product,
  .woocommerce-page ul.products li.product,
  ul.products.elementor-grid li.product {
    padding: 14px 10px !important;
  }

  .woocommerce ul.products li.product .woocommerce-loop-product__title,
  ul.products.elementor-grid li.product .woocommerce-loop-product__title {
    font-size: 13px !important;
    line-height: 1.35 !important;
    min-height: 36px !important;
  }

  .woocommerce ul.products li.product .price,
  ul.products.elementor-grid li.product .price {
    font-size: 14px !important;
    margin-bottom: 8px !important;
  }

  .woocommerce ul.products li.product .button,
  ul.products.elementor-grid li.product .button {
    font-size: 11px !important;
    padding: 7px 10px !important;
    letter-spacing: 0.02em !important;
  }
}

/* ==========================================================================
   WANGLAS LUXURY PRODUCT SWIPER SLIDER (HOMEPAGE SECTIONS)
   ========================================================================== */
.wanglas-products-slider-wrapper {
  position: relative;
  padding: 10px 0 50px 0;
  margin: 0 auto;
}

.wanglas-products-swiper {
  overflow: hidden;
  padding: 14px 6px 20px 6px !important;
}

.wanglas-products-swiper .swiper-slide {
  height: auto;
  display: flex;
}

.wanglas-slider-product-card {
  background: var(--wc-white);
  border: 1px solid var(--wc-navy-border);
  border-radius: var(--wc-radius-lg);
  padding: 18px;
  width: 100%;
  display: flex;
  flex-direction: column;
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
  box-shadow: 0 4px 14px rgba(38, 48, 101, 0.04);
  box-sizing: border-box;
  position: relative;
}

.wanglas-slider-product-card:hover {
  border-color: var(--wc-magenta);
  transform: translateY(-5px);
  box-shadow: 0 14px 32px rgba(38, 48, 101, 0.1);
}

.wanglas-slider-product-card .wanglas-product-media-wrap {
  position: relative;
  background: var(--wc-surface-soft);
  border-radius: var(--wc-radius-md);
  padding: 12px;
  margin-bottom: 14px;
  display: block;
  width: 100%;
  box-sizing: border-box;
  overflow: hidden;
}

.wanglas-slider-product-card .wanglas-product-img-link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 210px;
  text-decoration: none;
}

.wanglas-slider-product-card .wanglas-slider-img,
.wanglas-slider-product-card .wanglas-product-img-link img,
.wanglas-slider-product-card img.wp-post-image {
  width: 100% !important;
  max-width: 100% !important;
  height: 210px !important;
  max-height: 210px !important;
  object-fit: contain !important;
  object-position: center !important;
  display: block !important;
  margin: 0 auto !important;
  transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.wanglas-slider-product-card:hover .wanglas-slider-img,
.wanglas-slider-product-card:hover img {
  transform: scale(1.08);
}

.wanglas-slider-product-card .wanglas-product-info-wrap {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}

.wanglas-slider-product-card .wanglas-product-title {
  font-family: var(--wc-font-heading);
  font-size: 1.02rem;
  font-weight: 700;
  color: var(--wc-navy);
  margin: 0 0 8px 0;
  line-height: 1.35;
  min-height: 2.7em;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.wanglas-slider-product-card .wanglas-product-title a {
  color: var(--wc-navy);
  text-decoration: none;
  transition: color 0.2s ease;
}

.wanglas-slider-product-card .wanglas-product-title a:hover {
  color: var(--wc-magenta);
}

.wanglas-slider-product-card .wanglas-product-price {
  font-family: var(--wc-font-heading);
  color: var(--wc-magenta);
  font-size: 1.22rem;
  font-weight: 800;
  margin-bottom: 16px;
}

.wanglas-slider-product-card .wanglas-product-cta-btn {
  margin-top: auto;
  position: relative;
}

.wanglas-slider-product-card .wanglas-product-cta-btn a.added_to_cart,
.wanglas-slider-product-card .added_to_cart,
.woocommerce ul.products li.product .added_to_cart,
.wanglas-product-cta-btn .added_to_cart,
.added_to_cart.wc-forward {
  display: none !important;
}

.wanglas-slider-product-card .wanglas-product-cta-btn a.button,
.wanglas-slider-product-card .wanglas-product-cta-btn button.button {
  width: 100% !important;
  background: var(--wc-magenta) !important;
  color: var(--wc-white) !important;
  border: none !important;
  border-radius: var(--wc-radius-pill) !important;
  font-family: var(--wc-font-heading) !important;
  font-size: 0.9rem !important;
  font-weight: 700 !important;
  padding: 10px 16px !important;
  text-align: center !important;
  display: block !important;
  text-decoration: none !important;
  transition: all 0.25s ease !important;
  box-shadow: 0 4px 12px rgba(190, 23, 117, 0.25) !important;
}

.wanglas-slider-product-card .wanglas-product-cta-btn a.button:hover,
.wanglas-slider-product-card .wanglas-product-cta-btn button.button:hover {
  background: #9e105f !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 18px rgba(190, 23, 117, 0.4) !important;
}

/* Swiper Slider Arrows */
.wanglas-products-slider-wrapper .wanglas-slider-arrow {
  position: absolute;
  top: 42%;
  transform: translateY(-50%);
  width: 46px;
  height: 46px;
  border-radius: 50%;
  background: #ffffff;
  border: 1.5px solid var(--wc-navy-border);
  color: var(--wc-navy);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 20;
  cursor: pointer;
  box-shadow: 0 8px 24px rgba(38, 48, 101, 0.18);
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}

.wanglas-products-slider-wrapper .wanglas-slider-arrow svg {
  width: 22px !important;
  height: 22px !important;
  min-width: 22px !important;
  min-height: 22px !important;
  stroke: var(--wc-navy) !important;
  stroke-width: 2.5px !important;
  display: block !important;
  flex-shrink: 0 !important;
  transition: stroke 0.2s ease;
}

.wanglas-products-slider-wrapper .wanglas-slider-arrow:hover {
  background: var(--wc-magenta);
  border-color: var(--wc-magenta);
  transform: translateY(-50%) scale(1.1);
  box-shadow: 0 10px 28px rgba(190, 23, 117, 0.4);
}

.wanglas-products-slider-wrapper .wanglas-slider-arrow:hover svg {
  stroke: #ffffff !important;
}

.wanglas-products-slider-wrapper .prev-arrow {
  left: -18px;
}

.wanglas-products-slider-wrapper .next-arrow {
  right: -18px;
}

.wanglas-products-slider-wrapper .swiper-button-disabled {
  opacity: 0;
  cursor: default;
  pointer-events: none;
}

/* Swiper Pagination Dots */
.wanglas-slider-dots {
  bottom: 12px !important;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
}

.wanglas-slider-dots .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  background: rgba(38, 48, 101, 0.25);
  border-radius: 9999px;
  transition: all 0.3s ease;
  margin: 0 !important;
  opacity: 1;
}

.wanglas-slider-dots .swiper-pagination-bullet-active {
  width: 26px;
  background: var(--wc-magenta);
}

@media (max-width: 768px) {
  .wanglas-products-slider-wrapper .wanglas-slider-arrow {
    display: none;
  }
}

/* ==========================================================================
   DISTRIBUTOR / WHOLESALE CTA BANNER (LUXURY BILLBOARD)
   ========================================================================== */
.wanglas-distributor-banner {
  background: linear-gradient(135deg, #1c2450 0%, #263065 50%, #151b3b 100%) !important;
  color: var(--wc-white) !important;
  padding: clamp(56px, 7vw, 90px) 24px !important;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  position: relative;
  overflow: hidden;
}

.wanglas-distributor-glow {
  position: absolute;
  top: -40%;
  right: -10%;
  width: 500px;
  height: 500px;
  background: radial-gradient(circle, rgba(190, 23, 117, 0.25) 0%, rgba(190, 23, 117, 0) 70%);
  pointer-events: none;
}

.wanglas-distributor-container {
  max-width: var(--wc-max-width);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.25fr 0.95fr;
  gap: clamp(32px, 5vw, 64px);
  align-items: center;
  position: relative;
  z-index: 2;
}

@media (max-width: 960px) {
  .wanglas-distributor-container {
    grid-template-columns: 1fr;
    gap: 36px;
  }
}

.wanglas-distributor-badge-row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 16px;
}

.wanglas-distributor-tag {
  display: inline-block;
  background-color: var(--wc-magenta);
  color: var(--wc-white);
  font-family: var(--wc-font-heading);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  padding: 5px 14px;
  border-radius: var(--wc-radius-pill);
  margin: 0;
}

.wanglas-distributor-badge-pill {
  display: inline-block;
  background: rgba(245, 209, 215, 0.18);
  border: 1px solid rgba(245, 209, 215, 0.35);
  color: var(--wc-rose);
  font-family: var(--wc-font-heading);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  padding: 4px 12px;
  border-radius: var(--wc-radius-pill);
}

.wanglas-distributor-title {
  color: var(--wc-white) !important;
  font-size: clamp(1.85rem, 3.2vw, 2.5rem) !important;
  font-weight: 800 !important;
  line-height: 1.18 !important;
  margin: 0 0 16px 0 !important;
}

.wanglas-distributor-text {
  color: rgba(255, 255, 255, 0.86);
  font-size: 1.02rem;
  line-height: 1.65;
  margin: 0 0 24px 0;
}

.wanglas-distributor-perks {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.wanglas-distributor-perk-item {
  display: flex;
  align-items: center;
  gap: 12px;
  font-family: var(--wc-font-heading);
  font-size: 0.92rem;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.95);
}

.wanglas-distributor-perk-item svg {
  color: var(--wc-magenta);
  background: rgba(190, 23, 117, 0.2);
  padding: 4px;
  border-radius: 50%;
  flex-shrink: 0;
  box-sizing: content-box;
}

.wanglas-distributor-action {
  display: flex;
  justify-content: center;
}

.wanglas-distributor-action-card {
  background: rgba(255, 255, 255, 0.07);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 24px;
  padding: clamp(24px, 4vw, 36px);
  width: 100%;
  box-shadow: 0 20px 50px rgba(10, 15, 35, 0.35);
  text-align: center;
}

.wanglas-distributor-card-subtitle {
  display: block;
  font-family: var(--wc-font-heading);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: var(--wc-rose);
  text-transform: uppercase;
  margin-bottom: 8px;
}

.wanglas-distributor-card-heading {
  font-family: var(--wc-font-heading);
  font-size: clamp(1.2rem, 2vw, 1.45rem);
  font-weight: 800;
  color: #ffffff;
  margin: 0 0 20px 0;
  line-height: 1.25;
}

.wanglas-distributor-main-btn {
  width: 100%;
  margin-bottom: 14px;
}

.wanglas-distributor-main-btn .wp-block-button__link {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  width: 100% !important;
  padding: 14px 28px !important;
  font-family: var(--wc-font-heading) !important;
  font-size: 1.05rem !important;
  font-weight: 800 !important;
  background-color: var(--wc-magenta) !important;
  color: #ffffff !important;
  border-radius: var(--wc-radius-pill) !important;
  box-shadow: 0 8px 24px var(--wc-magenta-glow) !important;
  text-decoration: none !important;
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.wanglas-distributor-main-btn .wp-block-button__link svg {
  width: 22px !important;
  height: 22px !important;
  flex-shrink: 0 !important;
  display: inline-block !important;
  vertical-align: middle !important;
}

.wanglas-distributor-main-btn .wp-block-button__link:hover {
  background-color: var(--wc-magenta-hover) !important;
  transform: translateY(-3px) scale(1.02) !important;
  box-shadow: 0 12px 32px var(--wc-magenta-glow) !important;
}

.wanglas-distributor-guarantee {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 0.8rem;
  color: rgba(255, 255, 255, 0.75);
  font-family: var(--wc-font-heading);
}

.wanglas-distributor-guarantee svg {
  color: #25d366;
}

/* ==========================================================================
   SOCIAL UGC / INSTAGRAM COMMUNITY
   ========================================================================== */
.wanglas-social-section {
  padding: clamp(50px, 7vw, 90px) 24px !important;
  max-width: var(--wc-max-width);
  margin: 0 auto;
}

.wanglas-social-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 20px;
}

.wanglas-social-card {
  border-radius: var(--wc-radius-lg);
  overflow: hidden;
  box-shadow: var(--wc-shadow-sm);
  transition: var(--wc-transition);
}

.wanglas-social-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--wc-shadow-md);
}

.wanglas-social-placeholder {
  height: 220px;
  background: linear-gradient(135deg, #f5d1d7 0%, #fae8eb 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  text-align: center;
  font-family: var(--wc-font-heading);
  font-weight: 700;
  color: var(--wc-navy);
  font-size: 1rem;
}

/* ==========================================================================
   FAQ ACCORDION
   ========================================================================== */
.wanglas-faq-section {
  padding: clamp(50px, 7vw, 90px) 24px !important;
  background-color: var(--wc-surface-soft);
  border-top: 1px solid var(--wc-navy-border);
}

.wanglas-faq-container {
  max-width: 780px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.wanglas-faq-item {
  background: var(--wc-white);
  border: 1px solid var(--wc-navy-border);
  border-radius: var(--wc-radius-md);
  padding: 18px 24px;
  transition: var(--wc-transition);
}

.wanglas-faq-item[open] {
  border-color: var(--wc-magenta);
  box-shadow: var(--wc-shadow-sm);
}

.wanglas-faq-question {
  font-family: var(--wc-font-heading);
  font-weight: 700;
  color: var(--wc-navy);
  font-size: 1.05rem;
  cursor: pointer;
  list-style: none;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.wanglas-faq-question::-webkit-details-marker {
  display: none;
}

.wanglas-faq-question::after {
  content: '+';
  font-size: 1.4rem;
  color: var(--wc-magenta);
  line-height: 1;
}

.wanglas-faq-item[open] .wanglas-faq-question::after {
  content: '−';
}

.wanglas-faq-answer {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid rgba(38, 48, 101, 0.06);
  color: var(--wc-text-body);
  font-size: 0.94rem;
  line-height: 1.6;
}

/* ==========================================================================
   PAYMENT METHODS SECTION
   ========================================================================== */
.wanglas-payments-section {
  background: var(--wc-white);
  border-top: 1px solid var(--wc-navy-border);
  padding: 32px 24px !important;
}

.wanglas-payments-container {
  max-width: var(--wc-max-width);
  margin: 0 auto;
  text-align: center;
}

.wanglas-payments-title {
  font-family: var(--wc-font-heading);
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  color: var(--wc-text-muted);
  text-transform: uppercase;
  display: block;
  margin-bottom: 16px;
}

.wanglas-payments-badges {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
}

.wanglas-pay-pill {
  background: var(--wc-surface-soft);
  border: 1px solid var(--wc-navy-border);
  color: var(--wc-navy);
  font-family: var(--wc-font-heading);
  font-weight: 700;
  font-size: 0.82rem;
  padding: 8px 18px;
  border-radius: var(--wc-radius-pill);
}

/* ==========================================================================
   WANGLAS LUXURY FOOTER & WHATSAPP
   ========================================================================== */
.wanglas-site-footer {
  background-color: var(--wc-navy);
  color: rgba(255, 255, 255, 0.85);
  padding: clamp(56px, 7vw, 84px) 24px 0 24px;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.wanglas-footer-container {
  max-width: var(--wc-max-width);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.6fr 1fr 1fr 1.2fr;
  gap: 40px;
  padding-bottom: 48px;
}

@media (max-width: 960px) {
  .wanglas-footer-container {
    grid-template-columns: 1fr 1fr;
    gap: 32px;
  }
}

@media (max-width: 600px) {
  .wanglas-footer-container {
    grid-template-columns: 1fr;
    gap: 28px;
  }
}

.wanglas-footer-about {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.wanglas-footer-logo {
  display: flex;
  align-items: center;
  max-width: 170px;
}

.wanglas-footer-logo a {
  display: inline-flex;
  align-items: center;
}

.wanglas-footer-logo img,
.wanglas-footer-logo .custom-logo,
.wanglas-footer-logo svg {
  height: 44px !important;
  max-height: 44px !important;
  width: auto !important;
  max-width: 170px !important;
  object-fit: contain !important;
  display: block !important;
}

.wanglas-footer-desc {
  font-size: 0.92rem;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.75);
  margin: 0;
}

.wanglas-topbar-divider {
  color: rgba(255, 255, 255, 0.3);
  font-size: 0.8rem;
  margin: 0 4px;
}

.wanglas-footer-contact-item {
  margin-top: 4px;
}

.wanglas-footer-phone-link,
.wanglas-footer-email-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--wc-rose);
  text-decoration: none;
  font-family: var(--wc-font-heading);
  font-size: 0.92rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  transition: var(--wc-transition);
}

.wanglas-footer-phone-link:hover,
.wanglas-footer-email-link:hover {
  color: var(--wc-white);
  transform: translateX(3px);
}

.wanglas-footer-phone-link svg,
.wanglas-footer-email-link svg {
  color: var(--wc-magenta);
}

.wanglas-footer-social {
  display: flex;
  gap: 14px;
  margin-top: 10px;
}

.wanglas-footer-social a {
  color: rgba(255, 255, 255, 0.85);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  transition: var(--wc-transition);
}

.wanglas-footer-social a svg {
  display: block;
  width: 18px;
  height: 18px;
}

.wanglas-footer-social a:hover {
  color: var(--wc-rose);
  transform: translateY(-2px);
}

.wanglas-footer-heading {
  color: var(--wc-white) !important;
  font-family: var(--wc-font-heading) !important;
  font-size: 1.05rem !important;
  font-weight: 700 !important;
  margin-bottom: 18px !important;
  letter-spacing: 0.02em;
}

.wanglas-footer-links {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.wanglas-footer-links li a {
  color: rgba(255, 255, 255, 0.75);
  text-decoration: none;
  font-size: 0.9rem;
  transition: var(--wc-transition);
}

.wanglas-footer-links li a:hover {
  color: var(--wc-rose);
  padding-left: 4px;
}

/* Footer Payments Bar (Bold Dark) */
.wanglas-footer-payments {
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  padding: 24px 0 20px 0;
  text-align: center;
}

.wanglas-footer-payments-inner {
  max-width: var(--wc-max-width);
  margin: 0 auto;
  padding: 0 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}

.wanglas-footer-payments-label {
  font-family: var(--wc-font-heading);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.6);
}

.wanglas-footer-bold-wrapper {
  max-width: 680px;
  width: 100%;
  margin: 0 auto;
  display: flex;
  justify-content: center;
}

.wanglas-footer-bottom {
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  padding: 20px 0;
}

.wanglas-footer-bottom-inner {
  max-width: var(--wc-max-width);
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 0.82rem;
  color: rgba(255, 255, 255, 0.6);
}

.wanglas-footer-credits {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.wanglas-adictiva-link,
.woocommerce .wanglas-adictiva-link,
.woocommerce-page .wanglas-adictiva-link {
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  text-decoration: none !important;
  color: rgba(255, 255, 255, 0.65) !important;
  white-space: nowrap !important;
  transition: var(--wc-transition) !important;
}

.wanglas-adictiva-by,
.woocommerce .wanglas-adictiva-by,
.woocommerce-page .wanglas-adictiva-by {
  font-family: var(--wc-font-body) !important;
  font-size: 0.82rem !important;
  font-weight: 500 !important;
  color: rgba(255, 255, 255, 0.6) !important;
  white-space: nowrap !important;
  display: inline-block !important;
  line-height: 1 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.wanglas-adictiva-logo,
.woocommerce .wanglas-adictiva-logo,
.woocommerce-page .wanglas-adictiva-logo,
.woocommerce img.wanglas-adictiva-logo,
.woocommerce-page img.wanglas-adictiva-logo {
  height: 22px !important;
  max-height: 22px !important;
  min-height: 22px !important;
  width: auto !important;
  max-width: 120px !important;
  display: inline-block !important;
  object-fit: contain !important;
  vertical-align: middle !important;
  transition: transform 0.2s ease, opacity 0.2s ease !important;
  opacity: 0.85 !important;
  margin: 0 !important;
  padding: 0 !important;
  flex-shrink: 0 !important;
}

.wanglas-adictiva-link:hover .wanglas-adictiva-logo {
  opacity: 1 !important;
  transform: translateY(-1px) !important;
}

.wanglas-adictiva-link:hover .wanglas-adictiva-by {
  color: var(--wc-white) !important;
}

@media (max-width: 600px) {
  .wanglas-footer-bottom-inner {
    flex-direction: column;
    text-align: center;
    gap: 8px;
  }

  .wanglas-adictiva-link,
  .woocommerce .wanglas-adictiva-link,
  .woocommerce-page .wanglas-adictiva-link {
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;
  }
}



/* ==========================================================================
   WOOCOMMERCE SHOP & ARCHIVE PAGE STYLING
   ========================================================================== */
.wanglas-shop-main {
  background-color: var(--wc-surface-soft);
  min-height: 80vh;
}

/* Shop & Category Hero Headers */
.wanglas-shop-hero {
  background: linear-gradient(145deg, #ffffff 0%, #fdf2f4 100%);
  border-bottom: 1px solid var(--wc-navy-border);
  padding: clamp(36px, 4vw, 56px) 24px;
  text-align: center;
}

.wanglas-shop-hero-inner {
  max-width: 860px;
  margin: 0 auto;
}

/* Category Hero Breadcrumbs */
.wanglas-cat-breadcrumbs {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 14px;
  font-size: 0.82rem;
  font-family: var(--wc-font-heading);
  font-weight: 600;
}

.wanglas-cat-breadcrumbs a {
  color: var(--wc-text-muted) !important;
  text-decoration: none !important;
  transition: color 0.2s ease;
}

.wanglas-cat-breadcrumbs a:hover {
  color: var(--wc-magenta) !important;
}

.wanglas-hero-sep {
  color: #cbd5e1;
  font-size: 0.75rem;
}

.wanglas-hero-current {
  color: var(--wc-navy);
  font-weight: 700;
  max-width: 320px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* Category Hero Badge Row */
.wanglas-cat-badge-row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-bottom: 12px;
  flex-wrap: wrap;
}

.wanglas-cat-guarantee {
  font-family: var(--wc-font-heading);
  font-size: 0.74rem;
  font-weight: 700;
  color: var(--wc-navy);
  background: rgba(255, 255, 255, 0.85);
  border: 1px solid var(--wc-navy-border);
  padding: 4px 12px;
  border-radius: var(--wc-radius-pill);
  letter-spacing: 0.05em;
}

.wanglas-product-hero-title {
  font-size: clamp(1.8rem, 3.2vw, 2.5rem) !important;
  color: var(--wc-navy) !important;
  margin: 0 0 10px 0 !important;
  font-family: var(--wc-font-heading) !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
}

.wanglas-product-hero-desc {
  color: var(--wc-text-muted);
  font-size: 0.94rem;
  line-height: 1.55;
  margin: 0 auto;
  max-width: 680px;
}

.wanglas-shop-pill {
  display: inline-block;
  background-color: var(--wc-rose-soft);
  color: var(--wc-magenta);
  font-family: var(--wc-font-heading);
  font-weight: 700;
  font-size: 0.75rem;
  letter-spacing: 0.1em;
  padding: 4px 14px;
  border-radius: var(--wc-radius-pill);
  margin-bottom: 12px;
}

.wanglas-shop-title {
  font-size: clamp(2rem, 3.5vw, 2.8rem) !important;
  color: var(--wc-navy) !important;
  margin: 0 0 12px 0 !important;
}

.wanglas-shop-desc {
  color: var(--wc-text-muted);
  font-size: 0.98rem;
  line-height: 1.6;
  margin: 0 0 24px 0;
}

/* Category Filter Pills */
.wanglas-shop-cat-pills {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
}

.wanglas-pill-btn {
  background: var(--wc-white);
  border: 1px solid var(--wc-navy-border);
  color: var(--wc-navy) !important;
  font-family: var(--wc-font-heading);
  font-size: 0.84rem;
  font-weight: 600;
  padding: 8px 18px;
  border-radius: var(--wc-radius-pill);
  text-decoration: none !important;
  transition: var(--wc-transition);
  box-shadow: var(--wc-shadow-sm);
}

.wanglas-pill-btn:hover,
.wanglas-pill-btn.is-active {
  background-color: var(--wc-magenta) !important;
  border-color: var(--wc-magenta) !important;
  color: var(--wc-white) !important;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px var(--wc-magenta-glow);
}

/* Shop Container */
.wanglas-shop-container {
  max-width: var(--wc-max-width);
  margin: 0 auto;
  padding: clamp(32px, 4vw, 56px) 24px;
}

/* Toolbar */
.wanglas-shop-toolbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 28px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--wc-navy-border);
}

.wanglas-shop-toolbar-left {
  display: flex;
  align-items: center;
  gap: 16px;
}

.wanglas-shop-toolbar-right {
  display: flex;
  align-items: center;
  gap: 20px;
}

@media (max-width: 768px) {
  .wanglas-shop-toolbar {
    flex-direction: column;
    align-items: stretch;
    gap: 16px;
  }
  .wanglas-shop-toolbar-left,
  .wanglas-shop-toolbar-right {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
  }
}

/* Products Per Page Selector */
.wanglas-per-page-selector {
  display: flex;
  align-items: center;
  gap: 8px;
}

.wanglas-per-page-label {
  font-family: var(--wc-font-heading);
  font-size: 0.86rem;
  font-weight: 700;
  color: var(--wc-navy);
}

.wanglas-toolbar-select {
  background: var(--wc-white);
  border: 1px solid var(--wc-navy-border);
  border-radius: var(--wc-radius-md);
  padding: 8px 14px;
  font-family: var(--wc-font-heading);
  font-size: 0.86rem;
  font-weight: 600;
  color: var(--wc-navy);
  outline: none;
  cursor: pointer;
  transition: var(--wc-transition);
}

.wanglas-toolbar-select:focus,
.wanglas-toolbar-select:hover {
  border-color: var(--wc-magenta);
}

/* Mobile Filter Trigger Button */
.wanglas-mobile-filter-btn {
  display: none;
  align-items: center;
  gap: 8px;
  background: var(--wc-navy);
  color: var(--wc-white);
  border: none;
  border-radius: var(--wc-radius-pill);
  padding: 8px 18px;
  font-family: var(--wc-font-heading);
  font-size: 0.86rem;
  font-weight: 700;
  cursor: pointer;
  transition: var(--wc-transition);
}

.wanglas-mobile-filter-btn:hover {
  background: var(--wc-magenta);
}

@media (max-width: 960px) {
  .wanglas-mobile-filter-btn {
    display: inline-flex;
  }
}

/* 2-Column Shop Layout Grid */
.wanglas-shop-layout-wrapper {
  display: grid;
  grid-template-columns: 280px 1fr;
  gap: 36px;
  align-items: start;
}

.wanglas-shop-products-main {
  min-width: 0;
  width: 100%;
}

@media (max-width: 960px) {
  .wanglas-shop-layout-wrapper {
    grid-template-columns: 1fr;
  }
}

/* Left Filter Sidebar Card */
.wanglas-shop-sidebar {
  background: var(--wc-white);
  border: 1px solid var(--wc-navy-border);
  border-radius: var(--wc-radius-lg);
  padding: 24px 20px;
  position: sticky;
  top: 90px;
  box-shadow: 0 4px 18px rgba(38, 48, 101, 0.04);
}

.wanglas-sidebar-header-mobile {
  display: none;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 16px;
  margin-bottom: 20px;
  border-bottom: 1px solid var(--wc-navy-border);
}

.wanglas-sidebar-title-mobile {
  font-family: var(--wc-font-heading);
  font-size: 1.1rem;
  font-weight: 800;
  color: var(--wc-navy);
}

.wanglas-close-filters-btn {
  background: transparent;
  border: none;
  color: var(--wc-navy);
  cursor: pointer;
  padding: 4px;
}

/* Offcanvas Sidebar in Mobile */
@media (max-width: 960px) {
  .wanglas-shop-sidebar {
    position: fixed !important;
    top: 0 !important;
    left: -100% !important;
    width: 320px !important;
    max-width: 85vw !important;
    height: 100vh !important;
    max-height: 100vh !important;
    background: #ffffff !important;
    z-index: 999999 !important;
    border-radius: 0 !important;
    border: none !important;
    border-right: 1px solid var(--wc-navy-border) !important;
    box-shadow: 10px 0 40px rgba(0, 0, 0, 0.25) !important;
    padding: 24px 20px !important;
    overflow-y: auto !important;
    transition: left 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
  }

  .wanglas-shop-sidebar.is-open {
    left: 0 !important;
  }

  .wanglas-sidebar-header-mobile {
    display: flex;
  }

  /* Overlay backdrop */
  .wanglas-filters-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(38, 48, 101, 0.6);
    backdrop-filter: blur(4px);
    z-index: 999998;
    opacity: 0;
    transition: opacity 0.3s ease;
  }

  .wanglas-filters-overlay.is-active {
    display: block;
    opacity: 1;
  }
}

/* Overlay backdrop base rule (hidden by default on desktop) */
.wanglas-filters-overlay {
  display: none;
}

/* Individual Filter Widgets in Sidebar */
.wanglas-filter-widget {
  margin-bottom: 24px;
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(38, 48, 101, 0.08);
}

.wanglas-filter-widget:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}

.wanglas-filter-title {
  font-family: var(--wc-font-heading) !important;
  font-size: 0.96rem !important;
  font-weight: 800 !important;
  color: var(--wc-navy) !important;
  margin: 0 0 14px 0 !important;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

/* Filter Checkboxes (Multi-Select Categories, Presentation) */
.wanglas-filter-checkboxes {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.wanglas-checkbox-label {
  display: flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  padding: 4px 6px;
  border-radius: var(--wc-radius-md);
  transition: all 0.2s ease;
  user-select: none;
}

.wanglas-checkbox-label:hover {
  background: var(--wc-surface-soft);
}

.wanglas-filter-checkbox {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

.wanglas-custom-check {
  height: 18px;
  width: 18px;
  background-color: var(--wc-white);
  border: 1.5px solid var(--wc-navy-border);
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s ease;
  flex-shrink: 0;
}

.wanglas-filter-checkbox:checked ~ .wanglas-custom-check {
  background-color: var(--wc-magenta);
  border-color: var(--wc-magenta);
}

.wanglas-custom-check::after {
  content: "";
  display: none;
  width: 5px;
  height: 9px;
  border: solid white;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg) translate(-1px, -1px);
}

.wanglas-filter-checkbox:checked ~ .wanglas-custom-check::after {
  display: block;
}

.wanglas-check-text {
  font-family: var(--wc-font-heading);
  font-size: 0.88rem;
  font-weight: 600;
  color: var(--wc-navy);
  flex-grow: 1;
}

.wanglas-filter-checkbox:checked ~ .wanglas-check-text {
  font-weight: 700;
  color: var(--wc-magenta);
}

/* Filter List (Categories, Attributes) */
.wanglas-filter-list {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.wanglas-filter-list li {
  margin: 0 !important;
  padding: 0 !important;
}

.wanglas-filter-list li a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 6px 10px;
  border-radius: var(--wc-radius-md);
  font-family: var(--wc-font-heading);
  font-size: 0.88rem;
  font-weight: 600;
  color: var(--wc-text-body);
  text-decoration: none !important;
  transition: all 0.2s ease;
}

.wanglas-filter-list li a:hover {
  background: var(--wc-surface-soft);
  color: var(--wc-magenta);
  transform: translateX(3px);
}

.wanglas-filter-list li.is-active a {
  background: var(--wc-rose-soft);
  color: var(--wc-magenta);
  font-weight: 700;
}

.wanglas-filter-cat-count {
  font-size: 0.8rem;
  color: var(--wc-text-muted);
}

/* Attribute Filter Chips (Colors / Tones) */
.wanglas-filter-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.wanglas-filter-chip {
  display: inline-block;
  padding: 6px 12px;
  background: var(--wc-surface-soft);
  border: 1px solid var(--wc-navy-border);
  border-radius: var(--wc-radius-pill);
  font-family: var(--wc-font-heading);
  font-size: 0.82rem;
  font-weight: 600;
  color: var(--wc-navy);
  text-decoration: none !important;
  transition: all 0.2s ease;
}

.wanglas-filter-chip:hover,
.wanglas-filter-chip.is-selected {
  background: var(--wc-magenta);
  border-color: var(--wc-magenta);
  color: var(--wc-white);
  box-shadow: 0 3px 10px var(--wc-magenta-glow);
}

/* Reset Filters Button */
.wanglas-filter-reset-box {
  margin-top: 10px;
}

.wanglas-reset-filters-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 10px 14px;
  background: #fee2e2;
  border: 1px solid #fecaca;
  color: #b91c1c !important;
  border-radius: var(--wc-radius-pill);
  font-family: var(--wc-font-heading);
  font-size: 0.82rem;
  font-weight: 700;
  text-decoration: none !important;
  transition: all 0.2s ease;
}

.wanglas-reset-filters-btn:hover {
  background: #ef4444;
  color: #ffffff !important;
  border-color: #ef4444;
}

/* WooCommerce Native Price Slider Styles */
.wanglas-shop-sidebar .widget_price_filter .ui-slider {
  position: relative;
  text-align: left;
  margin-left: 0.5em;
  margin-right: 0.5em;
  background: var(--wc-surface-soft);
  border-radius: 4px;
  height: 6px;
  border: 1px solid var(--wc-navy-border);
  margin-bottom: 16px;
}

.wanglas-shop-sidebar .widget_price_filter .ui-slider .ui-slider-range {
  position: absolute;
  z-index: 1;
  font-size: 0.7em;
  display: block;
  border: 0;
  border-radius: 4px;
  background: var(--wc-magenta);
}

.wanglas-shop-sidebar .widget_price_filter .ui-slider .ui-slider-handle {
  position: absolute;
  z-index: 2;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  cursor: pointer;
  background: var(--wc-navy);
  border: 2px solid #ffffff;
  top: -5px;
  margin-left: -7px;
  outline: none;
}

.wanglas-shop-sidebar .widget_price_filter .price_slider_amount {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  font-size: 0.86rem !important;
  font-family: var(--wc-font-heading) !important;
  font-weight: 700 !important;
  color: var(--wc-navy) !important;
}

.wanglas-shop-sidebar .widget_price_filter .price_slider_amount .price_label {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  background: var(--wc-surface-soft) !important;
  padding: 8px 12px !important;
  border-radius: var(--wc-radius-md) !important;
  border: 1px solid var(--wc-navy-border) !important;
  font-size: 0.84rem !important;
  text-align: center !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.wanglas-shop-sidebar .widget_price_filter .price_slider_amount .button {
  width: 100% !important;
  background: var(--wc-magenta) !important;
  color: var(--wc-white) !important;
  border: none !important;
  border-radius: var(--wc-radius-pill) !important;
  padding: 8px 16px !important;
  font-size: 0.82rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  transition: var(--wc-transition) !important;
  box-shadow: 0 4px 12px var(--wc-magenta-glow) !important;
  float: none !important;
  text-align: center !important;
}

.wanglas-shop-sidebar .widget_price_filter .price_slider_amount .button:hover {
  background: var(--wc-navy) !important;
  box-shadow: 0 4px 12px rgba(38, 48, 101, 0.2) !important;
  transform: translateY(-1px) !important;
}

.wanglas-shop-count .woocommerce-result-count {
  margin: 0 !important;
  font-family: var(--wc-font-body);
  font-size: 0.9rem;
  color: var(--wc-text-muted);
}

.wanglas-shop-ordering .woocommerce-ordering {
  margin: 0 !important;
}

.wanglas-shop-ordering .woocommerce-ordering select {
  background: var(--wc-white);
  border: 1px solid var(--wc-navy-border);
  border-radius: var(--wc-radius-md);
  padding: 8px 14px;
  font-family: var(--wc-font-heading);
  font-size: 0.88rem;
  font-weight: 600;
  color: var(--wc-navy);
  outline: none;
  cursor: pointer;
}

/* WooCommerce Pagination */
.woocommerce nav.woocommerce-pagination {
  margin-top: 48px !important;
}

.woocommerce nav.woocommerce-pagination ul {
  border: none !important;
  display: flex !important;
  justify-content: center !important;
  gap: 8px !important;
}

.woocommerce nav.woocommerce-pagination ul li {
  border: none !important;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
  border: 1px solid var(--wc-navy-border) !important;
  border-radius: var(--wc-radius-md) !important;
  color: var(--wc-navy) !important;
  font-family: var(--wc-font-heading) !important;
  font-weight: 700 !important;
  padding: 10px 18px !important;
  background: var(--wc-white) !important;
  transition: var(--wc-transition) !important;
}

.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce nav.woocommerce-pagination ul li a:hover {
  background: var(--wc-magenta) !important;
  border-color: var(--wc-magenta) !important;
  color: var(--wc-white) !important;
}

.wanglas-no-products {
  text-align: center;
  padding: 60px 20px;
  background: var(--wc-white);
  border-radius: var(--wc-radius-lg);
  border: 1px solid var(--wc-navy-border);
}

/* ==========================================================================
   WANGLAS PRODUCT BADGES & LABELS SYSTEM (LOOP & SINGLE)
   ========================================================================== */
/* Position Relative Container for Loop Cards */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
.wc-block-grid__product {
  position: relative !important;
}

/* Badges Stack: Floats cleanly on top-left of image */
.wanglas-product-badges-stack {
  position: absolute !important;
  top: 12px !important;
  left: 12px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 6px !important;
  z-index: 15 !important;
  pointer-events: none !important;
}

/* Single Product Badges Stack Placement */
.single-product .woocommerce div.product div.images {
  position: relative !important;
}

.single-product .wanglas-product-badges-stack {
  top: 18px !important;
  left: 18px !important;
}

/* Base Badge Pill Style */
.wanglas-badge-pill {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-family: var(--wc-font-heading) !important;
  font-size: 0.72rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  padding: 4px 11px !important;
  border-radius: var(--wc-radius-pill) !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12) !important;
  line-height: 1.2 !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  transition: transform 0.2s ease !important;
}

/* 1. Agotado / Sin Stock: Deep Navy / Muted Dark */
.wanglas-badge-pill.wanglas-badge-out-of-stock {
  background: #1e293b !important;
  color: #f8fafc !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
}

/* 2. Oferta / Descuento: Vibrant Magenta */
.wanglas-badge-pill.wanglas-badge-sale {
  background: var(--wc-magenta) !important;
  color: #ffffff !important;
  border: 1px solid rgba(255, 255, 255, 0.25) !important;
  box-shadow: 0 4px 14px var(--wc-magenta-glow) !important;
}

/* 3. Nuevo / Novedad: Clean Mint / Emerald Luxury */
.wanglas-badge-pill.wanglas-badge-new {
  background: #0f766e !important;
  color: #ffffff !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
}

/* 4. Favorito / Destacado: Warm Amber Luxury */
.wanglas-badge-pill.wanglas-badge-featured {
  background: #b45309 !important;
  color: #ffffff !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
}

/* Dim out of stock product thumbnail slightly */
.woocommerce ul.products li.product.outofstock .woocommerce-LoopProduct-link img {
  opacity: 0.75 !important;
  filter: grayscale(25%) !important;
}

/* ==========================================================================
   WOOCOMMERCE SINGLE PRODUCT & VARIATIONS LUXURY STYLING
   ========================================================================== */
.single-product .page-header-image-single,
.single-product .featured-image,
.woocommerce .page-header-image-single,
.woocommerce .featured-image {
  display: none !important;
}

.woocommerce .woocommerce-breadcrumb {
  max-width: var(--wc-max-width) !important;
  margin: 20px auto 0 auto !important;
  padding: 0 24px !important;
  font-family: var(--wc-font-heading) !important;
  font-size: 0.84rem !important;
  font-weight: 500 !important;
  color: var(--wc-text-muted) !important;
}

.woocommerce .woocommerce-breadcrumb a {
  color: var(--wc-navy) !important;
  text-decoration: none !important;
  transition: var(--wc-transition) !important;
}

.woocommerce .woocommerce-breadcrumb a:hover {
  color: var(--wc-magenta) !important;
}

.woocommerce div.product {
  max-width: var(--wc-max-width) !important;
  margin: 24px auto 40px auto !important;
  padding: 0 24px !important;
}

.woocommerce div.product div.images {
  margin-bottom: 30px !important;
}

.woocommerce div.product div.images img {
  border-radius: var(--wc-radius-lg) !important;
  border: 1px solid var(--wc-navy-border) !important;
  box-shadow: var(--wc-shadow-sm) !important;
}

/* Gallery Thumbnails Spacing & Air */
.woocommerce div.product div.images .flex-control-thumbs {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 14px !important;
  margin-top: 20px !important;
  padding: 6px 4px !important;
  list-style: none !important;
  overflow: visible !important;
}

.woocommerce div.product div.images .flex-control-thumbs li {
  width: calc(25% - 11px) !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  cursor: pointer !important;
  overflow: visible !important;
}

.woocommerce div.product div.images .flex-control-thumbs li img {
  width: 100% !important;
  height: auto !important;
  display: block !important;
  border-radius: var(--wc-radius-md) !important;
  border: 2px solid var(--wc-navy-border) !important;
  opacity: 0.8 !important;
  transition: var(--wc-transition) !important;
  box-shadow: var(--wc-shadow-sm) !important;
  box-sizing: border-box !important;
}

.woocommerce div.product div.images .flex-control-thumbs li img:hover,
.woocommerce div.product div.images .flex-control-thumbs li img.flex-active {
  opacity: 1 !important;
  border-color: var(--wc-magenta) !important;
  box-shadow: 0 0 0 1px var(--wc-magenta), 0 4px 14px var(--wc-magenta-glow) !important;
}

.woocommerce div.product .product_title {
  font-family: var(--wc-font-heading) !important;
  font-size: clamp(1.8rem, 3vw, 2.4rem) !important;
  color: var(--wc-navy) !important;
  font-weight: 800 !important;
  margin-bottom: 12px !important;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price {
  font-family: var(--wc-font-heading) !important;
  color: var(--wc-magenta) !important;
  font-size: 1.5rem !important;
  font-weight: 800 !important;
  margin-bottom: 20px !important;
}

.woocommerce div.product .woocommerce-product-details__short-description {
  color: var(--wc-text-body);
  font-size: 1rem;
  line-height: 1.65;
  margin-bottom: 24px;
  border-bottom: 1px solid var(--wc-navy-border);
  padding-bottom: 20px;
}

/* ==========================================================================
   WIDGET ADD TO CART & VARIATIONS (REFINED LAYOUT & ORIGINAL AESTHETIC)
   ========================================================================== */

.rtg-add-to-cart-widget,
.single-product form.variations_form {
  font-family: "Inter", sans-serif !important;
  max-width: 100% !important;
}

.single-product .variations .wanglas-custom-select-wrapper,
.woo-variation-items-wrapper .wanglas-custom-select-wrapper,
.single-product .variations select.woo-variation-raw-select {
  display: none !important;
}

/* ===== 1. VARIATIONS TABLE LAYOUT (STACKED FOR FULL WIDTH PILLS) ===== */

.rtg-add-to-cart-widget table.variations,
.single-product table.variations {
  width: 100% !important;
  border: none !important;
  margin: 0 0 14px 0 !important;
  background: transparent !important;
}

.rtg-add-to-cart-widget table.variations tbody,
.single-product table.variations tbody {
  display: block !important;
  width: 100% !important;
}

.rtg-add-to-cart-widget table.variations tr,
.single-product table.variations tr {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  width: 100% !important;
  margin-bottom: 12px !important;
  border: none !important;
  background: transparent !important;
  gap: 8px !important;
}

/* ===== 2. LABEL & SELECTION HEADER BAR ===== */

.rtg-add-to-cart-widget table.variations th.label,
.single-product table.variations th.label {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
}

.rtg-add-to-cart-widget .shopengine-swatches-label,
.rtg-add-to-cart-widget table.variations label,
.rtg-add-to-cart-widget .label,
.single-product table.variations th.label label {
  font-family: "Inter", sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  color: #374151 !important;
  margin: 0 !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  line-height: 1.2 !important;
  height: auto !important;
}

.single-product table.variations th.label .woo-selected-variation-item-name {
  display: inline-block !important;
  font-family: "Inter", sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  color: #3243ad !important;
  text-transform: uppercase !important;
  margin: 0 !important;
  line-height: 1.2 !important;
}

/* Link "Clear" */
.rtg-add-to-cart-widget .reset_variations,
.rtg-add-to-cart-widget .clear-btn,
.single-product .reset_variations {
  font-family: "Inter", sans-serif !important;
  font-size: 11.5px !important;
  font-weight: 600 !important;
  color: #6b7280 !important;
  text-decoration: underline !important;
  margin-left: auto !important;
  transition: color 0.2s ease !important;
  display: inline-flex !important;
  align-items: center !important;
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  cursor: pointer !important;
}

.rtg-add-to-cart-widget .reset_variations:hover,
.rtg-add-to-cart-widget .clear-btn:hover,
.single-product .reset_variations:hover {
  color: #dc2626 !important;
}

/* ===== 3. VALUES WRAPPER & PILLS (100% FULL WIDTH) ===== */

.rtg-add-to-cart-widget table.variations td.value,
.single-product table.variations td.value {
  display: block !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  background: transparent !important;
}

/* Contenedor de variaciones */
.rtg-add-to-cart-widget .variable-items-wrapper,
.rtg-add-to-cart-widget .wvs-style-rounded .variable-items-wrapper,
.single-product .variable-items-wrapper {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  width: 100% !important;
}

/* Cada item de variación - FORZAR ESTILOS */
.rtg-add-to-cart-widget .variable-item,
.rtg-add-to-cart-widget .button-variable-item,
.rtg-add-to-cart-widget .variable-items-wrapper .variable-item:not(.radio-variable-item),
.single-product .variable-item,
.single-product .button-variable-item {
  font-family: "Inter", sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #4b5563 !important;
  background: rgba(248, 250, 252, 0.8) !important;
  background-color: rgba(248, 250, 252, 0.8) !important;
  border: 1.5px solid rgba(209, 213, 219, 0.6) !important;
  border-radius: 8px !important;
  padding: 0 !important;
  margin: 0 !important;
  cursor: pointer !important;
  transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  min-width: 55px !important;
  width: auto !important;
  height: auto !important;
  line-height: 1 !important;
  box-shadow: none !important;
  position: relative !important;
  outline: none !important;
}

/* Span interno del botón */
.rtg-add-to-cart-widget .button-variable-item span,
.rtg-add-to-cart-widget .variable-item span,
.single-product .button-variable-item span,
.single-product .variable-item span {
  font-family: "Inter", sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: inherit !important;
  padding: 8px 14px !important;
  display: block !important;
  line-height: 1 !important;
}

/* HOVER - Sin box-shadow negro */
.rtg-add-to-cart-widget .variable-item:hover,
.rtg-add-to-cart-widget .button-variable-item:hover,
.rtg-add-to-cart-widget .variable-items-wrapper .variable-item:not(.radio-variable-item):hover,
.single-product .variable-item:hover,
.single-product .button-variable-item:hover {
  background: rgba(224, 231, 255, 0.5) !important;
  background-color: rgba(224, 231, 255, 0.5) !important;
  border: 1.5px solid rgba(50, 67, 173, 0.4) !important;
  color: #3243ad !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 3px 10px rgba(50, 67, 173, 0.12) !important;
}

.rtg-add-to-cart-widget .button-variable-item:hover span,
.single-product .button-variable-item:hover span {
  color: #3243ad !important;
}

/* SELECCIONADO - Eliminar borde negro y usar gradiente */
.rtg-add-to-cart-widget .variable-item.selected,
.rtg-add-to-cart-widget .button-variable-item.selected,
.rtg-add-to-cart-widget .variable-items-wrapper .variable-item:not(.radio-variable-item).selected,
.single-product .variable-item.selected,
.single-product .button-variable-item.selected,
.single-product .variable-item[aria-checked="true"],
.single-product .button-variable-item[aria-checked="true"] {
  background: linear-gradient(135deg, #3243ad 0%, #1eb3ff 100%) !important;
  background-color: #3243ad !important;
  border: 1.5px solid #3243ad !important;
  color: #ffffff !important;
  font-weight: 700 !important;
  box-shadow: 0 4px 14px rgba(50, 67, 173, 0.25) !important;
  transform: none !important;
}

.rtg-add-to-cart-widget .button-variable-item.selected span,
.single-product .button-variable-item.selected span,
.single-product .variable-item[aria-checked="true"] span {
  color: #ffffff !important;
  font-weight: 700 !important;
}

/* SELECCIONADO + HOVER - Mantener el estilo */
.rtg-add-to-cart-widget .variable-item.selected:hover,
.rtg-add-to-cart-widget .button-variable-item.selected:hover,
.rtg-add-to-cart-widget .variable-items-wrapper .variable-item:not(.radio-variable-item).selected:hover,
.single-product .variable-item.selected:hover,
.single-product .button-variable-item.selected:hover {
  background: linear-gradient(135deg, #1e3a5f 0%, #3243ad 100%) !important;
  background-color: #3243ad !important;
  border: 1.5px solid #3243ad !important;
  color: #ffffff !important;
  box-shadow: 0 6px 18px rgba(50, 67, 173, 0.35) !important;
  transform: translateY(-1px) !important;
}

.rtg-add-to-cart-widget .button-variable-item.selected:hover span,
.single-product .button-variable-item.selected:hover span {
  color: #ffffff !important;
}

/* Desactivar estilos del plugin GetWoo que interfieren */
.rtg-add-to-cart-widget .woo-variation-swatches .variable-items-wrapper .variable-item:not(.radio-variable-item),
.single-product .woo-variation-swatches .variable-items-wrapper .variable-item:not(.radio-variable-item) {
  box-shadow: none !important;
}

.rtg-add-to-cart-widget .woo-variation-swatches .variable-items-wrapper .variable-item:not(.radio-variable-item).selected,
.single-product .woo-variation-swatches .variable-items-wrapper .variable-item:not(.radio-variable-item).selected {
  box-shadow: 0 4px 14px rgba(50, 67, 173, 0.25) !important;
}

/* ===== 4. PRECIO DINÁMICO ===== */

.rtg-add-to-cart-widget .woocommerce-variation-price,
.single-product .woocommerce-variation-price {
  margin: 14px 0 6px 0 !important;
}

.rtg-add-to-cart-widget .woocommerce-variation-price .price,
.single-product .woocommerce-variation-price .price {
  font-family: "Inter", sans-serif !important;
  font-size: 28px !important;
  font-weight: 800 !important;
  color: #3243ad !important;
}

/* ===== 5. STOCK INFO EN CÁPSULA VERDE PRO ===== */

.single-product .woocommerce-variation-availability {
  display: block !important;
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  margin: 6px 0 14px 0 !important;
  box-shadow: none !important;
}

.rtg-add-to-cart-widget .stock,
.rtg-add-to-cart-widget .availability,
.single-product .woocommerce-variation-availability p.stock {
  font-family: "Inter", sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  color: #065f46 !important;
  background: #ecfdf5 !important;
  border: 1px solid #a7f3d0 !important;
  border-radius: 20px !important;
  padding: 4px 12px !important;
  margin: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  width: fit-content !important;
  box-shadow: 0 1px 2px rgba(16, 185, 129, 0.08) !important;
}

.rtg-add-to-cart-widget .stock.out-of-stock,
.single-product .woocommerce-variation-availability p.stock.out-of-stock {
  color: #991b1b !important;
  background: #fef2f2 !important;
  border-color: #fecaca !important;
}

.single-product .woocommerce-variation-availability p.stock::before {
  display: none !important;
}

/* ===== 6. CONTENEDOR GENERAL ===== */

.rtg-add-to-cart-widget .variations_form,
.rtg-add-to-cart-widget form.cart,
.single-product form.variations_form {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  overflow: visible !important;
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 16px 0 0 0 !important;
  box-shadow: none !important;
}

.single-product .single_variation_wrap {
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
  width: 100% !important;
}

/* Quantity and Add to Cart Row (Cleaned - handled in Single Product Pro UI section) */

/* Product Tabs */
.woocommerce div.product .woocommerce-tabs {
  margin-top: 40px !important;
  padding-top: 20px !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
  border-bottom: 2px solid var(--wc-navy-border) !important;
  padding: 0 !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
  background: transparent !important;
  border: none !important;
  border-bottom: 3px solid transparent !important;
  margin-bottom: -2px !important;
  padding: 12px 20px !important;
  transition: var(--wc-transition) !important;
  cursor: pointer !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
  font-family: var(--wc-font-heading) !important;
  font-weight: 700 !important;
  color: var(--wc-text-muted) !important;
  font-size: 0.95rem !important;
  text-decoration: none !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
  border-bottom-color: var(--wc-magenta) !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
  color: var(--wc-magenta) !important;
}

.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel {
  padding: 28px 0 !important;
  color: var(--wc-text-body) !important;
  line-height: 1.7 !important;
}

.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel h2 {
  font-size: 1.3rem !important;
  color: var(--wc-navy) !important;
  margin-bottom: 16px !important;
}

/* Additional Information Table (Attributes Styling) */
.woocommerce table.shop_attributes {
  width: 100% !important;
  max-width: 650px !important;
  border: 1px solid var(--wc-navy-border) !important;
  border-radius: var(--wc-radius-lg) !important;
  background: var(--wc-white) !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  overflow: hidden !important;
  box-shadow: var(--wc-shadow-sm) !important;
}

.woocommerce table.shop_attributes th {
  background-color: var(--wc-surface-soft) !important;
  color: var(--wc-navy) !important;
  font-family: var(--wc-font-heading) !important;
  font-weight: 700 !important;
  font-size: 0.92rem !important;
  padding: 14px 20px !important;
  width: 180px !important;
  border-bottom: 1px solid var(--wc-navy-border) !important;
  text-align: left !important;
}

.woocommerce table.shop_attributes td {
  padding: 14px 20px !important;
  font-style: normal !important;
  color: var(--wc-text-body) !important;
  font-size: 0.92rem !important;
  border-bottom: 1px solid var(--wc-navy-border) !important;
  background: var(--wc-white) !important;
}

.woocommerce table.shop_attributes tr:last-child th,
.woocommerce table.shop_attributes tr:last-child td {
  border-bottom: none !important;
}

.woocommerce table.shop_attributes td p {
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.6 !important;
}

/* 7-Free Badges & Guarantees Box */
.wanglas-product-badges-box {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 14px;
  background: var(--wc-white);
  border: 1px solid var(--wc-navy-border);
  border-radius: var(--wc-radius-lg);
  padding: 16px;
  margin: 24px 0 16px 0;
  box-shadow: var(--wc-shadow-sm);
}

.wanglas-product-badge-item {
  display: flex;
  align-items: center;
  gap: 10px;
}

.wanglas-badge-icon {
  font-size: 1.6rem;
  line-height: 1;
}

.wanglas-badge-info {
  display: flex;
  flex-direction: column;
}

.wanglas-badge-info strong {
  font-family: var(--wc-font-heading);
  color: var(--wc-navy);
  font-size: 0.82rem;
  font-weight: 700;
  line-height: 1.2;
}

.wanglas-badge-info span {
  color: var(--wc-magenta);
  font-size: 0.74rem;
  font-weight: 600;
}

/* Shipping & Warranty Mini Notice */
.wanglas-product-shipping-mini {
  background: var(--wc-surface-soft);
  border-radius: var(--wc-radius-md);
  padding: 14px 16px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-bottom: 24px;
}

.wanglas-shipping-row {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 0.84rem;
  color: var(--wc-text-body);
}

.wanglas-shipping-row svg {
  color: var(--wc-magenta);
  flex-shrink: 0;
}

.wanglas-instructions-list li {
  margin-bottom: 10px;
}

/* ==========================================================================
   WOOCOMMERCE CART & CHECKOUT LUXURY EDITORIAL STYLING
   ========================================================================== */

/* ==========================================================================
   READY TO GO CABLES - BULLETPROOF CART PAGE & ELEMENTOR HARMONIZATION
   ========================================================================== */

/* 1. Global Reset of Redundant Elementor & Theme Wrapper Boxes */
.elementor-widget-woocommerce-cart .e-cart-section,
.elementor-widget-woocommerce-cart .e-shop-table,
.elementor-widget-woocommerce-cart .e-cart-totals,
.elementor-widget-woocommerce-cart .e-cart__column-start,
.elementor-widget-woocommerce-cart .e-cart__column-end,
.elementor-widget-woocommerce-cart .e-cart__column-start .e-cart-section,
.elementor-widget-woocommerce-cart .e-cart__column-end .e-cart-section,
.elementor-widget-woocommerce-cart form.woocommerce-cart-form,
.woocommerce-cart .woocommerce-cart-form,
.woocommerce-cart form.woocommerce-cart-form {
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
  backdrop-filter: none !important;
  overflow: visible !important;
}

/* 2. Desktop Grid Layout */
@media (min-width: 1025px) {
  .elementor-widget-woocommerce-cart .e-cart__container {
    display: grid !important;
    grid-template-columns: 1fr 380px !important;
    gap: 32px !important;
    width: 100% !important;
    max-width: 1240px !important;
    margin: 0 auto !important;
    align-items: start !important;
  }
}

/* 3. Products Table Card (Desktop / Tablet Landscape) */
@media (min-width: 769px) {
  .woocommerce-cart table.shop_table.cart {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 20px !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    overflow: hidden !important;
    box-shadow: 0 4px 20px rgba(0, 35, 93, 0.04) !important;
    width: 100% !important;
    table-layout: auto !important;
    margin-bottom: 24px !important;
  }

  .woocommerce-cart table.shop_table.cart thead th {
    background-color: #f0f7ff !important;
    color: #00235D !important;
    font-family: 'Inter', sans-serif !important;
    font-weight: 800 !important;
    font-size: 12px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
    padding: 16px 18px !important;
    border: none !important;
    border-bottom: 1px solid #e2e8f0 !important;
  }

  .woocommerce-cart table.shop_table.cart thead th.product-remove,
  .woocommerce-cart table.shop_table.cart td.product-remove {
    width: 50px !important;
    min-width: 50px !important;
    max-width: 50px !important;
    text-align: center !important;
    padding: 18px 8px 18px 16px !important;
    vertical-align: middle !important;
  }

  .woocommerce-cart table.shop_table.cart thead th.product-thumbnail,
  .woocommerce-cart table.shop_table.cart td.product-thumbnail {
    width: 80px !important;
    min-width: 80px !important;
    max-width: 80px !important;
    padding: 18px 8px !important;
    text-align: center !important;
    vertical-align: middle !important;
  }

  .woocommerce-cart table.shop_table.cart td.product-thumbnail img {
    border-radius: 10px !important;
    border: 1px solid #e2e8f0 !important;
    background: #ffffff !important;
    width: 60px !important;
    height: 60px !important;
    max-width: 60px !important;
    object-fit: contain !important;
    padding: 4px !important;
    box-sizing: border-box !important;
    display: block !important;
    margin: 0 auto !important;
    box-shadow: none !important;
  }

  .woocommerce-cart table.shop_table.cart thead th.product-name,
  .woocommerce-cart table.shop_table.cart td.product-name {
    text-align: left !important;
    padding: 18px 16px !important;
    vertical-align: middle !important;
  }

  .woocommerce-cart table.shop_table.cart td.product-name a {
    color: #006BAC !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    font-size: 15px !important;
    line-height: 1.4 !important;
  }

  .woocommerce-cart table.shop_table.cart thead th.product-price,
  .woocommerce-cart table.shop_table.cart td.product-price {
    width: 95px !important;
    text-align: center !important;
    font-weight: 700 !important;
    color: #006BAC !important;
    font-size: 15px !important;
    vertical-align: middle !important;
  }

  .woocommerce-cart table.shop_table.cart thead th.product-quantity,
  .woocommerce-cart table.shop_table.cart td.product-quantity {
    width: 95px !important;
    text-align: center !important;
    vertical-align: middle !important;
  }

  .woocommerce-cart table.shop_table.cart thead th.product-subtotal,
  .woocommerce-cart table.shop_table.cart td.product-subtotal {
    width: 100px !important;
    text-align: center !important;
    font-weight: 700 !important;
    color: #006BAC !important;
    font-size: 15px !important;
    vertical-align: middle !important;
  }

  .woocommerce-cart table.shop_table.cart tbody tr td {
    border: none !important;
    border-bottom: 1px solid #f1f5f9 !important;
  }

  .woocommerce-cart table.shop_table.cart tbody tr:last-child td {
    border-bottom: none !important;
  }

  /* Suppress pseudo-content titles in table rows on desktop */
  .woocommerce-cart table.shop_table.cart tbody td::before {
    content: none !important;
    display: none !important;
  }
}

/* Common Remove Button */
.woocommerce-cart table.shop_table.cart td.product-remove a.remove {
  color: #ef4444 !important;
  background: #fef2f2 !important;
  border: 1px solid #fee2e2 !important;
  border-radius: 8px !important;
  width: 28px !important;
  height: 28px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  margin: 0 !important;
  transition: all 0.2s ease !important;
}

.woocommerce-cart table.shop_table.cart td.product-remove a.remove:hover {
  background: #ef4444 !important;
  border-color: #ef4444 !important;
  color: #ffffff !important;
  transform: scale(1.05);
}

/* Quantity Inputs */
.woocommerce-cart table.shop_table.cart .quantity input.qty {
  width: 58px !important;
  height: 38px !important;
  border: 1px solid #cbd5e1 !important;
  border-radius: 8px !important;
  background: #f8fafc !important;
  color: #00235D !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  text-align: center !important;
  padding: 4px 6px !important;
  box-sizing: border-box !important;
  margin: 0 auto !important;
}

/* 4. Coupon Code Box */
.woocommerce-cart .coupon.e-cart-section.shop_table,
.woocommerce-cart .coupon {
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
  padding: 0 !important;
  margin: 16px 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 12px !important;
}

.woocommerce-cart .coupon input[type="text"],
.woocommerce-cart .coupon input.input-text {
  background: #f8fafc !important;
  border: 1px solid #cbd5e1 !important;
  border-radius: 8px !important;
  padding: 10px 16px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13.5px !important;
  color: #00235D !important;
  width: 220px !important;
  height: 42px !important;
  box-sizing: border-box !important;
}

.woocommerce-cart .coupon button[name="apply_coupon"],
.woocommerce-cart .coupon button.button {
  background: #006BAC !important;
  border: 1px solid #006BAC !important;
  color: #ffffff !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 700 !important;
  font-size: 12px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  border-radius: 8px !important;
  padding: 0 20px !important;
  height: 42px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 4px 12px rgba(0, 107, 172, 0.25) !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
}

.woocommerce-cart .coupon button[name="apply_coupon"]:hover {
  background: #00235D !important;
  border-color: #00235D !important;
}

/* 5. Cart Totals Card */
.woocommerce-cart .cart-collaterals .cart_totals {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 20px !important;
  padding: 28px !important;
  box-shadow: 0 4px 24px rgba(0, 35, 93, 0.05) !important;
  backdrop-filter: none !important;
  width: 100% !important;
  box-sizing: border-box !important;
  margin: 0 !important;
}

.woocommerce-cart .cart_totals h2 {
  font-family: 'Inter', sans-serif !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  color: #00235D !important;
  margin: 0 0 20px 0 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
}

.woocommerce-cart .cart_totals table {
  width: 100% !important;
  border: none !important;
}

/* Suppress duplicate pseudo titles in Totals */
.woocommerce-cart .cart_totals table td::before {
  content: none !important;
  display: none !important;
}

/* Force Table Headers to display properly in Totals */
.woocommerce-cart .cart_totals table.shop_table tbody th,
.elementor-widget-woocommerce-cart .woocommerce .cart_totals table.shop_table_responsive tbody th,
.elementor-widget-woocommerce-cart .woocommerce-page .cart_totals table.shop_table_responsive tbody th {
  display: block !important;
  color: #64748b !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  text-align: left !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  font-family: 'Inter', sans-serif !important;
}

.woocommerce-cart .cart_totals table.shop_table tr.cart-subtotal,
.woocommerce-cart .cart_totals table.shop_table tr.order-total {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  padding: 14px 0 !important;
  border: none !important;
  border-bottom: 1px solid #f1f5f9 !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.woocommerce-cart .cart_totals table.shop_table tr.cart-subtotal td,
.woocommerce-cart .cart_totals table.shop_table tr.order-total td {
  padding: 0 !important;
  margin: 0 !important;
  text-align: right !important;
  border: none !important;
}

.woocommerce-cart .cart_totals table.shop_table tr.order-total {
  border-top: 2px solid #e2e8f0 !important;
  border-bottom: none !important;
  padding-top: 18px !important;
  margin-top: 6px !important;
}

.woocommerce-cart .cart_totals table.shop_table tr.order-total th {
  font-size: 16px !important;
  font-weight: 800 !important;
  color: #00235D !important;
  text-transform: uppercase !important;
}

.woocommerce-cart .cart_totals .order-total .woocommerce-Price-amount {
  color: #006BAC !important;
  font-size: 22px !important;
  font-weight: 800 !important;
}

/* Shipping row in Cart Totals */
.woocommerce-cart .cart_totals table.shop_table tr.woocommerce-shipping-totals {
  display: block !important;
  padding: 14px 0 !important;
  width: 100% !important;
  border: none !important;
  border-bottom: 1px solid #f1f5f9 !important;
}

.woocommerce-cart .cart_totals table.shop_table tr.woocommerce-shipping-totals th {
  display: inline-block !important;
  float: left !important;
  font-size: 14px !important;
  color: #64748b !important;
  font-weight: 600 !important;
  text-align: left !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  width: auto !important;
}

.woocommerce-cart .cart_totals table.shop_table tr.woocommerce-shipping-totals td {
  display: block !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  box-sizing: border-box !important;
  text-align: right !important;
}

.woocommerce-cart .cart_totals table.shop_table tr.woocommerce-shipping-totals ul#shipping_method {
  display: block !important;
  float: right !important;
  text-align: right !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 4px 0 !important;
  font-weight: 700 !important;
  color: #00235D !important;
  font-size: 14px !important;
}

.woocommerce-cart .cart_totals table.shop_table tr.woocommerce-shipping-totals .woocommerce-shipping-destination {
  display: block !important;
  float: right !important;
  clear: right !important;
  text-align: right !important;
  margin: 2px 0 0 0 !important;
  font-size: 13px !important;
  color: #64748b !important;
  font-weight: 500 !important;
}

.woocommerce-cart .cart_totals table.shop_table tr.woocommerce-shipping-totals .shipping-calculator-button {
  display: inline-flex !important;
  float: right !important;
  clear: right !important;
  text-align: right !important;
  margin-top: 6px !important;
  color: #006BAC !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}

.woocommerce-cart .shipping-calculator-button:hover {
  color: #00235D !important;
  text-decoration: underline !important;
}

/* Shipping Calculator Form Styling */
.woocommerce-cart .cart_totals table.shop_table tr.woocommerce-shipping-totals form.woocommerce-shipping-calculator {
  display: block !important;
  width: 100% !important;
  clear: both !important;
  float: none !important;
  margin: 0 !important;
  padding-top: 6px !important;
  box-sizing: border-box !important;
}

.woocommerce-cart .shipping-calculator-form {
  width: 100% !important;
  clear: both !important;
  float: none !important;
  text-align: left !important;
  margin-top: 14px !important;
  padding: 14px 0 6px 0 !important;
  border-top: 1px dashed #e2e8f0 !important;
  box-sizing: border-box !important;
}

.woocommerce-cart .shipping-calculator-form p.form-row {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  clear: both !important;
  float: none !important;
  margin: 0 0 12px 0 !important;
  padding: 0 !important;
  text-align: left !important;
  box-sizing: border-box !important;
}

.woocommerce-cart .shipping-calculator-form label {
  display: block !important;
  text-align: left !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  color: #00235D !important;
  margin-bottom: 5px !important;
  line-height: 1.3 !important;
}

.woocommerce-cart .shipping-calculator-form label .required {
  color: #ef4444 !important;
}

.woocommerce-cart .shipping-calculator-form input.input-text,
.woocommerce-cart .shipping-calculator-form select {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  background: #f8fafc !important;
  border: 1px solid #cbd5e1 !important;
  border-radius: 10px !important;
  padding: 9px 12px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13px !important;
  color: #00235D !important;
  text-align: left !important;
  height: 40px !important;
  transition: all 0.2s ease !important;
  outline: none !important;
  display: block !important;
}

.woocommerce-cart .shipping-calculator-form input.input-text:focus,
.woocommerce-cart .shipping-calculator-form select:focus {
  border-color: #006BAC !important;
  background: #ffffff !important;
  box-shadow: 0 0 0 3px rgba(0, 107, 172, 0.15) !important;
}

.woocommerce-cart .shipping-calculator-form button[name="calc_shipping"] {
  background-color: #006BAC !important;
  border: none !important;
  color: #ffffff !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 700 !important;
  font-size: 12px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  padding: 9px 20px !important;
  border-radius: 8px !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
}

.woocommerce-cart .shipping-calculator-form button[name="calc_shipping"]:hover {
  background-color: #00235D !important;
}

/* Checkout button */
.woocommerce-cart .wc-proceed-to-checkout .checkout-button {
  background-color: #00235D !important;
  color: #ffffff !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  padding: 16px 24px !important;
  border-radius: 12px !important;
  border: none !important;
  width: 100% !important;
  text-align: center !important;
  box-shadow: 0 6px 18px rgba(0, 35, 93, 0.25) !important;
  transition: all 0.2s ease !important;
  display: block !important;
  margin-top: 20px !important;
}

.woocommerce-cart .wc-proceed-to-checkout .checkout-button:hover {
  background-color: #006BAC !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 22px rgba(0, 107, 172, 0.3) !important;
}

/* Express Checkout / Payment Gateways in Cart */
.woocommerce-cart #wc-stripe-payment-request-wrapper,
.woocommerce-cart .wc-stripe-elements-field,
.woocommerce-cart .wc-stripe-cart-payment-methods {
  margin-top: 12px !important;
  width: 100% !important;
}

/* Empty Cart State */
.woocommerce-cart .cart-empty {
  text-align: center !important;
  padding: 60px 24px !important;
  background: #ffffff !important;
  border-radius: 20px !important;
  border: 1px solid #e2e8f0 !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  color: #00235D !important;
  box-shadow: 0 4px 20px rgba(0, 35, 93, 0.04) !important;
  max-width: 600px !important;
  margin: 40px auto 20px auto !important;
}

.woocommerce-cart .return-to-shop {
  text-align: center !important;
  margin-bottom: 60px !important;
}

.woocommerce-cart .return-to-shop a.button {
  background-color: #006BAC !important;
  color: #ffffff !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 700 !important;
  font-size: 13.5px !important;
  padding: 14px 32px !important;
  border-radius: 50px !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 4px 14px rgba(0, 107, 172, 0.25) !important;
  transition: all 0.25s ease !important;
}

.woocommerce-cart .return-to-shop a.button:hover {
  background-color: #00235D !important;
  transform: translateY(-2px) !important;
}

/* 6. Mobile Responsiveness (max-width: 768px) */
@media (max-width: 768px) {
  .elementor-widget-woocommerce-cart .e-cart__container {
    display: flex !important;
    flex-direction: column !important;
    gap: 24px !important;
    padding: 0 12px !important;
    box-sizing: border-box !important;
  }

  .woocommerce-cart table.shop_table.cart {
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
    display: block !important;
    width: 100% !important;
  }

  .woocommerce-cart table.shop_table.cart tbody {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
    width: 100% !important;
  }

  .woocommerce-cart table.shop_table.cart tbody tr.woocommerce-cart-form__cart-item {
    display: block !important;
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 16px !important;
    box-shadow: 0 4px 16px rgba(0, 35, 93, 0.04) !important;
    padding: 16px !important;
    box-sizing: border-box !important;
    position: relative !important;
    width: 100% !important;
  }

  .woocommerce-cart table.shop_table.cart td.product-remove {
    position: absolute !important;
    top: 14px !important;
    right: 14px !important;
    padding: 0 !important;
    border: none !important;
    width: auto !important;
    z-index: 2 !important;
  }

  .woocommerce-cart table.shop_table.cart td.product-thumbnail {
    display: block !important;
    border: none !important;
    padding: 0 0 12px 0 !important;
    text-align: left !important;
  }

  .woocommerce-cart table.shop_table.cart td.product-thumbnail img {
    width: 64px !important;
    height: 64px !important;
    border-radius: 12px !important;
    border: 1px solid #e2e8f0 !important;
    padding: 4px !important;
  }

  .woocommerce-cart table.shop_table.cart td.product-name {
    display: block !important;
    border: none !important;
    padding: 0 36px 12px 0 !important;
    text-align: left !important;
  }

  .woocommerce-cart table.shop_table.cart td.product-name a {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #00235D !important;
    line-height: 1.3 !important;
  }

  .woocommerce-cart table.shop_table.cart td.product-price,
  .woocommerce-cart table.shop_table.cart td.product-quantity,
  .woocommerce-cart table.shop_table.cart td.product-subtotal {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    border: none !important;
    border-top: 1px dashed #e2e8f0 !important;
    padding: 10px 0 !important;
    font-size: 14px !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }

  .woocommerce-cart table.shop_table.cart tbody td::before {
    content: attr(data-title) !important;
    display: inline-block !important;
    font-weight: 600 !important;
    color: #64748b !important;
    font-size: 13.5px !important;
  }

  .woocommerce-cart table.shop_table.cart td.product-thumbnail::before,
  .woocommerce-cart table.shop_table.cart td.product-name::before,
  .woocommerce-cart table.shop_table.cart td.product-remove::before {
    display: none !important;
    content: none !important;
  }

  .woocommerce-cart .coupon {
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
  }

  .woocommerce-cart .coupon input[type="text"],
  .woocommerce-cart .coupon input.input-text {
    width: 100% !important;
  }

  .woocommerce-cart .coupon button[name="apply_coupon"],
  .woocommerce-cart .coupon button.button {
    width: 100% !important;
  }
}

/* ==========================================================================
   CHECKOUT PAGE LUXURY SAAS EDITORIAL STYLING
   ========================================================================== */
.woocommerce-checkout .wanglas-entry-content {
  max-width: 1200px !important;
  margin: 24px auto 60px auto !important;
  padding: 0 20px !important;
  box-sizing: border-box !important;
}

.woocommerce-checkout form.checkout {
  display: block !important;
  width: 100% !important;
}

@media (min-width: 992px) {
  .woocommerce-checkout .e-checkout__container {
    display: grid !important;
    grid-template-columns: 1fr 440px !important;
    gap: 32px !important;
    align-items: start !important;
    width: 100% !important;
  }

  .woocommerce-checkout .e-checkout__column-start {
    width: 100% !important;
    max-width: 100% !important;
  }

  .woocommerce-checkout .e-checkout__column-end {
    width: 100% !important;
    max-width: 100% !important;
    position: sticky !important;
    top: 24px !important;
  }

  .woocommerce-checkout #customer_details {
    width: 100% !important;
    margin-bottom: 0 !important;
  }

  .woocommerce-checkout .wanglas-checkout-review-col {
    width: 100% !important;
  }
}

/* Reset Elementor's outer order review wrapper to prevent double borders */
html body.woocommerce-checkout .e-checkout__order_review,
html body.woocommerce-checkout .e-checkout__order_review-2,
html body.woocommerce-checkout .e-checkout__column-inner {
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

/* Hide empty shipping and additional fields boxes when inactive/empty */
html body #customer_details .woocommerce-shipping-fields:empty,
html body #customer_details .woocommerce-shipping-fields > div:only-child:empty,
html body div.woocommerce-additional-fields,
html body #customer_details .col-2 div.woocommerce-additional-fields,
html body .woocommerce-checkout .woocommerce-additional-fields,
div.woocommerce-additional-fields:not(:has(.form-row)),
.woocommerce-additional-fields:not(:has(.form-row)) {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
  height: 0 !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

/* Customer Details Cards (Billing, Shipping & Additional Details) */
.woocommerce-checkout .col2-set {
  width: 100% !important;
  float: none !important;
  margin: 0 !important;
}

.woocommerce-checkout .col2-set .col-1,
.woocommerce-checkout .col2-set .col-2 {
  width: 100% !important;
  max-width: 100% !important;
  float: none !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  background: transparent !important;
}

html body.woocommerce-checkout .woocommerce-billing-fields,
html body.woocommerce-checkout .woocommerce-shipping-fields,
html body.woocommerce-checkout #customer_details div.woocommerce-additional-fields:has(.form-row),
html body.woocommerce-checkout .wanglas-checkout-review-col {
  display: block !important;
  background: #ffffff !important;
  backdrop-filter: none !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 18px !important;
  padding: 24px 28px !important;
  box-shadow: 0 4px 20px rgba(0, 35, 93, 0.04) !important;
  margin-bottom: 24px !important;
  box-sizing: border-box !important;
}

html body.woocommerce-checkout .woocommerce-billing-fields h3,
html body.woocommerce-checkout .woocommerce-shipping-fields h3#ship-to-different-address,
html body.woocommerce-checkout .woocommerce-additional-fields h3,
html body.woocommerce-checkout #order_review_heading,
.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout .woocommerce-shipping-fields h3#ship-to-different-address,
.woocommerce-checkout .woocommerce-additional-fields h3,
.woocommerce-checkout #order_review_heading {
  font-family: 'Inter', sans-serif !important;
  font-size: 15px !important;
  color: #00235D !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  margin: 0 0 20px 0 !important;
  border: none !important;
  border-bottom: 1px solid #e2e8f0 !important;
  padding-bottom: 12px !important;
  background: transparent !important;
}

.woocommerce-checkout .woocommerce-shipping-fields h3#ship-to-different-address {
  margin-bottom: 0 !important;
  border-bottom: none !important;
  padding-bottom: 0 !important;
  display: flex !important;
  align-items: center !important;
}

.woocommerce-checkout .woocommerce-shipping-fields h3#ship-to-different-address label {
  font-size: 13.5px !important;
  font-weight: 700 !important;
  color: #64748b !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 0 !important;
}

.woocommerce-checkout .woocommerce-shipping-fields .shipping_address {
  margin-top: 18px !important;
  border-top: 1px solid #f1f5f9 !important;
  padding-top: 18px !important;
}

/* Form Fields & Grid */
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
.woocommerce-checkout .woocommerce-additional-fields__field-wrapper {
  display: block !important;
  width: 100% !important;
}

.woocommerce-checkout .woocommerce-billing-fields__field-wrapper::after,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper::after {
  content: "" !important;
  display: table !important;
  clear: both !important;
}

.woocommerce-checkout .form-row {
  margin-bottom: 16px !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

.woocommerce-checkout .form-row-wide {
  width: 100% !important;
  clear: both !important;
}

.woocommerce-checkout .form-row-first {
  width: calc(50% - 8px) !important;
  float: left !important;
  clear: left !important;
}

.woocommerce-checkout .form-row-last {
  width: calc(50% - 8px) !important;
  float: right !important;
  clear: right !important;
}

@media (max-width: 600px) {
  .woocommerce-checkout .form-row-first,
  .woocommerce-checkout .form-row-last {
    width: 100% !important;
    float: none !important;
    clear: both !important;
  }
}

.woocommerce-checkout .form-row label {
  font-family: 'Inter', sans-serif !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  color: #00235D !important;
  margin-bottom: 6px !important;
  display: block !important;
}

.woocommerce-checkout .form-row label abbr.required {
  color: #ef4444 !important;
  text-decoration: none !important;
  font-weight: 700 !important;
}

.woocommerce-checkout .form-row input.input-text,
.woocommerce-checkout .form-row select,
.woocommerce-checkout .form-row textarea {
  width: 100% !important;
  background: #f1f5f9 !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 8px !important;
  padding: 10px 14px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13.5px !important;
  color: #00235D !important;
  outline: none !important;
  box-sizing: border-box !important;
  transition: all 0.2s ease !important;
  height: 44px !important;
}

.woocommerce-checkout .form-row textarea {
  min-height: 90px !important;
  height: auto !important;
  line-height: 1.5 !important;
  resize: vertical !important;
}

.woocommerce-checkout .form-row input.input-text:focus,
.woocommerce-checkout .form-row select:focus,
.woocommerce-checkout .form-row textarea:focus {
  background: #ffffff !important;
  border-color: #006BAC !important;
  box-shadow: 0 0 0 3px rgba(0, 107, 172, 0.12) !important;
}

.woocommerce-checkout .form-row input::placeholder,
.woocommerce-checkout .form-row textarea::placeholder {
  color: #94a3b8 !important;
  font-size: 13px !important;
}

/* Select2 Country / State Dropdown Restyling */
.woocommerce-checkout .select2-container .select2-selection--single {
  height: 44px !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 8px !important;
  background: #f1f5f9 !important;
  display: flex !important;
  align-items: center !important;
  padding: 0 14px !important;
  outline: none !important;
  box-shadow: none !important;
  transition: all 0.2s ease !important;
}

.woocommerce-checkout .select2-container--open .select2-selection--single,
.woocommerce-checkout .select2-container--focus .select2-selection--single {
  background: #ffffff !important;
  border-color: #006BAC !important;
  box-shadow: 0 0 0 3px rgba(0, 107, 172, 0.12) !important;
}

.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__rendered {
  padding: 0 !important;
  line-height: 44px !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 500 !important;
  font-size: 13.5px !important;
  color: #00235D !important;
}

.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__arrow {
  height: 44px !important;
  right: 12px !important;
}

.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__arrow b {
  border-color: #006BAC transparent transparent transparent !important;
  border-width: 5px 4px 0 4px !important;
}

/* Select2 Global Dropdown Styling */
.select2-dropdown {
  border: 1px solid #cbd5e1 !important;
  border-radius: 12px !important;
  box-shadow: 0 10px 25px -5px rgba(0, 35, 93, 0.15), 0 8px 10px -6px rgba(0, 35, 93, 0.1) !important;
  background: #ffffff !important;
  overflow: hidden !important;
  z-index: 99999 !important;
  padding: 6px !important;
}

.select2-container--default .select2-search--dropdown {
  padding: 6px !important;
}

.select2-container--default .select2-search--dropdown .select2-search__field {
  border: 1px solid #e2e8f0 !important;
  border-radius: 8px !important;
  padding: 8px 12px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13px !important;
  color: #00235D !important;
  outline: none !important;
  background: #f8fafc !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.select2-container--default .select2-search--dropdown .select2-search__field:focus {
  border-color: #006BAC !important;
  background: #ffffff !important;
  box-shadow: 0 0 0 3px rgba(0, 107, 172, 0.12) !important;
}

.select2-results__options {
  max-height: 240px !important;
  padding: 0 !important;
}

.select2-container--default .select2-results__option {
  padding: 8px 12px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13px !important;
  color: #00235D !important;
  border-radius: 6px !important;
  transition: all 0.15s ease !important;
}

.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted[data-selected] {
  background-color: #f0f9ff !important;
  color: #006BAC !important;
  font-weight: 600 !important;
}

.select2-container--default .select2-results__option[aria-selected=true] {
  background-color: #006BAC !important;
  color: #ffffff !important;
  font-weight: 600 !important;
}

/* Coupon Notice in Checkout */
.woocommerce-checkout .e-coupon-box,
.woocommerce-checkout .woocommerce-form-coupon-toggle,
.woocommerce-checkout .woocommerce-info {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 12px !important;
  padding: 14px 20px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13px !important;
  color: #64748b !important;
  margin-bottom: 20px !important;
}

.woocommerce-checkout .e-coupon-box p,
.woocommerce-checkout .woocommerce-form-coupon-toggle a,
.woocommerce-checkout .woocommerce-info a {
  margin: 0 !important;
  color: #64748b !important;
}

.woocommerce-checkout .e-coupon-box a,
.woocommerce-checkout .woocommerce-form-coupon-toggle a,
.woocommerce-checkout .woocommerce-info a {
  color: #006BAC !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

/* Order Review Container (Right Column) */
.woocommerce-checkout #order_review {
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
  margin: 0 !important;
  width: 100% !important;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table {
  border: 1px solid #e2e8f0 !important;
  border-radius: 12px !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  width: 100% !important;
  margin-bottom: 0 !important;
  background: #ffffff !important;
  overflow: hidden !important;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table thead th {
  background-color: #f1f5f9 !important;
  color: #00235D !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 700 !important;
  font-size: 12px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  padding: 12px 16px !important;
  border: none !important;
  border-bottom: 1px solid #e2e8f0 !important;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table thead th.product-total {
  text-align: right !important;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table tbody tr td {
  padding: 14px 16px !important;
  border: none !important;
  border-bottom: 1px solid #f1f5f9 !important;
  color: #00235D !important;
  font-family: 'Inter', sans-serif !important;
  vertical-align: middle !important;
  background: transparent !important;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table tbody td.product-name {
  font-size: 13.5px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  color: #006BAC !important;
  text-align: left !important;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table tbody td.product-name strong.product-quantity {
  font-weight: 600 !important;
  color: #64748b !important;
  font-size: 12.5px !important;
  margin-left: 4px !important;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table tbody td.product-total {
  font-size: 13.5px !important;
  font-weight: 700 !important;
  color: #006BAC !important;
  text-align: right !important;
  white-space: nowrap !important;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table tfoot th {
  padding: 12px 16px !important;
  border: none !important;
  border-bottom: 1px solid #f1f5f9 !important;
  color: #64748b !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
  background-color: transparent !important;
  text-align: left !important;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table tfoot td {
  padding: 12px 16px !important;
  border: none !important;
  border-bottom: 1px solid #f1f5f9 !important;
  color: #00235D !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  text-align: right !important;
  background-color: transparent !important;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table tfoot tr.cart-subtotal td {
  color: #006BAC !important;
  font-weight: 700 !important;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table tfoot tr.shipping td {
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #00235D !important;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table tfoot tr.order-total th {
  font-size: 16px !important;
  font-weight: 800 !important;
  color: #00235D !important;
  border-top: 1px solid #e2e8f0 !important;
  border-bottom: none !important;
  padding-top: 16px !important;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table tfoot tr.order-total td {
  border-top: 1px solid #e2e8f0 !important;
  border-bottom: none !important;
  padding-top: 16px !important;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table tfoot tr.order-total td strong,
.woocommerce-checkout table.woocommerce-checkout-review-order-table tfoot tr.order-total td span.woocommerce-Price-amount {
  font-size: 18px !important;
  color: #006BAC !important;
  font-weight: 900 !important;
}

/* Payment Methods */
.woocommerce-checkout #payment {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 18px !important;
  padding: 24px 28px !important;
  box-shadow: 0 4px 20px rgba(0, 35, 93, 0.04) !important;
  margin-top: 0 !important;
}

.woocommerce-checkout #payment ul.payment_methods {
  border-bottom: 1px solid #e2e8f0 !important;
  padding-bottom: 14px !important;
  margin-bottom: 16px !important;
  list-style: none !important;
  padding-left: 0 !important;
}

.woocommerce-checkout #payment ul.payment_methods li {
  margin-bottom: 10px !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 600 !important;
  color: #00235D !important;
}

.woocommerce-checkout #payment ul.payment_methods li input[type="radio"] {
  accent-color: #006BAC !important;
  margin-right: 8px !important;
  width: 16px !important;
  height: 16px !important;
  cursor: pointer !important;
}

.woocommerce-checkout #payment .payment_box {
  background: #f8fafc !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 10px !important;
  padding: 14px 16px !important;
  margin-top: 10px !important;
  font-size: 13px !important;
  color: #475569 !important;
  line-height: 1.5 !important;
}

.woocommerce-checkout #payment .payment_box::before {
  display: none !important;
}

/* Privacy Policy & Terms Container Cleanup */
.woocommerce-checkout .woocommerce-privacy-policy-text:empty,
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper:empty,
.woocommerce-checkout .woocommerce-privacy-policy-text:blank,
.woocommerce-checkout .place-order:has(> .woocommerce-privacy-policy-text:empty:only-child),
.woocommerce-checkout .woocommerce-privacy-policy-text:not(:has(*:not(:empty))) {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
}

.woocommerce-checkout .woocommerce-privacy-policy-text {
  font-family: 'Inter', sans-serif !important;
  font-size: 12.5px !important;
  color: #64748b !important;
  line-height: 1.5 !important;
  margin: 14px 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
}

/* Place Order CTA Button */
.woocommerce-checkout #payment button#place_order {
  background-color: #00235D !important;
  color: #ffffff !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 800 !important;
  font-size: 14px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  padding: 16px 32px !important;
  border-radius: 12px !important;
  width: 100% !important;
  box-shadow: 0 4px 16px rgba(0, 35, 93, 0.25) !important;
  transition: all 0.25s ease !important;
  cursor: pointer !important;
  border: none !important;
}

.woocommerce-checkout #payment button#place_order:hover {
  background-color: #006BAC !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 24px rgba(0, 107, 172, 0.35) !important;
}

/* Checkout Mobile Adaptations */
@media (max-width: 768px) {
  .woocommerce-checkout .wanglas-entry-content {
    padding: 0 14px !important;
    margin: 16px auto 40px auto !important;
  }

  .woocommerce-checkout .woocommerce-billing-fields,
  .woocommerce-checkout .woocommerce-shipping-fields,
  .woocommerce-checkout .woocommerce-additional-fields:has(.form-row),
  .woocommerce-checkout .wanglas-checkout-review-col,
  .woocommerce-checkout #payment {
    padding: 20px 16px !important;
    border-radius: 18px !important;
  }

  .woocommerce-checkout table.woocommerce-checkout-review-order-table thead {
    display: table-header-group !important;
  }

  .woocommerce-checkout table.woocommerce-checkout-review-order-table tr {
    display: table-row !important;
  }

  .woocommerce-checkout table.woocommerce-checkout-review-order-table th,
  .woocommerce-checkout table.woocommerce-checkout-review-order-table td {
    display: table-cell !important;
  }

  .woocommerce-checkout table.woocommerce-checkout-review-order-table tr td::before {
    content: none !important;
    display: none !important;
  }
}

/* ==========================================================================
   WOOCOMMERCE NOTICES: FLOATING TOASTS & INLINE CARDS
   ========================================================================== */

/* Notices Wrapper Constraint */
.woocommerce-notices-wrapper {
  max-width: var(--wc-max-width);
  margin: 0 auto;
  padding: 0;
  box-sizing: border-box;
}

.woocommerce-notices-wrapper:empty {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Hide raw static WooCommerce inline notices to prevent flashing before toast creation */
.woocommerce-notices-wrapper .woocommerce-message:not(.rtg-toast-ready):not(.wanglas-toast-ready),
.woocommerce-notices-wrapper .woocommerce-error:not(.rtg-toast-ready):not(.wanglas-toast-ready),
.woocommerce-notices-wrapper .woocommerce-info:not(.rtg-toast-ready):not(.wanglas-toast-ready) {
  display: none !important;
}

/* 1. Floating Toast Notifications System */
.rtg-toast-container,
.wanglas-toast-container {
  position: fixed !important;
  top: 24px !important;
  right: 24px !important;
  z-index: 999999 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  max-width: 440px !important;
  width: calc(100% - 48px) !important;
  pointer-events: none !important;
}

@media (max-width: 600px) {
  .rtg-toast-container,
  .wanglas-toast-container {
    top: 16px !important;
    left: 16px !important;
    right: 16px !important;
    width: auto !important;
    max-width: none !important;
  }
}

.rtg-toast-card,
.wanglas-toast-card {
  pointer-events: auto !important;
  background: #ffffff !important;
  border-radius: 12px !important;
  box-shadow: 0 12px 36px rgba(0, 35, 93, 0.16), 0 4px 12px rgba(0, 0, 0, 0.05) !important;
  border: 1px solid #e2e8f0 !important;
  border-left: 5px solid #006BAC !important;
  padding: 14px 18px !important;
  margin: 0 !important;
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 14px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13.5px !important;
  color: #00235D !important;
  line-height: 1.4 !important;
  animation: rtgToastSlideIn 0.35s cubic-bezier(0.16, 1, 0.3, 1) forwards !important;
  box-sizing: border-box !important;
}

.rtg-toast-body {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex: 1 !important;
}

.rtg-toast-msg {
  color: #00235D !important;
  font-size: 13.5px !important;
}

.rtg-toast-msg strong {
  color: #00235D !important;
  font-weight: 700 !important;
}

.rtg-toast-actions {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex-shrink: 0 !important;
}

.rtg-toast-card.rtg-toast-error,
.wanglas-toast-card.woocommerce-error {
  border-left-color: #ef4444 !important;
}

.rtg-toast-card.rtg-toast-info,
.wanglas-toast-card.woocommerce-info {
  border-left-color: #00235D !important;
}

.rtg-toast-card a.button.wc-forward,
.rtg-toast-card a.button,
.rtg-toast-btn,
.wanglas-toast-card a.button.wc-forward,
.wanglas-toast-card a.button {
  background-color: #006BAC !important;
  color: #ffffff !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 12.5px !important;
  font-weight: 700 !important;
  padding: 8px 18px !important;
  border-radius: 50px !important;
  text-decoration: none !important;
  box-shadow: 0 2px 8px rgba(0, 107, 172, 0.25) !important;
  transition: all 0.2s ease !important;
  margin: 0 !important;
  float: none !important;
  white-space: nowrap !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: none !important;
  line-height: 1 !important;
}

.rtg-toast-card a.button:hover,
.rtg-toast-btn:hover,
.wanglas-toast-card a.button:hover {
  background-color: #00235D !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 12px rgba(0, 35, 93, 0.3) !important;
}

.rtg-toast-close,
.wanglas-toast-close {
  background: transparent !important;
  border: none !important;
  font-size: 20px !important;
  line-height: 1 !important;
  color: #94a3b8 !important;
  cursor: pointer !important;
  padding: 4px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: all 0.2s ease !important;
}

.rtg-toast-close:hover,
.wanglas-toast-close:hover {
  color: #00235D !important;
}

.rtg-toast-hiding,
.wanglas-toast-hiding {
  animation: rtgToastSlideOut 0.35s cubic-bezier(0.16, 1, 0.3, 1) forwards !important;
}

@keyframes rtgToastSlideIn {
  from {
    opacity: 0;
    transform: translateY(-16px) scale(0.96);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@keyframes rtgToastSlideOut {
  from {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
  to {
    opacity: 0;
    transform: translateY(-16px) scale(0.96);
  }
}

@keyframes wanglasToastSlideIn {
  from {
    opacity: 0;
    transform: translateY(-20px) scale(0.96);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@keyframes wanglasToastSlideOut {
  from {
    opacity: 1;
    transform: translateY(0) scale(1);
    max-height: 200px;
    margin-bottom: 0;
  }
  to {
    opacity: 0;
    transform: translateY(-20px) scale(0.94);
    max-height: 0;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-bottom: -12px;
  }
}

/* 2. Inline Standard Notices (Coupons, Login Prompts & Alerts) */
.woocommerce-info,
.woocommerce-message,
.woocommerce-error {
  background: var(--wc-white) !important;
  border: 1px solid var(--wc-navy-border) !important;
  border-left: 4px solid var(--wc-navy) !important;
  border-radius: var(--wc-radius-md) !important;
  padding: 16px 20px !important;
  color: var(--wc-navy) !important;
  font-family: var(--wc-font-heading) !important;
  font-size: 0.92rem !important;
  line-height: 1.5 !important;
  box-shadow: var(--wc-shadow-sm) !important;
  margin-bottom: 24px !important;
  position: relative !important;
}

/* Remove default overlapping icon font from WooCommerce core */
.woocommerce-info::before,
.woocommerce-message::before,
.woocommerce-error::before {
  display: none !important;
  content: none !important;
}

.woocommerce-info a,
.woocommerce-message a {
  color: var(--wc-magenta) !important;
  font-weight: 700 !important;
  text-decoration: underline !important;
}

.woocommerce-info a:hover,
.woocommerce-message a:hover {
  color: var(--wc-navy) !important;
}

/* Checkout Coupon Toggle Box */
.woocommerce-form-coupon-toggle .woocommerce-info {
  border-left-color: var(--wc-magenta) !important;
  background: #fdf5f8 !important;
}

form.checkout_coupon {
  background: var(--wc-white) !important;
  border: 1px solid var(--wc-navy-border) !important;
  border-radius: var(--wc-radius-lg) !important;
  padding: 24px !important;
  box-shadow: var(--wc-shadow-sm) !important;
  margin-bottom: 24px !important;
}

/* ==========================================================================
   MY ACCOUNT PAGE: AUTH TABS & BENTO GRID DASHBOARD
   ========================================================================== */

/* 1. Auth Login & Register Form (Logged Out State - Luxury Card) */
.woocommerce-account .woocommerce {
  max-width: 100%;
}

.wanglas-auth-container {
  max-width: 560px;
  margin: 40px auto 60px auto;
  padding: 0 16px;
  box-sizing: border-box;
}

.wanglas-auth-card {
  background: var(--wc-white);
  border: 1px solid var(--wc-navy-border);
  border-radius: var(--wc-radius-xl);
  padding: 44px 40px;
  box-shadow: 0 18px 45px rgba(38, 48, 101, 0.08);
  position: relative;
  overflow: hidden;
}

.wanglas-auth-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 5px;
  background: linear-gradient(90deg, var(--wc-magenta), #f5d1d7);
}

.wanglas-auth-header {
  text-align: center;
  margin-bottom: 30px;
}

.wanglas-auth-badge {
  display: inline-block;
  background: #fdf2f4;
  color: var(--wc-magenta);
  font-family: var(--wc-font-heading);
  font-size: 0.78rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  padding: 6px 14px;
  border-radius: var(--wc-radius-pill);
  margin-bottom: 12px;
  border: 1px solid #f5d1d7;
}

.wanglas-auth-title {
  font-size: 1.65rem;
  color: var(--wc-navy);
  font-weight: 800;
  margin: 0 0 8px 0;
}

.wanglas-auth-subtitle {
  color: var(--wc-text-muted);
  font-size: 0.92rem;
  line-height: 1.5;
  margin: 0 0 24px 0;
}

.wanglas-auth-tabs {
  display: flex;
  background: var(--wc-surface-soft);
  padding: 5px;
  border-radius: var(--wc-radius-pill);
  border: 1px solid var(--wc-navy-border);
}

.wanglas-auth-tab {
  flex: 1;
  border: none;
  background: transparent;
  padding: 12px 20px;
  font-family: var(--wc-font-heading);
  font-weight: 700;
  font-size: 0.92rem;
  color: var(--wc-navy);
  border-radius: var(--wc-radius-pill);
  cursor: pointer;
  transition: var(--wc-transition);
  text-align: center;
}

.wanglas-auth-tab.is-active {
  background: var(--wc-white);
  color: var(--wc-magenta);
  box-shadow: 0 3px 10px rgba(38, 48, 101, 0.07);
}

#customer_login {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  display: block !important;
  float: none !important;
}

#customer_login .u-column1,
#customer_login .u-column2,
#customer_login .col-1,
#customer_login .col-2 {
  width: 100% !important;
  max-width: 100% !important;
  float: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

#customer_login .wanglas-auth-col {
  display: none;
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
}

#customer_login .wanglas-auth-col.is-active {
  display: block !important;
}

#customer_login form.login,
#customer_login form.register {
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border-radius: 0 !important;
}

/* Hide inner h2 inside the forms since it's already in the header */
#customer_login h2 {
  display: none !important;
}

#customer_login .form-row {
  margin-bottom: 22px;
  padding: 0 !important;
}

#customer_login .form-row label {
  font-family: var(--wc-font-heading);
  font-weight: 700;
  font-size: 0.9rem;
  color: var(--wc-navy);
  margin-bottom: 8px;
  display: block;
}

#customer_login .form-row input.input-text {
  width: 100%;
  background: var(--wc-white);
  border: 1.5px solid var(--wc-navy-border);
  border-radius: var(--wc-radius-md);
  padding: 14px 18px;
  font-family: var(--wc-font-heading);
  font-size: 0.95rem;
  color: var(--wc-navy);
  outline: none;
  box-sizing: border-box;
  transition: var(--wc-transition);
}

#customer_login .form-row input.input-text:focus {
  border-color: var(--wc-magenta);
  box-shadow: 0 0 0 3px var(--wc-rose-soft);
}

#customer_login .woocommerce-form-login__rememberme {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin: 16px 0 24px 0 !important;
  font-size: 0.88rem !important;
  color: var(--wc-navy) !important;
  font-weight: 600 !important;
  cursor: pointer !important;
}

#customer_login .woocommerce-form-login__rememberme input[type="checkbox"] {
  accent-color: var(--wc-magenta);
  width: 17px;
  height: 17px;
  margin: 0 !important;
  cursor: pointer;
}

#customer_login .woocommerce-form-login__rememberme span {
  font-size: 0.88rem;
  color: var(--wc-navy);
}

#customer_login .woocommerce-privacy-policy-text,
#customer_login .register p:not(.form-row) {
  font-size: 0.84rem;
  color: var(--wc-text-muted);
  line-height: 1.6;
  margin: 16px 0 24px 0;
  background: var(--wc-surface-soft);
  padding: 14px 16px;
  border-radius: var(--wc-radius-md);
  border: 1px solid var(--wc-navy-border);
}

#customer_login .woocommerce-privacy-policy-text a,
#customer_login .register a {
  color: var(--wc-magenta);
  font-weight: 700;
  text-decoration: underline;
}

#customer_login button.button {
  background-color: var(--wc-magenta) !important;
  color: var(--wc-white) !important;
  font-family: var(--wc-font-heading) !important;
  font-weight: 800 !important;
  font-size: 1.05rem !important;
  padding: 16px 32px !important;
  border-radius: var(--wc-radius-md) !important;
  width: 100% !important;
  box-shadow: 0 4px 16px var(--wc-magenta-glow) !important;
  transition: var(--wc-transition) !important;
  cursor: pointer;
  margin-top: 8px !important;
  letter-spacing: 0.02em;
}

#customer_login button.button:hover {
  background-color: var(--wc-magenta-hover) !important;
  transform: translateY(-2px);
  box-shadow: 0 6px 22px var(--wc-magenta-glow) !important;
}

#customer_login .woocommerce-LostPassword {
  text-align: center;
  margin-top: 20px;
  font-size: 0.88rem;
}

#customer_login .woocommerce-LostPassword a {
  color: var(--wc-magenta);
  text-decoration: none;
  font-weight: 700;
  transition: var(--wc-transition);
}

#customer_login .woocommerce-LostPassword a:hover {
  color: var(--wc-magenta-hover);
  text-decoration: underline;
}

/* Legacy My Account rules cleared - all styling consolidated in My Account SaaS section */

.wanglas-bento-card:hover .wanglas-bento-link {
  color: var(--wc-magenta-hover);
  padding-left: 4px;
}

/* 3. My Account Forms: Edit Address & Account Details */
.woocommerce-account .woocommerce-address-fields,
.woocommerce-account .woocommerce-EditAccountForm,
.woocommerce-account .woocommerce-MyAccount-content form {
  background: var(--wc-white);
  border: 1px solid var(--wc-navy-border);
  border-radius: var(--wc-radius-lg);
  padding: 32px;
  box-shadow: var(--wc-shadow-sm);
  margin-bottom: 30px;
}

.woocommerce-account .woocommerce-address-fields h3,
.woocommerce-account .woocommerce-MyAccount-content h3 {
  font-size: 1.35rem;
  color: var(--wc-navy);
  font-weight: 800;
  margin-bottom: 24px;
  border-bottom: 1.5px solid var(--wc-navy-border);
  padding-bottom: 12px;
}

.woocommerce-account .form-row {
  margin-bottom: 18px;
}

.woocommerce-account .form-row label {
  font-family: var(--wc-font-heading);
  font-weight: 600;
  font-size: 0.88rem;
  color: var(--wc-navy);
  margin-bottom: 6px;
  display: block;
}

.woocommerce-account .form-row input.input-text,
.woocommerce-account .form-row select,
.woocommerce-account .form-row textarea {
  width: 100%;
  background: var(--wc-white);
  border: 1.5px solid var(--wc-navy-border);
  border-radius: var(--wc-radius-md);
  padding: 12px 16px;
  font-family: var(--wc-font-heading);
  font-size: 0.92rem;
  color: var(--wc-navy);
  outline: none;
  box-sizing: border-box;
  transition: var(--wc-transition);
}

.woocommerce-account .form-row input.input-text:focus,
.woocommerce-account .form-row select:focus,
.woocommerce-account .form-row textarea:focus {
  border-color: var(--wc-magenta);
  box-shadow: 0 0 0 3px var(--wc-rose-soft);
}

/* Select2 in My Account Forms */
.woocommerce-account .select2-container .select2-selection--single {
  height: 48px !important;
  border: 1.5px solid var(--wc-navy-border) !important;
  border-radius: var(--wc-radius-md) !important;
  background: var(--wc-white) !important;
  display: flex !important;
  align-items: center !important;
  padding: 0 16px !important;
  outline: none !important;
  box-shadow: var(--wc-shadow-sm) !important;
  transition: var(--wc-transition) !important;
}

.woocommerce-account .select2-container--open .select2-selection--single,
.woocommerce-account .select2-container--focus .select2-selection--single {
  border-color: var(--wc-magenta) !important;
  box-shadow: 0 0 0 3px var(--wc-rose-soft) !important;
}

.woocommerce-account .select2-container .select2-selection--single .select2-selection__rendered {
  padding: 0 !important;
  line-height: 48px !important;
  font-family: var(--wc-font-heading) !important;
  font-weight: 600 !important;
  font-size: 0.92rem !important;
  color: var(--wc-navy) !important;
}

.woocommerce-account .select2-container .select2-selection--single .select2-selection__arrow {
  height: 48px !important;
  right: 14px !important;
}

.woocommerce-account .select2-container .select2-selection--single .select2-selection__arrow b {
  border-color: var(--wc-magenta) transparent transparent transparent !important;
  border-width: 6px 5px 0 5px !important;
}

/* Submit Button in My Account Forms */
.woocommerce-account .woocommerce-MyAccount-content button.button,
.woocommerce-account .woocommerce-MyAccount-content input[type="submit"].button {
  background-color: var(--wc-magenta) !important;
  color: var(--wc-white) !important;
  font-family: var(--wc-font-heading) !important;
  font-weight: 700 !important;
  font-size: 1rem !important;
  padding: 14px 32px !important;
  border-radius: var(--wc-radius-md) !important;
  box-shadow: 0 4px 14px var(--wc-magenta-glow) !important;
  transition: var(--wc-transition) !important;
  cursor: pointer;
  border: none !important;
  margin-top: 10px !important;
}

.woocommerce-account .woocommerce-MyAccount-content button.button:hover,
.woocommerce-account .woocommerce-MyAccount-content input[type="submit"].button:hover {
  background-color: var(--wc-magenta-hover) !important;
  transform: translateY(-2px);
  box-shadow: 0 6px 20px var(--wc-magenta-glow) !important;
}

/* Orders Table and Address View Cards in My Account */
.woocommerce-account table.my_account_orders,
.woocommerce-account table.woocommerce-table--order-downloads {
  background: var(--wc-white);
  border: 1px solid var(--wc-navy-border);
  border-radius: var(--wc-radius-lg);
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
  box-shadow: var(--wc-shadow-sm);
  width: 100%;
  margin-bottom: 24px;
}

.woocommerce-account table.my_account_orders th {
  background-color: var(--wc-surface-soft);
  color: var(--wc-navy);
  font-family: var(--wc-font-heading);
  font-weight: 700;
  padding: 16px 20px;
  border-bottom: 1px solid var(--wc-navy-border);
}

.woocommerce-account table.my_account_orders td {
  padding: 16px 20px;
  border-bottom: 1px solid var(--wc-navy-border);
  color: var(--wc-navy);
}

.woocommerce-account table.my_account_orders tr:last-child td {
  border-bottom: none;
}

.woocommerce-account .woocommerce-Address {
  background: var(--wc-white);
  border: 1px solid var(--wc-navy-border);
  border-radius: var(--wc-radius-lg);
  padding: 24px;
  box-shadow: var(--wc-shadow-sm);
}

.woocommerce-account .woocommerce-Address .woocommerce-Address-title h3 {
  border-bottom: none;
  padding-bottom: 0;
  margin-bottom: 10px;
}

.woocommerce-account .woocommerce-Address .woocommerce-Address-title a {
  color: var(--wc-magenta);
  font-weight: 700;
  text-decoration: none;
}

/* 4. Single Order Details View (Detalles del Pedido) */
.woocommerce-account .woocommerce-order-details {
  background: var(--wc-white);
  border: 1px solid var(--wc-navy-border);
  border-radius: var(--wc-radius-lg);
  padding: 30px;
  box-shadow: var(--wc-shadow-sm);
  margin-bottom: 30px;
}

.woocommerce-account .woocommerce-order-details h2 {
  font-size: 1.35rem;
  color: var(--wc-navy);
  font-weight: 800;
  margin-bottom: 20px;
  border-bottom: 1.5px solid var(--wc-navy-border);
  padding-bottom: 12px;
}

.woocommerce-account table.woocommerce-table--order-details {
  background: var(--wc-white);
  border: 1px solid var(--wc-navy-border);
  border-radius: var(--wc-radius-md);
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
  overflow: hidden;
  margin-bottom: 24px;
}

.woocommerce-account table.woocommerce-table--order-details thead th {
  background-color: var(--wc-surface-soft);
  color: var(--wc-navy);
  font-family: var(--wc-font-heading);
  font-weight: 700;
  font-size: 0.9rem;
  padding: 14px 18px;
  border-bottom: 1px solid var(--wc-navy-border);
}

.woocommerce-account table.woocommerce-table--order-details thead th:last-child {
  text-align: right;
}

.woocommerce-account table.woocommerce-table--order-details tbody td {
  padding: 16px 18px;
  border-top: 1px solid var(--wc-navy-border);
  color: var(--wc-navy);
  font-family: var(--wc-font-heading);
}

.woocommerce-account table.woocommerce-table--order-details tbody td:last-child {
  text-align: right;
  font-weight: 700;
  color: var(--wc-magenta);
}

.woocommerce-account table.woocommerce-table--order-details tfoot th {
  padding: 14px 18px;
  border-top: 1px solid var(--wc-navy-border);
  color: var(--wc-navy);
  font-family: var(--wc-font-heading);
  font-size: 0.92rem;
  font-weight: 700;
  background-color: #fafbfc;
}

.woocommerce-account table.woocommerce-table--order-details tfoot td {
  padding: 14px 18px;
  border-top: 1px solid var(--wc-navy-border);
  color: var(--wc-navy);
  font-family: var(--wc-font-heading);
  font-size: 0.95rem;
  font-weight: 700;
  text-align: right;
  background-color: #fafbfc;
}

.woocommerce-account table.woocommerce-table--order-details tfoot tr:last-child th,
.woocommerce-account table.woocommerce-table--order-details tfoot tr:last-child td {
  background-color: var(--wc-surface-soft);
  font-size: 1.15rem;
  color: var(--wc-magenta);
  font-weight: 800;
}

.woocommerce-account .woocommerce-customer-details {
  background: var(--wc-white);
  border: 1px solid var(--wc-navy-border);
  border-radius: var(--wc-radius-lg);
  padding: 30px;
  box-shadow: var(--wc-shadow-sm);
  margin-bottom: 30px;
}

.woocommerce-account .woocommerce-customer-details h2 {
  font-size: 1.35rem;
  color: var(--wc-navy);
  font-weight: 800;
  margin-bottom: 20px;
  border-bottom: 1.5px solid var(--wc-navy-border);
  padding-bottom: 12px;
}

.woocommerce-account .woocommerce-customer-details address {
  background: var(--wc-surface-soft);
  border: 1px solid var(--wc-navy-border);
  border-radius: var(--wc-radius-md);
  padding: 20px 24px;
  font-style: normal;
  color: var(--wc-navy);
  font-family: var(--wc-font-heading);
  line-height: 1.7;
}

/* 5. Fix Button & Link Hovers Across WooCommerce (Remove default blue/underline hover) */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover {
  text-decoration: none !important;
  color: var(--wc-white) !important;
}

.woocommerce table.my_account_orders td.woocommerce-orders-table__cell-order-actions a.button {
  background-color: var(--wc-surface-soft) !important;
  border: 1.5px solid var(--wc-navy-border) !important;
  color: var(--wc-navy) !important;
  font-size: 0.82rem !important;
  font-weight: 700 !important;
  padding: 8px 16px !important;
  border-radius: var(--wc-radius-pill) !important;
  box-shadow: none !important;
}

/* ==========================================================================
   READY TO GO CABLES - MODERN BLOG ARCHIVE & SINGLE POST STYLES
   ========================================================================== */

/* Main Containers */
.rtg-blog-main,
.rtg-single-post-main {
  background-color: #f8fafc;
}

.rtg-blog-page-container {
  max-width: 1240px;
  margin: 0 auto;
  padding: 48px 24px 80px 24px;
}

.rtg-blog-layout {
  display: grid;
  grid-template-columns: 1fr 310px;
  gap: 48px;
  align-items: start;
}

@media (max-width: 991px) {
  .rtg-blog-layout {
    grid-template-columns: 1fr;
    gap: 40px;
  }
}

/* ==========================================================================
   BLOG ARCHIVE (home.php)
   ========================================================================== */

/* Blog Header */
.rtg-blog-header-row {
  margin-bottom: 36px;
}

.rtg-blog-kicker {
  display: inline-block;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #006BAC;
  margin-bottom: 8px;
}

.rtg-blog-section-title {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
  font-size: clamp(24px, 3.5vw, 34px) !important;
  font-weight: 800 !important;
  color: #00235D !important;
  letter-spacing: -0.02em;
  margin: 0 0 10px 0 !important;
  line-height: 1.2;
}

.rtg-blog-section-subtitle {
  font-size: 15px;
  color: #64748b;
  margin: 0 0 20px 0;
  line-height: 1.5;
  max-width: 650px;
}

.rtg-blog-header-divider {
  width: 100%;
  height: 1px;
  background-color: #e2e8f0;
}

/* Blog Grid */
.rtg-blog-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 32px 28px;
}

@media (max-width: 640px) {
  .rtg-blog-grid {
    grid-template-columns: 1fr;
    gap: 28px;
  }
}

/* Blog Card */
.rtg-blog-card {
  display: flex;
  flex-direction: column;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 4px 16px rgba(0, 35, 93, 0.04);
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.3s ease;
}

.rtg-blog-card:hover {
  transform: translateY(-5px);
  border-color: #cbd5e1;
  box-shadow: 0 14px 30px rgba(0, 35, 93, 0.1);
}

.rtg-blog-card-media-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background-color: #f1f5f9;
}

.rtg-blog-card-media {
  display: block;
  width: 100%;
  height: 100%;
  aspect-ratio: 16 / 9;
}

.rtg-blog-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.5s ease;
}

.rtg-blog-card:hover .rtg-blog-card-media img {
  transform: scale(1.05);
}

.rtg-blog-card-badge {
  position: absolute;
  top: 14px;
  left: 14px;
  background: rgba(0, 35, 93, 0.88);
  backdrop-filter: blur(8px);
  color: #ffffff !important;
  font-family: 'Inter', sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: 5px 12px;
  border-radius: 20px;
  text-decoration: none !important;
  transition: background 0.2s ease;
  z-index: 2;
}

.rtg-blog-card-badge:hover {
  background: #006BAC;
}

.rtg-blog-card-body {
  padding: 24px;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}

.rtg-blog-card-meta {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  color: #64748b;
  margin-bottom: 12px;
}

.rtg-blog-meta-date,
.rtg-blog-meta-time {
  display: inline-flex;
  align-items: center;
  gap: 5px;
}

.rtg-blog-meta-date svg,
.rtg-blog-meta-time svg {
  color: #006BAC;
}

.rtg-blog-meta-sep {
  color: #cbd5e1;
}

.rtg-blog-card-title {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  margin: 0 0 10px 0 !important;
}

.rtg-blog-card-title a {
  color: #00235D !important;
  text-decoration: none !important;
  transition: color 0.2s ease;
}

.rtg-blog-card-title a:hover {
  color: #006BAC !important;
}

.rtg-blog-card-excerpt {
  font-size: 14px;
  line-height: 1.6;
  color: #475569;
  margin: 0 0 20px 0;
  flex-grow: 1;
}

.rtg-blog-card-footer {
  margin-top: auto;
  padding-top: 16px;
  border-top: 1px solid #f1f5f9;
}

.rtg-blog-read-more {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 13.5px;
  font-weight: 700;
  color: #006BAC !important;
  text-decoration: none !important;
  transition: gap 0.2s ease, color 0.2s ease;
}

.rtg-blog-read-more:hover {
  gap: 10px;
  color: #00235D !important;
}

/* Blog Pagination */
.rtg-blog-pagination {
  margin-top: 48px;
  padding-top: 24px;
  border-top: 1px solid #e2e8f0;
  text-align: center;
}

.rtg-blog-pagination .nav-links {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.rtg-blog-pagination .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 40px;
  height: 40px;
  padding: 0 14px;
  border-radius: 8px;
  border: 1px solid #cbd5e1;
  background: #ffffff;
  color: #00235D;
  font-weight: 600;
  font-size: 14px;
  text-decoration: none !important;
  transition: all 0.2s ease;
}

.rtg-blog-pagination .page-numbers.current,
.rtg-blog-pagination .page-numbers:hover {
  background: #006BAC;
  color: #ffffff;
  border-color: #006BAC;
}

/* ==========================================================================
   SINGLE POST (single.php)
   ========================================================================== */

.rtg-single-main-col {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 20px;
  padding: clamp(24px, 4vw, 44px);
  box-shadow: 0 4px 18px rgba(0, 35, 93, 0.04);
  min-width: 0;
}

/* Single Meta Bar */
.rtg-single-meta-bar {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 14px 18px;
  padding-bottom: 24px;
  margin-bottom: 28px;
  border-bottom: 1px solid #e2e8f0;
}

.rtg-single-cat-badge {
  display: inline-block;
  background: #006BAC;
  color: #ffffff !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: 5px 14px;
  border-radius: 20px;
  text-decoration: none !important;
  transition: background 0.2s ease;
}

.rtg-single-cat-badge:hover {
  background: #00235D;
}

.rtg-single-meta-item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 13.5px;
  color: #64748b;
  font-weight: 500;
}

.rtg-single-meta-item svg {
  color: #006BAC;
}

.rtg-single-meta-author {
  font-weight: 600;
  color: #00235D;
}

/* Featured Media 16:9 */
.rtg-single-featured-media,
.elementor-widget-theme-post-featured-image .elementor-widget-container {
  width: 100%;
  aspect-ratio: 16 / 9;
  margin-bottom: 36px;
  border-radius: 16px;
  overflow: hidden;
  background: #f1f5f9;
  border: 1px solid #e2e8f0;
  box-shadow: 0 8px 24px rgba(0, 35, 93, 0.06);
}

.rtg-single-featured-media img,
.elementor-widget-theme-post-featured-image img {
  width: 100% !important;
  height: 100% !important;
  max-height: none !important;
  aspect-ratio: 16 / 9 !important;
  object-fit: cover !important;
  display: block !important;
}

/* Related Posts 16:9 Thumbnails */
.elementor-posts .elementor-post__thumbnail,
.elementor-posts .elementor-post__thumbnail__link {
  width: 100%;
  aspect-ratio: 16 / 9 !important;
  overflow: hidden;
  border-radius: 12px;
}

.elementor-posts .elementor-post__thumbnail img {
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: 16 / 9 !important;
  object-fit: cover !important;
  display: block;
}

.rtg-single-entry-content,
.elementor-widget-theme-post-content .elementor-widget-container {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  font-size: 16.5px;
  line-height: 1.8;
  color: #334155;
  word-break: normal;
  overflow-wrap: break-word;
}

.rtg-single-entry-content p:first-of-type {
  font-size: 18px;
  line-height: 1.75;
  color: #1e293b;
  font-weight: 400;
}

.rtg-single-entry-content h2,
.elementor-widget-theme-post-content h2,
.entry-content h2 {
  font-size: clamp(20px, 4vw, 26px) !important;
  font-weight: 800 !important;
  color: #00235D !important;
  margin: 36px 0 16px 0 !important;
  line-height: 1.3 !important;
  letter-spacing: -0.01em;
  word-break: normal !important;
  overflow-wrap: break-word !important;
}

.rtg-single-entry-content h3,
.elementor-widget-theme-post-content h3,
.entry-content h3 {
  font-size: clamp(17px, 3vw, 20px) !important;
  font-weight: 700 !important;
  color: #00235D !important;
  margin: 28px 0 12px 0 !important;
  line-height: 1.4 !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
}

.rtg-single-entry-content p,
.elementor-widget-theme-post-content p,
.entry-content p {
  margin-bottom: 22px;
  word-break: normal;
  overflow-wrap: break-word;
}

.rtg-single-entry-content ul,
.rtg-single-entry-content ol,
.elementor-widget-theme-post-content ul,
.elementor-widget-theme-post-content ol {
  margin: 0 0 26px 24px;
  padding: 0;
}

.rtg-single-entry-content li {
  margin-bottom: 10px;
  line-height: 1.65;
}

.rtg-single-entry-content blockquote {
  background: #f0f7ff;
  border-left: 4px solid #006BAC;
  border-radius: 0 12px 12px 0;
  padding: 20px 24px;
  margin: 32px 0;
  color: #00235D;
  font-style: italic;
  font-size: 17px;
}

.rtg-single-entry-content img {
  border-radius: 12px;
  max-width: 100%;
  height: auto;
  margin: 24px 0;
}

/* Tags Row */
.rtg-single-tags-row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
  padding: 24px 0;
  border-top: 1px solid #e2e8f0;
  margin-top: 36px;
}

.rtg-tags-label {
  font-size: 14px;
  font-weight: 700;
  color: #00235D;
}

.rtg-tags-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.rtg-tag-pill {
  display: inline-block;
  background: #f1f5f9;
  color: #00235D;
  font-size: 13px;
  font-weight: 600;
  padding: 5px 14px;
  border-radius: 20px;
  text-decoration: none !important;
  transition: all 0.2s ease;
}

.rtg-tag-pill:hover {
  background: #006BAC;
  color: #ffffff !important;
}

/* Social Share Box */
.rtg-single-share-box {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  padding: 20px 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
  margin: 32px 0;
}

.rtg-share-title {
  display: block;
  font-size: 15px;
  font-weight: 700;
  color: #00235D;
}

.rtg-share-subtitle {
  display: block;
  font-size: 13px;
  color: #64748b;
}

.rtg-share-icons {
  display: flex;
  align-items: center;
  gap: 10px;
}

.rtg-share-btn {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: #ffffff;
  border: 1px solid #cbd5e1;
  color: #00235D;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none !important;
  transition: all 0.25s ease;
}

.rtg-share-btn:hover {
  background: #006BAC;
  border-color: #006BAC;
  color: #ffffff !important;
  transform: translateY(-3px);
  box-shadow: 0 6px 14px rgba(0, 107, 172, 0.25);
}

.rtg-share-whatsapp:hover {
  background: #25d366 !important;
  border-color: #25d366 !important;
}

/* Engineering CTA Banner */
.rtg-single-expert-cta {
  background: linear-gradient(135deg, #00235D 0%, #00173d 100%);
  border-radius: 16px;
  padding: 32px;
  color: #ffffff;
  margin: 36px 0;
  position: relative;
  overflow: hidden;
}

.rtg-expert-cta-badge {
  display: inline-block;
  background: rgba(0, 107, 172, 0.5);
  border: 1px solid rgba(255, 255, 255, 0.2);
  color: #ffffff;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.1em;
  padding: 4px 12px;
  border-radius: 20px;
  margin-bottom: 12px;
}

.rtg-expert-cta-title {
  color: #ffffff !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  margin: 0 0 10px 0 !important;
}

.rtg-expert-cta-desc {
  color: rgba(255, 255, 255, 0.85);
  font-size: 14.5px;
  line-height: 1.6;
  margin: 0 0 20px 0;
  max-width: 580px;
}

.rtg-expert-cta-actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}

.rtg-btn-primary {
  display: inline-flex;
  align-items: center;
  background: #006BAC;
  color: #ffffff !important;
  font-weight: 700;
  font-size: 14px;
  padding: 12px 24px;
  border-radius: 30px;
  text-decoration: none !important;
  transition: background 0.2s ease, transform 0.2s ease;
}

.rtg-btn-primary:hover {
  background: #005082;
  transform: translateY(-2px);
}

.rtg-btn-outline {
  display: inline-flex;
  align-items: center;
  background: transparent;
  color: #ffffff !important;
  border: 1.5px solid rgba(255, 255, 255, 0.4);
  font-weight: 600;
  font-size: 14px;
  padding: 12px 22px;
  border-radius: 30px;
  text-decoration: none !important;
  transition: all 0.2s ease;
}

.rtg-btn-outline:hover {
  border-color: #ffffff;
  background: rgba(255, 255, 255, 0.1);
}

/* Single Navigation Row */
.rtg-single-nav-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin-top: 36px;
}

@media (max-width: 600px) {
  .rtg-single-nav-row {
    grid-template-columns: 1fr;
  }
}

.rtg-nav-card {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  padding: 20px;
  text-decoration: none !important;
  display: flex;
  flex-direction: column;
  transition: all 0.25s ease;
}

.rtg-nav-card:hover {
  background: #ffffff;
  border-color: #006BAC;
  transform: translateY(-3px);
  box-shadow: 0 8px 20px rgba(0, 35, 93, 0.08);
}

.rtg-nav-hint {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 700;
  color: #006BAC;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  margin-bottom: 8px;
}

.rtg-nav-title {
  font-size: 15px;
  font-weight: 700;
  color: #00235D !important;
  line-height: 1.4;
  margin: 0 !important;
  transition: color 0.2s ease;
}

.rtg-nav-card:hover .rtg-nav-title {
  color: #006BAC !important;
}

.rtg-nav-card-disabled {
  visibility: hidden;
}

/* ==========================================================================
   SIDEBAR WIDGETS & STICKY BEHAVIOR
   ========================================================================== */
.rtg-blog-sidebar {
  display: flex;
  flex-direction: column;
  gap: 32px;
}

@media (min-width: 992px) {
  .rtg-blog-sidebar,
  .elementor-1452 .elementor-element-1bd49880 .elementor-inner-section,
  .elementor-location-single .elementor-element-1bd49880 .elementor-inner-section,
  .elementor-location-single .elementor-column:last-child .elementor-inner-section {
    position: sticky !important;
    top: 100px !important;
    z-index: 10 !important;
    align-self: flex-start !important;
  }
}

@media (max-width: 991px) {
  .rtg-blog-sidebar,
  .elementor-1452 .elementor-element-1bd49880 .elementor-inner-section,
  .elementor-location-single .elementor-element-1bd49880 .elementor-inner-section,
  .elementor-location-single .elementor-column:last-child .elementor-inner-section {
    position: static !important;
    top: auto !important;
  }
}

.rtg-blog-widget {
  width: 100%;
}

.rtg-blog-widget-title {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #00235D !important;
  margin: 0 0 16px 0 !important;
}

/* Blog Search Widget */
.rtg-blog-search-form {
  margin: 0;
}

.rtg-blog-search-input-wrap {
  display: flex;
  align-items: center;
  width: 100%;
  background: #ffffff;
  border-radius: 10px;
  overflow: hidden;
  border: 1px solid #cbd5e1;
  box-shadow: 0 2px 8px rgba(0, 35, 93, 0.04);
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.rtg-blog-search-input-wrap:focus-within {
  border-color: #006BAC;
  box-shadow: 0 0 0 3px rgba(0, 107, 172, 0.15);
}

.rtg-blog-search-input {
  flex: 1;
  border: none !important;
  background: transparent !important;
  padding: 14px 16px !important;
  font-size: 14px !important;
  color: #1e293b !important;
  outline: none !important;
  box-shadow: none !important;
}

.rtg-blog-search-input::placeholder {
  color: #94a3b8;
}

.rtg-blog-search-submit {
  border: none !important;
  background: #006BAC !important;
  color: #ffffff !important;
  padding: 0 20px !important;
  height: 48px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  transition: background 0.2s ease !important;
}

.rtg-blog-search-submit:hover {
  background: #00235D !important;
}

.woocommerce table.my_account_orders td.woocommerce-orders-table__cell-order-actions a.button:hover {
  background-color: var(--wc-magenta) !important;
  border-color: var(--wc-magenta) !important;
  color: var(--wc-white) !important;
  transform: translateY(-1px);
}

/* General button pill fixes */
a.button:hover,
button.button:hover,
input[type="submit"].button:hover {
  color: var(--wc-white) !important;
}

/* ==========================================================================
   WANGLAS PERFORMANCE LOADERS (TOP NANO PROGRESS BAR & LUXURY PRELOADER)
   ========================================================================== */

/* 1. Top Nano Progress Loading Bar */
.wanglas-top-progress {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 3px;
  z-index: 9999999;
  pointer-events: none;
  background: transparent;
}

.wanglas-top-progress-bar {
  height: 100%;
  width: 0;
  background: linear-gradient(90deg, var(--wc-magenta) 0%, #e11d48 50%, #f43f5e 100%);
  box-shadow: 0 0 10px rgba(190, 23, 117, 0.7), 0 0 5px rgba(190, 23, 117, 0.9);
  transition: width 0.3s cubic-bezier(0.1, 0.9, 0.2, 1), opacity 0.3s ease;
  opacity: 0;
}

.wanglas-top-progress.is-loading .wanglas-top-progress-bar {
  opacity: 1;
  width: 80%;
  transition: width 8s cubic-bezier(0.1, 0.5, 0.1, 1);
}

.wanglas-top-progress.is-done .wanglas-top-progress-bar {
  opacity: 1;
  width: 100%;
  transition: width 0.2s ease, opacity 0.3s 0.2s ease;
}

/* 2. Luxury First-Visit Brand Preloader */
.wanglas-brand-preloader {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 99999999;
  align-items: center;
  justify-content: center;
}

.wanglas-brand-preloader.is-active {
  display: flex;
}

.wanglas-preloader-backdrop {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: radial-gradient(circle at center, #263065 0%, #151a3a 100%);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  transition: opacity 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}

.wanglas-preloader-card {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 40px 32px;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 28px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.45), inset 0 1px 0 rgba(255, 255, 255, 0.2);
  animation: wanglasPreloaderCardPop 0.8s cubic-bezier(0.16, 1, 0.3, 1) forwards;
  max-width: 340px;
  width: 88vw;
}

.wanglas-preloader-icon-wrap {
  position: relative;
  width: 80px;
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
}

.wanglas-preloader-glow {
  position: absolute;
  width: 100px;
  height: 100px;
  background: radial-gradient(circle, var(--wc-magenta) 0%, transparent 70%);
  opacity: 0.6;
  filter: blur(16px);
  animation: wanglasPulseGlow 2s infinite ease-in-out;
}

.wanglas-preloader-rings {
  position: absolute;
  inset: -6px;
}

.wanglas-ring {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 1.5px solid transparent;
}

.wanglas-ring.ring-1 {
  border-top-color: var(--wc-magenta);
  border-right-color: rgba(190, 23, 117, 0.4);
  animation: wanglasSpin 1.4s infinite linear;
}

.wanglas-ring.ring-2 {
  inset: -6px;
  border-bottom-color: #f5d1d7;
  border-left-color: rgba(245, 209, 215, 0.3);
  animation: wanglasSpinRev 2.2s infinite linear;
}

.wanglas-preloader-svg-logo {
  position: relative;
  z-index: 3;
  width: 56px;
  height: 56px;
  filter: drop-shadow(0 4px 10px rgba(0, 0, 0, 0.3));
}

.wanglas-preloader-text-group {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-bottom: 24px;
}

.wanglas-preloader-brand {
  font-family: var(--wc-font-heading);
  font-size: 1.9rem;
  font-weight: 800;
  color: #ffffff;
  letter-spacing: -0.02em;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
}

.wanglas-preloader-tagline {
  font-family: var(--wc-font-heading);
  font-size: 0.68rem;
  font-weight: 700;
  color: var(--wc-rose);
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.wanglas-preloader-meter {
  width: 160px;
  height: 3px;
  background: rgba(255, 255, 255, 0.15);
  border-radius: 9999px;
  overflow: hidden;
  position: relative;
}

.wanglas-preloader-fill {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 0%;
  background: linear-gradient(90deg, #be1775, #f5d1d7);
  border-radius: 9999px;
  animation: wanglasFillProgress 0.9s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;
}

.wanglas-brand-preloader.is-hidden {
  pointer-events: none;
}

.wanglas-brand-preloader.is-hidden .wanglas-preloader-backdrop {
  opacity: 0;
}

.wanglas-brand-preloader.is-hidden .wanglas-preloader-card {
  opacity: 0;
  transform: scale(0.92) translateY(10px);
  transition: opacity 0.5s ease, transform 0.5s cubic-bezier(0.16, 1, 0.3, 1);
}

@keyframes wanglasPreloaderCardPop {
  0% {
    opacity: 0;
    transform: scale(0.88) translateY(14px);
  }
  100% {
    opacity: 1;
    transform: scale(1) translateY(0);
  }
}

@keyframes wanglasSpin {
  100% {
    transform: rotate(360deg);
  }
}

@keyframes wanglasSpinRev {
  100% {
    transform: rotate(-360deg);
  }
}

@keyframes wanglasPulseGlow {
  0%, 100% {
    opacity: 0.4;
    transform: scale(0.9);
  }
  50% {
    opacity: 0.75;
    transform: scale(1.15);
  }
}

@keyframes wanglasFillProgress {
  0% {
    width: 0%;
  }
  100% {
    width: 100%;
  }
}

/* ==========================================================================
   READY TO GO CABLES - UNIVERSAL TYPOGRAPHY OVERRIDES
   ========================================================================== */
*, *::before, *::after {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

body, p, input, select, textarea, button, a {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
}

h1, h2, h3, h4, h5, h6,
.entry-title,
.woocommerce-loop-product__title,
.product_title {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
}

/* ==========================================================================
   READY TO GO CABLES - EXACT 3-ROW HEADER & CAPSULE NAVBAR
   ========================================================================== */
.rtg-hero-header-wrapper {
  background-color: #006BAC;
  width: 100%;
  position: relative;
  z-index: 990;
  padding-bottom: 24px;
}

/* Row 1: Topbar */
.rtg-topbar {
  background-color: #00235D;
  min-height: 40px;
  height: auto;
  padding: 8px 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  box-sizing: border-box;
  position: relative;
  z-index: 995;
}
.rtg-topbar-inner {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 10px;
  text-align: center;
  width: 100%;
  box-sizing: border-box;
}
.rtg-topbar-text {
  color: #ededed;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.2px;
  line-height: 1.4;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 8px;
  flex-wrap: wrap;
}

@media (max-width: 600px) {
  .rtg-topbar {
    padding: 6px 12px;
    min-height: 36px;
  }
  .rtg-topbar-text {
    font-size: 12px !important;
    line-height: 1.3 !important;
    gap: 4px;
  }
}

/* Row 2: Logo and 5 Social Icons */
.rtg-header-row-mid {
  padding: 24px 0 20px;
}
.rtg-header-row-mid .rtg-header-container {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.rtg-white-logo-img,
.rtg-brand-logo-link img,
.rtg-header-logo-box img,
.woocommerce .rtg-white-logo-img,
.woocommerce-page .rtg-white-logo-img {
  height: 44px !important;
  width: auto !important;
  max-width: 240px !important;
  min-width: 180px !important;
  display: block !important;
}
.rtg-social-icons-group {
  display: flex;
  align-items: center;
  gap: 12px;
}
.rtg-social-icon-link {
  color: #ffffff !important;
  background-color: rgba(255, 255, 255, 0.16);
  width: 34px;
  height: 34px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s ease;
  text-decoration: none;
}
.rtg-social-icon-link:hover {
  background-color: #ffffff;
  color: #006BAC !important;
  transform: translateY(-2px);
}

/* Row 3: Floating White Capsule Navbar */
.rtg-header-row-bottom {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 24px;
}
.rtg-capsule-navbar {
  background: #ffffff;
  border-radius: 40px;
  padding: 10px 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 10px 30px rgba(0, 35, 93, 0.12);
  position: relative;
  min-height: 52px;
  box-sizing: border-box;
}

.rtg-capsule-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
}
.rtg-capsule-menu-list {
  display: flex !important;
  align-items: center !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 28px !important;
}
.rtg-capsule-menu-list > li {
  position: relative !important;
  margin: 0 !important;
  padding: 0 !important;
}
.rtg-capsule-menu-list > li > a {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #334155 !important;
  text-decoration: none !important;
  letter-spacing: 0.6px !important;
  text-transform: uppercase !important;
  padding: 8px 0 !important;
  transition: color 0.2s ease !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
}
.rtg-capsule-menu-list > li > a:hover,
.rtg-capsule-menu-list > li.current-menu-item > a {
  color: #006BAC !important;
}

/* Dropdown Arrow Indicator for Desktop Navigation */
.rtg-capsule-menu-list > li.menu-item-has-children > a {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
}
.rtg-capsule-menu-list > li.menu-item-has-children > a::after {
  content: "" !important;
  display: inline-block !important;
  width: 5px !important;
  height: 5px !important;
  border-right: 2px solid #64748b !important;
  border-bottom: 2px solid #64748b !important;
  transform: rotate(45deg) translateY(-2px) !important;
  transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.2s ease !important;
  margin-left: 2px !important;
}
.rtg-capsule-menu-list > li.menu-item-has-children:hover > a::after {
  transform: rotate(225deg) translateY(-1px) !important;
  border-color: #006BAC !important;
}

.rtg-capsule-menu-list .sub-menu {
  position: absolute !important;
  top: 100% !important;
  left: 0 !important;
  background: #ffffff !important;
  min-width: 190px !important;
  box-shadow: 0 10px 25px rgba(0,0,0,0.12) !important;
  border-radius: 8px !important;
  border: 1px solid #e2e8f0 !important;
  list-style: none !important;
  padding: 8px 0 !important;
  margin: 8px 0 0 0 !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(8px) !important;
  transition: all 0.2s ease !important;
  z-index: 1000 !important;
}
.rtg-capsule-menu-list li:hover > .sub-menu {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
}
.rtg-capsule-menu-list .sub-menu li a {
  display: block !important;
  padding: 8px 16px !important;
  color: #334155 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}
.rtg-capsule-menu-list .sub-menu li a:hover {
  background: #f1f5f9 !important;
  color: #006BAC !important;
}

.rtg-capsule-right-actions {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  position: absolute !important;
  right: 18px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
}
.rtg-search-icon-trigger {
  background: none !important;
  border: none !important;
  cursor: pointer !important;
  padding: 6px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #1e293b !important;
}

/* ==========================================================================
   USER ACCOUNT BUTTON & DROPDOWN MENU
   ========================================================================== */
.rtg-account-dropdown-wrapper {
  position: relative !important;
}

.rtg-circle-account-btn {
  background: #f8fafc !important;
  border: 1.5px solid #cbd5e1 !important;
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
  color: #00235D !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
  cursor: pointer !important;
  box-sizing: border-box !important;
}

.rtg-circle-account-btn:hover,
.rtg-account-dropdown-wrapper:hover .rtg-circle-account-btn,
.rtg-account-dropdown-wrapper.is-open .rtg-circle-account-btn {
  background: #006BAC !important;
  border-color: #006BAC !important;
  color: #ffffff !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 12px rgba(0, 107, 172, 0.25) !important;
}

.rtg-account-active-dot {
  position: absolute !important;
  top: 1px !important;
  right: 1px !important;
  width: 10px !important;
  height: 10px !important;
  background: #22c55e !important;
  border-radius: 50% !important;
  border: 2px solid #ffffff !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2) !important;
}

.rtg-account-dropdown {
  display: none !important;
  position: absolute !important;
  top: calc(100% + 12px) !important;
  right: 0 !important;
  width: 290px !important;
  max-width: 90vw !important;
  background: #ffffff !important;
  border-radius: 16px !important;
  box-shadow: 0 16px 40px rgba(0, 35, 93, 0.16) !important;
  border: 1px solid #e2e8f0 !important;
  padding: 18px 20px !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(8px) !important;
  transition: opacity 0.25s cubic-bezier(0.16, 1, 0.3, 1), transform 0.25s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.25s !important;
  transition-delay: 0.05s !important;
  z-index: 99999 !important;
  pointer-events: none !important;
  box-sizing: border-box !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
}

.rtg-account-dropdown::before {
  content: '' !important;
  position: absolute !important;
  top: -16px !important;
  left: 0 !important;
  right: 0 !important;
  height: 16px !important;
  background: transparent !important;
  display: block !important;
  pointer-events: auto !important;
}

@media (min-width: 993px) {
  .rtg-account-dropdown-wrapper:hover .rtg-account-dropdown {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0) !important;
    pointer-events: auto !important;
  }
}

.rtg-account-dropdown-header {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin-bottom: 12px !important;
  text-align: left !important;
}

.rtg-account-avatar-badge {
  width: 40px !important;
  height: 40px !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg, #00235D, #006BAC) !important;
  color: #ffffff !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
}

.rtg-account-user-meta {
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
  flex: 1 !important;
}

.rtg-account-user-name {
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #00235D !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  line-height: 1.3 !important;
}

.rtg-account-user-email {
  font-size: 12px !important;
  color: #64748b !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  line-height: 1.3 !important;
}

.rtg-account-dropdown-divider {
  height: 1px !important;
  background: #f1f5f9 !important;
  margin: 12px 0 !important;
}

.rtg-account-dropdown-menu {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
}

.rtg-account-dropdown-menu li {
  margin: 0 !important;
  padding: 0 !important;
}

.rtg-account-dropdown-menu li a {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 10px 12px !important;
  border-radius: 10px !important;
  color: #334155 !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
}

.rtg-account-dropdown-menu li a svg {
  color: #006BAC !important;
  flex-shrink: 0 !important;
  transition: transform 0.2s ease !important;
}

.rtg-account-dropdown-menu li a:hover {
  background: #f0f7ff !important;
  color: #006BAC !important;
}

.rtg-account-dropdown-menu li a:hover svg {
  transform: translateX(2px) !important;
}

.rtg-account-dropdown-footer {
  margin-top: 4px !important;
}

.rtg-account-logout-btn {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  padding: 9px 12px !important;
  border-radius: 10px !important;
  color: #ef4444 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
}

.rtg-account-logout-btn:hover {
  background: #fef2f2 !important;
  color: #dc2626 !important;
}

/* Guest Box inside Account Dropdown */
.rtg-account-guest-box {
  text-align: center !important;
  padding: 8px 4px !important;
}

.rtg-guest-icon-badge {
  width: 48px !important;
  height: 48px !important;
  border-radius: 50% !important;
  background: #f0f7ff !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 12px !important;
}

.rtg-guest-title {
  font-size: 16px !important;
  font-weight: 800 !important;
  color: #00235D !important;
  margin: 0 0 6px 0 !important;
}

.rtg-guest-desc {
  font-size: 12.5px !important;
  color: #64748b !important;
  margin: 0 0 16px 0 !important;
  line-height: 1.45 !important;
}

.rtg-account-signin-btn {
  display: block !important;
  width: 100% !important;
  box-sizing: border-box !important;
  background: #006BAC !important;
  color: #ffffff !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-align: center !important;
  padding: 12px 16px !important;
  border-radius: 10px !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  box-shadow: 0 4px 12px rgba(0, 107, 172, 0.25) !important;
  transition: all 0.2s ease !important;
}

.rtg-account-signin-btn:hover {
  background: #00235D !important;
  color: #ffffff !important;
  transform: translateY(-1px) !important;
}

/* Mobile Drawer Account Box */
.rtg-drawer-account-box {
  margin: 16px 20px !important;
  background: #f8fafc !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 14px !important;
  padding: 12px 16px !important;
  box-sizing: border-box !important;
}

.rtg-drawer-account-link {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  text-decoration: none !important;
  color: #00235D !important;
}

.rtg-drawer-account-icon {
  width: 38px !important;
  height: 38px !important;
  border-radius: 50% !important;
  background: #006BAC !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
  color: #ffffff !important;
}

.rtg-drawer-account-info {
  flex: 1 !important;
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  text-align: left !important;
}

.rtg-drawer-account-title {
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #00235D !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.rtg-drawer-account-sub {
  font-size: 11.5px !important;
  color: #64748b !important;
}

.rtg-drawer-chevron {
  flex-shrink: 0 !important;
  color: #94a3b8 !important;
}

.rtg-cart-dropdown-wrapper {
  position: relative !important;
}
.rtg-circle-cart-btn {
  background: #006BAC !important;
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
  color: #ffffff !important;
  text-decoration: none !important;
}
.rtg-cart-red-badge {
  position: absolute !important;
  top: -4px !important;
  right: -6px !important;
  background: #ef4444 !important;
  color: #ffffff !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  min-width: 19px !important;
  height: 19px !important;
  padding: 0 5px !important;
  border-radius: 9999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 2px solid #ffffff !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2) !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  box-sizing: border-box !important;
  z-index: 3 !important;
}

/* Mini Cart Dropdown Floating Popup */
.rtg-minicart-dropdown {
  position: absolute !important;
  top: calc(100% + 10px) !important;
  right: 0 !important;
  width: 340px !important;
  max-width: 90vw !important;
  background: #ffffff !important;
  border-radius: 12px !important;
  box-shadow: 0 12px 35px rgba(0, 35, 93, 0.18) !important;
  border: 1px solid #e2e8f0 !important;
  padding: 18px 20px !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(8px) !important;
  transition: opacity 0.25s cubic-bezier(0.16, 1, 0.3, 1), transform 0.25s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.25s !important;
  transition-delay: 0.1s !important;
  z-index: 99999 !important;
  pointer-events: none !important;
}

/* Invisible hover tunnel/bridge to prevent dropdown closing when moving mouse */
.rtg-minicart-dropdown::before {
  content: "" !important;
  position: absolute !important;
  top: -16px !important;
  left: 0 !important;
  right: 0 !important;
  height: 16px !important;
  background: transparent !important;
  display: block !important;
  pointer-events: auto !important;
}

.rtg-cart-dropdown-wrapper:hover .rtg-minicart-dropdown,
.rtg-cart-dropdown-wrapper.is-open .rtg-minicart-dropdown {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
  pointer-events: auto !important;
  transition-delay: 0s !important;
}

.rtg-minicart-header {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  padding-bottom: 12px !important;
  margin-bottom: 12px !important;
  border-bottom: 1px solid #f1f5f9 !important;
}

.rtg-minicart-title {
  font-family: 'Inter', sans-serif !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  color: #00235D !important;
}

.rtg-minicart-close-btn {
  background: none !important;
  border: none !important;
  cursor: pointer !important;
  font-size: 16px !important;
  color: #94a3b8 !important;
  padding: 2px 6px !important;
  border-radius: 4px !important;
  line-height: 1 !important;
}

.rtg-minicart-close-btn:hover {
  color: #ef4444 !important;
}

/* 3-Column Item Row Layout (Left: Image | Center: Title+Price | Right: Close X) */
.rtg-minicart-dropdown ul.woocommerce-mini-cart,
.rtg-minicart-dropdown ul.cart_list,
.rtg-minicart-dropdown ul.product_list_widget {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
.rtg-minicart-dropdown li.woocommerce-mini-cart-item,
.rtg-minicart-dropdown li.mini_cart_item,
.rtg-minicart-dropdown .rtg-minicart-single-item {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  padding: 12px 0 !important;
  border-bottom: 1px solid #f1f5f9 !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
.rtg-minicart-dropdown li.woocommerce-mini-cart-item:last-child {
  border-bottom: none !important;
}
/* Left Thumbnail */
.rtg-minicart-dropdown .rtg-mini-item-left,
.rtg-minicart-dropdown .rtg-mini-thumb-link {
  flex-shrink: 0 !important;
  width: 48px !important;
  height: 48px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.rtg-minicart-dropdown .rtg-mini-item-left img,
.rtg-minicart-dropdown .rtg-mini-thumb,
.rtg-minicart-dropdown ul.cart_list li img,
.rtg-minicart-dropdown ul.product_list_widget li img {
  float: none !important;
  width: 48px !important;
  height: 48px !important;
  max-width: 48px !important;
  max-height: 48px !important;
  object-fit: contain !important;
  border-radius: 8px !important;
  border: 1px solid #e2e8f0 !important;
  background: #ffffff !important;
  margin: 0 !important;
  padding: 2px !important;
  display: block !important;
}
/* Center Info */
.rtg-minicart-dropdown .rtg-mini-item-center {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  text-align: left !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 3px !important;
}
.rtg-minicart-dropdown .rtg-mini-title-link,
.rtg-minicart-dropdown .rtg-mini-title,
.rtg-minicart-dropdown .woocommerce-mini-cart-item a:not(.remove) {
  color: #006BAC !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 700 !important;
  font-size: 13.5px !important;
  line-height: 1.35 !important;
  margin: 0 !important;
  display: block !important;
}
.rtg-minicart-dropdown .rtg-mini-qty-price {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
}
/* Right Close Button */
.rtg-minicart-dropdown .rtg-mini-item-right {
  flex-shrink: 0 !important;
  margin-left: auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.rtg-capsule-mobile-toggle {
  display: none !important;
  background: none !important;
  border: none !important;
  cursor: pointer !important;
  padding: 6px !important;
}

/* ==========================================================================
   READY TO GO CABLES - UNIVERSAL HERO BANNER (PAGE, SHOP, ARCHIVES, 404)
   ========================================================================== */
.rtg-page-hero-banner {
  background-color: #006BAC !important;
  width: 100% !important;
  padding: 32px 20px 52px !important;
  text-align: center !important;
  box-sizing: border-box !important;
  position: relative !important;
}

.rtg-page-hero-inner {
  max-width: 1240px !important;
  margin: 0 auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
}

.rtg-page-hero-title {
  color: #ffffff !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
  font-size: clamp(30px, 4vw, 42px) !important;
  font-weight: 800 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  margin: 0 0 10px 0 !important;
  line-height: 1.2 !important;
  text-align: center !important;
}

.rtg-page-breadcrumbs {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  color: rgba(255, 255, 255, 0.9) !important;
}

.rtg-breadcrumb-link {
  color: #ffffff !important;
  text-decoration: none !important;
  opacity: 0.9 !important;
  transition: opacity 0.2s ease, text-decoration 0.2s ease !important;
}

.rtg-breadcrumb-link:hover {
  opacity: 1 !important;
  text-decoration: underline !important;
}

.rtg-breadcrumb-sep {
  color: rgba(255, 255, 255, 0.6) !important;
  font-size: 13px !important;
}

.rtg-breadcrumb-current {
  color: #ffffff !important;
  font-weight: 600 !important;
}

.rtg-page-container {
  max-width: 1240px !important;
  margin: 0 auto !important;
  padding: 48px 24px 72px !important;
  box-sizing: border-box !important;
  background-color: #ffffff !important;
}

.rtg-page-content {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
  font-size: 15px !important;
  line-height: 1.75 !important;
  color: #334155 !important;
}

/* ==========================================================================
   READY TO GO CABLES - SHOP & CATEGORY CATALOG LAYOUT & PRODUCT CARDS
   ========================================================================== */
.rtg-shop-main {
  width: 100% !important;
  background-color: #ffffff !important;
}

/* Shop Styles are defined cleanly in the dedicated section */



/* ==========================================================================
   READY TO GO CABLES - FOOTER (3 COLUMNS & BOTTOM BAR - LIGHT DESIGN)
   ========================================================================== */
.rtg-exact-footer {
  background-color: #f8f9fa !important;
  color: #334155 !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
  padding-top: 56px !important;
  width: 100% !important;
}

.rtg-footer-container {
  max-width: 1240px !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
  box-sizing: border-box !important;
}

.rtg-footer-grid {
  display: grid !important;
  grid-template-columns: 1.4fr 1fr 1fr !important;
  gap: 48px !important;
  padding-bottom: 48px !important;
}

.rtg-footer-logo-wrap {
  margin-bottom: 18px !important;
}

.rtg-footer-logo-img {
  height: 48px !important;
  max-width: 260px !important;
  width: auto !important;
  display: block !important;
}

.rtg-footer-desc {
  color: #555555 !important;
  font-size: 13.5px !important;
  line-height: 1.6 !important;
  margin: 0 0 20px 0 !important;
  max-width: 360px !important;
}

.rtg-footer-contact-list {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
}

.rtg-footer-contact-item {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  color: #006BAC !important;
  font-size: 13.5px !important;
  font-weight: 500 !important;
}

.rtg-footer-contact-text {
  color: #006BAC !important;
}

.rtg-footer-contact-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
}

.rtg-footer-phone-link {
  color: #006BAC !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  transition: color 0.15s ease !important;
}

.rtg-footer-phone-link:hover {
  color: #00235D !important;
  text-decoration: underline !important;
}

.rtg-footer-heading {
  color: #00235D !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  letter-spacing: 0.8px !important;
  text-transform: uppercase !important;
  margin: 0 0 20px 0 !important;
}

.rtg-footer-heading-line {
  display: none !important;
}

.rtg-footer-menu-list,
.rtg-footer-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
}

.rtg-footer-menu-list li,
.rtg-footer-list li {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.rtg-footer-menu-list li a,
.rtg-footer-list li a {
  color: #006BAC !important;
  text-decoration: none !important;
  font-size: 13.5px !important;
  font-weight: 500 !important;
  font-family: 'Inter', sans-serif !important;
  transition: color 0.15s ease, padding-left 0.15s ease !important;
  display: inline-block !important;
}

.rtg-footer-menu-list li a:hover,
.rtg-footer-list li a:hover {
  color: #00235D !important;
  text-decoration: underline !important;
  padding-left: 2px !important;
}

.rtg-footer-bottom-bar {
  border-top: 1px solid #e5e7eb !important;
  padding: 24px 0 !important;
}

.rtg-footer-bottom-inner {
  max-width: 1240px !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 16px !important;
}

.rtg-payment-badge-img {
  height: 28px !important;
  width: auto !important;
  display: block !important;
}

.rtg-footer-policy-links {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}

.rtg-footer-legal-menu {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}

.rtg-footer-legal-menu li {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
}

.rtg-footer-legal-menu li:not(:last-child)::after {
  content: "|" !important;
  margin-left: 12px !important;
  color: #94a3b8 !important;
  font-size: 13px !important;
}

.rtg-footer-legal-menu li a,
.rtg-footer-policy-link {
  color: #334155 !important;
  text-decoration: none !important;
  font-size: 13.5px !important;
  font-weight: 500 !important;
  font-family: 'Inter', sans-serif !important;
  transition: color 0.15s ease !important;
}

.rtg-footer-legal-menu li a:hover,
.rtg-footer-policy-link:hover {
  color: #00235D !important;
  text-decoration: underline !important;
}

.rtg-legal-sep {
  color: #94a3b8 !important;
  font-size: 13px !important;
}

@media (max-width: 992px) {
  /* Mobile Header Row 2: Center Logo & Hide Social Media Icons */
  .rtg-header-row-mid {
    padding: 16px 0 14px 0 !important;
  }
  .rtg-header-row-mid .rtg-header-container {
    justify-content: center !important;
    text-align: center !important;
  }
  .rtg-header-row-mid .rtg-header-logo-box {
    margin: 0 auto !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    text-align: center !important;
    width: 100% !important;
  }
  .rtg-header-row-mid .rtg-brand-logo-link {
    display: inline-flex !important;
    justify-content: center !important;
    margin: 0 auto !important;
    text-align: center !important;
  }
  .rtg-header-row-mid .rtg-white-logo-img {
    margin: 0 auto !important;
    height: 38px !important;
    max-width: 180px !important;
  }
  .rtg-header-row-mid .rtg-social-icons-group {
    display: none !important;
  }

  /* Mobile Capsule Navbar */
  .rtg-capsule-navbar {
    padding: 8px 16px !important;
    justify-content: space-between !important;
  }
  .rtg-capsule-nav {
    display: none !important;
  }
  .rtg-capsule-mobile-toggle {
    display: flex !important;
  }
  .rtg-capsule-right-actions {
    position: static !important;
    transform: none !important;
    gap: 10px !important;
  }
  .rtg-circle-cart-btn,
  .rtg-circle-account-btn {
    width: 38px !important;
    height: 38px !important;
  }
  .rtg-account-dropdown {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  /* Footer on mobile */
  .rtg-footer-grid {
    grid-template-columns: 1fr !important;
    gap: 36px !important;
  }
}

/* ==========================================================================
   READY TO GO CABLES - SEARCH MODAL POPUP (HIDDEN BY DEFAULT)
   ========================================================================== */
.rtg-search-modal {
  display: none;
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  z-index: 999999 !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 20px !important;
  box-sizing: border-box !important;
}

.rtg-search-modal.is-open {
  display: flex !important;
}

.rtg-search-modal-backdrop {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  background: rgba(0, 35, 93, 0.6) !important;
  backdrop-filter: blur(4px) !important;
  -webkit-backdrop-filter: blur(4px) !important;
}

.rtg-search-modal-dialog {
  position: relative !important;
  z-index: 2 !important;
  background: #ffffff !important;
  border-radius: 16px !important;
  max-width: 600px !important;
  width: 100% !important;
  padding: 24px !important;
  box-shadow: 0 20px 50px rgba(0, 35, 93, 0.25) !important;
}

.rtg-search-modal-header {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  margin-bottom: 20px !important;
}

.rtg-search-modal-close-btn {
  background: #f1f5f9 !important;
  border: none !important;
  border-radius: 50% !important;
  width: 32px !important;
  height: 32px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #64748b !important;
  cursor: pointer !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.rtg-modal-search-input-wrap {
  display: flex !important;
  align-items: center !important;
  border: 2px solid #006BAC !important;
  border-radius: 30px !important;
  padding: 6px 6px 6px 16px !important;
  background: #ffffff !important;
  gap: 10px !important;
}

.rtg-modal-search-input {
  border: none !important;
  outline: none !important;
  flex: 1 !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 15px !important;
  color: #00235D !important;
  background: transparent !important;
}

.rtg-modal-search-submit {
  background: #006BAC !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 25px !important;
  padding: 10px 22px !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 700 !important;
  font-size: 13.5px !important;
  cursor: pointer !important;
}

/* ==========================================================================
   READY TO GO CABLES - MOBILE OFF-CANVAS DRAWER (HIDDEN OFFSCREEN BY DEFAULT)
   ========================================================================== */
.rtg-mobile-drawer {
  position: fixed !important;
  top: 0 !important;
  left: -100% !important;
  width: 320px !important;
  max-width: 85vw !important;
  height: 100vh !important;
  background: #ffffff !important;
  z-index: 1000000 !important;
  box-shadow: 10px 0 35px rgba(0, 35, 93, 0.25) !important;
  display: flex !important;
  flex-direction: column !important;
  overflow-y: auto !important;
  transition: left 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.rtg-mobile-drawer.is-open {
  left: 0 !important;
}

.rtg-drawer-backdrop {
  display: none;
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  background: rgba(0, 35, 93, 0.5) !important;
  backdrop-filter: blur(4px) !important;
  -webkit-backdrop-filter: blur(4px) !important;
  z-index: 999999 !important;
}

.rtg-drawer-backdrop.is-active {
  display: block !important;
}

.rtg-mobile-drawer-header {
  background: #006BAC !important;
  padding: 18px 20px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}

.rtg-drawer-logo-img {
  height: 32px !important;
  width: auto !important;
}

.rtg-drawer-close-btn {
  background: rgba(255, 255, 255, 0.2) !important;
  border: none !important;
  border-radius: 50% !important;
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  min-height: 36px !important;
  max-width: 36px !important;
  max-height: 36px !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #ffffff !important;
  cursor: pointer !important;
  line-height: 1 !important;
  flex-shrink: 0 !important;
  transition: background-color 0.2s ease, transform 0.2s ease !important;
}

.rtg-drawer-close-btn:hover {
  background: rgba(255, 255, 255, 0.35) !important;
  transform: rotate(90deg) !important;
}

.rtg-drawer-close-btn svg {
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  min-height: 18px !important;
  stroke: #ffffff !important;
  stroke-width: 2.5 !important;
  display: block !important;
  flex-shrink: 0 !important;
}

.rtg-mobile-drawer-body {
  padding: 20px !important;
  flex: 1 !important;
}

.rtg-mobile-nav-menu {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.rtg-mobile-nav-menu li {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border-bottom: 1px solid #f1f5f9 !important;
}

.rtg-mobile-nav-menu li a {
  display: block !important;
  padding: 12px 0 !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #00235D !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
}

.rtg-mobile-nav-menu .sub-menu {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 0 8px 16px !important;
}

.rtg-mobile-nav-menu .sub-menu li {
  border-bottom: none !important;
}

.rtg-mobile-nav-menu .sub-menu li a {
  padding: 6px 0 !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: #64748b !important;
  text-transform: none !important;
}

.rtg-mobile-drawer-footer {
  padding: 20px !important;
  border-top: 1px solid #f1f5f9 !important;
  background: #f8fafc !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
}

.rtg-drawer-cta-btn {
  background: #006BAC !important;
  color: #ffffff !important;
  text-align: center !important;
  padding: 12px 20px !important;
  border-radius: 25px !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 700 !important;
  font-size: 13.5px !important;
  text-decoration: none !important;
  display: block !important;
}

.rtg-drawer-socials {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 16px !important;
}

.rtg-drawer-socials a {
  color: #00235D !important;
  display: flex !important;
}

/* ==========================================================================
   READY TO GO CABLES - SHOP PAGE CONTAINER & 2-COLUMN STICKY LAYOUT
   ========================================================================== */
.rtg-shop-main {
  background: #ffffff !important;
  width: 100% !important;
}

.rtg-shop-container {
  max-width: 1240px !important;
  margin: 0 auto !important;
  padding: 40px 24px 60px 24px !important;
  box-sizing: border-box !important;
}

.rtg-shop-toolbar {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin-bottom: 30px !important;
  padding-bottom: 16px !important;
  border-bottom: 1px solid #f1f5f9 !important;
}

.rtg-shop-toolbar-left {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
}

.rtg-mobile-filter-btn {
  display: none;
}

@media (max-width: 900px) {
  .rtg-mobile-filter-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    padding: 8px 14px !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    color: #00235D !important;
    cursor: pointer !important;
  }
}

.rtg-shop-count,
.rtg-shop-count .woocommerce-result-count {
  font-family: 'Inter', sans-serif !important;
  font-size: 13.5px !important;
  color: #64748b !important;
  margin: 0 !important;
  font-weight: 500 !important;
}

/* Custom Sorting Select Dropdown (100% Custom HTML/CSS Dropdown) */
.rtg-shop-ordering,
.woocommerce .woocommerce-ordering {
  position: relative !important;
  margin: 0 !important;
  float: none !important;
}

.rtg-custom-dropdown-wrap {
  position: relative !important;
  display: inline-block !important;
  user-select: none !important;
}

.rtg-custom-dropdown-trigger {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  background-color: #ffffff !important;
  border: 1.5px solid #00235D !important;
  border-radius: 8px !important;
  padding: 8px 16px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
  color: #00235D !important;
  cursor: pointer !important;
  outline: none !important;
  box-shadow: 0 2px 6px rgba(0, 35, 93, 0.04) !important;
  transition: all 0.2s ease !important;
  min-width: 175px !important;
  box-sizing: border-box !important;
}

.rtg-custom-dropdown-trigger:hover,
.rtg-custom-dropdown-wrap.is-open .rtg-custom-dropdown-trigger {
  border-color: #006BAC !important;
  box-shadow: 0 3px 10px rgba(0, 107, 172, 0.12) !important;
}

.rtg-custom-dropdown-chevron {
  color: #00235D !important;
  transition: transform 0.2s ease !important;
  flex-shrink: 0 !important;
}

.rtg-custom-dropdown-wrap.is-open .rtg-custom-dropdown-chevron {
  transform: rotate(180deg) !important;
  color: #006BAC !important;
}

.rtg-custom-dropdown-menu {
  display: none;
  position: absolute !important;
  top: calc(100% + 6px) !important;
  right: 0 !important;
  min-width: 100% !important;
  width: max-content !important;
  background: #ffffff !important;
  border: 1px solid rgba(0, 35, 93, 0.12) !important;
  border-radius: 10px !important;
  box-shadow: 0 10px 30px rgba(0, 35, 93, 0.14) !important;
  list-style: none !important;
  padding: 6px !important;
  margin: 0 !important;
  z-index: 1000 !important;
  animation: rtgDropdownFade 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.rtg-custom-dropdown-wrap.is-open .rtg-custom-dropdown-menu {
  display: block !important;
}

@keyframes rtgDropdownFade {
  from {
    opacity: 0;
    transform: translateY(-6px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.rtg-custom-dropdown-item {
  list-style: none !important;
  padding: 8px 14px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 500 !important;
  color: #1e293b !important;
  border-radius: 6px !important;
  cursor: pointer !important;
  transition: all 0.15s ease !important;
  white-space: nowrap !important;
  margin: 0 !important;
}

.rtg-custom-dropdown-item:hover {
  background: #f1f5f9 !important;
  color: #006BAC !important;
}

.rtg-custom-dropdown-item.is-selected {
  background: #006BAC !important;
  color: #ffffff !important;
  font-weight: 700 !important;
}

/* 2-Column Layout Wrapper */
.rtg-shop-layout-wrapper {
  display: flex !important;
  align-items: flex-start !important;
  gap: 48px !important;
  position: relative !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* Left Sidebar Sticky */
.rtg-shop-sidebar {
  width: 310px !important;
  flex-shrink: 0 !important;
  position: -webkit-sticky !important;
  position: sticky !important;
  top: 20px !important;
  z-index: 20 !important;
  align-self: flex-start !important;
}

.rtg-sidebar-cats-widget {
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin-bottom: 32px !important;
  box-shadow: none !important;
}

.rtg-sidebar-cats-title {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  color: #1e293b !important;
  line-height: 1.2 !important;
  margin: 0 0 18px 0 !important;
  letter-spacing: -0.01em !important;
}

.rtg-sidebar-search-box {
  position: relative !important;
  margin-bottom: 24px !important;
}

.rtg-sidebar-search-input {
  width: 100% !important;
  background-color: #f1f5f9 !important;
  border: 1px solid transparent !important;
  border-radius: 10px !important;
  padding: 10px 16px 10px 38px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13.5px !important;
  color: #334155 !important;
  box-sizing: border-box !important;
  outline: none !important;
  transition: all 0.2s ease !important;
}

.rtg-sidebar-search-input:focus {
  background-color: #ffffff !important;
  border-color: #006BAC !important;
  box-shadow: 0 0 0 3px rgba(0, 107, 172, 0.12) !important;
}

.rtg-sidebar-search-icon {
  position: absolute !important;
  left: 12px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  color: #94a3b8 !important;
  pointer-events: none !important;
  display: flex !important;
  align-items: center !important;
}

.rtg-sidebar-cats-grid {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 20px 12px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.rtg-sidebar-cat-card {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.rtg-sidebar-cat-card-link {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  text-decoration: none !important;
  transition: transform 0.2s ease !important;
}

.rtg-sidebar-cat-card-link:hover {
  transform: translateY(-3px) !important;
}

.rtg-sidebar-cat-icon-box {
  width: 68px !important;
  height: 68px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 8px !important;
  color: #104184 !important;
}

.rtg-sidebar-cat-icon-box svg {
  width: 58px !important;
  height: 58px !important;
  stroke: #104184 !important;
  display: block !important;
}

.rtg-sidebar-cat-icon-box img,
.rtg-sidebar-cat-img {
  max-width: 58px !important;
  max-height: 58px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  display: block !important;
}

.rtg-sidebar-cat-name-wrap {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  color: #1e293b !important;
  line-height: 1.3 !important;
  text-align: center !important;
}

.rtg-sidebar-cat-card-link:hover .rtg-sidebar-cat-name-wrap {
  color: #006BAC !important;
}

.rtg-sidebar-cat-count-badge {
  color: #006BAC !important;
  font-weight: 700 !important;
}

.rtg-sidebar-elementor-template {
  margin-top: 24px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.rtg-sidebar-elementor-template .elementor,
.rtg-sidebar-elementor-template .elementor-element {
  width: 100% !important;
}

.rtg-sidebar-elementor-template .e-con-inner {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.rtg-sidebar-header-mobile {
  display: none !important;
}

@media (max-width: 900px) {
  .rtg-shop-layout-wrapper {
    flex-direction: column !important;
    gap: 0 !important;
  }

  .rtg-shop-sidebar {
    position: fixed !important;
    top: 0 !important;
    left: -100% !important;
    width: 340px !important;
    max-width: 90vw !important;
    height: 100vh !important;
    background: #ffffff !important;
    z-index: 1000000 !important;
    box-shadow: 10px 0 35px rgba(0, 35, 93, 0.25) !important;
    padding: 24px 16px !important;
    overflow-y: auto !important;
    transition: left 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
  }

  .rtg-shop-sidebar.is-open {
    left: 0 !important;
  }

  .rtg-sidebar-header-mobile {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin-bottom: 20px !important;
    padding-bottom: 14px !important;
    border-bottom: 1px solid #f1f5f9 !important;
  }

  .rtg-sidebar-title-mobile {
    font-family: 'Inter', sans-serif !important;
    font-size: 17px !important;
    font-weight: 700 !important;
    color: #00235D !important;
  }

  .rtg-close-filters-btn {
    background: #f1f5f9 !important;
    border: none !important;
    border-radius: 50% !important;
    width: 32px !important;
    height: 32px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #64748b !important;
    cursor: pointer !important;
  }

  .rtg-filters-overlay {
    display: none;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    background: rgba(0, 35, 93, 0.5) !important;
    backdrop-filter: blur(4px) !important;
    z-index: 999999 !important;
  }

  .rtg-filters-overlay.is-active {
    display: block !important;
  }
}

/* Right Products Main Area */
.rtg-shop-products-main {
  flex: 1 !important;
  min-width: 0 !important;
}

/* Strict 3-Column Product Grid on Desktop */
.woocommerce .rtg-shop-products-main ul.products,
.rtg-shop-products-main ul.products {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 36px 28px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.woocommerce .rtg-shop-products-main ul.products::before,
.woocommerce .rtg-shop-products-main ul.products::after {
  display: none !important;
}

/* Clean & Modern Product Card Styling (Universal for Shop, Shortcodes & Widgets) */
.woocommerce ul.products li.product,
.rtg-shop-products-main ul.products li.product {
  background: #ffffff !important;
  border: 1px solid rgba(0, 35, 93, 0.08) !important;
  border-radius: 16px !important;
  box-shadow: 0 2px 10px rgba(0, 35, 93, 0.03) !important;
  padding: 22px 18px 20px 18px !important;
  margin: 0 !important;
  width: 100% !important;
  float: none !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: space-between !important;
  text-align: center !important;
  position: relative !important;
  box-sizing: border-box !important;
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.3s ease !important;
}

.woocommerce ul.products li.product:hover,
.rtg-shop-products-main ul.products li.product:hover {
  transform: translateY(-5px) !important;
  border-color: rgba(0, 107, 172, 0.35) !important;
  box-shadow: 0 14px 28px rgba(0, 35, 93, 0.09) !important;
}

/* Product Card Image Box */
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link,
.rtg-shop-products-main ul.products li.product a.woocommerce-LoopProduct-link {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  width: 100% !important;
  text-decoration: none !important;
  background: transparent !important;
  padding: 0 !important;
  margin: 0 0 14px 0 !important;
}

.woocommerce ul.products li.product img,
.rtg-shop-products-main ul.products li.product img {
  width: 100% !important;
  max-width: 180px !important;
  height: 165px !important;
  object-fit: contain !important;
  margin: 0 auto 14px auto !important;
  background: transparent !important;
  display: block !important;
  transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.woocommerce ul.products li.product:hover img,
.rtg-shop-products-main ul.products li.product:hover img {
  transform: scale(1.06) !important;
}

/* Product Card Title */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.rtg-shop-products-main ul.products li.product .woocommerce-loop-product__title {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #00235D !important;
  line-height: 1.35 !important;
  margin: 0 auto 8px auto !important;
  padding: 0 !important;
  width: 100% !important;
  text-align: center !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  min-height: 2.7em !important;
  transition: color 0.2s ease !important;
}

.woocommerce ul.products li.product:hover .woocommerce-loop-product__title,
.rtg-shop-products-main ul.products li.product:hover .woocommerce-loop-product__title {
  color: #006BAC !important;
}

/* Product Card Price */
.woocommerce ul.products li.product .price,
.rtg-shop-products-main ul.products li.product .price {
  font-family: 'Inter', sans-serif !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  color: #006BAC !important;
  margin: 0 auto 16px auto !important;
  display: block !important;
  text-align: center !important;
}

.woocommerce ul.products li.product .price del,
.rtg-shop-products-main ul.products li.product .price del {
  color: #94a3b8 !important;
  font-size: 13.5px !important;
  font-weight: 500 !important;
  margin-right: 6px !important;
}

.woocommerce ul.products li.product .price ins,
.rtg-shop-products-main ul.products li.product .price ins {
  text-decoration: none !important;
  font-weight: 800 !important;
  color: #006BAC !important;
}

/* Modern High-End Add to Cart CTA Button */
.woocommerce ul.products li.product .button.add_to_cart_button,
.woocommerce ul.products li.product .button {
  background: #00235D !important;
  color: #ffffff !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 12.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  padding: 10px 18px !important;
  margin: auto 0 0 0 !important;
  border: 1.5px solid #00235D !important;
  border-radius: 9999px !important;
  box-shadow: 0 3px 8px rgba(0, 35, 93, 0.12) !important;
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1.2 !important;
  transition: all 0.25s ease !important;
  cursor: pointer !important;
  text-decoration: none !important;
}

.woocommerce ul.products li.product .button.add_to_cart_button:hover,
.woocommerce ul.products li.product .button:hover {
  background: #006BAC !important;
  border-color: #006BAC !important;
  color: #ffffff !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 16px rgba(0, 107, 172, 0.3) !important;
}

/* Single-Line Action Buttons Row / Floating Icons (if present) */
.woocommerce ul.products li.product .shopengine-wishlist,
.woocommerce ul.products li.product .shopengine-quickview-trigger,
.woocommerce ul.products li.product .shopengine-comparison {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #f8fafc !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 50% !important;
  width: 32px !important;
  height: 32px !important;
  padding: 0 !important;
  margin: 0 3px !important;
  color: #006BAC !important;
  cursor: pointer !important;
  line-height: 1 !important;
  transition: all 0.2s ease !important;
}

.woocommerce ul.products li.product .shopengine-wishlist:hover,
.woocommerce ul.products li.product .shopengine-quickview-trigger:hover,
.woocommerce ul.products li.product .shopengine-comparison:hover {
  background: #006BAC !important;
  border-color: #006BAC !important;
  color: #ffffff !important;
  transform: scale(1.08) !important;
}

/* SVG Mask Icons for reliable visual icons across all browsers */
.woocommerce ul.products li.product .shopengine-wishlist i::before {
  content: "" !important;
  display: inline-block !important;
  width: 15px !important;
  height: 15px !important;
  background-color: #006BAC !important;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z'/%3E%3C/svg%3E") no-repeat center !important;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z'/%3E%3C/svg%3E") no-repeat center !important;
  -webkit-mask-size: contain !important;
  mask-size: contain !important;
}

.woocommerce ul.products li.product .shopengine-quickview-trigger i::before {
  content: "" !important;
  display: inline-block !important;
  width: 16px !important;
  height: 16px !important;
  background-color: #006BAC !important;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3-7 10-7 10 7 10 7-3 7-10 7-10-7-10-7Z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") no-repeat center !important;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3-7 10-7 10 7 10 7-3 7-10 7-10-7-10-7Z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") no-repeat center !important;
  -webkit-mask-size: contain !important;
  mask-size: contain !important;
}

.woocommerce ul.products li.product .shopengine-comparison i::before {
  content: "" !important;
  display: inline-block !important;
  width: 15px !important;
  height: 15px !important;
  background-color: #006BAC !important;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m16 3 4 4-4 4'/%3E%3Cpath d='M20 7H4'/%3E%3Cpath d='m8 21-4-4 4-4'/%3E%3Cpath d='M4 17h16'/%3E%3C/svg%3E") no-repeat center !important;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m16 3 4 4-4 4'/%3E%3Cpath d='M20 7H4'/%3E%3Cpath d='m8 21-4-4 4-4'/%3E%3Cpath d='M4 17h16'/%3E%3C/svg%3E") no-repeat center !important;
  -webkit-mask-size: contain !important;
  mask-size: contain !important;
}

/* ==========================================================================
   TABLET RESPONSIVE (1024px and below)
   ========================================================================== */
@media (max-width: 1024px) {
  .rtg-shop-container {
    padding: 30px 16px 50px 16px !important;
  }

  .woocommerce .rtg-shop-products-main ul.products,
  .rtg-shop-products-main ul.products {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 20px 16px !important;
  }
}

/* ==========================================================================
   MOBILE RESPONSIVE (640px and below) - STRICT 2 COLUMNS
   ========================================================================== */
@media (max-width: 640px) {
  .rtg-shop-container {
    padding: 20px 12px 40px 12px !important;
  }

  .rtg-shop-toolbar {
    margin-bottom: 18px !important;
    padding-bottom: 12px !important;
    gap: 10px !important;
  }

  .rtg-mobile-filter-btn {
    padding: 7px 12px !important;
    font-size: 13px !important;
  }

  .rtg-custom-dropdown-trigger {
    min-width: 135px !important;
    padding: 7px 12px !important;
    font-size: 12.5px !important;
  }

  .rtg-shop-count {
    display: none !important;
  }

  /* Force 2 columns on all mobile screens */
  .woocommerce .rtg-shop-products-main ul.products,
  .rtg-shop-products-main ul.products {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px 8px !important;
  }

  .woocommerce ul.products li.product,
  .rtg-shop-products-main ul.products li.product {
    padding: 14px 6px 12px 6px !important;
    border-radius: 10px !important;
  }

  .woocommerce ul.products li.product a img,
  .woocommerce ul.products li.product img,
  .rtg-shop-products-main ul.products li.product img {
    height: 110px !important;
    max-width: 110px !important;
    margin: 0 auto 8px auto !important;
  }

  .woocommerce ul.products li.product .woocommerce-loop-product__title,
  .rtg-shop-products-main ul.products li.product .woocommerce-loop-product__title {
    font-size: 12px !important;
    line-height: 1.25 !important;
    margin: 0 auto 6px auto !important;
    min-height: 30px !important;
    max-width: 100% !important;
  }

  .woocommerce ul.products li.product .price,
  .rtg-shop-products-main ul.products li.product .price {
    font-size: 13px !important;
    margin: 0 auto 8px auto !important;
  }

  .woocommerce ul.products li.product .price del,
  .rtg-shop-products-main ul.products li.product .price del {
    font-size: 11px !important;
  }

  .woocommerce ul.products li.product .button.add_to_cart_button,
  .woocommerce ul.products li.product .button {
    font-size: 9.5px !important;
    padding: 2px 3px !important;
    margin: 0 1px !important;
    letter-spacing: 0 !important;
  }

  .woocommerce ul.products li.product .shopengine-wishlist,
  .woocommerce ul.products li.product .shopengine-quickview-trigger,
  .woocommerce ul.products li.product .shopengine-comparison {
    padding: 2px !important;
    margin: 0 1px !important;
  }

  .woocommerce ul.products li.product .shopengine-wishlist i::before,
  .woocommerce ul.products li.product .shopengine-quickview-trigger i::before,
  .woocommerce ul.products li.product .shopengine-comparison i::before {
    width: 12px !important;
    height: 12px !important;
  }
}

/* ==========================================================================
   READY TO GO CABLES - TRUST CARDS ROW (4 CARDS)
   ========================================================================== */
.rtg-trust-cards-section {
  width: 100% !important;
  padding: 40px 0 60px 0 !important;
  background: transparent !important;
}

.rtg-trust-cards-container {
  max-width: 1240px !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
  box-sizing: border-box !important;
}

.rtg-trust-cards-grid {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 24px !important;
  align-items: stretch !important;
}

.rtg-trust-card {
  background: #ffffff !important;
  border-radius: 14px !important;
  padding: 32px 20px !important;
  text-align: center !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  box-shadow: 0 8px 24px rgba(0, 35, 93, 0.06) !important;
  border: 1px solid rgba(0, 35, 93, 0.04) !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.rtg-trust-card:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 14px 32px rgba(0, 35, 93, 0.1) !important;
}

.rtg-trust-icon-wrap {
  width: 58px !important;
  height: 58px !important;
  border-radius: 50% !important;
  background: radial-gradient(circle at 30% 30%, #1a56a6, #104184) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 20px !important;
  box-shadow: 0 6px 16px rgba(16, 65, 132, 0.25) !important;
  flex-shrink: 0 !important;
}

.rtg-trust-icon-wrap svg {
  display: block !important;
}

.rtg-trust-card-title {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
  font-size: 14.5px !important;
  font-weight: 700 !important;
  color: #1e293b !important;
  line-height: 1.45 !important;
  margin: 0 !important;
  max-width: 220px !important;
}

@media (max-width: 1024px) {
  .rtg-trust-cards-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 20px !important;
  }
}

@media (max-width: 640px) {
  .rtg-trust-cards-section {
    padding: 24px 0 40px 0 !important;
  }

  .rtg-trust-cards-container {
    padding: 0 12px !important;
  }

  .rtg-trust-cards-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px 10px !important;
  }

  .rtg-trust-card {
    padding: 18px 10px 16px 10px !important;
    border-radius: 12px !important;
  }

  .rtg-trust-icon-wrap {
    width: 44px !important;
    height: 44px !important;
    margin-bottom: 12px !important;
  }

  .rtg-trust-icon-wrap svg {
    width: 22px !important;
    height: 22px !important;
  }

  .rtg-trust-card-title {
    font-size: 11.5px !important;
    line-height: 1.35 !important;
    max-width: 100% !important;
  }
}

/* ==========================================================================
   READY TO GO CABLES - SINGLE PRODUCT PAGE CONTAINER & HERO RESET
   ========================================================================== */
.woocommerce.single-product div.product,
.woocommerce.single-product .shopengine-product-page,
.single-product .shopengine-quickview-content-warper,
.single-product .shopengine-product-page,
.single-product div.product,
div.product.shopengine-product-page {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

.single-product .rtg-page-hero-banner {
  width: 100% !important;
  max-width: 100% !important;
  background-color: #006BAC !important;
  padding: 36px 20px 54px 20px !important;
  text-align: center !important;
  box-sizing: border-box !important;
}

.single-product .rtg-page-hero-inner {
  max-width: 1240px !important;
  margin: 0 auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
}

.single-product .rtg-page-hero-banner {
  background: #006BAC !important;
  padding: 32px 20px !important;
  margin: 0 !important;
  width: 100% !important;
  border-bottom: none !important;
}

.single-product .rtg-page-hero-title {
  color: rgb(249, 249, 249) !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 52px !important;
  font-weight: 400 !important;
  letter-spacing: normal !important;
  text-transform: uppercase !important;
  margin: 0 !important;
  line-height: 52px !important;
  text-align: center !important;
}

/* Single Product Dedicated Breadcrumbs Bar (Under Hero) */
.rtg-product-breadcrumb-bar-wrap {
  width: 100% !important;
  background-color: #ffffff !important;
  padding: 20px 0 8px 0 !important;
  box-sizing: border-box !important;
}

.rtg-product-breadcrumb-bar-container {
  max-width: 1240px !important;
  margin: 0 auto !important;
  padding: 0 20px !important;
  box-sizing: border-box !important;
}

.rtg-product-breadcrumb-bar {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  background: linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%) !important;
  border: 1px solid #dbeafe !important;
  border-radius: 10px !important;
  padding: 10px 18px !important;
  box-shadow: inset 0 1px 2px rgba(0, 35, 93, 0.03) !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
  font-size: 11.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.3px !important;
  box-sizing: border-box !important;
  line-height: 1.4 !important;
}

.rtg-pcrumb-link {
  color: #006BAC !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  transition: color 0.15s ease !important;
}

.rtg-pcrumb-link:hover {
  color: #00235D !important;
  text-decoration: underline !important;
}

.rtg-pcrumb-home-icon {
  font-size: 13px !important;
  line-height: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
}

.rtg-pcrumb-home-icon img.emoji {
  width: 14px !important;
  height: 14px !important;
  margin: 0 2px 0 0 !important;
  vertical-align: -1px !important;
  display: inline-block !important;
}

.rtg-pcrumb-arrow,
.rtg-pcrumb-sep {
  color: #94a3b8 !important;
  font-size: 12px !important;
  user-select: none !important;
}

.rtg-pcrumb-current {
  color: #1e293b !important;
  font-weight: 700 !important;
}

/* Hide legacy Elementor single product hero section and duplicate widgets */
.single-product .elementor-element-66fb947,
.single-product .elementor-element-e022721,
.single-product .elementor-widget-shopengine-breadcrumbs,
.single-product .elementor-widget-woocommerce-product-title,
.single-product .elementor-widget-shopengine-product-title {
  display: none !important;
}

/* Spacing for product main content area */
.single-product .elementor-element-a5b5a2a {
  padding: 16px 0 20px 0 !important;
}

@media (max-width: 768px) {
  .single-product .rtg-page-hero-banner {
    padding: 22px 14px !important;
  }
  .single-product .rtg-page-hero-title {
    font-size: 18px !important;
  }
  .rtg-product-breadcrumb-bar-wrap {
    padding: 12px 0 6px 0 !important;
  }
  .rtg-product-breadcrumb-bar-container {
    padding: 0 12px !important;
  }
  .rtg-product-breadcrumb-bar {
    padding: 8px 12px !important;
    font-size: 10.5px !important;
    border-radius: 8px !important;
    gap: 6px !important;
  }
  .single-product .elementor-element-a5b5a2a {
    padding: 10px 0 14px 0 !important;
  }
}

/* Product Gallery Expand/Zoom Icon Fix */
.single-product .shopengine-product-image-toggle,
.shopengine-product-image-toggle {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 38px !important;
  height: 38px !important;
  border-radius: 50% !important;
  background-color: #ffffff !important;
  border: 1px solid rgba(0, 35, 93, 0.18) !important;
  box-shadow: 0 2px 6px rgba(0, 35, 93, 0.08) !important;
  color: #00235D !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  z-index: 20 !important;
  top: 16px !important;
  right: 16px !important;
  padding: 0 !important;
  outline: none !important;
}

.single-product .shopengine-product-image-toggle:hover,
.shopengine-product-image-toggle:hover {
  background-color: #006BAC !important;
  border-color: #006BAC !important;
  color: #ffffff !important;
  box-shadow: 0 4px 12px rgba(0, 107, 172, 0.25) !important;
  transform: scale(1.05) !important;
}

.shopengine-product-image-toggle i,
.shopengine-product-image-toggle i.fa-expand-alt:before,
.shopengine-product-image-toggle i.fas:before {
  content: "\f065" !important;
  font-family: "Font Awesome 5 Free" !important;
  font-weight: 900 !important;
  font-style: normal !important;
  font-size: 14px !important;
  line-height: 1 !important;
  display: inline-block !important;
}

/* Global Font Awesome Free solid icons fix */
.single-product i.fas,
.single-product i.fa,
button.minus i,
button.plus i {
  font-family: "Font Awesome 5 Free" !important;
  font-weight: 900 !important;
  font-style: normal !important;
}

/* ==========================================================================
   SINGLE PRODUCT RIGHT SUMMARY COLUMN - PRO UI ENHANCEMENTS
   ========================================================================== */

/* Main Card Container with Subtle Elevation */
.single-product .elementor-element-210452d > .elementor-widget-wrap,
.single-product .summary.entry-summary {
  background: #ffffff !important;
  border: 1px solid rgba(0, 35, 93, 0.09) !important;
  border-radius: 16px !important;
  padding: 30px 26px !important;
  box-shadow: 0 10px 25px -5px rgba(0, 35, 93, 0.06), 0 4px 10px -2px rgba(0, 35, 93, 0.03) !important;
  box-sizing: border-box !important;
}

/* Price Typography */
.single-product .shopengine-product-price .price,
.single-product .summary .price {
  margin: 0 0 14px 0 !important;
  color: #00235D !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
  font-size: 36px !important;
  font-weight: 800 !important;
  letter-spacing: -0.5px !important;
  line-height: 1.1 !important;
  display: flex !important;
  align-items: baseline !important;
  gap: 8px !important;
}

.single-product .shopengine-product-price .price .amount {
  color: #00235D !important;
}

.single-product .shopengine-product-price .price del .amount {
  color: #94a3b8 !important;
  font-size: 22px !important;
  font-weight: 500 !important;
}

/* Stock Status Pill Badge with Live Pulse Dot */
.single-product .stock.in-stock,
.single-product .shopengine-product-stock {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  background: #ecfdf5 !important;
  color: #047857 !important;
  border: 1px solid #a7f3d0 !important;
  border-radius: 9999px !important;
  padding: 5px 14px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 11.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.6px !important;
  text-transform: uppercase !important;
  margin: 0 0 18px 0 !important;
}

.single-product .stock.in-stock::before {
  content: "" !important;
  display: inline-block !important;
  width: 7px !important;
  height: 7px !important;
  background-color: #10b981 !important;
  border-radius: 50% !important;
  box-shadow: 0 0 0 2px rgba(16, 185, 129, 0.25) !important;
}

/* Quantity Tier Discounts Table */
.rtg-quantity-discount-table {
  margin: 18px 0 22px 0 !important;
  width: 100% !important;
}

.rtg-tier-table {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  background: #ffffff !important;
  border: 1px solid #006BAC !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  box-shadow: 0 2px 8px rgba(0, 35, 93, 0.04) !important;
}

.rtg-tier-head-main th {
  background: #006BAC !important;
  color: #ffffff !important;
  padding: 10px 14px !important;
  text-align: center !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  letter-spacing: 0.4px !important;
  border: none !important;
}

.rtg-tier-head-cols th {
  background: #f8fafc !important;
  color: #00235D !important;
  padding: 8px 10px !important;
  text-align: center !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 700 !important;
  font-size: 12px !important;
  border-top: 1px solid #dbeafe !important;
  border-bottom: 1px solid #e2e8f0 !important;
  border-left: 1px solid #e2e8f0 !important;
}

.rtg-tier-head-cols th:first-child {
  border-left: none !important;
}

.rtg-tier-cell {
  padding: 12px 10px !important;
  text-align: center !important;
  background: #ffffff !important;
  border-left: 1px solid #e2e8f0 !important;
  transition: background 0.2s ease, border-color 0.2s ease !important;
  vertical-align: middle !important;
}

.rtg-tier-cell:first-child {
  border-left: none !important;
}

.rtg-tier-price {
  display: block !important;
  color: #00235D !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 15px !important;
  font-weight: 800 !important;
}

.rtg-tier-save-badge {
  display: inline-block !important;
  margin-top: 4px !important;
  padding: 2px 7px !important;
  background: #ecfdf5 !important;
  color: #15803d !important;
  border: 1px solid #bbf7d0 !important;
  border-radius: 4px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.2px !important;
}

/* Interactive Active Tier State */
.rtg-tier-cell.rtg-tier-active {
  background: #e0f2fe !important;
}

.rtg-tier-cell.rtg-tier-active .rtg-tier-price {
  color: #006BAC !important;
}

/* Add to Cart Form and Quantity Control Layout */
.single-product form.cart,
.single-product .woocommerce-variation-add-to-cart,
.single-product .variations_button,
.single-product .elementor-widget-shopengine-add-to-cart form.cart,
.single-product .shopengine-widget form.cart,
.single-product .woocommerce div.product form.cart {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 16px !important;
  margin: 18px 0 0 0 !important;
  width: 100% !important;
  float: none !important;
  clear: both !important;
}

.single-product .woocommerce-variation-add-to-cart {
  margin: 14px 0 0 0 !important;
  gap: 16px !important;
}

.single-product form.cart .rtg-quantity-discount-table {
  width: 100% !important;
  flex: 0 0 100% !important;
  order: 0 !important;
  margin: 0 0 14px 0 !important;
}

/* Legacy ShopEngine Quantity Cleaned for Native Architecture */
.single-product .quantity-wrap {
  display: inline-flex !important;
  align-items: center !important;
}


/* 2. Add to Cart Button (Right, flex 1) */
.single-product form.cart button.single_add_to_cart_button,
.single-product form.cart button[name="add-to-cart"],
.single-product button.single_add_to_cart_button,
.single-product button[name="add-to-cart"] {
  order: 2 !important;
  flex: 1 1 180px !important;
  width: auto !important;
  height: 48px !important;
  background: #006BAC !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 8px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  letter-spacing: 0.8px !important;
  text-transform: uppercase !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  box-shadow: 0 4px 14px rgba(0, 107, 172, 0.22) !important;
  transition: all 0.2s ease !important;
  padding: 0 24px !important;
  margin: 0 !important;
  float: none !important;
}

.single-product form.cart button.single_add_to_cart_button:hover,
.single-product form.cart button[name="add-to-cart"]:hover,
.single-product button.single_add_to_cart_button:hover,
.single-product button[name="add-to-cart"]:hover {
  background: #00235D !important;
  box-shadow: 0 6px 20px rgba(0, 35, 93, 0.35) !important;
  transform: translateY(-1px) !important;
}

/* Short Description - Clean Technical Callout */
.single-product .elementor-widget-woocommerce-product-short-description,
.single-product .rtg-short-description {
  margin-top: 24px !important;
  margin-bottom: 0 !important;
  background: #f8fafc !important;
  border: 1px solid #e2e8f0 !important;
  border-left: 3.5px solid #006BAC !important;
  border-radius: 8px !important;
  padding: 16px 20px !important;
}

.single-product .elementor-widget-woocommerce-product-short-description .elementor-widget-container,
.single-product .elementor-widget-woocommerce-product-short-description .woocommerce-product-details__short-description,
.single-product .rtg-short-description .woocommerce-product-details__short-description {
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  box-shadow: none !important;
}

.single-product .woocommerce-product-details__short-description p {
  margin: 0 !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13.5px !important;
  line-height: 1.65 !important;
  color: #475569 !important;
}

/* ==========================================================================
   PRODUCT DETAILS LOWER ROW (PILLS, CERTIFICATIONS, HIGHLIGHTS CARDS)
   ========================================================================== */

/* 1. Left Column: Categories & Tags Pills */
.single-product .product_meta {
  font-family: 'Inter', sans-serif !important;
  font-size: 12px !important;
  line-height: 1.8 !important;
  color: #1e293b !important;
  border-top: none !important;
  padding-top: 0 !important;
  margin-top: 0 !important;
}

.single-product .product_meta .sku_wrapper {
  display: none !important; /* Hide SKU if empty */
}

.single-product .product_meta .posted_in,
.single-product .product_meta .tagged_as {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 6px !important;
  margin-bottom: 14px !important;
  font-size: 0 !important; /* Hides raw comma text nodes */
  line-height: normal !important;
}

.single-product .product_meta .posted_in::before {
  content: "Categories:" !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  color: #1e293b !important;
  display: inline-block !important;
  margin-right: 4px !important;
}

.single-product .product_meta .tagged_as::before {
  content: "Tags:" !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  color: #1e293b !important;
  display: inline-block !important;
  margin-right: 4px !important;
}

.single-product .product_meta .posted_in a,
.single-product .product_meta .tagged_as a {
  display: inline-flex !important;
  align-items: center !important;
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 6px !important;
  padding: 4px 10px !important;
  font-size: 11.5px !important;
  font-weight: 600 !important;
  color: #475569 !important;
  text-decoration: none !important;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03) !important;
  transition: all 0.2s ease-in-out !important;
  line-height: 1.3 !important;
}

.single-product .product_meta .posted_in a:hover,
.single-product .product_meta .tagged_as a:hover {
  background: #006BAC !important;
  border-color: #006BAC !important;
  color: #ffffff !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 2px 5px rgba(0, 107, 172, 0.2) !important;
}

/* 2. Center Column: 6 Certification Badges (2 rows of 3 columns) */
.single-product .elementor-element-c809807 .elementor-widget-wrap {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  width: 100% !important;
}

.single-product .elementor-element-c809807 .elementor-inner-section {
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
}

.single-product .elementor-element-c809807 .elementor-inner-section .elementor-container {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-around !important;
  gap: 10px !important;
  width: 100% !important;
  max-width: 100% !important;
}

.single-product .elementor-element-c809807 .elementor-inner-column {
  width: 30% !important;
  max-width: 30% !important;
  flex: 0 0 30% !important;
  padding: 0 !important;
  margin: 0 !important;
}

.single-product .elementor-element-c809807 .elementor-widget-image {
  margin-bottom: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.single-product .elementor-element-c809807 .elementor-widget-image img {
  width: 100% !important;
  max-width: 56px !important;
  height: auto !important;
  max-height: 56px !important;
  object-fit: contain !important;
  transition: transform 0.2s ease !important;
}

.single-product .elementor-element-c809807 .elementor-widget-image img:hover {
  transform: scale(1.08) !important;
}

/* 3. Highlights Cards (Average Money Savings & Faster Lead Times - 2 Horizontal Columns) */
.single-product .rtgph-section {
  width: 100% !important;
}

.single-product .rtgph-container {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 12px !important;
}

@media (max-width: 550px) {
  .single-product .rtgph-container {
    gap: 8px !important;
  }

  .single-product .rtgph-card {
    padding: 8px 8px !important;
    gap: 7px !important;
    border-radius: 10px !important;
  }

  .single-product .rtgph-icon-box {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    border-radius: 8px !important;
  }

  .single-product .rtgph-icon-img {
    width: 16px !important;
    height: 16px !important;
  }

  .single-product .rtgph-title {
    font-size: 9.5px !important;
    line-height: 1.2 !important;
    letter-spacing: 0.1px !important;
  }

  .single-product .rtgph-subtitle {
    font-size: 8.5px !important;
    line-height: 1.15 !important;
  }
}

.single-product .rtgph-card {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 12px !important;
  padding: 12px 14px !important;
  box-shadow: 0 2px 6px rgba(0, 35, 93, 0.04) !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease !important;
}

.single-product .rtgph-card:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 14px rgba(0, 35, 93, 0.08) !important;
  border-color: #cbd5e1 !important;
}

.single-product .rtgph-icon-box {
  width: 40px !important;
  height: 40px !important;
  min-width: 40px !important;
  border-radius: 10px !important;
  background: linear-gradient(135deg, #1d4ed8 0%, #3b82f6 100%) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 4px 10px rgba(37, 99, 235, 0.25) !important;
  flex-shrink: 0 !important;
}

.single-product .rtgph-icon-img {
  width: 20px !important;
  height: 20px !important;
  max-width: 20px !important;
  max-height: 20px !important;
  object-fit: contain !important;
  filter: brightness(0) invert(1) !important; /* Pure crisp white vector icon */
}

.single-product .rtgph-text {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  min-width: 0 !important;
}

.single-product .rtgph-title {
  margin: 0 !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 11.5px !important;
  font-weight: 800 !important;
  color: #00235D !important;
  letter-spacing: 0.3px !important;
  text-transform: uppercase !important;
  line-height: 1.25 !important;
}

.single-product .rtgph-subtitle {
  margin: 2px 0 0 0 !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  color: #64748b !important;
  line-height: 1.25 !important;
}

/* 4. Short Description Collapsible Accordion (Closed by default) */
.single-product .rtg-short-desc-accordion {
  margin-top: 14px !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  overflow: hidden !important;
  box-shadow: 0 2px 6px rgba(0, 35, 93, 0.03) !important;
  transition: all 0.2s ease !important;
}

.single-product .rtg-short-desc-accordion[open] {
  border-color: #cbd5e1 !important;
  box-shadow: 0 4px 12px rgba(0, 35, 93, 0.06) !important;
}

.single-product .rtg-short-desc-summary {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 12px 16px !important;
  background: #f8fafc !important;
  cursor: pointer !important;
  list-style: none !important;
  user-select: none !important;
  transition: background 0.15s ease !important;
}

.single-product .rtg-short-desc-summary::-webkit-details-marker {
  display: none !important;
}

.single-product .rtg-short-desc-summary:hover {
  background: #f1f5f9 !important;
}

.single-product .rtg-short-desc-summary-title {
  font-family: 'Inter', sans-serif !important;
  font-size: 12.5px !important;
  font-weight: 800 !important;
  color: #00235D !important;
  letter-spacing: 0.3px !important;
  text-transform: uppercase !important;
}

@keyframes rtgSlideDownFade {
  0% {
    opacity: 0;
    transform: translateY(-8px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.single-product .rtg-short-desc-toggle-icon {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #006BAC !important;
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.single-product .rtg-short-desc-accordion[open] .rtg-short-desc-toggle-icon {
  transform: rotate(180deg) !important;
  color: #00235D !important;
}

.single-product .rtg-short-desc-body {
  padding: 14px 16px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13.5px !important;
  color: #475569 !important;
  line-height: 1.6 !important;
  border-top: 1px solid #e2e8f0 !important;
  background: #ffffff !important;
}

.single-product .rtg-short-desc-accordion[open] .rtg-short-desc-body {
  animation: rtgSlideDownFade 0.3s cubic-bezier(0.16, 1, 0.3, 1) forwards !important;
}

.single-product .rtg-short-desc-body p {
  margin: 0 0 10px 0 !important;
}

.single-product .rtg-short-desc-body p:last-child {
  margin-bottom: 0 !important;
}

/* ==========================================================================
   100% NATIVE SINGLE PRODUCT ARCHITECTURE & LAYOUT
   ========================================================================== */

.rtg-single-product-container {
  max-width: 1240px !important;
  margin: 0 auto !important;
  padding: 0 20px 40px 20px !important;
}

.rtg-native-single-product {
  margin-top: 20px !important;
}

/* 1. Main 2-Column Grid */
.rtg-product-main-grid {
  display: grid !important;
  grid-template-columns: 1.05fr 1fr !important;
  gap: 36px !important;
  align-items: start !important;
  margin-bottom: 30px !important;
}

@media (max-width: 900px) {
  .rtg-product-main-grid {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }
}

/* Left: Sticky Gallery (Desktop only; static on Mobile) */
.rtg-product-gallery-col {
  width: 100% !important;
  position: -webkit-sticky !important;
  position: sticky !important;
  top: 90px !important;
  align-self: start !important;
  z-index: 5 !important;
}

@media (max-width: 900px) {
  .rtg-product-gallery-col {
    position: relative !important;
    top: auto !important;
    z-index: 1 !important;
  }
}

.rtg-product-gallery-col .woocommerce-product-gallery {
  width: 100% !important;
  margin: 0 !important;
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 16px !important;
  padding: 16px !important;
  box-shadow: 0 4px 16px rgba(0, 35, 93, 0.04) !important;
}

.rtg-product-gallery-col .woocommerce-product-gallery__image img {
  border-radius: 12px !important;
  width: 100% !important;
  height: auto !important;
  display: block !important;
}

/* Right: Product Summary Card */
.rtg-product-summary-card {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 16px !important;
  padding: 32px 36px !important;
  box-shadow: 0 4px 20px rgba(0, 35, 93, 0.05) !important;
  margin: 0 !important;
  width: 100% !important;
}

@media (max-width: 768px) {
  .rtg-single-product-container {
    padding: 0 12px 30px 12px !important;
  }
  .rtg-product-summary-card {
    padding: 20px 16px !important;
    border-radius: 14px !important;
  }
}

.rtg-product-summary-card .product_title {
  font-family: 'Inter', sans-serif !important;
  font-size: 28px !important;
  font-weight: 800 !important;
  color: #00235D !important;
  line-height: 1.25 !important;
  margin: 0 0 12px 0 !important;
}

.rtg-product-summary-card p.price,
.rtg-product-summary-card span.price {
  font-family: 'Inter', sans-serif !important;
  font-size: 24px !important;
  font-weight: 800 !important;
  color: #006BAC !important;
  margin: 0 0 18px 0 !important;
  display: block !important;
}

/* Quantity Counter & Add To Cart Button */
.single-product .quantity {
  display: inline-flex !important;
  align-items: center !important;
  border: 1.5px solid #cbd5e1 !important;
  border-radius: 12px !important;
  background: #f8fafc !important;
  height: 48px !important;
  min-height: 48px !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 4px !important;
  width: auto !important;
  box-shadow: 0 2px 5px rgba(0, 35, 93, 0.04) !important;
  gap: 5px !important;
}

.single-product .quantity .rtg-qty-btn {
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 9px !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  color: #00235D !important;
  cursor: pointer !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
  padding: 0 !important;
  line-height: 1 !important;
  user-select: none !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05) !important;
  outline: none !important;
}

.single-product .quantity .rtg-qty-btn:hover {
  background: #006BAC !important;
  border-color: #006BAC !important;
  color: #ffffff !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 10px rgba(0, 107, 172, 0.35) !important;
}

.single-product .quantity .rtg-qty-btn:active {
  background: #00235D !important;
  border-color: #00235D !important;
  color: #ffffff !important;
  transform: scale(0.92) translateY(0) !important;
  box-shadow: 0 1px 3px rgba(0, 35, 93, 0.2) !important;
}

.single-product .quantity input.qty {
  width: 44px !important;
  height: 38px !important;
  min-width: 44px !important;
  border: none !important;
  background: transparent !important;
  text-align: center !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  color: #00235D !important;
  padding: 0 !important;
  margin: 0 !important;
  box-shadow: none !important;
  outline: none !important;
  -moz-appearance: textfield !important;
}

.single-product .quantity input.qty::-webkit-outer-spin-button,
.single-product .quantity input.qty::-webkit-inner-spin-button {
  -webkit-appearance: none !important;
  margin: 0 !important;
}

.single-product form.cart {
  margin-top: 20px !important;
}

.single-product .woocommerce-variation-add-to-cart,
.single-product form.cart:not(.variations_form) {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  width: 100% !important;
  margin-top: 15px !important;
}

.single-product button.single_add_to_cart_button {
  flex: 1 !important;
  height: 48px !important;
  min-height: 48px !important;
  background: linear-gradient(135deg, #3243ad 0%, #1eb3ff 100%) !important;
  border: none !important;
  border-radius: 8px !important;
  color: #ffffff !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase !important;
  box-shadow: 0 4px 14px rgba(30, 179, 255, 0.3) !important;
  cursor: pointer !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 24px !important;
  transition: all 0.2s ease !important;
}

.single-product button.single_add_to_cart_button:hover {
  box-shadow: 0 6px 20px rgba(30, 179, 255, 0.45) !important;
  transform: translateY(-1px) !important;
  filter: brightness(1.05) !important;
}

/* 2. Lower 2-Column Specs & Certifications Row */
.rtg-specs-trust-row {
  margin: 95px 0 85px 0 !important;
}

.rtg-specs-trust-container {
  display: grid !important;
  grid-template-columns: 1.25fr 1fr !important;
  gap: 28px !important;
  align-items: center !important;
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 14px !important;
  padding: 24px 30px !important;
  box-shadow: 0 3px 12px rgba(0, 35, 93, 0.03) !important;
}

@media (max-width: 900px) {
  .rtg-specs-trust-container {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
  }
}

.rtg-specs-col {
  width: 100% !important;
}

.rtg-certifications-grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 12px 10px !important;
  align-items: center !important;
  justify-items: center !important;
}

.rtg-cert-item {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.rtg-cert-item img {
  width: 100% !important;
  max-width: 54px !important;
  height: auto !important;
  max-height: 54px !important;
  object-fit: contain !important;
  transition: transform 0.2s ease !important;
}

.rtg-cert-item img:hover {
  transform: scale(1.08) !important;
}

/* 3. Custom Cable Banner */
.rtg-custom-banner-section {
  margin: 85px 0 95px 0 !important;
}

.rtg-custom-banner-box {
  background: linear-gradient(135deg, #00235D 0%, #006BAC 100%) !important;
  border-radius: 14px !important;
  padding: 28px 36px !important;
  box-shadow: 0 6px 20px rgba(0, 35, 93, 0.15) !important;
  color: #ffffff !important;
}

.rtg-custom-banner-content {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: wrap !important;
  gap: 20px !important;
}

.rtg-custom-banner-title {
  font-family: 'Inter', sans-serif !important;
  font-size: 22px !important;
  font-weight: 800 !important;
  color: #ffffff !important;
  margin: 0 0 6px 0 !important;
}

.rtg-custom-banner-desc {
  font-family: 'Inter', sans-serif !important;
  font-size: 14.5px !important;
  color: #e0f2fe !important;
  margin: 0 !important;
}

.rtg-custom-banner-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #ffffff !important;
  color: #00235D !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 800 !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase !important;
  padding: 13px 28px !important;
  border-radius: 50px !important;
  text-decoration: none !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
  transition: all 0.25s ease !important;
}

.rtg-custom-banner-btn:hover {
  background: #1eb3ff !important;
  color: #ffffff !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 18px rgba(30, 179, 255, 0.4) !important;
}

/* 3.5. Product Tabs: Description & Additional Information (Solid #006BAC Background) */
.rtg-product-tabs-section {
  margin: 95px 0 100px 0 !important;
  background: #006BAC !important;
  border-radius: 20px !important;
  padding: 30px 32px 32px 32px !important;
  box-shadow: 0 8px 30px rgba(0, 107, 172, 0.18) !important;
}

.rtg-tabs-header-wrapper {
  display: flex !important;
  align-items: flex-end !important;
  position: relative !important;
  z-index: 2 !important;
}

.rtg-tabs-nav {
  display: flex !important;
  align-items: flex-end !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 6px !important;
}

.rtg-tab-item {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.rtg-tab-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 14px 28px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 14.5px !important;
  font-weight: 700 !important;
  color: #475569 !important;
  background: #e2e8f0 !important;
  border: none !important;
  border-radius: 12px 12px 0 0 !important;
  cursor: pointer !important;
  outline: none !important;
  transition: all 0.2s ease !important;
  user-select: none !important;
}

.rtg-tab-btn:hover {
  color: #00235D !important;
  background: #ffffff !important;
}

.rtg-tab-item.active .rtg-tab-btn {
  background: #ffffff !important;
  color: #006BAC !important;
  font-weight: 800 !important;
  padding-bottom: 16px !important;
  margin-bottom: -2px !important;
  box-shadow: 0 -2px 10px rgba(0, 35, 93, 0.05) !important;
}

.rtg-tabs-content-card {
  background: #ffffff !important;
  border: none !important;
  border-radius: 0 18px 18px 18px !important;
  padding: 38px 44px !important;
  box-shadow: 0 10px 30px rgba(0, 35, 93, 0.08) !important;
  position: relative !important;
  z-index: 1 !important;
}

.rtg-tab-panel {
  display: none;
}

.rtg-tab-panel.active {
  display: block;
  animation: rtgSlideDownFade 0.25s ease forwards;
}

/* Typography inside tabs */
.rtg-tab-panel h2,
.rtg-tab-panel h3,
.rtg-tab-panel h4 {
  font-family: 'Inter', sans-serif !important;
  font-size: 22px !important;
  font-weight: 900 !important;
  color: #00235D !important;
  margin: 0 0 20px 0 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
}

.rtg-tab-panel p {
  font-family: 'Inter', sans-serif !important;
  font-size: 14.5px !important;
  color: #475569 !important;
  line-height: 1.7 !important;
  margin: 0 0 16px 0 !important;
}

.rtg-tab-panel ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 16px 0 24px 0 !important;
}

.rtg-tab-panel ul li {
  position: relative !important;
  padding-left: 24px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 14px !important;
  color: #334155 !important;
  line-height: 1.65 !important;
  margin-bottom: 12px !important;
}

.rtg-tab-panel ul li::before {
  content: "" !important;
  position: absolute !important;
  left: 6px !important;
  top: 9px !important;
  width: 7px !important;
  height: 7px !important;
  border-radius: 50% !important;
  background: #006BAC !important;
}

/* Additional information table (Matching Reference Design 1:1) */
.woocommerce .rtg-product-tabs-section table.shop_attributes,
.woocommerce .rtg-product-tabs-section table.woocommerce-product-attributes,
body.single-product .rtg-tabs-content-card table {
  width: 100% !important;
  max-width: 100% !important;
  border-collapse: collapse !important;
  border-spacing: 0 !important;
  margin: 10px 0 !important;
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

.woocommerce .rtg-product-tabs-section table.shop_attributes tr,
.woocommerce .rtg-product-tabs-section table.woocommerce-product-attributes tr,
body.single-product .rtg-tabs-content-card table tr {
  border: none !important;
  background: transparent !important;
}

.woocommerce .rtg-product-tabs-section table.shop_attributes th,
.woocommerce .rtg-product-tabs-section table.woocommerce-product-attributes th,
.woocommerce .rtg-product-tabs-section th.woocommerce-product-attributes-item__label,
body.single-product .rtg-tabs-content-card table th {
  font-family: 'Inter', sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 800 !important;
  color: #ffffff !important;
  padding: 14px 22px !important;
  background-color: #006BAC !important;
  background: #006BAC !important;
  border: none !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.15) !important;
  width: 32% !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  vertical-align: middle !important;
  text-align: left !important;
}

.woocommerce .rtg-product-tabs-section table.shop_attributes tr:first-child th,
body.single-product .rtg-tabs-content-card table tr:first-child th {
  border-top-left-radius: 8px !important;
}

.woocommerce .rtg-product-tabs-section table.shop_attributes tr:last-child th,
body.single-product .rtg-tabs-content-card table tr:last-child th {
  border-bottom-left-radius: 8px !important;
  border-bottom: none !important;
}

.woocommerce .rtg-product-tabs-section table.shop_attributes td,
.woocommerce .rtg-product-tabs-section table.woocommerce-product-attributes td,
.woocommerce .rtg-product-tabs-section td.woocommerce-product-attributes-item__value,
body.single-product .rtg-tabs-content-card table td {
  font-family: 'Inter', sans-serif !important;
  font-size: 14px !important;
  font-style: italic !important;
  color: #334155 !important;
  padding: 14px 22px !important;
  background-color: #ffffff !important;
  background: #ffffff !important;
  border: none !important;
  border-bottom: 1px solid #f1f5f9 !important;
  vertical-align: middle !important;
}

.woocommerce .rtg-product-tabs-section table.shop_attributes tr:first-child td,
body.single-product .rtg-tabs-content-card table tr:first-child td {
  border-top-right-radius: 8px !important;
}

.woocommerce .rtg-product-tabs-section table.shop_attributes tr:last-child td,
body.single-product .rtg-tabs-content-card table tr:last-child td {
  border-bottom-right-radius: 8px !important;
  border-bottom: none !important;
}

.woocommerce .rtg-product-tabs-section table.shop_attributes tr:nth-child(even) td,
body.single-product .rtg-tabs-content-card table tr:nth-child(even) td {
  background-color: #f8fafc !important;
  background: #f8fafc !important;
}

.woocommerce .rtg-product-tabs-section table.shop_attributes td p,
.woocommerce .rtg-product-tabs-section table.shop_attributes td *,
body.single-product .rtg-tabs-content-card table td p,
body.single-product .rtg-tabs-content-card table td * {
  margin: 0 !important;
  font-style: italic !important;
  color: inherit !important;
}

@media (max-width: 768px) {
  .rtg-product-tabs-section {
    padding: 20px 14px !important;
    border-radius: 14px !important;
  }
  .rtg-tabs-content-card {
    padding: 24px 18px !important;
    border-radius: 0 14px 14px 14px !important;
  }
  .rtg-tab-btn {
    padding: 10px 18px !important;
    font-size: 13px !important;
  }
  .woocommerce .rtg-product-tabs-section table.shop_attributes th,
  .woocommerce .rtg-product-tabs-section table.shop_attributes td {
    padding: 10px 14px !important;
    font-size: 12px !important;
  }
}

/* 4. Feature Highlights / SCF Gallery (Seamless Vertical Stack) */
.rtg-features-grid-section {
  margin: 100px 0 105px 0 !important;
  width: 100% !important;
}

.rtg-features-grid {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  width: 100% !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  box-shadow: 0 4px 20px rgba(0, 35, 93, 0.06) !important;
  border: 1px solid #e2e8f0 !important;
  background: #ffffff !important;
}

.rtg-feature-card {
  background: #ffffff !important;
  border: none !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  box-shadow: none !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  display: block !important;
}

.rtg-feature-card:hover {
  transform: none !important;
  box-shadow: none !important;
}

.rtg-feature-img-wrap {
  margin: 0 !important;
  padding: 0 !important;
  line-height: 0 !important;
  font-size: 0 !important;
  display: block !important;
}

.rtg-feature-img-wrap img {
  width: 100% !important;
  height: auto !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
}

/* 5. Creative FAQs Accordion (Matching Exact Design Specification) */
.rtg-creative-faqs-section {
  margin: 105px 0 100px 0 !important;
}

.rtg-faqs-header-wrapper {
  text-align: center !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  margin-bottom: 50px !important;
}

.rtg-faqs-pill-badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: #f1f5f9 !important;
  border: 1px solid #e2e8f0 !important;
  color: #3b82f6 !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.8px !important;
  padding: 6px 16px !important;
  border-radius: 50px !important;
  margin-bottom: 14px !important;
}

.rtg-faqs-badge-dot {
  width: 6px !important;
  height: 6px !important;
  border-radius: 50% !important;
  background: #3b82f6 !important;
  display: inline-block !important;
}

.rtg-faqs-main-title {
  font-family: 'Inter', sans-serif !important;
  font-size: 32px !important;
  font-weight: 900 !important;
  color: #00235D !important;
  margin: 0 0 6px 0 !important;
  letter-spacing: -0.3px !important;
  line-height: 1.25 !important;
}

.rtg-faqs-subtitle {
  font-family: 'Inter', sans-serif !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  color: #006BAC !important;
  margin: 0 0 14px 0 !important;
}

.rtg-faqs-intro {
  font-family: 'Inter', sans-serif !important;
  font-size: 13.5px !important;
  color: #64748b !important;
  max-width: 620px !important;
  line-height: 1.6 !important;
  margin: 0 0 20px 0 !important;
  text-align: center !important;
}

.rtg-faqs-title-divider {
  width: 65px !important;
  height: 3px !important;
  background: linear-gradient(90deg, transparent, #006BAC, transparent) !important;
  border-radius: 3px !important;
  margin: 0 auto !important;
}

.rtg-creative-faq-item {
  margin-bottom: 16px !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  box-shadow: 0 4px 14px rgba(0, 35, 93, 0.08) !important;
  background: transparent !important;
  border: none !important;
}

.rtg-creative-faq-summary {
  background: #006BAC !important;
  padding: 16px 24px !important;
  cursor: pointer !important;
  list-style: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  user-select: none !important;
  border-radius: 14px !important;
  transition: background 0.2s ease, border-radius 0.2s ease !important;
}

.rtg-creative-faq-summary::-webkit-details-marker {
  display: none !important;
}

.rtg-creative-faq-item[open] .rtg-creative-faq-summary {
  border-radius: 14px 14px 0 0 !important;
}

.rtg-creative-faq-summary:hover {
  background: #005a91 !important;
}

.rtg-faq-summary-left {
  display: flex !important;
  align-items: center !important;
  gap: 18px !important;
}

.rtg-faq-num {
  font-family: 'Inter', sans-serif !important;
  font-size: 32px !important;
  font-weight: 900 !important;
  color: #ffffff !important;
  line-height: 1 !important;
}

.rtg-faq-text-col {
  display: flex !important;
  flex-direction: column !important;
}

.rtg-faq-q-title {
  font-family: 'Inter', sans-serif !important;
  font-size: 14.5px !important;
  font-weight: 800 !important;
  color: #ffffff !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  margin: 0 !important;
  line-height: 1.3 !important;
}

.rtg-faq-q-sub {
  font-family: 'Inter', sans-serif !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  color: rgba(255, 255, 255, 0.85) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.8px !important;
  margin-top: 3px !important;
}

.rtg-faq-toggle-btn {
  font-family: 'Inter', sans-serif !important;
  font-size: 24px !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
}

.rtg-faq-toggle-icon {
  display: inline-block !important;
  transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.rtg-creative-faq-item[open] .rtg-faq-toggle-icon {
  transform: rotate(45deg) !important;
}

.rtg-creative-faq-content {
  background: #edf2f7 !important;
  border: 1px solid #cbd5e1 !important;
  border-top: none !important;
  border-radius: 0 0 14px 14px !important;
  padding: 22px 28px !important;
}

.rtg-creative-faq-item[open] .rtg-creative-faq-content {
  animation: rtgSlideDownFade 0.3s cubic-bezier(0.16, 1, 0.3, 1) forwards !important;
}

.rtg-faq-answer-inner {
  font-family: 'Inter', sans-serif !important;
  font-size: 14px !important;
  color: #334155 !important;
  line-height: 1.7 !important;
}

@media (max-width: 600px) {
  .rtg-creative-faq-summary {
    padding: 14px 16px !important;
  }
  .rtg-faq-num {
    font-size: 24px !important;
  }
  .rtg-faq-q-title {
    font-size: 12.5px !important;
  }
  .rtg-creative-faq-content {
    padding: 16px 18px !important;
  }
}

/* 6. Related Products Grid */
.single-product .related.products {
  margin: 110px 0 50px 0 !important;
  border-top: 1px solid #e2e8f0 !important;
  padding-top: 65px !important;
}

.single-product .related.products > h2 {
  font-family: 'Inter', sans-serif !important;
  font-size: 22px !important;
  font-weight: 800 !important;
  color: #00235D !important;
  margin-bottom: 24px !important;
  text-align: left !important;
}

.single-product .related.products ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 20px !important;
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
}

@media (max-width: 850px) {
  .single-product .related.products ul.products {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

.single-product .related.products ul.products li.product {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 12px !important;
  padding: 18px !important;
  margin: 0 !important;
  width: 100% !important;
  box-shadow: 0 2px 8px rgba(0, 35, 93, 0.04) !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.single-product .related.products ul.products li.product:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 8px 20px rgba(0, 35, 93, 0.08) !important;
}

.single-product .related.products ul.products li.product img {
  border-radius: 8px !important;
  margin-bottom: 12px !important;
}

.single-product .related.products ul.products li.product .woocommerce-loop-product__title {
  font-family: 'Inter', sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #00235D !important;
  margin-bottom: 8px !important;
}

.single-product .related.products ul.products li.product .price {
  font-family: 'Inter', sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #006BAC !important;
  margin-bottom: 12px !important;
}

.single-product .related.products ul.products li.product .button {
  background: #006BAC !important;
  color: #ffffff !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  border-radius: 50px !important;
  padding: 8px 16px !important;
  text-align: center !important;
  margin-top: auto !important;
}

.single-product .related.products ul.products li.product .button:hover {
  background: #00235D !important;
}

/* ==========================================================================
   7. MY ACCOUNT DASHBOARD (Propuesta 3: Modern SaaS / Minimalist Floating Sidebar)
   ========================================================================== */

/* Outer Layout */
/* ==========================================================================
   READY TO GO CABLES - MY ACCOUNT MODERN SAAS THEME (PROPUESTA 3)
   ========================================================================== */

/* Unified Seamless Background across containers */
body.woocommerce-account,
.woocommerce-account #page,
.woocommerce-account #content,
.woocommerce-account .site-content,
.woocommerce-account .site-main,
.woocommerce-account .inside-article {
  background-color: #f8fafc !important;
  border: none !important;
  box-shadow: none !important;
}

/* Reset Page Container & Entry Content on Account page */
.woocommerce-account .rtg-page-container {
  max-width: 100% !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background-color: transparent !important;
  background: transparent !important;
}

.woocommerce-account .entry-content,
.woocommerce-account .rtg-page-content,
.woocommerce-account .rtg-page-main,
.woocommerce-account .rtg-page-article {
  max-width: 100% !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background-color: transparent !important;
  background: transparent !important;
}

.woocommerce-account .site-main {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

.woocommerce-account .woocommerce {
  max-width: 1240px !important;
  width: 100% !important;
  margin: 40px auto 80px auto !important;
  padding: 0 20px !important;
  box-sizing: border-box !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: flex-start !important;
  gap: 32px !important;
}

/* Left Column: Floating Sticky Sidebar */
.woocommerce-account .woocommerce-MyAccount-navigation {
  width: 290px !important;
  flex-shrink: 0 !important;
  float: none !important;
  margin: 0 !important;
  position: sticky !important;
  top: 90px !important;
  z-index: 10 !important;
}

.rtg-account-sidebar-card {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 18px !important;
  padding: 24px 18px !important;
  box-shadow: 0 4px 20px rgba(0, 35, 93, 0.05) !important;
}

.rtg-account-profile-header {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  padding-bottom: 20px !important;
  margin-bottom: 18px !important;
  border-bottom: 1px solid #f1f5f9 !important;
}

.rtg-account-avatar-wrap {
  width: 54px !important;
  height: 54px !important;
  border-radius: 50% !important;
  border: 2px solid #006BAC !important;
  overflow: hidden !important;
  flex-shrink: 0 !important;
}

.rtg-account-avatar-wrap img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

.rtg-account-profile-meta {
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
}

.rtg-account-profile-name {
  font-family: 'Inter', sans-serif !important;
  font-size: 15.5px !important;
  font-weight: 800 !important;
  color: #00235D !important;
  margin: 0 0 2px 0 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.rtg-account-profile-email {
  font-family: 'Inter', sans-serif !important;
  font-size: 12px !important;
  color: #64748b !important;
  margin-bottom: 6px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.rtg-account-badge-verified {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  background: #ecfdf5 !important;
  color: #059669 !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 10.5px !important;
  font-weight: 700 !important;
  padding: 3px 8px !important;
  border-radius: 50px !important;
  width: fit-content !important;
}

/* Sidebar Navigation Links */
.woocommerce-account .woocommerce-MyAccount-navigation ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
  display: flex !important;
  align-items: center !important;
  padding: 12px 16px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
  color: #475569 !important;
  text-decoration: none !important;
  border-radius: 10px !important;
  transition: all 0.2s ease !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover {
  background: #f1f5f9 !important;
  color: #006BAC !important;
  transform: translateX(3px) !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a {
  background: #006BAC !important;
  color: #ffffff !important;
  font-weight: 800 !important;
  box-shadow: 0 4px 14px rgba(0, 107, 172, 0.25) !important;
  transform: none !important;
}

/* Right Column: Content Area */
.woocommerce-account .woocommerce-MyAccount-content {
  flex: 1 !important;
  width: calc(100% - 322px) !important;
  float: none !important;
  margin: 0 !important;
}

/* Hide default WooCommerce raw greeting paragraphs */
.woocommerce-account .woocommerce-MyAccount-content > p:first-of-type,
.woocommerce-account .woocommerce-MyAccount-content > p:nth-of-type(2) {
  display: none !important;
}

/* Dashboard Hero Card */
.rtg-dashboard-hero-card {
  background: linear-gradient(135deg, #00235D 0%, #006BAC 100%) !important;
  border-radius: 18px !important;
  padding: 30px 36px !important;
  color: #ffffff !important;
  box-shadow: 0 6px 25px rgba(0, 35, 93, 0.12) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 24px !important;
  margin-bottom: 28px !important;
  flex-wrap: wrap !important;
}

.rtg-hero-content {
  flex: 1 !important;
  min-width: 260px !important;
}

.rtg-hero-greeting-pill {
  display: inline-block !important;
  background: rgba(255, 255, 255, 0.15) !important;
  color: #ffffff !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.8px !important;
  padding: 4px 12px !important;
  border-radius: 50px !important;
  margin-bottom: 10px !important;
}

.entry-content h2.rtg-hero-title,
.woocommerce-account h2.rtg-hero-title,
.rtg-dashboard-container h2.rtg-hero-title,
h2.rtg-hero-title,
.rtg-hero-title {
  font-family: 'Inter', sans-serif !important;
  font-size: 24px !important;
  font-weight: 900 !important;
  color: #ffffff !important;
  margin: 0 0 8px 0 !important;
  line-height: 1.25 !important;
}

.entry-content h2.rtg-hero-title span,
.woocommerce-account h2.rtg-hero-title span,
.rtg-dashboard-container h2.rtg-hero-title span,
.rtg-hero-title span {
  color: #38bdf8 !important;
}

.rtg-hero-desc {
  font-family: 'Inter', sans-serif !important;
  font-size: 13.5px !important;
  color: #e0f2fe !important;
  line-height: 1.55 !important;
  margin: 0 !important;
  max-width: 540px !important;
}

.rtg-hero-stats {
  flex-shrink: 0 !important;
}

.rtg-stat-box {
  background: rgba(255, 255, 255, 0.12) !important;
  backdrop-filter: blur(8px) !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
  border-radius: 14px !important;
  padding: 16px 24px !important;
  text-align: center !important;
  min-width: 140px !important;
}

.rtg-stat-number {
  display: block !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 28px !important;
  font-weight: 900 !important;
  color: #ffffff !important;
  line-height: 1 !important;
  margin-bottom: 4px !important;
}

.rtg-stat-label {
  font-family: 'Inter', sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  color: rgba(255, 255, 255, 0.85) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
}

/* Recent Order Card */
.rtg-recent-order-card {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 16px !important;
  padding: 22px 28px !important;
  box-shadow: 0 3px 14px rgba(0, 35, 93, 0.04) !important;
  margin-bottom: 28px !important;
}

.rtg-recent-order-header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: wrap !important;
  gap: 14px !important;
  padding-bottom: 16px !important;
  margin-bottom: 16px !important;
  border-bottom: 1px solid #f1f5f9 !important;
}

.rtg-order-title-group h3 {
  font-family: 'Inter', sans-serif !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  color: #00235D !important;
  margin: 4px 0 2px 0 !important;
}

.rtg-order-pill {
  font-family: 'Inter', sans-serif !important;
  font-size: 10.5px !important;
  font-weight: 700 !important;
  color: #006BAC !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
}

.rtg-order-date {
  font-family: 'Inter', sans-serif !important;
  font-size: 12.5px !important;
  color: #64748b !important;
}

.rtg-order-status-badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  padding: 6px 14px !important;
  border-radius: 50px !important;
}

.rtg-status-dot {
  width: 7px !important;
  height: 7px !important;
  border-radius: 50% !important;
  background: currentColor !important;
}

.status-completed { background: #dcfce7 !important; color: #15803d !important; }
.status-processing { background: #dbeafe !important; color: #1d4ed8 !important; }
.status-on-hold { background: #fef3c7 !important; color: #b45309 !important; }
.status-pending { background: #fee2e2 !important; color: #b91c1c !important; }
.status-default { background: #f1f5f9 !important; color: #475569 !important; }

.rtg-recent-order-footer {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: wrap !important;
  gap: 14px !important;
}

.rtg-order-amount {
  font-family: 'Inter', sans-serif !important;
  font-size: 14px !important;
  color: #475569 !important;
}

.rtg-order-amount strong {
  color: #00235D !important;
  font-size: 16px !important;
}

.rtg-view-order-btn {
  display: inline-flex !important;
  align-items: center !important;
  background: #006BAC !important;
  color: #ffffff !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 12.5px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  padding: 9px 20px !important;
  border-radius: 50px !important;
  transition: all 0.2s ease !important;
}

.rtg-view-order-btn:hover {
  background: #00235D !important;
  color: #ffffff !important;
  transform: translateY(-1px) !important;
}

/* Bento Action Grid */
.rtg-bento-grid {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 20px !important;
}

.rtg-bento-item {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 16px !important;
  padding: 24px !important;
  text-decoration: none !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  box-shadow: 0 2px 10px rgba(0, 35, 93, 0.03) !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease !important;
}

.rtg-bento-item:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 8px 24px rgba(0, 35, 93, 0.08) !important;
  border-color: #006BAC !important;
}

.rtg-bento-icon {
  width: 44px !important;
  height: 44px !important;
  border-radius: 12px !important;
  background: #f0f9ff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 16px !important;
}

.rtg-bento-details h3 {
  font-family: 'Inter', sans-serif !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  color: #00235D !important;
  margin: 0 0 2px 0 !important;
}

.rtg-bento-sub {
  display: block !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  color: #006BAC !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  margin-bottom: 8px !important;
}

.rtg-bento-details p {
  font-family: 'Inter', sans-serif !important;
  font-size: 13px !important;
  color: #64748b !important;
  line-height: 1.5 !important;
  margin: 0 0 16px 0 !important;
}

.rtg-bento-cta {
  font-family: 'Inter', sans-serif !important;
  font-size: 12.5px !important;
  font-weight: 700 !important;
  color: #006BAC !important;
  display: inline-flex !important;
  align-items: center !important;
}

.rtg-bento-highlight {
  background: linear-gradient(135deg, #00235D 0%, #006BAC 100%) !important;
  border-color: transparent !important;
  color: #ffffff !important;
}

.rtg-bento-highlight .rtg-bento-icon {
  background: rgba(255, 255, 255, 0.15) !important;
}

.rtg-bento-highlight .rtg-bento-details h3 {
  color: #ffffff !important;
}

.rtg-bento-highlight .rtg-bento-sub {
  color: #38bdf8 !important;
}

.rtg-bento-highlight .rtg-bento-details p {
  color: #e0f2fe !important;
}

.rtg-bento-highlight .rtg-bento-cta {
  color: #ffffff !important;
  background: rgba(255, 255, 255, 0.2) !important;
  padding: 6px 14px !important;
  border-radius: 50px !important;
  width: fit-content !important;
}

/* Orders Table & Native WooCommerce Views inside My Account */
.woocommerce-account table.woocommerce-orders-table,
.woocommerce-account table.shop_table {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  box-shadow: 0 2px 10px rgba(0, 35, 93, 0.03) !important;
}

.woocommerce-account table.woocommerce-orders-table th,
.woocommerce-account table.shop_table th {
  background: #00235D !important;
  color: #ffffff !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  padding: 14px 18px !important;
  border: none !important;
  text-align: left !important;
}

.woocommerce-account table.woocommerce-orders-table td,
.woocommerce-account table.shop_table td {
  padding: 14px 18px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13.5px !important;
  color: #334155 !important;
  border-bottom: 1px solid #f1f5f9 !important;
  vertical-align: middle !important;
}

.woocommerce-account table.woocommerce-orders-table tr:last-child td,
.woocommerce-account table.shop_table tr:last-child td {
  border-bottom: none !important;
}

.woocommerce-account table.woocommerce-orders-table td a.button {
  background: #006BAC !important;
  color: #ffffff !important;
  border-radius: 50px !important;
  padding: 6px 16px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

/* Addresses and Forms in My Account */
.woocommerce-account .woocommerce-Address {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 14px !important;
  padding: 24px !important;
  box-shadow: 0 2px 10px rgba(0, 35, 93, 0.03) !important;
}

.woocommerce-account .woocommerce-Address-title h3 {
  font-family: 'Inter', sans-serif !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  color: #00235D !important;
  margin-bottom: 14px !important;
}

.woocommerce-account .woocommerce-Address-title .edit {
  color: #006BAC !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  text-decoration: underline !important;
}

/* Edit Account Form & Inputs */
.woocommerce-account form.woocommerce-EditAccountForm {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 16px !important;
  padding: 32px !important;
  box-shadow: 0 4px 20px rgba(0, 35, 93, 0.04) !important;
}

.woocommerce-account form.woocommerce-EditAccountForm .form-row input.input-text {
  border: 1px solid #cbd5e1 !important;
  border-radius: 8px !important;
  padding: 10px 14px !important;
  font-size: 14px !important;
  font-family: 'Inter', sans-serif !important;
  color: #1e293b !important;
  width: 100% !important;
  box-sizing: border-box !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

.woocommerce-account form.woocommerce-EditAccountForm .form-row input.input-text:focus {
  border-color: #006BAC !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(0, 107, 172, 0.15) !important;
}

.woocommerce-account form.woocommerce-EditAccountForm button.button {
  background: #006BAC !important;
  color: #ffffff !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  border-radius: 50px !important;
  padding: 12px 28px !important;
  border: none !important;
  cursor: pointer !important;
  transition: background 0.2s ease, transform 0.2s ease !important;
}

.woocommerce-account form.woocommerce-EditAccountForm button.button:hover {
  background: #00235D !important;
  transform: translateY(-1px) !important;
}

/* ==========================================================================
   AUTHENTICATION & LOGIN CARD (MODERN SAAS DESIGN)
   ========================================================================== */

.woocommerce-account:not(.logged-in) .site-main {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto !important;
  padding: 0 !important;
  background-color: transparent !important;
}

.woocommerce-account:not(.logged-in) .woocommerce {
  max-width: 480px !important;
  margin: 50px auto 90px auto !important;
  padding: 0 20px !important;
  display: block !important;
  box-sizing: border-box !important;
}

.rtg-auth-wrapper {
  width: 100% !important;
}

.rtg-auth-card {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 24px !important;
  padding: 40px 36px !important;
  box-shadow: 0 12px 40px rgba(0, 35, 93, 0.08) !important;
  box-sizing: border-box !important;
  width: 100% !important;
}

/* Auth Header */
.rtg-auth-header {
  text-align: center !important;
  margin-bottom: 28px !important;
}

.rtg-auth-icon-badge {
  width: 52px !important;
  height: 52px !important;
  border-radius: 14px !important;
  background: #f0f9ff !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 16px !important;
  border: 1px solid #e0f2fe !important;
}

.rtg-auth-title {
  font-family: 'Inter', sans-serif !important;
  font-size: 22px !important;
  font-weight: 900 !important;
  color: #00235D !important;
  margin: 0 0 6px 0 !important;
  letter-spacing: -0.3px !important;
}

.rtg-auth-subtitle {
  font-family: 'Inter', sans-serif !important;
  font-size: 13.5px !important;
  color: #64748b !important;
  line-height: 1.5 !important;
  margin: 0 !important;
}

/* Auth Form Fields */
.rtg-auth-card .woocommerce-form-login,
.rtg-login-form {
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  width: 100% !important;
}

.rtg-form-field-group {
  margin-bottom: 20px !important;
  width: 100% !important;
}

.rtg-field-label {
  display: flex !important;
  align-items: center !important;
  gap: 4px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #1e293b !important;
  margin-bottom: 7px !important;
}

.rtg-field-label .required {
  color: #ef4444 !important;
  font-size: 13px !important;
}

.rtg-input-wrapper {
  position: relative !important;
  display: block !important;
  width: 100% !important;
}

.rtg-input-wrapper span.password-input {
  position: static !important;
  display: block !important;
  width: 100% !important;
}

.rtg-input-icon {
  position: absolute !important;
  left: 14px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  pointer-events: none !important;
  z-index: 3 !important;
}

.rtg-input-wrapper input.rtg-form-input,
.rtg-input-wrapper input.input-text {
  width: 100% !important;
  height: 48px !important;
  padding: 0 44px 0 42px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 14px !important;
  color: #1e293b !important;
  background: #f8fafc !important;
  border: 1.5px solid #cbd5e1 !important;
  border-radius: 12px !important;
  box-sizing: border-box !important;
  outline: none !important;
  transition: all 0.2s ease !important;
  margin: 0 !important;
}

.rtg-input-wrapper input.rtg-form-input:focus,
.rtg-input-wrapper input.input-text:focus {
  background: #ffffff !important;
  border-color: #006BAC !important;
  box-shadow: 0 0 0 4px rgba(0, 107, 172, 0.12) !important;
}

/* Password Eye Button */
.rtg-input-wrapper .show-password-input,
.rtg-input-wrapper span.password-input .show-password-input {
  position: absolute !important;
  right: 14px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  background: transparent !important;
  border: none !important;
  cursor: pointer !important;
  padding: 0 !important;
  color: #94a3b8 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 4 !important;
  width: 24px !important;
  height: 24px !important;
}

.rtg-input-wrapper .show-password-input:not(:first-of-type),
.rtg-input-wrapper span.password-input ~ .show-password-input {
  display: none !important;
}

/* WooCommerce Notices Styling */
.woocommerce-account .woocommerce-notices-wrapper {
  max-width: 480px !important;
  margin: 0 auto 20px auto !important;
  width: 100% !important;
}

.woocommerce-account .woocommerce-error,
.woocommerce-account .woocommerce-message,
.woocommerce-account .woocommerce-info {
  border-radius: 14px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13.5px !important;
  padding: 14px 20px !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.04) !important;
  margin-bottom: 20px !important;
}

.woocommerce-account .woocommerce-error {
  background-color: #fef2f2 !important;
  border-left: 4px solid #ef4444 !important;
  color: #991b1b !important;
}

.woocommerce-account .woocommerce-message {
  background-color: #ecfdf5 !important;
  border-left: 4px solid #10b981 !important;
  color: #065f46 !important;
}

.woocommerce-account .woocommerce-info {
  background-color: #eff6ff !important;
  border-left: 4px solid #006BAC !important;
  color: #1e40af !important;
}

/* Options Row */
.rtg-auth-options-row {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin-bottom: 24px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13px !important;
  width: 100% !important;
}

.rtg-remember-me {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  color: #475569 !important;
  cursor: pointer !important;
  font-weight: 500 !important;
}

.rtg-remember-me input[type="checkbox"] {
  width: 16px !important;
  height: 16px !important;
  accent-color: #006BAC !important;
  cursor: pointer !important;
  border-radius: 4px !important;
}

.rtg-lost-password {
  color: #006BAC !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}

.rtg-lost-password:hover {
  color: #00235D !important;
  text-decoration: underline !important;
}

/* Submit Button 100% Full Width */
.rtg-submit-wrapper {
  width: 100% !important;
  margin: 20px 0 24px 0 !important;
  display: block !important;
}

.woocommerce-account .woocommerce-form-login button.rtg-auth-submit-btn,
button.rtg-auth-submit-btn {
  width: 100% !important;
  max-width: 100% !important;
  float: none !important;
  height: 48px !important;
  padding: 0 24px !important;
  background: #006BAC !important;
  color: #ffffff !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase !important;
  border-radius: 50px !important;
  border: none !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  box-shadow: 0 6px 18px rgba(0, 107, 172, 0.25) !important;
  transition: all 0.2s ease !important;
  box-sizing: border-box !important;
  margin: 0 !important;
}

.woocommerce-account .woocommerce-form-login button.rtg-auth-submit-btn:hover,
button.rtg-auth-submit-btn:hover {
  background: #00235D !important;
  box-shadow: 0 8px 24px rgba(0, 35, 93, 0.3) !important;
  transform: translateY(-1.5px) !important;
}

/* Auth Card Footer */
.rtg-auth-footer {
  border-top: 1px solid #f1f5f9 !important;
  padding-top: 20px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  align-items: center !important;
  text-align: center !important;
  width: 100% !important;
}

.rtg-auth-custom-link {
  font-family: 'Inter', sans-serif !important;
  font-size: 12.5px !important;
  color: #64748b !important;
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
}

.rtg-auth-custom-link a {
  color: #006BAC !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

.rtg-auth-custom-link a:hover {
  text-decoration: underline !important;
}

@media (max-width: 520px) {
  .rtg-auth-card {
    padding: 30px 20px !important;
    border-radius: 18px !important;
  }
  .rtg-auth-title {
    font-size: 20px !important;
  }
}

/* ==========================================================================
   RESPONSIVE TABLET & MOBILE RULES (MODERN APP EXPERIENCE)
   ========================================================================== */

@media (max-width: 900px) {
  html,
  body.woocommerce-account {
    overflow-x: hidden !important;
  }

  .woocommerce-account .woocommerce {
    flex-direction: column !important;
    gap: 16px !important;
    padding: 0 16px !important;
    margin: 16px auto 60px auto !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    min-width: 0 !important;
    overflow: hidden !important;
  }

  /* Navigation Sidebar converted to Compact App Header */
  .woocommerce-account .woocommerce-MyAccount-navigation {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    position: static !important;
    top: auto !important;
    margin-bottom: 8px !important;
    box-sizing: border-box !important;
  }

  .rtg-account-sidebar-card {
    padding: 16px !important;
    border-radius: 16px !important;
    box-shadow: 0 2px 10px rgba(0, 35, 93, 0.04) !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  .rtg-account-profile-header {
    padding-bottom: 14px !important;
    margin-bottom: 12px !important;
    gap: 12px !important;
    width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  .rtg-account-avatar-wrap {
    width: 46px !important;
    height: 46px !important;
    flex-shrink: 0 !important;
  }

  .rtg-account-profile-meta {
    min-width: 0 !important;
    max-width: calc(100% - 58px) !important;
    overflow: hidden !important;
  }

  .rtg-account-profile-name {
    font-size: 14.5px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .rtg-account-profile-email {
    font-size: 11.5px !important;
    margin-bottom: 4px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  /* 2-Column Clean Grid Navigation on Mobile (No Text Clipping) */
  .woocommerce-account .woocommerce-MyAccount-navigation {
    border: none !important;
    background: transparent !important;
    padding: 0 !important;
    box-shadow: none !important;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation ul {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 8px !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    box-sizing: border-box !important;
    list-style: none !important;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation ul li {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout {
    grid-column: 1 / -1 !important;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation ul li a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    width: 100% !important;
    padding: 10px 14px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    border-radius: 50px !important;
    background: #f1f5f9 !important;
    color: #475569 !important;
    box-sizing: border-box !important;
    transition: all 0.2s ease !important;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover {
    background: #e2e8f0 !important;
    color: #006BAC !important;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a {
    background: #006BAC !important;
    color: #ffffff !important;
    font-weight: 800 !important;
    box-shadow: 0 4px 12px rgba(0, 107, 172, 0.25) !important;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout a {
    background: #fee2e2 !important;
    color: #b91c1c !important;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout a:hover {
    background: #fecaca !important;
    color: #991b1b !important;
  }

  /* Full-width Content Area */
  .woocommerce-account .woocommerce-MyAccount-content {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  .rtg-dashboard-container {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  /* Hero Banner */
  .rtg-dashboard-hero-card {
    padding: 22px 18px !important;
    border-radius: 16px !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 16px !important;
    margin-bottom: 20px !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  .rtg-hero-title {
    font-size: 20px !important;
    margin-bottom: 6px !important;
  }

  .rtg-hero-desc {
    font-size: 13px !important;
    line-height: 1.5 !important;
  }

  .rtg-hero-stats {
    width: 100% !important;
  }

  .rtg-stat-box {
    width: 100% !important;
    min-width: 0 !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 10px 16px !important;
    box-sizing: border-box !important;
    border-radius: 12px !important;
  }

  .rtg-stat-number {
    font-size: 22px !important;
    margin-bottom: 0 !important;
  }

  .rtg-stat-label {
    font-size: 10.5px !important;
  }

  /* Recent Order Card */
  .rtg-recent-order-card {
    padding: 18px 16px !important;
    border-radius: 16px !important;
    margin-bottom: 20px !important;
  }

  .rtg-recent-order-header {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 10px !important;
    padding-bottom: 12px !important;
    margin-bottom: 12px !important;
  }

  .rtg-order-title-group h3 {
    font-size: 16px !important;
  }

  .rtg-recent-order-footer {
    justify-content: space-between !important;
    gap: 10px !important;
  }

  .rtg-view-order-btn {
    padding: 8px 16px !important;
    font-size: 12px !important;
  }

  /* Bento Grid */
  .rtg-bento-grid {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  .rtg-bento-item {
    padding: 20px 16px !important;
    border-radius: 16px !important;
  }

  .rtg-bento-icon {
    width: 40px !important;
    height: 40px !important;
    border-radius: 10px !important;
    margin-bottom: 12px !important;
  }

  .rtg-bento-details h3 {
    font-size: 15.5px !important;
  }

  .rtg-bento-details p {
    font-size: 12.5px !important;
    margin-bottom: 12px !important;
  }
}

@media (max-width: 480px) {
  .woocommerce-account .woocommerce {
    padding: 0 12px !important;
    margin: 12px auto 40px auto !important;
  }

  .rtg-dashboard-hero-card {
    padding: 18px 14px !important;
  }

  .rtg-hero-title {
    font-size: 18.5px !important;
  }

  .rtg-bento-item {
    padding: 16px 14px !important;
  }
}

/* ==========================================================================
   READY TO GO CABLES - NOTIFICATIONS & FLOATING TOASTS
   ========================================================================== */

/* 1. Global In-Page WooCommerce Notices & Alerts */
.woocommerce-notices-wrapper {
  max-width: 1240px;
  margin: 0 auto 20px auto;
  padding: 0;
  box-sizing: border-box;
  width: 100%;
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
  font-family: 'Inter', sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 500 !important;
  border-radius: 14px !important;
  padding: 16px 22px !important;
  margin: 0 0 18px 0 !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  line-height: 1.55 !important;
  box-shadow: 0 2px 10px rgba(0, 35, 93, 0.04) !important;
  box-sizing: border-box !important;
  position: relative !important;
  width: 100% !important;
  list-style: none !important;
}

.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before,
.woocommerce-message::after,
.woocommerce-info::after,
.woocommerce-error::after {
  content: none !important;
  display: none !important;
}

.woocommerce-info {
  background-color: #f8fafc !important;
  border: 1px solid #e2e8f0 !important;
  color: #00235D !important;
}

.woocommerce-message {
  background-color: #f0fdf4 !important;
  border: 1px solid #bbf7d0 !important;
  color: #166534 !important;
}

.woocommerce-error {
  background-color: #fef2f2 !important;
  border: 1px solid #fecaca !important;
  color: #991b1b !important;
}

.woocommerce-message a.button,
.woocommerce-info a.button,
.woocommerce-error a.button,
.woocommerce-message .woocommerce-Button,
.woocommerce-info .woocommerce-Button,
.woocommerce-error .woocommerce-Button {
  order: 99 !important;
  margin-left: auto !important;
  flex-shrink: 0 !important;
  background: #006BAC !important;
  color: #ffffff !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 12.5px !important;
  font-weight: 700 !important;
  padding: 8px 20px !important;
  border-radius: 50px !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: none !important;
  box-shadow: 0 2px 8px rgba(0, 107, 172, 0.25) !important;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
  white-space: nowrap !important;
}

.woocommerce-message a.button:hover,
.woocommerce-info a.button:hover,
.woocommerce-error a.button:hover,
.woocommerce-message .woocommerce-Button:hover,
.woocommerce-info .woocommerce-Button:hover,
.woocommerce-error .woocommerce-Button:hover {
  background: #00235D !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 12px rgba(0, 35, 93, 0.3) !important;
}

@media (max-width: 640px) {
  .woocommerce-message,
  .woocommerce-info,
  .woocommerce-error {
    flex-direction: column !important;
    align-items: stretch !important;
    padding: 16px !important;
    gap: 12px !important;
  }

  .woocommerce-message a.button,
  .woocommerce-info a.button,
  .woocommerce-error a.button,
  .woocommerce-message .woocommerce-Button,
  .woocommerce-info .woocommerce-Button,
  .woocommerce-error .woocommerce-Button {
    order: 2 !important;
    margin-left: 0 !important;
    width: 100% !important;
    text-align: center !important;
    justify-content: center !important;
  }
}

/* 2. Floating Cart Action Toast (Bottom Right) */
.rtg-toast-container {
  position: fixed;
  bottom: 24px;
  right: 24px;
  z-index: 999999;
  display: flex;
  flex-direction: column;
  gap: 10px;
  max-width: 420px;
  width: calc(100% - 48px);
  pointer-events: none;
}

.rtg-toast-card {
  pointer-events: auto;
  background: #ffffff !important;
  border-radius: 16px !important;
  box-shadow: 0 12px 36px rgba(0, 35, 93, 0.16) !important;
  border: 1px solid #e2e8f0 !important;
  border-left: 5px solid #006BAC !important;
  padding: 16px 20px !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 14px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13px !important;
  color: #00235D !important;
  animation: rtgToastSlideUp 0.35s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

@keyframes rtgToastSlideUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.rtg-toast-hiding {
  opacity: 0 !important;
  transform: translateY(20px) !important;
  transition: all 0.35s ease !important;
}

.rtg-toast-body {
  display: flex;
  align-items: center;
  gap: 10px;
  flex: 1;
}

.rtg-toast-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}

.rtg-toast-btn {
  background: #006BAC !important;
  color: #ffffff !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  padding: 6px 14px !important;
  border-radius: 50px !important;
  text-decoration: none !important;
}

.rtg-toast-close {
  background: transparent !important;
  border: none !important;
  color: #94a3b8 !important;
  font-size: 20px !important;
  cursor: pointer !important;
  line-height: 1 !important;
  padding: 4px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.rtg-toast-close:hover {
  color: #00235D !important;
}

@media (max-width: 600px) {
  .rtg-toast-container {
    bottom: 16px;
    left: 16px;
    right: 16px;
    width: auto;
    max-width: none;
  }
}

/* ==========================================================================
   READY TO GO CABLES - MY ACCOUNT ADDRESSES & EDIT ADDRESS FORM
   ========================================================================== */

.rtg-addresses-header {
  margin-bottom: 24px;
}

.rtg-addresses-title {
  font-family: 'Inter', sans-serif !important;
  font-size: 22px !important;
  font-weight: 800 !important;
  color: #00235D !important;
  margin: 0 0 6px 0 !important;
  line-height: 1.2 !important;
}

.rtg-addresses-subtitle {
  font-family: 'Inter', sans-serif !important;
  font-size: 13.5px !important;
  color: #64748b !important;
  margin: 0 !important;
  line-height: 1.5 !important;
}

.woocommerce-account .u-columns.woocommerce-Addresses,
.rtg-addresses-container {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 24px !important;
  margin: 20px 0 0 0 !important;
  width: 100% !important;
  float: none !important;
}

.woocommerce-account .u-columns.woocommerce-Addresses::before,
.woocommerce-account .u-columns.woocommerce-Addresses::after {
  display: none !important;
}

.woocommerce-account .woocommerce-Address,
.rtg-address-card {
  width: 100% !important;
  float: none !important;
  margin: 0 !important;
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 18px !important;
  padding: 24px !important;
  box-shadow: 0 4px 16px rgba(0, 35, 93, 0.04) !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
  box-sizing: border-box !important;
}

.woocommerce-account .woocommerce-Address:hover,
.rtg-address-card:hover {
  border-color: #cbd5e1 !important;
  box-shadow: 0 10px 28px rgba(0, 35, 93, 0.08) !important;
  transform: translateY(-2px);
}

.rtg-address-card-header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  padding-bottom: 16px !important;
  margin-bottom: 16px !important;
  border-bottom: 1px solid #f1f5f9 !important;
}

.rtg-address-type-group {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}

.rtg-address-icon-badge {
  width: 42px !important;
  height: 42px !important;
  border-radius: 12px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
}

.rtg-address-icon-badge.billing-icon {
  background: #eff6ff !important;
  color: #006BAC !important;
  border: 1px solid #dbeafe !important;
}

.rtg-address-icon-badge.shipping-icon {
  background: #f8fafc !important;
  color: #00235D !important;
  border: 1px solid #e2e8f0 !important;
}

.rtg-address-card-title {
  font-family: 'Inter', sans-serif !important;
  font-size: 15.5px !important;
  font-weight: 800 !important;
  color: #00235D !important;
  margin: 0 0 2px 0 !important;
  line-height: 1.2 !important;
}

.rtg-address-badge {
  display: inline-block !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  color: #64748b !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
}

.rtg-edit-address-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  background: #f0f9ff !important;
  color: #006BAC !important;
  border: 1px solid #bfdbfe !important;
  padding: 6px 14px !important;
  border-radius: 50px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
  white-space: nowrap !important;
}

.rtg-edit-address-btn:hover {
  background: #006BAC !important;
  border-color: #006BAC !important;
  color: #ffffff !important;
}

.rtg-address-card-body address,
.woocommerce-account .woocommerce-Address address {
  font-family: 'Inter', sans-serif !important;
  font-style: normal !important;
  font-size: 13.5px !important;
  line-height: 1.7 !important;
  color: #334155 !important;
  margin: 0 !important;
}

.rtg-empty-address-notice {
  font-size: 13px !important;
  color: #94a3b8 !important;
  font-style: italic !important;
  display: block;
}

/* Edit Address Forms */
.woocommerce-account form.woocommerce-EditAddressForm,
.woocommerce-account .woocommerce > form {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 20px !important;
  padding: 32px !important;
  box-shadow: 0 4px 20px rgba(0, 35, 93, 0.04) !important;
  max-width: 800px !important;
  margin: 0 auto !important;
  box-sizing: border-box !important;
}

.woocommerce-account form.woocommerce-EditAddressForm h3 {
  font-family: 'Inter', sans-serif !important;
  font-size: 20px !important;
  font-weight: 800 !important;
  color: #00235D !important;
  margin: 0 0 24px 0 !important;
}

.woocommerce-account form.woocommerce-EditAddressForm .woocommerce-address-fields__field-wrapper {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}

.woocommerce-account form.woocommerce-EditAddressForm .woocommerce-address-fields__field-wrapper p.form-row {
  margin: 0 !important;
  width: 100% !important;
  float: none !important;
}

.woocommerce-account form.woocommerce-EditAddressForm .woocommerce-address-fields__field-wrapper p.form-row-wide {
  grid-column: span 2;
}

.woocommerce-account form.woocommerce-EditAddressForm .form-row label {
  font-family: 'Inter', sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #00235D !important;
  margin-bottom: 6px !important;
  display: block !important;
}

.woocommerce-account form.woocommerce-EditAddressForm .form-row input.input-text,
.woocommerce-account form.woocommerce-EditAddressForm .form-row select {
  width: 100% !important;
  border: 1px solid #cbd5e1 !important;
  border-radius: 10px !important;
  padding: 10px 14px !important;
  font-size: 13.5px !important;
  font-family: 'Inter', sans-serif !important;
  color: #00235D !important;
  background: #ffffff !important;
  box-sizing: border-box !important;
  transition: all 0.2s ease !important;
}

.woocommerce-account form.woocommerce-EditAddressForm .form-row input.input-text:focus,
.woocommerce-account form.woocommerce-EditAddressForm .form-row select:focus {
  border-color: #006BAC !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(0, 107, 172, 0.15) !important;
}

.woocommerce-account form.woocommerce-EditAddressForm button.button,
.woocommerce-account form.woocommerce-EditAddressForm button[name="save_address"] {
  background: #006BAC !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 50px !important;
  padding: 12px 32px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  margin-top: 20px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 4px 12px rgba(0, 107, 172, 0.2) !important;
}

.woocommerce-account form.woocommerce-EditAddressForm button.button:hover,
.woocommerce-account form.woocommerce-EditAddressForm button[name="save_address"]:hover {
  background: #00235D !important;
  transform: translateY(-1px) !important;
}

/* Responsive Address Layout */
@media (max-width: 768px) {
  .woocommerce-account .u-columns.woocommerce-Addresses,
  .rtg-addresses-container {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  .rtg-address-card {
    padding: 20px 16px !important;
  }

  .woocommerce-account form.woocommerce-EditAddressForm {
    padding: 20px 16px !important;
  }

  .woocommerce-account form.woocommerce-EditAddressForm .woocommerce-address-fields__field-wrapper {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  .woocommerce-account form.woocommerce-EditAddressForm .woocommerce-address-fields__field-wrapper p.form-row-wide {
    grid-column: span 1 !important;
  }
}

/* ==========================================================================
   WORDPRESS ADMIN BAR & DASHICONS FONT PRESERVATION
   ========================================================================== */
#wpadminbar .ab-icon,
#wpadminbar .ab-icon::before,
#wpadminbar .ab-item::before,
#wpadminbar .dashicons,
#wpadminbar .dashicons::before,
.dashicons,
.dashicons-before::before,
[class*="dashicons-"]::before {
  font-family: dashicons !important;
}

/* ==========================================================================
   ELEMENTOR POST INFO / META ICONS ENHANCEMENT
   ========================================================================== */
.elementor-widget-post-info .elementor-icon-list-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  vertical-align: middle !important;
  margin-right: 6px !important;
}

/* Calendar Icon */
.elementor-widget-post-info .fa-calendar,
.elementor-widget-post-info .fa-calendar-alt,
.elementor-widget-post-info .fas.fa-calendar {
  display: inline-block !important;
  width: 14px !important;
  height: 14px !important;
  font-size: 0 !important;
  line-height: 1 !important;
  background-color: currentColor !important;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='currentColor' d='M96 32V64H48C21.5 64 0 85.5 0 112v48H448V112c0-26.5-21.5-48-48-48H352V32c0-17.7-14.3-32-32-32s-32 14.3-32 32V64H160V32c0-17.7-14.3-32-32-32S96 14.3 96 32zM448 192H0V464c0 26.5 21.5 48 48 48H400c26.5 0 48-21.5 48-48V192zM128 288a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm96 0a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm96 0a32 32 0 1 1 0 64 32 32 0 1 1 0-64zM128 384a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm96 0a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm96 0a32 32 0 1 1 0 64 32 32 0 1 1 0-64z'/%3E%3C/svg%3E") no-repeat center / contain !important;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='currentColor' d='M96 32V64H48C21.5 64 0 85.5 0 112v48H448V112c0-26.5-21.5-48-48-48H352V32c0-17.7-14.3-32-32-32s-32 14.3-32 32V64H160V32c0-17.7-14.3-32-32-32S96 14.3 96 32zM448 192H0V464c0 26.5 21.5 48 48 48H400c26.5 0 48-21.5 48-48V192zM128 288a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm96 0a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm96 0a32 32 0 1 1 0 64 32 32 0 1 1 0-64zM128 384a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm96 0a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm96 0a32 32 0 1 1 0 64 32 32 0 1 1 0-64z'/%3E%3C/svg%3E") no-repeat center / contain !important;
}
.elementor-widget-post-info .fa-calendar::before,
.elementor-widget-post-info .fa-calendar-alt::before,
.elementor-widget-post-info .fas.fa-calendar::before {
  content: "" !important;
  display: none !important;
}

/* Tags / Category Icon */
.elementor-widget-post-info .fa-tags,
.elementor-widget-post-info .fa-tag,
.elementor-widget-post-info .fas.fa-tags {
  display: inline-block !important;
  width: 14px !important;
  height: 14px !important;
  font-size: 0 !important;
  line-height: 1 !important;
  background-color: currentColor !important;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 512'%3E%3Cpath fill='currentColor' d='M0 252.118V48C0 21.49 21.49 0 48 0h204.118a48 48 0 0 1 33.941 14.059l211.882 211.882c18.745 18.745 18.745 49.137 0 67.882L293.823 497.941c-18.745 18.745-49.137 18.745-67.882 0L14.059 286.059A48 48 0 0 1 0 252.118zM112 64c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48zm513.941 222.059l-211.882-211.882a48 48 0 0 0-22.118-12.824v67.882a16 16 0 0 1-4.686 11.314l-192 192a16 16 0 0 1-22.628 0l-37.515-37.515a48 48 0 0 0-12.824 22.118l179.941 179.941c18.745 18.745 49.137 18.745 67.882 0l211.882-211.882c18.745-18.745 18.745-49.137 0-67.882z'/%3E%3C/svg%3E") no-repeat center / contain !important;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 512'%3E%3Cpath fill='currentColor' d='M0 252.118V48C0 21.49 21.49 0 48 0h204.118a48 48 0 0 1 33.941 14.059l211.882 211.882c18.745 18.745 18.745 49.137 0 67.882L293.823 497.941c-18.745 18.745-49.137 18.745-67.882 0L14.059 286.059A48 48 0 0 1 0 252.118zM112 64c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48zm513.941 222.059l-211.882-211.882a48 48 0 0 0-22.118-12.824v67.882a16 16 0 0 1-4.686 11.314l-192 192a16 16 0 0 1-22.628 0l-37.515-37.515a48 48 0 0 0-12.824 22.118l179.941 179.941c18.745 18.745 49.137 18.745 67.882 0l211.882-211.882c18.745-18.745 18.745-49.137 0-67.882z'/%3E%3C/svg%3E") no-repeat center / contain !important;
}
.elementor-widget-post-info .fa-tags::before,
.elementor-widget-post-info .fa-tag::before,
.elementor-widget-post-info .fas.fa-tags::before {
  content: "" !important;
  display: none !important;
}

/* User / Author Icon */
.elementor-widget-post-info .fa-user,
.elementor-widget-post-info .fas.fa-user {
  display: inline-block !important;
  width: 14px !important;
  height: 14px !important;
  font-size: 0 !important;
  line-height: 1 !important;
  background-color: currentColor !important;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='currentColor' d='M224 256A128 128 0 1 0 224 0a128 128 0 1 0 0 256zm-45.7 48C79.8 304 0 383.8 0 482.3 0 498.7 13.3 512 29.7 512H418.3c16.4 0 29.7-13.3 29.7-29.7 0-98.5-79.8-178.3-178.3-178.3H178.3z'/%3E%3C/svg%3E") no-repeat center / contain !important;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='currentColor' d='M224 256A128 128 0 1 0 224 0a128 128 0 1 0 0 256zm-45.7 48C79.8 304 0 383.8 0 482.3 0 498.7 13.3 512 29.7 512H418.3c16.4 0 29.7-13.3 29.7-29.7 0-98.5-79.8-178.3-178.3-178.3H178.3z'/%3E%3C/svg%3E") no-repeat center / contain !important;
}
.elementor-widget-post-info .fa-user::before,
.elementor-widget-post-info .fas.fa-user::before {
  content: "" !important;
  display: none !important;
}

/* ==========================================================================
   HOMEPAGE FAQ ACCORDION NUMBERS (PREVENT WRAPPING ON 04)
   ========================================================================== */
.rtg-faq-card-header {
  grid-template-columns: minmax(65px, auto) 1fr auto !important;
}

.rtg-faq-card-number {
  white-space: nowrap !important;
  min-width: 65px !important;
  display: inline-flex !important;
  align-items: center !important;
  line-height: 1 !important;
}

/* ==========================================================================
   HERO & ABOVE-THE-FOLD INSTANT DISPLAY (Zero animation lag / No CLS)
   ========================================================================== */
.elementor-element-d4af2c4 .elementor-invisible,
.elementor-element-304d104 .elementor-invisible,
.elementor-element-116620d,
.elementor-element-e46e0cf,
.elementor-element-ae9b86b,
.elementor-element-5df8f30,
.rtg-benefit-card {
  opacity: 1 !important;
  visibility: visible !important;
  animation: none !important;
}
