/*
============================================================
ReByteLab – FINAL ADDITIONAL CSS
Theme: Envo One + WooCommerce + Complianz
Version: 2026-08-05

ΣΗΜΑΝΤΙΚΟ:
Αυτό το αρχείο ΔΕΝ περιέχει CSS για το header cart ή το mini-cart.
Όλη η εμφάνιση και λειτουργία του καλαθιού ανήκει αποκλειστικά στο:
"ReByteLab – Premium Cart Drawer" WPCode snippet.
============================================================
*/

/* =========================================================
   1. DESIGN TOKENS / BASE
   ========================================================= */
:root {
  --rbl-blue: #2459d8;
  --rbl-blue-dark: #184dbb;
  --rbl-indigo: #4338ff;
  --rbl-navy: #0b1d3a;
  --rbl-ink: #020617;
  --rbl-text: #273248;
  --rbl-muted: #68748b;
  --rbl-soft: #f4f7fd;
  --rbl-soft-blue: #edf3ff;
  --rbl-line: #dce6f8;
  --rbl-white: #ffffff;
}

html {
  scroll-behavior: smooth;
}

body {
  background: #f8fafc;
  color: var(--rbl-ink);
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
}

.site-content,
.content-area,
.entry-content {
  max-width: 1180px;
  margin-left: auto;
  margin-right: auto;
}

.entry-content {
  padding-left: 18px;
  padding-right: 18px;
}

.entry-content section {
  box-sizing: border-box;
  margin-left: auto;
  margin-right: auto;
}

.entry-content a {
  transition: color 0.2s ease, background-color 0.2s ease, opacity 0.2s ease, transform 0.2s ease;
}

.entry-content a:hover {
  opacity: 0.94;
}

body.home .entry-header,
body.home .page-header,
body.home h1.entry-title,
body.home .entry-title,
body.home .page-title,
.page .entry-title {
  display: none !important;
}

/* =========================================================
   2. HEADER / LOGO / SEARCH
   ========================================================= */
.site-header,
.header-main,
.header-wrapper {
  border-bottom: 1px solid #e5e7eb;
}

.home .site-header {
  padding: 16px 0 !important;
}

.site-branding {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto !important;
  text-align: center !important;
}

.custom-logo-link img,
.site-branding img,
img.custom-logo {
  display: block;
  width: auto !important;
  height: auto !important;
  max-height: 72px !important;
}

.site-title,
.site-description {
  display: none !important;
}

.header-search select,
.site-header select,
.woocommerce-product-search select,
select[name="product_cat"] {
  display: none !important;
}

.header-search input[type="search"],
.site-header input[type="search"],
.woocommerce-product-search input[type="search"] {
  width: 100% !important;
}

/* Μόνο τα πραγματικά κουμπιά αναζήτησης */
.site-header .header-search button,
.site-header .header-search input[type="submit"],
.site-header .search-submit,
.site-header .woocommerce-product-search button,
.site-header .woocommerce-product-search input[type="submit"],
.site-header form[role="search"] button,
.site-header .aws-search-btn,
.site-header .aws-form-btn,
.header-search button,
.header-search input[type="submit"],
.woocommerce-product-search button,
.woocommerce-product-search input[type="submit"],
.search-form button,
.search-form input[type="submit"] {
  color: var(--rbl-white) !important;
  background: linear-gradient(135deg, var(--rbl-blue), var(--rbl-indigo)) !important;
  background-color: var(--rbl-blue) !important;
  border-color: var(--rbl-blue) !important;
  box-shadow: none !important;
}

