/* Small interactions share the site's existing typography and line language. */
.v14-table-scroll { max-width:100%; overscroll-behavior-inline:contain; }
.v14-table-scroll:focus-visible { outline:2px solid #15728b; outline-offset:4px; }
.v14-table-hint { margin:20px 0 6px; font-size:13px; line-height:1.5; color:inherit; }
.v14-table-hint[hidden] { display:none; }
.v14-table-hint + .v14-table-scroll { margin-top:6px !important; }

.el-editorial[data-page-family="legacy_review"] .v14-review-external {
  border:0 !important;
  border-block:1px solid var(--line) !important;
  border-radius:0 !important;
  background:transparent !important;
  padding:24px 0 !important;
  margin-block:28px !important;
}


.el-editorial #rf {
  border:0;
  border-radius:0;
  box-shadow:none;
  background:transparent;
  padding:12px 0 0 !important;
}
.el-editorial #rf .el-input {
  display:block;
  width:100%;
  min-height:50px;
  padding:12px 10px;
  border:0;
  border-bottom:1px solid var(--line);
  border-radius:0;
  background:transparent;
  color:inherit;
  line-height:1.5;
  box-shadow:none;
}
.el-editorial #rf textarea.el-input { min-height:128px; }
.el-editorial #rf :is(input,select,textarea,button):focus-visible {
  outline:2px solid #15728b;
  outline-offset:4px;
}
.el-editorial #rf .el-btn,
.el-editorial .v14-review-external .el-btn { border-radius:0; }
.el-editorial #rf [disabled] { cursor:wait; opacity:.65; }
.el-editorial #rf #rmsg { min-height:1.5em; line-height:1.5; }

