/*
Theme Name: Astra Child
Theme URI: https://wpastra.com/
Template: astra
Author: Brainstorm Force
Author URI: https://wpastra.com/about/?utm_source=theme_preview&utm_medium=author_link&utm_campaign=astra_theme
Description: The Astra WordPress theme is lightning-fast and highly customizable. It has over 1 million downloads and the only theme in the world with 6,000+ five-star reviews! It’s ideal for professional web designers, solopreneurs, small businesses, eCommerce, membership sites and any type of website. It offers special features and templates so it works perfectly with all page builders like Spectra, Elementor, Beaver Builder, etc. Fast performance, clean code, mobile-first design and schema markup are all built-in, making the theme exceptionally SEO-friendly. It’s fully compatible with WooCommerce, SureCart and other eCommerce plugins and comes with lots of store-friendly features and templates. Astra also provides expert support for free users. A dedicated team of fully trained WordPress experts are on hand to help with every aspect of the theme. Try the live demo of Astra: https://zipwp.org/themes/astra/
Tags: custom-menu,custom-logo,entertainment,one-column,two-columns,left-sidebar,e-commerce,right-sidebar,custom-colors,editor-style,featured-images,full-width-template,microformats,post-formats,rtl-language-support,theme-options,threaded-comments,translation-ready,blog
Version: 4.13.1.1777358080
Updated: 2026-04-28 06:34:40
*/

:root {
  --font-family-heading: "Plus Jakarta Sans", sans-serif;
}

html,
body {
  overflow-x: hidden;
  background-color: #fafafa;
}

nav.hfe-nav-menu__layout-horizontal.hfe-nav-menu__submenu-arrow {
  width: auto !important;
}

body.ehf-header #masthead {
  position: sticky;
  top: 0;
  left: 0;
}

body.ehf-header #masthead .op-blur-header {
  backdrop-filter: blur(32px);
}

.heading-type-2 {
  font-family: "Cormorant Garamond", sans-serif;
}

.ast-single-post .entry-content a {
  text-decoration: none;
}

.archive.tax-product_cat .ast-container {
  padding-left: 10px;
  padding-right: 10px;
}

/* ======================= 
    cart css  
======================= */

.od-custom-cart .od-cart-btn:hover {
  box-shadow: 0 12px 25px rgba(0, 0, 0, 0.1);
}

.od-custom-cart .od-cart-icon {
  width: 43px;
  height: 43px;
}

.od-custom-cart .od-cart-count {
  position: absolute;
  top: -6px;
  right: -6px;
  background: #000;
  color: #fff;
  font-size: 10px;
  border-radius: 50%;
  min-width: 24px;
  text-align: center;
}

.od-custom-cart .od-cart-count:empty {
  display: none;
}

h4.hfe-post-title {
  margin-bottom: 0;
  text-align: center;
}

.hfe-post-title a {
  font-family: "Cormorant Garamond", serif;
  font-size: 18px;
}

.hfe-post-title a:hover {
  font-family: "Cormorant Garamond", serif;
  font-size: 18px;
  color: #393838 !important;
}

/* ======================= 
    Hero slider  
======================= */

.od-hero-slider .owl-dot span {
  display: block;
  width: 8px;
  height: 8px;
  margin: 6px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.4);
  transition:
    width 0.4s cubic-bezier(0.4, 0, 0.2, 1),
    background-color 0.4s ease,
    transform 0.3s ease;
}

.od-hero-slider .owl-dot.active span {
  width: 28px;
  height: 8px;
  border-radius: 20px;
  background: #ffffff;
  transform: scale(1.05);
  box-shadow: 0 0 10px rgba(255, 255, 255, 0.6);
}

.od-hero-slider .owl-dots {
  position: absolute;
  bottom: 30px;
  width: 100%;
  display: flex;
  justify-content: center;
}

/* ======================= 
    Shape Slider  
======================= */

.od-shape-slider .shape-card {
  text-decoration: none !important;
}

.od-shape-slider .shape-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: #f2f2f263;
  border: 1px solid #54595f1a;
  border-radius: 10px;
  padding: 15px;
  transition: all 0.3s ease;
}

.od-shape-slider .shape-img {
  width: 70px;
  height: 70px;
  margin-bottom: 10px;
}

.od-shape-slider .shape-name {
  font-size: 14px;
  color: #000000;
}

.od-shape-slider .shape-card:hover .shape-inner {
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1);
}

/* ======================= 
    Product Listing  
======================= */

.woocommerce ul.products li.product img {
  width: 100%;
  height: 433px;
  object-fit: cover;
  border-radius: 10px;
  border: 1px solid #ebebeb;
}

.woocommerce ul.products li.product a img {
  aspect-ratio: 336 / 433;
  object-fit: none;
  background: #00000008;
}

.od-badge {
  position: absolute;
  top: 20px;
  left: 20px;
  background: #000;
  color: #fff;
  padding: 10px 15px;
  font-size: 16px;
  border-radius: 6px;
  z-index: 2;
}

/* Keep both in one line */
.woocommerce ul.products li.product .price {
  display: flex;
  align-items: center;
  gap: 8px;
}

.woocommerce ul.products li.product .price ins {
  order: 1;
  font-size: 20px;
  font-family: var(--font-family-heading);
  font-weight: 500;
  color: #000;
}

.astra-shop-summary-wrap {
  display: flex;
  flex-direction: column;
}

.ast-loop-product__link {
  order: 2;
}

.astra-shop-summary-wrap .price {
  order: 1;
}

.woocommerce ul.products li.product .price del {
  order: 2;
  font-size: 16px;
  font-family: var(--font-family-heading);
  font-weight: 500;
  color: #808080;
}

.woocommerce ul.products li.product h2 {
  font-size: 16px;
  font-family: var(--font-family-heading);
  color: #000000;
  line-height: 1.4;
  margin-top: 5px;
}

/* .woocommerce ul.products li.product:hover {
  transform: translateY(-4px);
  transition: 0.5s;
} */

.woocommerce ul.products li.product .ast-on-card-button {
  display: none !important;
}

/* Remove read more */
.woocommerce ul.products li.product .button {
  display: none !important;
}

/* Remove product category */
.woocommerce ul.products li.product .ast-woo-product-category {
  display: none !important;
}

/* out of stock */
.woocommerce ul.products li.product .ast-shop-product-out-of-stock,
.woocommerce ul.products li.product .stock.out-of-stock {
  display: none !important;
}

.woocommerce ul.products li.product.outofstock .astra-shop-thumbnail-wrap {
  position: relative;
}

.woocommerce-js ul.products li.product,
.woocommerce-page ul.products li.product,
.woocommerce-js .products ul,
.woocommerce-js ul.products,
.woocommerce-js ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title {
  margin-bottom: 0;
}

.woocommerce ul.products li.product.outofstock .astra-shop-thumbnail-wrap::before {
  content: "";
  position: absolute;
  inset: 0;
  margin-bottom: 13px;
  border-radius: 10px;
  background: rgba(0, 0, 0, 0.2);
  z-index: 1;
}

.woocommerce ul.products li.product.outofstock .astra-shop-thumbnail-wrap::after {
  content: "Out Of Stock";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #fff;
  color: #000;
  padding: 10px 13px;
  border-radius: 6px;
  z-index: 2;
}

/* ======================= 
    Category Slider
======================= */

.od-grid {
  display: grid;
  grid-template-columns: repeat(9, 1fr);
  gap: 20px;
}

.od-item {
  position: relative;
  overflow: hidden;
  border-radius: 10px;
}

.od-img {
  width: 100%;
  height: 322px;
}

.od-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.od-link:hover img {
  transition: 0.5s ease;
  transform: scale(1.01);
}

.od-content {
  position: absolute;
  bottom: 10px;
  left: 0;
}

