/* ============================================
   Better Websites — Cart CSS
   Applies BW brand over bredh-sefar structure
   ============================================ */

/* Fonts */
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@700;800&family=Inter:wght@400;500;600;700&display=swap');

/* Base */
#order-standard_cart,
.order-form-menu-scroller {
  font-family: 'Inter', sans-serif;
  background: #f4f7fc;
}
#order-standard_cart {
  min-height: 60vh;
  padding-bottom: 40px;
}

/* all.min.css never sets box-sizing globally, so any element styled here with
   both width:100% and padding would overflow its parent by the padding amount.
   This single rule prevents that overflow across every orderform page. */
#order-standard_cart, #order-standard_cart * { box-sizing: border-box; }
html, body { overflow-x: hidden; }

/* Page-width container fix — .bw-page-body (the wrapper around every cart/
   store page's content, both on category listing pages like
   store/website-hosting and on the configureproduct/configuredomains
   orderform flow) has no max-width of its own, so its .row children stretch
   edge-to-edge instead of matching the 1240px contained width used by the
   site header (#bw-header-inner). This re-applies that same contained width.
   Note: .bw-page-body is the OUTER wrapper around #order-standard_cart (not
   the reverse), so :has() is used to scope this to cart/store pages only —
   client-area or marketing pages that may reuse .bw-page-body without the
   cart inside them are untouched. */
.bw-page-body:has(#order-standard_cart) {
  max-width: 1240px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 32px !important;
  padding-right: 32px !important;
}
@media (max-width: 767px) {
  .bw-page-body:has(#order-standard_cart) {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}

/* "Added to Cart" recommendations block — hidden completely. This was
   rendering inline in the page flow (Bootstrap's modal CSS was never loaded
   on this page, only its JS), dumping "Added to Cart", an empty "Based on
   this product, we recommend:" section, and a stray "Continue" button into
   the middle of the page after a product is added to cart. Rather than
   restoring proper popup behaviour, this removes it outright. */
#recommendationsModal {
  display: none !important;
}

/* Step wizard */
.orderform-step-form-wizard-group {
  background: #fff;
  border-radius: 10px !important;
  border: 1px solid #a3b3cc !important;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(13,37,87,.06);
  display: flex !important;
  justify-content: center !important;
  margin-bottom: 24px !important;
}
.orderform-step-form-wizard-item {
  display: flex !important;
  align-items: center;
  gap: 8px;
  padding: 14px 24px !important;
  font-size: 13px;
  font-weight: 600;
  color: #546080;
  border-right: 1px solid #a3b3cc;
  text-decoration: none !important;
  margin: 0 !important;
  position: relative;
}
.orderform-step-form-wizard-item.active {
  background: #0d2557 !important;
  color: #fff !important;
}
.orderform-step-form-wizard-item.active small,
.orderform-step-form-wizard-item.active .color-blackish-blue-opacity {
  color: rgba(255,255,255,.65) !important;
}
.orderform-step-form-wizard-item small {
  display: block;
  font-size: 11px;
  font-weight: 400;
  color: #64748b;
  margin-bottom: 4px !important;
  line-height: 1.3;
}
.orderform-step-form-wizard-item small.mb-n2 {
  margin-bottom: 4px !important;
}
.orderform-step-form-wizard-item .left-triangle-border { display: none !important; }
.orderform-step-form-wizard-item i { margin-right: 6px; }

/* White card blocks */
.white-bg.border-opacity.rounded-20 {
  background: #fff !important;
  border-radius: 14px !important;
  border: 1px solid #a3b3cc !important;
  box-shadow: 0 2px 12px rgba(13,37,87,.05);
}

/* Cart items — desktop spacing */
.view-cart-items-coodiv-cart-group { display: flex; flex-direction: column; gap: 16px; }
.item-in-cart {
  padding: 20px 0;
  border-bottom: 1px solid #a3b3cc;
}
.item-in-cart:last-child { border-bottom: none; }
.item-in-cart .product-header { gap: 12px; margin-bottom: 6px; }
.item-in-cart .item-group { display: block; color: #64748b; font-size: 13px; margin-bottom: 4px; }
.item-in-cart .item-price { text-align: right; }
.item-in-cart .item-price > span:first-child { font-size: 17px; font-weight: 700; }

/* Hero */
.hero-content h4.pre-title,
.hero-content .pre-title {
  font-family: 'Inter', sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: #f5a520 !important;
  margin-bottom: 8px;
}
.hero-content h1 {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: 36px !important;
  font-weight: 800 !important;
  color: #0d2557 !important;
  margin-bottom: 8px;
}
.hero-content p { font-size: 14px; color: #546080; }

/* Nav menu scroller */
.order-form-menu-scroller {
  background: #fff !important;
  border: 1px solid #a3b3cc !important;
  border-radius: 10px !important;
  padding: 0 16px;
}
.order-form-menu-scroller .nav-link {
  font-family: 'Inter', sans-serif;
  font-size: 14px;
  font-weight: 600;
  color: #546080;
  padding: 14px 18px;
  border-bottom: 3px solid transparent;
}
.order-form-menu-scroller .nav-link.active,
.order-form-menu-scroller .nav-link:hover {
  color: #0d2557;
  border-bottom-color: #f5a520;
}

/* Category breadcrumb row (store listing pages, e.g. store/website-hosting)
   — a plain unclassed <nav>, nested a couple of divs inside .bw-page-body,
   containing a.nav-link links ("Website Hosting", "Domains", "SSL
   Certificates", "Register a New Domain", "Transfer in a Domain",
   "View Cart"). This was never styled by this file before (every other
   .nav-link rule here is scoped to .order-form-menu-scroller or
   .tld-filters-container, neither of which wraps this nav) — styled to
   match that same tab-bar look. Scoped via :has() the same way as the
   container fix above, since .bw-page-body is the outer wrapper around
   #order-standard_cart, not the reverse. */
.bw-page-body:has(#order-standard_cart) nav {
  display: flex !important;
  flex-wrap: wrap !important;
  background: #fff !important;
  border: 1px solid #a3b3cc !important;
  border-radius: 10px !important;
  padding: 0 16px !important;
  margin-bottom: 16px !important;
}
.bw-page-body:has(#order-standard_cart) nav .nav-link {
  font-family: 'Inter', sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #546080 !important;
  padding: 12px 14px !important;
  border-bottom: 3px solid transparent !important;
  text-decoration: none !important;
}
.bw-page-body:has(#order-standard_cart) nav .nav-link.active,
.bw-page-body:has(#order-standard_cart) nav .nav-link:hover {
  color: #0d2557 !important;
  border-bottom-color: #f5a520 !important;
}
@media (max-width: 767px) {
  .bw-page-body:has(#order-standard_cart) nav {
    padding: 4px 8px !important;
  }
  .bw-page-body:has(#order-standard_cart) nav .nav-link {
    font-size: 12px !important;
    padding: 8px 10px !important;
  }
}

/* Product cards */
.domains-addons-products-group-box { margin-top: 20px; }
.domains-addons-products-title {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 20px;
  font-weight: 700;
  color: #0d2557;
  display: block;
  margin-bottom: 14px;
}
.domains-addons-products-box {
  border: 1.5px solid #a3b3cc;
  border-radius: 10px;
  padding: 16px;
  margin-bottom: 10px;
  background: #fff;
  transition: all .2s;
}
.domains-addons-products-box.panel-addon-selected {
  border-color: #f5a520;
  background: #fffbf0;
}
.domains-addons-products-box .panel-body label {
  cursor: pointer;
  margin: 0;
  display: flex;
  align-items: center;
  gap: 12px;
}

/* Product listing cards */
.coodiv-card {
  border: 1.5px solid #a3b3cc !important;
  border-radius: 14px !important;
  background: #fff !important;
  padding: 24px !important;
  transition: all .2s;
}
.coodiv-card:hover {
  border-color: #3d8bd4 !important;
  box-shadow: 0 4px 20px rgba(13,37,87,.1) !important;
}
.product-title, .coodiv-text-5 {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-weight: 800 !important;
  color: #0d2557 !important;
}
.product-price, .coodiv-text-7 {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-weight: 800 !important;
  color: #0d2557 !important;
}

/* Buttons */
.btn-primary, .coodiv-btn-primary {
  background: #0d2557 !important;
  border-color: #0d2557 !important;
  color: #fff !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 600 !important;
  border-radius: 8px !important;
  padding: 10px 20px !important;
}
.btn-success, .coodiv-btn-success {
  background: #f5a520 !important;
  border-color: #f5a520 !important;
  color: #0d2557 !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 700 !important;
  border-radius: 8px !important;
}
#btnCompleteProductConfig {
  background: #f5a520 !important;
  color: #0d2557 !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  padding: 13px !important;
  border-radius: 8px !important;
  border: none !important;
  cursor: pointer;
  width: 100%;
  margin-top: 16px;
}
#btnDomainContinue {
  background: #f5a520 !important;
  color: #0d2557 !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  padding: 13px 36px !important;
  border-radius: 8px !important;
  border: none !important;
  display: block;
  margin: 20px auto 0;
}
.btn-checkout {
  background: #f5a520 !important;
  color: #0d2557 !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 700 !important;
  border-radius: 8px !important;
  border: none !important;
  width: 100%;
  padding: 13px !important;
  font-size: 15px !important;
}
.btn.btn-add-to-cart {
  background: #0d2557;
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  padding: 7px 14px;
  border-radius: 6px;
  border: none;
  cursor: pointer;
}
.btn.btn-add-to-cart.checkout {
  background: #f5a520;
  color: #0d2557;
}

/* Form controls */
.form-control, .custom-select, select.form-control {
  padding: 11px 14px !important;
  border: 1.5px solid #a3b3cc !important;
  border-radius: 8px !important;
  font-size: 14px !important;
  color: #0d1b3e !important;
  background: #fff !important;
  font-family: 'Inter', sans-serif !important;
  height: auto !important;
  appearance: auto !important;
  -webkit-appearance: auto !important;
}
.form-control:focus, .custom-select:focus {
  border-color: #3d8bd4 !important;
  outline: none !important;
  box-shadow: none !important;
}
.form-group label {
  font-size: 13px;
  font-weight: 600;
  color: #0d1b3e;
  margin-bottom: 6px;
}

/* Order summary */
#orderSummary {
  background: #0d2557 !important;
  border-radius: 14px !important;
  padding: 20px !important;
  color: #fff;
  border: none !important;
}
#orderSummary h2 {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 20px;
  font-weight: 700;
  color: #fff;
  margin-bottom: 16px;
}
#orderSummaryLoader {
  color: rgba(255,255,255,.6);
  text-align: center;
  padding: 10px 0;
}
#producttotal { color: #fff; font-size: 14px; }
#producttotal table { width: 100%; }
#producttotal td { padding: 5px 0; font-size: 13px; color: rgba(255,255,255,.8); }
#producttotal td:last-child { text-align: right; font-weight: 600; color: #fff; }
#producttotal hr { border-color: rgba(255,255,255,.2); }
.secondary-cart-sidebar .coodiv-card,
.secondary-cart-sidebar .white-bg {
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  box-shadow: none !important;
}
.sticky-sidebar { position: sticky; top: 90px; }

