:root{
  --navy:#031327;
  --navy2:#061d38;
  --navy3:#08294d;
  --blue:#0878f5;
  --blue2:#0b58ce;
  --cyan:#21c9f3;
  --text:#eef6ff;
  --muted:#9eb4ce;
  --line:rgba(111,177,255,.16);
  --white:#fff;
  --green:#25D366;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:"Inter",sans-serif;
  color:var(--text);
  background:var(--navy);
  line-height:1.5;
}
a{text-decoration:none;color:inherit}
button,input,select{font:inherit}
img{display:block;max-width:100%}
.container{width:min(1220px,calc(100% - 36px));margin-inline:auto}
.kicker{display:block;color:var(--cyan);font-weight:800;font-size:11px;letter-spacing:.16em;margin-bottom:10px}
em{font-style:normal;color:var(--cyan)}
.topbar{background:#020c19;border-bottom:1px solid rgba(255,255,255,.06)}
.topbar-inner{min-height:34px;display:flex;justify-content:flex-end;align-items:center;gap:28px;font-size:11px;color:#dbe9f8}
.main-header{
  position:sticky;top:0;z-index:30;
  background:rgba(3,19,39,.96);
  backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(255,255,255,.08);
  box-shadow:0 12px 30px rgba(0,0,0,.18);
}
.header-inner{height:106px;display:flex;align-items:center;gap:28px}
.logo-wrap{width:300px;flex:0 0 300px;display:flex;align-items:center}
.logo-wrap img{
  width:100%;max-height:88px;object-fit:contain;object-position:left center;
  filter:drop-shadow(0 0 12px rgba(33,201,243,.10));
}
.nav-links{display:flex;align-items:center;gap:24px;margin-left:auto}
.nav-links a{font-size:12px;font-weight:700;color:#c7d7e9;transition:.2s}
.nav-links a:hover{color:#fff}
.client-button{
  padding:13px 18px;border-radius:11px;font-size:12px;font-weight:800;
  background:linear-gradient(135deg,var(--blue),var(--blue2));
  box-shadow:0 10px 25px rgba(0,104,255,.28);
}
.menu-button{display:none;background:none;border:0;margin-left:auto;padding:8px}
.menu-button span{display:block;width:25px;height:2px;background:#fff;margin:5px}

.carousel{background:#021225;border-bottom:1px solid var(--line)}
.carousel-stage{
  width:min(1390px,100%);
  height:clamp(390px,43vw,610px);
  margin:auto;position:relative;overflow:hidden;
  background:radial-gradient(circle at 50% 50%,rgba(7,120,245,.17),transparent 40%);
}
.slide{
  position:absolute;inset:0;
  display:flex;align-items:center;justify-content:center;
  opacity:0;transform:scale(1.015);
  transition:opacity .65s ease,transform .8s ease;
  padding:12px 70px 28px;
}
.slide.active{opacity:1;transform:scale(1)}
.slide img{
  max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;
  border-radius:18px;box-shadow:0 25px 65px rgba(0,0,0,.32);
}
.carousel-arrow{
  position:absolute;z-index:5;top:50%;transform:translateY(-50%);
  width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.22);
  background:rgba(1,12,27,.68);color:#fff;font-size:28px;cursor:pointer;
}
.carousel-arrow:hover{border-color:var(--cyan);color:var(--cyan)}
.carousel-arrow.prev{left:16px}.carousel-arrow.next{right:16px}
.carousel-dots{position:absolute;z-index:5;left:50%;bottom:16px;transform:translateX(-50%);display:flex;gap:7px}
.carousel-dots button{width:9px;height:9px;border:0;border-radius:50%;background:rgba(255,255,255,.30);padding:0;cursor:pointer}
.carousel-dots button.active{width:28px;border-radius:10px;background:var(--cyan)}

.section{padding:82px 0}
.plans-section{background:linear-gradient(180deg,#041a33,#031327)}
.section-title{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:38px}
.section-title h1,.section-title h2,.entertainment h2,.coverage h2,.contact-section h2{
  font-family:"Manrope",sans-serif;margin:0;line-height:1.05;letter-spacing:-.035em
}
.section-title h1{font-size:clamp(38px,4.3vw,60px)}
.section-title h2,.entertainment h2{font-size:clamp(35px,4vw,54px)}
.starting-price{text-align:right;min-width:210px}
.starting-price span{display:block;font-size:11px;color:#89a5c4}
.starting-price strong{display:block;font-family:"Manrope";font-size:35px;color:#fff}
.starting-price small{font-size:11px;color:#8da8c7}
.plan-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.plan-card{
  position:relative;padding:27px 23px 23px;border-radius:20px;
  border:1px solid rgba(83,168,255,.20);
  background:linear-gradient(180deg,rgba(8,38,70,.96),rgba(3,18,35,.98));
  box-shadow:0 18px 45px rgba(0,0,0,.12);
  min-height:430px;display:flex;flex-direction:column;
}
.plan-card.featured{
  border-color:rgba(33,201,243,.62);
  box-shadow:0 0 0 1px rgba(33,201,243,.16),0 22px 50px rgba(0,93,200,.20);
}
.featured-tag{
  position:absolute;left:50%;top:-14px;transform:translateX(-50%);
  white-space:nowrap;padding:7px 14px;border-radius:20px;
  background:linear-gradient(135deg,var(--cyan),var(--blue));color:#031327;font-size:9px;font-weight:900;
}
.plan-label{font-size:9px;letter-spacing:.16em;color:#79a2cf;font-weight:800}
.speed{font-family:"Manrope";font-size:51px;line-height:1;margin:16px 0 12px}
.speed small{font-size:15px;color:var(--cyan)}
.plan-card>p{font-size:12px;color:#9eb3cb;min-height:55px}
.price{font-family:"Manrope";font-size:42px;margin:13px 0 14px}
.price small{font-size:13px}.price sup{font-size:20px}.price span{font-family:"Inter";font-size:10px;color:#93abc6}
.price .consult{display:inline-block;font-size:13px;color:#d9e8f8}
.plan-card ul{list-style:none;padding:0;margin:0 0 22px;display:grid;gap:7px}
.plan-card li{font-size:11px;color:#c5d5e6;padding-left:18px;position:relative}
.plan-card li:before{content:"✓";position:absolute;left:0;color:var(--cyan);font-weight:800}
.subscribe{
  margin-top:auto;text-align:center;padding:12px 15px;border-radius:10px;
  background:linear-gradient(135deg,var(--blue),var(--blue2));font-size:11px;font-weight:900;
  box-shadow:0 10px 22px rgba(0,103,240,.20);transition:.2s
}
.subscribe:hover{transform:translateY(-2px)}
.conditions{font-size:9px;color:#6f8baa;margin:18px 0 0}

.entertainment{
  background:
    radial-gradient(circle at 80% 35%,rgba(33,201,243,.10),transparent 26%),
    linear-gradient(135deg,#061b33,#02101f);
}
.entertainment-grid{display:grid;grid-template-columns:1fr .9fr;gap:80px;align-items:center}
.tv-copy>p{max-width:660px;color:#9db1c9;margin:23px 0}
.app-pills{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 28px}
.app-pills span{
  padding:10px 14px;border-radius:999px;
  border:1px solid rgba(86,169,255,.18);background:rgba(255,255,255,.035);
  color:#e7f2ff;font-size:11px;font-weight:700;
}
.primary-button{
  display:inline-flex;padding:14px 20px;border-radius:11px;
  background:linear-gradient(135deg,var(--blue),var(--blue2));font-size:12px;font-weight:800
}
.tv-card{
  padding:24px;border-radius:26px;border:1px solid rgba(33,201,243,.20);
  background:linear-gradient(145deg,rgba(12,45,80,.88),rgba(2,14,29,.95));
  box-shadow:0 30px 65px rgba(0,0,0,.22)
}
.tv-screen{
  min-height:320px;border-radius:18px;display:flex;flex-direction:column;align-items:center;justify-content:center;
  background:
    radial-gradient(circle at 50% 45%,rgba(33,201,243,.22),transparent 25%),
    linear-gradient(135deg,#062a53,#021328);
  border:1px solid rgba(63,170,255,.22);position:relative;overflow:hidden
}
.tv-screen:after{content:"";position:absolute;width:450px;height:1px;background:linear-gradient(90deg,transparent,var(--cyan),transparent);transform:rotate(-25deg)}
.screen-top{font-size:10px;letter-spacing:.18em;color:#89b7ea;z-index:1}
.screen-number{font-family:"Manrope";font-size:94px;font-weight:800;line-height:.95;color:#fff;z-index:1}
.screen-label{font-family:"Manrope";font-weight:800;color:var(--cyan);letter-spacing:.15em;z-index:1}
.screen-apps{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:25px;z-index:1}
.screen-apps span{font-size:8px;padding:7px 9px;border-radius:7px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.08)}
.tv-caption{display:flex;justify-content:space-between;align-items:center;padding:18px 4px 0}
.tv-caption strong{font-size:13px}.tv-caption span{font-size:10px;color:#7897ba}

.coverage{padding:58px 0;background:linear-gradient(90deg,#073b79,#041a36);border-block:1px solid rgba(255,255,255,.06)}
.coverage-inner{display:grid;grid-template-columns:.72fr 1.28fr;gap:55px;align-items:center}
.coverage h2{font-size:31px}
.coverage-form{display:grid;grid-template-columns:1fr 1.3fr auto;gap:10px;align-items:end}
.coverage-form label>span{display:block;font-size:9px;font-weight:700;color:#c9dced;margin-bottom:5px}
.coverage select,.coverage input{
  width:100%;height:46px;padding:0 13px;border-radius:9px;
  border:1px solid rgba(255,255,255,.17);background:#041a35;color:#fff;outline:none
}
.coverage button{
  height:46px;border:0;border-radius:9px;padding:0 18px;
  background:linear-gradient(135deg,var(--blue),var(--blue2));color:#fff;font-weight:800;font-size:10px;cursor:pointer
}
.coverage-result{grid-column:2/-1;font-size:11px;color:#d8eaff;min-height:17px}

.business{background:#031327}
.section-title.compact{max-width:930px}
.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}
.service-card{
  min-height:265px;padding:25px;border-radius:18px;
  border:1px solid rgba(83,168,255,.14);background:linear-gradient(145deg,#071e38,#041326);
  display:flex;flex-direction:column
}
.service-card.wide{grid-column:span 4;min-height:auto}
.service-icon{
  width:44px;height:44px;display:grid;place-items:center;border-radius:12px;
  background:rgba(8,120,245,.13);border:1px solid rgba(33,201,243,.14);color:var(--cyan);font-size:20px
}
.service-card h3{font-family:"Manrope";font-size:19px;margin:23px 0 9px}
.service-card p{font-size:11px;color:#91a7c1;margin:0 0 20px}
.service-card a{margin-top:auto;font-size:10px;font-weight:800;color:var(--cyan)}

.contact-section{padding:70px 0;background:linear-gradient(135deg,#076fe5,#06489f)}
.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:55px;align-items:center}
.contact-section h2{font-size:43px}
.contact-section p{color:#d8e8fa}
.contact-cards{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:10px}
.contact-cards>*{display:block;padding:18px;border-radius:13px;background:rgba(1,18,43,.28);border:1px solid rgba(255,255,255,.14)}
.contact-cards span{display:block;font-size:9px;color:#c6ddf5;margin-bottom:5px}
.contact-cards strong{font-size:11px}

footer{padding:58px 0 25px;background:#020b17}
.footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:55px}
.footer-brand img{width:230px;max-height:75px;object-fit:contain;object-position:left}
.footer-brand p{font-size:11px;color:#748ba7}
.footer-grid>div:not(.footer-brand){display:flex;flex-direction:column;gap:7px}
.footer-grid strong{font-size:10px;margin-bottom:5px}
.footer-grid a,.footer-grid span{font-size:10px;color:#8094ae}
.footer-bottom{border-top:1px solid rgba(255,255,255,.06);margin-top:35px;padding-top:20px;font-size:9px;color:#60758f}

.whatsapp-float{
  position:fixed;right:22px;bottom:22px;z-index:50;
  width:57px;height:57px;border-radius:50%;display:grid;place-items:center;
  background:var(--green);box-shadow:0 16px 30px rgba(0,0,0,.28)
}
.whatsapp-float svg{width:30px;height:30px;fill:#fff}

@media (max-width:1050px){
  .topbar-inner{justify-content:center;flex-wrap:wrap;padding:7px 0;gap:12px 20px}
  .header-inner{height:86px}
  .logo-wrap{width:235px;flex-basis:235px}
  .nav-links{
    display:none;position:absolute;left:18px;right:18px;top:86px;
    flex-direction:column;align-items:flex-start;padding:20px;border-radius:14px;
    background:#04172d;border:1px solid rgba(255,255,255,.08)
  }
  .nav-links.open{display:flex}
  .menu-button{display:block}
  .client-button{margin-left:0}
  .plan-grid{grid-template-columns:repeat(2,1fr)}
  .entertainment-grid,.coverage-inner,.contact-grid{grid-template-columns:1fr}
  .coverage-form{grid-template-columns:1fr 1fr auto}
  .coverage-result{grid-column:1/-1}
  .service-grid{grid-template-columns:repeat(2,1fr)}
  .service-card.wide{grid-column:span 2}
  .footer-grid{grid-template-columns:1.4fr 1fr 1fr}.footer-grid>div:last-child{grid-column:2/4}
}
@media (max-width:720px){
  .container{width:min(100% - 26px,1220px)}
  .topbar{display:none}
  .header-inner{height:78px;gap:12px}
  .logo-wrap{width:185px;flex-basis:185px}
  .logo-wrap img{max-height:65px}
  .nav-links{top:78px}
  .client-button{padding:10px 11px;font-size:10px}
  .carousel-stage{height:420px}
  .slide{padding:10px 40px 25px}
  .slide img{border-radius:12px}
  .section{padding:65px 0}
  .section-title{display:block}.starting-price{text-align:left;margin-top:20px}
  .plan-grid{grid-template-columns:1fr}
  .plan-card{min-height:390px}
  .entertainment-grid{gap:40px}
  .tv-screen{min-height:260px}.screen-number{font-size:76px}
  .coverage-form{grid-template-columns:1fr}
  .service-grid{grid-template-columns:1fr}.service-card.wide{grid-column:auto}
  .contact-cards{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-grid>div:last-child{grid-column:auto}
}

/* CMS dinâmico */
.plan-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.custom-section{
  padding:82px 0;
  background:linear-gradient(135deg,#061a31,#031327);
  border-top:1px solid rgba(111,177,255,.10)
}
.custom-section:nth-child(even){background:linear-gradient(135deg,#04152a,#072544)}
.custom-section .custom-inner{max-width:880px}
.custom-section h2{
  font-family:"Manrope",sans-serif;
  font-size:clamp(36px,4vw,54px);
  margin:0 0 18px;line-height:1.05;letter-spacing:-.035em
}
.custom-section p{color:#9eb4ce;max-width:760px;font-size:15px}
.custom-section a{
  display:inline-flex;margin-top:18px;padding:13px 18px;border-radius:10px;
  background:linear-gradient(135deg,var(--blue),var(--blue2));font-weight:800;font-size:12px
}
#instagramContact strong{color:#fff}


/* Logo refinada - fundo no mesmo azul do cabeçalho */
.logo-wrap{
  width:330px;
  flex:0 0 330px;
}
.logo-wrap img{
  width:100%;
  max-height:92px;
  object-fit:contain;
  object-position:left center;
  background:#031327;
  border-radius:0;
  padding:0;
  filter:none;
}
.footer-brand img{
  width:260px;
  max-height:88px;
  object-fit:contain;
  object-position:left center;
  background:#020b17;
}
@media(max-width:1050px){
  .logo-wrap{width:260px;flex-basis:260px}
}
@media(max-width:720px){
  .logo-wrap{width:195px;flex-basis:195px}
  .logo-wrap img{max-height:68px}
}

/* =========================================================
   EXTENSÕES DO EDITOR — sem substituir o layout original
   ========================================================= */
.nav-links[data-formato="abas"] a,
.nav-links[data-formato="blocos"] a{
  padding:9px 12px;
}
.nav-links[data-formato="abas"] a{
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.07);
}
.nav-links[data-formato="blocos"] a{
  background:rgba(255,255,255,.085);
}
.nav-links a:hover{color:var(--menu-hover,var(--cyan))!important}

.cms-free-element{position:relative;z-index:2}
.cms-free-element .container{box-sizing:border-box}
.cms-free-element img{height:auto;max-width:100%;border-radius:14px}
.cms-free-button{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:44px;padding:12px 20px;border-radius:10px;
  font-weight:800;font-size:12px;text-decoration:none;
  box-shadow:0 10px 24px rgba(0,0,0,.14);
  transition:transform .2s ease,filter .2s ease
}
.cms-free-button:hover{transform:translateY(-2px);filter:brightness(1.06)}

.custom-layout{display:grid;gap:42px;align-items:center}
.custom-layout.imagem-esquerda,.custom-layout.imagem-direita{grid-template-columns:1fr 1fr}
.custom-media img{width:100%;height:auto;border-radius:18px;display:block}

.instagram-link{position:relative}
.instagram-link .instagram-icon{width:20px;height:20px;display:block;margin-bottom:9px;color:#fff}
.instagram-footer-link{display:flex!important;align-items:center;gap:7px}
.instagram-footer-link .instagram-icon{width:15px;height:15px;flex:0 0 15px;color:currentColor}
.instagram-footer-link .instagram-user{font-size:inherit;color:inherit}

@media(max-width:720px){
  .custom-layout.imagem-esquerda,.custom-layout.imagem-direita{grid-template-columns:1fr}
}

/* =========================================================
   CABEÇALHO / MENU — formato aprovado em 18/08/2026
   Mantém o layout do site e separa o menu em uma linha própria.
   ========================================================= */
.main-header{
  background:rgba(3,19,39,.98);
  backdrop-filter:blur(14px);
}
.header-inner{
  height:74px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
}
.logo-wrap{
  width:200px;
  flex:0 0 200px;
}
.logo-wrap img{
  width:100%;
  max-height:58px;
  object-fit:contain;
  object-position:left center;
}
.header-actions{
  margin-left:auto;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:22px;
}
.header-instagram{
  display:inline-flex;
  align-items:center;
  gap:6px;
  color:#c8d6e8;
  font-size:10px;
  font-weight:700;
  white-space:nowrap;
  transition:color .2s ease;
}
.header-instagram:hover{color:#fff}
.header-instagram .instagram-icon{width:14px;height:14px;flex:0 0 14px}
.client-button{
  padding:12px 17px;
  border-radius:10px;
  font-size:10px;
  font-weight:800;
  white-space:nowrap;
}
.menu-row{
  border-top:1px solid rgba(255,255,255,.035);
  border-bottom:1px solid rgba(255,255,255,.07);
  background:#031327;
}
.menu-row-inner{
  min-height:41px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.nav-links{
  width:100%;
  margin-left:0;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:24px;
}
.nav-links a{
  padding:13px 0 12px;
  font-size:10px;
  line-height:1;
  font-weight:700;
  color:#dce8f6;
  white-space:nowrap;
}
.nav-links a:hover{color:#fff!important}

/* Ao navegar pelos itens empresariais, o título não fica escondido pelo cabeçalho sticky. */
#planos,#tv,#cobertura,#empresarial,#contato,
#internet-corporativa,#link-dedicado,#eventos,#infraestrutura{
  scroll-margin-top:142px;
}

@media (max-width:1050px){
  .header-inner{height:78px}
  .logo-wrap{width:205px;flex-basis:205px}
  .header-instagram{display:none}
  .menu-row{position:relative}
  .menu-row-inner{min-height:0}
  .nav-links{
    display:none;
    position:absolute;
    left:18px;
    right:18px;
    top:0;
    width:auto;
    margin:0;
    padding:16px 20px;
    flex-direction:column;
    align-items:flex-start!important;
    gap:0!important;
    background:#04172d;
    border:1px solid rgba(255,255,255,.08);
    border-radius:0 0 14px 14px;
    box-shadow:0 18px 35px rgba(0,0,0,.28);
  }
  .nav-links.open{display:flex}
  .nav-links a{width:100%;padding:12px 4px;font-size:12px}
  .menu-button{display:block;margin-left:0}
  .header-actions{gap:12px}
}

@media (max-width:720px){
  .header-inner{height:72px}
  .logo-wrap{width:180px;flex-basis:180px}
  .logo-wrap img{max-height:56px}
  .client-button{padding:10px 11px;font-size:9px}
  .header-actions{gap:8px}
  .nav-links{left:13px;right:13px}
}

/* CMS avançado: ícones, botões no menu e elementos posicionáveis */
.nav-links a{display:inline-flex;align-items:center;gap:7px}
.cms-menu-icon{width:18px;height:18px;object-fit:contain;flex:0 0 auto}
.cms-menu-icon-text{font-size:1.15em;line-height:1}
.nav-links a.cms-menu-button{padding:9px 14px!important;border:0!important;font-weight:800;text-decoration:none!important}
.cms-free-inline{display:inline-flex;align-items:center;vertical-align:middle}
.cms-free-inline .cms-free-button{white-space:nowrap}
.cms-free-button,.cms-custom-button{display:inline-flex;align-items:center;justify-content:center;padding:11px 18px;text-decoration:none;font-weight:800;border-radius:8px;transition:transform .2s ease,filter .2s ease}
.cms-free-button:hover,.cms-custom-button:hover{transform:translateY(-1px);filter:brightness(1.08)}
.cms-section-icon{object-fit:contain;display:block;margin:0 0 14px}
.cms-section-icon-text{line-height:1;margin:0 0 14px}
.service-icon img{display:block;max-width:100%;max-height:100%;object-fit:contain}
@media(max-width:900px){.cms-free-inline{width:auto}.nav-links .cms-free-inline{display:flex}.nav-links a.cms-menu-button{width:100%;justify-content:center}}
