.vz-hero {
    padding: var(--s-24) 0 var(--s-16);
    background: var(--c-white);
}

.vz-hero__layout {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--s-12);
    align-items: center;
}

.vz-hero__eyebrow {
    display: inline-block;
    font-size: var(--t-14);
    font-weight: var(--w-bold);
    letter-spacing: var(--ls-wide);
    text-transform: uppercase;
    color: var(--c-muted);
    margin-bottom: var(--s-3);
}

.vz-hero__title { margin-bottom: var(--s-5); }

.vz-hero__lead {
    font-size: var(--t-18);
    line-height: var(--lh-normal);
    color: var(--c-muted);
    max-width: 46ch;
    margin-bottom: var(--s-8);
}

.vz-hero__numbers {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1px;
    background: var(--c-border);
    border: 1.5px solid var(--c-border);
    border-radius: var(--r-md);
    overflow: hidden;
    margin-bottom: var(--s-8);
}

.vz-hero__num { background: var(--c-surface); padding: var(--s-4); display: flex; flex-direction: column; gap: var(--s-1); }
.vz-hero__num-val { font-size: var(--t-18); font-weight: var(--w-black); color: var(--c-black); letter-spacing: var(--ls-tight); font-variant-numeric: tabular-nums; }
.vz-hero__num-lbl { font-size: 11px; color: var(--c-muted); font-weight: 500; }
.vz-hero__actions { display: flex; gap: var(--s-3); flex-wrap: wrap; }

.vz-hero__media-main {
    position: relative;
    border-radius: var(--r-md);
    overflow: hidden;
    aspect-ratio: 4 / 3;
    border: 1.5px solid var(--c-border);
    background: var(--c-surface);
}

.vz-hero__media-main video, .vz-hero__media-main img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.vz-hero__media-main video { z-index: 1; }

.vz-hero__media-caption {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: var(--s-3) var(--s-1);
    margin-top: var(--s-3);
}

.vz-hero__media-tag {
    font-size: 11px;
    font-weight: var(--w-bold);
    letter-spacing: var(--ls-wide);
    text-transform: uppercase;
    background: var(--c-surface);
    border: 1.5px solid var(--c-border);
    color: var(--c-muted);
    padding: 3px 10px;
    border-radius: var(--r-pill);
}

.vz-hero__media-note { font-size: var(--t-14); color: var(--c-muted); font-weight: 500; }

.vz-how {
    padding: var(--s-24) 0;
    background: var(--c-surface);
}

.vz-how__head { margin-bottom: var(--s-12); }

.vz-how__eyebrow {
    display: inline-block;
    font-size: var(--t-14);
    font-weight: var(--w-bold);
    letter-spacing: var(--ls-wide);
    text-transform: uppercase;
    color: var(--c-muted);
    margin-bottom: var(--s-3);
}

.vz-how__steps {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--s-8);
}

.vz-how__step-media {
    position: relative;
    border-radius: var(--r-md);
    overflow: hidden;
    aspect-ratio: 4 / 3;
    margin-bottom: var(--s-5);
    background: var(--c-white);
    border: 1.5px solid var(--c-border);
}

.vz-how__step-media video, .vz-how__step-media img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.vz-how__step-media video { z-index: 1; }

.vz-how__step-num {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    background: var(--c-accent);
    color: var(--c-black);
    font-size: var(--t-14);
    font-weight: var(--w-black);
    border-radius: 50%;
    margin-bottom: var(--s-3);
}

.vz-how__step-title { font-size: var(--t-18); font-weight: var(--w-black); letter-spacing: var(--ls-tight); margin-bottom: var(--s-2); }
.vz-how__step-text { font-size: var(--t-14); line-height: var(--lh-normal); color: var(--c-muted); }

.vz-uses {
    padding: var(--s-24) 0;
    background: var(--c-white);
}

.vz-uses__head {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--s-8);
    align-items: end;
    margin-bottom: var(--s-12);
}

