/* =========================================================
   GVBA — QUEEN CITY PLAYAS — Custom Storefront Styling
   ========================================================= */

:root {
	--gvba-ink: #0d0e0c;
	--gvba-paper: #eceee7;
	--gvba-green: #1f7a3e;
	--gvba-green-dark: #14512a;
	--gvba-red: #c31c34;
	--gvba-steel: #6b6e68;
	--gvba-white: #ffffff;
}

/* ---------- Fonts ---------- */
.gvba-hero,
.gvba-marquee,
.woocommerce ul.products li.product,
body.woocommerce-page {
	font-family: 'Archivo', -apple-system, BlinkMacSystemFont, sans-serif;
}

.gvba-hero h1,
.gvba-section-title,
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-family: 'Anton', 'Archivo Black', sans-serif;
	text-transform: uppercase;
	letter-spacing: 0.02em;
}

.gvba-price-tag,
.woocommerce ul.products li.product .price,
.woocommerce span.price {
	font-family: 'Space Mono', 'Courier New', monospace !important;
}

/* =========================================================
   HERO
   ========================================================= */
.gvba-hero {
    position: relative;
    min-height: 420px;

    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;

    background-image: url('/wp-content/uploads/2026/07/wewe.jpg');
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;

    text-align: center;
    color: #fff;
}

.gvba-hero::before {
    content: '';
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,.45);
}

.gvba-hero > * {
    position: relative;
    z-index: 2;
}

.gvba-hero__logo {
	max-width: 260px;
	height: auto;
	margin: 0 auto 28px;
	display: block;
	filter: invert(1) brightness(1.1);
}

.gvba-hero h1 {
	font-size: clamp(32px, 6vw, 64px);
	line-height: 0.95;
	margin: 0 0 14px;
	color: var(--gvba-white);
}

.gvba-hero h1 span {
	color: var(--gvba-green);
}

.gvba-hero p {
	font-size: 15px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #a9aba3;
	margin: 0 0 30px;
}

.gvba-hero__cta {
	display: inline-block;
	background: var(--gvba-green);
	color: var(--gvba-white) !important;
	font-family: 'Anton', sans-serif;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	font-size: 15px;
	padding: 16px 40px;
	border-radius: 2px;
	text-decoration: none !important;
	transition: background 0.2s ease, transform 0.15s ease;
}

.gvba-hero__cta:hover {
	background: var(--gvba-green-dark);
	transform: translateY(-2px);
}

/* =========================================================
   MARQUEE TICKER (signature element)
   ========================================================= */
.gvba-marquee {
	background: var(--gvba-green);
	color: var(--gvba-ink);
	overflow: hidden;
	white-space: nowrap;
	border-top: 1px solid rgba(0,0,0,0.15);
	border-bottom: 1px solid rgba(0,0,0,0.15);
}

.gvba-marquee__track {
	display: inline-block;
	padding: 10px 0;
	animation: gvba-scroll 22s linear infinite;
	font-family: 'Space Mono', monospace;
	font-size: 13px;
	letter-spacing: 0.12em;
	font-weight: 700;
	text-transform: uppercase;
}

.gvba-marquee__track span {
	margin: 0 28px;
}

@keyframes gvba-scroll {
	0% { transform: translateX(0); }
	100% { transform: translateX(-50%); }
}

@media (prefers-reduced-motion: reduce) {
	.gvba-marquee__track { animation: none; }
}

/* =========================================================
   SHOP SECTION
   ========================================================= */
.woocommerce-page,
body.home {
	background: var(--gvba-paper);
}

.gvba-section-title {
	text-align: center;
	font-size: 22px;
	color: var(--gvba-ink);
	margin: 50px 0 30px;
	position: relative;
}

.gvba-section-title::after {
	content: '';
	display: block;
	width: 48px;
	height: 3px;
	background: var(--gvba-red);
	margin: 12px auto 0;
}

/* ---------- Product Grid ---------- */
.woocommerce ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, 1fr);
	gap: 28px;
	margin: 0 auto 60px;
	max-width: 1240px;
	padding: 0 20px;
}