/* Product info */
.product-info .product-title {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 22px;
  font-weight: 800;
  color: #0d2557;
  margin-bottom: 4px;
}
.product-info p { font-size: 14px; color: #546080; margin-bottom: 0; }
.separte-or {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 16px;
  font-weight: 700;
  color: #0d2557;
  border-bottom: 1px solid #a3b3cc;
  padding-bottom: 10px;
  margin: 20px 0 16px;
}

/* Domain option cards */
.domain-productconfigiration-options-group {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: 24px;
}
.domain-productconfigiration-options-item {
  flex: 1;
  min-width: 130px;
  max-width: 200px;
  border: 2px solid #a3b3cc !important;
  border-radius: 12px !important;
  padding: 20px 12px !important;
  text-align: center;
  cursor: pointer;
  transition: all .2s;
  background: #fff;
}
.domain-productconfigiration-options-item .activation-box,
.domain-productconfigiration-options-item .activation-icon { display: none !important; }
.domain-productconfigiration-options-item .icon {
  font-size: 22px;
  color: #0d2557;
  display: block;
  margin-bottom: 8px;
}
.domain-productconfigiration-options-item .title {
  font-size: 13px;
  font-weight: 700;
  color: #0d2557;
  display: block;
  margin-bottom: 4px;
}
.domain-productconfigiration-options-item .sub-title {
  font-size: 11px;
  color: #64748b;
}
/* Selected state — iCheck sets checked class on parent */
.domain-productconfigiration-options-item:has(input:checked) {
  border-color: #f5a520 !important;
  background: #fffbf0 !important;
}

/* Domain inputs */
.domain-input-group {
  background: #f4f7fc;
  border-radius: 10px;
  padding: 20px;
  margin-top: 8px;
}
.inputdomainsearch {
  padding: 12px 16px !important;
  border: 1.5px solid #a3b3cc !important;
  border-radius: 8px 0 0 8px !important;
  font-size: 15px !important;
  color: #0d1b3e !important;
  background: #fff !important;
  outline: none;
  font-family: 'Inter', sans-serif !important;
}
.search-btn, .btn.search-btn {
  background: #3d8bd4 !important;
  color: #fff !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  padding: 12px 20px !important;
  border-radius: 0 8px 8px 0 !important;
  border: none !important;
  cursor: pointer;
  white-space: nowrap;
}

/* Domain search page hero */
.domain-search-box {
  background: linear-gradient(135deg, #0d2557 0%, #1a3a7c 100%);
  border-radius: 14px;
  padding: 40px 36px;
  margin-bottom: 24px;
  color: #fff;
}
.domain-search-box h1 {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: 44px !important;
  font-weight: 800 !important;
  color: #fff !important;
  margin-bottom: 10px;
}
.domain-search-box p { color: rgba(255,255,255,.75); font-size: 15px; margin-bottom: 24px; }
.domain-search-input-header {
  border: 2px solid rgba(255,255,255,.25) !important;
  background: rgba(255,255,255,.12) !important;
  color: #fff !important;
  border-radius: 8px 0 0 8px !important;
  padding: 14px 18px !important;
  font-size: 15px !important;
  font-family: 'Inter', sans-serif !important;
  flex: 1;
}
.domain-search-input-header::placeholder { color: rgba(255,255,255,.5); }
.domain-search-input-header:focus { border-color: #f5a520 !important; outline: none !important; }
.domain-search-button-header {
  background: #f5a520 !important;
  color: #0d2557 !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  border: none !important;
  border-radius: 0 8px 8px 0 !important;
  padding: 14px 28px !important;
  cursor: pointer;
  white-space: nowrap;
}

/* Domain results */
#DomainSearchResults { margin-top: 20px; }
.domain-checker-result-headline {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 20px;
  font-weight: 700;
  padding: 14px 16px;
  border-radius: 8px;
  margin-bottom: 14px;
}
.domain-checker-available {
  background: #f0fdf4;
  border: 1.5px solid #86efac;
  color: #166534;
}
.domain-checker-unavailable {
  background: #fef2f2;
  border: 1.5px solid #fca5a5;
  color: #dc2626;
}
.domain-available.alert-success {
  background: #f0fdf4 !important;
  border: 1.5px solid #86efac !important;
  color: #166534 !important;
  border-radius: 10px !important;
}
.domain-unavailable.alert-warning {
  background: #fef9f0 !important;
  border: 1.5px solid #fed7aa !important;
  color: #92400e !important;
  border-radius: 10px !important;
}
.domain-price .price {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 24px;
  font-weight: 800;
  color: #0d2557;
  margin-left: 6px;
}

/* Spotlight TLDs */
.spotlight-tld {
  background: #fff;
  border-radius: 10px;
  border: 1px solid #a3b3cc;
  padding: 14px;
  text-align: center;
}
.spotlight-tld-name {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 20px;
  font-weight: 800;
  color: #0d2557;
  display: block;
}

/* Domain suggestions */
.domain-suggestion.list-group-item {
  border: 1px solid #a3b3cc !important;
  border-radius: 8px !important;
  padding: 12px 14px !important;
  margin-bottom: 8px;
  background: #fff;
}

/* Viewcart table */
.cart-body { background: #fff; border-radius: 14px; border: 1px solid #a3b3cc; padding: 24px; }
.table th {
  font-family: 'Inter', sans-serif;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .05em;
  color: #546080;
  border-bottom: 2px solid #a3b3cc !important;
  padding: 10px 12px;
}
.table td {
  font-size: 14px;
  color: #0d1b3e;
  padding: 12px;
  border-bottom: 1px solid #f4f7fc !important;
  vertical-align: middle;
}
.table .product-name { font-weight: 600; color: #0d2557; }
.table .product-price { font-family: 'Barlow Condensed', sans-serif; font-size: 16px; font-weight: 700; color: #0d2557; }

/* Checkout */
.checkout-section-title {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 22px;
  font-weight: 800;
  color: #0d2557;
  margin-bottom: 16px;
}
.payment-method-item {
  border: 1.5px solid #a3b3cc;
  border-radius: 10px;
  padding: 14px 16px;
  margin-bottom: 10px;
  cursor: pointer;
  transition: all .2s;
  background: #fff;
}
.payment-method-item.active, .payment-method-item:has(input:checked) {
  border-color: #f5a520;
  background: #fffbf0;
}

/* Complete page */
.order-complete-icon { color: #f5a520; font-size: 48px; margin-bottom: 16px; }
.order-complete-title {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 36px;
  font-weight: 800;
  color: #0d2557;
}

/* Alerts */
.alert-danger {
  background: #fee2e2 !important;
  border: 1px solid #fca5a5 !important;
  border-radius: 8px !important;
  color: #dc2626 !important;
}
.alert-warning {
  background: #fef9f0 !important;
  border: 1px solid #fed7aa !important;
  border-radius: 8px !important;
  color: #92400e !important;
}
.alert-info {
  background: #eff6ff !important;
  border: 1px solid #bfdbfe !important;
  border-radius: 8px !important;
  color: #1e40af !important;
}
.alert-success {
  background: #f0fdf4 !important;
  border: 1px solid #86efac !important;
  border-radius: 8px !important;
  color: #166534 !important;
}

/* Promo code */
.promo-code-container { margin-top: 16px; }
.promo-code-input {
  flex: 1;
  padding: 10px 14px;
  border: 1.5px solid #a3b3cc;
  border-radius: 8px 0 0 8px;
  font-size: 14px;
  outline: none;
}
.promo-code-btn {
  background: #0d2557;
  color: #fff;
  padding: 10px 16px;
  border-radius: 0 8px 8px 0;
  border: none;
  cursor: pointer;
  font-weight: 600;
  font-size: 13px;
}

/* Colour overrides for bredh-sefar utilities */
.color-blackish-blue { color: #0d2557 !important; }
.color-blackish-blue-opacity { color: #546080 !important; }
.text-green { color: #f5a520 !important; }
.bg-blackish-blue { background-color: #0d2557 !important; }
.coodiv-bg-blue-opacity-1 { background: rgba(13,37,87,.08) !important; }
.border-opacity { border-color: #a3b3cc !important; }

/* ── Mobile ── */
@media (max-width: 767px) {
  #order-standard_cart { padding: 16px 0; }
  .orderform-step-form-wizard-group { flex-wrap: wrap !important; }
  .orderform-step-form-wizard-item { padding: 10px 12px !important; font-size: 11px !important; flex: 1 1 auto; justify-content: center; min-width: 0; }
  .orderform-step-form-wizard-item small { display: none; }
  .hero-content h1 { font-size: 26px !important; }
  /* secondary-cart-body/sidebar mobile layout handled comprehensively further down */
  .domain-productconfigiration-options-item { min-width: 80px !important; padding: 12px 8px !important; }
  .domain-productconfigiration-options-item .title { font-size: 11px !important; }
  .domain-search-box { padding: 24px 20px; }
  .domain-search-box h1 { font-size: 30px !important; }
  .sticky-sidebar { position: static !important; }
  .col-md-9, .col-lg-9 { padding: 0 16px; }
  .white-bg.border-opacity.rounded-20 { border-radius: 10px !important; padding: 16px 20px !important; }
  /* Cart items use the white card's 16px padding as their only side inset —
     not zero, just not doubled up with the column's own padding too.
     :has() targets specifically the col-md-9/col-lg-9 wrapping the cart
     body+sidebar (not the hero's identical class further up the page). */
  #order-standard_cart .col-md-9:has(.secondary-cart-body),
  #order-standard_cart .col-lg-9:has(.secondary-cart-body) { padding: 0 !important; }
  /* That column's padding removal leaves its direct child .row's standard
     Bootstrap negative gutter margin (-15px each side) with nothing to
     absorb it, causing content to bleed past the white card's edge.
     Neutralize that specific row's margin so it sits flush instead. */
  #order-standard_cart .col-md-9:has(.secondary-cart-body) > .row,
  #order-standard_cart .col-lg-9:has(.secondary-cart-body) > .row { margin-left: 0 !important; margin-right: 0 !important; }
}
@media (max-width: 480px) {
  .orderform-step-form-wizard-item { padding: 8px 6px !important; font-size: 10px !important; }
  .orderform-step-form-wizard-item i { display: none; }
  .domain-search-button-header { padding: 14px 14px !important; }
}

/* ============================================
   PRODUCTS PAGE
   ============================================ */

/* Hide the bredh-sefar nav menu scroller — we style it clean */
.order-form-menu-scroller {
  background: #fff !important;
  border: none !important;
  border-bottom: 1px solid #a3b3cc !important;
  border-radius: 0 !important;
  margin-bottom: 0 !important;
  padding: 0 32px !important;
  box-shadow: none !important;
}
.order-form-menu-scroller .nav { gap: 4px; }
.order-form-menu-scroller .nav-link {
  font-family: 'Inter', sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #546080 !important;
  padding: 16px 20px !important;
  border-bottom: 3px solid transparent !important;
  border-radius: 0 !important;
  text-decoration: none !important;
  transition: all .2s;
}
.order-form-menu-scroller .nav-link.active,
.order-form-menu-scroller .nav-link:hover {
  color: #0d2557 !important;
  border-bottom-color: #f5a520 !important;
  background: transparent !important;
}

/* Hero section */
.hero-content.dark-mode-texts {
  background: #0d2557;
  border-radius: 14px;
  padding: 40px 36px !important;
  margin-bottom: 28px !important;
  text-align: left !important;
  color: #fff;
}
.hero-content.dark-mode-texts h4.pre-title {
  color: #f5a520 !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .1em;
  text-transform: uppercase;
  margin-bottom: 10px;
}
.hero-content.dark-mode-texts h1 {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: 42px !important;
  font-weight: 800 !important;
  color: #fff !important;
  margin-bottom: 10px;
}
.hero-content.dark-mode-texts p {
  color: rgba(255,255,255,.75) !important;
  font-size: 15px !important;
  margin: 0 !important;
}

/* Product cards */
#products { gap: 0; }
.bredh_sefar_card_item.products-item {
  background: #fff !important;
  border: 1.5px solid #a3b3cc !important;
  border-radius: 14px !important;
  padding: 28px 24px !important;
  margin: 8px !important;
  box-shadow: 0 2px 12px rgba(13,37,87,.05) !important;
  transition: all .2s;
  flex: 1;
  min-width: 220px;
  max-width: 300px;
  text-align: left !important;
}
.bredh_sefar_card_item.products-item:hover {
  border-color: #3d8bd4 !important;
  box-shadow: 0 6px 24px rgba(13,37,87,.12) !important;
  transform: translateY(-2px);
}
.bredh_sefar_card_item h5.coodiv-text-6 {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: 22px !important;
  font-weight: 800 !important;
  color: #0d2557 !important;
  margin-bottom: 12px;
}
.bredh_sefar_card_item .price .value {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: 32px !important;
  font-weight: 800 !important;
  color: #0d2557 !important;
}
.bredh_sefar_card_item .price.font-weight-light {
  margin: 12px 0;
}
.bredh_sefar_card_item .price span.d-block {
  font-size: 13px !important;
  color: #546080 !important;
  font-weight: 400 !important;
}
.bredh_sefar_card_item .btn.btn-order-now,
.bredh_sefar_card_item a.order-now-btn,
.bredh_sefar_card_item .btn-order {
  display: block !important;
  background: #0d2557 !important;
  color: #fff !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  padding: 12px 20px !important;
  border-radius: 8px !important;
  border: none !important;
  text-align: center !important;
  text-decoration: none !important;
  margin: 16px 0 !important;
  cursor: pointer;
  transition: background .2s;
}
.bredh_sefar_card_item .btn.btn-order-now:hover,
.bredh_sefar_card_item .btn-order:hover { background: #1a3a7c !important; }
/* Order Now link (anchor tag) */
.bredh_sefar_card_item a[href*="cart.php"] {
  display: block !important;
  background: #0d2557 !important;
  color: #fff !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  padding: 12px 20px !important;
  border-radius: 8px !important;
  text-align: center !important;
  text-decoration: none !important;
  margin: 16px 0 !important;
}
.bredh_sefar_card_item a[href*="cart.php"]:hover { background: #1a3a7c !important; }
.bredh_sefar_card_item .setup-fee {
  font-size: 12px !important;
  color: #64748b !important;
}
.bredh_sefar_card_item .billing-cycles-select {
  font-size: 13px;
  color: #546080;
}
/* Features inside product card */
.bredh_sefar_card_item ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 12px 0 0 !important;
  border-top: 1px solid #f4f7fc;
  padding-top: 12px !important;
}
.bredh_sefar_card_item ul li {
  font-size: 13px !important;
  color: #546080 !important;
  padding: 4px 0 !important;
  display: flex;
  align-items: flex-start;
  gap: 8px;
}
.bredh_sefar_card_item ul li:before {
  content: '✓';
  color: #f5a520;
  font-weight: 700;
  flex-shrink: 0;
}
/* Product description text */
.bredh_sefar_card_item p,
.bredh_sefar_card_item .product-description {
  font-size: 13px !important;
  color: #546080 !important;
  line-height: 1.6;
}

/* ============================================
   DOMAIN REGISTER PAGE - Full restyle
   ============================================ */

/* Hide bredh-sefar's ugly TLD logo section */
.featured-tlds-container { display: none !important; }
.tld-filters-container h5 { display: none !important; }

/* Top nav links (Add Hosting, Transfer, Contact) */
.col-lg-2.col-12.px-0 a.features-box {
  background: #fff !important;
  border: 1px solid #a3b3cc !important;
  border-radius: 10px !important;
  padding: 16px !important;
  text-align: center !important;
  transition: all .2s;
  margin-bottom: 4px;
}
.col-lg-2.col-12.px-0 a.features-box:hover {
  border-color: #3d8bd4 !important;
}
.col-lg-2.col-12.px-0 h3 {
  font-family: 'Inter', sans-serif !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  color: #0d2557 !important;
}
.features-box-icon {
  background: rgba(13,37,87,.06) !important;
  border-radius: 8px !important;
  width: 40px !important;
  height: 40px !important;
  margin: 0 auto 8px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 18px !important;
  color: #0d2557 !important;
}

/* Domain search hero box */
.domain-search-form-container,
.col-lg-8.col-12 .white-bg,
#frmDomainChecker {
  background: linear-gradient(135deg, #0d2557 0%, #1a3a7c 100%) !important;
  border-radius: 14px !important;
  border: none !important;
  padding: 36px !important;
  box-shadow: none !important;
}
.domain-hero-text h4 { color: #f5a520 !important; }
.domain-hero-text h1 {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: 40px !important;
  font-weight: 800 !important;
  color: #fff !important;
}
.domain-hero-text p { color: rgba(255,255,255,.75) !important; }

/* TLD filter tabs */
.tld-filters-container .nav-link {
  font-family: 'Inter', sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #546080 !important;
  padding: 8px 16px !important;
  border-radius: 20px !important;
  border: 1px solid #a3b3cc !important;
  margin: 4px !important;
  background: #fff !important;
  transition: all .2s;
}
.tld-filters-container .nav-link.active,
.tld-filters-container .nav-link:hover {
  background: #0d2557 !important;
  color: #fff !important;
  border-color: #0d2557 !important;
}

/* TLD grid cards */
.tld-list-item {
  background: #fff !important;
  border: 1.5px solid #a3b3cc !important;
  border-radius: 10px !important;
  padding: 16px !important;
  text-align: center !important;
  transition: all .2s;
  margin-bottom: 12px !important;
}
.tld-list-item:hover {
  border-color: #3d8bd4 !important;
  box-shadow: 0 4px 12px rgba(13,37,87,.08) !important;
}
.tld-list-item img { display: none !important; }
.tld-list-item .tld-name {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: 22px !important;
  font-weight: 800 !important;
  color: #0d2557 !important;
  display: block;
  margin-bottom: 6px;
}
.tld-list-item .tld-price {
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #3d8bd4 !important;
}
.tld-list-item .badge {
  font-size: 11px !important;
  font-weight: 600 !important;
  padding: 3px 8px !important;
  border-radius: 4px !important;
}
.badge-info { background: #eff6ff !important; color: #1e40af !important; border: none !important; }
.badge-success { background: #f0fdf4 !important; color: #166534 !important; border: none !important; }
.badge-warning { background: #fffbf0 !important; color: #92400e !important; border: none !important; }

/* Mobile */
@media (max-width: 767px) {
  .hero-content.dark-mode-texts { padding: 24px 20px !important; }
  .hero-content.dark-mode-texts h1 { font-size: 28px !important; }
  .bredh_sefar_card_item.products-item { max-width: 100% !important; margin: 8px 0 !important; }
}

/* ============================================
   TARGETED FIXES v4
   ============================================ */

/* Domain register — fix search input inside hero */
#frmDomainChecker .input-group input,
.domain-search-header-input input,
input.domain-search-input-header {
  background: rgba(255,255,255,.12) !important;
  border: 2px solid rgba(255,255,255,.25) !important;
  color: #fff !important;
  border-radius: 8px 0 0 8px !important;
  padding: 14px 18px !important;
  font-size: 15px !important;
  font-family: 'Inter', sans-serif !important;
}
input.domain-search-input-header::placeholder { color: rgba(255,255,255,.5) !important; }
button.domain-search-button-header,
#btnCheckAvailability {
  background: #f5a520 !important;
  color: #0d2557 !important;
  font-weight: 700 !important;
  border: none !important;
  border-radius: 0 8px 8px 0 !important;
  padding: 14px 24px !important;
  font-size: 15px !important;
  cursor: pointer;
}

/* TLD list items — clean card style */
.tld-list-item,
.row.tld-list > div > div,
.tld-item {
  background: #fff !important;
  border: 1.5px solid #a3b3cc !important;
  border-radius: 10px !important;
  padding: 16px 12px !important;
  text-align: center !important;
  margin-bottom: 12px !important;
  transition: all .2s;
}
.tld-list-item:hover { border-color: #3d8bd4 !important; }

/* Hide TLD logos */
.tld-list-item img,
.tld-item img,
.featured-tlds-container img { display: none !important; }

/* TLD extension name */
.tld-list-item h3,
.tld-item .tld-name,
.tld-list-item .tld-ext {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: 22px !important;
  font-weight: 800 !important;
  color: #0d2557 !important;
  margin-bottom: 6px !important;
}

/* Price badges — replace with clean text */
.badge.badge-info,
.badge.badge-success,
.badge.badge-pill {
  background: transparent !important;
  border: none !important;
  color: #3d8bd4 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  padding: 0 !important;
}

/* Products page — Order Now link */
.bredh_sefar_card_item a,
.products-item a {
  display: inline-block;
  color: #3d8bd4 !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  text-decoration: none !important;
}
/* Specifically the order now button */
.bredh_sefar_card_item .order-now,
.bredh_sefar_card_item a.order-now,
.bredh_sefar_card_item .btn-order-now,
.products-item a[href*="a=add"],
.products-item a[href*="pid"] {
  display: block !important;
  background: #0d2557 !important;
  color: #fff !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  padding: 12px 20px !important;
  border-radius: 8px !important;
  text-align: center !important;
  text-decoration: none !important;
  margin: 16px 0 8px !important;
  transition: background .2s;
}
.products-item a[href*="a=add"]:hover,
.products-item a[href*="pid"]:hover { background: #1a3a7c !important; }

/* Product card spacing */
#products.row { margin: 0 -8px !important; }
.bredh_sefar_card_item.products-item {
  margin: 8px !important;
  display: flex !important;
  flex-direction: column !important;
}

/* WP domain select — make option card text cleaner */
.domain-productconfigiration-options-item .title {
  font-size: 12px !important;
  font-weight: 700 !important;
  color: #0d2557 !important;
  line-height: 1.3 !important;
}
.domain-productconfigiration-options-item .sub-title {
  font-size: 10px !important;
  color: #64748b !important;
  margin-top: 4px !important;
}

/* Step wizard — show product config label on step 1 */
.orderform-step-form-wizard-item:first-child span { color: inherit; }

/* Cart configure — product title area */
.white-bg.border-opacity.rounded-20 .product-title,
.white-bg.border-opacity.rounded-20 h5 {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: 22px !important;
  font-weight: 800 !important;
  color: #0d2557 !important;
}

/* Configure server section title */
.separte-or.text-center,
h5.separte-or {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  color: #0d2557 !important;
  text-align: center;
  border-top: 1px solid #a3b3cc;
  border-bottom: none;
  padding: 16px 0 0;
  margin: 20px 0 16px;
}

/* ============================================
   FIXES v5
   ============================================ */

/* Step wizard — step 1 label text visible */
.orderform-step-form-wizard-item.active span,
.orderform-step-form-wizard-item.active .coodiv-text-11 {
  color: #fff !important;
}
.orderform-step-form-wizard-item.active small {
  color: rgba(255,255,255,.6) !important;
}
/* Non-active steps */
.orderform-step-form-wizard-item:not(.active) span,
.orderform-step-form-wizard-item:not(.active) .coodiv-text-11 {
  color: #546080 !important;
}

/* configureproductdomain — hero text size */
.white-bg.border-opacity.rounded-20 h1.coodiv-text-4,
.white-bg.border-opacity.rounded-20 h1 {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: 28px !important;
  font-weight: 800 !important;
  color: #fff !important;
  line-height: 1.2 !important;
}

/* domain option panels — input styling */
.domain-input-group input[type="text"],
.domain-input-group .inputdomainsearch {
  width: 100% !important;
  padding: 12px 16px !important;
  border: 1.5px solid #a3b3cc !important;
  border-radius: 8px 0 0 8px !important;
  font-size: 15px !important;
  color: #0d1b3e !important;
  background: #fff !important;
  outline: none !important;
  font-family: 'Inter', sans-serif !important;
  box-sizing: border-box;
}
.domain-input-group select,
.domain-input-group .inputdomainselect select,
.domain-input-group .nice-select {
  padding: 12px 10px !important;
  border: 1.5px solid #a3b3cc !important;
  border-left: none !important;
  font-size: 14px !important;
  color: #0d1b3e !important;
  background: #fff !important;
  outline: none !important;
  font-family: 'Inter', sans-serif !important;
  height: auto !important;
  cursor: pointer;
}
.domain-input-group .search-btn,
.domain-input-group .btn.search-btn,
.domain-input-group button[type="submit"],
.domain-input-group .btn-check-domain {
  background: #3d8bd4 !important;
  color: #fff !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  padding: 12px 20px !important;
  border-radius: 0 8px 8px 0 !important;
  border: none !important;
  cursor: pointer !important;
  white-space: nowrap !important;
}
.domain-input-group .input-group {
  display: flex !important;
  align-items: stretch !important;
}
.domain-input-group {
  background: #f4f7fc;
  border-radius: 10px;
  padding: 20px;
}

/* Use domain / transfer button */
.domain-input-group .btn-use-domain,
.domain-input-group .btn-primary {
  background: #0d2557 !important;
  color: #fff !important;
  border-radius: 8px !important;
  padding: 12px 24px !important;
  font-weight: 700 !important;
  border: none !important;
}

/* own domain TLD input */
.domain-input-group input[name="owndomain"],
#inputOwnDomainTld {
  border-left: 1.5px solid #a3b3cc !important;
  border-radius: 0 8px 8px 0 !important;
  width: 120px !important;
}

/* ============================================
   VIEWCART STYLING v5
   ============================================ */
.cart-products-list { margin-bottom: 20px; }
.cart-product-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 0;
  border-bottom: 1px solid #f4f7fc;
  gap: 16px;
}
.cart-product-name {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  color: #0d2557 !important;
}
.cart-product-desc {
  font-size: 12px !important;
  color: #64748b !important;
}
/* Edit button */
.btn-edit-product, a.btn-edit-product,
.cart-edit-btn {
  background: #f4f7fc !important;
  color: #0d2557 !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  padding: 6px 14px !important;
  border-radius: 6px !important;
  border: 1px solid #a3b3cc !important;
  text-decoration: none !important;
  cursor: pointer;
}
/* Empty cart button */
.btn-empty-cart, a[href*="emptycart"],
input[name="emptycart"] {
  background: transparent !important;
  color: #dc2626 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  border: 1px solid #fca5a5 !important;
  border-radius: 6px !important;
  padding: 6px 14px !important;
  cursor: pointer;
}
/* Promo code section */
.promo-code-section h4,
.apply-promo h4 {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  color: #0d2557 !important;
  margin-bottom: 12px;
}
/* Update totals button */
.btn-update-totals, button[name="updatetotals"],
input[value*="Update"] {
  background: #0d2557 !important;
  color: #fff !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  padding: 12px 24px !important;
  border-radius: 8px !important;
  border: none !important;
  cursor: pointer !important;
  width: 100%;
}
/* Checkout button in cart */
.btn-checkout-now, a.btn-checkout,
.proceed-to-checkout {
  background: #f5a520 !important;
  color: #0d2557 !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  padding: 14px 28px !important;
  border-radius: 8px !important;
  border: none !important;
  cursor: pointer !important;
  text-align: center !important;
  text-decoration: none !important;
  display: block !important;
  width: 100%;
}

/* ============================================
   FIXES v6 — cart, viewcart, domain inputs
   ============================================ */

/* Cart items — constrain width, fix remove button */
.cart-product-list-item,
.cart-items-container > div,
.product-list-item {
  max-width: 100%;
  box-sizing: border-box;
}
/* Remove/delete button (the = button) */
a[href*="remove"], .btn-remove,
.cart-remove-btn {
  color: #dc2626 !important;
  font-size: 18px !important;
  line-height: 1 !important;
  text-decoration: none !important;
  padding: 4px 8px !important;
  border-radius: 4px !important;
  background: #fee2e2 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 28px !important;
  min-height: 28px !important;
}
/* The small - button in viewcart */
.cart-remove input[type="image"],
.remove-item { opacity: 1 !important; visibility: visible !important; }

/* Update Totals button — teal → navy */
.btn-update-cart,
input[value="Update Cart"],
button.update-totals,
.btn[name="updatecart"] {
  background: #0d2557 !important;
  border-color: #0d2557 !important;
  color: #fff !important;
}
/* The teal Update Totals button specifically */
a[href*="updatetotals"],
.update-totals-btn,
input.btn-update,
.row .btn-primary[type="submit"] {
  background: #0d2557 !important;
  border-color: #0d2557 !important;
  color: #fff !important;
  border-radius: 8px !important;
  font-weight: 700 !important;
  padding: 12px 24px !important;
}

/* WP Hosting domain selection — fix input layout */
.domain-slector-inputs .domain-input-group {
  background: #f4f7fc;
  border-radius: 10px;
  padding: 20px;
  margin-top: 8px;
}
.domain-slector-inputs .input-group {
  display: flex !important;
  align-items: stretch !important;
  width: 100% !important;
}
.domain-slector-inputs .input-group input[type="text"] {
  flex: 1 !important;
  padding: 12px 16px !important;
  border: 1.5px solid #a3b3cc !important;
  border-right: none !important;
  border-radius: 8px 0 0 8px !important;
  font-size: 15px !important;
  color: #0d1b3e !important;
  background: #fff !important;
  outline: none !important;
  font-family: 'Inter', sans-serif !important;
  min-width: 0 !important;
}
.domain-slector-inputs .input-group .nice-select,
.domain-slector-inputs .input-group select {
  padding: 12px 10px !important;
  border: 1.5px solid #a3b3cc !important;
  border-right: none !important;
  border-left: none !important;
  font-size: 14px !important;
  color: #0d1b3e !important;
  background: #fff !important;
  outline: none !important;
  font-family: 'Inter', sans-serif !important;
  height: auto !important;
  cursor: pointer;
  flex-shrink: 0;
}
.domain-slector-inputs .input-group .input-group-btn,
.domain-slector-inputs .input-group-append {
  display: flex !important;
}
.domain-slector-inputs .input-group .search-btn,
.domain-slector-inputs .input-group button[type="button"],
.domain-slector-inputs .input-group .btn-check-domain {
  background: #3d8bd4 !important;
  color: #fff !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  padding: 12px 20px !important;
  border-radius: 0 8px 8px 0 !important;
  border: none !important;
  cursor: pointer !important;
  white-space: nowrap !important;
  flex-shrink: 0;
}

/* Use/Continue button in domain selection */
.domain-slector-inputs .btn-primary,
.domain-slector-inputs .btn-use-domain,
#btnUseOwnDomain {
  background: #0d2557 !important;
  color: #fff !important;
  border-radius: 8px !important;
  padding: 12px 24px !important;
  font-weight: 700 !important;
  border: none !important;
  cursor: pointer;
}
/* Continue button at bottom */
#btnDomainContinue,
.domain-selections-continue .btn {
  background: #f5a520 !important;
  color: #0d2557 !important;
  font-weight: 700 !important;
  border-radius: 8px !important;
  padding: 13px 36px !important;
  border: none !important;
  font-size: 15px !important;
}

/* Mobile homepage fixes */
@media (max-width: 767px) {
  /* homepage hero */
  section[style*="padding:100px"] {
    padding: 60px 20px 80px !important;
  }
  h1[style*="font-size:80px"] {
    font-size: 42px !important;
  }
}
/* ============================================
   TARGETED FIXES v8
   ============================================ */

/* Mobile close button — make it clearly visible */
#bw-mobile-close {
  position: absolute !important;
  top: 16px !important;
  right: 20px !important;
  background: #f4f7fc !important;
  border: 1.5px solid #a3b3cc !important;
  border-radius: 8px !important;
  cursor: pointer !important;
  font-size: 20px !important;
  color: #0d2557 !important;
  padding: 6px 12px !important;
  line-height: 1 !important;
  z-index: 1000 !important;
}

/* configureproductdomain — fix white heading on white */
.white-bg.border-opacity.rounded-20 .hero-content h1,
.white-bg.border-opacity.rounded-20 h1 {
  color: #0d2557 !important;
}
/* The dark hero block heading should stay white */
.dark-mode-texts h1,
.dark-mode-texts .hero-content h1 {
  color: #fff !important;
}

/* Domain option panel — the faint "Register a new domain" heading */
.domain-slector-inputs h3,
.domain-selection-title {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #0d2557 !important;
  margin-bottom: 16px !important;
}

/* The ghost/faint text underneath the cards */
.domain-productconfigiration-options-group ~ h3,
.option h3 {
  color: #0d2557 !important;
  opacity: 1 !important;
}

/* Domain register search — fix the input appearance */
#frmDomainChecker input[name="domain"],
#inputDomain {
  background: #fff !important;
  color: #0d1b3e !important;
  border: none !important;
  padding: 16px 20px !important;
  font-size: 16px !important;
  font-family: 'Inter', sans-serif !important;
  flex: 1 !important;
  outline: none !important;
  border-radius: 0 !important;
  width: 1% !important; /* flex fix */
  min-width: 0 !important;
}
/* Fix the search form container */
#frmDomainChecker .input-group,
#frmDomainChecker form > div,
#frmDomainChecker > div {
  display: flex !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  box-shadow: 0 4px 20px rgba(0,0,0,.2) !important;
  max-width: 580px !important;
}
#btnCheckAvailability {
  background: #f5a520 !important;
  color: #0d2557 !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  border: none !important;
  padding: 16px 28px !important;
  cursor: pointer !important;
  white-space: nowrap !important;
  border-radius: 0 !important;
  flex-shrink: 0 !important;
}

/* WP hosting domain inputs — all panels */
#domainregister .input-group,
#domaintransfer .input-group,
#domainowndomain .input-group,
#domainsubdomain .input-group {
  display: flex !important;
  align-items: stretch !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  border: 1.5px solid #a3b3cc !important;
  background: #fff !important;
}
#domainregister input[type="text"],
#domaintransfer input[type="text"],
#domainowndomain input[type="text"],
#domainsubdomain input[type="text"] {
  flex: 1 !important;
  padding: 12px 16px !important;
  border: none !important;
  font-size: 15px !important;
  color: #0d1b3e !important;
  outline: none !important;
  font-family: 'Inter', sans-serif !important;
  min-width: 0 !important;
  background: transparent !important;
}
#domainregister select,
#domaintransfer select,
#domainowndomain input[name*="tld"],
#domainsubdomain select,
.nice-select {
  padding: 12px 8px !important;
  border: none !important;
  border-left: 1px solid #a3b3cc !important;
  font-size: 14px !important;
  color: #0d1b3e !important;
  background: #fff !important;
  outline: none !important;
  cursor: pointer !important;
  flex-shrink: 0 !important;
}
#domainregister .btn,
#domaintransfer .btn,
#domainsubdomain .btn,
.search-btn, .btn-check-domain {
  background: #3d8bd4 !important;
  color: #fff !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  padding: 12px 20px !important;
  border: none !important;
  cursor: pointer !important;
  white-space: nowrap !important;
  border-radius: 0 !important;
  flex-shrink: 0 !important;
}
#domainowndomain .btn-primary,
#btnUseOwnDomain {
  background: #0d2557 !important;
  color: #fff !important;
  font-weight: 700 !important;
  padding: 12px 20px !important;
  border: none !important;
  cursor: pointer !important;
  flex-shrink: 0 !important;
}

/* incart domain dropdown */
#incartsld {
  width: 100% !important;
  padding: 12px 16px !important;
  border: 1.5px solid #a3b3cc !important;
  border-radius: 8px !important;
  font-size: 14px !important;
  color: #0d1b3e !important;
  background: #fff !important;
  outline: none !important;
  margin-bottom: 12px !important;
}

/* ============================================
   FINAL FIXES v8
   ============================================ */

/* Mobile close button — highly visible */
#bw-mobile-close {
  position: fixed !important;
  top: 16px !important;
  right: 20px !important;
  background: #0d2557 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 8px !important;
  width: 40px !important;
  height: 40px !important;
  font-size: 20px !important;
  cursor: pointer !important;
  z-index: 10000 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
}

/* iCheck radio buttons — fix Bootstrap conflict */
#order-standard_cart .icheckbox_square-blue,
#order-standard_cart .iradio_square-blue {
  display: inline-block !important;
  position: relative !important;
  width: 22px !important;
  height: 22px !important;
  cursor: pointer !important;
  flex-shrink: 0 !important;
}
/* Make sure domain option panels show when iCheck triggers them */
#order-standard_cart .domain-input-group.option.active {
  display: block !important;
}

/* Domain search input — bredh-sefar classes */
.domain-search { position: relative !important; border-radius: 10px !important; overflow: hidden !important; box-shadow: 0 4px 20px rgba(0,0,0,.15) !important; }
.domain-search-input-header {
  width: 100% !important;
  padding: 16px 160px 16px 20px !important;
  border: none !important;
  background: #fff !important;
  color: #0d1b3e !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 16px !important;
  outline: none !important;
  display: block !important;
}
.domain-search-button-header {
  position: absolute !important;
  right: 0 !important;
  top: 0 !important;
  bottom: 0 !important;
  background: #f5a520 !important;
  color: #0d2557 !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  border: none !important;
  padding: 0 28px !important;
  cursor: pointer !important;
  border-radius: 0 10px 10px 0 !important;
}

/* Domain input group fields */
.inputdomainsearch {
  padding: 13px 16px !important;
  border: none !important;
  border-bottom: none !important;
  background: #fff !important;
  color: #0d1b3e !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 15px !important;
  outline: none !important;
  flex: 1 !important;
  width: 100% !important;
}
#order-standard_cart .domain-input-group .input-group {
  border: 1.5px solid #a3b3cc !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  background: #fff !important;
  display: flex !important;
}
#order-standard_cart .domain-input-group .input-group-btn { flex-shrink: 0 !important; }
#order-standard_cart .domain-input-group .search-btn,
#order-standard_cart .domain-input-group .btn-primary {
  background: #3d8bd4 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 0 6px 6px 0 !important;
  padding: 12px 18px !important;
  font-weight: 600 !important;
  white-space: nowrap !important;
}
#btnUseOwnDomain, #useOwnDomain {
  background: #0d2557 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 0 6px 6px 0 !important;
  padding: 12px 18px !important;
  font-weight: 600 !important;
}
#order-standard_cart .domain-input-group select,
#order-standard_cart .domain-input-group .nice-select {
  border: none !important;
  border-left: 1px solid #a3b3cc !important;
  padding: 12px 8px !important;
  background: #fff !important;
  color: #0d1b3e !important;
  flex-shrink: 0 !important;
}