.site-header .header-search button:hover,
.site-header .header-search input[type="submit"]:hover,
.site-header .search-submit:hover,
.site-header .woocommerce-product-search button:hover,
.site-header .woocommerce-product-search input[type="submit"]:hover,
.site-header form[role="search"] button:hover,
.site-header .aws-search-btn:hover,
.site-header .aws-form-btn:hover,
.header-search button:hover,
.header-search input[type="submit"]:hover,
.woocommerce-product-search button:hover,
.woocommerce-product-search input[type="submit"]:hover,
.search-form button:hover,
.search-form input[type="submit"]:hover {
  background: linear-gradient(135deg, var(--rbl-blue-dark), #3028d8) !important;
  background-color: var(--rbl-blue-dark) !important;
  border-color: var(--rbl-blue-dark) !important;
}

/* =========================================================
   3. TYPOGRAPHY / LEGACY HELPERS
   ========================================================= */
.rebyte-coming-soon,
.rebyte-coming-soon * {
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
}

.rebyte-wordmark {
  color: var(--rbl-ink) !important;
  font-size: clamp(48px, 7vw, 82px) !important;
  line-height: 0.95 !important;
  font-weight: 950 !important;
  letter-spacing: -0.045em !important;
}

.rebyte-wordmark .blue {
  color: #2563eb !important;
  font-weight: 950 !important;
}

.rebyte-subtitle {
  color: #0f172a !important;
  font-weight: 850 !important;
  letter-spacing: -0.015em !important;
}

.rebyte-label {
  font-weight: 900 !important;
  letter-spacing: 0.24em !important;
}

.rebyte-card strong {
  font-weight: 850 !important;
}

/* =========================================================
   4. WOOCOMMERCE PRODUCT GRID
   ========================================================= */
.woocommerce ul.products,
.woocommerce-page ul.products {
  display: grid !important;
  gap: 18px !important;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
  overflow: hidden;
  padding: 18px !important;
  background: var(--rbl-white);
  border: 1px solid #e5e7eb;
  border-radius: 22px;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.woocommerce ul.products li.product:hover,
.woocommerce-page ul.products li.product:hover {
  transform: translateY(-3px);
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.08);
}

.woocommerce ul.products li.product-category img,
.woocommerce ul.products li.product img,
.woocommerce-page ul.products li.product img {
  background: #f1f5f9;
  border-radius: 18px;
}

.woocommerce ul.products li.product-category h2,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title {
  color: var(--rbl-ink) !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  text-align: center;
}

.woocommerce ul.products li.product .price,
.woocommerce-page ul.products li.product .price {
  color: var(--rbl-ink) !important;
  font-size: 18px !important;
  font-weight: 900 !important;
}

/* Sale χωρίς κόκκινο */
.woocommerce span.onsale {
  color: var(--rbl-white) !important;
  background: linear-gradient(135deg, var(--rbl-blue), var(--rbl-indigo)) !important;
  border-radius: 9px !important;
  box-shadow: 0 7px 18px rgba(36, 89, 216, 0.22) !important;
  font-weight: 900 !important;
}

/* Βασικά WooCommerce buttons */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
  padding: 12px 18px !important;
  color: var(--rbl-white) !important;
  background: var(--rbl-navy) !important;
  border-radius: 14px !important;
  font-weight: 900 !important;
  transition: color 0.2s ease, background-color 0.2s ease, transform 0.2s ease !important;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover {
  color: var(--rbl-white) !important;
  background: var(--rbl-blue) !important;
  transform: translateY(-1px);
}

/* View cart μετά από Add to cart */
.woocommerce a.added_to_cart,
.woocommerce-page a.added_to_cart,
a.added_to_cart.wc-forward {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-top: 8px !important;
  padding: 8px 12px !important;
  color: var(--rbl-blue-dark) !important;
  background: var(--rbl-soft-blue) !important;
  border: 1px solid #c9d9fb !important;
  border-radius: 10px !important;
  text-decoration: none !important;
  font-weight: 850 !important;
}

.woocommerce a.added_to_cart:hover,
.woocommerce-page a.added_to_cart:hover,
a.added_to_cart.wc-forward:hover {
  color: var(--rbl-white) !important;
  background: var(--rbl-navy) !important;
  border-color: var(--rbl-navy) !important;
}

/* =========================================================
   5. SINGLE PRODUCT
   ========================================================= */
.single-product div.product {
  padding: 28px;
  background: var(--rbl-white);
  border: 1px solid #e5e7eb;
  border-radius: 28px;
  box-shadow: 0 10px 35px rgba(15, 23, 42, 0.04);
}

.single-product .product_title {
  color: var(--rbl-ink);
  font-weight: 900;
}

.single-product .summary .price {
  color: var(--rbl-ink) !important;
  font-size: 26px !important;
  font-weight: 900 !important;
}

/* =========================================================
   6. CART PAGE – ΧΩΡΙΣ ΚΟΚΚΙΝΑ
   ========================================================= */
body.woocommerce-cart table.shop_table .product-name a,
body.woocommerce-cart .woocommerce-cart-form .product-name a,
body.woocommerce-cart .wc-block-cart-item__product a,
body.woocommerce-cart .wc-block-components-product-name,
body.woocommerce-cart a.wc-block-components-product-name {
  color: var(--rbl-navy) !important;
  text-decoration: none !important;
  font-weight: 850 !important;
}

body.woocommerce-cart table.shop_table .product-name a:hover,
body.woocommerce-cart .woocommerce-cart-form .product-name a:hover,
body.woocommerce-cart .wc-block-cart-item__product a:hover,
body.woocommerce-cart .wc-block-components-product-name:hover {
  color: var(--rbl-blue) !important;
}

body.woocommerce-cart a.remove,
body.woocommerce-cart .product-remove a,
body.woocommerce-cart .wc-block-cart-item__remove-link,
body.woocommerce-cart button.wc-block-cart-item__remove-link {
  display: inline-grid !important;
  place-items: center !important;
  width: 30px !important;
  min-width: 30px !important;
  height: 30px !important;
  padding: 0 !important;
  color: var(--rbl-muted) !important;
  background: #edf2fb !important;
  border: 1px solid #d5dff0 !important;
  border-radius: 50% !important;
  box-shadow: none !important;
  font-size: 20px !important;
  line-height: 1 !important;
  text-decoration: none !important;
  transition: color 0.2s ease, background-color 0.2s ease, border-color 0.2s ease, transform 0.2s ease !important;
}

body.woocommerce-cart a.remove:hover,
body.woocommerce-cart .product-remove a:hover,
body.woocommerce-cart .wc-block-cart-item__remove-link:hover,
body.woocommerce-cart button.wc-block-cart-item__remove-link:hover {
  color: var(--rbl-white) !important;
  background: var(--rbl-navy) !important;
  border-color: var(--rbl-navy) !important;
  transform: rotate(90deg);
}

body.woocommerce-cart .shipping-calculator-button,
body.woocommerce-cart a.shipping-calculator-button,
body.woocommerce-cart .woocommerce-shipping-calculator a,
body.woocommerce-cart .wc-block-components-totals-shipping__change-address__link,
body.woocommerce-cart .wc-block-components-address-card__edit {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 7px 11px !important;
  color: var(--rbl-blue-dark) !important;
  background: var(--rbl-soft-blue) !important;
  border: 1px solid #c9d9fb !important;
  border-radius: 9px !important;
  text-decoration: none !important;
  font-weight: 800 !important;
}

body.woocommerce-cart .shipping-calculator-button:hover,
body.woocommerce-cart a.shipping-calculator-button:hover,
body.woocommerce-cart .woocommerce-shipping-calculator a:hover,
body.woocommerce-cart .wc-block-components-totals-shipping__change-address__link:hover,
body.woocommerce-cart .wc-block-components-address-card__edit:hover {
  color: var(--rbl-white) !important;
  background: var(--rbl-navy) !important;
  border-color: var(--rbl-navy) !important;
}

body.woocommerce-cart .coupon button,
body.woocommerce-cart .coupon .button,
body.woocommerce-cart button[name="apply_coupon"],
body.woocommerce-cart button[name="update_cart"] {
  color: var(--rbl-white) !important;
  background: var(--rbl-navy) !important;
  border-color: var(--rbl-navy) !important;
  border-radius: 11px !important;
}

body.woocommerce-cart .coupon button:hover,
body.woocommerce-cart .coupon .button:hover,
body.woocommerce-cart button[name="apply_coupon"]:hover,
body.woocommerce-cart button[name="update_cart"]:hover {
  background: var(--rbl-blue) !important;
  border-color: var(--rbl-blue) !important;
}

body.woocommerce-cart .cart_totals a:not(.checkout-button):not(.remove),
body.woocommerce-cart .woocommerce-cart-form a:not(.remove):not(.button),
body.woocommerce-cart .wc-block-cart a:not(.wc-block-components-button):not(.wc-block-cart-item__remove-link) {
  color: var(--rbl-blue-dark) !important;
}

body.woocommerce-cart .checkout-button,
body.woocommerce-cart a.checkout-button,
body.woocommerce-cart .wc-block-cart__submit-button {
  color: var(--rbl-white) !important;
  background: linear-gradient(135deg, var(--rbl-blue), var(--rbl-indigo)) !important;
  border-color: transparent !important;
  border-radius: 12px !important;
  box-shadow: 0 9px 20px rgba(36, 89, 216, 0.22) !important;
}

body.woocommerce-cart .checkout-button:hover,
body.woocommerce-cart a.checkout-button:hover,
body.woocommerce-cart .wc-block-cart__submit-button:hover {
  background: linear-gradient(135deg, var(--rbl-blue-dark), #3028d8) !important;
}

/* =========================================================
   7. MY ACCOUNT – ΧΩΡΙΣ ΚΟΚΚΙΝΑ
   ========================================================= */
.woocommerce-account .woocommerce-LostPassword a,
.woocommerce-account .woocommerce-privacy-policy-link,
.woocommerce-account .woocommerce-form-register p a,
.woocommerce-account .woocommerce-form-login p a:not(.button) {
  color: var(--rbl-blue-dark) !important;
  text-decoration-color: rgba(36, 89, 216, 0.45) !important;
  font-weight: 750 !important;
}

.woocommerce-account .woocommerce-LostPassword a:hover,
.woocommerce-account .woocommerce-privacy-policy-link:hover,
.woocommerce-account .woocommerce-form-register p a:hover,
.woocommerce-account .woocommerce-form-login p a:not(.button):hover {
  color: var(--rbl-navy) !important;
}

/* Τα πραγματικά errors και τα required αστεράκια παραμένουν ανέπαφα */

/* =========================================================
   8. DEFAULT WIDGETS
   ========================================================= */
.widget_search,
.widget_recent_entries,
.widget_recent_comments,
.widget_archive,
.widget_categories,
.widget_meta {
  display: none !important;
}

/* =========================================================
   9. FOOTER / ESPA
   ========================================================= */
.footer-section {
  position: relative !important;
  min-height: 410px !important;
  padding-top: 24px !important;
  padding-bottom: 24px !important;
  overflow: visible !important;
  color: var(--rbl-white) !important;
  background: #808080 !important;
  text-align: center !important;
}

/* Default Envo footer credits */
footer#colophon,
#colophon.site-footer {
  display: none !important;
}

footer a,
.site-footer a,
.footer-widgets a,
.footer-credits a,
#colophon a {
  color: var(--rbl-white) !important;
  text-decoration: none !important;
}