.od-title {
  background: linear-gradient(90deg, #000000 0%, rgba(0, 0, 0, 0) 100%);
  color: #fff;
  padding: 7px 20px 7px 20px;
  font-family: "Dancing Script", cursive;
  font-size: 36px;
}

.product_meta .od-product-tags a {
  color: #000;
}

.product_meta .od-product-tags a:hover {
  text-decoration: underline;
  color: #000;
}

button.od-popup-btn {
  width: 100%;
  padding: 10px 15px;
  margin-top: 10px;
}

/* Row 1 → 1.5fr | 2fr | 1fr */
.od-item:nth-child(6n + 1) {
  grid-column: span 3;
}

.od-item:nth-child(6n + 2) {
  grid-column: span 4;
}

.od-item:nth-child(6n + 3) {
  grid-column: span 2;
}

/* Row 2 → 2fr | 1.5fr | 1fr */
.od-item:nth-child(6n + 4) {
  grid-column: span 4;
}

.od-item:nth-child(6n + 5) {
  grid-column: span 3;
}

.od-item:nth-child(6n + 6) {
  grid-column: span 2;
}

.od-grid .owl-dots .owl-dot.active span,
.od-testimonial-slider .owl-dots .owl-dot.active span {
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.3);
}

/* nav dot */
.od-grid .owl-dots,
.od-testimonial-slider .owl-dots {
  margin-top: 15px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.od-grid .owl-dots .owl-dot span,
.od-testimonial-slider .owl-dots .owl-dot span {
  width: 10px;
  height: 10px;
  background: #ccc;
  border-radius: 50%;
  display: block;
  margin: 0 4px;
  transition: all 0.3s ease;
}

.od-grid .owl-dots .owl-dot.active span,
.od-testimonial-slider .owl-dots .owl-dot.active span {
  background: #000;
  height: 10px;
  width: 20px;
  border-radius: 10px;
}

.elementor-image-gallery .gallery-item img {
  transition:
    transform 0.5s ease,
    filter 0.5s ease;
}

.elementor-image-gallery .gallery-item:hover img {
  transform: scale(1.08);
  filter: brightness(0.85);
}

/* ======================= 
    Diamond Guide
======================= */

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

.od-diamond-guide .od-guide-item {
  border-radius: 10px;
  overflow: hidden;
}

.od-diamond-guide .od-guide-image-wrapper {
  position: relative;
  height: 619px;
}

.od-diamond-guide .od-guide-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}

.od-diamond-guide .od-guide-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 70%, #000000 100%);
  z-index: 1;
}

.od-diamond-guide .od-guide-content {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
  text-align: center;
  width: 100%;
}

.od-diamond-guide .od-guide-title {
  color: #fff;
  font-size: 18px;
  font-family: var(--font-family-heading);
  margin: 0;
}

.od-diamond-guide .od-guide-item:hover .od-guide-image {
  transform: scale(1.08);
}

.od-diamond-guide .od-guide-link:hover .od-guide-title {
  color: #ffd700;
  transition: color 0.3s ease;
}

/* ======================= 
    Testimonial Slider
======================= */

.od-testimonial-slider .od-testimonial-item {
  width: 100%;
}

.od-testimonial-slider .owl-stage {
  display: flex !important;
}

.od-testimonial-slider .owl-item {
  display: flex;
}

.od-testimonial-slider .owl-stage-outer {
  overflow: visible !important;
  padding-top: 32px;
}

.od-testimonial-slider {
  overflow: hidden;
}

.od-testimonial-slider .od-testimonial-card {
  position: relative;
  flex-direction: column;
  height: 100%;
  background: #f4f4f4;
  border-radius: 12px;
  padding: 15px 20px 30px 20px;
  text-align: center;
  overflow: visible;
  transition: all 0.3s ease;
}

.od-testimonial-slider .od-testimonial-card:hover {
  box-shadow: 0 15px 20px rgba(0, 0, 0, 0.08);
}

.od-testimonial-slider .od-testimonial-img {
  position: absolute;
  top: -32px;
  left: 50%;
  transform: translateX(-50%);
  width: 64px;
  height: 64px;
  border-radius: 50%;
  z-index: 999;
}

.od-testimonial-slider .od-testimonial-img img {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
}

.od-testimonial-slider .od-testimonial-name {
  font-family: var(--font-family-heading);
  font-size: 16px;
  font-weight: 500;
  color: #000000;
  padding-top: 32px;
  margin-bottom: 0;
}

.od-testimonial-slider .od-testimonial-date {
  font-family: var(--font-family-heading);
  font-size: 12px;
  color: #767676;
  margin-bottom: 10px;
}

.od-testimonial-slider .od-testimonial-rating {
  margin: 10px 0;
}

.od-testimonial-slider .od-star {
  font-size: 18px;
  margin: 0px 3.5px;
}

.od-testimonial-slider .od-star.filled {
  color: #f6bb06;
}

.od-testimonial-slider .od-testimonial-desc {
  font-family: "Inter", sans-serif;
  font-size: 16px;
  color: #000000;
  max-width: 300px;
  margin: 15px auto 0;
}

.od-testimonial-slider .owl-nav button {
  position: absolute;
  top: 45%;
  transform: translateY(-50%);
  width: 45px;
  height: 45px;
  border-radius: 50% !important;
  background: #fff !important;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
}

.od-testimonial-slider .owl-nav .owl-prev {
  left: -30px;
}

.od-testimonial-slider .owl-nav .owl-next {
  right: -30px;
}

.od-testimonial-slider .owl-nav button span {
  font-size: 18px;
}

.elementor-section .od-testimonial-slider,
.elementor-column .od-testimonial-slider {
  overflow: visible !important;
}

.od-testimonial-card p {
  margin-bottom: 0;
}

/* ======================= 
    Blog  Listing Page
======================= */

html .blog.ast-separate-container #primary {
  margin: 40px 0 156px 0;
  padding: 0;
}

.od-blog-grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

.od-blog-card {
  text-align: center;
}

.od-blog-card__img-wrap {
  height: 325px;
  overflow: hidden;
}

.od-blog-card__img-wrap img {
  width: 100%;
  height: 100%;
  /* height: auto; */
  /* object-fit: contain; */
}

.od-blog-card__img {
  width: 100%;
  height: auto;
  display: block;
}

h2.od-blog-card__title {
  margin: 0;
  font-size: 24px;
  line-height: 28px;
  margin-top: 20px;
}

html .ast-blog-layout-4-grid .ast-article-post {
  width: 100%;
}

html .ast-separate-container .ast-blog-layout-4-grid .ast-article-post {
  padding: 0;
  margin: 0;
}

html .site-content section.ast-archive-description {
  display: none;
}

html .od-blog-card__title a,
html .od-blog-card__title a:visited,
html .od-blog-card__title a:hover {
  color: #000000;
  font-family:
    "Cormorant Garamond",
    Plus Jakarta Sans;
  font-size: 24px;
  font-weight: 400;
  line-height: 28px;
}

html .od-blog-card__title a:visited,
html .od-blog-card__title a:hover {
  color: #000000c2;
}

.nav-links {
  display: flex;
  align-items: center;
  gap: 10px;
  justify-content: center;
  margin-top: 40px;
}

html .od-blog-pagination span.page-numbers.current {
  background: #000;
  color: #fff;
  padding: 3px 10px;
}

.navigation .nav-links a.page-numbers:hover,
.navigation .nav-links a.page-numbers:hover {
  color: #000;
}

.blog-header {
  text-align: center;
}

.blog-header p {
  margin-bottom: 48px;
}

.blog-header h2 {
  font-family: "Dancing Script";
  font-weight: 400;
  font-size: 36px;
  line-height: 43.2px;
  margin-bottom: 22px;
}

/*product category page*/

.archive.tax-product_cat #primary {
  margin: 20px 0;
}

.woocommerce-products-header {
  text-align: center;
  max-width: 1400px;
  margin: 0 auto;
}

