/* Homepage (E5, redesign_support_files/VosCast Home E5.dc.html) in Daylight Glass. Loads after tokens.css and
   site.css, on the homepage only ($vcPageCss = 'home'). Sections, glass, play buttons, the FAQ, the closing
   panel and the floating demo button are shared, in site.css. */

/* Soft colour behind the glass (.vc-blob in site.css). oklch where supported, sRGB before it. */
.vc-blob--a { top: -30%; right: -20%; width: 80vw; height: 80vw; max-width: 1200px; max-height: 1200px; background: radial-gradient(closest-side, rgba(129,206,240,.6), transparent); background: radial-gradient(closest-side, oklch(0.84 0.1 220 / .6), transparent); }
.vc-blob--b { bottom: -40%; left: -20%; width: 70vw; height: 70vw; max-width: 1100px; max-height: 1100px; background: radial-gradient(closest-side, rgba(200,192,255,.48), transparent); background: radial-gradient(closest-side, oklch(0.84 0.1 300 / .48), transparent); }
.vc-blob--c { top: 35%; left: 38%; width: 34vw; height: 34vw; background: radial-gradient(closest-side, rgba(246,198,150,.28), transparent); background: radial-gradient(closest-side, oklch(0.84 0.1 65 / .28), transparent); }
@media (max-width: 767px) { .vc-blob--c { display: none; } }
.vc-blob--d { top: 16%; left: -18%; width: 64vw; height: 64vw; max-width: 980px; max-height: 980px; background: radial-gradient(closest-side, rgba(129,206,240,.5), transparent); background: radial-gradient(closest-side, oklch(0.84 0.1 220 / .5), transparent); }
.vc-blob--e { bottom: -30%; right: -14%; width: 60vw; height: 60vw; max-width: 900px; max-height: 900px; background: radial-gradient(closest-side, rgba(200,192,255,.4), transparent); background: radial-gradient(closest-side, oklch(0.84 0.1 300 / .4), transparent); }
.vc-blob--f { top: 0; right: -20%; width: 60vw; height: 60vw; max-width: 900px; max-height: 900px; background: radial-gradient(closest-side, rgba(246,198,150,.32), transparent); background: radial-gradient(closest-side, oklch(0.84 0.1 65 / .32), transparent); }

/* Hero */
.vc-hero { position: relative; overflow: hidden; overflow: clip; background: var(--bg); }
.vc-hero__grid { display: flex; flex-wrap: wrap; align-items: center; gap: 56px clamp(40px, 5vw, 72px); padding: calc(var(--vc-header-h) + clamp(24px, 4vw, 48px)) 0 clamp(48px, 6vw, 72px); }
.vc-hero__copy { flex: 1.25 1 520px; min-width: 0; }
.vc-hero__title { max-width: 620px; margin: 22px 0 0; font-size: clamp(50px, 6.2vw, 86px); line-height: .95; font-weight: 800; letter-spacing: -0.04em; text-wrap: balance; }
.vc-hero__title span { color: var(--acc-large); white-space: nowrap; }
.vc-hero__lead { max-width: 540px; margin-top: 26px; color: var(--mut); font-size: clamp(18px, 1.4vw, 20px); line-height: 1.55; text-wrap: pretty; }
.vc-hero .vc-actions { margin-top: 36px; }
.vc-hero__note { margin-top: 22px; color: var(--mut2); font-size: 15px; }
.vc-demo-btn { display: inline-flex; align-items: center; gap: 12px; min-height: 56px; padding: 9px 22px 9px 9px; border: 1px solid rgba(15,22,38,.126); border-radius: var(--radius-pill); background: var(--vc-glass-bg); -webkit-backdrop-filter: var(--vc-glass-blur); backdrop-filter: var(--vc-glass-blur); box-shadow: inset 0 1px 0 rgba(255,255,255,.95); color: var(--ink); font: inherit; font-size: 16px; font-weight: 600; text-decoration: none; cursor: pointer; }
.vc-demo-btn:hover, .vc-demo-btn:focus { color: var(--acc-strong); border-color: rgba(15,22,38,.238); text-decoration: none; }
.vc-hero__media { flex: 1 1 440px; min-width: 0; }

