/*
Theme Name: Vinyl615
Theme URI: https://vinyl615.com/
Author: Vinyl615 / OpenAI
Description: Custom WooCommerce theme for Vinyl615. Catalog-first, eBay-source-of-truth storefront inspired by the approved Vinyl615 homepage comp.
Version: 1.7.4
Requires at least: 6.5
Tested up to: 6.8
Requires PHP: 8.1
Text Domain: vinyl615
License: GNU General Public License v2 or later
*/

:root {
  --v615-primary: #328cc1;
  --v615-secondary: #083c5d;
  --v615-accent: #d93f10;
  --v615-ink: #0b2030;
  --v615-muted: #5f6973;
  --v615-border: #e3e8ec;
  --v615-soft: #f5f8fa;
  --v615-white: #ffffff;
  --v615-max: 1440px;
  --v615-radius: 4px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--v615-ink);
  background: #fff;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  line-height: 1.55;
}
a { color: var(--v615-secondary); text-decoration: none; }
a:hover { color: var(--v615-accent); }
img { max-width: 100%; height: auto; display: block; }
.v615-wrap { width: min(calc(100% - 48px), var(--v615-max)); margin-inline: auto; }
.screen-reader-text { position:absolute; left:-9999px; }

/* Utility bar */
.v615-utility { background: var(--v615-secondary); color: #fff; font-size: 13px; letter-spacing: .02em; }
.v615-utility .v615-wrap { min-height: 44px; display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:24px; }
.v615-utility__left { display:grid; grid-template-columns:repeat(3,max-content); align-items:center; gap:0; min-width:0; }
.v615-utility__item { display:flex; align-items:center; min-height:44px; padding:0 18px; white-space:nowrap; font-weight:700; }
.v615-utility__item:first-child { padding-left:0; }
.v615-utility__item + .v615-utility__item { border-left:1px solid rgba(255,255,255,.35); }
.v615-utility__item + .v615-utility__item:before { content:none; }
.v615-utility__right { justify-self:end; }
 .v615-collection-cta { position:relative !important; display:inline-flex !important; align-items:center !important; justify-content:center !important; min-height:72px; min-width:360px; padding:10px 28px 10px 24px !important; margin:-14px 0 !important; background:linear-gradient(135deg,#f24a13 0%,#d93f10 100%) !important; color:#fff !important; text-decoration:none !important; border:2px solid rgba(255,255,255,.78) !important; border-radius:9px !important; box-shadow:0 8px 18px rgba(0,0,0,.34) !important; transform:skewX(-8deg); transition:transform .18s ease, box-shadow .18s ease, filter .18s ease; white-space:nowrap; z-index:3; overflow:hidden; }
.v615-collection-cta__inner { display:grid !important; grid-template-columns:54px 1fr 20px; align-items:center; gap:15px; width:100%; transform:skewX(8deg); }
.v615-collection-cta__icon { width:52px; height:52px; border-radius:50%; background:#fff; color:#d93f10; display:flex; align-items:center; justify-content:center; font-size:29px; box-shadow:inset 0 0 0 1px rgba(217,63,16,.08); }
.v615-collection-cta__icon i { margin:0 !important; width:auto !important; }
.v615-collection-cta__label { display:flex; flex-direction:column; align-items:flex-start; line-height:.98; color:#fff !important; text-align:left; }
.v615-collection-cta__label strong { color:#fff !important; font-size:22px; line-height:1; font-weight:950; letter-spacing:.018em; }
.v615-collection-cta__label span { color:#fff !important; font-size:15px; line-height:1.1; font-weight:900; letter-spacing:.025em; margin-top:3px; }
.v615-collection-cta__arrow { color:#fff !important; font-size:36px; line-height:1; font-weight:300; }
.v615-collection-cta:hover { color:#fff !important; filter:brightness(1.06); transform:skewX(-8deg) translateY(-2px); box-shadow:0 11px 22px rgba(0,0,0,.38) !important; }
.v615-collection-cta:focus-visible { outline:3px solid #fff; outline-offset:3px; }


/* Header */
.site-header { background:#fff; border-bottom:1px solid var(--v615-border); }
/* Comp 1: make the round Vinyl615 mark a deliberate focal point without
   materially increasing the overall header height. */
.v615-header-main { display:grid; grid-template-columns:220px minmax(260px,1fr) auto; align-items:center; gap:34px; padding:10px 0 9px; min-height:118px; }
.v615-header-brand { display:flex; align-items:center; min-width:0; }
.custom-logo-link { display:inline-flex; align-items:center; line-height:0; }
.custom-logo-link img { max-height:104px; max-width:170px; width:auto; height:auto; object-fit:contain; }
.v615-wordmark { font-weight:900; font-size:46px; line-height:1; letter-spacing:-.06em; color:var(--v615-secondary); }
.v615-wordmark span { color:var(--v615-accent); }
.v615-wordmark small { display:block; margin-top:7px; font-size:9px; letter-spacing:.35em; text-align:center; color:var(--v615-ink); }
.v615-search { display:flex; border:1px solid #cfd8df; border-radius:4px; overflow:hidden; height:48px; }
.v615-search input { border:0; flex:1; padding:0 16px; font-size:14px; min-width:0; outline:0; }
.v615-search button { width:56px; border:0; background:var(--v615-primary); color:#fff; cursor:pointer; font-size:20px; }
.v615-actions { display:flex; gap:24px; align-items:center; white-space:nowrap; font-size:14px; }
.v615-actions a { color:var(--v615-ink); }
.v615-actions a:hover { color:var(--v615-primary); }

.v615-nav { border-top:1px solid #f0f3f5; }
.v615-nav .menu, .v615-nav ul { list-style:none; padding:0; margin:0; display:flex; align-items:center; gap:0; overflow-x:auto; }
.v615-nav a { display:block; padding:14px 19px 12px; color:var(--v615-ink); font-size:13px; font-weight:700; text-transform:uppercase; border-bottom:3px solid transparent; white-space:nowrap; }
.v615-nav a:hover, .v615-nav .current-menu-item > a { color:var(--v615-primary); border-bottom-color:var(--v615-primary); }

/* Hero */
.v615-hero { position:relative; min-height:405px; display:flex; align-items:center; overflow:hidden; background:linear-gradient(90deg,#edf7fc 0%,#d9edf7 38%,#111 100%); }
.v615-hero:after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(255,255,255,.05) 0%,rgba(255,255,255,0) 45%,rgba(0,0,0,.12) 100%); pointer-events:none; }
.v615-hero.has-bg { background-size:cover; background-position:center; }
.v615-hero.has-bg:before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(242,249,253,.96) 0%,rgba(242,249,253,.82) 34%,rgba(242,249,253,.15) 58%,rgba(0,0,0,.08) 100%); }
.v615-hero__content { position:relative; z-index:2; max-width:520px; padding:58px 0 64px; }
.v615-hero h1 { margin:0 0 16px; font-size:clamp(46px,5vw,74px); line-height:.98; text-transform:uppercase; letter-spacing:-.035em; }
.v615-hero p { margin:0 0 24px; font-size:20px; max-width:470px; }
.v615-btn, button.button, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button { display:inline-flex; align-items:center; justify-content:center; border:0 !important; border-radius:var(--v615-radius) !important; padding:13px 20px !important; background:var(--v615-accent) !important; color:#fff !important; font-weight:800 !important; font-size:14px !important; line-height:1.1 !important; text-transform:uppercase; cursor:pointer; }
.v615-btn:hover, .woocommerce a.button:hover, .woocommerce button.button:hover { background:#b9340d !important; color:#fff !important; }

/* Benefits */
.v615-benefits { border-bottom:1px solid var(--v615-border); background:#fff; }
.v615-benefit-grid { display:grid; grid-template-columns:repeat(5,1fr); }
.v615-benefit { padding:28px 24px; display:grid; grid-template-columns:40px 1fr; gap:12px; border-right:1px solid var(--v615-border); }
.v615-benefit:last-child { border-right:0; }
.v615-benefit__icon { color:var(--v615-primary); font-size:30px; line-height:1; }
.v615-benefit strong { display:block; font-size:13px; text-transform:uppercase; line-height:1.3; margin-bottom:5px; }
.v615-benefit span { color:var(--v615-muted); font-size:12px; }

/* Sections */
.v615-section { padding:30px 0; border-bottom:1px solid var(--v615-border); }
.v615-section__head { display:flex; justify-content:space-between; align-items:flex-end; gap:20px; margin-bottom:16px; }
.v615-section h2 { margin:0; font-size:19px; text-transform:uppercase; letter-spacing:.01em; }
.v615-viewall { color:var(--v615-primary); font-size:13px; font-weight:700; }

/* Products */
.woocommerce ul.products, .v615-products { list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(8,minmax(0,1fr)); gap:20px; }
.woocommerce ul.products::before, .woocommerce ul.products::after { display:none !important; }
.woocommerce ul.products li.product, .v615-product { width:auto !important; float:none !important; margin:0 !important; }
.woocommerce ul.products li.product a img { margin:0 0 10px !important; aspect-ratio:1/1; object-fit:cover; background:#f4f4f4; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { color:var(--v615-ink); font-size:14px !important; font-weight:700; line-height:1.3; padding:0 !important; }
.woocommerce ul.products li.product .price { color:var(--v615-primary) !important; font-size:14px !important; font-weight:800; }
.woocommerce ul.products li.product .button { margin-top:9px !important; font-size:11px !important; padding:9px 10px !important; }
.v615-ebay-only .button.add_to_cart_button { display:none !important; }

/* Category cards */
.v615-categories { display:grid; grid-template-columns:repeat(5,1fr); gap:16px; }
.v615-cat { position:relative; min-height:145px; padding:18px; display:flex; align-items:center; justify-content:center; overflow:hidden; border-radius:4px; background:linear-gradient(135deg,#252525,#080808); color:#fff; text-align:center; }
.v615-cat:before { content:""; position:absolute; inset:0; background:radial-gradient(circle at 35% 50%,rgba(50,140,193,.22),transparent 38%); }
.v615-cat__inner { position:relative; z-index:1; }
.v615-cat strong { display:block; color:#fff; font-size:24px; line-height:1; text-transform:uppercase; }
.v615-cat span { display:block; color:#fff; opacity:.9; margin-top:8px; font-size:12px; }
.v615-cat--sale { background:linear-gradient(135deg,var(--v615-secondary),var(--v615-primary)); }
.v615-cat:hover { transform:translateY(-2px); color:#fff; }

/* Bottom content */
.v615-bottom-grid { display:grid; grid-template-columns:1.15fr 1fr 1.65fr; gap:0; }
.v615-bottom-card { padding:0 28px; border-right:1px solid var(--v615-border); }
.v615-bottom-card:first-child { padding-left:0; }
.v615-bottom-card:last-child { border-right:0; padding-right:0; }
.v615-bottom-card h2 { margin-bottom:16px; }
.v615-ebay-mini { display:grid; grid-template-columns:56px 1fr; gap:10px; margin-bottom:10px; font-size:12px; }
.v615-ebay-mini img { width:56px; height:56px; object-fit:cover; }
.v615-sold-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }
.v615-sold-card { position:relative; font-size:12px; }
.v615-sold-card img { aspect-ratio:1; object-fit:cover; }
.v615-sold-badge { position:absolute; left:0; top:calc(100% - 45px); background:var(--v615-accent); color:#fff; font-weight:800; padding:3px 8px; }

/* Footer */
.v615-trust { background:linear-gradient(120deg,#061e2f,#083c5d); color:#fff; padding:34px 0; }
.v615-trust-grid { display:grid; grid-template-columns:1.4fr repeat(4,.8fr); gap:32px; align-items:center; }
.v615-trust h2 { color:#fff; margin:0 0 10px; font-size:24px; line-height:1.15; text-transform:uppercase; }
.v615-trust p { margin:0 0 15px; opacity:.92; }
.v615-trust-item { text-align:center; }
.v615-trust-icon { width:64px; height:64px; margin:0 auto 10px; border:1px solid rgba(255,255,255,.7); border-radius:50%; display:grid; place-items:center; font-size:26px; color:#fff; }
.v615-trust-item strong { font-size:15px; text-transform:uppercase; line-height:1.25; display:block; }
.v615-footer-bottom { background:#fff; border-top:1px solid var(--v615-border); }
.v615-footer-bottom .v615-wrap { min-height:64px; display:flex; align-items:center; justify-content:space-between; gap:28px; font-size:12px; }
.v615-footer-menu { list-style:none; margin:0; padding:0; display:flex; gap:28px; flex-wrap:wrap; }
.v615-footer-menu a { color:var(--v615-ink); }

/* Shop archive */
.v615-shop-shell { padding:32px 0 60px; }
.v615-shop-header { display:flex; justify-content:space-between; align-items:end; gap:24px; margin-bottom:24px; }
.v615-shop-header h1 { margin:0; font-size:34px; }
.woocommerce .woocommerce-ordering select { padding:10px 12px; border:1px solid var(--v615-border); background:#fff; }
.woocommerce nav.woocommerce-pagination ul { border:0 !important; }
.woocommerce nav.woocommerce-pagination ul li { border:0 !important; margin:0 3px !important; }
.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span { padding:11px 14px !important; background:var(--v615-soft) !important; color:var(--v615-ink) !important; }
.woocommerce nav.woocommerce-pagination ul li span.current { background:var(--v615-primary) !important; color:#fff !important; }

/* Single product */
.v615-single-product-shell { padding-top:32px; padding-bottom:60px; }
.v615-single-product-shell .product { margin-top:0; }
.single-product .product { margin-top:0; }
.woocommerce div.product .product_title { font-size:34px; line-height:1.12; }
.woocommerce div.product p.price { color:var(--v615-primary); font-weight:800; font-size:24px; }
.v615-ebay-cta { margin:18px 0; }
.v615-ebay-note { padding:14px 16px; background:#eef7fc; border-left:4px solid var(--v615-primary); font-size:14px; }
/* Keep the principal album image balanced with the product summary. */
.single-product .woocommerce div.product div.images { width:40%; max-width:520px; }
.single-product .woocommerce div.product div.summary { width:55%; }
.single-product .woocommerce div.product div.images img { width:100%; height:auto; }
.v615-product-description { margin-top:28px; padding-top:22px; border-top:1px solid var(--v615-border); }
.v615-product-description h2 { margin:0 0 12px; font-size:20px; }
.v615-product-description__content { color:var(--v615-ink); font-size:14px; line-height:1.6; }
.v615-product-description__content p:first-child { margin-top:0; }
/* WooCommerce outputs related products after the summary while its image and
   summary columns are floated. Clearing both forces the section below the
   bottom edge of the main product image, across the full content width. */
.single-product .related.products { clear:both; width:100%; padding-top:44px; }
.single-product .related.products > h2 { margin-bottom:18px; font-size:24px; }
.single-product .related.products ul.products { grid-template-columns:repeat(4,minmax(0,1fr)); }


/* General content */
.site-main article { width:min(calc(100% - 48px), 960px); margin:40px auto; }
.site-main h1.entry-title { font-size:38px; }

@media (max-width: 1200px) {
  .woocommerce ul.products, .v615-products { grid-template-columns:repeat(5,1fr); }
  .v615-benefit-grid { grid-template-columns:repeat(3,1fr); }
  .v615-benefit:nth-child(3) { border-right:0; }
  .v615-benefit:nth-child(n+4) { border-top:1px solid var(--v615-border); }
  .v615-categories { grid-template-columns:repeat(3,1fr); }
  .v615-trust-grid { grid-template-columns:1.4fr repeat(2,1fr); }
}
@media (max-width: 820px) {
  .v615-wrap { width:min(calc(100% - 28px), var(--v615-max)); }
  .v615-utility .v615-wrap { grid-template-columns:1fr; gap:0; padding-top:4px; padding-bottom:8px; }
  .v615-utility__left { grid-template-columns:repeat(3,1fr); width:100%; }
  .v615-utility__item { justify-content:center; padding:0 9px; text-align:center; white-space:normal; font-size:11px; }
  .v615-utility__right { display:flex; justify-self:center; margin-top:5px; }
  .v615-collection-cta { min-height:42px; margin:0; font-size:13px; }
  .v615-header-main { grid-template-columns:1fr auto; gap:14px; }
  .v615-header-brand { grid-column:1; }
  .v615-search { grid-column:1/-1; grid-row:2; }
  .v615-actions { grid-column:2; grid-row:1; }
  .v615-wordmark { font-size:36px; }
  .v615-hero { min-height:360px; }
  .v615-hero.has-bg:before { background:rgba(242,249,253,.86); }
  .v615-hero__content { max-width:100%; }
  .v615-benefit-grid { grid-template-columns:1fr 1fr; }
  .v615-benefit { border-top:1px solid var(--v615-border); }
  .v615-benefit:nth-child(odd) { border-right:1px solid var(--v615-border); }
  .v615-benefit:nth-child(even) { border-right:0; }
  .woocommerce ul.products, .v615-products { grid-template-columns:repeat(3,1fr); gap:14px; }
  .v615-categories { grid-template-columns:1fr 1fr; }
  .v615-bottom-grid { grid-template-columns:1fr; }
  .v615-bottom-card { border-right:0; border-bottom:1px solid var(--v615-border); padding:24px 0; }
  .v615-trust-grid { grid-template-columns:1fr 1fr; }
  .v615-trust-copy { grid-column:1/-1; }
  .v615-footer-bottom .v615-wrap { flex-direction:column; align-items:flex-start; padding:20px 0; }
}
@media (max-width: 520px) {
  .v615-utility__left { grid-template-columns:1fr; }
  .v615-utility__item { min-height:30px; border-left:0 !important; justify-content:center; }
  .v615-collection-cta { width:min(100%,340px); }
  .v615-actions a:first-child { display:none; }
  .v615-nav a { padding-inline:12px; }
  .v615-hero h1 { font-size:45px; }
  .v615-hero p { font-size:17px; }
  .v615-benefit-grid { grid-template-columns:1fr; }
  .v615-benefit { border-right:0 !important; }
  .woocommerce ul.products, .v615-products { grid-template-columns:repeat(2,1fr); }
  .v615-categories { grid-template-columns:1fr 1fr; gap:10px; }
  .v615-cat { min-height:115px; }
  .v615-cat strong { font-size:19px; }
  .v615-sold-grid { grid-template-columns:1fr 1fr; }
  .v615-trust-grid { grid-template-columns:1fr 1fr; gap:22px 14px; }
  .v615-footer-menu { gap:14px 20px; }
}

/* ============================================================
   Homepage editor / modular row support — v1.1.0
   ============================================================ */
.v615-home-editor { width:100%; }
.v615-home-editor > *:not(.alignfull):not(.v615-section) { width:min(calc(100% - 48px), var(--v615-max)); margin-left:auto; margin-right:auto; }
.v615-home-editor > .wp-block-group.alignfull,
.v615-home-editor > .wp-block-cover.alignfull { width:100%; }
.v615-home-editor .wp-block-group { padding-top:30px; padding-bottom:30px; }
.v615-home-editor .wp-block-group__inner-container { width:min(calc(100% - 48px), var(--v615-max)); margin-inline:auto; }
.v615-home-editor h2 { font-size:19px; text-transform:uppercase; letter-spacing:.01em; }
.v615-home-editor .wp-block-heading { margin-top:0; }

/* WooCommerce Gutenberg product collections/grids. This fixes the single-column
   output shown in the imported-product homepage screenshot. */
.v615-home-editor .wc-block-product-template,
.v615-home-editor ul.wc-block-product-template,
.v615-home-editor .wc-block-grid__products,
.v615-home-editor .wp-block-woocommerce-product-collection ul.products,
.v615-home-editor .wp-block-woocommerce-product-template,
.v615-home-editor ul.products,
.v615-editor-products ul.products {
  list-style:none !important;
  padding:0 !important;
  margin:0 !important;
  display:grid !important;
  grid-template-columns:repeat(var(--v615-row-cols, 4), minmax(0,1fr)) !important;
  gap:24px 18px !important;
}
.v615-home-editor .wc-block-product,
.v615-home-editor .wc-block-grid__product,
.v615-home-editor ul.products li.product,
.v615-editor-products ul.products li.product {
  width:auto !important;
  max-width:none !important;
  float:none !important;
  margin:0 !important;
  padding:0 !important;
  text-align:left !important;
}
.v615-home-editor .wc-block-components-product-image img,
.v615-home-editor .wc-block-grid__product-image img,
.v615-home-editor ul.products li.product img,
.v615-editor-products ul.products li.product img {
  width:100% !important;
  aspect-ratio:1/1;
  object-fit:cover;
  margin:0 0 10px !important;
  background:#f4f4f4;
}
.v615-home-editor .wc-block-components-product-title,
.v615-home-editor .wc-block-grid__product-title,
.v615-home-editor .woocommerce-loop-product__title { font-size:14px !important; line-height:1.3; font-weight:700; }
.v615-home-editor .wc-block-components-product-price,
.v615-home-editor .price { color:var(--v615-primary) !important; font-weight:800; }

/* Common WordPress layout blocks become easy content rows. */
.v615-home-editor .wp-block-columns { gap:24px; }
.v615-home-editor .wp-block-cover { min-height:280px; }
.v615-home-editor .wp-block-buttons { margin-top:18px; }
.v615-home-editor .wp-block-button__link { border-radius:var(--v615-radius); background:var(--v615-accent); font-weight:800; text-transform:uppercase; }

@media (max-width: 980px) {
  .v615-home-editor .wc-block-product-template,
  .v615-home-editor ul.wc-block-product-template,
  .v615-home-editor .wc-block-grid__products,
  .v615-home-editor .wp-block-woocommerce-product-collection ul.products,
  .v615-home-editor .wp-block-woocommerce-product-template,
  .v615-home-editor ul.products,
  .v615-editor-products ul.products { grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
}
@media (max-width: 680px) {
  .v615-home-editor > *:not(.alignfull):not(.v615-section),
  .v615-home-editor .wp-block-group__inner-container { width:min(calc(100% - 28px), var(--v615-max)); }
  .v615-home-editor .wc-block-product-template,
  .v615-home-editor ul.wc-block-product-template,
  .v615-home-editor .wc-block-grid__products,
  .v615-home-editor .wp-block-woocommerce-product-collection ul.products,
  .v615-home-editor .wp-block-woocommerce-product-template,
  .v615-home-editor ul.products,
  .v615-editor-products ul.products { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:18px 12px !important; }
}


/* Font Awesome icon alignment */
.v615-utility__item i, .v615-utility__right i { margin-right:6px; width:1.1em; text-align:center; }
.v615-benefit__icon i, .v615-trust-icon i { display:block; }


/* Product detail responsive refinements — v1.4.0 */
@media (max-width: 900px) {
  .single-product .woocommerce div.product div.images,
  .single-product .woocommerce div.product div.summary { float:none; width:100%; max-width:none; }
  .single-product .woocommerce div.product div.images { max-width:560px; margin-left:auto; margin-right:auto; }
  .single-product .related.products ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 520px) {
  .v615-utility__left { grid-template-columns:1fr; }
  .v615-utility__item { min-height:30px; border-left:0 !important; justify-content:center; }
  .v615-collection-cta { width:min(100%,340px); }
  .single-product .related.products ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
}
\n\n/* ============================================================\n   Responsive homepage video rows — v1.4.1\n   Native YouTube Embed block styles + [vinyl615_video] shortcode\n   ============================================================ */\n.v615-video-shell,\n.v615-home-editor .wp-block-embed.is-type-video {\n  margin-left:auto;\n  margin-right:auto;\n  width:100%;\n}\n\n.v615-video-shell--small,\n.v615-home-editor .wp-block-embed.is-style-v615-video-small { max-width:640px; }\n\n.v615-video-shell--medium,\n.v615-home-editor .wp-block-embed.is-style-v615-video-medium { max-width:960px; }\n\n.v615-video-shell--large,\n.v615-home-editor .wp-block-embed.is-style-v615-video-large { max-width:var(--v615-max); }\n\n/* Default native YouTube embeds in the Home editor remain centered. */\n.v615-home-editor .wp-block-embed.is-type-video:not(.alignfull) { margin-inline:auto; }\n\n.v615-video-shell iframe,\n.v615-home-editor .wp-block-embed.is-type-video .wp-block-embed__wrapper,\n.v615-home-editor .wp-block-embed.is-type-video iframe {\n  display:block;\n  width:100% !important;\n  max-width:100%;\n  margin-left:auto;\n  margin-right:auto;\n}\n\n.v615-video-shell,\n.v615-home-editor .wp-block-embed.is-type-video .wp-block-embed__wrapper {\n  position:relative;\n  aspect-ratio:16 / 9;\n  overflow:hidden;\n}\n\n.v615-video-shell iframe,\n.v615-home-editor .wp-block-embed.is-type-video .wp-block-embed__wrapper iframe {\n  position:absolute;\n  inset:0;\n  width:100% !important;\n  height:100% !important;\n}\n\n.v615-video-row { padding-top:30px; padding-bottom:30px; }\n\n@media (max-width: 680px) {\n  .v615-video-row .v615-wrap,\n  .v615-home-editor .wp-block-embed.is-type-video {\n    width:min(calc(100% - 28px), var(--v615-max));\n  }\n}\n
/* v1.4.4 approved collection-buying CTA responsive treatment */
@media (max-width: 1100px) {
  .v615-collection-cta { min-width:310px; min-height:64px; padding:8px 22px !important; }
  .v615-collection-cta__inner { grid-template-columns:44px 1fr 18px; gap:11px; }
  .v615-collection-cta__icon { width:44px; height:44px; font-size:24px; }
  .v615-collection-cta__label strong { font-size:18px; }
  .v615-collection-cta__label span { font-size:13px; }
}
@media (max-width: 760px) {
  .v615-utility .v615-wrap { padding-top:8px; padding-bottom:10px; }
  .v615-collection-cta { width:min(100%,380px) !important; min-width:0; min-height:60px; margin:7px auto 0 !important; transform:skewX(-6deg); }
  .v615-collection-cta__inner { transform:skewX(6deg); grid-template-columns:42px 1fr 18px; }
  .v615-collection-cta:hover { transform:skewX(-6deg) translateY(-1px); }
}


/* ============================================================
   v1.5.0 — approved header spacing + shopper-optimized mobile
   ============================================================ */

/* Desktop utility bar: give the CTA its own vertical room instead of using
   negative margins. This keeps all three left callouts optically centered. */
@media (min-width: 821px) {
  .v615-utility .v615-wrap {
    min-height: 78px;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    overflow:visible;
  }
  .v615-utility__left { height:78px; align-items:center; }
  .v615-utility__item {
    min-height:78px;
    height:78px;
    padding-top:0;
    padding-bottom:0;
    line-height:1.2;
  }
  .v615-utility__right { display:flex; align-items:center; height:78px; }
  .v615-collection-cta {
    min-height:68px;
    margin:0 !important;
    top:0;
  }
}

/* Mobile header structure */
.v615-mobile-menu-toggle { display:none; }

@media (max-width: 820px) {
  .v615-wrap { width:min(calc(100% - 28px), var(--v615-max)); }

  /* Keep the three strongest trust signals in a compact always-visible bar. */
  .v615-utility .v615-wrap {
    width:100%;
    padding:0;
    min-height:68px;
    display:block;
  }
  .v615-utility__left {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    height:68px;
  }
  .v615-utility__item {
    min-height:68px;
    height:68px;
    padding:7px 6px !important;
    display:flex;
    flex-direction:column;
    gap:4px;
    justify-content:center;
    text-align:center;
    font-size:9.5px;
    line-height:1.12;
    white-space:normal;
    border-left:1px solid rgba(255,255,255,.2) !important;
  }
  .v615-utility__item:first-child { border-left:0 !important; }
  .v615-utility__item i {
    margin:0 !important;
    width:auto !important;
    color:#53baf5;
    font-size:20px;
  }
  /* The approved mobile comp prioritizes shopping/search. The collection CTA
     remains a desktop conversion element and its destination is still in the
     mobile menu when added as a normal WordPress menu link. */
  .v615-utility__right { display:none !important; }

  .v615-header-main {
    display:grid;
    grid-template-columns:42px minmax(0,1fr) auto;
    grid-template-areas:
      "toggle brand actions"
      "search search search";
    gap:12px 10px;
    align-items:center;
    padding:14px 0 12px;
  }
  .v615-mobile-menu-toggle {
    grid-area:toggle;
    display:inline-flex;
    width:42px;
    height:42px;
    border:0;
    background:transparent;
    color:var(--v615-ink);
    align-items:center;
    justify-content:center;
    font-size:25px;
    cursor:pointer;
    padding:0;
  }
  .v615-mobile-menu-toggle:before { content:"☰"; }
  body.v615-menu-open .v615-mobile-menu-toggle:before { content:"×"; font-size:31px; }
  .v615-header-brand { grid-area:brand; min-width:0; justify-content:center; }
  .custom-logo-link img { max-height:58px; max-width:92px; width:auto; height:auto; }
  .v615-wordmark { font-size:34px; }
  .v615-wordmark small { display:none; }
  .v615-actions { grid-area:actions; gap:0; font-size:12px; }
  .v615-actions a { display:none; }
  .v615-actions a:last-child { display:block; white-space:nowrap; }
  .v615-search { grid-area:search; height:50px; width:100%; }
  .v615-search input { font-size:15px; }
  .v615-search button { width:58px; }

  /* Hamburger navigation: hidden until explicitly opened. */
  .v615-nav { display:none; border-top:1px solid var(--v615-border); background:#fff; }
  body.v615-menu-open .v615-nav { display:block; }
  .v615-nav .v615-wrap { width:100%; }
  .v615-nav .menu, .v615-nav ul {
    display:grid;
    grid-template-columns:1fr 1fr;
    overflow:visible;
    padding:8px 14px 14px;
  }
  .v615-nav li { border-bottom:1px solid #edf1f4; }
  .v615-nav a { padding:13px 10px; font-size:12px; border-bottom:0; }

  /* Shopper-focused mobile hero */
  .v615-hero {
    min-height:300px;
    text-align:center;
    background-position:center;
  }
  .v615-hero.has-bg:before,
  .v615-hero:before {
    background:linear-gradient(rgba(3,37,61,.78),rgba(3,37,61,.78));
  }
  .v615-hero:after { background:rgba(3,37,61,.1); }
  .v615-hero__content {
    max-width:520px;
    margin-inline:auto;
    padding:40px 8px 44px;
    color:#fff;
  }
  .v615-hero h1 {
    color:#fff;
    font-size:clamp(34px,9vw,48px);
    line-height:1.02;
    letter-spacing:-.025em;
    margin-bottom:12px;
  }
  .v615-hero p { color:#fff; font-size:16px; margin-inline:auto; margin-bottom:20px; }
  .v615-hero .v615-btn { min-width:190px; }

  /* The larger five-item desktop trust row becomes a compact 2x grid lower
     on the page, reinforcing benefits without dominating the first screen. */
  .v615-benefit-grid { grid-template-columns:1fr 1fr; }
  .v615-benefit {
    padding:16px 14px;
    grid-template-columns:30px 1fr;
    gap:9px;
    min-height:84px;
  }
  .v615-benefit__icon { font-size:23px; }
  .v615-benefit strong { font-size:11px; }
  .v615-benefit span { font-size:10px; line-height:1.25; }
  .v615-benefit:last-child { grid-column:1 / -1; }

  /* Home sections: strong labels, efficient spacing. */
  .v615-section { padding:24px 0; }
  .v615-section__head { margin-bottom:13px; align-items:center; }
  .v615-section h2,
  .v615-home-editor h2 { font-size:17px; }

  /* Category browsing becomes a thumb-friendly horizontal shelf. */
  .v615-categories {
    display:flex;
    overflow-x:auto;
    gap:10px;
    padding:2px 0 10px;
    scroll-snap-type:x proximity;
    scrollbar-width:none;
  }
  .v615-categories::-webkit-scrollbar { display:none; }
  .v615-cat {
    flex:0 0 142px;
    min-height:92px;
    scroll-snap-align:start;
  }

  /* Two-column product cards are optimal for cover-art shopping on phones. */
  .woocommerce ul.products,
  .v615-products,
  .v615-home-editor .wc-block-grid__products,
  .v615-home-editor .wp-block-woocommerce-product-collection ul.products,
  .v615-home-editor ul.products,
  .v615-editor-products ul.products {
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:22px 12px !important;
  }
  .woocommerce ul.products li.product .woocommerce-loop-product__title,
  .v615-home-editor ul.products li.product .woocommerce-loop-product__title {
    font-size:13px !important;
    line-height:1.25;
  }
  .woocommerce ul.products li.product .price { font-size:14px !important; }
  .woocommerce ul.products li.product .button { width:100%; text-align:center; }

  .v615-bottom-grid { grid-template-columns:1fr; gap:16px; }
}

@media (max-width: 480px) {
  .v615-header-main { grid-template-columns:38px minmax(0,1fr) auto; }
  .custom-logo-link img { max-width:82px; max-height:54px; }
  .v615-actions { font-size:11px; }
  .v615-utility__item { font-size:8.5px; }
  .v615-utility__item i { font-size:18px; }
  .v615-hero { min-height:280px; }
  .v615-hero h1 { font-size:34px; }
  .v615-cat { flex-basis:128px; }
}


/* ============================================================
   v1.5.4 — social media links in utility bar and footer
   ============================================================ */
.v615-utility .v615-wrap {
  grid-template-columns:minmax(0,1fr) auto auto;
}
.v615-social {
  display:flex;
  align-items:center;
  gap:10px;
}
.v615-social__label {
  font-size:11px;
  font-weight:800;
  letter-spacing:.03em;
  white-space:nowrap;
}
.v615-social__icons {
  display:flex;
  align-items:center;
  gap:8px;
}
.v615-social__icons a {
  width:30px;
  height:30px;
  border:1px solid rgba(255,255,255,.72);
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  font-size:13px;
  transition:background .18s ease, transform .18s ease, border-color .18s ease;
}
.v615-social__icons a:hover {
  background:var(--v615-primary);
  border-color:var(--v615-primary);
  color:#fff;
  transform:translateY(-1px);
}
.v615-social--top {
  color:#fff;
  justify-self:end;
}
.v615-social--footer-primary {
  margin-top:18px;
  color:#fff;
}
.v615-social--footer-primary .v615-social__label { display:none; }
.v615-social--footer-bottom {
  color:var(--v615-ink);
  justify-content:flex-end;
}
.v615-social--footer-bottom .v615-social__icons a {
  color:var(--v615-secondary);
  border-color:var(--v615-secondary);
}
.v615-social--footer-bottom .v615-social__icons a:hover {
  color:#fff;
  border-color:var(--v615-primary);
}
.v615-trust-copy .v615-social__icons a {
  width:34px;
  height:34px;
  font-size:15px;
}

@media (max-width: 1120px) and (min-width:821px) {
  .v615-social--top .v615-social__label { display:none; }
  .v615-social__icons { gap:6px; }
  .v615-social--top .v615-social__icons a { width:27px; height:27px; }
}

@media (max-width:820px) {
  .v615-utility .v615-wrap {
    display:grid !important;
    grid-template-columns:1fr !important;
    min-height:0;
  }
  .v615-utility__left { order:1; }
  .v615-social--top {
    order:2;
    width:100%;
    min-height:42px;
    justify-content:center;
    border-top:1px solid rgba(255,255,255,.18);
    gap:8px;
    padding:5px 8px;
  }
  .v615-social--top .v615-social__label { font-size:9px; }
  .v615-social--top .v615-social__icons a {
    width:26px;
    height:26px;
    font-size:12px;
  }
  .v615-footer-bottom .v615-wrap {
    flex-direction:column;
    gap:12px;
    padding-top:18px;
    padding-bottom:18px;
    text-align:center;
  }
  .v615-social--footer-bottom { justify-content:center; }
  .v615-social--footer-primary { justify-content:center; }
}

@media (max-width:480px) {
  .v615-social--top .v615-social__label { display:none; }
  .v615-social--top .v615-social__icons { gap:7px; }
}


/* ============================================================
   v1.5.5 — editable Video + About Gutenberg pattern
   Restrained so it complements, rather than competes with, the hero.
   ============================================================ */
.v615-about-feature {
  width:min(calc(100% - 48px), var(--v615-max));
  max-width:var(--v615-max);
  margin:0 auto;
  padding:48px 0 50px;
  border-top:0;
}
.v615-about-feature__columns {
  gap:52px !important;
  margin:0 !important;
  align-items:center !important;
}
.v615-about-feature__media .wp-block-embed {
  margin:0;
  width:100%;
}
.v615-about-feature__media .wp-block-embed__wrapper {
  aspect-ratio:16/9;
  position:relative;
  overflow:hidden;
  background:#111;
}
.v615-about-feature__media .wp-block-embed__wrapper iframe {
  position:absolute;
  inset:0;
  width:100% !important;
  height:100% !important;
}
.v615-about-feature__content {
  padding:4px 0;
}
.v615-about-feature__eyebrow {
  margin:0 0 12px !important;
  color:var(--v615-primary);
  font-size:12px;
  line-height:1.2;
  font-weight:800;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.v615-about-feature__eyebrow:after {
  content:"";
  display:block;
  width:44px;
  height:3px;
  margin-top:12px;
  background:var(--v615-primary);
}
.v615-about-feature__heading {
  margin:0 0 18px !important;
  color:var(--v615-ink);
  font-size:clamp(30px,3vw,40px) !important;
  line-height:1.06 !important;
  letter-spacing:-.025em;
  text-transform:none !important;
}
.v615-about-feature__text {
  max-width:520px;
  margin:0 0 24px !important;
  color:var(--v615-ink);
  font-size:17px;
  line-height:1.62;
}
.v615-about-feature__buttons {
  margin:0;
}
.v615-about-feature__button .wp-block-button__link {
  border-radius:var(--v615-radius);
  padding:13px 20px;
  background:var(--v615-accent);
  color:#fff;
  font-size:13px;
  line-height:1.1;
  font-weight:800;
  text-transform:uppercase;
}
.v615-about-feature__button .wp-block-button__link:hover {
  background:#b9340d;
  color:#fff;
}

@media (max-width: 820px) {
  .v615-about-feature {
    width:min(calc(100% - 28px), var(--v615-max));
    padding:30px 0 34px;
  }
  .v615-about-feature__columns {
    gap:26px !important;
  }
  .v615-about-feature__columns > .wp-block-column {
    flex-basis:100% !important;
  }
  .v615-about-feature__heading {
    font-size:30px !important;
  }
  .v615-about-feature__text {
    font-size:16px;
  }
}

@media (max-width: 600px) {
  .v615-about-feature__columns {
    display:flex !important;
    flex-direction:column;
  }
  .v615-about-feature__media,
  .v615-about-feature__content {
    width:100%;
  }
}

/* v1.5.7 — optional links for the three utility-bar callouts */
.v615-utility__item--link { color:#fff !important; text-decoration:none; transition:background .18s ease; }
.v615-utility__item--link:hover,
.v615-utility__item--link:focus-visible { color:#fff !important; background:rgba(255,255,255,.09); }


/* ============================================================
   v1.5.8 — Comp 1 Mailchimp newsletter footer + shortcode
   ============================================================ */
.v615-footer-newsletter {
  background:linear-gradient(120deg,#061e2f,#083c5d);
  color:#fff;
  border-top:1px solid rgba(255,255,255,.12);
  padding:34px 0 30px;
}
.v615-footer-newsletter__grid {
  display:grid;
  grid-template-columns:150px 1fr 1fr minmax(330px,1.65fr) auto;
  gap:34px;
  align-items:start;
}
.v615-footer-newsletter__brand .custom-logo-link { display:inline-flex; }
.v615-footer-newsletter__brand .custom-logo-link img {
  width:92px;
  max-height:92px;
  object-fit:contain;
  filter:brightness(0) invert(1);
}
.v615-footer-newsletter__wordmark {
  width:92px;height:92px;border:3px solid #fff;border-radius:50%;
  display:flex;align-items:center;justify-content:center;text-align:center;
  font-size:28px;line-height:.72;font-weight:900;letter-spacing:-.06em;
}
.v615-footer-newsletter__tagline {
  margin-top:12px;
  color:#62b8ea;
  font-size:11px;
  line-height:1.4;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.v615-footer-newsletter__links h3 {
  margin:2px 0 10px;
  color:#fff;
  font-size:12px;
  font-weight:800;
  letter-spacing:.04em;
}
.v615-footer-newsletter__links ul,
.v615-footer-newsletter__menu {
  list-style:none;
  padding:0;
  margin:0;
}
.v615-footer-newsletter__links li { margin:0 0 6px; }
.v615-footer-newsletter__links a {
  color:#fff;
  font-size:12px;
  opacity:.93;
}
.v615-footer-newsletter__links a:hover { color:#62b8ea; }

.v615-newsletter h2 {
  margin:0 0 7px;
  font-size:18px;
  line-height:1.15;
  color:inherit;
  text-transform:uppercase;
}
.v615-newsletter p {
  margin:0 0 13px;
  font-size:13px;
  line-height:1.45;
  color:inherit;
  opacity:.94;
}
.v615-newsletter__row {
  display:flex;
  width:100%;
  max-width:520px;
}
.v615-newsletter__row input {
  min-width:0;
  flex:1;
  height:42px;
  border:1px solid #d7dfe5;
  border-right:0;
  border-radius:4px 0 0 4px;
  background:#fff;
  color:#0b2030;
  padding:0 13px;
  font-size:13px;
  outline:0;
}
.v615-newsletter__row input:focus { border-color:#328cc1; box-shadow:0 0 0 2px rgba(50,140,193,.16); }
.v615-newsletter__row button {
  height:42px;
  border:0;
  border-radius:0 4px 4px 0;
  background:#d93f10;
  color:#fff;
  padding:0 20px;
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  cursor:pointer;
}
.v615-newsletter__row button:hover { background:#b9340d; }
.v615-newsletter__row button:disabled,
.v615-newsletter__row input:disabled { opacity:.55; cursor:not-allowed; }
.v615-newsletter small {
  display:block;
  margin-top:7px;
  color:inherit;
  opacity:.78;
  font-size:10px;
}
.v615-newsletter__setup {
  margin-top:8px;
  padding:8px 10px;
  border-radius:3px;
  background:rgba(255,255,255,.12);
  font-size:11px;
}
.v615-footer-newsletter__social {
  padding-top:2px;
}
.v615-social--newsletter-footer {
  color:#fff;
  flex-direction:column;
  align-items:flex-start;
  gap:8px;
}
.v615-social--newsletter-footer .v615-social__label { font-size:10px; }
.v615-social--newsletter-footer .v615-social__icons a {
  width:31px;height:31px;color:#fff;border-color:rgba(255,255,255,.75);
}

/* Shortcode/card treatment on content pages. */
.v615-newsletter--shortcode {
  max-width:620px;
  margin:30px auto;
  padding:28px;
  border:1px solid var(--v615-border);
  border-radius:5px;
  background:#fff;
  color:var(--v615-ink);
  text-align:center;
  box-shadow:0 5px 18px rgba(8,60,93,.06);
}
.v615-newsletter--shortcode h2 { color:var(--v615-secondary); }
.v615-newsletter--shortcode p { color:var(--v615-muted); }
.v615-newsletter--shortcode .v615-newsletter__row {
  margin:16px auto 0;
}
.v615-newsletter--shortcode small { color:var(--v615-muted); }
.v615-newsletter--shortcode .v615-newsletter__setup {
  color:var(--v615-secondary);
  background:#eef6fb;
}

@media (max-width:1100px) {
  .v615-footer-newsletter__grid {
    grid-template-columns:130px 1fr 1fr minmax(300px,1.5fr);
  }
  .v615-footer-newsletter__social {
    grid-column:4;
  }
}
@media (max-width:820px) {
  .v615-footer-newsletter { padding:28px 0; }
  .v615-footer-newsletter__grid {
    grid-template-columns:1fr 1fr;
    gap:26px 22px;
  }
  .v615-footer-newsletter__brand { grid-column:1/-1; text-align:center; }
  .v615-footer-newsletter__brand .custom-logo-link { justify-content:center; }
  .v615-footer-newsletter__signup { grid-column:1/-1; }
  .v615-footer-newsletter__social { grid-column:1/-1; }
  .v615-social--newsletter-footer {
    align-items:center;
    flex-direction:row;
    justify-content:center;
  }
}
@media (max-width:540px) {
  .v615-footer-newsletter__grid { grid-template-columns:1fr; }
  .v615-footer-newsletter__brand,
  .v615-footer-newsletter__signup,
  .v615-footer-newsletter__social { grid-column:1; }
  .v615-footer-newsletter__links { text-align:center; }
  .v615-newsletter--footer { text-align:center; }
  .v615-newsletter--footer .v615-newsletter__row { margin-inline:auto; }
  .v615-newsletter__row { flex-direction:column; gap:8px; }
  .v615-newsletter__row input,
  .v615-newsletter__row button {
    width:100%;
    border-radius:4px;
    border:1px solid #d7dfe5;
  }
}


/* ============================================================
   v1.5.9 — full-width, slimmer newsletter shortcode treatment
   ============================================================ */
.v615-home-editor .v615-newsletter--shortcode,
.site-main .v615-newsletter--shortcode {
  width:min(calc(100% - 48px), var(--v615-max));
  max-width:var(--v615-max);
  margin:22px auto 26px;
  padding:18px 24px;
  text-align:left;
  display:grid;
  grid-template-columns:minmax(240px, .9fr) minmax(420px, 1.4fr);
  gap:28px;
  align-items:center;
  box-shadow:none;
}
.v615-newsletter--shortcode .v615-newsletter__copy {
  min-width:0;
}
.v615-newsletter--shortcode h2 {
  margin:0 0 5px;
  font-size:17px;
}
.v615-newsletter--shortcode p {
  margin:0;
  font-size:12px;
  line-height:1.4;
}
.v615-newsletter--shortcode .v615-newsletter__form {
  min-width:0;
}
.v615-newsletter--shortcode .v615-newsletter__row {
  max-width:none;
  margin:0;
}
.v615-newsletter--shortcode small {
  margin-top:5px;
  font-size:9.5px;
}

@media (max-width:820px) {
  .v615-home-editor .v615-newsletter--shortcode,
  .site-main .v615-newsletter--shortcode {
    width:min(calc(100% - 28px), var(--v615-max));
    grid-template-columns:1fr;
    gap:14px;
    padding:17px 18px;
    text-align:center;
  }
  .v615-newsletter--shortcode .v615-newsletter__row {
    margin-inline:auto;
  }
}


/* ============================================================
   v1.6.0 — approved unified footer cleanup
   ============================================================ */

/* Remove the old eBay Store CTA from the trust/footer area. */
.v615-trust-copy > .v615-btn { display:none !important; }

/* Keep the newsletter/footer and copyright visually unified in blue. */
.v615-footer-bottom--copyright-only {
  background:#083c5d;
  color:#fff;
  border-top:1px solid rgba(255,255,255,.22);
}
.v615-footer-bottom--copyright-only .v615-wrap {
  min-height:66px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  font-size:12px;
}

/* Brand tagline remains an accent but is now user-editable. */
.v615-footer-newsletter__tagline {
  color:#53baf5;
  white-space:normal;
}

/* The newsletter footer is the only footer location for social icons. */
.v615-footer-bottom--copyright-only .v615-social,
.v615-footer-bottom--copyright-only .v615-footer-menu {
  display:none !important;
}

@media (max-width:820px) {
  .v615-footer-bottom--copyright-only .v615-wrap {
    min-height:58px;
    padding-top:15px;
    padding-bottom:15px;
  }
}


/* ============================================================
   v1.6.1 — restore Shop eBay Store button beneath trust copy
   ============================================================ */
.v615-trust-copy > .v615-trust__ebay-button {
  display:inline-flex !important;
  margin-top:14px;
}

.v615-sticker-pop{position:fixed;z-index:99990;right:18px;bottom:18px;width:min(430px,calc(100vw - 30px));pointer-events:none;opacity:0;visibility:hidden;transform:translateX(calc(100% + 40px));transition:transform .42s cubic-bezier(.22,.75,.25,1),opacity .28s ease,visibility .28s ease}.v615-sticker-pop.is-visible{pointer-events:auto;opacity:1;visibility:visible;transform:translateX(0)}.v615-sticker-pop__card{position:relative;overflow:hidden;border:1px solid #328cc1;border-radius:12px;background:#083c5d;color:#fff;box-shadow:0 18px 42px rgba(5,29,46,.32)}.v615-sticker-pop__close{position:absolute;z-index:4;top:10px;right:12px;width:36px;height:36px;border:0;background:transparent;color:#fff;font-size:30px;cursor:pointer}.v615-sticker-pop__main{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:12px;align-items:center;padding:27px 24px 20px;background:linear-gradient(145deg,#082c45,#083c5d 62%,#0b4c74)}.v615-sticker-pop__copy h2{margin:0;color:#fff;font-size:27px;line-height:1.02;font-weight:900}.v615-sticker-pop__rule{display:block;max-width:205px;height:4px;margin:12px 0 15px;background:#328cc1}.v615-sticker-pop__copy p{margin:0;color:#fff;font-size:17px;line-height:1.38;font-weight:650}.v615-sticker-pop__sticker img{display:block;width:142px;height:142px;object-fit:cover;border-radius:50%;border:7px solid #fff;box-shadow:0 6px 18px rgba(0,0,0,.25)}.v615-sticker-pop__gift{display:grid;grid-template-columns:56px 1fr;gap:14px;align-items:center;padding:15px 22px;background:#328cc1;color:#fff}.v615-sticker-pop__gift-icon{width:50px;height:50px;border:2px solid #fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:21px}.v615-sticker-pop__gift strong{font-size:15px;line-height:1.32}.v615-sticker-pop__action{padding:15px 22px 19px;background:#083c5d}.v615-sticker-pop__dismiss{width:100%;min-height:47px;border:0;border-radius:5px;background:#d93f10;color:#fff;font-size:16px;font-weight:900;cursor:pointer}.v615-sticker-pop__dismiss:hover{background:#b9340d}@media(max-width:600px){.v615-sticker-pop{right:10px;bottom:10px;width:calc(100vw - 20px)}.v615-sticker-pop__main{grid-template-columns:1fr 112px;padding:23px 18px 17px}.v615-sticker-pop__copy h2{font-size:23px}.v615-sticker-pop__copy p{font-size:15px}.v615-sticker-pop__sticker img{width:104px;height:104px;border-width:5px}}@media(prefers-reduced-motion:reduce){.v615-sticker-pop{transition:none}}


/* ============================================================
   v1.6.3 — Comp 1 full-bleed newsletter shortcode
   ============================================================ */
.v615-home-editor .v615-newsletter--shortcode,
.site-main .v615-newsletter--shortcode,
.v615-newsletter--shortcode {
  position:relative;
  left:auto;
  right:auto;
  width:100vw;
  max-width:none;
  margin-top:28px;
  margin-bottom:34px;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  padding:0;
  border:0;
  border-radius:0;
  background:
    radial-gradient(circle at 13% 22%, rgba(50,140,193,.18) 0 2px, transparent 3px),
    radial-gradient(circle at 88% 70%, rgba(255,255,255,.055) 0 1px, transparent 2px),
    linear-gradient(120deg,#052e49 0%,#083c5d 52%,#052a43 100%);
  background-size:36px 36px,28px 28px,auto;
  color:#fff;
  text-align:left;
  box-shadow:none;
  overflow:hidden;
}
.v615-newsletter--shortcode::before,
.v615-newsletter--shortcode::after {
  content:"";
  position:absolute;
  pointer-events:none;
  border-radius:50%;
  filter:blur(1px);
}
.v615-newsletter--shortcode::before {
  width:420px;height:420px;left:-230px;top:-210px;
  border:1px solid rgba(217,63,16,.22);
  box-shadow:0 0 0 50px rgba(217,63,16,.025),0 0 0 105px rgba(50,140,193,.025);
}
.v615-newsletter--shortcode::after {
  width:360px;height:360px;right:-180px;bottom:-240px;
  border:1px solid rgba(50,140,193,.18);
}
.v615-newsletter--shortcode .v615-newsletter__inner {
  position:relative;
  z-index:1;
  width:min(calc(100% - 48px),var(--v615-max));
  max-width:var(--v615-max);
  margin:0 auto;
  min-height:330px;
  padding:42px 0;
  display:grid;
  grid-template-columns:230px minmax(300px,.95fr) minmax(430px,1.35fr);
  gap:34px;
  align-items:center;
}
.v615-newsletter--shortcode .v615-newsletter__badge {
  width:204px;height:204px;
  border-radius:50%;
  margin:0 auto;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:#fff;
  background:linear-gradient(145deg,#ee541b,#d93f10);
  border:3px solid #f45b21;
  box-shadow:inset 0 0 0 5px rgba(8,60,93,.22),0 12px 28px rgba(0,0,0,.22);
  transform:rotate(-2deg);
}
.v615-newsletter--shortcode .v615-newsletter__badge i { font-size:35px;margin-bottom:9px; }
.v615-newsletter--shortcode .v615-newsletter__badge span {
  display:block;font-size:22px;line-height:1;font-style:italic;font-family:Georgia,serif;
}
.v615-newsletter--shortcode .v615-newsletter__badge strong {
  display:block;margin-top:5px;font-size:27px;line-height:1;font-weight:900;letter-spacing:-.5px;
}
.v615-newsletter--shortcode .v615-newsletter__copy { min-width:0; }
.v615-newsletter--shortcode .v615-newsletter__eyebrow {
  display:block;margin:0 0 2px;color:#fff;font-size:33px;line-height:.95;font-weight:900;letter-spacing:-1px;
}
.v615-newsletter--shortcode h2 {
  margin:0 0 14px;
  color:#f15a24;
  font-size:clamp(38px,3.4vw,58px);
  line-height:.92;
  font-weight:950;
  letter-spacing:-1.8px;
  text-transform:uppercase;
}
.v615-newsletter--shortcode p {
  margin:0;max-width:470px;color:#fff;font-size:16px;line-height:1.45;opacity:.96;
}
.v615-newsletter--shortcode .v615-newsletter__action { min-width:0; }
.v615-newsletter--shortcode .v615-newsletter__benefits {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
  margin:0 0 24px;
  color:#fff;
}
.v615-newsletter--shortcode .v615-newsletter__benefits span {
  display:grid;
  grid-template-columns:34px 1fr;
  gap:9px;
  align-items:center;
  min-width:0;
}
.v615-newsletter--shortcode .v615-newsletter__benefits i {
  color:#f15a24;font-size:26px;text-align:center;
}
.v615-newsletter--shortcode .v615-newsletter__benefits b {
  font-size:11px;line-height:1.15;text-transform:uppercase;color:#fff;
}
.v615-newsletter--shortcode .v615-newsletter__form { min-width:0; }
.v615-newsletter--shortcode .v615-newsletter__row {
  max-width:none;margin:0;width:100%;display:flex;
}
.v615-newsletter--shortcode .v615-newsletter__row input {
  height:58px;padding:0 20px;border:0;border-radius:7px 0 0 7px;font-size:15px;
}
.v615-newsletter--shortcode .v615-newsletter__row button {
  min-width:178px;height:58px;padding:0 22px;border-radius:0 7px 7px 0;
  background:linear-gradient(135deg,#e74a13,#f15a24);
  font-size:15px;letter-spacing:.2px;
}
.v615-newsletter--shortcode .v615-newsletter__row button i { margin-left:12px; }
.v615-newsletter--shortcode .v615-newsletter__row button:hover { background:#c9380c; }
.v615-newsletter--shortcode small {
  margin-top:10px;color:#fff;font-size:10.5px;opacity:.9;
}
.v615-newsletter--shortcode small i { color:#f15a24;margin-right:5px; }
.v615-newsletter--shortcode .v615-newsletter__setup {
  color:#fff;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.12);
}

@media (max-width:1100px) {
  .v615-newsletter--shortcode .v615-newsletter__inner {
    grid-template-columns:170px minmax(260px,.9fr) minmax(390px,1.25fr);
    gap:24px;min-height:300px;
  }
  .v615-newsletter--shortcode .v615-newsletter__badge { width:158px;height:158px; }
  .v615-newsletter--shortcode .v615-newsletter__badge i { font-size:28px; }
  .v615-newsletter--shortcode .v615-newsletter__badge span { font-size:18px; }
  .v615-newsletter--shortcode .v615-newsletter__badge strong { font-size:22px; }
  .v615-newsletter--shortcode .v615-newsletter__eyebrow { font-size:27px; }
  .v615-newsletter--shortcode .v615-newsletter__benefits { grid-template-columns:repeat(2,1fr);gap:12px 18px; }
}
@media (max-width:820px) {
  .v615-home-editor .v615-newsletter--shortcode,
  .site-main .v615-newsletter--shortcode,
  .v615-newsletter--shortcode {
    width:100vw;
    margin-top:22px;
    margin-bottom:28px;
    margin-left:calc(50% - 50vw);
    margin-right:calc(50% - 50vw);
  }
  .v615-newsletter--shortcode .v615-newsletter__inner {
    width:min(calc(100% - 32px),var(--v615-max));
    grid-template-columns:1fr;
    gap:20px;
    padding:30px 0 32px;
    text-align:center;
  }
  .v615-newsletter--shortcode .v615-newsletter__badge { width:144px;height:144px; }
  .v615-newsletter--shortcode .v615-newsletter__copy { text-align:center; }
  .v615-newsletter--shortcode .v615-newsletter__eyebrow { font-size:25px; }
  .v615-newsletter--shortcode h2 { font-size:38px; }
  .v615-newsletter--shortcode p { margin-inline:auto;font-size:14px; }
  .v615-newsletter--shortcode .v615-newsletter__benefits { max-width:500px;margin:0 auto 18px; }
  .v615-newsletter--shortcode small { text-align:center; }
}
@media (max-width:540px) {
  .v615-newsletter--shortcode .v615-newsletter__inner { width:calc(100% - 28px); }
  .v615-newsletter--shortcode .v615-newsletter__badge { width:126px;height:126px; }
  .v615-newsletter--shortcode .v615-newsletter__badge i { font-size:22px;margin-bottom:6px; }
  .v615-newsletter--shortcode .v615-newsletter__badge span { font-size:15px; }
  .v615-newsletter--shortcode .v615-newsletter__badge strong { font-size:19px; }
  .v615-newsletter--shortcode .v615-newsletter__eyebrow { font-size:22px; }
  .v615-newsletter--shortcode h2 { font-size:33px; }
  .v615-newsletter--shortcode .v615-newsletter__benefits { grid-template-columns:1fr 1fr; }
  .v615-newsletter--shortcode .v615-newsletter__benefits span { justify-content:center;text-align:left; }
  .v615-newsletter--shortcode .v615-newsletter__row { flex-direction:column;gap:8px; }
  .v615-newsletter--shortcode .v615-newsletter__row input,
  .v615-newsletter--shortcode .v615-newsletter__row button {
    width:100%;min-width:0;height:52px;border-radius:5px;border:0;
  }
}


/* Vinyl615 Newsletter Comp 1 — v1.7.4 alignment correction
   Full-bleed background; all interior columns remain centered and contained. */
.v615-newsletter-comp1,
.v615-newsletter-feature,
.v615-newsletter-fullbleed {
    box-sizing: border-box;
}
.v615-newsletter-comp1__inner,
.v615-newsletter-feature__inner,
.v615-newsletter-fullbleed__inner {
    width: min(100% - 48px, 1400px) !important;
    max-width: 1400px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
}
.v615-newsletter-comp1__grid,
.v615-newsletter-feature__grid {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    display: grid !important;
    grid-template-columns: 220px minmax(300px, 1fr) minmax(480px, 1.45fr) !important;
    align-items: center !important;
    column-gap: 42px !important;
}
.v615-newsletter-comp1__copy,
.v615-newsletter-feature__copy,
.v615-newsletter-comp1__action,
.v615-newsletter-feature__action {
    min-width: 0 !important;
    width: 100% !important;
    margin: 0 !important;
}
.v615-newsletter-comp1__benefits,
.v615-newsletter-feature__benefits {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    gap: 22px !important;
    width: 100% !important;
    margin: 0 0 18px !important;
}
.v615-newsletter-comp1 form,
.v615-newsletter-feature form {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
}
@media (max-width: 1100px) {
    .v615-newsletter-comp1__grid,
    .v615-newsletter-feature__grid {
        grid-template-columns: 180px minmax(260px, .9fr) minmax(380px, 1.2fr) !important;
        column-gap: 26px !important;
    }
    .v615-newsletter-comp1__benefits,
    .v615-newsletter-feature__benefits {
        gap: 12px !important;
        flex-wrap: wrap !important;
    }
}
@media (max-width: 850px) {
    .v615-newsletter-comp1__inner,
    .v615-newsletter-feature__inner,
    .v615-newsletter-fullbleed__inner {
        width: min(100% - 32px, 1400px) !important;
    }
    .v615-newsletter-comp1__grid,
    .v615-newsletter-feature__grid {
        grid-template-columns: 1fr !important;
        row-gap: 24px !important;
        text-align: center !important;
    }
    .v615-newsletter-comp1__benefits,
    .v615-newsletter-feature__benefits {
        justify-content: center !important;
    }
}


/* ============================================================
   v1.7.4 — Newsletter Comp 1 structural correction
   The v1.5.9 shortcode shell was itself a 2-column grid. Comp 1
   has its own internal 3-column grid, so the outer shell must be
   a normal block or the whole new layout is trapped in column 1.
   ============================================================ */
.v615-home-editor .v615-newsletter--shortcode,
.site-main .v615-newsletter--shortcode,
.v615-newsletter--shortcode {
  display:block !important;
  grid-template-columns:none !important;
  gap:0 !important;
}

.v615-newsletter--shortcode .v615-newsletter__inner {
  width:min(calc(100% - 48px), var(--v615-max)) !important;
  max-width:var(--v615-max) !important;
  margin-left:auto !important;
  margin-right:auto !important;
  display:grid !important;
  grid-template-columns:230px minmax(300px,.95fr) minmax(430px,1.35fr) !important;
  gap:34px !important;
  align-items:center !important;
}

.v615-newsletter--shortcode .v615-newsletter__action,
.v615-newsletter--shortcode .v615-newsletter__form,
.v615-newsletter--shortcode .v615-newsletter__row {
  width:100% !important;
  max-width:none !important;
}

@media (max-width:1180px) {
  .v615-newsletter--shortcode .v615-newsletter__inner {
    grid-template-columns:190px minmax(260px,.9fr) minmax(390px,1.2fr) !important;
    gap:24px !important;
  }
}

@media (max-width:900px) {
  .v615-newsletter--shortcode .v615-newsletter__inner {
    width:min(calc(100% - 32px), var(--v615-max)) !important;
    grid-template-columns:1fr !important;
    gap:20px !important;
  }
}

@media (max-width:540px) {
  .v615-newsletter--shortcode .v615-newsletter__inner {
    width:calc(100% - 28px) !important;
  }
}


/* v1.7.4 — newsletter on WooCommerce record category archives */
.v615-category-newsletter {
    clear: both;
    width: 100%;
    margin: 22px 0 28px;
}
.v615-category-newsletter .v615-newsletter,
.v615-category-newsletter .v615-newsletter-comp1,
.v615-category-newsletter .v615-newsletter-feature {
    margin-top: 0;
}


/* v1.7.4 — more breathing room between final product row and pagination */
.woocommerce nav.woocommerce-pagination,
.woocommerce-pagination {
    clear: both;
    margin-top: 34px !important;
    padding-top: 0 !important;
}


/* v1.7.4 — Vinyl615 Full Width YouTube Video block */
.v615-fullwidth-video {
    position: relative;
    width: 100%;
    max-width: 100%;
    margin: 28px 0 !important;
    box-sizing: border-box;
    overflow: hidden;
    background: #000;
}

.v615-fullwidth-video__inner {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    background: #000;
}

.v615-fullwidth-video iframe {
    position: absolute;
    inset: 0;
    width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0;
    display: block;
}

.v615-video-block-error {
    width: 100%;
    padding: 16px 18px;
    border-left: 4px solid #d93f10;
    background: #fff5f1;
    color: #083c5d;
    box-sizing: border-box;
}

@media (max-width: 782px) {
    .v615-fullwidth-video {
        margin-top: 20px;
        margin-bottom: 20px;
    }
}


/* v1.7.4 — keep the Vinyl615 YouTube player aligned with normal page copy width */
.v615-fullwidth-video.alignfull {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    left: auto !important;
    right: auto !important;
}


/* v1.7.4 — Big Heart Creative site credit */
.v615-site-credit {
    width: 100%;
    margin: 14px auto 0;
    padding-top: 12px;
    text-align: center;
    font-size: 12px;
    line-height: 1.5;
    opacity: .82;
}
.v615-site-credit a {
    color: inherit;
    text-decoration: underline;
    text-underline-offset: 2px;
}
.v615-site-credit a:hover,
.v615-site-credit a:focus {
    opacity: 1;
}


/* v1.7.4 — Big Heart Creative credit inline with copyright/location row */
.v615-site-credit-inline {
    display: inline;
    font-size: inherit;
    line-height: inherit;
    opacity: .9;
}
.v615-site-credit-inline a {
    color: inherit;
    text-decoration: underline;
    text-underline-offset: 2px;
}
.v615-site-credit-inline a:hover,
.v615-site-credit-inline a:focus {
    opacity: .8;
}
.v615-footer-credit-separator {
    display: inline-block;
    margin: 0 5px;
}
@media (max-width: 600px) {
    .v615-site-credit-inline {
        display: inline;
    }
}


/* v1.7.4 — Most Viewed Titles / Comp 1 */
.v615-most-viewed {
    position: relative;
    left: 50%;
    width: 100vw;
    max-width: 100vw;
    margin: 34px 0 40px;
    transform: translateX(-50%);
    background: #fff;
    box-sizing: border-box;
    overflow: hidden;
}
.v615-most-viewed * {
    box-sizing: border-box;
}
.v615-most-viewed__inner {
    width: min(calc(100% - 48px), 1440px);
    margin: 0 auto;
    padding: 30px 0 24px;
}
.v615-most-viewed__heading {
    margin: 0 auto 26px;
    text-align: center;
}
.v615-most-viewed__eyemark {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    margin-bottom: 8px;
    color: #d93f10;
}
.v615-most-viewed__eyemark span {
    display: block;
    width: 140px;
    max-width: 18vw;
    height: 2px;
    background: #d93f10;
    opacity: .75;
}
.v615-most-viewed__eyemark i {
    font-size: 24px;
}
.v615-most-viewed__heading h2 {
    margin: 0;
    color: #083c5d;
    font-size: clamp(28px, 3.2vw, 46px);
    font-weight: 900;
    line-height: 1;
    letter-spacing: .02em;
    text-transform: uppercase;
}
.v615-most-viewed__heading p {
    margin: 8px 0 0;
    color: #334e60;
    font-size: clamp(14px, 1.4vw, 18px);
}
.v615-most-viewed__carousel {
    position: relative;
    width: 100%;
    padding: 0 54px;
}
.v615-most-viewed__track {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: calc((100% - 108px) / 7);
    gap: 18px;
    width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    -ms-overflow-style: none;
    overscroll-behavior-inline: contain;
    padding: 4px 0 12px;
}
.v615-most-viewed__track::-webkit-scrollbar {
    display: none;
}
.v615-most-viewed__item {
    display: block;
    min-width: 0;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    background: #f3f5f6;
    border: 1px solid #e0e5e8;
    box-shadow: 0 3px 10px rgba(8,60,93,.12);
    scroll-snap-align: start;
    transition: transform .16s ease, box-shadow .16s ease;
}
.v615-most-viewed__image {
    display: block;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover;
    margin: 0 !important;
}
.v615-most-viewed__arrow {
    position: absolute;
    top: 50%;
    z-index: 2;
    width: 44px;
    height: 44px;
    border: 1px solid #dfe5e9;
    border-radius: 50%;
    background: #fff;
    color: #d93f10;
    box-shadow: 0 3px 12px rgba(8,60,93,.14);
    font-size: 34px;
    line-height: 1;
    cursor: pointer;
    transform: translateY(-50%);
}
.v615-most-viewed__arrow--prev {
    left: 0;
}
.v615-most-viewed__arrow--next {
    right: 0;
}
.v615-most-viewed__arrow:disabled {
    opacity: .3;
    cursor: default;
}
.v615-most-viewed-admin-note {
    margin: 20px 0;
    padding: 14px 16px;
    border-left: 4px solid #328cc1;
    background: #f3f8fb;
    color: #083c5d;
}
@media (hover:hover) and (pointer:fine) {
    .v615-most-viewed__item:hover {
        transform: translateY(-3px);
        box-shadow: 0 7px 18px rgba(8,60,93,.18);
    }
}
@media (max-width: 1050px) {
    .v615-most-viewed__track {
        grid-auto-columns: calc((100% - 54px) / 4);
    }
}
@media (max-width: 650px) {
    .v615-most-viewed {
        margin: 26px 0 30px;
    }
    .v615-most-viewed__inner {
        width: min(calc(100% - 24px), 1440px);
        padding: 24px 0 18px;
    }
    .v615-most-viewed__carousel {
        padding: 0 38px;
    }
    .v615-most-viewed__track {
        grid-auto-columns: calc((100% - 14px) / 2);
        gap: 14px;
    }
    .v615-most-viewed__arrow {
        width: 34px;
        height: 34px;
        font-size: 28px;
    }
    .v615-most-viewed__eyemark span {
        width: 70px;
    }
}