.term-description {
  padding-bottom: 50px;
}

.term-description h1 {
  margin-bottom: 20px;
}

.woocommerce-products-header .woocommerce-products-header__title {
  font-family: Cormorant Garamond;
  font-weight: 400;
  font-size: 36px;
  line-height: 43.2px;
  margin-bottom: 30px;
}

.archive.tax-product_cat ul.products {
  column-gap: 20px;
  row-gap: 30px;
}

.archive .woocommerce-pagination ul.page-numbers {
  text-align: center;
  margin: 40px 0 20px;
}

.archive.woocommerce nav.woocommerce-pagination ul li span,
.archive.woocommerce nav.woocommerce-pagination ul li a {
  color: #000000;
}

.archive.woocommerce .ast-woocommerce-container .woocommerce-pagination ul.page-numbers li a:focus {
  border-style: none;
}

/* ================================================================
   OPULENTDIAM — PRODUCT CATEGORY PAGE STYLES
   File: od-category-page.css
   Upload to: /wp-content/themes/YOUR-THEME/css/od-category-page.css
   Enqueue via functions.php (see od-category-page.php)
   ================================================================ */

.archive .woocommerce-breadcrumb,
.archive.tax-product_cat ul.products,
.ocd-category-content,
.od-cta-box {
  max-width: 1780px;
  margin-left: auto;
  margin-right: auto;
}

.archive .woocommerce-breadcrumb {
  padding-top: 20px;
}

/* ---------------------------------------------------------------
   SECTION 1 — DESCRIPTION BOX
   .od-cat-desc
--------------------------------------------------------------- */
.od-cat-bottom {
  margin: 80px auto;
}

.od-cat-bottom br {
  display: none;
}

.od-cat-wrap {
  background: #fafafa;
  padding: 0 10px 80px 10px;
}

.od-cat-desc {
  padding-top: 50px;
  background: #fafafa;
  font-size: 15px;
  line-height: 1.85;
  color: #444;
}

.ocd-category-content ul {
  margin: 0;
  margin-left: 1em;
  padding-bottom: 2.6em;
}

.ocd-category-content a {
  text-decoration: underline;
}

.ocd-category-content,
.ocd-category-content a,
.ocd-category-content a:visited,
.ocd-category-content a:hover {
  color: #000;
}

.od-cat-desc h2,
.od-cat-desc h3 {
  color: #1a1a1a;
  font-weight: 700;
}

/* ---------------------------------------------------------------
   SECTION 2 — CALL TO ACTION BOX
   .od-cta-wrap / .od-cta-box / .od-cta-btn
--------------------------------------------------------------- */

.od-cta-box {
  border-radius: 10px;
  padding: 30px;
  color: #000;
  text-align: left;
  background-color: #fff;
}

.od-cta-box h3 {
  color: #000;
  font-weight: 700;
  margin-bottom: 25px;
}

.od-cta-box .od-cta-btn {
  display: inline-block;
  background: #1a1a1a;
  color: #fff;
  text-decoration: none;
  padding: 10px 30px;
  border-radius: 8px;
  font-size: 16px;
  font-weight: 400;
  transition:
    background 0.2s,
    color 0.2s;
}

.od-cta-box .od-cta-btn:hover {
  color: #000000;
  background: transparent;
  border: 1px solid #000000;
  padding: 9px 29px;
}

/* ---------------------------------------------------------------
   SECTION 3 — FAQ ACCORDION
   .od-faq-wrap / .od-faq-item / .od-faq-btn / .od-faq-ans
--------------------------------------------------------------- */
.od-faq-wrap {
  padding-top: 100px;
}

.od-faq-wrap h2 {
  text-align: center;
  font-size: clamp(22px, 3vw, 32px);
  font-weight: 400;
  letter-spacing: 1px;
  margin: 0 0 30px;
  color: #1a1a1a;
}

.od-faq-wrap h2 em {
  font-family: Dancing Script;
}

.od-faq-list {
  max-width: 1330px;
  margin: 0 auto;
  padding-left: 10px;
  padding-right: 10px;
}

.od-faq-item {
  border: 1px solid #e5e5e5;
  border-radius: 6px;
  margin-bottom: 20px;
  overflow: hidden;
}

html body .od-faq-btn {
  width: 100%;
  background-color: #ffffff;
  color: #000;
  border: none;
  text-align: left;
  padding: 20px 54px 20px 20px;
  font-size: 15px;
  font-weight: 500;
  cursor: pointer;
  position: relative;
  line-height: 1.4;
  font-family: inherit;
  transition: background 0.15s;
}

.od-faq-btn:hover,
.od-faq-btn:focus {
  background: #fafafa;
  border-width: 0 !important;
}

.od-faq-icon {
  position: absolute;
  right: 20px;
  top: 45%;
  transform: translateY(-50%);
  font-size: 24px;
  font-weight: 600;
  color: #000000;
  transition: transform 0.25s;
  line-height: 1;
}

.od-faq-item.od-open .od-faq-btn {
  background: #fafafa;
  border: none;
}

.od-faq-item.od-open .od-faq-icon {
  transform: translateY(-50%) rotate(45deg);
  color: #333;
}

.od-faq-ans {
  padding: 16px 22px 20px;
  font-size: 14px;
  color: #555;
  line-height: 1.75;
  border-top: 1px solid #f0f0f0;
}

.od-shop-top-bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 5px;
  flex-wrap: wrap;
  max-width: 1780px;
  margin: 0 auto 20px;
}

.archive.woocommerce .woocommerce-ordering,
.woocommerce-page .woocommerce-ordering {
  margin-bottom: 0;
}

.woocommerce-js .woocommerce-ordering select {
  margin: 0 25px 0px 0px;
  padding: 0;
}

/* contact form */
.od-contact-form .od-form-group label {
  color: #000000;
}

.od-contact-form .od-form-row {
  display: flex;
  gap: 20px;
}

.od-contact-form .od-form-control {
  padding: 0 14px;
  border: 1px solid #9d9d9d;
  background: #f3f3f3;
  font-size: 14px;
  margin-top: 12px;
}

.od-contact-form textarea.od-form-control {
  height: 160px;
  resize: none;
}

.od-contact-form .od-form-control::placeholder {
  color: #6b7280;
}

.od-contact-form .od-form-control:focus {
  border-color: #000;
  background: #fff;
}

.od-contact-form .od-submit-btn {
  width: 100%;
}

.od-contact-form .wpcf7-not-valid-tip {
  margin-top: 6px;
  font-size: 13px;
}

.od-contact-form .wpcf7-response-output {
  margin: 20px 0 0 !important;
  padding: 12px !important;
}

.entry-content .wp-audio-shortcode,
.entry-content .wp-embedded-audio,
.entry-content .wp-embedded-video,
.entry-content .wp-video,
.entry-content p {
  margin-bottom: 20px;
}

.od-form-group {
  width: 100%;
}

.od-submit-wrap p,
.wpcf7 form>div,
.wpcf7 form>p {
  margin-bottom: 0;
}

span.wpcf7-spinner,
span.onsale {
  display: none;
}

/* Blog Details */
/* Blog Details page */
.single-post .od-single-container {
  width: 1170px;
}

.od-single-container {
  margin: auto;
  padding: 100px 10px;
  display: flex;
  flex-direction: column;
  gap: 50px;
}

