/*
Theme Name: VineWallet
Theme URI: https://vinewallet.ca
Author: LeafLink Solutions Inc.
Description: A custom, commerce-ready theme for VineWallet digital products.
Version: 1.7.0
Requires at least: 6.4
Tested up to: 6.8
Requires PHP: 8.0
Text Domain: vinewallet
License: GNU General Public License v2 or later
*/

:root {
  --vw-bg-primary:#0a0a0a;
  --vw-bg-secondary:#0f1b2e;
  --vw-bg-card:#13243a;
  --vw-emerald:#1c5e45;
  --vw-emerald-deep:#0b3d2e;
  --vw-burgundy:#6b1830;
  --vw-burgundy-deep:#4a0e1f;
  --vw-navy-deep:#0f1b2e;
  --vw-marble-white:#f4f1ea;
  --vw-marble-black:#0a0a0a;
  --vw-ink:#1a1512;
  --vw-gold:#c9a961;
  --vw-gold-light:#e2c97e;
  --vw-gold-dark:#a8873a;
  --vw-gold-bright:#e4c784;
  --vw-gold-deep:#9a7b3f;
  --vw-cream:#f5f1e8;
  --vw-text:#d4cfc4;
  --vw-muted:#9a9589;
  --vw-teal:#07534a;
  --vw-border:rgba(201,169,97,.16);
  --vw-container:1200px;
  --vw-pad:clamp(20px,4vw,40px);
  --vw-section:clamp(72px,9vw,120px);
  --vw-shadow:0 24px 70px rgba(0,0,0,.38);
  --vw-ease:cubic-bezier(.16,.84,.44,1);
  --vw-ornament-subtle:.08;
  --vw-ornament-visible:.9;
  --vw-marble-texture-opacity:.2;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--vw-bg-primary)}
body{margin:0;background:var(--vw-ink);color:var(--vw-cream);font-family:Inter,system-ui,sans-serif;font-size:16px;line-height:1.7;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background:radial-gradient(circle at 14% 12%,rgba(7,83,74,.14),transparent 31%),radial-gradient(circle at 88% 26%,rgba(60,16,34,.12),transparent 28%),radial-gradient(circle at 50% 88%,rgba(201,169,97,.035),transparent 35%)}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
h1,h2,h3,h4,h5,h6{font-family:"Playfair Display",Georgia,serif;line-height:1.15}
em{font-family:"Playfair Display",Georgia,serif;color:var(--vw-gold-light)}
::selection{background:var(--vw-gold);color:var(--vw-bg-primary)}
.screen-reader-text,.vw-skip-link{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.vw-skip-link:focus{clip:auto;width:auto;height:auto;left:16px;top:16px;z-index:999;padding:12px 18px;background:var(--vw-gold);color:var(--vw-bg-primary)}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--vw-gold-light);outline-offset:3px}
.vw-container{width:min(calc(100% - 2 * var(--vw-pad)),var(--vw-container));margin-inline:auto}
.vw-shell{position:relative;z-index:1;background:linear-gradient(180deg,var(--vw-bg-primary),var(--vw-bg-secondary) 46%,var(--vw-emerald-deep) 72%,var(--vw-bg-primary))}
.vw-section{position:relative;padding:var(--vw-section) 0}
.vw-section-header{text-align:center;margin-bottom:56px}
.vw-eyebrow{margin:0 0 14px;color:var(--vw-gold);font-size:.72rem;font-weight:700;letter-spacing:.34em;text-transform:uppercase}
.vw-title{margin:0;color:var(--vw-cream);font-size:clamp(2rem,4.2vw,3.35rem);font-weight:600;letter-spacing:-.015em}
.vw-title em{font-weight:400}
.vw-divider{display:grid;place-items:center;width:230px;height:28px;margin:20px auto 0;background:linear-gradient(90deg,transparent,var(--vw-gold) 22%,transparent 22.4% 77.6%,var(--vw-gold) 78%,transparent)}
.vw-divider::before{content:"❦  ◈  ❦";color:var(--vw-gold);font-family:Georgia,serif;font-size:14px;letter-spacing:.35em;white-space:nowrap}
.vw-divider-left{margin-left:0}
.vw-centered{text-align:center;margin:44px 0 0}
.vw-btn,.vw-btn-outline,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.wc-block-components-button{display:inline-flex!important;align-items:center;justify-content:center;min-height:50px;padding:13px 27px!important;border-radius:0!important;font-size:.75rem!important;font-weight:700!important;letter-spacing:.14em;text-transform:uppercase;transition:transform .3s var(--vw-ease),background .3s,color .3s,border-color .3s,box-shadow .3s}
.vw-btn,.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt,.wc-block-components-button{background:linear-gradient(135deg,var(--vw-gold),var(--vw-gold-dark))!important;border:1px solid var(--vw-gold)!important;color:var(--vw-bg-primary)!important}
.vw-btn-outline,.woocommerce a.button:not(.alt),.woocommerce button.button:not(.alt),.woocommerce input.button:not(.alt){background:transparent!important;border:1px solid var(--vw-gold)!important;color:var(--vw-gold)!important}
.vw-btn:hover,.vw-btn-outline:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.wc-block-components-button:hover{transform:translateY(-2px);box-shadow:0 10px 32px rgba(201,169,97,.24)}

