:root{
  /* Paleta marrom + verde */
  --brand-500:#B35D3D; /* principal terra */
  --brand-700:#9B4426; /* tom profundo */
  --brand-600:#C89B7A;
  --brand-400:#F0E7D6;
  --brand-mint:#6A8C69;
  --brand-purple:#3E4D4B;
  --brand-pink:#9BAFA8;

  --gray-50:#F5EEE1;
  --gray-200:#E7DAC9;
  --gray-600:#3E4D4B;
  --black:#1a1d1b;
}

html{scroll-behavior:smooth;overflow-x:hidden;}
body{overflow-x:hidden;}

/* Compensacao de barra de rolagem do Bootstrap: ao abrir um modal ele assume que
   body{overflow:hidden} escondeu a barra e desconta a largura dela do conteudo.
   Aqui a barra nunca some - html{overflow-x:hidden} faz o <html> ser o container
   de rolagem e corta a propagacao do overflow do <body> - e a trava do
   PetUnioScrollLock preserva a calha de proposito. Sem isto, todo modal encolhia
   a pagina uns 15px no desktop. */
/* Mesma lista de seletores que o Bootstrap ajusta (SELECTOR_FIXED_CONTENT e
   SELECTOR_STICKY_CONTENT). */
body.petunio-scroll-locked,
body.petunio-scroll-locked .fixed-top,
body.petunio-scroll-locked .fixed-bottom,
body.petunio-scroll-locked .is-fixed,
body.petunio-scroll-locked .sticky-top{padding-right:0 !important;}
body.petunio-scroll-locked .sticky-top{margin-right:0 !important;}
/* Fallback robusto para manter o header sticky no desktop */
.navbar.sticky-top{ z-index: 2000; }
@media (min-width: 992px){
  header.navbar{
    position: -webkit-sticky; /* Safari fallback */
    position: sticky;
    top: 0;
    z-index: 2000;
  }
  /* Modo fixo robusto (ativado via JS com .is-fixed-desktop) */
  header.navbar.is-fixed-desktop{
    position: fixed;
    top: 0; left: 0; right: 0;
    width: 100%;
  }
}
@media (min-width: 992px){
  main{ padding-top: var(--header-h, 0px); }
}
section{ scroll-margin-top: calc(var(--header-h, 0px) + 8px); }