.od-single-image-box {
  width: 100%;
  height: 100%;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

.od-single-image-box img {
  width: auto;
  height: auto;
  object-fit: cover;
  object-position: center;
  border-radius: 10px;
}

.od-single-text figure img {
  border-radius: 10px;
  margin: 20px 0 35px 0;
  width: 100%;
  max-width: 700px;
  object-fit: cover;
  display: block;
}

.ast-narrow-container .site-content>.ast-container {
  max-width: 1780px;
}

.od-single-text p,
.od-single-text a,
.od-single-text li {
  margin-bottom: 15px;
}

.od-single-container h1,
.od-single-image-box {
  text-align: center;
}

.od-single-text h2 {
  margin-bottom: 10px;
  font-family: "Cormorant Garamond", sans-serif;
}

.od-single-text a:hover {
  color: #343434;
  text-decoration: none;
}

.od-single-text a {
  text-decoration: underline;
  color: #000;
}

/* Blog Details Table */
.od-single-text .wp-block-table {
  margin: 30px 0 50px 0;
  overflow-x: auto;
}

.od-single-text .wp-block-table table {
  border: 1px solid #ebebeb;
  border-radius: 10px;
  overflow: hidden;
  background: #ebebeb;
}

.od-single-text .wp-block-table thead th,
.od-single-text .wp-block-table tbody tr:first-child td {
  color: #ffffff;
  background-color: #000000;
}

.od-single-text .wp-block-table td {
  padding: 14px;
  border: 1px solid #e2e2e2;
  font-size: 14px;
  background: #ffffff;
}

.od-single-text .wp-block-table tbody td:first-child {
  font-weight: 600;
  width: 25%;
}

.od-faq-wrap.od-faq-blog {
  padding: 0px;
}

/* css for comment form */
.od-leave-a-comment .comments-area {
  max-width: 725px;
  margin: 10px auto;
  border: 1px solid #e7dfd4d1;
  background: #ffffff;
  box-shadow: 0px 22px 55px 0px #1d191417;
  border-radius: 8px;
}

.od-leave-a-comment .comment-reply-title {
  text-align: center;
}

.od-leave-a-comment .od-comment-field label {
  font-size: 14px;
  color: #000;
  display: block;
  margin-bottom: 12px;
}

.od-leave-a-comment .od-comment-field input,
.od-leave-a-comment .od-comment-field textarea {
  border: 1px solid #9d9d9d;
  background: #f3f3f3;
  padding: 14px 16px;
  font-size: 14px;
  color: #000;
  border-radius: 2px;
}

.od-leave-a-comment .od-comment-field textarea {
  min-height: 168px;
  resize: vertical;
}

.od-leave-a-comment .od-comment-field input::placeholder,
.od-leave-a-comment .od-comment-field textarea::placeholder {
  color: #6b7280;
}

.od-leave-a-comment .od-comment-field input:focus,
.od-leave-a-comment .od-comment-field textarea:focus {
  border-color: #000;
}

.od-leave-a-comment .comment-form .submit {
  width: 100%;
  padding: 15px !important;
  border-radius: 8px !important;
}

.od-leave-a-comment .comment-form .submit:hover {
  color: #000 !important;
  background-color: #fff !important;
  border: 1px solid #000 !important;
  padding: 14px !important;
}

.od-leave-a-comment h3 {
  display: none;
}

.od-leave-a-comment .od-comment-title {
  margin-top: 50px;
  text-align: center;
}

.od-comment-title em {
  font-family: "Dancing Script", cursive;
}

.od-leave-a-comment .comment-form {
  display: flex;
  flex-direction: column;
}

.od-leave-a-comment .comments-area {
  padding-bottom: 0;
}

.comment-form-author {
  order: 1;
}

.comment-form-email {
  order: 2;
}

.comment-form-comment {
  order: 3;
}

.form-submit {
  order: 4;
  padding-top: 20px;
}

.od-comment-success {
  background: #f5f5f5;
  border: 1px solid #ddd;
  border-radius: 10px;
  margin-bottom: -70px;
  padding: 20px;
  text-align: center;
  font-size: 18px;
  color: #5b1212;
}

.ast-separate-container #content .ast-container {
  padding: 0;
}

/* bespoke-jewelry Listing */
.od-parent-category {
  font-size: 16px;
  font-weight: 500;
  margin-bottom: 6px;
  color: #808080;
}

.od-parent-category:hover {
  color: #000;
}

/* ---------------------------------------------------------------
   Remove Main Content Padding
   Product Category Pages
--------------------------------------------------------------- */

.od-product-category-page .ast-page-builder-template .site-main,
.od-product-category-page main#main.site-main {
  padding-top: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* ---------------------------------------------------------------
   Blog Container Width
--------------------------------------------------------------- */

.blog .ast-container {
  max-width: 1800px !important;
  padding: 0 10px !important;
}

/* ---------------------------------------------------------------
   WooCommerce Primary Column Spacing
--------------------------------------------------------------- */

.woocommerce.ast-plain-container.ast-no-sidebar #primary {
  margin-top: 0px;
  margin-bottom: 0px;
}

/* ---------------------------------------------------------------
   Reviews Title Heading
--------------------------------------------------------------- */

.woocommerce h2.woocommerce-Reviews-title {
  font-size: 36px;
  line-height: 36px;
}

/* ---------------------------------------------------------------
   Related Products Section
--------------------------------------------------------------- */

.woocommerce .related.products {
  padding-top: 100px;
  text-align: center;
  padding-bottom: 100px;
}

/* ---------------------------------------------------------------
   WooCommerce Add to Cart Message Bar
--------------------------------------------------------------- */

.single-product .woocommerce-message {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

/* ---------------------------------------------------------------
   Product Title
--------------------------------------------------------------- */

.woocommerce h1.product_title.entry-title {
  font-size: 28px;
  line-height: 28px;
  font-weight: 700;
  margin-bottom: 20px !important;
}

/* ---------------------------------------------------------------
   Price Display — Sale vs Regular Order
--------------------------------------------------------------- */

.price del {
  order: 2;
}

.price ins {
  order: 1;
}

.price {
  display: flex;
  align-items: center;
  gap: 10px;
}

.wp-singular.woocommerce div.product p.price ins {
  font-weight: 500;
  font-size: 20px;
  line-height: 26px;
}

.wp-singular.woocommerce div.product p.price del {
  font-weight: 500;
  font-size: 16px;
  line-height: 26px;
  color: #808080;
}

/* ---------------------------------------------------------------
   Product Tabs Typography
--------------------------------------------------------------- */

.woocommerce .woocommerce-tabs .tabs.wc-tabs a {
  font-size: 28px;
  line-height: 28px;
  font-family: Cormorant Garamond;
  color: #000000 !important;
}

.woocommerce.woocommerce-js div.product .woocommerce-tabs {
  margin-bottom: 100px;
}

.woocommerce.woocommerce-js div.product .woocommerce-tabs ul.tabs li a {
  padding-top: 0 !important;
}

/* ---------------------------------------------------------------
   Product Tabs — Remove Borders & Decorators
--------------------------------------------------------------- */

.woocommerce.woocommerce-js div.product .woocommerce-tabs ul.tabs::before,
.woocommerce-js div.product .woocommerce-tabs ul.tabs li.active::before {
  display: none !important;
}

/* Product Single image */
.woocommerce-product-gallery__image {
  width: 890px;
  height: 550px;
}

.woocommerce-product-gallery__image img,
.woocommerce div.product div.images img {
  object-fit: contain;
  opacity: 1 !important;
}

/* ---------------------------------------------------------------
   Product Gallery Image
--------------------------------------------------------------- */

.woocommerce-product-gallery__image {
  height: 550px;
  object-fit: cover;
  align-items: center;
  max-width: 100% !important;
  overflow: hidden;
}

.woocommerce-product-gallery__image img {
  height: 100% !important;
  width: 100% !important;
  margin-bottom: 0px !important;
  border-radius: 10px;
}

/* ---------------------------------------------------------------
   Review Form Wrapper
--------------------------------------------------------------- */

.woocommerce div#review_form {
  background-color: #f8f8f8;
  border-radius: 8px;
}

.woocommerce form.comment-form {
  padding-top: 10px;
}

.woocommerce.woocommerce-js #reviews #review_form #respond p {
  margin: 10px 0;
}

