/* =========================================================
   Our Core Values — réplica del original Divi
   ========================================================= */

.col-1-2 > .module { margin-bottom: 5.82%; }
.col-4-4 > .module { margin-bottom: 2.75%; }
.col > .module:last-child { margin-bottom: 0; }
.txt-left { text-align: left; }
.txt-center { text-align: center; }

.v-img { display: block; line-height: 0; margin-left: auto; margin-right: auto; text-align: left; }
.v-img .img-wrap { display: inline-block; position: relative; max-width: 100%; }
.v-img img { position: relative; }

/* Separadores con forma (SVG del original) */
.shape-divider {
  display: block; position: absolute; left: 0; right: 0; width: 100%;
  pointer-events: none; z-index: 1;
  background-repeat: repeat-x; background-repeat-y: no-repeat;
  transform: scale(1, 1);
}
.shape-divider.bottom { bottom: 0; }
.shape-divider.top { top: 0; }
.v-hero > .row, .v-values > .row { z-index: 5; }

/* El estilo del botón flotante original afecta a todos los h2 de la página */
.v-story-title h2, .v-culture-title h2 { margin: 0 auto 5px; text-align: center; font-style: italic; }

/* ---------- Sección 1: título amarillo ---------- */
.v-hero {
  background-color: #f4d000;
  background-image: url(/img/bandera8.png);
  background-size: initial;
  background-position: left 49% bottom -100%;
  background-blend-mode: overlay;
}
.v-hero-divider {
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDBweCIgdmlld0JveD0iMCAwIDEyODAgMTQwIiBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxnIGZpbGw9IiNGRUZERjkiPjxwYXRoIGQ9Ik0wIDE0MGgxMjgwQzU3My4wOCAxNDAgMCAwIDAgMHoiLz48L2c+PC9zdmc+);
  background-size: 100% 92px; height: 92px;
}
.v-these {
  font-family: 'Acme', Helvetica, Arial, Lucida, sans-serif; font-size: 36px;
  margin-bottom: 0 !important;
  transform: scaleX(1.58) scaleY(1.58) translateX(-5px) translateY(12px);
}
.v-these h3 { font-family: 'Abhaya Libre', Georgia, "Times New Roman", serif; font-size: 57px; }
.v-core { font-size: 36px; margin-bottom: 0 !important; }
.v-core h3 { font-family: 'Actor', Helvetica, Arial, Lucida, sans-serif; font-size: 57px; }

