/* ==========================================================================
   That Guy Zimx — standalone magazine-style journal (inc/magazine-blog.php)
   Every colour, size and font below comes from Customizer values, set as
   --vxm-* variables in an inline style block.
   ========================================================================== */
body.vxm-body { background: var(--vxm-bg); margin: 0; }
body.vxm-body::before, body.vxm-body::after { display: none !important; }

.vxm { --vxm-skyline: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1400 300' preserveAspectRatio='xMidYMax slice'%3E%3Cg fill='black' fill-opacity='.55'%3E%3Crect x='0' y='30' width='26' height='270'/%3E%3Crect x='12' y='0' width='2' height='30'/%3E%3Crect x='31' y='180' width='32' height='120'/%3E%3Crect x='65' y='30' width='32' height='270'/%3E%3Crect x='80' y='0' width='2' height='30'/%3E%3Crect x='99' y='30' width='14' height='270'/%3E%3Crect x='105' y='0' width='2' height='30'/%3E%3Crect x='116' y='230' width='18' height='70'/%3E%3Crect x='135' y='70' width='32' height='230'/%3E%3Crect x='150' y='40' width='2' height='30'/%3E%3Crect x='172' y='205' width='40' height='95'/%3E%3Crect x='213' y='230' width='32' height='70'/%3E%3Crect x='246' y='180' width='14' height='120'/%3E%3Crect x='262' y='250' width='32' height='50'/%3E%3Crect x='299' y='30' width='22' height='270'/%3E%3Crect x='309' y='0' width='2' height='30'/%3E%3Crect x='323' y='180' width='32' height='120'/%3E%3Crect x='358' y='250' width='26' height='50'/%3E%3Crect x='385' y='150' width='26' height='150'/%3E%3Crect x='416' y='230' width='32' height='70'/%3E%3Crect x='451' y='180' width='22' height='120'/%3E%3Crect x='476' y='230' width='14' height='70'/%3E%3Crect x='491' y='230' width='26' height='70'/%3E%3Crect x='520' y='230' width='26' height='70'/%3E%3Crect x='547' y='250' width='40' height='50'/%3E%3Crect x='589' y='250' width='18' height='50'/%3E%3Crect x='612' y='70' width='26' height='230'/%3E%3Crect x='624' y='40' width='2' height='30'/%3E%3Crect x='643' y='180' width='14' height='120'/%3E%3Crect x='660' y='230' width='22' height='70'/%3E%3Crect x='685' y='250' width='22' height='50'/%3E%3Crect x='712' y='205' width='14' height='95'/%3E%3Crect x='728' y='230' width='40' height='70'/%3E%3Crect x='769' y='30' width='14' height='270'/%3E%3Crect x='775' y='0' width='2' height='30'/%3E%3Crect x='788' y='180' width='18' height='120'/%3E%3Crect x='811' y='180' width='32' height='120'/%3E%3Crect x='845' y='70' width='26' height='230'/%3E%3Crect x='857' y='40' width='2' height='30'/%3E%3Crect x='872' y='70' width='26' height='230'/%3E%3Crect x='884' y='40' width='2' height='30'/%3E%3Crect x='900' y='150' width='14' height='150'/%3E%3Crect x='917' y='180' width='14' height='120'/%3E%3Crect x='933' y='230' width='26' height='70'/%3E%3Crect x='960' y='180' width='18' height='120'/%3E%3Crect x='983' y='250' width='22' height='50'/%3E%3Crect x='1008' y='70' width='22' height='230'/%3E%3Crect x='1018' y='40' width='2' height='30'/%3E%3Crect x='1031' y='230' width='14' height='70'/%3E%3Crect x='1047' y='180' width='32' height='120'/%3E%3Crect x='1080' y='110' width='32' height='190'/%3E%3Crect x='1095' y='80' width='2' height='30'/%3E%3Crect x='1115' y='30' width='32' height='270'/%3E%3Crect x='1130' y='0' width='2' height='30'/%3E%3Crect x='1149' y='30' width='32' height='270'/%3E%3Crect x='1164' y='0' width='2' height='30'/%3E%3Crect x='1183' y='205' width='26' height='95'/%3E%3Crect x='1211' y='180' width='22' height='120'/%3E%3Crect x='1235' y='180' width='40' height='120'/%3E%3Crect x='1277' y='180' width='40' height='120'/%3E%3Crect x='1322' y='230' width='26' height='70'/%3E%3Crect x='1353' y='230' width='14' height='70'/%3E%3Crect x='1368' y='150' width='14' height='150'/%3E%3Crect x='1384' y='70' width='40' height='230'/%3E%3Crect x='1403' y='40' width='2' height='30'/%3E%3C/g%3E%3C/svg%3E");
	background: var(--vxm-bg); color: var(--vxm-text); font-family: var(--vxm-f-body); line-height: 1.55; -webkit-font-smoothing: antialiased; position: relative; z-index: 1; }
