/*
Theme Name: Greek Boutique Pink Preview
Description: Compact editorial home and native accessible sticky cart. Private catalog review retained.
Author: Shop Greek Boutique
Template: storefront
Version: 0.6.3
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: greek-boutique-pink-preview
License: GPL-2.0-or-later
*/
/* Approved colors, fonts and shared dimensions are injected from shared-branding.json. */
:root { --gbb-ink: CanvasText; --gbb-accent: CanvasText; --gbb-paper: Canvas; --gbb-panel: Canvas; --gbb-border: GrayText; --gbb-logo-pink: var(--gbb-accent); --gbb-gold: var(--gbb-border); --gbb-hover: var(--gbb-accent); --gbb-logo-desktop: 64px; --gbb-logo-mobile: 48px; --gbb-badge: 72px; --gbb-button-height: 48px; --gbb-tap: 44px; --gbb-font-body: sans-serif; --gbb-font-heading: serif; }
* { box-sizing: border-box; }
html { scroll-behavior: auto; }
body { background: var(--gbb-paper); color: var(--gbb-ink); font: 16px/1.6 var(--gbb-font-body); }
h1,h2,h3,h4,h5,h6 { color: var(--gbb-ink); font-family: var(--gbb-font-heading); line-height: 1.1; text-wrap: balance; }
a { color: var(--gbb-accent); text-underline-offset: .22em; }
a:hover { color: var(--gbb-hover); }
body :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible { outline: 3px solid var(--gbb-accent); outline-offset: 3px; box-shadow: 0 0 0 2px var(--gbb-paper); }
img { max-width: 100%; height: auto; }
.gbb-visually-hidden { position: absolute!important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.col-full { max-width: 1440px; padding-left: 32px; padding-right: 32px; }
.site-content #primary { width: 100%; float: none; margin: 0; }
.site-content #secondary { display: none; }
.site-main { margin-bottom: 64px; }
.site-header { background: var(--gbb-paper); color: var(--gbb-ink); border-bottom: 1px solid var(--gbb-border); padding: 16px 0; margin-bottom: 0!important; z-index: 40; }
.site-header > .col-full { padding-top: 0; padding-bottom: 0; }
.gbb-header { display: flex; align-items: center; gap: 24px; width: 100%; position: relative; min-width: 0; }
.gbb-logo-link { display: inline-flex; align-items: center; flex: 0 0 auto; min-width: var(--gbb-tap); min-height: var(--gbb-tap); text-decoration: none; background: var(--gbb-paper); }
.gbb-logo { display: block; height: var(--gbb-logo-desktop); width: auto; max-width: none; object-fit: contain; border-radius: 0; }
.gbb-nav { flex: 1 1 auto; min-width: 0; }
.gbb-menu { list-style: none; margin: 0; padding: 0; }
.gbb-nav > nav > .gbb-menu { display: flex; justify-content: flex-start; align-items: center; flex-wrap: wrap; gap: 0 18px; }
.gbb-menu li { position: relative; min-width: 0; }
.gbb-menu a, .gbb-submenu-toggle { display: inline-flex; align-items: center; min-height: var(--gbb-tap); font: 700 13px/1.4 var(--gbb-font-body); text-decoration: none; color: var(--gbb-ink); overflow-wrap: anywhere; }
.gbb-nav .gbb-menu a:hover, .gbb-tool:hover, .gbb-search > summary:hover { color: var(--gbb-hover); }
.gbb-nav .gbb-submenu { position: absolute; top: 100%; left: 0; right: auto; z-index: 100; width: min(580px,calc(100vw - 64px)); min-width: 0; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 12px; list-style: none; margin: 0; padding: 16px; background: var(--gbb-paper); border: 1px solid var(--gbb-border); box-shadow: 0 12px 24px color-mix(in srgb,var(--gbb-ink) 10%,transparent); }
.gbb-nav .gbb-submenu a { display: flex; padding: 6px; width: 100%; white-space: normal; }
.gbb-js .gbb-submenu:not(.is-open) { display: none; }
.gbb-tools { display: flex; align-items: center; gap: 2px; flex: 0 0 auto; }
.gbb-tool, .gbb-search > summary { display: inline-flex; justify-content: center; align-items: center; color: var(--gbb-ink); min-width: var(--gbb-tap); min-height: var(--gbb-tap); cursor: pointer; }
.gbb-search > summary { list-style: none; }
.gbb-search > summary::-webkit-details-marker { display: none; }
.gbb-search form { position: absolute; right: 0; top: 100%; z-index: 101; width: min(360px,calc(100vw - 32px)); border: 1px solid var(--gbb-border); background: var(--gbb-paper); padding: 16px; display: flex; flex-wrap: wrap; gap: 8px; }
.gbb-search input { width: 100%; }
button,input[type="button"],input[type="submit"],.button,a.button,.wp-element-button,.wc-block-components-button { min-height: var(--gbb-button-height); padding: 12px 22px; background: var(--gbb-accent); color: var(--gbb-paper); border: 1px solid var(--gbb-accent); border-radius: 0; font: 700 14px/1.4 var(--gbb-font-body); text-shadow: none; }
button.alt,input[type="button"].alt,input[type="submit"].alt,.button.alt,a.button.alt,#respond input#submit,a.added_to_cart { background: var(--gbb-accent); color: var(--gbb-paper); border-color: var(--gbb-accent); }
button:hover,button:focus,input[type="button"]:hover,input[type="button"]:focus,input[type="submit"]:hover,input[type="submit"]:focus,.button:hover,.button:focus,a.button:hover,a.button:focus,.wp-element-button:hover,.wp-element-button:focus,.wc-block-components-button:hover,.wc-block-components-button:focus,button.alt:hover,input[type="button"].alt:hover,input[type="submit"].alt:hover,.button.alt:hover,a.button.alt:hover,#respond input#submit:hover,a.added_to_cart:hover { background: var(--gbb-hover); border-color: var(--gbb-hover); color: var(--gbb-paper); }
button.alt:focus,input[type="button"].alt:focus,input[type="submit"].alt:focus,.button.alt:focus,a.button.alt:focus,#respond input#submit:focus,a.added_to_cart:focus { background: var(--gbb-hover); border-color: var(--gbb-hover); color: var(--gbb-paper); }
button:disabled,.button:disabled,input[type="submit"]:disabled { cursor: not-allowed; }
.gbb-menu-toggle,.gbb-submenu-toggle { min-width: var(--gbb-tap); min-height: var(--gbb-tap); padding: 0; background: transparent; color: var(--gbb-ink); border: 0; }
.gbb-menu-toggle { display: none; }
.gbb-menu-toggle:hover,.gbb-menu-toggle:focus,.gbb-submenu-toggle:hover,.gbb-submenu-toggle:focus { background: var(--gbb-panel); color: var(--gbb-hover); }
.gbb-submenu-toggle { gap: 8px; }
input[type="text"],input[type="email"],input[type="tel"],input[type="password"],input[type="search"],input[type="number"],select,textarea { min-height: var(--gbb-button-height); max-width: 100%; background: var(--gbb-paper); color: var(--gbb-ink); border: 1px solid var(--gbb-border); border-radius: 0; box-shadow: none; padding: 10px 12px; font-family: var(--gbb-font-body); }
input[type="checkbox"],input[type="radio"] { accent-color: var(--gbb-accent); }
input::placeholder,textarea::placeholder { color: var(--gbb-ink); }
.select2-dropdown,.select2-container--default .select2-selection--single { background: var(--gbb-paper); color: var(--gbb-ink); border-color: var(--gbb-border); }
.select2-container--default .select2-selection--single .select2-selection__rendered,.select2-container--default .select2-selection--single .select2-selection__placeholder { color: var(--gbb-ink); }
.select2-container--default .select2-results__option[aria-selected="true"],.select2-container--default .select2-results__option[data-selected="true"] { background: var(--gbb-panel); color: var(--gbb-ink); }
.select2-container--default .select2-results__option--highlighted[aria-selected],.select2-container--default .select2-results__option--highlighted[data-selected] { background: var(--gbb-hover); color: var(--gbb-paper); }
label { color: var(--gbb-ink); }
/* Homepage density replacement: replace the existing Stage 1 home block.
 * Remove the old homepage-only media-query rules listed in home-change-notes.md.
 * This is a replacement, NOT an appended stylesheet. Shared catalog/product rules stay untouched.
 */
.gbb-editorial-home .site-content > .col-full { max-width: none; margin: 0; padding: 0; }
.site-main.gbb-home { margin-bottom: 0; }
.gbb-home-contained { width: min(100%,1440px); margin-left: auto; margin-right: auto; padding-left: clamp(16px,3vw,48px); padding-right: clamp(16px,3vw,48px); }
.gbb-home-photo { display: block; width: 100%; height: auto; margin: 0; object-fit: contain; object-position: center top; border-radius: 0; }

.gbb-eyebrow { font: 700 11px/1.5 var(--gbb-font-body); letter-spacing: .14em; text-transform: uppercase; margin-bottom: 16px; }
.gbb-text-link { display: inline-flex; min-height: var(--gbb-tap); align-items: center; gap: 10px; font-size: 14px; font-weight: 700; }
.gbb-home-intro { padding-top: 56px; padding-bottom: 56px; text-align: center; }
.gbb-home-intro .gbb-eyebrow { margin: 0 0 8px; }
.gbb-home-intro h2 { max-width: 22ch; margin: 0 auto 16px; font-size: clamp(32px,3.8vw,52px); letter-spacing: -.035em; }
.gbb-home-intro > p:last-child { max-width: 64ch; margin: 0 auto; font-size: 16px; }
.gbb-home-section { padding-top: 56px; padding-bottom: 56px; }
.gbb-section-heading { margin-bottom: 24px; }
.gbb-section-heading .gbb-eyebrow { margin: 0 0 8px; }
.gbb-section-heading h2 { font-size: clamp(32px,3.8vw,52px); letter-spacing: -.035em; margin: 0 0 12px; }
.gbb-section-heading > :last-child { margin-bottom: 0; }
.gbb-sorority-section { background: var(--gbb-panel); }
/* The edit and gallery inherit the same 56/36px section rhythm; no 80px exceptions. */
.gbb-home-stories { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; width: min(1200px,calc(100% - 64px)); margin: 0 auto; padding: 56px 0; }
.gbb-home-story { position: relative; min-width: 0; height: 480px; overflow: hidden; isolation: isolate; border-radius: 14px; background: var(--gbb-ink); }
.gbb-home-story:only-child { grid-column: 1 / -1; justify-self: center; width: 100%; max-width: 588px; }
.gbb-story-media { position: absolute; inset: 0; min-width: 0; }
.gbb-story-media .gbb-home-photo { width: 100%; height: 100%; object-fit: cover; object-position: center top; }
/* Fully opaque: neither text contrast nor badge concealment depends on the photograph. */
.gbb-story-copy { position: absolute; inset: auto 0 0; z-index: 1; min-width: 0; min-height: 208px; padding: 20px 24px; background: var(--gbb-ink); color: var(--gbb-paper); }
.gbb-story-copy .gbb-eyebrow { color: inherit; margin: 0 0 6px; }
.gbb-story-copy h2 { color: var(--gbb-logo-pink); font-size: clamp(28px,2.8vw,34px); line-height: 1.1; letter-spacing: -.035em; margin: 0 0 8px; }
.gbb-story-copy > p:not(.gbb-eyebrow) { color: inherit; max-width: 34ch; margin: 0 0 12px; font-size: 14px; line-height: 1.45; }
.gbb-story-copy a.button { display: inline-flex; align-items: center; justify-content: center; max-width: 100%; min-height: var(--gbb-button-height); padding: 10px 16px; background: var(--gbb-accent); border-color: var(--gbb-logo-pink); color: var(--gbb-paper); font-size: 12px; text-align: center; text-decoration: none; }
.gbb-story-copy a.button:hover { background: var(--gbb-hover); border-color: var(--gbb-logo-pink); color: var(--gbb-paper); }
.gbb-story-copy a.button:focus-visible { outline-color: var(--gbb-logo-pink); outline-offset: 3px; box-shadow: none; }
/* Intrinsic photos in a filled 3+2 arrangement. Weighted first row aligns image heights. */
.gbb-gallery-grid { display: flex; flex-wrap: wrap; gap: 24px; align-items: flex-start; }
.gbb-gallery-photo { flex: 1 1 calc((100% - 48px) * .29665); margin: 0; min-width: 0; }
.gbb-gallery-photo:first-child { flex-basis: calc((100% - 48px) * .4067); }
.gbb-gallery-media { position: relative; line-height: 0; }
.gbb-gallery-media .gbb-home-photo { width: 100%; height: auto; object-fit: contain; object-position: center top; }
/* Owner-authorized footer-only Affinity treatments; original image files stay immutable. */
.gbb-gallery-photo:first-child .gbb-gallery-media { aspect-ratio: 1380 / 920; overflow: hidden; }
.gbb-gallery-photo:first-child .gbb-home-photo { height: 100%; object-fit: cover; object-position: center top; }
.gbb-gallery-photo figcaption { font-size: 12px; line-height: 1.5; padding-top: 10px; color: var(--gbb-ink); }
.gbb-gallery-photo:nth-child(2) { position: relative; }
.gbb-gallery-photo:nth-child(2) figcaption { position: absolute; inset: auto 0 0; min-height: 17%; display: flex; align-items: center; padding: 10px 16px; background: var(--gbb-ink); color: var(--gbb-paper); }
.gbb-gallery-actions { margin-top: 20px; }
.gbb-preview-note { border-left: 3px solid var(--gbb-logo-pink); background: var(--gbb-panel); padding: 12px 16px; font-size: 13px; margin: 24px 0; }

@media (max-width: 1100px) {
 
 
}
@media (max-width: 1000px) {
 
}
@media (max-width: 767px) {
 .gbb-desktop-break { display: none; }
 .gbb-home-intro,.gbb-home-section { padding-top: 36px; padding-bottom: 36px; }
 .gbb-section-heading { margin-bottom: 20px; }
 
 
 
 
 
 
 .gbb-home-stories { grid-template-columns: minmax(0,1fr); width: calc(100% - 32px); padding: 36px 0; }
 .gbb-home-story { height: 420px; }
 /* Full original width and all faces: contain at the top, NEVER narrow-mobile cover. */
 .gbb-story-media .gbb-home-photo { object-fit: contain; object-position: center top; }
 .gbb-story-copy { min-height: 228px; padding: 18px 20px; }
 .gbb-story-copy h2 { font-size: 28px; }
 .gbb-story-copy > p:not(.gbb-eyebrow) { font-size: 13px; }
 .gbb-gallery-grid { gap: 20px; }
 .gbb-gallery-photo,.gbb-gallery-photo:first-child { flex: 0 0 100%; }
 .gbb-gallery-photo figcaption { font-size: 11px; padding-top: 8px; }
}

.woocommerce-MyAccount-navigation a { display: flex; align-items: center; min-height: var(--gbb-tap); }
/*
 * MERGE INTO style.css, not another stylesheet. Replace the old native
 * notice/cart/checkout block (retain MyAccount navigation), replace the old
 * single-product disabled-button color block, and consolidate header order /
 * sticky declarations into their existing blocks. Detailed map in notes.
 * Palette source stays shared-branding.json via the existing --gbb-* tokens.
 */
:root {
  --gbb-cart-notice-offset: 128px;
}
/* Storefront's hidden-x ancestors compute auto-y scroll containers and prevent
 * viewport sticky. Clip x without creating a scroll container on either. */
body, #page.site { overflow-x: clip; overflow-y: visible; }
.site-header {
  position: sticky;
  top: 0;
  z-index: 40;
  overflow: visible;
}
.admin-bar .site-header { top: 32px; }
.gbb-header > .gbb-logo-link { order: 1; }
.gbb-header > .gbb-nav { order: 2; }
.gbb-header > .gbb-tools { order: 3; }
.gbb-header > .gbb-cart { order: 4; }
.gbb-cart { display: flex; align-items: center; flex: 0 0 auto; gap: 0; }
.gbb-cart-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  min-width: var(--gbb-tap);
  min-height: var(--gbb-tap);
  padding: 4px;
  color: var(--gbb-ink);
  background: var(--gbb-paper);
  text-decoration: none;
  white-space: nowrap;
}
.gbb-cart-link:hover { color: var(--gbb-hover); background: var(--gbb-panel); }
.gbb-cart-count {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-width: 22px;
  min-height: 22px;
  padding: 2px 5px;
  background: var(--gbb-accent);
  color: var(--gbb-paper);
  font: 700 12px/1.25 var(--gbb-font-body);
  border-radius: 999px;
}
.gbb-mini-cart { position: static; }
.gbb-mini-cart > summary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: var(--gbb-tap);
  min-height: var(--gbb-tap);
  padding: 0;
  list-style: none;
  cursor: pointer;
  color: var(--gbb-ink);
  background: var(--gbb-paper);
}
.gbb-mini-cart > summary::-webkit-details-marker { display: none; }
.gbb-mini-cart > summary:hover { background: var(--gbb-panel); color: var(--gbb-hover); }
.gbb-mini-cart[open] > summary svg { transform: rotate(180deg); }
.gbb-mini-cart-panel {
  position: absolute;
  z-index: 102;
  right: 0;
  top: 100%;
  width: min(380px,calc(100vw - 32px));
  max-width: 100%;
  max-height: calc(100dvh - var(--gbb-cart-notice-offset));
  overflow: auto;
  overscroll-behavior: contain;
  padding: 20px;
  color: var(--gbb-ink);
  background: var(--gbb-paper);
  border: 1px solid var(--gbb-accent);
  box-shadow: 0 12px 24px color-mix(in srgb,var(--gbb-ink) 12%,transparent);
}
.gbb-mini-cart:not([open]) .gbb-mini-cart-panel { display: none; }
.gbb-mini-cart-panel .widget_shopping_cart_content,
.gbb-mini-cart-panel .woocommerce-mini-cart,
.gbb-mini-cart-panel .woocommerce-mini-cart__empty-message { color: var(--gbb-ink)!important; }
.gbb-mini-cart-panel .woocommerce-mini-cart { margin: 0; list-style: none; }
.gbb-mini-cart-panel .woocommerce-mini-cart-item { position: relative; padding: 12px 0 12px 44px; border-bottom: 1px solid var(--gbb-border); }
.gbb-mini-cart-panel .woocommerce-mini-cart-item img { width: 56px; height: auto; float: right; margin: 0 0 8px 10px; }
.gbb-mini-cart-panel .woocommerce-mini-cart-item a:not(.remove) { display: block; min-height: var(--gbb-tap); }
.gbb-mini-cart-panel .woocommerce-mini-cart-item .quantity,
.gbb-mini-cart-panel .woocommerce-mini-cart-item dl,
.gbb-mini-cart-panel .woocommerce-mini-cart-item dd,
.gbb-mini-cart-panel .woocommerce-mini-cart-item dt { color: var(--gbb-ink)!important; opacity: 1!important; }
.gbb-mini-cart-panel .woocommerce-mini-cart__total { clear: both; margin: 16px 0; color: var(--gbb-ink)!important; border-top: 1px solid var(--gbb-border); padding-top: 16px; }
.gbb-mini-cart-panel .woocommerce-mini-cart__buttons { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; margin: 0; }

