/* Hero Venezuela — Figma 1440×625 */

.oy-vz-hero {
  --oy-vz-hero-grad: linear-gradient(90deg, #3b93c5 0%, #4ad6ab 98.61%);
  --oy-vz-hero-media-width: 720px;
  --oy-vz-hero-media-right: -6px;
  --oy-vz-hero-photo-nudge: 18px;
  --oy-vz-hero-blob-shift: 8px;
  --oy-vz-hero-blob-shift-y: 1.028;
  position: relative;
  overflow: hidden;
  width: 100%;
  min-height: max(625px, 70vh);
  background: var(--oy-vz-hero-grad);
  font-family: 'Lato', sans-serif;
  color: #fff;
}

.oy-vz-hero,
.oy-vz-hero h1,
.oy-vz-hero p,
.oy-vz-hero a,
.oy-vz-hero span,
.oy-vz-hero strong {
  font-family: 'Lato', sans-serif !important;
}

.oy-vz-hero__decor {
  position: absolute;
  pointer-events: none;
  z-index: 0;
}

.oy-vz-hero__decor--lg {
  left: 0;
  top: 0;
  bottom: 0;
  width: clamp(958px, 72vw, 1320px);
  background-image: url("data:image/svg+xml,%3Csvg width='958' height='625' viewBox='0 0 958 625' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath opacity='0.3' d='M943.616 417.771C916.994 288.002 845.999 168.9 746.6 80.0169C636.556 -19.5312 475.039 -97.7479 324.171 -95.9703C164.428 -94.1926 11.7845 -42.6409 -108.91 64.0181C-247.354 184.898 -329 364.441 -329 547.539C-329 639.976 -309.476 730.637 -272.202 814.186C-197.656 977.728 -45.013 1116.39 130.703 1160.83C150.228 1166.16 210.576 1178.6 290.445 1176.83C411.14 1171.49 503.436 1130.61 554.909 1103.94C482.139 1112.83 363.219 1116.39 228.324 1066.61C191.05 1052.39 148.454 1036.39 100.529 1000.84C-50.3375 888.848 -78.7364 712.861 -84.0611 670.196C-94.7106 597.315 -94.7106 522.653 -69.8617 453.325C-46.7878 383.997 1.13498 321.776 66.8069 289.779C130.703 259.559 207.027 261.336 269.149 291.556C331.271 323.556 377.418 385.773 391.618 453.325C398.718 490.656 396.94 531.54 405.818 568.871C414.692 606.202 439.54 645.31 478.588 650.644C510.536 655.975 544.261 638.199 562.009 611.533C581.535 584.87 586.857 551.092 590.409 519.095C604.609 362.664 530.061 200.897 400.492 112.015C498.113 129.791 586.857 183.12 648.982 261.336C711.104 339.555 741.277 439.103 734.177 538.651C728.852 625.754 689.804 714.638 618.808 764.414C553.135 810.632 462.614 821.297 389.844 789.3C315.297 757.303 260.275 684.418 249.623 604.422C244.298 568.871 247.849 531.54 240.749 495.986C233.65 460.435 214.124 424.881 180.402 414.213C148.454 403.549 111.18 419.547 89.8807 446.214C68.581 472.877 59.707 508.431 54.3812 542.205C34.859 695.082 105.855 856.851 233.65 945.731C386.292 1052.39 585.083 1036.39 741.277 943.954C750.151 938.62 759.026 933.29 767.899 927.956C840.673 879.96 892.146 801.741 922.32 719.972C950.716 641.753 963.142 556.426 956.042 472.877C950.716 458.655 947.168 437.326 943.616 417.771Z' fill='%233188B9'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: left center;
}

.oy-vz-hero__decor--sm {
  right: clamp(-220px, -10vw, -60px);
  top: clamp(-200px, -18vh, -80px);
  width: clamp(520px, 44vw, 820px);
  aspect-ratio: 1;
  height: auto;
  border-radius: 50%;
  background: #3188b9;
  opacity: 0.12;
}

.oy-vz-hero__inner {
  position: relative;
  z-index: 3;
  box-sizing: border-box;
  width: 100%;
  min-height: max(625px, 70vh);
  padding: 0;
}

.oy-vz-hero__frame {
  position: relative;
  display: flex;
  align-items: center;
  box-sizing: border-box;
  width: 100%;
  max-width: 1440px;
  min-height: max(625px, 70vh);
  margin: 0 auto;
  padding: 86px 0 34px;
}

.oy-vz-hero__photo-wrap {
  position: relative;
  height: 100%;
  width: fit-content;
  max-width: 100%;
  margin-left: auto;
  align-self: stretch;
  overflow: visible;
}

.oy-vz-hero__photo-stack {
  position: relative;
  height: 100%;
  width: fit-content;
  max-width: 100%;
  margin-left: auto;
  transform: translateX(var(--oy-vz-hero-photo-nudge));
  overflow: visible;
}

.oy-vz-hero__flag {
  position: absolute;
  z-index: 1;
  top: 10.5%;
  left: 4%;
  transform: translateX(calc(-100% + 10px));
  display: block;
  width: clamp(70px, 20%, 125px);
  height: auto;
  aspect-ratio: 125 / 83;
  object-fit: contain;
}

.oy-vz-hero__content {
  position: relative;
  z-index: 3;
  display: flex;
  flex-direction: column;
  gap: 14px;
  width: 100%;
  max-width: 655px;
  margin-left: 90px;
}

.oy-vz-hero__content h1.oy-vz-hero__title {
  margin: 0;
  max-width: 600px;
  font-size: clamp(2.45rem, 4vw, 3.85rem);
  font-weight: 700;
  line-height: 1.02;
  letter-spacing: -0.025em;
  color: #fff;
}

.oy-vz-hero__subtitle {
  margin: 2px 0 0;
  max-width: 600px;
  font-size: clamp(0.95rem, 1.15vw, 1.1rem);
  font-weight: 700;
  line-height: 1.2;
  color: #fff;
}

.oy-vz-hero__desc {
  margin: 0;
  max-width: 610px;
  font-size: clamp(0.95rem, 1.02vw, 1rem);
  font-weight: 400;
  line-height: 1.2;
  color: #fff;
}

.oy-vz-hero__desc strong {
  font-weight: 700;
}

.oy-vz-hero__actions {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  gap: 24px;
  margin: 12px 0 0;
}

.oy-vz-hero__btn {
  box-sizing: border-box;
  display: inline-flex;
  flex: none;
  align-items: center;
  justify-content: center;
  gap: 10px;
  height: 40px;
  padding: 8px 18px;
  border-radius: 8px;
  font-family: 'Lato', sans-serif;
  font-size: 17px;
  font-weight: 700;
  line-height: 22px;
  text-decoration: none;
  white-space: nowrap;
  transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease, border-color 0.2s ease;
}

.oy-vz-hero__btn:hover {
  text-decoration: none;
  transform: translateY(-2px);
}

.oy-vz-hero__btn:active {
  transform: translateY(0);
}

.oy-vz-hero__btn--primary {
  width: 326px;
  background: #243258;
  color: #fff;
  border: none;
  box-shadow: 0 4px 14px rgba(36, 50, 88, 0.2);
}

.oy-vz-hero__btn--primary:hover {
  background: #2e3f6e;
  color: #fff;
  box-shadow: 0 10px 24px rgba(36, 50, 88, 0.32);
}

.oy-vz-hero__btn--primary:active {
  box-shadow: 0 4px 12px rgba(36, 50, 88, 0.22);
}

.oy-vz-hero__btn--whatsapp {
  width: 311px;
  background: #fff;
  color: #333;
  border: 1px solid #46a7de;
  box-shadow: 0 4px 14px rgba(70, 167, 222, 0.12);
}

.oy-vz-hero__btn--whatsapp:hover {
  background: #f5fbff;
  border-color: #3b93c5;
  color: #243258;
  box-shadow: 0 10px 24px rgba(70, 167, 222, 0.28);
}

.oy-vz-hero__btn--whatsapp:active {
  box-shadow: 0 4px 12px rgba(70, 167, 222, 0.16);
}

.oy-vz-hero__btn-icon.oyo-btn-wa-circle {
  width: 28px;
  height: 28px;
  margin-right: 0;
  font-size: 15px;
  line-height: 1;
  background-color: #33e54c;
  transition: transform 0.2s ease;
}

.oy-vz-hero__btn--whatsapp:hover .oy-vz-hero__btn-icon {
  transform: scale(1.08);
}

.oy-vz-hero__note {
  margin: 6px 0 0;
  max-width: 470px;
  font-size: 17px;
  font-weight: 700;
  line-height: 22px;
  color: #fff;
}

.oy-vz-hero__media {
  position: absolute;
  z-index: 1;
  top: 0;
  right: var(--oy-vz-hero-media-right);
  bottom: 0;
  width: var(--oy-vz-hero-media-width);
  height: auto;
  display: flex;
  align-items: stretch;
  justify-content: flex-end;
  pointer-events: none;
  overflow: visible;
}

.oy-vz-hero__photo-blob {
  position: absolute;
  z-index: 2;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  transform: translateX(var(--oy-vz-hero-blob-shift)) scaleY(var(--oy-vz-hero-blob-shift-y));
  transform-origin: right top;
}

.oy-vz-hero__photo {
  position: relative;
  z-index: 3;
  display: block;
  width: auto;
  max-width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: right top;
}

.oy-vz-hero-wrap {
  position: relative;
  display: block;
}

.oy-vz-hero-wrap .logo-container-cabecera {
  position: absolute;
  top: 24px;
  left: max(24px, calc((100% - 1440px) / 2 + 90px));
  right: auto;
  width: auto;
  max-width: none;
  z-index: 10;
}

.oy-vz-hero-wrap .logo-container-cabecera img {
  max-height: 42px;
  width: auto;
}

@media (min-width: 1600px) {
  .oy-vz-hero {
    --oy-vz-hero-media-width: 820px;
  }
}

@media (min-width: 1440px) {

  .oy-vz-hero__content h1.oy-vz-hero__title {
    font-size: 62px;
    line-height: 63px;
  }

  .oy-vz-hero__subtitle {
    font-size: 18px;
    line-height: 22px;
  }

  .oy-vz-hero__desc {
    font-size: 16px;
    line-height: 19px;
  }

  .oy-vz-hero__note,
  .oy-vz-hero__btn {
    font-size: 17px;
    line-height: 22px;
  }
}

@media (max-width: 1359px) and (min-width: 1201px) {
  .oy-vz-hero {
    --oy-vz-hero-media-width: 620px;
    --oy-vz-hero-media-right: -4px;
  }

  .oy-vz-hero__frame {
    padding: 82px 0 34px;
  }

  .oy-vz-hero__content {
    max-width: calc(100% - var(--oy-vz-hero-media-width) - 84px);
    margin-left: 48px;
  }

  .oy-vz-hero__content h1.oy-vz-hero__title {
    font-size: clamp(2.5rem, 4vw, 3.45rem);
  }

  .oy-vz-hero__subtitle,
  .oy-vz-hero__desc,
  .oy-vz-hero__note {
    max-width: 100%;
  }
}

@media (max-width: 1200px) {
  .oy-vz-hero {
    --oy-vz-hero-media-width: 540px;
    --oy-vz-hero-media-right: -6px;
  }

  .oy-vz-hero__frame {
    max-width: 100%;
    padding: 92px 0 34px;
  }

  .oy-vz-hero__content {
    max-width: calc(100% - var(--oy-vz-hero-media-width) - 64px);
    margin-left: clamp(24px, 5vw, 72px);
  }

  .oy-vz-hero__content h1.oy-vz-hero__title {
    font-size: clamp(2.35rem, 4.2vw, 3.4rem);
  }
}

@media (max-width: 991px) {
  .oy-vz-hero,
  .oy-vz-hero__inner {
    min-height: 0;
  }

  .oy-vz-hero__inner {
    padding: 88px 24px 36px;
  }

  .oy-vz-hero__frame {
    display: block;
    min-height: 0;
    padding: 0;
  }

  .oy-vz-hero__flag {
    display: none;
  }

  .oy-vz-hero__content {
    width: 100%;
    max-width: none;
    margin-left: 0;
    padding-top: 0;
  }

  .oy-vz-hero__content h1.oy-vz-hero__title {
    font-size: 1.75rem;
    line-height: 1.15;
    letter-spacing: 0;
  }

  .oy-vz-hero__subtitle {
    font-size: 1.0625rem;
    line-height: 1.25;
  }

  .oy-vz-hero__desc {
    font-size: 1rem;
    line-height: 1.35;
  }

  .oy-vz-hero__actions {
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
  }

  .oy-vz-hero__btn,
  .oy-vz-hero__btn--primary,
  .oy-vz-hero__btn--whatsapp {
    width: 100%;
    white-space: normal;
    font-size: 1rem;
    height: auto;
    min-height: 40px;
  }

  .oy-vz-hero__note {
    font-size: 1rem;
    line-height: 1.35;
  }

  .oy-vz-hero__media {
    display: none;
  }

  .oy-vz-hero__photo {
    display: none;
  }

  .oy-vz-hero__decor--lg {
    width: 120vw;
    left: -20vw;
    background-position: left top;
  }

  .oy-vz-hero__decor--sm {
    width: 70vw;
    right: -25vw;
    top: -12vh;
  }

  .oy-vz-hero-wrap .logo-container-cabecera {
    top: 20px;
    left: 24px;
    right: 24px;
    width: auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    transform: none;
  }

  .oy-vz-hero-wrap .menu-toggle {
    margin-left: auto;
  }
}
