/* PICK VIZ Elementor Widgets — front-end/editor helpers.
   Card visuals come from the PICK VIZ plugin; motion comes from the theme. */

.pickviz-el-picks{ width:100%; }

/* Give the grid a sane default even if the theme's column control isn't set. */
.pickviz-el-picks .predictions-grid:not([data-layout="list"]){
	display:grid;
	grid-template-columns:repeat(auto-fill,minmax(260px,1fr));
	gap:20px;
}

/* Editor-only placeholder card spacing. */
.elementor-editor-active .pickviz-el-picks:empty{ min-height:80px; }

/* ── Live Record stat strip ─────────────────────────────────────────── */
.pvz-rec{ display:flex; flex-wrap:wrap; gap:40px; align-items:flex-end; }
.pvz-rec-item{ display:flex; flex-direction:column; align-items:center; text-align:center; }
.pvz-rec-value{
	font-family:"Space Mono",var(--vt-font-head),ui-monospace,monospace;
	font-size:clamp(28px,5vw,46px); font-weight:700; line-height:1; color:#e7c877;
}
.pvz-rec-label{
	margin-top:8px; font-size:11px; letter-spacing:.16em; text-transform:uppercase; font-weight:700; color:#a49b82;
}
@media (max-width:600px){ .pvz-rec{ gap:26px; justify-content:center !important; } }