/* Native notice text/icon/link pairs override Storefront's colored defaults. */
.woocommerce-error,
.woocommerce-info,
.woocommerce-message {
  color: var(--gbb-ink)!important;
  background: var(--gbb-panel)!important;
  border-color: var(--gbb-accent)!important;
  border-left: 4px solid var(--gbb-accent)!important;
  box-shadow: none!important;
  opacity: 1!important;
  overflow-wrap: anywhere;
}
.woocommerce-error::before,
.woocommerce-info::before,
.woocommerce-message::before { color: var(--gbb-accent)!important; }
.woocommerce-error :where(li,p,strong,span),
.woocommerce-info :where(li,p,strong,span),
.woocommerce-message :where(li,p,strong,span) { color: inherit!important; opacity: 1!important; }
.woocommerce-error a:not(.button),
.woocommerce-info a:not(.button),
.woocommerce-message a:not(.button),
.gbb-mini-cart-panel a:not(.button),
.woocommerce-cart :where(.woocommerce-cart-form,.cart_totals,.return-to-shop) a:not(.button),
.woocommerce-checkout :where(form.checkout,.woocommerce-checkout,#order_review,.woocommerce-form-login,.woocommerce-form-coupon) a:not(.button) {
  color: var(--gbb-accent)!important;
  text-decoration: underline;
  text-underline-offset: .2em;
}
.woocommerce-error a:not(.button):hover,
.woocommerce-info a:not(.button):hover,
.woocommerce-message a:not(.button):hover,
.gbb-mini-cart-panel a:not(.button):hover,
.woocommerce-cart :where(.woocommerce-cart-form,.cart_totals,.return-to-shop) a:not(.button):hover,
.woocommerce-checkout :where(form.checkout,.woocommerce-checkout,#order_review,.woocommerce-form-login,.woocommerce-form-coupon) a:not(.button):hover { color: var(--gbb-hover)!important; }
.woocommerce-notices-wrapper { scroll-margin-top: var(--gbb-cart-notice-offset); }

/* All native CTA variants, including non-.button View cart / added_to_cart. */
:where(.woocommerce-error,.woocommerce-info,.woocommerce-message,.gbb-mini-cart-panel) :is(a.button,button,input[type="button"],input[type="submit"],a.added_to_cart),
:where(.woocommerce-cart,.woocommerce-checkout) :is(a.button,button.button,input[type="button"],input[type="submit"],a.added_to_cart),
.single-product form.cart a.added_to_cart,
ul.products li.product a.added_to_cart {
  display: inline-flex!important;
  align-items: center;
  justify-content: center;
  min-height: 48px!important;
  padding: 12px 18px!important;
  margin-left: 0;
  background: var(--gbb-accent)!important;
  background-image: none!important;
  border: 1px solid var(--gbb-accent)!important;
  border-radius: 0!important;
  color: var(--gbb-paper)!important;
  font: 700 14px/1.4 var(--gbb-font-body);
  text-align: center;
  text-decoration: none!important;
  text-shadow: none!important;
  box-shadow: none;
  opacity: 1!important;
}
:where(.woocommerce-error,.woocommerce-info,.woocommerce-message,.gbb-mini-cart-panel) :is(a.button,button,input[type="button"],input[type="submit"],a.added_to_cart):hover,
:where(.woocommerce-cart,.woocommerce-checkout) :is(a.button,button.button,input[type="button"],input[type="submit"],a.added_to_cart):hover,
.single-product form.cart a.added_to_cart:hover,
ul.products li.product a.added_to_cart:hover {
  background: var(--gbb-hover)!important;
  border-color: var(--gbb-hover)!important;
  color: var(--gbb-paper)!important;
}
/* Native disabled state stays disabled, but never relies on washed-out opacity. */
:where(.woocommerce-cart,.woocommerce-checkout,.gbb-mini-cart-panel) :is(button,input[type="button"],input[type="submit"]):disabled {
  background: var(--gbb-panel)!important;
  color: var(--gbb-ink)!important;
  border-color: var(--gbb-accent)!important;
  cursor: not-allowed;
  opacity: 1!important;
}
:where(.gbb-cart,.woocommerce-error,.woocommerce-info,.woocommerce-message,.woocommerce-cart,.woocommerce-checkout) :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible,
.single-product form.cart a.added_to_cart:focus-visible,
ul.products li.product a.added_to_cart:focus-visible,
.woocommerce-notices-wrapper:focus {
  outline: 3px solid var(--gbb-accent)!important;
  outline-offset: 3px!important;
  box-shadow: 0 0 0 2px var(--gbb-paper)!important;
}
.gbb-mini-cart-panel a.remove,
.woocommerce-cart a.remove {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-width: var(--gbb-tap);
  min-height: var(--gbb-tap);
  color: var(--gbb-accent)!important;
  background: var(--gbb-paper)!important;
  font-size: 22px;
  text-decoration: none!important;
}
.gbb-mini-cart-panel a.remove { position: absolute; top: 8px; left: 0; }
.gbb-mini-cart-panel a.remove:hover,
.woocommerce-cart a.remove:hover { color: var(--gbb-paper)!important; background: var(--gbb-hover)!important; }

/* Classic native cart/checkout: labels, totals, table cells and error pairs. */
.woocommerce-cart .cart_totals,
.woocommerce-checkout #order_review,
.woocommerce-order-details { background: var(--gbb-panel); color: var(--gbb-ink); border: 1px solid var(--gbb-border); padding: clamp(16px,3vw,28px); }
:where(.woocommerce-cart,.woocommerce-checkout) table.shop_table { border-collapse: collapse; width: 100%; }
:where(.woocommerce-cart,.woocommerce-checkout) table.shop_table :is(th,td) { color: var(--gbb-ink)!important; background: transparent!important; padding: 12px; overflow-wrap: anywhere; }
:where(.woocommerce-cart,.woocommerce-checkout) table.shop_table thead { border-bottom: 1px solid var(--gbb-border); }
:where(.woocommerce-cart,.woocommerce-checkout) :is(label,legend,.woocommerce-form__label,.required,.woocommerce-Price-amount,.woocommerce-shipping-destination,.woocommerce-shipping-methods,.woocommerce-terms-and-conditions-wrapper,.woocommerce-privacy-policy-text,.cart-subtotal,.order-total,.variation,.product-quantity,.product-name,.product-price,.product-subtotal) { color: var(--gbb-ink)!important; opacity: 1!important; }
:where(.woocommerce-cart,.woocommerce-checkout) :is(input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),select,textarea,.select2-container .select2-selection) {
  min-height: 48px;
  background: var(--gbb-paper)!important;
  color: var(--gbb-ink)!important;
  border: 1px solid var(--gbb-accent)!important;
  border-radius: 0;
  box-shadow: none;
  opacity: 1!important;
}
:where(.woocommerce-cart,.woocommerce-checkout) :is(.select2-selection__rendered,.select2-selection__placeholder) { color: var(--gbb-ink)!important; opacity: 1!important; }
:where(.woocommerce-cart,.woocommerce-checkout) input::placeholder,
:where(.woocommerce-cart,.woocommerce-checkout) textarea::placeholder { color: var(--gbb-ink)!important; opacity: 1!important; }
:where(.woocommerce-cart,.woocommerce-checkout) :is(input[type="checkbox"],input[type="radio"]) { accent-color: var(--gbb-accent); }
.woocommerce-checkout .woocommerce-invalid label,
.woocommerce-checkout .woocommerce-invalid .required,
.woocommerce-checkout .woocommerce-invalid :is(input,select,textarea),
.woocommerce-checkout [aria-invalid="true"] {
  color: var(--gbb-ink)!important;
  border-color: var(--gbb-accent)!important;
}
.woocommerce-checkout .woocommerce-invalid :is(input,select,textarea) { border-width: 2px!important; background: var(--gbb-panel)!important; }
.woocommerce-checkout #payment,
.woocommerce-checkout #payment .payment_methods,
.woocommerce-checkout #payment .payment_box,
.woocommerce-checkout #payment .place-order { background: var(--gbb-panel)!important; color: var(--gbb-ink)!important; }
.woocommerce-checkout #payment .payment_box::before { border-bottom-color: var(--gbb-panel)!important; }
.woocommerce-form-coupon,.woocommerce-cart .coupon { display: flex; flex-wrap: wrap; gap: 8px; }
.woocommerce-cart .coupon input { flex: 1 1 140px; }