footer a:hover,
.site-footer a:hover,
.footer-widgets a:hover,
.footer-credits a:hover,
#colophon a:hover {
  color: #8ec5ff !important;
}

.footer-section .widget,
.footer-section .widget_block,
.footer-section .wp-block-widget,
.footer-section .wp-block-html,
.footer-section .wp-block-group,
.footer-section .wp-block-columns,
.footer-section .wp-block-column {
  position: static !important;
  display: block !important;
  clear: both !important;
  flex: 0 0 100% !important;
  width: 100% !important;
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

.footer-section .widget-title,
.footer-section h2,
.footer-section h3 {
  color: var(--rbl-white) !important;
  text-align: center !important;
}

.rebytelab-espa-footer {
  position: absolute !important;
  z-index: 3 !important;
  top: 74px !important;
  left: 50% !important;
  width: min(1280px, calc(100vw - 80px)) !important;
  max-width: min(1280px, calc(100vw - 80px)) !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  transform: translateX(-50%) !important;
  text-align: center !important;
}

.rebytelab-espa-footer img,
.rebytelab-global-espa-footer img {
  display: block !important;
  width: 100% !important;
  max-width: 1280px;
  height: auto !important;
  margin: 0 auto !important;
  background: var(--rbl-white) !important;
  border-radius: 16px !important;
  box-shadow: 0 14px 36px rgba(0, 0, 0, 0.24) !important;
}

.rebytelab-global-espa-footer {
  width: 100%;
  padding: 36px 32px 38px;
  box-sizing: border-box;
  background: #808080;
  text-align: center;
}

.edit-link {
  display: none !important;
}

/* =========================================================
   10. LEGACY CONTACT PAGE COMPATIBILITY
   ========================================================= */
.rebyte-contact-page {
  max-width: 1080px;
  margin: 0 auto;
  padding: 48px 18px 70px;
}

.rebyte-contact-hero {
  margin-bottom: 32px;
  padding: 44px 38px;
  color: var(--rbl-white);
  background: var(--rbl-ink);
  border-radius: 26px;
  box-shadow: 0 18px 45px rgba(2, 6, 23, 0.14);
}

.rebyte-contact-hero span {
  display: inline-block;
  margin-bottom: 14px;
  color: #6b8cff;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 0.18em;
}

.rebyte-contact-hero h1 {
  margin: 0 0 16px;
  color: var(--rbl-white);
  font-size: clamp(30px, 4vw, 48px);
  line-height: 1.08;
  font-weight: 950;
}

.rebyte-contact-hero p {
  max-width: 760px;
  margin: 0;
  color: #dbe4ff;
  font-size: 17px;
  line-height: 1.7;
}

.rebyte-contact-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
}

.rebyte-contact-card,
.rebyte-contact-note {
  padding: 30px;
  background: var(--rbl-white);
  border: 1px solid #e5e7eb;
  border-radius: 24px;
  box-shadow: 0 10px 30px rgba(15, 23, 42, 0.05);
}

.rebyte-contact-card h2,
.rebyte-contact-note h2 {
  margin: 0 0 20px;
  color: var(--rbl-ink);
  font-size: 28px;
  font-weight: 950;
}

