/* Brandbook palette: restrained accents, shared across routes. */
:root { --vv-soft-black: #111111; --vv-dark-brown: #111111; }
.home-hero__glow, .home-hero__color-grade { background: none; }
footer[aria-label="VinoVid footer"] { background: var(--vv-green) !important; border-top: 0 !important; }
#mision-vision-valores { background: var(--vv-black) !important; }
#mision-vision-valores .mvv-grid { gap: 24px; padding-top: 48px; padding-bottom: 48px; }
#mision-vision-valores .mvv-block { background: #111111; border: 1px solid rgb(var(--vv-gold-rgb) / .18); border-top: 3px solid var(--vv-green); }
#mision-vision-valores .mvv-values { background: transparent; border: 0; border-top: 1px solid rgb(var(--vv-gold-rgb) / .3); }
#mision-vision-valores .nosotros-value { border-top-color: var(--vv-green); }
@media (max-width: 640px) { #mision-vision-valores .mvv-block { padding-left: 20px !important; padding-right: 20px !important; } }
/* Gentle navigation and once-only reveals; native scrolling stays responsive. */
#root { transition: opacity 160ms ease-out; }
#root.vv-page-leaving { opacity: .25; }
.vv-reveal { transition: opacity 600ms ease-out, translate 600ms cubic-bezier(.2,.65,.3,1); }
.vv-reveal-pending { opacity: 0; translate: 0 16px; }
@media (prefers-reduced-motion: reduce) {
  #root, .vv-reveal { transition: none !important; }
  #root.vv-page-leaving, .vv-reveal-pending { opacity: 1; translate: none; }
}

/* Shared header: inline flex must not override mobile visibility utilities. */
@media (max-width: 767px) {
  #root header > .hidden { display: none !important; }
  #root header > button[aria-label="Abrir o cerrar menú"] { display: block !important; margin-left: auto; min-width: 44px; min-height: 44px; }
  footer[aria-label="VinoVid footer"] { padding: .75rem 1rem !important; }
  footer[aria-label="VinoVid footer"] div { justify-content: flex-start !important; align-items: flex-start !important; }
  footer[aria-label="VinoVid footer"] > div > div { flex-direction: column; gap: .65rem !important; }
  footer[aria-label="VinoVid footer"] > div > div > p { display: none; }
  footer[aria-label="VinoVid footer"] > div > div > div:first-child { flex-direction: column; gap: .4rem !important; }
  footer[aria-label="VinoVid footer"] > div > div > div:first-child > div { flex-wrap: wrap; gap: .4rem .75rem !important; }
}

.vv-back-top {
  position: fixed;
  right: max(20px, env(safe-area-inset-right));
  bottom: calc(24px + env(safe-area-inset-bottom));
  z-index: 40;
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  border: 1px solid rgb(var(--vv-gold-rgb) / .55);
  border-radius: 50%;
  background: var(--vv-black);
  color: var(--vv-gold);
  box-shadow: 0 4px 18px #0003;
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  pointer-events: none;
  transition: opacity 260ms ease, transform 260ms ease, visibility 260ms;
}
.vv-back-top.is-visible { opacity: 1; visibility: visible; transform: translateY(0); pointer-events: auto; }
.vv-back-top:focus-visible { outline: 2px solid var(--vv-cream); outline-offset: 4px; }
@media (hover: hover) { .vv-back-top:hover { background: var(--vv-green); border-color: var(--vv-gold); } }
@media (prefers-reduced-motion: reduce) { .vv-back-top { transition: none; transform: none; } }

/* Vineyard imagery echoes the home hero while leaving the copy on black. */
.vinos-sidebar { isolation: isolate; overflow: hidden; }
.vinos-sidebar::before {
  content: '';
  position: absolute;
  z-index: -1;
  inset: 0 0 0 29%;
  background-image: linear-gradient(90deg, #0b0b0b 0%, transparent 40%), linear-gradient(0deg, #0b0b0b 0%, transparent 28%, #0b0b0b33 80%, #0b0b0b 100%), url('/images/site/inicio-vid-sin-logo.png');
  background-size: cover;
  background-position: center, center, 65% center;
  opacity: .8;
  pointer-events: none;
}
.vinos-sidebar > * { position: relative; }
@media (max-width: 900px) {
  .vinos-sidebar::before { inset: 0; opacity: .32; background-position: center, center, 70% center; }
}

@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

/* Editorial rhythm for the complete About copy. */

.nosotros-page main strong { font-weight: 600; color: var(--vv-cream); }
.nosotros-copy-lead { display: inline; font: inherit; color: inherit; }
.nosotros-copy-block { display: inline; }
#mision-vision-valores .mvv-block > div:first-child > div:first-child { display: grid; place-items: center; width: 44px; height: 44px; flex: 0 0 44px; border: 1px solid rgb(var(--vv-gold-rgb) / .3); border-radius: 50%; background: var(--vv-green); }

.nosotros-page .nosotros-values { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: .75rem; }
.nosotros-page .nosotros-value { padding: 0; background: #111; border: 1px solid rgb(var(--vv-gold-rgb) / .15); }
.nosotros-page .nosotros-value__title { display: flex; align-items: center; gap: .75rem; min-height: 3.5rem; margin: 0; padding: .5rem .9rem; cursor: pointer; list-style: none; }
.nosotros-page .nosotros-value__title::-webkit-details-marker { display: none; }
.nosotros-page .nosotros-value__title::after { content: ""; width: .45rem; height: .45rem; flex: none; margin-left: auto; border-right: 1px solid; border-bottom: 1px solid; transform: rotate(45deg); }
.nosotros-page .nosotros-value details[open] > summary::after { transform: rotate(225deg); }
.nosotros-page .nosotros-value__title:focus-visible { outline: 2px solid var(--vv-gold); outline-offset: -2px; }
.nosotros-page .nosotros-value p { margin: 0; padding: 0 .9rem .9rem; }
@media (hover: hover) and (pointer: fine) {
  .nosotros-page .nosotros-value details:hover::details-content { content-visibility: visible; }
  .nosotros-page .nosotros-value details:hover > summary::after { transform: rotate(225deg); }
}
@media (max-width: 640px) { .nosotros-page .nosotros-values { grid-template-columns: 1fr; } }

.nosotros-page .nosotros-value__title .nosotros-value-icon { display: grid; place-items: center; width: 34px; height: 34px; flex: none; margin: 0; border: 1px solid rgb(var(--vv-gold-rgb) / .3); border-radius: 50%; background: var(--vv-green); }
#mision-vision-valores .mvv-values { padding-left: 0 !important; padding-right: 0 !important; }
#mision-vision-valores .nosotros-values { width: 100%; }

#mision-vision-valores .mvv-values > div:first-child > div:first-child { display: none; }
.skip-link { position: fixed; top: 8px; left: 8px; z-index: 1000; padding: 12px 20px; background: #0b0b0b; color: #fef9de; transform: translateY(-200%); }
.skip-link:focus { transform: translateY(0); }
footer[aria-label="VinoVid footer"] a { opacity: 1 !important; }
.home-hero .animate-fade-up, .home-hero .animate-fade-in { opacity: 1 !important; animation: none !important; transform: none !important; }
/* Initial content remains readable while decorative motion runs. */
.nosotros-hero .animate-fade-up, .bodegas-copy, .bodegas-list, .vinos-sidebar, .vinos-content { opacity: 1 !important; }
form label { opacity: 1 !important; }
.vinos-layout, .vinos-content, .vinos-sidebar { min-width: 0; }
.vinos-content > div:first-child > div { max-width: 100%; }
.vinos-content select { max-width: 100%; }
@media(max-width:640px) { .vinos-content > div:first-child > div { width: 100%; } .vinos-content select, .vinos-content input { width: 100% !important; } }
.bodegas-artwork { opacity: 1 !important; }
form label { color: var(--vv-gold) !important; }
.skip-link { visibility: hidden; }
.skip-link:focus { visibility: visible; }

/* Bodegas: one-screen editorial layout, with the existing hover/focus previews. */
@media (min-width: 768px) {
  .bodegas-page { height: 100dvh; min-height: 0 !important; }
  .bodegas-page > main { min-height: 0; padding-top: 100px !important; }
  .bodegas-page .bodegas-hero-grid { min-height: 0 !important; padding: 16px 0 22px !important; grid-template-columns: .85fr 1.35fr 1fr !important; gap: clamp(18px, 2.8vw, 48px) !important; }
  .bodegas-page .bodegas-list { display: flex !important; grid-column: auto !important; gap: clamp(5px, 1.6vh, 20px) !important; justify-content: space-between; max-height: 100%; }
  .bodegas-page .bodegas-list a { flex-shrink: 1; }
  .bodegas-page .bodegas-list a > div > div { font-size: clamp(15px, 1.4vw, 20px) !important; margin-bottom: 3px !important; }
  .bodegas-page .bodegas-list p { font-size: clamp(11px, 1.05vw, 15px) !important; line-height: 1.3 !important; }
  .bodegas-page .bodegas-copy h1 { font-size: clamp(27px, 3vw, 44px) !important; }
  .bodegas-page .bodegas-copy p { font-size: clamp(13px, 1.15vw, 17px) !important; margin-bottom: 0 !important; }
  .bodegas-page .bodegas-artwork { min-width: 0; height: 100%; min-height: 0; }
  .bodegas-page .bodegas-artwork img { max-height: 100%; object-fit: contain !important; }
  .bodegas-page .bodegas-artwork img:first-of-type { width: 100% !important; }
  .bodegas-page > footer { flex-shrink: 0; padding: 12px 4vw !important; }
}
@media (min-width: 768px) and (max-height: 700px) {
  .bodegas-page > header { height: 76px !important; }
  .bodegas-page > main { padding-top: 76px !important; }
  .bodegas-page .bodegas-list { gap: 5px !important; }
  .bodegas-page .bodegas-list a > div > div { font-size: 15px !important; }
  .bodegas-page .bodegas-list p { font-size: 11px !important; }
}

/* Frontal gold mark and circular, feathered winery portraits. */
.bodegas-page, .bodegas-page > main { background: #000 !important; }
.bodegas-page .bodegas-hero-grid > div:not([class]),
.bodegas-page .bodegas-artwork > div { display: none !important; }
.bodegas-page .bodegas-artwork { aspect-ratio: 1; width: 100%; height: auto !important; max-height: 100%; align-self: center; }
.bodegas-page .bodegas-artwork img { width: 100% !important; height: auto !important; aspect-ratio: 1; max-width: 100% !important; max-height: none !important; object-position: center; filter: none !important; }
.bodegas-page .bodegas-artwork img:first-of-type { object-fit: contain !important; }
.bodegas-page .bodegas-artwork img:not(:first-of-type) { height: 100% !important; object-fit: cover !important; border-radius: 50% !important; border: 0 !important; padding: 0 !important; background: none !important; mask-image: radial-gradient(circle closest-side, #000 58%, rgba(0,0,0,.94) 68%, rgba(0,0,0,.55) 83%, transparent 100%) !important; -webkit-mask-image: radial-gradient(circle closest-side, #000 58%, rgba(0,0,0,.94) 68%, rgba(0,0,0,.55) 83%, transparent 100%) !important; }
.bodega-thumbnail { display: none; }
@media (max-width: 767px) {
  .bodegas-page .bodegas-artwork { display: none !important; }
  .bodegas-page .bodegas-hero-grid { padding: 100px 0 24px !important; gap: 22px !important; }
  .bodegas-page .bodegas-copy { max-width: none !important; }
  .bodegas-page .bodegas-copy h1 { font-size: 30px !important; }
  .bodegas-page .bodegas-copy > div { display: none !important; }
  .bodegas-page .bodegas-copy p { font-size: 14px !important; margin: 12px 0 0 !important; }
  .bodegas-page .bodegas-list { display: flex !important; gap: 12px !important; }
  .bodegas-page .bodegas-list a { align-items: center; gap: 12px !important; transform: none !important; }
  .bodegas-page .bodega-thumbnail { display: block; width: 58px; height: 58px; flex: 0 0 58px; object-fit: cover; object-position: center; border-radius: 50%; mask-image: radial-gradient(circle closest-side, #000 73%, transparent 100%); }
  .bodegas-page .bodegas-list a > div > div { font-size: 17px !important; }
  .bodegas-page .bodegas-list p { font-size: 12px !important; }
}
@media (max-width: 767px) {
 .bodegas-page .bodegas-hero-grid { align-content: start; min-height: 0 !important; grid-template-rows: auto auto; }
}

/* A restrained coin entrance; the final mark remains perfectly frontal. */
.bodegas-page .bodegas-artwork { perspective: 1100px; }
@media (min-width: 768px) and (prefers-reduced-motion: no-preference) {
 .bodegas-emblem.is-entering { animation: bodegas-coin-entry 1.25s cubic-bezier(.16,1,.3,1) both; backface-visibility: hidden; transform-origin: center; }
}
@keyframes bodegas-coin-entry {
 0% { opacity: 0; transform: rotateY(-180deg) scale(.94); }
 35% { opacity: .35; }
 100% { opacity: 1; transform: rotateY(0deg) scale(1); }
}
.bodegas-page .bodegas-list a > div > div::after { content: '\2197'; display: inline-block; margin-left: .55em; font-family: var(--vv-font-sans); font-size: .75em; opacity: .65; transition: transform .25s ease, opacity .25s ease; }
.bodegas-page .bodegas-list a:hover > div > div::after,
.bodegas-page .bodegas-list a:focus-visible > div > div::after { transform: translate(2px,-2px); opacity: 1; }
.bodegas-page .bodegas-list a:hover > div > div,
.bodegas-page .bodegas-list a:focus-visible > div > div { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 5px; }
@media (prefers-reduced-motion: reduce) { .bodegas-page .bodegas-list a > div > div::after { transition: none; } }

/* Values unfold gently on hover, tap and keyboard activation. */
.nosotros-page .nosotros-value details { interpolate-size: allow-keywords; }
.nosotros-page .nosotros-value details::details-content {
  block-size: 0;
  overflow: hidden;
  opacity: 0;
  transition: block-size 600ms cubic-bezier(.22, 1, .36, 1), opacity 450ms ease, content-visibility 600ms allow-discrete;
}
.nosotros-page .nosotros-value details[open]::details-content {
  block-size: auto;
  opacity: 1;
}
.nosotros-page .nosotros-value__title::after {
  transition: transform 550ms cubic-bezier(.22, 1, .36, 1);
}
@media (hover: hover) and (pointer: fine) {
  .nosotros-page .nosotros-value details:hover::details-content {
    block-size: auto;
    opacity: 1;
    content-visibility: visible;
  }
}
@media (prefers-reduced-motion: reduce) {
  .nosotros-page .nosotros-value details::details-content,
  .nosotros-page .nosotros-value__title::after { transition: none; }
}

/* Keep the wine identity together at the top of its column. */
.wine-detail-page .wine-detail-intro { justify-content: flex-start !important; align-self: stretch; }
.wine-detail-page .wine-detail-intro > a:first-child { margin-bottom: 1rem !important; }
.wine-detail-page .wine-detail-intro > a:first-child + div { margin-bottom: .65rem !important; }
.wine-detail-page .wine-detail-intro h1 { margin-top: 0 !important; }
.wine-detail-page .wine-detail-intro a:hover,
.wine-detail-page .wine-detail-intro a:focus-visible { text-decoration: underline !important; text-decoration-thickness: 1px !important; text-underline-offset: 5px; }
.wine-detail-page .wine-detail-bottle { flex-direction: column; gap: 12px; }
.wine-eco-note { display: flex; align-items: center; justify-content: center; gap: 10px; margin: 0; position: relative; z-index: 1; max-width: 260px; }
.wine-detail-page .wine-eco-note .wine-eco-badge { position: static; width: 64px; height: auto; flex: 0 0 64px; border-radius: 50%; mask-image: radial-gradient(ellipse closest-side, #000 65%, transparent 100%); }
.wine-eco-note figcaption { display: flex; flex-direction: column; gap: 4px; }
.wine-eco-note figcaption span { font-family: var(--vv-font-serif); font-size: 15px; color: var(--vv-gold); }
.wine-eco-note figcaption small { font-family: var(--vv-font-sans); font-size: 10px; font-weight: 300; line-height: 1.5; color: var(--vv-beige); max-width: 150px; }
@media (max-width: 767px) { .wine-detail-page .wine-detail-bottle { gap: 8px; } }

/* Full organic leaf on its own green disc, without fading the certification mark. */
.wine-detail-page .wine-eco-note .wine-eco-badge {
  width: 64px;
  height: 64px;
  box-sizing: border-box;
  padding: 6px;
  object-fit: contain;
  background: rgb(169, 201, 56);
  border-radius: 50%;
  mask-image: none;
  -webkit-mask-image: none;
  box-shadow: 0 0 16px rgb(169 201 56 / .08);
}
/* Give the back link breathing room before the wine identity. */
.wine-detail-page .wine-detail-intro > a:first-child { margin-bottom: 0 !important; }
.wine-detail-page .wine-detail-intro > a:first-child + div {
  padding-top: clamp(28px, 4.5vh, 48px);
  margin-bottom: .85rem !important;
}
/* Soft champagne light stays behind the bottle, with no harsh edges. */
.wine-detail-page .wine-detail-bottle > div:first-child {
  width: clamp(240px, 27vw, 380px) !important;
  height: 78% !important;
  max-height: 580px;
  background: radial-gradient(ellipse at center, rgb(204 160 80 / .19) 0%, rgb(185 138 59 / .10) 32%, rgb(166 118 43 / .035) 54%, transparent 73%) !important;
  filter: blur(14px);
}

/* Compact desktop/tablet footer: reserve one row for legal and contact links. */
@media (min-width: 768px) and (max-width: 1399px) {
 footer[aria-label="VinoVid footer"] { padding: 16px 24px !important; }
 footer[aria-label="VinoVid footer"] > div > div { flex-wrap: nowrap !important; gap: 16px !important; }
 footer[aria-label="VinoVid footer"] > div > div > p { display: none !important; }
 footer[aria-label="VinoVid footer"] > div > div > div:first-child { flex-wrap: nowrap !important; gap: 18px !important; }
 footer[aria-label="VinoVid footer"] > div > div > div { white-space: nowrap; }
}
@media (min-width: 768px) and (max-width: 999px) {
 footer[aria-label="VinoVid footer"] { padding-inline: 16px !important; }
 footer[aria-label="VinoVid footer"] > div > div,
 footer[aria-label="VinoVid footer"] > div > div > div,
 footer[aria-label="VinoVid footer"] > div > div > div:first-child,
 footer[aria-label="VinoVid footer"] > div > div > div:first-child > div { gap: 10px !important; }
 footer[aria-label="VinoVid footer"] p,
 footer[aria-label="VinoVid footer"] a { font-size: 9px !important; letter-spacing: .02em !important; }
}

/* Black backdrop with the fine architectural grid used in About. */
.bodegas-page { position: relative; isolation: isolate; }
.bodegas-page > main { position: relative; isolation: isolate; }
.bodegas-page > main::before {
 content: ''; position: absolute; inset: 0; z-index: -1; pointer-events: none;
 background-color: #000;
 background-image: repeating-linear-gradient(0deg, transparent, transparent 48px, rgb(var(--vv-gold-rgb) / .075) 49px, rgb(var(--vv-gold-rgb) / .075) 50px), repeating-linear-gradient(90deg, transparent, transparent 68px, rgb(var(--vv-gold-rgb) / .06) 69px, rgb(var(--vv-gold-rgb) / .06) 70px);
 mask-image: radial-gradient(ellipse at center, #000 35%, transparent 85%);
}
.bodegas-page .bodegas-artwork { mix-blend-mode: screen; }

/* Consistent quiet navigation with a small directional movement. */
.wine-detail-intro a,
#root a[href="/bodegas"]:has(> svg) {
 color: #8e8679 !important;
 width: fit-content;
 transition: color 300ms ease, transform 350ms cubic-bezier(.22,1,.36,1) !important;
 text-underline-offset: 5px;
}
.wine-detail-intro a:hover,
.wine-detail-intro a:focus-visible,
#root a[href="/bodegas"]:has(> svg):hover,
#root a[href="/bodegas"]:has(> svg):focus-visible {
 color: var(--vv-gold) !important;
 text-decoration: underline !important;
 text-decoration-thickness: 1px !important;
}
@media (hover: hover) and (pointer: fine) {
 .wine-detail-intro > a:first-child:hover,
 #root a[href="/bodegas"]:has(> svg):hover { transform: translateX(-4px); }
 .wine-detail-story a:hover { transform: translateX(4px); }
}
@media (prefers-reduced-motion: reduce) {
 .wine-detail-intro a,
 #root a[href="/bodegas"]:has(> svg) { transition: none !important; transform: none !important; }
}

/* Lightweight home entrance: animate only opacity and transform, once. */
@media (prefers-reduced-motion: no-preference) {
 .home-hero__image { animation: home-art-arrive 1800ms cubic-bezier(.16,1,.3,1) both; transform-origin: 70% 50%; }
 .home-hero .home-hero__title { animation: home-copy-arrive 900ms ease-out 100ms both !important; }
 .home-hero .vv-gold-divider { animation: home-copy-arrive 900ms ease-out 200ms both !important; }
 .home-hero .home-hero__description { animation: home-copy-arrive 900ms ease-out 300ms both !important; }
 .home-hero .home-hero__signature { animation: home-copy-arrive 900ms ease-out 400ms both !important; }
}
@keyframes home-art-arrive {
 0% { opacity: .65; transform: translateY(12px) scale(1.035); }
 65% { opacity: 1; transform: translateY(-3px) scale(1.006); }
 100% { opacity: 1; transform: translateY(0) scale(1); }
}
@keyframes home-copy-arrive {
 from { translate: 0 12px; }
 to { translate: 0 0; }
}
@media (prefers-reduced-motion: reduce) {
 .home-hero__image { animation: none; transform: none; opacity: 1; }
}

/* Draw the diagonal arrow instead of using a character that phones render as emoji. */
.bodegas-page .bodegas-list a > div > div::after {
 content: '';
 width: 10px;
 height: 10px;
 vertical-align: .04em;
 background: currentColor;
 -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2 10 10 2M2 2h8v8' fill='none' stroke='black' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
 mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2 10 10 2M2 2h8v8' fill='none' stroke='black' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* Normalize visible bottle height while preserving each original aspect ratio. */
.wine-card .wine-card-img { position: relative; height: 260px !important; flex: 0 0 260px; }
.wine-card .wine-card-img img { position: absolute; left: 50%; width: auto !important; max-width: none !important; object-fit: contain; }
.wine-card .wine-card-img img[src$="/algairen-macabeo.webp"] { height: 101.38122% !important; top: -0.82873%; transform: translateX(-50.0%); }
.wine-card .wine-card-img img[src$="/algairen-tempranillo.webp"] { height: 101.60858% !important; top: -0.80429%; transform: translateX(-50.0%); }
.wine-card .wine-card-img img[src$="/cantos-valpiedra-crianza.webp"] { height: 101.19617% !important; top: -0.7177%; transform: translateX(-50.0%); }
.wine-card .wine-card-img img[src$="/casa-brancaia-chianti-classico-riserva.webp"] { height: 100.87527% !important; top: -0.43764%; transform: translateX(-50.0%); }
.wine-card .wine-card-img img[src$="/casa-brancaia-chianti-classico.webp"] { height: 101.0989% !important; top: -0.65934%; transform: translateX(-50.0%); }
.wine-card .wine-card-img img[src$="/casa-brancaia-il-blu.webp"] { height: 100.88889% !important; top: -0.44444%; transform: translateX(-50.0%); }
.wine-card .wine-card-img img[src$="/casa-brancaia-ilatraia.webp"] { height: 100.94563% !important; top: -0.47281%; transform: translateX(-50.0%); }
.wine-card .wine-card-img img[src$="/casa-brancaia-no2-maremma.webp"] { height: 100.87719% !important; top: -0.4386%; transform: translateX(-50.42017%); }
.wine-card .wine-card-img img[src$="/casa-brancaia-tre.webp"] { height: 101.11111% !important; top: -0.44444%; transform: translateX(-50.0%); }
.wine-card .wine-card-img img[src$="/emina-albarino.webp"] { height: 101.11732% !important; top: -0.55866%; transform: translateX(-50.0%); }
.wine-card .wine-card-img img[src$="/emina-crianza.webp"] { height: 101.33333% !important; top: -0.66667%; transform: translateX(-50.0%); }
.wine-card .wine-card-img img[src$="/emina-emocion.webp"] { height: 101.31579% !important; top: -0.65789%; transform: translateX(-50.0%); }
.wine-card .wine-card-img img[src$="/emina-pasion.webp"] { height: 101.23762% !important; top: -0.49505%; transform: translateX(-50.0%); }
.wine-card .wine-card-img img[src$="/emina-verdejo-fermentado.webp"] { height: 100.90293% !important; top: -0.45147%; transform: translateX(-50.38462%); }
.wine-card .wine-card-img img[src$="/emina-verdejo.webp"] { height: 100.84034% !important; top: -0.42017%; transform: translateX(-50.89286%); }
.wine-card .wine-card-img img[src$="/finca-valpiedra-reserva.webp"] { height: 101.45278% !important; top: -0.72639%; transform: translateX(-50.44643%); }
.wine-card .wine-card-img img[src$="/gran-viu-seleccion.webp"] { height: 103.21761% !important; top: -0.42337%; transform: translateX(-48.125%); }
.wine-card .wine-card-img img[src$="/infinitus-moscatel.webp"] { height: 100.55147% !important; top: -0.36765%; transform: translateX(-49.65035%); }
.wine-card .wine-card-img img[src$="/menguante-garnacha.webp"] { height: 101.25313% !important; top: -0.50125%; transform: translateX(-50.0%); }
.wine-card .wine-card-img img[src$="/menguante-rosado.webp"] { height: 101.64835% !important; top: -0.82418%; transform: translateX(-49.46237%); }
.wine-card .wine-card-img img[src$="/menguante-seleccion-garnacha-blanca.webp"] { height: 105.48523% !important; top: -0.33755%; transform: translateX(-47.10938%); }
.wine-card .wine-card-img img[src$="/menguante-seleccion-garnacha.webp"] { height: 104.28571% !important; top: -0.47619%; transform: translateX(-50.9375%); }
.wine-card .wine-card-img img[src$="/menguante-seleccion-vidadillo.webp"] { height: 105.72998% !important; top: -0.15699%; transform: translateX(-56.25%); }
.wine-card .wine-card-img img[src$="/menguante-tempranillo.webp"] { height: 101.25313% !important; top: -0.50125%; transform: translateX(-50.0%); }
.wine-card .wine-card-img img[src$="/ophalum.webp"] { height: 101.14943% !important; top: -0.57471%; transform: translateX(-50.0%); }
.wine-card .wine-card-img img[src$="/rento.webp"] { height: 100.0% !important; top: 0.0%; transform: translateX(-50.0%); }
.wine-card .wine-card-img img[src$="/san-clodio.webp"] { height: 101.14068% !important; top: -0.57034%; transform: translateX(-49.58678%); }
.wine-card .wine-card-img img[src$="/vina-bujanda-crianza.webp"] { height: 101.19904% !important; top: -0.47962%; transform: translateX(-50.46296%); }
.wine-card .wine-card-img img[src$="/vina-bujanda-reserva.webp"] { height: 101.27551% !important; top: -0.76531%; transform: translateX(-50.0%); }
.wine-card .wine-card-img img[src$="/vina-bujanda-tempranillo.webp"] { height: 101.43541% !important; top: -0.7177%; transform: translateX(-50.0%); }
.wine-card .wine-card-img img[src$="/vina-bujanda-viura.webp"] { height: 101.27551% !important; top: -0.76531%; transform: translateX(-50.0%); }
.wine-card { height: 475px !important; }

/* Client-supplied full logo, unchanged, with light only behind the artwork. */
.bodegas-page .bodegas-artwork { mix-blend-mode: normal; perspective: none; }
.bodegas-page .bodegas-artwork img:first-of-type { mix-blend-mode: normal; aspect-ratio: auto; width: 88% !important; height: auto !important; }
.bodegas-page .bodegas-artwork:has(.bodegas-emblem.is-entering)::before {
 content: ''; position: absolute; inset: 4%; pointer-events: none;
 background: radial-gradient(ellipse at center, rgb(var(--vv-gold-rgb) / .12), rgb(var(--vv-gold-rgb) / .035) 46%, transparent 72%);
}
@media (min-width: 768px) and (prefers-reduced-motion: no-preference) {
 .bodegas-page .bodegas-emblem.is-entering { animation: bodegas-original-entry 850ms ease-out both; }
}
@keyframes bodegas-original-entry {
 from { opacity: 0; translate: 0 8px; }
 to { opacity: 1; translate: 0 0; }
}

/* Original full brand signature, separate from the unbranded vine background. */
.home-hero__signature { text-align: center; }
.home-signature-logo { display: block; width: clamp(100px, 10vw, 155px); height: auto; margin: 0 auto 12px; object-fit: contain; filter: none; }
@media (max-width: 767px) {
 .home-signature-logo { width: 100px; }
 .home-hero__signature { text-align: center; }
}


/* Winery names surround the original identity, inspired by the supplied reference. */
@media (min-width: 768px) {
 .bodegas-page .bodegas-hero-grid { display: block !important; padding: 0 !important; }
 .bodegas-page .bodegas-copy { position: absolute !important; top: 12px; left: 0; width: 100%; max-width: none !important; text-align: center; }
 .bodegas-page .bodegas-copy > div { display: none !important; }
 .bodegas-page .bodegas-copy h1 { font-size: clamp(23px, 2.2vw, 36px) !important; line-height: 1.2 !important; }
 .bodegas-page .bodegas-copy h1 br { display: none; }
 .bodegas-page .bodegas-copy h1 em { margin-left: .25em; }
 .bodegas-page .bodegas-copy p { max-width: 650px; margin: 10px auto 0 !important; font-size: clamp(12px, .95vw, 15px) !important; line-height: 1.5 !important; }
 .bodegas-page .bodegas-artwork { position: absolute !important; left: 50%; top: 62%; transform: translate(-50%, -50%); width: min(30vw, calc(100dvh - 360px)); max-height: none; }
 .bodegas-page .bodegas-artwork img:first-of-type { width: 100% !important; }
 .bodegas-page .bodegas-list { position: absolute !important; inset: 0; width: 100%; height: 100%; display: block !important; pointer-events: none; }
 .bodegas-page .bodegas-list a { position: absolute; width: 27%; justify-content: center; text-align: center; pointer-events: auto; translate: -50% -50%; padding: 8px 4px; }
 .bodegas-page .bodegas-list a > div > div { font-size: clamp(16px, 1.45vw, 24px) !important; line-height: 1.25 !important; }
 .bodegas-page .bodegas-list p { font-size: clamp(11px, .95vw, 15px) !important; line-height: 1.4 !important; max-width: 310px; margin-inline: auto !important; }
 .bodegas-page .bodegas-list a:nth-child(1) { left: 20%; top: 28%; }
 .bodegas-page .bodegas-list a:nth-child(2) { left: 50%; top: 25%; }
 .bodegas-page .bodegas-list a:nth-child(3) { left: 80%; top: 28%; }
 .bodegas-page .bodegas-list a:nth-child(4) { left: 16%; top: 49%; }
 .bodegas-page .bodegas-list a:nth-child(5) { left: 84%; top: 49%; }
 .bodegas-page .bodegas-list a:nth-child(6) { left: 16%; top: 69%; }
 .bodegas-page .bodegas-list a:nth-child(7) { left: 84%; top: 69%; }
 .bodegas-page .bodegas-list a:nth-child(8) { left: 25%; top: 89%; }
 .bodegas-page .bodegas-list a:nth-child(9) { left: 75%; top: 89%; }
}

/* Bound the central artwork independently of large monitor dimensions. */
@media (min-width: 768px) {
 .bodegas-page .bodegas-copy { top: 14px; }
 .bodegas-page .bodegas-copy h1 { font-size: clamp(32px, 3.2vw, 52px) !important; line-height: 1.15 !important; }
 .bodegas-page .bodegas-copy p { font-size: clamp(13px, 1.05vw, 17px) !important; max-width: 760px; margin-top: 12px !important; }
 .bodegas-page .bodegas-artwork { top: 64%; width: min(27vw, 420px, calc(45dvh - 70px)) !important; }
 .bodegas-page .bodegas-list a:nth-child(1),
 .bodegas-page .bodegas-list a:nth-child(3) { top: 32%; }
 .bodegas-page .bodegas-list a:nth-child(2) { top: 30%; }
}
@media (min-width: 768px) and (max-height: 650px) {
 .bodegas-page .bodegas-copy h1 { font-size: 30px !important; }
 .bodegas-page .bodegas-copy p { font-size: 12px !important; max-width: 650px; margin-top: 8px !important; }
 .bodegas-page .bodegas-list a > div > div { font-size: 15px !important; }
 .bodegas-page .bodegas-list p { font-size: 10px !important; }
}

/* A clearer upper arc, with focus on the winery being explored. */
@media (min-width: 768px) {
 .bodegas-page .bodegas-list a:nth-child(2) { top: 25%; }
}
@media (min-width: 768px) and (hover: hover) and (pointer: fine) {
 .bodegas-page .bodegas-list a > div > div,
 .bodegas-page .bodegas-list a p { transition: color 280ms ease, opacity 280ms ease !important; }
 .bodegas-page .bodegas-list[data-active-winery] a:not([data-active="true"]) > div > div,
 .bodegas-page .bodegas-list[data-active-winery] a:not([data-active="true"]) p { color: #77736c !important; opacity: .65; }
 .bodegas-page .bodegas-list a[data-active="true"] > div > div { color: var(--vv-gold-light, #dec18d) !important; opacity: 1; }
 .bodegas-page .bodegas-list a[data-active="true"] p { color: var(--vv-cream) !important; opacity: 1; }
}
@media (prefers-reduced-motion: reduce) {
 .bodegas-page .bodegas-list a > div > div,
 .bodegas-page .bodegas-list a p { transition: none !important; }
}

/* Crossfade between wineries; delayed return is managed by the component. */
@media (min-width: 768px) and (prefers-reduced-motion: no-preference) {
 .bodegas-page .bodegas-artwork img { transition: opacity 1200ms ease, transform 1200ms ease !important; }
 .bodegas-page .bodegas-emblem.is-entering { animation: none !important; }
}

/* Open upper arc: identity near the heading, Bujanda at the lower center. */
@media (min-width: 768px) {
 .bodegas-page .bodegas-artwork { top: 48%; }
 .bodegas-page .bodegas-list a:nth-child(2) { left: 50%; top: 90%; }
 .bodegas-page .bodegas-list a:nth-child(8) { left: 25%; top: 82%; }
 .bodegas-page .bodegas-list a:nth-child(9) { left: 75%; top: 82%; }
}

/* Even spacing along the lower arc between the sides and Bujanda. */
@media (min-width: 768px) {
 .bodegas-page .bodegas-list a:nth-child(8) { left: 33%; top: 82%; }
 .bodegas-page .bodegas-list a:nth-child(9) { left: 67%; top: 82%; }
}

/* Slow, low-contrast breathing in the winery grid; no layout movement. */
@media (prefers-reduced-motion: no-preference) {
 .bodegas-page > main::before { animation: winery-grid-breathe 14s ease-in-out infinite; }
}
@keyframes winery-grid-breathe {
 0%, 100% { opacity: .45; }
 50% { opacity: 1; }
}
@media (prefers-reduced-motion: reduce) {
 .bodegas-page > main::before { animation: none; opacity: 1; }
}

/* Names emerge from the logo using only transform and opacity. */
@media (min-width: 768px) and (prefers-reduced-motion: no-preference) {
 .bodegas-page .bodegas-list { container-type: size; transition: none !important; }
 .bodegas-page .bodegas-list a:nth-child(1) { --entry-x: 30cqw; --entry-y: 16cqh; --entry-delay: .35s; }
 .bodegas-page .bodegas-list a:nth-child(3) { --entry-x: -30cqw; --entry-y: 16cqh; --entry-delay: .49s; }
 .bodegas-page .bodegas-list a:nth-child(4) { --entry-x: 34cqw; --entry-y: -1cqh; --entry-delay: .63s; }
 .bodegas-page .bodegas-list a:nth-child(5) { --entry-x: -34cqw; --entry-y: -1cqh; --entry-delay: .77s; }
 .bodegas-page .bodegas-list a:nth-child(6) { --entry-x: 34cqw; --entry-y: -21cqh; --entry-delay: .91s; }
 .bodegas-page .bodegas-list a:nth-child(7) { --entry-x: -34cqw; --entry-y: -21cqh; --entry-delay: 1.05s; }
 .bodegas-page .bodegas-list a:nth-child(8) { --entry-x: 17cqw; --entry-y: -34cqh; --entry-delay: 1.19s; }
 .bodegas-page .bodegas-list a:nth-child(9) { --entry-x: -17cqw; --entry-y: -34cqh; --entry-delay: 1.33s; }
 .bodegas-page .bodegas-list a:nth-child(2) { --entry-x: 0cqw; --entry-y: -42cqh; --entry-delay: 1.47s; }
 .bodegas-page .bodegas-list[data-entered="true"] a {
  animation: winery-from-center 2.2s cubic-bezier(.22, .61, .36, 1) var(--entry-delay) backwards;
 }
}
@keyframes winery-from-center {
 from { opacity: 0; transform: translate(var(--entry-x), var(--entry-y)) scale(.72); }
 to { opacity: 1; transform: translate(0, 0) scale(1); }
}

/* Keep the central identity still until the last winery reaches its place. */
@media (min-width: 768px) and (prefers-reduced-motion: no-preference) {
 .bodegas-page .bodegas-list[data-intro-ready="false"] a { pointer-events: none !important; }
}

/* A slow approach to the vine, with a seamless, equally gentle return. */
@media (prefers-reduced-motion: no-preference) {
 html { scroll-behavior: smooth; }
 .vinos-sidebar::before {
  transform-origin: 70% 50%;
  animation: vinos-vine-drift 28s ease-in-out infinite alternate;
 }
}
@keyframes vinos-vine-drift {
 from { transform: scale(1); }
 to { transform: scale(1.12); }
}
@media (prefers-reduced-motion: reduce) {
 .vinos-sidebar::before { animation: none; transform: none; }
}

/* One shared footer rhythm across every route. */
#root footer[aria-label="VinoVid footer"] {
 box-sizing: border-box;
 flex-shrink: 0;
 display: flex;
 align-items: center;
 padding: 12px clamp(16px, 4vw, 64px) !important;
}
#root footer[aria-label="VinoVid footer"] > div { width: 100%; }
#root footer[aria-label="VinoVid footer"] p { margin: 0 !important; line-height: 1.5; }
#root footer[aria-label="VinoVid footer"] a { display: inline-flex; align-items: center; line-height: 1.5; }
#root footer[aria-label="VinoVid footer"] svg { display: block; flex-shrink: 0; }
@media (min-width: 768px) {
 #root footer[aria-label="VinoVid footer"] > div > div,
 #root footer[aria-label="VinoVid footer"] > div > div > div { align-items: center !important; }
}
@media (min-width: 768px) and (max-width: 999px) {
 #root footer[aria-label="VinoVid footer"] { padding-inline: 16px !important; }
}

/* About: open editorial composition and an interactive circle of values. */
#mision-vision-valores { border-bottom: 0 !important; }
#mision-vision-valores > .vv-grain { display: none; }
#mision-vision-valores .mvv-grid { max-width: 1440px; margin-inline: auto; gap: clamp(32px, 6vw, 90px); padding-top: 90px; }
#mision-vision-valores .mvv-block { background: transparent; border: 0 !important; padding: 0 !important; gap: 28px !important; }
#mision-vision-valores .mvv-block > div:first-child > div { display: none !important; }
#mision-vision-valores .mvv-block h2 { font-family: var(--vv-font-serif) !important; font-size: clamp(34px, 3.5vw, 48px) !important; letter-spacing: -.02em !important; text-transform: none !important; font-weight: 400 !important; line-height: 1.1; }
#mision-vision-valores .mvv-block > p { font-size: 14px !important; line-height: 1.95 !important; max-width: 510px; margin: 0; }
#mision-vision-valores .mvv-block > p .nosotros-copy-lead { display: block; font-family: var(--vv-font-serif); font-size: clamp(22px, 2.2vw, 29px); line-height: 1.45; color: var(--vv-cream); margin-bottom: 22px; }
#mision-vision-valores .mvv-values { margin-top: 35px; padding-top: 65px !important; padding-bottom: 65px !important; position: relative; }
#mision-vision-valores .mvv-values::before { content: ''; position: absolute; top: 0; left: 30%; right: 30%; height: 1px; background: linear-gradient(90deg, transparent, rgb(var(--vv-gold-rgb) / .35), transparent); }
#mision-vision-valores .mvv-values > div:first-child { justify-content: center; }
.vv-values-instruction { text-align: center; font-size: 13px; letter-spacing: .08em; color: var(--vv-beige); margin: -8px 0 10px; }
.vv-values-orbit { position: relative; width: 100%; max-width: 1120px; height: 640px; margin: 0 auto; }
.vv-values-ring { position: absolute; width: 430px; height: 430px; left: 50%; top: 50%; transform: translate(-50%,-50%); border: 1px solid rgb(var(--vv-gold-rgb) / .22); border-radius: 50%; background: radial-gradient(circle, rgb(var(--vv-gold-rgb) / .045), transparent 70%); pointer-events: none; }
.vv-values-ring::after { content: ''; position: absolute; inset: 12px; border: 1px solid rgb(var(--vv-gold-rgb) / .06); border-radius: inherit; }
.vv-values-center { position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); width: 300px; text-align: center; }
.vv-value-kicker { display: block; font-size: 9px; letter-spacing: .25em; color: var(--vv-gold); margin-bottom: 22px; }
.vv-values-center h3 { font: 400 32px/1.15 var(--vv-font-serif); color: var(--vv-cream); margin: 0 0 20px; }
.vv-values-center p { font-size: 13px; font-weight: 300; line-height: 1.85; color: var(--vv-beige); margin: 0; }
.vv-value-hotspot { position: absolute; display: flex; flex-direction: column; align-items: center; gap: 12px; translate: -50% -50%; width: 190px; min-height: 60px; padding: 10px; border: 0; background: transparent; cursor: pointer; color: var(--vv-beige); font: 400 22px/1.2 var(--vv-font-serif); transition: color .5s ease; }
.vv-value-point { display: block; width: 7px; height: 7px; border: 1px solid var(--vv-gold); border-radius: 50%; transition: background .5s ease, box-shadow .5s ease; }
.vv-value-hotspot[aria-pressed="true"], .vv-value-hotspot:hover { color: var(--vv-gold); }
.vv-value-hotspot[aria-pressed="true"] .vv-value-point { background: var(--vv-gold); box-shadow: 0 0 0 6px rgb(var(--vv-gold-rgb) / .08); }
.vv-value-hotspot:focus-visible { outline: 1px solid var(--vv-gold); outline-offset: 4px; border-radius: 3px; }
.vv-value-hotspot:nth-child(1) { left: 50%; top: 5%; }
.vv-value-hotspot:nth-child(2) { left: 80%; top: 19%; }
.vv-value-hotspot:nth-child(3) { left: 88%; top: 50%; }
.vv-value-hotspot:nth-child(4) { left: 80%; top: 81%; }
.vv-value-hotspot:nth-child(5) { left: 50%; top: 95%; }
.vv-value-hotspot:nth-child(6) { left: 20%; top: 81%; }
.vv-value-hotspot:nth-child(7) { left: 12%; top: 50%; }
.vv-value-hotspot:nth-child(8) { left: 20%; top: 19%; }
.nosotros-page .vv-values-mobile { display: none; }
@media (prefers-reduced-motion: no-preference) {
 .vv-value-copy { animation: vv-value-reveal .65s ease both; }
}
@keyframes vv-value-reveal { from { opacity: 0; transform: translateY(7px); } to { opacity: 1; transform: translateY(0); } }
@media (min-width: 901px) and (max-width: 1100px) {
 .vv-values-ring { width: 360px; height: 360px; }
 .vv-values-center { width: 260px; }
 .vv-values-center h3 { font-size: 28px; }
 .vv-value-hotspot { width: 160px; font-size: 20px; }
}
@media (max-width: 900px) {
 #mision-vision-valores .mvv-grid { padding-top: 55px; gap: 55px; }
 #mision-vision-valores .mvv-block > p { max-width: none; }
 #mision-vision-valores .mvv-values { margin-top: 0; padding-top: 50px !important; padding-bottom: 50px !important; }
 .vv-values-orbit { display: none; }
 .nosotros-page .vv-values-mobile { display: block; max-width: 620px; margin: 30px auto 0; }
 .nosotros-page .vv-values-mobile .nosotros-value { border: 0; border-bottom: 1px solid rgb(var(--vv-gold-rgb) / .16); background: transparent; padding: 0; }
 .nosotros-page .vv-values-mobile summary { padding: 22px 0; font: 400 23px/1.25 var(--vv-font-serif); color: var(--vv-gold); }
 .nosotros-page .vv-values-mobile summary::after { width: 6px; height: 6px; margin-right: 4px; }
 .nosotros-page .vv-values-mobile p { padding: 0 26px 24px 0; font-size: 14px; line-height: 1.85; }
}

/* Three chapters within About, with persistent section navigation. */
.nosotros-slides-page .mvv-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); padding-inline: clamp(24px,6vw,90px); }
.vv-about-values-content { width: 100%; padding: 35px clamp(28px,6vw,90px); }
.vv-about-values-content > h2 { font: 400 clamp(32px,3.2vw,46px)/1.15 var(--vv-font-serif); color: var(--vv-gold); text-align: center; margin: 0 0 20px; }
.vv-about-slide-nav { position: fixed; right: 10px; top: 50%; transform: translateY(-50%); z-index: 40; display: flex; flex-direction: column; gap: 8px; }
.vv-about-slide-nav button { position: relative; width: 28px; height: 28px; padding: 0; border: 0; background: transparent; cursor: pointer; }
.vv-about-slide-nav button::after { content: ''; display: block; width: 6px; height: 6px; margin: auto; border: 1px solid var(--vv-gold); border-radius: 50%; transition: background .3s, box-shadow .3s; }
.vv-about-slide-nav button[aria-current]::after { background: var(--vv-gold); box-shadow: 0 0 0 4px rgb(var(--vv-gold-rgb) / .12); }
.vv-about-slide-nav button span { position: absolute; right: 35px; top: 50%; transform: translateY(-50%); padding: 5px 8px; white-space: nowrap; font-size: 11px; background: var(--vv-black); color: var(--vv-gold); opacity: 0; pointer-events: none; }
.vv-about-slide-nav button:hover span, .vv-about-slide-nav button:focus-visible span { opacity: 1; }
.vv-about-slide-nav button:focus-visible { outline: 1px solid var(--vv-gold); border-radius: 50%; }
.nosotros-slides-page .vv-reveal { opacity: 1 !important; transform: none !important; }
@media (min-width: 901px) and (min-height: 650px) {
 html:has(.nosotros-slides-page), body:has(.nosotros-slides-page) { overflow: hidden; }
 .vv-about-slides { position: relative; margin-top: 100px; height: calc(100dvh - 100px); overflow-y: auto; scroll-snap-type: y mandatory; overscroll-behavior: contain; scrollbar-width: none; }
 .vv-about-slides::-webkit-scrollbar { display: none; }
 .vv-about-slide { height: 100%; min-height: 0; scroll-snap-align: start; scroll-snap-stop: always; position: relative; }
 .vv-about-intro .nosotros-hero { height: 100%; min-height: 0 !important; border: 0 !important; }
 .vv-about-intro .nosotros-hero > div:nth-child(2) { padding-block: 28px !important; }
 .vv-about-purpose { display: flex; align-items: center; }
 #mision-vision-valores.vv-about-purpose .mvv-grid { width: 100%; padding-top: 0; padding-bottom: 0; }
 .vv-about-values { display: flex; flex-direction: column; }
 .vv-about-values-content { flex: 1; min-height: 0; display: flex; flex-direction: column; padding-top: 18px; padding-bottom: 22px; }
 .vv-about-values-content > h2 { flex: none; margin-bottom: 14px; }
 .vv-about-values-content .vv-values-experience { flex: 1; min-height: 0; display: flex; flex-direction: column; }
 .vv-about-values-content .vv-values-instruction { flex: none; margin: 0 0 12px; }
 .vv-about-values-content .vv-values-orbit { flex: 1; min-height: 0; height: auto; }
 .vv-about-values-content .vv-values-ring { width: min(350px, 38dvh); height: min(350px, 38dvh); }
 .vv-about-values-content .vv-values-center { width: min(270px, 29dvh); }
 .vv-about-values-content .vv-values-center h3 { font-size: clamp(23px,2.4vw,30px); margin-bottom: 12px; }
 .vv-about-values-content .vv-value-kicker { margin-bottom: 12px; font-size: 8px; }
 .vv-about-values-content .vv-values-center p { font-size: 12px; line-height: 1.65; }
 .vv-about-values-content .vv-value-hotspot { font-size: clamp(17px,1.8vw,22px); min-height: 44px; padding: 5px; gap: 8px; }
 .vv-about-values-content .vv-value-hotspot:nth-child(1) { top: 7%; }
 .vv-about-values-content .vv-value-hotspot:nth-child(5) { top: 93%; }
 .vv-about-values > footer { width: 100%; }
 body:has(.nosotros-slides-page) .vv-back-top { display: none; }
}
@media (max-width: 900px), (max-height: 649px) {
 .vv-about-slides { padding-top: 86px; }
 .vv-about-slide { scroll-margin-top: 86px; }
 .nosotros-slides-page .nosotros-hero { grid-template-columns: 1fr !important; min-height: 0 !important; }
 .nosotros-slides-page .nosotros-visual { min-height: 340px; }
 .nosotros-slides-page .mvv-grid { grid-template-columns: 1fr; padding-block: 55px; }
 .vv-about-slide-nav { right: 1px; }
 .vv-about-slide-nav button { width: 24px; }
 .vv-about-values-content { padding-inline: 28px; }
}

/* A quiet backdrop for each chapter, with the values identity at its heart. */
.vv-about-purpose, .vv-about-values { isolation: isolate; }
.vv-about-purpose::before { content: ''; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: linear-gradient(90deg, var(--vv-black) 8%, transparent 60%, var(--vv-black)), url('/images/site/inicio-vid-sin-logo.png') right center / auto 115% no-repeat; opacity: .13; }
.vv-about-values::before { content: ''; position: absolute; inset: 0; z-index: -1; pointer-events: none; background-image: linear-gradient(rgb(var(--vv-gold-rgb) / .08) 1px, transparent 1px), linear-gradient(90deg, rgb(var(--vv-gold-rgb) / .08) 1px, transparent 1px); background-size: 70px 70px; mask-image: radial-gradient(ellipse at center, black 10%, transparent 76%); }
.vv-values-center-title { font: 400 30px/1.15 var(--vv-font-serif); color: var(--vv-gold); margin: 0 0 22px; }
.vv-values-center-intro { font-style: italic; }
@media (min-width: 901px) {
 .vv-about-values-content > h2, .vv-about-values-content .vv-values-instruction { display: none; }
 .vv-about-values-content .vv-values-ring { width: min(400px, 49dvh); height: min(400px, 49dvh); }
 .vv-about-values-content .vv-values-center { width: min(290px, 36dvh); }
 .vv-about-values-content .vv-values-center h3 { font-size: 23px; margin-bottom: 12px; }
 .vv-about-values-content { padding-top: 32px; padding-bottom: 32px; }
}
@media (max-width: 900px), (max-height: 649px) {
 .vv-about-purpose, .vv-about-values { position: relative; }
}

/* Restrained typography and a signature closing the introduction. */
.nosotros-slides-page .vv-about-purpose strong,
.nosotros-slides-page .nosotros-hero p strong { font-weight: inherit; color: inherit; }
.nosotros-slides-page .nosotros-hero p:first-of-type strong:first-child { font-weight: 600; color: var(--vv-cream); }
.vv-about-signature { display: block; width: fit-content; position: relative; margin-top: 25px; padding-bottom: 15px; color: var(--vv-gold); font: italic 400 clamp(22px,2.1vw,29px)/1.4 var(--vv-font-serif); }
.vv-about-signature::after { content: ''; position: absolute; left: 0; bottom: 0; width: 72%; height: 1px; background: linear-gradient(90deg, var(--vv-gold), rgb(var(--vv-gold-rgb) / .1), transparent); }
.vv-about-values-content .vv-values-ring { box-sizing: border-box; border: clamp(28px,4.9dvh,40px) solid var(--vv-gold); background: transparent; }
.vv-values-ring::after { display: none; }
.vv-values-orbit[data-selected="true"] .vv-value-hotspot:not([aria-pressed="true"]) { color: #77736c; opacity: .5; }
.vv-value-hotspot { transition: color 600ms ease, opacity 600ms ease; }
@media (min-width: 901px) and (min-height: 650px) and (prefers-reduced-motion: no-preference) {
 .vv-about-slide .nosotros-hero, .vv-about-slide .mvv-grid, .vv-about-values-content { transition: opacity 850ms ease; }
 .vv-about-slides.is-travelling .nosotros-hero,
 .vv-about-slides.is-travelling .mvv-grid,
 .vv-about-slides.is-travelling .vv-about-values-content { opacity: .35; }
 .vv-about-purpose .mvv-block { opacity: 0 !important; transform: translateY(22px) !important; transition: opacity 1400ms ease, transform 1600ms cubic-bezier(.22,1,.36,1); }
 .vv-about-purpose.is-arrived .mvv-block { opacity: 1 !important; transform: none !important; }
 .vv-about-purpose.is-arrived .mvv-block:nth-child(2) { transition-delay: 200ms; }
 .vv-about-values-content .vv-values-orbit { container-type: size; }
 .vv-values-orbit[data-entered="false"] .vv-value-hotspot,
 .vv-values-orbit[data-entered="false"] .vv-values-ring,
 .vv-values-orbit[data-entered="false"] .vv-values-center { opacity: 0; }
 .vv-values-orbit[data-ready="false"] .vv-value-hotspot { pointer-events: none; }
 .vv-values-orbit[data-entered="true"] .vv-values-ring { animation: vv-values-ring-arrive 1800ms ease both; }
 .vv-values-orbit[data-entered="true"] .vv-values-center { animation: vv-values-center-arrive 1500ms ease 250ms backwards; }
 .vv-value-hotspot:nth-child(1) { --value-x: 0cqw; --value-y: 43cqh; --value-delay: .3s; }
 .vv-value-hotspot:nth-child(2) { --value-x: -30cqw; --value-y: 31cqh; --value-delay: .42s; }
 .vv-value-hotspot:nth-child(3) { --value-x: -38cqw; --value-y: 0cqh; --value-delay: .54s; }
 .vv-value-hotspot:nth-child(4) { --value-x: -30cqw; --value-y: -31cqh; --value-delay: .66s; }
 .vv-value-hotspot:nth-child(5) { --value-x: 0cqw; --value-y: -43cqh; --value-delay: .78s; }
 .vv-value-hotspot:nth-child(6) { --value-x: 30cqw; --value-y: -31cqh; --value-delay: .9s; }
 .vv-value-hotspot:nth-child(7) { --value-x: 38cqw; --value-y: 0cqh; --value-delay: 1.02s; }
 .vv-value-hotspot:nth-child(8) { --value-x: 30cqw; --value-y: 31cqh; --value-delay: 1.14s; }
 .vv-values-orbit[data-entered="true"] .vv-value-hotspot { animation: vv-values-from-center 2s cubic-bezier(.22,.61,.36,1) var(--value-delay) backwards; }
}
@keyframes vv-values-from-center { from { opacity: 0; transform: translate(var(--value-x),var(--value-y)) scale(.75); } to { opacity: 1; transform: translate(0,0) scale(1); } }
@keyframes vv-values-ring-arrive { from { opacity: 0; transform: translate(-50%,-50%) scale(.88); } to { opacity: 1; transform: translate(-50%,-50%) scale(1); } }
@keyframes vv-values-center-arrive { from { opacity: 0; } to { opacity: 1; } }
@media (min-width: 901px) {
 .vv-about-values-content .vv-values-ring { width: min(400px,54dvh); height: min(400px,54dvh); border-width: clamp(28px,5.4dvh,40px); }
 .vv-about-values-content .vv-values-center { width: min(280px,38dvh); }
 .vv-values-center-title { font-size: clamp(23px,2.4vw,30px); }
}
/* Reserve header space without an outer margin that can scroll on focus. */
@media (min-width: 901px) and (min-height: 650px) {
 .nosotros-slides-page { box-sizing: border-box; height: 100dvh; min-height: 0 !important; padding-top: 100px; }
 .nosotros-slides-page .vv-about-slides { margin-top: 0; }
}

/* Mobile uses continuous reading, with the same left-aligned headings. */
@media (max-width: 900px) {
 .vv-about-slide-nav { display: none; }
 .vv-about-values-content > h2,
 .vv-about-values-content .vv-values-instruction { text-align: left; }
}

/* Values shares the heading scale used by Mission and Vision. */
.nosotros-slides-page .vv-values-center-title,
.nosotros-slides-page .vv-about-values-content > h2 {
 font-size: clamp(34px, 3.5vw, 48px);
 line-height: 1.1;
 font-weight: 400;
 letter-spacing: -.02em;
}