/* Disabled single-product controls use charcoal on blush; Woo still owns
 * option availability and the disabled attributes/classes. */
.single-product div.product .summary form.cart .single_add_to_cart_button.disabled,
.single-product div.product .summary form.cart .single_add_to_cart_button:disabled,
.single-product div.product .summary form.cart .single_add_to_cart_button[disabled],
.single-product div.product .summary form.cart .single_add_to_cart_button.wc-variation-selection-needed,
.single-product div.product .summary form.cart .single_add_to_cart_button.wc-variation-is-unavailable {
  background-color: var(--gbb-panel)!important;
  background-image: none!important;
  border-color: var(--gbb-accent)!important;
  color: var(--gbb-ink)!important;
  opacity: 1!important;
  filter: none!important;
  cursor: not-allowed;
}
.single-product form.cart[aria-busy="true"] .single_add_to_cart_button { cursor: progress; }

@media (max-width: 1000px) {
  .gbb-header > .gbb-menu-toggle { order: 1; }
  .gbb-header > .gbb-cart { order: 2; }
  .gbb-header > .gbb-logo-link { order: 3; margin-right: auto; }
  .gbb-header > .gbb-tools { order: 4; }
  .gbb-header > .gbb-nav { order: 5; }
}
@media (max-width: 782px) { .admin-bar .site-header { top: 46px; } }
/* WordPress's small-screen admin bar is absolute and scrolls away. */
@media (max-width: 600px) { .admin-bar .site-header { top: 0; } }
@media (max-width: 767px) {
  /* Fixed touch controls, intrinsic cart count, shrinkable logo: one row at
   * 375px even when a wider approved replacement logo is used. */
  .gbb-header { display: grid; grid-template-columns: var(--gbb-tap) max-content minmax(0,1fr) max-content; gap: 4px; }
  .gbb-header > .gbb-menu-toggle { grid-column: 1; grid-row: 1; }
  .gbb-header > .gbb-cart { grid-column: 2; grid-row: 1; }
  .gbb-header > .gbb-logo-link { grid-column: 3; grid-row: 1; min-width: 0; width: 100%; margin-right: 0; justify-content: center; }
  .gbb-header > .gbb-logo-link .gbb-logo { width: auto; height: auto; max-width: min(140px,100%); max-height: var(--gbb-logo-mobile); }
  .gbb-header > .gbb-tools { grid-column: 4; grid-row: 1; }
  .gbb-header > .gbb-nav { grid-column: 1 / -1; grid-row: 2; }
  .gbb-mini-cart-panel { padding: 16px; }
  .gbb-cart-link { gap: 3px; padding: 2px; }
  .gbb-mini-cart-panel .woocommerce-mini-cart__buttons { grid-template-columns: minmax(0,1fr); }
  .gbb-mini-cart-panel .woocommerce-mini-cart__buttons a { width: 100%; margin: 0!important; }
  :where(.woocommerce-error,.woocommerce-info,.woocommerce-message) a.button { float: none!important; width: 100%; margin: 8px 0!important; }
  .woocommerce-checkout .col2-set,
  .woocommerce-checkout #order_review,
  .woocommerce-checkout #order_review_heading { width: 100%; float: none; }
  .woocommerce-cart .cart_totals { width: 100%; }
  :where(.woocommerce-cart,.woocommerce-checkout) table.shop_table :is(th,td) { padding: 10px 8px; }
}

