/* "Velvet Hand" header + homepage photo banner (owner's pick, 24 Sep 2026).
 * Plain CSS file (not in the Vite bundle) so it goes live without a rebuild;
 * linked in layouts/public.php with ?v=<filemtime>. Colours = tokens.css.
 * Markup: app/Views/partials/header.php, banner in app/Views/pages/home.php. */
:root { --vh-line: #CDBE97; --vh-ink: #1A1712; --vh-soft: #5A5243; --vh-red: #B3202E; }

/* ── the sticky glass capsule ── */
.vh { position: sticky; top: 12px; z-index: 60; height: 64px; margin: 12px 12px -76px; pointer-events: none; font-family: var(--font-body); }
.vh-cap { position: relative; z-index: 2; pointer-events: auto; max-width: 1280px; height: 64px; margin: 0 auto; display: flex; align-items: center; gap: 12px; padding: 0 10px 0 14px; border-radius: 999px; background: rgba(7,48,31,.62); -webkit-backdrop-filter: blur(16px) saturate(1.4); backdrop-filter: blur(16px) saturate(1.4); border: 1px solid rgba(212,175,55,.45); box-shadow: 0 18px 40px -18px rgba(0,0,0,.7), inset 0 1px 0 rgba(240,215,138,.22); transition: height .3s, background .3s, margin .3s; }
.vh.is-scrolled .vh-cap { height: 58px; margin-top: 3px; background: rgba(7,48,31,.94); }
.vh .vh-i { width: 18px; height: 18px; color: inherit !important; flex: none; }
.vh-brand { display: flex; align-items: center; flex: none; text-decoration: none; }
/* 24 Sep 2026: picture logo (3 girls + gold ribbon). width/height set in the tag, so no jump while it loads */
.vh-logo-pic { display: block; }
.vh-logo { display: block; height: 56px; width: auto; max-width: none; }
.vh.is-scrolled .vh-logo { height: 50px; }
.vh .ne-logo__main, .vh-table .ne-logo__main { color: var(--ivory); font-family: var(--font-serif); }
.vh .ne-logo__main em, .vh-table .ne-logo__main em { color: var(--gold-soft); }
.vh-nav { flex: 1; display: flex; justify-content: center; min-width: 0; }
.vh-hand { display: flex; align-items: center; gap: 8px; margin: 0; padding: 0; list-style: none; }
.vh-hand > li { position: relative; }

/* menu items = playing cards */
.vh-card { position: relative; display: flex; align-items: center; height: 40px; padding: 0 13px 0 24px; border-radius: 7px; background: linear-gradient(180deg, #FFFDF6, var(--ivory)); border: 1px solid #E9DFC4; color: var(--vh-ink); font-weight: 600; font-size: .88rem; white-space: nowrap; text-decoration: none; box-shadow: 0 2px 0 var(--vh-line), 0 6px 12px -6px rgba(0,0,0,.55); transition: transform .25s cubic-bezier(.3,1.5,.5,1), box-shadow .25s, background .2s; }
.vh-card::before { content: attr(data-suit); position: absolute; left: 8px; top: 5px; font-size: .76rem; line-height: 1; color: var(--vh-ink); }
.vh-card.r::before { color: var(--vh-red); }
.vh-card::after { content: attr(data-note); position: absolute; left: 50%; top: calc(100% + 12px); transform: translate(-50%, -4px); padding: 2px 9px; border-radius: 999px; background: var(--gold); color: var(--gold-ink); font-size: .68rem; font-weight: 700; letter-spacing: .03em; white-space: nowrap; opacity: 0; pointer-events: none; transition: opacity .2s, transform .2s; box-shadow: 0 6px 14px -6px rgba(0,0,0,.6); }
.vh-card:hover, .vh-card:focus-visible { transform: translateY(-4px) rotate(-2deg); color: var(--vh-ink); box-shadow: 0 2px 0 var(--vh-line), 0 14px 22px -8px rgba(0,0,0,.65), 0 0 18px rgba(212,175,55,.35); }
.vh-card:hover::after, .vh-card:focus-visible::after { opacity: 1; transform: translate(-50%, 0); }
.vh-has:hover .vh-card::after { opacity: 0; }
.vh-card[aria-current] { background: linear-gradient(180deg, #FFF6D6, #F4DF96); border-color: var(--gold); }
.vh-card:focus-visible, .vh-glass:focus-visible, .vh-chip:focus-visible, .vh-wa:focus-visible, .vh-deal:focus-visible { outline: 2px solid var(--gold-soft); outline-offset: 3px; }

/* Categories / Areas deck */
.vh-deck { position: absolute; top: calc(100% + 18px); left: 50%; z-index: 5; width: min(640px, 92vw); padding: 18px; border-radius: 18px; background: radial-gradient(ellipse at 50% 0, var(--felt-light), var(--felt) 55%, var(--felt-deep)); border: 1px solid rgba(212,175,55,.55); box-shadow: 0 30px 60px -20px rgba(0,0,0,.75); opacity: 0; visibility: hidden; transform: translate(-50%, 10px); transition: opacity .22s, transform .22s, visibility .22s; }
.vh-deck::before { content: ""; position: absolute; left: 0; right: 0; top: -20px; height: 20px; }
@media (hover: hover) { .vh-has:hover .vh-deck { opacity: 1; visibility: visible; transform: translate(-50%, 0); } }
.vh-has:focus-within .vh-deck { opacity: 1; visibility: visible; transform: translate(-50%, 0); }
.vh-deck__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
.vh-mini { position: relative; display: flex; align-items: flex-end; min-height: 62px; padding: 8px 10px; border-radius: 8px; background: var(--ivory); color: var(--vh-ink); font-weight: 600; font-size: .82rem; line-height: 1.2; text-decoration: none; box-shadow: 0 3px 0 var(--vh-line); transition: transform .2s cubic-bezier(.3,1.5,.5,1); }
.vh-mini::before { content: attr(data-suit); position: absolute; left: 8px; top: 6px; font-size: .76rem; }
.vh-mini.r::before { color: var(--vh-red); }
.vh-mini[data-n]::after { content: attr(data-n); position: absolute; right: 8px; top: 6px; font-size: .7rem; color: var(--vh-soft); }
.vh-mini:hover { transform: translateY(-3px) rotate(-1.5deg); color: var(--felt); }
.vh-deck__all { display: inline-flex; align-items: center; gap: 6px; margin-top: 14px; color: var(--gold-soft); font-weight: 600; font-size: .9rem; text-decoration: none; }
.vh-deck__all .vh-i { width: 14px; height: 14px; }

/* round buttons: search + heart (glass), call + WhatsApp (casino chips) */
.vh-acts { display: flex; align-items: center; gap: 8px; flex: none; }
.vh-glass { position: relative; width: 42px; height: 42px; display: grid; place-items: center; border-radius: 50%; border: 1px solid rgba(212,175,55,.4); background: rgba(240,215,138,.06); color: var(--gold-soft); transition: background .2s; }
.vh-glass:hover { background: rgba(212,175,55,.18); }
.vh-badge { position: absolute; top: -3px; right: -3px; min-width: 18px; height: 18px; padding: 0 5px; border-radius: 999px; background: var(--vh-red); color: #fff; font-size: .66rem; font-weight: 700; line-height: 18px; text-align: center; }
.vh-chip { position: relative; width: 42px; height: 42px; display: grid; place-items: center; flex: none; border-radius: 50%; background: var(--felt); color: #fff; box-shadow: inset 0 0 0 3px var(--felt), inset 0 0 0 5px var(--gold), 0 4px 10px -4px rgba(0,0,0,.6); }
.vh-chip::before { content: ""; position: absolute; inset: 4px; border-radius: 50%; border: 2px dashed rgba(240,215,138,.85); transition: transform .6s cubic-bezier(.3,1.3,.5,1); }
.vh-chip--red { background: var(--vh-red); box-shadow: inset 0 0 0 3px var(--vh-red), inset 0 0 0 5px #F3EEDC, 0 4px 10px -4px rgba(0,0,0,.6); }
.vh-chip--red::before { border-color: rgba(243,238,220,.85); }
.vh-chip:hover::before, .vh-wa:hover .vh-chip::before { transform: rotate(180deg); }
.vh-chip .vh-i { position: relative; width: 19px; height: 19px; }
.vh-wa { position: relative; display: flex; align-items: center; gap: 8px; height: 48px; padding: 3px 16px 3px 3px; border-radius: 999px; background: linear-gradient(135deg, #F7E4A0, #D4AF37 55%, #B8931F); color: var(--gold-ink); font-weight: 700; font-size: .92rem; white-space: nowrap; text-decoration: none; }
.vh-wa:hover { color: var(--gold-ink); }
.vh-wa .vh-chip { width: 42px; height: 42px; }
.vh-wa::after { content: ""; position: absolute; inset: -4px; border-radius: inherit; border: 2px solid rgba(240,215,138,.75); animation: vh-ring 2.4s ease-out infinite; pointer-events: none; }
@keyframes vh-ring { 0% { opacity: .9; transform: scale(1); } 100% { opacity: 0; transform: scale(1.15); } }
.vh-deal { position: relative; display: none; align-items: center; gap: 8px; height: 44px; padding: 0 12px 0 8px; border-radius: 999px; border: 1px solid rgba(212,175,55,.4); color: var(--gold-soft); font-weight: 600; font-size: .85rem; background: none; cursor: pointer; }
.vh-deal__back { width: 22px; height: 31px; border-radius: 4px; background: repeating-linear-gradient(45deg, var(--felt) 0 3px, var(--felt-deep) 3px 6px); border: 2px solid var(--gold); box-shadow: 3px 2px 0 -1px var(--ivory), 3px 2px 0 0 var(--vh-line); }

/* opening hours tag under the capsule (hides once you scroll) */
.vh-hours { position: absolute; left: 50%; top: calc(100% + 8px); z-index: 1; transform: translateX(-50%); pointer-events: auto; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 2px 8px; width: max-content; max-width: calc(100vw - 32px); margin: 0; padding: 4px 14px; border-radius: 999px; background: rgba(7,48,31,.74); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); border: 1px solid rgba(212,175,55,.3); color: var(--on-felt-soft); font-size: .76rem; line-height: 1.5; transition: opacity .25s, transform .25s; }
.vh-hours i { width: 7px; height: 7px; border-radius: 50%; background: #4ADE80; box-shadow: 0 0 0 3px rgba(74,222,128,.2); }
.vh-hours b { color: #A7F3C5; font-weight: 600; }
.vh-hours span { white-space: nowrap; }
.vh-hours span + span::before { content: "·"; margin-right: 8px; color: var(--gold); }
.vh-hours.is-closed i { background: #E0525C; box-shadow: 0 0 0 3px rgba(224,82,92,.2); }
.vh-hours.is-closed b { color: #F6C1C1; }
.vh.is-scrolled .vh-hours { opacity: 0; transform: translate(-50%, -6px); pointer-events: none; }

/* inner pages: a green band the capsule floats over (the homepage has its photo instead) */
.vh-band { height: 130px; background: radial-gradient(ellipse 90% 140% at 50% 0, var(--felt-light), var(--felt) 55%, var(--felt-deep)); border-bottom: 1px solid rgba(212,175,55,.35); }

/* ── phone menu: the dealer's table ── */
.vh-table { position: fixed; inset: 0; z-index: 100; background: radial-gradient(ellipse at 50% 0, var(--felt-light), var(--felt) 45%, var(--felt-deep)); overflow-y: auto; opacity: 0; transition: opacity .3s; }
.vh-table[hidden] { display: none; }
.vh-table.is-on { opacity: 1; }
.vh-table .vh-i { width: 19px; height: 19px; color: inherit !important; }
.vh-table__in { min-height: 100%; padding: 14px 16px calc(20px + env(safe-area-inset-bottom)); display: flex; flex-direction: column; color: var(--on-felt); }
.vh-table__head { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.vh-x { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 50%; background: rgba(240,215,138,.14); color: var(--gold-soft); flex: none; }
.vh-open { margin: 12px 0 0; font-size: .82rem; color: var(--on-felt-soft); line-height: 1.4; }
.vh-open i { display: inline-block; width: 8px; height: 8px; margin-right: 6px; border-radius: 50%; background: #4ADE80; }
.vh-open b { color: #A7F3C5; font-weight: 600; }
.vh-open.is-closed i { background: #E0525C; }
.vh-open.is-closed b { color: #F6C1C1; }
.vh-dealt { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin: 16px 0 6px; padding: 0; list-style: none; }
.vh-big { position: relative; display: flex; align-items: center; justify-content: center; width: 100%; min-height: 78px; border-radius: 10px; background: linear-gradient(180deg, #FFFDF6, var(--ivory)); color: var(--vh-ink); font: 700 1.02rem var(--font-serif); text-decoration: none; border: 0; cursor: pointer; box-shadow: 0 3px 0 var(--vh-line), 0 10px 20px -10px rgba(0,0,0,.6); }
.vh-big::before, .vh-big::after { content: attr(data-suit); position: absolute; font-size: 1rem; line-height: 1; }
.vh-big::before { left: 10px; top: 9px; }
.vh-big::after { right: 10px; bottom: 9px; transform: rotate(180deg); }
.vh-big.r::before, .vh-big.r::after { color: var(--vh-red); }
.vh-big[aria-current] { background: linear-gradient(180deg, #FFF6D6, #F4DF96); }
.vh-table.is-on .vh-dealt > li { animation: vh-deal .55s cubic-bezier(.2,.9,.3,1.15) both; animation-delay: calc(var(--i) * 60ms); }
@keyframes vh-deal { from { opacity: 0; transform: translate(40vw, -45vh) rotate(28deg); } to { opacity: 1; transform: none; } }
.vh-lbl { margin: 18px 0 8px; font-size: .7rem; font-weight: 600; letter-spacing: .2em; text-transform: uppercase; color: var(--gold-soft); }
.vh-row { display: flex; gap: 8px; overflow-x: auto; padding-bottom: 6px; scrollbar-width: none; scroll-snap-type: x proximity; }
.vh-row::-webkit-scrollbar { display: none; }
.vh-row a { flex: none; scroll-snap-align: start; display: flex; align-items: center; height: 40px; padding: 0 14px; border-radius: 8px; background: rgba(251,247,238,.96); color: var(--vh-ink); font-weight: 600; font-size: .86rem; white-space: nowrap; text-decoration: none; box-shadow: 0 2px 0 var(--vh-line); }
.vh-row a.vh-row__all { background: var(--gold); color: var(--gold-ink); }
.vh-table__cta { margin-top: auto; padding-top: 20px; display: grid; gap: 10px; }
.vh-bigwa, .vh-bigcall { display: flex; align-items: center; justify-content: center; gap: 8px; height: 52px; border-radius: 999px; font-weight: 700; text-decoration: none; }
.vh-bigwa { background: linear-gradient(135deg, #F7E4A0, #D4AF37 55%, #B8931F); color: var(--gold-ink); }
.vh-bigcall { border: 1px solid rgba(212,175,55,.55); color: var(--gold-soft); }

/* ── sizes ── */
@media (max-width: 1240px) { .vh-glass--fav { display: none; } .vh-card { padding: 0 11px 0 22px; } }
/* WhatsApp as a plain chip: same size as the Call chip, no gold background (owner, 24 Sep) */
@media (max-width: 1160px) {
  .vh-wa__t { display: none; }
  .vh-wa { height: auto; padding: 0; background: none; }
  .vh-wa::after { display: none; }
}
@media (max-width: 1060px) {
  .vh-nav { display: none; }
  .vh-deal { display: inline-flex; }
  .vh-brand { margin-right: auto; }
  .vh-glass--fav { display: grid; }
}
@media (max-width: 560px) {
  .vh { top: 8px; height: 58px; margin: 8px 8px -66px; }
  .vh-cap { height: 58px; gap: 6px; padding: 0 6px 0 10px; }
  .vh-logo, .vh.is-scrolled .vh-logo { height: 48px; }
  .vh.is-scrolled .vh-cap { height: 54px; }
  .vh-glass { display: none !important; }
  .vh-chip, .vh-wa .vh-chip { width: 40px; height: 40px; }
  .vh-deal { padding: 0 6px; }
  .vh-deal__t { display: none; }
  .vh-hours { top: calc(100% + 6px); font-size: .7rem; padding: 3px 12px; gap: 0 6px; }
  .vh-hours span:last-child { flex-basis: 100%; text-align: center; }
  .vh-hours span:last-child::before { content: none; }
  .vh-band { height: 122px; }
}
@media (max-width: 370px) { .vh-cap { gap: 4px; padding-left: 8px; } .vh .ne-logo__main { font-size: 1rem; } }
@media (prefers-reduced-motion: reduce) {
  .vh-wa::after { animation: none; }
  .vh-table.is-on .vh-dealt > li { animation: none; }
  .vh-card, .vh-mini, .vh-chip::before { transition: none; }
}

/* 24 Sep 2026 (owner): menu, deck cards and WhatsApp pill in Oswald, like TeamSkeet's menu */
.vh-card, .vh-mini, .vh-wa__t, .vh-row a, .vh-bigwa, .vh-bigcall, .vh-deck__all { font-family: var(--font-serif); font-weight: 500; font-size: .95rem; letter-spacing: .03em; }

/* ── homepage banner: the photo on top, the 8 girl cards stay on the felt under it ── */
.vh-hero.rf-hero { padding-top: 0; }
.vh-photo { position: relative; min-height: clamp(560px, 82vh, 780px); display: flex; align-items: center; overflow: hidden; background: var(--felt-deep); }
.vh-photo__pic, .vh-photo__pic img { position: absolute; inset: 0; width: 100%; height: 100%; }
.vh-photo__pic img { object-fit: cover; object-position: 72% 30%; max-width: none; }
.vh-photo__shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(7,48,31,.94) 0%, rgba(7,48,31,.78) 38%, rgba(7,48,31,.2) 70%, rgba(7,48,31,.05) 100%), linear-gradient(180deg, rgba(7,48,31,.55) 0%, rgba(7,48,31,0) 22%, rgba(7,48,31,0) 70%, var(--felt) 100%); }
.vh-photo__in { position: relative; z-index: 2; width: 100%; padding-top: 128px; padding-bottom: 60px; }
.vh-top.rf-hero__top { text-align: left; max-width: 720px; margin: 0; }
.vh-top h1 { font-size: clamp(2.1rem, 4.4vw, 3.7rem); line-height: 1.08; }
.vh-top .rf-suits { justify-content: flex-start; }
.vh-top .rf-hero__lede { max-width: 560px; margin-left: 0; margin-right: 0; }
.vh-top .rf-hero__cta { justify-content: flex-start; }
.vh-hero .rf-stacks { display: none; }
.vh-hero .rf-hand { margin-top: -10px; }
/* 24 Sep 2026 (owner): no hard line between the photo and the 8 cards. The fade
   starts with the photo's own bottom colours (same left-dark shade over felt)
   and melts into the felt table. Cards sit above it (rf-hand z-index 2). */
.vh-fade { position: relative; height: 0; z-index: 1; pointer-events: none; }
.vh-fade::before {
  content: ""; position: absolute; left: 0; right: 0; top: 0; height: clamp(240px, 26vw, 380px);
  background: linear-gradient(90deg, rgba(7,48,31,.94) 0%, rgba(7,48,31,.78) 38%, rgba(7,48,31,.2) 70%, rgba(7,48,31,.05) 100%), var(--felt);
  -webkit-mask-image: linear-gradient(180deg, #000 0%, rgba(0,0,0,.72) 35%, rgba(0,0,0,.25) 70%, transparent 100%);
  mask-image: linear-gradient(180deg, #000 0%, rgba(0,0,0,.72) 35%, rgba(0,0,0,.25) 70%, transparent 100%);
}
@media (min-width: 768px) and (max-width: 1023px) { .vh-photo__pic img { object-position: 88% 30%; } }
@media (max-width: 767px) {
  .vh-photo { min-height: 0; align-items: flex-end; }
  .vh-photo__pic img { object-position: 50% 12%; }
  .vh-photo__shade { background: linear-gradient(180deg, rgba(7,48,31,.5) 0%, rgba(7,48,31,0) 18%, rgba(7,48,31,0) 34%, rgba(7,48,31,.82) 56%, var(--felt) 100%); }
  .vh-photo__in { padding-top: 62vh; padding-bottom: 36px; }
  .vh-fade::before { height: 200px; background: var(--felt); }
  .vh-top.rf-hero__top { text-align: center; margin: 0 auto; }
  .vh-top .rf-suits, .vh-top .rf-hero__cta { justify-content: center; }
}

/* ── 25 Sep 2026 (owner): the header hides while you scroll DOWN and comes back only on a
   QUICK flick up (a slow scroll up leaves it away; at the top of the page it is always there).
   velvet-hand.js sets .is-hidden / .is-reveal on .vh. Going away: the menu cards flip up one
   by one, the round buttons spin down, then the glass bar lifts off. Coming back: the bar
   drops in with a small bounce, the cards are dealt back in, the buttons spin in, and a gold
   light sweeps across once. Only transform + opacity move - no layout change, nothing for
   CLS / LCP, and the page itself never jumps. ── */
.vh-cap { transform-origin: 50% 0; transition: height .3s, background .3s, margin .3s, transform .5s cubic-bezier(.2,1.3,.4,1), opacity .3s ease; }
.vh-brand, .vh-hand > li, .vh-acts > * { transition: transform .45s cubic-bezier(.2,1.4,.4,1), opacity .3s ease, background .2s, color .2s, box-shadow .2s; }
.vh-hand > li:nth-child(1), .vh-acts > :nth-child(1) { --vi: 1; }
.vh-hand > li:nth-child(2), .vh-acts > :nth-child(2) { --vi: 2; }
.vh-hand > li:nth-child(3), .vh-acts > :nth-child(3) { --vi: 3; }
.vh-hand > li:nth-child(4), .vh-acts > :nth-child(4) { --vi: 4; }
.vh-hand > li:nth-child(5), .vh-acts > :nth-child(5) { --vi: 5; }
.vh-hand > li:nth-child(6), .vh-acts > :nth-child(6) { --vi: 6; }

/* going away */
.vh.is-hidden .vh-cap { transform: translateY(calc(-100% - 28px)) scale(.92, .82); opacity: 0; visibility: hidden; pointer-events: none;
  transition: transform .4s cubic-bezier(.6,0,.8,.3) .16s, opacity .26s ease .28s, visibility 0s linear .62s, height .3s, background .3s, margin .3s; }
.vh.is-hidden .vh-hand > li { transform: translateY(-8px) rotateX(85deg); opacity: 0; transition: transform .22s ease-in, opacity .2s ease-in; transition-delay: calc((7 - var(--vi, 1)) * 22ms); }
.vh.is-hidden .vh-acts > * { transform: translateY(-10px) scale(.4) rotate(-90deg); opacity: 0; transition: transform .26s ease-in, opacity .22s ease-in; transition-delay: calc(var(--vi, 1) * 24ms); }
.vh.is-hidden .vh-acts > .vh-wa { transform: translateY(-12px) scale(.7); }
.vh.is-hidden .vh-brand { transform: scale(.7); opacity: 0; transition: transform .25s ease-in .08s, opacity .2s ease-in .08s; }

/* coming back */
.vh.is-reveal .vh-cap { transition: transform .55s cubic-bezier(.2,1.35,.4,1), opacity .22s ease, visibility 0s, height .3s, background .3s, margin .3s; }
.vh.is-reveal .vh-brand { transition-delay: .12s; }
.vh.is-reveal .vh-hand > li { transition: transform .5s cubic-bezier(.2,1.5,.4,1), opacity .25s ease; transition-delay: calc(.16s + var(--vi, 1) * 45ms); }
.vh.is-reveal .vh-acts > * { transition: transform .5s cubic-bezier(.2,1.5,.4,1), opacity .25s ease, background .2s, color .2s, box-shadow .2s; transition-delay: calc(.24s + var(--vi, 1) * 50ms); }
.vh-cap::after { content: ""; position: absolute; inset: 0; border-radius: inherit; pointer-events: none; opacity: 0;
  background: linear-gradient(100deg, transparent 0 40%, rgba(240,215,138,.42) 50%, transparent 60% 100%) no-repeat; background-size: 250% 100%; background-position: 130% 0; }
.vh.is-reveal .vh-cap::after { animation: vh-sweep .9s ease .3s 1; }
@keyframes vh-sweep { 0% { opacity: 1; background-position: 130% 0; } 100% { opacity: 1; background-position: -30% 0; } }

@media (prefers-reduced-motion: reduce) {
  .vh-cap, .vh-brand, .vh-hand > li, .vh-acts > *,
  .vh.is-hidden .vh-cap, .vh.is-hidden .vh-hand > li, .vh.is-hidden .vh-acts > *, .vh.is-hidden .vh-brand { transform: none !important; transition: opacity .15s linear, visibility 0s linear .15s !important; }
  .vh.is-reveal .vh-cap::after { animation: none; }
}