/* Menu ativo (desktop) */
@media (min-width: 992px){
  .navbar .nav-link.is-active{
    background: color-mix(in srgb, var(--brand-mint) 18%, white);
    color: var(--brand-purple);
    border-radius: 999px;
    box-shadow: 0 10px 24px rgba(106,140,105,.18);
    transition: background .18s ease, color .18s ease, box-shadow .18s ease;
  }
  .navbar .nav-link.is-active:hover{
    background: color-mix(in srgb, var(--brand-mint) 28%, white);
  }
}
@media (min-width: 992px) and (max-width: 1199.98px){
  .navbar .navbar-nav{
    flex-wrap:wrap;
    justify-content:flex-end;
    row-gap:.15rem;
  }
  .navbar .nav-link{
    padding:.35rem .45rem;
    font-size:.9rem;
    line-height:1.2;
  }
}
.bg-gradient-light{background:linear-gradient(180deg,#ffffff 0,var(--brand-400) 100%)}
.hero-section.bg-gradient-light{
  background:
    radial-gradient(900px 460px at 82% 12%, color-mix(in srgb,var(--brand-mint) 20%, transparent) 0%, transparent 58%),
    radial-gradient(760px 420px at 12% 18%, color-mix(in srgb,var(--brand-500) 14%, transparent) 0%, transparent 62%),
    linear-gradient(180deg,#fff 0%,color-mix(in srgb,var(--brand-400) 78%, white) 58%,color-mix(in srgb,var(--brand-mint) 14%, white) 100%);
}
/* Seções com degradê suave da marca */
.section--brand-soft{
  background:
    linear-gradient(
      180deg,
      color-mix(in srgb, var(--brand-400) 16%, white) 0%,
      color-mix(in srgb, var(--brand-mint) 10%, white) 100%
    );
}
.section--brand-radial{
  background:
    radial-gradient(1200px 600px at 18% 12%, color-mix(in srgb, var(--brand-500) 12%, transparent) 0%, transparent 60%),
    radial-gradient(900px 520px at 82% 62%, color-mix(in srgb, var(--brand-mint) 10%, transparent) 0%, transparent 55%);
  background-color: color-mix(in srgb, var(--brand-400) 28%, white);
}
.section-band{min-height:240px}
.text-success-700{color:var(--brand-500)!important}
.btn-success-700{
  --bs-btn-bg: var(--brand-500);
  --bs-btn-border-color: var(--brand-500);
  --bs-btn-hover-bg: color-mix(in srgb, var(--brand-500) 88%, white);
  --bs-btn-hover-border-color: color-mix(in srgb, var(--brand-500) 88%, white);
  --bs-btn-active-bg: color-mix(in srgb, var(--brand-500) 75%, black);
  --bs-btn-active-border-color: color-mix(in srgb, var(--brand-500) 75%, black);
  --bs-btn-disabled-bg: color-mix(in srgb, var(--brand-500) 40%, white);
  --bs-btn-disabled-border-color: color-mix(in srgb, var(--brand-500) 40%, white);
  --bs-btn-color:#fff;
  --bs-btn-hover-color:#fff;
  --bs-btn-active-color:#fff;
  --bs-btn-disabled-color:rgba(255,255,255,.85);
  font-weight:700;
  border-radius:999px;
  box-shadow:0 18px 38px rgba(179,93,61,.35);
  transition:transform .2s ease, box-shadow .2s ease;
}
.btn-success-700:hover,
.btn-success-700:focus-visible{
  transform:translateY(-1px);
  box-shadow:0 24px 46px rgba(179,93,61,.38);
}
.btn-success-700:disabled{
  transform:none;
  box-shadow:none;
}
.btn-add-pet{
  border:none;
  border-radius:999px;
  background:linear-gradient(135deg,
    color-mix(in srgb, var(--brand-mint) 88%, white),
    color-mix(in srgb, var(--brand-mint) 60%, white));
  color:#0f2618;
  font-weight:600;
  font-size:1rem;
  padding:0.95rem 1.9rem;
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  box-shadow:0 18px 35px rgba(106,140,105,.25);
  transition:transform .2s ease, box-shadow .2s ease, background .2s ease;
}
.btn-add-pet:hover,
.btn-add-pet:focus-visible{
  color:#0f2618;
  transform:translateY(-1px);
  box-shadow:0 22px 42px rgba(106,140,105,.28);
}
.btn-add-pet:disabled{
  opacity:.6;
  cursor:not-allowed;
  box-shadow:none;
}

/* Cards de plano */
.plan-card{border:1px solid var(--gray-200);border-radius:16px; box-shadow:0 8px 24px rgba(0,0,0,.06); overflow:hidden; background:#fff; height:100%}
.plan-card .header{background:color-mix(in srgb, var(--brand-400) 65%, white);padding:16px 16px 14px;display:flex;flex-direction:column;gap:.75rem;min-height:190px;}
.plan-card-highlight{border:2px solid var(--brand-700);box-shadow:0 24px 52px rgba(17,17,17,.14),0 0 34px color-mix(in srgb,var(--brand-700) 18%, transparent);position:relative;z-index:2;}
.plan-card-highlight .header{background:linear-gradient(180deg,color-mix(in srgb,var(--brand-400) 88%, white),color-mix(in srgb,var(--brand-mint) 20%, white));}
.plan-card-highlight .btn-success-700{box-shadow:0 26px 52px rgba(179,93,61,.32);}

.promo-hero-callout{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.8rem;max-width:620px;padding:.82rem .95rem;border-radius:18px;border:1px solid color-mix(in srgb,var(--brand-700) 28%, white);background:linear-gradient(135deg,color-mix(in srgb,var(--brand-500) 16%, white),color-mix(in srgb,var(--brand-mint) 15%, white));box-shadow:0 18px 38px rgba(179,93,61,.16);}
.promo-hero-icon{width:2.4rem;height:2.4rem;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;background:linear-gradient(135deg,var(--brand-700),var(--brand-500));box-shadow:0 12px 24px rgba(179,93,61,.28);}
.promo-hero-callout strong,.promo-hero-callout span{display:block;}
.promo-hero-callout strong{color:var(--brand-purple);font-weight:800;line-height:1.18;}
.promo-hero-callout div>span{color:color-mix(in srgb,var(--brand-purple) 68%, white);font-size:.92rem;line-height:1.25;}
.promo-hero-link{color:var(--brand-700);font-weight:800;white-space:nowrap;text-decoration:none;}
.promo-hero-link:hover,.promo-hero-link:focus-visible{color:var(--brand-purple);text-decoration:underline;}

.promo-modal{border:0;border-radius:28px;overflow:hidden;box-shadow:0 34px 80px rgba(17,17,17,.26);}
.promo-modal-close{position:absolute;top:1rem;right:1rem;z-index:3;background-color:rgba(255,255,255,.82);border-radius:999px;padding:.65rem;}
.promo-modal-grid{display:grid;grid-template-columns:minmax(240px,.82fr) minmax(0,1fr);min-height:430px;background:#fff;}
.promo-modal-visual{position:relative;display:flex;align-items:center;justify-content:center;padding:2rem;background:radial-gradient(360px 260px at 38% 32%,color-mix(in srgb,var(--brand-500) 26%, transparent),transparent 62%),linear-gradient(135deg,color-mix(in srgb,var(--brand-400) 86%, white),color-mix(in srgb,var(--brand-mint) 22%, white));}
.promo-modal-visual img{width:min(220px,70%);height:auto;filter:drop-shadow(0 18px 30px rgba(17,17,17,.16));}
.promo-modal-seal{position:absolute;left:1.25rem;top:1.25rem;width:118px;height:118px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--brand-700),var(--brand-500));color:#fff;box-shadow:0 22px 42px rgba(179,93,61,.34);transform:rotate(-6deg);}
.promo-modal-seal span{font-size:2.25rem;font-weight:900;line-height:1;}
.promo-modal-seal small{font-weight:800;text-transform:uppercase;letter-spacing:.05em;}
.promo-modal-copy{padding:3.25rem 2.5rem 2.5rem;display:flex;flex-direction:column;justify-content:center;gap:1rem;}
.promo-modal-label{width:max-content;max-width:100%;display:inline-flex;align-items:center;border-radius:999px;padding:.35rem .8rem;background:color-mix(in srgb,var(--brand-mint) 22%, white);color:var(--brand-purple);font-weight:800;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;}
.promo-modal-title{margin:0;color:var(--brand-purple);font-size:clamp(1.6rem,3vw,2.2rem);line-height:1.05;font-weight:900;}
.promo-modal-copy p{margin:0;color:color-mix(in srgb,var(--brand-purple) 70%, white);font-size:1rem;line-height:1.45;}
.promo-modal-list{list-style:none;margin:.25rem 0 0;padding:0;display:grid;gap:.55rem;color:var(--brand-purple);font-weight:650;}
.promo-modal-list li{display:flex;gap:.5rem;align-items:flex-start;}
.promo-modal-list i{color:var(--brand-mint);font-size:1.05rem;}
.promo-modal-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.35rem;}

.lead-modal{border-radius:30px;border:1px solid color-mix(in srgb,var(--brand-400) 65%, white);box-shadow:0 26px 52px rgba(17,17,17,.18);overflow:hidden;position:relative;padding:0;}
.lead-modal-close{position:absolute;top:14px;right:14px;z-index:3;}
.lead-modal-hero{padding:2.5rem 1.5rem 2rem;background:linear-gradient(135deg,color-mix(in srgb,var(--brand-400) 70%, white) 0%,color-mix(in srgb,var(--brand-mint) 20%, white) 100%);position:relative;display:flex;flex-direction:column;align-items:center;gap:1rem;}
.lead-modal-img{width:120px;height:auto;object-fit:contain;filter:drop-shadow(0 12px 24px rgba(0,0,0,.12));}
.lead-modal-badge{position:absolute;bottom:-14px;left:50%;transform:translateX(-50%);background:#fff;border-radius:999px;padding:.4rem 1.1rem;font-weight:600;color:var(--brand-purple);box-shadow:0 14px 36px rgba(0,0,0,.12);display:inline-flex;align-items:center;gap:.4rem;}
.lead-modal-badge::before{content:"";width:10px;height:10px;border-radius:50%;background:var(--brand-mint);}
.lead-modal-body{padding:3.25rem 2rem 2.25rem;display:flex;flex-direction:column;gap:1.5rem;}
.lead-modal-title{font-size:1.4rem;font-weight:700;color:var(--brand-purple);}
.lead-modal-subtitle{margin:0;color:color-mix(in srgb,var(--brand-purple) 68%, white);}
.lead-form{display:flex;flex-direction:column;gap:1rem;}
.lead-form .form-floating>.form-control{border-radius:14px;border:1px solid color-mix(in srgb,var(--brand-purple) 20%, var(--brand-400));background:color-mix(in srgb,#fff 92%, var(--brand-400) 8%);}
.lead-form .form-floating>.form-control:focus{border-color:var(--brand-mint);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-mint) 28%, white);}
.lead-form .form-floating>label{color:color-mix(in srgb,var(--brand-purple) 55%, white);}
.lead-form-footer{display:flex;flex-direction:column;gap:.65rem;margin-top:.5rem;}
.lead-form-footer small{font-size:.8rem;}
.lead-form-feedback{display:flex;flex-direction:column;gap:.75rem;}
.lead-form-feedback h6{font-weight:700;color:var(--brand-purple);}
.lead-form-feedback p{color:color-mix(in srgb,var(--brand-purple) 65%, white);}
.lead-feedback-icon{font-size:2.4rem;}
#leadModal .modal-dialog{margin-top:clamp(4rem,12vh,7rem);margin-bottom:clamp(2rem,10vh,5rem);}
#leadModal .modal-dialog.modal-dialog-centered{align-items:flex-start;}


.plan-card .header .plan-title-wrap{display:flex;flex-direction:column;gap:.45rem;min-height:120px;justify-content:space-between;}
.plan-price{font-size:1.6rem;font-weight:800;min-height:2.75rem;display:flex;align-items:center;}
.plan-price-promo{min-height:3.4rem;flex-direction:column;align-items:flex-start;justify-content:center;gap:.12rem;}
.plan-price-current{display:block;color:var(--brand-700);font-size:1.66rem;line-height:1.05;}
.plan-price-before,.plan-senior-before{display:inline-flex;color:color-mix(in srgb,var(--brand-purple) 54%, white);font-size:.82rem;line-height:1.2;font-weight:700;}
.plan-price-before s,.plan-senior-before s{text-decoration-thickness:2px;}
:root{--plan-info-block-min-height:192px;}
.plan-badge-row{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:.4rem;
  min-height:1.8rem;
}
.plan-badge-row:empty::before{
  content:"";
  display:block;
  width:1px;
  height:1px;
}
.plan-badge{
  display:inline-flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  padding:.34rem .7rem;
  border-radius:999px;
  font-size:.76rem;
  line-height:1;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.plan-badge-best{
  background:var(--brand-700);
  color:#fff;
  box-shadow:0 10px 20px rgba(179,93,61,.22);
}
.plan-badge-soft{
  background:color-mix(in srgb,var(--brand-mint) 32%, white);
  color:var(--brand-purple);
  border:1px solid color-mix(in srgb,var(--brand-mint) 55%, white);
}
.plan-badge-promo{gap:.25rem;background:linear-gradient(135deg,var(--brand-700),var(--brand-500));color:#fff;box-shadow:0 12px 22px rgba(179,93,61,.24);}
.plan-senior-option{
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  gap:.62rem;
  padding:.85rem;
  min-height:var(--plan-info-block-min-height);
  border-radius:14px;
  background:rgba(255,255,255,.72);
  border:1px solid color-mix(in srgb,var(--brand-purple) 14%, white);
}
.plan-senior-copy{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:.24rem;
  color:var(--brand-purple);
}
.plan-senior-label{
  display:inline-flex;
  align-items:center;
  gap:.42rem;
  font-size:1rem;
  line-height:1.2;
  font-weight:800;
  color:color-mix(in srgb,var(--brand-purple) 80%, white);
}
.plan-senior-label i{color:var(--brand-700);}
.plan-senior-description{
  display:block;
  font-size:.8rem;
  line-height:1.3;
  color:color-mix(in srgb,var(--brand-purple) 66%, white);
}
.plan-senior-age{
  display:inline-flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  padding:.22rem .58rem;
  border-radius:999px;
  background:color-mix(in srgb,var(--brand-mint) 28%, white);
  color:var(--brand-purple);
  border:1px solid color-mix(in srgb,var(--brand-mint) 48%, white);
  font-size:.76rem;
  line-height:1;
  font-weight:800;
  letter-spacing:.02em;
}
.plan-senior-copy strong{
  white-space:nowrap;
  font-size:1.08rem;
  line-height:1.2;
  color:var(--brand-purple);
}
.plan-senior-copy .plan-senior-price{color:var(--brand-700);}
.plan-senior-cta{
  --bs-btn-color:#fff;
  --bs-btn-bg:var(--brand-mint);
  --bs-btn-border-color:var(--brand-mint);
  --bs-btn-hover-color:#fff;
  --bs-btn-hover-bg:color-mix(in srgb,var(--brand-mint) 82%, var(--brand-700));
  --bs-btn-hover-border-color:color-mix(in srgb,var(--brand-mint) 82%, var(--brand-700));
  --bs-btn-active-color:#fff;
  --bs-btn-active-bg:color-mix(in srgb,var(--brand-mint) 70%, var(--brand-700));
  --bs-btn-active-border-color:color-mix(in srgb,var(--brand-mint) 70%, var(--brand-700));
  width:100%;
  font-weight:700;
  margin-top:.05rem;
  border-radius:999px;
  box-shadow:0 12px 24px rgba(106,140,105,.24);
}
.plan-card-note{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:.58rem;
  min-height:var(--plan-info-block-min-height);
  padding:.95rem;
  border-radius:14px;
  background:rgba(255,255,255,.28);
  border:1px solid color-mix(in srgb,var(--gray-200) 72%, white);
  color:color-mix(in srgb,var(--brand-purple) 82%, white);
}
.plan-card-note-heading{
  display:flex;
  align-items:center;
  gap:.52rem;
}
.plan-card-note-icon{
  width:1.75rem;
  height:1.75rem;
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  background:color-mix(in srgb,var(--gray-200) 70%, white);
  color:color-mix(in srgb,var(--brand-purple) 48%, white);
  font-size:.92rem;
}
.plan-card-note strong{
  display:block;
  font-size:1rem;
  line-height:1.2;
  font-weight:700;
}
.plan-card-note p{
  margin:0;
  font-size:.88rem;
  line-height:1.35;
  color:color-mix(in srgb,var(--brand-purple) 56%, white);
}
.plan-card-note-tags{
  display:flex;
  flex-wrap:wrap;
  gap:.35rem;
}
.plan-card-note-tag{
  display:inline-flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  padding:.2rem .48rem;
  border-radius:999px;
  background:rgba(255,255,255,.45);
  color:color-mix(in srgb,var(--brand-purple) 52%, white);
  border:1px solid color-mix(in srgb,var(--gray-200) 82%, white);
  font-size:.72rem;
  line-height:1;
  font-weight:600;
}
.plan-feats{padding: 12px 16px 16px}
.plan-feats li{margin:.45rem 0;display:flex;align-items:flex-start;gap:.75rem;}
.plan-feats i{color:var(--brand-mint)}
.plan-feats .feature-copy{display:flex;flex-direction:column;gap:.12rem;line-height:1.25;}
.plan-feats .feature-label{font-weight:650;color:var(--brand-purple);}
.plan-feats .feature-value{font-size:.86rem;color:color-mix(in srgb,var(--brand-purple) 62%, white);}
.plan-feats li .feature-icon{
  width:1.5rem;
  height:1.5rem;
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:color-mix(in srgb, var(--brand-mint) 25%, white);
  color:var(--brand-mint);
  flex-shrink:0;
  font-size:1rem;
}
.plan-feats li.feature-on .feature-icon{
  background:color-mix(in srgb, var(--brand-mint) 34%, white);
  color:color-mix(in srgb, var(--brand-mint) 72%, black);
}
.plan-feats li.feature-on .feature-icon i{
  color:color-mix(in srgb, var(--brand-mint) 72%, black);
}
.plan-feats li.feature-off{
  color:#c85d54;
}
.plan-feats li.feature-off .feature-icon{
  background:color-mix(in srgb, #f04438 10%, white);
  color:#c85d54;
}
.plan-feats li.feature-off .feature-icon i,
.plan-feats li.feature-off .feature-label,
.plan-feats li.feature-off .feature-value{
  color:#c85d54;
}
.plan-includes-title{
  letter-spacing:.06em;
}
.plan-addons{
  margin-top:1.75rem;
  padding-top:1.25rem;
  border-top:1px dashed color-mix(in srgb, var(--brand-purple) 22%, var(--brand-400));
}
.plan-addons-title{
  font-weight:600;
  color:var(--brand-600);
  font-size:.9rem;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.plan-addon-list{
  display:grid;
  gap:.75rem;
}
.plan-addon{
  display:flex;
  align-items:center;
  gap:.75rem;
  padding:.75rem 1rem;
  border-radius:14px;
  border:1px solid color-mix(in oklab, var(--brand-500) 22%, white);
  background:color-mix(in oklab, var(--brand-500) 10%, white);
  font-weight:500;
  color:var(--brand-purple);
}
.plan-addon-icon{
  width:34px;
  height:34px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:color-mix(in srgb, var(--brand-600) 40%, white);
  color:var(--brand-700);
  font-size:1.05rem;
}

.badge-best{background:var(--brand-700);}
.plans-carousel{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:1rem;
  --plan-gap:clamp(1rem,3vw,1.5rem);
  --plan-peek:clamp(40px,10vw,140px);
  --plans-fade-color:var(--bs-body-bg,#fff);
  overflow:visible;
}
.plans-carousel::before,
.plans-carousel::after{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  width:var(--plan-peek);
  pointer-events:none;
  z-index:2;
  opacity:0;
  transition:opacity .35s ease;
  background:none;
}
.plans-carousel::before{left:0;}
.plans-carousel::after{right:0;transform:scaleX(-1);}
.plans-carousel.has-left::before{opacity:1;}
.plans-carousel.has-right::after{opacity:1;}
.plans-nav{
  display:none;
  justify-content:flex-end;
  align-self:flex-end;
}
.plans-carousel.show-controls .plans-nav{display:flex;}
.plans-track{
  position:relative;
  display:flex;
  flex-wrap:nowrap;
  gap:var(--plan-gap);
  overflow-x:auto;
  overscroll-behavior-x:contain;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  scroll-padding-inline:calc(var(--plan-peek)*0.65);
  padding:0 calc(var(--plan-peek)*0.65);
  margin-inline:calc(var(--plan-peek)*-0.35);
  -ms-overflow-style:none;
  scrollbar-width:none;
  touch-action:pan-y pan-x;
  cursor:grab;
}
.plans-track::-webkit-scrollbar{display:none;}
.plans-track:focus{outline:none;}
.plans-track:focus-visible{outline:3px solid var(--brand-mint);outline-offset:3px;}
.plans-track.is-dragging{
  cursor:grabbing;
  user-select:none;
}
.plans-track.is-dragging *{user-select:none;}
.plan-slide{
  flex:0 0 85%;
  min-width:220px;
  max-width:360px;
  scroll-snap-align:center;
  scroll-snap-stop:always;
  transition:transform .4s ease,opacity .4s ease,filter .4s.ease;
  will-change:transform,opacity;
}
.plans-carousel.is-overflowing .plan-slide.is-partial{opacity:.45;transform:scale(.88);filter:saturate(.7);}
.plans-carousel.is-overflowing .plan-slide.is-partial.is-near{opacity:.75;transform:scale(.94);}
.plans-carousel.is-overflowing .plan-slide.is-partial.is-far{opacity:.55;transform:scale(.9);}
.plans-carousel.is-overflowing .plan-slide.is-active{opacity:1;transform:scale(1);filter:none;z-index:1;}
.plans-carousel.is-overflowing .plan-slide.is-full{opacity:1;transform:scale(1);filter:none;}
.plan-slide > .plan-card{height:100%;}
@media (min-width:480px){
  .plan-slide{flex-basis:62%;}
}
@media (min-width:768px){
  .plan-slide{flex-basis:48%;}
}
@media (min-width:992px){
  .plan-slide{flex-basis:31%;}
}
@media (min-width:1200px){
  .plan-slide{flex-basis:24%;}
}
@media (min-width:1280px){
  .plan-slide{flex-basis:calc((100% - var(--plan-gap)*3)/4);}
}
@media (prefers-reduced-motion:reduce){
  .plans-track{scroll-behavior:auto;}
  .plan-slide{transition:none;}
}
.plans-carousel:not(.is-overflowing) .plans-track{
  margin-inline:0;
  padding-inline:0;
  justify-content:center;
}
.plans-carousel:not(.is-overflowing) .plan-slide{
  flex:1 1 calc((100% - var(--plan-gap)*3)/4);
  max-width:none;
}
@media (max-width:575.98px){
  .plans-carousel:not(.is-overflowing) .plan-slide{flex-basis:100%;}
}
/* Tabela de comparacao */
#compareTable th{white-space:nowrap}
#compareTable td.yes{color:var(--brand-700)}
#compareTable td.no{color:var(--brand-700)}

/* Hero imagem */
.hero-cover{aspect-ratio:16/9;background:var(--gray-200);}
.hero-cover img{display:block;transition:transform .3s ease;}
.hero-cover:hover img{transform:scale(1.02);}

/* Quiz modal */
.quiz-modal{border-radius:24px;border:1px solid var(--gray-200);box-shadow:0 32px 60px rgba(17,17,17,.18);background:#fff;}
.quiz-hero{max-width:520px;margin:0 auto;}
.quiz-avatar-wrap{width:92px;height:92px;border-radius:50%;background:color-mix(in srgb,var(--brand-400) 60%, white);padding:6px;display:flex;align-items:center;justify-content:center;box-shadow:0 14px 30px rgba(17,17,17,.12);}
.quiz-avatar{width:100%;height:100%;object-fit:cover;border-radius:50%;}
.quiz-title{font-weight:700;font-size:1.55rem;color:var(--brand-purple);margin-bottom:.35rem;}
.quiz-subtitle{margin:0;font-size:.95rem;}
.quiz-form{max-width:520px;margin:0 auto;display:flex;flex-direction:column;gap:1.75rem;text-align:left;}
.quiz-step{display:flex;flex-direction:column;gap:1rem;min-height:120px;}
.quiz-label{font-weight:600;color:var(--brand-purple);}
.quiz-input{border-radius:18px;border:1px solid var(--gray-200);padding:1rem 1.25rem;background:var(--gray-50);font-size:1.05rem;transition:border-color .2s ease, box-shadow .2s ease;}
.quiz-input:focus{border-color:var(--brand-mint);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-mint) 30%, white);}
.quiz-choice-grid{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));}
.quiz-choice-grid-lg{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));}
.btn-check + .quiz-choice{border-radius:18px;border:1px solid var(--gray-200);padding:1rem 1.25rem;background:#fff;text-align:center;font-weight:600;color:var(--brand-purple);cursor:pointer;transition:all .2s ease;box-shadow:0 10px 24px rgba(17,17,17,.06);}
.btn-check:checked + .quiz-choice{background:color-mix(in srgb,var(--brand-mint) 85%, white);color:#fff;border-color:var(--brand-mint);box-shadow:0 20px 36px rgba(17,17,17,.16);}
.btn-check + .quiz-choice:hover{border-color:var(--brand-mint);box-shadow:0 16px 32px rgba(17,17,17,.12);}
.btn-check:focus-visible + .quiz-choice{outline:3px solid color-mix(in srgb,var(--brand-mint) 55%, white);outline-offset:3px;}
.quiz-footer{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;justify-content:space-between;padding:1.5rem 1.75rem;background:var(--gray-50);border-top:1px solid var(--gray-200);}
.quiz-actions{display:flex;gap:.75rem;}
.quiz-primary{min-width:200px;padding:.9rem 1.5rem;font-weight:600;border-radius:999px;box-shadow:0 18px 32px rgba(179,93,61,.18);}
.quiz-nav{padding:.9rem 1.4rem;border-radius:999px;border-color:var(--gray-200);color:var(--brand-purple);}
.modal-dialog.checkout-active{max-width:1080px;}
.quiz-modal.checkout-active{padding:1rem 1.5rem 2rem;}
.quiz-modal.checkout-active .quiz-hero{display:none;}
.quiz-modal.checkout-active .quiz-form{max-width:none;}
.checkout-page #chatbot-fab,
.checkout-page #chatbot-whatsapp,
.checkout-page #chatbot-minimized{display:none !important;}
body.modal-open #chatbot-fab,
body.modal-open #chatbot-whatsapp,
body.modal-open #chatbot-minimized,
body.compare-modal-open #chatbot-fab,
body.compare-modal-open #chatbot-whatsapp,
body.compare-modal-open #chatbot-minimized{display:none !important;}
.checkout-mobile-total{display:none;align-items:center;justify-content:space-between;gap:.5rem;margin:0 0 1rem;border:1px solid var(--gray-200);border-radius:16px;padding:.85rem 1.25rem;background:var(--gray-50);font-weight:600;color:var(--brand-purple);}
.checkout-mobile-total strong{font-size:1.15rem;color:var(--brand-500);}
.checkout-mobile-pet-card{display:none;}
.checkout-wizard{display:flex;flex-direction:column;gap:1.5rem;position:relative;}
.checkout-consultor-banner{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.65rem 1rem;border:1px dashed var(--gray-300);border-radius:12px;background:var(--gray-50);color:var(--gray-700);font-size:.95rem;}
.checkout-consultor-banner strong{color:var(--brand-mint);}
.checkout-consultor-label{display:flex;align-items:center;gap:.35rem;flex:1;}
.checkout-consultor-banner .btn-link{font-weight:600;}
.checkout-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem;}
.checkout-stepper{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.75rem;}
.checkout-step{display:flex;flex-direction:column;align-items:center;min-width:110px;text-align:center;color:var(--gray-500);font-size:.88rem;font-weight:600;}
.checkout-step-button{appearance:none;border:0;background:transparent;padding:0;margin:0;display:flex;flex-direction:column;align-items:center;text-align:center;color:inherit;font:inherit;cursor:pointer;}
.checkout-step-button:focus{outline:none;}
.checkout-step-button:focus-visible .checkout-step-index{outline:3px solid color-mix(in srgb,var(--brand-mint) 35%, white);outline-offset:3px;}
.checkout-step-index{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--gray-100);margin-bottom:.35rem;transition:background .2s ease,color .2s ease;}
.checkout-step.is-active{color:var(--brand-purple);}
.checkout-step.is-active .checkout-step-index{background:var(--brand-purple);color:#fff;}
.checkout-step.is-done{color:var(--brand-mint);}
.checkout-step.is-done .checkout-step-index{background:var(--brand-mint);color:#fff;}
.checkout-step.is-clickable .checkout-step-button:hover .checkout-step-index{background:var(--brand-purple);color:#fff;box-shadow:0 8px 16px color-mix(in srgb,var(--brand-purple) 20%, transparent);}
.checkout-step.is-clickable .checkout-step-button:hover .checkout-step-label{color:var(--brand-purple);}
.checkout-alerts .alert{margin-bottom:0;}
.checkout-content{background:#fff;border:1px solid var(--gray-200);border-radius:20px;padding:1.75rem;box-shadow:0 16px 24px rgba(17,17,17,.08);}
.checkout-section{margin-bottom:1.75rem;}
.checkout-section:last-of-type{margin-bottom:0;}
.checkout-section-title{font-size:1.05rem;font-weight:600;color:var(--brand-purple);margin-bottom:1rem;}
.checkout-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));}
.checkout-form .form-control{border-radius:14px;border:1px solid var(--gray-200);padding:.85rem 1rem;font-size:1rem;background:var(--gray-50);transition:border-color .2s ease,box-shadow .2s ease;}
.checkout-form .form-control:focus{border-color:var(--brand-mint);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-mint) 25%, white);}
.checkout-plan-picker{position:relative;display:grid;gap:.55rem;z-index:1;}
.checkout-plan-picker.is-open{z-index:40;}
.checkout-plan-picker-toggle{width:100%;min-height:58px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.75rem;text-align:left;border:1px solid var(--gray-200);border-radius:14px;background:var(--gray-50);padding:.75rem .9rem;color:var(--brand-purple);transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;}
.checkout-plan-picker-toggle:hover,.checkout-plan-picker-toggle:focus{border-color:var(--brand-mint);background:#fff;box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-mint) 16%, white);}
.checkout-plan-picker-toggle strong,.checkout-plan-picker-toggle small{display:block;min-width:0;overflow-wrap:anywhere;}
.checkout-plan-picker-toggle strong{font-size:.98rem;line-height:1.2;}
.checkout-plan-picker-toggle small{margin-top:.15rem;color:var(--brand-500);font-weight:700;}
.checkout-plan-picker-toggle i{color:var(--brand-purple);transition:transform .2s ease;}
.checkout-plan-picker.is-open .checkout-plan-picker-toggle i{transform:rotate(180deg);}
.checkout-plan-picker-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:.26rem .55rem;background:color-mix(in srgb,var(--brand-mint) 18%, white);color:var(--brand-700);font-size:.72rem;font-weight:800;white-space:nowrap;}
.checkout-plan-picker-badge-promo{background:linear-gradient(135deg,var(--brand-700),var(--brand-500));color:#fff;}
.checkout-plan-picker-menu{display:none;position:absolute;top:calc(100% + .55rem);left:0;right:0;gap:.5rem;max-height:min(70vh,640px);overflow-y:auto;padding:.55rem;border:1px solid color-mix(in srgb,var(--brand-mint) 28%, var(--gray-200));border-radius:16px;background:#fff;box-shadow:0 16px 30px rgba(17,17,17,.08);}
.checkout-plan-picker.is-open .checkout-plan-picker-menu{display:grid;}
.checkout-plan-option{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.6rem 1rem;align-items:center;border:1px solid var(--gray-200);border-radius:12px;background:#fff;padding:.8rem .9rem;text-align:left;color:var(--brand-purple);transition:border-color .2s ease,background .2s ease,box-shadow .2s ease;}
.checkout-plan-option:hover,.checkout-plan-option:focus{border-color:var(--brand-mint);background:color-mix(in srgb,var(--brand-mint) 7%, white);box-shadow:0 8px 18px rgba(17,17,17,.06);}
.checkout-plan-option.is-selected{border-color:var(--brand-mint);background:color-mix(in srgb,var(--brand-mint) 9%, white);}
.checkout-plan-option.is-recommended{border-color:color-mix(in srgb,var(--brand-500) 45%, var(--gray-200));box-shadow:inset 3px 0 0 var(--brand-500);}
.checkout-plan-option-main{display:flex;align-items:center;gap:.5rem;min-width:0;flex-wrap:wrap;}
.checkout-plan-option-name{font-weight:800;line-height:1.2;overflow-wrap:anywhere;}
.checkout-plan-option-badge{display:inline-flex;align-items:center;border-radius:999px;padding:.22rem .5rem;background:var(--brand-500);color:#fff;font-size:.7rem;font-weight:800;}
.checkout-plan-option-badge-promo{background:var(--brand-mint);}
.checkout-plan-option-meta{display:flex;flex-direction:column;align-items:flex-end;text-align:right;gap:.1rem;}
.checkout-plan-option-meta strong{color:var(--brand-500);white-space:nowrap;}
.checkout-plan-option-meta small{color:var(--gray-600);font-size:.78rem;white-space:nowrap;}
.checkout-breed-combobox{position:relative;z-index:1;}
.checkout-breed-combobox.is-open{z-index:45;}
.checkout-breed-combobox-toggle{width:100%;min-height:44px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.65rem;border:1px solid var(--gray-200);border-radius:.375rem;background:#fff;padding:.375rem .75rem;text-align:left;color:var(--brand-purple);transition:border-color .2s ease,box-shadow .2s ease;}
.checkout-breed-combobox-toggle span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.checkout-breed-combobox-toggle i{color:var(--brand-purple);transition:transform .2s ease;}
.checkout-breed-combobox-toggle:hover,.checkout-breed-combobox-toggle:focus{border-color:var(--brand-mint);box-shadow:0 0 0 .2rem color-mix(in srgb,var(--brand-mint) 18%, transparent);}
.checkout-breed-combobox-toggle.is-placeholder{color:var(--gray-600);}
.checkout-breed-combobox-toggle.is-invalid{border-color:#dc3545;}
.checkout-breed-combobox-toggle:disabled{background:var(--gray-50);color:var(--gray-600);cursor:not-allowed;opacity:1;}
.checkout-breed-combobox.is-open .checkout-breed-combobox-toggle i{transform:rotate(180deg);}
.checkout-breed-combobox-menu{display:none;position:absolute;top:calc(100% + .45rem);left:0;right:0;max-height:min(58vh,390px);padding:.55rem;border:1px solid color-mix(in srgb,var(--brand-mint) 26%, var(--gray-200));border-radius:14px;background:#fff;box-shadow:0 16px 30px rgba(17,17,17,.1);}
.checkout-breed-combobox.is-open .checkout-breed-combobox-menu{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:.5rem;}
.checkout-breed-search{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.45rem;margin:0;padding:.45rem .6rem;border:1px solid var(--gray-200);border-radius:10px;background:var(--gray-50);color:var(--brand-purple);}
.checkout-breed-search input{width:100%;min-width:0;border:0;background:transparent;outline:0;color:var(--brand-purple);}
.checkout-breed-search input::placeholder{color:var(--gray-600);}
.checkout-breed-options{display:grid;gap:.35rem;overflow-y:auto;padding-right:.2rem;}
.checkout-breed-option{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.5rem;border:1px solid transparent;border-radius:10px;background:#fff;padding:.55rem .65rem;text-align:left;color:var(--brand-purple);font-weight:700;line-height:1.2;transition:border-color .2s ease,background .2s ease;}
.checkout-breed-option:hover,.checkout-breed-option:focus{border-color:var(--brand-mint);background:color-mix(in srgb,var(--brand-mint) 8%, white);outline:0;}
.checkout-breed-option.is-selected{border-color:var(--brand-mint);background:color-mix(in srgb,var(--brand-mint) 12%, white);}
.checkout-breed-empty{margin:0;padding:.35rem .2rem;color:var(--gray-600);font-size:.9rem;}
.checkout-simple-combobox .checkout-breed-combobox-menu{max-height:min(42vh,240px);}
.checkout-footer{display:flex;justify-content:flex-end;gap:1rem;margin-top:1.5rem;}
.checkout-footer .btn{min-width:160px;padding:.85rem 1.5rem;border-radius:999px;font-weight:600;}
.checkout-loading{min-height:220px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:1rem;}
.checkout-submitting-overlay{position:absolute;inset:0;background:rgba(255,255,255,.94);display:flex;align-items:center;justify-content:center;padding:2rem;border-radius:24px;z-index:20;text-align:center;}
.checkout-submitting-panel{background:#fff;border-radius:20px;padding:2rem;box-shadow:0 18px 38px rgba(17,17,17,.18);max-width:560px;width:100%;}
.checkout-processing-meter{--checkout-progress:0%;width:104px;height:104px;margin:0 auto 1rem;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--brand-mint) var(--checkout-progress),var(--gray-200) 0);position:relative;color:var(--brand-purple);font-weight:900;font-size:1.35rem;}
.checkout-processing-meter::before{content:"";position:absolute;inset:8px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--brand-mint) 14%, var(--gray-200));}
.checkout-processing-meter span{position:relative;z-index:1;}
.checkout-processing-title{margin:0 0 .35rem;color:var(--brand-purple);font-weight:800;}
.checkout-processing-message{margin:0 auto;color:var(--gray-600);font-size:.92rem;max-width:420px;}
.checkout-processing-message.is-delayed{color:var(--brand-700);font-weight:700;}
.checkout-processing-groups{list-style:none;margin:1.25rem 0 0;padding:0;display:grid;gap:.65rem;text-align:left;}
.checkout-processing-group{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.75rem .85rem;border:1px solid var(--gray-200);border-radius:14px;background:var(--gray-50);}
.checkout-processing-group.is-success{border-color:color-mix(in srgb,var(--brand-mint) 45%, var(--gray-200));background:color-mix(in srgb,var(--brand-mint) 9%, white);}
.checkout-processing-group.is-failed{border-color:color-mix(in srgb,var(--brand-500) 45%, var(--gray-200));background:color-mix(in srgb,var(--brand-500) 8%, white);}
.checkout-processing-status{display:inline-flex;align-items:center;gap:.35rem;color:var(--gray-600);font-size:.78rem;font-weight:800;white-space:nowrap;}
.checkout-processing-status .spinner-border{width:1rem;height:1rem;border-width:.14rem;color:var(--brand-mint);}
.checkout-processing-group.is-success .checkout-processing-status{color:var(--brand-mint);}
.checkout-processing-group.is-failed .checkout-processing-status{color:var(--brand-700);}
.checkout-processing-main{min-width:0;display:flex;flex-direction:column;gap:.1rem;}
.checkout-processing-main strong{color:var(--brand-purple);font-size:.94rem;line-height:1.2;overflow-wrap:anywhere;}
.checkout-processing-main small{color:var(--gray-600);line-height:1.25;overflow-wrap:anywhere;}
.checkout-processing-detail{font-weight:700;color:var(--brand-700) !important;}
.checkout-processing-price{color:var(--brand-500);font-size:.88rem;font-weight:800;white-space:nowrap;}
.checkout-review-list{display:grid;gap:.75rem;margin:0;}
.checkout-review-list dt{font-weight:600;color:var(--brand-purple);}
.checkout-review-list dd{margin:0;color:var(--gray-700);}
.checkout-stage-notice{border:1px solid color-mix(in srgb,var(--brand-mint) 35%, var(--gray-200));border-radius:16px;background:color-mix(in srgb,var(--brand-mint) 8%, white);padding:1rem;margin-bottom:1.25rem;}
.checkout-stage-notice-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:start;}
.checkout-stage-notice h5{margin:0 0 .35rem;font-size:1rem;font-weight:700;color:var(--brand-purple);}
.checkout-stage-notice p{margin:0;color:var(--gray-700);font-size:.92rem;}
.checkout-stage-total{display:flex;flex-direction:column;align-items:flex-end;gap:.15rem;white-space:nowrap;color:var(--gray-600);font-size:.82rem;}
.checkout-stage-total strong{font-size:1rem;color:var(--brand-500);}
.checkout-stage-summary{list-style:none;margin:1rem 0 0;padding:0;display:grid;gap:.5rem;}
.checkout-stage-summary-item{display:flex;justify-content:space-between;gap:1rem;padding:.65rem .75rem;border-radius:12px;background:#fff;border:1px solid var(--gray-200);font-size:.92rem;}
.checkout-stage-summary-item span{min-width:0;color:var(--brand-purple);font-weight:600;}
.checkout-stage-summary-item strong{white-space:nowrap;color:var(--brand-500);}
.checkout-stage-toggle{margin-top:.85rem;border-color:var(--brand-mint);background:var(--brand-mint);color:#fff;font-weight:700;box-shadow:0 10px 18px color-mix(in srgb,var(--brand-mint) 24%, transparent);}
.checkout-stage-toggle:hover,.checkout-stage-toggle:focus{background:var(--brand-purple);border-color:var(--brand-purple);color:#fff;box-shadow:0 12px 22px color-mix(in srgb,var(--brand-purple) 24%, transparent);}
.checkout-stage-details{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--gray-200);}
.checkout-stage-detail-list{margin:0;padding-left:1.2rem;display:grid;gap:.75rem;}
.checkout-stage-detail-heading{display:flex;justify-content:space-between;gap:1rem;font-weight:700;color:var(--brand-purple);}
.checkout-stage-detail-heading strong{white-space:nowrap;color:var(--brand-500);}
.checkout-review-pets{list-style:none;padding:0;margin:0;display:grid;gap:.75rem;}
.checkout-pet-name{font-weight:600;color:var(--brand-purple);}
.checkout-pet-tags,.checkout-pet-breed,.checkout-pet-plan{display:block;font-size:.85rem;color:var(--gray-600);}
.checkout-payment-options{display:grid;gap:.75rem;}
.checkout-payment-option{border:1px solid var(--gray-200);border-radius:14px;padding:1rem 1.25rem;background:#fff;transition:border-color .2s ease,box-shadow .2s ease;display:flex;align-items:center;gap:.75rem;}
.checkout-payment-option .form-check-input{margin-top:0;margin-left:0;transform:scale(1.1);}
.checkout-payment-option .form-check-label{flex:1;font-weight:600;color:var(--brand-purple);}
.checkout-payment-option .form-check-input:checked{background-color:var(--brand-mint);border-color:var(--brand-mint);}
.checkout-payment-option .form-check-input:checked + .form-check-label{color:var(--brand-purple);}
.checkout-payment-option.is-fixed{pointer-events:none;opacity:.9;}
.checkout-payment-option.is-fixed .form-check-input{pointer-events:none;}
.checkout-brands{margin-top:1.1rem;}
.checkout-brands-label{display:block;font-weight:600;color:var(--brand-purple);margin-bottom:.55rem;font-size:.95rem;}
.checkout-brands-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:.6rem;}
.checkout-brand-option{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;padding:.65rem .4rem;border:1px solid var(--gray-200);border-radius:12px;background:#fff;cursor:pointer;text-align:center;transition:border-color .15s ease,box-shadow .15s ease;}
.checkout-brand-option:hover{border-color:var(--brand-mint);}
.checkout-brand-option.is-selected{border-color:var(--brand-mint);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-mint) 22%, white);}
.checkout-brand-option.is-unavailable.is-selected{border-color:#dc3545;box-shadow:0 0 0 3px color-mix(in srgb,#dc3545 20%, white);}
.checkout-brands-grid.is-invalid .checkout-brand-option{border-color:#dc3545;}
.checkout-brand-radio{position:absolute;opacity:0;width:0;height:0;margin:0;pointer-events:none;}
.checkout-brand-radio:focus-visible + .checkout-brand-icon{outline:2px solid var(--brand-mint);outline-offset:2px;border-radius:4px;}
.checkout-brand-icon{display:flex;align-items:center;justify-content:center;height:26px;}
.checkout-brand-icon .brand-ic{width:40px;height:26px;display:block;}
.checkout-brand-name{font-size:.78rem;font-weight:600;color:var(--brand-purple);line-height:1;}
.checkout-brand-flag-off{font-size:.66rem;font-weight:600;color:#b02a37;line-height:1;}
.checkout-brand-hint{margin:.6rem 0 0;font-size:.82rem;color:var(--gray-600);}
.checkout-brand-hint.checkout-brand-hint-error{color:#dc3545;font-weight:600;}
.checkout-success{text-align:center;max-width:520px;margin:0 auto;}
.checkout-success-icon{font-size:3rem;}
.checkout-success-data{display:grid;gap:.5rem;margin:0;}
.checkout-success-data dt{font-weight:600;color:var(--brand-purple);}
.checkout-success-data dd{margin:0;font-size:.95rem;}
.checkout-success-groups h5{font-size:1rem;font-weight:700;color:var(--brand-purple);margin:0 0 .75rem;}
.checkout-success-groups ul{list-style:none;margin:0;padding:0;display:grid;gap:.65rem;}
.checkout-success-enrollment{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;border:1px solid var(--gray-200);border-radius:14px;padding:.85rem 1rem;background:var(--gray-50);}
.checkout-success-enrollment.is-success{border-color:color-mix(in srgb,var(--brand-mint) 30%, var(--gray-200));background:color-mix(in srgb,var(--brand-mint) 7%, white);}
.checkout-success-enrollment.is-pending{border-color:color-mix(in srgb,#f2b94b 45%, var(--gray-200));background:color-mix(in srgb,#f2b94b 10%, white);}
.checkout-success-enrollment-meta{display:flex;flex-direction:column;align-items:flex-end;gap:.15rem;white-space:nowrap;font-size:.85rem;color:var(--gray-600);}
.checkout-success-enrollment-meta strong{color:var(--brand-500);}
.checkout-success-contracts code{word-break:break-all;font-size:.85rem;}
.checkout-success-contracts li+li{margin-top:1rem;}
.checkout-success-app{max-width:1040px;margin:0 auto;}
.checkout-success-page{display:grid;gap:1.5rem;}
.success-hero{display:grid;grid-template-columns:auto minmax(0,1fr);gap:1.25rem;align-items:center;background:#fff;border:1px solid var(--gray-200);border-radius:22px;padding:2rem;box-shadow:0 18px 34px rgba(17,17,17,.08);}
.success-icon{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--brand-mint) 14%, white);color:var(--brand-mint);font-size:2.25rem;flex-shrink:0;}
.success-icon.is-partial{background:color-mix(in srgb,#f2b94b 16%, white);color:#a36300;}
.success-kicker{display:inline-flex;margin-bottom:.35rem;color:var(--brand-mint);font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;}
.success-hero h1{margin:0 0 .45rem;color:var(--brand-purple);font-weight:800;letter-spacing:0;font-size:clamp(2rem,4vw,3rem);}
.success-hero p{margin:0;color:var(--gray-700);max-width:720px;}
.success-retry-bar{display:flex;justify-content:space-between;align-items:center;gap:1rem;border:1px solid color-mix(in srgb,var(--brand-500) 34%, var(--gray-200));background:color-mix(in srgb,var(--brand-500) 7%, white);border-radius:18px;padding:1rem 1.25rem;}
.success-retry-bar div{display:flex;flex-direction:column;gap:.15rem;min-width:0;}
.success-retry-bar strong{color:var(--brand-purple);}
.success-retry-bar span{color:var(--gray-700);font-size:.92rem;}
.success-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;}
.success-metrics>div{background:#fff;border:1px solid var(--gray-200);border-radius:18px;padding:1.25rem;box-shadow:0 12px 24px rgba(17,17,17,.06);}
.success-metrics span{display:block;color:var(--gray-600);font-size:.9rem;margin-bottom:.35rem;}
.success-metrics strong{display:block;color:var(--brand-purple);font-size:1.45rem;line-height:1.1;}
.success-stage-note{display:flex;gap:.85rem;align-items:flex-start;border:1px solid color-mix(in srgb,var(--brand-mint) 35%, var(--gray-200));background:color-mix(in srgb,var(--brand-mint) 8%, white);border-radius:18px;padding:1rem 1.25rem;color:var(--gray-700);}
.success-stage-note i{font-size:1.35rem;color:var(--brand-mint);margin-top:.05rem;}
.success-stage-note p{margin:0;}
.success-section{background:#fff;border:1px solid var(--gray-200);border-radius:22px;padding:1.5rem;box-shadow:0 16px 30px rgba(17,17,17,.07);}
.success-section-heading{display:flex;justify-content:space-between;gap:1rem;align-items:flex-end;margin-bottom:1.25rem;}
.success-section-heading h2{margin:0;color:var(--brand-purple);font-size:1.35rem;font-weight:800;}
.success-section-heading p{margin:0;color:var(--gray-600);font-size:.95rem;max-width:520px;}
.success-pet-grid{display:grid;gap:.85rem;}
.success-pet-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:center;border:1px solid var(--gray-200);border-radius:16px;background:var(--gray-50);padding:1rem 1.15rem;}
.success-pet-card.is-new{border-color:color-mix(in srgb,var(--brand-mint) 38%, var(--brand-500));background:linear-gradient(135deg,color-mix(in srgb,var(--brand-mint) 16%, white) 0%,color-mix(in srgb,var(--brand-400) 42%, white) 100%);box-shadow:inset 4px 0 0 var(--brand-mint),0 14px 26px rgba(17,17,17,.07);}
.success-pet-card.is-failed{border-color:color-mix(in srgb,#b93535 55%, var(--gray-200));background:color-mix(in srgb,#b93535 8%, white);box-shadow:inset 4px 0 0 #b93535;}
.success-pet-card.is-pending{border-color:color-mix(in srgb,#f2b94b 55%, var(--gray-200));background:color-mix(in srgb,#f2b94b 10%, white);box-shadow:inset 4px 0 0 #d99a16;}
.success-pet-card h3{margin:0 0 .25rem;color:var(--brand-purple);font-size:1.05rem;font-weight:800;}
.success-pet-card p{margin:0;color:var(--gray-600);font-size:.9rem;}
.success-pet-details{margin-top:.2rem !important;font-size:.82rem !important;}
.success-new-badge{display:inline-flex;vertical-align:middle;margin-left:.45rem;border-radius:999px;padding:.18rem .5rem;background:var(--brand-mint);color:#fff;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em;}
.success-status-badge{display:inline-flex;align-items:center;gap:.25rem;vertical-align:middle;margin-left:.45rem;border-radius:999px;padding:.18rem .5rem;color:#fff;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em;}
.success-status-badge.is-failed{background:#b93535;}
.success-status-badge.is-pending{background:#a36300;}
.success-pet-plan{display:flex;flex-direction:column;align-items:flex-end;gap:.15rem;text-align:right;}
.success-pet-plan span{color:var(--brand-purple);font-weight:700;}
.success-pet-plan strong{color:var(--brand-500);white-space:nowrap;}
.success-actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;justify-content:center;}
.checkout-terms{line-height:1.4;}
.checkout-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:2rem;align-items:flex-start;}
.checkout-layout-main{display:flex;flex-direction:column;gap:1.5rem;}
.checkout-sidebar{display:flex;flex-direction:column;gap:1.5rem;}
.checkout-summary-card{background:#fff;border:1px solid var(--gray-200);border-radius:18px;padding:1.5rem;box-shadow:0 16px 28px rgba(17,17,17,.08);}
.checkout-summary-header{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem;}
.checkout-summary-title{margin:0;font-size:1rem;font-weight:600;color:var(--brand-purple);}
.checkout-summary-plan{display:flex;justify-content:space-between;align-items:center;font-weight:600;color:var(--brand-purple);}
.checkout-summary-plan strong{font-size:1.05rem;color:var(--brand-500);}
.checkout-summary-card--steps{display:flex;flex-direction:column;gap:1rem;}
.checkout-summary-steps{list-style:none;margin:0 0 1.25rem;padding:0;display:grid;gap:.75rem;}
.checkout-summary-step{display:flex;align-items:center;gap:.5rem;font-size:.95rem;color:var(--gray-600);font-weight:500;}
.checkout-summary-step-dot{width:14px;height:14px;border-radius:50%;border:2px solid var(--gray-300);display:inline-flex;flex-shrink:0;}
.checkout-summary-step-label{line-height:1.2;}
.checkout-summary-step.is-done{color:var(--brand-mint);}
.checkout-summary-step.is-done .checkout-summary-step-dot{background:var(--brand-mint);border-color:var(--brand-mint);}
.checkout-summary-step.is-active{color:var(--brand-purple);}
.checkout-summary-step.is-active .checkout-summary-step-dot{background:var(--brand-purple);border-color:var(--brand-purple);}
.checkout-summary-total{display:flex;justify-content:space-between;align-items:center;padding:.85rem 1rem;border-radius:12px;background:color-mix(in srgb,var(--brand-400) 40%, white);font-weight:600;color:var(--brand-purple);margin-bottom:.5rem;}
.checkout-summary-note{margin:0;}
.checkout-summary-subtitle{margin:0 0 .75rem;font-size:.9rem;font-weight:600;color:var(--brand-purple);text-transform:uppercase;letter-spacing:.05em;}
.checkout-summary-pet-list{list-style:none;margin:0;padding:0;display:grid;gap:.75rem;}
.checkout-summary-pet{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;align-items:center;gap:.25rem 1rem;padding:.75rem 1rem;border:1px solid var(--gray-200);border-radius:12px;background:var(--gray-50);}
.checkout-summary-pet-name{font-weight:600;color:var(--brand-purple);grid-column:1;grid-row:1;}
.checkout-summary-pet-plan{font-size:.9rem;color:var(--brand-500);grid-column:1;grid-row:2;}
.checkout-summary-pet-price{font-weight:600;color:var(--brand-500);grid-column:2;grid-row:1/span 2;text-align:right;align-self:center;}
.checkout-pet-card{position:relative;border:1px solid var(--gray-200);border-radius:18px;padding:1.5rem;background:#fff;box-shadow:0 14px 32px rgba(17,17,17,.06);}
.checkout-pet-card + .checkout-pet-card{margin-top:1.25rem;}
.checkout-pet-card{transition:box-shadow .2s ease,border-color .2s ease;}
.checkout-pet-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;}
.checkout-pet-card.is-collapsed .checkout-pet-card-header{margin-bottom:0;}
.checkout-pet-card-toggle{display:flex;flex:1 1 auto;min-width:0;flex-direction:column;gap:.25rem;cursor:pointer;}
.checkout-pet-card-toggle:focus{outline:none;}
.checkout-pet-card-toggle:focus-visible{outline:2px solid var(--brand-purple);outline-offset:2px;}
.checkout-pet-card-label{display:flex;align-items:center;gap:.45rem;min-width:0;font-size:1.05rem;font-weight:600;color:var(--brand-500);}
.checkout-pet-card-label-text{min-width:0;overflow-wrap:anywhere;}
.checkout-pet-card-status{display:none;align-items:center;justify-content:center;flex:0 0 auto;color:var(--brand-mint);font-size:1.1rem;line-height:1;}
.checkout-pet-card.is-confirmed .checkout-pet-card-status{display:inline-flex;}
.checkout-pet-card-hint{display:inline-flex;align-items:center;align-self:flex-start;border-radius:999px;padding:.16rem .55rem;background:color-mix(in srgb,var(--brand-mint) 11%, white);color:var(--brand-purple);font-size:.82rem;font-weight:700;line-height:1.25;}
.checkout-pet-card.is-collapsed .checkout-pet-card-hint{background:color-mix(in srgb,var(--brand-500) 12%, white);color:var(--brand-700);}
.checkout-pet-card-actions{display:flex;flex:0 0 auto;align-items:center;gap:.75rem;}
.checkout-pet-card-badge{display:inline-flex;align-items:center;justify-content:center;padding:.25rem .75rem;border-radius:999px;background:var(--gray-50);color:var(--brand-purple);font-size:.85rem;font-weight:600;}
.checkout-pet-card-actions .btn-link{text-decoration:none;font-size:1.1rem;}
.checkout-pet-card-body{display:flex;flex-direction:column;gap:1rem;max-height:2200px;overflow:hidden;transition:max-height .3s ease,opacity .3s ease,margin-top .3s ease;}
.checkout-pet-card:not(.is-collapsed) .checkout-pet-card-body{overflow:visible;}
.checkout-pet-card.is-collapsed .checkout-pet-card-body{max-height:0;opacity:0;margin-top:0;pointer-events:none;}
.checkout-pet-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;}
.checkout-pet-actions .btn{min-width:180px;}
@media (max-width:991.98px){
  .modal-dialog.checkout-active{max-width:94vw;margin:0 auto;}
  .checkout-layout{grid-template-columns:1fr;}
  .checkout-sidebar{order:-1;}
}
@media (max-width:767.98px){
  .checkout-hero-intro{display:none !important;}
  .checkout-content{padding:1.25rem;}
  .checkout-footer{flex-direction:column;align-items:stretch;}
  .checkout-footer .btn{width:100%;}
  .checkout-footer [data-action="next"]{order:-1;}
  .checkout-stepper{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem;}
  .checkout-step{min-width:0;text-align:center;font-size:.75rem;}
  .checkout-step-index{width:30px;height:30px;font-size:.85rem;margin:0 auto .25rem;}
  .checkout-step-label{font-size:.72rem;white-space:normal;line-height:1.2;}
  .checkout-sidebar{display:none;}
  .checkout-summary-card{padding:1.25rem;}
  .checkout-summary-card--steps{display:none;}
  .checkout-stage-notice-header{grid-template-columns:1fr;}
  .checkout-stage-total{align-items:flex-start;}
  .checkout-stage-summary-item,.checkout-stage-detail-heading{flex-direction:column;gap:.25rem;}
  .checkout-stage-summary-item strong,.checkout-stage-detail-heading strong{white-space:normal;}
  .checkout-submitting-overlay{padding:1rem;}
  .checkout-submitting-panel{padding:1.25rem;}
  .checkout-processing-meter{width:88px;height:88px;font-size:1.1rem;}
  .checkout-processing-group{grid-template-columns:1fr;gap:.4rem;}
  .checkout-processing-status,.checkout-processing-price{justify-self:start;}
  .checkout-processing-price{white-space:normal;}
  .checkout-success-enrollment{flex-direction:column;}
  .checkout-success-enrollment-meta{align-items:flex-start;white-space:normal;}
  .success-hero{grid-template-columns:1fr;padding:1.35rem;}
  .success-icon{width:56px;height:56px;font-size:2rem;}
  .success-retry-bar{flex-direction:column;align-items:stretch;}
  .success-retry-bar .btn{width:100%;}
  .success-metrics{grid-template-columns:1fr;}
  .success-section{padding:1.2rem;}
  .success-section-heading{display:block;}
  .success-section-heading p{margin-top:.4rem;}
  .success-pet-card{grid-template-columns:1fr;}
  .success-pet-plan{align-items:flex-start;text-align:left;}
  .success-pet-plan strong{white-space:normal;}
  .success-actions{align-items:stretch;}
  .success-actions .btn{width:100%;}
  .checkout-plan-picker-toggle{grid-template-columns:minmax(0,1fr) auto;padding:.75rem;}
  .checkout-plan-picker-badge{grid-column:1 / -1;justify-self:start;}
  .checkout-plan-option{grid-template-columns:1fr;gap:.35rem;padding:.85rem;}
  .checkout-plan-option-meta{align-items:flex-start;text-align:left;}
  .checkout-plan-option-meta strong,.checkout-plan-option-meta small{white-space:normal;}
  .checkout-summary-pet{grid-template-columns:1fr;grid-template-rows:auto;gap:.35rem;}
  .checkout-summary-pet-price{grid-column:1;grid-row:auto;text-align:left;}
  .checkout-mobile-total{display:flex;}
  .checkout-mobile-pet-card{display:block;margin-bottom:1.5rem;}
}
@media (max-width:575.98px){
  .promo-hero-callout{grid-template-columns:auto minmax(0,1fr);align-items:flex-start;}
  .promo-hero-link{grid-column:1 / -1;justify-self:start;}
  .promo-modal-grid{grid-template-columns:1fr;min-height:0;}
  .promo-modal-visual{min-height:190px;padding:1.5rem;}
  .promo-modal-visual img{width:150px;}
  .promo-modal-seal{width:96px;height:96px;left:1rem;top:1rem;}
  .promo-modal-seal span{font-size:1.85rem;}
  .promo-modal-copy{padding:2rem 1.25rem 1.5rem;}
  .promo-modal-actions{flex-direction:column;}
  .promo-modal-actions .btn{width:100%;}
  .checkout-pet-card{padding:1rem;}
  .checkout-pet-card-header{align-items:center;gap:.75rem;}
  .checkout-pet-card-actions{gap:.5rem;}
  .checkout-pet-card-actions .btn-link{padding:.25rem;}
  .checkout-pet-card-actions .btn-link span{display:none;}
  .checkout-pet-card-label{font-size:1rem;}
}
.quiz-nav.btn:hover{background:color-mix(in srgb,var(--brand-400) 45%, white);border-color:var(--brand-mint);color:var(--brand-purple);}
.quiz-progress{font-weight:600;}
.quiz-result{max-width:600px;margin:0 auto 1rem;}
.quiz-result .plan-card{max-width:520px;margin:auto;}
@media (max-width:575.98px){
  .quiz-form{gap:1.25rem;}
  .quiz-choice-grid,.quiz-choice-grid-lg{grid-template-columns:1fr;}
  .quiz-actions{flex-direction:column;width:100%;}
  .quiz-primary,.quiz-nav{width:100%;}
  .quiz-actions .quiz-primary{order:-1;}
}
@media (max-width:575.98px){
  .lead-modal-body{padding:2.75rem 1.5rem 2rem;}
  .lead-modal-hero{padding:2rem 1rem 1.75rem;}
  .lead-modal-img{width:96px;}
}

#compareTable th.highlight-col, #compareTable td.highlight-col{
  background:color-mix(in srgb, var(--brand-mint) 25%, white);
  box-shadow:inset 0 0 0 9999px rgba(106,140,105,0.14);
  outline:2px solid color-mix(in srgb, var(--brand-mint) 55%, white);
}

/* Destaque de coluna selecionada na comparacao */
#compareTable .highlight-col{
  position: relative;
  outline: 3px solid var(--brand-mint);
  outline-offset: -3px;
  z-index: 1;
}

/* Badge verde claro para o selo "Corretor autorizado" */
.badge-success-light{
  color: var(--brand-mint);
  background-color: color-mix(in srgb, var(--brand-mint) 18%, white);
  border: 1px solid color-mix(in srgb, var(--brand-mint) 45%, white);
}

/* Modal de comparacao mais largo (v7.2) */
.modal-backdrop{z-index:2100;}
.modal{z-index:2110;}
/* Impede que a rolagem dentro de qualquer modal escorra para a pagina de fundo
   (scroll chaining) e mata o pull-to-refresh do Android por cima do overlay. */
.modal,
.modal-body,
.modal-dialog-scrollable .modal-body{
  overscroll-behavior:contain;
}
#compareModal .modal-dialog{
  max-width:min(1700px, calc(100vw - 1rem));
  height:calc(100vh - 1.5rem);
  margin:.75rem auto;
}
#compareModal .modal-dialog.modal-dialog-centered{align-items:stretch;min-height:0;}
#compareModal .modal-content{max-height:100%;min-height:0;}
#compareModal .modal-header,
#compareModal .modal-footer{flex-shrink:0;background:#fff;}
#compareModal .modal-footer{font-size:.95rem;line-height:1.35;}
#compareModal .modal-body{
  overflow:auto;
  min-height:0;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
}
#compareModal .table-responsive{
  overscroll-behavior-x:contain;
}
#compareTable td.compare-value{font-weight:600;color:var(--brand-purple)}
#compareTable th:first-child{white-space:normal}
#compareTable th, #compareTable td{white-space:normal;vertical-align:middle}
.comparison-table{
  border:1px solid color-mix(in srgb,var(--brand-400) 50%, white);
  border-collapse:separate;
  border-radius:18px;
  overflow:hidden;
  width:100%;
}
.comparison-table th,
.comparison-table td{
  border:1px solid color-mix(in srgb,var(--brand-400) 35%, white);
  background-clip:padding-box;
}
.comparison-table th:first-child,
.comparison-table td:first-child{
  width:115px;
  min-width:100px;
}
.comparison-table th:nth-child(2),
.comparison-table td:nth-child(2){
  width:1%;
  min-width:max-content;
  white-space:nowrap;
  word-break:normal;
}
.comparison-table th:nth-child(3),
.comparison-table td:nth-child(3){
  width:1%;
  min-width:max-content;
  white-space:nowrap;
  word-break:normal;
  text-align:center;
}
.comparison-table .plan-col{
  width:100px;
  min-width:90px;
  white-space:normal;
  word-break:break-word;
}
.comparison-panel{padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem}
.comparison-intro{display:flex;flex-direction:column;gap:1rem}
.compare-highlight{display:flex;gap:.85rem;align-items:flex-start;background:color-mix(in srgb,var(--brand-mint) 18%, white);border:1px solid color-mix(in srgb,var(--brand-mint) 35%, white);border-radius:16px;padding:1rem 1.25rem;color:var(--brand-purple)}
.compare-highlight i{color:var(--brand-700);font-size:1.4rem;flex-shrink:0;margin-top:.2rem}
.compare-plan-head{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:.28rem;
  line-height:1.15;
}
.compare-plan-head strong{font-weight:900;}
.compare-plan-head small{
  color:color-mix(in srgb,var(--brand-purple) 62%, white);
  font-weight:700;
}
.compare-head-promo{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  padding:.22rem .5rem;
  background:linear-gradient(135deg,var(--brand-700),var(--brand-500));
  color:#fff;
  font-size:.7rem;
  font-weight:900;
  white-space:nowrap;
}
.compare-head-senior{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.32rem;
  max-width:100%;
  border:1px solid color-mix(in srgb,var(--brand-mint) 42%, white);
  border-radius:999px;
  background:color-mix(in srgb,var(--brand-mint) 13%, white);
  color:var(--brand-purple);
  font-size:.73rem;
  font-weight:850;
  line-height:1.15;
}
.compare-head-senior{
  padding:.3rem .48rem;
}
.compare-head-senior i{color:var(--brand-700);}
.compare-meta-cell{font-size:.85rem;text-align:left;color:color-mix(in srgb,var(--brand-purple) 70%, white);white-space:normal}
.compare-section-row th{background:color-mix(in srgb,var(--brand-400) 50%, white);color:var(--brand-purple);font-size:.95rem;font-weight:700}
.compare-limit-row th,
.compare-limit-row td{background:color-mix(in srgb,var(--brand-400) 35%, white);font-weight:600}
.comparison-panel .table-responsive{margin:0}
@supports (height:100dvh){
  #compareModal .modal-dialog{height:calc(100dvh - 1.5rem);}
}
@media (max-height:700px){
  #compareModal .modal-header{padding:.65rem 1rem;}
  #compareModal .modal-footer{padding:.65rem 1rem;font-size:.85rem;}
  #compareModal .comparison-panel{padding:1rem;gap:1rem;}
  #compareModal .compare-highlight{padding:.75rem 1rem;}
}
/* Mobile: comparacao ocupa a tela inteira. Com 100vh o dialog ficava mais alto
   que a area visivel (a barra do Android entra na conta), o rodape era cortado e
   sobrava faixa do site nas bordas. */
@media (max-width:767.98px){
  #compareModal .modal-dialog{
    max-width:none;
    width:100%;
    height:100vh;
    margin:0;
  }
  #compareModal .modal-content{
    height:100%;
    max-height:100%;
    border:0;
    border-radius:0;
  }
  #compareModal .comparison-panel{
    padding:1rem;
    gap:1rem;
  }
  #compareModal .modal-header,
  #compareModal .modal-footer{
    padding:.75rem 1rem;
  }
  #compareModal .modal-footer{
    font-size:.8rem;
  }
}
@supports (height:100dvh){
  @media (max-width:767.98px){
    #compareModal .modal-dialog{height:100dvh;}
  }
}

@media (max-width:575.98px){
  #compareModal .comparison-table{
    font-size:.78rem;
  }
  #compareModal .compare-head-senior{
    padding:.24rem .36rem;
    font-size:.66rem;
  }
  #compareModal .comparison-table th,
  #compareModal .comparison-table td{
    padding:.42rem .48rem;
    line-height:1.18;
  }
  #compareModal .comparison-table th small{
    font-size:.72em;
  }
  #compareModal .compare-meta-cell{
    font-size:.72rem;
  }
}

/* Hero */
.ai-sparkle-icon{
  position:relative;
  display:inline-block;
  width:1.25em;
  height:1.25em;
  flex:0 0 auto;
  vertical-align:-.18em;
}
.ai-sparkle-main,
.ai-sparkle-accent{
  position:absolute;
  display:block;
  clip-path:polygon(50% 0,62% 34%,100% 50%,62% 66%,50% 100%,38% 66%,0 50%,38% 34%);
}
.ai-sparkle-main{
  inset:4% 24% 24% 0;
  background:#2d9bef;
}
.ai-sparkle-accent{
  right:0;
  bottom:0;
  width:42%;
  height:42%;
  background:#7e5bd5;
}
a[data-chatbot-open].btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.5rem;
}
.hero-section{position:relative}
.hero-tag{display:inline-flex;align-items:center;gap:.5rem;padding:.45rem 1rem;border-radius:999px;background:color-mix(in oklab,var(--brand-500) 18%,white);color:var(--brand-700);font-weight:600;font-size:.875rem}
.hero-bullets li{display:flex;align-items:center;gap:.5rem;margin:.4rem 0;font-weight:500;color:var(--gray-600)}
.hero-bullets i{color:var(--brand-500);font-size:1.1rem}
.hero-visual{box-shadow:0 24px 60px rgba(0,0,0,.12)}

.hero-actions{justify-content:flex-start;}
.hero-actions .btn{min-width:200px;}

.hero-secondary-cta{max-width:320px;}

.topic-detail-cta{
  border-radius:999px;
  font-weight:800;
  padding:.65rem 1.05rem;
  box-shadow:0 16px 32px rgba(179,93,61,.22);
}
.topic-detail-cta i{
  font-size:.95rem;
}
.topic-detail-cta-light{
  color:var(--brand-purple);
  border-color:#fff;
  box-shadow:0 16px 34px rgba(0,0,0,.16);
}
.topic-detail-cta-light:hover,
.topic-detail-cta-light:focus-visible{
  color:var(--brand-purple);
  background:color-mix(in srgb,#fff 88%, var(--brand-400));
  border-color:#fff;
}


.section-label{text-transform:uppercase;font-size:.75rem;letter-spacing:.08em;font-weight:700;color:var(--brand-500)}

/* Comparativo de mercado */
.market-compare-section{
  background:
    linear-gradient(180deg,#fff 0%,color-mix(in srgb,var(--brand-400) 28%, white) 100%);
}
.market-compare-wrap{
  position:relative;
  overflow-x:auto;
  padding:.75rem;
  margin-inline:-.75rem;
  -webkit-overflow-scrolling:touch;
}
.market-compare-table{
  position:relative;
  min-width:880px;
  display:grid;
  grid-template-columns:minmax(240px,1.45fr) minmax(210px,1fr) minmax(210px,1fr) minmax(180px,.85fr);
  background:transparent;
}
.market-compare-table::before{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  left:calc(100% * 1.45 / 4.3);
  width:calc(100% * 1 / 4.3);
  background:linear-gradient(180deg,color-mix(in srgb,var(--brand-400) 78%, white),color-mix(in srgb,var(--brand-mint) 18%, white));
  box-shadow:inset 1px 0 0 color-mix(in srgb,var(--brand-600) 18%, white),inset -1px 0 0 color-mix(in srgb,var(--brand-600) 18%, white);
  pointer-events:none;
  z-index:0;
}
.market-compare-row{display:contents;}
.market-compare-cell{
  position:relative;
  z-index:1;
  min-height:72px;
  display:flex;
  align-items:center;
  gap:.65rem;
  padding:1rem 1.2rem;
  border-bottom:1px solid color-mix(in srgb,var(--gray-200) 72%, white);
  color:color-mix(in srgb,var(--brand-purple) 82%, white);
  font-weight:500;
}
.market-compare-row:last-child .market-compare-cell{border-bottom:0;}
.market-compare-row .market-compare-cell:nth-child(4){
  border-left:1px solid color-mix(in srgb,var(--gray-200) 82%, white);
}
.market-compare-feature{
  color:var(--black);
  font-weight:700;
}
.market-compare-head .market-compare-cell{
  min-height:96px;
  background:transparent;
  font-weight:800;
  color:var(--brand-purple);
}
.market-compare-brand{
  justify-content:center;
  text-align:center;
}
.market-compare-brand img{
  max-width:145px;
  max-height:58px;
  width:auto;
  height:auto;
  object-fit:contain;
}
.market-compare-brand:not(.market-compare-brand--petunio) img{
  filter:grayscale(1) saturate(0) opacity(.52);
}
.market-compare-brand--petunio img{
  max-width:172px;
  max-height:72px;
}
.market-compare-competitor{
  position:relative;
  flex-direction:column;
  gap:.42rem;
  overflow:hidden;
  font-size:1rem;
  line-height:1.12;
  color:#5b3f98;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.market-compare-head .market-compare-competitor{
  color:#5b3f98;
}
.market-compare-competitor::before{
  content:"";
  position:absolute;
  inset:50% auto auto 50%;
  width:8.25rem;
  height:2.25rem;
  border-radius:999px;
  background:
    radial-gradient(circle at 22% 50%, rgba(91,63,152,.72) 0 20%, transparent 21%),
    linear-gradient(90deg, rgba(91,63,152,.26), rgba(91,63,152,.08));
  filter:blur(12px);
  opacity:.46;
  transform:translate(-50%,-48%);
  pointer-events:none;
}
.market-compare-competitor span{
  position:relative;
  z-index:1;
}
.competitor-brand-dot{
  width:1.35rem;
  height:1.35rem;
  border-radius:50%;
  background:#5b3f98;
  box-shadow:
    0 0 0 6px rgba(91,63,152,.1),
    0 12px 24px rgba(91,63,152,.22);
  flex:0 0 auto;
}
.market-compare-brand-text{
  font-size:1.1rem;
  color:color-mix(in srgb,var(--brand-purple) 62%, white);
}
.market-compare-petunio{
  position:relative;
  justify-content:center;
  text-align:center;
  color:var(--brand-purple);
  background:transparent;
  border-bottom-color:color-mix(in srgb,var(--brand-600) 34%, white);
  font-weight:800;
}
.market-compare-head .market-compare-petunio{
  background:transparent;
}
.compare-check{
  width:2rem;
  height:2rem;
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  background:color-mix(in srgb,var(--brand-mint) 64%, white);
  color:color-mix(in srgb,var(--brand-mint) 58%, black);
  font-size:1.2rem;
  box-shadow:0 10px 18px rgba(0,0,0,.14);
}
.market-compare-note{max-width:900px;margin-inline:auto;}

@media (min-width:992px){
  .market-compare-wrap{overflow:visible;}
  .market-compare-table{
    min-width:0;
  }
}

@media (max-width:575.98px){
  .market-compare-wrap{
    padding:.5rem 1rem 1rem;
    margin-inline:-1rem;
    overflow-x:auto;
    overscroll-behavior-x:contain;
  }
  .market-compare-table{
    min-width:690px;
    grid-template-columns:180px 190px 180px 140px;
  }
  .market-compare-table::before{
    left:180px;
    width:190px;
  }
  .market-compare-cell{
    min-height:68px;
    padding:.8rem .85rem;
    font-size:.86rem;
    line-height:1.25;
    align-items:center;
  }
  .market-compare-head .market-compare-cell{min-height:84px;}
  .market-compare-feature{
    font-size:.88rem;
  }
  .market-compare-brand img{
    max-width:112px;
    max-height:42px;
  }
  .market-compare-brand--petunio img{
    max-width:132px;
    max-height:54px;
  }
  .market-compare-competitor{
    font-size:.82rem;
    letter-spacing:.03em;
    padding-inline:.7rem;
  }
  .market-compare-competitor::before{
    width:6.75rem;
    height:2rem;
    filter:blur(10px);
  }
  .competitor-brand-dot{
    width:1.1rem;
    height:1.1rem;
    box-shadow:
      0 0 0 5px rgba(91,63,152,.1),
      0 10px 18px rgba(91,63,152,.18);
  }
  .market-compare-brand-text{
    font-size:.96rem;
  }
  .market-compare-petunio{
    flex-direction:column;
    justify-content:center;
    gap:.42rem;
    padding-inline:.75rem;
  }
  .compare-check{
    width:1.65rem;
    height:1.65rem;
    font-size:1rem;
    box-shadow:0 8px 14px rgba(0,0,0,.12);
  }
}

/* FAQ */
#faq .accordion-item,
#faq-empresarial .accordion-item{border:1px solid var(--gray-200);border-radius:18px;overflow:hidden;margin-bottom:1rem;background:#fff;box-shadow:0 12px 28px rgba(17,17,17,.08);}
#faq .accordion-item:last-child,
#faq-empresarial .accordion-item:last-child{margin-bottom:0;}
#faq .accordion-button,
#faq-empresarial .accordion-button{background:#fff;color:var(--brand-purple);font-weight:600;padding:1rem 1.25rem;border:none;}
#faq .accordion-button::after,
#faq-empresarial .accordion-button::after{filter:brightness(0) saturate(100%) invert(16%) sepia(8%) saturate(728%) hue-rotate(120deg) brightness(90%) contrast(88%);}
#faq .accordion-button:not(.collapsed),
#faq-empresarial .accordion-button:not(.collapsed){background:color-mix(in srgb,var(--brand-400) 60%, white);color:var(--brand-purple);box-shadow:inset 0 -1px 0 color-mix(in srgb,var(--brand-purple) 20%, white);}
#faq .accordion-button:focus,
#faq-empresarial .accordion-button:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-mint) 35%, white);}
#faq .accordion-body,
#faq-empresarial .accordion-body{padding:1rem 1.25rem;color:var(--gray-600);font-size:1rem;line-height:1.55;}
/* Diferenciais */
.info-card{height:100%;background:#fff;border:1px solid var(--gray-200);border-radius:20px;padding:1.5rem;box-shadow:0 16px 32px rgba(0,0,0,.06)}
.info-card i{font-size:1.75rem;color:var(--brand-500)}
.info-card p{margin:0;color:var(--gray-600)}

/* Numeros */
.stats-section{background:linear-gradient(135deg,color-mix(in srgb,var(--brand-mint) 70%, var(--brand-purple)) 0%,var(--brand-purple) 100%)}
.stat-card{background:rgba(255,255,255,.12);border-radius:18px;padding:1.5rem;display:flex;flex-direction:column;gap:.35rem;height:100%;box-shadow:0 18px 40px rgba(0,0,0,.18)}
.stat-number{font-size:2rem;font-weight:800;letter-spacing:-.01em}
.stat-label{font-size:.95rem;line-height:1.3;opacity:.85}

/* Rede credenciada */
.network-section{background:linear-gradient(135deg,color-mix(in srgb,var(--brand-600) 55%, var(--brand-mint)) 0%,color-mix(in srgb,var(--brand-purple) 85%, black) 100%)}
.network-section .btn{min-width:210px}

/* Depoimentos */
.testimonial-card{background:#fff;border:1px solid color-mix(in srgb, var(--gray-200) 75%, white);border-radius:20px;padding:1.75rem;box-shadow:0 20px 40px rgba(0,0,0,.08)}
.testimonial-card .avatar{width:44px;height:44px;border-radius:50%;background:color-mix(in oklab,var(--brand-500) 35%,white);display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--brand-700)}
.testimonial-card p{color:var(--gray-600);margin-bottom:1rem}
.rating i{color:var(--brand-600);margin-right:.25rem}

/* Jornada */
.step-card{background:#fff;border:1px solid var(--gray-200);border-radius:20px;padding:2rem;box-shadow:0 16px 32px rgba(0,0,0,.05)}
.step-number{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.25rem;color:#fff;background:var(--brand-500);margin-bottom:1rem;box-shadow:0 12px 24px rgba(0,0,0,.12)}
.step-card p{color:var(--gray-600);margin:0}

/* Contato */
.contact-section{background:var(--gray-200)}
.contact-card{background:#fff;border-radius:24px;padding:2.5rem;border:1px solid var(--gray-200);box-shadow:0 24px 48px rgba(0,0,0,.08)}

@media (max-width:991.98px){
  .network-section .btn{width:100%}
  .contact-card{padding:1.75rem}
}

@media (max-width:575.98px){
  .hero-tag{font-size:.75rem}
  .stat-card{padding:1.25rem}
  .contact-card{padding:1.5rem}
  .hero-actions{justify-content:center;}
  .hero-actions .btn,
  .hero-actions button{width:100%;max-width:280px;}
  .hero-actions > *{flex:1 1 100%;}
  .hero-secondary-cta{display:block;margin:2rem auto 0;width:100%;max-width:280px;text-align:center;}
}

@media (max-width:992px){.plan-card .header{min-height:160px;}}

@media (max-width:576px){.plan-card .header{min-height:auto;}.plan-card .header .plan-title-wrap{min-height:auto;}.plan-card .header .plan-select-top{margin-top:0;}}

.plan-card .header .plan-select-top{margin-top:auto;width:100%;}

.btn-chat-highlight{
  box-shadow:0 0 0 4px color-mix(in oklab, var(--brand-500) 30%, white);
}
.btn-chat-highlight:hover{
  box-shadow:0 0 0 4px color-mix(in oklab, var(--brand-500) 40%, white);
}
.btn-chat-highlight:focus-visible{
  outline:3px solid color-mix(in oklab, var(--brand-500) 60%, white);
  outline-offset:2px;
}
/* Galeria de pets */
.pet-highlight-img{position:relative;}
.pet-highlight-image{width:100%;height:100%;max-height:480px;object-fit:cover;border-radius:28px;box-shadow:0 24px 48px rgba(17,17,17,.16);display:block;}
.pet-highlight-card{background:#fff;border-radius:24px;padding:1.75rem;box-shadow:0 20px 44px rgba(17,17,17,.1);border:1px solid color-mix(in srgb, var(--brand-purple) 18%, white);}
.pet-highlight-card h4{color:var(--brand-purple);}
.pet-highlight-thumb{width:120px;height:120px;object-fit:cover;border-radius:24px;box-shadow:0 18px 36px rgba(17,17,17,.18);}
@media (max-width:575.98px){
  .pet-highlight-card{padding:1.5rem;}
  .pet-highlight-thumb{width:100%;height:200px;}
}
.section-visual{position:relative;border-radius:28px;overflow:hidden;box-shadow:0 24px 48px rgba(17,17,17,.16);background:#fff;}
.section-visual img{width:100%;height:100%;object-fit:cover;display:block;}
.section-visual.section-visual-sm{max-height:420px;}
.section-visual.section-visual-sm img{min-height:260px;}
.freedom-impact-copy{max-width:560px;padding:1.25rem 0;}
.freedom-impact-copy .section-label{display:inline-block;margin-bottom:.55rem;}
@media (min-width:992px){
  .freedom-impact-copy{padding:2rem 0 2rem 1rem;}
}

@media (max-width:575.98px){
  .plans-slick{margin:0;}
}

.network-modal{border-radius:24px;border:1px solid var(--gray-200);box-shadow:0 32px 60px rgba(17,17,17,.18)}
.network-modal .modal-header{border-bottom:1px solid var(--gray-200);padding:1.5rem}
.network-modal .modal-title{font-weight:700;color:var(--brand-purple)}
.network-modal .modal-body{padding:0;overflow:hidden}
.network-modal .modal-footer{border-top:1px solid var(--gray-200);padding:1rem 1.5rem}
.network-modal--info{
  background:
    radial-gradient(110% 120% at 0% 0%, color-mix(in srgb, var(--brand-400) 88%, white) 0%, rgba(255,255,255,.96) 48%, #fff 100%);
}
.network-modal-kicker{
  display:inline-flex;
  align-items:center;
  gap:.35rem;
  margin-bottom:.45rem;
  padding:.35rem .8rem;
  border-radius:999px;
  background:color-mix(in srgb, var(--brand-mint) 16%, white);
  color:var(--brand-purple);
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.network-info-shell{
  padding:1.5rem;
  display:flex;
  flex-direction:column;
  gap:1.25rem;
}
.network-info-hero{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:1rem;
  align-items:start;
  padding:1.35rem;
  border-radius:22px;
  background:linear-gradient(135deg, color-mix(in srgb, var(--brand-400) 92%, white), color-mix(in srgb, var(--brand-mint) 16%, white));
  border:1px solid color-mix(in srgb, var(--gray-200) 90%, white);
  box-shadow:0 18px 36px rgba(62,77,75,.08);
}
.network-info-icon{
  width:64px;
  height:64px;
  border-radius:20px;
  display:grid;
  place-items:center;
  font-size:1.6rem;
  color:#fff;
  background:linear-gradient(135deg, var(--brand-500), color-mix(in srgb, var(--brand-mint) 70%, var(--brand-500)));
  box-shadow:0 18px 30px rgba(179,93,61,.25);
}
.network-info-hero h3{
  margin:0 0 .45rem;
  font-size:1.45rem;
  line-height:1.2;
  color:var(--brand-purple);
}
.network-info-hero p{
  color:color-mix(in srgb, var(--brand-purple) 82%, white);
}
.network-info-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1rem;
}
.network-info-card{
  min-height:100%;
  padding:1.2rem;
  border-radius:20px;
  background:#fff;
  border:1px solid color-mix(in srgb, var(--gray-200) 88%, white);
  box-shadow:0 16px 32px rgba(17,17,17,.07);
}
.network-info-card-icon{
  width:44px;
  height:44px;
  margin-bottom:.85rem;
  border-radius:14px;
  display:grid;
  place-items:center;
  background:color-mix(in srgb, var(--brand-500) 12%, white);
  color:var(--brand-700);
  font-size:1.1rem;
}
.network-info-card h4{
  margin:0 0 .4rem;
  font-size:1.02rem;
  font-weight:700;
  color:var(--brand-purple);
}
.network-info-card p{
  margin:0;
  color:color-mix(in srgb, var(--brand-purple) 78%, white);
}
.network-info-note{
  display:flex;
  align-items:flex-start;
  gap:.75rem;
  padding:1rem 1.1rem;
  border-radius:18px;
  background:color-mix(in srgb, var(--brand-mint) 10%, white);
  color:var(--brand-purple);
  border:1px solid color-mix(in srgb, var(--brand-mint) 18%, white);
}
.network-info-note i{
  font-size:1rem;
  margin-top:.15rem;
  color:var(--brand-500);
}
@media (max-width:1199.98px){
  .network-info-grid{grid-template-columns:1fr}
}

@media (max-width:575.98px){
  .network-modal .modal-header{padding:1.25rem}
  .network-info-shell{padding:1rem}
  .network-info-hero{grid-template-columns:1fr;padding:1.1rem}
  .network-info-icon{width:56px;height:56px;border-radius:18px}
  .network-info-hero h3{font-size:1.2rem}
  .network-info-card{padding:1rem}
  .comparison-panel{padding:1rem}
}





/* Painel Social (home/hero) */
.social-follow{background:#fff;border:1px solid var(--gray-200)}
.social-follow .social-btn{border-radius:999px;padding:.55rem 1rem;font-weight:600}
.social-follow .social-btn i{margin-right:.35rem}
.social-follow-hero{background:color-mix(in srgb, var(--brand-400) 60%, white);}
/* Centralização do conteúdo do painel social na home */
.social-follow-hero > .d-flex{flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:1rem}
.social-follow-hero > .d-flex > .d-flex.flex-wrap{justify-content:center}
/* Parceria logos (Pet Unio + APet) */
.partner-logos{display:flex;align-items:center;justify-content:center;gap:2rem;margin-bottom:1rem;}
.partner-logo{height:56px;width:auto;object-fit:contain;filter:none}
/* Pet Unio ligeiramente maior para equilibrar com APet */
.partner-logo-petunio{height:64px}
/* APet um pouco menor para balancear visual */
.partner-logo-apet{height:40px}
@media (min-width: 992px){
  .partner-logos{gap:2.5rem}
  .partner-logo{height:68px}
  .partner-logo-petunio{height:100px}
  .partner-logo-apet{height:55px}
}
/* Reclame Aqui recognition panel (scoped) */
[data-ra-panel]{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center;
  gap:.6rem;
}
[data-ra-panel] .ra-badge-wrap{display:inline-flex;align-items:center;justify-content:center;gap:.85rem;margin-bottom:.2rem;}
[data-ra-panel] .ra-badge-img{width:56px;height:auto;display:block;}
[data-ra-panel] .ra-apet-logo{height:42px;width:auto;object-fit:contain;filter:drop-shadow(0 6px 16px rgba(0,0,0,.08));}
[data-ra-panel] > .d-flex.align-items-center.gap-2{order:1;}
[data-ra-panel] > .d-flex.align-items-center.gap-2 i{display:none!important;}
[data-ra-panel] > .d-flex.align-items-center.gap-2 .mb-0{font-weight:700;font-size:1.1rem;}
[data-ra-panel] > .d-flex.flex-wrap{order:3;width:100%;display:flex!important;flex-direction:column;align-items:center;gap:.35rem;font-size:.98rem;color:var(--brand-purple);}
[data-ra-panel] > .d-flex.flex-wrap span{display:block;}
[data-ra-panel] > .d-flex.flex-wrap i{display:none!important;}
[data-ra-panel] a.link-dark{order:4;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem .95rem;border-radius:999px;border:1px solid color-mix(in srgb, var(--brand-500) 28%, white);background:color-mix(in oklab, var(--brand-400) 55%, white);color:var(--brand-purple)!important;font-weight:600;text-decoration:none;box-shadow:0 12px 24px rgba(179,93,61,.12);width:auto;}
[data-ra-panel] a.link-dark:hover{background:color-mix(in oklab, var(--brand-400) 70%, white);}
@media (min-width: 992px){
  [data-ra-panel]{padding:1.25rem 2rem;}
}
@media (max-width: 575.98px){
  [data-ra-panel] .ra-apet-logo{height:34px;}
}

/* Logos após o texto na seção Parceria */
.partner-logos-after{margin-top:1.75rem;margin-bottom:0;justify-content:center}
@media (min-width: 992px){
  .partner-logos-after{margin-top:2.25rem}
}

/* Telemedicina Humana */
#telemedicina-humana .section-visual img{width:100%;height:auto;border-radius:20px;box-shadow:0 24px 48px rgba(0,0,0,.08)}
#telemedicina-humana .spec-groups{display:flex;flex-direction:column;gap:1.25rem}
#telemedicina-humana .spec-grid{list-style:none;padding:0;margin:0;display:grid;gap:.35rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
#telemedicina-humana .spec-grid li{padding-left:.25rem}
.plans-hint{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  padding:.4rem 1rem;
  border-radius:999px;
  background:color-mix(in srgb,var(--brand-mint) 75%, white);
  color:var(--brand-purple);
  font-weight:600;
  font-size:.95rem;
  box-shadow:0 14px 36px rgba(17,17,17,.12);
  position:relative;
  isolation:isolate;
  animation:plansHintPulse 3s ease-in-out infinite;
}
.plans-hint i{
  font-size:1.1rem;
  color:var(--brand-700);
}
@keyframes plansHintPulse{
  0%,100%{transform:translateY(0);box-shadow:0 14px 36px rgba(17,17,17,.12);}
  50%{transform:translateY(-2px);box-shadow:0 18px 40px rgba(17,17,17,.16);}
}

/* Página /planos */
.plan-page-hero{
  background:
    radial-gradient(900px 420px at 82% 12%, color-mix(in srgb,var(--brand-mint) 14%, transparent) 0%, transparent 58%),
    linear-gradient(180deg,#fff 0%,color-mix(in srgb,var(--brand-400) 30%, white) 100%);
}
.plan-page-hero-pill{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  padding:.45rem .85rem;
  border-radius:999px;
  background:#fff;
  border:1px solid color-mix(in srgb,var(--gray-200) 78%, white);
  color:var(--brand-purple);
  font-weight:700;
  font-size:.9rem;
}
.plan-page-hero-pill i{color:var(--brand-700);}
.plan-page-hero-card{
  display:flex;
  flex-direction:column;
  gap:.9rem;
  padding:2rem;
  border-radius:24px;
  background:#fff;
  border:1px solid color-mix(in srgb,var(--gray-200) 80%, white);
  box-shadow:0 24px 52px rgba(17,17,17,.1);
  color:var(--brand-purple);
}
.plan-page-hero-card img{
  width:min(240px,100%);
  height:auto;
  object-fit:contain;
}
.plan-page-hero-card strong{font-size:1.25rem;}
.plan-page-tabs{
  position:sticky;
  top:calc(var(--header-h, 0px) + .75rem);
  z-index:10;
  width:max-content;
  max-width:100%;
  margin:0 auto 2rem;
  padding:.4rem;
  display:flex;
  gap:.35rem;
  overflow-x:auto;
  border-radius:999px;
  background:#fff;
  border:1px solid color-mix(in srgb,var(--gray-200) 82%, white);
  box-shadow:0 18px 38px rgba(17,17,17,.08);
}
.plan-page-tab{
  flex:0 0 auto;
  min-width:92px;
  min-height:58px;
  padding:.42rem .95rem .55rem;
  border-radius:999px;
  border:0;
  background:transparent;
  color:var(--brand-purple);
  font-weight:800;
  text-decoration:none;
  font:inherit;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:.18rem;
}
.plan-page-tab:hover,
.plan-page-tab:focus-visible{
  color:var(--brand-700);
  outline:none;
}
.plan-page-tab:focus-visible{
  box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-mint) 32%, white);
}
.plan-page-tab.is-active{
  background:var(--brand-700);
  color:#fff;
}
.plan-page-tab-badge{
  display:inline-flex;
  align-items:center;
  min-height:1rem;
  padding:.14rem .42rem;
  border-radius:999px;
  background:color-mix(in srgb,var(--brand-mint) 24%, white);
  color:var(--brand-purple);
  border:1px solid color-mix(in srgb,var(--brand-mint) 34%, white);
  font-size:.58rem;
  line-height:1;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.plan-page-tab-badge.is-empty{
  visibility:hidden;
}
.plan-page-tab.is-active .plan-page-tab-badge{
  background:rgba(255,255,255,.18);
  color:#fff;
  border-color:rgba(255,255,255,.28);
}
.plan-page-panels{
  display:flex;
  flex-direction:column;
  gap:2rem;
}
.plan-page-panel{
  scroll-margin-top:calc(var(--header-h, 0px) + 6rem);
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);
  gap:1.5rem;
  padding:1.35rem;
  border-radius:28px;
  background:color-mix(in srgb,var(--brand-400) 34%, white);
  border:1px solid color-mix(in srgb,var(--gray-200) 82%, white);
}
.plan-page-panel-featured{
  border:2px solid var(--brand-700);
  box-shadow:0 24px 56px rgba(17,17,17,.12);
}
.plan-page-panel-main,
.plan-page-price-card,
.plan-page-details{
  border-radius:22px;
  background:#fff;
  border:1px solid color-mix(in srgb,var(--gray-200) 78%, white);
}
.plan-page-panel-main{
  padding:1.7rem;
}
.plan-page-panel-kicker{
  min-height:2rem;
  display:flex;
  flex-wrap:wrap;
  gap:.45rem;
  margin-bottom:.8rem;
}
.plan-page-badge{
  display:inline-flex;
  align-items:center;
  padding:.35rem .7rem;
  border-radius:999px;
  background:color-mix(in srgb,var(--brand-mint) 24%, white);
  color:var(--brand-purple);
  border:1px solid color-mix(in srgb,var(--brand-mint) 38%, white);
  font-size:.75rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.plan-page-badge-best{
  background:var(--brand-700);
  border-color:var(--brand-700);
  color:#fff;
}
.plan-page-badge-promo{
  background:linear-gradient(135deg,var(--brand-700),var(--brand-500));
  border-color:transparent;
  color:#fff;
  box-shadow:0 12px 24px rgba(179,93,61,.2);
}
.plan-page-price-promo{display:flex;flex-direction:column;gap:.18rem;align-items:flex-start;}
.plan-page-price-before{font-size:.92rem;color:color-mix(in srgb,var(--brand-purple) 58%, white);font-weight:800;}
.plan-page-panel h2{
  margin:0 0 .55rem;
  color:var(--black);
  font-weight:900;
}
.plan-page-panel-main > p{
  max-width:680px;
  color:color-mix(in srgb,var(--brand-purple) 68%, white);
  font-size:1.05rem;
}
.plan-page-chip-cloud{
  margin-top:1.4rem;
  padding:0;
  list-style:none;
  display:flex;
  flex-wrap:wrap;
  gap:.75rem;
  align-items:center;
}
.plan-page-chip{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  padding:.7rem .9rem;
  border-radius:10px;
  background:color-mix(in srgb,var(--brand-400) 55%, white);
  color:var(--brand-purple);
  border:1px solid color-mix(in srgb,var(--gray-200) 82%, white);
  font-weight:800;
}
.plan-page-chip i{color:var(--brand-700);}
.plan-page-chip-feature{
  background:color-mix(in srgb,var(--brand-mint) 12%, white);
}
.plan-page-price-card{
  padding:1.6rem;
  display:flex;
  flex-direction:column;
  gap:.85rem;
  align-self:start;
  box-shadow:0 20px 42px rgba(17,17,17,.08);
}
.plan-page-price-card > span{
  color:var(--brand-700);
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.06em;
  font-size:.78rem;
}
.plan-page-price-card h3{
  margin:0;
  color:var(--black);
  font-weight:900;
}
.plan-page-price{
  color:var(--black);
  font-size:2.35rem;
  line-height:1;
  font-weight:900;
}
.plan-page-price small{
  font-size:1rem;
  font-weight:500;
  color:var(--brand-purple);
}
.plan-page-price-card p{
  margin:0;
  color:color-mix(in srgb,var(--brand-purple) 62%, white);
}
.plan-page-cta{
  margin-top:.4rem;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:.55rem;
}
.plan-page-senior{
  margin-top:.4rem;
  padding:.9rem;
  border-radius:16px;
  background:color-mix(in srgb,var(--brand-mint) 12%, white);
  border:1px solid color-mix(in srgb,var(--brand-mint) 26%, white);
  display:flex;
  flex-direction:column;
  gap:.45rem;
}
.plan-page-senior div{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.75rem;
}
.plan-page-senior span,
.plan-page-senior strong{
  color:var(--brand-purple);
  font-weight:900;
}
.plan-page-senior small{
  color:color-mix(in srgb,var(--brand-purple) 66%, white);
}
.plan-page-details{
  grid-column:1 / -1;
  padding:1.35rem;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(220px,.35fr);
  gap:1.5rem;
}
.plan-page-details h3{
  margin:0 0 1rem;
  font-size:1.15rem;
  font-weight:900;
  color:var(--brand-purple);
}
.plan-page-included{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
  gap:.65rem 1rem;
}
.plan-page-included li{
  display:flex;
  gap:.5rem;
  color:var(--brand-purple);
  font-weight:600;
}
.plan-page-included i{
  color:color-mix(in srgb,var(--brand-mint) 72%, black);
}
.plan-page-extra{
  padding:1rem;
  border-radius:16px;
  background:color-mix(in srgb,var(--brand-400) 42%, white);
  color:var(--brand-purple);
}
.plan-page-extra strong{
  display:block;
  margin-bottom:.5rem;
}
.plan-page-extra li{
  font-size:.9rem;
  margin:.25rem 0;
}
.plan-page-choice{
  background:#fff;
}
.plan-page-choice-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1rem;
}
.plan-page-choice-grid article{
  height:100%;
  padding:1.35rem;
  border-radius:20px;
  background:color-mix(in srgb,var(--brand-400) 34%, white);
  border:1px solid color-mix(in srgb,var(--gray-200) 82%, white);
}
.plan-page-choice-grid i{
  font-size:1.5rem;
  color:var(--brand-700);
}
.plan-page-choice-grid h3{
  margin:.8rem 0 .45rem;
  font-size:1.1rem;
  font-weight:900;
}
.plan-page-choice-grid p{
  margin:0;
  color:color-mix(in srgb,var(--brand-purple) 66%, white);
}

@media (max-width:991.98px){
  .plan-page-tabs{
    width:100%;
    justify-content:flex-start;
  }
  .plan-page-panel{
    grid-template-columns:1fr;
  }
  .plan-page-price-card{
    align-self:stretch;
  }
  .plan-page-details{
    grid-template-columns:1fr;
  }
  .plan-page-choice-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width:575.98px){
  .plan-page-panel{
    padding:1rem;
    border-radius:22px;
  }
  .plan-page-panel-main,
  .plan-page-price-card,
  .plan-page-details{
    border-radius:18px;
    padding:1.15rem;
  }
  .plan-page-price{
    font-size:2rem;
  }
  .plan-page-chip{
    width:100%;
    padding:.65rem .75rem;
  }
}

/* Páginas de conteúdo */
.topic-hero{
  background:
    radial-gradient(900px 460px at 82% 12%, color-mix(in srgb,var(--brand-mint) 18%, transparent) 0%, transparent 58%),
    radial-gradient(760px 420px at 12% 18%, color-mix(in srgb,var(--brand-500) 12%, transparent) 0%, transparent 62%),
    linear-gradient(180deg,#fff 0%,color-mix(in srgb,var(--brand-400) 64%, white) 100%);
}
.topic-hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:.75rem;
}
.topic-hero-panel{
  min-height:280px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:1rem;
  padding:2rem;
  border-radius:28px;
  background:#fff;
  border:1px solid color-mix(in srgb,var(--gray-200) 82%, white);
  box-shadow:0 24px 52px rgba(17,17,17,.1);
  color:var(--brand-purple);
}
.topic-hero-panel i{
  width:58px;
  height:58px;
  border-radius:18px;
  display:grid;
  place-items:center;
  background:color-mix(in srgb,var(--brand-mint) 20%, white);
  color:var(--brand-700);
  font-size:1.65rem;
}
.topic-hero-panel strong{
  font-size:1.6rem;
  line-height:1.15;
  color:var(--black);
}
.topic-hero-panel span{
  color:color-mix(in srgb,var(--brand-purple) 66%, white);
}
.topic-card{
  padding:1.5rem;
  border-radius:22px;
  background:#fff;
  border:1px solid color-mix(in srgb,var(--gray-200) 82%, white);
  box-shadow:0 18px 38px rgba(17,17,17,.07);
}
.topic-card i{
  width:46px;
  height:46px;
  border-radius:15px;
  display:grid;
  place-items:center;
  margin-bottom:1rem;
  background:color-mix(in srgb,var(--brand-400) 64%, white);
  color:var(--brand-700);
  font-size:1.25rem;
}
.topic-card h2{
  margin:0 0 .6rem;
  font-size:1.25rem;
  font-weight:900;
  color:var(--black);
}
.topic-card p{
  margin:0;
  color:color-mix(in srgb,var(--brand-purple) 66%, white);
}
.topic-check-list{
  display:grid;
  gap:.8rem;
}
.topic-check-list li{
  display:flex;
  align-items:flex-start;
  gap:.7rem;
  padding:.9rem 1rem;
  border-radius:16px;
  background:#fff;
  border:1px solid color-mix(in srgb,var(--gray-200) 82%, white);
  color:var(--brand-purple);
  font-weight:700;
}
.topic-check-list i{
  color:color-mix(in srgb,var(--brand-mint) 72%, black);
  font-size:1.2rem;
}
.topic-feature-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1rem;
}
.topic-feature-grid article{
  padding:1.25rem;
  border-radius:20px;
  background:color-mix(in srgb,var(--brand-400) 34%, white);
  border:1px solid color-mix(in srgb,var(--gray-200) 82%, white);
}
.topic-feature-grid strong{
  display:block;
  margin-bottom:.45rem;
  color:var(--black);
  font-size:1.05rem;
}
.topic-feature-grid span{
  color:color-mix(in srgb,var(--brand-purple) 66%, white);
}
.topic-feature-grid--stack{
  grid-template-columns:1fr;
}
.topic-spec-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
  gap:.75rem;
}
.topic-spec-grid li{
  padding:.75rem .9rem;
  border-radius:14px;
  background:#fff;
  border:1px solid color-mix(in srgb,var(--gray-200) 82%, white);
  color:var(--brand-purple);
  font-weight:700;
}

@media (max-width:767.98px){
  .topic-hero-actions .btn{
    width:100%;
  }
  .topic-feature-grid{
    grid-template-columns:1fr;
  }
  .topic-hero-panel{
    min-height:auto;
  }
}

/* Página /seja-parceiro */
.partner-page{
  background:color-mix(in srgb,var(--brand-400) 10%, white);
}
.partner-hero{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(780px 420px at 78% 6%, color-mix(in srgb,var(--brand-mint) 24%, transparent) 0%, transparent 62%),
    radial-gradient(760px 420px at 8% 16%, color-mix(in srgb,var(--brand-500) 14%, transparent) 0%, transparent 64%),
    linear-gradient(180deg,#fff 0%,color-mix(in srgb,var(--brand-400) 42%, white) 58%,#fff 100%);
}
.partner-hero .lead{
  color:color-mix(in srgb,var(--brand-purple) 82%, white)!important;
}
.partner-hero-pills{
  display:flex;
  flex-wrap:wrap;
  gap:.65rem;
  margin-top:1.35rem;
  padding:0;
  list-style:none;
}
.partner-hero-pills li{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  padding:.55rem .8rem;
  border-radius:999px;
  background:rgba(255,255,255,.72);
  border:1px solid color-mix(in srgb,var(--gray-200) 82%, white);
  color:var(--brand-purple);
  font-weight:800;
  font-size:.9rem;
  box-shadow:0 10px 24px rgba(17,17,17,.05);
}
.partner-hero-pills i{
  color:color-mix(in srgb,var(--brand-mint) 70%, black);
}
.partner-hero-badge{
  position:absolute;
  left:1rem;
  right:1rem;
  bottom:1rem;
  display:flex;
  align-items:center;
  gap:.8rem;
  padding:1rem;
  border-radius:20px;
  background:rgba(255,255,255,.9);
  border:1px solid rgba(255,255,255,.7);
  box-shadow:0 18px 42px rgba(17,17,17,.16);
  color:var(--brand-purple);
  backdrop-filter:blur(10px);
}
.partner-hero-badge i{
  width:46px;
  height:46px;
  flex:0 0 auto;
  display:grid;
  place-items:center;
  border-radius:16px;
  background:color-mix(in srgb,var(--brand-mint) 22%, white);
  color:var(--brand-700);
  font-size:1.35rem;
}
.partner-hero-badge strong,
.partner-hero-badge span{
  display:block;
}
.partner-hero-badge strong{
  color:var(--black);
  font-weight:900;
}
.partner-hero-badge span{
  color:color-mix(in srgb,var(--brand-purple) 68%, white);
  font-size:.92rem;
}
.partner-institutional-section{
  background:#fff;
}
.partner-model-section{
  background:
    linear-gradient(135deg,color-mix(in srgb,var(--brand-400) 42%, white) 0%,#fff 44%,color-mix(in srgb,var(--brand-mint) 10%, white) 100%);
}
.partner-value-section{
  background:
    radial-gradient(900px 420px at 82% 18%, color-mix(in srgb,var(--brand-500) 8%, transparent) 0%, transparent 56%),
    #fff;
}
.partner-flow-section{
  background:
    linear-gradient(135deg,color-mix(in srgb,var(--brand-purple) 92%, black) 0%,color-mix(in srgb,var(--brand-mint) 66%, var(--brand-purple)) 100%);
  color:#fff;
}
.partner-flow-section .section-label,
.partner-flow-section h2,
.partner-flow-section .text-secondary{
  color:#fff!important;
}
.partner-flow-section .partner-callout{
  background:rgba(255,255,255,.12);
  border-color:rgba(255,255,255,.22);
  color:#fff;
}
.partner-flow-section .partner-callout i{
  color:color-mix(in srgb,var(--brand-mint) 42%, white);
}
.partner-premium-section{
  background:
    radial-gradient(680px 320px at 20% 18%, color-mix(in srgb,var(--brand-mint) 12%, transparent) 0%, transparent 58%),
    color-mix(in srgb,var(--brand-400) 20%, white);
}
.partner-differentials-section{
  background:#fff;
}
.partner-podcast-section{
  background:linear-gradient(180deg,#fff 0%,color-mix(in srgb,var(--brand-400) 18%, white) 100%);
}
.partner-offer-section{
  background:
    radial-gradient(760px 360px at 88% 12%, color-mix(in srgb,var(--brand-mint) 10%, transparent) 0%, transparent 60%),
    #fff;
}
.partner-positioning-section{
  background:color-mix(in srgb,var(--brand-400) 28%, white);
}
.partner-page .topic-card h3,
.partner-page .topic-card h2{
  margin:0 0 .6rem;
  font-size:1.15rem;
  font-weight:900;
  color:var(--black);
}
.partner-hero-visual{
  min-height:420px;
  border:1px solid rgba(255,255,255,.8);
  box-shadow:0 28px 62px rgba(17,17,17,.16);
}
.partner-section-copy{
  max-width:820px;
}
.partner-page .topic-card{
  position:relative;
  overflow:hidden;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.partner-page .topic-card::before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:4px;
  background:linear-gradient(90deg,var(--brand-500),var(--brand-mint));
  opacity:.8;
}
.partner-page .topic-card:hover{
  transform:translateY(-3px);
  border-color:color-mix(in srgb,var(--brand-mint) 38%, white);
  box-shadow:0 22px 44px rgba(17,17,17,.1);
}
.partner-highlight-card{
  display:flex;
  flex-direction:column;
  gap:.85rem;
  padding:1.75rem;
  border-radius:24px;
  background:#fff;
  border:1px solid color-mix(in srgb,var(--gray-200) 82%, white);
  box-shadow:0 18px 38px rgba(17,17,17,.08);
  color:var(--brand-purple);
}
.partner-highlight-card i{
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
  border-radius:17px;
  background:color-mix(in srgb,var(--brand-mint) 20%, white);
  color:var(--brand-700);
  font-size:1.45rem;
}
.partner-highlight-card strong{
  color:var(--black);
  font-size:1.25rem;
}
.partner-highlight-card span{
  color:color-mix(in srgb,var(--brand-purple) 66%, white);
}
.partner-callout{
  display:flex;
  align-items:flex-start;
  gap:.75rem;
  padding:1rem;
  border-radius:18px;
  background:#fff;
  border:1px solid color-mix(in srgb,var(--gray-200) 82%, white);
  color:var(--brand-purple);
  font-weight:700;
}
.partner-callout i{
  color:color-mix(in srgb,var(--brand-mint) 72%, black);
  font-size:1.35rem;
}
.partner-steps{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1rem;
}
.partner-steps article,
.partner-offer-grid article{
  padding:1.35rem;
  border-radius:20px;
  background:rgba(255,255,255,.94);
  border:1px solid color-mix(in srgb,var(--gray-200) 82%, white);
  box-shadow:0 16px 32px rgba(17,17,17,.06);
}
.partner-flow-section .partner-steps article{
  background:rgba(255,255,255,.11);
  border-color:rgba(255,255,255,.18);
  box-shadow:none;
  backdrop-filter:blur(8px);
}
.partner-steps span,
.partner-offer-grid span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:44px;
  height:32px;
  margin-bottom:.85rem;
  border-radius:999px;
  background:color-mix(in srgb,var(--brand-500) 16%, white);
  color:var(--brand-700);
  font-weight:900;
}
.partner-steps h3,
.partner-offer-grid h3{
  margin:0 0 .5rem;
  color:var(--black);
  font-size:1.05rem;
  font-weight:900;
}
.partner-flow-section .partner-steps span{
  background:rgba(255,255,255,.9);
}
.partner-flow-section .partner-steps h3,
.partner-flow-section .partner-steps p{
  color:#fff;
}
.partner-flow-section .partner-steps p{
  opacity:.84;
}
.partner-steps p,
.partner-offer-grid p{
  margin:0;
  color:color-mix(in srgb,var(--brand-purple) 66%, white);
}
.partner-benefits-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1rem;
}
.partner-benefits-grid article{
  display:flex;
  align-items:center;
  gap:.8rem;
  min-height:92px;
  padding:1.15rem;
  border-radius:18px;
  background:#fff;
  border:1px solid color-mix(in srgb,var(--gray-200) 82%, white);
  color:var(--brand-purple);
  font-weight:800;
  box-shadow:0 14px 30px rgba(17,17,17,.055);
}
.partner-benefits-grid article:last-child{
  grid-column:1 / -1;
}
.partner-benefits-grid i{
  width:44px;
  height:44px;
  flex:0 0 auto;
  display:grid;
  place-items:center;
  border-radius:15px;
  background:#fff;
  color:var(--brand-700);
  font-size:1.25rem;
}
.partner-podcast{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);
  gap:2.25rem;
  align-items:center;
  padding:clamp(1.25rem,3vw,2.5rem);
  border-radius:28px;
  background:
    radial-gradient(760px 360px at 10% 0%, color-mix(in srgb,var(--brand-mint) 12%, transparent) 0%, transparent 60%),
    color-mix(in srgb,var(--brand-400) 24%, white);
  border:1px solid color-mix(in srgb,var(--gray-200) 88%, white);
  box-shadow:0 22px 48px rgba(17,17,17,.06);
}
.partner-podcast-copy{
  max-width:760px;
}
.partner-podcast-brand{
  display:flex;
  align-items:center;
  gap:1rem;
  margin-bottom:1.35rem;
}
.partner-podcast-logo{
  display:block;
  width:132px;
  max-width:36vw;
  height:auto;
  padding:.75rem;
  border-radius:20px;
  background:#fff;
  border:1px solid color-mix(in srgb,var(--gray-200) 82%, white);
  box-shadow:0 14px 30px rgba(17,17,17,.07);
}
.partner-podcast-brand strong{
  display:block;
  margin-top:.2rem;
  color:var(--brand-purple);
  font-size:1.05rem;
}
.partner-podcast-list{
  display:grid;
  gap:.85rem;
}
.partner-podcast-list li{
  display:flex;
  align-items:flex-start;
  gap:.8rem;
  padding:1rem 1.1rem;
  border-radius:18px;
  background:#fff;
  border:1px solid color-mix(in srgb,var(--gray-200) 84%, white);
  color:var(--brand-purple);
  font-weight:800;
  box-shadow:0 12px 26px rgba(17,17,17,.045);
}
.partner-podcast-list i{
  color:color-mix(in srgb,var(--brand-mint) 70%, black);
  font-size:1.12rem;
  line-height:1.35;
}
.partner-offer-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1rem;
}
.partner-offer-grid article:nth-child(4),
.partner-offer-grid article:nth-child(5){
  grid-column:span 1;
}
.partner-list-card{
  padding:1.75rem;
  border-radius:22px;
  background:#fff;
  border:1px solid color-mix(in srgb,var(--gray-200) 82%, white);
  box-shadow:0 18px 38px rgba(17,17,17,.07);
}
.partner-list-card h3{
  margin:0 0 1rem;
  color:var(--black);
  font-size:1.25rem;
  font-weight:900;
}
.partner-list-card ul{
  display:grid;
  gap:.65rem;
  margin:0;
  padding:0;
  list-style:none;
}
.partner-list-card li{
  position:relative;
  padding-left:1.5rem;
  color:color-mix(in srgb,var(--brand-purple) 72%, white);
}
.partner-list-card li::before{
  content:"";
  position:absolute;
  left:0;
  top:.55rem;
  width:.55rem;
  height:.55rem;
  border-radius:50%;
  background:var(--brand-mint);
}
.partner-final-cta{
  background:
    radial-gradient(900px 420px at 18% 12%, color-mix(in srgb,var(--brand-500) 12%, transparent) 0%, transparent 58%),
    linear-gradient(180deg,#fff 0%,color-mix(in srgb,var(--brand-400) 60%, white) 100%);
}
.partner-final-cta-box{
  max-width:980px;
  margin:0 auto;
  text-align:center;
  padding:2rem;
  border-radius:28px;
  background:#fff;
  border:1px solid color-mix(in srgb,var(--gray-200) 82%, white);
  box-shadow:0 24px 52px rgba(17,17,17,.09);
}
@media (max-width:991.98px){
  .partner-hero-visual{
    min-height:320px;
  }
  .partner-steps,
  .partner-podcast,
  .partner-offer-grid{
    grid-template-columns:1fr;
  }
}
@media (max-width:575.98px){
  .partner-benefits-grid{
    grid-template-columns:1fr;
  }
  .partner-benefits-grid article:last-child{
    grid-column:auto;
  }
  .partner-podcast,
  .partner-final-cta-box{
    padding:1.25rem;
    border-radius:20px;
  }
  .partner-podcast-brand{
    align-items:flex-start;
    gap:.85rem;
  }
  .partner-podcast-logo{
    width:104px;
    padding:.55rem;
  }
  .partner-podcast-list li{
    padding:.9rem;
    font-size:.95rem;
  }
}

/* Página /quem-somos */
.about-page{
  background:color-mix(in srgb,var(--brand-400) 10%, white);
}
.about-hero{
  background:
    radial-gradient(820px 420px at 82% 12%, color-mix(in srgb,var(--brand-mint) 18%, transparent) 0%, transparent 58%),
    radial-gradient(720px 380px at 10% 18%, color-mix(in srgb,var(--brand-500) 12%, transparent) 0%, transparent 64%),
    linear-gradient(180deg,#fff 0%,color-mix(in srgb,var(--brand-400) 42%, white) 100%);
}
.about-hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:.75rem;
}
.about-hero-card{
  min-height:340px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:1rem;
  padding:2rem;
  border-radius:30px;
  background:rgba(255,255,255,.86);
  border:1px solid color-mix(in srgb,var(--gray-200) 84%, white);
  box-shadow:0 28px 62px rgba(17,17,17,.12);
}
.about-hero-card img{
  width:min(240px,100%);
  height:auto;
}
.about-hero-card strong{
  color:var(--black);
  font-size:1.45rem;
  line-height:1.15;
}
.about-hero-card span{
  color:color-mix(in srgb,var(--brand-purple) 68%, white);
}
.about-origin-section{
  background:#fff;
}
.about-visual{
  min-height:420px;
}
.about-pillars-section{
  background:
    linear-gradient(135deg,color-mix(in srgb,var(--brand-400) 38%, white) 0%,#fff 48%,color-mix(in srgb,var(--brand-mint) 10%, white) 100%);
}
.about-section-copy{
  max-width:820px;
}
.about-card{
  position:relative;
  overflow:hidden;
  padding:1.5rem;
  border-radius:22px;
  background:#fff;
  border:1px solid color-mix(in srgb,var(--gray-200) 84%, white);
  box-shadow:0 18px 38px rgba(17,17,17,.07);
}
.about-card::before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:4px;
  background:linear-gradient(90deg,var(--brand-500),var(--brand-mint));
}
.about-card i{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  margin-bottom:1rem;
  border-radius:16px;
  background:color-mix(in srgb,var(--brand-400) 58%, white);
  color:var(--brand-700);
  font-size:1.3rem;
}
.about-card h3{
  margin:0 0 .6rem;
  font-size:1.15rem;
  font-weight:900;
  color:var(--black);
}
.about-card p{
  margin:0;
  color:color-mix(in srgb,var(--brand-purple) 66%, white);
}
.about-trust-section{
  background:#fff;
}
.about-trust-panel{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,.85fr);
  gap:2rem;
  align-items:center;
  padding:clamp(1.5rem,3vw,2.5rem);
  border-radius:30px;
  background:
    radial-gradient(780px 360px at 12% 0%, color-mix(in srgb,var(--brand-mint) 12%, transparent) 0%, transparent 60%),
    color-mix(in srgb,var(--brand-400) 24%, white);
  border:1px solid color-mix(in srgb,var(--gray-200) 88%, white);
  box-shadow:0 22px 48px rgba(17,17,17,.06);
}
.about-trust-grid{
  display:grid;
  gap:.85rem;
}
.about-trust-grid article{
  padding:1rem 1.1rem;
  border-radius:18px;
  background:#fff;
  border:1px solid color-mix(in srgb,var(--gray-200) 84%, white);
  box-shadow:0 12px 26px rgba(17,17,17,.045);
}
.about-trust-grid strong,
.about-trust-grid span{
  display:block;
}
.about-trust-grid strong{
  color:var(--black);
  font-weight:900;
  margin-bottom:.25rem;
}
.about-trust-grid span{
  color:color-mix(in srgb,var(--brand-purple) 66%, white);
}
.about-cta-section{
  background:
    radial-gradient(900px 420px at 18% 12%, color-mix(in srgb,var(--brand-500) 12%, transparent) 0%, transparent 58%),
    linear-gradient(180deg,#fff 0%,color-mix(in srgb,var(--brand-400) 60%, white) 100%);
}
.about-cta-box{
  max-width:980px;
  margin:0 auto;
  text-align:center;
  padding:2rem;
  border-radius:28px;
  background:#fff;
  border:1px solid color-mix(in srgb,var(--gray-200) 82%, white);
  box-shadow:0 24px 52px rgba(17,17,17,.09);
}
@media (max-width:991.98px){
  .about-trust-panel{
    grid-template-columns:1fr;
  }
  .about-visual,
  .about-hero-card{
    min-height:300px;
  }
}
@media (max-width:575.98px){
  .about-hero-actions .btn{
    width:100%;
  }
  .about-trust-panel,
  .about-cta-box{
    padding:1.25rem;
    border-radius:20px;
  }
}