/* Native Cart/Checkout BLOCKS on this site: preserve Store API calculations/UI. */
:where(.wc-block-cart,.wc-block-checkout) { color: var(--gbb-ink); }
:where(.wc-block-cart,.wc-block-checkout) :where(p,label,legend,small,h2,h3,h4,td,th,.wc-block-components-product-name,.wc-block-components-product-price,.wc-block-components-totals-item__label,.wc-block-components-totals-item__value,.wc-block-components-totals-footer-item,.wc-block-components-totals-shipping__change-address__link,.wc-block-components-checkbox__label,.wc-block-components-radio-control__label,.wc-block-components-radio-control__description,.wc-block-components-product-metadata,.wc-block-components-validation-error,.wc-block-components-address-card,.wc-block-components-order-summary-item) { color: var(--gbb-ink)!important; opacity: 1!important; }
:where(.wc-block-cart,.wc-block-checkout) a:not(.wc-block-components-button):not(.button) { color: var(--gbb-accent)!important; }
:where(.wc-block-cart,.wc-block-checkout) a:not(.wc-block-components-button):not(.button):hover { color: var(--gbb-hover)!important; }
:where(.wc-block-cart,.wc-block-checkout) :is(input:not([type=checkbox]):not([type=radio]),select,textarea) { color: var(--gbb-ink)!important; background: var(--gbb-paper)!important; border-color: var(--gbb-accent)!important; }
:where(.wc-block-cart,.wc-block-checkout) :is(input,textarea)::placeholder { color: var(--gbb-ink)!important; opacity: 1!important; }
:where(.wc-block-cart,.wc-block-checkout) .wc-block-components-sidebar { background: var(--gbb-panel); border: 1px solid var(--gbb-border); padding: clamp(16px,3vw,28px); }
:where(.wc-block-cart,.wc-block-checkout) :is(.wc-block-components-button,a.added_to_cart),
.wc-block-components-notice-banner a.button { min-height: 48px!important; background: var(--gbb-accent)!important; background-image: none!important; color: var(--gbb-paper)!important; border: 1px solid var(--gbb-accent)!important; padding: 12px 18px!important; opacity: 1!important; text-decoration: none!important; }
:where(.wc-block-cart,.wc-block-checkout) .wc-block-components-button :is(span,p,small),
.wc-block-components-notice-banner a.button :is(span,p,small) { color: var(--gbb-paper)!important; }
:where(.wc-block-cart,.wc-block-checkout) .wc-block-components-button:hover,
.wc-block-components-notice-banner a.button:hover { background: var(--gbb-hover)!important; border-color: var(--gbb-hover)!important; }
:where(.wc-block-cart,.wc-block-checkout) .wc-block-components-button:disabled { background: var(--gbb-panel)!important; color: var(--gbb-ink)!important; }
:where(.wc-block-cart,.wc-block-checkout) .wc-block-components-button:disabled span { color: var(--gbb-ink)!important; }
.wc-block-components-notice-banner { color: var(--gbb-ink)!important; background: var(--gbb-panel)!important; border: 1px solid var(--gbb-accent)!important; }
.wc-block-components-notice-banner :where(p,li,strong,span) { color: var(--gbb-ink)!important; }
.wc-block-components-notice-banner a:not(.button) { color: var(--gbb-accent)!important; }
.wc-block-components-notice-banner a:not(.button):hover { color: var(--gbb-hover)!important; }
:where(.wc-block-cart,.wc-block-checkout,.wc-block-components-notice-banner) :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible { outline: 3px solid var(--gbb-accent)!important; outline-offset: 3px!important; box-shadow: 0 0 0 2px var(--gbb-paper)!important; }
.wc-block-cart-item__remove-link { color: var(--gbb-accent)!important; background: transparent!important; min-height: 44px; }
.wc-block-components-quantity-selector button { background: var(--gbb-paper)!important; color: var(--gbb-ink)!important; opacity: 1!important; }
.wc-block-components-quantity-selector button:hover { background: var(--gbb-hover)!important; color: var(--gbb-paper)!important; }

