/** Shopify CDN: Minification failed

Line 1447:18 Unexpected "{"
Line 1447:27 Expected ":"
Line 1448:18 Unexpected "{"
Line 1448:27 Expected ":"
Line 1449:18 Unexpected "{"
Line 1449:27 Expected ":"
Line 1450:18 Unexpected "{"
Line 1450:27 Expected ":"
Line 1451:18 Unexpected "{"
Line 1451:27 Expected ":"
... and 6 more hidden warnings

**/
/* SHOPIFY_STYLESHEETS_VERSION: 1.0 */


/* CSS from section stylesheet tags */
/* START_SECTION:antes-depois (INDEX:3) */
/* ========== Base ========== */
.before-after{padding:var(--section-padding,48px) 0}
.ba-header{text-align:center;margin-bottom:24px}
.ba-title{margin:0;color:var(--title-color,#111);font-size:var(--title-size,32px);font-weight:var(--title-weight,700);line-height:var(--title-lh,1.2)}
.ba-subtitle{margin:var(--title-subtitle-gap,6px) 0 0;color:var(--subtitle-color,#555);line-height:var(--subtitle-lh,1.5)}

/* === CAROUSEL CENTER-MODE (scroll-based, sem transform) === */
.ba-slider{position:relative;margin-top:16px;-webkit-tap-highlight-color:transparent}

.ba-viewport{
  position:relative;
  overflow-x:auto;            /* fazemos scroll horizontal no viewport   */
  overflow-y:hidden;
  scroll-snap-type:x mandatory; /* snapping ao centro                     */
  -ms-overflow-style:none; scrollbar-width:none; /* oculta barra         */
}
.ba-viewport::-webkit-scrollbar{display:none}

.ba-track{
  display:flex; align-items:stretch;
  gap:var(--gap,16px);
  padding-inline:0;           /* JS calcula o padding das extremidades   */
}

.ba-slide{                    /* cada grupo “encaixa” ao centro          */
  scroll-snap-align:center;
  flex:0 0 var(--slide-w-m,90%);
  margin-inline: calc(var(--overlap,0px) / -2);
  opacity:var(--inactive-opacity,.85);
  transform:scale(var(--inactive-scale,.92));
  filter:grayscale(var(--inactive-gray,35%));
  transition:opacity .2s ease, filter .2s ease, transform .2s ease;
  position:relative; z-index:1;
}
.ba-slide.is-active{opacity:1; transform:scale(1); filter:grayscale(0); z-index:2}

/* clones para dar o efeito de 3º cartão quando só há 2 */
.ba-ghost{
  pointer-events:none;
  opacity:var(--inactive-opacity,.85) !important;
  transform:scale(var(--inactive-scale,.92)) !important;
  filter:grayscale(var(--inactive-gray,35%)) !important;
}

@media(min-width:990px){
  .ba-slide{flex-basis:var(--slide-w-d,80%)}
}

/* conteúdo de cada grupo */
.ba-grid{display:grid;grid-template-columns:1fr;gap:var(--inner-gap,8px)}
@media(min-width:750px){.ba-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.ba-card{overflow:hidden;border-radius:var(--radius,12px)}
.ba-card a{display:inline-block;line-height:0}
.ba-img{display:block;width:100%;height:auto;border-radius:var(--radius,12px);box-shadow:none}

/* Dots */
.ba-dots{display:var(--dots-display,flex);justify-content:center;gap:10px;margin-top:14px}
.ba-dot{width:8px;height:8px;border-radius:999px;border:0;background:var(--dot-color,#d3d3d3);cursor:pointer;transition:width .2s ease,background .2s ease}
.ba-dot[aria-current="true"]{width:22px;background:var(--dot-active,#6b6b6b)}

/* Arrows */
.ba-arrow{
  position:absolute; top:50%; transform:translateY(-50%);
  height:40px; width:40px; border:0; border-radius:999px;
  display:none; place-items:center; cursor:pointer;
  background: transparent; /* fundo vem do ::before para controlarmos a opacidade */
  z-index: 10;              /* acima dos slides/ghosts */
  pointer-events:auto;
}
.ba-arrow::before{
  content:""; position:absolute; inset:0; border-radius:inherit;
  background: var(--arrow-bg);
  opacity: var(--arrow-opacity, .85);      /* <= controlável no editor */
}
.ba-arrow svg{ width:18px; height:18px; fill: var(--arrow-icon); position:relative; z-index:1; }
.ba-prev{ left: 6px; } .ba-next{ right: 6px; }
@media (min-width: 990px){ .ba-arrow.show{ display:grid; } }

/* Acessibilidade */
@media(prefers-reduced-motion:reduce){.ba-track{transition:none!important}}
/* END_SECTION:antes-depois */

/* START_SECTION:caras (INDEX:6) */
/* ── Entrance animation ─────────────────────────────────────── */
@keyframes tf-fade-up {
  from { opacity: 0; transform: translateY(20px); }
  to   { opacity: 1; transform: translateY(0); }
}
.tf-card {
  opacity: 0;
  animation: tf-fade-up .55s ease forwards;
  animation-play-state: paused;
}
.team-faces.is-visible .tf-card { animation-play-state: running; }
.team-faces.is-visible .tf-card:nth-child(1)  { animation-delay: .00s; }
.team-faces.is-visible .tf-card:nth-child(2)  { animation-delay: .08s; }
.team-faces.is-visible .tf-card:nth-child(3)  { animation-delay: .16s; }
.team-faces.is-visible .tf-card:nth-child(4)  { animation-delay: .24s; }
.team-faces.is-visible .tf-card:nth-child(5)  { animation-delay: .32s; }
.team-faces.is-visible .tf-card:nth-child(n+6){ animation-delay: .40s; }

/* ── Secção wrapper ─────────────────────────────────────────── */
.team-faces { padding: var(--section-padding, 48px) 0; }

/* ── Cabeçalho principal ───────────────────────────────────── */
.team-faces .tf-header { text-align: center; margin-bottom: 28px; }
.team-faces .tf-title {
  margin: 0;
  color: var(--title-color, #111);
  font-size: var(--title-size, 32px);
  font-weight: var(--title-weight, 700);
}
.team-faces .tf-subtitle {
  margin: 6px 0 0;
  color: var(--subtitle-color, #444);
  font-size: var(--subtitle-size, 22px);
  font-weight: var(--subtitle-weight, 400);
}

/* ── Grid: faces principais — desktop ──────────────────────── */
.tf-main-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--gap-main, 28px);
}
.tf-main-grid .tf-card {
  flex: 0 0 var(--avatar-size, 180px);
}

/* ── Separador Parceiros ───────────────────────────────────── */
.tf-partners {
  margin-top: var(--gap-section, 32px);
  position: relative;
}
.tf-partners-header {
  text-align: center;
  margin-bottom: 20px;
}
.tf-partners-title {
  margin: 0;
  font-size: var(--partners-title-size, 18px);
  font-weight: var(--partners-title-weight, 700);
  color: var(--partners-title-color, #111);
  letter-spacing: .06em;
  opacity: .75;
}

/* ── Grid: parceiros — desktop ─────────────────────────────── */
.tf-partners-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--gap-partners, 24px);
}
.tf-partners-grid .tf-card {
  flex: 0 0 calc(var(--avatar-size, 180px) * .70 + 16px);
}

/* ── Card genérico ─────────────────────────────────────────── */
.tf-card { text-align: center; }

/* ── Avatar wrapper (hover target) ────────────────────────── */
.tf-avatar-wrap {
  display: inline-block;
  border-radius: 9999px;
  line-height: 0;
  border: var(--_border-width, 0px) solid var(--_border-color, transparent);
  transition: transform .28s cubic-bezier(.34,1.56,.64,1), box-shadow .28s ease;
  will-change: transform;
  cursor: default;
}
.tf-card:hover .tf-avatar-wrap {
  transform: scale(1.08) translateY(-4px);
  box-shadow: 0 12px 28px rgba(0,0,0,.14);
}

/* ── Avatar ────────────────────────────────────────────────── */
.tf-avatar {
  width: var(--avatar-size, 180px);
  height: var(--avatar-size, 180px);
  border-radius: 9999px;
  overflow: hidden;
  line-height: 0;
}
.tf-avatar img {
  width: 100%; height: 100%;
  object-fit: cover; display: block;
  transition: transform .4s ease;
}
.tf-card:hover .tf-avatar img { transform: scale(1.05); }

/* Logo mode: imagem contida com padding, sem corte */
.tf-avatar--logo img {
  object-fit: contain !important;
  padding: 14%;
  transform: none !important;
}
.tf-card:hover .tf-avatar--logo img { transform: none !important; }

/* Parceiros: 70% do tamanho principal */
.tf-card--partner .tf-avatar {
  width: calc(var(--avatar-size, 180px) * .70);
  height: calc(var(--avatar-size, 180px) * .70);
}

/* Avatar vazio (ex: STUDIO17) */
.tf-avatar--empty {
  display: flex; align-items: center; justify-content: center;
  background: #f0f0f0;
  font-size: 11px; color: #aaa; letter-spacing: .03em;
}

/* ── Nome & Cargo ──────────────────────────────────────────── */
.tf-name {
  margin-top: var(--name-margin-top, 10px);
  margin-bottom: 0;
  color: var(--name-color, #222);
  font-size: var(--name-size, 15px);
  font-weight: var(--name-weight, 500);
  transition: color .2s ease;
  line-height: 1.25;
}
.tf-card:hover .tf-name { color: var(--_border-color, var(--name-color, #222)); }
.tf-role {
  margin-top: 3px;
  color: var(--role-color, #666);
  font-size: var(--role-size, 12px);
  font-weight: var(--role-weight, 400);
  line-height: 1.3;
}
.tf-card--partner .tf-name { font-size: calc(var(--name-size, 15px) * .88); }
.tf-card--partner .tf-role { font-size: calc(var(--role-size, 12px) * .9); }

/* ── Rodapé & CTA ──────────────────────────────────────────── */
.tf-footer {
  text-align: center;
  color: var(--footer-color, #222);
  font-size: var(--footer-size, 13px);
  margin-top: 16px;
}
.tf-cta { text-align: center; margin-top: var(--cta-margin-top, 16px); }
.tf-cta .tf-button {
  display: inline-block;
  padding: var(--cta-pad-v, 12px) var(--cta-pad-h, 22px);
  border-radius: var(--cta-radius, 9999px);
  background: var(--cta-bg, #111);
  color: var(--cta-color, #fff);
  text-decoration: none;
  font-weight: 600;
  line-height: 1;
  transition: transform .12s ease, opacity .12s ease;
}
.tf-cta .tf-button:hover { opacity: .9; transform: translateY(-1px); }

/* ══════════════════════════════════════════════════════════════
   MOBILE  (< 750px)
══════════════════════════════════════════════════════════════ */
@media (max-width: 749px) {

  /* Título menor */
  .team-faces .tf-title { font-size: calc(var(--title-size, 32px) * .78); }

  /* ── Equipa principal: 3 colunas → 3+2 centrado ── */
  .tf-main-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px 8px;
  }
  .tf-main-grid .tf-card { flex: none; }

  /* 2ª linha com 2 itens: ocupa as colunas centrais */
  .tf-main-grid .tf-card:nth-child(4) { grid-column: 1; }
  .tf-main-grid .tf-card:nth-child(5) { grid-column: 3; }

  /* Avatar responsivo a 28vw mas com máximo razoável */
  .tf-main-grid .tf-avatar {
    width: min(28vw, 110px);
    height: min(28vw, 110px);
  }

  /* Nome e cargo menores */
  .tf-main-grid .tf-name { font-size: 12px; }
  .tf-main-grid .tf-role { font-size: 11px; }

  /* ── Parceiros: grid 3 colunas ── */
  .tf-partners-scroll-wrap { overflow: visible; }
  .tf-partners-scroll-wrap::after { display: none; }

  .tf-partners-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px 8px;
    flex-wrap: unset;
    overflow: visible;
    padding: 0;
    justify-content: unset;
  }
  .tf-partners-grid .tf-card { flex: none; }

  /* Último parceiro sozinho → coluna central */
  .tf-partners-grid .tf-card:nth-child(3n+1):last-child { grid-column: 2; }

  .tf-card--partner .tf-avatar {
    width: min(22vw, 80px);
    height: min(22vw, 80px);
  }

  /* Texto dos parceiros: compact mas legível */
  .tf-card--partner .tf-name {
    font-size: 11px;
    font-weight: 600;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }
  .tf-card--partner .tf-role {
    font-size: 10px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }

  .tf-partners-title { font-size: calc(var(--partners-title-size, 18px) * .85); }
  .tf-partners { margin-top: calc(var(--gap-section, 32px) * .75); }
}
/* END_SECTION:caras */

/* START_SECTION:cta-historias (INDEX:29) */
.cta-historias{
  padding: var(--pad-y, 2.5rem) 0;
  text-align: var(--align, center);
}
.cta-historias .cta-wrap{
  max-width: var(--maxw, 900px);
  margin: 0 auto;
  padding: 0 var(--gutter, 1rem);
}
.cta-historias h2{
  margin: 0 0 .75rem 0;
  font-size: var(--title-size, clamp(1.6rem, 2.4vw + 1rem, 2.4rem));
  line-height: 1.2;
  color: var(--title-color, #111);
}
.cta-historias .cta-icon-btn{
  --size: var(--btn-size, 64px);
  --radius: var(--btn-radius, 14px);
  --bg: var(--btn-bg, #111);
  --fg: var(--btn-fg, #fff);
  --ring: var(--btn-ring, rgba(0,0,0,.18));

  display:inline-flex;
  align-items:center;
  justify-content:center;
  width: var(--size);
  height: var(--size);
  border-radius: var(--radius);
  background: var(--bg);
  color: var(--fg);
  text-decoration:none;
  box-shadow: 0 1px 0 0 rgba(0,0,0,.05), 0 2px 10px rgba(0,0,0,.06);
  transition: transform .15s ease, box-shadow .15s ease, background .15s ease, color .15s ease;
  position: relative;
  outline: none;
}
.cta-historias .cta-icon-btn:hover{
  transform: translateY(-2px);
  box-shadow: 0 4px 18px rgba(0,0,0,.14);
}
.cta-historias .cta-icon-btn:focus-visible{
  box-shadow: 0 0 0 3px var(--ring);
}
.cta-historias .cta-icon{
  width: calc(var(--size) * .52);
  height: calc(var(--size) * .52);
  display:block;
}
.cta-historias .cta-sub{
  margin-top: .6rem;
  font-size: .95rem;
  color: var(--sub-color, #444);
}

@media (max-width: 749px){
  .cta-historias{ padding: var(--pad-y-mobile, 2rem) 0; }
}
/* END_SECTION:cta-historias */

/* START_SECTION:portofolio-intro (INDEX:71) */
.portfolio-intro{
  position: relative;
  padding: var(--pad-y, 4rem) 0;
  background: var(--bg, transparent);
  color: var(--fg, #111);
}
.portfolio-intro .wrap{
  max-width: var(--maxw, 1100px);
  margin: 0 auto;
  padding: 0 var(--gutter, 1rem);
}

/* Título */
.portfolio-intro .title{
  margin: 0 0 var(--t-gap, 1.2rem) 0;
  font-weight: var(--t-fw, 800);
  font-size: var(--t-fs, clamp(var(--t-min, 1.8rem), var(--t-fluid, 2.2vw) + 1rem, var(--t-max, 3rem)));
  line-height: 1.15;
  text-align: var(--t-align, center);
  letter-spacing: var(--t-tracking, 0.1em);
  color: var(--t-color, currentColor);
}

/* highlight no título (usa [[...]] no texto) */
.portfolio-intro .title .highlight{
  position: relative;
  display: inline-block;
  z-index: 0;
}
.portfolio-intro .title .highlight::after{
  content: "";
  position: absolute;
  left: 0; right: 0;
  height: var(--hl-height, 8px);
  bottom: var(--hl-offset, 2px);
  background: var(--hl-color, #C5DFC1);
  border-radius: var(--hl-radius, 2px);
  z-index: -1;
}

/* Stack 2 linhas */
.portfolio-intro .stack{
  display: flex;
  flex-direction: column;
  gap: var(--rows-gap, 1.5rem);
}

/* Linha 1: LEAD */
.portfolio-intro .lead-group{ text-align: var(--lead-align, left); }
.portfolio-intro .lead{
  font-size: var(--lead-fs, clamp(var(--lead-min, 1rem), .6vw + 1rem, var(--lead-max, 1.3rem)));
  line-height: var(--lead-lh, 1.55);
  font-weight: var(--lead-fw, 700);
  color: var(--lead-color, currentColor);
  margin: 0;
  text-shadow: 0 2px 8px rgba(0,0,0,.5);
}

/* Linha 2: POEMA */
.portfolio-intro .body-group{ text-align: var(--body-align, center); }
.portfolio-intro .body{
  font-size: var(--body-fs, clamp(var(--body-min, 1rem), .3vw + .95rem, var(--body-max, 1.1rem)));
  text-shadow: 0 2px 8px rgba(0,0,0,.5);
  line-height: var(--body-lh, 1.7);
  font-weight: var(--body-fw, 400);
  color: var(--body-color, rgba(0,0,0,.78));
  margin: 0;
  max-width: var(--poem-max, 36ch);
  margin-left: auto; margin-right: auto;
}
.portfolio-intro .muted{ color: var(--muted, rgba(0,0,0,.65)); }
.portfolio-intro .italic{ font-style: italic; }

/* Divisor opcional */
.portfolio-intro .divider{
  width: var(--div-w, 72px);
  height: 2px;
  background: var(--div-color, currentColor);
  opacity: var(--div-opacity, .2);
  margin: var(--div-mt, .8rem) auto var(--div-mb, 1.2rem);
}

/* CTA opcional */
.portfolio-intro .cta{
  display: inline-flex; align-items:center; justify-content:center;
  gap:.5rem; margin-top: var(--cta-mt, 1.8rem);
  padding: var(--cta-py, .8rem) var(--cta-px, 1.1rem);
  background: var(--cta-bg, #111); color: var(--cta-fg, #fff);
  border-radius: var(--cta-radius, 10px);
  text-decoration: none; font-weight: 600; font-size: 1rem;
  transition: transform .15s ease, box-shadow .15s ease, background .2s ease;
  box-shadow: 0 4px 16px rgba(0,0,0,.08);
}
.portfolio-intro .cta:hover{ transform: translateY(-1px); box-shadow: 0 8px 20px rgba(0,0,0,.12); }
.portfolio-intro .cta svg{ width: 1.05em; height: 1.05em; }

@media (min-width: 750px){
  .portfolio-intro .lead-group{
    padding-left: var(--lead-pad-x-desktop, 0%);
    padding-right: var(--lead-pad-x-desktop, 0%);
  }
}
/* END_SECTION:portofolio-intro */

/* START_SECTION:related-products (INDEX:81) */
/* ── Wrapper ─────────────────────────────────────────────────── */
.rp-section {
  padding: var(--rp-pad, 48px) 0;
  background: var(--rp-bg, transparent);
  overflow: hidden;
}

/* ── Header ──────────────────────────────────────────────────── */
.rp-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 24px;
}
.rp-header__left {}
.rp-kicker {
  display: block;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--rp-accent, #e63946);
  margin-bottom: 4px;
}
.rp-title {
  margin: 0;
  font-size: var(--rp-title-size, 22px);
  font-weight: var(--rp-title-weight, 700);
  color: var(--rp-text, #111);
  line-height: 1.15;
}
.rp-controls {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}
.rp-arrow {
  display: flex; align-items: center; justify-content: center;
  width: 36px; height: 36px;
  border-radius: 50%;
  border: 1.5px solid rgba(0,0,0,.15);
  background: transparent;
  cursor: pointer;
  transition: background .18s ease, border-color .18s ease, transform .15s ease;
  color: var(--rp-text, #111);
}
.rp-arrow:hover { background: var(--rp-text, #111); color: #fff; border-color: var(--rp-text, #111); transform: scale(1.08); }
.rp-arrow:disabled { opacity: .3; cursor: default; transform: none; }
.rp-arrow svg { display: block; }

/* ── Carousel ────────────────────────────────────────────────── */
.rp-carousel { position: relative; }
.rp-track {
  display: flex;
  gap: var(--rp-gap, 16px);
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  scroll-behavior: smooth;
  padding-bottom: 4px;
}
.rp-track::-webkit-scrollbar { display: none; }

/* ── Card ────────────────────────────────────────────────────── */
.rp-card {
  flex: 0 0 var(--rp-card-w, 220px);
  scroll-snap-align: start;
  background: var(--rp-card-bg, #fff);
  border-radius: var(--rp-radius, 12px);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  box-shadow: 0 2px 12px rgba(0,0,0,.06);
  transition: box-shadow .25s ease, transform .25s ease;
  text-decoration: none;
  color: inherit;
}
.rp-card:hover {
  box-shadow: 0 8px 32px rgba(0,0,0,.13);
  transform: translateY(-3px);
}

/* ── Card media ──────────────────────────────────────────────── */
.rp-card__media {
  position: relative;
  overflow: hidden;
  aspect-ratio: var(--rp-aspect, 1 / 1);
  background: #f5f5f5;
}
.rp-card__img {
  width: 100%; height: 100%;
  object-fit: cover; display: block;
  transition: transform .45s ease;
}
.rp-card:hover .rp-card__img { transform: scale(1.06); }

/* Badges */
.rp-card__badges {
  position: absolute; top: 10px; left: 10px;
  display: flex; flex-direction: column; gap: 4px;
  z-index: 2;
}
.rp-badge {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 20px;
  font-size: 11px; font-weight: 700; line-height: 1.5;
}
.rp-badge--sale   { background: var(--rp-accent, #e63946); color: #fff; }
.rp-badge--sold   { background: #333; color: #fff; }
.rp-badge--new    { background: #000; color: #fff; }

/* Hover overlay CTA */
.rp-card__overlay {
  position: absolute; inset: 0;
  display: flex; align-items: flex-end; justify-content: center;
  padding-bottom: 14px;
  opacity: 0;
  transition: opacity .22s ease;
  pointer-events: none;
  background: linear-gradient(to top, rgba(0,0,0,.35) 0%, transparent 55%);
  z-index: 3;
}
.rp-card:hover .rp-card__overlay { opacity: 1; }
.rp-card__overlay-label {
  color: #fff;
  font-size: 12px; font-weight: 600;
  letter-spacing: .06em; text-transform: uppercase;
  background: rgba(255,255,255,.18);
  backdrop-filter: blur(4px);
  border: 1px solid rgba(255,255,255,.35);
  border-radius: 20px;
  padding: 5px 14px;
}

/* ── Card body ───────────────────────────────────────────────── */
.rp-card__body {
  padding: 12px 14px 14px;
  display: flex; flex-direction: column; gap: 6px;
  flex: 1;
}
.rp-card__title {
  margin: 0;
  font-size: var(--rp-name-size, 14px);
  font-weight: 500;
  color: var(--rp-text, #111);
  line-height: 1.3;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.rp-card__price {
  display: flex; align-items: baseline; gap: 6px;
  flex-wrap: wrap;
}
.rp-card__price-now { font-size: 15px; font-weight: 700; color: var(--rp-text, #111); }
.rp-card__price-now.is-sale { color: var(--rp-accent, #e63946); }
.rp-card__price-was { font-size: 12px; color: #999; text-decoration: line-through; }

/* Quick add */
.rp-card__qa {
  margin-top: auto;
  width: 100%;
  padding: 8px;
  border-radius: var(--rp-radius, 12px);
  border: 1.5px solid rgba(0,0,0,.12);
  background: transparent;
  font-size: 12px; font-weight: 600;
  cursor: pointer;
  transition: background .18s ease, border-color .18s ease, color .18s ease;
  color: var(--rp-text, #111);
}
.rp-card__qa:hover { background: var(--rp-text, #111); color: #fff; border-color: var(--rp-text, #111); }
.rp-card__qa.is-adding { opacity: .6; cursor: wait; }

/* Sold out */
.rp-card__qa:disabled { opacity: .4; cursor: not-allowed; }

/* ── Dots ────────────────────────────────────────────────────── */
.rp-dots {
  display: flex; justify-content: center; gap: 6px;
  margin-top: 16px;
}
.rp-dot {
  width: 6px; height: 6px; border-radius: 50%;
  background: rgba(0,0,0,.18);
  border: none; padding: 0; cursor: pointer;
  transition: background .2s ease, transform .2s ease;
}
.rp-dot.is-active { background: var(--rp-text, #111); transform: scale(1.4); }

@media (max-width: 749px) {
  .rp-card { flex-basis: var(--rp-card-w-mobile, 170px); }
  .rp-title { font-size: calc(var(--rp-title-size, 22px) * .85); }
}
/* END_SECTION:related-products */

/* START_SECTION:services-cards (INDEX:83) */
.services-section { position: relative; padding: var(--section-padding, 48px) 0; }
.services-section .section-title { margin: 0 0 24px; text-align: var(--title-align, center); }
.services-section .section-title h2 { color: var(--title-color, #111); font-size: var(--title-font-size, 32px); font-weight: var(--title-font-weight, 700); }

.services-grid { display: grid; grid-template-columns: repeat(1, minmax(0, 1fr)); gap: var(--grid-gap, 24px); }
@media (min-width: 750px) { .services-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

.service-card { background: var(--card-bg, transparent); border: none; border-radius: var(--card-radius, 8px); overflow: visible; text-align: center; display: flex; flex-direction: column; align-items: center; gap: 12px; }

.service-card__media { position: relative; width: var(--image-size, 240px); height: var(--image-size, 240px); }
.service-card__img { width: 100%; height: 100%; object-fit: cover; display: block; border: none; border-radius: var(--card-radius, 8px); }

/* camada preta por cima da imagem */
.service-card__overlay-dim { position: absolute; inset: 0; background: #000; pointer-events: none; z-index: 1; border-radius: var(--card-radius, 8px); }

/* TEXTO sobre a imagem, centrado e sem sair fora */
.service-card__overlay {
  position: absolute; inset: 0; z-index: 2;
  display: flex; flex-direction: column; justify-content: center; align-items: center;
  text-align: center; padding: 12px; overflow: hidden;
}
.service-card__title, .service-card__subtitle {
  max-width: 92%;
  word-break: break-word;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
}
.service-card__title { -webkit-line-clamp: var(--title-lines, 2); margin: 0; }
.service-card__subtitle { -webkit-line-clamp: var(--subtitle-lines, 2); margin: 6px 0 0; opacity: .95; }

.service-card a.service-card__link { margin-top: 8px; }
/* END_SECTION:services-cards */

/* START_SECTION:servicos-header (INDEX:85) */
.brand-story-section{
  padding: var(--pad-y, 3rem) 1rem;
  text-align: var(--text-align, center);
}
.brand-story-wrap{
  max-width: var(--max-w, 920px);
  margin: 0 auto;
}

/* Título */
.brand-story-title{
  color: var(--title-color, #1f7a34);
  font-size: var(--title-size, 2rem);
  font-weight: var(--title-weight, 700);
  line-height: 1.2;
  margin: 0;
  text-shadow: none;
}

/* highlight no título (usa [[...]] no texto) */
.brand-story-title .highlight{
  position: relative;
  display: inline-block;
  z-index: 0;
}
.brand-story-title .highlight::after{
  content: "";
  position: absolute;
  left: 0; right: 0;
  height: var(--hl-height, 8px);
  bottom: var(--hl-offset, 2px);
  background: var(--hl-color, #C5DFC1);
  border-radius: var(--hl-radius, 2px);
  z-index: -1;
}

/* Subtexto */
.brand-story-sub{
  color: var(--sub-color, #6b7280); /* cinza */
  font-size: var(--sub-size, 1rem);
  font-weight: 400;
  line-height: 1.6;
  margin: var(--gap-1, 0.75rem) 0 0 0;
}

/* Linha final a negrito */
.brand-story-strong{
  color: var(--strong-color, #1f7a34);
  font-size: var(--strong-size, 1rem);
  font-weight: 700;
  line-height: 1.6;
  margin: var(--gap-2, 0.5rem) 0 0 0;
}

/* Botão (grupo e botão) */
.brand-story-buttons{
  display: flex;
  width: 100%;
  justify-content: var(--btn-justify, center);
  margin-top: var(--btn-mt, 1.25rem);
  margin-bottom: var(--btn-mb, 0rem);
}
@media (max-width: 749px){
  .brand-story-buttons{
    justify-content: var(--btn-justify-mobile, center);
  }
}
.brand-story-buttons .button{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: var(--btn-py, 0.9rem) var(--btn-px, 1.4rem);
  border-radius: var(--btn-radius, 9999px);
  font-size: var(--btn-fs, 1rem);
  font-weight: var(--btn-fw, 600);
  line-height: 1;
  min-width: var(--btn-minw, 0);
  text-transform: var(--btn-tt, none);
  text-decoration: none;

  /* matar contornos/retângulos dos temas */
  border: 0 !important;
  outline: none !important;
  box-shadow: none !important;
  background-clip: padding-box !important;
}
.brand-story-buttons .button::before,
.brand-story-buttons .button::after{ content: none !important; display:none !important; }
.brand-story-sub{ white-space: pre-line; }

.button--primary{ background: var(--btn-primary-bg, #ffffff) !important; color: var(--btn-primary-fg, #000000) !important; }
.button--secondary{ background: transparent !important; color: var(--btn-secondary-fg, #1f7a34) !important; border: 1.5px solid var(--btn-secondary-border, currentColor) !important; }

.brand-story-buttons .button:hover{
  opacity: var(--btn-hover-opacity, .9);
  transform: translateY(-1px);
  transition: opacity .2s ease, transform .2s ease;
}

/* responsivo suave */
@media (min-width: 990px){
  .brand-story-title{ font-size: var(--title-size-lg, var(--title-size)); }
  .brand-story-sub{ font-size: var(--sub-size-lg, var(--sub-size)); }
  .brand-story-strong{ font-size: var(--strong-size-lg, var(--strong-size)); }
}
/* END_SECTION:servicos-header */

/* START_SECTION:servicos-req (INDEX:86) */
/* === Secção === */
.svc-section{
  background: var(--sec-bg, #d86f61);
  padding: var(--sec-pad-y, 4rem) 1rem;
}
.svc-wrap{ max-width: var(--sec-max-w, 1200px); margin: 0 auto; }

/* Título */
.svc-title{
  color: var(--title-color, #1f7a34);
  text-align: center;
  font-weight: 700;
  font-size: var(--title-size, 2.0rem);
  line-height: 1.2;
  margin: 0 0 var(--title-mb, 1.6rem) 0;
}
@media(min-width: 990px){
  .svc-title{ font-size: var(--title-size-lg, 2.6rem); }
}

/* Grid */
.svc-grid{
  display: grid;
  gap: var(--grid-gap, 1.25rem);
  grid-template-columns: 1fr;
}
@media(min-width: 750px){ .svc-grid{ grid-template-columns: repeat(2, minmax(0,1fr)); } }
@media(min-width: 990px){ .svc-grid{ grid-template-columns: repeat(3, minmax(0,1fr)); } }

/* Card */
.svc-card{
  position: relative;
  background: var(--card-bg, #ffffff);
  color: var(--card-fg, #374151);
  border-radius: var(--card-radius, 16px);
  box-shadow: 0 8px 24px rgba(0,0,0,.08);
  padding: var(--card-pad-y, 2.2rem) 1.6rem;
  text-align: center;

  /* altura consistente + botão colado ao fundo */
  min-height: var(--card-min-h, 520px);
  display: flex;
  flex-direction: column;
}

/* Badge (sobreposto) */
.svc-badge{
  position: absolute;
  left: 50%;
  top: calc(-1 * var(--badge-overlap, 26px));
  transform: translateX(-50%);
  width: var(--badge-size, 56px);
  height: var(--badge-size, 56px);
  border-radius: 50%;
  background: var(--badge-bg, #e7f5ef);
  display: grid; place-items: center;
  box-shadow: 0 4px 10px rgba(0,0,0,.08);
  border: 4px solid var(--sec-bg, transparent);
}
.svc-badge svg, .svc-badge img{
  width: 28px; height: 28px; display: block;
  color: var(--badge-fg, #1f7a34);
}

/* Cabeçalho/valores com tamanhos configuráveis */
.svc-card-title{
  color: var(--card-title-color, #1f7a34);
  font-weight: 700;
  font-size: var(--card-title-fs, 1.3rem);
  margin: 1.7rem 0 0.3rem 0;
}
.svc-price{
  color: var(--price-color, #1f7a34);
  font-weight: 700;
  font-size: var(--price-fs, 1.8rem);
  margin: 0.25rem 0 0.5rem 0;
}
.svc-sub{
  color: var(--sub-color, #6b7280);
  font-size: var(--sub-fs, 1.0rem);
  text-align: var(--sub-align, center);
  line-height: var(--sub-lh, 1.6);
  margin: 0 0 var(--space-sub-list, 1rem) 0;
}

/* Lista de features */
.svc-list{ list-style: none; padding: 0; margin: 0 0 1.25rem 0; text-align: left; }
.svc-list li{
  display: flex; align-items: center; gap: 0.6rem;
  margin: 0.45rem 0; font-size: var(--list-fs, 1.0rem); line-height: 1.55;
}
.svc-list .check{
  width: 22px; height: 22px; border-radius: 50%;
  background: var(--check-bg, #d1fae5);
  display: inline-flex; align-items: center; justify-content: center;
  flex: 0 0 22px; margin: 0; overflow: visible;
}
.svc-list .check svg{ width: 13px; height: 13px; display: block; fill: var(--check-fg, #10b981); }

/* Botão */
.svc-cta{
  margin-top: auto;
  padding-top: var(--btn-mt, 0.5rem);
  display: flex; width: 100%; justify-content: var(--btn-justify, center);
}
.svc-cta .button{
  margin: 0 !important;
  width: 100%;
  display: inline-flex; align-items: center; justify-content: center;
  padding: var(--btn-py, 0.9rem) var(--btn-px, 1.2rem);
  border-radius: var(--btn-radius, 40px);
  text-decoration: none; line-height: 1; font-weight: 700;
  font-size: var(--btn-fs, 1rem);
  border: 0 !important; outline: none !important; box-shadow: none !important;
  background-clip: padding-box !important; position: relative;
}
.svc-cta .button::before, .svc-cta .button::after{ content:none !important; display:none !important; }
.svc-cta .button--primary{ background: var(--btn-bg, #e58d80) !important; color: var(--btn-fg, #ffffff) !important; }
.svc-cta .button--secondary{ background: transparent !important; color: var(--btn-bg, #e58d80) !important; border: 2px solid var(--btn-bg, #e58d80) !important; }
.svc-cta .button:hover{ opacity:.92; transform: translateY(-1px); transition:.2s; }
/* END_SECTION:servicos-req */

/* START_SECTION:testemunhos (INDEX:89) */
/* ════════════════════════════════════════════════
   TESTEMUNHOS — Magic Carousel
   ════════════════════════════════════════════════ */

.tm-section { padding: var(--tm-pad, 64px) 0 }

/* ── Header ── */
.tm-head { text-align: center; margin-bottom: 40px }
.tm-title {
  margin: 0 0 8px;
  color: var(--tm-title-color, #111);
  font-size: var(--tm-title-size, 36px);
  font-weight: var(--tm-title-weight, 700);
  line-height: 1.2;
}
.tm-subtitle {
  margin: 0;
  color: var(--tm-sub-color, #555);
  font-size: var(--tm-sub-size, 16px);
}

/* ── Slider ── */
.tm-slider { position: relative }

.tm-viewport {
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  -ms-overflow-style: none;
  -webkit-overflow-scrolling: touch;
}
.tm-viewport::-webkit-scrollbar { display: none }

.tm-track {
  display: flex;
  align-items: flex-start;
  gap: var(--tm-gap, 20px);
}

/* ── Item ── */
.tm-item {
  flex: 0 0 var(--tm-w-m, 100%);
  scroll-snap-align: center;
  transition: opacity .4s ease, filter .4s ease;
  will-change: opacity, filter;
}
@media (min-width: 750px) {
  .tm-item { flex-basis: var(--tm-w-t, 50%) }
}
@media (min-width: 990px) {
  .tm-item { flex-basis: var(--tm-w-d, 33.333%) }
}
.tm-item:not(.is-active) {
  opacity: var(--tm-inactive-op, .55);
  filter: grayscale(var(--tm-inactive-gray, 0%));
}

/* ── Card ── */
.tm-card {
  position: relative;
  padding: 32px 26px 24px;
  border-radius: var(--tm-radius, 20px);
  background: var(--tm-card-bg, rgba(255,255,255,.15));
  border: 1px solid var(--tm-card-border, rgba(255,255,255,.3));
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  box-shadow:
    0 2px 8px rgba(0,0,0,.04),
    0 8px 32px rgba(0,0,0,.06);
  transition:
    box-shadow .4s cubic-bezier(.4,0,.2,1),
    transform  .4s cubic-bezier(.4,0,.2,1);
  overflow: hidden;
}
.tm-item.is-active .tm-card {
  box-shadow:
    0 4px 16px rgba(0,0,0,.07),
    0 16px 48px rgba(0,0,0,.11);
  transform: translateY(-4px);
}

/* Ícone de aspas decorativo */
.tm-quote-icon {
  position: absolute;
  top: 18px; left: 20px;
  font-size: 56px;
  line-height: 1;
  color: var(--tm-quote-icon-color, rgba(220,69,66,.18));
  font-family: Georgia, serif;
  pointer-events: none;
  user-select: none;
  letter-spacing: 0;
}

/* ── Estrelas ── */
.tm-stars {
  display: inline-flex;
  gap: 3px;
  margin-bottom: 14px;
}
.tm-star { width: 15px; height: 15px }

/* ── Quote ── */
.tm-quote-wrap { position: relative; margin-bottom: 20px }

.tm-quote-inner {
  max-height: var(--tm-clamp, 152px);
  overflow: hidden;
  transition: max-height .6s cubic-bezier(.4,0,.2,1);
}
.tm-quote-inner.has-overflow:not(.is-open) {
  -webkit-mask-image: linear-gradient(to bottom, #000 45%, transparent 100%);
  mask-image:         linear-gradient(to bottom, #000 45%, transparent 100%);
}
.tm-quote-inner.is-open {
  -webkit-mask-image: none !important;
  mask-image:         none !important;
}

.tm-quote {
  margin: 0;
  color: var(--tm-quote-color, #222);
  font-size: var(--tm-quote-size, 14px);
  font-weight: var(--tm-quote-weight, 400);
  line-height: 1.7;
  font-style: italic;
}

/* ── Botão Ler mais / menos ── */
.tm-toggle {
  display: none;
  align-items: center;
  gap: 5px;
  margin-top: 10px;
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
  color: var(--tm-btn-color, #dc4542);
  font-size: 11.5px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  transition: opacity .2s ease;
  line-height: 1;
}
.tm-toggle.is-visible { display: inline-flex }
.tm-toggle:hover { opacity: .65 }

.tm-toggle-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 18px; height: 18px;
  border-radius: 50%;
  border: 1.5px solid currentColor;
  flex-shrink: 0;
  transition: transform .45s cubic-bezier(.4,0,.2,1), background .2s ease, color .2s ease;
}
.tm-toggle-icon svg {
  width: 9px; height: 9px;
  stroke: currentColor;
  fill: none;
  stroke-width: 2.5;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: transform .45s cubic-bezier(.4,0,.2,1);
}
.tm-toggle.is-open .tm-toggle-icon svg { transform: rotate(180deg) }
.tm-toggle:hover .tm-toggle-icon {
  background: var(--tm-btn-color, #dc4542);
  color: #fff;
}

/* ── Separador ── */
.tm-divider {
  width: 32px; height: 2px;
  background: var(--tm-btn-color, #dc4542);
  border-radius: 2px;
  margin: 0 0 14px;
  opacity: .5;
}

/* ── Autor ── */
.tm-author {
  font-size: 12px;
  font-weight: 700;
  color: var(--tm-author-color, #444);
  letter-spacing: .04em;
}

/* ── Dots ── */
.tm-dots {
  display: flex;
  justify-content: center;
  gap: 8px;
  margin-top: 24px;
}
.tm-dot {
  height: 6px;
  border-radius: 999px;
  border: none;
  cursor: pointer;
  transition: width .3s ease, background .3s ease, opacity .3s ease;
  padding: 0;
  width: 6px;
  background: var(--tm-dot-color, rgba(0,0,0,.2));
  opacity: .6;
}
.tm-dot.is-active {
  width: 22px;
  background: var(--tm-dot-active, #dc4542);
  opacity: 1;
}

/* ── Setas ── */
.tm-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 38px; height: 38px;
  border-radius: 50%;
  border: none;
  display: none;
  place-items: center;
  cursor: pointer;
  background: var(--tm-arrow-bg, #dc4542);
  box-shadow: 0 4px 16px rgba(0,0,0,.15);
  z-index: 5;
  transition: transform .25s ease, box-shadow .25s ease;
}
.tm-arrow:hover { transform: translateY(-50%) scale(1.08); box-shadow: 0 6px 20px rgba(0,0,0,.2) }
.tm-arrow svg { width: 16px; height: 16px; fill: #fff; position: relative }
.tm-prev { left: -14px }
.tm-next { right: -14px }
@media (min-width: 990px) { .tm-arrow.is-visible { display: grid } }

/* Grid mode (poucos cards) */
.tm--grid .tm-viewport { overflow: visible }
.tm--grid .tm-item { opacity: 1 !important; filter: none !important }
.tm--grid .tm-arrow,
.tm--grid .tm-dots { display: none !important }

/* Mobile tweaks */
@media (max-width: 749px) {
  .tm-card { padding: 26px 20px 20px }
  .tm-quote-icon { font-size: 44px; top: 14px; left: 16px }
  .tm-title { font-size: calc(var(--tm-title-size, 36px) * .78) }
}

/* Acessibilidade */
@media (prefers-reduced-motion: reduce) {
  .tm-item,
  .tm-quote-inner,
  .tm-card,
  .tm-toggle-icon svg,
  .tm-dot,
  .tm-arrow { transition: none !important }
}
/* END_SECTION:testemunhos */

/* START_SECTION:texto-formatado-avancado (INDEX:91) */
.texto-formatado {
  padding-top: var(--spc-top, 40px);
  padding-bottom: var(--spc-bottom, 40px);
}

.texto-formatado__container {
  margin-left: auto; margin-right: auto;
  max-width: var(--container-max, 1200px);
  padding-left: var(--container-pad-x, 16px);
  padding-right: var(--container-pad-x, 16px);
  display: flex; flex-direction: column;
  gap: var(--gap, 16px);
  align-items: var(--pos-cross, stretch);
}

.texto-formatado__wrap { display:flex; width:100%; justify-content: var(--pos-main, flex-start); }

.texto-formatado__content {
  width:100%; max-width: var(--content-max, 760px);
  text-align: var(--text-align, left);
  background: color-mix(in srgb, var(--box-bg, transparent) var(--box-bg-alpha, 0%), transparent);
  border: var(--box-border-w, 0px) solid var(--box-border, transparent);
  border-radius: var(--box-radius, 8px);
  box-shadow: var(--box-shadow, none);
  padding: var(--box-pad-y, 16px) var(--box-pad-x, 16px);
  transition: opacity .3s ease, transform .3s ease;
}

/* Título */
.texto-formatado__heading {
  margin: 0;
  font-size: var(--h-size, 54px);
  line-height: var(--h-lh, 1.1);
  font-weight: var(--h-weight, 800);
  letter-spacing: var(--h-tracking, 0);
  text-transform: var(--h-transform, none);
  color: var(--h-color, inherit);
}

/* Texto */
.texto-formatado__text {
  margin: 0;
  font-size: var(--t-size, 22px);
  line-height: var(--t-lh, 1.4);
  font-weight: var(--t-weight, 400);
  opacity: var(--t-opacity, 1);
  color: var(--t-color, inherit);
}
.texto-formatado__text :where(p){ margin:0; }
.texto-formatado__text :where(p + p){ margin-top: var(--para-gap, 8px); }

/* Caixa só no texto */
.texto-formatado--box-on-text .texto-formatado__heading-wrap { background:none; border:0; box-shadow:none; padding:0; }
.texto-formatado--box-on-text .texto-formatado__text-wrap    { background:inherit; border:inherit; box-shadow:inherit; border-radius:inherit; padding:inherit; }

/* ===================== REVEAL (hover/click) ===================== */
.reveal-container { cursor: var(--reveal-cursor, default); display: inline; }
.reveal-visible { display: inline; }

/* Estilo FADE/SLIDE (como tinhas) */
.reveal--fade .reveal-hidden {
  display: inline;
  opacity: 0;
  max-height: 0;
  overflow: hidden;
  transition: opacity var(--reveal-dur, .4s) ease, max-height var(--reveal-dur, .4s) ease;
}
.reveal--fade.reveal--hover .reveal-container:hover .reveal-hidden,
.reveal--fade.reveal--click .reveal-container.is-open .reveal-hidden {
  opacity: 1; max-height: 1000px;
}

/* Estilo BLUR (spoiler) — ocupa espaço desde início */
.reveal--blur .reveal-hidden {
  display: inline;
  filter: blur(var(--reveal-blur, 8px));
  opacity: var(--reveal-blur-opacity, .7);
  transition: filter var(--reveal-dur, .4s) ease, opacity var(--reveal-dur, .4s) ease;
}
.reveal--blur.reveal--hover .reveal-container:hover .reveal-hidden,
.reveal--blur.reveal--click .reveal-container.is-open .reveal-hidden {
  filter: blur(0); opacity: 1;
}

/* Mobile */
@media (max-width: 749px){
  .texto-formatado__container{ gap: var(--gap-m, 12px); }
  .texto-formatado__content{ max-width: var(--content-max-m, 100%); }
  .texto-formatado__heading{ font-size: var(--h-size-m, 32px); }
  .texto-formatado__text{ font-size: var(--t-size-m, 18px); }
}
/* END_SECTION:texto-formatado-avancado */

/* START_SECTION:video-banner (INDEX:93) */
.video-hero-section { position: relative; overflow: hidden; height: var(--hero-height, 100vh); }

/* Vídeo */
.video-hero-section video{
  position:absolute; inset:0;
  width:100%; height:100%; object-fit:cover; z-index:0;
  transition: filter .5s ease;
}
.video-hero-section.scrolled video{ filter: blur(10px) brightness(0.4); }

/* Overlay fullscreen (atrás da caixa) */
.video-hero-overlay{
  position:absolute; inset:0; z-index:1;
  background: black; opacity: var(--overlay-opacity, .5);
  display: var(--overlay-display, block);
}

/* Content wrapper */
.video-hero-content{
  position:relative; z-index:2; height:100%;
  display:flex; justify-content:var(--justify,center); align-items:var(--align,center);
  text-align:var(--text-align,center); padding:2rem; animation:fadeInWords 1s ease-out forwards;
}

/* Caixa (solid ou glass) */
.video-hero-inner-box{
  padding:2rem; padding-bottom:calc(2rem + var(--box-pb-extra,0rem))!important;
  border-radius:var(--box-border-radius,12px);
  border: var(--box-border-width,0px) solid var(--box-border-color,transparent);
  display:flex; flex-direction:column; align-items:var(--box-align,center); gap:var(--spacing-text-title,1rem);
  margin-left:var(--box-ml,auto)!important; margin-right:var(--box-mr,auto)!important;
  background: var(--box-bg, transparent);
}

/* Superfície GLASS (usa vars) */
.video-hero-inner-box.is-glass{
  --box-bg: linear-gradient(180deg, var(--box-glass-bg1, rgba(255,255,255,.14)), var(--box-glass-bg2, rgba(255,255,255,.08)));
  border-color: var(--box-glass-border, rgba(255,255,255,.35));
  backdrop-filter: blur(var(--box-glass-blur, 8px)) saturate(120%);
  -webkit-backdrop-filter: blur(var(--box-glass-blur, 8px)) saturate(120%);
}

/* Chips GLASS atrás de textos */
.glass-chip{
  display:inline-block;
  padding: var(--chip-py,.15em) var(--chip-px,.4em);
  border-radius: var(--chip-radius, 12px);
  background: linear-gradient(180deg, var(--chip-bg1, rgba(255,255,255,.14)), var(--chip-bg2, rgba(255,255,255,.08)));
  border: 1px solid var(--chip-border, rgba(255,255,255,.35));
  backdrop-filter: blur(var(--chip-blur,6px)) saturate(130%);
  -webkit-backdrop-filter: blur(var(--chip-blur,6px)) saturate(130%);
}

/* Anim */
@keyframes fadeInWords{ from{opacity:0; transform:translateY(20px)} to{opacity:1; transform:none} }

/* Mobile: esconde vídeo e usa poster como background */
@media (max-width: 749px){
  .video-hero-section.hide-video-mobile video{ display: none; }
  .video-hero-section.hide-video-mobile{
    background-image: var(--poster, none);
    background-size: cover;
    background-position: center;
  }
}

/* ===== CTA Group ===== */
.video-hero-buttons{
  display:flex; align-items:center; justify-content:var(--buttons-justify,center);
  gap: var(--buttons-gap, 1rem); flex-wrap:wrap;
  margin-top: var(--buttons-mt,1.2rem)!important; margin-bottom: var(--buttons-mb,0rem)!important;
}
@media (max-width:749px){ .video-hero-buttons{ justify-content: var(--buttons-justify-mobile, center); } }

/* Base do botão */
.video-hero-buttons .button{
  display:inline-flex; align-items:center; justify-content:center; gap:.5rem;
  height: auto; padding: var(--btn-py,.9rem) var(--btn-px,1.4rem);
  border-radius: var(--btn-radius-px, 40px)!important;
  font-weight: var(--btn-fw, 600); font-size: var(--btn-fs, 1rem); line-height:1;
  min-width: var(--btn-minw, 0); text-transform: var(--btn-tt, none);
  border:1px solid transparent; text-decoration:none; position:relative; cursor:pointer;
  transition: transform .15s ease, box-shadow .15s ease, background-color .15s ease, border-color .15s ease, color .15s ease, opacity .15s ease;
}
.video-hero-buttons .button:focus-visible{ outline:2px solid rgba(255,255,255,.35); outline-offset:2px; }

/* Variantes VISUAIS (Sólido / Ghost / Glass) */
.button.is-solid{
  background: var(--btn-solid-bg, #fff); color: var(--btn-solid-fg, #000);
  box-shadow: 0 2px 0 rgba(0,0,0,.18);
}
.button.is-ghost{
  color: var(--btn-ghost-fg, #fff);
  background: rgba(255,255,255,.06); border-color: rgba(255,255,255,.28);
  backdrop-filter: saturate(130%) blur(2px);
}
.button.is-glass{
  color: var(--btn-glass-fg, #fff);
  background: linear-gradient(180deg, var(--btn-glass-bg1, rgba(255,255,255,.14)), var(--btn-glass-bg2, rgba(255,255,255,.08)));
  border-color: var(--btn-glass-border, rgba(255,255,255,.35));
  backdrop-filter: blur(var(--btn-glass-blur,8px)) saturate(120%);
  -webkit-backdrop-filter: blur(var(--btn-glass-blur,8px)) saturate(120%);
}

/* ——— remover linhas vermelhas de debug nos botões ——— */
#shopify-section-{{ section.id }} .video-hero-buttons .button,
#shopify-section-{{ section.id }} .video-hero-buttons .button:focus,
#shopify-section-{{ section.id }} .video-hero-buttons .button:focus-visible,
#shopify-section-{{ section.id }} .video-hero-buttons .button::before,
#shopify-section-{{ section.id }} .video-hero-buttons .button::after{
  outline: 0 !important;
  box-shadow: none !important;
  border-color: transparent !important; /* caso algum estilo externo pinte a borda */
}

/* mantém apenas as bordas “legítimas” dos estilos ghost/glass */
#shopify-section-{{ section.id }} .video-hero-buttons .button.is-ghost{
  border: 1.5px solid var(--btn-ghost-fg) !important;
}
#shopify-section-{{ section.id }} .video-hero-buttons .button.is-glass{
  border: 1px solid var(--btn-glass-border, rgba(255,255,255,.35)) !important;
}

/* no editor do Shopify pode forçar outlines — garante que ficam off */
.shopify-design-mode #shopify-section-{{ section.id }} .video-hero-buttons .button{
  outline: 0 !important; box-shadow: none !important;
}


.video-hero-buttons .button:hover{ transform:translateY(-1px); }

/* Link (secundário como linha de texto) */
.video-hero-buttons .btn-link{
  color: var(--link-fg, #fff); font-weight:600;
  text-decoration: underline; text-underline-offset:4px; text-decoration-thickness:2px;
  transition: opacity .15s ease, transform .15s ease;
}
.video-hero-buttons .btn-link:hover{ opacity:.9; transform:translateY(-1px); }
/* END_SECTION:video-banner */