/** Shopify CDN: Minification failed

Line 964:0 All "@import" rules must come first
Line 1226:0 All "@import" rules must come first

**/
/* ================================================================
   INDBERRY | PREMIUM RESPONSIVE HOMEPAGE STYLES
   Installation: Shopify > Online Store > Themes > Edit code >
   Assets > add this file, then load it after your theme CSS; OR
   paste into theme's Custom CSS / base.css at the very bottom.

   Scoped to homepage via body.template-index OR body.index
   Common Shopify Dawn and Ella/Halo selectors are supported.
   For best results, confirm selectors using Inspect Element.
   ================================================================ */

:root {
  --ib-ink: #292121;
  --ib-body: #5e5350;
  --ib-muted: #8a7c76;
  --ib-rose: #b46e76;
  --ib-rose-deep: #9a525c;
  --ib-blush: #fbf0ee;
  --ib-ivory: #fffdf9;
  --ib-cream: #f8f3ed;
  --ib-sand: #e9d9cb;
  --ib-line: #e9e0d9;
  --ib-radius: 10px;
  --ib-shadow: 0 12px 34px rgba(70, 41, 37, .08);
  --ib-ease: cubic-bezier(.2, .75, .25, 1);
}

/* A. GLOBAL - scoped so product / collection / cart pages are safe */
body.template-index,
body.index {
  background: var(--ib-ivory);
  color: var(--ib-body);
  -webkit-font-smoothing: antialiased;
}
body.template-index :is(h1,h2,h3,h4,.h1,.h2,.h3,.h4),
body.index :is(h1,h2,h3,h4,.h1,.h2,.h3,.h4) {
  color: var(--ib-ink);
  text-wrap: balance;
}
body.template-index :is(p,.rte),
body.index :is(p,.rte) { line-height: 1.75; }
body.template-index :is(.page-width,.container,.halo-block-header),
body.index :is(.page-width,.container,.halo-block-header) { max-width: 1400px; }
body.template-index :is(.shopify-section,section[id^="shopify-section-"]),
body.index :is(.shopify-section,section[id^="shopify-section-"]) { scroll-margin-top: 90px; }
body.template-index :is(a,button),body.index :is(a,button) {
  -webkit-tap-highlight-color: transparent;
}
body.template-index :is(a,button):focus-visible,
body.index :is(a,button):focus-visible {
  outline: 2px solid var(--ib-rose);
  outline-offset: 3px;
}

/* B. HEADER / NAVIGATION */
body.template-index :is(.header-wrapper,.header-wrapper--border-bottom,.site-header,.header-area,.header-navigation,.header__wrapper),
body.index :is(.header-wrapper,.site-header,.header-area,.header-navigation,.header__wrapper) {
  background: rgba(255,253,249,.97);
  border-color: var(--ib-line);
}
body.template-index :is(.header__menu-item,.list-menu__item,.site-nav__link,.menu-lv-1__action,.header__inline-menu a),
body.index :is(.header__menu-item,.list-menu__item,.site-nav__link,.menu-lv-1__action,.header__inline-menu a) {
  color: var(--ib-ink);
  font-size: 12px;
  letter-spacing: .11em;
  text-transform: uppercase;
  font-weight: 600;
  transition: color .25s ease;
}
body.template-index :is(.header__menu-item,.list-menu__item,.site-nav__link,.menu-lv-1__action,.header__inline-menu a):hover,
body.index :is(.header__menu-item,.list-menu__item,.site-nav__link,.menu-lv-1__action,.header__inline-menu a):hover { color: var(--ib-rose-deep); }

/* C. HERO / SLIDESHOW */
body.template-index :is(.slideshow,.slideshow-wrapper,.banner,.halo-banner,.hero-banner),
body.index :is(.slideshow,.slideshow-wrapper,.banner,.halo-banner,.hero-banner) {
  overflow: hidden;
}
body.template-index :is(.banner__heading,.slideshow__text h2,.slide-content .slide-heading,.banner-content .banner-heading),
body.index :is(.banner__heading,.slideshow__text h2,.slide-content .slide-heading,.banner-content .banner-heading) {
  color: #51362f;
  font-family: Georgia, 'Times New Roman', serif;
  font-weight: 400;
  letter-spacing: -.028em;
  line-height: 1.16;
  font-size: clamp(32px,4.2vw,68px);
  text-shadow: none;
}
body.template-index :is(.banner__text,.slideshow__text p,.slide-content .slide-text),
body.index :is(.banner__text,.slideshow__text p,.slide-content .slide-text) {
  line-height: 1.7;
  font-size: clamp(13px,1.15vw,17px);
}
body.template-index :is(.slideshow__text-wrapper,.banner__content),
body.index :is(.slideshow__text-wrapper,.banner__content) { z-index: 2; }

/* D. SECTION TITLES / SPACING */
body.template-index :is(.title-wrapper-with-link,.title-wrapper,.halo-block-header,.section-header),
body.index :is(.title-wrapper-with-link,.title-wrapper,.halo-block-header,.section-header) { margin-bottom: 24px; }
body.template-index :is(.title-wrapper h2,.section-header h2,.halo-block-header .title,.halo-block-header .title .text,.main-title,.heading-title),
body.index :is(.title-wrapper h2,.section-header h2,.halo-block-header .title,.halo-block-header .title .text,.main-title,.heading-title) {
  color: var(--ib-ink);
  font-family: Georgia, 'Times New Roman', serif;
  font-weight: 400;
  text-transform: none;
  font-size: clamp(26px,2.8vw,42px);
  line-height: 1.2;
  letter-spacing: -.02em;
}
body.template-index :is(.title-wrapper h2,.section-header h2,.halo-block-header .title):after,
body.index :is(.title-wrapper h2,.section-header h2,.halo-block-header .title):after {
  border-color: var(--ib-sand);
}
body.template-index .shopify-section > .section:not(.header,.footer),
body.index .shopify-section > .section:not(.header,.footer) { margin-block: 0; }

/* E. COLLECTION CIRCLES / CATEGORIES */
body.template-index :is(.collection-list,.collection-list-wrapper,.halo-collection-list,.collection-list-slider),
body.index :is(.collection-list,.collection-list-wrapper,.halo-collection-list,.collection-list-slider) { --grid-desktop-horizontal-spacing: 24px; }
body.template-index :is(.collection-list .card,.collection-list .card-wrapper,.halo-collection-list .item,.collection-list-item),
body.index :is(.collection-list .card,.collection-list .card-wrapper,.halo-collection-list .item,.collection-list-item) {
  text-align: center;
}
body.template-index :is(.collection-list .media,.collection-list .card__media,.halo-collection-list .image,.collection-list-item .image),
body.index :is(.collection-list .media,.collection-list .card__media,.halo-collection-list .image,.collection-list-item .image) {
  border-radius: 50%;
  overflow: hidden;
  border: 3px solid #fff;
  box-shadow: 0 0 0 1px var(--ib-sand),0 8px 25px rgba(45,25,22,.07);
}
body.template-index :is(.collection-list img,.halo-collection-list img),
body.index :is(.collection-list img,.halo-collection-list img) {
  transition: transform .55s var(--ib-ease);
}
body.template-index :is(.collection-list a,.halo-collection-list a):hover img,
body.index :is(.collection-list a,.halo-collection-list a):hover img { transform: scale(1.065); }
body.template-index :is(.collection-list .card__heading,.halo-collection-list .title,.collection-list .card__heading a),
body.index :is(.collection-list .card__heading,.halo-collection-list .title,.collection-list .card__heading a) {
  color: var(--ib-ink);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: .02em;
  text-decoration: none;
}

/* F. GENERIC PRODUCT CARDS / FEATURED COLLECTION */
body.template-index :is(.product-grid,.products-grid,.productListing),
body.index :is(.product-grid,.products-grid,.productListing) { row-gap: 30px; }
body.template-index :is(.product-card-wrapper,.card-product,.product-item,.product-grid .grid__item),
body.index :is(.product-card-wrapper,.card-product,.product-item,.product-grid .grid__item) {
  min-width: 0;
}
body.template-index :is(.product-card-wrapper .card,.card-product,.product-item .card),
body.index :is(.product-card-wrapper .card,.card-product,.product-item .card) {
  background: #fff;
  border-radius: var(--ib-radius);
  overflow: hidden;
  border: 1px solid var(--ib-line);
  box-shadow: 0 3px 16px rgba(55,35,29,.035);
  transition: transform .3s var(--ib-ease), box-shadow .3s var(--ib-ease);
}
@media (hover:hover) {
  body.template-index :is(.product-card-wrapper .card,.card-product,.product-item .card):hover,
  body.index :is(.product-card-wrapper .card,.card-product,.product-item .card):hover {
    transform: translateY(-5px);
    box-shadow: var(--ib-shadow);
  }
}
body.template-index :is(.product-card-wrapper .card__media,.card-product .card-media,.product-item .product-image),
body.index :is(.product-card-wrapper .card__media,.card-product .card-media,.product-item .product-image) {
  overflow: hidden;
  background: var(--ib-cream);
}
body.template-index :is(.product-card-wrapper img,.card-product img,.product-item img),
body.index :is(.product-card-wrapper img,.card-product img,.product-item img) {
  transition: transform .55s var(--ib-ease);
}
@media (hover:hover) {
  body.template-index :is(.product-card-wrapper a:hover img,.card-product a:hover img,.product-item a:hover img),
  body.index :is(.product-card-wrapper a:hover img,.card-product a:hover img,.product-item a:hover img) { transform: scale(1.035); }
}
body.template-index :is(.product-card-wrapper .card__information,.card-product .card-information,.product-item .product-details),
body.index :is(.product-card-wrapper .card__information,.card-product .card-information,.product-item .product-details) { padding: 15px 14px 18px; }
body.template-index :is(.card__heading,.card-title,.product-item .product-title),
body.index :is(.card__heading,.card-title,.product-item .product-title) {
  font-weight: 500;
  font-size: 14px;
  line-height: 1.55;
  color: var(--ib-ink);
}
body.template-index :is(.product-grid .price,.card-product .price,.product-item .price),
body.index :is(.product-grid .price,.card-product .price,.product-item .price) {
  color: var(--ib-rose-deep);
  font-weight: 700;
  font-size: 15px;
}
body.template-index :is(.price--on-sale .price-item--regular,.price__compare,.old-price,.price-item--regular s),
body.index :is(.price--on-sale .price-item--regular,.price__compare,.old-price,.price-item--regular s) { color: var(--ib-muted); }