/* Saved policy words are untouched; heading cleanup is output-only PHP. */
.gbb-policy-page .entry-content { max-width: 850px; margin: 48px auto; line-height: 1.75; }
.gbb-policy-page .entry-content h1 { font-size: clamp(36px,4.5vw,56px); margin-bottom: 28px; }
.gbb-policy-page .entry-content h2 { font-size: 27px; margin-top: 32px; }
.gbb-policy-page .entry-content :where(form,input,select,textarea,iframe) { max-width: 100%; }
.page-id-3740 .entry-content { width:100%; max-width:100%; }
.gbb-form-embed { display:block; width:100%; max-width:100%; min-width:0; box-sizing:border-box; overflow-wrap:anywhere; }
.gbb-form-embed iframe { display:block; width:100%; max-width:100%; border:0; }
.gbb-form-embed :where(div,form) { max-width:100%; min-width:0; }
.gbb-preview-form-placeholder { border:2px dashed var(--gbb-accent); background:var(--gbb-panel); padding:20px; text-align:center; font-weight:700; }
.site-footer { background: var(--gbb-ink); color: var(--gbb-paper); padding: 48px 0 24px; }
.gbb-footer { width: 100%; }
.gbb-footer-brand { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 32px; }
.gbb-footer .gbb-logo-link { padding: 8px; }
.gbb-affinity { width: var(--gbb-badge); height: auto; max-width: 72px; border-radius: 0; }
.gbb-footer-columns { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 32px; max-width: 760px; }
.site-footer :is(h1,h2,h3,h4,h5,h6) { color: var(--gbb-paper); }
.gbb-footer h2 { color: var(--gbb-logo-pink); font: 700 13px/1.5 var(--gbb-font-body); text-transform: uppercase; letter-spacing: .12em; margin-bottom: 12px; }
.site-footer .gbb-footer a:not(.button) { color: var(--gbb-paper); }
.site-footer .gbb-footer .gbb-menu a { color: var(--gbb-paper); font-weight: 400; font-size: 14px; min-height: var(--gbb-tap); }
.gbb-footer a:hover { text-decoration: underline; }
.site-footer .gbb-footer a:not(.button):hover { color: var(--gbb-logo-pink); }
.gbb-footer a:focus-visible { outline-color: var(--gbb-logo-pink); box-shadow: none; }
.gbb-legal { border-top: 1px solid var(--gbb-gold); padding-top: 16px; margin-top: 32px; }
.gbb-legal .gbb-menu { display: flex; flex-wrap: wrap; gap: 0 24px; }
.gbb-copyright { font-size: 12px; margin: 16px 0 0; }
.site-footer .site-info,.storefront-handheld-footer-bar { display: none; }
@media (max-width: 1100px) {
 .gbb-header { gap: 16px; }
 .gbb-nav > nav > .gbb-menu { gap: 0 10px; }
 .gbb-menu a,.gbb-submenu-toggle { font-size: 12px; }
}
@media (max-width: 1000px) {
 .col-full { padding-left: 24px; padding-right: 24px; }
 .gbb-header { flex-wrap: wrap; gap: 8px; }
 .gbb-js .gbb-menu-toggle { display: inline-flex; align-items: center; justify-content: center; order: 1; }
 .gbb-logo { height: var(--gbb-logo-mobile); }
 .gbb-nav { order: 5; flex: 1 1 100%; width: 100%; max-height: 70vh; overflow-y: auto; }
 .gbb-js .gbb-nav:not(.is-open) { display: none; }
 .gbb-nav > nav > .gbb-menu { display: block; border-top: 1px solid var(--gbb-border); padding-top: 12px; }
 .gbb-nav .gbb-menu > li > a,.gbb-nav .gbb-submenu-toggle { display: flex; width: 100%; padding: 10px 8px; font-size: 15px; justify-content: space-between; }
 .gbb-nav .gbb-submenu { position: static; width: 100%; max-width: 100%; grid-template-columns: minmax(0,1fr); box-shadow: none; border: 0; border-left: 2px solid var(--gbb-accent); padding: 0 8px; }
 .gbb-nav .gbb-submenu a { font-size: 14px; }
}
@media (max-width: 767px) {
 .col-full { margin-left: 0; margin-right: 0; padding-left: 16px; padding-right: 16px; }
 .site-header { padding: 10px 0; }
 .gbb-header { gap: 4px; }
 .gbb-tool,.gbb-search > summary { min-width: 44px; }
 .gbb-account { display: none; }
 .site-content { overflow-wrap: anywhere; }
 .site-main { margin-bottom: 40px; }
 .gbb-footer-columns { gap: 24px; }
 .gbb-footer-brand { align-items: center; }
 .gbb-legal .gbb-menu { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 16px; }
}
@media (prefers-reduced-motion: reduce) { *,*::before,*::after { scroll-behavior: auto!important; animation-duration: .01ms!important; transition-duration: .01ms!important; } }

/* Round 2 replacement for the existing archive/card block and its mobile overrides.
   Merge into style.css; do not enqueue this analysis fragment as a second stylesheet. */
.woocommerce-products-header.gbb-catalog-header { display: flex; flex-direction: column; align-items: center; justify-content: center; height: 160px; min-height: 160px; gap: 6px; margin: 0 0 24px; padding: 16px; background: var(--gbb-panel); color: var(--gbb-ink); text-align: center!important; }
.gbb-catalog-header .page-title { max-width: 100%; margin: 0; color: var(--gbb-ink); font-size: clamp(30px,3.2vw,44px); line-height: 1.1; letter-spacing: -.025em; }
.gbb-catalog-intro,.gbb-catalog-total { margin: 0; max-width: 100%; font: 400 13px/1.4 var(--gbb-font-body); }
.gbb-catalog-total { font-size: 12px; }
.gbb-catalog-filter { display: flex; align-items: center; gap: 12px; width: 100%; margin: 0 0 20px; }
.gbb-catalog-filter label { flex: 0 0 auto; margin: 0; font-size: 13px; font-weight: 700; }
.gbb-catalog-filter select { width: min(100%,360px); min-width: 0; min-height: var(--gbb-tap); font-size: 14px; }
.gbb-catalog-filter-submit { min-height: var(--gbb-tap); padding: 10px 16px; font-size: 12px; }
.gbb-catalog-filter.is-auto-submit .gbb-catalog-filter-submit { display: none; }
.gbb-catalog-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 0 0 16px; margin: 0 0 24px; border-bottom: 1px solid var(--gbb-border); }
.gbb-catalog-toolbar::before,.gbb-catalog-toolbar::after { content: none; }
.gbb-catalog-toolbar .woocommerce-result-count,.gbb-catalog-toolbar .woocommerce-ordering { float: none; width: auto; min-width: 0; margin: 0; font-size: 13px; }
.gbb-catalog-toolbar .woocommerce-result-count { flex: 1 1 auto; }
.gbb-catalog-toolbar .woocommerce-ordering { flex: 0 1 260px; }
.gbb-catalog-toolbar .woocommerce-ordering select { width: 100%; min-width: 0; min-height: var(--gbb-tap); }
ul.products { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 32px 20px; margin: 0; }
ul.products::before,ul.products::after { content: none; }
ul.products:where(:not(.gbb-catalog-header ~ ul.products)) li.product { position: relative; float: none!important; width: auto!important; min-width: 0; margin: 0!important; background: var(--gbb-paper); text-align: left; }
ul.products:where(:not(.gbb-catalog-header ~ ul.products)) li.product .woocommerce-LoopProduct-link { display: block; color: var(--gbb-ink); text-decoration: none; }
ul.products:where(:not(.gbb-catalog-header ~ ul.products)) li.product .gbb-catalog-card-image { display: flex; align-items: center; justify-content: center; width: 100%; aspect-ratio: 4 / 5; padding: 8px; margin-bottom: 16px; background: var(--gbb-paper); }
ul.products:where(:not(.gbb-catalog-header ~ ul.products)) li.product .gbb-catalog-card-image img { display: block; width: 100%; height: 100%; max-height: 100%; aspect-ratio: auto; object-fit: contain; object-position: center; padding: 0; margin: 0; border-radius: 0; background: var(--gbb-paper); }
ul.products:where(:not(.gbb-catalog-header ~ ul.products)) li.product .woocommerce-loop-product__title,ul.products:where(:not(.gbb-catalog-header ~ ul.products)) li.product h2,ul.products:where(:not(.gbb-catalog-header ~ ul.products)) li.product h3 { margin: 0 0 8px; color: var(--gbb-ink); font: 400 23px/1.2 var(--gbb-font-heading); overflow-wrap: anywhere; }
ul.products:where(:not(.gbb-catalog-header ~ ul.products)) li.product .price { display: block; margin: 0 0 6px; color: var(--gbb-ink); font: 700 16px/1.5 var(--gbb-font-body); }
ul.products:where(:not(.gbb-catalog-header ~ ul.products)) li.product .gbb-catalog-colors { display: block; margin: 0 0 10px; color: var(--gbb-ink); font: 400 13px/1.5 var(--gbb-font-body); }
ul.products:where(:not(.gbb-catalog-header ~ ul.products)) li.product .button { display: inline-flex; align-items: center; justify-content: center; min-height: var(--gbb-tap); padding: 10px 14px; margin-top: 6px; font-size: 12px; }
.woocommerce-pagination { clear: both; margin-top: 32px; }
.woocommerce-pagination ul.page-numbers li .page-numbers { background: var(--gbb-panel); color: var(--gbb-accent); border-color: var(--gbb-border); }
.woocommerce-pagination ul.page-numbers li .page-numbers.current { background: var(--gbb-accent); color: var(--gbb-paper); }
.woocommerce-pagination ul.page-numbers li a.page-numbers:hover,.woocommerce-pagination ul.page-numbers li a.page-numbers:focus { background: var(--gbb-hover); color: var(--gbb-paper); }
.onsale { background: var(--gbb-panel); color: var(--gbb-accent); border-color: var(--gbb-border); }
.star-rating::before,.star-rating span::before { color: var(--gbb-accent); }
.storefront-breadcrumb { padding: 20px 0; margin: 0; }
.woocommerce-breadcrumb { color: var(--gbb-ink); font-size: 12px; }
.woocommerce-breadcrumb a { color: var(--gbb-accent); }
.woocommerce-breadcrumb a:hover { color: var(--gbb-hover); }
@media (max-width: 767px) {
 .woocommerce-products-header.gbb-catalog-header { height: 120px; min-height: 120px; gap: 4px; margin-bottom: 20px; padding: 10px 12px; }
 .gbb-catalog-header .page-title { font-size: 27px; }
 .gbb-catalog-intro,.gbb-catalog-total { font-size: 12px; line-height: 1.3; }
 .gbb-catalog-filter { display: flex; flex-direction: column; align-items: stretch; gap: 6px; margin-bottom: 16px; }
 .gbb-catalog-filter select,.gbb-catalog-filter-submit { width: 100%; }
 .gbb-catalog-toolbar { gap: 8px; margin-bottom: 20px; padding-bottom: 12px; }
 .gbb-catalog-toolbar .woocommerce-result-count { flex: 1 1 45%; font-size: 11px; line-height: 1.4; }
 .gbb-catalog-toolbar .woocommerce-ordering { flex: 0 1 55%; }
 .gbb-catalog-toolbar .woocommerce-ordering select { padding: 8px 6px; font-size: 11px; }
 ul.products { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px 12px; }
 ul.products:where(:not(.gbb-catalog-header ~ ul.products)) li.product .gbb-catalog-card-image { padding: 4px; margin-bottom: 12px; }
 ul.products:where(:not(.gbb-catalog-header ~ ul.products)) li.product .woocommerce-loop-product__title,ul.products:where(:not(.gbb-catalog-header ~ ul.products)) li.product h2,ul.products:where(:not(.gbb-catalog-header ~ ul.products)) li.product h3 { font-size: 18px; line-height: 1.22; }
 ul.products:where(:not(.gbb-catalog-header ~ ul.products)) li.product .price { font-size: 15px; }
 ul.products:where(:not(.gbb-catalog-header ~ ul.products)) li.product .gbb-catalog-colors { font-size: 12px; }
 ul.products:where(:not(.gbb-catalog-header ~ ul.products)) li.product .button { width: 100%; padding: 10px 8px; }
 .woocommerce-pagination { margin-top: 28px; }
}