/* Viewcart — hero heading visible */
.white-bg.border-opacity.rounded-20 .hero-content h1.coodiv-text-5,
.white-bg.border-opacity.rounded-20 .hero-content h1 {
  color: #0d2557 !important;
  font-size: 28px !important;
}

/* ============================================
   VIEWCART FIXES — consolidated
   ============================================ */

/* Remove button — plain X using feather icon-x already in HTML */
button.btn-remove-from-cart,
.btn-remove-from-cart {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 4px 6px !important;
  color: #64748b !important;
  font-size: 16px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  opacity: 1 !important;
}
button.btn-remove-from-cart:hover,
.btn-remove-from-cart:hover {
  background: transparent !important;
  background-color: transparent !important;
  color: #dc2626 !important;
}
button.btn-remove-from-cart i,
.btn-remove-from-cart i {
  color: inherit !important;
  font-size: 16px !important;
}

/* Cart width — col-11 expanded to match hero block above */
#order-standard_cart .white-bg.border-opacity.rounded-20 .row.justify-content-center > .col-11 {
  max-width: 100% !important;
  flex: 0 0 100% !important;
  padding-left: 30px !important;
  padding-right: 30px !important;
}

/* Update Totals — btn-info → navy */
.btn.btn-info {
  background: #0d2557 !important;
  border-color: #0d2557 !important;
  color: #fff !important;
  border-radius: 8px !important;
  font-weight: 600 !important;
}