/* Header */
.vw-nav{position:sticky;top:0;z-index:100;background:rgba(4,8,7,.95);border-bottom:1px solid rgba(201,169,97,.2);backdrop-filter:blur(18px);transition:box-shadow .35s,border-color .35s}
.vw-nav::after{content:"❦  ◈  ❦";position:absolute;left:0;right:0;bottom:-11px;height:20px;text-align:center;color:var(--vw-gold);font-family:Georgia,serif;font-size:14px;letter-spacing:.6em;background:linear-gradient(90deg,transparent,rgba(201,169,97,.42) 22%,transparent 22.2% 77.8%,rgba(201,169,97,.42) 78%,transparent);pointer-events:none}
.vw-nav.is-scrolled{border-bottom-color:rgba(201,169,97,.24);box-shadow:0 14px 40px rgba(0,0,0,.38)}
.vw-nav-inner{display:flex;align-items:center;justify-content:space-between;gap:26px;min-height:84px;transition:min-height .35s}
.vw-nav.is-scrolled .vw-nav-inner{min-height:66px}
.vw-brand{display:inline-flex;align-items:center;gap:13px;min-width:0}
.vw-logo,.vw-brand .custom-logo{width:58px;height:58px;object-fit:contain}
.vw-brand-text{color:var(--vw-gold);font-family:"Playfair Display",Georgia,serif;font-size:1.25rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;white-space:nowrap}
.vw-menu{display:flex;align-items:center;gap:clamp(18px,2.4vw,32px);list-style:none;margin:0;padding:0}
.vw-menu a:not(.vw-btn-outline){color:var(--vw-text);font-size:.78rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;transition:color .2s}
.vw-menu a:hover{color:var(--vw-gold)}
.vw-nav-cta{min-height:42px;padding:9px 18px!important}
.vw-hamburger{display:none;width:48px;height:48px;background:transparent;border:1px solid rgba(201,169,97,.3);align-items:center;justify-content:center;flex-direction:column;gap:5px}
.vw-hamburger>span:not(.screen-reader-text){display:block;width:20px;height:1px;background:var(--vw-gold);transition:transform .3s,opacity .3s}
.vw-hamburger.is-active>span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.vw-hamburger.is-active>span:nth-child(2){opacity:0}
.vw-hamburger.is-active>span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