/* ---------------------------------------------------------------
   Review Form — Comment Label
--------------------------------------------------------------- */

.woocommerce.woocommerce-js #reviews .comment-form-comment label {
  font-weight: 500;
  font-size: 14px;
  line-height: 26.4px;
}

/* ---------------------------------------------------------------
   Hide Duplicate / Unwanted Elements
--------------------------------------------------------------- */

.woocommerce-product-attributes,
.woocommerce-Tabs-panel--additional_information,
.woocommerce .woocommerce-message::after {
  display: none !important;
}

/* ---------------------------------------------------------------
   Related Products Script Font
--------------------------------------------------------------- */

.woocommerce .rel-product {
  font-family: Dancing Script;
}

/* ---------------------------------------------------------------
   Add to Cart Button — Full Width Black
--------------------------------------------------------------- */
.single_add_to_cart_button,
.woocommerce div.product form.cart .single_add_to_cart_button {
  background-color: #111111 !important;
  color: #ffffff !important;
  border: 1.5px solid #111111 !important;
  border-radius: 6px !important;
  padding: 14px 30px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase;
  width: 100%;
  cursor: pointer !important;
  transition: background-color 0.25s ease, color 0.25s ease !important;
}



.single_add_to_cart_button:hover,
.woocommerce div.product form.cart .single_add_to_cart_button:hover {
  background-color: transparent !important;
  color: #111111 !important;
  border-color: #111111 !important;
}

.single_add_to_cart_button:active,
.woocommerce div.product form.cart .single_add_to_cart_button:active {
  background-color: #1a1a1a !important;
}

/* .single_add_to_cart_button:hover {
  background-color: #333333 !important;
} */

/* ---------------------------------------------------------------
   Quantity Input — Remove Default Border
--------------------------------------------------------------- */

.woocommerce div.product form.cart .quantity input.qty {
  border: none;
}

/* ---------------------------------------------------------------
   Quantity Spinner — Hide Browser Arrows
--------------------------------------------------------------- */

/* Chrome, Safari, Edge */
.single-product .quantity input::-webkit-outer-spin-button,
.single-product .quantity input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
.single-product .quantity input[type="number"] {
  -moz-appearance: textfield;
}

/* ---------------------------------------------------------------
   Cart Page
--------------------------------------------------------------- */

.woocommerce-cart .product-name a {
  color: #808080;
}

.woocommerce-cart .product-name a:hover {
  color: #000000;
}

/* ---------------------------------------------------------------
   Cart Form Layout
--------------------------------------------------------------- */

/* .woocommerce div.product form.cart {
  display: flex;
  gap: 12px;
  align-items: center;
  background: #f8f8f8;
  padding: 15px;
  border-radius: 8px;
  position: relative;
  height: 111px;
} */
.tagged_as a:hover {
  color: #000 !important;
}

.woocommerce div.product form.cart {
  display: flex;
  gap: 0px;
  align-items: center;
  background: #ffffff;
  padding: 0;
  border-radius: 8px;
  position: relative;
  height: 111px;
}

/* ---------------------------------------------------------------
   Quantity Label Position
--------------------------------------------------------------- */

p.quantity-label-text {
  left: 25px;
  position: absolute;
  top: 20px;
  bottom: 0;
  display: none;
}

/* ---------------------------------------------------------------
   Add to Cart Button Position Inside Cart Form
--------------------------------------------------------------- */
/* .woocommerce div.product form.cart .button {
    margin-bottom: 0px;
    transition: all 0.3s ease;
} */

/* .woocommerce div.product form.cart .button:hover {
    color: #000;
    background: #ffffff;
} */

/* ---------------------------------------------------------------
   Custom Quantity +/- Buttons
--------------------------------------------------------------- */

button.od-qty-minus,
button.od-qty-plus {
  background: transparent;
  color: #000;
  border: none;
  box-shadow: none;
  padding: 0;
  width: 42px;
  height: 42px;
}

button.od-qty-minus:hover,
button.od-qty-plus:hover,
button.od-qty-minus:focus,
button.od-qty-plus:focus {
  border: none;
}

/* ---------------------------------------------------------------
   Quantity Wrapper Box
--------------------------------------------------------------- */

.woocommerce-js div.product form.cart div.quantity {
  background: #fff;
  border: 1px solid #cfcfcf;
  border-radius: 8px;
  margin: 0;
  bottom: -20px;
  position: relative;
}

/* ---------------------------------------------------------------
   Product Meta Box
--------------------------------------------------------------- */

/* .woocommerce-js div.product .product_meta {
    padding: 10px;
    border-radius: 8px;
    background: #f8f8f8;
    border: 1px solid #dddddd;
    margin-top: 20px;
    text-align: center;
    
}

.woocommerce-js div.product .product_meta:hover {
    background: #ffffff;
    border-color: #111111;  
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.10);
} */
/* ---------------------------------------------------------------
   Hide Tagged As in Product Meta
--------------------------------------------------------------- */

span.tagged_as {
  display: none !important;
}

/* ---------------------------------------------------------------
   Product Meta Category Links
--------------------------------------------------------------- */

/* .wp-singular.woocommerce .product_meta .posted_in a {
  color: #000;
} */

/* ---------------------------------------------------------------
   Product Attributes — Horizontal Grid
--------------------------------------------------------------- */

.custom-attr-horizontal {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(125px, 1fr));
  gap: 12px;
  margin-bottom: 20px;
}

/* ---------------------------------------------------------------
   Attribute Item Card
--------------------------------------------------------------- */

/* .attr-item {
  border: 1px solid #dddddd;
  border-radius: 8px;
  padding: 15px;
  display: flex;
  flex-direction: column;
}

.attr-label {
  font-size: 16px;
  line-height: 20px;
  color: #000000;
  margin-bottom: 4px;
  font-weight: 400;
}

.attr-value {
  line-height: 26px;
  font-size: 18px;
  color: #111;
  font-weight: 600;
} */


.custom-attr-horizontal {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(125px, 1fr));
  gap: 16px;
  margin-bottom: 20px;
}

.attr-item {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 18px 12px;
  background: #ffffff;
  border-radius: 10px;
  overflow: hidden;
  isolation: isolate;
  z-index: 0;
}

.attr-item::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -2;
  border-radius: 10px;
  padding: 2px;
  background: conic-gradient(from var(--angle, 0deg),
      transparent 0%,
      transparent 85%,
      #420606b9 90%,
      #4d48049d 93%,
      #144707be 96%,
      #00c3ff2a 99%,
      transparent 100%);
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  opacity: 0;
  transition: opacity 0.2s ease;
  animation: rotateBorder 2.5s linear infinite paused;
}

.attr-item::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: #ffffff00;
  border-radius: 10px;
  border: 1.5px solid #e5e5e5;
}

.attr-item:hover::before {
  opacity: 1;
  animation-play-state: running;
}

.attr-item:hover::after {
  border-color: transparent;
}

@property --angle {
  syntax: '<angle>';
  initial-value: 0deg;
  inherits: false;
}

@keyframes rotateBorder {
  to {
    --angle: 360deg;
  }
}

.attr-label {
  font-weight: 500;
  color: #888888;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  position: relative;
  z-index: 1;
}

.attr-value {
  font-weight: 700;
  color: #111111;
  position: relative;
  z-index: 1;
}

/* ---------------------------------------------------------------
   Short Description
--------------------------------------------------------------- */

.custom-short-description {
  font-size: 14px;
  line-height: 1.7;
  color: #444;
  margin: 20px 0;
}

/* ---------------------------------------------------------------
   Single Product Entry Header Spacing
--------------------------------------------------------------- */

.single.single-product .entry-header {
  margin-top: 30px;
}

/* ---------------------------------------------------------------
   Review Form — Rating Label
--------------------------------------------------------------- */

