:root {
  --sb-cream: #faf7f2;
  --sb-sand: #f0ebe1;
  --sb-ink: #1a1714;
  --sb-ink2: #5a544c;
  --sb-terracotta-dark: #a04a26;
  --sb-sage: #7a8a6e;
  --sb-line: #e6dfd2;
   --sb-shadow: 0 2px 12px rgba(26,23,20,.06);
  --sb-shadow-lift: 0 12px 32px rgba(26,23,20,.12);
  --sb-serif: 'Playfair Display', Georgia, serif;
  --sb-sans: 'Inter', system-ui, sans-serif;
  --sb-lao: 'Noto Sans Lao', sans-serif;
	--sb-light-blue: #f0f7ff; 
    --sb-blue-line: #d0e1f2;
    --sb-terracotta: #c24d2c;
    --sb-radius: 16px;
}
body { background: var(--sb-cream); color: var(--sb-ink); font-family: var(--sb-sans); }
h1, h2, h3 { font-family: var(--sb-serif); font-weight: 700; letter-spacing: -.02em; }
.sb-lao { font-family: var(--sb-lao); }


.products .product { background: #fff; border: 1px solid var(--sb-line); border-radius: var(--sb-radius); padding: 0; overflow: hidden; transition: transform .2s, box-shadow .2s; }
.products .product:hover { transform: translateY(-4px); box-shadow: var(--sb-shadow-lift); }
.products .product img { aspect-ratio: 1; object-fit: cover; }
.sb-card__brand { display: block; font-size: 11px; letter-spacing: .1em; color: var(--sb-terracotta); margin: 16px 16px 4px; font-weight: 600; }
.sb-card__title { font-size: 17px; margin: 0 16px 8px; line-height: 1.25; }
.products .product .price { font-family: var(--sb-sans); font-weight: 600; color: var(--sb-ink); margin: 0 16px 16px; font-size: 16px; }
.products .product .button, .products .product .add_to_cart_button { margin: 0 16px 16px; border-radius: 999px; }


/* Hide the theme's duplicate title and any extra category links */
.products .product .entry-title, 
.products .product h2.woocommerce-loop-product__title,
.products .product .blocksy-product-categories {
    display: none !important;
}

/* Ensure your custom link doesn't have default underline */
.sb-card__link {
    text-decoration: none;
    color: inherit;
    display: block;
}

.sb-card__link:hover .sb-card__title {
    color: var(--sb-terracotta, #c24d2c);
}

.sb-card__title {
    font-size: 17px;
    margin: 0 16px 16px;
    line-height: 1.25;
    font-weight: 700;
}

.sb-deposit-block { 
    background: var(--sb-light-blue); 
    border-radius: var(--sb-radius); 
    padding: 35px 25px; 
    margin: 30px 0; 
    border: 1px solid var(--sb-blue-line);
    box-shadow: inset 0 0 40px rgba(255,255,255,0.5); /* Adds a subtle inner glow */
}

.sb-deposit-block__bar { 
    height: 8px; 
    background: #e1eaf3; /* Matching light blue track */
    border-radius: 4px; 
    overflow: hidden; 
    max-width: 300px;
    margin: 0 auto;
}

/* Keep the split line matching the new blue theme */
.sb-deposit-block__split { 
    display: grid; 
    grid-template-columns: 1fr 1fr; 
    gap: 20px; 
    margin-top: 30px; 
    padding-top: 20px;
    border-top: 1px solid var(--sb-blue-line);
}

.sb-deposit-block__bar::before { 
    content:''; 
    display:block; 
    width:20%; 
    height:100%; 
    background: var(--sb-terracotta); 
}



/* Styling for the main title on the Single Product Page */
.product_title {
    font-family: 'Playfair Display', serif; /* Or your preferred brand font */
    font-weight: 800;
    letter-spacing: -0.02em;
    line-height: 1.1;
    color: #1a1714;
    margin-bottom: 0.5em;
}


/* Styling for the Login Page */
.woocommerce-account:not(.logged-in) .u-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 0; max-width: 1100px; margin: 40px auto; border-radius: var(--sb-radius); overflow: hidden; box-shadow: var(--sb-shadow); }
.woocommerce-account:not(.logged-in) .u-columns .col-1, .woocommerce-account:not(.logged-in) .u-columns .col-2 { padding: 48px; background: #fff; }
.sb-account-brand { background: linear-gradient(160deg, var(--sb-terracotta), var(--sb-terracotta-dark)) !important; color: #fff; padding: 64px 48px !important; }
.sb-account-brand h2 { font-size: 32px; color: #fff; margin-bottom: 16px; }
.sb-account-perks { list-style: none; padding: 0; margin-top: 32px; }
.sb-account-perks li { padding: 8px 0; opacity: .9; }
@media (max-width: 768px) { .woocommerce-account:not(.logged-in) .u-columns { grid-template-columns: 1fr; } }


/* Styling for the categories */
.tax-product_cat .page-header { padding: 60px 24px 40px; text-align: center; background: var(--sb-sand); margin-bottom: 40px; }
.tax-product_cat .page-header h1 { font-size: 48px; margin-bottom: 12px; }
.tax-product_cat .term-description { max-width: 600px; margin: 0 auto; color: var(--sb-ink2); }
.woocommerce-result-count, .woocommerce-ordering { padding: 0 24px; }
.woocommerce-ordering select { padding: 10px 16px; border: 1px solid var(--sb-line); border-radius: 999px; background: #fff; }


/* Styling for the cart icon - activated in Customize → Header Builder → drag in the Cart element  */
.ct-header-cart .ct-cart-content { background: rgba(255,255,255,.85); backdrop-filter: blur(20px); border-left: 1px solid var(--sb-line); }

/* SEARCH BAR CODE   Container to force items into one row */
.search-form {
    display: flex !important;
    flex-direction: row;
    align-items: center;
    width: 100%;
    max-width: 350px; /* Adjust based on your header space */
}

/* Ensure the label doesn't break the layout */
.search-form label {
    flex-grow: 1;
    margin-bottom: 0;
    margin-right: 5px; /* Space between input and button */
	
}

/* Style the Input Field */
.search-form input[type="search"] {
    width: 100%;
    height: 32px;
    padding: 0 15px;
    border: 1px solid #e0e0e0;
    border-radius: 5px 0 0 5px; /* Rounded corners only on the left */
    font-size: 14px;
    background: #fff;
}

/* Style the Search Button */
/* Center the icon inside the button */
.search-form input[type="search"],
.search-form .search-submit {
    height: 32px !important;      /* Overrides theme defaults */
    min-height: 32px !important;  /* Prevents theme from stretching it */
    max-height: 32px !important;  /* Locks it in */
    line-height: 1 !important;    /* Removes extra vertical spacing */
    box-sizing: border-box !important; /* Ensures padding doesn't add to height */
    margin: 0 !important;         /* Removes any hidden margins */
}

/* Ensure the button stays aligned and centered */
.search-form .search-submit {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    padding: 0 10px !important;
    border: none;
}

/* Adjust the SVG icon size to fit the smaller button */
.search-form .search-submit svg {
    width: 14px !important;
    height: 14px !important;
}




/* CHANGE POSITION FOOTER RIGHT MENU */
/* Push the Legal Menu down by ~2 lines */
#footer-menu.footer-menu-inline {
    margin-top: 40px !important;
    display: block !important;
}

/* Ensure the list inside doesn't fight the spacing */
#footer-menu-legal {
    margin-top: 0 !important;
}


/* SHOP BY BRAND CUSTOMS */



/* Shrink only the brand section on single product pages */
.pwb-single-product-brands {
    font-size: 14px !important; /* Adjust this number to make it smaller */
    font-weight: 500;
    text-transform: uppercase;
	  opacity: 1 !important;    /* Ensures no transparency */
    display: block;
    margin-bottom: 10px;
    }


/* HIDE HOMEPAGE  name from homepage */
.home h1.entry-title,
.home h1.page-title,
.home .page-header {
  display: none;
}


.home .entry-header,
.home .page-header-inner,
.home .page-title-wrapper,
.home .hero-section,
.home .entry-title-wrap {
  display: none;
}




/* Scale up Siam-Bridge homepage blocks */
.trust-bar,
.how-it-works,
.payment-section,
.etrust-bar {
  padding: 48px 60px;
}

.trust-bar-inner,
.how-inner,
.payment-inner,
.etrust-inner {
  max-width: 100%;
}

.trust-label { font-size: 18px !important; }
.trust-sub   { font-size: 14px !important; }
.trust-icon  { width: 72px !important; height: 72px !important; font-size: 34px !important; }
.trust-divider { height: 72px !important; }

.section-tag   { font-size: 13px !important; padding: 6px 14px !important; }
.section-title { font-size: 34px !important; }
.step-title    { font-size: 18px !important; }
.step-desc     { font-size: 14px !important; }
.step-num      { width: 68px !important; height: 68px !important; font-size: 24px !important; }
.steps::before { top: 34px !important; }

.payment-title        { font-size: 26px !important; }
.payment-card         { padding: 28px !important; }
.payment-card-icon    { font-size: 40px !important; }
.payment-card-title   { font-size: 20px !important; }
.payment-card-amount  { font-size: 40px !important; }
.payment-card-desc    { font-size: 15px !important; }
.payment-card-badge   { font-size: 13px !important; padding: 4px 12px !important; }

.etrust-badge { font-size: 16px !important; padding: 10px 22px !important; }
.etrust-text  { font-size: 16px !important; }