/*
 * Round 2 PRODUCT replacement fragment, not an additional stylesheet.
 * Parent: replace the entire product block beginning "Keep native gallery..."
 * and ending ".woocommerce-tabs .panel" in style.css with this fragment.
 * Remove the old product-only rules from the existing max-width:767px block
 * (gallery/summary widths, gallery max-height, product_title and summary price).
 * Keep archive/shared-card/footer rules and the category agent's replacements.
 * All product mobile rules live here; native Woo gallery/variation JS is retained.
 */
.single-product div.product .woocommerce-product-gallery,
.storefront-full-width-content.single-product.gbb-product-page div.product .woocommerce-product-gallery {
  width: 56%;
  float: left;
  margin: 0 4% 32px 0;
  min-width: 0;
}
.single-product div.product .summary,
.storefront-full-width-content.single-product.gbb-product-page div.product .summary {
  width: 40%;
  float: right;
  margin-bottom: 32px;
  min-width: 0;
}
/* Target the displayed photo, not native zoomImg's enlarged overlay. */
.single-product .woocommerce-product-gallery__image > a > img,
.single-product .woocommerce-product-gallery__image > img:not(.zoomImg),
.single-product .woocommerce-product-gallery__image--placeholder > img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 720px;
  object-fit: contain;
  object-position: left center;
  border-radius: 0;
}
.single-product div.product .woocommerce-product-gallery .flex-control-thumbs {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 12px;
  width: 100%;
  margin: 16px 0 0;
  padding: 0;
  list-style: none;
}
.single-product div.product .woocommerce-product-gallery .flex-control-thumbs::before,
.single-product div.product .woocommerce-product-gallery .flex-control-thumbs::after {
  content: none;
}
.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li {
  width: auto!important;
  float: none;
  clear: none;
  min-width: 0;
  margin: 0!important;
  padding: 0;
}
.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1;
  object-fit: cover;
  object-position: center;
  margin: 0;
  padding: 0;
  border-radius: 0;
  opacity: 1;
  outline: 2px solid transparent;
  outline-offset: -2px;
  cursor: pointer;
}
.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li img.flex-active {
  outline-color: var(--gbb-accent);
}
.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__trigger { background: var(--gbb-paper); color: var(--gbb-ink); }
.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__trigger::before { border-color: var(--gbb-ink); }
.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__trigger::after { background: var(--gbb-ink); }
.single-product .product_title {
  color: var(--gbb-ink);
  font-size: clamp(32px,3.4vw,48px);
  line-height: 1.08;
  letter-spacing: -.025em;
  margin: 0 0 20px;
}
.single-product div.product .summary > .price {
  font: 700 40px/1.2 var(--gbb-font-body);
  color: var(--gbb-ink);
  margin: 0 0 24px;
}
.single-product .price ins { font-weight: 700; color: var(--gbb-ink); }
.single-product .price del { font-size: .7em; opacity: 1; }
.single-product div.product .stock,.single-product div.product .product_meta { color: var(--gbb-ink); }
.single-product div.product .stock::before { color: var(--gbb-accent); }
.single-product div.product .product_meta a { color: var(--gbb-accent); }
.single-product div.product .product_meta a:hover { color: var(--gbb-hover); }

/* Native table/select markup: two compact columns only when they fit. */
.single-product div.product .summary form.cart table.variations {
  display: block;
  width: 100%;
  max-width: 576px;
  margin: 0 0 8px;
  padding: 0;
  border: 0;
}
.single-product div.product .summary form.cart table.variations tbody {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(min(100%,180px),1fr));
  gap: 8px 16px;
  width: 100%;
  align-items: start;
}
.single-product div.product .summary form.cart table.variations tr {
  display: block;
  width: 100%;
  max-width: 280px;
  min-width: 0;
  margin: 0;
}
.single-product div.product .summary form.cart table.variations th,
.single-product div.product .summary form.cart table.variations td {
  display: block;
  width: 100%;
  min-width: 0;
  background: transparent;
  text-align: left;
  padding: 0;
  border: 0;
}
.single-product div.product .summary form.cart table.variations th { margin-bottom: 6px; }
.single-product div.product .summary form.cart table.variations label {
  font: 700 13px/1.5 var(--gbb-font-body);
}
.single-product div.product .summary form.cart table.variations select,
.storefront-full-width-content.single-product.gbb-product-page div.product .summary form.cart table.variations select {
  display: block;
  width: 100%;
  max-width: 280px;
  min-width: 0;
  min-height: 48px;
  margin: 0;
}
.single-product div.product .summary form.cart .reset_variations {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  margin: 2px 0 0;
  padding: 0;
  font-size: 13px;
  color: var(--gbb-accent);
}
/* Woo owns visibility. Do not reserve an empty Clear-link row before selection. */
.single-product div.product .summary form.cart .reset_variations[style*="visibility: hidden"],
.single-product div.product .summary form.cart .reset_variations[style*="visibility:hidden"] {
  display: none;
}
.single-product div.product .summary form.cart { margin-top: 0; margin-bottom: 0; }
.single-product div.product .summary .single_variation_wrap,
.single-product div.product .summary .single_variation {
  min-height: 0;
  margin: 0;
  padding: 0;
}
/* Preserve genuine variation price, description and stock messages when shown. */
.single-product div.product .summary .woocommerce-variation-description p,
.single-product div.product .summary .woocommerce-variation-price,
.single-product div.product .summary .woocommerce-variation-availability .stock {
  margin: 0 0 12px;
}
.single-product div.product .summary form.cart:not(.variations_form):not(.grouped_form),
.single-product div.product .summary .woocommerce-variation-add-to-cart {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin-top: 0;
  padding-top: 0;
}
.single-product div.product .summary form.cart .quantity {
  flex: 0 0 76px;
  width: 76px;
  float: none;
  margin: 0;
}
.single-product div.product .summary form.cart .quantity input.qty {
  width: 76px;
  min-height: 48px;
  height: 48px;
  margin: 0;
  padding: 10px 8px;
}
.single-product div.product .summary form.cart .single_add_to_cart_button {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  flex: 1 1 0;
  width: auto;
  min-width: 0;
  min-height: 48px;
  height: 48px;
  float: none;
  margin: 0;
  padding: 0 16px;
  background: var(--gbb-accent);
  border-color: var(--gbb-accent);
  color: var(--gbb-paper);
  opacity: 1;
}
.single-product div.product .summary form.cart .single_add_to_cart_button:hover,
.single-product div.product .summary form.cart .single_add_to_cart_button:focus {
  background: var(--gbb-hover);
  border-color: var(--gbb-hover);
  color: var(--gbb-paper);
}
.single-product div.product .summary form.cart .added_to_cart {
  flex: 1 1 100%;
  min-height: var(--gbb-tap);
}
.single-product .gbb-product-order-note {
  margin: 12px 0 24px;
  font: 400 13px/1.5 var(--gbb-font-body);
  color: var(--gbb-ink);
}
/* Display-only SKU suppression; category links and native schema remain intact. */
.single-product div.product .summary .product_meta .sku_wrapper { display: none; }