/* 16:9 hero slider */
.vw-hero-slider{position:relative;background:var(--vw-ink)}
.vw-slider-frame{position:relative;width:100%;max-width:none;aspect-ratio:16/9;min-height:640px;max-height:calc(100vh - 66px);overflow:hidden}
.vw-slider-track,.vw-slide{position:absolute;inset:0}
.vw-slide{opacity:0;visibility:hidden;transition:opacity .65s var(--vw-ease),visibility .65s;isolation:isolate}
.vw-slide.is-active{opacity:1;visibility:visible;z-index:2}
.vw-slide::before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(110deg,rgba(2,4,5,.2),rgba(7,63,53,.11) 46%,rgba(60,16,34,.12)),radial-gradient(ellipse 65% 72% at 20% 48%,rgba(7,83,74,.3),transparent 64%),radial-gradient(ellipse 52% 62% at 82% 42%,rgba(60,16,34,.19),transparent 58%),linear-gradient(140deg,#020405,#071321 58%,#0d1827)}
.vw-slide::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,transparent 0 48%,rgba(201,169,97,.04) 48% 48.08%,transparent 48.08%),radial-gradient(circle at 83% 85%,transparent 0 17%,rgba(201,169,97,.06) 17.15% 17.35%,transparent 17.5%)}
.vw-slide-full::before{background-image:linear-gradient(90deg,rgba(6,9,17,.93),rgba(6,9,17,.62) 52%,rgba(6,9,17,.24)),var(--vw-slide-image);background-position:center;background-size:cover}
.vw-slide-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:clamp(34px,5vw,76px);align-items:center;height:100%;padding-top:clamp(38px,5vw,72px);padding-bottom:clamp(54px,5vw,72px)}
.vw-slide-full .vw-slide-grid{grid-template-columns:minmax(0,690px) 1fr}
.vw-hero-copy{max-width:660px}
.vw-hero-copy h1{margin:0 0 20px;color:var(--vw-cream);font-size:clamp(2.7rem,5.2vw,5rem);font-weight:600;letter-spacing:-.025em}
.vw-hero-copy h1 em{font-weight:400}
.vw-hero-sub{max-width:630px;margin:0 0 26px;color:var(--vw-text);font-size:clamp(1rem,1.35vw,1.16rem);line-height:1.8}
.vw-hero-benefits{display:flex;flex-wrap:wrap;gap:9px 22px;margin:0 0 25px;color:var(--vw-gold-light);font-family:"Playfair Display",Georgia,serif;font-size:.9rem;line-height:1.55}
.vw-hero-benefits span{position:relative;padding-left:18px}
.vw-hero-benefits span::before{content:"\2766";position:absolute;left:0;color:var(--vw-gold);font-family:Georgia,serif}
.vw-stats{display:flex;flex-wrap:wrap;gap:32px;margin:0 0 30px}
.vw-stat{min-width:86px}
.vw-stat::before{content:"◈";display:block;margin-bottom:6px;color:var(--vw-gold);font-size:.72rem}
.vw-stat strong{display:block;color:var(--vw-gold);font-family:"Playfair Display",Georgia,serif;font-size:2.15rem;line-height:1}
.vw-stat span{display:block;margin-top:7px;color:var(--vw-muted);font-size:.68rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.vw-actions{display:flex;flex-wrap:wrap;gap:14px}
.vw-book{display:flex;justify-content:center;align-items:center;min-width:0}
.vw-book-frame{position:relative;width:min(80%,430px);transform-style:preserve-3d}
.vw-book-frame::before{content:"";position:absolute;inset:-17px;border:1px solid rgba(201,169,97,.16);transform:rotate(2deg)}
.vw-book-frame::after{content:"❦";position:absolute;left:-34px;bottom:-34px;z-index:3;color:var(--vw-gold);font-family:Georgia,serif;font-size:3.5rem;line-height:1;transform:rotate(-18deg);text-shadow:0 8px 20px rgba(0,0,0,.35)}
.vw-book-cover{position:relative;z-index:1;overflow:hidden}
.vw-book-frame img{width:100%;max-height:60vh;object-fit:contain;box-shadow:0 34px 90px rgba(0,0,0,.55);transition:transform .4s,box-shadow .4s}
.vw-book-frame:hover img{transform:translateY(-6px) rotate(-1deg);box-shadow:0 42px 100px rgba(0,0,0,.65)}
.vw-book-shine{position:absolute;inset:-35%;z-index:2;pointer-events:none;opacity:0;background:linear-gradient(115deg,transparent 38%,rgba(226,201,126,.38) 48%,transparent 58%);transform:translateX(-45%) rotate(15deg);transition:opacity .4s,transform 1.1s}
.vw-book-frame:hover .vw-book-shine{opacity:.6;transform:translateX(45%) rotate(15deg)}
.vw-badge{position:absolute;top:-13px;right:-17px;z-index:3;padding:8px 14px;background:linear-gradient(135deg,var(--vw-gold),var(--vw-gold-dark));color:var(--vw-bg-primary);font-size:.61rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;transform:rotate(3deg)}
.vw-slider-arrow{position:absolute;z-index:5;top:50%;width:48px;height:58px;border:1px solid rgba(201,169,97,.28);background:rgba(6,9,17,.65);color:var(--vw-gold);font-family:Georgia,serif;font-size:2rem;line-height:1;transform:translateY(-50%);transition:background .2s,border-color .2s}
.vw-slider-arrow:hover{background:rgba(201,169,97,.12);border-color:var(--vw-gold)}
.vw-slider-prev{left:18px}.vw-slider-next{right:18px}
.vw-slider-dots{position:absolute;z-index:6;bottom:20px;left:50%;display:flex;gap:9px;transform:translateX(-50%)}
.vw-slider-dots button{width:28px;height:4px;padding:0;border:0;background:rgba(245,241,232,.28);transition:background .2s,width .2s}
.vw-slider-dots button[aria-selected="true"]{width:48px;background:var(--vw-gold)}

/* Product sections */
.vw-story{background:radial-gradient(ellipse 70% 55% at 85% 15%,rgba(201,169,97,.065),transparent 52%),radial-gradient(ellipse 50% 70% at 5% 80%,rgba(7,83,74,.2),transparent 58%),linear-gradient(135deg,var(--vw-emerald-deep),var(--vw-bg-secondary) 58%,var(--vw-burgundy-deep))}
.vw-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,50px);align-items:center}
.vw-quote-box,.vw-card,.vw-testimonial,.vw-author-box,.vw-product-card,.vw-woocommerce-shell{background:linear-gradient(180deg,rgba(17,23,48,.58),rgba(6,9,17,.84));border:1px solid var(--vw-border)}
.vw-quote-box{padding:clamp(26px,4vw,44px);text-align:center}
.vw-big-quote{margin-bottom:-12px;color:rgba(201,169,97,.16);font-family:"Playfair Display",serif;font-size:5rem;line-height:.8}
.vw-quote-box blockquote{margin:0 0 20px;color:var(--vw-gold-light);font-family:"Playfair Display",serif;font-size:1.22rem;font-style:italic;line-height:1.7}
.vw-quote-box cite{color:var(--vw-muted);font-size:.67rem;font-style:normal;font-weight:700;letter-spacing:.22em;text-transform:uppercase}
.vw-richtext p{margin:0 0 18px;color:var(--vw-text);font-size:1.06rem;line-height:1.86}
.vw-book-dive{background:radial-gradient(ellipse 70% 60% at 50% 50%,rgba(7,83,74,.09),transparent 62%),linear-gradient(180deg,var(--vw-ink),var(--vw-bg-secondary),var(--vw-ink))}
.vw-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.vw-card-grid .vw-card{position:relative;display:flex;min-height:292px;padding:24px 18px;overflow:hidden;flex-direction:column;align-items:center;justify-content:flex-start}
.vw-card-grid .vw-card:nth-child(4n+1),.vw-card-grid .vw-card:nth-child(4n+4){background:linear-gradient(155deg,rgba(7,63,53,.34),rgba(2,4,5,.86))}
.vw-card-grid .vw-card:nth-child(4n+2),.vw-card-grid .vw-card:nth-child(4n+3){background:linear-gradient(155deg,rgba(60,16,34,.27),rgba(2,4,5,.88))}
.vw-chapter-symbol{position:relative;display:grid;width:66px;height:66px;margin:2px auto 17px;place-items:center;border:1px solid rgba(201,169,97,.46);border-radius:50%;background:radial-gradient(circle,rgba(201,169,97,.12),rgba(7,63,53,.18) 56%,rgba(2,4,5,.68));box-shadow:inset 0 0 0 5px rgba(201,169,97,.025),0 8px 24px rgba(0,0,0,.25);color:var(--vw-gold-light);font-family:"Playfair Display",Georgia,serif;font-size:1.75rem;line-height:1}
.vw-chapter-symbol::before{content:"";position:absolute;inset:-7px;border:1px solid rgba(201,169,97,.24);border-block-color:transparent;border-radius:50%;transform:rotate(25deg)}
.vw-chapter-symbol::after{display:block}
.vw-symbol-1::after{content:"\25C6"}.vw-symbol-2::after{content:"\2197"}.vw-symbol-3::after{content:"\25CE"}.vw-symbol-4::after{content:"\2B21"}
.vw-symbol-5::after{content:"\2724"}.vw-symbol-6::after{content:"\221E"}.vw-symbol-7::after{content:"\2740"}.vw-symbol-8::after{content:"\27F3"}
.vw-symbol-2,.vw-symbol-5,.vw-symbol-8{background:radial-gradient(circle,rgba(201,169,97,.12),rgba(60,16,34,.23) 56%,rgba(2,4,5,.68))}
.vw-swipe-hint{display:none;margin:14px 0 0;color:var(--vw-gold-light);font-size:.7rem;font-weight:700;letter-spacing:.14em;text-align:center;text-transform:uppercase}
.vw-card{padding:30px 22px;text-align:center;transition:transform .35s,border-color .35s,box-shadow .35s}
.vw-card:hover,.vw-testimonial:hover{transform:translateY(-4px);border-color:rgba(201,169,97,.34);box-shadow:var(--vw-shadow)}
.vw-card h3,.vw-tip h3,.vw-product-card h2{margin:0 0 10px;color:var(--vw-gold);font-size:1.12rem}
.vw-meta{display:block;margin-bottom:12px;color:var(--vw-muted);font-size:.61rem;font-weight:700;letter-spacing:.19em;text-transform:uppercase}
.vw-card p,.vw-tip p,.vw-testimonial blockquote,.vw-author-copy p,.vw-product-card p{margin:0;color:var(--vw-text);font-size:.96rem;line-height:1.75}
.vw-tips{background:radial-gradient(ellipse 80% 52% at 50% 50%,rgba(201,169,97,.05),transparent 60%),linear-gradient(125deg,var(--vw-burgundy-deep),var(--vw-bg-card) 48%,var(--vw-emerald-deep))}
.vw-tips-wrap{max-width:920px;margin:auto}
.vw-tip{display:grid;grid-template-columns:56px 1fr;gap:20px;padding:28px 0;border-bottom:1px solid rgba(201,169,97,.09)}
.vw-tip:last-child{border-bottom:0}
.vw-tip-num{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,var(--vw-gold),var(--vw-gold-dark));color:var(--vw-bg-primary);font-family:"Playfair Display",serif;font-weight:700}
.vw-tag,.vw-product-category{display:inline-block;margin-top:12px;padding:4px 10px;border:1px solid rgba(201,169,97,.24);color:var(--vw-gold-light);font-size:.58rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.vw-toolkit{background:radial-gradient(ellipse 60% 42% at 50% 0,rgba(201,169,97,.08),transparent 52%),linear-gradient(145deg,var(--vw-emerald-deep),var(--vw-ink) 48%,var(--vw-burgundy-deep))}
.vw-shop-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.vw-price-card{display:flex;flex-direction:column;align-items:center;min-height:500px}
.vw-shop-grid .vw-price-card:nth-child(1){background:linear-gradient(165deg,rgba(7,63,53,.36),rgba(2,4,5,.92))}
.vw-shop-grid .vw-price-card:nth-child(3){background:linear-gradient(165deg,rgba(60,16,34,.32),rgba(2,4,5,.92))}
.vw-product-category{margin:0 0 11px}
.vw-product-category::before,.vw-product-category::after{color:var(--vw-gold);font-family:Georgia,serif;opacity:.75}.vw-product-category::before{content:"\2766";margin-right:7px}.vw-product-category::after{content:"\2767";margin-left:7px}
.vw-price{margin:12px 0 18px;color:var(--vw-gold);font-family:"Playfair Display",serif;font-size:2.25rem}
.vw-price::before{content:"\25C9  \25C9  \25C9";display:block;margin-bottom:4px;color:rgba(201,169,97,.72);font-family:Georgia,serif;font-size:.5rem;letter-spacing:-.15em;transform:rotate(-7deg)}
.vw-feature-list{width:100%;list-style:none;margin:0 0 22px;padding:0;text-align:left}
.vw-feature-list li{padding:9px 0;border-bottom:1px solid rgba(201,169,97,.06);color:var(--vw-text);font-size:.92rem}
.vw-feature-list li::before{content:"✓";margin-right:9px;color:var(--vw-gold)}
.vw-card-note{margin:auto 0 18px!important;color:var(--vw-muted)!important;font-size:.86rem!important;font-style:italic}
.vw-featured{position:relative;border-color:rgba(201,169,97,.38);background:linear-gradient(180deg,rgba(201,169,97,.08),rgba(6,9,17,.93))}
.vw-newsletter{background:radial-gradient(ellipse 70% 50% at 50% 0,rgba(201,169,97,.1),transparent 56%),linear-gradient(115deg,var(--vw-burgundy-deep),var(--vw-bg-card) 50%,var(--vw-emerald-deep));border-block:1px solid rgba(201,169,97,.16)}
.vw-newsletter-box{max-width:670px;margin:auto;text-align:center}
.vw-newsletter-box>.vw-divider{margin-bottom:28px}
.vw-newsletter-box>p:not(.vw-eyebrow):not(.vw-newsletter-note){max-width:520px;margin:0 auto 28px;color:var(--vw-text)}
.vw-newsletter-form{position:relative;display:flex;gap:12px;max-width:500px;margin:auto}
.vw-newsletter-form::before,.vw-newsletter-form::after{position:absolute;top:50%;color:var(--vw-gold);font-family:Georgia,serif;font-size:1.8rem;transform:translateY(-50%)}
.vw-newsletter-form::before{content:"❦";left:-48px}.vw-newsletter-form::after{content:"❧";right:-48px}
.vw-newsletter-form input{flex:1;min-width:0;min-height:50px;padding:12px 17px;background:rgba(6,9,17,.72);border:1px solid rgba(201,169,97,.32);border-radius:0;color:var(--vw-cream)}
.vw-newsletter-note{margin:15px 0 0!important;color:var(--vw-muted)!important;font-size:.76rem}
.vw-newsletter-status{min-height:1.4em;margin-top:12px;color:var(--vw-gold-light);font-size:.84rem}
.vw-testimonials{background:radial-gradient(circle at 50% 100%,rgba(60,16,34,.15),transparent 46%),linear-gradient(180deg,var(--vw-ink),var(--vw-bg-secondary))}
.vw-testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.vw-testimonial{margin:0;padding:34px 26px;transition:transform .35s,border-color .35s,box-shadow .35s}
.vw-stars{margin-bottom:15px;color:var(--vw-gold);letter-spacing:.13em}
.vw-testimonial blockquote{margin:0 0 19px}
.vw-author-name{color:var(--vw-gold-dark);font-size:.7rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.vw-author{background:radial-gradient(ellipse 60% 48% at 12% 85%,rgba(7,83,74,.22),transparent 54%),radial-gradient(ellipse 45% 60% at 92% 10%,rgba(60,16,34,.2),transparent 54%),var(--vw-bg-card)}
.vw-author-box{padding:clamp(28px,4vw,44px)}
.vw-author-grid{display:grid;grid-template-columns:220px 1fr;gap:38px;align-items:center}
.vw-author-seal{display:grid;place-items:center;width:200px;height:200px;margin:auto;border:1px solid rgba(201,169,97,.28);border-radius:50%;background:radial-gradient(circle,rgba(201,169,97,.07),rgba(2,4,5,.6));box-shadow:0 0 60px rgba(201,169,97,.07)}
.vw-author-seal img{width:158px;height:158px;object-fit:contain}
.vw-author-copy h3{margin:0 0 7px;color:var(--vw-gold-light);font-size:1.5rem}
.vw-author-role{margin:0 0 18px!important;color:var(--vw-muted)!important;font-size:.67rem!important;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.vw-author-copy p+p{margin-top:14px}
.vw-cta{text-align:center;background:radial-gradient(ellipse 80% 60% at 50% 50%,rgba(201,169,97,.1),transparent 52%),linear-gradient(120deg,var(--vw-burgundy-deep),var(--vw-emerald),var(--vw-bg-primary))}
.vw-cta .vw-divider{margin-bottom:28px}.vw-cta>div>p:not(.vw-eyebrow){max-width:660px;margin:0 auto 30px;color:var(--vw-text);font-size:1.06rem}
.vw-actions-center{justify-content:center}

/* Archive and pages */
.vw-archive-hero{text-align:center;background:radial-gradient(circle at 50% 0,rgba(201,169,97,.08),transparent 55%)}
.vw-archive-hero p:last-child{max-width:620px;margin:28px auto 0;color:var(--vw-text)}
.vw-product-archive{padding-top:0}
.vw-product-grid{display:grid;gap:30px}
.vw-product-card{display:grid;grid-template-columns:minmax(240px,340px) 1fr;gap:clamp(28px,5vw,64px);align-items:center;padding:clamp(24px,4vw,48px)}
.vw-product-image{display:block;background:rgba(201,169,97,.025)}
.vw-product-image img{width:100%;max-height:460px;object-fit:contain}
.vw-product-card h2{font-size:clamp(1.8rem,3.2vw,2.6rem)}
.vw-product-card p{margin-bottom:24px;max-width:620px}
.vw-content-narrow{max-width:850px}
.vw-page{min-height:62vh}
.vw-page-content{margin-top:40px;color:var(--vw-text)}
.vw-page-content h2,.vw-page-content h3{color:var(--vw-gold-light)}
.vw-page-content a{text-decoration:underline;text-decoration-color:var(--vw-gold)}
.vw-post-card{margin:30px 0;padding:24px;border:1px solid var(--vw-border)}
.vw-empty{text-align:center;min-height:60vh;display:grid;place-items:center;align-content:center;gap:20px}

/* Footer */
.vw-footer{position:relative;z-index:1;padding:68px 0 28px;background:linear-gradient(110deg,#050705,var(--vw-emerald-deep) 50%,var(--vw-burgundy-deep));border-top:1px solid rgba(201,169,97,.18)}
.vw-footer::before{content:"❦  ∞  ❦";position:absolute;left:0;right:0;top:12px;text-align:center;color:var(--vw-gold);font-family:Georgia,serif;font-size:16px;letter-spacing:.55em;background:linear-gradient(90deg,transparent,rgba(201,169,97,.38) 25%,transparent 25.2% 74.8%,rgba(201,169,97,.38) 75%,transparent)}
.vw-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:34px}
.vw-footer-copy{max-width:320px;margin:15px 0 0;color:var(--vw-muted);font-size:.9rem}
.vw-footer-col h2{margin:0 0 17px;color:var(--vw-gold);font-family:Inter,sans-serif;font-size:.68rem;letter-spacing:.2em;text-transform:uppercase}
.vw-footer-col a{display:block;padding:5px 0;color:var(--vw-muted);font-size:.9rem;transition:color .2s}.vw-footer-col a:hover{color:var(--vw-gold)}
.vw-footer-bottom{display:flex;justify-content:space-between;gap:16px;margin-top:40px;padding-top:24px;border-top:1px solid rgba(201,169,97,.08);color:var(--vw-muted);font-size:.8rem}

/* WooCommerce and blocks */
.vw-commerce{min-height:65vh;background:radial-gradient(circle at 50% 0,rgba(201,169,97,.06),transparent 42%)}
.vw-woocommerce-shell{padding:clamp(22px,4vw,48px)}
.woocommerce,.woocommerce-page,.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout{color:var(--vw-text)}
.woocommerce h1,.woocommerce h2,.woocommerce h3,.woocommerce-page h1,.woocommerce-page h2,.woocommerce-page h3,.wc-block-components-title{color:var(--vw-cream)}
.woocommerce-info,.woocommerce-message,.woocommerce-error{background:rgba(17,23,48,.72)!important;border-top-color:var(--vw-gold)!important;color:var(--vw-text)!important}
.woocommerce-info::before,.woocommerce-message::before{color:var(--vw-gold)!important}
.woocommerce table.shop_table,.woocommerce form.checkout_coupon,.woocommerce form.login,.woocommerce form.register,.wc-block-components-sidebar-layout{border-color:var(--vw-border)!important;border-radius:0!important}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{border-color:var(--vw-border)!important;color:var(--vw-text)}
.woocommerce-cart-form__cart-item,.woocommerce-checkout-review-order-table{background:rgba(6,9,17,.28)}
.woocommerce input.input-text,.woocommerce textarea,.woocommerce select,.select2-container--default .select2-selection--single,.wc-block-components-text-input input,.wc-block-components-textarea{min-height:48px;padding:10px 14px!important;background:rgba(6,9,17,.7)!important;border:1px solid rgba(201,169,97,.28)!important;border-radius:0!important;color:var(--vw-cream)!important}
.select2-dropdown{background:var(--vw-bg-card);color:var(--vw-cream)}
.woocommerce form .form-row label,.wc-block-components-form label{color:var(--vw-text)}
.woocommerce a,.wc-block-components-product-name{color:var(--vw-gold-light)}
.woocommerce .quantity .qty{width:74px}
.woocommerce-checkout #payment{background:rgba(17,23,48,.7)!important;border-radius:0!important}
.woocommerce-checkout #payment div.payment_box{background:var(--vw-bg-primary)!important;color:var(--vw-text)!important}
.woocommerce-checkout #payment div.payment_box::before{border-bottom-color:var(--vw-bg-primary)!important}
.woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;border:1px solid var(--vw-border)}
.woocommerce-MyAccount-navigation li a{display:block;padding:12px 16px;border-bottom:1px solid var(--vw-border)}
.woocommerce-MyAccount-navigation li.is-active a{background:rgba(201,169,97,.09)}

/* Jewel-tone and genuine marble section system */
.vw-tone-emerald{background-color:var(--vw-emerald-deep)!important;background-image:radial-gradient(circle at 18% 18%,rgba(228,199,132,.07),transparent 28%),linear-gradient(135deg,var(--vw-emerald-deep),var(--vw-emerald))!important}
.vw-tone-burgundy{background-color:var(--vw-burgundy-deep)!important;background-image:radial-gradient(circle at 82% 20%,rgba(228,199,132,.08),transparent 30%),linear-gradient(135deg,var(--vw-burgundy-deep),var(--vw-burgundy))!important}
.vw-tone-navy{background-color:var(--vw-navy-deep)!important;background-image:radial-gradient(circle at 50% 0,rgba(201,169,97,.06),transparent 38%),linear-gradient(160deg,#091423,var(--vw-navy-deep))!important}
.vw-tone-marble-black{background-color:var(--vw-marble-black)!important;background-image:linear-gradient(rgba(10,10,10,.76),rgba(10,10,10,.84)),url("assets/images/textures/marble-black.png")!important;background-size:cover!important;background-position:center!important}
.vw-tone-marble-light{color:var(--vw-ink);background-color:var(--vw-marble-white)!important;background-image:linear-gradient(rgba(244,241,234,.78),rgba(244,241,234,.86)),url("assets/images/textures/marble-white.png")!important;background-size:cover!important;background-position:center!important}
.vw-tone-marble-light .vw-title{color:var(--vw-ink)}
.vw-tone-marble-light .vw-title em,.vw-tone-marble-light .vw-eyebrow{color:var(--vw-gold-deep)}
.vw-tone-marble-light .vw-richtext p,.vw-tone-marble-light .vw-newsletter-box>p:not(.vw-eyebrow),.vw-tone-marble-light .vw-newsletter-note{color:#403832!important}
.vw-tone-marble-light .vw-quote-box{background:rgba(255,255,255,.62);border-color:rgba(154,123,63,.38);box-shadow:0 18px 50px rgba(80,60,35,.12)}
.vw-tone-marble-light .vw-quote-box blockquote{color:var(--vw-burgundy-deep)}
.vw-tone-marble-light .vw-quote-box cite{color:#5e142c;font-weight:800}
.vw-tone-marble-light .vw-richtext em,.vw-tone-marble-light .vw-richtext strong{color:#6f1733;font-weight:700}
.vw-tone-marble-light a:not(.vw-btn):not(.vw-btn-outline){color:#65162f;text-decoration:underline;text-decoration-color:#b58a31;text-decoration-thickness:2px;text-underline-offset:4px}
.vw-tone-marble-light a:not(.vw-btn):not(.vw-btn-outline):hover{color:#32101d;text-decoration-color:#65162f}
.vw-tone-marble-light .vw-newsletter-form input{background:rgba(255,255,255,.72);border-color:rgba(154,123,63,.5);color:var(--vw-ink)}
.vw-tone-marble-light .vw-newsletter-form input::placeholder{color:#766c63}
.vw-section.vw-tone-emerald::before,.vw-section.vw-tone-burgundy::before,.vw-section.vw-tone-navy::before,.vw-section.vw-tone-marble-black::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse 34px 13px at 4% 15%,transparent 43%,rgba(226,201,126,.5) 46% 49%,transparent 52%),radial-gradient(ellipse 34px 13px at 8% 20%,transparent 43%,rgba(226,201,126,.42) 46% 49%,transparent 52%),radial-gradient(ellipse 34px 13px at 92% 78%,transparent 43%,rgba(226,201,126,.42) 46% 49%,transparent 52%),radial-gradient(ellipse 34px 13px at 96% 83%,transparent 43%,rgba(226,201,126,.5) 46% 49%,transparent 52%);opacity:.34}
.vw-hero-slider::before{content:"";position:absolute;inset:0;z-index:4;pointer-events:none;background:radial-gradient(ellipse 38px 14px at 3% 16%,transparent 43%,rgba(226,201,126,.46) 46% 49%,transparent 52%),radial-gradient(ellipse 38px 14px at 97% 84%,transparent 43%,rgba(226,201,126,.4) 46% 49%,transparent 52%);opacity:.36}
.vw-hero-slider.vw-tone-emerald{background-color:#061d17!important;background-image:linear-gradient(120deg,#061d17 0%,#073f35 52%,#09271f 100%)!important}
.vw-hero-slider.vw-tone-emerald .vw-slider-frame{background:linear-gradient(120deg,#061d17 0%,#073f35 52%,#09271f 100%)}
.vw-hero-slider.vw-tone-emerald .vw-slide::before{background:radial-gradient(ellipse 70% 75% at 18% 48%,rgba(28,94,69,.72),transparent 65%),radial-gradient(ellipse 55% 65% at 86% 42%,rgba(7,63,53,.18),transparent 58%),linear-gradient(120deg,#061d17 0%,#073f35 52%,#09271f 100%)}
.vw-hero-slider.vw-tone-burgundy .vw-slide::before{background:radial-gradient(ellipse 70% 75% at 20% 48%,rgba(107,24,48,.7),transparent 65%),linear-gradient(125deg,#230711,var(--vw-burgundy-deep),#16050b)}
.vw-hero-slider.vw-tone-navy .vw-slide::before{background:linear-gradient(135deg,#07101c,var(--vw-navy-deep),#142846)}
.vw-hero-slider.vw-tone-marble-black .vw-slide::before{background:linear-gradient(rgba(10,10,10,.72),rgba(10,10,10,.82)),url("assets/images/textures/marble-black.png") center/cover}

/* Engraved ornament language */
.vw-section{overflow:hidden}
.vw-section>.vw-container{position:relative;z-index:2}
.vw-section::after{position:absolute;z-index:0;right:4%;top:6%;color:var(--vw-gold);font-family:"Playfair Display",Georgia,serif;font-size:clamp(8rem,20vw,18rem);line-height:1;opacity:var(--vw-ornament-subtle);pointer-events:none}
.vw-story::after{content:"∞"}.vw-book-dive::after{content:"❦"}.vw-tips::after{content:"◈"}.vw-toolkit::after{content:"$"}.vw-newsletter::after{content:"❧"}.vw-testimonials::after{content:"✦"}.vw-author::after{content:"∞"}
.vw-card,.vw-testimonial,.vw-author-box,.vw-quote-box{position:relative}
.vw-card::after,.vw-testimonial::after,.vw-author-box::after,.vw-quote-box::after{content:"";position:absolute;inset:8px;pointer-events:none;background:linear-gradient(var(--vw-gold),var(--vw-gold)) left top/28px 1px no-repeat,linear-gradient(var(--vw-gold),var(--vw-gold)) left top/1px 28px no-repeat,linear-gradient(var(--vw-gold),var(--vw-gold)) right top/28px 1px no-repeat,linear-gradient(var(--vw-gold),var(--vw-gold)) right top/1px 28px no-repeat,linear-gradient(var(--vw-gold),var(--vw-gold)) left bottom/28px 1px no-repeat,linear-gradient(var(--vw-gold),var(--vw-gold)) left bottom/1px 28px no-repeat,linear-gradient(var(--vw-gold),var(--vw-gold)) right bottom/28px 1px no-repeat,linear-gradient(var(--vw-gold),var(--vw-gold)) right bottom/1px 28px no-repeat;opacity:.55}
.vw-card-grid .vw-card::before{display:none}

/* Motion */
.vw-reveal{opacity:1;transform:none}
.vw-js .vw-reveal{opacity:0;transform:translateY(28px);transition:opacity .8s var(--vw-ease),transform .8s var(--vw-ease)}
.vw-js .vw-reveal.is-visible{opacity:1;transform:none}
.vw-card-grid .vw-reveal:nth-child(2),.vw-testimonial-grid .vw-reveal:nth-child(2){transition-delay:.08s}
.vw-card-grid .vw-reveal:nth-child(3),.vw-testimonial-grid .vw-reveal:nth-child(3){transition-delay:.16s}
.vw-card-grid .vw-reveal:nth-child(4){transition-delay:.24s}

@media(max-width:1024px){
  .vw-slider-frame{min-height:590px}
  .vw-card-grid{grid-template-columns:repeat(2,1fr)}
  .vw-testimonial-grid{grid-template-columns:1fr}
  .vw-footer-grid{grid-template-columns:1fr 1fr}
}

@media(max-width:820px){
  .vw-nav-inner{display:grid;grid-template-columns:1fr auto;padding:12px 0;min-height:76px}
  .vw-hamburger{display:flex;justify-self:end}
  .vw-nav nav{grid-column:1/-1}
  .vw-menu{display:none;flex-direction:column;align-items:flex-start;gap:4px;width:100%;padding:15px 0 8px}
  .vw-menu.is-open{display:flex}
  .vw-menu li,.vw-menu a{width:100%}.vw-menu a:not(.vw-btn-outline){display:block;padding:11px 0}
  .vw-slider-frame{aspect-ratio:auto;min-height:0;max-height:none;overflow:hidden}
  .vw-slider-track{position:relative}
  .vw-slide{position:relative;display:none;inset:auto;min-height:0}
  .vw-slide.is-active{display:block}
  .vw-slide-grid,.vw-slide-full .vw-slide-grid{grid-template-columns:1fr;height:auto;min-height:0;padding-top:62px;padding-bottom:78px;text-align:center}
  .vw-slide-full .vw-slide-grid{min-height:680px;align-content:center}
  .vw-hero-copy{max-width:none}.vw-stats,.vw-actions{justify-content:center}.vw-book{order:-1}
  .vw-book-frame{width:min(58vw,310px)}.vw-book-frame img{max-height:38vh}
  .vw-slider-arrow{top:auto;bottom:14px;width:44px;height:44px;transform:none}.vw-slider-prev{left:var(--vw-pad)}.vw-slider-next{right:var(--vw-pad)}
  .vw-slider-dots{bottom:34px}
  .vw-grid-2,.vw-shop-grid,.vw-author-grid,.vw-product-card{grid-template-columns:1fr}
  .vw-author-grid{text-align:center}
}

@media(max-width:600px){
  :root{--vw-section:66px}
  .vw-brand-text{font-size:1rem}.vw-logo,.vw-brand .custom-logo{width:48px;height:48px}
  .vw-footer-grid{grid-template-columns:1fr}
  .vw-card-grid{grid-template-columns:none;grid-auto-columns:minmax(245px,82vw);grid-auto-flow:column;gap:14px;margin-inline:calc(var(--vw-pad) * -1);padding:4px var(--vw-pad) 18px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-padding-inline:var(--vw-pad);scroll-snap-type:x mandatory;scrollbar-color:var(--vw-gold) transparent;scrollbar-width:thin}
  .vw-card-grid .vw-card{min-height:310px;scroll-snap-align:center}
  .vw-swipe-hint{display:block}
  .vw-tip{grid-template-columns:48px 1fr;gap:15px}
  .vw-newsletter-form{flex-direction:column}
  .vw-newsletter-form::before,.vw-newsletter-form::after{display:none}
  .vw-footer-bottom{flex-direction:column;text-align:center}
  .vw-hero-copy h1{font-size:clamp(2.3rem,12vw,3.5rem)}
  .vw-slide-grid{padding-top:54px}
  .vw-book-frame{width:min(65vw,280px)}
  .vw-hero-benefits{justify-content:center}
  .vw-slider-dots{display:none}
  .vw-woocommerce-shell{padding:20px 14px}
}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .vw-reveal{opacity:1!important;transform:none!important}
}