/* Domain register — fix the search area background */
#order-standard_cart .col-md-9 .white-bg.rounded-20 {
  background: linear-gradient(135deg, #0d2557 0%, #1a3a7c 100%) !important;
  border: none !important;
  padding: 32px !important;
  border-radius: 14px !important;
}
#order-standard_cart .domain-search.position-relative.white-bg.rounded-15 {
  background: #fff !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  box-shadow: 0 4px 20px rgba(0,0,0,.2) !important;
}
.hero-content.dark-mode-texts h1.coodiv-text-4 {
  color: #fff !important;
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: 36px !important;
  font-weight: 800 !important;
}
.hero-content.dark-mode-texts p.coodiv-text-9 {
  color: rgba(255,255,255,.75) !important;
}
.hero-content.dark-mode-texts h4.pre-title {
  color: #f5a520 !important;
}

/* Domain register — spotlight TLD cards */
.domains-featured-tlds-boxes .featured-tld {
  background: #fff !important;
  border: 1.5px solid #a3b3cc !important;
  border-radius: 12px !important;
  padding: 16px !important;
  text-align: center !important;
}
.domains-featured-tlds-boxes img { display: none !important; }
.domains-featured-tlds-boxes .price {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #3d8bd4 !important;
  display: block !important;
}
/* TLD name from hexagon */
.domain-name-hexagon {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: 22px !important;
  font-weight: 800 !important;
  color: #0d2557 !important;
}
.shape-hexagon { display: none !important; }
.domain-name-container {
  display: block !important;
  text-align: center !important;
  margin: 0 auto 8px !important;
  width: auto !important;
  height: auto !important;
  position: relative !important;
}