.rebyte-contact-item {
  margin-bottom: 14px;
  padding: 18px;
  background: #f8fafc;
  border: 1px solid #e5e7eb;
  border-radius: 16px;
}

.rebyte-contact-item strong {
  display: block;
  margin-bottom: 8px;
  color: var(--rbl-ink);
  font-size: 15px;
  font-weight: 900;
}

.rebyte-contact-item p,
.rebyte-contact-card p,
.rebyte-contact-note p {
  margin: 0;
  color: #475569;
  font-size: 15px;
  line-height: 1.7;
}

.rebyte-contact-item a {
  color: #2563eb;
  font-size: 16px;
  font-weight: 900;
  text-decoration: none;
}

.rebyte-contact-card ul {
  margin: 18px 0 24px;
  padding-left: 20px;
  color: #475569;
  line-height: 1.8;
}

.rebyte-contact-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 13px 20px;
  color: var(--rbl-white) !important;
  background: var(--rbl-ink);
  border-radius: 14px;
  box-shadow: 0 10px 24px rgba(2, 6, 23, 0.18);
  font-weight: 900;
  text-decoration: none !important;
}

.rebyte-contact-button:hover {
  color: var(--rbl-white) !important;
  background: #2563eb;
}

.rebyte-contact-note {
  margin-top: 24px;
  text-align: center;
}

.rebyte-contact-note p {
  max-width: 780px;
  margin: 0 auto;
}

/* =========================================================
   11. COMPLIANZ
   ========================================================= */
.cmplz-cookiebanner {
  padding: 22px !important;
  color: var(--rbl-text) !important;
  background: var(--rbl-white) !important;
  border: 1px solid var(--rbl-line) !important;
  border-radius: 22px !important;
  box-shadow: 0 18px 55px rgba(5, 27, 64, 0.24) !important;
  font-family: inherit !important;
}

.cmplz-cookiebanner .cmplz-title {
  color: var(--rbl-navy) !important;
  font-size: 1.18rem !important;
  font-weight: 800 !important;
}

.cmplz-cookiebanner .cmplz-message {
  color: #46536c !important;
  line-height: 1.55 !important;
}

.cmplz-cookiebanner .cmplz-buttons {
  gap: 10px !important;
}

.cmplz-cookiebanner .cmplz-btn {
  min-height: 46px !important;
  padding: 11px 16px !important;
  border: 2px solid transparent !important;
  border-radius: 12px !important;
  box-shadow: none !important;
  font-size: 0.94rem !important;
  font-weight: 800 !important;
}

.cmplz-cookiebanner .cmplz-accept {
  color: var(--rbl-white) !important;
  background: var(--rbl-blue) !important;
  border-color: var(--rbl-blue) !important;
}

.cmplz-cookiebanner .cmplz-deny {
  color: var(--rbl-white) !important;
  background: var(--rbl-navy) !important;
  border-color: var(--rbl-navy) !important;
}

.cmplz-cookiebanner .cmplz-view-preferences,
.cmplz-cookiebanner .cmplz-save-preferences {
  color: var(--rbl-blue-dark) !important;
  background: var(--rbl-white) !important;
  border-color: var(--rbl-blue) !important;
}

.cmplz-cookiebanner .cmplz-link {
  color: var(--rbl-blue-dark) !important;
  font-weight: 700 !important;
}

.cmplz-cookiebanner .cmplz-category {
  background: #f6f9ff !important;
  border: 1px solid var(--rbl-line) !important;
  border-radius: 12px !important;
}

.cmplz-cookiebanner .cmplz-always-active {
  color: var(--rbl-blue-dark) !important;
}

/* =========================================================
   12. RESPONSIVE
   ========================================================= */