.vz-uses__eyebrow {
    display: inline-block;
    font-size: var(--t-14);
    font-weight: var(--w-bold);
    letter-spacing: var(--ls-wide);
    text-transform: uppercase;
    color: var(--c-muted);
    margin-bottom: var(--s-3);
    grid-column: 1 / -1;
}

.vz-uses__lead { font-size: var(--t-16); line-height: var(--lh-normal); color: var(--c-muted); }

.vz-uses__grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
}

.vz-uses__tile {
    border-radius: var(--r-md);
    overflow: hidden;
    background: var(--c-surface);
    border: 1.5px solid var(--c-border);
    display: flex;
    flex-direction: column;
    transition: box-shadow var(--dur-std) var(--ease), transform var(--dur-std) var(--ease), border-color var(--dur-std) var(--ease);
}

@media (hover: hover) {
    .vz-uses__tile:hover { box-shadow: var(--shadow-hover); transform: translateY(-3px); border-color: rgba(252,225,22,0.4); }
    .vz-uses__tile:hover .vz-uses__tile-media img { transform: scale(1.06); }
}

.vz-uses__tile-media { width: 100%; aspect-ratio: 4 / 3; overflow: hidden; }
.vz-uses__tile-media img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.65s cubic-bezier(0.25, 1, 0.5, 1); }
.vz-uses__tile-body { padding: var(--s-4) var(--s-5) var(--s-5); display: flex; flex-direction: column; gap: var(--s-2); flex: 1; background: var(--c-white); }
.vz-uses__tile-title { font-size: var(--t-16); font-weight: var(--w-black); letter-spacing: var(--ls-tight); }
.vz-uses__tile-text { font-size: var(--t-14); line-height: var(--lh-normal); color: var(--c-muted); }

.vz-tech {
    padding: var(--s-24) 0;
    background: var(--c-surface);
}

.vz-tech__head { margin-bottom: var(--s-12); }

.vz-tech__eyebrow {
    display: inline-block;
    font-size: var(--t-14);
    font-weight: var(--w-bold);
    letter-spacing: var(--ls-wide);
    text-transform: uppercase;
    color: var(--c-muted);
    margin-bottom: var(--s-3);
}

.vz-tech__bento {
    display: grid;
    grid-template-columns: 1.4fr 1fr 1fr;
    grid-template-rows: auto auto;
    gap: 10px;
}

.vz-tech__tile {
    position: relative;
    border-radius: var(--r-md);
    overflow: hidden;
    background: var(--c-white);
    border: 1.5px solid var(--c-border);
}

.vz-tech__tile img, .vz-tech__tile video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.65s cubic-bezier(0.25, 1, 0.5, 1);
}

@media (hover: hover) {
    .vz-tech__tile:hover img,
    .vz-tech__tile:hover video { transform: scale(1.05); }
}

.vz-tech__tile::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,.72) 0%, rgba(0,0,0,.18) 55%, rgba(0,0,0,0) 100%);
    z-index: 1;
}

.vz-tech__tile-body {
    position: absolute;
    bottom: 0; left: 0; right: 0;
    padding: var(--s-5);
    z-index: 2;
    display: flex;
    flex-direction: column;
    gap: var(--s-2);
}

.vz-tech__tile-tag {
    display: inline-flex;
    width: fit-content;
    font-size: 10px;
    font-weight: var(--w-bold);
    letter-spacing: var(--ls-wide);
    text-transform: uppercase;
    background: var(--c-accent);
    color: var(--c-black);
    padding: 3px 10px;
    border-radius: var(--r-pill);
}

.vz-tech__tile-title { font-size: var(--t-18); font-weight: var(--w-black); color: var(--c-white); letter-spacing: var(--ls-tight); line-height: var(--lh-tight); }
.vz-tech__tile-text { font-size: var(--t-14); color: rgba(255,255,255,.68); line-height: var(--lh-snug); }

.vz-tech__tile--power { grid-column: 1; grid-row: 1 / 3; min-height: 480px; }
.vz-tech__tile--nav { grid-column: 2; grid-row: 1; aspect-ratio: 1; }
.vz-tech__tile--terrain { grid-column: 3; grid-row: 1; aspect-ratio: 1; }
.vz-tech__tile--params { grid-column: 2 / 4; grid-row: 2; aspect-ratio: 2.5 / 1; }



