/*
Theme Name: Bold Store
Theme URI: https://example.com/
Author: Your Name
Description: A black, white and red block theme for apparel and art shops, with a promo bar, mega-style dropdown menu, hero slider, product carousel and a split feature banner. Built for WooCommerce.
Version: 1.0.0
Requires at least: 6.6
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: bold-store
*/

/* ---------- Base ---------- */
html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
a { text-underline-offset: 0.2em; }
:focus-visible { outline: 3px solid var(--wp--preset--color--accent); outline-offset: 2px; }

/* ---------- Header ---------- */
.gv-header { position: sticky; top: 0; z-index: 50; background: var(--wp--preset--color--white); border-bottom: 1px solid var(--wp--preset--color--black); }
.gv-header .wp-block-navigation { font-family: var(--wp--preset--font-family--heading); font-size: 1.15rem; text-transform: uppercase; letter-spacing: 0.04em; }
.gv-header .wp-block-navigation__submenu-container { border: 1px solid var(--wp--preset--color--black); border-top: 4px solid var(--wp--preset--color--accent); padding: 0.75rem 0; min-width: 220px; }
.gv-header .wp-block-navigation__submenu-container a:hover { color: var(--wp--preset--color--accent); }
.gv-header .wc-block-mini-cart__button, .gv-header .wc-block-customer-account a { color: var(--wp--preset--color--black); }
.gv-header .wc-block-mini-cart__badge { background: var(--wp--preset--color--accent); color: var(--wp--preset--color--white); }

/* ---------- Slider (hero) and carousel (products) ---------- */
.gv-slider { display: flex; flex-wrap: nowrap; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; gap: 0; }
.gv-slider::-webkit-scrollbar { display: none; }
.gv-slider > .gv-slide { flex: 0 0 100%; scroll-snap-align: start; margin: 0; }
.gv-slide .wp-block-cover__inner-container { max-width: 1280px; }
.gv-scroll-wrap { position: relative; }
.gv-scroll-btn { position: absolute; top: 50%; transform: translateY(-50%); z-index: 5; width: 48px; height: 48px; border: 2px solid var(--wp--preset--color--black); background: var(--wp--preset--color--white); color: var(--wp--preset--color--black); font-size: 1.5rem; line-height: 1; cursor: pointer; }
.gv-scroll-btn:hover { background: var(--wp--preset--color--accent); border-color: var(--wp--preset--color--accent); color: var(--wp--preset--color--white); }
.gv-scroll-btn.prev { left: 12px; }
.gv-scroll-btn.next { right: 12px; }

.gv-carousel ul.products { display: flex !important; flex-wrap: nowrap; gap: 1.25rem; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; padding: 0; margin: 0; }
.gv-carousel ul.products::-webkit-scrollbar { display: none; }
.gv-carousel ul.products li.product { flex: 0 0 calc(25% - 1rem); min-width: 220px; scroll-snap-align: start; margin: 0 !important; width: auto !important; float: none !important; }
.gv-carousel ul.products li.product img { width: 100%; height: auto; aspect-ratio: 1 / 1; object-fit: cover; background: var(--wp--preset--color--light); }
.gv-carousel .woocommerce-loop-product__title { font-family: var(--wp--preset--font-family--heading); font-size: 1.25rem; text-transform: uppercase; padding: 0.75rem 0 0.25rem; }
.gv-carousel .price { color: var(--wp--preset--color--black); }
.gv-carousel .price ins { text-decoration: none; color: var(--wp--preset--color--accent); }
.gv-carousel .onsale { background: var(--wp--preset--color--accent); color: var(--wp--preset--color--white); border-radius: 0; }
.gv-carousel .button { background: var(--wp--preset--color--black); color: var(--wp--preset--color--white); border-radius: 0; }
.gv-carousel .button:hover { background: var(--wp--preset--color--accent); }
@media (max-width: 781px) { .gv-carousel ul.products li.product { flex-basis: 70%; } }

/* ---------- Feature banner ---------- */
.gv-feature .wp-block-cover { min-height: 520px; }
@media (max-width: 781px) { .gv-feature .wp-block-cover { min-height: 320px; } }

/* ---------- Footer ---------- */
.gv-footer a { text-decoration: none; }
.gv-footer a:hover { color: var(--wp--preset--color--accent); text-decoration: underline; }
.gv-footer .wp-block-social-links .wp-social-link a:hover { color: var(--wp--preset--color--white); }