/* ── Capper Podium ──────────────────────────────────────────────────── */
.pvz-podium{ display:flex; align-items:flex-end; justify-content:center; gap:22px; }
.pvz-podium-col{ display:flex; flex-direction:column; align-items:center; text-align:center; width:170px; }
.pvz-podium-avatar{ position:relative; width:76px; height:76px; border-radius:50%; margin-bottom:12px;
	display:grid; place-items:center; overflow:visible;
	background:radial-gradient(circle at 35% 30%, #3a3c42, #17181c 75%);
	box-shadow:inset 0 2px 3px rgba(255,255,255,.15), 0 8px 20px -8px rgba(0,0,0,.7); }
.pvz-podium-avatar img{ width:100%; height:100%; border-radius:50%; object-fit:cover; }
.pvz-podium-avatar span{ font:800 30px/1 var(--vt-font-head),sans-serif; color:#e7c877; }
.pvz-podium-medal{ position:absolute; bottom:-6px; right:-6px; width:26px; height:26px; border-radius:50%;
	display:grid; place-items:center; font:800 13px/1 var(--vt-font-head),sans-serif; font-style:normal; color:#20160a;
	box-shadow:0 3px 8px rgba(0,0,0,.5); }
.pvz-rank-1 .pvz-podium-medal{ background:linear-gradient(135deg,#f4e08a,#d8b24e); }
.pvz-rank-2 .pvz-podium-medal{ background:linear-gradient(135deg,#e9edf1,#b9c2cc); }
.pvz-rank-3 .pvz-podium-medal{ background:linear-gradient(135deg,#e8b27a,#c58a5a); }
.pvz-podium-name{ font:700 15px/1.2 var(--vt-font-head),sans-serif; color:inherit; }
.pvz-podium-win{ font-family:"Space Mono",monospace; font-weight:700; font-size:22px; color:#e7c877; margin-top:4px; }
.pvz-podium-rec{ font-family:"Space Mono",monospace; font-size:11px; opacity:.6; margin-top:2px; }
.pvz-podium-plinth{ width:100%; border-radius:12px 12px 0 0; margin-top:14px;
	box-shadow:inset 0 2px 3px rgba(255,255,255,.35), inset 0 -12px 22px rgba(0,0,0,.3); }
.pvz-rank-1 .pvz-podium-plinth{ height:96px; background:linear-gradient(180deg,#f4e08a,#c9a24d); }
.pvz-rank-2 .pvz-podium-plinth{ height:64px; background:linear-gradient(180deg,#e9edf1,#aab4c0); }
.pvz-rank-3 .pvz-podium-plinth{ height:46px; background:linear-gradient(180deg,#e8b27a,#b97f4f); }
@media (max-width:560px){ .pvz-podium{ gap:10px; } .pvz-podium-col{ width:110px; } }

/* ── Kickoff Countdown ──────────────────────────────────────────────── */
.pvz-cd{ display:inline-flex; flex-direction:column; align-items:center; gap:12px; }
.pvz-cd-label{ font-size:11px; letter-spacing:.24em; font-weight:700; color:#a49b82; }
.pvz-cd-row{ display:flex; align-items:flex-start; gap:10px; }
.pvz-cd-row i{ font:700 30px/1.5 "Space Mono",monospace; color:#7c745f; font-style:normal; }
.pvz-cd-cell{ display:flex; flex-direction:column; align-items:center; min-width:70px; padding:12px 10px 10px;
	background:#14161b; border:1px solid rgba(215,198,144,.2); border-radius:12px;
	box-shadow:inset 0 1px 2px rgba(255,255,255,.06), 0 10px 24px -14px rgba(0,0,0,.8); }
.pvz-cd-cell b{ font:700 32px/1 "Space Mono",monospace; color:#e7c877; }
.pvz-cd-cell small{ margin-top:6px; font-size:9px; letter-spacing:.2em; color:#7c745f; font-weight:700; }
.pvz-cd-live{ font:800 26px/1 var(--vt-font-head),sans-serif; color:#22c55e; letter-spacing:.1em; }

/* ══ VAULT HERO ══════════════════════════════════════════════════════ */
.pvz-hero{ position:relative; overflow:hidden; padding:96px clamp(16px,5vw,48px) 84px; }
.pvz-hero-bg{ position:absolute; inset:0; pointer-events:none; }
.pvz-orb{ position:absolute; border-radius:50%; filter:blur(70px); opacity:.5; }
.pvz-orb-1{ width:480px; height:480px; top:-180px; left:-120px; background:var(--vt-accent-soft,rgba(231,200,119,.2)); }
.pvz-orb-2{ width:420px; height:420px; bottom:-200px; right:-100px; background:var(--vt-accent-soft,rgba(231,200,119,.16)); }
.pvz-hero-grid{ position:absolute; inset:0;
	background-image:linear-gradient(var(--vt-line,rgba(255,255,255,.05)) 1px,transparent 1px),
		linear-gradient(90deg,var(--vt-line,rgba(255,255,255,.05)) 1px,transparent 1px);
	background-size:56px 56px;
	mask-image:radial-gradient(70% 60% at 50% 40%,#000,transparent);
	-webkit-mask-image:radial-gradient(70% 60% at 50% 40%,#000,transparent); }
.pvz-hero-inner{ position:relative; max-width:1200px; margin:0 auto; padding:0 clamp(0px,2vw,24px);
	display:grid; grid-template-columns:1.15fr .85fr; gap:48px; align-items:center; }
.pvz-hero-eyebrow{ display:inline-flex; align-items:center; gap:9px; font:700 11px/1 var(--vt-font-body),sans-serif;
	letter-spacing:.24em; color:var(--vt-muted,#a49b82); border:1px solid var(--vt-accent-line,rgba(231,200,119,.3));
	border-radius:20px; padding:8px 15px; }
.pvz-hero-dot{ width:7px; height:7px; border-radius:50%; background:var(--vt-accent,#e7c877);
	box-shadow:0 0 8px var(--vt-accent,#e7c877); }
.pvz-hero-h1{ font:800 clamp(40px,6vw,68px)/1.02 var(--vt-font-head),sans-serif; letter-spacing:-.02em; margin:20px 0 16px;
	color:var(--vt-text,#f3efe6); }
.pvz-hero-sub{ font:400 17px/1.7 var(--vt-font-body),sans-serif; color:var(--vt-muted,#a49b82); max-width:520px; margin:0 0 26px; }
.pvz-hero-ctas{ display:flex; gap:14px; flex-wrap:wrap; }
.pvz-hero-cta1{ padding:14px 28px !important; font-size:15px !important; }
.pvz-hero-proof{ display:flex; align-items:center; gap:12px; margin-top:24px; }
.pvz-avatars{ display:inline-flex; }
.pvz-avatars i{ width:32px; height:32px; border-radius:50%; display:grid; place-items:center; font:700 12px/1 var(--vt-font-head),sans-serif;
	font-style:normal; color:var(--vt-accent-ink,#20160a); border:2px solid var(--vt-canvas,#0b0c0f); margin-left:-8px;
	background:linear-gradient(135deg,var(--vt-accent,#e7c877),var(--vt-accent-2,#b8860b)); }
.pvz-avatars i:first-child{ margin-left:0; }
.pvz-proof-text{ font-size:13px; color:var(--vt-muted,#a49b82); }
.pvz-stars{ color:var(--vt-accent,#e7c877); letter-spacing:2px; margin-left:4px; }
.pvz-hero-stats{ margin-top:34px; gap:34px !important; }

/* floating metallic mini-cards */
.pvz-hero-art{ position:relative; min-height:380px; }
.pvz-mini{ position:absolute; width:220px; border-radius:16px; padding:16px 18px;
	font-family:"Space Mono",ui-monospace,monospace; box-shadow:0 24px 50px -20px rgba(0,0,0,.7);
	animation:pvz-float 6s ease-in-out infinite; }
.pvz-mini-top{ display:flex; justify-content:space-between; font-size:10px; font-weight:800; letter-spacing:.08em; margin-bottom:14px; }
.pvz-mini-top i{ font-style:normal; letter-spacing:2px; font-size:8px; opacity:.8; }
.pvz-mini-team{ display:block; font:800 17px/1.2 var(--vt-font-head),sans-serif; letter-spacing:.02em; }
.pvz-mini-odds{ display:flex; justify-content:space-between; align-items:center; margin-top:10px; font-size:15px; font-weight:700; }
.pvz-mini-odds em{ font-style:normal; font-size:10.5px; font-weight:800; color:#15803d; background:rgba(34,197,94,.18); border-radius:6px; padding:4px 8px; }
.pvz-mini-odds em.pend{ color:#b45309; background:rgba(240,180,41,.18); }
.pvz-mini-gold{ top:6%; right:8%; z-index:3;
	background:linear-gradient(135deg,#a5772a,#e7c877 40%,#c9a24d 60%,#9a6f28); color:#4a3410; }
.pvz-mini-black{ top:38%; left:0; z-index:2; animation-delay:1.4s;
	background:linear-gradient(135deg,#141519,#3a3c42 40%,#232429 60%,#0f1013); color:#e6cf83; }
.pvz-mini-black .pvz-mini-odds em{ color:#4ade80; background:rgba(34,197,94,.2); }
.pvz-mini-silver{ bottom:2%; right:16%; z-index:1; animation-delay:2.8s;
	background:linear-gradient(135deg,#8b939d,#eef2f6 40%,#c2c9d1 60%,#828b96); color:#39424c; }
@keyframes pvz-float{ 0%,100%{ transform:translateY(0) rotate(-1.2deg);} 50%{ transform:translateY(-14px) rotate(1.2deg);} }
@media (max-width:960px){
	.pvz-hero{ padding-left:max(16px,4vw); padding-right:max(16px,4vw); }
	.pvz-hero-inner{ grid-template-columns:1fr; text-align:center; padding:0; }
	.pvz-hero-copy{ display:flex; flex-direction:column; align-items:center; }
	.pvz-hero-sub{ margin-inline:auto; }
	.pvz-hero-ctas{ justify-content:center; }
	.pvz-hero-proof{ justify-content:center; }
	.pvz-hero-stats{ justify-content:center; }
	.pvz-hero-art{ min-height:320px; margin:20px auto 0; width:100%; max-width:420px; }
	.pvz-mini{ width:190px; }
}
@media (prefers-reduced-motion:reduce){ .pvz-mini{ animation:none; } }

/* ══ CTA BANNER ══════════════════════════════════════════════════════ */
.pvz-ctaband{ position:relative; overflow:hidden; text-align:center; padding:78px 24px;
	border:1px solid var(--vt-accent-line,rgba(231,200,119,.3)); border-radius:24px;
	background:var(--vt-surface,#14161b); }
.pvz-ctaband-glow{ position:absolute; inset:0; pointer-events:none;
	background:radial-gradient(60% 80% at 50% 110%, var(--vt-accent-soft,rgba(231,200,119,.2)), transparent 65%); }
.pvz-ctaband-h{ position:relative; font:800 clamp(28px,4.5vw,44px)/1.1 var(--vt-font-head),sans-serif; margin:0 0 10px; color:var(--vt-text,#f3efe6); }
.pvz-ctaband-sub{ position:relative; color:var(--vt-muted,#a49b82); font-size:16px; margin:0 0 26px; }
.pvz-ctaband-btn{ position:relative; padding:15px 32px !important; font-size:15px !important; }
.pvz-ctaband-note{ position:relative; margin:18px 0 0; font-size:12px; color:var(--vt-faint,#75726a); }

/* ══ VAULT HEADER WIDGET (3 styles + sticky effects) ═════════════════ */
.pvzh{ font-family:var(--vt-font-body),system-ui,sans-serif; z-index:950; width:100%; }
.pvzh-sticky{ position:sticky; top:0; transition:transform .35s cubic-bezier(.2,.8,.25,1); }
.pvzh-sticky.is-hidden{ transform:translateY(-110%); }

/* vault-sticky-wrap: the class added by JS to the Elementor wrapper element.
   Elementor sections use CSS transforms which trap position:fixed, so the
   widget JS lifts sticky positioning up to the nearest wrapping element.
   Without this rule the JS class had no effect and nothing was sticky. */
.vault-sticky-wrap{ position:sticky !important; top:0 !important; z-index:999 !important; width:100% !important; }
body.admin-bar .vault-sticky-wrap { top: 32px !important; }
@media (max-width: 782px) {
	body.admin-bar .vault-sticky-wrap { top: 46px !important; }
}
.vault-sticky-wrap.is-hidden{ transform:translateY(-110%); transition:transform .35s cubic-bezier(.2,.8,.25,1); }
/* Ensure no Elementor parents block position: sticky */
.vault-sticky-wrap,
.vault-sticky-wrap .elementor-container,
.vault-sticky-wrap .elementor-column,
.vault-sticky-wrap .elementor-widget-wrap,
.vault-sticky-wrap .elementor-widget,
.vault-sticky-wrap .elementor-widget-container,
.elementor,
.elementor-inner,
.elementor-section-wrap,
#page,
.vault-site {
	overflow: visible !important;
}

.pvzh-bar{ max-width:1280px; margin:0 auto; padding:14px 24px; display:flex; align-items:center; gap:20px; transition:padding .25s; }

/* brand */
.pvzh-brand{ display:inline-flex; align-items:center; gap:10px; text-decoration:none; line-height:0; }
.pvzh-mark{ height:36px; width:36px; }
.pvzh-logo-img{ height:38px; width:auto; }
.pvzh-word{ font:800 22px/1 var(--vt-font-head),sans-serif; letter-spacing:.02em; color:var(--vt-text,#f3efe6); }
.pvzh-word em{ font-style:normal; color:#ff6a00; }

/* menu — animated gold underline */
.pvzh-nav{ margin-left:6px; }
.pvzh-menu{ list-style:none; display:flex; gap:26px; margin:0; padding:0; }
.pvzh-menu a{ position:relative; color:var(--vt-text,#f3efe6); opacity:.85; font-weight:600; font-size:14px;
	text-decoration:none; padding:6px 0; transition:opacity .15s, color .15s; }
.pvzh-menu a::after{ content:""; position:absolute; left:0; right:100%; bottom:0; height:2px; border-radius:2px;
	background:linear-gradient(90deg,var(--vt-accent,#e7c877),var(--vt-accent-2,#b8860b)); transition:right .28s cubic-bezier(.2,.8,.25,1); }
.pvzh-menu a:hover{ opacity:1; color:var(--vt-accent,#e7c877); }
.pvzh-menu a:hover::after,.pvzh-menu .current-menu-item > a::after{ right:0; }
/* ── Dropdown submenus ─────────────────────────────────────────────────── */
/* Positioning/hover rules live ONLY in the theme's vault.css now (always loads
   regardless of Elementor's CSS cache). A second, slightly different copy used
   to live here too — same selectors, different `left`/`transform` values with
   no !important on either, so whichever stylesheet happened to load last won
   unpredictably. For an edge item like "Home" that could push the dropdown
   off-canvas, causing it to visually vanish the instant the mouse moved toward
   it. Keeping exactly one definition removes that ambiguity for good. */

/* actions */
.pvzh-actions{ margin-left:auto; display:flex; align-items:center; gap:12px; }
.pvzh-chip{ font:700 12px/1 "Space Mono",monospace; color:var(--vt-accent,#e7c877);
	border:1px solid var(--vt-accent-line,rgba(231,200,119,.3)); border-radius:20px; padding:6px 12px; white-space:nowrap; }
.pvzh-login{ color:var(--vt-muted,#a49b82); font-weight:600; font-size:14px; text-decoration:none; }
.pvzh-login:hover{ color:var(--vt-accent,#e7c877); }
.pvzh-cta{ display:inline-flex; align-items:center; font-weight:800; font-size:13.5px; padding:11px 20px; border-radius:10px;
	text-decoration:none; color:var(--vt-accent-ink,#20160a);
	background:linear-gradient(135deg,var(--vt-accent,#e7c877),var(--vt-accent-2,#b8860b));
	box-shadow:0 10px 24px -10px var(--vt-accent-2,#b8860b); transition:filter .2s, box-shadow .25s, transform .15s; }
.pvzh-cta:hover{ filter:brightness(1.06); box-shadow:0 0 0 1px var(--vt-accent-line,rgba(231,200,119,.4)),0 14px 30px -10px var(--vt-accent-2,#b8860b); }

/* STYLE: Notched — floating rounded glass panel, adapts to light/dark */
.pvzh--notched{ padding:14px 18px 0; }
.pvzh--notched .pvzh-bar{ max-width:1280px; border-radius:22px; padding:12px 14px 12px 24px;
	background:color-mix(in srgb, var(--vt-surface,#14161b) 78%, transparent);
	backdrop-filter:blur(16px) saturate(1.35); -webkit-backdrop-filter:blur(16px) saturate(1.35);
	border:1px solid var(--vt-line,rgba(255,255,255,.09));
	box-shadow:0 18px 44px -24px rgba(0,0,0,.7); transition:box-shadow .3s, border-color .3s, background .3s; }
/* dark mode: slightly deeper panel */
html[data-vault-mode="dark"] .pvzh--notched .pvzh-bar{ background:color-mix(in srgb,#14161b 82%,transparent); }
/* light mode: bright frosted glass */
html[data-vault-mode="light"] .pvzh--notched .pvzh-bar{ background:color-mix(in srgb,#ffffff 72%,transparent); border-color:rgba(15,18,22,.08); box-shadow:0 18px 40px -26px rgba(20,22,26,.4); }
.pvzh--notched .pvzh-menu a,.pvzh--notched .pvzh-word{ color:var(--vt-text); }
.pvzh--notched .pvzh-login{ color:var(--vt-muted); }
.pvzh--notched .pvzh-cta{ border-radius:14px; }
.pvzh--notched.is-stuck .pvzh-bar{ border-color:var(--vt-accent-line,rgba(231,200,119,.4));
	box-shadow:0 18px 44px -18px rgba(0,0,0,.55), 0 0 24px -8px var(--vt-accent-soft,rgba(231,200,119,.3)); }

/* STYLE: Plain — solid bar, no glass */
.pvzh--plain{ background:var(--vt-canvas,#0b0c0f); border-bottom:1px solid var(--vt-line,rgba(255,255,255,.08)); }
.pvzh--plain.is-stuck{ box-shadow:0 8px 24px -18px rgba(0,0,0,.7); }

/* STYLE: Classic Bar */
.pvzh--bar{ background:transparent; border-bottom:1px solid transparent; }
.pvzh--bar.is-stuck{ background:color-mix(in srgb,var(--vt-canvas,#0b0c0f) 82%,transparent);
	backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);
	border-bottom:1px solid var(--vt-accent-line,rgba(231,200,119,.25)); box-shadow:0 12px 34px -20px rgba(0,0,0,.8); }
.pvzh--bar.is-stuck .pvzh-bar{ padding-top:10px; padding-bottom:10px; }

/* STYLE: Floating Pill */
.pvzh--pill{ padding:14px 18px 0; }
.pvzh--pill .pvzh-bar{ max-width:1200px; border-radius:60px; padding:10px 12px 10px 22px;
	background:color-mix(in srgb,var(--vt-surface,#14161b) 78%,transparent);
	backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px);
	border:1px solid var(--vt-line,rgba(255,255,255,.1)); box-shadow:0 18px 44px -22px rgba(0,0,0,.75); transition:border-color .3s, box-shadow .3s; }
.pvzh--pill.is-stuck .pvzh-bar{ border-color:var(--vt-accent-line,rgba(231,200,119,.35));
	box-shadow:0 18px 44px -18px rgba(0,0,0,.85), 0 0 24px -8px var(--vt-accent-soft,rgba(231,200,119,.3)); }
.pvzh--pill .pvzh-cta{ border-radius:40px; }

/* STYLE: Double Deck */
.pvzh--deck .pvzh-strip{ text-align:center; font:700 12px/1 var(--vt-font-body),sans-serif; letter-spacing:.04em;
	color:var(--vt-accent-ink,#20160a); padding:9px 16px;
	background:linear-gradient(90deg,var(--vt-accent,#e7c877),var(--vt-accent-2,#b8860b)); }
.pvzh--deck{ background:transparent; }
.pvzh--deck .pvzh-bar{ border-bottom:1px solid var(--vt-line,rgba(255,255,255,.08)); }
.pvzh--deck.is-stuck{ background:color-mix(in srgb,var(--vt-canvas,#0b0c0f) 88%,transparent);
	backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px); box-shadow:0 12px 34px -20px rgba(0,0,0,.8); }
/* Strip hides only after is-stuck so it never flashes mid-scroll */
.pvzh--deck.is-stuck .pvzh-strip{ display:none; }
/* Height reservation: prevents layout jump when the strip collapses */
.pvzh--deck:not(.is-stuck) .pvzh-strip{ max-height:60px; overflow:hidden; transition:max-height .3s ease, padding .3s ease; }
.pvzh--deck.is-stuck .pvzh-strip{ max-height:0; padding-top:0; padding-bottom:0; display:block; overflow:hidden; }

/* burger + mobile */
.pvzh-burger{ display:none; background:none; border:0; flex-direction:column; gap:5px; cursor:pointer; padding:6px; }
.pvzh-burger span{ width:22px; height:2px; background:var(--vt-text,#f3efe6); display:block; transition:.25s; }
.pvzh.nav-open .pvzh-burger span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
.pvzh.nav-open .pvzh-burger span:nth-child(2){ opacity:0; }
.pvzh.nav-open .pvzh-burger span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }
@media (max-width:900px){
	.pvzh-bar{ padding:10px 14px; gap:10px; }
	.pvzh-nav{ display:none; }
	.pvzh-chip,.pvzh-login{ display:none; }
	.pvzh-burger{ display:flex; margin-left:2px; }
	.pvzh-cta{ padding:10px 15px; font-size:12.5px; }
	.pvzh-cta::after{ display:none; }
	.pvzh-brand .vault-logo,.pvzh-logo-img{ max-height:34px; }
	.pvzh-word{ font-size:19px; }
	/* Attractive pill dropdown menu */
	.pvzh .pvzh-nav{ position:absolute; left:12px; right:12px; top:calc(100% + 8px); z-index:9999; pointer-events:none;
		display:block; opacity:0; visibility:hidden; transform:translateY(-8px) scale(.98); transform-origin:top center;
		transition:opacity .25s, transform .3s cubic-bezier(.2,.8,.25,1), visibility .25s;
		background:color-mix(in srgb,var(--vt-surface,#14161b) 94%,transparent); backdrop-filter:blur(18px);
		border:1px solid var(--vt-line,rgba(255,255,255,.12)); border-radius:20px; padding:14px; box-shadow:0 30px 70px -30px rgba(0,0,0,.85); }
	/* pointer-events:none while closed so an invisible-but-present drawer can never
	   silently eat a tap intended for the page behind it; re-enabled once open. */
	.pvzh.nav-open .pvzh-nav{ opacity:1; visibility:visible; transform:none; pointer-events:auto; }
	.pvzh-burger{ position:relative; z-index:10000; pointer-events:auto; }
	.pvzh.nav-open .pvzh-menu{ flex-direction:column; gap:6px; }
	.pvzh.nav-open .pvzh-menu a{ display:block; padding:13px 16px; border-radius:12px; font-size:15px; opacity:1; }
	.pvzh.nav-open .pvzh-menu a::after{ display:none; }
	.pvzh.nav-open .pvzh-menu a:hover,.pvzh.nav-open .pvzh-menu .current-menu-item > a{
		background:color-mix(in srgb,var(--vt-accent,#e7c877) 14%,transparent); color:var(--vt-accent,#e7c877); }
	.pvzh--pill,.pvzh--notched{ padding-left:8px; padding-right:8px; }
	.pvzh--notched .pvzh-bar,.pvzh--pill .pvzh-bar{ border-radius:16px; }
}
@media (max-width:400px){
	.pvzh-cta{ padding:9px 12px; }
	.pvzh-word{ font-size:17px; }
}

/* ══ VAULT FOOTER WIDGET — agency-grade (always deep dark for contrast) ═ */
.pvzf{ position:relative; overflow:hidden; background:#0a0b0e; border-top:1px solid rgba(231,200,119,.14);
	--pvzf-text:#f3efe6; --pvzf-muted:#a4a091; --pvzf-faint:#75726a; --pvzf-line:rgba(255,255,255,.09); }
/* Light mode → light footer surface */
html[data-vault-mode="light"] .pvzf{ background:#efeee9; border-top-color:rgba(15,18,22,.1);
	--pvzf-text:#171a1f; --pvzf-muted:#5c6066; --pvzf-faint:#8f939a; --pvzf-line:rgba(15,18,22,.1); }
html[data-vault-mode="light"] .pvzf-watermark{ -webkit-text-stroke-color:rgba(15,18,22,.06); }
/* Subtle column dividers */
.pvzf-grid > .pvzf-col + .pvzf-col{ position:relative; }
.pvzf-grid > .pvzf-col + .pvzf-col::before{ content:""; position:absolute; left:-20px; top:4px; bottom:4px; width:1px;
	background:linear-gradient(180deg,transparent,var(--pvzf-line),transparent); }
@media (max-width:900px){ .pvzf-grid > .pvzf-col + .pvzf-col::before{ display:none; } }
.pvzf-watermark{ position:absolute; left:50%; bottom:-.18em; transform:translateX(-50%);
	font:800 clamp(120px,20vw,300px)/1 var(--vt-font-head),sans-serif; letter-spacing:.02em; white-space:nowrap;
	color:transparent; -webkit-text-stroke:1px rgba(231,200,119,.07); pointer-events:none; user-select:none; }

.pvzf-ctaband{ position:relative; border-bottom:1px solid var(--pvzf-line);
	background:radial-gradient(70% 130% at 85% 50%, var(--vt-accent-soft,rgba(231,200,119,.14)), transparent 60%); }
.pvzf-ctaband-inner{ max-width:1200px; margin:0 auto; padding:60px 24px;
	display:flex; align-items:center; justify-content:space-between; gap:32px; flex-wrap:wrap; }
.pvzf-eyebrow{ font:700 11px/1 var(--vt-font-body),sans-serif; letter-spacing:.24em; text-transform:uppercase; color:var(--vt-accent,#e7c877); }
.pvzf-ctahead{ font:800 clamp(28px,4.2vw,50px)/1.05 var(--vt-font-head),sans-serif; letter-spacing:-.015em; margin:12px 0 0; color:var(--pvzf-text); }
.pvzh-cta--xl{ padding:17px 34px; font-size:16px; border-radius:14px; }
.pvzf-arrow::after{ content:"→"; margin-left:10px; display:inline-block; transition:transform .25s cubic-bezier(.2,.8,.25,1); }
.pvzf-arrow:hover::after{ transform:translateX(5px); }

.pvzf-grid{ position:relative; max-width:1200px; margin:0 auto; padding:56px 24px;
	display:grid; grid-template-columns:1.5fr 1fr 1fr 1fr; gap:40px; }
.pvzf-col{ min-width:0; }
.pvzf .pvzh-word{ color:var(--pvzf-text); }
.pvzf-title{ font:700 12px/1 var(--vt-font-body),sans-serif; letter-spacing:.16em; text-transform:uppercase;
	color:var(--pvzf-text); margin:0 0 16px; display:flex; align-items:center; gap:8px; }
.pvzf-title::before{ content:""; width:6px; height:6px; border-radius:50%;
	background:linear-gradient(135deg,var(--vt-accent,#e7c877),var(--vt-accent-2,#b8860b)); }
.pvzf-tag{ color:var(--pvzf-muted); font-size:13.5px; margin:12px 0 16px; max-width:300px; line-height:1.65; }
.pvzf-menu{ list-style:none; display:flex; flex-direction:column; gap:11px; margin:0; padding:0; }
.pvzf-menu a{ color:var(--pvzf-muted); font-size:14px; text-decoration:none; transition:color .15s, padding-left .2s; }
.pvzf-menu a:hover{ color:var(--vt-accent,#e7c877); padding-left:4px; }
.pvzf-min{ position:relative; max-width:1200px; margin:0 auto; padding:48px 24px; display:flex; flex-direction:column; align-items:center; gap:6px; text-align:center; }
.pvzf-legal{ position:relative; max-width:1200px; margin:0 auto; padding:18px 24px; border-top:1px solid var(--pvzf-line);
	display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px; color:var(--pvzf-faint); font-size:12px; }
@media (max-width:900px){ .pvzf-grid{ grid-template-columns:1fr 1fr; } }
@media (max-width:560px){ .pvzf-grid{ grid-template-columns:1fr; } .pvzf-ctaband-inner{ padding:44px 24px; } }

/* ══ Header polish (pixfort-style) ═══════════════════════════════════ */
.pvzh-nav{ margin-left:auto; margin-right:0; }
.pvzh-actions{ margin-left:auto; }
.pvzh-cta::after{ content:"→"; margin-left:8px; display:inline-block; transition:transform .25s cubic-bezier(.2,.8,.25,1); }
.pvzh-cta:hover::after{ transform:translateX(4px); }
/* No-wrap: menu items, account link and the CTA never break onto multiple lines */
.pvzh-menu a,.pvzh-login,.pvzh-chip,.pvzh-cta{ white-space:nowrap; }
.pvzh-cta{ line-height:1; align-self:center; }
.pvzh-actions{ flex-wrap:nowrap; }
.pvzh-brand .vault-logo{ max-height:40px; width:auto; }
.pvzh-brand .vault-wordmark{ white-space:nowrap; }

/* ══ AGENCY HERO (Nimo home-05) ══════════════════════════════════════ */
.pvz-ah{ position:relative; overflow:hidden; }
/* Built-in ambient background (blueprint grid + breathing accent glow) so the
   hero always has depth even if the section CSS class is removed. */
.pvz-ah::before{ content:""; position:absolute; inset:0; z-index:0; pointer-events:none; opacity:.6;
	background-image:linear-gradient(var(--vt-line-strong,rgba(255,255,255,.14)) 1px,transparent 1px),
		linear-gradient(90deg,var(--vt-line-strong,rgba(255,255,255,.14)) 1px,transparent 1px);
	background-size:66px 66px;
	-webkit-mask-image:radial-gradient(95% 80% at 50% 30%,#000 15%,transparent 82%); mask-image:radial-gradient(95% 80% at 50% 30%,#000 15%,transparent 82%); }
.pvz-ah::after{ content:""; position:absolute; top:-18%; right:-6%; width:52vw; height:52vw; max-width:720px; max-height:720px; border-radius:50%;
	z-index:0; pointer-events:none; filter:blur(40px); opacity:.85;
	background:radial-gradient(circle, color-mix(in srgb,var(--vt-accent,#e7c877) 26%,transparent) 0%, transparent 62%);
	animation:pvz-ah-breathe 9s ease-in-out infinite; }
@keyframes pvz-ah-breathe{ 0%,100%{ transform:scale(1); opacity:.65; } 50%{ transform:scale(1.16); opacity:.95; } }
@media (prefers-reduced-motion:reduce){ .pvz-ah::after{ animation:none; } }
/* Mouse-tracked grid spotlight — brighter grid + warm glow under the cursor.
   JS sets --mx/--my (px) on the section; falls back to a centred idle glow. */
.pvz-ah-spot{ position:absolute; inset:0; z-index:0; pointer-events:none; opacity:0; transition:opacity .4s;
	background:
		radial-gradient(240px 240px at var(--mx,50%) var(--my,40%), color-mix(in srgb,var(--vt-accent,#e7c877) 22%,transparent), transparent 70%);
	-webkit-mask-image:radial-gradient(260px 260px at var(--mx,50%) var(--my,40%), #000 0%, transparent 72%);
	mask-image:radial-gradient(260px 260px at var(--mx,50%) var(--my,40%), #000 0%, transparent 72%); }
.pvz-ah-spot::before{ content:""; position:absolute; inset:0;
	background-image:linear-gradient(var(--vt-accent-line,rgba(231,200,119,.5)) 1px,transparent 1px),
		linear-gradient(90deg,var(--vt-accent-line,rgba(231,200,119,.5)) 1px,transparent 1px);
	background-size:66px 66px; }
.pvz-ah.is-hover .pvz-ah-spot{ opacity:1; }
@media (prefers-reduced-motion:reduce){ .pvz-ah-spot{ display:none; } }
.pvz-ah-inner{ position:relative; z-index:1; max-width:min(1240px, 100%) !important; margin:0 auto; padding:30px 30px 20px 10px !important;
	display:grid; grid-template-columns:1.05fr 1.02fr; gap:clamp(40px,5vw,72px); align-items:center; }
.pvz-ah-left{ display:flex; flex-direction:column; align-items:flex-start; gap:22px; }
.pvz-ah-badge{ display:inline-flex; align-items:center; gap:9px; font:700 12px/1 var(--vt-font-body),sans-serif;
	letter-spacing:.08em; text-transform:uppercase; color:var(--vt-text,#f3efe6);
	background:color-mix(in srgb,var(--vt-surface,#14161b) 70%,transparent); border:1px solid var(--vt-line,rgba(255,255,255,.1));
	border-radius:40px; padding:9px 16px; backdrop-filter:blur(6px); }
.pvz-ah-badge-dot{ width:8px; height:8px; border-radius:50%; background:var(--vt-accent,#e7c877); box-shadow:0 0 10px var(--vt-accent,#e7c877); }
.pvz-ah-title{ font:800 clamp(40px,6.4vw,88px)/.98 var(--vt-font-head),sans-serif; letter-spacing:-.03em; margin:0; color:var(--vt-text,#f3efe6); text-wrap:balance; }
.pvz-ah-sub{ font-size:clamp(15px,1.5vw,18px); line-height:1.6; color:var(--vt-muted,#a49b82); max-width:52ch; margin:0; }
.pvz-ah-cta-row{ display:flex; align-items:center; gap:22px; flex-wrap:wrap; margin-top:4px; }
.pvz-ah-cta{ display:inline-flex; align-items:center; gap:10px; font-weight:800; font-size:14px; letter-spacing:.06em; text-transform:uppercase;
	color:var(--vt-accent-ink,#20160a); background:linear-gradient(135deg,var(--vt-accent,#e7c877),var(--vt-accent-2,#b8860b));
	border-radius:12px; padding:15px 26px; text-decoration:none; box-shadow:0 14px 32px -12px var(--vt-accent-2,#b8860b);
	transition:filter .2s, box-shadow .25s, transform .15s; }
.pvz-ah-cta:hover{ filter:brightness(1.05); box-shadow:0 0 0 1px var(--vt-accent-line,rgba(231,200,119,.4)),0 18px 40px -12px var(--vt-accent-2,#b8860b); }
.pvz-ah-cta-ic{ display:grid; place-items:center; width:22px; height:22px; border-radius:50%; background:rgba(0,0,0,.25); font-size:15px;
	transition:transform .34s cubic-bezier(.2,.7,.2,1); }
.pvz-ah-cta:hover .pvz-ah-cta-ic{ transform:translateX(4px); }
.pvz-ah-proof{ display:flex; align-items:center; gap:12px; }
.pvz-ah-avatars{ display:flex; }
.pvz-ah-av{ width:36px; height:36px; border-radius:50%; margin-left:-10px; background-size:cover; background-position:center;
	border:2px solid var(--vt-canvas,#0b0c0f); display:grid; place-items:center; font:700 13px/1 var(--vt-font-head),sans-serif; color:var(--vt-accent-ink,#20160a); }
.pvz-ah-av:first-child{ margin-left:0; }
.pvz-ah-av--ph{ background:linear-gradient(135deg,var(--vt-accent,#e7c877),var(--vt-accent-2,#b8860b)); }
.pvz-ah-av--more{ background:var(--vt-accent,#e7c877); }
.pvz-ah-proof-txt{ font:700 11px/1.3 var(--vt-font-body),sans-serif; letter-spacing:.1em; text-transform:uppercase; color:var(--vt-muted,#a49b82); max-width:14ch; }
.pvz-ah-tagline{ margin:14px 0 0; padding-top:22px; border-top:1px solid var(--vt-line,rgba(255,255,255,.1)); font-size:16px; line-height:1.55; color:var(--vt-text,#f3efe6); max-width:44ch; }
.pvz-ah-contact{ display:flex; align-items:center; gap:14px; color:var(--vt-muted,#a49b82); font-size:14px; }
.pvz-ah-contact .vault-socials{ display:inline-flex; gap:10px; }

/* Cellphone Mockup Frame & Animations */
.pvz-ah-media {
	position: relative;
	aspect-ratio: 9/18.5;
	width: min(290px, 90vw);
	margin: 0 auto;
	border-radius: 44px;
	background: #0d0f12;
	border: 11px solid #16181d !important;
	outline: 2px solid #2d3037;
	box-shadow: 
		0 35px 80px -20px rgba(0,0,0,.95), 
		inset 0 0 12px rgba(0,0,0,.9);
	overflow: visible !important; /* Allow side buttons & navigation dots to stay outside */
	animation: pvz-phone-float 6s ease-in-out infinite;
	transition: transform 0.5s cubic-bezier(0.2, 0.8, 0.2, 1), box-shadow 0.5s ease;
}
.pvz-ah-media:hover {
	transform: translateY(-8px) scale(1.02) rotate(1deg);
	box-shadow: 0 45px 95px -20px rgba(0,0,0,.98);
}
@keyframes pvz-phone-float {
	0%, 100% { transform: translateY(0); }
	50% { transform: translateY(-8px); }
}

/* Volume Buttons (Left) */
.pvz-ah-media::before {
	content: "";
	position: absolute;
	left: -15px;
	top: 80px;
	width: 4px;
	height: 48px;
	background: #2d3037;
	border-radius: 4px 0 0 4px;
	box-shadow: 0 4px 10px rgba(0,0,0,0.5);
}

/* Power Button (Right) */
.pvz-ah-media::after {
	content: "";
	position: absolute;
	right: -15px;
	top: 110px;
	width: 4px;
	height: 64px;
	background: #2d3037;
	border-radius: 0 4px 4px 0;
	box-shadow: 0 4px 10px rgba(0,0,0,0.5);
}

/* Status Bar & Notch elements */
.pvz-phone-status-bar {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 38px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0 24px;
	z-index: 98;
	pointer-events: none;
	color: rgba(255,255,255,0.85);
	font-size: 11px;
	font-weight: 600;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}
.pvz-phone-island {
	position: absolute;
	top: 10px;
	left: 50%;
	transform: translateX(-50%);
	width: 82px;
	height: 20px;
	background: #000;
	border-radius: 12px;
	z-index: 99;
	box-shadow: inset 0 1px 1px rgba(255,255,255,0.08);
}
.pvz-phone-indicators {
	display: flex;
	gap: 6px;
	align-items: center;
}
.pvz-phone-signal {
	font-size: 10px;
}
.pvz-phone-battery {
	font-size: 12px;
}

/* Inner Screen Viewport */
.pvz-phone-screen {
	position: relative;
	width: 100%;
	height: 100%;
	overflow: hidden !important;
	border-radius: 34px;
	background: #0b0c0f;
}

/* Home Indicator Bar */
.pvz-phone-home-bar {
	position: absolute;
	bottom: 8px;
	left: 50%;
	transform: translateX(-50%);
	width: 90px;
	height: 4px;
	background: rgba(255,255,255,0.4);
	border-radius: 2px;
	z-index: 99;
	pointer-events: none;
}

/* Screenshot Scrolling Effect */
.pvz-ah-slide.is-active .pvz-ah-img {
	object-fit: cover;
	object-position: center top;
	animation: pvz-screenshot-scroll 16s ease-in-out infinite;
}
@keyframes pvz-screenshot-scroll {
	0%, 15% { object-position: center top; }
	50%, 65% { object-position: center bottom; }
	100% { object-position: center top; }
}

.pvz-ah-img{ width:100%; height:100%; object-fit:cover; display:block; }
.pvz-ah-img--ph{ background:
	radial-gradient(120% 90% at 30% 10%, var(--vt-accent-soft,rgba(231,200,119,.3)), transparent 55%),
	linear-gradient(160deg,var(--vt-surface,#14161b),var(--vt-canvas,#0b0c0f)); }
.pvz-ah-sidetab{ position:absolute; right:-1px; top:50%; transform:translateY(-50%) rotate(180deg); writing-mode:vertical-rl; z-index:6;
	display:inline-flex; align-items:center; gap:8px; font:700 11px/1 var(--vt-font-body),sans-serif; letter-spacing:.12em; text-transform:uppercase;
	color:var(--vt-text,#f3efe6); background:color-mix(in srgb,var(--vt-canvas,#0b0c0f) 78%,transparent); backdrop-filter:blur(8px);
	border:1px solid var(--vt-line,rgba(255,255,255,.14)); border-right:0; border-radius:14px 0 0 14px; padding:16px 8px; }
.pvz-ah-stat{ position:absolute; left:16px; right:16px; bottom:16px; padding:18px 20px; border-radius:18px;
	background:color-mix(in srgb,var(--vt-canvas,#0b0c0f) 62%,transparent); backdrop-filter:blur(16px) saturate(1.3);
	border:1px solid var(--vt-line,rgba(255,255,255,.14)); }
.pvz-ah-stat-lbl{ display:inline-flex; align-items:center; gap:8px; font:700 11px/1 var(--vt-font-body),sans-serif; letter-spacing:.14em; text-transform:uppercase; color:var(--vt-muted,#a49b82); }
.pvz-ah-stat-val{ display:block; font:800 clamp(34px,4vw,52px)/1 var(--vt-font-head),sans-serif; color:var(--vt-accent,#e7c877); margin:8px 0 4px; letter-spacing:-.02em; }
.pvz-ah-stat-note{ font-size:13px; color:var(--vt-muted,#a49b82); }
.pvz-ah-live{ width:8px; height:8px; border-radius:50%; background:#22c55e; box-shadow:0 0 0 0 rgba(34,197,94,.6); animation:pvz-livep 1.6s infinite; }
@keyframes pvz-livep{ 70%{ box-shadow:0 0 0 7px rgba(34,197,94,0);} 100%{ box-shadow:0 0 0 0 rgba(34,197,94,0);} }
@media (prefers-reduced-motion:reduce){ .pvz-ah-live{ animation:none; } }
/* Slider */
.pvz-ah-slides{ position:absolute; inset:0; z-index:1; }
.pvz-ah-slide{ position:absolute; inset:0; opacity:0; transition:opacity .8s ease, transform .8s cubic-bezier(.2,.8,.25,1); transform:scale(1.04); }
.pvz-ah-slide.is-active{ opacity:1; transform:none; }
.pvz-ah-slide .pvz-ah-img{ width:100%; height:100%; object-fit:cover; }
/* distinct tinted placeholders so rotation is obvious without images */
.pvz-ah-slide--0 .pvz-ah-img--ph{ background:radial-gradient(120% 90% at 30% 10%, color-mix(in srgb,var(--vt-accent,#e7c877) 30%,transparent), transparent 55%), linear-gradient(160deg,var(--vt-surface,#14161b),var(--vt-canvas,#0b0c0f)); }
.pvz-ah-slide--1 .pvz-ah-img--ph{ background:radial-gradient(120% 90% at 75% 15%, color-mix(in srgb,var(--vt-accent-2,#b8860b) 34%,transparent), transparent 58%), linear-gradient(200deg,#1b1d24,var(--vt-canvas,#0b0c0f)); }
.pvz-ah-slide--2 .pvz-ah-img--ph{ background:radial-gradient(120% 100% at 50% 100%, color-mix(in srgb,var(--vt-accent,#e7c877) 26%,transparent), transparent 60%), linear-gradient(140deg,#15181f,var(--vt-canvas,#0b0c0f)); }
.pvz-ah-slide--3 .pvz-ah-img--ph{ background:radial-gradient(110% 90% at 20% 80%, color-mix(in srgb,var(--vt-accent-2,#b8860b) 28%,transparent), transparent 58%), linear-gradient(220deg,#191b22,var(--vt-canvas,#0b0c0f)); }

/* vertical indicator on the LEFT edge (positioned outside the cellphone frame) */
.pvz-ah-dots{ position:absolute; left:-54px; top:50%; transform:translateY(-50%); z-index:5; display:flex; flex-direction:column; gap:10px; }
.pvz-ah-dots--numbers .pvz-ah-dot{ width:36px; height:36px; border-radius:50%; border:1px solid var(--vt-line,rgba(255,255,255,.2)); cursor:pointer;
	background:color-mix(in srgb,var(--vt-canvas,#0b0c0f) 55%,transparent); backdrop-filter:blur(6px); color:var(--vt-muted,#a49b82);
	font:800 12px/1 "Space Mono",monospace; transition:transform .35s cubic-bezier(.2,.8,.25,1), background .35s, color .35s, border-color .35s;
	position:relative; }
.pvz-ah-dots--numbers .pvz-ah-dot::before{ content:""; position:absolute; inset:-3px; border-radius:50%; border:1.5px solid transparent; transition:border-color .35s; }
.pvz-ah-dots--numbers .pvz-ah-dot:hover{ color:var(--vt-text,#f3efe6); border-color:var(--vt-accent-line,rgba(231,200,119,.5)); }
.pvz-ah-dots--numbers .pvz-ah-dot.is-active{ background:linear-gradient(135deg,var(--vt-accent,#e7c877),var(--vt-accent-2,#b8860b)); color:var(--vt-accent-ink,#20160a); border-color:transparent; transform:scale(1.18); }
.pvz-ah-dots--numbers .pvz-ah-dot.is-active::before{ border-color:var(--vt-accent-line,rgba(231,200,119,.4)); animation:pvz-ah-ring 2s ease-out infinite; }
@keyframes pvz-ah-ring{ 0%{ transform:scale(1); opacity:.9; } 100%{ transform:scale(1.5); opacity:0; } }
.pvz-ah-dots--dots .pvz-ah-dot{ width:10px; height:26px; border-radius:6px; border:0; cursor:pointer; background:var(--vt-line-strong,rgba(255,255,255,.3)); transition:all .35s cubic-bezier(.2,.8,.25,1); }
.pvz-ah-dots--dots .pvz-ah-dot:not(.is-active){ height:10px; border-radius:50%; }
.pvz-ah-dots--dots .pvz-ah-dot.is-active{ background:var(--vt-accent,#e7c877); }
.pvz-ah-media--slider .pvz-ah-stat{ z-index:3; }
@media (prefers-reduced-motion:reduce){ .pvz-ah-dots--numbers .pvz-ah-dot.is-active::before{ animation:none; } .pvz-ah-slide{ transition:opacity .3s; transform:none; } }

@media (max-width:900px){
	.pvz-ah-inner{ grid-template-columns:1fr; gap:28px; padding:30px 30px 20px 10px !important; text-align:center; }
	.pvz-ah-left{ align-items:center; }
	.pvz-ah-sub{ margin-inline:auto; }
	.pvz-ah-cta-row{ flex-direction:column; align-items:center; gap:16px; }
	.pvz-ah-tagline{ max-width:none; }
	.pvz-ah-contact{ justify-content:center; }
	.pvz-ah-title{ font-size:clamp(38px,11vw,60px); }
	.pvz-ah-media{ aspect-ratio:9/18.5; max-width:280px; margin:0 auto; }
	.pvz-ah-dots{ left:50% !important; right:auto !important; top:auto !important; bottom:-36px !important; transform:translateX(-50%) !important; flex-direction:row !important; }
}

/* ══ AGENCY HERO — STYLE TWO (MEDALLION / GOLD FIELD) ════════════════ */
.pvz-ahm{ position:relative; overflow:hidden;
	background:linear-gradient(150deg,var(--vt-accent,#e7c877),var(--vt-accent-2,#c9a227)); }
.pvz-ahm-dots{ position:absolute; inset:0; pointer-events:none; opacity:.5;
	background-image:radial-gradient(color-mix(in srgb,var(--vt-accent-ink,#20160a) 22%,transparent) 1.4px,transparent 1.4px);
	background-size:26px 26px;
	-webkit-mask-image:radial-gradient(120% 100% at 50% 40%,#000 40%,transparent 88%); mask-image:radial-gradient(120% 100% at 50% 40%,#000 40%,transparent 88%); }
.pvz-ahm-inner{ position:relative; z-index:1; max-width:var(--vt-content-width,1240px); margin:0 auto; padding:76px clamp(32px,6vw,120px); }
.pvz-ahm-inner--sport{ display:grid; grid-template-columns:1.08fr .92fr; gap:56px; align-items:center; }
/* Body column */
.pvz-ahm-emblem-sm{ display:inline-grid; place-items:center; width:64px; height:64px; border-radius:16px; margin-bottom:20px;
	background:radial-gradient(circle at 50% 38%,#1a1c22,#0b0c0f); box-shadow:0 14px 30px -16px rgba(0,0,0,.6); }
.pvz-ahm-emblem-sm img{ width:66%; height:auto; }
.pvz-ahm-live{ width:8px; height:8px; border-radius:50%; background:#12b76a; box-shadow:0 0 0 0 rgba(18,183,106,.5); animation:pvz-livep 1.8s infinite; }
.pvz-ahm-kicker{ display:inline-flex; align-items:center; gap:9px; font:700 12.5px/1 var(--vt-font-body),sans-serif; letter-spacing:.22em; text-transform:uppercase;
	color:color-mix(in srgb,var(--vt-accent-ink,#20160a) 66%,transparent); margin-bottom:18px; }
.pvz-ahm-title{ margin:0 0 18px; font-family:var(--vt-font-head),sans-serif; font-weight:var(--vt-head-weight,800); line-height:.98; letter-spacing:-.02em; }
.pvz-ahm-t1,.pvz-ahm-t2{ display:block; font-size:clamp(38px,5.4vw,72px); }
.pvz-ahm-t1{ color:var(--vt-accent-ink,#20160a); }
.pvz-ahm-t2--fill{ color:color-mix(in srgb,var(--vt-accent-ink,#20160a) 82%,transparent); -webkit-text-stroke:0; }
.pvz-ahm-text{ max-width:52ch; margin:0 0 26px; font-size:16px; line-height:1.7; color:color-mix(in srgb,var(--vt-accent-ink,#20160a) 74%,transparent); }
/* Live stat strip */
.pvz-ahm-stats{ display:flex; gap:14px; flex-wrap:wrap; margin:0 0 28px; }
.pvz-ahm-stat{ flex:1; min-width:110px; padding:16px 18px; border-radius:16px;
	background:color-mix(in srgb,var(--vt-accent-ink,#20160a) 9%,transparent); border:1px solid color-mix(in srgb,var(--vt-accent-ink,#20160a) 16%,transparent); }
.pvz-ahm-stat-v{ display:block; font:800 clamp(24px,3vw,34px)/1 var(--vt-font-head),sans-serif; color:var(--vt-accent-ink,#20160a); }
.pvz-ahm-stat-l{ display:block; margin-top:6px; font:700 11px/1.2 var(--vt-font-body),sans-serif; letter-spacing:.12em; text-transform:uppercase; color:color-mix(in srgb,var(--vt-accent-ink,#20160a) 62%,transparent); }
.pvz-ahm-cta-row{ display:flex; flex-wrap:wrap; gap:14px; margin-bottom:22px; }
.pvz-ahm-cta{ display:inline-flex; align-items:stretch; overflow:hidden; border-radius:12px; text-decoration:none;
	font:800 12.5px/1 var(--vt-font-body),sans-serif; letter-spacing:.12em; text-transform:uppercase; }
.pvz-ahm-cta-lbl{ display:flex; align-items:center; padding:16px 8px 16px 22px; }
.pvz-ahm-cta-box{ margin:6px; display:grid; place-items:center; min-width:34px; border-radius:8px; font-size:16px;
	transition:transform .34s cubic-bezier(.2,.7,.2,1); }
.pvz-ahm-cta:hover .pvz-ahm-cta-box{ transform:translateX(5px); }
.pvz-ahm-cta--dark{ background:#0e0f12; color:var(--vt-accent,#e7c877); }
.pvz-ahm-cta--dark .pvz-ahm-cta-box{ background:var(--vt-accent,#e7c877); color:#0e0f12; }
.pvz-ahm-cta--ghost{ background:transparent; color:var(--vt-accent-ink,#20160a); border:1.5px solid color-mix(in srgb,var(--vt-accent-ink,#20160a) 55%,transparent); }
.pvz-ahm-cta--ghost .pvz-ahm-cta-box{ background:#0e0f12; color:var(--vt-accent,#e7c877); }
.pvz-ahm-trust{ display:flex; flex-wrap:wrap; gap:22px; }
.pvz-ahm-trust-i{ display:inline-flex; align-items:center; gap:8px; font:700 12px/1 var(--vt-font-body),sans-serif; letter-spacing:.06em; text-transform:uppercase; color:color-mix(in srgb,var(--vt-accent-ink,#20160a) 70%,transparent); }
.pvz-ahm-trust-i b{ font-size:14px; color:var(--vt-accent-ink,#20160a); }
/* Pick-of-the-day card */
.pvz-ahm-pickwrap{ display:flex; justify-content:center; }
.pvz-ahm-pick{ width:100%; max-width:420px; padding:24px; border-radius:22px; color:#f3efe6;
	background:linear-gradient(165deg,#191b22,#0c0d11); border:1px solid rgba(255,255,255,.08);
	box-shadow:0 44px 90px -46px rgba(0,0,0,.8); }
.pvz-ahm-pick-top{ display:flex; align-items:center; justify-content:space-between; margin-bottom:16px; }
.pvz-ahm-pick-sport{ font:800 12px/1 var(--vt-font-body),sans-serif; letter-spacing:.14em; text-transform:uppercase; color:var(--vt-accent,#e7c877);
	padding:7px 12px; border-radius:8px; background:color-mix(in srgb,var(--vt-accent,#e7c877) 14%,transparent); }
.pvz-ahm-pick-badge{ display:inline-flex; align-items:center; gap:7px; font:700 11px/1 var(--vt-font-body),sans-serif; letter-spacing:.1em; text-transform:uppercase; color:#a49b82; }
.pvz-ahm-pick-match{ font:800 20px/1.2 var(--vt-font-head),sans-serif; margin-bottom:16px; }
.pvz-ahm-pick-play{ display:flex; align-items:center; gap:10px; padding:14px 16px; border-radius:14px; margin-bottom:16px;
	background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.08); }
.pvz-ahm-pick-lbl{ font:700 10px/1.2 var(--vt-font-body),sans-serif; letter-spacing:.12em; text-transform:uppercase; color:#8a8272; }
.pvz-ahm-pick-val{ flex:1; font:800 18px/1 var(--vt-font-head),sans-serif; color:var(--vt-accent,#e7c877); text-align:right; }
.pvz-ahm-pick-odds{ font:800 14px/1 var(--vt-font-body),sans-serif; color:#f3efe6; padding:6px 10px; border-radius:8px; background:rgba(255,255,255,.06); }
.pvz-ahm-pick-conf-h{ display:flex; align-items:center; justify-content:space-between; font:700 11px/1.2 var(--vt-font-body),sans-serif; letter-spacing:.1em; text-transform:uppercase; color:#a49b82; margin-bottom:8px; }
.pvz-ahm-pick-conf-h b{ color:var(--vt-accent,#e7c877); font-size:13px; }
.pvz-ahm-pick-bar{ display:block; height:8px; border-radius:20px; background:rgba(255,255,255,.08); overflow:hidden; }
.pvz-ahm-pick-bar i{ display:block; height:100%; border-radius:20px; background:linear-gradient(90deg,var(--vt-accent,#e7c877),var(--vt-accent-2,#b8860b)); }
.pvz-ahm-pick-note{ margin-top:14px; font-size:12.5px; color:#8a8272; }
/* Locked play row — liquid-glass blur over the play/odds for non-members. The
   real values stay blurred (server still prints them, but they're unreadable
   and covered); tap or swipe-right navigates to the subscribe page. */
.pvz-ahm-pick-play.is-locked{ position:relative; overflow:hidden; cursor:pointer; user-select:none; touch-action:pan-y; }
.pvz-ahm-pick-play.is-locked .pvz-ahm-pick-val,
.pvz-ahm-pick-play.is-locked .pvz-ahm-pick-odds{ filter:blur(9px); opacity:.55; pointer-events:none; }
.pvz-ahm-lockrow{ position:absolute; inset:0; display:flex; align-items:center; gap:10px; padding:0 16px;
	background:color-mix(in srgb,#191b22 62%,transparent); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px);
	transform:translateX(var(--sw,0)); transition:transform .18s; }
.pvz-ahm-pick-play.is-locked.is-drag .pvz-ahm-lockrow{ transition:none; }
.pvz-ahm-lockrow-ic{ font-size:15px; }
.pvz-ahm-lockrow-tx{ font:800 12px/1 var(--vt-font-body),sans-serif; letter-spacing:.08em; text-transform:uppercase; color:#f3efe6; }
.pvz-ahm-lockrow-sw{ margin-left:auto; font:700 11px/1 var(--vt-font-body),sans-serif; letter-spacing:.06em; text-transform:uppercase; color:var(--vt-accent,#e7c877);
	animation:pvz-swipe 1.8s ease-in-out infinite; }
@keyframes pvz-swipe{ 0%,100%{ transform:translateX(0); opacity:.85; } 50%{ transform:translateX(5px); opacity:1; } }
@media (prefers-reduced-motion:reduce){ .pvz-ahm-lockrow-sw{ animation:none; } }
.pvz-ahm-imgcard{ width:100%; max-width:460px; border-radius:22px; overflow:hidden; aspect-ratio:4/5;
	border:1px solid rgba(0,0,0,.16); box-shadow:0 44px 90px -46px rgba(0,0,0,.8); }
.pvz-ahm-imgcard img{ width:100%; height:100%; object-fit:cover; display:block; }
@media (max-width:960px){ .pvz-ahm-inner--sport{ grid-template-columns:1fr; gap:40px; }
	.pvz-ahm-pickwrap{ order:-1; } .pvz-ahm-stats{ gap:10px; } }

/* ══ AGENCY HERO — STYLE THREE (MINIMAL / CENTERED) ══════════════════ */
.pvz-ahx{ text-align:center; }
.pvz-ahx-inner{ position:relative; z-index:1; max-width:820px; margin:0 auto; padding:clamp(72px,11vw,140px) clamp(32px,6vw,120px);
	display:flex; flex-direction:column; align-items:center; gap:26px; }
.pvz-ahx-badge{ display:inline-flex; align-items:center; gap:9px; font:700 12px/1 var(--vt-font-body); letter-spacing:.16em; text-transform:uppercase;
	color:var(--vt-muted,#a49b82); padding:9px 16px; border-radius:999px; border:1px solid var(--vt-line,rgba(255,255,255,.12));
	background:color-mix(in srgb,var(--vt-surface,#14161b) 55%,transparent); }
.pvz-ahx-title{ margin:0; font-family:var(--vt-font-head); font-weight:var(--vt-head-weight,800);
	font-size:clamp(38px,6.4vw,76px); line-height:1.02; letter-spacing:var(--vt-head-spacing,-.03em); color:var(--vt-text,#f3efe6);
	text-wrap:balance; max-width:16ch; }
.pvz-ahx-sub{ margin:0; font-size:clamp(15px,1.6vw,19px); line-height:1.65; color:var(--vt-muted,#a49b82); max-width:56ch; }
.pvz-ahx-cta-row{ margin-top:6px; }
.pvz-ahx-trust{ display:flex; flex-wrap:wrap; justify-content:center; gap:26px; margin-top:10px; }
.pvz-ahx-trust-i{ display:inline-flex; align-items:center; gap:9px; font:700 12px/1 var(--vt-font-body); letter-spacing:.1em; text-transform:uppercase; color:var(--vt-muted,#a49b82); }
.pvz-ahx-trust-i b{ color:var(--vt-accent,#e7c877); font-size:14px; }

/* ══ ABOUT SPLIT ═════════════════════════════════════════════════════ */
.pvz-as-inner{ max-width:var(--vt-content-width,1260px); margin:0 auto; padding:40px clamp(32px,6vw,120px); display:grid; grid-template-columns:.86fr 1.14fr; gap:60px; align-items:center; }
/* Portrait media card — tall rounded shape, soft accent glow behind */
.pvz-as-media{ position:relative; border-radius:28px; overflow:hidden; aspect-ratio:1/1.12; border:1px solid var(--vt-line,rgba(255,255,255,.1));
	box-shadow:0 40px 80px -50px rgba(0,0,0,.7); }
.pvz-as-media img{ width:100%; height:100%; object-fit:cover; display:block; }
.pvz-as-ph{ position:absolute; inset:0; background:linear-gradient(160deg,var(--vt-surface,#14161b),var(--vt-canvas,#0b0c0f)); }
.pvz-as-media-glow{ position:absolute; left:-18%; top:-14%; width:60%; height:55%; z-index:-1; border-radius:50%; filter:blur(60px);
	background:radial-gradient(circle,color-mix(in srgb,var(--vt-accent,#e7c877) 45%,transparent),transparent 70%); pointer-events:none; }
.pvz-as-chip{ position:absolute; left:18px; bottom:18px; display:inline-flex; align-items:center; gap:11px; padding:11px 15px; border-radius:18px;
	background:color-mix(in srgb,var(--vt-canvas,#0b0c0f) 62%,transparent); backdrop-filter:blur(14px); border:1px solid var(--vt-line,rgba(255,255,255,.14)); }
.pvz-as-chip-av{ width:40px; height:40px; border-radius:50%; background-size:cover; background-position:center; border:2px solid var(--vt-accent,#e7c877); }
.pvz-as-chip b{ display:block; font:700 14px/1.2 var(--vt-font-head),sans-serif; color:var(--vt-text,#f3efe6); }
.pvz-as-chip i{ font-style:normal; font-size:12px; color:var(--vt-muted,#a49b82); }
.pvz-as-title{ font-size:clamp(26px,3.2vw,42px); line-height:1.1; margin:16px 0 0; max-width:16ch; }
.pvz-as-rule{ height:1px; margin:30px 0; background:linear-gradient(90deg,var(--vt-line,rgba(255,255,255,.14)),transparent); }
.pvz-as-grid{ display:grid; grid-template-columns:.8fr 1.2fr; gap:44px; align-items:start; }
.pvz-as-left{ padding-top:2px; }
.pvz-as-years{ margin-bottom:22px; }
.pvz-as-years .vault-count{ font:800 clamp(44px,5vw,68px)/1 var(--vt-font-head),sans-serif; color:var(--vt-text,#f3efe6); display:block; }
.pvz-as-years small{ display:block; margin-top:8px; font:700 11px/1.4 var(--vt-font-body),sans-serif; letter-spacing:.16em; text-transform:uppercase; color:var(--vt-muted,#a49b82); }
.pvz-as-desc{ color:var(--vt-muted,#a49b82); font-size:15px; line-height:1.7; margin:0 0 24px; }
/* Arrow-box button — label + sliding arrow tile */
.pvz-as-btn,.pvz-as-btn:visited,.pvz-as-btn:hover{ display:inline-flex; align-items:stretch; gap:0; overflow:hidden; border-radius:12px; text-decoration:none;
	font:800 12.5px/1 var(--vt-font-body),sans-serif; letter-spacing:.08em; text-transform:uppercase; color:#fff !important;
	background:var(--vt-canvas,#0e0f12); border:1px solid var(--vt-line,rgba(255,255,255,.16)); }
html[data-vault-mode="light"] .pvz-as-btn,html[data-vault-mode="light"] .pvz-as-btn:visited,html[data-vault-mode="light"] .pvz-as-btn:hover{ color:#14151a !important; background:#fff; }
.pvz-as-btn .pvz-as-btn-lbl{ display:flex; align-items:center; padding:15px 8px 15px 18px; color:inherit !important; white-space:nowrap; }
.pvz-as-btn-box{ margin:5px; display:grid; place-items:center; min-width:32px; border-radius:8px; font-size:16px;
	background:linear-gradient(135deg,var(--vt-accent,#e7c877),var(--vt-accent-2,#b8860b)); color:var(--vt-accent-ink,#20160a);
	transition:transform .34s cubic-bezier(.2,.7,.2,1); }
.pvz-as-btn:hover .pvz-as-btn-box{ transform:translateX(5px); }
/* Mission / Vision — collapsible cards */
.pvz-as-cards{ display:flex; flex-direction:column; gap:16px; }
.pvz-as-card{ border-radius:22px; overflow:hidden; transition:background .2s; position:relative; }
.pvz-as-card--accent{ background:linear-gradient(160deg,var(--vt-accent,#e7c877),var(--vt-accent-2,#b8860b)); color:var(--vt-accent-ink,#20160a); }
.pvz-as-card--dark{ background:var(--vt-raised,#14161b); border:1px solid var(--vt-line,rgba(255,255,255,.1)); color:var(--vt-text,#f3efe6); }
.pvz-as-cardhead{ width:100%; display:flex; align-items:center; gap:14px; padding:20px 24px; background:none; border:0; cursor:pointer; text-align:left; color:inherit; }
.pvz-as-cardhead h3{ flex:1; font:800 18px/1.2 var(--vt-font-head),sans-serif; margin:0; }
.pvz-as-ic{ display:grid; place-items:center; width:34px; height:34px; border-radius:10px; font-size:18px; flex-shrink:0;
	background:color-mix(in srgb,var(--vt-canvas,#0b0c0f) 16%,transparent); }
.pvz-as-card--dark .pvz-as-ic{ background:color-mix(in srgb,var(--vt-accent,#e7c877) 16%,transparent); color:var(--vt-accent,#e7c877); }
.pvz-as-chev{ font-size:22px; line-height:1; flex-shrink:0; transition:transform .3s; opacity:.7; }
.pvz-as-card.is-open .pvz-as-chev{ transform:rotate(45deg); }
.pvz-as-cardbody{ display:grid; grid-template-rows:0fr; transition:grid-template-rows .32s ease; }
.pvz-as-card.is-open .pvz-as-cardbody{ grid-template-rows:1fr; }
.pvz-as-cardbody > p{ overflow:hidden; margin:0; padding:0 24px; font-size:14px; line-height:1.65; opacity:.94; transition:padding .32s ease; }
.pvz-as-card.is-open .pvz-as-cardbody > p{ padding:0 24px 22px; }
@media (max-width:1000px){ .pvz-as-inner{ grid-template-columns:1fr; gap:40px; } .pvz-as-grid{ grid-template-columns:1fr; gap:30px; } .pvz-as-title{ max-width:none; } }

/* ══ BENTO TRUST ═════════════════════════════════════════════════════
   3-column bento — every row fills edge-to-edge, no dead space:
   Row1-2: feature (1 col, tall)  | tools (2 col, row1)
   Row2:                          | rating (1 col)  | safe (1 col)
   Row3:   strat (2 col, wide)    | support (1 col)                      */
.pvz-bento{ max-width:var(--vt-content-width,1240px); margin:0 auto; padding:24px clamp(32px,6vw,120px); display:grid; gap:22px;
	grid-template-columns:repeat(3,1fr); grid-auto-rows:minmax(120px,auto); align-items:stretch; }
.pvz-bn{ border-radius:22px; padding:28px; border:1px solid var(--vt-line,rgba(255,255,255,.1));
	background:var(--vt-surface,#14161b); position:relative; overflow:hidden; transition:border-color .25s, transform .25s, box-shadow .25s; }
.pvz-bn:hover{ transform:translateY(-3px); border-color:var(--vt-accent-line,rgba(231,200,119,.35)); box-shadow:0 24px 50px -30px rgba(0,0,0,.4); }
.pvz-bn h3{ font:800 19px/1.2 var(--vt-font-head),sans-serif; color:var(--vt-text,#f3efe6); margin:0 0 8px; }
.pvz-bn p{ font-size:14px; line-height:1.65; color:var(--vt-muted,#a49b82); margin:0; }
/* "dark" cards = a deeper surface that adapts to the mode (not hard black) */
.pvz-bn--dark{ background:var(--vt-raised,#1d2027); }
html[data-vault-mode="dark"] .pvz-bn--dark{ background:#15171d; border-color:rgba(255,255,255,.09); }
html[data-vault-mode="light"] .pvz-bn--dark{ background:#eceae4; }
/* accent card follows the theme preset (not a hard orange) */
.pvz-bn--accent{ background:linear-gradient(160deg,var(--vt-accent,#e7c877),var(--vt-accent-2,#b8860b)); border-color:transparent; color:var(--vt-accent-ink,#20160a); }
.pvz-bn--accent h3,.pvz-bn--accent p{ color:var(--vt-accent-ink,#20160a); }
.pvz-bn--accent p{ opacity:.92; }

.pvz-bn--feature{ grid-column:1; grid-row:1 / span 2; display:flex; flex-direction:column; }
.pvz-bn--feature .pvz-bn-media{ flex:1; border-radius:14px; overflow:hidden; margin:12px 0; min-height:170px; }
.pvz-bn-media img{ width:100%; height:100%; object-fit:cover; display:block; }
.pvz-bn-ph{ display:block; width:100%; height:100%; min-height:170px; border-radius:14px;
	background:radial-gradient(120% 90% at 30% 20%, var(--vt-accent-soft,rgba(231,200,119,.28)), transparent 55%), color-mix(in srgb,var(--vt-canvas,#0b0c0f) 60%, var(--vt-surface,#14161b)); }

.pvz-bn--tools{ grid-column:2 / span 2; grid-row:1; }
.pvz-bn-chips{ display:flex; flex-wrap:wrap; gap:10px; margin-top:16px; }
.pvz-bn-chip{ font:700 12px/1 var(--vt-font-body),sans-serif; letter-spacing:.03em; color:var(--vt-text,#f3efe6);
	background:color-mix(in srgb,var(--vt-text,#fff) 8%,transparent); border:1px solid var(--vt-line); border-radius:20px; padding:8px 14px; }

.pvz-bn--support{ grid-column:3; grid-row:3; display:flex; flex-direction:column; justify-content:space-between; }
.pvz-bn-online{ display:inline-flex; align-items:center; gap:7px; font-size:12px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; color:#22c55e; }
.pvz-bn-online i{ width:8px; height:8px; border-radius:50%; background:#22c55e; box-shadow:0 0 8px #22c55e; }
.pvz-bn-supavatar{ width:100%; height:86px; border-radius:14px; margin-top:12px; background:transparent center/contain no-repeat; }

.pvz-bn--rating{ grid-column:2; grid-row:2; display:flex; flex-direction:column; justify-content:center; }
html[data-vault-mode="dark"] .pvz-bn--rating{ background:#f4f3f0; color:#17191d; }
html[data-vault-mode="dark"] .pvz-bn--rating p{ color:#4a4d54; }
html[data-vault-mode="dark"] .pvz-bn--rating .pvz-bn-score{ color:#17191d; }
.pvz-bn-stars{ color:var(--vt-accent,#e7c877); letter-spacing:3px; font-size:20px; }
.pvz-bn-score{ position:absolute; top:24px; right:28px; font:800 34px/1 var(--vt-font-head),sans-serif; color:var(--vt-text,#f3efe6); }
.pvz-bn-score small{ font-size:14px; color:var(--vt-muted,#8a8d94); }

.pvz-bn--safe{ grid-column:3; grid-row:2; }

.pvz-bn--strat{ grid-column:1 / span 2; grid-row:3; display:flex; flex-direction:column; }
.pvz-bn-list{ list-style:none; margin:14px 0 18px; padding:0; display:grid; grid-template-columns:1fr 1fr; gap:11px 22px; }
.pvz-bn-list li{ position:relative; padding-left:24px; color:var(--vt-text,#f3efe6); font-size:14px; }
.pvz-bn-list li::before{ content:"✦"; position:absolute; left:0; color:var(--vt-accent,#e7c877); }
.pvz-bn-btn{ margin-top:auto; align-self:flex-start; }
.pvz-bn-lock{ position:absolute; right:20px; bottom:16px; font-size:40px; opacity:.9; }

@media (max-width:900px){
	.pvz-bento{ grid-template-columns:1fr 1fr; }
	.pvz-bn--feature{ grid-column:1; grid-row:1 / span 2; }
	.pvz-bn--tools{ grid-column:2; grid-row:1; }
	.pvz-bn--rating{ grid-column:2; grid-row:2; }
	.pvz-bn--support{ grid-column:1; grid-row:3; }
	.pvz-bn--safe{ grid-column:2; grid-row:3; }
	.pvz-bn--strat{ grid-column:1 / span 2; grid-row:4; }
	.pvz-bn-list{ grid-template-columns:1fr; }
}
@media (max-width:640px){
	.pvz-bento{ grid-template-columns:1fr; }
	.pvz-bn--feature,.pvz-bn--tools,.pvz-bn--rating,.pvz-bn--support,.pvz-bn--safe,.pvz-bn--strat{ grid-column:1; grid-row:auto; }
}

/* ══ CONTACT HERO (tapes + form card) ════════════════════════════════ */
.pvz-ct{ position:relative; padding:80px 24px; overflow:hidden; display:flex; justify-content:center; }
.pvz-ct-tape{ position:absolute; left:-10%; width:120%; padding:11px 0; overflow:hidden; white-space:nowrap; z-index:1;
	font:800 16px/1 var(--vt-font-head),sans-serif; letter-spacing:.04em; }
.pvz-ct-tape span{ display:inline-block; animation:pvz-mq 30s linear infinite; }
.pvz-ct-tape--a{ top:56%; transform:rotate(-6deg); background:linear-gradient(90deg,var(--vt-accent,#e7c877),var(--vt-accent-2,#b8860b)); color:var(--vt-accent-ink,#20160a); }
.pvz-ct-tape--b{ top:62%; transform:rotate(5deg); background:#0f1013; color:#fff; }
.pvz-ct-card{ position:relative; z-index:2; width:min(680px,100%); background:color-mix(in srgb,var(--vt-canvas,#0b0c0f) 82%,#000);
	border:1px solid var(--vt-line,rgba(255,255,255,.12)); border-radius:24px; padding:34px; box-shadow:0 50px 100px -40px rgba(0,0,0,.85);
	background-image:radial-gradient(120% 60% at 50% -10%, color-mix(in srgb,var(--vt-accent,#e7c877) 26%,transparent), transparent 60%); }
.pvz-ct-title{ font:800 clamp(26px,3.4vw,40px)/1.1 var(--vt-font-head),sans-serif; color:#fff; margin:12px 0 20px; }
.pvz-ct-ok{ background:rgba(34,197,94,.14); border:1px solid rgba(34,197,94,.4); color:#7ee2a3; border-radius:12px; padding:12px 16px; margin-bottom:16px; font-size:14px; }
.pvz-ct-form{ display:flex; flex-direction:column; gap:14px; }
.pvz-ct-row{ display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.pvz-ct-form label{ display:flex; flex-direction:column; gap:7px; font:700 12px/1 var(--vt-font-body),sans-serif; letter-spacing:.04em; color:#cfcabb; }
.pvz-ct-form input[type=text],.pvz-ct-form input[type=email],.pvz-ct-form textarea{
	background:rgba(255,255,255,.04); border:1px solid var(--vt-line,rgba(255,255,255,.14)); border-radius:11px;
	padding:13px 15px; color:#fff; font:400 15px/1.4 var(--vt-font-body),sans-serif; transition:border-color .2s, box-shadow .2s; }
.pvz-ct-form input:focus,.pvz-ct-form textarea:focus{ outline:none; border-color:var(--vt-accent,#e7c877); box-shadow:0 0 0 3px color-mix(in srgb,var(--vt-accent,#e7c877) 20%,transparent); }
.pvz-ct-check{ flex-direction:row !important; align-items:center; gap:9px; text-transform:none; letter-spacing:0; font-weight:500; color:#a49b82; }
.pvz-ct-check input{ accent-color:var(--vt-accent-2,#b8860b); }
.pvz-ct-foot{ display:flex; align-items:center; justify-content:space-between; gap:16px; margin-top:6px; flex-wrap:wrap; }
.pvz-ct-agent{ display:flex; align-items:center; gap:11px; }
.pvz-ct-agent-av{ width:40px; height:40px; border-radius:50%; background:#26282e center/cover; }
.pvz-ct-agent b{ display:block; color:#fff; font:700 14px/1.2 var(--vt-font-head),sans-serif; }
.pvz-ct-agent i{ font-style:normal; font-size:12px; color:#a49b82; }
.pvz-ct-submit{ display:inline-flex; align-items:center; gap:9px; border:0; cursor:pointer; font-weight:800; font-size:14px;
	color:var(--vt-accent-ink,#20160a); background:linear-gradient(135deg,var(--vt-accent,#e7c877),var(--vt-accent-2,#b8860b)); border-radius:12px; padding:14px 24px; }
.pvz-ct-submit span{ display:grid; place-items:center; width:20px; height:20px; border-radius:50%; background:rgba(0,0,0,.22); }
@media (max-width:600px){ .pvz-ct-row{ grid-template-columns:1fr; } }

/* ══ PICKS CAROUSEL ══════════════════════════════════════════════════
   Card width is driven by --pvz-car-visible (cards visible at once) rather
   than a fixed breakpoint size, so the "visible" control actually works.
   Continuous mode scrolls via JS-driven scrollLeft (see widget script) so it
   can pause for a real mouse-drag — no more CSS-transform-only animation. */
.pvz-carousel{ position:relative; --pvz-car-visible:3; }
/* No `scroll-behavior:smooth` here on purpose — it would animate/interpolate
   EVERY per-frame scrollLeft write during a drag or the auto-scroll loop,
   which is why dragging used to barely move the strip. Arrow clicks opt into
   smooth scrolling explicitly via scrollBy({behavior:'smooth'}) in the widget's
   own script instead. */
.pvz-carousel .predictions-grid{ display:flex !important; flex-wrap:nowrap !important; gap:20px; overflow-x:auto; scroll-snap-type:x proximity;
	padding:6px 4px 16px; -ms-overflow-style:none; scrollbar-width:none; }
.pvz-carousel .predictions-grid::-webkit-scrollbar{ display:none; }
.pvz-carousel .predictions-pick-card{ scroll-snap-align:start; flex:0 0 auto;
	width:calc((100% - (var(--pvz-car-visible) - 1) * 20px) / var(--pvz-car-visible)); min-width:200px; }
.pvz-carousel--small .predictions-pick-card{ min-width:180px; }
.pvz-car-nav{ position:absolute; top:42%; z-index:5; width:42px; height:42px; border-radius:50%; border:1px solid var(--vt-line,rgba(255,255,255,.12)); cursor:pointer;
	background:color-mix(in srgb,var(--vt-surface,#14161b) 80%,transparent); backdrop-filter:blur(8px); color:var(--vt-text,#f3efe6); font-size:22px; line-height:1;
	display:grid; place-items:center; transition:transform .15s, border-color .2s; }
.pvz-car-nav:hover{ border-color:var(--vt-accent,#e7c877); transform:scale(1.08); }
.pvz-car-prev{ left:-8px; } .pvz-car-next{ right:-8px; }
/* continuous — edge fade mask; scrolling itself is JS-driven (rAF) so drag can pause it */
.pvz-carousel--continuous{ -webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent); mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent); }
.pvz-carousel--continuous .predictions-grid{ scroll-snap-type:none; cursor:grab; }
.pvz-carousel--continuous .predictions-grid:active{ cursor:grabbing; }
/* static — plain wrapping grid, no horizontal scroll/animation (a calmer home page) */
.pvz-carousel--static .predictions-grid{ display:grid !important; flex-wrap:wrap; overflow:visible; scroll-snap-type:none; width:auto; gap:20px;
	grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); }
.pvz-carousel--static .predictions-pick-card{ width:auto; min-width:0; scroll-snap-align:none; }
@media (max-width:960px){ .pvz-carousel{ --pvz-car-visible:2 !important; } }
@media (max-width:640px){ .pvz-car-nav{ display:none; } .pvz-carousel{ --pvz-car-visible:1.15 !important; } }

/* ══ FAQ ═════════════════════════════════════════════════════════════ */
.pvz-faq{ max-width:860px; margin:0 auto; display:flex; flex-direction:column; gap:14px; }
.pvz-faq-item{ position:relative; border:1px solid var(--vt-line,rgba(255,255,255,.1)); border-radius:16px; overflow:hidden;
	background:var(--vt-surface,#14161b); transition:border-color .25s, box-shadow .25s, transform .25s; }
.pvz-faq-item::before{ content:""; position:absolute; left:0; top:14px; bottom:14px; width:3px; border-radius:3px;
	background:linear-gradient(180deg,var(--vt-accent,#e7c877),var(--vt-accent-2,#b8860b)); opacity:0; transition:opacity .25s; }
.pvz-faq-item.is-open,.pvz-faq-item:hover{ border-color:var(--vt-accent-line,rgba(231,200,119,.35)); }
.pvz-faq-item.is-open{ box-shadow:0 20px 50px -30px var(--vt-accent-soft,rgba(231,200,119,.4)); }
.pvz-faq-item.is-open::before{ opacity:1; }
.pvz-faq-q{ width:100%; display:flex; align-items:center; gap:18px; padding:20px 22px; background:none; border:0; cursor:pointer; text-align:left; }
.pvz-faq-n{ font:800 13px/1 "Space Mono",monospace; color:var(--vt-accent,#e7c877); opacity:.8; }
.pvz-faq-qt{ flex:1; font:700 16.5px/1.3 var(--vt-font-head),sans-serif; color:var(--vt-text,#f3efe6); }
.pvz-faq-ic{ position:relative; width:20px; height:20px; flex-shrink:0; }
.pvz-faq-ic::before,.pvz-faq-ic::after{ content:""; position:absolute; background:var(--vt-accent,#e7c877); border-radius:2px; transition:transform .3s cubic-bezier(.2,.8,.25,1); }
.pvz-faq-ic::before{ left:0; right:0; top:9px; height:2px; }
.pvz-faq-ic::after{ top:0; bottom:0; left:9px; width:2px; }
.pvz-faq-item.is-open .pvz-faq-ic::after{ transform:scaleY(0); }
.pvz-faq-item.is-open .pvz-faq-ic::before{ transform:rotate(180deg); }
.pvz-faq-a{ display:grid; grid-template-rows:0fr; transition:grid-template-rows .35s cubic-bezier(.2,.8,.25,1); }
.pvz-faq-item.is-open .pvz-faq-a{ grid-template-rows:1fr; }
.pvz-faq-a-in{ overflow:hidden; }
.pvz-faq-a-in p{ margin:0 22px 20px 57px; color:var(--vt-muted,#a49b82); font-size:14.5px; line-height:1.7; }
@media (prefers-reduced-motion:reduce){ .pvz-faq-a{ transition:none; } .pvz-faq-ic::before,.pvz-faq-ic::after{ transition:none; } }

/* ══ SECTION HEADING (kicker + split heading) ════════════════════════ */
.pvz-sh{ position:relative; z-index:2; display:flex; flex-direction:column; max-width:760px; margin:0 auto; gap:14px; }
.pvz-sh[style*="left"]{ margin:0; align-items:flex-start; }
/* Flanking gold line accents around the kicker (Nimo/Paramount) */
.pvz-sh-kick{ display:inline-flex; align-items:center; gap:16px; align-self:center; }
.pvz-sh[style*="left"] .pvz-sh-kick .pvz-sh-line:first-child{ display:none; }
.pvz-sh-line{ width:clamp(28px,6vw,64px); height:1px; background:linear-gradient(90deg,transparent,var(--vt-accent-line,rgba(231,200,119,.5))); }
.pvz-sh-line:last-child{ background:linear-gradient(90deg,var(--vt-accent-line,rgba(231,200,119,.5)),transparent); }
body:not(.elementor-editor-active) .pvz-sh-kick .vault-kicker{ animation:vault-title-in .7s cubic-bezier(.16,1,.3,1) both; animation-timeline:view(); animation-range:entry 0% cover 20%; }
@supports not (animation-timeline: view()){ .pvz-sh-kick .vault-kicker{ animation:none !important; } }
.pvz-sh-title{ font-size:clamp(30px,5vw,58px); line-height:1.04; margin:0; }
.pvz-sh-sub{ color:var(--vt-muted,#a49b82); font-size:16px; line-height:1.7; max-width:560px; margin:0 auto; }
.pvz-sh[style*="left"] .pvz-sh-sub{ margin-left:0; margin-right:0; }
/* Breathing room between the section heading and the content widget below it */
.elementor-widget-pickviz_section_heading:not(:last-child){ margin-bottom:clamp(28px,4vw,52px) !important; }

/* ══ MARQUEE STATS ═══════════════════════════════════════════════════ */
.pvz-mq{ overflow:hidden; -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
	mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent); }
.pvz-mq-track{ display:inline-flex; align-items:center; white-space:nowrap; animation:pvz-mq var(--mq-speed,28s) linear infinite; }
.pvz-mq:hover .pvz-mq-track{ animation-play-state:paused; }
@keyframes pvz-mq{ to{ transform:translateX(-50%); } }
.pvz-mq-item{ display:inline-flex; align-items:baseline; gap:12px; padding:0 34px; }
.pvz-mq-val{ font:800 clamp(28px,4vw,44px)/1 var(--vt-font-head),sans-serif; color:var(--vt-text,#f3efe6); }
.pvz-mq-lbl{ font-size:13px; line-height:1.2; color:var(--vt-muted,#a49b82); max-width:110px; white-space:normal; }
.pvz-mq-div{ width:1px; height:44px; background:var(--vt-line,rgba(255,255,255,.12)); }
@media (prefers-reduced-motion:reduce){ .pvz-mq-track{ animation:none; } }

/* ══ TIMELINE STEPS ══════════════════════════════════════════════════ */
.pvz-tl{ position:relative; max-width:980px; margin:0 auto; padding:20px 0; }
.pvz-tl-spine{ position:absolute; left:50%; top:0; bottom:0; width:2px; transform:translateX(-50%);
	background:linear-gradient(180deg,transparent,var(--vt-accent,#e7c877) 8%,var(--vt-accent,#e7c877) 92%,transparent); opacity:.8; }
.pvz-tl-row{ position:relative; display:flex; margin:34px 0; min-height:60px; }
.pvz-tl-row--left{ justify-content:flex-start; }
.pvz-tl-row--right{ justify-content:flex-end; }
.pvz-tl-node{ position:absolute; left:50%; top:8px; transform:translateX(-50%); width:34px; height:34px; border-radius:50%;
	display:grid; place-items:center; font:800 14px/1 var(--vt-font-head),sans-serif; color:var(--vt-accent-ink,#20160a); z-index:2;
	background:linear-gradient(135deg,var(--vt-accent,#e7c877),var(--vt-accent-2,#b8860b));
	box-shadow:0 0 0 6px var(--vt-canvas,#0b0c0f), 0 0 20px var(--vt-accent-soft,rgba(231,200,119,.4)); }
.pvz-tl-card{ width:calc(50% - 46px); background:var(--vt-surface,#14161b); border:1px solid var(--vt-line,rgba(255,255,255,.09));
	border-radius:18px; padding:24px 26px; position:relative; transition:border-color .25s, transform .25s; }
.pvz-tl-card:hover{ border-color:var(--vt-accent-line,rgba(231,200,119,.35)); transform:translateY(-3px); }
.pvz-tl-badge{ position:absolute; top:18px; right:22px; font:700 11px/1 "Space Mono",monospace; letter-spacing:.04em;
	color:var(--vt-muted,#a49b82); background:var(--vt-canvas,#0b0c0f); border:1px solid var(--vt-line,rgba(255,255,255,.1));
	padding:6px 11px; border-radius:20px; }
.pvz-tl-title{ font:800 20px/1.2 var(--vt-font-head),sans-serif; color:var(--vt-text,#f3efe6); margin:0 0 8px; }
.pvz-tl-num{ color:var(--vt-muted,#a49b82); }
.pvz-tl-desc{ color:var(--vt-muted,#a49b82); font-size:14px; line-height:1.65; margin:0; max-width:34ch; }
@media (max-width:768px){
	.pvz-tl-spine{ left:20px; }
	.pvz-tl-row{ justify-content:flex-end !important; margin:24px 0; }
	.pvz-tl-node{ left:20px; }
	.pvz-tl-card{ width:calc(100% - 56px); }
	.pvz-tl-badge{ position:static; display:inline-block; margin-bottom:10px; }
}



/* ══ NEWS / BLOG CARDS ═══════════════════════════════════════════════ */
.pvz-news{ position:relative; max-width:var(--vt-content-width,1240px); margin:0 auto; padding:0 24px; }
.pvz-news-grid{ display:grid; grid-template-columns:repeat(var(--pvz-news-cols,3),minmax(0,1fr)); gap:24px; }
/* Carousel: horizontal scroll-snap row */
.pvz-news--carousel .pvz-news-grid{ display:flex; overflow-x:auto; scroll-snap-type:x mandatory; gap:24px; padding-bottom:8px; scrollbar-width:none; }
.pvz-news--carousel .pvz-news-grid::-webkit-scrollbar{ display:none; }
.pvz-news--carousel .pvz-news-card{ flex:0 0 clamp(260px,30%,360px); scroll-snap-align:start; }
.pvz-news-nav{ position:absolute; top:-58px; right:24px; display:flex; gap:10px; }
.pvz-news-arrow{ width:42px; height:42px; border-radius:50%; cursor:pointer; font-size:17px;
	background:var(--vt-raised,#14161b); color:var(--vt-text,#f3efe6); border:1px solid var(--vt-line,rgba(255,255,255,.14)); transition:.18s; }
.pvz-news-arrow:hover{ background:var(--vt-accent,#e7c877); color:var(--vt-accent-ink,#20160a); border-color:transparent; }
@media (max-width:900px){ .pvz-news-grid{ grid-template-columns:1fr; } .pvz-news-nav{ display:none; } }
.pvz-news-card{ display:flex; flex-direction:column; border-radius:20px; overflow:hidden; text-decoration:none;
	background:var(--vt-raised,#14161b); border:1px solid var(--vt-line,rgba(255,255,255,.1)); transition:transform .25s, border-color .25s, box-shadow .25s; }
.pvz-news-card:hover{ transform:translateY(-6px); border-color:var(--vt-accent-line,rgba(231,200,119,.4)); box-shadow:0 30px 60px -34px rgba(0,0,0,.7); }
.pvz-news-thumb{ position:relative; aspect-ratio:16/10; background-size:cover; background-position:center; display:block; }
.pvz-news-thumb[data-ph]{ background:linear-gradient(150deg,color-mix(in srgb,var(--vt-accent,#e7c877) 22%,var(--vt-surface,#14161b)),var(--vt-canvas,#0b0c0f)); }
.pvz-news-cat{ position:absolute; left:14px; top:14px; font:800 11px/1 var(--vt-font-body),sans-serif; letter-spacing:.1em; text-transform:uppercase;
	color:var(--vt-accent-ink,#20160a); background:var(--vt-accent,#e7c877); padding:7px 12px; border-radius:8px; }
.pvz-news-body{ display:flex; flex-direction:column; gap:10px; padding:22px 22px 24px; }
.pvz-news-date{ font:700 11px/1 var(--vt-font-body),sans-serif; letter-spacing:.12em; text-transform:uppercase; color:var(--vt-muted,#a49b82); }
.pvz-news-title{ font:500 20px/1.3 var(--vt-font-head),sans-serif; margin:0; color:var(--vt-text,#f3efe6); }
.pvz-news-ex{ font-size:14px; line-height:1.6; color:var(--vt-muted,#a49b82); }
.pvz-news-more{ margin-top:4px; font:800 12px/1 var(--vt-font-body),sans-serif; letter-spacing:.08em; text-transform:uppercase; color:var(--vt-accent,#e7c877); }
.pvz-news-more b{ transition:transform .3s; display:inline-block; }
.pvz-news-card:hover .pvz-news-more b{ transform:translateX(4px); }
.pvz-news-empty{ text-align:center; color:var(--vt-muted,#a49b82); padding:30px; }

/* ══ PICK CARD FAMILY (Latest / Winner / Upcoming / List) ════════════
   One shared chrome for the four game-day widgets — same radius, top row,
   mono labels, hover lift — all on theme tokens so light mode just works. */
.pvz-pcard {
	width: 100%;
	max-width: 460px;
	margin: 0 auto;
	background: var(--vt-surface, #14161b);
	border: 1px solid var(--vt-line, rgba(255, 255, 255, 0.08));
	border-radius: 24px;
	padding: 28px;
	box-shadow: 0 16px 40px -20px rgba(0, 0, 0, 0.25), inset 0 1px 0 0 rgba(255, 255, 255, 0.05);
	position: relative;
	overflow: hidden;
	transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
	display: flex !important;
	flex-direction: column !important;
	justify-content: space-between !important;
}
.pvz-pcard:hover {
	transform: translateY(-5px);
	border-color: var(--vt-accent-line, rgba(231, 200, 119, 0.45));
	box-shadow: 0 24px 60px -25px rgba(0, 0, 0, 0.35);
}
.pvz-pcard-top {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 20px;
}
.pvz-pcard-sport {
	font: 700 10px/1 var(--vt-font-mono, "Space Mono", monospace);
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--vt-accent, #e7c877);
	background: color-mix(in srgb, var(--vt-accent, #e7c877) 12%, transparent);
	border: 1px solid color-mix(in srgb, var(--vt-accent, #e7c877) 25%, transparent);
	border-radius: 8px;
	padding: 5px 12px;
	transition: all 0.2s ease;
}
.pvz-pcard:hover .pvz-pcard-sport {
	background: color-mix(in srgb, var(--vt-accent, #e7c877) 20%, transparent);
	box-shadow: 0 0 12px -3px var(--vt-accent, #e7c877);
}
.pvz-pcard-badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font: 700 10px/1 var(--vt-font-mono, "Space Mono", monospace);
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--vt-accent, #e7c877);
}
.pvz-pcard-dot {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #22c55e;
	box-shadow: 0 0 8px #22c55e;
	animation: pvz-pulse-green 2s infinite;
}
@keyframes pvz-pulse-green {
	0% { transform: scale(1); box-shadow: 0 0 4px #22c55e; }
	50% { transform: scale(1.2); box-shadow: 0 0 10px #22c55e; }
	100% { transform: scale(1); box-shadow: 0 0 4px #22c55e; }
}
.pvz-pcard-match {
	position: relative;
	z-index: 1;
	font: 800 22px/1.2 var(--vt-font-head), sans-serif;
	color: var(--vt-text, #f3efe6);
	margin-bottom: 20px;
	letter-spacing: -0.01em;
}
.pvz-pcard-play {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	background: var(--vt-canvas, #0b0c0f);
	border: 1px solid var(--vt-line, rgba(255, 255, 255, .06));
	border-radius: 16px;
	padding: 14px 18px;
	transition: all 0.25s ease;
}
.pvz-pcard:hover .pvz-pcard-play {
	border-color: var(--vt-line-strong, rgba(255,255,255,.14));
}
.pvz-pcard-lbl {
	font: 700 10px/1.2 var(--vt-font-mono, "Space Mono", monospace);
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--vt-muted, #a49b82);
}
.pvz-pcard-playval {
	display: flex;
	align-items: center;
	gap: 10px;
	z-index: 2;
}
.pvz-pcard-val {
	font: 800 15px/1.2 var(--vt-font-head), sans-serif;
	color: var(--vt-accent, #e7c877);
}
.pvz-pcard-odds {
	font: 700 11px/1 var(--vt-font-mono, "Space Mono", monospace);
	background: var(--vt-surface, #14161b);
	border: 1px solid var(--vt-line, rgba(255, 255, 255, .06));
	color: var(--vt-text, #f3efe6);
	padding: 4px 10px;
	border-radius: 8px;
	transition: all 0.2s ease;
}
.pvz-pcard-conf {
	position: relative;
	z-index: 1;
	margin-top: 22px;
}
.pvz-pcard-conf-h {
	display: flex;
	justify-content: space-between;
	font: 700 10px/1.2 var(--vt-font-mono, "Space Mono", monospace);
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--vt-muted, #a49b82);
	margin-bottom: 8px;
}
.pvz-pcard-conf-h b {
	color: var(--vt-text, #f3efe6);
}
.pvz-pcard-bar {
	display: block;
	height: 8px;
	background: var(--vt-canvas, #0b0c0f);
	border-radius: 10px;
	overflow: hidden;
	position: relative;
}
.pvz-pcard-bar i {
	display: block;
	height: 100%;
	border-radius: 10px;
	background: linear-gradient(90deg, var(--vt-accent, #e7c877), var(--vt-accent-2, #b8860b));
	position: relative;
	overflow: hidden;
}
.pvz-pcard-bar i::after {
	content: "";
	position: absolute;
	top: 0; left: 0; bottom: 0; right: 0;
	background: linear-gradient(90deg, transparent, rgba(255,255,255,0.15), transparent);
	transform: translateX(-100%);
	animation: pvz-bar-sheen 3s infinite;
}
@keyframes pvz-bar-sheen {
	100% { transform: translateX(100%); }
}
.pvz-pcard-note {
	position: relative;
	z-index: 1;
	margin-top: 18px;
	font-size: 11.5px;
	color: var(--vt-muted, #a49b82);
	display: flex;
	align-items: center;
	gap: 6px;
}

/* Locked play — liquid glass + tap/swipe-to-subscribe */
.pvz-pcard-play.is-locked {
	cursor: pointer;
	user-select: none;
	touch-action: pan-y;
}
.pvz-pcard-play.is-locked .pvz-pcard-val,
.pvz-pcard-play.is-locked .pvz-pcard-odds {
	filter: blur(7px);
	opacity: .5;
	pointer-events: none;
}
.pvz-pcard-lock {
	position: absolute;
	inset: 0;
	z-index: 3;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	background: color-mix(in srgb, var(--vt-canvas, #0b0c0f) 65%, transparent);
	-webkit-backdrop-filter: blur(6px);
	backdrop-filter: blur(6px);
	border-radius: 14px;
	transform: translateX(var(--sw, 0));
	transition: transform .18s;
}
.pvz-pcard-lock b {
	font: 700 11px/1 var(--vt-font-head), sans-serif;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: var(--vt-text, #f3efe6);
}
.pvz-pcard-lock i {
	font-style: normal;
	font-size: 13px;
	transition: transform 0.3s ease;
}
.pvz-pcard-play.is-locked:hover .pvz-pcard-lock i {
	transform: scale(1.15) rotate(-5deg);
}

/* Winner variant — green proof card */
.pvz-pcard--winner {
	border-color: color-mix(in srgb, #22c55e 35%, transparent) !important;
}
.pvz-pcard--winner:hover {
	border-color: color-mix(in srgb, #22c55e 65%, transparent) !important;
	box-shadow: 0 24px 60px -25px rgba(0, 0, 0, 0.6), 0 0 25px -5px rgba(34, 197, 94, 0.2), inset 0 1px 0 0 rgba(255, 255, 255, 0.08) !important;
}
.pvz-pcard--winner::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: 180px;
	height: 180px;
	pointer-events: none;
	background: radial-gradient(circle at 100% 0%, rgba(34, 197, 94, .18), transparent 75%);
}
.pvz-pcard--winner .pvz-pcard-sport {
	color: #22c55e;
	background: rgba(34, 197, 94, .1);
	border-color: rgba(34, 197, 94, .25);
}
.pvz-pcard--winner .pvz-pcard-badge {
	color: #22c55e;
}
.pvz-pcard--winner .pvz-pcard-lbl {
	color: #22c55e;
}
.pvz-pcard--winner .pvz-pcard-val {
	color: var(--vt-text, #f3efe6);
}
.pvz-pcard--winner .pvz-pcard-odds {
	background: #22c55e;
	color: #04150a;
	border-color: transparent;
}
.pvz-pcard-return {
	position: relative;
	z-index: 1;
	margin-top: 24px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: rgba(34, 197, 94, 0.05);
	border: 1px dashed rgba(34, 197, 94, 0.2);
	border-radius: 12px;
	padding: 10px 16px;
}
.pvz-pcard-return small {
	font: 700 10px/1.2 var(--vt-font-mono, "Space Mono", monospace);
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--vt-muted, #a49b82);
}
.pvz-pcard-return b {
	font: 700 24px/1 var(--vt-font-mono, "Space Mono", monospace);
	color: #22c55e;
	text-shadow: 0 0 10px rgba(34, 197, 94, 0.3);
}

/* Upcoming (countdown) variant */
.pvz-pcard--upcoming {
	max-width: 580px;
	text-align: center;
}
.pvz-pcard--upcoming::before {
	content: "";
	position: absolute;
	inset: 0;
	pointer-events: none;
	background: radial-gradient(circle at 50% 0%, color-mix(in srgb, var(--vt-accent, #e7c877) 12%, transparent), transparent 75%);
}
.pvz-pcard-teams {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 20px;
	margin: 8px 0 12px;
	flex-wrap: wrap;
}
.pvz-pcard-team {
	font: 800 clamp(17px, 2.4vw, 22px)/1.2 var(--vt-font-head), sans-serif;
	color: var(--vt-text, #f3efe6);
	display: inline-flex;
	align-items: center;
	gap: 10px;
}
.pvz-team-logo {
	width: 32px;
	height: 32px;
	object-fit: contain;
	vertical-align: middle;
	flex-shrink: 0;
}
.pvz-pcard-vs {
	font: 700 11px/1 var(--vt-font-mono, "Space Mono", monospace);
	color: var(--vt-muted, #a49b82);
	background: var(--vt-canvas, #0b0c0f);
	border: 1px solid var(--vt-line, rgba(255, 255, 255, .08));
	border-radius: 50%;
	width: 36px;
	height: 36px;
	display: grid;
	place-items: center;
	flex-shrink: 0;
}
.pvz-pcard-cta {
	position: relative;
	z-index: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	margin-top: 26px;
	padding: 14px 34px;
	border-radius: 12px;
	text-decoration: none;
	font: 800 13px/1 var(--vt-font-head), sans-serif;
	letter-spacing: .04em;
	text-transform: uppercase;
	color: #20160a !important;
	background: linear-gradient(135deg, var(--vt-accent, #e7c877), var(--vt-accent-2, #b8860b)) !important;
	box-shadow: 0 8px 24px color-mix(in srgb, var(--vt-accent, #e7c877) 30%, transparent) !important;
	transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
}
.pvz-pcard-cta span {
	transition: transform 0.25s ease;
}
.pvz-pcard-cta:hover {
	transform: translateY(-2px) !important;
	box-shadow: 0 12px 30px color-mix(in srgb, var(--vt-accent, #e7c877) 45%, transparent) !important;
	filter: brightness(1.08) !important;
	color: #20160a !important;
}
.pvz-pcard-cta:hover span {
	transform: translateX(4px);
}

/* List variant */
.pvz-pcard--list {
	max-width: 560px;
	text-align: left;
}
.pvz-pcard-listhead {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 20px;
	padding-bottom: 14px;
	border-bottom: 1px solid var(--vt-line, rgba(255, 255, 255, .09));
}
.pvz-pcard-listhead h3 {
	font: 800 17px/1.2 var(--vt-font-head), sans-serif;
	color: var(--vt-text, #f3efe6);
	margin: 0;
}
.pvz-pcard-listhead span {
	font: 700 11px/1 var(--vt-font-mono, "Space Mono", monospace);
	color: var(--vt-accent, #e7c877);
}
.pvz-pcard--list .pvz-pcard-rows {
	display: flex;
	flex-direction: column;
	gap: 0;
	max-height: 400px;
	overflow-y: auto;
	scrollbar-width: thin;
	background: var(--vt-canvas, #0b0c0f);
	border: 1px solid var(--vt-line, rgba(255, 255, 255, .05));
	border-radius: 16px;
	overflow: hidden;
}
.pvz-pcard--list .pvz-pcard-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	background: transparent;
	border: none;
	border-radius: 0;
	border-bottom: 1px solid var(--vt-line, rgba(255, 255, 255, 0.08));
	padding: 14px 20px;
	transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
	margin: 0;
}
.pvz-pcard--list .pvz-pcard-row:last-child {
	border-bottom: none;
}
.pvz-pcard--list .pvz-pcard-row:hover {
	background: color-mix(in srgb, var(--vt-canvas, #0b0c0f) 96%, var(--vt-accent, #e7c877));
	transform: translateX(4px);
}
.pvz-pcard-row-meta {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 6px;
}
.pvz-pcard-row-sport {
	font: 700 9px/1 var(--vt-font-mono, "Space Mono", monospace);
	color: var(--vt-accent, #e7c877);
	background: color-mix(in srgb, var(--vt-accent, #e7c877) 10%, transparent);
	border: 1px solid color-mix(in srgb, var(--vt-accent, #e7c877) 25%, transparent);
	border-radius: 4px;
	padding: 2px 6px;
}
.pvz-pcard-row-time {
	font: 700 10px/1 var(--vt-font-mono, "Space Mono", monospace);
	color: var(--vt-muted, #a49b82);
}
.pvz-pcard-row-time.is-live {
	color: #22c55e;
	animation: pvz-pulse-text 2s infinite;
}
@keyframes pvz-pulse-text {
	0% { opacity: 0.8; }
	50% { opacity: 1; }
	100% { opacity: 0.8; }
}
.pvz-pcard-row-match {
	font: 800 14px/1.3 var(--vt-font-head), sans-serif;
	color: var(--vt-text, #f3efe6);
}
.pvz-pcard-row-btn {
	flex-shrink: 0;
	display: inline-flex;
	padding: 9px 16px;
	border-radius: 8px;
	text-decoration: none;
	font: 800 11px/1 var(--vt-font-head), sans-serif;
	letter-spacing: .04em;
	text-transform: uppercase;
	color: #20160a !important;
	background: linear-gradient(135deg, var(--vt-accent, #e7c877), var(--vt-accent-2, #b8860b)) !important;
	transition: all 0.2s ease !important;
}
.pvz-pcard-row-btn:hover {
	transform: scale(1.05) !important;
	filter: brightness(1.05) !important;
	color: #20160a !important;
}

/* ══ FLIP-CLOCK COUNTDOWN ════════════════════════════════════════════ */
.pvz-fc-row {
	position: relative;
	z-index: 1;
	display: flex;
	justify-content: center;
	align-items: flex-start;
	gap: 10px;
	margin: 28px 0 6px;
}
.pvz-fc-unit {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
}
.pvz-fc-sep {
	font: 700 28px/1 var(--vt-font-mono, "Space Mono", monospace);
	color: var(--vt-muted, #a49b82);
	font-style: normal;
	padding-top: 20px;
}
.pvz-fc-unit small {
	font: 700 9px/1.2 var(--vt-font-mono, "Space Mono", monospace);
	letter-spacing: .15em;
	text-transform: uppercase;
	color: var(--vt-muted, #a49b82);
}
.pvz-fc-cell {
	position: relative;
	width: clamp(60px, 7vw, 78px);
	height: clamp(58px, 7vw, 74px);
	perspective: 280px;
	font: 700 clamp(26px, 3.4vw, 34px)/1 var(--vt-font-mono, "Space Mono", monospace);
	font-variant-numeric: tabular-nums;
	color: var(--vt-accent, #e7c877);
	border-radius: 14px;
	box-shadow: 0 6px 16px rgba(0,0,0,.45);
	transition: transform 0.2s ease;
}
.pvz-fc-cell:hover {
	transform: translateY(-2px);
}
.pvz-fc-half {
	position: absolute;
	left: 0;
	width: 100%;
	height: 50%;
	overflow: hidden;
	background: #0d0e12;
	border: 1px solid rgba(255, 255, 255, 0.08);
}
.pvz-fc-half span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 200%;
	display: grid;
	place-items: center;
}
.pvz-fc-half--top {
	top: 0;
	border-radius: 14px 14px 0 0;
	border-bottom: 0;
}
.pvz-fc-half--top span {
	top: 0;
}
.pvz-fc-half--bottom {
	bottom: 0;
	border-radius: 0 0 14px 14px;
	border-top: 0;
	background: color-mix(in srgb, #0d0e12 90%, #fff);
}
.pvz-fc-half--bottom span {
	bottom: 0;
}
.pvz-fc-cell::after {
	content: "";
	position: absolute;
	left: 4px;
	right: 4px;
	top: 50%;
	height: 1px;
	z-index: 4;
	background: rgba(255, 255, 255, 0.15);
}
.pvz-fc-flap {
	position: absolute;
	left: 0;
	width: 100%;
	height: 50%;
	overflow: hidden;
	z-index: 3;
	background: #0d0e12;
	border: 1px solid rgba(255, 255, 255, 0.08);
	backface-visibility: hidden;
	display: none;
}
.pvz-fc-flap span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 200%;
	display: grid;
	place-items: center;
}
.pvz-fc-flap--top {
	top: 0;
	border-radius: 14px 14px 0 0;
	transform-origin: bottom;
}
.pvz-fc-flap--top span {
	top: 0;
}
.pvz-fc-flap--bottom {
	bottom: 0;
	border-radius: 0 0 14px 14px;
	transform-origin: top;
	transform: rotateX(90deg);
	background: color-mix(in srgb, #0d0e12 90%, #fff);
}
.pvz-fc-flap--bottom span {
	bottom: 0;
}
.pvz-fc-cell.is-flipping .pvz-fc-flap {
	display: block;
}
.pvz-fc-cell.is-flipping .pvz-fc-flap--top {
	animation: pvz-flip-top .28s ease-in forwards;
}
.pvz-fc-cell.is-flipping .pvz-fc-flap--bottom {
	animation: pvz-flip-bottom .28s ease-out .28s forwards;
}

/* ══ GAME DAY SECTION GRID ═══════════════════════════════════════════
   Applied via the section CSS class `pvz-gameday`, or auto-detected when these 
   widgets are placed in a single container. Turns the Elementor container/column 
   into a 2-col grid: heading spans, countdown + list on the left, latest pick + 
   winner stacked on the right. Cards fill their grid cell. */
body:not(.elementor-editor-active) :is(.pvz-gameday .elementor-widget-wrap, .pvz-gameday.e-con > .e-con-inner, .pvz-gameday.e-con, .e-con:has(> .elementor-widget-pickviz_upcoming_game), .elementor-widget-wrap:has(> .elementor-widget-pickviz_upcoming_game)) {
	display: grid !important;
	grid-template-columns: 1.4fr 1.05fr !important;
	gap: 28px !important;
	align-items: stretch !important;
}

/* Grid columns & rows placement */
body:not(.elementor-editor-active) :is(.pvz-gameday, .e-con, .elementor-widget-wrap, .e-con-inner):has(> .elementor-widget-pickviz_upcoming_game) > .elementor-widget-pickviz_section_heading,
body:not(.elementor-editor-active) .pvz-gameday .elementor-widget-pickviz_section_heading { 
	grid-column: 1 / -1; 
}
body:not(.elementor-editor-active) :is(.pvz-gameday, .e-con, .elementor-widget-wrap, .e-con-inner):has(> .elementor-widget-pickviz_upcoming_game) > .elementor-widget-pickviz_upcoming_game,
body:not(.elementor-editor-active) .pvz-gameday .elementor-widget-pickviz_upcoming_game { 
	grid-column: 1; 
	grid-row: 2; 
}
body:not(.elementor-editor-active) :is(.pvz-gameday, .e-con, .elementor-widget-wrap, .e-con-inner):has(> .elementor-widget-pickviz_upcoming_game) > .elementor-widget-pickviz_upcoming_list,
body:not(.elementor-editor-active) .pvz-gameday .elementor-widget-pickviz_upcoming_list { 
	grid-column: 1; 
	grid-row: 3; 
}
body:not(.elementor-editor-active) :is(.pvz-gameday, .e-con, .elementor-widget-wrap, .e-con-inner):has(> .elementor-widget-pickviz_upcoming_game) > .elementor-widget-pickviz_latest_pick,
body:not(.elementor-editor-active) .pvz-gameday .elementor-widget-pickviz_latest_pick { 
	grid-column: 2; 
	grid-row: 2; 
}
body:not(.elementor-editor-active) :is(.pvz-gameday, .e-con, .elementor-widget-wrap, .e-con-inner):has(> .elementor-widget-pickviz_upcoming_game) > .elementor-widget-pickviz_winner_pick,
body:not(.elementor-editor-active) .pvz-gameday .elementor-widget-pickviz_winner_pick { 
	grid-column: 2; 
	grid-row: 3; 
}

/* ── Global Stretch Helpers ────────────────────────────────────────── */
body:not(.elementor-editor-active) :is(
  .elementor-widget-pickviz_upcoming_game,
  .elementor-widget-pickviz_latest_pick,
  .elementor-widget-pickviz_winner_pick,
  .elementor-widget-pickviz_upcoming_list
) {
	height: 100% !important;
}

body:not(.elementor-editor-active) :is(
  .elementor-widget-pickviz_upcoming_game,
  .elementor-widget-pickviz_latest_pick,
  .elementor-widget-pickviz_winner_pick,
  .elementor-widget-pickviz_upcoming_list
) > .elementor-widget-container {
	display: flex !important;
	flex-direction: column !important;
	height: 100% !important;
	min-width: 0 !important;
}

body:not(.elementor-editor-active) :is(
  .elementor-widget-pickviz_upcoming_game,
  .elementor-widget-pickviz_latest_pick,
  .elementor-widget-pickviz_winner_pick,
  .elementor-widget-pickviz_upcoming_list
) .pvz-pcard {
	flex: 1 1 auto !important;
	max-width: 100% !important;
	min-width: 0 !important;
}

/* ── Equal-height stretch ──────────────────────────────────────────────
   Goal: all 4 cards fill their grid row so left and right columns match.
   The CSS grid uses align-items:stretch (above). We thread height:100%
   through every Elementor wrapper between the grid cell and the card:
     grid cell (.elementor-widget)
       → .elementor-widget-container
         → .pvz-pcard
   Each level must be display:flex + flex-direction:column for height to
   propagate correctly in Elementor's DOM.                              */
body:not(.elementor-editor-active) :is(
  .pvz-gameday,
  .e-con:has(> .elementor-widget-pickviz_upcoming_game),
  .elementor-section:has(.elementor-widget-pickviz_upcoming_game)
) > .elementor-widget-pickviz_upcoming_game,
body:not(.elementor-editor-active) :is(
  .pvz-gameday,
  .e-con:has(> .elementor-widget-pickviz_upcoming_game),
  .elementor-section:has(.elementor-widget-pickviz_upcoming_game)
) > .elementor-widget-pickviz_upcoming_list,
body:not(.elementor-editor-active) :is(
  .pvz-gameday,
  .e-con:has(> .elementor-widget-pickviz_upcoming_game),
  .elementor-section:has(.elementor-widget-pickviz_upcoming_game)
) > .elementor-widget-pickviz_latest_pick,
body:not(.elementor-editor-active) :is(
  .pvz-gameday,
  .e-con:has(> .elementor-widget-pickviz_upcoming_game),
  .elementor-section:has(.elementor-widget-pickviz_upcoming_game)
) > .elementor-widget-pickviz_winner_pick {
	display: flex !important;
	flex-direction: column !important;
	height: 100% !important;           /* fill the grid cell */
}

/* Inner Elementor wrapper — must also flex so it fills the widget node */
body:not(.elementor-editor-active) :is(
  .pvz-gameday,
  .e-con:has(> .elementor-widget-pickviz_upcoming_game),
  .elementor-section:has(.elementor-widget-pickviz_upcoming_game)
) > :is(
  .elementor-widget-pickviz_upcoming_game,
  .elementor-widget-pickviz_upcoming_list,
  .elementor-widget-pickviz_latest_pick,
  .elementor-widget-pickviz_winner_pick
) > .elementor-widget-container {
	flex: 1 1 auto;
	display: flex !important;
	flex-direction: column !important;
	height: 100% !important;
}

/* The card itself — expands to consume all available height */
body:not(.elementor-editor-active) :is(
  .pvz-gameday,
  .e-con:has(> .elementor-widget-pickviz_upcoming_game),
  .elementor-section:has(.elementor-widget-pickviz_upcoming_game)
) .pvz-pcard {
	flex: 1 1 auto !important;
	max-width: 100% !important;
	height: 100% !important;
	box-sizing: border-box;
	display: flex !important;
	flex-direction: column !important;
}

/* Inner layout helpers: push the button to the bottom of each card */
body:not(.elementor-editor-active) .pvz-pcard--upcoming,
body:not(.elementor-editor-active) .pvz-pcard--latest,
body:not(.elementor-editor-active) .pvz-pcard--winner,
body:not(.elementor-editor-active) .pvz-pcard--list {
	justify-content: space-between;
}

@media (max-width: 900px) {
	body:not(.elementor-editor-active) :is(
		.pvz-gameday .elementor-widget-wrap,
		.pvz-gameday.e-con > .e-con-inner,
		.pvz-gameday.e-con,
		.e-con:has(> .elementor-widget-pickviz_upcoming_game),
		.elementor-widget-wrap:has(> .elementor-widget-pickviz_upcoming_game)
	) { 
		display: flex !important; 
		flex-direction: column !important; 
	}
	body:not(.elementor-editor-active) :is(.pvz-gameday, .e-con, .elementor-widget-wrap, .e-con-inner):has(> .elementor-widget-pickviz_upcoming_game) > .elementor-widget-pickviz_upcoming_game,
	body:not(.elementor-editor-active) .pvz-gameday .elementor-widget-pickviz_upcoming_game { 
		order: 1; 
	}
	body:not(.elementor-editor-active) :is(.pvz-gameday, .e-con, .elementor-widget-wrap, .e-con-inner):has(> .elementor-widget-pickviz_upcoming_game) > .elementor-widget-pickviz_latest_pick,
	body:not(.elementor-editor-active) .pvz-gameday .elementor-widget-pickviz_latest_pick { 
		order: 2; 
	}
	body:not(.elementor-editor-active) :is(.pvz-gameday, .e-con, .elementor-widget-wrap, .e-con-inner):has(> .elementor-widget-pickviz_upcoming_game) > .elementor-widget-pickviz_winner_pick,
	body:not(.elementor-editor-active) .pvz-gameday .elementor-widget-pickviz_winner_pick { 
		order: 3; 
	}
	body:not(.elementor-editor-active) :is(.pvz-gameday, .e-con, .elementor-widget-wrap, .e-con-inner):has(> .elementor-widget-pickviz_upcoming_game) > .elementor-widget-pickviz_upcoming_list,
	body:not(.elementor-editor-active) .pvz-gameday .elementor-widget-pickviz_upcoming_list { 
		order: 4; 
	}
	body:not(.elementor-editor-active) .pvz-gameday .pvz-pcard,
	body:not(.elementor-editor-active) :is(.e-con, .elementor-widget-wrap, .e-con-inner):has(> .elementor-widget-pickviz_upcoming_game) .pvz-pcard { 
		height: auto !important; 
		flex: none !important;
	}
}

/* Force elements to be visible on mobile screens (bypass scroll reveal on small screens) */
@media (max-width: 900px) {
	.vault-reveal, 
	.vault-reveal > *, 
	.vault-reveal .vault-reveal-item { 
		opacity: 1 !important; 
		transform: none !important; 
		transition: none !important; 
	}
	/* Prevent height: 100% collapse inside mobile vertical flex columns */
	body:not(.elementor-editor-active) :is(
	  .elementor-widget-pickviz_upcoming_game,
	  .elementor-widget-pickviz_latest_pick,
	  .elementor-widget-pickviz_winner_pick,
	  .elementor-widget-pickviz_upcoming_list
	) {
		height: auto !important;
	}
	body:not(.elementor-editor-active) :is(
	  .elementor-widget-pickviz_upcoming_game,
	  .elementor-widget-pickviz_latest_pick,
	  .elementor-widget-pickviz_winner_pick,
	  .elementor-widget-pickviz_upcoming_list
	) > .elementor-widget-container {
		height: auto !important;
	}
}