@media (max-width: 900px) {
	.woocommerce ul.products { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 520px) {
    .woocommerce ul.products {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
        padding: 0 12px;
    }
}
.woocommerce ul.products li.product {
	position: relative;
	background: var(--gvba-white);
	border-radius: 4px;
	padding: 0 0 20px;
	list-style: none;
	margin: 0 !important;
	text-align: center;
	overflow: hidden;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
	box-shadow: 0 1px 3px rgba(0,0,0,0.06);
}

.woocommerce ul.products li.product:hover {
	transform: translateY(-4px);
	box-shadow: 0 12px 24px rgba(13,14,12,0.12);
}

.woocommerce ul.products li.product a img {
	border-radius: 0;
	margin-bottom: 18px;
	background: var(--gvba-white);
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-size: 14px;
	color: var(--gvba-ink);
	padding: 0 14px;
	margin: 0 0 6px;
	line-height: 1.3;
}

/* ---------- Hang-tag price badge ---------- */
.woocommerce ul.products li.product .price {
	position: absolute;
	top: 14px;
	right: 14px;
	background: var(--gvba-ink);
	color: var(--gvba-white) !important;
	font-size: 12px;
	font-weight: 700;
	padding: 6px 10px 6px 14px;
	border-radius: 0 3px 3px 0;
	clip-path: polygon(12px 0, 100% 0, 100% 100%, 12px 100%, 0 50%);
}

.woocommerce ul.products li.product .price del {
	opacity: 0.5;
	font-size: 10px;
}

.woocommerce ul.products li.product .price ins {
	text-decoration: none;
	color: var(--gvba-white);
}

/* ---------- Buttons ---------- */
.woocommerce ul.products li.product .button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce #respond input#submit,
.woocommerce a.added_to_cart,
.woocommerce div.product form.cart .button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: var(--gvba-ink) !important;
	color: var(--gvba-white) !important;
	border: none !important;
	font-family: 'Archivo', sans-serif !important;
	font-weight: 700 !important;
	font-size: 12px !important;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	padding: 12px 22px !important;
	border-radius: 2px !important;
	margin-top: 6px;
	text-align: center !important;
	text-decoration: none !important;
	line-height: 1.4 !important;
	vertical-align: middle;
	float: none !important;
	transition: background 0.2s ease;
}

.woocommerce ul.products li.product .button:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce a.added_to_cart:hover,
.woocommerce div.product form.cart .button:hover {
	background: var(--gvba-green) !important;
	color: var(--gvba-white) !important;
}

/* ---------- Buy Now button ---------- */
.woocommerce ul.products li.product .gvba-btn-buynow {
	display: block;
	width: calc(100% - 28px);
	margin: 10px 14px 0 !important;
	background: var(--gvba-green) !important;
	color: var(--gvba-white) !important;
	text-align: center;
}

.woocommerce ul.products li.product .gvba-btn-buynow:hover {
	background: var(--gvba-green-dark) !important;
}

/* Sale badge cleanup */
.woocommerce span.onsale {
	background: var(--gvba-red) !important;
	font-family: 'Space Mono', monospace;
	font-size: 11px;
	top: 14px;
	left: 14px;
	right: auto;
}


/* ==========================================================================
   GVBA — Checkout Redesign (Shopify-style, clean & minimal)
   Paste into: Appearance → Customize → Additional CSS
   (or your child theme's style.css)

   If your theme (Storefront, Astra, Flatsome, etc.) wraps checkout markup
   differently, a few selectors below may need small tweaks — inspect
   element on the live checkout page and adjust class names as needed.
   ========================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');

:root{
  --gvba-ink:#1A1A1A;
  --gvba-body:#4B4B4B;
  --gvba-muted:#8C8C8C;
  --gvba-line:#E5E5E5;
  --gvba-bg:#FFFFFF;
  --gvba-panel:#F7F7F7;
  --gvba-focus:#1A73E8;
  --gvba-error:#D14343;
}

body.woocommerce-checkout{
  background:#FBFBFB;
  font-family:'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  color:var(--gvba-ink);
}

.woocommerce-checkout .woocommerce{
  max-width:1080px;
  margin:0 auto;
  padding:0 20px 80px;
}

/* ---- Section title ---- 
.woocommerce-checkout #customer_details::before{
  content:"Billing details";
  display:block;
  font-size:20px;
  font-weight:600;
  letter-spacing:-0.2px;
  margin:40px 0 24px;
} */

.woocommerce-checkout h3#order_review_heading{
  font-size:16px;
  font-weight:600;
  margin:0 0 20px;
}

/* ---- Two column layout ---- */
.woocommerce-checkout .col2-set{
  width:100%;
  float:none;
}
.woocommerce-checkout form.checkout{
  display:grid;
  grid-template-columns:1fr 0.85fr;
  gap:64px;
  align-items:start;
}
@media(max-width:860px){
  .woocommerce-checkout form.checkout{grid-template-columns:1fr;}
}

/* ---- Form fields ---- */
.woocommerce-checkout .form-row label{
  display:block;
  font-size:13px;
  font-weight:500;
  color:var(--gvba-ink);
  margin-bottom:6px;
}
.woocommerce-checkout .form-row label .required{
  color:var(--gvba-error);
  text-decoration:none;
}
.woocommerce-checkout .form-row label .optional{
  color:var(--gvba-muted);
  font-weight:400;
}