.woocommerce.single-product .comment-form-rating label {
  font-size: 16px !important;
  line-height: 26px;
}

/* ---------------------------------------------------------------
   Rating Stars — Black Color
--------------------------------------------------------------- */

.woocommerce p.stars a,
.woocommerce p.stars a:before,
.star-rating span:before,
.woocommerce .star-rating span:before,
#rating option,
.comment-form-rating .stars a,
.comment-form-rating .stars a:before {
  color: #111111 !important;
}

/* Selected Stars */
.woocommerce p.stars.selected a.active:before,
.woocommerce p.stars.selected a:not(.active):before,
.woocommerce p.stars:hover a:before {
  color: #111111 !important;
}

.woocommerce .stars span {
  position: relative;
  top: -6px;
}

/* ---------------------------------------------------------------
   Elementor Accordion — Open State Radius Fix
--------------------------------------------------------------- */

.e-n-accordion-item[open] .e-n-accordion-item-title {
  border-bottom-left-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}

.e-n-accordion-item[open] .e-con {
  border-bottom-left-radius: 12px !important;
  border-bottom-right-radius: 12px !important;
  overflow: hidden;
}

/* ---------------------------------------------------------------
   Review Form — Rating Row Layout
--------------------------------------------------------------- */

.comment-form-rating {
  display: flex;
  align-items: center;
  gap: 10px;
}

/* ---------------------------------------------------------------
   FAQ Accordion — Answer Visibility
--------------------------------------------------------------- */

.od-faq-ans {
  display: none;
}

.od-faq-item.active .od-faq-ans {
  display: block;
}

/* ---------- enquiry form -------- */
.od-popup-heading {
  text-align: center;
}

.od-popup-heading h1 span {
  font-family: "Dancing Script";
}

.forminator-field .od-enqury-form-btn {
  padding: 10px 15px;
  width: 100%;
}

/* -------------------------- 
        My account
----------------------------- */
.woocommerce-account .entry-content h2 {
  margin-bottom: 30px;
  text-align: center;
}

/* .woocommerce-account .entry-header h1 {
  text-align: center;
} */
.woocommerce-account .woocommerce-form.woocommerce-form-login.login {
  max-width: 375px;
  width: 100%;
  border: 1px solid #e7dfd4d1;
  border-radius: 10px;
  padding: 30px;
  margin: 0px auto;
}

.woocommerce-account .woocommerce-ResetPassword.lost_reset_password {
  max-width: 565px;
  width: 100%;
  border: 1px solid #e7dfd4d1;
  border-radius: 10px;
  padding: 30px;
  margin: 0px auto;
}

.woocommerce-account .woocommerce-form label,
.woocommerce-account .woocommerce-ResetPassword.lost_reset_password label,
.woocommerce-account .woocommerce-EditAccountForm.edit-account .form-row label,
.woocommerce-address-fields__field-wrapper .form-row label {
  font-weight: 500;
  margin-bottom: 10px;
}

.woocommerce-account .woocommerce-form .form-row,
.woocommerce-account .woocommerce-ResetPassword.lost_reset_password .form-row {
  width: 100%;
  padding: 0;
  margin: 0 0 20px;
}

.woocommerce-account .woocommerce-EditAccountForm.edit-account .form-row,
.woocommerce-address-fields__field-wrapper .form-row {
  padding: 0;
  margin: 0 0 20px;
}

.woocommerce-account .woocommerce-form .form-row input,
.woocommerce-account .woocommerce-ResetPassword.lost_reset_password .form-row input,
.woocommerce-account .woocommerce-EditAccountForm.edit-account .form-row input,
.woocommerce-address-fields__field-wrapper .form-row input {
  background-color: #f3f3f3;
  border-radius: 3px;
  color: #000;
  padding: 5px 10px;
}

.woocommerce-account .woocommerce-LostPassword {
  margin-bottom: 0;
}

.woocommerce-account .woocommerce-LostPassword a {
  color: #000000cc;
}

.woocommerce-account .woocommerce-LostPassword a:hover {
  color: #000000;
}

.woocommerce-account .woocommerce-button.button.woocommerce-form-login__submit,
.woocommerce-account .woocommerce-Button.button,
.woocommerce-address-fields .button,
.woocommerce-account .woocommerce-orders-table__cell.woocommerce-orders-table__cell-order-actions a {
  padding: 12px 15px;
  border: 1px solid #000;
  width: 100%;
  text-align: center;
}

.woocommerce-account .woocommerce-address-fields__field-wrapper {
  margin-bottom: 20px;
}

.woocommerce-account .woocommerce-button.button.woocommerce-form-login__submit:hover,
.woocommerce-account .woocommerce-Button.button:hover,
.woocommerce-account .woocommerce-orders-table__cell.woocommerce-orders-table__cell-order-actions a:hover {
  border: 1px solid #000;
  background-color: #00000000;
  color: #000;
  transition:
    background-color 0.2s,
    color 0.2s;
}

.woocommerce-account.ast-plain-container.ast-no-sidebar #primary {
  margin: 100px 0;
}

.woocommerce-account .woocommerce-Address-title h2 {
  margin-bottom: 0px;
}

.woocommerce-account .woocommerce-Address-title.title {
  border: 0;
  background-color: #f2f2f2;
  border-radius: 20px;
  padding: 20px 10px;
  box-shadow: 0 0 5px #ccc;
  margin: 20px 0;
  display: flex;
  justify-content: space-around;
  align-items: center;
}

.woocommerce-account .woocommerce-Address address {
  border: 1px solid #ccc;
  border-radius: 10px;
  margin-bottom: 0;
  flex: 1;
}

.woocommerce-account .woocommerce-Addresses {
  display: flex;
  gap: 20px;
  justify-content: space-between;
}

.woocommerce-account .woocommerce-Address {
  display: flex;
  flex-direction: column;
}

.woocommerce-account .woocommerce-Address-title .edit {
  font-size: 0;
  position: relative;
}