@media (min-width: 901px) and (max-width: 1200px) {
  .entry-content section div[style*="grid-template-columns:repeat(4"] {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .rebytelab-espa-footer {
    width: min(1080px, calc(100vw - 60px)) !important;
    max-width: min(1080px, calc(100vw - 60px)) !important;
  }
}

@media (max-width: 900px) {
  .site-content,
  .content-area,
  .entry-content {
    max-width: 100%;
  }

  .entry-content {
    padding-left: 14px;
    padding-right: 14px;
  }

  .entry-content section {
    padding: 24px !important;
    border-radius: 22px !important;
  }

  .entry-content section h2 {
    font-size: 25px !important;
    line-height: 1.2 !important;
  }

  .entry-content section h3 {
    font-size: 18px !important;
  }

  .entry-content section p {
    font-size: 14px !important;
  }

  .entry-content section div[style*="grid-template-columns:repeat(3"],
  .entry-content section div[style*="grid-template-columns:repeat(4"],
  .entry-content section div[style*="grid-template-columns:1.2fr"],
  .entry-content section div[style*="grid-template-columns:1fr"] {
    grid-template-columns: 1fr !important;
  }

  .entry-content div[style*="display:flex"] {
    gap: 8px !important;
  }

  .entry-content a[style*="display:inline-block"] {
    width: auto;
    margin-bottom: 6px;
  }

  .woocommerce ul.products,
  .woocommerce-page ul.products {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  .single-product div.product {
    padding: 18px;
    border-radius: 22px;
  }

  .custom-logo-link img,
  .site-branding img,
  img.custom-logo {
    max-height: 58px !important;
  }

  .footer-section {
    min-height: 250px !important;
  }

  .rebytelab-espa-footer {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    margin: 22px auto 28px !important;
    transform: none !important;
  }

  .rebytelab-espa-footer img,
  .rebytelab-global-espa-footer img {
    border-radius: 10px !important;
  }
}

@media (max-width: 768px) {
  .rebytelab-global-espa-footer {
    padding: 22px 12px 28px;
  }

  .rebyte-contact-page {
    padding: 34px 14px 50px;
  }

  .rebyte-contact-hero {
    padding: 32px 22px;
    border-radius: 22px;
  }

  .rebyte-contact-grid {
    grid-template-columns: 1fr;
  }

  .rebyte-contact-card,
  .rebyte-contact-note {
    padding: 22px;
    border-radius: 20px;
  }

  .rebyte-contact-card h2,
  .rebyte-contact-note h2 {
    font-size: 24px;
  }
}

@media (max-width: 480px) {
  .cmplz-cookiebanner {
    padding: 17px !important;
    border-radius: 18px !important;
  }

  .cmplz-cookiebanner .cmplz-buttons {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }

  .cmplz-cookiebanner .cmplz-btn {
    width: 100% !important;
  }
}


/* =========================================================
   15. PREMIUM V3 OVERRIDES – WHOLE SITE POLISH
   ========================================================= */
:root {
  --rbl-radius-sm: 14px;
  --rbl-radius-md: 18px;
  --rbl-radius-lg: 24px;
  --rbl-shadow-sm: 0 10px 22px rgba(11, 29, 58, 0.05);
  --rbl-shadow-md: 0 18px 46px rgba(11, 29, 58, 0.08);
}

html, body {
  overflow-x: hidden;
}

body {
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
  color: var(--rbl-text);
  line-height: 1.65;
}

h1, h2, h3, h4, h5, h6,
.entry-content h1, .entry-content h2, .entry-content h3,
.woocommerce h1, .woocommerce h2, .woocommerce h3,
.page-title, .entry-title,
.site-title {
  font-family: Sora, Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  letter-spacing: -0.03em;
  color: var(--rbl-navy);
}

.site-content,
.content-area,
.entry-content,
.container,
.woocommerce-page .site-content {
  max-width: 1240px;
}

.site-main,
.entry-content,
.woocommerce-page .site-main {
  padding-bottom: 22px;
}

/* --- Header spacing and alignment --- */
.site-header,
.header-main,
.header-wrapper {
  background: rgba(255,255,255,.94);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.site-header .container,
.header-main .container,
.header-wrapper .container {
  position: relative;
}

.home .site-header,
.site-header {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

.site-branding {
  margin-bottom: 12px !important;
}

.custom-logo-link img,
.site-branding img,
img.custom-logo {
  max-height: 82px !important;
}

.header-search,
.header-search form,
form.woocommerce-product-search,
.site-header form[role="search"] {
  max-width: 1060px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.header-search input[type="search"],
.site-header input[type="search"],
.woocommerce-product-search input[type="search"],
form[role="search"] input[type="search"] {
  height: 58px !important;
  padding-left: 22px !important;
  padding-right: 72px !important;
  border-radius: 18px !important;
  border: 1.5px solid #ced8eb !important;
  background: linear-gradient(180deg, #fff, #fbfcff) !important;
  box-shadow: 0 8px 28px rgba(11,29,58,.04) !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  color: var(--rbl-navy) !important;
}

.header-search button,
.site-header .header-search button,
.woocommerce-product-search button,
form[role="search"] button,
.search-submit {
  width: 58px !important;
  height: 58px !important;
  border-radius: 18px !important;
  border: 0 !important;
  background: linear-gradient(135deg, var(--rbl-blue), var(--rbl-indigo)) !important;
  box-shadow: 0 14px 30px rgba(36,89,216,.22) !important;
}

/* Ensure account/cart area breathes better */
.site-header .header-right,
.site-header .header-icons,
.site-header .site-tools,
.site-header .header-actions,
.site-header .menu-right {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 10px !important;
}

/* Main nav premium look */
.main-menu, .navbar-nav, .primary-menu, .site-header .menu {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 6px;
}

.main-navigation,
.navbar,
.site-header nav,
.menu-main-menu-container {
  margin-top: 14px !important;
}

.main-navigation a,
.navbar-nav > li > a,
.site-header .menu > li > a,
.main-menu > li > a {
  font-family: Inter, sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #4b5568 !important;
  padding: 12px 18px !important;
  border-radius: 999px !important;
  transition: all .2s ease !important;
}

.main-navigation a:hover,
.navbar-nav > li > a:hover,
.site-header .menu > li > a:hover,
.main-menu > li > a:hover,
.current-menu-item > a,
.current_page_item > a,
.current-menu-ancestor > a {
  color: var(--rbl-navy) !important;
  background: #eef4ff !important;
  box-shadow: inset 0 0 0 1px #d5e1fb;
}

/* Content cards */
.entry-content section,
.woocommerce-page .site-main > .woocommerce,
.woocommerce-page .woocommerce-notices-wrapper + .woocommerce,
.page .site-main > article,
.archive .site-main > article,
.search .site-main > article {
  border-radius: var(--rbl-radius-lg);
}

/* Shop/category/archive cards */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
.product-category,
.product.type-product,
.products .product {
  background: linear-gradient(180deg, #ffffff, #fbfcff) !important;
  border: 1px solid #dce6f8 !important;
  border-radius: 22px !important;
  box-shadow: var(--rbl-shadow-sm) !important;
  overflow: hidden !important;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease !important;
}

.woocommerce ul.products li.product:hover,
.woocommerce-page ul.products li.product:hover,
.products .product:hover {
  transform: translateY(-4px);
  border-color: #c7d6f6 !important;
  box-shadow: var(--rbl-shadow-md) !important;
}

.woocommerce ul.products li.product .woocommerce-loop-category__title,
.woocommerce ul.products li.product h2,
.woocommerce ul.products li.product h3,
.products .product h2,
.products .product h3 {
  font-family: Sora, Inter, sans-serif !important;
  color: var(--rbl-navy) !important;
  font-size: 20px !important;
  font-weight: 750 !important;
  line-height: 1.3 !important;
}

.woocommerce ul.products li.product .price,
.products .product .price {
  color: var(--rbl-blue-dark) !important;
  font-size: 20px !important;
  font-weight: 900 !important;
}

.woocommerce ul.products li.product a.button,
.woocommerce ul.products li.product .added_to_cart,
.woocommerce-page ul.products li.product a.button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
  border-radius: 14px !important;
  font-weight: 800 !important;
  letter-spacing: -.01em;
}

/* My account / login / checkout / cart forms */
.woocommerce-account .woocommerce,
.woocommerce-cart .woocommerce,
.woocommerce-checkout .woocommerce,
.woocommerce form.login,
.woocommerce form.register,
.woocommerce form.checkout_coupon,
.woocommerce .cart-collaterals .cart_totals,
.woocommerce-page .woocommerce-cart-form,
.woocommerce-page .woocommerce-checkout-review-order,
.woocommerce-page .woocommerce-MyAccount-content {
  background: linear-gradient(180deg, #fff, #fbfcff) !important;
  border: 1px solid #dce6f8 !important;
  border-radius: 24px !important;
  box-shadow: var(--rbl-shadow-sm) !important;
}

.woocommerce form.login,
.woocommerce form.register,
.woocommerce-page .woocommerce-cart-form,
.woocommerce .cart-collaterals .cart_totals,
.woocommerce-page .woocommerce-checkout-review-order,
.woocommerce-page .woocommerce-MyAccount-content {
  padding: 24px !important;
}

.woocommerce-page .woocommerce-cart-form,
.woocommerce .cart-collaterals .cart_totals {
  margin-bottom: 24px !important;
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--multiple,
.woocommerce-page table.cart td.actions .coupon input,
.woocommerce-page .quantity .qty {
  min-height: 50px !important;
  border-radius: 14px !important;
  border: 1.5px solid #d7e3f6 !important;
  background: #fff !important;
  box-shadow: inset 0 1px 2px rgba(11,29,58,.02) !important;
  color: var(--rbl-navy) !important;
  font-size: 15px !important;
}

.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.select2-container--default.select2-container--focus .select2-selection--single,
.select2-container--default.select2-container--focus .select2-selection--multiple,
.woocommerce-page table.cart td.actions .coupon input:focus {
  border-color: #7ca6ff !important;
  box-shadow: 0 0 0 4px rgba(67,56,255,.10) !important;
  outline: none !important;
}

.woocommerce table.shop_table,
.woocommerce-page table.shop_table {
  border-collapse: separate !important;
  border-spacing: 0 !important;
  border: 1px solid #dbe6f8 !important;
  border-radius: 18px !important;
  overflow: hidden !important;
}

.woocommerce table.shop_table th,
.woocommerce-page table.shop_table th {
  background: #f6f9ff !important;
  color: var(--rbl-navy) !important;
  font-weight: 800 !important;
}

.woocommerce table.shop_table td,
.woocommerce-page table.shop_table td {
  border-top: 1px solid #e8eef9 !important;
  vertical-align: middle !important;
}

.woocommerce .cart-collaterals .cart_totals h2,
.woocommerce-page .cart-collaterals .cart_totals h2,
.woocommerce-account .woocommerce-MyAccount-content h2,
.woocommerce-account .woocommerce-MyAccount-content h3 {
  font-size: 32px !important;
  font-weight: 800 !important;
}

/* Remove remaining red accents site-wide */
a,
.entry-content a,
.woocommerce a,
.woocommerce-page a,
.woocommerce ul.cart_list li a,
.woocommerce ul.product_list_widget li a,
.woocommerce-page ul.product_list_widget li a {
  color: var(--rbl-blue) !important;
}

a:hover,
.entry-content a:hover,
.woocommerce a:hover,
.woocommerce-page a:hover {
  color: var(--rbl-blue-dark) !important;
}

.woocommerce span.onsale,
.woocommerce-page span.onsale {
  background: linear-gradient(135deg, var(--rbl-blue), var(--rbl-indigo)) !important;
  color: #fff !important;
  border-radius: 999px !important;
  padding: 6px 10px !important;
  font-weight: 800 !important;
  box-shadow: 0 10px 22px rgba(36,89,216,.18) !important;
}

/* Footer alignment */
.rebytelab-footer-inner,
.rebytelab-custom-footer-links .rebytelab-footer-inner {
  align-items: flex-start !important;
}

.rebytelab-footer-column h3 {
  font-family: Sora, Inter, sans-serif !important;
  letter-spacing: -0.02em;
}

/* Mobile tidy up */
@media (max-width: 992px) {
  .site-branding {
    margin-bottom: 10px !important;
  }

  .custom-logo-link img,
  .site-branding img,
  img.custom-logo {
    max-height: 70px !important;
  }

  .header-search input[type="search"],
  .site-header input[type="search"],
  .woocommerce-product-search input[type="search"],
  form[role="search"] input[type="search"] {
    height: 54px !important;
    font-size: 16px !important;
  }

  .header-search button,
  .site-header .header-search button,
  .woocommerce-product-search button,
  form[role="search"] button,
  .search-submit {
    width: 54px !important;
    height: 54px !important;
  }

  .main-navigation a,
  .navbar-nav > li > a,
  .site-header .menu > li > a,
  .main-menu > li > a {
    padding: 10px 14px !important;
  }
}

@media (max-width: 768px) {
  .woocommerce form.login,
  .woocommerce form.register,
  .woocommerce-page .woocommerce-cart-form,
  .woocommerce .cart-collaterals .cart_totals,
  .woocommerce-page .woocommerce-checkout-review-order,
  .woocommerce-page .woocommerce-MyAccount-content {
    padding: 18px !important;
    border-radius: 20px !important;
  }

  .woocommerce .cart-collaterals .cart_totals h2,
  .woocommerce-page .cart-collaterals .cart_totals h2,
  .woocommerce-account .woocommerce-MyAccount-content h2,
  .woocommerce-account .woocommerce-MyAccount-content h3 {
    font-size: 26px !important;
  }
}


/* =========================================================
   ReByteLab v5 – PREMIUM HEADER REBUILD
   Logo/actions top row; search has its own full row below.
   ========================================================= */

:root {
  --rbl-v5-header-width: 1180px;
  --rbl-v5-navy: #0b1d3a;
  --rbl-v5-blue: #2459d8;
  --rbl-v5-indigo: #4338ff;
  --rbl-v5-line: #dce6f8;
}

body {
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
}

h1, h2, h3, h4, h5, h6,
.entry-content h1,
.entry-content h2,
.entry-content h3,
.woocommerce h1,
.woocommerce h2,
.woocommerce h3 {
  font-family: Sora, Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  letter-spacing: -0.035em;
}

.rbl-premium-header-v5,
.rbl-premium-header-v5 .header-main,
.rbl-premium-header-v5 .header-wrapper {
  overflow: visible !important;
  background: rgba(255, 255, 255, 0.97) !important;
  border-bottom: 1px solid #e7edf7 !important;
  box-shadow: 0 8px 30px rgba(11, 29, 58, 0.035) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
}

.rbl-header-shell-v5 {
  position: relative !important;
  width: min(var(--rbl-v5-header-width), calc(100% - 40px)) !important;
  max-width: var(--rbl-v5-header-width) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-top: 15px !important;
  padding-bottom: 14px !important;
  box-sizing: border-box !important;
  overflow: visible !important;
}

.rbl-header-brand-v5,
.rbl-header-shell-v5 .site-branding {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: calc(100% - 230px) !important;
  min-height: 72px !important;
  margin: 0 0 12px !important;
  padding: 0 !important;
  text-align: left !important;
}

.rbl-header-brand-v5.custom-logo-link {
  display: inline-flex !important;
  width: auto !important;
}

.rbl-header-shell-v5 .custom-logo-link img,
.rbl-header-shell-v5 .site-branding img,
.rbl-header-shell-v5 img.custom-logo {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: min(340px, 100%) !important;
  max-height: 76px !important;
  margin: 0 !important;
}

/* The search is never used as a parent of account/cart in v5 */
.rbl-header-search-v5,
.rbl-header-shell-v5 .header-search,
.rbl-header-shell-v5 form.woocommerce-product-search,
.rbl-header-shell-v5 .woocommerce-product-search,
.rbl-header-shell-v5 form[role="search"],
.rbl-header-shell-v5 .search-form {
  position: relative !important;
  z-index: 5 !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

.rbl-header-shell-v5 input[type="search"],
.rbl-header-shell-v5 .woocommerce-product-search input[type="search"],
.rbl-header-shell-v5 form[role="search"] input[type="search"] {
  display: block !important;
  width: 100% !important;
  height: 56px !important;
  margin: 0 !important;
  padding: 0 76px 0 20px !important;
  color: var(--rbl-v5-navy) !important;
  background: linear-gradient(180deg, #ffffff, #fbfcff) !important;
  border: 1.5px solid #cedaee !important;
  border-radius: 17px !important;
  box-shadow: 0 9px 25px rgba(11, 29, 58, 0.045) !important;
  font-size: 16px !important;
  line-height: 1 !important;
  font-weight: 600 !important;
  outline: none !important;
  box-sizing: border-box !important;
}

.rbl-header-shell-v5 input[type="search"]:focus,
.rbl-header-shell-v5 .woocommerce-product-search input[type="search"]:focus {
  border-color: #89aaf1 !important;
  box-shadow:
    0 0 0 4px rgba(36, 89, 216, 0.09),
    0 12px 30px rgba(11, 29, 58, 0.06) !important;
}

.rbl-header-shell-v5 .header-search button,
.rbl-header-shell-v5 .woocommerce-product-search button,
.rbl-header-shell-v5 form[role="search"] button,
.rbl-header-shell-v5 .search-submit,
.rbl-header-shell-v5 input[type="submit"] {
  position: absolute !important;
  z-index: 3 !important;
  top: 4px !important;
  right: 4px !important;
  display: grid !important;
  place-items: center !important;
  width: 48px !important;
  height: 48px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #ffffff !important;
  background: linear-gradient(135deg, var(--rbl-v5-blue), var(--rbl-v5-indigo)) !important;
  border: 0 !important;
  border-radius: 14px !important;
  box-shadow: 0 10px 22px rgba(36, 89, 216, 0.21) !important;
}

/* Premium navigation */
.rbl-premium-header-v5 .main-navigation,
.rbl-premium-header-v5 .navbar,
.rbl-premium-header-v5 nav {
  margin-top: 0 !important;
  border-top: 1px solid #edf1f8 !important;
  background: rgba(255, 255, 255, 0.985) !important;
}

.rbl-premium-header-v5 .main-navigation .container,
.rbl-premium-header-v5 .navbar .container,
.rbl-premium-header-v5 nav > .container {
  max-width: var(--rbl-v5-header-width) !important;
  margin: 0 auto !important;
}

.rbl-premium-header-v5 .navbar-nav,
.rbl-premium-header-v5 .main-menu,
.rbl-premium-header-v5 .menu {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 5px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.rbl-premium-header-v5 .navbar-nav > li > a,
.rbl-premium-header-v5 .main-menu > li > a,
.rbl-premium-header-v5 .menu > li > a,
.rbl-premium-header-v5 .main-navigation a {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 44px !important;
  padding: 10px 17px !important;
  color: #4b566b !important;
  background: transparent !important;
  border-radius: 999px !important;
  font-family: Inter, sans-serif !important;
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 750 !important;
  text-decoration: none !important;
  transition:
    color 0.18s ease,
    background-color 0.18s ease,
    box-shadow 0.18s ease !important;
}

.rbl-premium-header-v5 .navbar-nav > li > a:hover,
.rbl-premium-header-v5 .main-menu > li > a:hover,
.rbl-premium-header-v5 .menu > li > a:hover,
.rbl-premium-header-v5 .current-menu-item > a,
.rbl-premium-header-v5 .current_page_item > a,
.rbl-premium-header-v5 .current-menu-ancestor > a {
  color: var(--rbl-v5-navy) !important;
  background: #eef4ff !important;
  box-shadow: inset 0 0 0 1px #d5e2fb !important;
}

/* The broad link rules from older prototypes must never recolor hero buttons */
.entry-content a[style*="background"],
.entry-content section a[style*="background"],
.entry-content a[style*="linear-gradient"] {
  text-decoration: none !important;
}

.entry-content a[style*="background:#fff"],
.entry-content a[style*="background: #fff"],
.entry-content a[style*="background:white"],
.entry-content a[style*="background: white"] {
  color: var(--rbl-v5-navy) !important;
}

.entry-content a[style*="rgba(255"],
.entry-content a[style*="#2459d8"],
.entry-content a[style*="#4338ff"],
.entry-content a[style*="#0b1d3a"] {
  color: #ffffff !important;
}

/* More polished WooCommerce surfaces */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
  border-color: #dce6f8 !important;
  border-radius: 22px !important;
  box-shadow: 0 10px 26px rgba(11, 29, 58, 0.055) !important;
}

.woocommerce ul.products li.product:hover,
.woocommerce-page ul.products li.product:hover {
  border-color: #c5d6f5 !important;
  box-shadow: 0 18px 42px rgba(11, 29, 58, 0.095) !important;
}

@media (max-width: 780px) {
  .rbl-header-shell-v5 {
    width: calc(100% - 24px) !important;
    padding-top: 12px !important;
  }

  .rbl-header-brand-v5,
  .rbl-header-shell-v5 .site-branding {
    width: calc(100% - 165px) !important;
    min-height: 58px !important;
    margin-bottom: 10px !important;
  }

  .rbl-header-shell-v5 .custom-logo-link img,
  .rbl-header-shell-v5 .site-branding img,
  .rbl-header-shell-v5 img.custom-logo {
    max-width: 100% !important;
    max-height: 60px !important;
  }

  .rbl-header-shell-v5 input[type="search"],
  .rbl-header-shell-v5 .woocommerce-product-search input[type="search"] {
    height: 52px !important;
    padding-right: 68px !important;
    font-size: 15px !important;
  }

  .rbl-header-shell-v5 .header-search button,
  .rbl-header-shell-v5 .woocommerce-product-search button,
  .rbl-header-shell-v5 form[role="search"] button,
  .rbl-header-shell-v5 .search-submit {
    width: 44px !important;
    height: 44px !important;
  }
}

@media (max-width: 480px) {
  .rbl-header-brand-v5,
  .rbl-header-shell-v5 .site-branding {
    width: calc(100% - 148px) !important;
    min-height: 52px !important;
  }

  .rbl-header-shell-v5 .custom-logo-link img,
  .rbl-header-shell-v5 .site-branding img,
  .rbl-header-shell-v5 img.custom-logo {
    max-height: 52px !important;
  }

  .rbl-premium-header-v5 .navbar-nav > li > a,
  .rbl-premium-header-v5 .main-menu > li > a,
  .rbl-premium-header-v5 .menu > li > a,
  .rbl-premium-header-v5 .main-navigation a {
    padding: 9px 12px !important;
    font-size: 13px !important;
  }
}


/* =========================================================
   ReByteLab v5.1 – FINAL SEARCH + DUPLICATE ACCOUNT FIX
   ========================================================= */

/* Hide the second/native Envo account icon and Customizer placeholder. */
.rbl-native-account-v51,
.rbl-menu-placeholder-v51,
.rbl-header-search-v5 .header-my-account,
.rbl-header-search-v5 .header-account,
.rbl-header-search-v5 .my-account,
.rbl-header-search-v5 .account-icon,
.rbl-header-search-v5 .account-link,
.rbl-header-search-v5 .header-login,
.rbl-header-search-v5 .header-user,
.rbl-header-search-v5 .user-icon,
.rbl-header-search-v5 [class*="my-account"],
.rbl-header-search-v5 [class*="header-account"],
.rbl-header-search-v5 [class*="account-icon"],
.rbl-header-search-v5 [class*="user-icon"] {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  width: 0 !important;
  height: 0 !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  pointer-events: none !important;
}

/*
 * The precise wrapper detected by JavaScript contains the input and the
 * submit button. This prevents the button from positioning against a
 * larger theme row or against the wrong ancestor.
 */
.rbl-search-control-v51 {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 56px !important;
  min-height: 56px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

/* The input itself defines the single visible search frame. */
.rbl-search-control-v51 .rbl-search-input-v51,
.rbl-search-control-v51 input[type="search"] {
  position: relative !important;
  z-index: 1 !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 56px !important;
  min-height: 56px !important;
  max-height: 56px !important;
  margin: 0 !important;
  padding: 0 72px 0 20px !important;
  border: 1.5px solid #cedaee !important;
  border-radius: 17px !important;
  box-sizing: border-box !important;
}

/* Centre the magnifying glass inside the frame, regardless of theme CSS. */
.rbl-search-control-v51 .rbl-search-submit-v51,
.rbl-search-control-v51 button[type="submit"],
.rbl-search-control-v51 button:not([type]),
.rbl-search-control-v51 input[type="submit"],
.rbl-search-control-v51 .search-submit {
  position: absolute !important;
  z-index: 4 !important;
  top: 50% !important;
  right: 4px !important;
  bottom: auto !important;
  left: auto !important;
  width: 48px !important;
  min-width: 48px !important;
  max-width: 48px !important;
  height: 48px !important;
  min-height: 48px !important;
  max-height: 48px !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: translateY(-50%) !important;
  border: 0 !important;
  border-radius: 14px !important;
  box-sizing: border-box !important;
}

/* Prevent legacy theme pseudo-elements from drawing beside the search. */
.rbl-search-control-v51::before,
.rbl-search-control-v51::after,
.rbl-search-control-v51 .rbl-search-submit-v51::before,
.rbl-search-control-v51 .rbl-search-submit-v51::after {
  border: 0 !important;
  box-shadow: none !important;
}

/* Keep only the account icon from our premium action group. */
#rbl-header-actions-v5 .rbl-account-trigger-v5,
#rbl-header-actions-v5 .rbl-account-trigger-v5__icon {
  display: inline-flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: auto;
  height: auto;
  pointer-events: auto !important;
}

@media (max-width: 780px) {
  .rbl-search-control-v51 {
    height: 52px !important;
    min-height: 52px !important;
  }

  .rbl-search-control-v51 .rbl-search-input-v51,
  .rbl-search-control-v51 input[type="search"] {
    height: 52px !important;
    min-height: 52px !important;
    max-height: 52px !important;
    padding-right: 66px !important;
  }

  .rbl-search-control-v51 .rbl-search-submit-v51,
  .rbl-search-control-v51 button[type="submit"],
  .rbl-search-control-v51 button:not([type]),
  .rbl-search-control-v51 input[type="submit"],
  .rbl-search-control-v51 .search-submit {
    width: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
  }
}