/* Now playing card (site.css): the homepage's has the photo on top. */
.vc-np__art { position: relative; height: clamp(240px, 56vw, 400px); overflow: hidden; border-radius: 22px; background: var(--bg2); }
@media (min-width: 1130px) { .vc-np__art { height: clamp(260px, 24vw, 320px); } }
.vc-np__art img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 70% 24%; }
.vc-np__onair { position: absolute; top: 14px; left: 14px; display: inline-flex; align-items: center; gap: 8px; padding: 7px 12px; border-radius: var(--radius-pill); background: rgba(255,255,255,.88); color: var(--ink); font-family: var(--font-mono); font-size: 11px; line-height: 14px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }

/* Stats strip */
.vc-stats { display: flex; flex-wrap: wrap; gap: 20px 56px; margin: 0; padding: 28px 0 clamp(64px, 7vw, 96px); border-top: 1px solid rgba(15,22,38,.07); list-style: none; }
.vc-stats li { display: flex; align-items: baseline; gap: 12px; }
.vc-stats strong { font-family: var(--font-mono); font-size: 24px; line-height: 1.2; font-weight: 500; }
.vc-stats span { color: var(--mut2); font-size: 15px; white-space: nowrap; }
/* Phones and tablets: a 2 × 2 grid, each number with its label underneath, wherever the four don't fit on one line
   (below 1,200px wide; Spanish's longer labels need 1,280px). */
@media (max-width: 1199px) {
    .vc-stats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 20px; }
    .vc-stats li { flex-direction: column; align-items: flex-start; gap: 4px; }
    .vc-stats strong { font-size: clamp(19px, 6vw, 24px); }
    .vc-stats span { font-size: 14px; line-height: 1.35; white-space: normal; }
}
@media (min-width: 1200px) and (max-width: 1279px) {
    html[lang="es"] .vc-stats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 20px; }
    html[lang="es"] .vc-stats li { flex-direction: column; align-items: flex-start; gap: 4px; }
    html[lang="es"] .vc-stats span { font-size: 14px; line-height: 1.35; white-space: normal; }
}

/* 01 · Feature cards */
.vc-grid { display: flex; flex-wrap: wrap; gap: 16px; }
.vc-card { display: flex; flex: 1 1 280px; flex-direction: column; gap: 20px; padding: clamp(24px, 3vw, 32px); border: 1px solid rgba(15,22,38,.07); border-radius: 26px; background: var(--card); box-shadow: var(--shadow-card); }
.vc-card h3 { font-size: 24px; line-height: 1.2; font-weight: 800; letter-spacing: -0.02em; }
.vc-card p { margin-top: 10px; color: var(--mut2); font-size: 16px; text-wrap: pretty; }
.vc-card--wide { flex: 2 1 560px; padding: clamp(24px, 3vw, 36px); }
.vc-card--wide h3 { font-size: 26px; }
.vc-card--split { flex-direction: row; flex-wrap: wrap; gap: 28px 40px; }
.vc-card--split > div:first-child { flex: 1 1 240px; }
.vc-card--end { align-items: flex-end; }
.vc-card > :last-child:not(:first-child) { margin-top: auto; }
.vc-card--split > :last-child:not(:first-child) { margin-top: 0; }
.vc-card--green { flex-basis: 300px; padding: clamp(24px, 3vw, 36px); border-color: rgba(108,192,36,.4); background: linear-gradient(180deg, var(--lime-tint), var(--lime-tint-2)); color: var(--ink); text-decoration: none; }
.vc-card--green h3 { font-size: 26px; }
.vc-card--green p { color: var(--mut); }
.vc-card--green:hover, .vc-card--green:focus { border-color: rgba(108,192,36,.6); color: var(--ink); text-decoration: none; }
.vc-card__more { font-weight: 700; }

.vc-schedule { display: flex; flex: 1 1 280px; flex-direction: column; gap: 8px; margin: 0; padding: 0; list-style: none; }
.vc-schedule li { display: flex; align-items: center; gap: 14px; padding: 11px 14px; border: 1px solid rgba(15,22,38,.042); border-radius: var(--radius-md); background: rgba(15,22,38,.028); }
.vc-schedule time { color: var(--mut3); font-family: var(--font-mono); font-size: 13px; }
.vc-schedule li > span { flex: 1; font-size: 15px; font-weight: 600; }
.vc-schedule small { color: var(--mut2); font-family: var(--font-mono); font-size: 11px; letter-spacing: .04em; text-transform: uppercase; }
.vc-schedule .is-on { border-color: rgba(108,192,36,.45); background: var(--lime-wash); }
.vc-schedule .is-on time, .vc-schedule .is-on small { color: var(--acc-strong); font-weight: 700; }