.woocommerce-account .woocommerce-Address-title .edit::before {
  content: "";
  display: inline-block;
  width: 30px;
  height: 30px;
  background-image: url("/wp-content/themes/astra-child/assets/images/address-edit.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.woocommerce-account .woocommerce-MyAccount-navigation-link a {
  color: #000000cc;
  font-weight: 500;
  padding: 12px 15px;
}

.woocommerce-account .woocommerce-MyAccount-navigation-link.woocommerce-MyAccount-navigation-link--customer-logout a {
  color: #d30909;
}

.woocommerce-account .woocommerce-MyAccount-navigation-link a:hover {
  color: #000000;
}

.woocommerce-account .woocommerce-MyAccount-navigation-link.is-active a {
  background-color: #f3f3f3;
  color: #000000;
}

.woocommerce-account .woocommerce-MyAccount-navigation-link {
  border: 1px solid #9d9d9d;
  border-bottom-width: 1px;
  border-radius: 10px;
  overflow: hidden;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.woocommerce-account .woocommerce-MyAccount-content {
  background: #fafafa;
  border: 1px solid #9d9d9d;
  padding: 12px 15px;
  border-radius: 10px;
}

.woocommerce-account .woocommerce-MyAccount-content p a {
  color: #000000bc;
  font-weight: 700;
}

.woocommerce-account .woocommerce-MyAccount-content p {
  margin-bottom: 10px;
}

.woocommerce-account .woocommerce-MyAccount-content p:last-child {
  margin-bottom: 0px;
}

.woocommerce-account .woocommerce-MyAccount-content p a:hover {
  color: #000000;
  text-decoration: underline;
}

.woocommerce-account .woocommerce-info {
  padding: 0px !important;
  margin: 0px;
  background-color: transparent;
  border-top: 0;
  align-items: center;
  display: flex;
  justify-content: space-between;
}

.woocommerce-account .woocommerce-info::before,
.woocommerce-account .addresses .title::before,
.woocommerce-account .woocommerce-Addresses::before {
  display: none;
}

.woocommerce-account .woocommerce-info::after,
.woocommerce-account .addresses .title::after,
.woocommerce-account .woocommerce-Addresses::after {
  display: none;
}

.woocommerce-account .woocommerce-MyAccount-content table {
  margin-bottom: 0;
}

.woocommerce-account .woocommerce-orders-table__cell.woocommerce-orders-table__cell-order-number a {
  color: #000000cc;
}

.woocommerce-account .woocommerce-orders-table__cell.woocommerce-orders-table__cell-order-number a:hover {
  color: #000000;
}

.woocommerce-account .woocommerce-orders-table thead tr th span {
  font-size: 16px;
}

.woocommerce-account .woocommerce-js #customer_details,
.woocommerce-account .woocommerce-js .woocommerce table.shop_table {
  margin-bottom: 0;
  border-radius: 10px;
  border: 1px solid #9d9d9d;
  overflow: hidden;
  padding-top: 10px;
}

/* ------ 404 -------- */
.error404 .ast-container {
  justify-content: center;
}

.od-404-wrapper {
  text-align: center;
  padding: 80px 10px;
}

.od-404-wrapper .od-404-image {
  margin-bottom: 30px;
}

.od-404-wrapper .od-404-button a {
  padding: 12px 15px;
  background: #000;
  color: #fff;
  text-decoration: none;
  border-radius: 10px;
  border: 1px solid #000;
}

.od-404-wrapper .od-404-button a:hover {
  background: transparent;
  color: #000;
  transition: all 0.3s ease;
  border: 1px solid #000;
}

img.swiper-slide-image {
  height: 100%;
  width: auto;
}


.iti {
  width: 100%;
  margin-top: 12px;
}

.od-form-control.iti__tel-input {
  padding-left: 90px !important;
}

.iti__flag-container {
  padding: 0 6px;
}

.iti__selected-flag {
  padding: 0 8px 0 12px;
}

.iti__country-list {
  border-radius: 4px;
  box-shadow: 0px 5px 10px rgba(90, 116, 148, 0.3);
  z-index: 9999;
}

.iti {
  width: 100%;
}

#billing_phone.iti__tel-input {
  padding-left: 90px !important;
}





.quantity {
  display: none !important;
}

ul.products .quantity {
  display: none !important;
}


.woocommerce-cart .product-quantity .quantity {
  display: none !important;
}

.woocommerce-cart td.product-quantity {
  display: none !important;
}

.woocommerce-cart th.product-quantity {
  display: none !important;
}


.woocommerce-checkout-review-order-table .product-quantity {
  display: none !important;
}

.woocommerce-mini-cart-item .quantity {
  display: none !important;
}




/* Forminator Phone Field - fix placeholder overlap */
.forminator-field--phone.iti__tel_input,
.forminator-custom-form .iti__tel_input {
  padding-left: 90px !important;
  height: 44px;
}

.forminator-custom-form .iti__country-container {
  z-index: 5;
}

.forminator-custom-form .iti__selected-flag {
  padding: 0 10px 0 14px;
  width: auto;
}

.forminator-custom-form .iti__flag-container {
  padding: 0;
}

/* Dropdown list z-index fix (taaki overlap na ho dusre fields se) */
.forminator-custom-form .iti__country-list {
  z-index: 9999;
}



.product_meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 20px;
  padding: 18px 0;
  border-top: 1px solid #e0e0e0;
  border-bottom: 1px solid #e0e0e0;
  margin: 24px 0;
}

.product_meta>span {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-size: 16px;
  font-weight: 500 !important;
  color: #7b4b4b;
  text-transform: uppercase;
  letter-spacing: 0.8px;
}

.product_meta .sku_wrapper {
  gap: 6px;
}

.product_meta .sku_wrapper .sku {
  color: #000000;
  font-weight: 700;
  text-transform: none;
  letter-spacing: normal;
  font-size: 14px;
}

.product_meta .posted_in {
  gap: 8px;
}

.product_meta .posted_in a {
  display: inline-block;
  color: #000000;
  text-decoration: none;
  font-weight: 600 !important;
  text-transform: capitalize;
  letter-spacing: normal;
  font-size: 14px;
  padding: 4px 14px;
  border: 1.5px solid #000000;
  border-radius: 20px;
  transition: all 0.1s ease;
}

.product_meta .posted_in a:hover {
  background: #000000;
  color: #ffffff;
  transform: translateY(-2px);
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
}




.woocommerce-bacs-bank-details {
  background-color: #F0F9F0;
  border: 1px solid #B8E0B8;
  border-left: 4px solid #4CAF50;
  border-radius: 8px;
  padding: 24px 28px;
  margin: 24px 0;
}

.woocommerce-bacs-bank-details h2 {
  font-size: 20px;
  font-weight: 600;
  color: #2E7D32;
  margin: 0 0 16px 0;
}

.woocommerce-bacs-bank-details h3 {
  font-size: 16px;
  font-weight: 600;
  color: #1B1B1B;
  margin: 0 0 16px 0;
}

.woocommerce-bacs-bank-details .woocommerce-bacs-bank-details-account-name {
  font-weight: 600;
}

.woocommerce-bacs-bank-details ul.woocommerce-bacs-bank-details-account {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
}

.woocommerce-bacs-bank-details ul.woocommerce-bacs-bank-details-account li {
  background-color: #FFFFFF;
  border: 1px solid #D6EDD6;
  border-radius: 6px;
  padding: 12px 18px;
  min-width: 180px;
}

.woocommerce-bacs-bank-details ul.woocommerce-bacs-bank-details-account li strong {
  display: block;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #6B8E6B;
  margin-bottom: 4px;
}


/* Thank you message */
.woocommerce-order .woocommerce-notice--success {
  background-color: #EFF6FF;
  border: 1px solid #BFDBFE;
  border-left: 4px solid #3B82F6;
  border-radius: 8px;
  padding: 16px 20px;
  color: #1E40AF;
  font-weight: 500;
}

/* Order Number / Date / Email / Total / Payment Method row */
.woocommerce-order-overview.woocommerce-thankyou-order-details {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  list-style: none;
  background-color: #F8FAFC;
  border: 1px solid #E2E8F0;
  border-radius: 8px;
  padding: 20px 24px;
  margin: 20px 0;
}

.woocommerce-order-overview.woocommerce-thankyou-order-details li {
  margin: 0;
  padding: 0;
  border: none;
  flex: 1 1 auto;
  min-width: 140px;
}

.woocommerce-order-overview.woocommerce-thankyou-order-details li strong {
  display: block;
  font-size: 15px;
  font-weight: 600;
  color: #0F172A;
  margin-top: 4px;
}

/* "Please use your Order ID..." instructions paragraph */
.woocommerce-order>p {
  background-color: #EFF6FF;
  border: 1px solid #BFDBFE;
  border-radius: 8px;
  padding: 16px 20px;
  margin: 20px 0;
  line-height: 1.7;
  color: #1E3A8A;
}

/* Bank details box */
.woocommerce-bacs-bank-details {
  background-color: #EFF6FF;
  border: 1px solid #BFDBFE;
  border-left: 4px solid #3B82F6;
  border-radius: 8px;
  padding: 24px 28px;
  margin: 24px 0;
}

.woocommerce-bacs-bank-details h2 {
  font-size: 20px;
  font-weight: 600;
  color: #1D4ED8;
  margin: 0 0 16px 0;
}

.woocommerce-bacs-bank-details h3 {
  font-size: 16px;
  font-weight: 600;
  color: #1B1B1B;
  margin: 0 0 16px 0;
}

.woocommerce-bacs-bank-details .woocommerce-bacs-bank-details-account-name {
  font-weight: 600;
}

.woocommerce-bacs-bank-details ul.woocommerce-bacs-bank-details-account {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
}