@media(max-width:700px) {
  /* Article contact actions occupy their own row, never the image or text. */
  .growth-page .mobile-contact[data-v14-article-contact] {
    display:flex;
    position:static;
    width:auto;
    inset:auto;
    padding:24px 0 0;
    margin:0 var(--site-gutter, var(--pad, 22px)) 40px;
    border:0;
    border-top:1px solid var(--line);
    background:none;
    box-shadow:none;
    filter:none;
    transform:none;
    flex-wrap:wrap;
    align-items:stretch;
    gap:12px;
    visibility:visible;
    pointer-events:auto;
  }
  .growth-page .mobile-contact[data-v14-article-contact] > :is(button,a) {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    min-height:48px;
    width:auto;
    border-radius:0;
    padding:13px 16px;
  }
  /* The source already hides this secondary catalogue button. Keep that
     state beside the article's existing catalogue action. */
  .growth-page .mobile-contact[data-v14-article-contact] > button { display:none; }
  .growth-page .mobile-contact[data-v14-article-contact] > a {
    flex:0 1 auto;
    justify-content:flex-start;
    background:transparent;
    color:var(--red);
    border:0;
    border-bottom:1px solid currentColor;
    padding:12px 0;
  }
  .growth-page .mobile-contact[data-v14-article-contact] .contact-label { display:inline; font-size:13px; line-height:1.5; }

  /* Existing WhatsApp actions on other modern pages belong to the footer
     on a phone, where they cannot cover galleries, cards or body copy. */
  footer.original-footer .mobile-contact[data-v14-footer-contact] {
    display:flex;
    position:static;
    inset:auto;
    width:auto;
    padding:12px 0 0;
    margin:12px 0 0;
    border:0;
    border-top:1px solid #fff4dc66;
    background:none;
    box-shadow:none;
    filter:none;
    transform:none;
    align-items:center;
    justify-content:flex-start;
    opacity:1;
    visibility:visible;
    pointer-events:auto;
  }
  footer.original-footer .mobile-contact[data-v14-footer-contact] > button { display:none; }
  footer.original-footer .mobile-contact[data-v14-footer-contact] > a {
    display:inline-flex;
    align-items:center;
    justify-content:flex-start;
    gap:12px;
    flex:0 1 auto;
    width:auto;
    min-height:44px;
    padding:8px 0;
    border:0;
    border-bottom:1px solid currentColor;
    border-radius:0;
    background:transparent;
    color:var(--cream);
    font-size:13px;
    line-height:1.5;
  }
  footer.original-footer .mobile-contact[data-v14-footer-contact] .contact-label { display:inline; font-size:13px; line-height:1.5; }
  footer.original-footer .mobile-contact[data-v14-footer-contact] svg { width:23px; height:23px; }
  body.dialog-open footer.original-footer .mobile-contact[data-v14-footer-contact],
  body:has(#inquiry[open]) footer.original-footer .mobile-contact[data-v14-footer-contact] { visibility:hidden; pointer-events:none; }
  body.dialog-open .mobile-contact[data-v14-article-contact],
  body:has(#inquiry[open]) .mobile-contact[data-v14-article-contact] { visibility:hidden; pointer-events:none; }
}

/* Keep the phone contact available while browsing, without a second catalogue
   action. The same existing WhatsApp link and accessible name are retained. */
@media(max-width:700px) {
  body :is(footer.original-footer, .growth-page) .mobile-contact[data-v14-footer-contact],
  body.growth-page .mobile-contact[data-v14-article-contact] {
    display:flex;
    position:fixed;
    inset:auto max(16px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) auto;
    width:52px;
    height:52px;
    margin:0;
    padding:0;
    border:0;
    background:transparent;
    z-index:40;
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    filter:drop-shadow(0 3px 8px #442d1d26);
  }
  body :is(footer.original-footer, .growth-page) .mobile-contact[data-v14-footer-contact] > a,
  body.growth-page .mobile-contact[data-v14-article-contact] > a {
    display:flex;
    justify-content:center;
    align-items:center;
    flex:0 0 52px;
    width:52px;
    height:52px;
    min-height:52px;
    padding:0;
    border:1px solid #fff4dc66;
    border-radius:50%;
    background:var(--red);
    color:var(--cream);
  }
  body :is(footer.original-footer, main) .mobile-contact:is([data-v14-footer-contact], [data-v14-article-contact]) .contact-label { display:none; }
  body :is(footer.original-footer, main) .mobile-contact:is([data-v14-footer-contact], [data-v14-article-contact]) svg { width:24px; height:24px; }
  body :is(footer.original-footer, main) .mobile-contact:is([data-v14-footer-contact], [data-v14-article-contact]) > a:focus-visible { outline:3px solid #15728b; outline-offset:3px; }
  body:has(#inquiry[open], .header nav.open) .mobile-contact:is([data-v14-footer-contact], [data-v14-article-contact]) { visibility:hidden; pointer-events:none; }
  body:has(.mobile-contact[data-v14-footer-contact]) .original-footer { padding-bottom:max(88px, calc(68px + env(safe-area-inset-bottom))); }
}

/* The product actions already lead into the shared catalogue form. Keep the
   next full-width enquiry band in the source archive, not in the reading flow. */
body.home-page #consulta { display:none; }

/* One quiet, persistent contact control at every width. The cream surface
   and red edge remain legible on the site's cream, red, gold and olive panels. */
body .mobile-contact:is([data-v14-footer-contact], [data-v14-article-contact]) {
  display:flex;
  position:fixed;
  inset:auto max(24px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) auto;
  width:52px;
  height:52px;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  transform:none;
  filter:none;
  z-index:40;
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
body .mobile-contact:is([data-v14-footer-contact], [data-v14-article-contact]) > button { display:none; }
body .mobile-contact:is([data-v14-footer-contact], [data-v14-article-contact]) > a {
  display:flex;
  flex:0 0 52px;
  align-items:center;
  justify-content:center;
  width:52px;
  height:52px;
  min-height:52px;
  padding:0;
  border:1px solid var(--red);
  border-radius:50%;
  background:var(--cream);
  color:var(--red);
  box-shadow:0 0 0 3px #fff4dc, 0 4px 16px #442d1d26;
  text-decoration:none;
  transition:background .16s ease, box-shadow .16s ease;
}
body .mobile-contact:is([data-v14-footer-contact], [data-v14-article-contact]) .contact-label { display:none; }
body .mobile-contact:is([data-v14-footer-contact], [data-v14-article-contact]) svg { width:26px; height:26px; }
body .mobile-contact:is([data-v14-footer-contact], [data-v14-article-contact]) > a:focus-visible {
  outline:3px solid #15728b;
  outline-offset:5px;
}
@media(hover:hover) {
  body .mobile-contact:is([data-v14-footer-contact], [data-v14-article-contact]) > a:hover {
    background:var(--gold);
    box-shadow:0 0 0 3px #fff4dc, 0 5px 18px #442d1d38;
  }
}
@media(max-width:700px) {
  body :is(footer.original-footer, main) .mobile-contact:is([data-v14-footer-contact], [data-v14-article-contact]),
  body.growth-page .mobile-contact[data-v14-article-contact] {
    right:max(16px, env(safe-area-inset-right));
    bottom:max(16px, env(safe-area-inset-bottom));
    filter:none;
  }
  body :is(footer.original-footer, main) .mobile-contact:is([data-v14-footer-contact], [data-v14-article-contact]) > a,
  body.growth-page .mobile-contact[data-v14-article-contact] > a {
    background:var(--cream);
    color:var(--red);
    border:1px solid var(--red);
  }
  body :is(footer.original-footer, main) .mobile-contact:is([data-v14-footer-contact], [data-v14-article-contact]) svg { width:26px; height:26px; }
}
body.dialog-open .mobile-contact,
body:has(#inquiry[open], .header nav.open) .mobile-contact:is([data-v14-footer-contact], [data-v14-article-contact]) {
  visibility:hidden;
  pointer-events:none;
}
@media(prefers-reduced-motion:reduce) {
  body .mobile-contact:is([data-v14-footer-contact], [data-v14-article-contact]) > a { transition:none; }
}

/* Stack the contacts while preserving WhatsApp's bottom/right position.
   Center each SVG independently of inherited footer link spacing. */
html body .mobile-contact[data-contact-pair]:is([data-v14-footer-contact], [data-v14-article-contact]) {
  width:52px;
  height:116px;
  gap:12px;
  flex-direction:column;
  flex-wrap:nowrap;
  align-items:center;
  justify-content:flex-end;
}
html body .mobile-contact[data-contact-pair] > a {
  display:grid;
  place-items:center;
  gap:0;
}
html body .mobile-contact[data-contact-pair] > a svg {
  display:block;
  margin:0;
  flex:none;
}
html body .mobile-contact[data-contact-pair] > a[data-el-contact="telegram"] svg {
  width:22px;
  height:22px;
}
/* The original 32-unit WhatsApp symbol spans x=3..27, centered at 15.
   Shift by one viewBox unit and match the Telegram glyph's visible scale. */
html body .mobile-contact[data-contact-pair] > a[data-el-contact="whatsapp"] svg {
  width:28px;
  height:28px;
  transform:translateX(3.125%);
}