.vxm *, .vxm *::before, .vxm *::after { box-sizing: border-box; }
.vxm :is(h1, h2, h3, h4) { font-family: var(--vxm-f-head); color: var(--vxm-text); background: none; -webkit-text-fill-color: currentColor; margin: 0; font-weight: 700; line-height: 1.12; letter-spacing: -.01em; }
.vxm p { margin: 0; }
.vxm a { color: inherit; text-decoration: none; }
.vxm img { display: block; max-width: 100%; }
.vxm :focus-visible { outline: 2px solid var(--vxm-gold); outline-offset: 3px; border-radius: 2px; }
.vxm button { font: inherit; cursor: pointer; }
.vxm [hidden] { display: none !important; }
.vxm .vx-hp-field { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; opacity: 0; }
.vxm .screen-reader-text { position: absolute !important; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

/* ---- Buttons ---- */
.vxm .vxm-btn { display: inline-flex; align-items: center; gap: 12px; padding: 14px 22px; font: 700 13px/1 var(--vxm-f-body); letter-spacing: .08em; text-transform: uppercase; border: 1px solid var(--vxm-gold); transition: background .2s, color .2s; }
.vxm .vxm-btn--ghost { color: var(--vxm-text); background: transparent; }
.vxm .vxm-btn--ghost:hover { background: var(--vxm-gold); color: var(--vxm-btn-text); }
.vxm .vxm-btn--solid { background: var(--vxm-gold); color: var(--vxm-btn-text); }
.vxm .vxm-btn--solid:hover { filter: brightness(1.08); }
.vxm .vxm-btn svg { flex: none; transition: transform .2s; }
.vxm .vxm-btn:hover svg { transform: translateX(3px); }
.vxm .vxm-icon-btn { background: none; border: 0; color: var(--vxm-text); width: 44px; height: 44px; display: inline-grid; place-items: center; padding: 0; }
.vxm .vxm-icon-btn:hover { color: var(--vxm-gold); }
.vxm .vxm-eyebrow { color: var(--vxm-gold); font: 700 15px/1 var(--vxm-f-body); letter-spacing: .08em; text-transform: uppercase; margin-bottom: 14px; }

/* ---- Masthead ---- */
.vxm .vxm-masthead { background: var(--vxm-bg); border-bottom: 1px solid var(--vxm-rule); position: relative; z-index: 40; }
.vxm .vxm-masthead.is-sticky { position: sticky; top: 0; }
.admin-bar .vxm .vxm-masthead.is-sticky { top: 32px; }
.vxm .vxm-masthead-inner { max-width: var(--vxm-max); margin: 0 auto; padding: 8px var(--vxm-gap) 0; display: grid; grid-template-columns: 1fr auto 1fr; grid-template-areas: ". logo tools" "nav nav nav"; align-items: center; }
.vxm .vxm-logo { grid-area: logo; justify-self: center; display: block; padding: 4px 0; }
.vxm .vxm-logo-img { max-width: none; object-fit: contain; }
.vxm .vxm-tools { grid-area: tools; justify-self: end; display: flex; gap: 4px; }
.vxm .vxm-nav { grid-area: nav; justify-self: center; }
.vxm .vxm-nav-list { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 4px clamp(18px, 3vw, 40px); }
.vxm .vxm-nav-list a { display: inline-flex; align-items: center; gap: 6px; padding: 8px 0 12px; font: 600 var(--vxm-nav-size)/1 var(--vxm-f-body); letter-spacing: .06em; text-transform: uppercase; color: var(--vxm-text); border-bottom: 3px solid transparent; transition: color .2s; }
.vxm .vxm-nav-list a:hover { color: var(--vxm-gold); }
.vxm .vxm-nav-list .is-active > a, .vxm .vxm-nav-list .current-menu-item > a { border-bottom-color: var(--vxm-gold); }

/* Search overlay + slide-out panel */
.vxm .vxm-search { position: fixed; inset: 0; z-index: 100; background: rgba(var(--vxm-bg-rgb), .96); display: grid; place-content: center; padding: 24px; }
.vxm .vxm-search-close { position: absolute; top: 20px; right: 20px; }
.vxm .vxm-search-form { display: flex; width: min(680px, 90vw); border-bottom: 2px solid var(--vxm-gold); gap: 12px; padding-bottom: 12px; }
.vxm .vxm-search-form input[type=search] { flex: 1; min-width: 0; background: none; border: 0; color: var(--vxm-text); font: 600 clamp(24px, 4vw, 40px)/1.2 var(--vxm-f-head); outline: none; }
.vxm .vxm-search-form input::placeholder { color: var(--vxm-muted); opacity: .7; }
.vxm .vxm-panel-backdrop { position: fixed; inset: 0; background: rgba(0,0,0,.6); z-index: 90; }
.vxm .vxm-panel { position: fixed; top: 0; right: 0; bottom: 0; width: min(380px, 88vw); z-index: 95; background: var(--vxm-surface); border-left: 1px solid var(--vxm-rule); padding: 72px 32px 32px; overflow-y: auto; transform: translateX(0); }
.vxm .vxm-panel-close { position: absolute; top: 16px; right: 16px; }
.vxm .vxm-panel-title { color: var(--vxm-gold); font: 700 13px/1 var(--vxm-f-body); letter-spacing: .1em; text-transform: uppercase; margin-bottom: 18px; }
.vxm .vxm-panel-list { list-style: none; margin: 0; padding: 0; }
.vxm .vxm-panel-list a { display: block; padding: 14px 0; border-bottom: 1px solid var(--vxm-border); font: 700 26px/1.2 var(--vxm-f-head); }
.vxm .vxm-panel-list a:hover { color: var(--vxm-gold); }
.vxm .vxm-panel-note { margin-top: 24px; color: var(--vxm-muted); font-size: 15px; }
body.vxm-lock { overflow: hidden; }

/* ---- Main grid ---- */
.vxm .vxm-grid { max-width: var(--vxm-max); margin: 0 auto; padding: var(--vxm-gap); display: grid; grid-template-columns: minmax(0, var(--vxm-col-l)) minmax(0, var(--vxm-col-r)); gap: var(--vxm-gap); align-items: stretch; }
.vxm .vxm-grid--solo { grid-template-columns: minmax(0, 1fr); }
.vxm .vxm-right { display: flex; flex-direction: column; gap: 0; min-width: 0; }

/* Featured story */
.vxm .vxm-hero { position: relative; min-height: var(--vxm-hero-min); border: 1px solid var(--vxm-border); background: #000; overflow: hidden; display: flex; align-items: flex-end; }
.vxm .vxm-hero-img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.vxm .vxm-hero-shade { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(var(--vxm-bg-rgb), 0) 38%, rgba(var(--vxm-bg-rgb), calc(var(--vxm-hero-ov) * .8)) 68%, rgba(var(--vxm-bg-rgb), var(--vxm-hero-ov)) 100%); }
.vxm .vxm-hero-body { position: relative; padding: clamp(24px, 3.4vw, 40px) clamp(24px, 3.4vw, 28px) clamp(28px, 3.4vw, 40px); width: 100%; }
.vxm .vxm-hero-title { font-size: clamp(40px, 6vw, var(--vxm-hero-size)); line-height: 1.04; letter-spacing: -.02em; margin-bottom: 20px; }
.vxm .vxm-hero-title span { display: block; }
.vxm .vxm-hero-title em { display: block; font-style: italic; color: var(--vxm-gold); -webkit-text-fill-color: var(--vxm-gold); }
.vxm .vxm-hero-desc { max-width: 24em; font-size: clamp(17px, 1.6vw, 20px); line-height: 1.5; margin-bottom: 28px; }

/* Slider */
.vxm .vxm-slider-wrap { margin-bottom: 0; }
.vxm .vxm-slider { position: relative; height: var(--vxm-slider-h); border: 1px solid var(--vxm-border); overflow: hidden; background: #000; }
.vxm .vxm-slide { position: absolute; inset: 0; opacity: 0; visibility: hidden; transition: opacity .6s ease, visibility 0s linear .6s; display: flex; align-items: center; }
.vxm .vxm-slide.is-active { opacity: 1; visibility: visible; transition-delay: 0s; }
.vxm .vxm-slide-img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 70% center; }
.vxm .vxm-slide--plain { background: radial-gradient(ellipse 70% 80% at 72% 100%, rgba(var(--vxm-gold-rgb), .38), transparent 70%), linear-gradient(180deg, #0b1822 0%, #0a1218 60%, #130f06 100%); }
.vxm .vxm-slide--plain::before { content: ""; position: absolute; inset: 0; background: var(--vxm-skyline) center bottom / cover no-repeat; }
.vxm .vxm-slide-shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(var(--vxm-bg-rgb), .88) 0%, rgba(var(--vxm-bg-rgb), .55) 45%, rgba(var(--vxm-bg-rgb), 0) 78%); }
.vxm .vxm-slide-body { position: relative; padding: 0 clamp(22px, 3vw, 24px) 28px; width: min(62%, 560px); }
.vxm .vxm-slide-title { font-size: clamp(28px, 3.4vw, var(--vxm-slide-size)); line-height: 1.1; margin-bottom: 16px; }
.vxm .vxm-slide-desc { font-size: 17px; line-height: 1.5; margin-bottom: 22px; max-width: 26em; }
.vxm .vxm-slider-nav { position: absolute; right: 0; bottom: 0; display: flex; align-items: center; gap: 6px; padding: 8px 14px; background: rgba(var(--vxm-bg-rgb), .72); border-top: 1px solid var(--vxm-border); border-left: 1px solid var(--vxm-border); backdrop-filter: blur(6px); z-index: 3; }
.vxm .vxm-slider-nav .vxm-icon-btn { width: 36px; height: 36px; }
.vxm .vxm-slider-count { font: 500 15px/1 var(--vxm-f-body); min-width: 52px; text-align: center; color: var(--vxm-text); }
.vxm .vxm-dots { display: flex; justify-content: center; gap: 12px; padding: 14px 0 0; }
.vxm .vxm-dot { width: 10px; height: 10px; padding: 0; border-radius: 50%; border: 0; background: #5b6168; transition: background .2s, transform .2s; }
.vxm .vxm-dot.is-active { background: var(--vxm-gold); transform: scale(1.15); }
.vxm .vxm-dot:hover { background: var(--vxm-muted); }

/* Latest posts */
.vxm .vxm-latest { margin-top: 22px; border-top: 1px solid var(--vxm-border); padding-top: 18px; }
.vxm .vxm-slider-wrap + .vxm-latest { margin-top: 20px; }
.vxm .vxm-latest-head { display: flex; align-items: center; gap: 18px; margin-bottom: 22px; }
.vxm .vxm-latest-title { font-size: clamp(26px, 2.6vw, 34px); white-space: nowrap; }
.vxm .vxm-latest-line { flex: 1; height: 1px; background: var(--vxm-rule); }
.vxm .vxm-viewall { display: inline-flex; align-items: center; gap: 8px; color: var(--vxm-gold); font: 700 14px/1 var(--vxm-f-body); letter-spacing: .06em; text-transform: uppercase; white-space: nowrap; }
.vxm .vxm-viewall:hover { text-decoration: underline; text-underline-offset: 4px; }
.vxm .vxm-cards { display: grid; grid-template-columns: repeat(var(--vxm-cols), minmax(0, 1fr)); gap: 28px var(--vxm-gap); }
.vxm .vxm-card { display: flex; flex-direction: column; min-width: 0; }
.vxm .vxm-card-media { display: block; aspect-ratio: var(--vxm-ratio); overflow: hidden; border: 1px solid var(--vxm-border); margin-bottom: 16px; background: radial-gradient(ellipse 80% 90% at 70% 100%, rgba(var(--vxm-gold-rgb), .3), transparent 70%), linear-gradient(180deg, #0b1822, #0a1218 65%, #130f06); position: relative; }
.vxm .vxm-card-media--plain::before { content: ""; position: absolute; inset: 0; background: var(--vxm-skyline) center bottom / cover no-repeat; }
.vxm .vxm-card-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.vxm .vxm-card:hover .vxm-card-media img { transform: scale(1.04); }
.vxm .vxm-card-cat { color: var(--vxm-gold); font: 700 14px/1 var(--vxm-f-body); letter-spacing: .06em; text-transform: uppercase; margin-bottom: 10px; align-self: flex-start; }
.vxm .vxm-card-title { font-size: clamp(20px, 2vw, var(--vxm-card-size)); line-height: 1.18; margin-bottom: 12px; }
.vxm .vxm-card-title a:hover { color: var(--vxm-gold); -webkit-text-fill-color: currentColor; }
.vxm .vxm-card-excerpt { color: var(--vxm-muted); font-size: 16px; line-height: 1.55; margin-bottom: 18px; }
.vxm .vxm-card-meta { margin-top: auto; display: flex; flex-wrap: wrap; gap: 8px 28px; color: var(--vxm-muted); font-size: 14px; padding-top: 4px; }
.vxm .vxm-card-meta > span { display: inline-flex; align-items: center; gap: 10px; }
.vxm .vxm-card-meta svg { color: var(--vxm-muted); }
.vxm .vxm-empty { color: var(--vxm-muted); padding: 24px 0; }
.vxm .vxm-pager { margin-top: 28px; }
.vxm .vxm-pager .page-numbers { display: inline-grid; place-items: center; min-width: 40px; height: 40px; padding: 0 10px; margin-right: 6px; border: 1px solid var(--vxm-border); color: var(--vxm-text); font-weight: 600; }
.vxm .vxm-pager .page-numbers.current, .vxm .vxm-pager .page-numbers:hover { background: var(--vxm-gold); border-color: var(--vxm-gold); color: var(--vxm-btn-text); }

/* Elementor region */
.vxm .vxm-elementor { max-width: 100%; }

/* ---- Newsletter band ---- */
.vxm .vxm-band { border-top: 1px solid var(--vxm-rule); background-color: var(--vxm-surface); background-size: cover; background-position: center; position: relative; }
.vxm .vxm-band.vxm-skyline { background-image: var(--vxm-skyline), radial-gradient(ellipse 60% 120% at 75% 100%, rgba(var(--vxm-gold-rgb), .14), transparent 70%); background-repeat: no-repeat; background-position: center bottom; background-size: cover; }
.vxm .vxm-band.has-bg::before { content: ""; position: absolute; inset: 0; background: rgba(var(--vxm-bg-rgb), .78); }
.vxm .vxm-band-inner { position: relative; max-width: var(--vxm-max); margin: 0 auto; padding: 30px var(--vxm-gap); display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 32px 48px; align-items: center; }
.vxm .vxm-band-copy { display: flex; align-items: center; gap: 22px; }
.vxm .vxm-band-icon { color: var(--vxm-gold); padding-right: 22px; border-right: 1px solid var(--vxm-gold); line-height: 0; align-self: stretch; display: flex; align-items: center; }
.vxm .vxm-band-text h2 { font-size: clamp(28px, 3vw, 38px); margin-bottom: 6px; }
.vxm .vxm-band-text p { color: var(--vxm-text); font-size: 15px; line-height: 1.5; max-width: 34em; }
.vxm .vxm-form-row { display: flex; gap: 0; max-width: 560px; }
.vxm .vxm-form-row input[type=email] { flex: 1; min-width: 0; background: rgba(var(--vxm-bg-rgb), .85); border: 1px solid #5b6168; border-right: 0; color: var(--vxm-text); padding: 0 16px; height: 48px; font: 400 15px var(--vxm-f-body); border-radius: 0; }
.vxm .vxm-form-row input[type=email]::placeholder { color: var(--vxm-muted); opacity: .85; }
.vxm .vxm-form-row input[type=email]:focus { border-color: var(--vxm-gold); outline: none; }
.vxm .vxm-form-row .vxm-btn { height: 48px; padding: 0 26px; }
.vxm .vxm-form-note { color: var(--vxm-muted); font-size: 13px; margin-top: 10px; }
.vxm .vxm-form-status { font-size: 14px; margin-top: 10px; min-height: 0; }
.vxm .vxm-form-status:empty { display: none; }
.vxm .vxm-form-status.success { color: #5fd7a2; }
.vxm .vxm-form-status.error { color: #ff8a8f; }

/* ---- Footer bar ---- */
.vxm .vxm-footer { border-top: 1px solid var(--vxm-rule); background: var(--vxm-bg); }
.vxm .vxm-footer-inner { max-width: var(--vxm-max); margin: 0 auto; padding: 18px var(--vxm-gap); display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px 32px; }
.vxm .vxm-footer-brand { display: flex; align-items: center; gap: 22px; }
.vxm .vxm-footer-tag { font: 400 17px/1.2 var(--vxm-f-body); color: var(--vxm-text); padding-left: 22px; border-left: 1px solid var(--vxm-gold); }
.vxm .vxm-footer-links { display: flex; flex-wrap: wrap; gap: 8px 36px; }
.vxm .vxm-footer-links a { font-size: 13px; color: var(--vxm-text); }
.vxm .vxm-footer-links a:hover { color: var(--vxm-gold); }
.vxm .vxm-footer-copy { font-size: 12px; color: var(--vxm-muted); }

/* Embedded (shortcode) grid inside other pages */
.vxm.vxm--embedded { background: transparent; }

/* ---- Responsive ---- */
@media (max-width: 1100px) {
	.vxm .vxm-band-inner { grid-template-columns: 1fr; }
	.vxm .vxm-form-row { max-width: none; }
}
@media (max-width: 960px) {
	.vxm .vxm-grid { grid-template-columns: minmax(0, 1fr); }
	.vxm .vxm-hero { min-height: min(var(--vxm-hero-min), 120vw); }
	.vxm .vxm-slide-body { width: min(78%, 560px); }
}
@media (max-width: 760px) {
	.vxm .vxm-logo-img { max-width: 100%; height: auto !important; max-height: 64px; }
	.vxm .vxm-cards { grid-template-columns: minmax(0, 1fr); }
	.vxm .vxm-slider { height: max(var(--vxm-slider-h), 420px); }
	.vxm .vxm-slide-body { width: 100%; padding-bottom: 64px; }
	.vxm .vxm-slide-shade { background: linear-gradient(0deg, rgba(var(--vxm-bg-rgb), .92) 0%, rgba(var(--vxm-bg-rgb), .6) 60%, rgba(var(--vxm-bg-rgb), .2) 100%); }
	.vxm .vxm-slide { align-items: flex-end; }
	.vxm .vxm-band-copy { align-items: flex-start; }
	.vxm .vxm-footer-inner { flex-direction: column; align-items: flex-start; }
}
@media (max-width: 480px) {
	.vxm .vxm-form-row { flex-direction: column; gap: 10px; }
	.vxm .vxm-form-row input[type=email] { border-right: 1px solid #5b6168; }
	.vxm .vxm-band-icon { display: none; }
}
@media (prefers-reduced-motion: reduce) {
	.vxm .vxm-slide { transition: none; }
	.vxm .vxm-card-media img, .vxm .vxm-btn svg { transition: none; }
}

/* ==========================================================================
   v3.10.1 — That Guy Zimx: premium responsive layer (mobile / tablet / desktop)
   Breakpoints: mobile ≤ 760px · tablet 761–1100px · desktop > 1100px
   ========================================================================== */
html:has(body.vxm-body) { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; scroll-padding-top: 72px; }
body.vxm-body { -webkit-tap-highlight-color: transparent; overflow-x: clip; background: var(--vxm-bg); }
.vxm { --vxm-pad: var(--vxm-gap); --vxm-pad-l: max(var(--vxm-gap), env(safe-area-inset-left, 0px)); --vxm-pad-r: max(var(--vxm-gap), env(safe-area-inset-right, 0px)); }
.vxm { padding-top: env(safe-area-inset-top, 0px); }
.vxm .vxm-masthead-inner, .vxm .vxm-grid, .vxm .vxm-band-inner, .vxm .vxm-footer-inner, .vxm .vxm-topbar-inner { padding-left: var(--vxm-pad-l); padding-right: var(--vxm-pad-r); }
.vxm .vxm-footer-inner { padding-bottom: max(18px, env(safe-area-inset-bottom, 0px)); }
.vxm .vxm-masthead.is-sticky { top: env(safe-area-inset-top, 0px); }
@media (max-width: 782px) { .admin-bar .vxm .vxm-masthead.is-sticky { top: 46px; } }

/* Skip link: kept for keyboards and screen readers, invisible until focused */
.vxm-skip { position: absolute; left: 12px; top: -80px; z-index: 200; background: var(--vxm-gold); color: var(--vxm-btn-text); padding: 12px 18px; font: 700 14px/1 var(--vxm-f-body); text-decoration: none; transition: top .15s; }
.vxm-skip:focus { top: calc(8px + env(safe-area-inset-top, 0px)); outline: 2px solid var(--vxm-text); outline-offset: 2px; }

/* Top bar: "Visit VOOOMIE GROUP" (top-left) */
.vxm .vxm-topbar { background: #000; border-bottom: 1px solid var(--vxm-border); position: relative; z-index: 41; }
.vxm .vxm-topbar-inner { max-width: var(--vxm-max); margin: 0 auto; display: flex; align-items: center; min-height: 38px; }
.vxm .vxm-visit { display: inline-flex; align-items: center; gap: 10px; min-height: 38px; color: var(--vxm-muted); font: 600 12px/1 var(--vxm-f-body); letter-spacing: .1em; text-transform: uppercase; transition: color .2s; }
.vxm .vxm-visit svg { color: var(--vxm-gold); transition: transform .2s; }
.vxm .vxm-visit:hover { color: var(--vxm-gold); }
.vxm .vxm-visit:hover svg { transform: translateX(-3px); }

/* Wordmark: "That Guy Zimx" (live text, razor sharp on every screen) */
.vxm .vxm-wordmark { display: inline-flex; flex-direction: column; align-items: stretch; gap: calc(var(--vxm-wm) * .035); line-height: 1; text-align: center; white-space: nowrap; width: max-content; max-width: 100%; }
.vxm .vxm-wm-rule { position: relative; display: block; height: max(6px, calc(var(--vxm-wm) * .07)); }
.vxm .vxm-wm-rule::before { content: ""; position: absolute; left: 0; right: 0; top: 50%; height: 1px; background: linear-gradient(90deg, transparent, #d9a93a 10%, #d9a93a 41%, transparent 41.6%, transparent 58.4%, #d9a93a 59%, #d9a93a 90%, transparent); }
.vxm .vxm-wm-rule::after { content: ""; position: absolute; left: 50%; top: 50%; width: max(5px, calc(var(--vxm-wm) * .055)); aspect-ratio: 1; background: #e6b84a; transform: translate(-50%, -50%) rotate(45deg); }
.vxm .vxm-wm-name { font-family: var(--vxm-f-script); font-size: calc(var(--vxm-wm) * .36); line-height: 1.2; padding: 0 .1em .08em; color: #d9a93a; background: linear-gradient(180deg, #f8e19a 0%, #dcae3d 48%, #a8761a 100%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.vxm .vxm-wm-tag { font: 600 max(8px, calc(var(--vxm-wm) * .095))/1 var(--vxm-f-head); letter-spacing: .22em; text-transform: uppercase; color: #d9a93a; padding-left: .22em; }
.vxm .vxm-logo { padding: 8px 0 6px; }
.vxm .vxm-footer-brand .vxm-wordmark { flex: none; }

/* Premium touches */
.vxm .vxm-btn { min-height: 48px; }
.vxm .vxm-masthead { backdrop-filter: saturate(1.2) blur(10px); -webkit-backdrop-filter: saturate(1.2) blur(10px); }
.vxm .vxm-masthead.is-sticky { background: rgba(var(--vxm-bg-rgb), .92); }
.vxm .vxm-nav-list a { transition: color .2s, border-color .2s; }
.vxm .vxm-panel:not([hidden]) { animation: vxm-slide-in .3s cubic-bezier(.2, .8, .2, 1); }
.vxm .vxm-panel-backdrop:not([hidden]) { animation: vxm-fade .25s ease; }
.vxm .vxm-search:not([hidden]) { animation: vxm-fade .2s ease; }
@keyframes vxm-slide-in { from { transform: translateX(32px); opacity: 0; } to { transform: none; opacity: 1; } }
@keyframes vxm-fade { from { opacity: 0; } to { opacity: 1; } }
.vxm .vxm-panel { height: 100vh; height: 100dvh; padding-bottom: calc(32px + env(safe-area-inset-bottom, 0px)); overscroll-behavior: contain; width: min(420px, 90vw); }
.vxm .vxm-search { min-height: 100vh; min-height: 100dvh; }
.vxm .vxm-card-title a { background: linear-gradient(currentColor, currentColor) 0 100% / 0 1px no-repeat; transition: background-size .3s; }

/* Journal: topic strip + listing heading */
.vxm .vxm-listing { max-width: var(--vxm-max); margin: 0 auto; }
.vxm .vxm-listing-head { padding: clamp(32px, 6vw, 72px) var(--vxm-pad-l) 8px var(--vxm-pad-l); }
.vxm .vxm-listing-title { font-size: clamp(34px, 5.5vw, 64px); line-height: 1.05; letter-spacing: -.02em; }
.vxm .vxm-listing-desc { color: var(--vxm-muted); margin-top: 14px; max-width: 40em; font-size: 17px; line-height: 1.6; }
.vxm .vxm-topics { display: flex; gap: 10px; padding: 18px var(--vxm-pad-l) 6px; overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.vxm .vxm-topics::-webkit-scrollbar { display: none; }
.vxm .vxm-topics a { flex: none; display: inline-flex; align-items: center; min-height: 44px; padding: 0 20px; border: 1px solid var(--vxm-border); border-radius: 999px; font: 600 13px/1 var(--vxm-f-body); letter-spacing: .06em; text-transform: uppercase; color: var(--vxm-text); transition: background .2s, color .2s, border-color .2s; }
.vxm .vxm-topics a:hover { border-color: var(--vxm-gold); color: var(--vxm-gold); }
.vxm .vxm-topics a.is-active { background: var(--vxm-gold); border-color: var(--vxm-gold); color: var(--vxm-btn-text); }
.vxm .vxm-latest--listing { margin-top: 0; border-top: 0; }

/* Journal: a single story */
.vxm .vxm-article { max-width: 1100px; margin: 0 auto; padding: clamp(28px, 5vw, 72px) var(--vxm-pad-l) clamp(40px, 6vw, 88px) var(--vxm-pad-l); }
.vxm .vxm-article-head, .vxm .vxm-prose, .vxm .vxm-article-foot, .vxm .vxm-adjacent, .vxm .vxm-comments { max-width: 720px; margin-left: auto; margin-right: auto; }
.vxm .vxm-article-head { margin-bottom: clamp(24px, 4vw, 40px); }
.vxm .vxm-article-head .vxm-eyebrow { display: inline-block; margin-bottom: 18px; }
.vxm .vxm-article-title { font-size: clamp(32px, 5.4vw, 60px); line-height: 1.08; letter-spacing: -.02em; text-wrap: balance; }
.vxm .vxm-article-dek { margin-top: 18px; font: 400 clamp(18px, 2.1vw, 22px)/1.5 var(--vxm-f-body); color: var(--vxm-muted); text-wrap: pretty; }
.vxm .vxm-article-meta { display: flex; flex-wrap: wrap; gap: 8px 22px; margin-top: 22px; color: var(--vxm-muted); font-size: 14px; }
.vxm .vxm-article-meta > span { display: inline-flex; align-items: center; gap: 8px; }
.vxm .vxm-article-meta .vxm-by { color: var(--vxm-text); font-weight: 600; }
.vxm .vxm-article-media { margin: 0 auto clamp(28px, 5vw, 48px); max-width: 1100px; border: 1px solid var(--vxm-border); background: #000; }
.vxm .vxm-article-img { width: 100%; height: auto; max-height: 70vh; object-fit: cover; }
.vxm .vxm-prose { font: 400 clamp(17px, .35vw + 16px, 20px)/1.78 var(--vxm-f-body); color: var(--vxm-text); overflow-wrap: break-word; }
.vxm .vxm-prose > * { max-width: 100%; }
.vxm .vxm-prose p { margin: 0 0 1.3em; text-wrap: pretty; }
.vxm .vxm-prose > p:first-of-type::first-letter { font-family: var(--vxm-f-head); font-size: 3.4em; line-height: .9; float: left; padding: .06em .12em 0 0; color: var(--vxm-gold); font-weight: 700; }
.vxm .vxm-prose h2 { font-size: clamp(26px, 3.4vw, 34px); margin: 1.9em 0 .6em; }
.vxm .vxm-prose h3 { font-size: clamp(22px, 2.6vw, 27px); margin: 1.7em 0 .5em; }
.vxm .vxm-prose h4 { font-size: 20px; margin: 1.5em 0 .5em; }
.vxm .vxm-prose a { color: var(--vxm-gold); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.vxm .vxm-prose ul, .vxm .vxm-prose ol { margin: 0 0 1.3em; padding-left: 1.3em; }
.vxm .vxm-prose li { margin-bottom: .45em; }
.vxm .vxm-prose li::marker { color: var(--vxm-gold); }
.vxm .vxm-prose blockquote { margin: 1.8em 0; padding: .2em 0 .2em 1.4em; border-left: 3px solid var(--vxm-gold); font: italic 600 clamp(21px, 2.6vw, 27px)/1.45 var(--vxm-f-head); color: var(--vxm-text); }
.vxm .vxm-prose blockquote p { margin: 0 0 .6em; }
.vxm .vxm-prose img, .vxm .vxm-prose video { max-width: 100%; height: auto; }
.vxm .vxm-prose figure { margin: 1.8em 0; }
.vxm .vxm-prose figcaption { color: var(--vxm-muted); font-size: 14px; margin-top: 10px; text-align: center; }
.vxm .vxm-prose hr { border: 0; height: 1px; background: var(--vxm-rule); margin: 2.4em 0; }
.vxm .vxm-prose pre { overflow-x: auto; padding: 18px; background: var(--vxm-surface); border: 1px solid var(--vxm-border); font-size: 15px; line-height: 1.6; }
.vxm .vxm-prose table { display: block; overflow-x: auto; border-collapse: collapse; max-width: 100%; }
.vxm .vxm-prose :is(td, th) { border: 1px solid var(--vxm-border); padding: 10px 14px; }
.vxm .vxm-prose iframe, .vxm .vxm-prose .wp-block-embed__wrapper { max-width: 100%; }
.vxm .vxm-prose .alignwide, .vxm .vxm-prose .alignfull { max-width: 100%; }
.vxm .vxm-prose .alignleft { float: none; margin: 0 auto 1.4em; }
.vxm .vxm-prose .alignright { float: none; margin: 0 auto 1.4em; }
.vxm .vxm-article-foot { margin-top: clamp(32px, 5vw, 56px); padding-top: 26px; border-top: 1px solid var(--vxm-rule); display: grid; gap: 22px; }
.vxm .vxm-tags { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 10px; }
.vxm .vxm-tags a { display: inline-flex; align-items: center; min-height: 36px; padding: 0 14px; border: 1px solid var(--vxm-border); font-size: 13px; color: var(--vxm-muted); }
.vxm .vxm-tags a:hover { color: var(--vxm-gold); border-color: var(--vxm-gold); }
.vxm .vxm-share { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.vxm .vxm-share-label { font: 700 12px/1 var(--vxm-f-body); letter-spacing: .12em; text-transform: uppercase; color: var(--vxm-gold); margin-right: 6px; }
.vxm .vxm-share :is(a, button) { display: inline-flex; align-items: center; min-height: 44px; padding: 0 18px; background: transparent; border: 1px solid var(--vxm-border); color: var(--vxm-text); font: 600 13px/1 var(--vxm-f-body); transition: border-color .2s, color .2s; }
.vxm .vxm-share :is(a, button):hover { border-color: var(--vxm-gold); color: var(--vxm-gold); }
.vxm .vxm-adjacent { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 36px; }
.vxm .vxm-adj { display: flex; flex-direction: column; gap: 8px; padding: 18px 20px; border: 1px solid var(--vxm-border); min-height: 44px; transition: border-color .2s; }
.vxm .vxm-adj:hover { border-color: var(--vxm-gold); }
.vxm .vxm-adj small { color: var(--vxm-gold); font: 700 12px/1 var(--vxm-f-body); letter-spacing: .12em; text-transform: uppercase; }
.vxm .vxm-adj span { font: 700 18px/1.3 var(--vxm-f-head); }
.vxm .vxm-adj--next { text-align: right; grid-column: 2; }
.vxm .vxm-adj--prev:only-child { grid-column: 1; }
.vxm .vxm-comments { margin-top: 48px; padding-top: 32px; border-top: 1px solid var(--vxm-border); font-size: 16px; }
.vxm .vxm-comments :is(h2, h3) { font-size: 26px; margin-bottom: 20px; }
.vxm .vxm-comments ol, .vxm .vxm-comments ul { list-style: none; margin: 0; padding: 0; }
.vxm .vxm-comments .children { padding-left: 20px; border-left: 1px solid var(--vxm-border); margin-left: 8px; }
.vxm .vxm-comments :is(.comment-body, .comment) { padding: 16px 0; border-bottom: 1px solid var(--vxm-border); }
.vxm .vxm-comments :is(input[type=text], input[type=email], input[type=url], textarea) { width: 100%; background: rgba(var(--vxm-bg-rgb), .85); border: 1px solid #5b6168; color: var(--vxm-text); padding: 12px 14px; font: 400 16px var(--vxm-f-body); border-radius: 0; }
.vxm .vxm-comments :is(input, textarea):focus { border-color: var(--vxm-gold); outline: none; }
.vxm .vxm-comments .submit { background: var(--vxm-gold); color: var(--vxm-btn-text); border: 0; min-height: 48px; padding: 0 26px; font: 700 13px/1 var(--vxm-f-body); letter-spacing: .08em; text-transform: uppercase; }
.vxm .vxm-more { max-width: var(--vxm-max); margin: 0 auto; padding: 0 var(--vxm-pad-l) clamp(32px, 5vw, 64px); }

/* ---- Tablet and phone: the menu becomes a swipeable strip ---- */
@media (max-width: 1100px) {
	.vxm .vxm-nav { min-width: 0; justify-self: stretch; }
	.vxm .vxm-nav-list { flex-wrap: nowrap; justify-content: flex-start; overflow-x: auto; gap: 0 clamp(16px, 2.2vw, 34px); scrollbar-width: none; -webkit-overflow-scrolling: touch; scroll-snap-type: x proximity; }
	.vxm .vxm-nav-list::-webkit-scrollbar { display: none; }
	.vxm .vxm-nav-list li { flex: none; scroll-snap-align: center; }
	.vxm .vxm-nav-list li:first-child { margin-left: auto; }
	.vxm .vxm-nav-list li:last-child { margin-right: auto; }
	.vxm .vxm-nav-list a { min-height: 44px; padding: 14px 0 12px; }
	.vxm .vxm-cards { grid-template-columns: repeat(auto-fill, minmax(min(100%, 280px), 1fr)); }
}

/* ---- Tablet (761–1100px) ---- */
@media (min-width: 761px) and (max-width: 960px) {
	.vxm .vxm-hero { min-height: clamp(460px, 62vw, 600px); }
	.vxm .vxm-hero-desc { max-width: 28em; }
	.vxm .vxm-slider { height: max(var(--vxm-slider-h), 400px); }
	.vxm .vxm-adj--next { grid-column: auto; }
}
@media (min-width: 961px) and (max-width: 1100px) {
	.vxm .vxm-hero-title { font-size: clamp(36px, 4.6vw, 52px); }
	.vxm .vxm-slide-body { width: min(72%, 520px); }
	.vxm .vxm-latest-title { font-size: 28px; }
}

/* ---- Phone (≤ 760px) ---- */
@media (max-width: 760px) {
	body.vxm-body .vxm { --vxm-gap: 16px; }
	.vxm .vxm-topbar-inner, .vxm .vxm-visit { min-height: 44px; }
	.vxm .vxm-masthead-inner { grid-template-columns: 1fr auto 1fr; grid-template-areas: ". logo tools" "nav nav nav"; padding-top: 4px; }
	.vxm .vxm-nav { margin: 0 calc(var(--vxm-pad-l) * -1) 0 calc(var(--vxm-pad-r) * -1); }
	.vxm .vxm-nav-list { padding: 0 var(--vxm-pad-r) 0 var(--vxm-pad-l); }
	.vxm .vxm-nav-list a { font-size: 12px; }
	.vxm .vxm-logo .vxm-wordmark { --vxm-wm: 74px !important; }
	.vxm .vxm-logo-img { max-width: 100%; height: auto !important; max-height: 64px; }
	.vxm .vxm-hero { min-height: min(var(--vxm-hero-min), 128vw); }
	.vxm .vxm-hero-body { padding: 22px 20px 28px; }
	.vxm .vxm-hero-title { font-size: clamp(36px, 11vw, 50px); }
	.vxm .vxm-hero-desc { font-size: 17px; margin-bottom: 22px; }
	.vxm .vxm-hero .vxm-btn, .vxm .vxm-slide .vxm-btn { width: 100%; justify-content: space-between; }
	.vxm .vxm-slide-body { padding: 0 20px 76px; }
	.vxm .vxm-slide-title { font-size: clamp(26px, 7.4vw, 34px); }
	.vxm .vxm-slide-desc { font-size: 16px; margin-bottom: 18px; }
	.vxm .vxm-slider-nav { left: 0; justify-content: space-between; padding: 6px 10px; }
	.vxm .vxm-dots { gap: 6px; padding-top: 6px; }
	.vxm .vxm-dot { position: relative; width: 10px; height: 10px; }
	.vxm .vxm-dot::after { content: ""; position: absolute; inset: -17px -6px; }
	.vxm .vxm-latest { margin-top: 16px; }
	.vxm .vxm-latest-head { gap: 12px; margin-bottom: 18px; }
	.vxm .vxm-latest-title { font-size: 26px; }
	.vxm .vxm-latest-line { display: none; }
	.vxm .vxm-latest-head .vxm-viewall { margin-left: auto; min-height: 44px; }
	.vxm .vxm-cards { grid-template-columns: minmax(0, 1fr); gap: 32px; }
	.vxm .vxm-card-media { aspect-ratio: 16 / 10; }
	.vxm .vxm-card-title { font-size: clamp(21px, 6vw, 25px); }
	.vxm .vxm-card-excerpt { font-size: 16px; }
	.vxm .vxm-band-inner { padding-top: 34px; padding-bottom: 38px; gap: 24px; }
	.vxm .vxm-form-row input[type=email] { font-size: 16px; height: 52px; flex: none; width: 100%; }
	.vxm .vxm-form-row .vxm-btn { height: 52px; justify-content: center; }
	.vxm .vxm-footer-brand { flex-wrap: wrap; gap: 14px 18px; }
	.vxm .vxm-footer-tag { padding-left: 16px; }
	.vxm .vxm-footer-links { gap: 0 24px; }
	.vxm .vxm-footer-links a { display: inline-flex; align-items: center; min-height: 44px; font-size: 14px; }
	.vxm .vxm-search-form input[type=search] { font-size: 24px; }
	.vxm .vxm-panel { width: 100vw; border-left: 0; padding-left: max(24px, env(safe-area-inset-left, 0px)); padding-right: max(24px, env(safe-area-inset-right, 0px)); }
	.vxm .vxm-panel-list a { font-size: clamp(22px, 6.4vw, 28px); padding: 16px 0; }
	.vxm .vxm-article-media { margin-left: calc(var(--vxm-pad-l) * -1); margin-right: calc(var(--vxm-pad-r) * -1); border-left: 0; border-right: 0; }
	.vxm .vxm-prose > p:first-of-type::first-letter { font-size: 3em; }
	.vxm .vxm-adjacent { grid-template-columns: 1fr; }
	.vxm .vxm-adj--next { grid-column: auto; text-align: left; }
	.vxm .vxm-share :is(a, button) { flex: 1 1 calc(50% - 10px); justify-content: center; }
	.vxm .vxm-pager .page-numbers { min-width: 44px; height: 44px; }
}
@media (max-width: 380px) {
	.vxm .vxm-hero-title { font-size: 34px; }
	.vxm .vxm-logo .vxm-wordmark { --vxm-wm: 64px !important; }
	.vxm .vxm-btn { padding: 14px 16px; letter-spacing: .06em; }
}

/* ---- Large screens ---- */
@media (min-width: 1600px) {
	.vxm .vxm-prose { font-size: 21px; }
}
@media (min-width: 1100px) {
	.vxm .vxm-card:hover .vxm-card-title a { background-size: 100% 1px; }
}

/* ---- Touch devices: no sticky hover states, comfortable tap targets ---- */
@media (hover: none) {
	.vxm .vxm-card:hover .vxm-card-media img { transform: none; }
	.vxm .vxm-btn--ghost:hover { background: transparent; color: var(--vxm-text); }
	.vxm .vxm-btn:hover svg, .vxm .vxm-visit:hover svg { transform: none; }
}
@media (pointer: coarse) {
	.vxm .vxm-slider-nav .vxm-icon-btn { width: 44px; height: 44px; }
	.vxm .vxm-nav-list a, .vxm .vxm-footer-links a { min-height: 44px; }
}
@media (max-height: 480px) and (orientation: landscape) {
	.vxm .vxm-hero { min-height: 420px; }
	.vxm .vxm-slider { height: max(var(--vxm-slider-h), 360px); }
}
@media (prefers-reduced-motion: reduce) {
	.vxm .vxm-panel, .vxm .vxm-panel-backdrop, .vxm .vxm-search { animation: none !important; }
	.vxm .vxm-card-title a, .vxm .vxm-visit svg { transition: none; }
}
@media print {
	.vxm .vxm-topbar, .vxm .vxm-masthead, .vxm .vxm-band, .vxm .vxm-share, .vxm .vxm-more { display: none !important; }
	body.vxm-body, .vxm { background: #fff !important; color: #000 !important; }
	.vxm .vxm-prose, .vxm .vxm-article-title { color: #000 !important; }
}


/* ==========================================================================
   GRADIENT GOLD (v3.10.2)
   Every gold element on the That Guy Zimx page — text, hairlines, borders,
   buttons, hovers, icons — uses the VOOOMIE brand gradient (the same
   gold-ivory → gold → deep-gold used by the "Book a Strategy Call" button):
   gradient outline + gradient lettering on a transparent button.
   The colours come from the theme tokens (--gold-light / --pulse /
   --gold-dark) so a change to the theme Gold colour flows through.
   --vxm-gold is still used for soft ambient glows only.
   ========================================================================== */
body.vxm-body, .vxm {
	--vxm-g-a: var(--gold-light, #F5E6B8);
	--vxm-g-b: var(--pulse, #D4AF37);
	--vxm-g-c: var(--gold-dark, #8A6A1E);
	--vxm-grad: linear-gradient(135deg, var(--vxm-g-a) 0%, var(--vxm-g-b) 45%, var(--vxm-g-c) 100%);
	--vxm-grad-line: linear-gradient(90deg, var(--vxm-g-c) 0%, var(--vxm-g-b) 25%, var(--vxm-g-a) 50%, var(--vxm-g-b) 75%, var(--vxm-g-c) 100%);
	--vxm-grad-v: linear-gradient(180deg, var(--vxm-g-a) 0%, var(--vxm-g-b) 45%, var(--vxm-g-c) 100%);
}

/* Focus ring: outlines cannot be gradients, so use the mid gold */
.vxm :focus-visible { outline-color: var(--vxm-g-b); }

/* ---- Gradient lettering ---- */
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
	.vxm :is(.vxm-eyebrow, .vxm-card-cat, .vxm-viewall, .vxm-panel-title, .vxm-share-label, .vxm-adj small, .vxm-hero-title em, .vxm-wm-tag, .vxm-prose a),
	.vxm .vxm-prose > p:first-of-type::first-letter,
	.vxm :is(.vxm-nav-list a, .vxm-panel-list a, .vxm-footer-links a, .vxm-card-title a, .vxm-visit, .vxm-tags a, .vxm-share :is(a, button), .vxm-topics a):is(:hover, :focus-visible) {
		background: var(--vxm-grad);
		-webkit-background-clip: text; background-clip: text;
		color: var(--vxm-g-b);
		-webkit-text-fill-color: transparent;
	}
}
.vxm :is(.vxm-eyebrow, .vxm-panel-title, .vxm-hero-title em, .vxm-wm-tag) { width: fit-content; }
.vxm .vxm-hero-title em { padding-right: .1em; }
.vxm .vxm-share-label { display: inline-block; }

/* ---- Icons: gradient stroke (defs are printed once in the page footer) ---- */
.vxm :is(.vxm-visit, .vxm-viewall, .vxm-band-icon) svg { stroke: url(#vxm-gold-24); }
.vxm .vxm-band-icon svg { stroke: url(#vxm-gold-48); }
.vxm .vxm-icon-btn:hover svg, .vxm .vxm-btn--ghost svg { stroke: url(#vxm-gold-24); }
.vxm .vxm-btn--ghost:hover svg { stroke: var(--vxm-btn-text); }

/* ---- Buttons: gradient outline, gradient lettering (as "Book a Strategy Call") ---- */
.vxm .vxm-btn { border-color: transparent; border-image: var(--vxm-grad) 1; }
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
	.vxm .vxm-btn--ghost {
		background: var(--vxm-grad);
		-webkit-background-clip: text; background-clip: text;
		color: var(--vxm-g-b); -webkit-text-fill-color: transparent;
	}
}
.vxm .vxm-btn--ghost:hover,
.vxm .vxm-btn--solid, .vxm .vxm-btn--solid:hover {
	background: var(--vxm-grad); -webkit-background-clip: border-box; background-clip: border-box;
	color: var(--vxm-btn-text); -webkit-text-fill-color: var(--vxm-btn-text);
}
.vxm .vxm-btn--ghost:hover, .vxm .vxm-btn--solid:hover { box-shadow: 0 10px 28px -12px rgba(var(--vxm-gold-rgb), .6); }

/* ---- Hairlines & rules ---- */
.vxm .vxm-masthead, .vxm .vxm-band, .vxm .vxm-footer, .vxm .vxm-article-foot { border-image: var(--vxm-grad-line) 1; }
.vxm .vxm-latest-line, .vxm .vxm-prose hr { background: var(--vxm-grad-line); }
.vxm .vxm-search-form { border-image: var(--vxm-grad-line) 1; }
.vxm .vxm-panel { border-image: var(--vxm-grad-v) 1; }
.vxm .vxm-footer-tag { border-left-color: transparent; border-image: var(--vxm-grad-v) 1; }
.vxm .vxm-band-icon { border-right-color: transparent; border-image: var(--vxm-grad-v) 1; }
.vxm .vxm-prose blockquote { border-left-color: transparent; border-image: var(--vxm-grad-v) 1; }
.vxm .vxm-nav-list :is(.is-active, .current-menu-item) > a { border-image: var(--vxm-grad) 1; }

/* ---- Fills: dots, pager, filters, skip link, comment button ---- */
.vxm .vxm-dot.is-active { background: var(--vxm-grad); }
.vxm .vxm-pager .page-numbers.current, .vxm .vxm-pager .page-numbers:hover,
.vxm .vxm-topics a.is-active, .vxm .vxm-comments .submit, .vxm-skip {
	background: var(--vxm-grad); border-color: transparent; border-image: var(--vxm-grad) 1;
	color: var(--vxm-btn-text); -webkit-text-fill-color: var(--vxm-btn-text);
}
.vxm .vxm-topics a.is-active { border-image: none; border-color: transparent; }
.vxm-skip { border: 0; border-image: none; }
.vxm .vxm-comments .submit { border: 0; border-image: none; }

/* ---- Hover / focus borders ---- */
.vxm :is(.vxm-tags a, .vxm-share :is(a, button), .vxm-adj):is(:hover, :focus-visible) { border-color: transparent; border-image: var(--vxm-grad) 1; }
.vxm :is(.vxm-form-row input[type=email], .vxm-comments :is(input, textarea)):focus { border-color: transparent; border-image: var(--vxm-grad) 1; }
/* Round topic pills: gradient ring (a border-image would square them off) */
.vxm .vxm-topics a { position: relative; }
.vxm .vxm-topics a:is(:hover, :focus-visible)::before {
	content: ""; position: absolute; inset: -1px; padding: 1px; border-radius: inherit; pointer-events: none;
	background: var(--vxm-grad);
	-webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor;
	mask: linear-gradient(#000 0 0) content-box exclude, linear-gradient(#000 0 0);
}
.vxm .vxm-topics a:hover:not(.is-active) { border-color: transparent; }

/* List markers cannot take a gradient, so they use the mid gold */
.vxm .vxm-prose li::marker { color: var(--vxm-g-b); }

/* ---- Wordmark (live-text logo) ---- */
.vxm .vxm-wm-name { color: var(--vxm-g-b); background: var(--vxm-grad); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.vxm .vxm-wm-rule::before {
	background: var(--vxm-grad-line);
	-webkit-mask-image: linear-gradient(90deg, transparent, #000 10%, #000 41%, transparent 41.6%, transparent 58.4%, #000 59%, #000 90%, transparent);
	mask-image: linear-gradient(90deg, transparent, #000 10%, #000 41%, transparent 41.6%, transparent 58.4%, #000 59%, #000 90%, transparent);
}
.vxm .vxm-wm-rule::after { background: var(--vxm-grad); }

/* ==========================================================================
   PAGE-ONLY FLOATING BUTTONS (v3.10.2)
   Replicas of the main-brand WhatsApp launcher and back-to-top, used only on
   That Guy Zimx. The main WhatsApp, shop cart and back-to-top are not printed
   on this page. Gradient gold, same look and behaviour as the originals.
   ========================================================================== */
.vxm-wa { position: fixed; left: 26px; bottom: calc(40px + var(--vxm-wa-lift, 0px)); z-index: 500; transition: bottom .28s ease; }
@media (max-width: 600px) { .vxm-wa { left: 16px; } }
.vxm-wa-launcher {
	position: relative; display: flex; align-items: center; justify-content: center; width: 58px; height: 58px; border: 0; padding: 0; border-radius: 50%; cursor: pointer; color: #1A1408;
	background: var(--vxm-grad);
	box-shadow: 0 12px 30px -8px rgba(var(--vxm-gold-rgb), .55), 0 4px 14px rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.35);
	transition: transform .2s ease;
}
.vxm-wa-launcher:hover { transform: scale(1.08); }
.vxm-wa-launcher::before {
	content: ""; position: absolute; inset: -6px; border-radius: 50%; border: 2px solid rgba(var(--vxm-gold-rgb), .55);
	opacity: 0; animation: vxm-wa-ring 2.8s ease-out infinite; pointer-events: none;
}
@keyframes vxm-wa-ring { 0% { transform: scale(.88); opacity: .75; } 70%, 100% { transform: scale(1.28); opacity: 0; } }
.vxm-wa.is-open .vxm-wa-launcher::before { animation: none; }
.vxm-wa-dot { position: absolute; width: 13px; height: 13px; border-radius: 50%; background: #8A8374; border: 2px solid #14110b; }
.vxm-wa-launcher .vxm-wa-dot { top: 1px; right: 1px; }
.vxm-wa.is-online .vxm-wa-launcher .vxm-wa-dot { background: #3DDC84; box-shadow: 0 0 0 0 rgba(61,220,132,.6); animation: vxm-wa-live 2s infinite; }
@keyframes vxm-wa-live { 70% { box-shadow: 0 0 0 7px rgba(61,220,132,0); } 100% { box-shadow: 0 0 0 0 rgba(61,220,132,0); } }

.vxm-wa-panel {
	position: absolute; left: 0; bottom: calc(100% + 16px); width: min(344px, calc(100vw - 32px)); overflow: hidden; z-index: 2; color: #F2ECDD;
	border: 1px solid transparent; border-radius: 18px;
	background: linear-gradient(170deg, #1c1710 0%, #100d08 100%) padding-box, var(--vxm-grad) border-box;
	box-shadow: 0 30px 70px -20px rgba(0,0,0,.8);
	opacity: 0; transform: translateY(14px) scale(.97); transform-origin: left bottom; transition: opacity .22s ease, transform .22s ease;
}
.vxm-wa-panel[hidden] { display: none; }
.vxm-wa.is-open .vxm-wa-panel { opacity: 1; transform: none; }
.vxm-wa-head { display: flex; align-items: center; gap: 12px; padding: 16px 16px 14px; border-bottom: 1px solid rgba(var(--vxm-gold-rgb), .18); background: radial-gradient(120% 140% at 0 0, rgba(var(--vxm-gold-rgb), .18), transparent 60%); }
.vxm-wa-head-icon { flex: none; width: 40px; height: 40px; border-radius: 12px; display: flex; align-items: center; justify-content: center; color: #1A1408; background: var(--vxm-grad); }
.vxm-wa-head-text { display: flex; flex-direction: column; gap: 2px; min-width: 0; flex: 1; }
.vxm-wa-head-text strong { width: fit-content; font: 600 15px/1.25 var(--vxm-f-head); background: var(--vxm-grad); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.vxm-wa-head-text span { font-size: 12px; line-height: 1.4; color: rgba(242,236,221,.68); }
.vxm-wa-close { flex: none; width: 30px; height: 30px; border-radius: 50%; border: 1px solid rgba(var(--vxm-gold-rgb), .3); background: transparent; color: #F2ECDD; font-size: 18px; line-height: 1; cursor: pointer; transition: background .2s; }
.vxm-wa-close:hover { background: rgba(var(--vxm-gold-rgb), .18); }
.vxm-wa-list { display: flex; flex-direction: column; gap: 6px; padding: 10px; max-height: min(52vh, 360px); overflow-y: auto; }
.vxm-wa-agent { display: flex; align-items: center; gap: 12px; padding: 10px 12px; border-radius: 14px; color: inherit; text-decoration: none; border: 1px solid transparent; background: rgba(255,255,255,.03); transition: background .2s, border-color .2s, transform .2s; }
.vxm-wa-agent:hover, .vxm-wa-agent:focus-visible { background: rgba(var(--vxm-gold-rgb), .12); border-color: rgba(var(--vxm-gold-rgb), .45); transform: translateX(3px); outline: none; }
.vxm-wa-avatar { position: relative; flex: none; width: 44px; height: 44px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font: 700 14px var(--vxm-f-head); color: #1A1408; background: var(--vxm-grad); box-shadow: 0 0 0 2px rgba(var(--vxm-gold-rgb), .45); }
.vxm-wa-avatar .vxm-wa-dot { right: -2px; bottom: -2px; }
.vxm-wa-agent.is-online .vxm-wa-dot { background: #3DDC84; }
.vxm-wa-who { display: flex; flex-direction: column; gap: 1px; min-width: 0; flex: 1; }
.vxm-wa-who strong { font-size: 14px; font-weight: 600; color: #F2ECDD; }
.vxm-wa-who em { font-style: normal; font-size: 12px; color: var(--vxm-g-b); }
.vxm-wa-who small { font-size: 11.5px; color: rgba(242,236,221,.55); }
.vxm-wa-agent.is-online .vxm-wa-status { color: #3DDC84; }
.vxm-wa-go { flex: none; font-size: 24px; line-height: 1; color: var(--vxm-g-b); transition: transform .2s; }
.vxm-wa-agent:hover .vxm-wa-go { transform: translateX(3px); }
.vxm-wa-foot { padding: 9px 16px 13px; font-size: 11px; color: rgba(242,236,221,.45); text-align: center; }

/* Back to top: gradient ring that fills as the page scrolls */
.vxm-btt {
	position: fixed; bottom: 90px; right: 26px; z-index: 500; width: 52px; height: 52px; padding: 0; border: 0; border-radius: 50%;
	background: var(--vxm-surface, #0a0e10); color: var(--vxm-g-b); cursor: pointer;
	display: none; align-items: center; justify-content: center; transition: transform .2s ease;
}
.vxm-btt.is-visible { display: flex; }
.vxm-btt:hover { transform: translateY(-3px); }
.vxm-btt::before {
	content: ""; position: absolute; inset: 0; padding: 2px; border-radius: 50%; pointer-events: none;
	background: var(--vxm-grad);
	-webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor;
	mask: linear-gradient(#000 0 0) content-box exclude, linear-gradient(#000 0 0);
}
.vxm-btt-ring { position: absolute; inset: 0; transform: rotate(-90deg); pointer-events: none; }
.vxm-btt-ring circle { fill: none; stroke: url(#vxm-gold-44); stroke-width: 3; stroke-dasharray: 126; stroke-dashoffset: 126; }
.vxm-btt-arrow { stroke: url(#vxm-gold-24); }
@media (prefers-reduced-motion: reduce) { .vxm-wa-launcher::before, .vxm-wa.is-online .vxm-wa-launcher .vxm-wa-dot { animation: none; } .vxm-wa-panel, .vxm-wa { transition: none; } }
@media print { .vxm-wa, .vxm-btt { display: none !important; } }


/* ==========================================================================
   SINGLE POST (v3.10.4): featured image first, then title and meta;
   gradient gold on the title, headings and bold text inside the post.
   ========================================================================== */
.vxm .vxm-article { padding-top: clamp(16px, 2.5vw, 32px); }
.vxm .vxm-article-media { margin: 0 auto clamp(24px, 4vw, 44px); }
.vxm .vxm-article-head { margin-top: 0; }

@supports ((-webkit-background-clip: text) or (background-clip: text)) {
	.vxm .vxm-article-title,
	.vxm .vxm-prose :is(h1, h2, h3, h4, h5, h6, strong, b) {
		background: var(--vxm-grad);
		-webkit-background-clip: text; background-clip: text;
		color: var(--vxm-g-b); -webkit-text-fill-color: transparent;
	}
	.vxm .vxm-prose :is(h1, h2, h3, h4, h5, h6) { width: fit-content; max-width: 100%; }
	/* bold inside a heading, or inside bold text, shares the outer gradient */
	.vxm .vxm-prose :is(h1, h2, h3, h4, h5, h6, strong, b) :is(strong, b) { background: none; -webkit-text-fill-color: inherit; }
	.vxm .vxm-prose :is(h1, h2, h3, h4, h5, h6) a { -webkit-text-fill-color: inherit; background: none; }
}
@media print { .vxm .vxm-article-title, .vxm .vxm-prose :is(h1, h2, h3, h4, h5, h6, strong, b) { background: none !important; -webkit-text-fill-color: #000 !important; color: #000 !important; } }


/* ==========================================================================
   ELEMENTOR-BUILT POSTS (v3.10.5)
   Journal posts can be built with Elementor. The magazine header, footer and
   gold gradient stay; Elementor lays out the body, so the 720px reading
   column is lifted and Elementor text inherits the page colours.
   ========================================================================== */
.vxm .vxm-prose--el, .vxm .vxm-prose:has(> .elementor) { max-width: 1100px; font-size: inherit; }
.vxm .vxm-prose--el .elementor { max-width: 100%; }
.vxm .vxm-prose--el .elementor-widget-text-editor,
.vxm .vxm-prose--el .elementor-widget-text-editor p,
.vxm .vxm-prose--el .elementor-widget-container { color: var(--vxm-text); font-family: var(--vxm-f-body); }
.vxm .vxm-prose--el .elementor-widget-text-editor { font-size: clamp(17px, .35vw + 16px, 20px); line-height: 1.78; }
.vxm .vxm-prose--el .elementor-heading-title { font-family: var(--vxm-f-head); }
.vxm .vxm-prose--el img { max-width: 100%; height: auto; }
.vxm .vxm-prose--el .elementor-section.elementor-section-boxed > .elementor-container { max-width: 100%; }
