.elementor-511 .elementor-element.elementor-element-9e70bd8{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}/* Start custom CSS for html, class: .elementor-element-6e0160e *//* ============================================================
   CLUBE TELECOM EMPRESAS — LP Planos (Móvel + Fibra)
   Prefixo: .te-  |  Fonte: Sora  |  Container: 1140px
   Ícones: SVG inline (não depende do Font Awesome do Elementor)
   Colar no CSS da página (Elementor) ou em CSS Adicional.
   ============================================================ */

.te-page{
  --te-blue:#0038A8;
  --te-blue-2:#0052D4;
  --te-navy:#04173F;
  --te-ink:#12213D;
  --te-yellow:#FFC400;
  --te-green:#25D366;
  --te-green-2:#1DB954;
  --te-bg:#F4F6FB;
  --te-white:#FFFFFF;
  --te-radius:18px;
  font-family:'Sora',sans-serif;
  color:var(--te-ink);
  background:var(--te-bg);
  overflow:clip;
}
.te-page *,.te-page *::before,.te-page *::after{box-sizing:border-box}
.te-page img{max-width:100%;height:auto}
.te-container{max-width:1140px;margin:0 auto;padding:0 20px}

/* ---------- Ícones SVG ---------- */
.te-ic{width:1em;height:1em;fill:currentColor;flex:none;display:inline-block;vertical-align:-.14em}

