/**
 * PROTECOM 2026 - Main Stylesheet (v2.3.0 SaaS Tech Hero)
 * Brand: Protecom SARL (Télécom, FTTH & Réseaux)
 */

/* ==========================================================================
   1. HEADER & TOP BAR TEXT VISIBILITY & CONTRAST
   ========================================================================== */

/* Top Bar: Navy Background with Pure White High-Contrast Text */
.whb-top-bar,
.whb-top-bar.whb-color-dark,
.whb-top-bar.whb-color-light,
.protecom-topbar {
  background-color: var(--protecom-navy) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
  min-height: 40px !important;
}

/* Force all text inside Top Bar to crisp pure white */
.whb-top-bar,
.whb-top-bar *,
.whb-top-bar a,
.whb-top-bar a span,
.whb-top-bar span,
.whb-top-bar div,
.whb-top-bar li a,
.whb-top-bar .wd-nav > li > a,
.whb-top-bar .wd-nav-secondary > li > a,
.whb-top-bar .wd-tools-text,
.whb-top-bar .menu-item a,
.whb-top-bar .wd-header-nav a,
.whb-top-bar .woodmart-wishlist-info-widget a,
.whb-top-bar .wd-header-my-account a {
  color: #FFFFFF !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  transition: color 0.2s ease, opacity 0.2s ease !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Top bar hover state */
.whb-top-bar a:hover,
.whb-top-bar a:hover span,
.whb-top-bar .menu-item a:hover,
.whb-top-bar .wd-nav > li > a:hover {
  color: var(--protecom-cyan) !important;
}

/* ==========================================================================
   1. TOP BAR, HEADER & MENU PILL DESIGN (reference.png Style)
   ========================================================================== */

/* Top bar background & text */
.whb-top-bar {
  background-color: var(--protecom-navy) !important;
  color: #FFFFFF !important;
}

.whb-top-bar a,
.whb-top-bar span,
.whb-top-bar .nav-link-text,
.whb-top-bar .wd-tools-text {
  color: #FFFFFF !important;
  font-size: 13px !important;
  font-weight: 600 !important;
}

/* 4. Top bar icons MUST BE WHITE (Point 4) */
.whb-top-bar .wd-nav-img,
.whb-top-bar img.wd-nav-img,
.whb-top-bar #menu-item-2865 img,
.whb-top-bar #menu-item-2866 img,
.whb-top-bar img {
  filter: brightness(0) invert(1) !important;
  opacity: 1 !important;
}

.whb-top-bar svg,
.whb-top-bar i,
.whb-top-bar .wd-tools-icon,
.whb-top-bar .wd-tools-icon:before,
.whb-top-bar .wd-header-wishlist .wd-tools-icon:before,
.whb-top-bar .wd-header-my-account .wd-tools-icon:before,
.whb-top-bar .wd-header-nav svg,
.whb-top-bar .woodmart-wishlist-info-widget svg {
  color: #FFFFFF !important;
  fill: #FFFFFF !important;
  stroke: #FFFFFF !important;
  opacity: 1 !important;
}

.whb-top-bar a:hover svg,
.whb-top-bar a:hover i,
.whb-top-bar a:hover span,
.whb-top-bar a:hover .nav-link-text {
  color: var(--protecom-cyan) !important;
  fill: var(--protecom-cyan) !important;
}

/* Top bar menu separator lines */
.whb-top-bar .wd-style-separated > li {
  border-color: rgba(255, 255, 255, 0.2) !important;
}

/* Main Header Text Visibility & Contrast */
.whb-general-header {
  background-color: #FFFFFF !important;
  box-shadow: 0 2px 10px rgba(6, 43, 89, 0.05) !important;
}

/* 1. Header Menu Navigation - Style Pill (Point 1) */
.whb-general-header .wd-header-nav ul.wd-nav {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  overflow-x: auto !important;
  scrollbar-width: none !important;
  -webkit-overflow-scrolling: touch !important;
}

.whb-general-header .wd-header-nav ul.wd-nav::-webkit-scrollbar {
  display: none !important;
}

.whb-general-header .wd-header-nav ul.wd-nav > li > a,
.whb-general-header #menu-main-header-menu-vegetables > li > a {
  background: #FFFFFF !important;
  border: 1.5px solid #E2E8F0 !important;
  border-radius: 50px !important;
  color: #062B59 !important;
  font-weight: 700 !important;
  font-size: 13.5px !important;
  padding: 8px 18px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  box-shadow: 0 2px 8px rgba(6, 43, 89, 0.04) !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  white-space: nowrap !important;
  text-decoration: none !important;
}

.whb-general-header .wd-header-nav ul.wd-nav > li > a:hover,
.whb-general-header #menu-main-header-menu-vegetables > li > a:hover {
  background: #0756B9 !important;
  color: #FFFFFF !important;
  border-color: #0756B9 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 18px rgba(7, 86, 185, 0.25) !important;
}

.whb-general-header .wd-header-nav ul.wd-nav > li > a .wd-nav-img {
  width: 18px !important;
  height: 18px !important;
  object-fit: contain !important;
  transition: filter 0.25s ease, transform 0.25s ease !important;
}

.whb-general-header .wd-header-nav ul.wd-nav > li > a:hover .wd-nav-img {
  filter: brightness(0) invert(1) !important;
  transform: scale(1.1) !important;
}

/* Header Search */
.whb-general-header .searchform input[type="text"],
.whb-general-header .searchform input[type="search"] {
  border-radius: 50px !important;
  border: 1.5px solid #E2E8F0 !important;
  padding-left: 18px !important;
  font-size: 14px !important;
  background-color: #F8FAFC !important;
}

.whb-general-header .searchform input[type="text"]:focus,
.whb-general-header .searchform input[type="search"]:focus {
  border-color: var(--protecom-primary) !important;
  background-color: #FFFFFF !important;
  box-shadow: 0 0 0 3px rgba(7, 86, 185, 0.12) !important;
}

.whb-general-header .searchform button[type="submit"] {
  background-color: var(--protecom-primary) !important;
  color: #FFFFFF !important;
  border-radius: 50px !important;
}

/* "Toutes les catégories" Header Button */
.whb-general-header .wd-tools-element.wd-header-sticky-nav > a,
.whb-header-bottom .header-categories-nav .menu-opener,
.protecom-cat-menu-btn {
  background: var(--protecom-primary) !important;
  color: #FFFFFF !important;
  border-radius: 50px !important;
  font-weight: 700 !important;
  padding: 10px 22px !important;
  box-shadow: 0 4px 14px rgba(7, 86, 185, 0.25) !important;
  transition: all 0.25s ease !important;
}

.whb-general-header .wd-tools-element.wd-header-sticky-nav > a:hover,
.whb-header-bottom .header-categories-nav .menu-opener:hover {
  background: var(--protecom-navy) !important;
  transform: translateY(-2px) !important;
}

/* Navigation Bar Bottom */
.whb-header-bottom {
  background: var(--protecom-primary) !important;
}

.whb-header-bottom .wd-nav > li > a {
  color: #FFFFFF !important;
  font-weight: 600 !important;
  font-size: 14px !important;
}