.woocommerce-checkout .input-text,
.woocommerce-checkout select,
.woocommerce-checkout .select2-selection{
  width:100% !important;
  border:1px solid var(--gvba-line) !important;
  border-radius:8px !important;
  background:var(--gvba-bg) !important;
  padding:11px 12px !important;
  font-family:'Inter', sans-serif;
  font-size:14.5px;
  color:var(--gvba-ink);
  box-shadow:none !important;
  height:auto !important;
}
.woocommerce-checkout .input-text:focus,
.woocommerce-checkout select:focus{
  border-color:var(--gvba-focus) !important;
  box-shadow:0 0 0 3px rgba(26,115,232,0.12) !important;
  outline:none;
}
.woocommerce-checkout .form-row{
  margin-bottom:16px;
}

/* ---- Order summary as a clean card ---- */
#order_review{
  background:var(--gvba-panel);
  border-radius:14px;
  padding:28px;
  position:sticky;
  top:24px;
}

.woocommerce-checkout-review-order-table{
  border-collapse:collapse;
  width:100%;
  background:transparent;
}
.woocommerce-checkout-review-order-table thead{
  display:none;
}
.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table td{
  font-size:13.5px;
  padding:14px 0;
  border:none;
  border-bottom:1px solid var(--gvba-line);
}
.woocommerce-checkout-review-order-table .product-name{
  color:var(--gvba-ink);
  font-weight:500;
}
.woocommerce-checkout-review-order-table .product-total{
  font-weight:600;
  text-align:right;
}
.woocommerce-checkout-review-order-table .cart-subtotal td,
.woocommerce-checkout-review-order-table .cart-subtotal th{
  color:var(--gvba-body);
  border-bottom:1px solid var(--gvba-line);
}
.woocommerce-checkout-review-order-table .order-total th,
.woocommerce-checkout-review-order-table .order-total td{
  border-bottom:none;
  border-top:1px solid var(--gvba-line);
  font-size:16px;
  font-weight:700;
  padding-top:16px;
  color:var(--gvba-ink);
}

/* ---- Payment methods ---- */
#payment{
  background:transparent;
  border-top:1px solid var(--gvba-line);
  margin-top:20px;
  padding-top:20px;
}
#payment ul.payment_methods{
  border:none;
  padding:0;
}
#payment ul.payment_methods li.wc_payment_method{
  border:1px solid var(--gvba-line);
  border-radius:10px;
  padding:14px;
  margin-bottom:8px;
  background:var(--gvba-bg);
}
#payment ul.payment_methods li.wc_payment_method label{
  font-weight:600;
  font-size:13.5px;
  color:var(--gvba-ink);
}
#payment .payment_box{
  font-size:12.5px;
  color:var(--gvba-muted);
  line-height:1.5;
  background:transparent;
  padding:8px 0 0;
}
#payment .payment_box::before{
  display:none;
}

/* ---- Privacy note ---- */
.woocommerce-privacy-policy-text{
  font-size:11.5px;
  color:var(--gvba-muted);
  line-height:1.6;
  margin:16px 0 18px;
}
.woocommerce-privacy-policy-text a{color:var(--gvba-ink);}

/* ---- Place order button ---- */
#payment #place_order{
  width:100%;
  background:var(--gvba-ink);
  color:#fff;
  border:none;
  border-radius:10px;
  font-family:'Inter', sans-serif;
  font-size:15px;
  font-weight:600;
  padding:15px;
  cursor:pointer;
  transition:opacity .15s;
}
#payment #place_order:hover{
  opacity:0.88;
}
/* Hide product quantity only on Checkout page */
.woocommerce-checkout .product-quantity {
    display: none !important;
}

/* =========================================================
   CART PAGE ONLY
   ========================================================= */

/* Cart table */
.woocommerce-cart table.cart {
    background: #fff;
    border-radius: 6px;
    padding: 20px;
    box-shadow: 0 1px 3px rgba(0,0,0,.06);
}

/* Cart totals */
.cart-collaterals,
.cart-collaterals .cart_totals,
.woocommerce-cart .cart_totals,
.woocommerce-page .cart_totals {
    background: #fff !important;
    border-radius: 6px;
    padding: 24px;
    box-shadow: 0 1px 3px rgba(0,0,0,.06);
}

/* Product thumbnails */
.woocommerce-cart table.cart td.product-thumbnail img,
.woocommerce table.cart img {
    width: 64px !important;
    height: 64px !important;
    object-fit: cover;
    border-radius: 4px;
}

.woocommerce-cart table.cart th,
.woocommerce-cart table.cart td {
    padding: 24px 20px !important;
    vertical-align: middle;
}