/* TLD grid cards */
.tld-box {
  background: #f4f7fc !important;
  border: 1.5px solid #a3b3cc !important;
  border-radius: 10px !important;
  padding: 14px 10px !important;
  text-align: center !important;
  box-shadow: none !important;
}
.tld-box:hover { border-color: #3d8bd4 !important; background: #fff !important; }
.tld-box .badge { 
  font-size: 11px !important;
  font-weight: 600 !important;
  padding: 3px 8px !important;
  border-radius: 4px !important;
  display: inline-block !important;
  margin: 2px 0 !important;
}
.badge-primary { background: #eff6ff !important; color: #1e40af !important; border: none !important; }
.badge-warning { background: #fffbf0 !important; color: #92400e !important; border: none !important; }

/* Category filter links */
.tld-filters a {
  display: inline-block;
  padding: 6px 14px !important;
  border-radius: 20px !important;
  background: #f4f7fc !important;
  border: 1px solid #a3b3cc !important;
  color: #546080 !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  margin: 3px !important;
  transition: all .2s;
}
.tld-filters a.active,
.tld-filters a:hover {
  background: #0d2557 !important;
  color: #fff !important;
  border-color: #0d2557 !important;
}
/* "Add to Cart" buttons in domain results */
.btn.btn-success.rounded-20,
.btn-add-domain-to-cart {
  background: #f5a520 !important;
  border-color: #f5a520 !important;
  color: #0d2557 !important;
  font-weight: 700 !important;
  border-radius: 8px !important;
}
/* Unavailable message */
.domain-checker-unavailable { color: #dc2626 !important; font-weight: 600 !important; }

/* WP hosting domain select — force show inputs when active */
#order-standard_cart .option.active .domain-input-group { display: block !important; }

/* ============================================
   MOBILE OPTIMISATION
   ============================================ */

@media (max-width: 767px) {
  .view-cart-items-coodiv-cart-group { gap: 0; }
  /* Each cart item becomes its own padded card with breathing room */
  .item-in-cart {
    background: #fff;
    border: 1px solid #a3b3cc;
    border-radius: 12px;
    padding: 16px;
    margin-bottom: 12px;
  }
  .item-in-cart .row { flex-direction: column !important; margin: 0 !important; }
  .item-in-cart .col-sm-7,
  .item-in-cart .col-sm-4 { width: 100% !important; max-width: 100% !important; flex: none !important; padding: 0 !important; }
  .item-in-cart .product-header { flex-wrap: wrap; gap: 8px; margin-bottom: 6px; }
  .item-in-cart .item-group { display: block; margin-bottom: 6px; }

  /* Long domain names shouldn't force horizontal overflow on mobile */
  .item-domain { max-width: 100% !important; width: auto !important; overflow-wrap: break-word; word-break: break-word; display: inline-block !important; }

  /* Price section on mobile — right-aligned, receipt-style row */
  .item-in-cart .item-price {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: baseline;
    gap: 6px;
    text-align: right;
    padding-top: 12px !important;
    border-top: 1px solid #a3b3cc !important;
    margin-top: 12px !important;
  }
  .item-in-cart .item-price > span:first-child { font-size: 16px; }

  /* Remove button sits comfortably within the card on mobile */
  .item-in-cart .btn-remove-from-cart { padding: 4px 8px; }

  /* Order summary full width on mobile — explicit display:block + float:none
     to fully disable the desktop float-based layout (same fix proven on
     configureproduct.tpl: setting only flex:none isn't enough since this
     layout is float-based, not flex-based, by default). */
  #order-standard_cart .secondary-cart-body,
  .secondary-cart-body { display: block !important; width: 100% !important; float: none !important; padding: 0 !important; }
  #order-standard_cart .secondary-cart-sidebar,
  .secondary-cart-sidebar { display: block !important; width: 100% !important; max-width: 100% !important; float: none !important; flex: none !important; padding: 0 !important; margin: 20px 0 0 !important; }
  #scrollingPanelContainer { position: relative !important; top: auto !important; left: auto !important; right: auto !important; bottom: auto !important; transform: none !important; }
  #orderSummary { position: static !important; margin-top: 0 !important; }

  /* Step wizard wrap/sizing handled in the main 767px block near the top of this file */

  /* Promo / tax sections */
  .aply-promo-code,
  .taxenabled-view-cart { padding: 0 4px !important; }

  /* Checkout button full width */
  .btn-checkout { font-size: 14px !important; }
}