/* Clear both full-height floats: description cannot sit under only the buy box. */
.single-product .gbb-product-description,
.single-product .gbb-product-more {
  clear: both;
  width: 100%;
  min-width: 0;
}
.single-product .gbb-product-description {
  margin: 0 0 40px;
  padding-top: 32px;
  border-top: 1px solid var(--gbb-border);
}
.single-product .gbb-product-description > h2,
.single-product .gbb-product-more > h2 {
  margin: 0 0 24px;
  font-size: clamp(28px,3vw,38px);
  letter-spacing: -.025em;
}
.single-product .gbb-product-description > :last-child { margin-bottom: 0; }
.single-product .gbb-product-more { margin: 0; padding-top: 8px; }
.single-product .gbb-product-more ul.products {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 32px 20px;
  margin: 0;
}
/* Shared native-card imagery/buttons/colors remain the category module's job. */

@media (max-width: 767px) {
  .single-product div.product .woocommerce-product-gallery,
  .storefront-full-width-content.single-product.gbb-product-page div.product .woocommerce-product-gallery,
  .single-product div.product .summary,
  .storefront-full-width-content.single-product.gbb-product-page div.product .summary {
    float: none;
    width: 100%;
    margin: 0 0 28px;
  }
  .single-product .woocommerce-product-gallery__image > a > img,
  .single-product .woocommerce-product-gallery__image > img:not(.zoomImg),
  .single-product .woocommerce-product-gallery__image--placeholder > img {
    max-height: 520px;
  }
  .single-product div.product .woocommerce-product-gallery .flex-control-thumbs {
    gap: 10px;
    margin-top: 12px;
  }
  .single-product .product_title { font-size: 34px; }
  .single-product div.product .summary > .price { font-size: 40px; }
  .single-product div.product .summary form.cart table.variations {
    max-width: none;
    margin-bottom: 12px;
  }
  .single-product div.product .summary form.cart table.variations tbody {
    grid-template-columns: minmax(0,1fr);
    gap: 12px;
  }
  .single-product div.product .summary form.cart table.variations tr,
  .single-product div.product .summary form.cart table.variations select,
  .storefront-full-width-content.single-product.gbb-product-page div.product .summary form.cart table.variations select {
    max-width: none;
    width: 100%;
  }
  .single-product div.product .summary form.cart .reset_variations { min-height: 44px; }
  .single-product div.product .summary form.cart .single_add_to_cart_button { padding: 0 12px; }
  .single-product .gbb-product-description { padding-top: 24px; margin-bottom: 32px; }
  .single-product .gbb-product-description > h2,
  .single-product .gbb-product-more > h2 { margin-bottom: 20px; }
  .single-product .gbb-product-more ul.products {
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 28px 12px;
  }
}

/* Premium product areas — merge into style.css; do not enqueue separately.
 * Existing content, native category loops and 4-desktop / 2-mobile grids remain.
 * Category scope uses the existing header sibling, not new PHP classes.
 * Main supplies --gbb-logo-pink and --gbb-hover; semantic tokens remain shared.
 * White is intentional for merchandise surfaces and CTA text, not a new palette.
 */

/* Preserve the original grid counts, gaps and breakpoint behavior. */
.gbb-type-grid,
.gbb-featured-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 32px 24px;
}
.gbb-sorority-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 20px;
}
.gbb-featured-grid { list-style: none; margin: 0; padding: 0; }

.gbb-featured-card,
.gbb-type-card,
.gbb-sorority-card,
.gbb-catalog-header ~ ul.products li.product {
  min-width: 0;
  background: var(--gbb-paper);
  color: var(--gbb-ink);
  border: 1px solid var(--gbb-border);
  border-radius: 14px;
  box-shadow: 0 3px 14px color-mix(in srgb,var(--gbb-ink) 4.5%,transparent);
}

/* Merchandise occupies a protected, contained image area, not a cropped frame. */
.gbb-featured-image,
.gbb-type-image,
.gbb-sorority-image,
.gbb-catalog-header ~ ul.products li.product .gbb-catalog-card-image {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-width: 0;
  aspect-ratio: 4 / 5;
  padding: 16px;
  margin: 0;
  overflow: hidden;
  border-radius: 13px 13px 0 0;
  background: var(--gbb-paper);
}
.gbb-featured-image img,
.gbb-type-image img,
.gbb-sorority-image img,
.gbb-catalog-header ~ ul.products li.product .gbb-catalog-card-image img {
  display: block;
  width: 100%;
  height: 100%;
  max-height: 100%;
  aspect-ratio: auto;
  object-fit: contain;
  object-position: center;
  margin: 0;
  padding: 0;
  border-radius: 0;
  background: var(--gbb-paper);
}

/* A gradient label band sits BELOW the garment: it cannot conceal a hem or logo. */
.gbb-type-main {
  display: block;
  min-width: 0;
  color: var(--gbb-ink);
  text-decoration: none;
  border-radius: 13px;
}
.gbb-sorority-card {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0;
  padding: 0;
  text-decoration: none;
}
.gbb-type-card h3,
.gbb-sorority-label {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  min-width: 0;
  min-height: 76px;
  margin: 0;
  padding: 16px;
  color: var(--gbb-ink);
  background: linear-gradient(180deg,var(--gbb-paper) 0%,var(--gbb-panel) 100%);
  border-top: 1px solid var(--gbb-border);
  border-radius: 0 0 13px 13px;
}
.gbb-type-card h3,
.gbb-sorority-card h3 {
  font: 600 20px/1.25 var(--gbb-font-heading);
  overflow-wrap: anywhere;
}
.gbb-sorority-card h3 { min-width: 0; margin: 0; color: inherit; }
.gbb-type-card h3 > span,
.gbb-sorority-label > span { flex: 0 0 auto; color: var(--gbb-accent); }
.gbb-type-card h3::after,
.gbb-sorority-label::after {
  content: "";
  position: absolute;
  left: 16px;
  right: 16px;
  bottom: 9px;
  height: 2px;
  background: var(--gbb-logo-pink);
  transform: scaleX(0);
  transform-origin: left;
}
.gbb-type-main:focus-visible h3::after,
.gbb-sorority-card:focus-visible .gbb-sorority-label::after { transform: scaleX(1); }
.gbb-type-extra {
  display: flex;
  flex-wrap: wrap;
  gap: 0 12px;
  padding: 0 16px 8px;
}
.gbb-type-extra a {
  display: inline-flex;
  align-items: center;
  min-height: var(--gbb-tap);
  min-width: 0;
  font-size: 13px;
  overflow-wrap: anywhere;
}

/* Full names and native price HTML remain visible, including sales and ranges. */
.gbb-featured-card > a {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-width: 0;
  padding-bottom: 16px;
  color: var(--gbb-ink);
  text-decoration: none;
  border-radius: 13px;
}
.gbb-catalog-header ~ ul.products li.product {
  position: relative;
  display: flex;
  flex-direction: column;
  float: none!important;
  width: auto!important;
  margin: 0!important;
  text-align: left;
}
.gbb-catalog-header ~ ul.products li.product .woocommerce-LoopProduct-link {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  min-width: 0;
  color: var(--gbb-ink);
  text-decoration: none;
  border-radius: 13px 13px 0 0;
}
.gbb-featured-card h3,
.gbb-catalog-header ~ ul.products li.product .woocommerce-loop-product__title,
.gbb-catalog-header ~ ul.products li.product h2,
.gbb-catalog-header ~ ul.products li.product h3 {
  margin: 16px 16px 8px;
  color: var(--gbb-ink);
  font: 600 20px/1.3 var(--gbb-font-heading);
  overflow-wrap: anywhere;
}
.gbb-home-price,
.gbb-catalog-header ~ ul.products li.product .price {
  display: block;
  margin: 0 16px 6px;
  color: var(--gbb-ink);
  font: 800 22px/1.4 var(--gbb-font-body);
  overflow-wrap: anywhere;
}
.gbb-home-price ins,
.gbb-catalog-header ~ ul.products li.product .price ins {
  color: inherit;
  font-weight: inherit;
  text-decoration: none;
}
.gbb-home-price del,
.gbb-catalog-header ~ ul.products li.product .price del {
  color: var(--gbb-ink);
  font-size: .78em;
  font-weight: 400;
  opacity: 1;
}
.gbb-home-colors,
.gbb-catalog-header ~ ul.products li.product .gbb-catalog-colors {
  display: block;
  margin: 0 16px 12px;
  color: var(--gbb-ink);
  font: 400 13px/1.5 var(--gbb-font-body);
}

/* The home CTA is still part of its existing single product link, not a new button.
 * The native category CTA remains its existing separate WooCommerce anchor. */