.woocommerce-bacs-bank-details ul.woocommerce-bacs-bank-details-account li {
  background-color: #FFFFFF;
  border: 1px solid #DBEAFE;
  border-radius: 6px;
  padding: 12px 18px;
  min-width: 180px;
}

.woocommerce-bacs-bank-details ul.woocommerce-bacs-bank-details-account li strong {
  display: block;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #60A5FA;
  margin-bottom: 4px;
}






/* 21-07-2026 */

.woocommerce ul.products li.product .astra-shop-thumbnail-wrap .add_to_cart_button {

  display: inline-block !important;
  width: 100%;
  text-align: center;
 

}

.woocommerce ul.products li.product .astra-shop-thumbnail-wrap .add_to_cart_button:hover {
  background: transparent;
  color: #000;
  border: 1px solid #000;
}







/* ================= RESPONSIVE ================= */

@media only screen and (max-width: 1366px) {
  .woocommerce ul.products {
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 20px;
  }

  .od-badge {
    top: 15px;
    left: 15px;
    font-size: 16px;
  }

  .od-title {
    font-size: 24px;
    padding: 7px 15px 7px 15px;
  }

  .woocommerce ul.products li.product.outofstock .astra-shop-thumbnail-wrap::after {
    padding: 5px 8px;
  }

  /* our promise */
  .op-our-promise-col {
    width: 100%;
  }
}

@media only screen and (max-width: 1024px) {
  body.ehf-header #masthead {
    position: relative;
  }

  .woocommerce ul.products {
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 20px;
  }

  .od-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 15px;
  }

  .od-item {
    grid-column: span 1 !important;
  }

  .od-content {
    bottom: 7px;
  }

  .od-diamond-guide {
    grid-template-columns: repeat(3, 1fr);
  }

  /* blog listing page css*/
  .blog-header p {
    margin-bottom: 30px;
  }

  .blog-header h2 {
    margin-bottom: 10px;
  }

  html .od-blog-card__title a,
  html .od-blog-card__title a:visited,
  html .od-blog-card__title a:hover {
    font-size: 20px;
    line-height: 24px;
  }

  h2.od-blog-card__title {
    margin-top: 10px;
  }

  html .blog.ast-separate-container #primary {
    margin: 40px 0 40px 0;
  }

  .od-single-container {
    gap: 30px;
  }

  .od-single-text .wp-block-table {
    margin: 30px 0;
  }

  .od-leave-a-comment .od-comment-title {
    margin-top: 30px;
  }

  .od-single-container {
    padding: 60px 10px;
  }

  .od-comment-success {
    margin-bottom: -30px;
    padding: 15px;
    font-size: 16px;
  }

  .woocommerce .related.products {
    padding-top: 40px;
    padding-bottom: 40px;
  }

  .woocommerce.woocommerce-js div.product .woocommerce-tabs {
    margin-bottom: 40px;
  }

  .woocommerce-account.ast-plain-container.ast-no-sidebar #primary {
    margin: 60px 0;
  }
}

@media only screen and (max-width: 991px) {
  .od-shape-slider .shape-card:hover .shape-inner {
    box-shadow: none;
  }

  .od-grid,
  .od-blog-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .woocommerce-account .u-column1.col-1.woocommerce-Address,
  .woocommerce-account .u-column2.col-2.woocommerce-Address {
    width: 100%;
  }

  .woocommerce-account .woocommerce-Addresses {
    flex-direction: column;
    gap: 0;
  }
}

@media only screen and (max-width: 921px) {
  .woocommerce-account .woocommerce-MyAccount-content {
    margin-top: 30px;
  }

  /* .woocommerce-js #customer_details,
  .woocommerce-js .woocommerce table.shop_table {
    padding-top: 0px;
  } */
}

@media only screen and (max-width: 767px) {
  .woocommerce ul.products {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 15px;
  }

  .woocommerce ul.products li.product .price ins {
    font-size: 16px;
  }

  .woocommerce ul.products li.product .price del {
    font-size: 14px;
  }

  .od-badge {
    top: 10px;
    left: 10px;
    padding: 7px 10px;
    font-size: 14px;
  }

  .woocommerce ul.products li.product.outofstock .astra-shop-thumbnail-wrap::after {
    padding: 5px 5px;
  }

  .od-grid {
    gap: 10px;
  }

  .od-title {
    font-size: 20px;
  }

  .od-diamond-guide {
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
  }

  .od-diamond-guide .od-guide-image-wrapper {
    position: relative;
    height: 500px;
  }

  .od-testimonial-slider .owl-nav {
    display: none;
  }

  .od-faq-wrap,
  .od-cat-desc {
    padding-top: 40px;
  }

  .od-cat-wrap {
    padding-bottom: 40px;
  }

  .od-cat-bottom {
    margin: 40px auto;
  }

  .od-contact-form .od-form-row {
    flex-direction: column;
    gap: 0;
  }

  .od-cta-box {
    padding: 36px 20px;
  }

  .term-description {
    padding-bottom: 22px;
  }

  .od-faq-btn {
    padding: 16px 46px 16px 16px;
    font-size: 14px;
  }

  .od-single-text .wp-block-table table {
    min-width: 700px;
  }

  .od-single-text .wp-block-table {
    margin: 20px 0;
  }

  .od-single-text .wp-block-table td,
  .od-single-text .wp-block-table th {
    padding: 5px 10px;
  }

  .od-single-container {
    gap: 20px;
  }

  .od-single-text .wp-block-table {
    margin: 20px 0;
  }

  .od-leave-a-comment .od-comment-title {
    margin-top: 20px;
  }

  .od-leave-a-comment .comment-respond {
    padding: 20px;
  }

  .od-leave-a-comment .comment-form p {
    margin-bottom: 15px;
  }

  .od-single-container {
    padding: 40px 10px;
  }

  .od-comment-success {
    margin-bottom: -10px;
  }

  .od-single-text figure img {
    margin: 15px 0 20px 0;
  }

  .od-single-text p,
  .od-single-text a,
  .od-single-text li {
    margin-bottom: 12px;
    font-size: 14px;
  }

  .wp-singular .forminator-ui.forminator-custom-form-1315.forminator-design--default .forminator-radio-image {
    padding: 10px !important;
  }

  .wp-singular .forminator-ui.forminator-custom-form[data-design="default"] .forminator-radio.forminator-radio-inline {
    margin-right: 8px;
  }

  .woocommerce-account.ast-plain-container.ast-no-sidebar #primary {
    margin: 40px 0;
  }

  .woocommerce-account .woocommerce-MyAccount-content {
    margin-top: 30px;
  }
}

@media only screen and (max-width: 480px) {
  .od-grid {
    display: block;
  }

  .woocommerce ul.products {
    grid-template-columns: repeat(1, 1fr) !important;
    gap: 15px;
  }

  .od-blog-grid,
  .od-diamond-guide {
    grid-template-columns: repeat(1, 1fr);
  }

  .od-diamond-guide .od-guide-image-wrapper {
    position: relative;
    height: 350px;
  }

  .pum-theme-1550 .pum-container,
  .pum-theme-lightbox .pum-container {
    padding: 20px !important;
  }
}

/* ---------------------------------------------------------------
   Responsive — Small Mobile
--------------------------------------------------------------- */

@media (max-width: 460px) {
  .woocommerce div.product form.cart {
    flex-direction: column;
    height: 150px;
  }

  .od-quantity-wrap {
    display: flex;
    align-items: center;
    gap: 10px;
  }

  p.quantity-label-text {
    left: 0;
    position: relative;
    top: 0;
    bottom: 0;
    margin: 0;
  }

  .woocommerce-product-gallery__image {
    height: 350px;
  }

  .woocommerce-js div.product form.cart div.quantity,
  .woocommerce div.product form.cart .button {
    bottom: 0;
  }
}