/* ---------- Header ---------- */
.te-header{background:var(--te-navy);padding:12px 0}
.te-header .te-container{display:flex;align-items:center;justify-content:space-between;gap:16px}
.te-logo img,
.te-footer-logo{
  filter: brightness(0) invert(1);
}
.te-logo{align-items:center; gap:10px;text-decoration:none}
.te-logo img{height:40px;width:auto;}
.te-header-actions{display:flex;align-items:center;gap:12px}
.te-header-phone{display:flex;align-items:center;gap:8px;color:#fff;text-decoration:none;font-size:.85rem;font-weight:600}
.te-header-phone .te-ic{color:var(--te-yellow);font-size:1.05rem}
.te-header-phone:hover{color:var(--te-yellow)}
.te-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:'Sora',sans-serif;font-weight:700;font-size:.95rem;line-height:1;padding:14px 26px;border-radius:999px;text-decoration:none;cursor:pointer;transition:transform .25s ease,box-shadow .25s ease,background .25s ease;border:none}
.te-btn .te-ic{font-size:1.1em}
.te-btn:hover{transform:translateY(-2px)}
.te-btn--whats{background:var(--te-green);color:#fff !important;box-shadow:0 8px 24px rgba(37,211,102,.35)}
.te-btn--whats:hover{background:var(--te-green-2);color:#fff}
.te-btn--ghost{background:transparent;color:#fff !important;border:2px solid rgba(255,255,255,.4)}
.te-btn--ghost:hover{border-color:var(--te-yellow);color:var(--te-yellow) !important}
.te-btn--sm{padding:11px 20px;font-size:.85rem}
@media(max-width:600px){.te-header-phone span{display:none}.te-btn--sm{padding:11px 16px}}

/* ---------- Hero c/ vídeo ---------- */
.te-hero{position:relative;padding:64px 0 84px;background:linear-gradient(160deg,var(--te-navy) 0%,var(--te-blue) 60%,var(--te-blue-2) 100%);overflow:clip;isolation:isolate}
.te-hero-video{position:absolute;inset:0;z-index:-2;pointer-events:none;overflow:clip}
.te-hero-video iframe{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100vw;height:56.25vw;min-height:100%;min-width:177.78vh;border:0}
.te-hero-overlay{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(4,23,63,.88) 0%,rgba(0,56,168,.78) 45%,rgba(4,23,63,.92) 100%)}
.te-hero-head{text-align:center;max-width:760px;margin:0 auto 40px}
.te-eyebrow{display:inline-block;background:rgba(255,196,0,.15);border:1px solid rgba(255,196,0,.5);color:var(--te-yellow);font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:8px 18px;border-radius:999px;margin-bottom:18px}
.te-hero h1{color:#fff;font-size:clamp(1.7rem,4vw,2.6rem);font-weight:800;line-height:1.2;margin:0 0 14px}
.te-hero h1 span{color:var(--te-yellow)}
.te-hero-sub{color:rgba(255,255,255,.85);font-size:clamp(.95rem,2vw,1.1rem);line-height:1.6;margin:0}

/* ---------- Carrossel ---------- */
.te-carousel{position:relative}
.te-track{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding:6px 2px 10px}
.te-track::-webkit-scrollbar{display:none}
.te-track>*{flex:0 0 calc((100% - 48px)/3);scroll-snap-align:start}
@media(max-width:1023px){.te-track>*{flex:0 0 calc((100% - 24px)/2)}}
@media(max-width:767px){.te-track{gap:16px}.te-track>*{flex:0 0 100%}}
.te-arrow{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:2;transition:background .2s,color .2s;background:rgba(255,255,255,.15);color:#fff}
.te-arrow .te-ic{width:22px;height:22px}
.te-arrow:hover{background:var(--te-yellow);color:var(--te-navy)}
.te-arrow--prev{left:-56px}
.te-arrow--next{right:-56px}
.te-section--light .te-arrow{background:var(--te-blue);color:#fff}
.te-section--light .te-arrow:hover{background:var(--te-yellow);color:var(--te-navy)}
@media(max-width:1279px){.te-arrow--prev{left:-8px}.te-arrow--next{right:-8px}}
.te-dots{display:flex;justify-content:center;gap:8px;margin-top:22px;flex-wrap:wrap}
.te-dot{width:9px;height:9px;border-radius:50%;border:none;cursor:pointer;background:rgba(255,255,255,.35);padding:0;transition:transform .2s,background .2s}
.te-dot.is-active{background:var(--te-yellow);transform:scale(1.3)}
.te-section--light .te-dot{background:#C6D0E4}
.te-section--light .te-dot.is-active{background:var(--te-blue)}

/* ---------- Cards de plano ---------- */
.te-card{background:var(--te-white);border-radius:var(--te-radius);box-shadow:0 12px 32px rgba(4,23,63,.14);display:flex;flex-direction:column;overflow:clip;transition:transform .3s ease,box-shadow .3s ease}
.te-card:hover{transform:translateY(-6px);box-shadow:0 20px 44px rgba(4,23,63,.22)}
.te-card-badge{background:var(--te-yellow);color:var(--te-navy);text-align:center;font-size:.82rem;font-weight:700;padding:10px 14px}
.te-card-badge--empty{background:#E7ECF5;height:40px}
.te-card-body{padding:26px 26px 30px;display:flex;flex-direction:column;flex:1}
.te-card-ate{font-size:.8rem;font-weight:700;color:var(--te-ink);margin:0}
.te-card-gb{font-size:clamp(2.4rem,4.6vw,3rem);font-weight:800;color:var(--te-blue);line-height:1.05;margin:0}
.te-card-gb small{font-size:.42em;font-weight:700}
.te-card-detail{font-size:.72rem;color:#5A6A8A;margin:2px 0 12px}
.te-card-price{font-size:1.35rem;font-weight:800;color:var(--te-ink);margin:0 0 18px}
.te-card-price small{font-size:.6em;font-weight:600}
.te-card-old{display:block;font-size:.72rem;color:#8A97B0;font-weight:600}
.te-card-old s{text-decoration:line-through}
.te-card-apps-title{font-size:.8rem;font-weight:700;margin:0 0 10px}
.te-card-apps{display:grid;grid-template-columns:1fr 1fr;gap:9px 12px;margin:0 0 22px;padding:0;list-style:none}
.te-card-apps li{display:flex;align-items:center;gap:8px;font-size:.78rem;color:var(--te-ink)}
.te-card-apps li .te-ic{width:18px;height:18px;color:var(--te-blue)}
.te-card-cta{margin-top:auto}
.te-card-note{font-size:.68rem;color:#5A6A8A;text-align:center;margin:12px 0 0}
/* Tiles de conteúdo (fibra) */
.te-tiles{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 22px;padding:0;list-style:none}
.te-tiles li{min-width:54px;flex:0 0 auto}
.te-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:54px;height:54px;border-radius:12px;background:#F1F4FA;border:1px solid #E2E8F4;padding:4px;text-align:center;overflow:hidden}
.te-tile img{width:30px;height:30px;object-fit:contain}
.te-tile span{font-size:.52rem;font-weight:700;color:#42506B;line-height:1.05;word-break:break-word}
/* Card destacado (fibra) */
.te-card--featured{background:var(--te-blue)}
.te-card--featured .te-card-gb,.te-card--featured .te-card-ate,.te-card--featured .te-card-price,.te-card--featured .te-card-apps-title{color:#fff}
.te-card--featured .te-card-detail,.te-card--featured .te-card-note{color:rgba(255,255,255,.78)}
.te-card--featured .te-card-old{color:rgba(255,255,255,.65)}
.te-card--featured .te-tile{background:#fff;border-color:rgba(255,255,255,.6)}

/* ---------- Vantagens ---------- */
.te-vantagens{padding:70px 0}
.te-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
@media(max-width:1023px){.te-grid-4{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.te-grid-4{grid-template-columns:1fr}}
.te-vantagem{background:#fff;border-radius:var(--te-radius);padding:28px 24px;box-shadow:0 8px 24px rgba(4,23,63,.08)}
.te-vantagem-ic{color:var(--te-blue);background:#EDF1F9;width:56px;height:56px;border-radius:14px;display:flex;align-items:center;justify-content:center;margin-bottom:16px}
.te-vantagem-ic .te-ic{width:26px;height:26px}
.te-vantagem h3{font-size:1rem;font-weight:700;margin:0 0 8px}
.te-vantagem p{font-size:.85rem;line-height:1.6;color:#5A6A8A;margin:0}

/* ---------- Seções ---------- */
.te-section{padding:80px 0}
.te-section--fibra{background:linear-gradient(180deg,#EAEFF8 0%,var(--te-bg) 100%)}
.te-section-head{text-align:center;max-width:680px;margin:0 auto 44px}
.te-section-head h2{font-size:clamp(1.5rem,3.4vw,2.1rem);font-weight:800;color:var(--te-navy);margin:0 0 12px}
.te-section-head h2 span{color:var(--te-blue-2)}
.te-section-head p{font-size:.98rem;line-height:1.65;color:#5A6A8A;margin:0}

/* ---------- Prova social ---------- */
.te-prova{padding:80px 0;background:#fff}

/* ---------- CTA final ---------- */
.te-cta-final{background:linear-gradient(135deg,var(--te-navy) 0%,var(--te-blue) 100%);padding:76px 0;text-align:center}
.te-cta-final h2{color:#fff;font-size:clamp(1.5rem,3.4vw,2.1rem);font-weight:800;margin:0 0 12px}
.te-cta-final p{color:rgba(255,255,255,.82);font-size:1rem;margin:0 auto 30px;max-width:560px;line-height:1.6}
.te-cta-final .te-cta-group{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}

/* ---------- Footer ---------- */
.te-footer{background:var(--te-navy);color:rgba(255,255,255,.8);padding:56px 0 0}
.te-footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px;padding-bottom:40px}
@media(max-width:860px){.te-footer-grid{grid-template-columns:1fr;gap:32px}}
.te-footer h4{color:#fff;font-size:.95rem;font-weight:700;margin:0 0 16px}
.te-footer p,.te-footer a{font-size:.85rem;line-height:1.7;color:rgba(255,255,255,.75);text-decoration:none}
.te-footer a{display:inline-flex;align-items:center;gap:8px}
.te-footer a:hover{color:var(--te-yellow)}
.te-footer img.te-footer-logo{height:38px;width:auto;margin-bottom:14px}
.te-footer ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.te-footer-social{display:flex;gap:12px;margin-top:18px}
.te-footer-social a{width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;color:#fff;transition:background .2s,transform .2s}
.te-footer-social a .te-ic{width:18px;height:18px}
.te-footer-social a:hover{background:var(--te-green);transform:translateY(-3px);color:#fff}
.te-footer-bar{border-top:1px solid rgba(255,255,255,.12);padding:20px 0;text-align:center}
.te-footer-bar p{margin:0;font-size:.72rem;color:rgba(255,255,255,.5);line-height:1.6}

/* ---------- FAB WhatsApp (LP_PADRAO) ---------- */
.te-fab{position:fixed;right:24px;bottom:24px;z-index:9999;width:62px;height:62px;border-radius:50%;background:var(--te-green);color:#fff;display:flex;align-items:center;justify-content:center;text-decoration:none;box-shadow:0 10px 30px rgba(37,211,102,.5);transform:translateX(120px);animation:teFabIn .7s .8s cubic-bezier(.34,1.56,.64,1) forwards}
.te-fab .te-ic{width:32px;height:32px}
.te-fab::before,.te-fab::after{content:'';position:absolute;inset:0;border-radius:50%;border:2px solid var(--te-green);animation:teWave 2.4s linear infinite;opacity:0}
.te-fab::after{animation-delay:1.2s}
.te-fab:hover{color:#fff}
.te-fab-badge{position:absolute;top:-4px;right:-4px;background:#FF3B30;color:#fff;font-size:.7rem;font-weight:700;width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;transform:scale(0);animation:teBadge .4s 3.2s cubic-bezier(.34,1.56,.64,1) forwards}
@keyframes teFabIn{to{transform:translateX(0)}}
@keyframes teWave{0%{transform:scale(1);opacity:.7}100%{transform:scale(1.7);opacity:0}}
@keyframes teBadge{to{transform:scale(1)}}

/* ---------- Scroll reveal (gate .te-js) ---------- */
.te-js .te-reveal{opacity:0;transform:translateY(26px);filter:blur(8px);transition:opacity .8s ease,transform .8s ease,filter .8s ease}
.te-js .te-reveal.te-in{opacity:1;transform:none;filter:none}
@media(prefers-reduced-motion:reduce){
  .te-js .te-reveal{opacity:1;transform:none;filter:none;transition:none}
  .te-fab{animation:none;transform:none}
  .te-fab::before,.te-fab::after{animation:none}
  .te-track{scroll-behavior:auto}
}/* End custom CSS */