/*
 * Digital Atelier — shared storefront language.
 * Loaded after the legacy theme stylesheet so existing content and WooCommerce
 * behaviour stay intact while core surfaces use one visual system.
 */
:root {
  --vg-ink: #1a1c1c;
  --vg-muted: #646862;
  --vg-gold: #775a19;
  --vg-gold-dark: #604715;
  --vg-paper: #f9f8f5;
  --vg-surface: #fff;
  --vg-warm: #f0eee8;
  --vg-warm-deep: #eae6dc;
  --vg-line: rgba(26, 28, 28, .14);
  --vg-font-display: 'Noto Serif', Georgia, serif;
  --vg-font-body: 'Manrope', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}
html { scroll-padding-top: 96px; }
body { background: var(--vg-paper); color: var(--vg-ink); font-family: var(--vg-font-body); }
body, button, input, select, textarea { -webkit-font-smoothing: antialiased; }
::selection { background: #e9dfc9; color: var(--vg-ink); }
:focus-visible { outline: 2px solid var(--vg-gold); outline-offset: 3px; }
.container, .vg-container { max-width: 1240px; }

/* Shared header and navigation */
.vg-topbar { background: var(--vg-ink); color: #f2efe8; font-size: 10px; font-weight: 600; letter-spacing: .09em; }
.vg-topbar a { color: #f2efe8; }
.vg-header { background: rgba(255,255,255,.88); border: 0; box-shadow: 0 8px 32px rgba(26,28,28,.035); -webkit-backdrop-filter: blur(20px); backdrop-filter: blur(20px); }
.vg-header-main { max-width: 1240px; min-height: 76px; padding: 14px 24px; }
.vg-logo img, .vg-logo .custom-logo { height: 30px; max-width: 208px; }
.vg-logo-text { font-size: 26px; letter-spacing: .09em; color: var(--vg-ink); }
.vg-search input { min-height: 42px; padding: 9px 42px 9px 14px; border: 1px solid var(--vg-line); border-radius: 3px; background: var(--vg-paper); }
.vg-search input:focus { border-color: var(--vg-gold); background: #fff; }
.vg-header-icons a { color: var(--vg-ink); }
.vg-header-icons a:hover { color: var(--vg-gold); }
.vg-nav { border: 0; background: transparent; }
.vg-nav li a { padding: 11px 16px 15px; color: var(--vg-ink); font-size: 11px; font-weight: 600; letter-spacing: .11em; }
.vg-nav .sub-menu { border: 0; border-radius: 3px; background: rgba(255,255,255,.96); box-shadow: 0 20px 40px rgba(26,28,28,.08); -webkit-backdrop-filter: blur(20px); backdrop-filter: blur(20px); }
.vg-nav .sub-menu li a { border: 0; }
.vg-nav .sub-menu li a:hover { background: var(--vg-warm); }
.vg-gold-access {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  min-height: 38px;
  padding: 8px 20px;
  background: var(--vg-warm);
  color: var(--vg-ink);
  text-align: center;
  transition: background .25s ease;
}
.vg-gold-access:hover { background: var(--vg-warm-deep); color: var(--vg-ink); }
.vg-gold-access-label { color: var(--vg-gold); font-size: 10px; font-weight: 800; letter-spacing: .13em; }
.vg-gold-access-action { font-size: 12px; font-weight: 700; }
.vg-gold-access-action span { display: inline-block; margin-left: 6px; color: var(--vg-gold); transition: transform .25s ease; }
.vg-gold-access:hover .vg-gold-access-action span { transform: translate(2px, -2px); }

/* Home: editorial rhythm instead of boxed sections */
.vg-homepage { background: var(--vg-paper); }
.vg-hero, .vg-hp-hero { background: var(--vg-warm); }
.vg-hero-slide img { height: min(70vh, 680px); }
.vg-hero-overlay { padding: clamp(28px, 6vw, 84px); background: linear-gradient(0deg, rgba(18,18,16,.56), transparent 74%); }
.vg-hero-title { max-width: 720px; font-family: var(--vg-font-display); font-size: clamp(32px, 4vw, 60px); font-weight: 400; letter-spacing: -.035em; line-height: 1.15; }
.vg-hp-hero-label-left { color: var(--vg-ink); font-size: clamp(25px, 3vw, 38px); letter-spacing: -.035em; }
.vg-hp-hero-label-right { color: var(--vg-gold); font-size: 10px; letter-spacing: .14em; }
.vg-hero-btn, .vg-cta-btn, .vg-btn-outline, .vg-filter-btn, .vg-btn-cart, .vg-btn-buynow { border: 0; border-radius: 3px; background: var(--vg-gold); color: #fff; font-family: var(--vg-font-body); font-size: 12px; font-weight: 700; letter-spacing: .03em; text-transform: none; }
.vg-hero-btn:hover, .vg-cta-btn:hover, .vg-btn-outline:hover, .vg-filter-btn:hover, .vg-btn-cart:hover, .vg-btn-buynow:hover { background: var(--vg-gold-dark); color: #fff; }
.vg-hero-arrow, .vg-carousel-arrow { width: 42px; height: 42px; border: 0; border-radius: 3px; background: rgba(255,255,255,.82); color: var(--vg-ink); box-shadow: 0 8px 30px rgba(26,28,28,.04); -webkit-backdrop-filter: blur(20px); backdrop-filter: blur(20px); }
.vg-hero-arrow:hover, .vg-carousel-arrow:hover { background: #fff; color: var(--vg-gold); }
.vg-section, .vg-hp-section { padding-top: clamp(56px, 7vw, 100px); padding-bottom: clamp(56px, 7vw, 100px); }
.vg-section-alt, .vg-hp-section:nth-of-type(even) { background: var(--vg-warm); }
.vg-section-title, .vg-section-head h2, .vg-hp-section-head h2 { color: var(--vg-ink); font-family: var(--vg-font-display); font-size: clamp(26px, 3vw, 42px); font-weight: 400; letter-spacing: -.035em; line-height: 1.2; }
.vg-section-title, .vg-section-head, .vg-hp-section-head { margin-bottom: clamp(25px, 4vw, 44px); }
.vg-section-head p, .vg-hp-section-head p { color: var(--vg-muted); }
.vg-trust, .vg-hp-trust { border: 0; background: var(--vg-warm); }
.vg-trust-item { border-color: transparent; color: var(--vg-muted); }
.vg-trust-item svg, .vg-hp-trust-item svg { color: var(--vg-gold); }
.vg-product-img-wrap, .vg-product-img-outer, .vg-carousel-item .vg-product-img-wrap { background: var(--vg-warm); border: 0; }
.vg-product-img-wrap img { transition: transform .55s ease; }
.vg-product-img-wrap:hover img { transform: scale(1.035); }
.vg-product-info { padding: 15px 3px 6px; text-align: left; }
.vg-product-info h3, .vg-prod-title { color: var(--vg-ink); font-size: 13px; font-weight: 600; text-align: left; }
.vg-product-price-wrap { justify-content: flex-start; }
.vg-price-new, .vg-prod-price { color: var(--vg-ink); font-size: 15px; font-weight: 700; text-align: left; }
.vg-badge-new, .vg-badge-best, .vg-mini-badge { border: 0; background: rgba(255,255,255,.88); color: var(--vg-ink); }
.vg-cat-banner { border-radius: 3px; }
.vg-cat-banner-inner h3 { font-family: var(--vg-font-display); font-size: clamp(24px, 2.5vw, 36px); font-weight: 400; letter-spacing: -.025em; }
.vg-cat-btn { border: 0; border-radius: 3px; background: rgba(255,255,255,.88); color: var(--vg-ink); text-transform: none; }
.vg-cat-banner:hover .vg-cat-btn { border: 0; background: var(--vg-gold); color: #fff; }

/* Catalog, search and filters */
.vg-archive-layout { max-width: 1240px; gap: 0 clamp(26px, 3vw, 48px); margin-top: 40px; }
.vg-archive-main { min-width: 0; }
.vg-breadcrumb { color: var(--vg-muted); font-size: 11px; letter-spacing: .02em; }
.vg-archive-title { margin: 8px 0 24px; color: var(--vg-ink); font-family: var(--vg-font-display); font-size: clamp(34px, 4.3vw, 56px); font-weight: 400; letter-spacing: -.04em; line-height: 1.12; text-align: left; }
.vg-archive-desc { color: var(--vg-muted); line-height: 1.75; }
.vg-subcats { justify-content: flex-start; gap: 8px; }
.vg-subcat-tag:not(.active) { border: 0 !important; border-radius: 3px; background: var(--vg-warm) !important; color: var(--vg-ink); }
.vg-subcat-tag:hover, .vg-subcat-tag.active { border: 0 !important; background: var(--vg-gold) !important; color: #fff !important; }
.vg-archive-main .vg-section-title { font-size: clamp(24px, 2.5vw, 34px) !important; }
.vg-sort-bar { padding: 16px 0; border: 0; background: transparent; }
.vg-sort-bar select, .vg-price-inputs input { border: 1px solid var(--vg-line); border-radius: 3px; background: #fff; color: var(--vg-ink); }
.vg-sidebar { background: transparent; }
.vg-sidebar-widget { border: 0; padding: 24px 0; }
.vg-sidebar-title { color: var(--vg-ink); font-size: 11px; letter-spacing: .12em; }
.vg-product-grid { gap: clamp(14px, 2vw, 26px); }
.vg-product-card { min-width: 0; }
.woocommerce ul.products li.product { background: transparent; }
.woocommerce ul.products li.product img { background: var(--vg-warm); }
.woocommerce ul.products li.product .woocommerce-loop-product__title { color: var(--vg-ink); font-size: 13px; font-weight: 600; }
.woocommerce ul.products li.product .price { color: var(--vg-ink); font-size: 15px; font-weight: 700; }

/* Product: one gallery, one calm purchasing surface */
.vg-single { max-width: 1240px; padding-top: 30px; }
.vg-single-trust { margin-bottom: 30px; padding: 16px 0; border: 0; background: var(--vg-warm); }
.vg-single-trust .vg-trust-item { border: 0; color: var(--vg-muted); }
.vg-single-grid { grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); gap: clamp(28px, 5vw, 72px); align-items: start; }
.vg-single-gallery { min-width: 0; background: var(--vg-warm); }
.vg-single-info { min-width: 0; }
.vg-single-title { color: var(--vg-ink); font-family: var(--vg-font-display); font-size: clamp(27px, 3vw, 40px); font-weight: 400; letter-spacing: -.035em; line-height: 1.2; }
.vg-single-price .new { color: var(--vg-ink); font-size: clamp(26px, 3vw, 36px); font-weight: 600; letter-spacing: -.045em; }
.vg-price-label, .vg-single-installment { color: var(--vg-muted); }
.vg-single-option select { max-width: 100%; min-height: 48px; border: 1px solid var(--vg-line); border-radius: 3px; background: #fff; }
.vg-single-option select:focus { border-color: var(--vg-gold); }
.vg-btn-wish, .vg-single-wish { border: 1px solid var(--vg-line); border-radius: 3px; background: #fff; }
.vg-single-mini-badges { gap: 8px; }
.vg-mini-badge { background: var(--vg-warm); color: var(--vg-muted); }
.vg-accordion { border: 0; }
.vg-accordion-header { padding: 18px 0; color: var(--vg-ink); }
.vg-accordion-body { color: var(--vg-muted); }

/* Forms, checkout, account and footer */
.woocommerce-account .woocommerce-MyAccount-navigation, .woocommerce-account .woocommerce-MyAccount-content { border: 0; border-radius: 3px; background: #fff; }
.woocommerce-account .woocommerce-MyAccount-navigation ul li a { border: 0; }
.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a { background: var(--vg-warm); color: var(--vg-gold); }
.woocommerce-account .woocommerce-Button, .woocommerce-account button[type="submit"], .woocommerce-account .button { background: var(--vg-gold) !important; border-radius: 3px !important; text-transform: none !important; letter-spacing: .03em !important; }
.woocommerce-account .woocommerce-Button:hover, .woocommerce-account button[type="submit"]:hover, .woocommerce-account .button:hover { background: var(--vg-gold-dark) !important; }
.woocommerce input.input-text, .woocommerce textarea, .woocommerce select, .vg-newsletter-form input, .vg-price-inputs input { border: 1px solid var(--vg-line); border-radius: 3px; background: #fff; }
.woocommerce input.input-text:focus, .woocommerce textarea:focus, .woocommerce select:focus, .vg-newsletter-form input:focus { border-color: var(--vg-gold); outline: 2px solid rgba(119,90,25,.1); }
.vg-footer { background: var(--vg-ink); color: #b8b9b3; }
.vg-footer h4 { color: #f7f5ee; font-size: 11px; letter-spacing: .13em; }
.vg-footer ul li a { color: #b8b9b3; }
.vg-footer-bottom { border-top-color: rgba(255,255,255,.12); }
.vg-mobile-drawer { background: var(--vg-paper); box-shadow: 0 20px 40px rgba(26,28,28,.08); }
.vg-mobile-drawer-header { border: 0; background: var(--vg-ink); }
.vg-mobile-menu-list li a { border: 0; color: var(--vg-ink); }
.vg-mobile-menu-list li a:hover { background: var(--vg-warm); }
.vg-mobile-menu-list .sub-menu li a { background: var(--vg-warm); }
.vg-mobile-menu-footer { border: 0; background: var(--vg-warm); }

@media (max-width: 900px) {
  .vg-header-main { min-height: 62px; }
  .vg-archive-layout { margin-top: 22px; }
  .vg-sidebar { background: var(--vg-paper); }
  .vg-mobile-filter-bar { border: 0; }
  .vg-mobile-filter-btn { min-height: 42px; border: 0; border-radius: 3px; background: var(--vg-warm); color: var(--vg-ink); text-transform: none; letter-spacing: .02em; }
  .vg-single-grid { grid-template-columns: 1fr; gap: 24px; }
}
@media (max-width: 600px) {
  html { scroll-padding-top: 70px; }
  .vg-topbar { padding: 7px 0; font-size: 10px; }
  .vg-topbar-links { display: none; }
  .vg-header-main { padding: 10px 18px; }
  .vg-header-icons { gap: 12px; }
  .vg-header-icons .vg-account-trigger span, .vg-cart-label { display: none; }
  .vg-account-dropdown { right: 0; left: auto; }
  .vg-logo img, .vg-logo .custom-logo { height: 27px; max-width: 150px; }
  .vg-logo-text { font-size: 21px; }
  .vg-nav { display: none; }
  .vg-gold-access { justify-content: space-between; gap: 8px; min-height: 46px; padding: 10px 18px; }
  .vg-gold-access-label { font-size: 10px; white-space: nowrap; }
  .vg-gold-access-action { font-size: 12px; white-space: nowrap; }
  .vg-hero-slide img { height: 420px; }
  .vg-hero-overlay { padding: 30px 20px; }
  .vg-hero-title { font-size: 34px; }
  .vg-hp-hero-label-left { font-size: 27px; }
  .vg-section, .vg-hp-section { padding-top: 54px; padding-bottom: 54px; }
  .vg-section-title, .vg-section-head h2, .vg-hp-section-head h2 { font-size: 29px; }
  .vg-product-grid, .woocommerce ul.products { gap: 12px !important; }
  .vg-products-row { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 12px !important; }
  .vg-carousel-item { min-width: min(62vw, 250px); }
  .vg-product-info h3, .vg-prod-title { font-size: 12px; }
  .vg-archive-title { font-size: 35px; }
  .vg-archive-layout { padding: 0 16px; }
  .vg-single { padding: 16px; }
  .vg-single-trust { margin: 0 -16px 24px; padding: 9px 16px; }
  .vg-single-trust-inner { display: flex; flex-wrap: nowrap; overflow-x: auto; justify-content: flex-start; gap: 14px; scrollbar-width: none; }
  .vg-single-trust-inner::-webkit-scrollbar { display: none; }
  .vg-single-trust .vg-trust-item { flex: 0 0 auto; width: auto; min-width: 90px; padding: 6px 0; border: 0; white-space: nowrap; }
  .vg-single-title { font-size: 29px; }
  .vg-single-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
  .vg-btn-cart, .vg-btn-buynow { min-height: 48px; padding: 12px 10px; }
  .vg-footer { padding-top: 46px; }
  .vg-footer-grid { gap: 28px 16px; }
}
@media (prefers-reduced-motion: reduce) {
  .vg-hero-slider, .vg-product-img-wrap img, .vg-mobile-drawer, .vg-sidebar { transition-duration: .01ms; }
}
