:root{--gb-berry:#97233f;--gb-gold:#d2a12d;--gb-cream:#fbf7ed;--gb-espresso:#3a2b24;--gb-sage:#e8e8d8;--gb-border:rgba(58,43,36,.13)}
.skd-gb-header-source{display:none!important}.skd-gb-header{position:relative;width:44px;height:44px;display:none;align-items:center;justify-content:center;color:var(--gb-espresso);text-decoration:none;border:1px solid var(--gb-border);border-radius:50%;background:#fff;box-shadow:0 4px 14px rgba(58,43,36,.08)}.skd-gb-header.is-positioned{display:inline-flex}.skd-gb-header:hover{color:var(--gb-berry);border-color:rgba(151,35,63,.35)}.skd-gb-header__icon{width:22px;height:22px}.skd-gb-header__icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.skd-gb-header__count{position:absolute;right:-5px;top:-6px;min-width:19px;height:19px;padding:0 5px;display:grid;place-items:center;border-radius:999px;background:var(--gb-berry);color:#fff;font-size:10px;font-weight:800;border:2px solid var(--gb-cream)}.skd-gb-header.is-empty .skd-gb-header__count{display:none}
.skd-gb-button{width:calc(100% - 28px);margin:0 14px 14px!important;min-height:40px!important;padding:9px 14px!important;border:1px solid var(--gb-berry)!important;border-radius:999px!important;background:#fff!important;color:var(--gb-berry)!important;font-size:11px!important;font-weight:800!important;line-height:1.1!important;cursor:pointer;display:flex!important;align-items:center;justify-content:center;gap:7px;text-decoration:none!important;transition:.2s ease}.skd-gb-button:hover,.skd-gb-button.is-added{background:var(--gb-berry)!important;color:#fff!important;transform:translateY(-1px)}.skd-gb-button:disabled{opacity:.65}.skd-gb-button--choose{box-sizing:border-box}.skd-gb-single-action{max-width:440px;margin:12px 0 18px}.skd-gb-single-action .skd-gb-button{width:100%;margin:0!important;min-height:48px!important;font-size:13px!important}
.skd-gb-builder{background:var(--gb-cream);color:var(--gb-espresso);padding:0 0 70px;min-height:70vh}.skd-gb-hero{text-align:center;padding:56px 24px 38px;background:linear-gradient(180deg,#f1e4d5 0%,var(--gb-cream) 100%)}.skd-gb-eyebrow{display:block;color:var(--gb-berry);font-size:11px;font-weight:800;letter-spacing:.14em;margin-bottom:8px}.skd-gb-hero h1,.skd-gb-card h2,.skd-gb-summary h2,.skd-gb-empty h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;color:var(--gb-espresso)}.skd-gb-hero h1{font-size:clamp(36px,5vw,58px);line-height:1.05;margin:0 0 12px}.skd-gb-hero p{max-width:690px;margin:0 auto;color:#74665d;line-height:1.65}.skd-gb-layout{width:min(1180px,calc(100% - 40px));margin:0 auto;display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr);gap:28px;align-items:start}.skd-gb-card,.skd-gb-summary,.skd-gb-empty{background:#fff;border:1px solid var(--gb-border);border-radius:20px;box-shadow:0 12px 35px rgba(58,43,36,.06)}.skd-gb-card{padding:28px}.skd-gb-card__heading{display:flex;justify-content:space-between;gap:20px;align-items:center;padding-bottom:20px;border-bottom:1px solid var(--gb-border)}.skd-gb-card h2,.skd-gb-summary h2{font-size:28px;margin:0}.skd-gb-count-label{font-size:12px;font-weight:800;color:var(--gb-berry);background:#f9edf0;border-radius:999px;padding:7px 11px}.skd-gb-item{display:grid;grid-template-columns:92px minmax(0,1fr) auto;gap:18px;padding:20px 0;border-bottom:1px solid var(--gb-border);align-items:center}.skd-gb-item__image img{width:92px;height:92px;object-fit:cover;border-radius:14px;display:block}.skd-gb-item h3{font-family:Georgia,'Times New Roman',serif;font-size:18px;font-weight:400;margin:0 0 5px;color:var(--gb-espresso)}.skd-gb-item__price,.skd-gb-variation{font-size:12px;color:#83756b}.skd-gb-item__end{text-align:right;align-self:stretch;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-end}.skd-gb-item__end strong{color:var(--gb-berry)}.skd-gb-remove{border:0!important;background:transparent!important;color:#9a8b81!important;font-size:24px!important;padding:0!important;min-height:0!important;width:28px;height:28px;cursor:pointer}.skd-gb-qty{display:inline-flex;border:1px solid var(--gb-border);border-radius:999px;overflow:hidden;margin-top:10px}.skd-gb-qty button{width:31px!important;height:31px!important;min-height:31px!important;padding:0!important;border:0!important;background:#f7f2eb!important;color:var(--gb-espresso)!important;border-radius:0!important}.skd-gb-qty input{width:42px!important;height:31px!important;padding:0!important;border:0!important;text-align:center!important;background:#fff!important;-moz-appearance:textfield}.skd-gb-qty input::-webkit-outer-spin-button,.skd-gb-qty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.skd-gb-continue{display:inline-block;margin-top:20px;color:var(--gb-berry);font-weight:700;text-decoration:none}.skd-gb-summary{padding:28px;position:sticky;top:105px}.skd-gb-summary__gift{font-size:34px;margin-bottom:6px}.skd-gb-summary>label{display:block;font-size:12px;font-weight:800;margin-top:20px;color:var(--gb-espresso)}.skd-gb-summary>label span{font-weight:400;color:#8b7e75}.skd-gb-summary input,.skd-gb-summary textarea{box-sizing:border-box;width:100%;margin-top:7px;border:1px solid var(--gb-border);border-radius:12px;padding:12px 13px;background:#fff;color:var(--gb-espresso);font:inherit}.skd-gb-summary textarea{resize:vertical}.skd-gb-totals{margin:22px 0 16px;padding:17px 0;border-top:1px solid var(--gb-border);border-bottom:1px solid var(--gb-border)}.skd-gb-totals>div{display:flex;justify-content:space-between;gap:18px;margin:8px 0;font-size:13px}.skd-gb-totals .skd-gb-total{font-size:17px;margin-top:16px;color:var(--gb-berry)}.skd-gb-packaging-note{font-size:11px;color:#86786f;text-align:center}.skd-gb-primary{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;border:1px solid var(--gb-berry)!important;border-radius:999px!important;background:var(--gb-berry)!important;color:#fff!important;font-weight:800;text-decoration:none!important}.skd-gb-checkout{width:100%;cursor:pointer}.skd-gb-summary small{display:block;text-align:center;margin-top:10px;color:#887a71}.skd-gb-empty{width:min(680px,calc(100% - 40px));margin:0 auto;padding:52px 30px;text-align:center}.skd-gb-empty__icon{font-size:52px}.skd-gb-empty h2{font-size:30px;margin:8px 0}.skd-gb-empty p{color:#7c6e65;margin:0 0 22px}
.skd-catalog-page ul.products li.product{padding-bottom:58px!important}.skd-catalog-page ul.products li.product .skd-gb-button{position:absolute!important;left:14px!important;right:14px!important;bottom:8px!important;width:calc(100% - 28px)!important;margin:0!important}.skd-catalog-page ul.products li.product .button:not(.skd-gb-button){bottom:54px!important}.skd-catalog-page ul.products li.product .price{margin-bottom:56px!important}
@media(max-width:800px){.skd-gb-layout{grid-template-columns:1fr}.skd-gb-summary{position:static}.skd-gb-item{grid-template-columns:76px minmax(0,1fr) auto}.skd-gb-item__image img{width:76px;height:76px}}
@media(max-width:520px){.skd-gb-layout{width:min(100% - 24px,1180px)}.skd-gb-card,.skd-gb-summary{padding:20px}.skd-gb-card__heading{align-items:flex-start}.skd-gb-item{grid-template-columns:68px 1fr;gap:12px}.skd-gb-item__image img{width:68px;height:68px}.skd-gb-item__end{grid-column:2;flex-direction:row;align-items:center}.skd-gb-hero{padding-top:38px}.skd-gb-header{width:40px;height:40px}}

/* v1.0.1 - Defensive catalog button sizing.
   The SKD theme applies broad product-card SVG/emoji/button rules after AJAX updates.
   Keep the gift-box CTA compact and prevent icon/text expansion. */
ul.products li.product .skd-gb-button,
.woocommerce ul.products li.product .skd-gb-button,
.skd-catalog-page ul.products li.product .skd-gb-button {
  box-sizing:border-box!important;
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  width:calc(100% - 28px)!important;
  min-width:0!important;
  height:40px!important;
  min-height:40px!important;
  max-height:40px!important;
  padding:8px 14px!important;
  overflow:hidden!important;
  white-space:nowrap!important;
  font-size:11px!important;
  line-height:1!important;
}
ul.products li.product .skd-gb-button__icon,
.woocommerce ul.products li.product .skd-gb-button__icon {
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 16px!important;
  width:16px!important;
  min-width:16px!important;
  max-width:16px!important;
  height:16px!important;
  min-height:16px!important;
  max-height:16px!important;
  font-size:14px!important;
  line-height:16px!important;
  overflow:hidden!important;
  transform:none!important;
}
ul.products li.product .skd-gb-button__icon img,
ul.products li.product .skd-gb-button__icon svg,
.woocommerce ul.products li.product .skd-gb-button__icon img,
.woocommerce ul.products li.product .skd-gb-button__icon svg {
  width:16px!important;
  height:16px!important;
  min-width:16px!important;
  min-height:16px!important;
  max-width:16px!important;
  max-height:16px!important;
  object-fit:contain!important;
}
ul.products li.product .skd-gb-button__text,
.woocommerce ul.products li.product .skd-gb-button__text {
  display:inline-block!important;
  flex:0 1 auto!important;
  width:auto!important;
  min-width:0!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  font:inherit!important;
  line-height:1!important;
}

/* v1.0.2 - Match the WooCommerce catalog Add to cart CTA to the Gift Box CTA. */
.skd-catalog-page ul.products li.product .button:not(.skd-gb-button) {
  box-sizing:border-box!important;
  left:14px!important;
  right:14px!important;
  width:calc(100% - 28px)!important;
  max-width:none!important;
  height:40px!important;
  min-height:40px!important;
  max-height:40px!important;
  margin:0!important;
  padding:8px 14px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:11px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