/* G. BUTTONS - homepage sections only, exclude header, account, search, cart and payment */
body.template-index main :is(.button,.button--primary,.shopify-payment-button__button--unbranded,.halo-button,.btn),
body.index main :is(.button,.button--primary,.shopify-payment-button__button--unbranded,.halo-button,.btn) {
  border-radius: 4px;
  border: 1px solid var(--ib-ink);
  background: var(--ib-ink);
  color: #fff;
  text-transform: uppercase;
  letter-spacing: .10em;
  font-size: 11px;
  font-weight: 700;
  padding: 13px 22px;
  min-height: 43px;
  transition: background .25s ease,border-color .25s ease,color .25s ease,transform .25s ease;
  box-shadow: none;
}
body.template-index main :is(.button,.button--primary,.halo-button,.btn):is(:hover,:focus-visible),
body.index main :is(.button,.button--primary,.halo-button,.btn):is(:hover,:focus-visible) {
  background: var(--ib-rose-deep);
  border-color: var(--ib-rose-deep);
  color: #fff;
}
body.template-index main :is(.button,.btn):before,
body.template-index main :is(.button,.btn):after,
body.index main :is(.button,.btn):before,
body.index main :is(.button,.btn):after { box-shadow: none; }
/* Don't force the buy-now or dynamic checkout button to match */
body.template-index main .shopify-payment-button__button,
body.index main .shopify-payment-button__button { min-height: 46px; }

/* H. HANDCRAFTED EDITION / IMAGE WITH TEXT */
body.template-index :is(.image-with-text,.halo-image-with-text),
body.index :is(.image-with-text,.halo-image-with-text) { background: var(--ib-cream); }
body.template-index :is(.image-with-text__content,.halo-image-with-text .content),
body.index :is(.image-with-text__content,.halo-image-with-text .content) { padding: clamp(22px,4vw,64px); }
body.template-index :is(.image-with-text__heading,.halo-image-with-text .heading),
body.index :is(.image-with-text__heading,.halo-image-with-text .heading) {
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(28px,3vw,44px);
  font-weight: 400;
  line-height: 1.2;
}
body.template-index .image-with-text__media img,
body.index .image-with-text__media img { object-fit: cover; }

/* I. HOME PAGE FEATURED PRODUCT (shop now) */
body.template-index :is(.featured-product,.halo-featured-product),
body.index :is(.featured-product,.halo-featured-product) {
  background: var(--ib-blush);
}
body.template-index :is(.featured-product .product__title h2,.featured-product .product__title,.halo-featured-product .product-title),
body.index :is(.featured-product .product__title h2,.featured-product .product__title,.halo-featured-product .product-title) {
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(26px,2.8vw,42px);
  font-weight: 400;
  line-height: 1.22;
}
body.template-index :is(.featured-product .product__info-wrapper,.halo-featured-product .productView-details),
body.index :is(.featured-product .product__info-wrapper,.halo-featured-product .productView-details) {
  min-width: 0;
}
body.template-index :is(.featured-product .price,.halo-featured-product .price-item),
body.index :is(.featured-product .price,.halo-featured-product .price-item) {
  color: var(--ib-rose-deep);
  font-size: clamp(18px,2vw,26px);
  font-weight: 700;
}
body.template-index :is(.featured-product .product__media img,.halo-featured-product .productView-image img),
body.index :is(.featured-product .product__media img,.halo-featured-product .productView-image img) { border-radius: 7px; }

/* J. TESTIMONIALS / CUSTOMER REVIEWS */
body.template-index :is(.testimonial-section,.testimonials,.halo-testimonial,.customer-reviews),
body.index :is(.testimonial-section,.testimonials,.halo-testimonial,.customer-reviews) {
  background: var(--ib-cream);
  color: var(--ib-ink);
}
body.template-index :is(.testimonials .testimonial,.testimonials .item,.halo-testimonial .item),
body.index :is(.testimonials .testimonial,.testimonials .item,.halo-testimonial .item) {
  background: #fff;
  border: 1px solid var(--ib-line);
  border-radius: var(--ib-radius);
  box-shadow: 0 6px 22px rgba(70, 41, 37, .045);
  padding: 22px;
  height: 100%;
}

/* K. WHY US / USP ICONS */
body.template-index :is(.multicolumn,.halo-icon-with-text,.icon-with-text),
body.index :is(.multicolumn,.halo-icon-with-text,.icon-with-text) { background: var(--ib-ivory); }
body.template-index :is(.multicolumn-card,.icon-with-text .item,.halo-icon-with-text .item),
body.index :is(.multicolumn-card,.icon-with-text .item,.halo-icon-with-text .item) {
  background: var(--ib-cream);
  border: 1px solid var(--ib-line);
  border-radius: var(--ib-radius);
  box-shadow: none;
  transition: transform .3s var(--ib-ease),box-shadow .3s var(--ib-ease);
}
@media (hover:hover) {
  body.template-index :is(.multicolumn-card,.icon-with-text .item,.halo-icon-with-text .item):hover,
  body.index :is(.multicolumn-card,.icon-with-text .item,.halo-icon-with-text .item):hover {
    transform: translateY(-3px);
    box-shadow: var(--ib-shadow);
  }
}
body.template-index :is(.multicolumn-card__info h3,.icon-with-text h3,.halo-icon-with-text .title),
body.index :is(.multicolumn-card__info h3,.icon-with-text h3,.halo-icon-with-text .title) {
  color: var(--ib-ink);
  font-size: 18px;
  font-weight: 600;
}