.vz-video { padding: var(--s-24) 0; background: var(--c-surface); }
.vz-video__head { text-align: center; margin-bottom: var(--s-12); }
.vz-video__eyebrow { display: inline-block; font-size: var(--t-14); font-weight: var(--w-bold); letter-spacing: var(--ls-wide); text-transform: uppercase; color: var(--c-muted); margin-bottom: var(--s-3); }
.vz-video__grid { display: grid; grid-template-columns: 1.4fr 1fr; gap: 10px; align-items: start; }
.vz-video__main, .vz-video__thumb { display: flex; flex-direction: column; gap: var(--s-3); }
.vz-video__secondary { display: flex; flex-direction: column; gap: 10px; }
.vz-video__player { width: 100%; border-radius: var(--r-md); display: block; background: var(--c-surface); aspect-ratio: 16 / 9; object-fit: cover; border: 1.5px solid var(--c-border); }
.vz-video__player--thumb { aspect-ratio: 16 / 9; }
.vz-video__caption { font-size: var(--t-14); color: var(--c-muted); font-weight: 500; }

.vz-faq { padding: var(--s-24) 0; background: var(--c-white); }
.vz-faq__head { margin-bottom: var(--s-12); }
.vz-faq__eyebrow { display: inline-block; font-size: var(--t-14); font-weight: var(--w-bold); letter-spacing: var(--ls-wide); text-transform: uppercase; color: var(--c-muted); margin-bottom: var(--s-3); }
.vz-faq__list { display: flex; flex-direction: column; }
.vz-faq__item { border-bottom: 1.5px solid var(--c-border); }
.vz-faq__item:first-child { border-top: 1.5px solid var(--c-border); }
.vz-faq__question { font-size: var(--t-16); font-weight: var(--w-black); color: var(--c-black); padding: var(--s-5) 0; cursor: pointer; list-style: none; display: flex; justify-content: space-between; align-items: center; gap: var(--s-4); letter-spacing: var(--ls-tight); }
.vz-faq__question::-webkit-details-marker { display: none; }
.vz-faq__question::after { content: ''; width: 20px; height: 20px; flex-shrink: 0; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231D1D1F' stroke-width='2' stroke-linecap='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") center/contain no-repeat; transition: transform var(--dur-std) var(--ease); }
.vz-faq__item[open] .vz-faq__question::after { transform: rotate(180deg); }
.vz-faq__answer { padding-bottom: var(--s-5); }
.vz-faq__answer p { font-size: var(--t-14); line-height: var(--lh-normal); color: var(--c-muted); max-width: 72ch; }

.vz-lead { padding: var(--s-24) 0; background: var(--c-surface); }
.vz-lead__inner { display: grid; grid-template-columns: 1fr 1fr; gap: var(--s-16); align-items: start; }
.vz-lead__eyebrow { display: inline-block; font-size: var(--t-14); font-weight: var(--w-bold); letter-spacing: var(--ls-wide); text-transform: uppercase; color: var(--c-muted); margin-bottom: var(--s-3); }
.vz-lead__title { margin-bottom: var(--s-4); }
.vz-lead__desc { font-size: var(--t-16); line-height: var(--lh-normal); color: var(--c-muted); margin-bottom: var(--s-6); }
.vz-lead__trust { list-style: none; display: flex; flex-direction: column; gap: var(--s-2); margin-bottom: var(--s-8); }
.vz-lead__trust li { font-size: var(--t-14); color: var(--c-muted); padding-left: var(--s-5); position: relative; line-height: var(--lh-snug); }
.vz-lead__trust li::before { content: ''; position: absolute; left: 0; top: 7px; width: 6px; height: 6px; background: var(--c-accent); border-radius: 50%; }
.vz-lead__phone { display: block; font-size: var(--t-24); font-weight: var(--w-black); color: var(--c-black); letter-spacing: var(--ls-tight); text-decoration: none; transition: color var(--dur-micro) var(--ease); }
.vz-lead__phone:hover { color: var(--c-accent-h); }
.vz-lead__phone-note { display: block; font-size: var(--t-14); color: var(--c-muted); margin-top: var(--s-1); }
.vz-lead__form { background: var(--c-white); border-radius: var(--r-md); padding: var(--s-8); border: 1.5px solid var(--c-border); display: flex; flex-direction: column; gap: var(--s-5); }
.vz-lead__field { display: flex; flex-direction: column; gap: var(--s-2); }
.vz-lead__label { font-size: var(--t-14); font-weight: var(--w-bold); color: var(--c-black); }
.vz-lead__input { width: 100%; height: 48px; background: var(--c-surface); border: 1.5px solid var(--c-border); border-radius: var(--r-md); padding: 0 var(--s-4); font-size: var(--t-16); font-family: var(--font); color: var(--c-black); transition: border-color var(--dur-micro) var(--ease); outline: none; }
.vz-lead__input:focus { border-color: var(--c-black); }
.vz-lead__select { cursor: pointer; appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2386868B' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 14px center; background-size: 16px; background-color: var(--c-surface); }
.vz-lead__checkbox { display: flex; align-items: flex-start; gap: var(--s-3); cursor: pointer; font-size: var(--t-14); color: var(--c-muted); line-height: var(--lh-snug); }
.vz-lead__checkbox input { position: absolute; opacity: 0; width: 0; height: 0; }
.vz-lead__checkmark { width: 20px; height: 20px; border: 1.5px solid var(--c-border); border-radius: var(--r-sm); flex-shrink: 0; margin-top: 1px; transition: all var(--dur-micro) var(--ease); display: flex; align-items: center; justify-content: center; background: var(--c-surface); }
.vz-lead__checkbox input:checked + .vz-lead__checkmark { background: var(--c-accent); border-color: var(--c-accent); }
.vz-lead__checkbox input:checked + .vz-lead__checkmark::after { content: ''; width: 11px; height: 7px; border-left: 2px solid var(--c-black); border-bottom: 2px solid var(--c-black); transform: rotate(-45deg) translateY(-1px); }
.vz-lead__checkbox a { color: var(--c-black); text-decoration: underline; }
.vz-lead__submit { width: 100%; }
.vz-lead__submit:disabled { opacity: 0.4; cursor: not-allowed; }
.vz-lead__status[hidden] { display: none; }
.vz-lead__status { font-size: var(--t-14); text-align: center; padding: var(--s-3) var(--s-4); border-radius: var(--r-sm); background: var(--c-surface); color: var(--c-muted); border: 1px solid var(--c-border); }

@media (max-width: 1024px) {
    .vz-hero__layout { grid-template-columns: 1fr; gap: var(--s-10); }
    .vz-hero__numbers { grid-template-columns: repeat(2, 1fr); }
    .vz-uses__head { grid-template-columns: 1fr; }
    .vz-tech__bento { grid-template-columns: 1fr 1fr; }
    .vz-tech__tile--power { grid-column: 1 / -1; grid-row: auto; min-height: 0; aspect-ratio: 16 / 7; }
    .vz-tech__tile--params { grid-column: 1 / -1; }
}

@media (max-width: 900px) {
    .vz-how__steps { grid-template-columns: 1fr; gap: var(--s-8); }
    .vz-uses__grid { grid-template-columns: repeat(2, 1fr); }
    .vz-video__grid { grid-template-columns: 1fr; }
    .vz-lead__inner { grid-template-columns: 1fr; gap: var(--s-8); }
}

@media (max-width: 600px) {
    .vz-hero__numbers { grid-template-columns: 1fr 1fr; }
    .vz-uses__grid { grid-template-columns: 1fr; }
    .vz-tech__bento { grid-template-columns: 1fr; }
    .vz-hero__actions { flex-direction: column; }
    .vz-hero__actions .btn { width: 100%; justify-content: center; }
    .vz-lead__form { padding: var(--s-5); }
}