.vc-meterbox { display: flex; justify-content: space-between; gap: 12px; margin: 0; padding: 16px; border: 1px solid rgba(15,22,38,.042); border-radius: var(--radius-tile); background: rgba(15,22,38,.045); font-family: var(--font-mono); }
.vc-meterbox > div:last-child { text-align: right; }
.vc-meterbox dt { color: var(--mut2); font-size: 12px; letter-spacing: .06em; text-transform: uppercase; }
.vc-meterbox dd { margin: 6px 0 0; font-size: 24px; font-weight: 500; }
.vc-meterbox .is-good, .vc-chart .is-good { color: var(--acc-strong); }

.vc-pills { display: flex; flex-wrap: wrap; gap: 8px; }
.vc-pill { padding: 9px 14px; border: 1px solid rgba(15,22,38,.098); border-radius: var(--radius-pill); background: rgba(15,22,38,.035); color: var(--ink2); font-size: 14px; font-weight: 600; }
.vc-pill--on { border-color: var(--lime-line); background: var(--lime-soft); color: var(--acc-strong); }

.vc-mini-player { display: flex; align-items: center; gap: 12px; padding: 10px 14px 10px 10px; border: 1px solid rgba(15,22,38,.056); border-radius: var(--radius-pill); background: rgba(15,22,38,.042); }
.vc-mini-player > span:last-child { display: flex; flex: 1; flex-direction: column; min-width: 0; line-height: 1.25; }
.vc-mini-player strong { font-size: 14px; }
.vc-mini-player strong + span { color: var(--mut2); font-size: 13px; }

.vc-linkbox { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 44px; padding: 12px 16px; border: 1px solid rgba(15,22,38,.056); border-radius: var(--radius-md); background: rgba(15,22,38,.045); color: var(--ink2); font-family: var(--font-mono); font-size: 13px; text-decoration: none; }
.vc-linkbox > span:last-child { color: var(--ink); font-weight: 600; }
.vc-linkbox:hover, .vc-linkbox:focus { border-color: var(--lime-line); color: var(--acc-strong); text-decoration: none; }