/* L. FOOTER (global - footer appears on all pages) */
body :is(.footer,.site-footer,.footer-wrapper,.halo-footer) {
  background-color: #2b2423;
  color: #f3e9e2;
}
body :is(.footer,.site-footer,.footer-wrapper,.halo-footer) :is(h2,h3,h4,.footer-block__heading,.footer-title) {
  color: #fff8f1;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .14em;
  font-weight: 700;
}
body :is(.footer,.site-footer,.footer-wrapper,.halo-footer) :is(a,p,li,span) { color: #e7d8ce; }
body :is(.footer,.site-footer,.footer-wrapper,.halo-footer) a:hover { color: #fff; }
body :is(.footer,.site-footer,.footer-wrapper,.halo-footer) :is(input[type="email"],.field__input) {
  background: #fffdf9;
  color: var(--ib-ink);
  border: 1px solid #ae9c8f;
  border-radius: 3px;
}
body :is(.footer,.site-footer,.footer-wrapper,.halo-footer) :is(input[type="email"],.field__input)::placeholder { color: #746760; }
body :is(.footer,.site-footer,.footer-wrapper,.halo-footer) :is(.footer__content-bottom,.footer-bottom) { border-color: #514340; }

/* M. TABLET */
@media (max-width: 989px) {
  body.template-index :is(.header__menu-item,.site-nav__link),
  body.index :is(.header__menu-item,.site-nav__link) { letter-spacing: .06em; }
  body.template-index :is(.image-with-text__content,.halo-image-with-text .content),
  body.index :is(.image-with-text__content,.halo-image-with-text .content) { padding: 28px; }
  body.template-index :is(.product-grid,.products-grid,.productListing),
  body.index :is(.product-grid,.products-grid,.productListing) { row-gap: 20px; }
}

/* N. MOBILE */
@media (max-width: 749px) {
  body.template-index :is(.title-wrapper-with-link,.title-wrapper,.halo-block-header,.section-header),
  body.index :is(.title-wrapper-with-link,.title-wrapper,.halo-block-header,.section-header) { margin-bottom: 16px; }
  body.template-index :is(.title-wrapper h2,.section-header h2,.halo-block-header .title,.main-title,.heading-title),
  body.index :is(.title-wrapper h2,.section-header h2,.halo-block-header .title,.main-title,.heading-title) {
    font-size: clamp(25px,7vw,34px);
    line-height: 1.2;
  }
  body.template-index :is(.banner__heading,.slideshow__text h2,.slide-content .slide-heading,.banner-content .banner-heading),
  body.index :is(.banner__heading,.slideshow__text h2,.slide-content .slide-heading,.banner-content .banner-heading) {
    font-size: clamp(28px,8vw,43px);
  }
  body.template-index :is(.banner__content,.slideshow__text-wrapper),
  body.index :is(.banner__content,.slideshow__text-wrapper) { padding: 16px; }
  body.template-index :is(.collection-list .card__heading,.halo-collection-list .title),
  body.index :is(.collection-list .card__heading,.halo-collection-list .title) { font-size: 12px; line-height: 1.4; }
  body.template-index :is(.collection-list .media,.collection-list .card__media,.halo-collection-list .image),
  body.index :is(.collection-list .media,.collection-list .card__media,.halo-collection-list .image) {
    border-width: 2px;
    box-shadow: 0 0 0 1px var(--ib-sand);
  }
  body.template-index :is(.product-grid,.products-grid,.productListing),
  body.index :is(.product-grid,.products-grid,.productListing) { row-gap: 16px; }
  body.template-index :is(.product-card-wrapper .card__information,.card-product .card-information,.product-item .product-details),
  body.index :is(.product-card-wrapper .card__information,.card-product .card-information,.product-item .product-details) { padding: 11px 9px 14px; }
  body.template-index :is(.card__heading,.card-title,.product-item .product-title),
  body.index :is(.card__heading,.card-title,.product-item .product-title) { font-size: 12px; line-height: 1.45; }
  body.template-index :is(.product-grid .price,.card-product .price,.product-item .price),
  body.index :is(.product-grid .price,.card-product .price,.product-item .price) { font-size: 13px; }
  body.template-index :is(.image-with-text__content,.halo-image-with-text .content),
  body.index :is(.image-with-text__content,.halo-image-with-text .content) { padding: 27px 20px 32px; text-align: center; }
  body.template-index :is(.featured-product .product__info-wrapper,.halo-featured-product .productView-details),
  body.index :is(.featured-product .product__info-wrapper,.halo-featured-product .productView-details) { padding: 20px 15px; }
  body.template-index main :is(.button,.button--primary,.halo-button,.btn),
  body.index main :is(.button,.button--primary,.halo-button,.btn) {
    min-height: 44px;
    padding: 12px 17px;
    font-size: 10px;
  }
  body.template-index :is(.testimonials .testimonial,.testimonials .item,.halo-testimonial .item),
  body.index :is(.testimonials .testimonial,.testimonials .item,.halo-testimonial .item) { padding: 16px; }
  body.template-index :is(.multicolumn-card__info h3,.icon-with-text h3,.halo-icon-with-text .title),
  body.index :is(.multicolumn-card__info h3,.icon-with-text h3,.halo-icon-with-text .title) { font-size: 16px; }
}

/* O. SMALL MOBILE */
@media (max-width: 420px) {
  body.template-index :is(.banner__heading,.slideshow__text h2,.slide-content .slide-heading),
  body.index :is(.banner__heading,.slideshow__text h2,.slide-content .slide-heading) { font-size: 28px; }
  body.template-index :is(.product-card-wrapper .card__information,.card-product .card-information),
  body.index :is(.product-card-wrapper .card__information,.card-product .card-information) { padding: 10px 8px 12px; }
}

/* P. ACCESSIBILITY */
@media (prefers-reduced-motion: reduce) {
  body.template-index *,body.index * { scroll-behavior: auto !important; animation-duration: .01ms !important; transition-duration: .01ms !important; }
}



/* INDBERRY - PREMIUM HEADER ALIGNMENT */
/* Desktop */

@media screen and (min-width: 1025px) {

  /* Main header container */
  .header .header-bottom,
  .header .header-wrapper,
  .header .header__wrapper {
    width: 100%;
  }

  /* Ella / Halo-style header layout */
  .header .header-bottom .container,
  .header .header-wrapper .container,
  .header .header__wrapper .container {
    width: 100%;
    max-width: 1600px;
    margin: 0 auto;
  }

  /* Logo sizing */
  .header .header__logo,
  .header .header-logo {
    flex-shrink: 0;
  }

  .header .header__logo img,
  .header .header-logo img {
    max-width: 175px;
    height: auto;
  }

  /* Navigation spacing */
  .header .header__inline-menu,
  .header .header__menu,
  .header .header-navigation {
    flex: 1 1 auto;
    display: flex;
    justify-content: center;
    min-width: 0;
  }

  /* Space between navigation links */
  .header .list-menu--inline,
  .header .menu-lv-1__container {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 28px;
  }

  /* Right-side icons */
  .header .header__icons,
  .header .header-icons {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 15px;
    flex-shrink: 0;
    white-space: nowrap;
  }

}

/* Tablet and mobile: retain native theme menu */
@media screen and (max-width: 1024px) {

  .header .header__logo img,
  .header .header-logo img {
    max-width: 125px;
    height: auto;
  }

  .header .header__icons,
  .header .header-icons {
    gap: 8px;
  }

}


/* Center header menu - Desktop only */
@media screen and (min-width: 1025px) {

  .header .header__wrapper,
  .header .header-wrapper {
    position: relative;
  }

  /* Center navigation menu */
  .header .header__inline-menu,
  .header .header-navigation {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: max-content;
    max-width: 55%;
    margin: 0;
    z-index: 2;
  }

  /* Space between menu links */
  .header .list-menu--inline,
  .header .menu-lv-1__container {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 28px;
  }

  /* Keep icons on the right */
  .header .header__icons,
  .header .header-icons {
    margin-left: auto;
  }
}


/* ========================================
   INDBERRY | LUXURY FEATURED PRODUCT
   Homepage Shop Now Section
======================================== */

@media screen {
  body.template-index {
    --ib-wine: #752d40;
    --ib-wine-dark: #542032;
    --ib-gold: #ad8b5e;
    --ib-text: #342a2b;
    --ib-muted: #756967;
    --ib-border: #e5d8d2;
    --ib-cream: #faf5f1;
  }
}

/* 1. MAIN SECTION */
body.template-index
.shopify-section:has(.productView) {
  background: var(--ib-cream);
  padding: 65px 0 75px;
  color: var(--ib-text);
}

/* 2. SECTION HEADING */
body.template-index
.shopify-section:has(.productView)
.block-title,
body.template-index
.shopify-section:has(.productView)
.section-header {
  text-align: center;
  margin-bottom: 40px;
}

body.template-index
.shopify-section:has(.productView)
.block-title .title,
body.template-index
.shopify-section:has(.productView)
.section-header .title {
  font-family: Georgia, "Times New Roman", serif;
  color: var(--ib-text);
  font-size: clamp(30px, 3vw, 44px);
  font-weight: 400;
  letter-spacing: -0.5px;
  line-height: 1.2;
}

/* 3. PRODUCT COLUMNS */
body.template-index
.shopify-section:has(.productView)
.productView {
  align-items: center;
}

body.template-index
.shopify-section:has(.productView)
.productView-details {
  padding: 24px 30px;
  color: var(--ib-text);
}

/* 4. PRODUCT IMAGES */
body.template-index
.shopify-section:has(.productView)
.productView-image {
  overflow: hidden;
  border-radius: 8px;
}

body.template-index
.shopify-section:has(.productView)
.productView-image img {
  max-width: 100%;
  height: auto;
  border-radius: 8px;
}

body.template-index
.shopify-section:has(.productView)
.productView-thumbnail img {
  border-radius: 5px;
}

body.template-index
.shopify-section:has(.productView)
.productView-thumbnail {
  border-radius: 5px;
  overflow: hidden;
}

/* 5. PRODUCT TITLE */
body.template-index
.shopify-section:has(.productView)
.productView-title,
body.template-index
.shopify-section:has(.productView)
.productView-title a {
  font-family: Georgia, "Times New Roman", serif;
  color: var(--ib-text);
  font-weight: 400;
  font-size: clamp(25px, 2.3vw, 34px);
  line-height: 1.25;
  letter-spacing: -0.5px;
  text-transform: none;
  text-decoration: none;
}

body.template-index
.shopify-section:has(.productView)
.productView-title {
  margin-bottom: 16px;
}

/* 6. DESCRIPTION */
body.template-index
.shopify-section:has(.productView)
.productView-description {
  color: var(--ib-muted);
  font-size: 14px;
  line-height: 1.8;
  margin: 16px 0 20px;
}

/* 7. PRODUCT PRICES */
body.template-index
.shopify-section:has(.productView)
.price-item--sale,
body.template-index
.shopify-section:has(.productView)
.price__sale .price-item,
body.template-index
.shopify-section:has(.productView)
.price--on-sale .price-item--regular {
  color: var(--ib-wine);
}

body.template-index
.shopify-section:has(.productView)
.price-item--sale {
  font-size: 28px;
  font-weight: 600;
  letter-spacing: -0.4px;
}

body.template-index
.shopify-section:has(.productView)
.price-item--regular s,
body.template-index
.shopify-section:has(.productView)
.price__compare {
  color: #998d89;
  font-size: 17px;
  font-weight: 400;
}

/* SALE BADGE */
body.template-index
.shopify-section:has(.productView)
.badge.sale-badge,
body.template-index
.shopify-section:has(.productView)
.productView .sale-badge {
  background: var(--ib-wine);
  color: #fff;
  border-radius: 3px;
  font-size: 11px;
  padding: 5px 9px;
}

/* 8. SIZE AND COLOR LABELS */
body.template-index
.shopify-section:has(.productView)
.product-form__label,
body.template-index
.shopify-section:has(.productView)
.form__label,
body.template-index
.shopify-section:has(.productView)
.productView-options label {
  color: var(--ib-text);
  font-size: 13px;
  font-weight: 600;
  line-height: 1.5;
}

/* 9. SIZE SELECTORS */
body.template-index
.shopify-section:has(.productView)
.product-form__input input[type="radio"]
+ label,
body.template-index
.shopify-section:has(.productView)
.productView-options
.swatch-element label {
  border: 1px solid var(--ib-border);
  background: #fff;
  color: var(--ib-text);
  border-radius: 3px;
  transition: background .2s, color .2s,
              border-color .2s;
}

body.template-index
.shopify-section:has(.productView)
.product-form__input input[type="radio"]:checked
+ label,
body.template-index
.shopify-section:has(.productView)
.productView-options
.swatch-element input:checked + label {
  background: var(--ib-wine);
  color: #fff;
  border-color: var(--ib-wine);
}

/* 10. QUANTITY BOX */
body.template-index
.shopify-section:has(.productView)
.quantity,
body.template-index
.shopify-section:has(.productView)
.productView-quantity .quantity__container {
  border: 1px solid var(--ib-border);
  background: #fff;
  border-radius: 3px;
}

body.template-index
.shopify-section:has(.productView)
.quantity__input,
body.template-index
.shopify-section:has(.productView)
.quantity__button {
  color: var(--ib-text);
}

/* 11. ADD TO CART BUTTON */
body.template-index
.shopify-section:has(.productView)
.product-form__submit,
body.template-index
.shopify-section:has(.productView)
.productView-action .button--primary {
  background: var(--ib-wine);
  background-image: none;
  color: #fff;
  border: 1px solid var(--ib-wine);
  border-radius: 3px;
  min-height: 52px;
  font-weight: 600;
  font-size: 13px;
  letter-spacing: 1px;
  text-transform: uppercase;
  box-shadow: none;
  transition: background .25s ease,
              transform .25s ease;
}

body.template-index
.shopify-section:has(.productView)
.product-form__submit:hover,
body.template-index
.shopify-section:has(.productView)
.productView-action .button--primary:hover {
  background: var(--ib-wine-dark);
  border-color: var(--ib-wine-dark);
  color: #fff;
  transform: translateY(-2px);
}

/* 12. BUY IT NOW / DYNAMIC CHECKOUT */
body.template-index
.shopify-section:has(.productView)
.shopify-payment-button {
  margin-top: 12px;
}

body.template-index
.shopify-section:has(.productView)
.shopify-payment-button__button--unbranded {
  background: transparent !important;
  background-image: none !important;
  color: var(--ib-wine) !important;
  border: 1px solid var(--ib-wine) !important;
  border-radius: 3px !important;
  min-height: 52px;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  box-shadow: none !important;
  transition: all .25s ease;
}

body.template-index
.shopify-section:has(.productView)
.shopify-payment-button__button--unbranded:hover {
  background: var(--ib-wine) !important;
  color: #fff !important;
}

/* 13. WISHLIST */
body.template-index
.shopify-section:has(.productView)
.productView-wishlist a,
body.template-index
.shopify-section:has(.productView)
.wishlist-icon {
  border-color: var(--ib-border);
  color: var(--ib-wine);
  transition: color .2s, border-color .2s;
}

body.template-index
.shopify-section:has(.productView)
.productView-wishlist a:hover {
  color: var(--ib-wine-dark);
  border-color: var(--ib-wine);
}

/* 14. GENERAL LINKS */
body.template-index
.shopify-section:has(.productView)
.productView-details a:not(.button) {
  text-underline-offset: 3px;
}

/* ========================================
   TABLET
======================================== */
@media (min-width: 768px) and (max-width: 1199px) {

  body.template-index
  .shopify-section:has(.productView) {
    padding: 45px 0;
  }

  body.template-index
  .shopify-section:has(.productView)
  .productView-details {
    padding: 15px 20px;
  }

  body.template-index
  .shopify-section:has(.productView)
  .productView-title {
    font-size: 26px;
  }
}

/* ========================================
   MOBILE
======================================== */
@media (max-width: 767px) {

  body.template-index
  .shopify-section:has(.productView) {
    padding: 36px 0 45px;
  }

  body.template-index
  .shopify-section:has(.productView)
  .block-title .title,
  body.template-index
  .shopify-section:has(.productView)
  .section-header .title {
    font-size: 30px;
  }

  body.template-index
  .shopify-section:has(.productView)
  .productView-details {
    width: 100%;
    padding: 22px 6px 0;
  }

  body.template-index
  .shopify-section:has(.productView)
  .productView-title,
  body.template-index
  .shopify-section:has(.productView)
  .productView-title a {
    font-size: 25px;
    line-height: 1.3;
  }

  body.template-index
  .shopify-section:has(.productView)
  .productView-description {
    font-size: 13px;
    line-height: 1.7;
  }

  body.template-index
  .shopify-section:has(.productView)
  .price-item--sale {
    font-size: 25px;
  }

  body.template-index
  .shopify-section:has(.productView)
  .product-form__submit,
  body.template-index
  .shopify-section:has(.productView)
  .shopify-payment-button__button--unbranded {
    min-height: 50px;
    font-size: 12px;
  }
}

/* ACCESSIBILITY */
@media (prefers-reduced-motion: reduce) {
  body.template-index
  .shopify-section:has(.productView)
  .product-form__submit {
    transition: none;
    transform: none;
  }
}





/* ==========================================
   INDBERRY GLOBAL TYPOGRAPHY SYSTEM
   Premium Ethnic Fashion Store
   Applies throughout the Shopify website
========================================== */

/* 1. IMPORT GOOGLE FONTS */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600;700&family=Manrope:wght@400;500;600;700&display=swap');

/* 2. GLOBAL FONT VARIABLES */
:root {
  --ib-heading-font: 'Cormorant Garamond', Georgia, serif;
  --ib-body-font: 'Manrope', Arial, sans-serif;

  --ib-heading-color: #302626;
  --ib-body-color: #514A49;
  --ib-muted-color: #786D6B;
  --ib-accent-color: #752D40;
}

/* 3. GLOBAL BODY TYPOGRAPHY */
html body {
  font-family: var(--ib-body-font) !important;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.75;
  color: var(--ib-body-color);
  letter-spacing: 0;
  -webkit-font-smoothing: antialiased;
}

/* 4. ALL HEADINGS */
body h1,
body h2,
body h3,
body h4,
body h5,
body h6,
body .h1,
body .h2,
body .h3,
body .h4,
body .h5,
body .h6,
body .heading,
body .section-header__title,
body .title,
body .block-title .title {
  font-family: var(--ib-heading-font) !important;
  color: var(--ib-heading-color);
  font-weight: 600;
  letter-spacing: -0.3px;
  line-height: 1.15;
  text-transform: none;
}

/* 5. MAIN PAGE HEADINGS */
body h1,
body .h1 {
  font-size: clamp(36px, 4vw, 58px);
}

/* 6. SECTION HEADINGS */
body h2,
body .h2 {
  font-size: clamp(30px, 3vw, 44px);
}

/* 7. SMALLER HEADINGS */
body h3,
body .h3 {
  font-size: clamp(25px, 2.4vw, 34px);
}

body h4,
body .h4 {
  font-size: clamp(22px, 2vw, 28px);
}

body h5,
body h6 {
  font-size: 20px;
}

/* 8. PARAGRAPHS AND BODY TEXT */
body p,
body li,
body blockquote,
body td,
body th,
body label,
body input,
body textarea,
body select,
body summary,
body .rte,
body .description,
body .productView-description {
  font-family: var(--ib-body-font) !important;
}

/* 9. SUBHEADINGS AND EYEBROW TEXT */
body .subtitle,
body .sub-title,
body .section-subtitle,
body .section-header__description {
  font-family: var(--ib-body-font) !important;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.7;
  letter-spacing: 1px;
  color: var(--ib-muted-color);
}

/* 10. NAVIGATION MENU */
body .header a,
body .header__menu-item,
body .menu-lv-1__action,
body .list-menu__item {
  font-family: var(--ib-body-font) !important;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 1.1px;
  text-transform: uppercase;
}

/* 11. BUTTON TYPOGRAPHY */
body button,
body .button,
body .btn,
body .shopify-payment-button__button,
body input[type="submit"],
body input[type="button"] {
  font-family: var(--ib-body-font) !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1px;
  line-height: 1.4;
  text-transform: uppercase;
}

/* 12. PRODUCT TITLES */
body .product-title,
body .productView-title,
body .productView-title a,
body .card__heading,
body .card__heading a,
body .product-card__title {
  font-family: var(--ib-heading-font) !important;
  font-size: clamp(22px, 2vw, 30px);
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: -0.2px;
  text-transform: none;
  color: var(--ib-heading-color);
}

/* 13. PRODUCT GRID TITLES */
body .product-card__title,
body .card__heading,
body .card__heading a {
  font-size: 21px;
  line-height: 1.3;
}

/* 14. PRICE TYPOGRAPHY */
body .price,
body .price-item,
body .productView-price,
body .price__regular,
body .price__sale {
  font-family: var(--ib-body-font) !important;
  font-weight: 600;
  letter-spacing: 0;
}

/* 15. FORM INPUTS */
body input,
body textarea,
body select {
  font-family: var(--ib-body-font) !important;
  font-size: 14px;
  letter-spacing: 0;
}

/* 16. FOOTER */
body .footer,
body .footer p,
body .footer a,
body .footer li {
  font-family: var(--ib-body-font) !important;
}

body .footer h2,
body .footer h3,
body .footer .footer-block__heading {
  font-family: var(--ib-heading-font) !important;
  font-size: 24px;
  font-weight: 600;
}

/* 17. REVIEWS AND TESTIMONIALS */
body .testimonial-title,
body .testimonial-heading {
  font-family: var(--ib-heading-font) !important;
  font-size: 24px;
}

body .testimonial-content,
body .review-content {
  font-family: var(--ib-body-font) !important;
  font-size: 14px;
  line-height: 1.8;
}

/* 18. MOBILE TYPOGRAPHY */
@media screen and (max-width: 767px) {

  html body {
    font-size: 13px;
    line-height: 1.7;
  }

  body h1,
  body .h1 {
    font-size: 36px;
  }

  body h2,
  body .h2 {
    font-size: 30px;
  }

  body h3,
  body .h3 {
    font-size: 26px;
  }

  body .product-title,
  body .productView-title {
    font-size: 26px;
  }

  body .product-card__title,
  body .card__heading {
    font-size: 20px;
  }

  body button,
  body .button,
  body .btn {
    font-size: 12px;
    letter-spacing: 0.7px;
  }

  body .header a,
  body .header__menu-item {
    font-size: 12px;
  }
}


/* ==========================================
   INDBERRY GLOBAL TYPOGRAPHY SYSTEM
   Premium Ethnic Fashion Store
   Applies throughout the Shopify website
========================================== */

/* 1. IMPORT GOOGLE FONTS */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600;700&family=Manrope:wght@400;500;600;700&display=swap');

/* 2. GLOBAL FONT VARIABLES */
:root {
  --ib-heading-font: 'Cormorant Garamond', Georgia, serif;
  --ib-body-font: 'Manrope', Arial, sans-serif;

  --ib-heading-color: #302626;
  --ib-body-color: #514A49;
  --ib-muted-color: #786D6B;
  --ib-accent-color: #752D40;
}

/* 3. GLOBAL BODY TYPOGRAPHY */
html body {
  font-family: var(--ib-body-font) !important;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.75;
  color: var(--ib-body-color);
  letter-spacing: 0;
  -webkit-font-smoothing: antialiased;
}

/* 4. ALL HEADINGS */
body h1,
body h2,
body h3,
body h4,
body h5,
body h6,
body .h1,
body .h2,
body .h3,
body .h4,
body .h5,
body .h6,
body .heading,
body .section-header__title,
body .title,
body .block-title .title {
  font-family: var(--ib-heading-font) !important;
  color: var(--ib-heading-color);
  font-weight: 600;
  letter-spacing: -0.3px;
  line-height: 1.15;
  text-transform: none;
}

/* 5. MAIN PAGE HEADINGS */
body h1,
body .h1 {
  font-size: clamp(36px, 4vw, 58px);
}

/* 6. SECTION HEADINGS */
body h2,
body .h2 {
  font-size: clamp(30px, 3vw, 44px);
}

/* 7. SMALLER HEADINGS */
body h3,
body .h3 {
  font-size: clamp(25px, 2.4vw, 34px);
}

body h4,
body .h4 {
  font-size: clamp(22px, 2vw, 28px);
}

body h5,
body h6 {
  font-size: 20px;
}

/* 8. PARAGRAPHS AND BODY TEXT */
body p,
body li,
body blockquote,
body td,
body th,
body label,
body input,
body textarea,
body select,
body summary,
body .rte,
body .description,
body .productView-description {
  font-family: var(--ib-body-font) !important;
}

/* 9. SUBHEADINGS AND EYEBROW TEXT */
body .subtitle,
body .sub-title,
body .section-subtitle,
body .section-header__description {
  font-family: var(--ib-body-font) !important;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.7;
  letter-spacing: 1px;
  color: var(--ib-muted-color);
}

/* 10. NAVIGATION MENU */
body .header a,
body .header__menu-item,
body .menu-lv-1__action,
body .list-menu__item {
  font-family: var(--ib-body-font) !important;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 1.1px;
  text-transform: uppercase;
}

/* 11. BUTTON TYPOGRAPHY */
body button,
body .button,
body .btn,
body .shopify-payment-button__button,
body input[type="submit"],
body input[type="button"] {
  font-family: var(--ib-body-font) !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1px;
  line-height: 1.4;
  text-transform: uppercase;
}

/* 12. PRODUCT TITLES */
body .product-title,
body .productView-title,
body .productView-title a,
body .card__heading,
body .card__heading a,
body .product-card__title {
  font-family: var(--ib-heading-font) !important;
  font-size: clamp(22px, 2vw, 30px);
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: -0.2px;
  text-transform: none;
  color: var(--ib-heading-color);
}

/* 13. PRODUCT GRID TITLES */
body .product-card__title,
body .card__heading,
body .card__heading a {
  font-size: 21px;
  line-height: 1.3;
}

/* 14. PRICE TYPOGRAPHY */
body .price,
body .price-item,
body .productView-price,
body .price__regular,
body .price__sale {
  font-family: var(--ib-body-font) !important;
  font-weight: 600;
  letter-spacing: 0;
}

/* 15. FORM INPUTS */
body input,
body textarea,
body select {
  font-family: var(--ib-body-font) !important;
  font-size: 14px;
  letter-spacing: 0;
}

/* 16. FOOTER */
body .footer,
body .footer p,
body .footer a,
body .footer li {
  font-family: var(--ib-body-font) !important;
}

body .footer h2,
body .footer h3,
body .footer .footer-block__heading {
  font-family: var(--ib-heading-font) !important;
  font-size: 24px;
  font-weight: 600;
}

/* 17. REVIEWS AND TESTIMONIALS */
body .testimonial-title,
body .testimonial-heading {
  font-family: var(--ib-heading-font) !important;
  font-size: 24px;
}

body .testimonial-content,
body .review-content {
  font-family: var(--ib-body-font) !important;
  font-size: 14px;
  line-height: 1.8;
}

/* 18. MOBILE TYPOGRAPHY */
@media screen and (max-width: 767px) {

  html body {
    font-size: 13px;
    line-height: 1.7;
  }

  body h1,
  body .h1 {
    font-size: 36px;
  }

  body h2,
  body .h2 {
    font-size: 30px;
  }

  body h3,
  body .h3 {
    font-size: 26px;
  }

  body .product-title,
  body .productView-title {
    font-size: 26px;
  }

  body .product-card__title,
  body .card__heading {
    font-size: 20px;
  }

  body button,
  body .button,
  body .btn {
    font-size: 12px;
    letter-spacing: 0.7px;
  }

  body .header a,
  body .header__menu-item {
    font-size: 12px;
  }
}

/* ==========================================
   INDBERRY TESTIMONIAL SECTION REDESIGN
========================================== */

:root {
  --ib-bg-soft: #fbf7f4;
  --ib-card-bg: #ffffff;
  --ib-heading: #2f2525;
  --ib-text: #5f5654;
  --ib-muted: #8a7d79;
  --ib-accent: #7a3142;
  --ib-gold: #c89b3c;
  --ib-border: #eee2dc;
  --ib-shadow: 0 10px 30px rgba(35, 20, 20, 0.06);
}

/* Main section */
.template-index .testimonial-section,
.template-index .testimonials,
.template-index .customer-reviews,
.template-index .halo-testimonial,
.template-index .shopify-section .testimonial,
.template-index .shopify-section .testimonials-wrapper {
  background: linear-gradient(180deg, #fcf8f5 0%, #f8f1ed 100%) !important;
  padding: 80px 20px !important;
  position: relative;
}

/* container */
.template-index .testimonial-section .container,
.template-index .testimonials .container,
.template-index .customer-reviews .container,
.template-index .halo-testimonial .container,
.template-index .shopify-section .testimonial .container,
.template-index .shopify-section .testimonials-wrapper .container {
  max-width: 1280px;
  margin: 0 auto;
}

/* heading */
.template-index .testimonial-section h2,
.template-index .testimonials h2,
.template-index .customer-reviews h2,
.template-index .halo-testimonial h2,
.template-index .shopify-section .testimonial h2,
.template-index .shopify-section .testimonials-wrapper h2,
.template-index .testimonial-section .title,
.template-index .testimonials .title,
.template-index .customer-reviews .title,
.template-index .halo-testimonial .title {
  text-align: center !important;
  font-family: "Cormorant Garamond", Georgia, serif !important;
  font-size: clamp(34px, 4vw, 56px) !important;
  line-height: 1.1 !important;
  font-weight: 600 !important;
  color: var(--ib-heading) !important;
  margin-bottom: 14px !important;
  letter-spacing: -0.4px !important;
  text-transform: none !important;
}

/* optional subtitle spacing */
.template-index .testimonial-section .section-subtitle,
.template-index .testimonials .section-subtitle,
.template-index .customer-reviews .section-subtitle,
.template-index .halo-testimonial .section-subtitle {
  text-align: center;
  max-width: 700px;
  margin: 0 auto 40px;
  color: var(--ib-muted);
  font-size: 15px;
  line-height: 1.7;
}

/* testimonial grid wrapper */
.template-index .testimonial-section .row,
.template-index .testimonials .row,
.template-index .customer-reviews .row,
.template-index .halo-testimonial .row,
.template-index .testimonial-section .list-unstyled,
.template-index .testimonials .list-unstyled,
.template-index .customer-reviews .list-unstyled,
.template-index .halo-testimonial .list-unstyled,
.template-index .testimonial-section .testimonial-list,
.template-index .testimonials .testimonial-list,
.template-index .customer-reviews .testimonial-list,
.template-index .halo-testimonial .testimonial-list,
.template-index .testimonial-section .slick-track,
.template-index .testimonials .slick-track,
.template-index .customer-reviews .slick-track,
.template-index .halo-testimonial .slick-track {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 28px !important;
  align-items: stretch !important;
}

/* individual testimonial card */
.template-index .testimonial-item,
.template-index .testimonial-block,
.template-index .testimonial-card,
.template-index .customer-review-item,
.template-index .halo-testimonial .item,
.template-index .testimonials .item,
.template-index .testimonial {
  background: var(--ib-card-bg) !important;
  border: 1px solid var(--ib-border) !important;
  border-radius: 20px !important;
  padding: 34px 28px 26px !important;
  box-shadow: var(--ib-shadow) !important;
  height: 100% !important;
  transition: transform 0.28s ease, box-shadow 0.28s ease;
  position: relative;
  overflow: hidden;
}

/* hover */
.template-index .testimonial-item:hover,
.template-index .testimonial-block:hover,
.template-index .testimonial-card:hover,
.template-index .customer-review-item:hover,
.template-index .halo-testimonial .item:hover,
.template-index .testimonials .item:hover,
.template-index .testimonial:hover {
  transform: translateY(-6px);
  box-shadow: 0 18px 40px rgba(35, 20, 20, 0.1) !important;
}

/* decorative top border */
.template-index .testimonial-item::before,
.template-index .testimonial-block::before,
.template-index .testimonial-card::before,
.template-index .customer-review-item::before,
.template-index .halo-testimonial .item::before,
.template-index .testimonials .item::before,
.template-index .testimonial::before {
  content: "";
  position: absolute;
  top: 0;
  left: 28px;
  width: 70px;
  height: 3px;
  background: linear-gradient(90deg, #b5855a, #d7b26d);
  border-radius: 10px;
}

/* quote mark */
.template-index .testimonial-item::after,
.template-index .testimonial-block::after,
.template-index .testimonial-card::after,
.template-index .customer-review-item::after,
.template-index .halo-testimonial .item::after,
.template-index .testimonials .item::after,
.template-index .testimonial::after {
  content: "“";
  position: absolute;
  top: 16px;
  right: 22px;
  font-size: 58px;
  line-height: 1;
  color: rgba(122, 49, 66, 0.08);
  font-family: Georgia, serif;
}

/* testimonial title */
.template-index .testimonial-item h3,
.template-index .testimonial-block h3,
.template-index .testimonial-card h3,
.template-index .customer-review-item h3,
.template-index .halo-testimonial .item h3,
.template-index .testimonials .item h3,
.template-index .testimonial h3,
.template-index .testimonial-item .title,
.template-index .testimonial-block .title,
.template-index .testimonial-card .title,
.template-index .customer-review-item .title {
  font-family: "Cormorant Garamond", Georgia, serif !important;
  font-size: 22px !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  color: var(--ib-heading) !important;
  margin-bottom: 18px !important;
  text-align: left !important;
}

/* review text */
.template-index .testimonial-item p,
.template-index .testimonial-block p,
.template-index .testimonial-card p,
.template-index .customer-review-item p,
.template-index .halo-testimonial .item p,
.template-index .testimonials .item p,
.template-index .testimonial p,
.template-index .testimonial-item .desc,
.template-index .testimonial-block .desc,
.template-index .testimonial-card .desc {
  font-family: "Manrope", Arial, sans-serif !important;
  font-size: 15px !important;
  line-height: 1.8 !important;
  color: var(--ib-text) !important;
  margin-bottom: 22px !important;
  text-align: left !important;
}

/* author row */
.template-index .testimonial-item .author,
.template-index .testimonial-block .author,
.template-index .testimonial-card .author,
.template-index .customer-review-item .author,
.template-index .testimonial-item .name,
.template-index .testimonial-block .name,
.template-index .testimonial-card .name,
.template-index .customer-review-item .name,
.template-index .halo-testimonial .item .name,
.template-index .testimonials .item .name {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin-top: auto !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  color: var(--ib-heading) !important;
}

/* avatar/icon */
.template-index .testimonial-item .author img,
.template-index .testimonial-block .author img,
.template-index .testimonial-card .author img,
.template-index .customer-review-item .author img,
.template-index .testimonial-item .name img,
.template-index .testimonial-block .name img,
.template-index .testimonial-card .name img,
.template-index .customer-review-item .name img,
.template-index .testimonial-item .author svg,
.template-index .testimonial-block .author svg,
.template-index .testimonial-card .author svg,
.template-index .customer-review-item .author svg {
  width: 42px !important;
  height: 42px !important;
  border-radius: 50% !important;
  background: #f3e8e4 !important;
  padding: 8px !important;
}

/* stars */
.template-index .testimonial-item .rating,
.template-index .testimonial-block .rating,
.template-index .testimonial-card .rating,
.template-index .customer-review-item .rating,
.template-index .halo-testimonial .item .rating,
.template-index .testimonials .item .rating,
.template-index .testimonial .rating,
.template-index .testimonial-item .stars,
.template-index .testimonial-block .stars,
.template-index .testimonial-card .stars {
  margin-top: 18px !important;
  display: flex !important;
  align-items: center !important;
  gap: 4px !important;
  color: var(--ib-gold) !important;
  font-size: 18px !important;
  letter-spacing: 1px !important;
}

/* if stars are plain text */
.template-index .testimonial-item .rating *,
.template-index .testimonial-block .rating *,
.template-index .testimonial-card .rating *,
.template-index .customer-review-item .rating *,
.template-index .testimonial-item .stars *,
.template-index .testimonial-block .stars *,
.template-index .testimonial-card .stars * {
  color: var(--ib-gold) !important;
}

/* center slick arrows if theme uses slider */
.template-index .halo-testimonial .slick-arrow,
.template-index .testimonials .slick-arrow,
.template-index .customer-reviews .slick-arrow {
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  border: 1px solid var(--ib-border) !important;
  background: #fff !important;
  box-shadow: 0 8px 18px rgba(0,0,0,0.05) !important;
}

.template-index .halo-testimonial .slick-arrow:hover,
.template-index .testimonials .slick-arrow:hover,
.template-index .customer-reviews .slick-arrow:hover {
  background: var(--ib-accent) !important;
  border-color: var(--ib-accent) !important;
  color: #fff !important;
}

/* dots */
.template-index .halo-testimonial .slick-dots,
.template-index .testimonials .slick-dots,
.template-index .customer-reviews .slick-dots {
  margin-top: 28px !important;
}

.template-index .halo-testimonial .slick-dots li button,
.template-index .testimonials .slick-dots li button,
.template-index .customer-reviews .slick-dots li button {
  width: 10px !important;
  height: 10px !important;
  border-radius: 50% !important;
  background: #d8c9c3 !important;
}

.template-index .halo-testimonial .slick-dots li.slick-active button,
.template-index .testimonials .slick-dots li.slick-active button,
.template-index .customer-reviews .slick-dots li.slick-active button {
  background: var(--ib-accent) !important;
}

/* tablet */
@media (max-width: 1024px) {
  .template-index .testimonial-section,
  .template-index .testimonials,
  .template-index .customer-reviews,
  .template-index .halo-testimonial,
  .template-index .shopify-section .testimonial,
  .template-index .shopify-section .testimonials-wrapper {
    padding: 60px 18px !important;
  }

  .template-index .testimonial-section .row,
  .template-index .testimonials .row,
  .template-index .customer-reviews .row,
  .template-index .halo-testimonial .row,
  .template-index .testimonial-section .list-unstyled,
  .template-index .testimonials .list-unstyled,
  .template-index .customer-reviews .list-unstyled,
  .template-index .halo-testimonial .list-unstyled,
  .template-index .testimonial-section .testimonial-list,
  .template-index .testimonials .testimonial-list,
  .template-index .customer-reviews .testimonial-list,
  .template-index .halo-testimonial .testimonial-list,
  .template-index .testimonial-section .slick-track,
  .template-index .testimonials .slick-track,
  .template-index .customer-reviews .slick-track,
  .template-index .halo-testimonial .slick-track {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 20px !important;
  }
}

/* mobile */
@media (max-width: 767px) {
  .template-index .testimonial-section,
  .template-index .testimonials,
  .template-index .customer-reviews,
  .template-index .halo-testimonial,
  .template-index .shopify-section .testimonial,
  .template-index .shopify-section .testimonials-wrapper {
    padding: 48px 15px !important;
  }

  .template-index .testimonial-section h2,
  .template-index .testimonials h2,
  .template-index .customer-reviews h2,
  .template-index .halo-testimonial h2,
  .template-index .shopify-section .testimonial h2,
  .template-index .shopify-section .testimonials-wrapper h2,
  .template-index .testimonial-section .title,
  .template-index .testimonials .title,
  .template-index .customer-reviews .title,
  .template-index .halo-testimonial .title {
    font-size: 34px !important;
    margin-bottom: 26px !important;
  }

  .template-index .testimonial-section .row,
  .template-index .testimonials .row,
  .template-index .customer-reviews .row,
  .template-index .halo-testimonial .row,
  .template-index .testimonial-section .list-unstyled,
  .template-index .testimonials .list-unstyled,
  .template-index .customer-reviews .list-unstyled,
  .template-index .halo-testimonial .list-unstyled,
  .template-index .testimonial-section .testimonial-list,
  .template-index .testimonials .testimonial-list,
  .template-index .customer-reviews .testimonial-list,
  .template-index .halo-testimonial .testimonial-list,
  .template-index .testimonial-section .slick-track,
  .template-index .testimonials .slick-track,
  .template-index .customer-reviews .slick-track,
  .template-index .halo-testimonial .slick-track {
    grid-template-columns: 1fr !important;
  }

  .template-index .testimonial-item,
  .template-index .testimonial-block,
  .template-index .testimonial-card,
  .template-index .customer-review-item,
  .template-index .halo-testimonial .item,
  .template-index .testimonials .item,
  .template-index .testimonial {
    padding: 26px 22px 22px !important;
    border-radius: 16px !important;
  }

  .template-index .testimonial-item h3,
  .template-index .testimonial-block h3,
  .template-index .testimonial-card h3,
  .template-index .customer-review-item h3,
  .template-index .halo-testimonial .item h3,
  .template-index .testimonials .item h3,
  .template-index .testimonial h3,
  .template-index .testimonial-item .title,
  .template-index .testimonial-block .title,
  .template-index .testimonial-card .title,
  .template-index .customer-review-item .title {
    font-size: 24px !important;
  }

  .template-index .testimonial-item p,
  .template-index .testimonial-block p,
  .template-index .testimonial-card p,
  .template-index .customer-review-item p,
  .template-index .halo-testimonial .item p,
  .template-index .testimonials .item p,
  .template-index .testimonial p {
    font-size: 14px !important;
  }
}

/* ==========================================
   INDBERRY - WHY US / USP SECTION REDESIGN
========================================== */

:root {
  --ib-section-bg: #fbf7f4;
  --ib-card-bg: #ffffff;
  --ib-heading-color: #2f2525;
  --ib-text-color: #5f5654;
  --ib-muted-color: #8a7d79;
  --ib-accent: #7a3142;
  --ib-accent-dark: #5d2432;
  --ib-gold: #b88a52;
  --ib-border: #eee2dc;
  --ib-shadow: 0 10px 30px rgba(30, 18, 18, 0.06);
}

/* Main section wrapper */
.template-index .why-us,
.template-index .why-us-section,
.template-index .service-section,
.template-index .halo-service,
.template-index .shopify-section .service-block,
.template-index .shopify-section .why-choose-us,
.template-index .shopify-section .home-service,
.template-index .shopify-section .policies-block {
  background: linear-gradient(180deg, #fcf8f5 0%, #f8f2ef 100%) !important;
  padding: 75px 20px 85px !important;
  position: relative;
}

/* Section container */
.template-index .why-us .container,
.template-index .why-us-section .container,
.template-index .service-section .container,
.template-index .halo-service .container,
.template-index .shopify-section .service-block .container,
.template-index .shopify-section .why-choose-us .container,
.template-index .shopify-section .home-service .container,
.template-index .shopify-section .policies-block .container {
  max-width: 1280px;
  margin: 0 auto;
}

/* Heading */
.template-index .why-us h2,
.template-index .why-us-section h2,
.template-index .service-section h2,
.template-index .halo-service h2,
.template-index .shopify-section .service-block h2,
.template-index .shopify-section .why-choose-us h2,
.template-index .shopify-section .home-service h2,
.template-index .shopify-section .policies-block h2,
.template-index .why-us .title,
.template-index .why-us-section .title,
.template-index .service-section .title,
.template-index .halo-service .title {
  text-align: center !important;
  font-family: "Cormorant Garamond", Georgia, serif !important;
  font-size: clamp(34px, 4vw, 54px) !important;
  font-weight: 600 !important;
  line-height: 1.1 !important;
  color: var(--ib-heading-color) !important;
  margin-bottom: 16px !important;
  letter-spacing: -0.3px !important;
  text-transform: none !important;
}

/* Optional subtitle */
.template-index .why-us .section-subtitle,
.template-index .why-us-section .section-subtitle,
.template-index .service-section .section-subtitle,
.template-index .halo-service .section-subtitle {
  text-align: center;
  max-width: 720px;
  margin: 0 auto 40px;
  color: var(--ib-muted-color);
  font-size: 15px;
  line-height: 1.7;
}

/* Grid wrapper */
.template-index .why-us .row,
.template-index .why-us-section .row,
.template-index .service-section .row,
.template-index .halo-service .row,
.template-index .shopify-section .service-block .row,
.template-index .shopify-section .why-choose-us .row,
.template-index .shopify-section .home-service .row,
.template-index .shopify-section .policies-block .row,
.template-index .why-us .list-unstyled,
.template-index .why-us-section .list-unstyled,
.template-index .service-section .list-unstyled,
.template-index .halo-service .list-unstyled {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 30px !important;
  align-items: stretch !important;
}

/* Individual cards */
.template-index .why-us .item,
.template-index .why-us-section .item,
.template-index .service-section .item,
.template-index .halo-service .item,
.template-index .service-item,
.template-index .policy-item,
.template-index .shopify-section .service-block .item,
.template-index .shopify-section .why-choose-us .item,
.template-index .shopify-section .home-service .item,
.template-index .shopify-section .policies-block .item {
  background: var(--ib-card-bg) !important;
  border: 1px solid var(--ib-border) !important;
  border-radius: 20px !important;
  box-shadow: var(--ib-shadow) !important;
  padding: 34px 28px 30px !important;
  text-align: center !important;
  transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
  height: 100% !important;
  position: relative;
  overflow: hidden;
}

/* Hover effect */
.template-index .why-us .item:hover,
.template-index .why-us-section .item:hover,
.template-index .service-section .item:hover,
.template-index .halo-service .item:hover,
.template-index .service-item:hover,
.template-index .policy-item:hover,
.template-index .shopify-section .service-block .item:hover,
.template-index .shopify-section .why-choose-us .item:hover,
.template-index .shopify-section .home-service .item:hover,
.template-index .shopify-section .policies-block .item:hover {
  transform: translateY(-6px);
  border-color: #e3cfc5 !important;
  box-shadow: 0 18px 40px rgba(30, 18, 18, 0.10) !important;
}

/* Top decorative accent */
.template-index .why-us .item::before,
.template-index .why-us-section .item::before,
.template-index .service-section .item::before,
.template-index .halo-service .item::before,
.template-index .service-item::before,
.template-index .policy-item::before,
.template-index .shopify-section .service-block .item::before,
.template-index .shopify-section .why-choose-us .item::before,
.template-index .shopify-section .home-service .item::before,
.template-index .shopify-section .policies-block .item::before {
  content: "";
  position: absolute;
  top: 0;
  left: 28px;
  width: 72px;
  height: 3px;
  border-radius: 10px;
  background: linear-gradient(90deg, #b88a52, #d7b26d);
}

/* Icon wrapper */
.template-index .why-us .icon,
.template-index .why-us-section .icon,
.template-index .service-section .icon,
.template-index .halo-service .icon,
.template-index .service-item .icon,
.template-index .policy-item .icon,
.template-index .shopify-section .service-block .icon,
.template-index .shopify-section .why-choose-us .icon,
.template-index .shopify-section .home-service .icon,
.template-index .shopify-section .policies-block .icon,
.template-index .why-us .service-icon,
.template-index .why-us-section .service-icon,
.template-index .service-section .service-icon,
.template-index .halo-service .service-icon {
  width: 84px !important;
  height: 84px !important;
  border-radius: 50% !important;
  margin: 0 auto 22px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: linear-gradient(180deg, #fbf3ef 0%, #f6e9e3 100%) !important;
  border: 1px solid #efdfd7 !important;
  color: var(--ib-accent) !important;
}

/* Icon size */
.template-index .why-us .icon i,
.template-index .why-us-section .icon i,
.template-index .service-section .icon i,
.template-index .halo-service .icon i,
.template-index .service-item .icon i,
.template-index .policy-item .icon i,
.template-index .shopify-section .service-block .icon i,
.template-index .shopify-section .why-choose-us .icon i,
.template-index .shopify-section .home-service .icon i,
.template-index .shopify-section .policies-block .icon i,
.template-index .why-us .icon svg,
.template-index .why-us-section .icon svg,
.template-index .service-section .icon svg,
.template-index .halo-service .icon svg,
.template-index .service-item .icon svg,
.template-index .policy-item .icon svg {
  font-size: 34px !important;
  width: 34px !important;
  height: 34px !important;
  color: var(--ib-accent) !important;
  fill: currentColor !important;
}

/* Card title */
.template-index .why-us .item h3,
.template-index .why-us-section .item h3,
.template-index .service-section .item h3,
.template-index .halo-service .item h3,
.template-index .service-item h3,
.template-index .policy-item h3,
.template-index .shopify-section .service-block .item h3,
.template-index .shopify-section .why-choose-us .item h3,
.template-index .shopify-section .home-service .item h3,
.template-index .shopify-section .policies-block .item h3,
.template-index .why-us .item .title,
.template-index .why-us-section .item .title,
.template-index .service-section .item .title,
.template-index .halo-service .item .title {
  font-family: "Cormorant Garamond", Georgia, serif !important;
  font-size: 30px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  color: var(--ib-heading-color) !important;
  margin-bottom: 14px !important;
  text-transform: none !important;
}

/* Card text */
.template-index .why-us .item p,
.template-index .why-us-section .item p,
.template-index .service-section .item p,
.template-index .halo-service .item p,
.template-index .service-item p,
.template-index .policy-item p,
.template-index .shopify-section .service-block .item p,
.template-index .shopify-section .why-choose-us .item p,
.template-index .shopify-section .home-service .item p,
.template-index .shopify-section .policies-block .item p,
.template-index .why-us .item .desc,
.template-index .why-us-section .item .desc,
.template-index .service-section .item .desc,
.template-index .halo-service .item .desc {
  font-family: "Manrope", Arial, sans-serif !important;
  font-size: 15px !important;
  line-height: 1.8 !important;
  color: var(--ib-text-color) !important;
  margin: 0 auto !important;
  max-width: 320px;
}

/* links inside cards */
.template-index .why-us .item a,
.template-index .why-us-section .item a,
.template-index .service-section .item a,
.template-index .halo-service .item a,
.template-index .service-item a,
.template-index .policy-item a {
  color: var(--ib-accent) !important;
  text-decoration: none !important;
  font-weight: 600 !important;
}

.template-index .why-us .item a:hover,
.template-index .why-us-section .item a:hover,
.template-index .service-section .item a:hover,
.template-index .halo-service .item a:hover,
.template-index .service-item a:hover,
.template-index .policy-item a:hover {
  color: var(--ib-accent-dark) !important;
  text-decoration: underline !important;
}

/* Tablet */
@media (max-width: 1024px) {
  .template-index .why-us,
  .template-index .why-us-section,
  .template-index .service-section,
  .template-index .halo-service,
  .template-index .shopify-section .service-block,
  .template-index .shopify-section .why-choose-us,
  .template-index .shopify-section .home-service,
  .template-index .shopify-section .policies-block {
    padding: 60px 18px 70px !important;
  }

  .template-index .why-us .row,
  .template-index .why-us-section .row,
  .template-index .service-section .row,
  .template-index .halo-service .row,
  .template-index .shopify-section .service-block .row,
  .template-index .shopify-section .why-choose-us .row,
  .template-index .shopify-section .home-service .row,
  .template-index .shopify-section .policies-block .row,
  .template-index .why-us .list-unstyled,
  .template-index .why-us-section .list-unstyled,
  .template-index .service-section .list-unstyled,
  .template-index .halo-service .list-unstyled {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 22px !important;
  }

  .template-index .why-us .item h3,
  .template-index .why-us-section .item h3,
  .template-index .service-section .item h3,
  .template-index .halo-service .item h3,
  .template-index .service-item h3,
  .template-index .policy-item h3 {
    font-size: 27px !important;
  }
}

/* Mobile */
@media (max-width: 767px) {
  .template-index .why-us,
  .template-index .why-us-section,
  .template-index .service-section,
  .template-index .halo-service,
  .template-index .shopify-section .service-block,
  .template-index .shopify-section .why-choose-us,
  .template-index .shopify-section .home-service,
  .template-index .shopify-section .policies-block {
    padding: 45px 15px 55px !important;
  }

  .template-index .why-us h2,
  .template-index .why-us-section h2,
  .template-index .service-section h2,
  .template-index .halo-service h2,
  .template-index .shopify-section .service-block h2,
  .template-index .shopify-section .why-choose-us h2,
  .template-index .shopify-section .home-service h2,
  .template-index .shopify-section .policies-block h2,
  .template-index .why-us .title,
  .template-index .why-us-section .title,
  .template-index .service-section .title,
  .template-index .halo-service .title {
    font-size: 36px !important;
    margin-bottom: 25px !important;
  }

  .template-index .why-us .row,
  .template-index .why-us-section .row,
  .template-index .service-section .row,
  .template-index .halo-service .row,
  .template-index .shopify-section .service-block .row,
  .template-index .shopify-section .why-choose-us .row,
  .template-index .shopify-section .home-service .row,
  .template-index .shopify-section .policies-block .row,
  .template-index .why-us .list-unstyled,
  .template-index .why-us-section .list-unstyled,
  .template-index .service-section .list-unstyled,
  .template-index .halo-service .list-unstyled {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  .template-index .why-us .item,
  .template-index .why-us-section .item,
  .template-index .service-section .item,
  .template-index .halo-service .item,
  .template-index .service-item,
  .template-index .policy-item,
  .template-index .shopify-section .service-block .item,
  .template-index .shopify-section .why-choose-us .item,
  .template-index .shopify-section .home-service .item,
  .template-index .shopify-section .policies-block .item {
    padding: 28px 22px 24px !important;
    border-radius: 16px !important;
  }

  .template-index .why-us .icon,
  .template-index .why-us-section .icon,
  .template-index .service-section .icon,
  .template-index .halo-service .icon,
  .template-index .service-item .icon,
  .template-index .policy-item .icon {
    width: 72px !important;
    height: 72px !important;
    margin-bottom: 18px !important;
  }

  .template-index .why-us .item h3,
  .template-index .why-us-section .item h3,
  .template-index .service-section .item h3,
  .template-index .halo-service .item h3,
  .template-index .service-item h3,
  .template-index .policy-item h3 {
    font-size: 25px !important;
  }

  .template-index .why-us .item p,
  .template-index .why-us-section .item p,
  .template-index .service-section .item p,
  .template-index .halo-service .item p,
  .template-index .service-item p,
  .template-index .policy-item p {
    font-size: 14px !important;
  }
}


/* =========================================
   INDBERRY - WHY CHOOSE US
   PREMIUM LUXURY DESIGN
========================================= */

.ib-why {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 85px 20px 95px;
  background:
    radial-gradient(ellipse at 0% 100%,
      #f8e2dc 0%, transparent 38%),
    radial-gradient(ellipse at 100% 0%,
      #f9e8e1 0%, transparent 36%),
    #fffaf6;
  font-family: "Manrope", sans-serif;
}

.ib-why *,
.ib-why *::before,
.ib-why *::after {
  box-sizing: border-box;
}

/* Main container */
.ib-why__container {
  max-width: 1320px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

/* Heading area */
.ib-why__header {
  text-align: center;
  margin-bottom: 55px;
}

.ib-why__heading {
  font-family: "Cormorant Garamond",
    Georgia, serif !important;
  font-size: clamp(42px, 5vw, 68px);
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: -1px;
  color: #681b30 !important;
  margin: 0 0 15px;
}

/* Decorative divider */
.ib-why__divider {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin: 0 auto 20px;
  color: #b99160;
  font-size: 23px;
}

.ib-why__divider::before,
.ib-why__divider::after {
  content: "";
  width: 65px;
  height: 1px;
  background: #c9a372;
}

/* Subtitle */
.ib-why__subtitle {
  font-family: "Manrope", sans-serif !important;
  font-size: 16px;
  line-height: 1.7;
  color: #655b58 !important;
  margin: 0 auto;
  max-width: 750px;
  font-weight: 400;
}

/* Three card grid */
.ib-why__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 26px;
  align-items: stretch;
}

/* Card */
.ib-why__card {
  position: relative;
  min-width: 0;
  background: rgba(255,255,255,.94);
  border: 1px solid #e9d4bc;
  border-radius: 20px;
  padding: 43px 30px 42px;
  text-align: center;
  box-shadow:
    0 15px 35px rgba(113,65,48,.07),
    0 3px 10px rgba(113,65,48,.03);
  transition:
    transform .3s ease,
    box-shadow .3s ease,
    border-color .3s ease;
}

.ib-why__card:hover {
  transform: translateY(-7px);
  border-color: #c69b70;
  box-shadow: 0 24px 45px rgba(113,65,48,.12);
}

/* Icon circle */
.ib-why__icon {
  width: 100px;
  height: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 26px;
  border-radius: 50%;
  background: linear-gradient(
    145deg, #fff4ef, #f7ddd8
  );
  border: 1px solid #dfb986;
  color: #781d34;
}

.ib-why__icon svg {
  width: 48px;
  height: 48px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.65;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* Card heading */
.ib-why__card-title {
  font-family: "Cormorant Garamond",
    Georgia, serif !important;
  font-size: clamp(28px, 2.6vw, 37px);
  line-height: 1.15;
  color: #681b30 !important;
  font-weight: 600;
  margin: 0 0 17px;
  letter-spacing: -.3px;
}

/* Small golden divider */
.ib-why__card-divider {
  width: 86px;
  height: 1px;
  background: #cba372;
  margin: 0 auto 23px;
  position: relative;
}

.ib-why__card-divider::after {
  content: "✦";
  font-size: 15px;
  color: #bd925e;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  padding: 0 8px;
  background: #fff;
}

/* Card description */
.ib-why__description {
  font-family: "Manrope", sans-serif !important;
  font-size: 15px;
  font-weight: 400;
  color: #5f5653 !important;
  line-height: 1.85;
  margin: 0 auto;
  max-width: 350px;
}

/* =========================================
   TABLET
========================================= */
@media (min-width: 768px) and
       (max-width: 1100px) {

  .ib-why {
    padding: 65px 24px 75px;
  }

  .ib-why__grid {
    gap: 18px;
  }

  .ib-why__card {
    padding: 32px 20px;
  }

  .ib-why__icon {
    width: 82px;
    height: 82px;
  }

  .ib-why__icon svg {
    width: 39px;
    height: 39px;
  }

  .ib-why__card-title {
    font-size: 28px;
  }

  .ib-why__description {
    font-size: 13px;
  }
}

/* =========================================
   MOBILE
========================================= */
@media (max-width: 767px) {

  .ib-why {
    padding: 55px 16px 65px;
  }

  .ib-why__header {
    margin-bottom: 32px;
  }

  .ib-why__heading {
    font-size: 42px;
    line-height: 1.1;
    letter-spacing: -.5px;
  }

  .ib-why__subtitle {
    font-size: 13px;
    line-height: 1.75;
  }

  .ib-why__grid {
    grid-template-columns: 1fr;
    gap: 20px;
    max-width: 460px;
    margin: 0 auto;
  }

  .ib-why__card {
    padding: 34px 24px 35px;
    border-radius: 16px;
  }

  .ib-why__icon {
    width: 80px;
    height: 80px;
    margin-bottom: 20px;
  }

  .ib-why__icon svg {
    width: 38px;
    height: 38px;
  }

  .ib-why__card-title {
    font-size: 32px;
  }

  .ib-why__description {
    font-size: 14px;
    line-height: 1.8;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ib-why__card {
    transition: none;
  }

  .ib-why__card:hover {
    transform: none;
  }
}