.gbb-home-view,
.gbb-catalog-header ~ ul.products li.product .button {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: calc(100% - 32px);
  min-height: var(--gbb-tap);
  margin: auto 16px 0;
  padding: 11px 12px;
  border: 1px solid var(--gbb-accent);
  border-radius: 8px;
  background: var(--gbb-accent);
  color: var(--gbb-paper);
  font: 700 14px/1.4 var(--gbb-font-body);
  text-decoration: none;
  text-align: center;
  text-shadow: none;
  box-shadow: none;
}
.gbb-catalog-header ~ ul.products li.product .button { margin: 12px 16px 16px; }
.gbb-featured-card > a:focus-visible .gbb-home-view,
.gbb-catalog-header ~ ul.products li.product .button:focus-visible {
  background: var(--gbb-hover);
  border-color: var(--gbb-hover);
  color: var(--gbb-paper);
}
.gbb-featured-card > a:focus-visible,
.gbb-type-main:focus-visible,
.gbb-sorority-card:focus-visible,
.gbb-catalog-header ~ ul.products li.product a:focus-visible {
  outline: 3px solid var(--gbb-accent);
  outline-offset: 3px;
  box-shadow: 0 0 0 2px var(--gbb-paper);
}

/* Hover is additive only on actual hover-capable pointers; touch stays stable. */
@media (hover: hover) and (pointer: fine) {
  .gbb-featured-card:hover,
  .gbb-type-card:hover,
  .gbb-sorority-card:hover,
  .gbb-catalog-header ~ ul.products li.product:hover {
    box-shadow: 0 7px 22px color-mix(in srgb,var(--gbb-ink) 7.5%,transparent);
  }
  .gbb-type-main:hover h3::after,
  .gbb-sorority-card:hover .gbb-sorority-label::after { transform: scaleX(1); }
  .gbb-featured-card > a:hover .gbb-home-view,
  .gbb-catalog-header ~ ul.products li.product .button:hover {
    background: var(--gbb-hover);
    border-color: var(--gbb-hover);
    color: var(--gbb-paper);
  }
}
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .gbb-featured-card,
  .gbb-type-card,
  .gbb-sorority-card,
  .gbb-catalog-header ~ ul.products li.product {
    transition: transform 180ms ease,box-shadow 180ms ease;
  }
  .gbb-featured-image img,
  .gbb-type-image img,
  .gbb-sorority-image img,
  .gbb-catalog-header ~ ul.products li.product .gbb-catalog-card-image img {
    transition: transform 220ms ease;
  }
  .gbb-type-card h3::after,
  .gbb-sorority-label::after { transition: transform 180ms ease; }
  .gbb-featured-card:hover,
  .gbb-type-card:hover,
  .gbb-sorority-card:hover,
  .gbb-catalog-header ~ ul.products li.product:hover { transform: translateY(-3px); }
  .gbb-featured-card:hover .gbb-featured-image img,
  .gbb-type-main:hover .gbb-type-image img,
  .gbb-sorority-card:hover .gbb-sorority-image img,
  .gbb-catalog-header ~ ul.products li.product:hover .gbb-catalog-card-image img {
    transform: scale(1.02);
  }
}
@media (prefers-reduced-motion: reduce) {
  .gbb-featured-card,
  .gbb-type-card,
  .gbb-sorority-card,
  .gbb-catalog-header ~ ul.products li.product,
  .gbb-featured-image img,
  .gbb-type-image img,
  .gbb-sorority-image img,
  .gbb-catalog-header ~ ul.products li.product .gbb-catalog-card-image img {
    transform: none;
    transition: none;
  }
  .gbb-type-card h3::after,
  .gbb-sorority-label::after { transition: none; }
}

@media (max-width: 1000px) {
  .gbb-type-grid,
  .gbb-featured-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 767px) {
  .gbb-type-grid,
  .gbb-featured-grid { gap: 28px 12px; }
  .gbb-sorority-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
  .gbb-featured-image,
  .gbb-type-image,
  .gbb-sorority-image,
  .gbb-catalog-header ~ ul.products li.product .gbb-catalog-card-image { padding: 10px; }
  .gbb-featured-card > a { padding-bottom: 12px; }
  .gbb-type-card h3,
  .gbb-sorority-label { min-height: 72px; padding: 12px; gap: 8px; }
  .gbb-type-card h3,
  .gbb-sorority-card h3 { font-size: 18px; line-height: 1.25; }
  .gbb-type-card h3::after,
  .gbb-sorority-label::after { left: 12px; right: 12px; bottom: 7px; }
  .gbb-type-extra { padding: 0 12px 6px; }
  .gbb-featured-card h3,
  .gbb-catalog-header ~ ul.products li.product .woocommerce-loop-product__title,
  .gbb-catalog-header ~ ul.products li.product h2,
  .gbb-catalog-header ~ ul.products li.product h3 {
    margin: 12px 12px 8px;
    font-size: 18px;
    line-height: 1.3;
  }
  .gbb-home-price,
  .gbb-catalog-header ~ ul.products li.product .price { margin-left: 12px; margin-right: 12px; font-size: 20px; }
  .gbb-home-colors,
  .gbb-catalog-header ~ ul.products li.product .gbb-catalog-colors { margin-left: 12px; margin-right: 12px; font-size: 12px; }
  .gbb-home-view,
  .gbb-catalog-header ~ ul.products li.product .button {
    width: calc(100% - 24px);
    margin-left: 12px;
    margin-right: 12px;
    padding: 11px 8px;
    font-size: 13px;
  }
  .gbb-catalog-header ~ ul.products li.product .button { margin-bottom: 12px; }
}


/* Hero-only full-width photo and normal-flow charcoal strip. */
.gbb-hero { width: 100%; max-width: none; margin: 0; padding: 0; border-radius: 0; background: var(--gbb-ink); }
.gbb-hero-media { width: 100%; max-width: none; height: 40vw; min-height: 420px; max-height: none; margin: 0; padding: 0; overflow: hidden; border-radius: 0; }
.gbb-hero-media .gbb-home-photo { display: block; width: 100%; max-width: none; height: 100%; max-height: none; margin: 0; border-radius: 0; object-fit: cover; object-position: 50% 10%; opacity: 1; }
.gbb-hero-copy { position: relative; width: 100%; max-width: none; margin: 0; padding: 32px calc((100% - min(100%,1440px))/2 + clamp(16px,3vw,48px)); background: var(--gbb-ink); color: var(--gbb-paper); display: grid; grid-template-columns: minmax(0,1.1fr) minmax(0,.9fr); gap: 0 48px; align-items: center; }
.gbb-hero-copy .gbb-eyebrow { grid-column: 1; margin: 0 0 8px; color: inherit; font-size: 11px; line-height: 1.5; }
.gbb-hero-copy h1 { grid-column: 1; grid-row: 2 / span 2; margin: 0; color: var(--gbb-logo-pink); font-size: clamp(40px,4.2vw,64px); line-height: 1.05; letter-spacing: -.045em; }
.gbb-hero-copy > p:not(.gbb-eyebrow) { grid-column: 2; grid-row: 2; margin: 0; color: inherit; font-size: 16px; line-height: 1.5; }
.gbb-hero-copy .gbb-hero-actions { grid-column: 2; grid-row: 3; margin-top: 16px; align-self: start; }
.gbb-hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; }
.gbb-hero-actions a.button { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 10px 18px; background: var(--gbb-accent); color: var(--gbb-paper); border-color: var(--gbb-logo-pink); text-decoration: none; text-align: center; font-size: 12px; }
.gbb-hero-actions a.gbb-button-outline { background: var(--gbb-ink); color: var(--gbb-paper); border-color: var(--gbb-logo-pink); }
.gbb-hero-actions a.button:hover { background: var(--gbb-hover); color: var(--gbb-paper); border-color: var(--gbb-logo-pink); }
.gbb-hero-actions a:focus-visible { outline-color: var(--gbb-logo-pink); outline-offset: 3px; box-shadow: none; }
@media (max-width: 1100px) and (min-width: 768px) {
 .gbb-hero-copy { gap: 0 24px; }
 .gbb-hero-actions { gap: 8px; }
 .gbb-hero-actions a.button { font-size: 11px; padding: 8px 10px; }
}
@media (max-width: 767px) {
 .gbb-hero-media { height: auto; min-height: 0; }
 .gbb-hero-media .gbb-home-photo { height: auto; object-fit: contain; object-position: center; }
 .gbb-hero-copy { padding: 28px 24px; display: block; text-align: center; }
 .gbb-hero-copy .gbb-eyebrow { margin: 0 0 8px; }
 .gbb-hero-copy h1 { font-size: clamp(36px,10.8vw,48px); }
 .gbb-hero-copy > p:not(.gbb-eyebrow) { font-size: 15px; margin-top: 12px; }
 .gbb-hero-copy .gbb-hero-actions { display: grid; grid-template-columns: minmax(0,1fr); gap: 10px; width: min(100%,320px); margin: 20px auto 0; }
 .gbb-hero-actions a.button { padding: 10px 12px; min-height: 56px; }
}