/* ---------- Sección 2: Our Story ---------- */
.v-story { background-color: #FEFDF9; }
.v-story-row { border: 1px solid #000; padding-left: 60px; padding-right: 60px; }
.v-story-img { margin-left: -16% !important; }
.v-story-img .img-wrap { border: 1px solid #000; }
.v-story-title {
  font-family: 'Abyssinica SIL', Georgia, "Times New Roman", serif; font-size: 40px;
  margin-bottom: 10px !important; width: 100%; max-width: 350px;
  margin-left: auto !important; margin-right: auto !important;
}
.v-story-title h2 {
  font-family: 'Allison', handwriting; font-weight: 700; font-size: 90px;
  color: #000; letter-spacing: 2px; line-height: 1.2em;
}
.v-text { line-height: 1.8em; font-size: 16px; }
.v-ellipse {
  box-sizing: content-box;
  background-color: rgba(0,0,0,0);
  border: 1px solid #333; border-radius: 100%; overflow: hidden;
  width: 130px; height: 80px;
  position: absolute !important; top: 0; bottom: auto; right: -10px; left: auto;
  margin-right: -10% !important; margin-bottom: 0 !important;
  transform: translateX(40%) translateY(-40%) rotateX(0deg) rotateY(0deg) rotateZ(-40deg);
}

/* ---------- Sección 3: cultura ---------- */
.v-culture { background-color: #E3E3E3; padding-bottom: 1px; }
.v-culture-title {
  font-family: 'Abril Fatface', display; font-size: 54px; letter-spacing: 2px; line-height: 1.8em;
  padding-left: 0; padding-right: 0;
  margin-bottom: 10px !important; margin-left: auto !important; margin-right: auto !important;
  width: 93.8%; max-width: 350px;
  transform: scaleX(1.3) scaleY(1.3) translateX(-25px) translateY(-8px);
}
.v-culture-title h1 { font-size: 34px; }
.v-culture-title h2 {
  font-family: 'Allison', handwriting; font-weight: 700; font-size: 90px;
  color: #000; letter-spacing: 2px; line-height: 1.2em;
}
.v-our-core { transform: scaleX(1.52) scaleY(1.52) translateX(-16px) translateY(-46px) rotateX(0deg) rotateY(0deg) rotateZ(359deg); }
.v-bordered { border: 1px solid #000; }

/* ---------- Sección 4: valores ---------- */
.section.v-values { background-color: #fff; min-height: 562.8px; margin-top: -304px; }
.v-values > .row { padding: 0; }
.v-values-top {
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDBweCIgdmlld0JveD0iMCAwIDEyODAgMTQwIiBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxnIGZpbGw9IiNFM0UzRTMiPjxwYXRoIGQ9Ik0wIDBzNTczLjA4IDE0MCAxMjgwIDE0MFYweiIvPjwvZz48L3N2Zz4=);
  background-size: 100% 54px; height: 54px;
}
.v-values-bottom {
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDBweCIgdmlld0JveD0iMCAwIDEyODAgMTQwIiBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxnIGZpbGw9IiMwMDAwMDAiPjxwYXRoIGQ9Ik03MjUuMjkgMTAxLjJDMzI1LjIyIDEyMi40OCAwIDAgMCAwdjE0MGgxMjgwVjBzLTE1NC42NCA3OS45Mi01NTQuNzEgMTAxLjJ6IiBmaWxsLW9wYWNpdHk9Ii4zIi8+PHBhdGggZD0iTTU1Ni40NSAxMTkuNzRDOTUzLjQxIDE0MCAxMjgwIDE0IDEyODAgMTR2MTI2SDBWMHMxNTkuNSA5OS40OCA1NTYuNDUgMTE5Ljc0eiIgZmlsbC1vcGFjaXR5PSIuNSIvPjxwYXRoIGQ9Ik02NDAgMTQwYzM1My40NiAwIDY0MC0xNDAgNjQwLTEzOXYxNDBIMFYwczI4Ni41NCAxNDAgNjQwIDE0MHoiLz48L2c+PC9zdmc+);
  background-size: 100% 100px; height: 100px;
}
.v-values-text { min-height: 406.8px; transform: translateX(4px) translateY(36px); }
.v-values-text h1 { font-size: 18px; line-height: 1.6em; }
.v-tab-module { margin-bottom: -86px !important; z-index: 500; position: relative; }

/* ---------- Botón flotante "ORDER ONLINE" con pestaña deslizante ---------- */
.sliding-tab { position: fixed; bottom: 20px; right: 20px; z-index: 1000; line-height: 1.7em; }
.sliding-tab .tab-button {
  background-color: black; color: yellow;
  border-radius: 5px; padding: 10px 15px; cursor: pointer;
  font-family: Arial, sans-serif; text-transform: uppercase; letter-spacing: 1px;
  border: 2px solid white; display: flex; align-items: center;
}
.sliding-tab .tab-button-text { margin-right: 10px; font-weight: bold; }
.sliding-tab .tab-content {
  position: fixed; top: 50%; right: -240px; transform: translateY(-50%);
  background-color: black; color: white;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
  width: 240px; padding: 20px;
  transition: right 0.3s ease-in-out;
  z-index: 999; border-radius: 10px;
  display: flex; flex-direction: column; align-items: flex-start;
  font-family: Arial, sans-serif; text-transform: uppercase;
}
.sliding-tab .tab-content.open { right: 0; }
.sliding-tab .close-button {
  background-color: transparent;
  display: none; position: absolute; top: 10px; right: 10px;
  color: white; font-size: 18px; cursor: pointer; z-index: 1001;
  font-family: Arial, sans-serif; text-transform: uppercase; letter-spacing: 1px;
  transition: background-color 0.3s ease-in-out;
}
.sliding-tab .tab-button.open { display: none; }
.sliding-tab .tab-content.open .close-button { display: block; }
.sliding-tab .menu-links { margin-top: 20px; }
.sliding-tab .menu-links a {
  display: flex; align-items: center; justify-content: space-between;
  margin: 5px 0; padding: 5px 0;
  color: white; font-size: 14px; text-decoration: none;
  transition: color 0.3s ease-in-out; position: relative;
}
.sliding-tab .menu-links span { flex: 1; margin-left: 10px; }
.sliding-tab .menu-icon { width: 20px; height: 20px; margin-right: 10px; }
.sliding-tab .tab-logo { text-align: center; margin-bottom: 10px; }
.sliding-tab .tab-logo img { max-width: 80%; height: auto; }
.sliding-tab h2 {
  color: white; font-size: 16px; margin: 0 auto 5px;
  text-align: center; font-style: italic;
}
.sliding-tab .tab-divider { display: flex; justify-content: center; margin: 10px 0; }
.sliding-tab .tab-divider img { max-width: 100%; height: auto; }

/* ---------- Tableta ---------- */
@media (max-width: 980px) {
  /* en Divi las columnas siguen flotando en tableta y celular */
  .col { float: left; }
  .col:empty { display: none; }
  .col > .module { margin-bottom: 30px; }
  .col > .module:last-child { margin-bottom: 0; }
  .v-hero > .row, .v-values > .row { padding: 30px 0; }
  .v-values > .row { padding: 0; }
  .v-story { padding-top: 30px; }
  .v-story-row { padding-left: 30px !important; padding-right: 30px !important; }
  .v-img img { width: auto; }
  .v-story-title h2 { font-size: 24px; }
  .v-text { font-size: 15px; }
  .v-ellipse { top: auto; bottom: -40%; right: -10px; left: auto; transform: translateX(0%) translateY(0%) rotateX(0deg) rotateY(0deg) rotateZ(-40deg); }
  .v-culture { padding-bottom: 1px; }
  .v-culture-title h2 { font-size: 24px; }
  .v-tab-module { margin-bottom: -86px !important; }
}

/* ---------- Celular ---------- */
@media (max-width: 767px) {
  .v-story { padding-top: 20px; }
  .v-story-row { padding-left: 20px !important; padding-right: 20px !important; }
  .v-story-title h2 { font-size: 18px; line-height: 1.3em; }
  .v-text { font-size: 14px; }
  .v-culture-title { transform: scaleX(1.16) scaleY(1.16) translateX(19px) translateY(-8px); }
  .v-culture-title h2 { font-size: 18px; line-height: 1.3em; }
}
