/* design.css do tema SEM as regras que tem copia identica mais adiante no design.css do plugin (gerado; nao editar) */
@media (max-width: 640px){
.hero-actions .button-primary { width: min(100%, 310px); }
}
.title-rail {
  display: flex;
  gap: 14px;
  overflow-x: auto;
  overflow-y: hidden;
  padding: 4px 2px 14px;
  scroll-snap-type: x proximity;
  -webkit-overflow-scrolling: touch;
}
.title-rail::-webkit-scrollbar { height: 6px; }
.title-card:hover .title-card-poster,
.title-card:focus-visible .title-card-poster {
  transform: translateY(-4px) scale(1.035);
  box-shadow: 0 16px 34px rgb(0 0 0 / 45%);
}
.catalog-tabs button { color: rgb(255 255 255 / 62%) !important; }
.title-card {
  flex: 0 0 auto !important; width: 156px !important; display: flex !important;
  flex-direction: column !important; gap: 8px !important; text-decoration: none !important; color: inherit !important;
}
.title-card-name { font-size: 12.5px !important; font-weight: 500 !important; color: rgb(255 255 255 / 72%) !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; }
.catalog-scale { display: flex !important; justify-content: center !important; flex-wrap: wrap !important; gap: 0 !important; margin: 18px auto 0 !important; }
.catalog-scale span { padding: 0 12px !important; color: rgb(255 255 255 / 42%) !important; font-size: 11px !important; font-weight: 550 !important; }
.catalog-scale strong { color: rgb(255 255 255 / 72%) !important; font-weight: 700 !important; }
.title-card--wide { width: 240px !important; }
@media (max-width: 760px){
.title-card--wide { width: 200px !important; }
}
.closing h2 { font-size: clamp(38px, 5.5vw, 68px) !important; font-weight: 400 !important; }
.site-footer .brand img { max-height: 26px !important; opacity: .85 !important; }
@media (max-width: 900px){
.hero h1 { font-size: clamp(34px, 6.4vw, 54px) !important; line-height: 1.1 !important; }
}
@media (max-width: 680px){
.title-card { width: 132px !important; }
.title-card--wide { width: 200px !important; }
.title-rail { gap: 11px !important; }
}
.plan-price {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  column-gap: 7px;
  row-gap: 6px;
  margin-bottom: 18px;
  font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
  font-variant-numeric: lining-nums tabular-nums;
  white-space: nowrap;
}
.plan-price .amount {
  font-family: "Inter", ui-sans-serif, system-ui, sans-serif !important;
  font-size: clamp(40px, 3.6vw, 46px);
  font-weight: 500;
  line-height: 1.1;
  letter-spacing: -0.015em;
  color: #fff;
}
.plan-price .currency,
.plan-price .period,
.plan-price .price-original {
  font-family: "Inter", ui-sans-serif, system-ui, sans-serif !important;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0;
  margin: 0;
  align-self: baseline;
}
.plan-price .currency { font-size: 15px; color: #b8b8b8; }
.plan-price .period { font-size: 13px; color: #aaa; }
.plan-price .price-original {
  flex-basis: 100%;
  font-size: 14px;
  color: #999;
  text-decoration: line-through;
}
.plan-card a.button.button-primary {
  background: #fff !important;
  color: #111 !important;
  min-height: 50px !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  border-radius: 10px !important;
  transition: background-color .15s ease, transform .15s ease !important;
}
@media (hover:hover){
.plan-card a.button.button-primary:hover {
    background: #f0f0f0 !important;
    transform: translateY(-1px);
  }
}
.plan-card a.button.button-primary:active {
  background: #e8e8e8 !important;
  transform: translateY(1px);
}
.plan-card a.button.button-primary:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 4px;
}
@media (prefers-reduced-motion:reduce){
.plan-card a.button.button-primary { transition: none !important; transform: none !important; }
}
@media(min-width:681px) and (max-width:999px){
.elementor-955 .plans-section .plan-card{padding:24px !important;min-height:0 !important}
.elementor-955 .plans-section .plan-card .benefits{margin-bottom:22px !important;gap:11px !important}
}
@media(min-width:1000px) and (max-width:1100px){
.elementor-955 .plans-section .plans-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;max-width:1040px !important;gap:16px !important}
.elementor-955 .plans-section .plan-card{padding:24px !important;min-height:0 !important}
}
@media(max-width:680px){
.elementor-955 .feature-grid .feature-card{display:grid !important;grid-template-columns:34px minmax(0,1fr);column-gap:12px;row-gap:14px;align-content:start;align-items:center;padding:20px !important}
.elementor-955 .feature-grid .feature-icon{width:34px !important;height:34px !important;margin:0 !important;border-radius:9px !important}
.elementor-955 .feature-grid .feature-icon svg{width:18px !important;height:18px !important}
.elementor-955 .feature-grid .feature-card h3{margin:0 !important;line-height:1.3 !important}
.elementor-955 .feature-grid .feature-card p{grid-column:1/-1;margin:0 !important}
}
@media(min-width:681px) and (max-width:1100px){
.elementor-955 .catalog-scale{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr));max-width:640px;margin-inline:auto !important;gap:22px 28px !important}
.elementor-955 .catalog-scale>span{padding:0 !important;border:0 !important;text-align:center}
.elementor-955 .catalog-scale>span strong{display:block}
}
@media(min-width:1101px){
.elementor-955 .section,.elementor-955 .closing{padding-top:112px !important;padding-bottom:112px !important}
}
.elementor-955 #previa-catalogo{scroll-margin-top:100px}
