/* Shared storefront, WooCommerce and inner-page design. */
html, body, button, input, textarea, select,
.elementor, .elementor-widget, .woocommerce, .woocommerce-page {
  font-family: var(--gh-font) !important;
}
body.gh-inner-body { background: #fffaf9; color: var(--gh-ink); }
.gh-shell { width: min(1240px, calc(100% - 40px)); margin-inline: auto; }
.gh-site-announcement { height: 38px; display: flex; align-items: center; color: #fff; background: var(--gh-berry-dark); font-size: 11px; }
.gh-site-announcement .gh-shell { display: flex; justify-content: space-between; align-items: center; gap: 20px; }
.gh-site-announcement b { color: #ffd6e3; }
.gh-site-header { position: relative; z-index: 50; background: rgba(255,255,255,.98); border-bottom: 1px solid var(--gh-border); }
.gh-site-header-row { min-height: 106px; display: grid; grid-template-columns: auto minmax(280px, 1fr) auto; gap: 30px; align-items: center; }
.gh-site-header .gh-brand { display: flex; align-items: center; gap: 11px; text-decoration: none; }
.gh-site-header .gh-brand strong { font-family: var(--gh-font) !important; }
.gh-site-header .gh-search input { box-sizing: border-box; }
.gh-cart-action { position: relative; }
.gh-cart-action b { min-width: 18px; height: 18px; display: grid; place-items: center; color: #fff; background: var(--gh-berry); border-radius: 50%; font-size: 9px; }
.gh-menu-toggle { display: none; width: 40px; height: 40px; border: 1px solid var(--gh-border); border-radius: 11px; color: var(--gh-berry); background: #fff; font-size: 18px; }
.gh-site-nav { border-top: 1px solid #f4ebee; background: #fff; }
.gh-site-nav .gh-shell { min-height: 76px; padding-block: 6px; display: grid; grid-template-columns: repeat(8,minmax(0,1fr)); align-items: center; gap: 4px; }
.gh-site-nav a { min-height: 32px; padding-inline: 5px; display: flex; align-items: center; justify-content: center; color: #4a3640; font-size: 10px; font-weight: 700; text-align: center; text-decoration: none; white-space: nowrap; }
.gh-site-nav a:hover { color: var(--gh-berry); }
.gh-site-nav .gh-nav-all { padding: 8px 14px; color: #fff; background: var(--gh-berry); border-radius: 9px; }
.gh-site-nav .gh-nav-sale { margin: 0; color: var(--gh-rose); }
.gh-site-spacer { height: 0; }

.gh-page { min-height: 55vh; padding-bottom: 75px; }
.gh-page-hero { padding: 58px 0 55px; text-align: center; background: radial-gradient(circle at 22% 10%, rgba(201,92,128,.14), transparent 26%), linear-gradient(135deg,#fff7f4,#f9e8ec); border-bottom: 1px solid var(--gh-border); }
.gh-page-hero-small { padding-block: 43px; }
.gh-page-kicker { color: var(--gh-rose); font-size: 11px; font-weight: 900; letter-spacing: 1.5px; }
.gh-page-hero h1 { margin: 8px 0 9px; color: var(--gh-berry-dark); font-size: clamp(30px,4vw,46px); font-weight: 900; }
.gh-page-hero p { max-width: 720px; margin: 0 auto; color: var(--gh-muted); font-size: 13px; line-height: 2; }
.gh-breadcrumb { margin: 20px 0 !important; color: #9a8b92 !important; font-size: 10px !important; }
.gh-breadcrumb a { color: #74616a !important; text-decoration: none; }
.gh-breadcrumb-sep { display: inline-block; margin: 0 9px; color: #ccb8c0; }

.gh-category-pills { display: grid; grid-template-columns: repeat(6,1fr); gap: 10px; margin: 5px 0 26px; }
.gh-category-pills a { min-width: 0; padding: 11px; display: flex; align-items: center; gap: 8px; border: 1px solid var(--gh-border); border-radius: 8px; color: var(--gh-ink); background: #fff; text-decoration: none; font-size: 11px; font-weight: 800; transition: .2s; }
.gh-category-pills a:hover { transform: translateY(-2px); border-color: #d698ad; box-shadow: 0 9px 25px rgba(83,25,48,.07); }
.gh-category-pills span { width: 50px; height: 50px; padding: 3px; box-sizing: border-box; flex: 0 0 50px; display: grid; place-items: center; border-radius: 8px; color: var(--gh-berry); background: var(--gh-blush); font-weight: 900; }
.gh-category-pills small { margin-right: auto; color: #ad9ba3; font-size: 9px; }
.gh-store-layout { display: grid; grid-template-columns: 235px minmax(0,1fr); gap: 22px; align-items: start; }
.gh-shop-sidebar { display: grid; gap: 14px; position: sticky; top: 15px; }
.gh-filter-card { padding: 20px; border: 1px solid var(--gh-border); border-radius: 17px; background: #fff; }
.gh-filter-card h3 { margin: 0 0 16px; padding-bottom: 12px; border-bottom: 1px solid #f2e8eb; font-size: 13px; }
.gh-filter-card ul { margin: 0; padding: 0; list-style: none; }
.gh-filter-card li { margin: 11px 0; }
.gh-filter-card a { display: block; margin: 11px 0; color: #65515b; text-decoration: none; font-size: 11px; }
.gh-filter-card a:hover { color: var(--gh-berry); }
.gh-filter-card .count { float: left; color: #ae9ba4; }
.gh-filter-help { padding: 20px; color: #fff; background: linear-gradient(145deg,var(--gh-berry-dark),var(--gh-berry)); border-radius: 17px; }
.gh-filter-help > span { font-size: 24px; }
.gh-filter-help b { display: block; margin: 8px 0; font-size: 13px; line-height: 1.7; }
.gh-filter-help p { margin: 0 0 14px; color: #ecced9; font-size: 10px; }
.gh-filter-help a { color: #fff; font-size: 10px; font-weight: 800; }
.gh-shop-results { min-width: 0; }
.gh-shop-toolbar { min-height: 53px; margin-bottom: 15px; padding: 10px 14px; border: 1px solid var(--gh-border); border-radius: 14px; background: #fff; }
.gh-shop-toolbar .woocommerce-result-count { margin: 9px 0 0 !important; color: var(--gh-muted); font-size: 10px; }
.gh-shop-toolbar .woocommerce-ordering { margin: 0 !important; }
.gh-shop-toolbar select { min-width: 190px; height: 34px; padding: 0 10px; border: 1px solid var(--gh-border); border-radius: 9px; color: #5e4a54; background: #fff; font-size: 10px; }
.gh-shop-results .woocommerce ul.products, .gh-shop-results ul.products { grid-template-columns: repeat(3,minmax(0,1fr)); }
.woocommerce nav.woocommerce-pagination { margin-top: 32px; }
.woocommerce nav.woocommerce-pagination ul { display: flex; justify-content: center; gap: 7px; border: 0 !important; }
.woocommerce nav.woocommerce-pagination ul li { border: 0 !important; }
.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span { min-width: 38px; height: 38px; padding: 0 !important; display: grid; place-items: center; border: 1px solid var(--gh-border); border-radius: 10px; color: var(--gh-berry); background: #fff; }
.woocommerce nav.woocommerce-pagination ul li span.current { color: #fff; border-color: var(--gh-berry); background: var(--gh-berry); }

/* Single product */
.gh-single-product-page { background: #fffaf9; }
.gh-single-product-page div.product { display: grid; grid-template-columns: minmax(0,1.02fr) minmax(360px,.98fr); gap: 45px; padding: 28px; border: 1px solid var(--gh-border); border-radius: 25px; background: #fff; box-shadow: 0 20px 55px rgba(83,25,48,.06); }
.gh-single-product-page div.product > .woocommerce-product-gallery { width: auto !important; float: none !important; margin: 0 !important; }
.gh-single-product-page div.product > .summary { width: auto !important; float: none !important; margin: 0 !important; }
.gh-single-product-page .woocommerce-product-gallery__wrapper { border: 1px solid #f0e4e7; border-radius: 20px; overflow: hidden; background: #fffaf8; }
.gh-single-product-page .woocommerce-product-gallery__image img { width: 100%; aspect-ratio: 1; object-fit: cover; }
.gh-single-product-page .flex-control-thumbs { display: grid; grid-template-columns: repeat(4,1fr); gap: 9px; margin-top: 10px !important; }
.gh-single-product-page .flex-control-thumbs li { width: auto !important; float: none !important; }
.gh-single-product-page .flex-control-thumbs img { border: 2px solid transparent; border-radius: 11px; }
.gh-single-product-page .flex-control-thumbs img.flex-active { border-color: var(--gh-rose); }
.gh-single-product-page .woocommerce-product-gallery__trigger { top: 15px !important; right: auto !important; left: 15px !important; }
.gh-single-product-page .summary .product_title { margin: 4px 0 14px; color: var(--gh-ink); font-size: clamp(24px,3vw,35px); line-height: 1.55; font-weight: 900; }
.gh-single-product-page .woocommerce-product-rating { display: flex; align-items: center; gap: 8px; margin: 0 0 18px !important; }
.gh-single-product-page .star-rating, .woocommerce .star-rating { color: #f5a623; }
.gh-single-product-page .woocommerce-review-link { color: var(--gh-muted); font-size: 10px; text-decoration: none; }
.gh-new-product { margin-right: 8px; color: var(--gh-muted); font-size: 10px; }
.gh-single-product-page .summary .price { margin: 18px 0 !important; padding: 15px 0; border-block: 1px solid #f2e7ea; color: var(--gh-berry) !important; font-size: 24px !important; font-weight: 900; }
.gh-single-product-page .summary .price del { color: #a99aa1; font-size: 14px; }
.gh-single-product-page .summary .price ins { text-decoration: none; }
.gh-single-product-page .woocommerce-product-details__short-description { color: #66525c; font-size: 12px; line-height: 2; }
.gh-single-product-page .woocommerce-product-details__short-description ul { padding-right: 20px; }
.gh-single-product-page form.cart { display: flex; flex-wrap: wrap; gap: 10px; margin: 23px 0 16px !important; padding: 16px; background: #fff6f7; border-radius: 15px; }
.gh-single-product-page form.cart .quantity .qty { width: 65px; height: 48px; border: 1px solid var(--gh-border); border-radius: 11px; }
.gh-single-product-page form.cart .single_add_to_cart_button { min-height: 48px; flex: 1; padding: 0 25px !important; border-radius: 11px !important; color: #fff !important; background: var(--gh-berry) !important; font-size: 12px !important; font-weight: 900 !important; box-shadow: 0 12px 22px rgba(123,24,63,.18); }
.gh-order-picker { width: 100%; display: grid; gap: 10px; }
.gh-order-picker-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.gh-order-picker-head strong { color: var(--gh-ink); font-size: 12px; }
.gh-order-picker-head span { color: var(--gh-muted); font-size: 9px; }
.gh-order-modes { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
.gh-order-modes label { min-width: 0; min-height: 58px; padding: 9px 10px; display: grid; grid-template-columns: 34px minmax(0,1fr); gap: 8px; align-items: center; border: 1px solid var(--gh-border); border-radius: 8px; color: var(--gh-ink); background: #fff; cursor: pointer; transition: border-color .18s ease, background-color .18s ease, box-shadow .18s ease; }
.gh-order-modes label.is-selected { border-color: var(--gh-yellow); background: #fffaf0; box-shadow: inset 0 0 0 1px var(--gh-yellow); }
.gh-order-modes label:has(input:focus-visible) { outline: 2px solid var(--gh-ink); outline-offset: 2px; }
.gh-order-modes input { width: 1px; height: 1px; position: absolute; overflow: hidden; opacity: 0; }
.gh-order-mode-icon { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 8px; color: var(--gh-yellow); background: var(--gh-ink); }
.gh-order-mode-icon .gh-icon { width: 17px; height: 17px; }
.gh-order-modes b, .gh-order-modes small { display: block; }
.gh-order-modes b { font-size: 10px; }
.gh-order-modes small { margin-top: 3px; overflow-wrap: anywhere; color: var(--gh-muted); font-size: 8px; }
.gh-order-modes small .woocommerce-Price-amount { color: inherit; }
.gh-order-total { min-height: 42px; padding: 0 12px; display: flex; align-items: center; justify-content: space-between; gap: 12px; border-top: 1px dashed var(--gh-border); }
.gh-order-total span { color: var(--gh-muted); font-size: 9px; }
.gh-order-total strong { color: var(--gh-ink); font-size: 14px; }
.gh-single-product-page .product_meta { padding: 14px; border: 1px solid var(--gh-border); border-radius: 13px; color: var(--gh-muted); background: #fff; font-size: 10px; line-height: 2; }
.gh-single-product-page .product_meta > span { display: block; }
.gh-single-product-page .product_meta a { color: var(--gh-berry); text-decoration: none; }
.gh-single-promises { display: grid; grid-template-columns: repeat(3,1fr); gap: 8px; margin-top: 17px; }
.gh-single-promises > div { padding: 12px 8px; display: grid; grid-template-columns: auto 1fr; gap: 1px 7px; align-items: center; border: 1px solid var(--gh-border); border-radius: 12px; }
.gh-single-promises span { grid-row: span 2; font-size: 19px; }
.gh-single-promises strong { font-size: 9px; }
.gh-single-promises small { color: var(--gh-muted); font-size: 8px; }
.gh-payment-note { margin-top: 10px; padding: 13px 15px; display: flex; flex-direction: column; gap: 3px; color: #5d4535; background: #fff8ec; border: 1px solid #f2dfbd; border-radius: 12px; }
.gh-payment-note b { font-size: 10px; }
.gh-payment-note span { font-size: 8px; }
.gh-single-product-page div.product > .woocommerce-tabs { grid-column: 1 / -1; width: 100%; margin-top: 25px; }
.gh-single-product-page .woocommerce-tabs ul.tabs { display: flex; gap: 8px; padding: 8px !important; border: 1px solid var(--gh-border); border-radius: 14px; background: #fff8f8; }
.gh-single-product-page .woocommerce-tabs ul.tabs::before { display: none !important; }
.gh-single-product-page .woocommerce-tabs ul.tabs li { margin: 0 !important; padding: 0 !important; border: 0 !important; background: transparent !important; }
.gh-single-product-page .woocommerce-tabs ul.tabs li::before, .gh-single-product-page .woocommerce-tabs ul.tabs li::after { display: none; }
.gh-single-product-page .woocommerce-tabs ul.tabs li a { padding: 10px 16px !important; border-radius: 9px; font-size: 11px; }
.gh-single-product-page .woocommerce-tabs ul.tabs li.active a { color: #fff !important; background: var(--gh-berry); }
.gh-single-product-page .woocommerce-Tabs-panel { padding: 25px; border: 1px solid var(--gh-border); border-radius: 16px; color: #66525c; background: #fff; font-size: 12px; line-height: 2.1; }
.gh-single-product-page .woocommerce-Tabs-panel h2 { color: var(--gh-ink); font-size: 20px; }
.gh-single-product-page div.product > .related, .gh-single-product-page div.product > .upsells { grid-column: 1 / -1; width: 100%; }
.gh-single-product-page .related > h2, .gh-single-product-page .upsells > h2 { margin: 20px 0; font-size: 24px; }
.gh-single-product-page .related ul.products, .gh-single-product-page .upsells ul.products { grid-template-columns: repeat(4,minmax(0,1fr)); }
.woocommerce table.shop_attributes { border: 0; }
.woocommerce table.shop_attributes th, .woocommerce table.shop_attributes td { padding: 12px 15px; border: 1px solid #f0e4e7; font-style: normal; }
.woocommerce table.shop_attributes th { width: 180px; background: #fff6f7; }

/* Cart, checkout and account */
.gh-page-card { margin: 0 0 20px; padding: 32px; border: 1px solid var(--gh-border); border-radius: 22px; background: #fff; box-shadow: 0 14px 42px rgba(83,25,48,.05); }
.gh-page-card > :first-child { margin-top: 0; }
.gh-page-card p, .gh-page-card li { color: #62505a; font-size: 12px; line-height: 2; }
.gh-page-card h2, .gh-page-card h3 { color: var(--gh-berry-dark); }
.gh-rich-page { max-width: 1050px; margin-inline: auto; }
.gh-rich-page h2 { margin-top: 30px; font-size: 24px; }
.gh-story-grid { display: grid; grid-template-columns: 1.4fr .6fr; gap: 35px; align-items: center; }
.gh-story-grid > div:first-child > span { color: var(--gh-rose); font-size: 10px; font-weight: 900; }
.gh-story-stat { padding: 25px; display: grid; grid-template-columns: auto 1fr; gap: 10px 15px; color: #fff; background: linear-gradient(145deg,var(--gh-berry-dark),var(--gh-berry)); border-radius: 20px; }
.gh-story-stat b { font-size: 25px; }
.gh-story-stat span { align-self: center; font-size: 10px; }
.gh-about-actions { margin-top: 22px; display: flex; flex-wrap: wrap; gap: 10px; }
.gh-about-band { margin-top: 30px; padding: 25px; display: grid; grid-template-columns: auto 1fr auto; gap: 18px; align-items: center; border: 1px solid rgba(201,92,128,.22); border-radius: 20px; background: linear-gradient(135deg,#fff5f7,#fff); }
.gh-about-band > span { width: 52px; height: 52px; display: grid; place-items: center; border-radius: 16px; color: #fff; background: var(--gh-berry); }
.gh-about-band > span .gh-icon { width: 26px; height: 26px; }
.gh-about-band h2 { margin: 0 0 4px; font-size: 20px; }
.gh-about-band p { margin: 0; }
.gh-value-grid, .gh-step-grid, .gh-contact-info { display: grid; grid-template-columns: repeat(3,1fr); gap: 14px; }
.gh-value-grid > div, .gh-step-grid > div, .gh-contact-info > div { padding: 22px; border: 1px solid var(--gh-border); border-radius: 16px; background: #fffaf9; }
.gh-value-grid span, .gh-contact-info span { font-size: 26px; }
.gh-value-grid h3, .gh-step-grid h3, .gh-contact-info h3 { margin: 9px 0 5px; font-size: 14px; }
.gh-step-grid { grid-template-columns: repeat(4,1fr); }
.gh-step-grid b { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 12px; color: #fff; background: var(--gh-berry); }
.gh-faq { display: grid; gap: 10px; }
.gh-faq details { padding: 0 18px; border: 1px solid var(--gh-border); border-radius: 13px; background: #fff; }
.gh-faq summary { padding: 17px 0; color: var(--gh-ink); cursor: pointer; font-size: 12px; font-weight: 800; }
.gh-faq details p { margin-top: 0; padding-bottom: 15px; }
.gh-contact-info { margin-bottom: 20px; }
.gh-contact-note { max-width: 850px; margin: 0 auto 20px; padding: 16px 18px; display: flex; gap: 12px; align-items: center; border: 1px solid #dcebdc; border-radius: 15px; background: #f6fcf6; }
.gh-contact-note > span { width: 42px; height: 42px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 12px; color: #297247; background: #e5f4e8; }
.gh-contact-note .gh-icon { width: 22px; height: 22px; }
.gh-contact-note strong { display: block; margin-bottom: 2px; font-size: 12px; }
.gh-contact-note p { margin: 0; }
.gh-contact-form-title { max-width: 850px; margin: 34px auto 0; text-align: center; }
.gh-contact-form-title > span { color: var(--gh-rose); font-size: 10px; font-weight: 900; }
.gh-contact-form-title h2 { margin: 8px 0 5px; }
.gh-contact-form-title p { margin: 0; }
.gh-contact-form { max-width: 850px; margin: 18px auto 0; padding: 28px; display: grid; grid-template-columns: repeat(2,1fr); gap: 16px; border: 1px solid var(--gh-border); border-radius: 19px; background: #fff; }
.gh-contact-form label { display: flex; flex-direction: column; gap: 6px; }
.gh-contact-form label span { color: #5d4752; font-size: 10px; font-weight: 700; }
.gh-contact-form input, .gh-contact-form select, .gh-contact-form textarea { width: 100%; box-sizing: border-box; padding: 10px 12px; border: 1px solid var(--gh-border); border-radius: 9px; outline: 0; background: #fffaf9; }
.gh-contact-form input, .gh-contact-form select { height: 44px; }
.gh-contact-form input:focus, .gh-contact-form textarea:focus { border-color: var(--gh-rose); box-shadow: 0 0 0 3px rgba(201,92,128,.1); }
.gh-contact-form .gh-form-wide { grid-column: 1 / -1; }
.gh-contact-form button { border: 0; cursor: pointer; }
.gh-contact-honeypot { display: none !important; }
.gh-commerce-card { padding: 28px; }
.woocommerce table.shop_table { border: 1px solid var(--gh-border) !important; border-radius: 16px !important; overflow: hidden; }
.woocommerce table.shop_table th { padding: 15px 12px !important; background: #fff6f7; font-size: 11px; }
.woocommerce table.shop_table td { padding: 15px 12px !important; border-color: #f0e5e8 !important; font-size: 11px; }
.woocommerce-cart-form img { width: 72px !important; border-radius: 10px; }
.woocommerce a.remove { color: var(--gh-berry) !important; }
.woocommerce a.remove:hover { color: #fff !important; background: var(--gh-berry) !important; }
.woocommerce .coupon { display: flex; gap: 7px; }
.woocommerce .coupon .input-text { width: 150px !important; min-height: 42px; padding: 0 11px !important; border: 1px solid var(--gh-border) !important; border-radius: 9px; }
.woocommerce button.button, .woocommerce a.button, .woocommerce input.button, .wc-block-components-button { min-height: 42px; padding: 0 18px !important; border-radius: 9px !important; color: #fff !important; background: var(--gh-berry) !important; font-size: 10px !important; font-weight: 800 !important; }
.woocommerce .cart-collaterals .cart_totals { padding: 22px; border: 1px solid var(--gh-border); border-radius: 17px; background: #fff9f8; }
.woocommerce .cart-collaterals .cart_totals h2 { font-size: 18px; }
.woocommerce-checkout .col2-set { width: 58% !important; float: right !important; }
.woocommerce-checkout #order_review_heading, .woocommerce-checkout #order_review { width: 39% !important; float: left !important; }
.woocommerce-checkout #order_review { padding: 20px; border: 1px solid var(--gh-border); border-radius: 17px; background: #fff9f8; }
.woocommerce form .form-row label { margin-bottom: 5px; color: #5c4852; font-size: 10px; }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select, .select2-container--default .select2-selection--single { min-height: 45px; padding: 9px 12px; border: 1px solid var(--gh-border); border-radius: 9px; background: #fff; }
.woocommerce form .form-row input.input-text:focus, .woocommerce form .form-row textarea:focus { border-color: var(--gh-rose); outline: 0; box-shadow: 0 0 0 3px rgba(201,92,128,.1); }
.woocommerce-account .woocommerce-MyAccount-navigation { width: 24%; }
.woocommerce-account .woocommerce-MyAccount-content { width: 72%; padding: 24px; border: 1px solid var(--gh-border); border-radius: 16px; background: #fff; }
.woocommerce-account .woocommerce-MyAccount-navigation ul { margin: 0; padding: 10px; list-style: none; border: 1px solid var(--gh-border); border-radius: 16px; background: #fff8f8; }
.woocommerce-account .woocommerce-MyAccount-navigation li a { display: block; padding: 12px; border-radius: 9px; color: #604a55; text-decoration: none; font-size: 11px; }
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a { color: #fff; background: var(--gh-berry); }
.woocommerce-info, .woocommerce-message, .woocommerce-error { border-top-color: var(--gh-berry) !important; border-radius: 10px; background: #fff8f8; font-size: 11px; }
.woocommerce-info::before, .woocommerce-message::before { color: var(--gh-berry) !important; }

/* Editorial, search and utility pages */
.gh-post-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; margin: 25px 0; }
.gh-post-card { overflow: hidden; border: 1px solid var(--gh-border); border-radius: 19px; background: #fff; }
.gh-post-card img, .gh-post-placeholder { width: 100%; height: 210px; object-fit: cover; }
.gh-post-placeholder { display: grid; place-items: center; color: var(--gh-berry); background: linear-gradient(145deg,#f8e4ea,#fff7f3); font-size: 54px; }
.gh-post-card > div:last-child { padding: 20px; }
.gh-post-card small { color: var(--gh-rose); font-size: 9px; }
.gh-post-card h2 { min-height: 52px; margin: 8px 0; font-size: 16px; line-height: 1.7; }
.gh-post-card h2 a { color: var(--gh-ink); text-decoration: none; }
.gh-post-card p { color: var(--gh-muted); font-size: 11px; line-height: 1.9; }
.gh-post-card > div > a { color: var(--gh-berry); font-size: 10px; font-weight: 800; }
.gh-empty-state, .gh-404 { max-width: 680px; margin: 60px auto 0; padding: 50px; border: 1px solid var(--gh-border); border-radius: 25px; text-align: center; background: #fff; }
.gh-empty-state > span { font-size: 45px; }
.gh-404-number { color: var(--gh-blush); font-size: clamp(90px,15vw,170px); line-height: 1; font-weight: 900; text-shadow: 0 2px 0 var(--gh-border); }
.gh-404 > span { color: var(--gh-rose); font-size: 11px; font-weight: 800; }
.gh-404 h1 { margin: 8px; color: var(--gh-berry-dark); font-size: 30px; }
.gh-404 p { color: var(--gh-muted); font-size: 12px; }
.gh-404 .gh-btns { justify-content: center; margin-top: 25px; }
.gh-article-shell { max-width: 890px; }
.gh-article-head { padding: 55px 0 30px; text-align: center; }
.gh-article-head small { color: var(--gh-rose); font-size: 10px; }
.gh-article-head h1 { margin: 12px 0; color: var(--gh-berry-dark); font-size: clamp(31px,5vw,48px); line-height: 1.55; }
.gh-article-head p { color: var(--gh-muted); font-size: 13px; line-height: 2; }
.gh-article-image img { width: 100%; max-height: 520px; object-fit: cover; border-radius: 24px; }
.gh-article-content { margin-top: 25px; padding: 35px; border: 1px solid var(--gh-border); border-radius: 22px; background: #fff; font-size: 13px; line-height: 2.2; }

/* Shared footer */
.gh-prefooter { padding: 24px 0; border-top: 1px solid var(--gh-border); background: #fff; }
.gh-prefooter-grid { display: grid; grid-template-columns: repeat(4,1fr); }
.gh-prefooter-grid > div { display: grid; grid-template-columns: auto 1fr; gap: 2px 10px; padding: 8px 22px; border-left: 1px solid var(--gh-border); }
.gh-prefooter-grid > div:last-child { border-left: 0; }
.gh-prefooter-grid span { grid-row: span 2; font-size: 25px; }
.gh-prefooter-grid strong { font-size: 11px; }
.gh-prefooter-grid small { color: var(--gh-muted); font-size: 9px; }
.gh-site-footer { padding: 55px 0 0; color: #d9bdc8; background: #2c101d; }
.gh-site-footer .gh-footer-grid { display: grid; grid-template-columns: 1.35fr .65fr .75fr 1fr; gap: 42px; }
.gh-site-footer .gh-brand { display: flex; align-items: center; gap: 10px; text-decoration: none; }
.gh-site-footer .gh-brand strong { color: #fff; }
.gh-site-footer p { color: #c8a7b4; font-size: 10px; line-height: 2; }
.gh-site-footer h3 { margin: 5px 0 17px; color: #fff; font-size: 13px; }
.gh-site-footer > .gh-footer-grid > div > a { display: block; margin: 11px 0; color: #d3b5c0; text-decoration: none; font-size: 10px; }
.gh-socials { display: flex; gap: 7px; }
.gh-socials a { padding: 7px 10px; border: 1px solid rgba(255,255,255,.13); border-radius: 8px; color: #fff; text-decoration: none; font-size: 8px; }
.gh-trust-badges { display: flex; gap: 7px; margin-top: 12px; }
.gh-trust-badges span { padding: 8px; color: #e8d3dc; border: 1px solid rgba(255,255,255,.14); border-radius: 8px; font-size: 8px; }
.gh-footer-copy { margin-top: 40px; padding: 20px 0; border-top: 1px solid rgba(255,255,255,.1); text-align: center; color: #9f7d8b; font-size: 9px; }
.gh-mobile-dock { display: none; }

/* Custom graphical icon system */
.gh-site-header .gh-menu-toggle { align-items: center; justify-content: center; }
.gh-site-header .gh-menu-toggle .gh-icon { width: 21px; height: 21px; }
.gh-site-header .gh-search button .gh-icon { width: 18px; height: 18px; }
.gh-site-header .gh-nav-all { display: inline-flex; align-items: center; gap: 7px; }
.gh-site-header .gh-nav-all .gh-icon { width: 15px; height: 15px; }
.gh-single-promises span .gh-icon { width: 20px; height: 20px; }
.gh-mobile-dock span .gh-icon { width: 18px; height: 18px; }
.gh-prefooter-grid span .gh-icon { width: 26px; height: 26px; color: var(--gh-berry); stroke-width: 1.65; }
.gh-shop-hero-trust span { display: inline-flex; align-items: center; gap: 6px; }
.gh-shop-hero-trust .gh-icon { width: 14px; height: 14px; }
.gh-filter-card h3 .gh-icon { width: 15px; height: 15px; }
.gh-filter-search button .gh-icon { width: 16px; height: 16px; }
.gh-filter-open > span .gh-icon { width: 18px; height: 18px; }
.gh-filter-close { display: grid; place-items: center; }
.gh-filter-close .gh-icon { width: 18px; height: 18px; }
.gh-filter-help > span .gh-icon { width: 27px; height: 27px; }
.gh-toolbar-title > span .gh-icon { width: 18px; height: 18px; }
.gh-check-row > b .gh-icon { width: 14px; height: 14px; }
.gh-reset-filters { display: flex; align-items: center; justify-content: center; gap: 5px; }
.gh-reset-filters .gh-icon { width: 12px; height: 12px; }
.gh-wishlist-button .gh-icon { width: 17px; height: 17px; }
.gh-cart-button-icon .gh-icon { width: 14px; height: 14px; }
.gh-secure-strip span, .gh-account-benefits span { display: inline-flex; align-items: center; justify-content: center; gap: 6px; }
.gh-secure-strip .gh-icon, .gh-account-benefits .gh-icon { width: 16px; height: 16px; color: var(--gh-berry); }
.gh-checkout-steps b .gh-icon { width: 16px; height: 16px; }
.gh-commerce-intro > div > span .gh-icon { width: 20px; height: 20px; color: var(--gh-berry); }
.gh-value-grid span .gh-icon, .gh-contact-info span .gh-icon { width: 28px; height: 28px; color: var(--gh-berry); }
.gh-post-placeholder .gh-icon, .gh-empty-state > span .gh-icon { width: 54px; height: 54px; color: var(--gh-berry); }

@media (max-width: 1100px) {
  .gh-site-header-row { grid-template-columns: auto 1fr auto; gap: 12px; }
  .gh-menu-toggle { display: grid; place-items: center; }
  .gh-site-header .gh-search { grid-column: 1 / -1; grid-row: 2; margin-bottom: 13px; }
  .gh-site-nav { display: none; }
  .gh-site-nav.is-open { display: block; }
  .gh-site-nav .gh-shell { min-height: 0; padding: 12px 0; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); }
  .gh-site-nav .gh-nav-sale { margin: 0; }
}

@media (max-width: 980px) {
  .gh-category-pills { grid-template-columns: repeat(3,1fr); }
  .gh-store-layout { grid-template-columns: 1fr; }
  .gh-shop-sidebar { display: none; }
  .gh-shop-results .woocommerce ul.products, .gh-shop-results ul.products { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .gh-single-product-page div.product { grid-template-columns: 1fr 1fr; gap: 25px; padding: 20px; }
  .gh-single-promises { grid-template-columns: 1fr; }
  .gh-site-footer .gh-footer-grid { grid-template-columns: repeat(2,1fr); }
}

@media (max-width: 650px) {
  body.gh-inner-body { padding-bottom: 65px; }
  .gh-shell { width: min(100% - 28px,1240px); }
  .gh-site-announcement { height: 34px; }
  .gh-site-announcement .gh-shell { justify-content: center; }
  .gh-site-announcement span:nth-child(n+2) { display: none; }
  .gh-site-header-row { min-height: 84px; }
  .gh-site-header .gh-brand strong { font-size: 15px; }
  .gh-site-header .gh-brand small { display: none; }
  .gh-site-header .gh-brand-mark { width: 36px; height: 36px; font-size: 22px; }
  .gh-site-header .gh-action { width: 37px; min-height: 38px; padding: 0; justify-content: center; font-size: 0; }
  .gh-site-header .gh-action span { font-size: 16px; }
  .gh-site-header .gh-action b { position: absolute; top: -5px; left: -5px; font-size: 8px; }
  .gh-site-header .gh-search { margin-top: -3px; }
  .gh-site-nav .gh-shell { grid-template-columns: repeat(2,1fr); gap: 8px; }
  .gh-site-nav a { padding: 9px; border: 1px solid var(--gh-border); border-radius: 8px; }
  .gh-page { padding-bottom: 48px; }
  .gh-page-hero { padding: 36px 0; text-align: right; }
  .gh-page-hero h1 { font-size: 29px; }
  .gh-page-hero p { font-size: 11px; }
  .gh-breadcrumb { white-space: nowrap; overflow-x: auto; }
  .gh-category-pills { grid-template-columns: repeat(2,1fr); gap: 7px; }
  .gh-category-pills a { font-size: 9px; }
  .gh-shop-toolbar { display: flex; flex-direction: column; gap: 8px; }
  .gh-shop-toolbar .woocommerce-ordering { width: 100%; }
  .gh-shop-toolbar select { width: 100%; }
  .gh-shop-results .woocommerce ul.products, .gh-shop-results ul.products { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .gh-single-product-page div.product { display: block; padding: 12px; border-radius: 18px; }
  .gh-single-product-page div.product > .summary { margin-top: 22px !important; }
  .gh-single-product-page .summary .product_title { font-size: 23px; }
  .gh-single-product-page form.cart { flex-wrap: wrap; }
  .gh-single-product-page form.cart .single_add_to_cart_button { min-width: calc(100% - 80px); }
  .gh-single-product-page .woocommerce-tabs ul.tabs { overflow-x: auto; white-space: nowrap; }
  .gh-single-product-page .woocommerce-Tabs-panel { padding: 17px; }
  .gh-single-product-page .related ul.products, .gh-single-product-page .upsells ul.products { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .woocommerce-checkout .col2-set, .woocommerce-checkout #order_review_heading, .woocommerce-checkout #order_review { width: 100% !important; float: none !important; }
  .woocommerce-account .woocommerce-MyAccount-navigation, .woocommerce-account .woocommerce-MyAccount-content { width: 100%; float: none; }
  .woocommerce-account .woocommerce-MyAccount-navigation { margin-bottom: 15px; }
  .gh-page-card, .gh-commerce-card { padding: 17px; }
  .gh-story-grid, .gh-value-grid, .gh-step-grid, .gh-contact-info, .gh-contact-form { grid-template-columns: 1fr; }
  .gh-about-actions .gh-btn { flex: 1 1 145px; }
  .gh-about-band { grid-template-columns: auto 1fr; padding: 18px; }
  .gh-about-band .gh-btn { grid-column: 1 / -1; width: 100%; box-sizing: border-box; }
  .gh-contact-form { padding: 17px; }
  .gh-contact-form .gh-form-wide { grid-column: auto; }
  .gh-post-grid { grid-template-columns: 1fr; }
  .gh-article-content { padding: 20px; }
  .gh-prefooter-grid { grid-template-columns: repeat(2,1fr); }
  .gh-prefooter-grid > div { padding: 10px; border-bottom: 1px solid var(--gh-border); }
  .gh-site-footer { padding-top: 40px; }
  .gh-site-footer .gh-footer-grid { grid-template-columns: 1fr; gap: 25px; }
  .gh-mobile-dock { position: fixed; right: 0; bottom: 0; left: 0; z-index: 100; height: 62px; display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid var(--gh-border); background: rgba(255,255,255,.97); box-shadow: 0 -8px 25px rgba(83,25,48,.08); }
  .gh-mobile-dock a { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; color: #604a55; text-decoration: none; font-size: 8px; }
  .gh-mobile-dock span { font-size: 17px; }
  .gh-mobile-dock b { position: absolute; top: 5px; left: calc(50% - 17px); min-width: 16px; height: 16px; display: grid; place-items: center; border-radius: 50%; color: #fff; background: var(--gh-berry); font-size: 7px; }
}

/* Brand-led product discovery. */
.gh-brand-directory-section {
  padding: 46px 0 52px;
  overflow: hidden;
  color: #fff;
  background: #111820;
}
.gh-brand-directory-section > .elementor-container {
  width: calc(100% - 44px);
  max-width: 1396px;
  margin-inline: auto;
}
.gh-brand-directory-head {
  margin-bottom: 22px;
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 28px;
}
.gh-brand-directory-head .gh-section-title {
  margin-bottom: 0;
  color: #fff;
}
.gh-brand-directory-head p {
  max-width: 520px;
  margin: 0;
  color: #c7cdd4;
  font-size: 12px;
  line-height: 1.9;
}
.gh-brand-directory {
  display: grid;
  grid-template-columns: repeat(8,minmax(0,1fr));
  gap: 10px;
}
.gh-brand-tile {
  min-width: 0;
  min-height: 126px;
  padding: 8px;
  box-sizing: border-box;
  display: grid;
  grid-template-rows: 70px auto auto;
  align-content: start;
  text-align: center;
  color: #111820;
  border: 1px solid rgba(242,170,0,.35);
  border-radius: 8px;
  background: #fff;
  text-decoration: none;
  transition: transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.gh-brand-tile:hover {
  color: #111820;
  transform: translateY(-3px);
  border-color: var(--gh-yellow);
  box-shadow: 0 12px 28px rgba(0,0,0,.22);
}
.gh-brand-tile > span {
  min-width: 0;
  height: 70px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border-radius: 6px;
  background: #fff2bf;
  box-shadow: inset 0 0 0 1px rgba(242,170,0,.24);
}
.gh-brand-tile img {
  width: 56px !important;
  height: 56px !important;
  max-width: 56px !important;
  padding: 5px;
  box-sizing: border-box;
  object-fit: contain;
  filter: drop-shadow(0 3px 5px rgba(17,24,32,.12));
}
.gh-brand-tile .gh-icon { width: 34px; height: 34px; }
.gh-brand-tile strong {
  margin-top: 7px;
  overflow: hidden;
  font-size: 10px;
  line-height: 1.55;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.gh-brand-tile small {
  color: #7b828b;
  font-size: 8px;
}

/* Final cascade locks for brand cards and brand archives. */
@media (min-width: 981px) {
  .gh-shop-hero-art.is-vehicle {
    width: 100%;
    max-width: 330px;
    min-height: 210px;
    padding: 12px;
    justify-self: start;
    background: var(--gh-yellow);
  }
  .gh-shop-hero-art.is-vehicle img {
    width: 100%;
    height: 186px;
    padding: 26px;
    background: transparent;
  }
  .gh-shop-hero-art.is-vehicle b { display: none; }
}

@media (max-width: 980px) and (min-width: 721px) {
  .gh-brand-directory { grid-template-columns: repeat(5,minmax(0,1fr)); }
}

@media (max-width: 720px) {
  .gh-shop-hero-art.is-vehicle {
    width: 72px;
    height: 72px;
    min-height: 72px;
    padding: 5px;
    box-sizing: border-box;
    background: var(--gh-yellow);
  }
  .gh-shop-hero-art.is-vehicle img {
    width: 62px;
    height: 62px;
    padding: 10px;
    background: transparent;
  }
  .gh-shop-hero-art.is-vehicle i,
  .gh-shop-hero-art.is-vehicle b { display: none; }
  .gh-brand-directory-section { padding: 34px 0 38px; }
  .gh-brand-directory-head {
    margin-bottom: 16px;
    display: block;
  }
  .gh-brand-directory-head p {
    max-width: 100%;
    margin-top: 8px;
    font-size: 10px;
    white-space: normal;
    overflow-wrap: anywhere;
  }
  .gh-brand-directory {
    width: 100%;
    padding: 0 1px 10px;
    display: flex;
    gap: 8px;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-snap-type: inline mandatory;
    scrollbar-width: none;
  }
  .gh-brand-directory::-webkit-scrollbar { display: none; }
  .gh-brand-tile {
    flex: 0 0 112px;
    min-height: 116px;
    grid-template-rows: 62px auto auto;
    scroll-snap-align: start;
  }
  .gh-brand-tile > span { height: 62px; }
  .gh-brand-tile img {
    width: 50px !important;
    height: 50px !important;
    max-width: 50px !important;
    padding: 4px;
  }
  .gh-brand-directory-section > .elementor-container {
    width: calc(100% - 28px);
    max-width: calc(100% - 28px);
  }
}

@media (max-width: 620px) {
  .gh-vehicle-grid .gh-vehicle-card:only-child {
    min-height: 112px;
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: 128px minmax(0,1fr);
  }
  .gh-vehicle-grid .gh-vehicle-card:only-child .gh-vehicle-photo {
    width: 128px;
    height: 112px;
    min-height: 112px;
  }
  .gh-vehicle-grid .gh-vehicle-card:only-child .gh-vehicle-card-copy {
    padding: 10px 10px 10px 30px;
  }
}

/* Card-to-card checkout gateway. */
.woocommerce-checkout .payment_method_custom_bacs .payment_box {
  padding: 18px !important;
  border: 1px solid #dfe2ec !important;
  border-radius: 12px !important;
  color: #111820 !important;
  background: linear-gradient(180deg,#fff,#fbfcfe) !important;
  box-shadow: 0 14px 34px rgba(17,24,32,.07);
}
.woocommerce-checkout .payment_method_custom_bacs .payment_box > p {
  margin: 0 0 16px !important;
  padding: 11px 12px;
  border: 1px solid #edf0f3;
  border-radius: 10px;
  color: #58616b;
  background: #fff;
  font-size: 12px;
  line-height: 2;
}
.woocommerce-checkout .payment_method_custom_bacs .gh-bacs-account-card {
  margin: 0 0 16px !important;
  padding: 13px !important;
  display: grid !important;
  gap: 9px !important;
  border: 1px solid #dfe2ec !important;
  border-radius: 12px !important;
  background: #fff !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.75);
}
.woocommerce-checkout .gh-bacs-amount-card {
  margin: 0 0 16px;
  padding: 16px;
  display: grid;
  gap: 8px;
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(242,170,0,.35);
  border-radius: 12px;
  color: #111820;
  background:
    linear-gradient(135deg, rgba(242,170,0,.16), rgba(255,255,255,0) 44%),
    #fffaf0;
  box-shadow: 0 16px 30px rgba(242,170,0,.12);
}
.woocommerce-checkout .gh-bacs-amount-card::before {
  content: "";
  width: 56px;
  height: 56px;
  position: absolute;
  left: -18px;
  top: -18px;
  border-radius: 50%;
  background: rgba(17,24,32,.08);
}
.woocommerce-checkout .gh-bacs-amount-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.woocommerce-checkout .gh-bacs-amount-card span {
  color: #111820;
  font-size: 10px;
  font-weight: 950;
}
.woocommerce-checkout .gh-bacs-amount-card em {
  padding: 4px 8px;
  border: 1px solid rgba(17,24,32,.09);
  border-radius: 999px;
  color: #596472;
  background: #fff;
  font-size: 9px;
  font-style: normal;
  font-weight: 900;
}
.woocommerce-checkout .gh-bacs-amount-card strong {
  width: 100%;
  display: block;
  color: #111820;
  font-size: clamp(20px, 3.2vw, 28px);
  font-weight: 950;
  line-height: 1.65;
  direction: ltr;
  text-align: right;
  letter-spacing: 0;
  overflow-wrap: anywhere;
}
.woocommerce-checkout .gh-bacs-amount-card small {
  padding: 10px 12px;
  display: block;
  border: 1px solid rgba(17,24,32,.08);
  border-radius: 10px;
  color: #3e4854;
  background: rgba(255,255,255,.72);
  font-size: 11px;
  font-weight: 800;
  line-height: 2;
  overflow-wrap: anywhere;
}
.woocommerce-checkout .gh-bacs-amount-card p {
  margin: 0 !important;
  color: #6b7280;
  font-size: 10px !important;
  font-weight: 800;
  line-height: 2;
}
.woocommerce-checkout .payment_method_custom_bacs .gh-bacs-account-row {
  min-height: 48px;
  padding: 10px 12px;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: wrap;
  gap: 10px !important;
  border: 1px solid #edf0f3;
  border-radius: 10px;
  background: #fbfcfe;
}
.woocommerce-checkout .payment_method_custom_bacs .gh-bacs-account-row span {
  min-width: 0;
  overflow-wrap: anywhere;
  color: #111820;
  font-size: 11px;
  line-height: 1.8;
  flex: 1 1 180px;
}
.woocommerce-checkout .payment_method_custom_bacs .gh-bacs-account-row strong {
  max-width: 100%;
  display: inline-block;
  color: #111820;
  direction: ltr;
  unicode-bidi: plaintext;
  font-weight: 900;
  overflow-wrap: anywhere;
  word-break: break-all;
  white-space: normal;
}
.woocommerce-checkout .payment_method_custom_bacs .gh-bacs-account-row button.button {
  min-height: 34px;
  padding: 0 12px !important;
  flex: 0 0 auto;
  border: 0 !important;
  border-radius: 8px !important;
  color: var(--gh-yellow) !important;
  background: #111820 !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  box-shadow: none !important;
}
.woocommerce-checkout #wc-custom_bacs-form.gh-bacs-form {
  padding: 16px !important;
  border: 1px solid #dfe2ec !important;
  border-radius: 12px !important;
  background: #f7f8fa !important;
}
.woocommerce-checkout #wc-custom_bacs-form.gh-bacs-form > p {
  color: #111820 !important;
  font-size: 12px;
  font-weight: 850;
}
.woocommerce-checkout #wc-custom_bacs-form.gh-bacs-form label {
  color: #111820;
  font-size: 11px;
  font-weight: 900;
}
.woocommerce-checkout #wc-custom_bacs-form.gh-bacs-form input.input-text,
.woocommerce-checkout #wc-custom_bacs-form.gh-bacs-form select,
.woocommerce-checkout #wc-custom_bacs-form.gh-bacs-form input[type="file"] {
  width: 100%;
  min-height: 44px;
  border: 1px solid #dfe2ec !important;
  border-radius: 10px !important;
  background: #fff !important;
  font-size: 12px !important;
  box-sizing: border-box;
}
.woocommerce-checkout #bacs_upload_status {
  min-height: 22px;
  font-size: 11px !important;
  line-height: 1.8;
}

@media (max-width: 640px) {
  .woocommerce-checkout .payment_method_custom_bacs .payment_box {
    padding: 12px !important;
  }
  .woocommerce-checkout .gh-bacs-amount-card {
    padding: 13px;
  }
  .woocommerce-checkout .payment_method_custom_bacs .gh-bacs-account-row {
    align-items: flex-start !important;
    flex-direction: column;
  }
  .woocommerce-checkout .payment_method_custom_bacs .gh-bacs-account-row button.button {
    width: 100%;
  }
  .woocommerce-checkout .gh-bacs-amount-card strong {
    font-size: 20px;
  }
  .woocommerce-checkout .gh-bacs-amount-card small {
    font-size: 10px;
  }
}

/* Storefront v2: premium filters, cards and stable WooCommerce controls. */
.gh-shop-hero { position: relative; overflow: hidden; padding: 58px 0; color: #fff; background: radial-gradient(circle at 14% 20%, rgba(255,255,255,.16), transparent 25%), linear-gradient(120deg,#451025 0%,#791b42 56%,#b64f74 100%); }
.gh-shop-hero::before, .gh-shop-hero::after { content: ''; position: absolute; border: 1px solid rgba(255,255,255,.14); border-radius: 50%; }
.gh-shop-hero::before { width: 380px; height: 380px; left: -100px; top: -190px; }
.gh-shop-hero::after { width: 250px; height: 250px; right: 42%; bottom: -210px; }
.gh-shop-hero-inner { min-height: 210px; display: grid; grid-template-columns: 1fr 330px; gap: 55px; align-items: center; }
.gh-shop-hero .gh-page-kicker { color: #ffd2e0; }
.gh-shop-hero h1 { margin: 8px 0 10px; color: #fff; font-size: clamp(36px,5vw,58px); line-height: 1.35; }
.gh-shop-hero p { max-width: 680px; margin: 0; color: #f5dce5; font-size: 13px; line-height: 2; }
.gh-shop-hero-trust { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 22px; }
.gh-shop-hero-trust span { padding: 7px 12px; border: 1px solid rgba(255,255,255,.17); border-radius: 99px; color: #fff; background: rgba(255,255,255,.08); font-size: 9px; }
.gh-shop-hero-art { position: relative; height: 190px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.18); border-radius: 80px 20px 80px 20px; background: linear-gradient(145deg,rgba(255,255,255,.18),rgba(255,255,255,.04)); box-shadow: inset 0 1px 0 rgba(255,255,255,.2); }
.gh-shop-hero-art > span { color: rgba(255,255,255,.92); font: 900 116px/1 var(--gh-font); text-shadow: 0 15px 35px rgba(44,8,25,.25); }
.gh-shop-hero-art > img { width: 176px; height: 176px; display: block; object-fit: contain; filter: drop-shadow(0 16px 20px rgba(0,0,0,.3)); }
.gh-shop-hero-art i { position: absolute; width: 74px; height: 74px; right: 42px; bottom: 20px; border: 12px solid rgba(255,215,227,.22); border-radius: 50%; }
.gh-shop-hero-art b { position: absolute; left: 22px; bottom: 20px; color: #f8dbe4; font: 700 11px/1.45 var(--gh-font); letter-spacing: 1px; text-transform: uppercase; }

.gh-category-pills { margin-top: 8px; }
.gh-category-pills a { min-height: 76px; padding: 10px 11px; }
.gh-category-pills a strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 10px; }
.gh-category-pills a.is-active { color: #fff; border-color: var(--gh-berry); background: var(--gh-berry); box-shadow: 0 10px 25px rgba(123,24,63,.16); }
.gh-category-pills a.is-active span { color: var(--gh-berry); background: #fff; }
.gh-category-pills a.is-active small { color: #f2cdd9; }
.gh-store-layout { grid-template-columns: 270px minmax(0,1fr); gap: 24px; }
.gh-shop-sidebar { top: 18px; }
.gh-filter-drawer-head { display: none; }
.gh-filter-form { display: grid; gap: 13px; }
.gh-filter-card { padding: 18px; border-radius: 18px; box-shadow: 0 8px 25px rgba(83,25,48,.035); }
.gh-filter-card h3 { display: flex; align-items: center; gap: 8px; }
.gh-filter-card h3 > span { width: 29px; height: 29px; display: grid; place-items: center; border-radius: 9px; color: var(--gh-berry); background: var(--gh-blush); }
.gh-filter-search { position: relative; display: block; }
.gh-filter-search input { width: 100%; height: 43px; padding: 0 39px 0 10px; border: 1px solid var(--gh-border); border-radius: 11px; outline: 0; background: #fffaf9; font-size: 10px; }
.gh-filter-search input:focus { border-color: var(--gh-rose); box-shadow: 0 0 0 3px rgba(201,92,128,.1); }
.gh-filter-search button { position: absolute; top: 4px; right: 4px; width: 34px; height: 34px; border: 0; border-radius: 9px; color: #fff; background: var(--gh-berry); cursor: pointer; }
.gh-filter-category-list { display: grid; gap: 4px; }
.gh-filter-category-list a { margin: 0; padding: 8px 10px; display: flex; align-items: center; justify-content: space-between; border-radius: 9px; }
.gh-filter-category-list a:hover, .gh-filter-category-list a.is-active { color: var(--gh-berry); background: #fff2f5; }
.gh-filter-category-list b { min-width: 23px; height: 23px; display: grid; place-items: center; border-radius: 7px; color: #9b7e89; background: #f7edef; font-size: 8px; }
.gh-price-inputs { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; }
.gh-price-inputs label { min-width: 0; }
.gh-price-inputs label span, .gh-rating-filter > span { display: block; margin-bottom: 5px; color: #8b747e; font-size: 8px; }
.gh-price-inputs input, .gh-rating-filter select { width: 100%; height: 40px; box-sizing: border-box; padding: 0 8px; border: 1px solid var(--gh-border); border-radius: 9px; outline: 0; background: #fffaf9; font-size: 9px; }
.gh-price-hint { display: block; margin-top: 8px; color: #aa949d; font-size: 8px; }
.gh-check-row { display: flex; align-items: center; justify-content: space-between; padding: 10px 0; border-bottom: 1px solid #f3e9ec; color: #5e4a54; cursor: pointer; font-size: 10px; }
.gh-check-row > span { display: flex; align-items: center; gap: 7px; }
.gh-check-row input { position: absolute; opacity: 0; pointer-events: none; }
.gh-check-row i { width: 29px; height: 17px; position: relative; border-radius: 99px; background: #e9dfe2; transition: .2s; }
.gh-check-row i::after { content: ''; width: 13px; height: 13px; position: absolute; top: 2px; right: 2px; border-radius: 50%; background: #fff; box-shadow: 0 1px 4px rgba(0,0,0,.18); transition: .2s; }
.gh-check-row input:checked + i { background: var(--gh-berry); }
.gh-check-row input:checked + i::after { transform: translateX(-12px); }
.gh-check-row > b { color: var(--gh-rose); font-size: 11px; }
.gh-rating-filter { display: block; margin-top: 12px; }
.gh-apply-filters { height: 48px; padding: 0 17px; display: flex; align-items: center; justify-content: space-between; border: 0; border-radius: 13px; color: #fff; background: linear-gradient(135deg,var(--gh-berry),#a63861); box-shadow: 0 12px 25px rgba(123,24,63,.18); cursor: pointer; font-size: 11px; font-weight: 900; }
.gh-apply-filters b { font-size: 18px; }
.gh-reset-filters { text-align: center; color: #9a6679; font-size: 9px; text-decoration: none; }
.gh-mobile-filter-bar, .gh-filter-backdrop { display: none; }

.gh-active-filters { margin-bottom: 12px; padding: 10px 12px; display: flex; flex-wrap: wrap; align-items: center; gap: 7px; border: 1px dashed #dcb6c4; border-radius: 12px; background: #fff8f9; }
.gh-active-filters strong { font-size: 9px; }
.gh-active-filters span { padding: 6px 9px; border-radius: 99px; color: var(--gh-berry); background: var(--gh-blush); font-size: 8px; }
.gh-active-filters a { margin-right: auto; color: var(--gh-berry); font-size: 8px; }
.gh-shop-toolbar { min-height: 70px; display: flex; align-items: center; gap: 15px; }
.gh-toolbar-title { display: flex; align-items: center; gap: 9px; margin-left: auto; }
.gh-toolbar-title > span { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 12px; color: #fff; background: var(--gh-berry); }
.gh-toolbar-title strong, .gh-toolbar-title small { display: block; }
.gh-toolbar-title strong { font-size: 11px; }
.gh-toolbar-title small { margin-top: 2px; color: var(--gh-muted); font-size: 8px; }
.gh-shop-toolbar .woocommerce-result-count { display: none; }
.gh-shop-toolbar .woocommerce-ordering { float: none !important; }
.gh-shop-toolbar select { min-width: 205px; height: 42px; }

/* Product card and fixed add-to-cart presentation. */
.woocommerce ul.products li.product.gh-product-card { padding: 9px; display: flex; flex-direction: column; border-radius: 19px; }
.woocommerce ul.products li.product.gh-product-card:hover { transform: translateY(-4px); border-color: #dcb5c4; box-shadow: 0 18px 40px rgba(83,25,48,.09); }
.gh-product-media { position: relative; overflow: hidden; border-radius: 14px; background: #fff7f3; }
.woocommerce ul.products li.product.gh-product-card .gh-product-media img { width: 100%; margin: 0; border-radius: 14px; transition: transform .35s ease; }
.woocommerce ul.products li.product.gh-product-card:hover .gh-product-media img { transform: scale(1.025); }
.gh-wishlist-button { width: 34px; height: 34px; position: absolute; top: 9px; left: 9px; z-index: 3; display: grid; place-items: center; border: 1px solid rgba(123,24,63,.09); border-radius: 50%; color: var(--gh-berry); background: rgba(255,255,255,.9); box-shadow: 0 5px 15px rgba(83,25,48,.08); cursor: pointer; font-size: 18px; }
.gh-stock-badge { position: absolute; right: 9px; bottom: 9px; z-index: 2; padding: 5px 8px; display: flex; align-items: center; gap: 4px; border-radius: 99px; color: #315f44; background: rgba(245,255,248,.92); backdrop-filter: blur(5px); font-size: 7px; font-weight: 800; }
.gh-stock-badge i { width: 5px; height: 5px; border-radius: 50%; background: #4ba06d; }
.gh-product-unavailable-cover {
  position: absolute;
  inset: 0;
  z-index: 4;
  display: grid;
  place-items: center;
  border-radius: 14px;
  color: #fff;
  background: rgba(17,24,32,.58);
  backdrop-filter: blur(1.5px);
  font-size: 18px;
  font-weight: 950;
}
.woocommerce ul.products li.product.gh-product-card.outofstock .gh-product-media img,
.woocommerce ul.products li.product.gh-product-card.outofstock .gh-product-image-missing {
  filter: grayscale(.35) brightness(.72);
}
.woocommerce ul.products li.product.gh-product-card.outofstock:hover .gh-product-media img {
  transform: none;
}
.gh-product-card-body { padding: 12px 5px 4px; display: flex; flex: 1; flex-direction: column; }
.gh-product-category { min-height: 17px; margin-bottom: 3px; color: #a15c76; font-size: 8px; }
.gh-product-category a { color: inherit; text-decoration: none; }
.gh-product-title-link { text-decoration: none; }
.woocommerce ul.products li.product.gh-product-card .woocommerce-loop-product__title { min-height: 47px; margin: 0; font-size: 11px !important; line-height: 1.9; }
.gh-product-rating-row { min-height: 23px; display: flex; align-items: center; gap: 7px; }
.gh-product-rating-row .star-rating { margin: 0 !important; font-size: 10px; }
.gh-product-rating-row > span { color: #a38f97; font-size: 7px; }
.gh-product-price-row { min-height: 46px; display: flex; align-items: center; }
.gh-card-carton { min-height: 31px; margin: -3px 0 9px; padding: 0 8px; display: flex; align-items: center; justify-content: space-between; gap: 7px; border-right: 3px solid var(--gh-yellow); color: var(--gh-muted); background: #fffaf0; text-decoration: none; font-size: 7px; }
.gh-card-carton strong { color: var(--gh-ink); font-size: 8px; white-space: nowrap; }
.gh-card-carton .woocommerce-Price-currencySymbol { font-size: .82em; }
.gh-quote-price { color: var(--gh-berry); font-size: 12px; font-weight: 900; }
.woocommerce ul.products li.product.gh-product-card .price { width: 100%; margin: 0 !important; display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px; font-size: 12px !important; }
.woocommerce ul.products li.product.gh-product-card .price del { order: 2; }
.woocommerce ul.products li.product.gh-product-card .price ins { order: 1; }
.woocommerce ul.products li.product.gh-product-card a.gh-card-cart,
.woocommerce ul.products li.product.gh-product-card a.button.gh-card-cart {
  width: 100%; height: 45px; min-height: 45px; box-sizing: border-box; margin: auto 0 0 !important; padding: 0 13px !important;
  display: flex !important; align-items: center !important; justify-content: space-between !important; gap: 10px;
  border: 0 !important; border-radius: 12px !important; color: #fff !important; background: linear-gradient(135deg,var(--gh-berry),#9c3158) !important;
  box-shadow: 0 9px 20px rgba(123,24,63,.16); text-align: right; text-decoration: none; font-size: 9px !important; font-weight: 900 !important; line-height: 1 !important;
}
.woocommerce ul.products li.product.gh-product-card a.gh-quote-button { background: var(--gh-berry-dark) !important; }
.gh-quote-note { margin-top: 12px; padding: 16px; display: grid; gap: 8px; border: 1px solid #f0d5d6; border-radius: 14px; background: #fff7f7; }
.gh-quote-note b { color: var(--gh-berry-dark); font-size: 12px; }
.gh-quote-note span { color: var(--gh-muted); font-size: 10px; line-height: 1.9; }
.gh-quote-note .gh-btn { width: fit-content; min-height: 42px; padding-inline: 18px; }
.gh-card-cart .gh-cart-button-icon { width: 25px; height: 25px; flex: 0 0 25px; display: grid; place-items: center; border-radius: 8px; background: rgba(255,255,255,.15); font-size: 15px; }
.gh-card-cart .gh-cart-button-label { flex: 1; line-height: 1.2; }
.woocommerce ul.products li.product .added_to_cart { margin-top: 7px; padding: 7px; text-align: center; color: var(--gh-berry); font-size: 8px; }
.woocommerce ul.products li.product a.gh-card-cart.loading { opacity: .72; }
.woocommerce ul.products li.product a.gh-card-cart.loading::after { top: 14px !important; left: 13px !important; right: auto !important; }
.woocommerce ul.products li.product a.gh-card-cart.added .gh-cart-button-icon { color: var(--gh-berry); background: #fff; }

/* Single product purchase button: keep label centered in every Woo state. */
.gh-single-product-page form.cart .single_add_to_cart_button,
.woocommerce div.product form.cart button.single_add_to_cart_button {
  height: 50px !important; min-height: 50px !important; box-sizing: border-box !important; display: inline-flex !important; align-items: center !important; justify-content: center !important;
  border: 0 !important; line-height: 1.3 !important; white-space: nowrap; cursor: pointer; appearance: none;
}
.gh-single-product-page form.cart .single_add_to_cart_button::before { content: ''; width: 25px; height: 25px; margin-left: 9px; display: block; border-radius: 8px; background-color: rgba(255,255,255,.14); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: center; background-size: 15px; }
.gh-single-product-page form.cart .single_add_to_cart_button.loading::after { position: static !important; margin-right: 9px; }

/* Dedicated cart, checkout and account surfaces. */
.gh-commerce-page { background: #fffaf9; }
.gh-commerce-hero { padding: 48px 0 40px; text-align: center; background: radial-gradient(circle at 15% 20%,rgba(201,92,128,.13),transparent 24%),linear-gradient(135deg,#fff8f6,#f9e9ed); border-bottom: 1px solid var(--gh-border); }
.gh-commerce-hero h1 { margin: 7px 0; color: var(--gh-berry-dark); font-size: clamp(31px,4vw,46px); }
.gh-commerce-hero p { margin: 0; color: var(--gh-muted); font-size: 11px; }
.gh-checkout-steps { max-width: 610px; margin: 27px auto 0; display: flex; align-items: center; justify-content: center; }
.gh-checkout-steps span { min-width: 105px; display: flex; flex-direction: column; align-items: center; gap: 5px; color: #9c8991; font-size: 8px; font-weight: 800; }
.gh-checkout-steps span b { width: 31px; height: 31px; display: grid; place-items: center; border: 2px solid #e2d2d8; border-radius: 50%; color: #9c8991; background: #fff; }
.gh-checkout-steps span.is-active { color: var(--gh-berry); }
.gh-checkout-steps span.is-active b { color: #fff; border-color: var(--gh-berry); background: var(--gh-berry); box-shadow: 0 7px 18px rgba(123,24,63,.2); }
.gh-checkout-steps span.is-done b { color: #fff; border-color: #4b8f65; background: #4b8f65; }
.gh-checkout-steps i { width: 72px; height: 2px; margin-bottom: 18px; background: #e4d6db; }
.gh-commerce-shell { max-width: 1180px; }
.gh-commerce-intro, .gh-secure-strip { margin-bottom: 14px; padding: 13px 17px; display: flex; align-items: center; justify-content: space-between; border: 1px solid var(--gh-border); border-radius: 14px; background: #fff; }
.gh-commerce-intro > div { display: flex; align-items: center; gap: 10px; }
.gh-commerce-intro > div > span { width: 39px; height: 39px; display: grid; place-items: center; border-radius: 11px; background: var(--gh-blush); }
.gh-commerce-intro strong, .gh-commerce-intro small { display: block; }
.gh-commerce-intro strong { font-size: 10px; }
.gh-commerce-intro small { margin-top: 3px; color: var(--gh-muted); font-size: 8px; }
.gh-commerce-intro > a { color: var(--gh-berry); font-size: 9px; font-weight: 800; text-decoration: none; }
.gh-secure-strip { justify-content: space-around; color: #5f4c55; font-size: 9px; }
.gh-commerce-card { overflow: hidden; }
.gh-cart-surface, .gh-checkout-surface, .gh-account-surface { min-height: 260px; }
.gh-commerce-card .wc-block-components-sidebar-layout { gap: 24px; }
.gh-commerce-card .wc-block-components-main { padding-left: 0 !important; }
.gh-commerce-card .wc-block-components-sidebar { padding: 22px !important; border: 1px solid var(--gh-border); border-radius: 18px; background: #fff9f8; }
.gh-commerce-card .wc-block-cart-items { border: 1px solid var(--gh-border) !important; border-radius: 16px; overflow: hidden; background: #fff; }
.gh-commerce-card .wc-block-cart-items__header { background: #fff6f7; }
.gh-commerce-card .wc-block-cart-item__image img { border-radius: 12px; }
.gh-commerce-card .wc-block-components-product-name { color: var(--gh-ink); font-size: 11px; font-weight: 900; line-height: 1.8; text-decoration: none; }
.gh-commerce-card .wc-block-components-product-price { color: var(--gh-berry); font-size: 11px; font-weight: 900; }
.gh-commerce-card .wc-block-components-quantity-selector { border-color: var(--gh-border); border-radius: 9px; }
.gh-commerce-card .wc-block-components-totals-wrapper { border-color: #eadde1; }
.gh-commerce-card .wc-block-components-button,
.gh-commerce-card .wc-block-cart__submit-button,
.gh-commerce-card .wc-block-components-checkout-place-order-button { min-height: 52px !important; display: flex !important; align-items: center !important; justify-content: center !important; border: 0 !important; border-radius: 12px !important; color: #fff !important; background: linear-gradient(135deg,var(--gh-berry),#9f3159) !important; box-shadow: 0 12px 25px rgba(123,24,63,.17); font-size: 11px !important; line-height: 1.4 !important; }
.gh-commerce-card .wc-block-components-text-input input, .gh-commerce-card .wc-block-components-combobox .wc-block-components-combobox-control input { border-color: var(--gh-border) !important; border-radius: 10px !important; }
.gh-commerce-card .wc-block-components-checkout-step { margin-bottom: 17px; padding: 20px !important; border: 1px solid var(--gh-border); border-radius: 16px; background: #fff; }
.gh-commerce-card .wc-block-components-checkout-step__heading h2 { color: var(--gh-berry-dark); font-size: 16px; }
.gh-account-benefits { display: flex; justify-content: center; flex-wrap: wrap; gap: 8px; margin-top: 22px; }
.gh-account-benefits span { padding: 8px 12px; border: 1px solid #e8d6dc; border-radius: 99px; color: #654854; background: rgba(255,255,255,.7); font-size: 9px; }
.woocommerce-account .woocommerce-form-login, .woocommerce-account .woocommerce-form-register { padding: 26px !important; border-color: var(--gh-border) !important; border-radius: 17px !important; background: #fffaf9; }
.woocommerce-account .u-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.woocommerce-account .u-column1, .woocommerce-account .u-column2 { width: 100% !important; float: none !important; }

@media (max-width: 980px) {
  .gh-shop-hero-inner { grid-template-columns: 1fr 260px; }
  .gh-store-layout { grid-template-columns: 1fr; }
  .gh-mobile-filter-bar { margin-bottom: 12px; display: flex; align-items: center; justify-content: space-between; }
  .gh-mobile-filter-bar > span { color: var(--gh-muted); font-size: 9px; }
  .gh-filter-open { min-height: 43px; padding: 0 15px; display: inline-flex; align-items: center; gap: 8px; border: 1px solid var(--gh-border); border-radius: 11px; color: var(--gh-berry); background: #fff; font-size: 10px; font-weight: 900; }
  .gh-filter-open > span { font-size: 17px; }
  .gh-filter-open b { min-width: 20px; height: 20px; display: grid; place-items: center; border-radius: 50%; color: #fff; background: var(--gh-berry); font-size: 8px; }
  .gh-shop-sidebar { width: min(360px,88vw); height: 100dvh; box-sizing: border-box; position: fixed; z-index: 1002; top: 0; right: 0; padding: 15px; display: block; visibility: hidden; overflow-y: auto; background: #fffaf9; box-shadow: -20px 0 50px rgba(44,8,25,.2); transform: translateX(110%); transition: transform .25s ease, visibility 0s linear .25s; }
  .gh-shop-sidebar.is-open { visibility: visible; transform: translateX(0); transition-delay: 0s; }
  .gh-filter-drawer-head { margin: -15px -15px 15px; padding: 15px 18px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--gh-border); background: #fff; }
  .gh-filter-drawer-head strong { font-size: 13px; }
  .gh-filter-close { width: 36px; height: 36px; border: 0; border-radius: 10px; color: var(--gh-berry); background: var(--gh-blush); font-size: 23px; }
  .gh-shop-sidebar .gh-filter-help { margin-top: 14px; }
  .gh-filter-backdrop { position: fixed; z-index: 1001; inset: 0; border: 0; background: rgba(35,13,23,.48); opacity: 0; pointer-events: none; transition: opacity .25s; }
  .gh-filter-visible .gh-filter-backdrop { display: block; opacity: 1; pointer-events: auto; }
  body.gh-filter-visible { overflow: hidden; }
  .gh-shop-results .woocommerce ul.products, .gh-shop-results ul.products { grid-template-columns: repeat(3,minmax(0,1fr)); }
}

@media (max-width: 720px) {
  .gh-shop-hero { padding: 37px 0; }
  .gh-shop-hero-inner { min-height: auto; grid-template-columns: 1fr; }
  .gh-shop-hero-art { display: none; }
  .gh-shop-hero h1 { font-size: 35px; }
  .gh-shop-hero p { font-size: 10px; }
  .gh-category-pills { grid-template-columns: repeat(3,minmax(145px,1fr)); overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: 7px; }
  .gh-category-pills a { scroll-snap-align: start; }
  .gh-shop-toolbar { align-items: stretch; flex-direction: column; }
  .gh-toolbar-title { width: 100%; margin: 0; }
  .gh-shop-toolbar .woocommerce-ordering, .gh-shop-toolbar select { width: 100%; }
  .gh-shop-results .woocommerce ul.products, .gh-shop-results ul.products { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .gh-commerce-hero { padding: 35px 0 30px; }
  .gh-checkout-steps span { min-width: 74px; }
  .gh-checkout-steps i { width: 35px; }
  .gh-commerce-intro { align-items: flex-start; gap: 12px; }
  .gh-secure-strip { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
  .gh-commerce-card .wc-block-components-sidebar-layout { display: block; }
  .gh-commerce-card .wc-block-components-sidebar { width: 100% !important; box-sizing: border-box; margin-top: 18px; }
  .woocommerce-account .u-columns { grid-template-columns: 1fr; }
}

/* Clickable vehicle fitment below the product gallery. */
@media (min-width: 981px) {
  .gh-single-product-page div.product > .woocommerce-product-gallery {
    grid-column: 1;
    grid-row: 1;
  }
  .gh-single-product-page div.product > .gh-vehicle-fitment {
    grid-column: 1;
    grid-row: 2;
  }
  .gh-single-product-page div.product > .summary {
    grid-column: 2;
    grid-row: 1 / span 2;
  }
}
.gh-vehicle-fitment {
  min-width: 0;
  margin-top: 14px;
  padding: 18px;
  box-sizing: border-box;
  border: 1px solid #dfe2e7;
  border-radius: 8px;
  background: #f8f9fb;
}
.gh-vehicle-fitment > header {
  margin-bottom: 14px;
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 14px;
}
.gh-fitment-kicker {
  color: #c58700;
  font-size: 8px;
  font-weight: 900;
}
.gh-vehicle-fitment h2 {
  margin: 3px 0 0;
  color: var(--gh-berry-dark);
  font-size: 18px;
  line-height: 1.5;
}
.gh-fitment-count {
  padding: 6px 8px;
  border: 1px solid rgba(242,170,0,.35);
  border-radius: 6px;
  color: #835b00;
  background: #fff8df;
  font-size: 8px;
  white-space: nowrap;
}
.gh-vehicle-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 9px;
}
.gh-vehicle-card {
  min-width: 0;
  min-height: 98px;
  position: relative;
  display: grid;
  grid-template-columns: 104px minmax(0,1fr);
  align-items: center;
  overflow: hidden;
  border: 1px solid #e0e3e8;
  border-radius: 8px;
  color: var(--gh-berry-dark);
  background: #fff;
  text-decoration: none;
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.gh-vehicle-card:hover {
  color: var(--gh-berry-dark);
  transform: translateY(-2px);
  border-color: rgba(242,170,0,.65);
  box-shadow: 0 10px 22px rgba(17,24,32,.08);
}
.gh-vehicle-photo {
  width: 104px;
  height: 100%;
  min-height: 98px;
  display: grid;
  place-items: center;
  overflow: hidden;
  background: #fff2bf;
  box-shadow: inset 0 0 0 1px rgba(242,170,0,.24);
}
.gh-vehicle-photo img {
  width: 100%;
  height: 100%;
  padding: 18px;
  box-sizing: border-box;
  object-fit: contain;
  filter: drop-shadow(0 4px 7px rgba(17,24,32,.12));
}
.gh-vehicle-photo-fallback {
  color: #bd8500;
  background: #fff5ce;
}
.gh-vehicle-photo-fallback .gh-icon {
  width: 42px;
  height: 42px;
}
.gh-vehicle-card-copy {
  min-width: 0;
  padding: 10px 10px 10px 26px;
}
.gh-vehicle-card-copy strong,
.gh-vehicle-card-copy small {
  display: block;
}
.gh-vehicle-card-copy strong {
  font-size: 10px;
  line-height: 1.7;
}
.gh-vehicle-card-copy small {
  margin-top: 3px;
  color: #737a84;
  font-size: 8px;
}
.gh-vehicle-arrow {
  width: 22px;
  height: 22px;
  position: absolute;
  left: 6px;
  display: grid;
  place-items: center;
  border-radius: 6px;
  color: var(--gh-yellow);
  background: #111820;
}
.gh-vehicle-arrow .gh-icon {
  width: 12px;
  height: 12px;
}
.gh-fitment-review {
  min-height: 64px;
  padding: 10px;
  display: grid;
  grid-template-columns: 38px minmax(0,1fr) auto;
  align-items: center;
  gap: 9px;
  border: 1px dashed rgba(242,170,0,.55);
  border-radius: 8px;
  background: #fffaf0;
}
.gh-fitment-review > span {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 7px;
  color: var(--gh-yellow);
  background: #111820;
}
.gh-fitment-review .gh-icon { width: 19px; height: 19px; }
.gh-fitment-review strong,
.gh-fitment-review small { display: block; }
.gh-fitment-review strong { font-size: 9px; }
.gh-fitment-review small { margin-top: 3px; color: #69717c; font-size: 7px; line-height: 1.7; }
.gh-fitment-review a {
  padding: 8px 9px;
  border-radius: 6px;
  color: #111820;
  background: var(--gh-yellow);
  font-size: 8px;
  font-weight: 900;
  text-decoration: none;
  white-space: nowrap;
}
.gh-fitment-note {
  margin: 11px 0 0;
  color: #777e88;
  font-size: 7px;
  line-height: 1.8;
}
.gh-shop-hero-art.is-vehicle {
  width: min(440px,38vw);
  min-height: 230px;
  padding: 10px;
  box-sizing: border-box;
  border: 1px solid rgba(242,170,0,.35);
  border-radius: 8px;
  background: rgba(255,255,255,.08);
}
.gh-shop-hero-art.is-vehicle img {
  width: 100%;
  height: 165px;
  padding: 18px;
  box-sizing: border-box;
  object-fit: contain;
  background: var(--gh-yellow);
  border-radius: 6px;
}
.gh-shop-hero-art.is-vehicle b {
  margin-top: 8px;
  color: #fff;
  font-size: 11px;
  line-height: 1.6;
}

@media (max-width: 980px) {
  .gh-vehicle-fitment {
    margin: 14px 0 20px;
  }
}
@media (max-width: 620px) {
  .gh-vehicle-fitment {
    padding: 14px 10px;
  }
  .gh-vehicle-fitment > header {
    align-items: start;
  }
  .gh-vehicle-fitment h2 {
    font-size: 16px;
  }
  .gh-vehicle-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 7px;
  }
  .gh-vehicle-card {
    min-height: 178px;
    display: block;
  }
  .gh-vehicle-photo {
    width: 100%;
    height: 104px;
    min-height: 104px;
  }
  .gh-vehicle-card-copy {
    padding: 8px 8px 9px;
  }
  .gh-vehicle-card-copy strong {
    font-size: 9px;
    line-height: 1.65;
  }
  .gh-vehicle-card-copy small {
    padding-left: 19px;
    font-size: 7px;
  }
  .gh-vehicle-arrow {
    left: 6px;
    bottom: 7px;
  }
  .gh-fitment-review {
    grid-template-columns: 38px minmax(0,1fr);
  }
  .gh-fitment-review a {
    grid-column: 1 / -1;
    text-align: center;
  }
  .gh-shop-hero-art.is-vehicle {
    width: 100%;
    min-height: 0;
  }
}

@media (max-width: 480px) {
  .gh-shop-hero-trust span:nth-child(2) { display: none; }
  .gh-category-pills { grid-template-columns: repeat(3,140px); }
  .gh-category-pills a { min-height: 55px; }
  .gh-category-pills a strong { font-size: 9px; }
  .gh-shop-results .woocommerce ul.products, .gh-shop-results ul.products { gap: 8px; }
  .woocommerce ul.products li.product.gh-product-card { padding: 6px; border-radius: 14px; }
  .gh-product-card-body { padding: 9px 3px 2px; }
  .gh-wishlist-button { width: 40px; height: 40px; top: 6px; left: 6px; font-size: 17px; }
  .gh-wishlist-button .gh-icon { width: 18px; height: 18px; }
  .gh-stock-badge { right: 6px; bottom: 6px; }
  .woocommerce ul.products li.product.gh-product-card .woocommerce-loop-product__title { min-height: 42px; font-size: 9px !important; line-height: 1.8; }
  .gh-product-category { font-size: 7px; }
  .gh-product-price-row { min-height: 41px; }
  .woocommerce ul.products li.product.gh-product-card .price { font-size: 9px !important; }
  .woocommerce ul.products li.product.gh-product-card .price del { font-size: 7px !important; }
  .woocommerce ul.products li.product.gh-product-card a.gh-card-cart { height: 41px; min-height: 41px; padding: 0 8px !important; border-radius: 10px !important; font-size: 8px !important; }
  .gh-card-cart .gh-cart-button-icon { width: 23px; height: 23px; flex-basis: 23px; font-size: 13px; }
  .gh-single-product-page form.cart { display: grid; grid-template-columns: 64px 1fr; }
  .gh-order-picker { grid-column: 1 / -1; }
  .gh-order-modes label { padding-inline: 7px; grid-template-columns: 30px minmax(0,1fr); }
  .gh-order-mode-icon { width: 30px; height: 30px; }
  .gh-order-picker-head span { font-size: 8px; }
  .gh-single-product-page form.cart .single_add_to_cart_button { min-width: 0; width: 100%; padding: 0 12px !important; font-size: 10px !important; }
  .gh-single-product-page form.cart .single_add_to_cart_button::before { width: 22px; height: 22px; margin-left: 6px; }
  .gh-checkout-steps { width: 100%; }
  .gh-checkout-steps span { min-width: 64px; font-size: 7px; }
  .gh-checkout-steps i { width: 23px; }
  .gh-commerce-intro { padding: 11px; }
  .gh-commerce-intro > a { white-space: nowrap; }
  .gh-secure-strip { font-size: 8px; }
  .gh-commerce-card { overflow: visible; }
  .gh-commerce-card .wc-block-cart-item__image { padding-left: 8px !important; }
  .gh-commerce-card .wc-block-cart-item__product { padding-right: 0 !important; }
  .gh-commerce-card .wc-block-components-product-name { font-size: 9px; }
  .gh-commerce-card .wc-block-components-checkout-step { padding: 13px !important; }
}

@media (max-width: 720px) {
  .woocommerce .password-input .show-password-input {
    width: 44px;
    height: 44px;
    top: 50%;
    transform: translateY(-50%);
    display: grid;
    place-items: center;
  }
}

/* Conversion-focused product media, single product, footer and mobile app header. */
.gh-product-media {
  aspect-ratio: 1;
  background: #fff;
}
.gh-product-media .woocommerce-LoopProduct-link {
  width: 100%;
  height: 100%;
  display: grid;
  place-items: center;
}
.woocommerce ul.products li.product.gh-product-card .gh-product-media img {
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: 1;
  padding: 10px;
  box-sizing: border-box;
  object-fit: contain !important;
  object-position: center;
  background: #fff;
}
.woocommerce ul.products li.product.gh-product-card:hover .gh-product-media img {
  transform: scale(1.012);
}
.woocommerce ul.products li.product.gh-product-card .gh-product-image-missing {
  width: 100%;
  height: 100%;
  padding: 36px 20px 18px;
  box-sizing: border-box;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 14px;
  color: #676d75;
  background: #f8f9fb;
}
.woocommerce ul.products li.product.gh-product-card .gh-product-image-missing img {
  width: 116px !important;
  height: 116px !important;
  aspect-ratio: 1;
  padding: 0;
  opacity: .82;
  object-fit: contain !important;
  background: transparent;
  filter: grayscale(1) contrast(1.08);
}
.gh-product-image-missing small { font-size: 9px; font-weight: 800; }
.woocommerce-product-gallery__image--placeholder { position: relative; background: #f8f9fb; }
.woocommerce-product-gallery__image--placeholder::after {
  content: 'تصویر محصول ثبت نشده';
  position: absolute;
  right: 16px;
  bottom: 16px;
  padding: 6px 9px;
  border: 1px solid #dfe2e7;
  border-radius: 6px;
  color: #676d75;
  background: rgba(255,255,255,.92);
  font-size: 8px;
  font-weight: 800;
}

.single-product div.product.outofstock .woocommerce-product-gallery__image:first-child {
  position: relative;
  overflow: hidden;
}
.single-product div.product.outofstock .woocommerce-product-gallery__image:first-child::after {
  content: 'ناموجود';
  position: absolute;
  inset: 0;
  z-index: 3;
  display: grid;
  place-items: center;
  border-radius: 16px;
  color: #fff;
  background: rgba(17,24,32,.54);
  backdrop-filter: blur(1.5px);
  font-size: 26px;
  font-weight: 950;
}

.gh-single-product-page div.product {
  border-color: #dfe2ec;
  box-shadow: 0 24px 65px rgba(17,24,32,.08);
}
.gh-single-product-page div.product > .summary {
  padding: 6px;
}
.gh-single-product-page .woocommerce-product-gallery__wrapper {
  border-color: #dfe2ec;
  background: #fff;
}
.gh-single-product-page .woocommerce-product-gallery__image {
  background: #fff;
}
.gh-single-product-page .woocommerce-product-gallery__image img {
  width: 100%;
  height: auto;
  aspect-ratio: 1;
  padding: 18px;
  box-sizing: border-box;
  object-fit: contain;
  object-position: center;
  background: #fff;
}
.gh-product-confidence {
  margin-bottom: 12px;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}
.gh-product-confidence > span {
  min-height: 31px;
  padding: 0 10px;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  border: 1px solid #dfe2ec;
  border-radius: 8px;
  color: #45505c;
  background: #f7f8fa;
  font-size: 8px;
  font-weight: 800;
}
.gh-product-confidence > span.is-stocked {
  color: #22613d;
  border-color: #cfe9d9;
  background: #f0fbf4;
}
.gh-product-confidence .gh-icon {
  width: 14px;
  height: 14px;
}
.gh-product-confidence i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #36a466;
  box-shadow: 0 0 0 4px rgba(54,164,102,.12);
}
.gh-single-product-page .summary .product_title {
  margin-bottom: 10px;
  color: var(--gh-berry-dark);
}
.gh-single-product-page .summary .price {
  margin: 15px 0 !important;
  padding: 14px 16px;
  border: 1px solid rgba(242,170,0,.35);
  border-radius: 8px;
  color: var(--gh-berry-dark) !important;
  background: #fff9df;
}
.gh-fit-assurance {
  margin-top: 15px;
  padding: 13px;
  display: grid;
  grid-template-columns: 38px minmax(0,1fr);
  align-items: center;
  gap: 10px;
  border: 1px solid #dfe2ec;
  border-radius: 8px;
  background: #f7f8fa;
}
.gh-fit-assurance > span {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 8px;
  color: var(--gh-yellow);
  background: var(--gh-berry-dark);
}
.gh-fit-assurance .gh-icon {
  width: 19px;
  height: 19px;
}
.gh-fit-assurance strong,
.gh-fit-assurance small {
  display: block;
}
.gh-fit-assurance strong {
  font-size: 10px;
}
.gh-fit-assurance small {
  margin-top: 3px;
  color: var(--gh-muted);
  font-size: 8px;
  line-height: 1.8;
}
.gh-single-product-page form.cart {
  padding: 12px;
  border: 1px solid rgba(242,170,0,.4);
  border-radius: 8px;
  background: #fff7cb;
}
.gh-single-product-page form.cart .single_add_to_cart_button,
.woocommerce div.product form.cart button.single_add_to_cart_button {
  color: var(--gh-berry-dark) !important;
  background: var(--gh-yellow) !important;
  box-shadow: 0 14px 28px rgba(17,24,32,.16);
}
.gh-single-product-page form.cart .single_add_to_cart_button::before {
  background-color: var(--gh-berry-dark);
}
.gh-product-call {
  min-height: 58px;
  padding: 9px 12px;
  box-sizing: border-box;
  display: grid;
  grid-template-columns: 38px minmax(0,1fr) 18px;
  align-items: center;
  gap: 9px;
  border-radius: 8px;
  color: #fff;
  background: var(--gh-berry-dark);
  text-decoration: none;
}
.gh-product-call > span {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 8px;
  color: var(--gh-berry-dark);
  background: var(--gh-yellow);
}
.gh-product-call .gh-icon {
  width: 18px;
  height: 18px;
}
.gh-product-call strong,
.gh-product-call small {
  display: block;
}
.gh-product-call strong {
  font-size: 10px;
}
.gh-product-call small {
  margin-top: 3px;
  color: #d8dce0;
  font-size: 8px;
}

.gh-site-nav a {
  gap: 6px;
}
.gh-nav-icon {
  width: 25px;
  height: 25px;
  padding: 3px;
  box-sizing: border-box;
  flex: 0 0 25px;
  display: grid;
  place-items: center;
  border-radius: 7px;
  color: var(--gh-berry-dark);
  background: var(--gh-blush);
}
.gh-nav-icon .gh-icon,
.gh-nav-icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.gh-site-nav .gh-nav-all .gh-nav-icon {
  color: var(--gh-yellow);
  background: rgba(255,255,255,.1);
}
.gh-nav-label {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.gh-site-footer .gh-footer-grid {
  grid-template-columns: 1.25fr .65fr .75fr 1.15fr;
  align-items: start;
}
.gh-footer-brand-column .gh-brand {
  width: fit-content;
}
.gh-site-footer .fl-logo-footer {
  width: 190px;
  height: 142px;
  padding: 8px;
  box-sizing: border-box;
  display: block;
  overflow: hidden;
  border: 1px solid rgba(242,170,0,.55);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 16px 36px rgba(0,0,0,.2);
}
.gh-site-footer .fl-logo-footer .fl-logo {
  width: 100%;
  height: 100%;
  position: static;
  display: block;
  object-fit: contain;
}
.gh-footer-phone {
  color: var(--gh-yellow);
  font-size: 13px;
  font-weight: 900;
  text-decoration: none;
}
.gh-footer-credentials {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}
.gh-enamad-slot,
.gh-footer-trust-note {
  min-height: 92px;
  padding: 10px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 5px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 8px;
  text-align: center;
  background: rgba(255,255,255,.055);
}
.gh-enamad-slot {
  border-color: rgba(242,170,0,.45);
  background: rgba(242,170,0,.08);
}
.gh-enamad-slot > span,
.gh-footer-trust-note > span {
  color: var(--gh-yellow);
}
.gh-enamad-slot .gh-icon,
.gh-footer-trust-note .gh-icon {
  width: 25px;
  height: 25px;
}
.gh-enamad-slot strong,
.gh-enamad-slot small,
.gh-footer-trust-note strong,
.gh-footer-trust-note small {
  display: block;
}
.gh-enamad-slot strong,
.gh-footer-trust-note strong {
  color: #fff;
  font-size: 9px;
}
.gh-enamad-slot small,
.gh-footer-trust-note small {
  margin-top: 2px;
  color: #adb5be;
  font-size: 7px;
  line-height: 1.7;
}

@media (max-width: 720px) {
  .gh-site-header {
    position: relative;
    background: rgba(255,255,255,.9);
    backdrop-filter: blur(18px) saturate(1.2);
  }
  .gh-site-header-row {
    min-height: 146px;
    position: relative;
    display: grid !important;
    grid-template-columns: 84px minmax(0,1fr) 84px;
    grid-template-rows: 82px 48px;
    gap: 8px 0;
    overflow: visible;
  }
  .gh-site-header .gh-menu-toggle {
    width: 44px;
    height: 44px;
    margin: 0;
    grid-column: 1;
    grid-row: 1;
    justify-self: start;
    align-self: center;
    border: 1px solid rgba(17,24,32,.1);
    border-radius: 8px;
    color: var(--gh-berry-dark);
    background: rgba(255,255,255,.72);
    box-shadow: 0 8px 24px rgba(17,24,32,.09), inset 0 1px 0 rgba(255,255,255,.9);
    backdrop-filter: blur(14px);
    transition: .2s ease;
  }
  .gh-site-header .gh-menu-toggle[aria-expanded="true"] {
    color: var(--gh-yellow);
    border-color: var(--gh-berry-dark);
    background: rgba(17,24,32,.94);
    box-shadow: 0 12px 28px rgba(17,24,32,.2);
  }
  .gh-site-header .gh-menu-toggle .gh-icon {
    transition: transform .2s ease;
  }
  .gh-site-header .gh-menu-toggle[aria-expanded="true"] .gh-icon {
    transform: rotate(90deg);
  }
  .gh-site-header .gh-brand {
    width: 86px;
    height: 82px;
    position: absolute;
    z-index: 2;
    top: 0;
    left: 50%;
    display: grid;
    place-items: center;
    overflow: visible;
    transform: translateX(-50%);
  }
  .gh-site-header .fl-logo-viewport {
    width: 82px;
    height: 82px;
    flex: 0 0 82px;
  }
  .gh-site-header .gh-actions {
    margin: 0;
    grid-column: 3;
    grid-row: 1;
    justify-self: end;
    align-self: center;
  }
  .gh-site-header .gh-search {
    width: 100%;
    margin: 0;
    grid-column: 1 / -1;
    grid-row: 2;
  }
  .gh-site-header .gh-search input {
    height: 48px;
    border-radius: 8px;
    background: rgba(247,248,250,.88);
  }
  .gh-site-nav.is-open {
    width: calc(100% - 28px);
    max-width: 430px;
    position: absolute;
    z-index: 1200;
    top: calc(100% - 2px);
    right: 14px;
    display: block;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.72);
    border-radius: 8px;
    background: rgba(247,248,250,.9);
    box-shadow: 0 26px 70px rgba(17,24,32,.24);
    backdrop-filter: blur(24px) saturate(1.3);
    animation: ghMenuIn .2s ease;
  }
  .gh-site-nav.is-open .gh-shell {
    width: 100%;
    max-width: 100%;
    max-height: calc(100dvh - 210px);
    padding: 10px;
    box-sizing: border-box;
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 7px;
    overflow-y: auto;
    overscroll-behavior: contain;
  }
  .gh-site-nav.is-open a {
    min-width: 0;
    min-height: 62px;
    padding: 7px;
    display: grid;
    grid-template-columns: 39px minmax(0,1fr);
    justify-content: initial;
    gap: 7px;
    border: 1px solid rgba(17,24,32,.08);
    border-radius: 8px;
    background: rgba(255,255,255,.86);
    text-align: right;
    white-space: normal;
  }
  .gh-site-nav.is-open .gh-nav-icon {
    width: 39px;
    height: 39px;
    padding: 4px;
    border-radius: 8px;
  }
  .gh-site-nav.is-open .gh-nav-label {
    align-self: center;
    font-size: 9px;
    line-height: 1.55;
  }
  .gh-site-nav.is-open .gh-nav-all {
    color: var(--gh-yellow);
    border-color: var(--gh-berry-dark);
    background: rgba(17,24,32,.96);
  }
  .gh-site-nav.is-open .gh-nav-sale {
    color: var(--gh-berry-dark);
    border-color: rgba(242,170,0,.5);
    background: #fff8d8;
  }
  body.gh-menu-visible .gh-site-header {
    z-index: 1201;
  }
  .gh-single-product-page .gh-breadcrumb {
    margin-block: 12px !important;
  }
  .gh-single-product-page div.product {
    padding: 10px;
    border-radius: 8px;
  }
  .gh-single-product-page div.product > .summary {
    padding: 4px;
  }
  .gh-single-product-page .woocommerce-product-gallery__image img {
    padding: 10px;
  }
  .gh-product-confidence {
    margin-top: 2px;
  }
  .gh-single-product-page .summary .product_title {
    font-size: 24px;
    line-height: 1.55;
  }
  .gh-single-product-page .summary .price {
    font-size: 25px !important;
  }
  .gh-fit-assurance {
    align-items: start;
  }
  .gh-single-product-page form.cart {
    margin-block: 14px 10px !important;
  }
  .gh-product-call {
    min-height: 60px;
  }
  .gh-site-footer {
    padding-top: 34px;
  }
  .gh-site-footer .gh-footer-grid {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 28px 16px;
  }
  .gh-footer-brand-column,
  .gh-footer-contact-column {
    grid-column: 1 / -1;
  }
  .gh-footer-brand-column {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
  .gh-site-footer .fl-logo-footer {
    width: 174px;
    height: 132px;
  }
  .gh-footer-brand-column p {
    max-width: 310px;
  }
  .gh-footer-contact-column {
    padding-top: 20px;
    border-top: 1px solid rgba(255,255,255,.12);
  }
  .gh-footer-credentials {
    max-width: 360px;
  }
  .gh-footer-copy {
    margin-top: 28px;
  }
}

/* Woo Blocks mobile cart uses align-wide offsets by default; neutralize them inside our shell. */
.gh-commerce-card .wp-block-woocommerce-cart.alignwide,
.gh-commerce-card .wp-block-woocommerce-checkout.alignwide { width: 100% !important; max-width: none !important; margin-right: 0 !important; margin-left: 0 !important; }

@media (max-width: 720px) {
  .gh-cart-surface .wc-block-cart,
  .gh-cart-surface .wc-block-cart__main,
  .gh-cart-surface .wc-block-cart__sidebar,
  .gh-cart-surface .wc-block-cart-items { width: 100% !important; max-width: 100% !important; margin-right: 0 !important; margin-left: 0 !important; }
  .gh-cart-surface .wc-block-cart-items { display: block !important; box-sizing: border-box; }
  .gh-cart-surface .wc-block-cart-items tbody { display: block; }
  .gh-cart-surface .wc-block-cart-items__row { width: 100% !important; box-sizing: border-box; padding: 14px !important; display: grid !important; grid-template-columns: 82px minmax(0,1fr) !important; grid-template-areas: 'image product' 'total total' !important; gap: 0 12px; }
  .gh-cart-surface .wc-block-cart.is-mobile .wc-block-cart-items__row .wc-block-cart-item__image { width: 82px !important; min-width: 0 !important; grid-area: image !important; grid-column: 1 !important; grid-row: 1 !important; padding: 0 !important; }
  .gh-cart-surface .wc-block-cart-item__image img { width: 82px !important; height: 82px !important; object-fit: cover; }
  .gh-cart-surface .wc-block-cart.is-mobile .wc-block-cart-items__row .wc-block-cart-item__product { width: auto !important; min-width: 0 !important; grid-area: product !important; grid-column: 2 !important; grid-row: 1 !important; padding: 0 !important; }
  .gh-cart-surface .wc-block-cart.is-mobile .wc-block-cart-items__row .wc-block-cart-item__total { width: auto !important; min-width: 0 !important; grid-area: total !important; grid-column: 1 / 3 !important; grid-row: 2 !important; margin-top: 12px; padding: 10px 0 0 !important; border-top: 1px solid var(--gh-border); text-align: left; }
  .gh-cart-surface .wc-block-cart-item__wrap { min-width: 0; display: flex !important; flex-direction: column; align-items: stretch; }
  .gh-cart-surface .wc-block-components-product-name { position: static !important; display: block; overflow-wrap: anywhere; line-height: 1.75 !important; }
  .gh-cart-surface .wc-block-cart-item__prices { position: static !important; margin: 5px 0 0; display: block !important; }
  .gh-cart-surface .wc-block-cart-item__prices .wc-block-components-product-price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 5px; }
  .gh-cart-surface .wc-block-cart-item__prices del { color: #a9979f; font-size: 8px; }
  .gh-cart-surface .wc-block-cart-item__prices ins { color: var(--gh-berry); font-size: 10px; text-decoration: none; }
  .gh-cart-surface .wc-block-cart-item__total-price-and-sale-badge-wrapper { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
  .gh-cart-surface .wc-block-cart-item__total .wc-block-components-product-price { position: static !important; white-space: nowrap; }
  .gh-cart-surface .wc-block-components-product-badge { position: static !important; margin: 0 !important; white-space: nowrap; }
  .gh-cart-surface .wc-block-components-product-metadata__description { display: none; }
  .gh-cart-surface .wc-block-cart-item__quantity { position: static !important; margin-top: 9px !important; display: flex; align-items: center; gap: 8px; }
  .gh-cart-surface .wc-block-cart__submit-container { position: static !important; padding: 0 !important; background: transparent !important; box-shadow: none !important; }
  .gh-cart-surface .wc-block-cart__submit-container::before { display: none !important; }
  .gh-cart-surface .wc-block-components-sidebar { padding: 17px !important; }
}

@media (max-width: 480px) {
  .gh-single-product-page form.cart > .gh-order-picker { grid-column: 1 / -1 !important; grid-row: 1 !important; }
  .gh-single-product-page form.cart > .quantity { width: 64px !important; grid-column: 1 !important; grid-row: 2 !important; float: none !important; }
  .gh-single-product-page form.cart > .single_add_to_cart_button { width: 100% !important; max-width: none !important; grid-column: 2 !important; grid-row: 2 !important; float: none !important; }
}

/* Managed slide-in cart */
.gh-side-cart { position: fixed; z-index: 2500; inset: 0; visibility: hidden; pointer-events: none; }
.gh-side-cart-backdrop { position: absolute; inset: 0; border: 0; opacity: 0; background: rgba(35,11,22,.52); backdrop-filter: blur(2px); transition: opacity .25s ease; }
.gh-side-cart-panel { width: min(360px,90vw); height: 100dvh; position: absolute; top: 0; right: 0; display: flex; flex-direction: column; color: var(--gh-ink); background: #fffaf9; box-shadow: -25px 0 70px rgba(39,8,22,.22); transform: translateX(105%); transition: transform .3s cubic-bezier(.22,.85,.32,1); }
.gh-side-cart.is-open { visibility: visible; pointer-events: auto; }
.gh-side-cart.is-open .gh-side-cart-backdrop { opacity: 1; }
.gh-side-cart.is-open .gh-side-cart-panel { transform: translateX(0); }
body.gh-side-cart-visible { overflow: hidden; }
.gh-side-cart-panel > header { min-height: 78px; padding: 0 18px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--gh-border); background: rgba(255,255,255,.96); }
.gh-side-cart-panel > header > div { display: flex; align-items: center; gap: 11px; }
.gh-side-cart-panel > header strong, .gh-side-cart-panel > header span { display: block; }
.gh-side-cart-panel > header strong { font-size: 14px; }
.gh-side-cart-count { margin-top: 3px; color: var(--gh-muted); font-size: 9px; }
.gh-side-cart-icon { width: 43px; height: 43px; display: grid !important; place-items: center; border-radius: 13px; color: #fff; background: linear-gradient(145deg,var(--gh-rose),var(--gh-berry)); box-shadow: 0 8px 18px rgba(123,24,63,.18); }
.gh-side-cart-icon .gh-icon { width: 21px; height: 21px; }
.gh-side-cart-close { width: 40px; height: 40px; display: grid; place-items: center; border: 1px solid var(--gh-border); border-radius: 12px; color: var(--gh-berry); background: #fff; cursor: pointer; }
.gh-side-cart-close .gh-icon { width: 18px; height: 18px; }
.gh-side-cart-panel > .widget_shopping_cart_content { min-height: 0; flex: 1; display: flex; flex-direction: column; }
.gh-mini-cart-body { min-height: 0; flex: 1; overflow-y: auto; overscroll-behavior: contain; }
.gh-mini-cart-list { margin: 0 !important; padding: 14px !important; display: grid; gap: 10px; list-style: none; }
.gh-mini-cart-item { min-height: 112px; max-height: 180px; box-sizing: border-box; padding: 10px !important; display: grid !important; grid-template-columns: 30px minmax(0,1fr) 82px; grid-template-areas: 'remove product image'; gap: 10px; position: relative; overflow: hidden; border: 1px solid var(--gh-border); border-radius: 16px; background: #fff; transition: min-height .2s ease, max-height .2s ease, padding .2s ease, border-width .2s ease, opacity .16s ease, transform .2s ease; }
.gh-mini-cart-image { min-width: 0; grid-area: image; display: block; }
.gh-mini-cart-image img { width: 82px !important; height: 82px !important; margin: 0 !important; object-fit: cover; border-radius: 12px; }
.gh-mini-cart-product { min-width: 0; grid-area: product; display: flex; flex-direction: column; align-items: flex-start; }
.gh-mini-cart-name { color: var(--gh-ink); text-decoration: none; font-size: 10px; font-weight: 900; line-height: 1.75; }
.gh-mini-cart-unit-price { margin-top: 3px; color: var(--gh-berry); font-size: 9px; font-weight: 900; }
.gh-mini-pack-note { margin-top: 3px; color: #80610e; font-size: 8px; font-weight: 800; }
.gh-mini-quantity { height: 34px; margin-top: auto; display: grid; grid-template-columns: 33px 42px 33px; overflow: hidden; border: 1px solid var(--gh-border); border-radius: 10px; background: #fffaf9; }
.gh-mini-quantity button { padding: 0; display: grid; place-items: center; border: 0; color: var(--gh-berry); background: transparent; cursor: pointer; }
.gh-mini-quantity button:disabled { opacity: .35; cursor: not-allowed; }
.gh-mini-quantity button .gh-icon { width: 13px; height: 13px; }
.gh-mini-quantity input { width: 42px; height: 32px; padding: 0; border: 0; border-inline: 1px solid var(--gh-border); outline: 0; text-align: center; background: #fff; font-size: 10px; -moz-appearance: textfield; }
.gh-mini-quantity input::-webkit-inner-spin-button, .gh-mini-quantity input::-webkit-outer-spin-button { margin: 0; appearance: none; }
.gh-mini-remove { width: 30px; height: 30px; grid-area: remove; display: grid !important; place-items: center; border-radius: 9px; color: #a27484 !important; background: #fff3f5; text-decoration: none; }
.gh-mini-remove:hover { color: #fff !important; background: var(--gh-berry) !important; }
.gh-mini-remove .gh-icon { width: 14px; height: 14px; }
.gh-mini-cart-footer { padding: 14px 16px calc(16px + env(safe-area-inset-bottom)); border-top: 1px solid var(--gh-border); background: #fff; box-shadow: 0 -12px 35px rgba(83,25,48,.07); }
.gh-free-shipping-progress > div { display: flex; align-items: center; justify-content: space-between; color: #64505a; font-size: 9px; }
.gh-free-shipping-progress .gh-icon { width: 18px; height: 18px; color: var(--gh-berry); }
.gh-free-shipping-progress > i { height: 6px; margin-top: 9px; display: block; overflow: hidden; border-radius: 99px; background: #f0e3e7; }
.gh-free-shipping-progress > i > b { height: 100%; display: block; border-radius: inherit; background: linear-gradient(90deg,var(--gh-rose),var(--gh-berry)); }
.gh-mini-cart-subtotal { margin: 14px 0; padding-top: 13px; display: flex; align-items: center; justify-content: space-between; border-top: 1px dashed var(--gh-border); }
.gh-mini-cart-subtotal span { color: var(--gh-muted); font-size: 10px; }
.gh-mini-cart-subtotal strong { color: var(--gh-berry-dark); font-size: 15px; }
.gh-mini-cart-actions { display: grid; grid-template-columns: 1.45fr .8fr; gap: 8px; }
.gh-mini-cart-actions a { min-height: 48px; display: flex; align-items: center; justify-content: center; gap: 7px; border-radius: 12px; text-decoration: none; font-size: 9px; font-weight: 900; }
.gh-mini-checkout { color: #fff; background: linear-gradient(135deg,var(--gh-berry),#a23860); box-shadow: 0 10px 22px rgba(123,24,63,.18); }
.gh-mini-checkout .gh-icon { width: 15px; height: 15px; }
.gh-mini-view-cart { color: var(--gh-berry); border: 1px solid var(--gh-border); background: #fff; }
.gh-mini-cart-empty { margin: auto; padding: 35px; text-align: center; }
.gh-mini-cart-empty > span { width: 76px; height: 76px; margin: 0 auto 18px; display: grid; place-items: center; border-radius: 24px; color: var(--gh-berry); background: var(--gh-blush); }
.gh-mini-cart-empty > span .gh-icon { width: 38px; height: 38px; }
.gh-mini-cart-empty h3 { margin: 0 0 8px; font-size: 17px; }
.gh-mini-cart-empty p { margin: 0 0 18px; color: var(--gh-muted); font-size: 10px; line-height: 1.9; }
.gh-mini-cart-empty a { min-height: 45px; padding: 0 20px; display: inline-flex; align-items: center; border-radius: 12px; color: #fff; background: var(--gh-berry); text-decoration: none; font-size: 10px; font-weight: 900; }
.gh-side-cart-panel.is-syncing::before { content: ''; position: absolute; z-index: 6; top: 77px; right: 0; width: 34%; height: 3px; background: var(--gh-gold); animation: gh-cart-sync .8s ease-in-out infinite alternate; }
.gh-mini-cart-item.is-syncing { border-color: rgba(238,166,0,.55); }
.gh-mini-cart-item.is-removing { min-height: 0; max-height: 0; padding-top: 0 !important; padding-bottom: 0 !important; border-width: 0; opacity: 0; transform: translateX(-12px); pointer-events: none; }
@keyframes gh-cart-sync { from { transform: translateX(190%); } to { transform: translateX(-295%); } }

/* Stable two-column classic checkout. */
.gh-checkout-surface form.checkout { display: grid !important; grid-template-columns: minmax(0,1.15fr) minmax(350px,.85fr); gap: 0 26px; align-items: start; }
.gh-checkout-surface form.checkout > .woocommerce-NoticeGroup,
.gh-checkout-surface form.checkout > .woocommerce-error,
.gh-checkout-surface form.checkout > .woocommerce-message { grid-column: 1 / -1; }
.gh-checkout-surface #customer_details { width: 100% !important; grid-column: 1; grid-row: 1 / 3; }
.gh-checkout-surface #customer_details .col-1,
.gh-checkout-surface #customer_details .col-2 { width: 100% !important; float: none !important; }
.gh-checkout-surface #customer_details .col-2 { margin-top: 22px; }
.gh-checkout-surface #order_review_heading { width: 100% !important; grid-column: 2; grid-row: 1; float: none !important; }
.gh-checkout-surface #order_review { width: 100% !important; grid-column: 2; grid-row: 2; float: none !important; }
.gh-checkout-surface .woocommerce-billing-fields__field-wrapper { display: grid !important; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px 12px; }
.gh-checkout-surface .woocommerce-billing-fields__field-wrapper .form-row { width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; align-self: start; }
.gh-checkout-surface .woocommerce-billing-fields__field-wrapper .form-row-wide { grid-column: 1 / -1; }
.gh-checkout-surface #billing_country_field { display: none !important; }
.gh-checkout-surface .form-row label { min-height: 22px; margin: 0; display: flex; align-items: center; line-height: 1.5; }
.gh-checkout-surface .form-row .woocommerce-input-wrapper { width: 100%; display: block; }
.gh-checkout-surface .woocommerce form .form-row input.input-text,
.gh-checkout-surface .woocommerce form .form-row textarea,
.gh-checkout-surface .select2-container .select2-selection--single { width: 100%; min-height: 50px; box-sizing: border-box; margin: 0; }
.gh-checkout-surface .woocommerce form .form-row select { width: 100%; height: 50px !important; min-height: 50px !important; box-sizing: border-box; margin: 0; }
.gh-checkout-surface .select2-container { width: 100% !important; height: 50px !important; }
.gh-checkout-surface .select2-container .select2-selection--single { height: 50px !important; padding: 0 12px !important; }
.gh-checkout-surface .select2-container .select2-selection--single .select2-selection__rendered { padding: 0 !important; line-height: 48px !important; }
.gh-checkout-surface .select2-container .select2-selection--single .select2-selection__arrow { height: 48px !important; }
.gh-checkout-surface .woocommerce-additional-fields { padding-top: 0; }
.gh-checkout-surface .woocommerce-additional-fields textarea { min-height: 110px !important; resize: vertical; }

/* Friction-reduced classic checkout for Iran */
.gh-checkout-surface form.checkout { display: flow-root; }
.gh-checkout-surface .woocommerce-billing-fields > h3,
.gh-checkout-surface #order_review_heading { margin: 0 0 18px; padding-bottom: 13px; border-bottom: 1px solid var(--gh-border); color: var(--gh-berry-dark); font-size: 17px; }
.gh-checkout-surface .woocommerce-billing-fields__field-wrapper { display: flex; flex-wrap: wrap; gap: 2px 0; }
.gh-checkout-surface .form-row { box-sizing: border-box; }
.gh-checkout-surface .form-row-first, .gh-checkout-surface .form-row-last { width: 50% !important; }
.gh-checkout-surface .form-row-wide { width: 100% !important; }
.gh-checkout-surface .woocommerce-additional-fields { clear: both; padding-top: 12px; }
.gh-checkout-surface .woocommerce-additional-fields h3 { font-size: 14px; }
.gh-checkout-surface #order_review { position: sticky; top: 18px; }
.gh-checkout-surface .woocommerce-checkout-review-order-table { background: #fff; }
.gh-checkout-surface .woocommerce-checkout-payment { border: 1px solid var(--gh-border); border-radius: 14px; background: #fff !important; }
.gh-checkout-surface .woocommerce-checkout-payment ul.payment_methods { border-bottom-color: var(--gh-border) !important; }
.gh-checkout-surface #place_order { width: 100%; min-height: 54px; display: flex; align-items: center; justify-content: center; border: 0; border-radius: 12px; color: #fff; background: linear-gradient(135deg,var(--gh-berry),#a23860); box-shadow: 0 12px 25px rgba(123,24,63,.18); font-size: 11px; font-weight: 900; }
.gh-checkout-surface .optional { color: #a28c95; font-size: 8px; }

@media (max-width: 650px) {
  body.gh-inner-body { padding-bottom: calc(72px + env(safe-area-inset-bottom)); }
  .gh-mobile-dock { height: calc(64px + env(safe-area-inset-bottom)); padding-bottom: env(safe-area-inset-bottom); border-radius: 18px 18px 0 0; background: rgba(255,255,255,.94); backdrop-filter: blur(16px); box-shadow: 0 -10px 30px rgba(73,20,43,.12); }
  .gh-mobile-dock a { min-height: 58px; }
  .gh-mobile-dock span { width: 31px; height: 27px; display: grid; place-items: center; border-radius: 10px; }
  body.page-id-57 .gh-mobile-dock a:nth-child(1), body.post-type-archive-product .gh-mobile-dock a:nth-child(2), body.single-product .gh-mobile-dock a:nth-child(2), body.woocommerce-cart .gh-mobile-dock a:nth-child(3), body.woocommerce-account .gh-mobile-dock a:nth-child(4) { color: var(--gh-berry); font-weight: 900; }
  body.page-id-57 .gh-mobile-dock a:nth-child(1) span, body.post-type-archive-product .gh-mobile-dock a:nth-child(2) span, body.single-product .gh-mobile-dock a:nth-child(2) span, body.woocommerce-cart .gh-mobile-dock a:nth-child(3) span, body.woocommerce-account .gh-mobile-dock a:nth-child(4) span { color: #fff; background: var(--gh-berry); }
  .gh-side-cart-panel { width: min(340px,90vw); }
  .gh-checkout-surface form.checkout { display: block !important; }
  .gh-checkout-surface .woocommerce-checkout .col2-set, .gh-checkout-surface .woocommerce-checkout #order_review_heading, .gh-checkout-surface .woocommerce-checkout #order_review { width: 100% !important; float: none !important; }
  .gh-checkout-surface .woocommerce-billing-fields__field-wrapper { grid-template-columns: 1fr; gap: 12px; }
  .gh-checkout-surface .woocommerce-billing-fields__field-wrapper .form-row { grid-column: 1 !important; }
  .gh-checkout-surface #customer_details .col-2 { margin-top: 18px; }
  .gh-checkout-surface #order_review_heading { margin-top: 24px; }
  .gh-checkout-surface #order_review {
    width: calc(100vw - 28px) !important;
    max-width: calc(100vw - 28px) !important;
    min-width: 0 !important;
    position: static;
    padding: 14px;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }
  .gh-checkout-surface #order_review,
  .gh-checkout-surface .woocommerce-checkout-review-order-table,
  .gh-checkout-surface .woocommerce-checkout-payment,
  .gh-checkout-surface .payment_method_custom_bacs,
  .gh-checkout-surface .payment_method_custom_bacs .payment_box,
  .gh-checkout-surface #wc-custom_bacs-form.gh-bacs-form {
    width: min(100%, calc(100vw - 92px)) !important;
    max-width: min(100%, calc(100vw - 92px)) !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
    overflow-x: hidden;
  }
  .woocommerce-checkout .payment_method_custom_bacs .gh-bacs-account-card {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
  .woocommerce-checkout .gh-bacs-amount-card {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
  }
  .woocommerce-checkout .gh-bacs-amount-card strong {
    text-align: center;
  }
  .woocommerce-checkout .payment_method_custom_bacs .gh-bacs-account-row {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
  }
  .woocommerce-checkout .payment_method_custom_bacs .gh-bacs-account-row span {
    flex-basis: 100%;
    text-align: center;
  }
  .woocommerce-checkout .payment_method_custom_bacs .gh-bacs-account-row button.button {
    width: 100%;
  }
  .gh-checkout-surface .form-row-first, .gh-checkout-surface .form-row-last { width: 100% !important; float: none !important; }
  .gh-checkout-surface .woocommerce form .form-row input.input-text, .gh-checkout-surface .select2-container--default .select2-selection--single { min-height: 49px; font-size: 12px; }
  .gh-checkout-surface .woocommerce-billing-fields > h3 { margin-top: 2px; }
  body.woocommerce-checkout { padding-bottom: 0 !important; }
  body.woocommerce-checkout .gh-mobile-dock { display: none !important; }
}

@media (max-width: 420px) {
  .gh-side-cart-panel { width: 90vw; }
  .gh-mini-cart-item { grid-template-columns: 28px minmax(0,1fr) 72px; }
  .gh-mini-cart-image img { width: 72px !important; height: 72px !important; }
  .gh-mini-cart-actions { grid-template-columns: 1fr; }
  .gh-mini-view-cart { min-height: 42px !important; }
}

/* Yedak-inspired storefront surfaces for Yedak Filter. */
body.gh-inner-body,
.gh-commerce-page,
.gh-single-product-page {
  background: #f7f8fa;
}
.gh-site-announcement b,
.gh-shop-hero .gh-page-kicker,
.gh-category-pills a.is-active small {
  color: var(--gh-yellow);
}
.gh-site-header {
  box-shadow: 0 10px 26px rgba(17,24,32,.06);
}
.gh-site-nav {
  border-top-color: #dfe2ec;
}
.gh-site-nav a { color: var(--gh-ink); }
.gh-site-nav .gh-nav-all {
  color: var(--gh-yellow);
  background: var(--gh-berry-dark);
}
.gh-site-nav .gh-nav-sale,
.gh-page-kicker,
.gh-story-grid > div:first-child > span,
.gh-contact-form-title > span,
.gh-post-card small,
.gh-article-head small {
  color: var(--gh-rose);
}
.gh-page-hero,
.gh-commerce-hero {
  background:
    linear-gradient(135deg, rgba(242,170,0,.16) 0 11%, transparent 11% 24%, rgba(242,170,0,.11) 24% 34%, transparent 34%),
    linear-gradient(135deg,#ffffff,#f4f5fb);
}
.gh-shop-hero {
  background:
    linear-gradient(135deg, rgba(242,170,0,.09) 0 8%, transparent 8% 18%, rgba(242,170,0,.08) 18% 28%, transparent 28%),
    linear-gradient(120deg,#111820 0%,#1f2a35 70%,#303b45 100%);
}
.gh-shop-hero .gh-page-kicker,
.gh-shop-hero p,
.gh-filter-help p {
  color: #e6e9ff;
}
.gh-shop-hero-trust span,
.gh-shop-hero-art {
  border-radius: 8px;
  border-color: rgba(242,170,0,.24);
  background: rgba(255,255,255,.08);
}
.gh-shop-hero-art > span,
.gh-shop-hero-art b {
  color: var(--gh-yellow);
  text-shadow: 0 14px 28px rgba(0,0,0,.18);
}
.gh-category-pills a,
.gh-filter-card,
.gh-shop-toolbar,
.gh-single-product-page div.product,
.gh-single-product-page .woocommerce-product-gallery__wrapper,
.gh-single-product-page .flex-control-thumbs img,
.gh-single-product-page form.cart,
.gh-single-product-page .product_meta,
.gh-single-promises > div,
.gh-payment-note,
.gh-single-product-page .woocommerce-tabs ul.tabs,
.gh-single-product-page .woocommerce-Tabs-panel,
.gh-page-card,
.gh-story-stat,
.gh-about-band,
.gh-value-grid > div,
.gh-step-grid > div,
.gh-contact-info > div,
.gh-contact-note,
.gh-contact-form,
.woocommerce table.shop_table,
.woocommerce .cart-collaterals .cart_totals,
.woocommerce-checkout #order_review,
.woocommerce-account .woocommerce-MyAccount-content,
.woocommerce-account .woocommerce-MyAccount-navigation ul,
.woocommerce-info,
.woocommerce-message,
.woocommerce-error,
.gh-post-card,
.gh-empty-state,
.gh-404,
.gh-article-image img,
.gh-article-content,
.gh-side-cart-panel,
.gh-mini-cart-item,
.gh-mini-cart-empty > span {
  border-radius: 8px;
}
.gh-category-pills a:hover,
.woocommerce ul.products li.product.gh-product-card:hover {
  border-color: var(--gh-yellow);
  box-shadow: 0 18px 40px rgba(17,24,32,.11);
}
.gh-category-pills a.is-active,
.gh-toolbar-title > span,
.gh-filter-help,
.gh-step-grid b,
.gh-about-band > span,
.gh-cart-action b,
.gh-check-row input:checked + i,
.gh-mobile-dock b,
body.page-id-57 .gh-mobile-dock a:nth-child(1) span,
body.post-type-archive-product .gh-mobile-dock a:nth-child(2) span,
body.single-product .gh-mobile-dock a:nth-child(2) span,
body.woocommerce-cart .gh-mobile-dock a:nth-child(3) span,
body.woocommerce-account .gh-mobile-dock a:nth-child(4) span {
  color: var(--gh-yellow);
  background: var(--gh-berry-dark);
}
.gh-category-pills span,
.gh-filter-card h3 > span,
.gh-filter-close,
.gh-mini-cart-empty > span,
.gh-mobile-dock span {
  color: var(--gh-berry-dark);
  background: var(--gh-blush);
}
.gh-filter-search input,
.gh-price-inputs input,
.gh-rating-filter select,
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.select2-container--default .select2-selection--single,
.gh-contact-form input,
.gh-contact-form select,
.gh-contact-form textarea,
.gh-mini-quantity {
  border-color: #dfe2ec;
  border-radius: 8px;
  background: #fff;
}
.gh-filter-search input:focus,
.gh-contact-form input:focus,
.gh-contact-form textarea:focus,
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus {
  border-color: var(--gh-yellow);
  box-shadow: 0 0 0 3px rgba(242,170,0,.2);
}
.gh-apply-filters,
.woocommerce button.button,
.woocommerce a.button,
.woocommerce input.button,
.wc-block-components-button,
.gh-single-product-page form.cart .single_add_to_cart_button,
.woocommerce div.product form.cart button.single_add_to_cart_button,
.woocommerce ul.products li.product.gh-product-card a.gh-card-cart,
.woocommerce ul.products li.product.gh-product-card a.button.gh-card-cart,
.gh-side-cart-icon,
.gh-mini-checkout,
.gh-checkout-surface #place_order {
  color: var(--gh-yellow) !important;
  background: linear-gradient(135deg,#111820,#1f2a35) !important;
  box-shadow: 0 12px 25px rgba(17,24,32,.18);
}
.gh-quote-button,
.woocommerce ul.products li.product.gh-product-card a.gh-quote-button {
  color: var(--gh-berry-dark) !important;
  background: var(--gh-yellow) !important;
}
.gh-active-filters,
.gh-quote-note,
.woocommerce table.shop_table th,
.woocommerce .cart-collaterals .cart_totals,
.woocommerce-checkout #order_review,
.gh-side-cart-panel,
.gh-side-cart-panel > header,
.gh-mini-cart-footer {
  background: #fff;
}
.gh-single-product-page form.cart,
.woocommerce table.shop_attributes th,
.gh-account-benefits,
.gh-secure-strip,
.gh-commerce-intro,
.gh-filter-category-list a:hover,
.gh-filter-category-list a.is-active,
.gh-mini-remove {
  background: #fff7d1;
}
.gh-active-filters {
  border-color: var(--gh-yellow);
}
.gh-site-footer {
  color: #d8dbef;
  background:
    linear-gradient(135deg, rgba(242,170,0,.08) 0 8%, transparent 8% 18%, rgba(242,170,0,.07) 18% 26%, transparent 26%),
    linear-gradient(135deg,#111820,#1f2a35);
}
.gh-site-footer p,
.gh-site-footer > .gh-footer-grid > div > a,
.gh-socials a,
.gh-trust-badges span {
  color: #d8dbef;
}
.gh-footer-copy {
  color: #adb2dc;
  border-top-color: rgba(255,255,255,.14);
}
.gh-side-cart-backdrop,
.gh-filter-backdrop {
  background: rgba(17,24,32,.54);
}

/* Minimal single product layout. */
body.single-product .gh-single-product-page {
  background: #fff;
}
body.single-product .gh-single-product-page .gh-breadcrumb {
  margin-block: 10px 18px !important;
  color: #7a8088;
  font-size: 10px;
}
body.single-product .gh-single-product-page div.product {
  gap: 34px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
body.single-product .gh-single-product-page div.product > .summary {
  padding: 0;
}
body.single-product .gh-single-product-page .woocommerce-product-gallery__wrapper {
  border: 1px solid #edf0f3;
  border-radius: 8px;
  background: #fff;
  box-shadow: none;
}
body.single-product .gh-single-product-page .woocommerce-product-gallery__image img {
  padding: 14px;
}
body.single-product .gh-product-confidence,
body.single-product .gh-fit-assurance,
body.single-product .gh-single-promises,
body.single-product .woocommerce-product-rating {
  display: none !important;
}
body.single-product .gh-single-product-page .summary .product_title {
  margin: 0 0 8px;
  color: #111820;
  font-size: clamp(18px, 1.55vw, 24px) !important;
  line-height: 1.75;
  font-weight: 800;
}
body.single-product .gh-single-product-page .summary .price {
  margin: 12px 0 !important;
  padding: 12px 0;
  border: 0;
  border-block: 1px solid #edf0f3;
  border-radius: 0;
  color: #111820 !important;
  background: transparent;
  font-size: 20px !important;
  box-shadow: none;
}
body.single-product .gh-single-product-page .woocommerce-product-details__short-description {
  color: #555e68;
  font-size: 11px;
  line-height: 2;
}
body.single-product .gh-single-product-page form.cart {
  margin: 14px 0 !important;
  padding: 10px;
  border: 1px solid #edf0f3;
  border-radius: 8px;
  background: #fff;
}
body.single-product .gh-single-product-page form.cart .single_add_to_cart_button,
body.single-product.woocommerce div.product form.cart button.single_add_to_cart_button {
  color: var(--gh-yellow) !important;
  background: #111820 !important;
  box-shadow: none;
}
body.single-product .gh-product-call {
  min-height: 50px;
  margin-top: 8px;
  padding: 8px 10px;
  border: 1px solid #edf0f3;
  color: #111820;
  background: #fff;
}
body.single-product .gh-product-call > span {
  color: #111820;
  background: #f7f8fa;
}
body.single-product .gh-product-call small {
  color: #737b84;
}
body.single-product .gh-product-call > .gh-icon {
  color: #9aa1aa;
}
body.single-product .gh-single-product-page .product_meta {
  margin-top: 12px;
  padding: 10px 0 0;
  border: 0;
  border-top: 1px solid #edf0f3;
  border-radius: 0;
  background: transparent;
}
body.single-product .gh-single-product-page div.product > .woocommerce-tabs {
  margin-top: 28px;
}
body.single-product .gh-single-product-page .woocommerce-tabs ul.tabs {
  padding: 0 !important;
  border: 0;
  border-bottom: 1px solid #edf0f3;
  border-radius: 0;
  background: transparent;
}
body.single-product .gh-single-product-page .woocommerce-tabs ul.tabs li a {
  border-radius: 0;
}
body.single-product .gh-single-product-page .woocommerce-Tabs-panel {
  padding: 18px 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

@media (max-width: 767px) {
  body.single-product .gh-single-product-page div.product {
    padding: 0;
  }
  body.single-product .gh-single-product-page div.product > .summary {
    margin-top: 16px !important;
  }
  body.single-product .gh-single-product-page .summary .product_title {
    font-size: 18px !important;
    line-height: 1.8;
  }
  body.single-product .gh-single-product-page .summary .price {
    font-size: 18px !important;
  }
}
.gh-free-shipping-progress > i > b {
  background: linear-gradient(90deg,var(--gh-yellow),var(--gh-rose));
}

@media (max-width: 650px) {
  .gh-mobile-dock {
    border-radius: 0;
    box-shadow: 0 -10px 30px rgba(17,24,32,.12);
  }
}

@media (max-width: 720px) {
  .gh-shell {
    width: calc(100% - 28px);
    max-width: calc(100% - 28px);
  }
  .gh-site-header-row {
    min-width: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    overflow: hidden;
  }
  .gh-site-header .gh-menu-toggle {
    display: grid !important;
    flex: 0 0 40px;
  }
  .gh-site-header .gh-brand {
    min-width: 0;
    flex: 1 1 140px;
    justify-content: flex-end;
    overflow: hidden;
  }
  .gh-site-header .fl-logo-viewport {
    width: 76px;
    height: 76px;
    flex: 0 0 76px;
  }
  .gh-site-header .fl-logo {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }
  .gh-site-header .gh-actions {
    flex: 0 0 auto;
  }
  .gh-site-header .gh-search {
    order: 3;
    flex: 0 0 100%;
    min-width: 0;
    margin: 0 0 12px;
  }
  .gh-shop-hero,
  .gh-shop-hero-inner,
  .gh-shop-hero p,
  .gh-shop-hero h1,
  .gh-shop-hero-trust {
    max-width: 100%;
    box-sizing: border-box;
  }
  .gh-shop-hero {
    overflow: hidden;
  }
  .gh-shop-hero h1 {
    font-size: 30px;
    text-align: center;
    overflow-wrap: anywhere;
  }
  .gh-shop-hero p { text-align: center; }
  .gh-shop-hero .gh-page-kicker,
  .gh-shop-hero p,
  .gh-shop-hero-trust {
    display: none;
  }
  .gh-shop-hero-inner,
  .gh-category-pills,
  .gh-store-layout,
  .gh-shop-toolbar,
  .gh-shop-results {
    width: calc(100vw - 28px) !important;
    max-width: calc(100vw - 28px) !important;
    margin-inline: auto !important;
  }
  .gh-shop-hero-trust span {
    flex: 1 1 100%;
    min-width: 0;
    text-align: center;
  }
  .gh-shop-hero-trust {
    display: grid;
    grid-template-columns: 1fr;
  }
  .gh-category-pills {
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    overflow: visible !important;
    scroll-snap-type: none !important;
  }
  .gh-category-pills a {
    width: 100%;
    box-sizing: border-box;
    min-width: 0;
    min-height: 82px;
    display: grid;
    grid-template-columns: 50px minmax(0,1fr);
    grid-template-rows: auto auto;
    align-content: center;
    justify-content: initial;
    text-align: right;
    scroll-snap-align: none;
  }
  .gh-category-pills a > span {
    grid-row: 1 / 3;
  }
  .gh-category-pills a strong {
    min-width: 0;
    white-space: normal;
    line-height: 1.6;
  }
  .gh-category-pills small {
    margin-right: 0;
    justify-self: start;
  }
  .gh-shop-toolbar,
  .gh-store-layout,
  .woocommerce ul.products,
  .gh-shop-results .woocommerce ul.products,
  .gh-shop-results ul.products {
    max-width: 100%;
  }
  .gh-shop-toolbar {
    box-sizing: border-box;
  }
  .gh-site-header .gh-cart-action b {
    width: 14px;
    min-width: 14px;
    height: 14px;
    position: absolute;
    top: 2px;
    inset-inline-end: 2px;
    font-size: 7px;
  }
}

@media (max-width: 480px) {
  .gh-category-pills {
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  }
  .gh-shop-hero-trust span {
    flex-basis: 100%;
  }
}

@media (max-width: 650px) {
  .gh-site-nav .gh-shell {
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 6px;
  }
  .gh-site-nav a {
    min-width: 0;
    min-height: 40px;
    border: 1px solid var(--gh-border);
    border-radius: 8px;
    white-space: normal;
    line-height: 1.55;
  }
}

@media (max-width: 720px) {
  .gh-shop-hero-art {
    width: 118px;
    height: 118px;
    margin: 14px auto 0;
    display: grid;
    border: 0;
    background: transparent;
    box-shadow: none;
  }
  .gh-shop-hero-art > img { width: 112px; height: 112px; }
  .gh-shop-hero-art i,
  .gh-shop-hero-art b { display: none; }
}

/* Mobile store navigation: compact app controls with modal category picker. */
.gh-category-drawer-head,
.gh-category-menu-toggle,
.gh-category-backdrop {
  display: none;
}

@media (max-width: 720px) {
  .gh-shop-page {
    padding-bottom: 34px;
  }
  .gh-shop-hero {
    min-height: 0;
    padding: 16px 0;
  }
  .gh-shop-hero-inner {
    min-height: 82px;
    display: grid;
    grid-template-columns: minmax(0,1fr) 72px;
    gap: 14px;
    align-items: center;
  }
  .gh-shop-hero h1 {
    margin: 0;
    font-size: 24px;
    line-height: 1.45;
    text-align: right;
  }
  .gh-shop-hero .gh-shop-hero-trust {
    display: none !important;
  }
  .gh-shop-hero-art {
    width: 72px;
    height: 72px;
    margin: 0;
  }
  .gh-shop-hero-art > img {
    width: 70px;
    height: 70px;
  }
  .gh-shop-page > .gh-shell > .woocommerce-breadcrumb {
    display: none;
  }
  .gh-category-pills {
    width: min(430px,100%) !important;
    max-width: 100% !important;
    max-height: min(78dvh,680px);
    margin: 0 !important;
    padding: 14px 14px calc(18px + env(safe-area-inset-bottom));
    box-sizing: border-box;
    position: fixed;
    z-index: 1102;
    right: 0;
    bottom: 0;
    left: 0;
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    gap: 8px;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
    visibility: hidden;
    border-radius: 8px 8px 0 0;
    background: #f7f8fa;
    box-shadow: 0 -24px 60px rgba(17,24,32,.2);
    transform: translateY(104%);
    transition: transform .24s ease, visibility 0s linear .24s;
  }
  .gh-category-pills.is-open {
    visibility: visible;
    transform: translateY(0);
    transition-delay: 0s;
  }
  .gh-category-drawer-head {
    min-height: 54px;
    margin: -14px -14px 6px;
    padding: 12px 14px;
    box-sizing: border-box;
    position: sticky;
    z-index: 2;
    top: -14px;
    grid-column: 1 / -1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    border-bottom: 1px solid var(--gh-border);
    background: rgba(255,255,255,.98);
  }
  .gh-category-drawer-head > div {
    min-width: 0;
    display: grid;
    gap: 2px;
  }
  .gh-category-drawer-head strong {
    font-size: 13px;
  }
  .gh-category-drawer-head small {
    color: var(--gh-muted);
    font-size: 8px;
  }
  .gh-category-menu-close {
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    display: grid;
    place-items: center;
    border: 0;
    border-radius: 8px;
    color: var(--gh-berry-dark);
    background: var(--gh-blush);
  }
  .gh-category-menu-close .gh-icon {
    width: 18px;
    height: 18px;
  }
  .gh-category-pills a {
    width: 100%;
    min-width: 0;
    min-height: 72px;
    padding: 8px;
    box-sizing: border-box;
    grid-template-columns: 46px minmax(0,1fr);
    grid-template-rows: auto auto;
    align-content: center;
    gap: 1px 7px;
    text-align: right;
  }
  .gh-category-pills a > span {
    width: 46px;
    height: 46px;
    padding: 3px;
    grid-row: 1 / 3;
  }
  .gh-category-pills a strong {
    font-size: 9px;
    line-height: 1.55;
  }
  .gh-category-pills a small {
    margin: 0;
    justify-self: start;
    font-size: 7px;
  }
  .gh-category-pill-all .gh-icon {
    width: 24px;
    height: 24px;
  }
  .gh-category-backdrop {
    position: fixed;
    z-index: 1101;
    inset: 0;
    border: 0;
    background: rgba(17,24,32,.56);
    opacity: 0;
    pointer-events: none;
    transition: opacity .24s ease;
  }
  body.gh-category-visible .gh-category-backdrop {
    display: block;
    opacity: 1;
    pointer-events: auto;
  }
  body.gh-category-visible {
    overflow: hidden;
  }
  .gh-mobile-filter-bar {
    margin: 12px 0;
    display: grid;
    grid-template-columns: minmax(0,1.35fr) minmax(0,1fr);
    gap: 8px;
  }
  .gh-category-menu-toggle {
    min-width: 0;
    min-height: 54px;
    padding: 7px 10px;
    display: grid;
    grid-template-columns: 34px minmax(0,1fr) 16px;
    align-items: center;
    gap: 7px;
    border: 1px solid var(--gh-border);
    border-radius: 8px;
    color: var(--gh-ink);
    background: #fff;
    text-align: right;
  }
  .gh-category-menu-toggle > span:first-child {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border-radius: 8px;
    color: var(--gh-yellow);
    background: var(--gh-berry-dark);
  }
  .gh-category-menu-toggle > span:nth-child(2) {
    min-width: 0;
    display: grid;
    gap: 1px;
  }
  .gh-category-menu-toggle small {
    color: var(--gh-muted);
    font-size: 7px;
  }
  .gh-category-menu-toggle strong {
    overflow: hidden;
    font-size: 9px;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .gh-category-menu-toggle .gh-icon {
    width: 17px;
    height: 17px;
  }
  .gh-filter-open {
    width: 100%;
    min-width: 0;
    min-height: 54px;
    padding: 0 9px;
    justify-content: center;
    border-radius: 8px;
    color: var(--gh-yellow);
    border-color: var(--gh-berry-dark);
    background: var(--gh-berry-dark);
    white-space: nowrap;
  }
  .gh-filter-open b {
    color: var(--gh-berry-dark);
    background: var(--gh-yellow);
  }
  .gh-mobile-result-count {
    grid-column: 1 / -1;
    color: var(--gh-muted);
    font-size: 8px;
    text-align: right;
  }
  .gh-shop-toolbar {
    min-height: 54px;
    padding: 6px 8px;
    display: block;
  }
  .gh-shop-toolbar .gh-toolbar-title {
    display: none;
  }
  .gh-shop-toolbar .woocommerce-ordering,
  .gh-shop-toolbar select {
    width: 100%;
    min-width: 0;
  }
  .gh-shop-toolbar select {
    height: 40px;
    border-radius: 8px;
    font-size: 9px;
  }
  .gh-shop-results .woocommerce ul.products,
  .gh-shop-results ul.products {
    margin-top: 10px !important;
  }
  .gh-category-menu-toggle:active,
  .gh-filter-open:active,
  .gh-category-pills a:active {
    transform: scale(.98);
  }
}

@media (prefers-reduced-motion: reduce) {
  .gh-category-pills,
  .gh-category-backdrop {
    transition: none;
  }
}

.gh-cart-empty-custom {
  min-height: 330px;
  padding: 35px 18px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.gh-cart-empty-custom > span {
  width: 72px;
  height: 72px;
  display: grid;
  place-items: center;
  border-radius: 8px;
  color: var(--gh-yellow);
  background: var(--gh-berry-dark);
}
.gh-cart-empty-custom > span .gh-icon {
  width: 34px;
  height: 34px;
}
.gh-cart-empty-custom h2 {
  margin: 20px 0 7px;
  font-size: 24px;
}
.gh-cart-empty-custom p {
  max-width: 520px;
  margin: 0;
  color: var(--gh-muted);
  font-size: 11px;
  line-height: 2;
}
.gh-cart-empty-custom > div {
  margin-top: 20px;
  display: flex;
  gap: 8px;
}
.gh-cart-empty-custom .gh-btn {
  min-height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
}
.gh-cart-empty-custom .gh-btn .gh-icon {
  width: 17px;
  height: 17px;
}
.gh-contact-info a {
  color: var(--gh-berry-dark);
  font-weight: 900;
  text-decoration: none;
}

@media (max-width: 650px) {
  .gh-cart-empty-custom {
    min-height: 300px;
    padding: 28px 14px;
  }
  .gh-cart-empty-custom h2 {
    font-size: 21px;
  }
  .gh-cart-empty-custom > div {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr;
  }
  .gh-cart-empty-custom .gh-btn {
    width: 100%;
    box-sizing: border-box;
  }
  .gh-contact-page .gh-page-card {
    padding: 14px;
  }
  .gh-contact-page .gh-contact-info {
    gap: 8px;
  }
  .gh-contact-page .gh-contact-info > div {
    padding: 17px;
  }
  .gh-contact-page .gh-contact-note {
    align-items: flex-start;
  }
  .gh-contact-page .gh-contact-form-title {
    margin-top: 26px;
  }
  .gh-contact-page .gh-contact-form {
    width: 100%;
    max-width: 100%;
    margin-top: 14px;
    padding: 14px;
    box-sizing: border-box;
    gap: 12px;
  }
  .gh-contact-page .gh-contact-form label,
  .gh-contact-page .gh-contact-form input,
  .gh-contact-page .gh-contact-form select,
  .gh-contact-page .gh-contact-form textarea {
    min-width: 0;
    max-width: 100%;
  }
  .gh-contact-page .gh-contact-form button {
    width: 100%;
    min-height: 48px;
  }
}

/* Final cascade locks for the conversion CTA and centered mobile header. */
.gh-single-product-page form.cart .single_add_to_cart_button,
.woocommerce div.product form.cart button.single_add_to_cart_button {
  color: var(--gh-berry-dark) !important;
  background: var(--gh-yellow) !important;
  box-shadow: 0 14px 28px rgba(17,24,32,.16) !important;
}

@media (max-width: 720px) {
  .gh-site-header {
    position: relative;
    background: rgba(255,255,255,.9);
    backdrop-filter: blur(18px) saturate(1.2);
  }
  .gh-site-header .gh-site-header-row {
    min-height: 146px;
    position: relative;
    display: grid !important;
    grid-template-columns: 84px minmax(0,1fr) 84px;
    grid-template-rows: 82px 48px;
    gap: 8px 0;
    overflow: visible;
  }
  .gh-site-header .gh-menu-toggle {
    width: 44px;
    height: 44px;
    margin: 0;
    grid-column: 1;
    grid-row: 1;
    justify-self: start;
    align-self: center;
    flex: none;
    border: 1px solid rgba(17,24,32,.1);
    border-radius: 8px;
    color: var(--gh-berry-dark);
    background: rgba(255,255,255,.72);
    box-shadow: 0 8px 24px rgba(17,24,32,.09), inset 0 1px 0 rgba(255,255,255,.9);
    backdrop-filter: blur(14px);
  }
  .gh-site-header .gh-menu-toggle[aria-expanded="true"] {
    color: var(--gh-yellow);
    border-color: var(--gh-berry-dark);
    background: rgba(17,24,32,.94);
  }
  .gh-site-header .gh-brand {
    width: 86px;
    height: 82px;
    min-width: 0;
    position: absolute;
    z-index: 2;
    top: 0;
    left: 50%;
    display: grid;
    place-items: center;
    overflow: visible;
    transform: translateX(-50%);
  }
  .gh-site-header .fl-logo-viewport {
    width: 82px;
    height: 82px;
    flex: 0 0 82px;
  }
  .gh-site-header .gh-actions {
    margin: 0;
    grid-column: 3;
    grid-row: 1;
    justify-self: end;
    align-self: center;
    flex: none;
  }
  .gh-site-header .gh-search {
    width: 100%;
    min-width: 0;
    margin: 0;
    grid-column: 1 / -1;
    grid-row: 2;
    order: initial;
    flex: none;
  }
  .gh-site-header .gh-search input {
    height: 48px;
    border-radius: 8px;
    background: rgba(247,248,250,.88);
  }
  .gh-site-nav.is-open {
    width: calc(100% - 28px);
    max-width: 430px;
    position: absolute;
    z-index: 1200;
    top: calc(100% - 2px);
    right: 14px;
    display: block;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.72);
    border-radius: 8px;
    background: rgba(247,248,250,.9);
    box-shadow: 0 26px 70px rgba(17,24,32,.24);
    backdrop-filter: blur(24px) saturate(1.3);
  }
  .gh-site-nav.is-open .gh-shell {
    width: 100%;
    max-width: 100%;
    max-height: calc(100dvh - 210px);
    padding: 10px;
    box-sizing: border-box;
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 7px;
    overflow-y: auto;
  }
  .gh-site-nav.is-open a {
    min-width: 0;
    min-height: 62px;
    padding: 7px;
    display: grid;
    grid-template-columns: 39px minmax(0,1fr);
    justify-content: initial;
    gap: 7px;
    border: 1px solid rgba(17,24,32,.08);
    border-radius: 8px;
    background: rgba(255,255,255,.86);
    text-align: right;
    white-space: normal;
  }
  .gh-site-nav.is-open .gh-nav-icon {
    width: 39px;
    height: 39px;
    padding: 4px;
  }
  .gh-site-nav.is-open .gh-nav-label {
    align-self: center;
    font-size: 9px;
    line-height: 1.55;
  }
  .gh-site-nav.is-open .gh-nav-all {
    color: var(--gh-yellow);
    border-color: var(--gh-berry-dark);
    background: rgba(17,24,32,.96);
  }
  .gh-site-nav.is-open .gh-nav-sale {
    color: var(--gh-berry-dark);
    border-color: rgba(242,170,0,.5);
    background: #fff8d8;
  }
}

/* Expanded category mega menu and quick messenger access. */
@media (min-width: 1101px) {
  .gh-site-nav {
    border-top: 1px solid #e7e9ee;
    border-bottom: 1px solid #e1e4e9;
    background: #fff;
    box-shadow: 0 14px 28px rgba(17,24,32,.05);
  }
  .gh-site-nav .gh-shell {
    min-height: 154px;
    padding-block: 10px;
    grid-template-columns: repeat(8,minmax(0,1fr));
    gap: 8px;
  }
  .gh-site-nav a {
    min-width: 0;
    min-height: 62px;
    padding: 7px 6px;
    box-sizing: border-box;
    display: grid;
    grid-template-columns: 46px minmax(0,1fr);
    justify-content: initial;
    gap: 8px;
    border: 1px solid transparent;
    border-radius: 8px;
    background: #fff;
    text-align: right;
    white-space: normal;
    transition: border-color .2s ease, background-color .2s ease, transform .2s ease;
  }
  .gh-site-nav a:hover {
    transform: translateY(-2px);
    border-color: rgba(242,170,0,.45);
    background: #fffaf0;
  }
  .gh-site-nav .gh-nav-icon {
    width: 46px;
    height: 46px;
    padding: 5px;
    flex: 0 0 46px;
    border: 1px solid rgba(242,170,0,.2);
    border-radius: 8px;
  }
  .gh-site-nav .gh-nav-category-icon {
    padding: 2px;
  }
  .gh-site-nav .gh-nav-label {
    align-self: center;
    overflow: visible;
    font-size: 10px;
    line-height: 1.55;
    text-overflow: clip;
  }
  .gh-site-nav .gh-nav-all {
    padding: 7px 6px;
    border-color: var(--gh-berry-dark);
    border-radius: 8px;
  }
  .gh-site-nav .gh-nav-sale {
    border-color: rgba(242,170,0,.35);
    background: #fff8dc;
  }
}

.gh-floating-socials {
  position: fixed;
  z-index: 96;
  left: 14px;
  top: 52%;
  display: grid;
  gap: 8px;
  transform: translateY(-50%);
}
.gh-floating-social {
  width: 48px;
  height: 48px;
  position: relative;
  display: grid;
  place-items: center;
  box-sizing: border-box;
  border: 2px solid rgba(255,255,255,.9);
  border-radius: 50%;
  color: #fff;
  box-shadow: 0 10px 24px rgba(17,24,32,.2);
  text-decoration: none;
  transition: transform .2s ease, box-shadow .2s ease;
}
.gh-floating-social:hover {
  color: #fff;
  transform: translateX(3px) scale(1.06);
  box-shadow: 0 14px 30px rgba(17,24,32,.26);
}
.gh-floating-social::after {
  content: attr(data-label);
  min-width: max-content;
  position: absolute;
  left: calc(100% + 8px);
  top: 50%;
  padding: 6px 9px;
  border-radius: 6px;
  color: #fff;
  background: #111820;
  font-size: 9px;
  line-height: 1;
  opacity: 0;
  pointer-events: none;
  transform: translateY(-50%) translateX(-4px);
  transition: opacity .2s ease, transform .2s ease;
}
.gh-floating-social:hover::after,
.gh-floating-social:focus-visible::after {
  opacity: 1;
  transform: translateY(-50%) translateX(0);
}
.gh-floating-social svg {
  width: 24px;
  height: 24px;
  fill: currentColor;
}
.gh-floating-whatsapp { background: #20ad5a; }
.gh-floating-telegram { background: #168acb; }
.gh-floating-bale { color: #111820; background: var(--gh-yellow); }
.gh-floating-bale span { font-size: 11px; font-weight: 900; }

@media (max-width: 720px) {
  .gh-floating-socials {
    left: 8px;
    top: auto;
    bottom: 82px;
    gap: 6px;
    transform: none;
  }
  .gh-floating-social {
    width: 42px;
    height: 42px;
  }
  .gh-floating-social svg {
    width: 21px;
    height: 21px;
  }
  .gh-floating-social::after {
    display: none;
  }
  body.gh-menu-open .gh-floating-socials,
  body:has(.gh-site-nav.is-open) .gh-floating-socials,
  body.gh-side-cart-open .gh-floating-socials,
  body.gh-filter-open .gh-floating-socials {
    opacity: 0;
    pointer-events: none;
  }
}

/* Brand archive and single-brand card must win the mobile store cascade. */
@media (min-width: 981px) {
  .gh-shop-hero-art.is-vehicle {
    width: 100%;
    max-width: 330px;
    min-height: 210px;
    padding: 12px;
    justify-self: start;
    background: var(--gh-yellow);
  }
  .gh-shop-hero-art.is-vehicle img {
    width: 100%;
    height: 186px;
    padding: 26px;
    background: transparent;
  }
  .gh-shop-hero-art.is-vehicle b { display: none; }
}

@media (max-width: 720px) {
  .gh-shop-hero-art.is-vehicle {
    width: 72px;
    height: 72px;
    min-height: 72px;
    padding: 5px;
    box-sizing: border-box;
    display: grid;
    background: var(--gh-yellow);
  }
  .gh-shop-hero-art.is-vehicle img {
    width: 62px;
    height: 62px;
    padding: 10px;
    background: transparent;
  }
  .gh-shop-hero-art.is-vehicle i,
  .gh-shop-hero-art.is-vehicle b { display: none; }
}

@media (max-width: 620px) {
  .gh-vehicle-grid .gh-vehicle-card:only-child {
    min-height: 112px;
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: 128px minmax(0,1fr);
  }
  .gh-vehicle-grid .gh-vehicle-card:only-child .gh-vehicle-photo {
    width: 128px;
    height: 112px;
    min-height: 112px;
  }
  .gh-vehicle-grid .gh-vehicle-card:only-child .gh-vehicle-card-copy {
    padding: 10px 10px 10px 30px;
  }
}