.vc-chart { flex: 1 1 300px; min-width: 0; margin: 0; }
.vc-chart figcaption { display: flex; justify-content: space-between; margin-bottom: 10px; color: var(--mut2); font-family: var(--font-mono); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.vc-chart__bars { display: flex; align-items: flex-end; gap: 4px; height: 96px; }
.vc-chart__bars span { flex: 1; height: var(--h); border-radius: 4px 4px 1px 1px; background: rgba(15,22,38,.1); }
.vc-chart__bars .is-busy { background: rgba(108,192,36,.5); }
.vc-chart__bars .is-peak { background: var(--lime); }

/* 02 · Plan dial: a radio group. The page writes one rule per plan that moves the needle and shows its card. */
.vc-plans { overflow: hidden; overflow: clip; padding-bottom: clamp(88px, 10vw, 128px); }
.vc-dial { min-width: 0; margin: 0; padding: 12px; border-radius: 32px; }
.vc-dial__layout { display: flex; flex-wrap: wrap; gap: 12px; }
.vc-dial__tuner { display: flex; flex: 1.7 1 520px; flex-direction: column; justify-content: space-between; gap: 24px; min-width: 0; padding: clamp(14px, 2.2vw, 26px) clamp(10px, 1.8vw, 22px) 6px; }
.vc-dial__top { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 8px 24px; font-family: var(--font-mono); font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.vc-dial__tuned { display: inline-flex; align-items: center; gap: 8px; color: var(--acc-strong); }
.vc-dial__hint { color: var(--mut3); font-weight: 500; }
.vc-dial__readout-row { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; }
.vc-dial__readout { display: none; align-items: baseline; gap: 12px; min-width: 0; margin: 0; }
.vc-dial__readout strong { font-family: var(--font-mono); font-size: clamp(80px, 10.6vw, 152px); line-height: .8; font-weight: 700; letter-spacing: -0.07em; }
.vc-dial__readout span { color: var(--mut); font-family: var(--font-mono); font-size: 15px; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; }
.vc-meter--tuner { flex: 1 1 200px; max-width: 340px; min-width: 72px; height: 60px; gap: 2px; padding-bottom: 2px; }
.vc-meter--tuner > span { transform: none; animation: vc-eq var(--d) ease-in-out var(--o) infinite alternate; }

.vc-dial__band { --needle: 50%; position: relative; height: clamp(96px, 8.4vw, 116px); overflow: hidden; border: 1px solid rgba(15,22,38,.09); border-radius: 18px; background: rgba(255,255,255,.6); box-shadow: inset 0 1px 3px rgba(15,22,38,.08), inset 0 -1px 0 rgba(255,255,255,.8); cursor: ew-resize; touch-action: pan-y; -webkit-user-select: none; user-select: none; }
.vc-dial__ticks { position: absolute; inset: 0; background:
    repeating-linear-gradient(90deg, rgba(15,22,38,.26) 0 1px, transparent 1px 12.5%) left bottom / 100% 38% no-repeat,
    repeating-linear-gradient(90deg, rgba(15,22,38,.13) 0 1px, transparent 1px 6.25%) left bottom / 100% 26% no-repeat,
    repeating-linear-gradient(90deg, rgba(15,22,38,.13) 0 1px, transparent 1px 1.25%) left bottom / 100% 15% no-repeat; }
.vc-dial__ticks--lit { background:
    repeating-linear-gradient(90deg, var(--lime) 0 1px, transparent 1px 12.5%) left bottom / 100% 38% no-repeat,
    repeating-linear-gradient(90deg, var(--lime) 0 1px, transparent 1px 6.25%) left bottom / 100% 26% no-repeat,
    repeating-linear-gradient(90deg, var(--lime) 0 1px, transparent 1px 1.25%) left bottom / 100% 15% no-repeat;
  clip-path: inset(0 calc(100% - var(--needle) - 3.2%) 0 calc(var(--needle) - 3.2%)); }
.vc-dial__glow { position: absolute; top: 32px; bottom: 0; left: var(--needle); width: 180px; margin-left: -90px; background: radial-gradient(closest-side, rgba(108,192,36,.22), transparent); pointer-events: none; }
.vc-dial__mark { position: absolute; top: 0; bottom: 0; left: var(--at); padding-top: 14px; color: var(--mut3); font-family: var(--font-mono); font-size: 13px; line-height: 16px; font-weight: 700; letter-spacing: .04em; transform: translateX(-50%); transition: color .2s; pointer-events: none; }
.vc-dial__mark::after { content: ""; position: absolute; left: 50%; bottom: 0; width: 1px; height: 58%; background: rgba(15,22,38,.42); }
.vc-dial__needle { position: absolute; top: 40px; bottom: 0; left: var(--needle); width: 2px; margin-left: -1px; background: var(--lime); box-shadow: 0 0 14px 2px rgba(108,192,36,.5); pointer-events: none; }
.vc-dial__needle::before { content: ""; position: absolute; top: -4px; left: 50%; width: 9px; height: 9px; border-radius: 50%; background: var(--lime); box-shadow: 0 0 10px rgba(108,192,36,.8); transform: translateX(-50%); }
.vc-dial__needle, .vc-dial__glow { transition: left .45s cubic-bezier(.3,1.4,.5,1); }
.vc-dial__ticks--lit { transition: clip-path .45s cubic-bezier(.3,1.4,.5,1); }
.vc-dial__band.is-dragging .vc-dial__needle, .vc-dial__band.is-dragging .vc-dial__glow, .vc-dial__band.is-dragging .vc-dial__ticks--lit { transition: none; }

.vc-dial__stops { display: grid; grid-template-columns: repeat(var(--count), minmax(0, 1fr)); gap: 4px; margin-top: 6px; }
.vc-dial__stop { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; min-height: 44px; padding: 10px 6px 9px; border: 1px solid rgba(255,255,255,.22); border-radius: var(--radius-sm); background: rgba(255,255,255,.08); box-shadow: inset 0 1px 0 rgba(255,255,255,.35); color: var(--mut2); text-align: center; cursor: pointer; transition: background .2s, border-color .2s, color .2s; }
.vc-dial__stop:hover { border-color: rgba(255,255,255,.4); background: rgba(255,255,255,.2); }
.vc-dial__use { font-size: 14px; line-height: 1.3; font-weight: 600; text-wrap: balance; }
.vc-dial__price { color: var(--mut3); font-family: var(--font-mono); font-size: 13px; }
@media (max-width: 639px) { .vc-dial__use { display: none; } }
/* Phones: the plan card below says "/month", so the stops keep just the price on screen. */
@media (max-width: 479px) { .vc-dial__per { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; } }

.vc-plan { display: none; flex: 1 1 300px; flex-direction: column; gap: 16px; min-width: 0; padding: clamp(22px, 2.4vw, 28px); border: 1px solid rgba(15,22,38,.07); border-radius: 22px; background: var(--card); box-shadow: var(--shadow-card); }
.vc-plan__name { color: var(--mut2); font-family: var(--font-mono); font-size: 12px; letter-spacing: .08em; text-transform: uppercase; }
.vc-plan__price { display: flex; align-items: baseline; gap: 6px; margin-top: 10px; }
.vc-plan__price strong { font-size: clamp(42px, 4vw, 54px); line-height: 1; font-weight: 800; letter-spacing: -0.04em; }
.vc-plan__price span { color: var(--mut); font-size: 17px; }
.vc-plan__fit { min-height: 3.1em; margin-top: 12px; color: var(--mut); font-size: 15px; text-wrap: pretty; }
.vc-plan__facts { display: flex; flex-direction: column; margin: 0; border-bottom: 1px solid var(--rule); font-size: 15px; }
.vc-plan__facts div { display: flex; justify-content: space-between; gap: 16px; padding: 11px 0; border-top: 1px solid var(--rule); }
.vc-plan__facts dt { color: var(--mut2); }
.vc-plan__facts dd { margin: 0; font-weight: 700; }
.vc-plan__order { display: flex; flex-direction: column; gap: 12px; margin-top: auto; }
.vc-plan__order .vc-btn { width: 100%; }
.vc-plan__order > span { color: var(--mut2); font-size: 14px; text-align: center; }

.vc-checks { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 22px; margin: 0; padding: 0; color: var(--mut); font-size: 15px; list-style: none; }
.vc-checks li:not(.vc-note)::before { content: "✓"; margin-right: 8px; color: var(--acc-strong); font-weight: 700; }

/* 03 · How it works. Without JavaScript both paths show, each under its own heading. */
.vc-how { padding: clamp(88px, 10vw, 140px) 0; border-top: 1px solid rgba(15,22,38,.042); border-bottom: 1px solid rgba(15,22,38,.042); background: var(--bg2); }
.vc-how .vc-section__head { margin-bottom: 0; }
.vc-how__tabs { padding: 5px; border-color: rgba(15,22,38,.098); background: var(--vc-glass-bg); box-shadow: inset 0 1px 0 rgba(255,255,255,.95); }
.vc-how__tabs[hidden] { display: none; }
.vc-how__tabs .vc-tab { height: 44px; padding: 0 18px; color: var(--mut); font-size: 15px; font-weight: 700; }
.vc-how__tabs .vc-tab[aria-selected="true"] { background: var(--lime); color: var(--on-lime); box-shadow: none; }
.vc-journey { position: relative; display: flex; justify-content: space-between; margin-top: 56px; }
.vc-journey__line { position: absolute; top: 7px; left: 8px; right: 8px; height: 2px; overflow: hidden; background: rgba(15,22,38,.084); }
.vc-journey__line > span { position: absolute; top: 0; left: -12%; width: 12%; height: 100%; background: linear-gradient(90deg, transparent, var(--lime-hover), transparent); box-shadow: 0 0 12px var(--lime); animation: vc-signal 3.4s cubic-bezier(.45,0,.55,1) infinite; }
.vc-journey__stop { position: relative; display: flex; flex-direction: column; align-items: center; gap: 8px; color: var(--mut2); font-family: var(--font-mono); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.vc-journey__stop:first-of-type { align-items: flex-start; }
.vc-journey__stop:last-of-type { align-items: flex-end; }
.vc-journey__stop::before { content: ""; width: 16px; height: 16px; border: 3px solid var(--lime); border-radius: 50%; background: var(--bg2); }
.vc-how__panel { margin-top: 20px; }
.vc-how__panel[hidden] { display: none; }
.vc-how__panel + .vc-how__panel { margin-top: 48px; }
.vc-how__panel-title { margin-bottom: 16px; font-size: 22px; font-weight: 800; letter-spacing: -0.02em; }
.vc-how.is-tabbed .vc-how__panel + .vc-how__panel { margin-top: 20px; }
.vc-how.is-tabbed .vc-how__panel-title { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.vc-how__panel:focus-visible { outline: 2px solid var(--focus); outline-offset: 8px; border-radius: 26px; }
.vc-steps { display: flex; flex-wrap: wrap; gap: 16px; margin: 0; padding: 0; list-style: none; }
.vc-steps .vc-card { flex: 1 1 300px; gap: 12px; }
.vc-steps__n { color: var(--lime); font-family: var(--font-mono); font-size: 40px; line-height: 1; font-weight: 700; letter-spacing: -0.05em; }
.vc-steps h4 { margin-top: 8px; font-size: 24px; line-height: 1.2; font-weight: 800; letter-spacing: -0.02em; }
.vc-steps p { margin-top: 0; }
.vc-steps .vc-textlink { margin-top: auto; padding-top: 8px; }
.vc-how .vc-section__foot { margin-top: 28px; gap: 16px 32px; }
.vc-how__note { max-width: 640px; color: var(--mut); font-size: 16px; text-wrap: pretty; }

/* 04 · Support and reviews */
.vc-support { overflow: hidden; overflow: clip; padding: clamp(88px, 10vw, 140px) 0; }
.vc-support__grid { display: flex; flex-wrap: wrap; align-items: center; gap: 56px clamp(40px, 6vw, 96px); }
.vc-support__media { flex: 1 1 440px; min-width: 0; }
.vc-support__photo { position: relative; height: clamp(360px, 38vw, 520px); overflow: hidden; border: 1px solid rgba(15,22,38,.084); border-radius: 32px; background: var(--bg2); }
.vc-support__photo img { position: absolute; top: -4%; left: -4%; width: 108%; height: 108%; object-fit: cover; object-position: 30% center; }
.vc-support__quote { position: relative; z-index: 2; margin: calc(-1 * clamp(110px, 10vw, 150px)) clamp(12px, 2.4vw, 32px) 0; padding: 22px 24px; border-radius: 24px; }
.vc-support__quote blockquote { margin: 0; font-size: clamp(18px, 1.6vw, 21px); line-height: 1.4; font-weight: 600; text-wrap: pretty; }
.vc-support__quote figcaption, .vc-review figcaption { margin-top: 12px; color: var(--mut); font-size: 14px; }
.vc-support__quote strong, .vc-review strong { color: var(--ink); font-weight: 700; }
.vc-support__copy { flex: 1 1 420px; }
.vc-support__copy .vc-section__intro { max-width: 520px; margin-top: 22px; }
.vc-support__copy .vc-actions { margin-top: 32px; }
.vc-reviews__label { margin-top: clamp(80px, 9vw, 128px); }
.vc-reviews { display: flex; flex-wrap: wrap; gap: 16px; margin-top: 24px; }
.vc-review { margin: 0; gap: 16px; padding: 28px; }
.vc-review blockquote { margin: 0; font-size: 17px; line-height: 1.5; text-wrap: pretty; }
.vc-review figcaption { margin-top: auto; }
.vc-review--big { flex: 2 1 520px; gap: 24px; padding: clamp(28px, 3.4vw, 44px); }
.vc-review--big blockquote { font-size: clamp(26px, 2.8vw, 38px); line-height: 1.15; font-weight: 800; letter-spacing: -0.025em; }
.vc-review--big blockquote span { color: var(--acc-large); }
.vc-review--big figcaption { font-size: 15px; color: var(--mut2); }
.vc-reviews__side { display: flex; flex: 1 1 300px; flex-direction: column; gap: 16px; }
.vc-reviews__side .vc-review { flex: 1; }

@media (prefers-reduced-motion: reduce) {
  .vc-meter--tuner > span, .vc-journey__line > span { animation: none; }
  .vc-meter--tuner > span { transform: scaleY(.6); }
  .vc-journey__line > span { left: 0; }
  .vc-dial__needle, .vc-dial__glow, .vc-dial__ticks--lit { transition: none; }
}