.whb-header-bottom .wd-nav > li > a:hover {
  color: var(--protecom-cyan-light) !important;
}

/* ==========================================================================
   2. WHATSAPP PRO STYLING & FULL VISIBILITY
   ========================================================================== */

/* Universal Floating WhatsApp Button (Max z-index, Never Hidden) */
.protecom-whatsapp-float {
  position: fixed !important;
  bottom: 28px !important;
  right: 28px !important;
  z-index: 2147483647 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  background: linear-gradient(135deg, #25D366 0%, #1EBE5D 100%) !important;
  color: #FFFFFF !important;
  text-decoration: none !important;
  padding: 12px 22px !important;
  border-radius: 50px !important;
  box-shadow: 0 6px 24px rgba(37, 211, 102, 0.5) !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  cursor: pointer !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  animation: protecom-wa-pulse 2.2s infinite !important;
}

.protecom-whatsapp-float:hover {
  background: linear-gradient(135deg, #1EBE5D 0%, #128C7E 100%) !important;
  transform: translateY(-3px) scale(1.04) !important;
  box-shadow: 0 10px 30px rgba(37, 211, 102, 0.65) !important;
  color: #FFFFFF !important;
}

.protecom-whatsapp-float svg {
  width: 22px !important;
  height: 22px !important;
  fill: #FFFFFF !important;
  flex-shrink: 0 !important;
}

.protecom-whatsapp-text {
  display: inline-block !important;
  white-space: nowrap !important;
}

@keyframes protecom-wa-pulse {
  0% { box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.65); }
  70% { box-shadow: 0 0 0 14px rgba(37, 211, 102, 0); }
  100% { box-shadow: 0 0 0 0 rgba(37, 211, 102, 0); }
}

body.single-product .protecom-whatsapp-float {
  bottom: 84px !important;
}

/* PRO WhatsApp Buttons on Single Product Pages */
.product a[href*="wa.me"],
.product a[href*="whatsapp"],
.single-product a[href*="wa.me"],
.single-product a[href*="whatsapp"],
.summary a[href*="wa.me"] {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  background: linear-gradient(135deg, #25D366 0%, #1EBE5D 100%) !important;
  color: #FFFFFF !important;
  font-family: inherit !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 0.2px !important;
  padding: 13px 20px !important;
  border-radius: 8px !important;
  text-decoration: none !important;
  box-shadow: 0 4px 14px rgba(37, 211, 102, 0.3) !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  margin: 10px 0 !important;
  border: none !important;
  line-height: 1.4 !important;
  position: relative !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.product a[href*="wa.me"]:hover,
.single-product a[href*="wa.me"]:hover,
.summary a[href*="wa.me"]:hover {
  background: linear-gradient(135deg, #1EBE5D 0%, #128C7E 100%) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 20px rgba(37, 211, 102, 0.45) !important;
  color: #FFFFFF !important;
}

.product a[href*="212661718440"],
.single-product a[href*="212661718440"] {
  background: linear-gradient(135deg, #25D366 0%, #20BA56 100%) !important;
}

.product a[href*="212661752749"],
.single-product a[href*="212661752749"] {
  background: linear-gradient(135deg, #128C7E 0%, #075E54 100%) !important;
  box-shadow: 0 4px 14px rgba(18, 140, 126, 0.35) !important;
}

.product a[href*="212661752749"]:hover,
.single-product a[href*="212661752749"]:hover {
  background: linear-gradient(135deg, #075E54 0%, #054038 100%) !important;
  box-shadow: 0 8px 20px rgba(18, 140, 126, 0.5) !important;
}

.product a[href*="wa.me"]::before,
.single-product a[href*="wa.me"]::before,
.summary a[href*="wa.me"]::before {
  content: "" !important;
  display: inline-block !important;
  width: 20px !important;
  height: 20px !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ffffff'%3E%3Cpath d='M12.04 2c-5.46 0-9.91 4.45-9.91 9.91 0 1.75.46 3.45 1.32 4.95L2.05 22l5.25-1.38c1.45.79 3.08 1.21 4.74 1.21 5.46 0 9.91-4.45 9.91-9.91 0-2.65-1.03-5.14-2.9-7.01A9.816 9.816 0 0 0 12.04 2zm5.82 14.07c-.24.68-1.4 1.29-1.93 1.35-.49.06-1.12.09-3.23-.79-2.7-1.12-4.43-3.86-4.57-4.04-.13-.18-1.1-1.47-1.1-2.8 0-1.34.7-1.99.95-2.26.24-.27.53-.34.71-.34.18 0 .35 0 .5.01.17.01.39-.06.61.47.24.58.82 2.01.89 2.16.07.15.12.33.02.53-.1.2-.15.32-.3.49-.15.18-.32.4-.45.54-.15.15-.31.32-.13.63.18.31.79 1.31 1.7 2.12 1.17 1.04 2.15 1.37 2.46 1.52.31.15.49.13.67-.08.18-.21.78-.91.99-1.22.21-.31.42-.26.71-.15.29.11 1.84.87 2.16 1.03.32.16.53.24.61.37.08.13.08.77-.16 1.45z'/%3E%3C/svg%3E") !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
  flex-shrink: 0 !important;
}

/* ==========================================================================
   STICKY FOOTER PRODUCT TO ORDER (Redesign Matching footer-ref.png - Protecom Colors)
   ========================================================================== */
.wd-sticky-btn {
  background: #FFFFFF !important;
  border-top: 1px solid #EAEAEA !important;
  box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.05) !important;
  padding: 12px 0 !important;
  position: fixed !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 1000 !important;
}

.wd-sticky-btn-container {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  max-width: 1240px !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
  gap: 20px !important;
}

/* Hide WhatsApp and Quote clutter inside sticky bottom bar */
.wd-sticky-btn .wa-button-container,
.wd-sticky-btn .yith-ywraq-add-to-quote,
.wd-sticky-btn .yith-wcwl-add-to-wishlist {
  display: none !important;
}

/* Left Section: Thumbnail + Title & Price */
.wd-sticky-btn-content {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

.wd-sticky-btn-thumbnail {
  width: 54px !important;
  height: 54px !important;
  min-width: 54px !important;
  background: #F4F5F7 !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 8px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 4px !important;
  overflow: hidden !important;
}

.wd-sticky-btn-thumbnail img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  border-radius: 6px !important;
}

.wd-sticky-btn-info {
  display: flex !important;
  flex-direction: column !important;
  gap: 3px !important;
  min-width: 0 !important;
}

.wd-sticky-btn-info .wd-entities-title {
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #062B59 !important;
  margin: 0 !important;
  line-height: 1.3 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  max-width: 440px !important;
}

/* Right Section: Price + Quantity Stepper + Button */
.wd-sticky-btn-cart {
  display: flex !important;
  align-items: center !important;
  gap: 18px !important;
  flex-shrink: 0 !important;
}

/* Price Display (Bold Protecom Blue + Grey Strike) */
.wd-sticky-btn-cart .price {
  display: flex !important;
  align-items: baseline !important;
  gap: 8px !important;
  margin: 0 !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  color: #0756B9 !important;
}

.wd-sticky-btn-cart .price ins {
  text-decoration: none !important;
}

.wd-sticky-btn-cart .price ins .amount {
  color: #0756B9 !important;
  font-weight: 800 !important;
  font-size: 16px !important;
}

.wd-sticky-btn-cart .price del {
  color: #A0AEC0 !important;
  font-size: 13px !important;
  font-weight: 500 !important;
}

.wd-sticky-btn-cart .price .woocommerce-price-suffix {
  color: #718096 !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  margin-left: 2px !important;
}

/* Cart Form inside sticky bar */
.wd-sticky-btn-cart form.cart {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Quantity Stepper: [ - 1 + ] */
.wd-sticky-btn-cart .quantity {
  display: inline-flex !important;
  align-items: center !important;
  background: #FFFFFF !important;
  border: 1.5px solid #E2E8F0 !important;
  border-radius: 8px !important;
  height: 42px !important;
  overflow: hidden !important;
  margin: 0 !important;
}

.wd-sticky-btn-cart .quantity input.minus,
.wd-sticky-btn-cart .quantity input.plus {
  width: 34px !important;
  height: 42px !important;
  background: transparent !important;
  border: none !important;
  color: #718096 !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: all 0.2s ease !important;
  padding: 0 !important;
  margin: 0 !important;
}

.wd-sticky-btn-cart .quantity input.minus:hover,
.wd-sticky-btn-cart .quantity input.plus:hover {
  background: #F4F5F7 !important;
  color: #0756B9 !important;
}

.wd-sticky-btn-cart .quantity input.qty {
  width: 38px !important;
  height: 42px !important;
  border: none !important;
  background: transparent !important;
  text-align: center !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  color: #062B59 !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Action Button: "AJOUTER AU PANIER" (Reference Layout, Protecom Blue) */
.wd-sticky-btn-cart button.single_add_to_cart_button {
  background: #0756B9 !important;
  background-color: #0756B9 !important;
  color: #FFFFFF !important;
  border: none !important;
  border-radius: 8px !important;
  font-weight: 700 !important;
  font-size: 13.5px !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase !important;
  height: 42px !important;
  padding: 0 28px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  white-space: nowrap !important;
  box-shadow: 0 4px 14px rgba(7, 86, 185, 0.28) !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  cursor: pointer !important;
  margin: 0 !important;
}

.wd-sticky-btn-cart button.single_add_to_cart_button:hover {
  background: #054494 !important;
  background-color: #054494 !important;
  color: #FFFFFF !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 6px 18px rgba(7, 86, 185, 0.4) !important;
}

/* Mobile responsive */
@media (max-width: 768px) {
  .wd-sticky-btn {
    padding: 8px 0 !important;
  }
  .wd-sticky-btn-container {
    padding: 0 14px !important;
    gap: 10px !important;
  }
  .wd-sticky-btn-info .wd-entities-title {
    max-width: 170px !important;
    font-size: 12px !important;
  }
  .wd-sticky-btn-cart {
    gap: 8px !important;
  }
  .wd-sticky-btn-cart .quantity {
    display: none !important;
  }
  .wd-sticky-btn-cart button.single_add_to_cart_button {
    padding: 0 16px !important;
    font-size: 12px !important;
    height: 38px !important;
  }
}

/* Social links in Footer */
.social-whatsapp,
.social-whatsapp a,
.wd-social-icon.social-whatsapp {
  background-color: #25D366 !important;
  color: #FFFFFF !important;
  border-color: #25D366 !important;
}

.social-whatsapp svg,
.wd-social-icon.social-whatsapp svg {
  fill: #FFFFFF !important;
}

/* ==========================================================================
   3. MODERN TYPOGRAPHY-DRIVEN TECH / SAAS HERO (NO IMAGES, 100% PURE CSS)
   ========================================================================== */

/* HIDE ONLY THE LEGACY SLIDER ROW & OLD ICON STRIP FROM HOMEPAGE */
.home .vc_custom_1721663134,
.home div[class*="vc_custom_1721663134"],
.home [class*="wd-rs-669e7e8f2e3cc"],
.home .vc_custom_1708529286,
.home div[class*="vc_custom_1708529286"] {
  display: none !important;
}

/* ==========================================================================
   SUBHEADER CATEGORY NAV BAR REDESIGN (Reference Style Pills - Attachment 2)
   ========================================================================== */
.home .vc_custom_1721663041711,
.home div[class*="vc_custom_1721663041"] {
  background: #F4F8FD !important;
  border-top: 1px solid #E2E8F0 !important;
  border-bottom: 1px solid #E2E8F0 !important;
  padding: 16px 0 !important;
  margin-top: -30px !important;
  margin-bottom: 35px !important;
}

.home .wd-cats-element .wd-nav-product-cat-wrap {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  overflow-x: auto !important;
  scrollbar-width: none !important;
  -webkit-overflow-scrolling: touch !important;
  padding: 4px 10px !important;
}

.home .wd-cats-element .wd-nav-product-cat-wrap::-webkit-scrollbar {
  display: none !important;
}

.home .wd-cats-element .wd-btn-show-cat {
  display: none !important;
}

.home .wd-cats-element ul.wd-nav-product-cat {
  display: flex !important;
  flex-wrap: nowrap !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 12px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.home .wd-cats-element ul.wd-nav-product-cat li.cat-item {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  flex-shrink: 0 !important;
}

.home .wd-cats-element ul.wd-nav-product-cat li.cat-item a.category-nav-link {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  background: #FFFFFF !important;
  color: #062B59 !important;
  border: 1.5px solid #E2E8F0 !important;
  border-radius: 50px !important;
  padding: 9px 20px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  letter-spacing: 0.2px !important;
  box-shadow: 0 2px 8px rgba(6, 43, 89, 0.04) !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  white-space: nowrap !important;
}

.home .wd-cats-element ul.wd-nav-product-cat li.cat-item a.category-nav-link:hover,
.home .wd-cats-element ul.wd-nav-product-cat li.cat-item.current-cat a.category-nav-link {
  background: #0756B9 !important;
  color: #FFFFFF !important;
  border-color: #0756B9 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 18px rgba(7, 86, 185, 0.28) !important;
}

.home .wd-cats-element ul.wd-nav-product-cat li.cat-item a.category-nav-link .wd-nav-img {
  width: 20px !important;
  height: 20px !important;
  object-fit: contain !important;
  transition: transform 0.25s ease, filter 0.25s ease !important;
}

.home .wd-cats-element ul.wd-nav-product-cat li.cat-item a.category-nav-link:hover .wd-nav-img {
  transform: scale(1.15) !important;
  filter: brightness(0) invert(1) !important;
}

.home .wd-cats-element ul.wd-nav-product-cat li.cat-item a.category-nav-link .nav-link-text {
  font-weight: 700 !important;
  color: inherit !important;
}

/* FULL-WIDTH SAAS TECH HERO CONTAINER */
.protecom-hero-tech-saas {
  width: 100vw !important;
  position: relative !important;
  left: 50% !important;
  right: 50% !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
  background: radial-gradient(circle at 50% -20%, #087FD8 0%, #0756B9 30%, #062B59 75%, #031429 100%) !important;
  padding: 85px 0 95px !important;
  margin-top: -40px !important;
  margin-bottom: 50px !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  text-align: center !important;
}

/* Subtle Cyber / Optical Grid Pattern */
.protecom-hero-bg-grid {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: 
    linear-gradient(rgba(19, 169, 232, 0.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(19, 169, 232, 0.08) 1px, transparent 1px);
  background-size: 44px 44px;
  mask-image: radial-gradient(ellipse at center, rgba(0, 0, 0, 1) 40%, transparent 85%);
  -webkit-mask-image: radial-gradient(ellipse at center, rgba(0, 0, 0, 1) 40%, transparent 85%);
  pointer-events: none;
  z-index: 1;
}

/* Glowing Ambient Floating Orbs */
.protecom-hero-orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(80px);
  pointer-events: none;
  z-index: 1;
  opacity: 0.7;
  animation: protecom-orb-float 10s ease-in-out infinite alternate;
}

.protecom-hero-orb-1 {
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, #087FD8 0%, transparent 70%);
  top: -120px;
  left: 8%;
  animation-duration: 12s;
}

.protecom-hero-orb-2 {
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, #13A9E8 0%, transparent 70%);
  top: 10%;
  right: 5%;
  animation-duration: 9s;
}

.protecom-hero-orb-3 {
  width: 400px;
  height: 400px;
  background: radial-gradient(circle, #0756B9 0%, transparent 70%);
  bottom: -100px;
  left: 32%;
  animation-duration: 14s;
}

@keyframes protecom-orb-float {
  0% { transform: translateY(0) scale(1); }
  50% { transform: translateY(-20px) scale(1.08); }
  100% { transform: translateY(15px) scale(0.95); }
}

/* Content Container */
.protecom-hero-inner {
  max-width: 980px;
  margin: 0 auto;
  padding: 0 24px;
  position: relative;
  z-index: 2;
}

/* Eyebrow Tech Pill */
.protecom-hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: rgba(19, 169, 232, 0.12);
  border: 1px solid rgba(19, 169, 232, 0.35);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-radius: 50px;
  padding: 8px 22px;
  color: #13A9E8;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1.2px;
  margin-bottom: 26px;
  box-shadow: 0 0 24px rgba(19, 169, 232, 0.25);
  transition: all 0.25s ease;
}

.protecom-hero-eyebrow:hover {
  background: rgba(19, 169, 232, 0.2);
  border-color: #13A9E8;
  transform: translateY(-1px);
}

.protecom-eyebrow-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #13A9E8;
  box-shadow: 0 0 12px #13A9E8;
  animation: protecom-dot-pulse 1.8s infinite;
}

@keyframes protecom-dot-pulse {
  0% { transform: scale(0.9); opacity: 0.7; }
  50% { transform: scale(1.3); opacity: 1; box-shadow: 0 0 16px #13A9E8; }
  100% { transform: scale(0.9); opacity: 0.7; }
}

/* Bold Typography-Driven Headline */
.protecom-hero-tech-saas .protecom-hero-title {
  font-size: 56px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  color: #FFFFFF !important;
  letter-spacing: -1.4px !important;
  margin: 0 0 18px 0 !important;
  text-align: center !important;
}

.protecom-title-gradient {
  display: inline-block;
  background: linear-gradient(135deg, #FFFFFF 20%, #BAE6FD 55%, #13A9E8 100%) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  text-shadow: 0 12px 36px rgba(19, 169, 232, 0.35);
}

/* Subtitle */
.protecom-hero-tech-saas .protecom-hero-subtitle {
  font-size: 17px !important;
  font-weight: 600 !important;
  color: #BAE6FD !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  margin: 0 0 38px 0 !important;
  text-align: center !important;
}

/* CTA Buttons */
.protecom-hero-actions {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  flex-wrap: wrap;
  margin-bottom: 50px;
}

.protecom-btn-primary {
  background: linear-gradient(135deg, #0756B9 0%, #087FD8 100%) !important;
  color: #FFFFFF !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  padding: 15px 34px !important;
  border-radius: 50px !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  box-shadow: 0 8px 26px rgba(8, 127, 216, 0.45) !important;
  border: 1px solid rgba(255, 255, 255, 0.25) !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.protecom-btn-primary:hover {
  background: linear-gradient(135deg, #087FD8 0%, #13A9E8 100%) !important;
  transform: translateY(-2px);
  box-shadow: 0 12px 35px rgba(19, 169, 232, 0.65) !important;
  color: #FFFFFF !important;
}

.protecom-btn-secondary {
  background: rgba(255, 255, 255, 0.08) !important;
  border: 1.5px solid rgba(255, 255, 255, 0.25) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  color: #FFFFFF !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  padding: 15px 32px !important;
  border-radius: 50px !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.protecom-btn-secondary:hover {
  border-color: #13A9E8 !important;
  background: rgba(19, 169, 232, 0.16) !important;
  color: #13A9E8 !important;
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(19, 169, 232, 0.35) !important;
}

/* Floating Sleek Trust Badges (Glassmorphic Pills) */
.protecom-hero-badges-strip {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}

.protecom-badge-pill {
  background: rgba(255, 255, 255, 0.06);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 50px;
  padding: 10px 24px 10px 14px;
  display: inline-flex;
  align-items: center;
  gap: 14px;
  box-shadow: 0 8px 30px rgba(4, 27, 59, 0.4);
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
  cursor: default;
}

.protecom-badge-pill:hover {
  transform: translateY(-3px);
  border-color: rgba(19, 169, 232, 0.55);
  background: rgba(255, 255, 255, 0.12);
  box-shadow: 0 12px 35px rgba(19, 169, 232, 0.3);
}

.protecom-badge-icon {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: linear-gradient(135deg, rgba(19, 169, 232, 0.25) 0%, rgba(7, 86, 185, 0.35) 100%);
  border: 1px solid rgba(19, 169, 232, 0.4);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #13A9E8;
  flex-shrink: 0;
}

.protecom-badge-icon svg {
  width: 18px;
  height: 18px;
  fill: #13A9E8;
}

.protecom-badge-label {
  text-align: left;
}

.protecom-badge-label strong {
  display: block;
  font-size: 14px;
  font-weight: 700;
  color: #FFFFFF;
  line-height: 1.25;
}

.protecom-badge-label small {
  display: block;
  font-size: 11px;
  color: #BAE6FD;
  font-weight: 500;
}

/* ==========================================================================
   4. SECTION HEADINGS WITH BLUE ACCENT
   ========================================================================== */
.protecom-section-header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: 28px;
  padding-bottom: 6px;
}

.protecom-section-title-wrap {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.protecom-section-title {
  font-size: 26px;
  font-weight: 800;
  color: var(--protecom-navy);
  margin: 0;
  display: flex;
  align-items: center;
  gap: 12px;
  letter-spacing: -0.3px;
}

.protecom-section-title::before {
  content: "";
  display: inline-block;
  width: 5px;
  height: 24px;
  background: var(--protecom-primary);
  border-radius: 3px;
}

.protecom-section-subtitle {
  font-size: 14px;
  color: #64748B;
  margin: 0;
  padding-left: 17px;
}

.protecom-section-link,
a.protecom-section-link {
  font-size: 13.5px !important;
  font-weight: 700 !important;
  color: #087FD8 !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: #FFFFFF !important;
  border: 1.5px solid #087FD8 !important;
  padding: 8px 24px !important;
  border-radius: 50px !important;
  box-shadow: 0 2px 6px rgba(8, 127, 216, 0.08) !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.protecom-section-link:hover,
a.protecom-section-link:hover {
  background: #087FD8 !important;
  color: #FFFFFF !important;
  border-color: #087FD8 !important;
  box-shadow: 0 6px 18px rgba(8, 127, 216, 0.28) !important;
  transform: translateY(-2px) !important;
}

/* ==========================================================================
   5. PRODUCT CATEGORIES (8 CARDS - 100% REFERENCE STYLE)
   ========================================================================== */
.protecom-categories-section {
  padding: 40px 0 60px !important;
  background: #FFFFFF !important;
  position: relative !important;
}

.protecom-categories-grid {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 24px !important;
}

.protecom-category-card {
  background: #F0F6FD !important;
  border: 1px solid rgba(7, 86, 185, 0.08) !important;
  border-radius: 16px !important;
  padding: 28px 16px 22px !important;
  text-align: center !important;
  text-decoration: none !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 2px 10px rgba(6, 43, 89, 0.03) !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  position: relative !important;
  overflow: hidden !important;
}

.protecom-category-card:hover {
  background: #EBF4FC !important;
  border-color: #087FD8 !important;
  transform: translateY(-5px) !important;
  box-shadow: 0 12px 28px rgba(8, 127, 216, 0.16) !important;
}

.protecom-category-img-wrap {
  width: 90px !important;
  height: 80px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 14px !important;
  background: transparent !important;
}

.protecom-category-img-wrap img {
  max-width: 65px !important;
  max-height: 65px !important;
  object-fit: contain !important;
  background: transparent !important;
  filter: drop-shadow(0 2px 6px rgba(7, 86, 185, 0.15)) !important;
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.protecom-category-card:hover .protecom-category-img-wrap img {
  transform: scale(1.12) !important;
}

.protecom-category-name {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #062B59 !important;
  margin: 0 !important;
  line-height: 1.3 !important;
  transition: color 0.2s ease !important;
  text-align: center !important;
}

.protecom-category-card:hover .protecom-category-name {
  color: #0756B9 !important;
}

/* Native WoodMart category cards fallback styling */
.wd-cat,
.product-category,
.wd-categories .wd-cat,
.cat-design-default,
.cat-design-center {
  background: #F0F6FD !important;
  border: 1px solid rgba(7, 86, 185, 0.08) !important;
  border-radius: 16px !important;
  transition: all 0.25s ease !important;
}

.wd-cat:hover,
.product-category:hover {
  background: #EBF4FC !important;
  border-color: #087FD8 !important;
  transform: translateY(-4px) !important;
  box-shadow: 0 10px 25px rgba(8, 127, 216, 0.14) !important;
}

/* ==========================================================================
   6. FEATURED PRODUCTS & WOOCOMMERCE PRODUCT CARDS
   ========================================================================== */
.protecom-products-section {
  padding: 50px 0 60px;
  background: var(--protecom-bg-light);
}

.protecom-carousel-nav {
  display: flex;
  align-items: center;
  gap: 8px;
}

.protecom-carousel-btn {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  border: 1px solid #CBD5E1;
  background: #FFFFFF;
  color: var(--protecom-navy);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.2s ease;
}

.protecom-carousel-btn:hover {
  background: var(--protecom-primary);
  border-color: var(--protecom-primary);
  color: #FFFFFF;
}

.protecom-products-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}

.protecom-product-card {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: var(--protecom-radius-lg);
  padding: 18px;
  display: flex;
  flex-direction: column;
  position: relative;
  box-shadow: var(--protecom-shadow-subtle);
  transition: all 0.25s ease;
}

.protecom-product-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--protecom-shadow-hover);
  border-color: rgba(7, 86, 185, 0.25);
}

.protecom-product-top {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 12px;
  min-height: 24px;
}

.protecom-badge {
  font-size: 11px;
  font-weight: 700;
  padding: 3px 10px;
  border-radius: var(--protecom-radius-pill);
  text-transform: uppercase;
  letter-spacing: 0.3px;
}

.protecom-badge-new {
  background: var(--protecom-primary);
  color: #FFFFFF;
}

.protecom-badge-sale {
  background: var(--protecom-accent-red);
  color: #FFFFFF;
}

.protecom-wishlist-btn {
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 4px;
  color: #94A3B8;
  transition: color 0.2s ease, transform 0.15s ease;
}

.protecom-wishlist-btn:hover {
  color: var(--protecom-accent-red);
  transform: scale(1.15);
}

.protecom-wishlist-btn svg {
  width: 18px;
  height: 18px;
  fill: currentColor;
}

.protecom-product-img-wrap {
  height: 180px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 14px;
  overflow: hidden;
}

.protecom-product-img-wrap img {
  max-height: 100%;
  max-width: 100%;
  object-fit: contain;
  transition: transform 0.3s ease;
}

.protecom-product-card:hover .protecom-product-img-wrap img {
  transform: scale(1.06);
}

.protecom-product-title {
  font-size: 14px;
  font-weight: 700;
  color: var(--protecom-navy);
  margin: 0 0 8px 0;
  line-height: 1.35;
  min-height: 38px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.protecom-product-title a {
  color: inherit;
  text-decoration: none;
  transition: color 0.2s ease;
}

.protecom-product-title a:hover {
  color: var(--protecom-primary);
}

.protecom-product-rating {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 10px;
}

.protecom-stars {
  color: var(--protecom-accent-gold);
  font-size: 12px;
  letter-spacing: 1px;
}

.protecom-rating-count {
  font-size: 12px;
  color: #94A3B8;
}

.protecom-product-price {
  font-size: 16px;
  font-weight: 800;
  color: var(--protecom-navy);
  margin-bottom: 14px;
  display: flex;
  align-items: baseline;
  gap: 8px;
}

.protecom-old-price {
  font-size: 13px;
  font-weight: 500;
  color: #94A3B8;
  text-decoration: line-through;
}

.protecom-add-to-cart-btn,
.product-grid-item .woodmart-add-btn > a,
.product-grid-item .button.product_type_simple {
  background: var(--protecom-primary) !important;
  color: #FFFFFF !important;
  border: none !important;
  border-radius: var(--protecom-radius-sm) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  padding: 10px 14px !important;
  width: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  cursor: pointer;
  text-decoration: none !important;
  margin-top: auto;
  transition: all 0.2s ease !important;
}

.protecom-add-to-cart-btn:hover,
.product-grid-item .woodmart-add-btn > a:hover,
.product-grid-item .button.product_type_simple:hover {
  background: var(--protecom-secondary) !important;
  color: #FFFFFF !important;
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(7, 86, 185, 0.25) !important;
}

.protecom-add-to-cart-btn svg {
  width: 15px;
  height: 15px;
  fill: currentColor;
}

/* ==========================================================================
   7. VALUE PROPOSITION BANNER
   ========================================================================== */
.protecom-why-section {
  padding: 40px 0 60px;
  background: #FFFFFF;
}

.protecom-why-card {
  background: linear-gradient(135deg, #E6F3FD 0%, #D8ECFB 60%, #CCE5FA 100%);
  border-radius: 20px;
  padding: 40px;
  display: grid;
  grid-template-columns: 1fr 1.2fr 0.8fr;
  align-items: center;
  gap: 30px;
  position: relative;
  overflow: hidden;
  box-shadow: var(--protecom-shadow-card);
}

.protecom-why-content h2 {
  font-size: 30px;
  font-weight: 800;
  color: var(--protecom-navy);
  line-height: 1.2;
  margin-bottom: 12px;
}

.protecom-why-content p {
  font-size: 14px;
  color: #475569;
  line-height: 1.5;
  margin-bottom: 24px;
}

.protecom-why-btn {
  background: var(--protecom-primary);
  color: #FFFFFF !important;
  font-weight: 600;
  font-size: 13px;
  padding: 10px 22px;
  border-radius: var(--protecom-radius-pill);
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  box-shadow: 0 4px 12px rgba(7, 86, 185, 0.25);
  transition: all 0.2s ease;
}

.protecom-why-btn:hover {
  background: var(--protecom-secondary);
  color: #FFFFFF !important;
  transform: translateY(-2px);
}

.protecom-why-features {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}

.protecom-why-feature-item {
  background: rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(8px);
  border-radius: var(--protecom-radius-md);
  padding: 14px 16px;
  display: flex;
  align-items: center;
  gap: 12px;
  box-shadow: var(--protecom-shadow-subtle);
  transition: transform 0.2s ease, background 0.2s ease;
}

.protecom-why-feature-item:hover {
  transform: translateY(-2px);
  background: #FFFFFF;
}

.protecom-feature-icon {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: var(--protecom-bg-blue-tint);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--protecom-primary);
  flex-shrink: 0;
}

.protecom-feature-icon svg {
  width: 18px;
  height: 18px;
  fill: currentColor;
}

.protecom-feature-label {
  font-size: 13px;
  font-weight: 700;
  color: var(--protecom-navy);
  line-height: 1.25;
}

.protecom-why-landmark {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

.protecom-why-landmark img {
  max-height: 200px;
  width: auto;
  object-fit: contain;
  opacity: 0.9;
  filter: drop-shadow(0 10px 20px rgba(6, 43, 89, 0.15));
}

/* ==========================================================================
   8. PARTNER BRANDS SHOWCASE
   ========================================================================== */
.protecom-brands-section {
  padding: 50px 0;
  background: #FFFFFF;
  text-align: center;
}

.protecom-brands-title-wrap {
  margin-bottom: 34px;
}

.protecom-brands-title {
  font-size: 26px;
  font-weight: 800;
  color: var(--protecom-navy);
  margin-bottom: 6px;
  position: relative;
  display: inline-block;
}

.protecom-brands-title::after {
  content: "";
  display: block;
  width: 60px;
  height: 3px;
  background: var(--protecom-cyan);
  border-radius: 2px;
  margin: 6px auto 0;
}

.protecom-brands-subtitle {
  font-size: 14px;
  color: #64748B;
  margin: 0;
}

.protecom-brands-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 18px;
  align-items: center;
}

.protecom-brand-card {
  background: #FFFFFF;
  border: 1px solid #EDF2F7;
  border-radius: var(--protecom-radius-md);
  padding: 16px;
  height: 70px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: var(--protecom-shadow-subtle);
  transition: all 0.25s ease;
}

.protecom-brand-card:hover {
  transform: translateY(-3px);
  border-color: rgba(7, 86, 185, 0.2);
  box-shadow: var(--protecom-shadow-hover);
}

.protecom-brand-card img {
  max-width: 90%;
  max-height: 40px;
  object-fit: contain;
  filter: grayscale(10%) contrast(105%);
  transition: filter 0.2s ease, transform 0.2s ease;
}

.protecom-brand-card:hover img {
  filter: grayscale(0%) contrast(110%);
  transform: scale(1.06);
}

/* ==========================================================================
   9. NEWSLETTER / LEAD CAPTURE
   ========================================================================== */
.protecom-newsletter-section {
  padding: 20px 0 60px;
  background: #FFFFFF;
}

.protecom-newsletter-card {
  background: var(--protecom-bg-gradient-blue);
  border-radius: 18px;
  padding: 30px 40px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  position: relative;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(7, 86, 185, 0.3);
}

.protecom-newsletter-card::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 40%;
  height: 100%;
  background: radial-gradient(circle at 80% 50%, rgba(19, 169, 232, 0.4) 0%, transparent 70%);
  pointer-events: none;
}

.protecom-newsletter-left {
  display: flex;
  align-items: center;
  gap: 20px;
  position: relative;
  z-index: 2;
}

.protecom-newsletter-icon {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.12);
  border: 1px solid rgba(255, 255, 255, 0.2);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #FFFFFF;
  flex-shrink: 0;
}

.protecom-newsletter-icon svg {
  width: 24px;
  height: 24px;
  fill: currentColor;
}

.protecom-newsletter-text h3 {
  font-size: 22px;
  font-weight: 800;
  color: #FFFFFF;
  margin: 0 0 4px 0;
}

.protecom-newsletter-text p {
  font-size: 13px;
  color: #BAE6FD;
  margin: 0;
}

.protecom-newsletter-form {
  position: relative;
  z-index: 2;
  flex: 1;
  max-width: 480px;
}

.protecom-newsletter-input-group {
  display: flex;
  align-items: center;
  background: #FFFFFF;
  border-radius: var(--protecom-radius-pill);
  padding: 4px;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.1);
}

.protecom-newsletter-input {
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 10px 18px !important;
  font-size: 14px !important;
  color: var(--protecom-navy) !important;
  flex: 1;
  outline: none !important;
}

.protecom-newsletter-btn {
  background: var(--protecom-secondary) !important;
  color: #FFFFFF !important;
  border: none !important;
  border-radius: var(--protecom-radius-pill) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  padding: 10px 24px !important;
  cursor: pointer;
  white-space: nowrap;
  transition: all 0.2s ease !important;
}

.protecom-newsletter-btn:hover {
  background: var(--protecom-primary) !important;
  transform: translateY(-1px);
}

/* ==========================================================================
   10. FOOTER & COPYRIGHT
   ========================================================================== */
.footer-container,
.protecom-footer {
  background-color: var(--protecom-navy) !important;
  color: #E2E8F0 !important;
  padding: 60px 0 0 !important;
}

.protecom-footer-inner {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 20px 40px;
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr 1.2fr;
  gap: 40px;
}

.protecom-footer-col h4 {
  font-size: 16px;
  font-weight: 700;
  color: #FFFFFF;
  margin-bottom: 20px;
  position: relative;
}

.protecom-footer-col h4::after {
  content: "";
  display: block;
  width: 30px;
  height: 2px;
  background: var(--protecom-cyan);
  margin-top: 8px;
}

.protecom-footer-logo img {
  max-height: 48px;
  width: auto;
  margin-bottom: 16px;
}

.protecom-footer-desc {
  font-size: 13px;
  color: #94A3B8;
  line-height: 1.6;
  margin-bottom: 20px;
}

.protecom-footer-socials {
  display: flex;
  align-items: center;
  gap: 10px;
}

.protecom-social-btn {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.12);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #FFFFFF !important;
  text-decoration: none;
  transition: all 0.2s ease;
}

.protecom-social-btn:hover {
  background: var(--protecom-cyan);
  border-color: var(--protecom-cyan);
  transform: translateY(-2px);
}

.protecom-social-btn svg {
  width: 15px;
  height: 15px;
  fill: currentColor;
}

.protecom-footer-links {
  list-style: none;
  margin: 0;
  padding: 0;
}

.protecom-footer-links li {
  margin-bottom: 10px;
}

.protecom-footer-links a {
  color: #94A3B8 !important;
  text-decoration: none;
  font-size: 13px;
  transition: color 0.2s ease, transform 0.2s ease;
  display: inline-block;
}

.protecom-footer-links a:hover {
  color: var(--protecom-cyan) !important;
  transform: translateX(3px);
}

.protecom-contact-list {
  list-style: none;
  margin: 0 0 20px 0;
  padding: 0;
}

.protecom-contact-list li {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 13px;
  color: #94A3B8;
  margin-bottom: 12px;
}

.protecom-contact-list svg {
  width: 16px;
  height: 16px;
  fill: var(--protecom-cyan);
  flex-shrink: 0;
}

.protecom-footer-cta-btn {
  background: var(--protecom-bg-gradient-cyan);
  color: #FFFFFF !important;
  font-weight: 700;
  font-size: 13px;
  padding: 10px 20px;
  border-radius: var(--protecom-radius-pill);
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  box-shadow: 0 4px 12px rgba(19, 169, 232, 0.4);
  transition: all 0.2s ease;
}

.protecom-footer-cta-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(19, 169, 232, 0.6);
  color: #FFFFFF !important;
}

.protecom-sub-footer {
  background: var(--protecom-navy-dark);
  border-top: 1px solid rgba(255, 255, 255, 0.06);
  padding: 16px 0;
  font-size: 12px;
  color: #64748B;
}

.protecom-sub-footer-inner {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.protecom-sub-footer a {
  color: #94A3B8;
  text-decoration: none;
}

.protecom-sub-footer a:hover {
  color: #FFFFFF;
}

/* ==========================================================================
   11. MOBILE RESPONSIVENESS FOR SAAS TECH HERO
   ========================================================================== */
@media (max-width: 768px) {
  .protecom-hero-tech-saas {
    padding: 60px 0 70px !important;
  }

  .protecom-hero-tech-saas .protecom-hero-title {
    font-size: 34px !important;
    letter-spacing: -0.5px !important;
  }

  .protecom-hero-tech-saas .protecom-hero-subtitle {
    font-size: 13px !important;
    letter-spacing: 1px !important;
    margin-bottom: 28px !important;
  }

  .protecom-hero-actions {
    flex-direction: column;
    gap: 12px;
    width: 100%;
  }

  .protecom-btn-primary,
  .protecom-btn-secondary {
    width: 100%;
    justify-content: center;
    padding: 14px 20px !important;
  }

  .protecom-hero-badges-strip {
    flex-direction: column;
    gap: 12px;
    width: 100%;
  }

  .protecom-badge-pill {
    width: 100%;
    justify-content: flex-start;
  }
}

/* ==========================================================================
   GLOBAL BUTTON DESIGN SYSTEM (100% UNIFIED MATCHING reference.png)
   ========================================================================== */

/* 1. All Primary Action Buttons Across Entire Website */
.btn-primary,
.btn-color-primary,
button.button,
a.button,
input.button,
.button.checkout,
.button.alt,
.single_add_to_cart_button,
.woocommerce button.button,
.woocommerce a.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce-form-login__submit,
.woocommerce-form-register__submit,
.woocommerce-Button,
.woodmart-button,
.wd-button,
.protecom-btn-primary,
.protecom-why-btn,
.wp-block-button__link {
  background: linear-gradient(135deg, #0756B9 0%, #087FD8 100%) !important;
  color: #FFFFFF !important;
  border: none !important;
  border-radius: 50px !important;
  padding: 12px 28px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  text-transform: none !important;
  letter-spacing: 0.2px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  box-shadow: 0 4px 14px rgba(7, 86, 185, 0.25) !important;
  cursor: pointer !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

.btn-primary:hover,
.btn-color-primary:hover,
button.button:hover,
a.button:hover,
input.button:hover,
.button.checkout:hover,
.button.alt:hover,
.single_add_to_cart_button:hover,
.woocommerce button.button:hover,
.woocommerce a.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce-form-login__submit:hover,
.woocommerce-form-register__submit:hover,
.woocommerce-Button:hover,
.woodmart-button:hover,
.wd-button:hover,
.protecom-btn-primary:hover,
.protecom-why-btn:hover,
.wp-block-button__link:hover {
  background: #054494 !important;
  color: #FFFFFF !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 22px rgba(7, 86, 185, 0.4) !important;
}

/* 2. WooCommerce Product Loop "Ajouter au Panier" (Reference Style) */
.product-grid-item .add_to_cart_button,
.product .add_to_cart_button,
.wd-add-btn a,
.wd-buy-now-btn a {
  background: #0756B9 !important;
  color: #FFFFFF !important;
  border-radius: 50px !important;
  padding: 10px 22px !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  border: none !important;
  text-transform: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  box-shadow: 0 3px 10px rgba(7, 86, 185, 0.2) !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.product-grid-item .add_to_cart_button:hover,
.product .add_to_cart_button:hover,
.wd-add-btn a:hover,
.wd-buy-now-btn a:hover {
  background: #054494 !important;
  color: #FFFFFF !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 18px rgba(7, 86, 185, 0.35) !important;
}

/* 3. Single Product Page "Ajouter au Panier" (Bold Reference Pill) */
.single-product form.cart .single_add_to_cart_button {
  background: linear-gradient(135deg, #0756B9 0%, #087FD8 100%) !important;
  color: #FFFFFF !important;
  border-radius: 50px !important;
  padding: 14px 34px !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  box-shadow: 0 4px 16px rgba(7, 86, 185, 0.3) !important;
  border: none !important;
}

.single-product form.cart .single_add_to_cart_button:hover {
  background: #054494 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 24px rgba(7, 86, 185, 0.45) !important;
}

/* 4. Secondary & Outlined Buttons ("Voir plus", "Tous les produits", Links) */
.btn-style-link,
.btn-style-bordered,
.btn-default,
a.btn-style-link,
a.btn-style-bordered,
.wd-button-wrapper a.btn {
  background: #FFFFFF !important;
  color: #087FD8 !important;
  border: 1.5px solid #087FD8 !important;
  border-radius: 50px !important;
  padding: 9px 24px !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  text-transform: none !important;
  box-shadow: 0 2px 6px rgba(8, 127, 216, 0.08) !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
}

.btn-style-link:hover,
.btn-style-bordered:hover,
.btn-default:hover,
a.btn-style-link:hover,
a.btn-style-bordered:hover,
.wd-button-wrapper a.btn:hover {
  background: #087FD8 !important;
  color: #FFFFFF !important;
  border-color: #087FD8 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 18px rgba(8, 127, 216, 0.3) !important;
}

/* 5. Newsletter Button */
.protecom-newsletter-btn,
.mc4wp-form input[type="submit"] {
  background: #087FD8 !important;
  color: #FFFFFF !important;
  border-radius: 50px !important;
  padding: 12px 28px !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  border: none !important;
  transition: all 0.25s ease !important;
}

.protecom-newsletter-btn:hover,
.mc4wp-form input[type="submit"]:hover {
  background: #0756B9 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 18px rgba(8, 127, 216, 0.35) !important;
}

/* 6. Form Submit Buttons (Comments, Checkout, Reviews, Forms) */
.form-submit input[type="submit"],
.wpcf7-submit,
input[type="submit"] {
  background: #0756B9 !important;
  color: #FFFFFF !important;
  border-radius: 50px !important;
  padding: 12px 30px !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  border: none !important;
  cursor: pointer !important;
  transition: all 0.25s ease !important;
}

.form-submit input[type="submit"]:hover,
.wpcf7-submit:hover,
input[type="submit"]:hover {
  background: #054494 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 18px rgba(7, 86, 185, 0.35) !important;
}

/* 7. Carousel Navigation Arrow Buttons (Circles matching reference - Eradicate Vegetables Green) */
.wd-btn-arrow,
.wd-btn-arrow.wd-prev,
.wd-btn-arrow.wd-next,
.wd-nav-arrows .wd-btn-arrow,
.owl-prev,
.owl-next,
[class*="wd-hover"] .wd-btn-arrow,
.wd-hover-1 .wd-btn-arrow,
.protecom-carousel-btn {
  border-radius: 50% !important;
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
  border: 1.5px solid #E2E8F0 !important;
  box-shadow: 0 4px 14px rgba(6, 43, 89, 0.08) !important;
  width: 42px !important;
  height: 42px !important;
  color: #087FD8 !important;
  transition: all 0.25s ease !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.wd-btn-arrow:before,
.wd-btn-arrow .wd-arrow-inner:before,
.wd-btn-arrow .wd-arrow-inner:after {
  border-color: #087FD8 !important;
}

.wd-btn-arrow:hover,
.wd-btn-arrow.wd-prev:hover,
.wd-btn-arrow.wd-next:hover,
.wd-nav-arrows .wd-btn-arrow:hover,
.owl-prev:hover,
.owl-next:hover,
[class*="wd-hover"] .wd-btn-arrow:hover,
.wd-hover-1 .wd-btn-arrow:hover,
.protecom-carousel-btn:hover {
  background: #0756B9 !important;
  background-color: #0756B9 !important;
  border-color: #0756B9 !important;
  color: #FFFFFF !important;
  transform: scale(1.08) !important;
  box-shadow: 0 6px 18px rgba(7, 86, 185, 0.3) !important;
}

.wd-btn-arrow:hover:before,
.wd-btn-arrow:hover .wd-arrow-inner:before,
.wd-btn-arrow:hover .wd-arrow-inner:after {
  border-color: #FFFFFF !important;
}

/* Eradicate any background with rgb(140, 188, 103) or green on buttons/arrows */
*[style*="140, 188, 103"],
*[style*="140,188,103"],
*[style*="#8cbc67"],
*[style*="#83b735"] {
  background-color: #0756B9 !important;
  border-color: #0756B9 !important;
  color: #FFFFFF !important;
}

/* Header Cart Icon (Remove Vegetables Green, Match reference.png) */
.whb-general-header .wd-header-cart a,
.whb-general-header .wd-header-cart .wd-tools-inner {
  background: rgba(7, 86, 185, 0.08) !important;
  border-radius: 50% !important;
  width: 44px !important;
  height: 44px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: all 0.25s ease !important;
}

.whb-general-header .wd-header-cart a:hover {
  background: #0756B9 !important;
  transform: translateY(-2px) !important;
}

.whb-general-header .wd-header-cart .wd-tools-icon {
  color: #0756B9 !important;
}

.whb-general-header .wd-header-cart a:hover .wd-tools-icon {
  color: #FFFFFF !important;
}

.whb-general-header .wd-header-cart .wd-cart-number {
  background: #087FD8 !important;
  color: #FFFFFF !important;
  font-weight: 700 !important;
}

/* Single Product Page WhatsApp Buttons - Pill Shape & Reference Pro Style */
.single-product a[href*="wa.me"],
.single-product a[href*="whatsapp"],
.single-product .whatsapp-button,
.product a[href*="wa.me"],
.product a[href*="whatsapp"] {
  border-radius: 50px !important;
  padding: 12px 28px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  box-shadow: 0 4px 14px rgba(37, 211, 102, 0.3) !important;
  transition: all 0.25s ease !important;
}

.single-product a[href*="wa.me"]:hover,
.single-product a[href*="whatsapp"]:hover,
.product a[href*="wa.me"]:hover,
.product a[href*="whatsapp"]:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 22px rgba(37, 211, 102, 0.45) !important;
}

/* ==========================================================================
   9. SHOP PAGE & PRODUCT GALLERY GRADIENT BORDER (Matching reference.png)
   ========================================================================== */
.product-grid-item .product-wrapper,
.product-grid-item .product-element-top,
.single-product .woocommerce-product-gallery,
.single-product .woocommerce-product-gallery__wrapper,
.single-product .woocommerce-product-gallery__image,
.woocommerce-product-gallery__image--placeholder,
.archive.woocommerce .product-grid-item .product-wrapper,
.archive.woocommerce .product-element-top {
  border-radius: 16px !important;
  border: 1.5px solid transparent !important;
  background: linear-gradient(#FFFFFF, #FFFFFF) padding-box, 
              linear-gradient(135deg, #13A9E8 0%, #087FD8 40%, rgba(7, 86, 185, 0.15) 100%) border-box !important;
  box-shadow: 0 4px 18px rgba(7, 86, 185, 0.08) !important;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
  overflow: hidden !important;
}

.product-grid-item .product-wrapper:hover,
.product-grid-item .product-element-top:hover,
.single-product .woocommerce-product-gallery__image:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 12px 30px rgba(19, 169, 232, 0.2) !important;
  background: linear-gradient(#FFFFFF, #FFFFFF) padding-box, 
              linear-gradient(135deg, #13A9E8 0%, #0756B9 100%) border-box !important;
}

/* 8. Pagination Pills */
.page-numbers li a,
.page-numbers li span {
  border-radius: 50px !important;
  border: 1.5px solid #E2E8F0 !important;
  padding: 8px 16px !important;
  font-weight: 700 !important;
  transition: all 0.2s ease !important;
}

.page-numbers li span.current,
.page-numbers li a:hover {
  background: #0756B9 !important;
  border-color: #0756B9 !important;
  color: #FFFFFF !important;
}
