
    :root{
      --brand:#ff6b1a;
      --brand-2:#ff9b59;
      --ink:#0b1735;
      --ink-2:#14264d;
      --text:#4d5b72;
      --muted:#edf2f7;
      --line:#dfe7ef;
      --white:#fff;
      --radius:22px;
      --shadow:0 18px 45px rgba(11,23,53,.12);
      --container:min(var(--layout-content-width,1380px), calc(100% - var(--layout-gutter,64px)));
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#fff;line-height:1.55}
    a{text-decoration:none;color:inherit}
    button,input,select,textarea{font:inherit}
    img{display:block;max-width:100%}
    .container{width:var(--container);margin-inline:auto}
    .eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:var(--brand)}
    .eyebrow:before{content:"";width:26px;height:2px;background:currentColor;border-radius:99px}
    .section{padding:var(--layout-section-spacing,108px) 0}
    .section-soft{background:#f5f8fc}
    .section-dark{background:var(--ink);color:#fff}
    .section-title{font-size:clamp(34px,4vw,56px);line-height:1.05;letter-spacing:-.04em;margin:14px 0 18px;max-width:760px}
    .section-copy{font-size:18px;color:var(--text);max-width:700px;margin:0}
    .section-dark .section-copy{color:#bcc8dc}
    .topbar{background:#08122b;color:#dbe6f7;font-size:13px}
    .topbar .container{height:38px;display:flex;justify-content:space-between;align-items:center;gap:16px}
    .topbar .meta{display:flex;gap:22px;align-items:center}
    .header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.93);backdrop-filter:blur(14px);border-bottom:1px solid rgba(11,23,53,.08)}
    .nav{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}
    .brand{display:flex;align-items:center;gap:12px;font-weight:900;letter-spacing:-.03em;font-size:22px}
    .brand-mark{width:42px;height:42px;border-radius:13px;background:linear-gradient(145deg,var(--brand),#ff421a);display:grid;place-items:center;color:#fff;box-shadow:0 10px 26px rgba(255,107,26,.28)}
    .brand-mark svg{width:24px}
    .menu{display:flex;align-items:center;gap:28px;font-weight:700;font-size:14px;color:#263755}
    .menu a:hover{color:var(--brand)}
    .nav-actions{display:flex;align-items:center;gap:10px}
    .btn{border:0;border-radius:13px;padding:14px 20px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:800;cursor:pointer;transition:.25s ease}
    .btn:hover{transform:translateY(-2px)}
    .btn-brand{background:var(--brand);color:#fff;box-shadow:0 12px 24px rgba(255,107,26,.25)}
    .btn-dark{background:var(--ink);color:#fff}
    .btn-ghost{border:1px solid rgba(255,255,255,.28);color:#fff;background:rgba(255,255,255,.06)}
    .mobile-toggle{display:none;width:44px;height:44px;border-radius:12px;border:1px solid var(--line);background:#fff;font-size:22px}
    .hero{position:relative;overflow:hidden;background-image:linear-gradient(90deg,rgba(7,18,43,.98) 0%,rgba(7,18,43,.92) 45%,rgba(7,18,43,.35) 100%),var(--hero-bg, none);background-position:center;background-size:cover;color:#fff;padding:88px 0 72px}
    .hero:before{content:"";position:absolute;width:680px;height:680px;border:1px solid rgba(255,255,255,.08);border-radius:50%;right:-190px;top:-210px;box-shadow:0 0 0 80px rgba(255,255,255,.025),0 0 0 160px rgba(255,255,255,.018)}
    .hero-grid{position:relative;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:clamp(58px,6vw,98px)}
    .hero h1{font-size:clamp(48px,6.3vw,82px);line-height:.98;letter-spacing:-.055em;margin:18px 0 24px;max-width:750px}
    .hero h1 span{color:var(--brand)}
    .hero p{font-size:19px;color:#c5d3e8;max-width:650px;margin:0 0 34px}
    .hero-actions{display:flex;gap:12px;flex-wrap:wrap}
    .hero-proof{display:flex;gap:26px;margin-top:36px;flex-wrap:wrap}
    .proof-item{display:flex;align-items:center;gap:10px;color:#d7e2f2;font-weight:700;font-size:14px}
    .proof-dot{width:9px;height:9px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 6px rgba(255,107,26,.13)}
    .hero-visual{position:relative;min-height:500px;display:grid;place-items:center;isolation:isolate}
    .hero-backdrop{position:absolute;inset:32px 18px 26px 40px;border-radius:38px;background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.08);box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 24px 80px rgba(0,0,0,.14)}
    .hero-backdrop:before{content:"";position:absolute;inset:18px;border-radius:28px;background:linear-gradient(180deg,rgba(255,255,255,.04),transparent 44%),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px);background-size:auto,38px 38px,38px 38px;background-position:0 0,0 0,0 0;opacity:.42}
    .hero-backdrop:after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;right:18px;top:10px;background:radial-gradient(circle,rgba(255,107,26,.28) 0%,rgba(255,107,26,.08) 45%,transparent 72%);filter:blur(10px)}
    .hero-glow{position:absolute;width:290px;height:290px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.18),rgba(255,255,255,.03) 52%,transparent 72%);left:18px;bottom:26px;filter:blur(6px);opacity:.9}
    .visual-card{position:relative;z-index:2;width:min(430px,100%);min-height:330px;border-radius:32px;padding:32px;background:linear-gradient(155deg,rgba(255,255,255,.22),rgba(255,255,255,.08));border:1px solid rgba(255,255,255,.22);box-shadow:0 30px 80px rgba(0,0,0,.28);backdrop-filter:blur(14px)}
    .router{position:absolute;right:28px;bottom:28px;width:210px;height:120px;border-radius:26px;background:linear-gradient(145deg,#fff,#dce6f2);box-shadow:0 20px 46px rgba(0,0,0,.28)}
    .router:before{content:"";position:absolute;width:7px;height:54px;border-radius:10px;background:#d5dfeb;left:48px;top:-46px;box-shadow:108px 0 0 #d5dfeb}
    .router:after{content:"";position:absolute;width:62px;height:5px;border-radius:4px;background:var(--brand);left:74px;bottom:27px;box-shadow:0 -18px 0 #bac8d8}
    .speed{font-size:74px;font-weight:900;letter-spacing:-.07em;line-height:1;color:#fff}
    .speed small{font-size:16px;letter-spacing:0;color:#a9bdd9;margin-left:5px}
    .visual-label{color:#b9c8dd;font-weight:700;margin-top:10px}
    .floating-badge{position:absolute;top:76px;right:-12px;background:#fff;color:var(--ink);border-radius:17px;padding:14px 17px;box-shadow:var(--shadow);font-weight:900}
    .floating-badge span{display:block;font-size:11px;color:#6c7b92;font-weight:700}
    .mini-badge{position:absolute;left:-16px;bottom:58px;padding:12px 15px;border-radius:16px;background:rgba(7,18,43,.88);border:1px solid rgba(255,255,255,.12);color:#fff;box-shadow:0 20px 40px rgba(0,0,0,.2);font-weight:800;font-size:14px;z-index:3}
    .mini-badge span{display:block;font-size:11px;font-weight:700;color:#b7c5d9;margin-top:3px}

    .hero-photo-card{position:relative;z-index:2;width:min(430px,100%);height:500px;border-radius:32px;overflow:hidden;border:1px solid rgba(255,255,255,.22);box-shadow:0 30px 80px rgba(0,0,0,.34)}
    .hero-photo-card img{width:100%;height:100%;object-fit:cover;object-position:center}
    .hero-speed-badge{position:absolute;right:-18px;bottom:34px;z-index:4;width:210px;padding:22px;border-radius:24px;background:linear-gradient(160deg,rgba(5,38,88,.98),rgba(4,17,42,.98));border:1px solid rgba(52,147,255,.72);box-shadow:0 25px 55px rgba(0,0,0,.36);text-align:center}
    .hero-speed-badge strong{display:block;color:var(--brand);font-size:44px;line-height:1;margin:8px 0 4px}.hero-speed-badge span{color:#c7d6ea;font-size:12px}
    .quick-strip{position:relative;margin-top:-30px;z-index:6}
    .quick-grid{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border-radius:20px;box-shadow:var(--shadow);overflow:hidden}
    .quick-item{padding:30px 28px;display:flex;gap:16px;align-items:center;border-right:1px solid var(--line)}
    .quick-item:last-child{border-right:0}
    .quick-icon{width:48px;height:48px;border-radius:14px;background:#fff1e7;color:var(--brand);display:grid;place-items:center;font-weight:900;font-size:20px}
    .quick-item strong{display:block;font-size:16px}.quick-item span{font-size:13px;color:#6b7890}
    .intro-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(64px,7vw,112px);align-items:center}
    .intro-visual{position:relative;min-height:470px}
    .intro-main{position:absolute;left:0;top:0;width:78%;height:90%;border-radius:34px;background:linear-gradient(145deg,#e8eef6,#c9d7e7);overflow:hidden;box-shadow:var(--shadow)}
    .intro-main:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(11,23,53,.05),transparent 45%),radial-gradient(circle at 35% 45%,#fff 0 4%,transparent 4.5%),radial-gradient(circle at 66% 58%,#fff 0 3%,transparent 3.5%)}
    .house{position:absolute;width:230px;height:160px;background:#fff;border-radius:16px;left:50%;top:53%;transform:translate(-50%,-50%);box-shadow:0 20px 40px rgba(11,23,53,.15)}
    .house:before{content:"";position:absolute;width:180px;height:180px;background:#fff;transform:rotate(45deg);left:25px;top:-76px;border-radius:16px;z-index:-1}
    .house:after{content:"";position:absolute;width:40px;height:62px;background:var(--ink-2);left:95px;bottom:0;border-radius:7px 7px 0 0;box-shadow:-66px -16px 0 -4px #9cb4cf,66px -16px 0 -4px #9cb4cf}
    .intro-float{position:absolute;right:0;bottom:0;width:44%;padding:26px;border-radius:24px;background:var(--ink);color:#fff;box-shadow:var(--shadow)}
    .intro-float b{font-size:42px;display:block;letter-spacing:-.05em}.intro-float span{color:#b7c5d9}
    .check-list{display:grid;gap:16px;margin:28px 0 34px}
    .check{display:flex;gap:12px;align-items:flex-start;color:#33435d;font-weight:700}
    .check i{font-style:normal;width:24px;height:24px;border-radius:50%;background:#fff0e6;color:var(--brand);display:grid;place-items:center;flex:0 0 auto}
    .plans-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:36px}
    .tabs{display:flex;gap:8px;flex-wrap:nowrap;align-items:center;padding:6px;background:#e9eff6;border-radius:14px;white-space:nowrap;overflow-x:auto;overflow-y:hidden;max-width:100%;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
    .tab{border:0;background:transparent;color:#607089;padding:12px 18px;border-radius:10px;font-weight:900;cursor:pointer;flex:0 0 auto;white-space:nowrap}
    .tab.active{background:#fff;color:var(--ink);box-shadow:0 7px 20px rgba(11,23,53,.08)}
    .plans-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--layout-grid-gap,28px)}
    .plan-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:34px;position:relative;transition:.25s ease}
    .plan-card:hover{transform:translateY(-7px);box-shadow:var(--shadow)}
    .plan-card.featured{background:var(--ink);color:#fff;border-color:var(--ink);transform:translateY(-10px)}
    .plan-tag{position:absolute;right:20px;top:20px;background:var(--brand);color:#fff;border-radius:99px;padding:7px 11px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
    .plan-type{font-weight:900;color:var(--brand);font-size:13px;text-transform:uppercase;letter-spacing:.12em}
    .plan-speed{display:flex;align-items:baseline;gap:0;font-size:var(--plan-speed-font-size,68px);line-height:1;font-weight:950;letter-spacing:-.065em;margin:18px 0 6px;white-space:nowrap}.plan-speed .speed-number{display:inline-block;font-size:1em;line-height:1;flex:0 0 auto}.plan-speed small{display:inline-block;flex:0 0 auto;font-size:var(--plan-unit-font-size,15px);letter-spacing:0;color:#7b889c;margin:0 0 0 var(--plan-unit-gap,10px)!important;line-height:1}
    .plan-card.featured .plan-speed small{color:#aebbd0}
    .price{font-size:34px;font-weight:900;margin:18px 0}.price small{font-size:14px;font-weight:700;color:#7b889c}
    .plan-features{list-style:none;padding:0;margin:0 0 26px;display:grid;gap:12px;color:#56657a}
    .plan-card.featured .plan-features{color:#c4cfdf}
    .plan-features li:before{content:"✓";color:var(--brand);font-weight:950;margin-right:10px}
    .plan-card .btn{width:100%}
    .hidden{display:none!important}
    .diff-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--layout-grid-gap,28px);margin-top:48px}
    .diff-card{background:#fff;border-radius:var(--radius);padding:30px;box-shadow:0 10px 30px rgba(11,23,53,.07);border:1px solid rgba(11,23,53,.06)}
    .diff-icon{width:54px;height:54px;border-radius:17px;background:#fff0e6;color:var(--brand);display:grid;place-items:center;font-size:22px;font-weight:900;margin-bottom:22px}
    .diff-card h3{font-size:21px;margin:0 0 10px}.diff-card p{margin:0;color:var(--text)}
    .coverage-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(54px,6vw,90px);align-items:center}
    .map-card{position:relative;min-height:480px;border-radius:34px;background:linear-gradient(145deg,#132a54,#08142f);overflow:hidden;box-shadow:var(--shadow)}
    .map-card:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:44px 44px}
    .map-line{position:absolute;width:66%;height:44%;left:17%;top:27%;border:2px dashed rgba(255,255,255,.22);border-radius:48% 52% 46% 54% / 60% 45% 55% 40%;transform:rotate(-12deg)}
    .city{position:absolute;background:#fff;color:var(--ink);padding:10px 14px;border-radius:12px;font-weight:900;font-size:13px;box-shadow:var(--shadow)}
    .city:before{content:"";position:absolute;width:12px;height:12px;background:var(--brand);border-radius:50%;left:-25px;top:50%;transform:translateY(-50%);box-shadow:0 0 0 7px rgba(255,107,26,.18)}
    .city-1{left:18%;top:25%}.city-2{right:12%;top:29%}.city-3{left:27%;bottom:24%}.city-4{right:18%;bottom:18%}
    .coverage-list{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:28px}
    .coverage-item{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid var(--line);border-radius:14px;background:#fff;font-weight:800}
    .coverage-item i{font-style:normal;color:var(--brand)}
    .stores-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--layout-grid-gap,28px);margin-top:48px}
    .store-card{border:1px solid var(--line);border-radius:20px;padding:24px;background:#fff}
    .store-thumb{height:150px;border-radius:14px;background:linear-gradient(145deg,#dfe7f0,#bfcde0);margin-bottom:20px;position:relative;overflow:hidden}
    .store-thumb:before{content:"";position:absolute;width:72%;height:60%;background:#fff;border-radius:10px 10px 0 0;left:14%;bottom:0;box-shadow:inset 0 10px 0 var(--brand)}
    .store-card h3{margin:0 0 8px}.store-card p{color:var(--text);font-size:14px;min-height:66px}.store-link{color:var(--brand);font-weight:900;font-size:14px}
    .contact-wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:46px;background:#fff;border-radius:30px;padding:34px;box-shadow:0 24px 60px rgba(0,0,0,.19)}
    .contact-info{padding:22px 18px}.contact-info .section-title{font-size:42px}.contact-points{display:grid;gap:14px;margin-top:28px}.contact-point{display:flex;gap:12px;align-items:center;color:#c1cce0}.contact-point b{color:#fff}
    .form-card{background:#f5f8fc;border-radius:22px;padding:28px;color:var(--ink)}
    .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
    .field{display:grid;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:12px;font-weight:900;color:#6a7890;text-transform:uppercase;letter-spacing:.08em}
    .field input,.field select,.field textarea{width:100%;border:1px solid #d9e2ec;border-radius:12px;background:#fff;padding:14px;outline:none}.field textarea{min-height:110px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--brand);box-shadow:0 0 0 4px rgba(255,107,26,.1)}
    .cta{padding:0 0 96px;background:#f5f8fc}
    .cta-inner{border-radius:30px;background:linear-gradient(130deg,var(--brand),#ff421a);padding:48px;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:30px;position:relative;overflow:hidden}
    .cta-inner:after{content:"";position:absolute;width:260px;height:260px;border:1px solid rgba(255,255,255,.25);border-radius:50%;right:-40px;top:-100px;box-shadow:0 0 0 52px rgba(255,255,255,.08)}
    .cta-inner h2{font-size:clamp(34px,4vw,54px);line-height:1.05;letter-spacing:-.04em;margin:0;max-width:650px}.cta-actions{position:relative;z-index:2;display:flex;gap:10px;flex-wrap:wrap}
    .footer{background:#07122b;color:#c4cee0;padding:64px 0 24px}.footer-grid{display:grid;grid-template-columns:1.35fr repeat(3,1fr);gap:46px}.footer h4{color:#fff;margin:0 0 18px}.footer-links{display:grid;gap:10px;font-size:14px}.footer-copy{max-width:340px}.footer-bottom{margin-top:46px;padding-top:22px;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;gap:18px;font-size:13px}
    .reveal{opacity:0;transform:translateY(24px);transition:.65s ease}.reveal.visible{opacity:1;transform:none}
    @media (max-width: 1050px){
      .menu{display:none}.mobile-toggle{display:block}.hero-grid,.intro-grid,.coverage-grid,.contact-wrap{grid-template-columns:1fr}.hero-visual{min-height:420px}.hero-backdrop{inset:20px 10px 22px 18px}.quick-grid{grid-template-columns:1fr 1fr}.quick-item:nth-child(2){border-right:0}.quick-item:nth-child(-n+2){border-bottom:1px solid var(--line)}.plans-grid{grid-template-columns:1fr 1fr}.plan-card.featured{transform:none}.diff-grid{grid-template-columns:1fr 1fr}.stores-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1.4fr 1fr 1fr}.footer-grid>div:last-child{grid-column:2/4}.plans-head{align-items:flex-start;flex-direction:column}.nav-actions .btn{display:none}
    }
    @media (max-width: 680px){
      :root{--container:min(100% - 26px,var(--layout-content-width,1380px))}
      .topbar .container{justify-content:center}.topbar .meta:last-child{display:none}.section{padding:72px 0}.hero{padding:62px 0 58px}.hero-grid{gap:30px}.hero h1{font-size:49px}.hero p{font-size:17px}.hero-visual{min-height:330px}.hero-backdrop{inset:18px 6px 16px 10px;border-radius:26px}.hero-backdrop:before{inset:12px;border-radius:18px;background-size:auto,26px 26px,26px 26px;opacity:.32}.hero-backdrop:after{width:150px;height:150px;right:6px;top:24px}.hero-glow{width:180px;height:180px;left:6px;bottom:14px}.visual-card{min-height:270px;padding:24px}.speed{font-size:58px}.router{width:160px;height:94px}.floating-badge{right:0;top:52px}.mini-badge{left:0;bottom:18px;padding:10px 12px}.quick-strip{margin-top:0}.quick-grid,.plans-grid,.diff-grid,.stores-grid,.footer-grid,.form-grid{grid-template-columns:1fr}.quick-item{border-right:0!important;border-bottom:1px solid var(--line)!important}.quick-item:last-child{border-bottom:0!important}.intro-grid{gap:42px}.intro-visual{min-height:380px}.intro-float{width:58%}.coverage-list{grid-template-columns:1fr}.map-card{min-height:390px}.city{font-size:11px;padding:8px 10px}.contact-wrap{padding:18px}.field.full{grid-column:auto}.cta-inner{padding:38px 26px;align-items:flex-start;flex-direction:column}.footer-grid>div:last-child{grid-column:auto}.footer-bottom{flex-direction:column}.section-title{font-size:40px}.plan-speed{font-size:min(var(--plan-speed-font-size,68px),64px)}
    }
  
.hero-photo-card.placeholder{background:linear-gradient(145deg,#dfe7f0,#91a9c4);display:grid;place-items:center}
.hero-photo-card.placeholder:before{content:"ENVIE A FOTO PELO PAINEL";font-weight:900;letter-spacing:.08em;color:rgba(11,23,53,.62);font-size:13px}
.intro-main.has-image{background-position:center;background-size:cover}
.intro-main.has-image:before{background:linear-gradient(135deg,rgba(11,23,53,.18),transparent 55%)}
.intro-main.has-image .house{display:none}
.store-thumb.has-image{background-position:center;background-size:cover}
.store-thumb.has-image:before{display:none}
.mobile-menu{display:none}
.mobile-menu.open{display:grid;position:absolute;left:0;right:0;top:100%;background:#fff;border-top:1px solid var(--line);padding:18px 20px;gap:12px;box-shadow:0 18px 30px rgba(11,23,53,.12)}
.mobile-menu a{font-weight:800;color:#263755;padding:10px 0}
.form-message{padding:14px 16px;border-radius:12px;margin-bottom:16px;font-weight:700}
.form-message.success{background:#eaf8ee;color:#1e6b35}
.form-message.error{background:#fff0ee;color:#9c2e27}
.hp-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.skip-link{position:absolute;left:-9999px;top:auto}
.skip-link:focus{left:16px;top:16px;z-index:999;background:#fff;color:#000;padding:12px 16px;border-radius:8px}
.brand-logo{max-height:48px;width:auto}
@media(max-width:1050px){.mobile-menu.open{display:grid}.header{position:sticky}}


/* Tipografia editável */
body{color:var(--type-body-color,var(--text));letter-spacing:var(--type-body-letter,0);word-spacing:var(--type-body-word,0)}
.section-title,.diff-card h3,.store-card h3{color:var(--type-title-color,var(--ink));letter-spacing:var(--type-title-letter,-1.5px);word-spacing:var(--type-title-word,0)}
.section-copy,.diff-card p,.store-card p{color:var(--type-body-color,var(--text));letter-spacing:var(--type-body-letter,0);word-spacing:var(--type-body-word,0)}
.eyebrow,.plan-type,.plan-tag,.quick-item strong,.proof-item,.contact-point b{letter-spacing:var(--type-other-letter,1.9px);word-spacing:var(--type-other-word,0)}
.eyebrow{color:var(--type-other-color,var(--brand))}
.menu,.mobile-menu{color:var(--type-menu-color,#263755);letter-spacing:var(--type-menu-letter,0);word-spacing:var(--type-menu-word,0)}
.btn,.store-link{letter-spacing:var(--type-button-letter,0);word-spacing:var(--type-button-word,0)}
.btn{color:var(--type-button-color,#fff)}
.price,.plan-speed{letter-spacing:var(--type-price-letter,-1px);word-spacing:var(--type-price-word,0)}
.section-dark .section-title,.contact-info .section-title{color:var(--type-dark-title-color,#fff);letter-spacing:var(--type-dark-title-letter,-1.5px);word-spacing:var(--type-dark-title-word,0)}
.section-dark .section-copy,.contact-info .section-copy{color:var(--type-dark-body-color,#bcc8dc);letter-spacing:var(--type-dark-body-letter,0);word-spacing:var(--type-dark-body-word,0)}

/* Quantidade dinâmica e personalização individual dos planos */
.plans-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));align-items:stretch;gap:var(--layout-grid-gap,28px)}
.plan-card{background:var(--plan-card-bg,#fff);border-color:color-mix(in srgb,var(--plan-accent-color,var(--brand)) 22%,var(--line));display:flex;flex-direction:column}
.plan-card.featured{background:var(--plan-card-bg,var(--ink));border-color:var(--plan-accent-color,var(--brand))}
.plan-card .plan-tag{background:var(--plan-accent-color,var(--brand))}
.plan-card .plan-type{color:var(--plan-title-color,var(--plan-accent-color,var(--brand)))}
.plan-card .plan-speed{color:var(--plan-speed-color,var(--ink))}
.plan-card p{color:var(--plan-description-color,var(--text))}
.plan-card .price{color:var(--plan-price-color,var(--type-price-color,var(--ink)))}
.plan-card .plan-features{color:var(--plan-features-color,#56657a)}
.plan-card .plan-features li:before{color:var(--plan-accent-color,var(--brand))}
.plan-card .btn{background:var(--plan-button-bg,var(--ink));color:var(--plan-button-text-color,#fff);margin-top:auto}

/* PlayerMax integrado à área de planos */
.tab-gamer{color:#b4000b!important}.tab-gamer.active{background:#0a0a0d!important;color:#fff!important;box-shadow:0 8px 24px rgba(0,0,0,.2)!important}
.playermax-panel{padding:28px;border-radius:26px;background:var(--pm-bg,#070707);position:relative;overflow:hidden}
.playermax-panel:before{content:"";position:absolute;width:360px;height:360px;right:-150px;top:-180px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--pm-accent,#e30613) 30%,transparent),transparent 70%);pointer-events:none}
.playermax-tab-head{position:relative;z-index:1;max-width:780px;margin-bottom:28px}.playermax-tab-head>span{display:inline-flex;color:var(--pm-accent-2,#ff3b30);font-size:12px;font-weight:900;letter-spacing:.18em;text-transform:uppercase}.playermax-tab-head h3{margin:8px 0 10px;color:var(--pm-title,#fff);font-size:clamp(28px,4vw,44px);line-height:1.05}.playermax-tab-head h3 strong{color:var(--pm-accent-2,#ff3b30);font-weight:900}.playermax-tab-head p{margin:0;color:var(--pm-body,#b9b9c2);font-size:16px}
.playermax-panel .plans-grid{position:relative;z-index:1}
.playermax-plan-card{background:var(--plan-card-bg,var(--pm-panel,#101014));border-color:color-mix(in srgb,var(--plan-accent-color,var(--pm-accent,#e30613)) 55%,transparent);box-shadow:0 20px 44px rgba(0,0,0,.28)}
.playermax-plan-card:hover{box-shadow:0 25px 52px rgba(0,0,0,.38),0 0 0 1px color-mix(in srgb,var(--plan-accent-color,var(--pm-accent,#e30613)) 48%,transparent)}
.playermax-plan-card .plan-type{color:var(--plan-title-color,#fff)}.playermax-plan-card .plan-speed{color:var(--plan-speed-color,#fff)}.playermax-plan-card p{color:var(--plan-description-color,var(--pm-body,#b9b9c2))}.playermax-plan-card .price{color:var(--plan-price-color,#fff)}.playermax-plan-card .plan-features{color:var(--plan-features-color,#d7d7dc)}
@media(max-width:680px){.playermax-panel{padding:20px;border-radius:20px}.playermax-tab-head h3{font-size:31px}.plan-speed{font-size:min(var(--plan-speed-font-size,68px),62px)}}

.hero h1{letter-spacing:var(--type-dark-title-letter,-1.5px);word-spacing:var(--type-dark-title-word,0)}.hero p{letter-spacing:var(--type-dark-body-letter,0);word-spacing:var(--type-dark-body-word,0)}.plan-card.featured .plan-features{color:var(--plan-features-color,#c4cfdf)}

/* Layout amplo e correção definitiva do espaço entre velocidade e unidade */
@media(min-width:1051px){
  .section-title{max-width:900px}
  .section-copy{max-width:820px}
  .plans-head{margin-bottom:44px}
  .contact-wrap{padding:44px;gap:clamp(48px,5vw,82px)}
  .footer-grid{gap:clamp(48px,5vw,78px)}
}
.plan-speed>small{margin-left:var(--plan-unit-gap,10px)!important}


/* Categorias de planos em uma única linha */
.tabs::-webkit-scrollbar{height:6px}
.tabs::-webkit-scrollbar-thumb{background:rgba(11,23,53,.18);border-radius:999px}
@media(min-width:1051px){.plans-head>div:first-child{min-width:0;flex:1 1 auto}.plans-head>.tabs{flex:0 0 auto;max-width:min(100%,720px)}}
@media(max-width:1050px){.plans-head>.tabs{width:100%}}

/* === Banner principal v10: fundo mais tecnológico + showcase elegante === */
.hero{position:relative;overflow:hidden}
.hero:before{content:"";position:absolute;inset:0;background:
  radial-gradient(circle at 12% 18%, color-mix(in srgb,var(--brand) 18%, transparent), transparent 34%),
  radial-gradient(circle at 88% 16%, rgba(58,125,255,.18), transparent 28%),
  radial-gradient(circle at 72% 78%, rgba(255,255,255,.08), transparent 24%);
  opacity:.95;pointer-events:none}
.hero:after{content:"";position:absolute;inset:0;background-image:
  linear-gradient(90deg, rgba(255,255,255,.04) 1px, transparent 1px),
  linear-gradient(rgba(255,255,255,.04) 1px, transparent 1px);
  background-size:54px 54px;mask-image:linear-gradient(160deg,transparent 0,rgba(0,0,0,.9) 18%,rgba(0,0,0,.9) 82%,transparent 100%);opacity:.22;pointer-events:none}
.hero-grid{position:relative;z-index:1}
.hero-visual{min-height:560px;align-items:center}
.hero-backdrop{inset:12px 6px 8px 40px;background:linear-gradient(145deg,rgba(255,255,255,.10),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.14);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 26px 90px rgba(4,20,53,.26)}
.hero-backdrop:before{inset:20px;border-radius:30px;background:
  linear-gradient(180deg,rgba(255,255,255,.05),transparent 40%),
  linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px),
  linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px);
  background-size:auto,44px 44px,44px 44px;opacity:.58}
.hero-backdrop:after{width:280px;height:280px;right:26px;top:24px;background:radial-gradient(circle,rgba(255,107,26,.34) 0%,rgba(255,107,26,.10) 45%,transparent 74%);filter:blur(18px)}
.hero-gridfx{position:absolute;inset:36px 32px 30px 56px;border-radius:32px;overflow:hidden;pointer-events:none}
.hero-gridfx:before,.hero-gridfx:after{content:"";position:absolute;inset:0}
.hero-gridfx:before{background:
  linear-gradient(120deg,transparent 0,rgba(255,255,255,.18) 18%,transparent 36%),
  linear-gradient(160deg,transparent 0,rgba(255,255,255,.08) 42%,transparent 60%);
  transform:translateX(-35%);animation:heroSweep 9s ease-in-out infinite}
.hero-gridfx:after{background:
  radial-gradient(circle at 20% 30%, rgba(86,164,255,.18), transparent 20%),
  radial-gradient(circle at 82% 74%, rgba(255,107,26,.16), transparent 18%);
  filter:blur(8px);opacity:.95}
.hero-glow{position:absolute;pointer-events:none}
.hero-glow-a{width:280px;height:280px;left:-26px;bottom:16px;background:radial-gradient(circle, rgba(95,176,255,.22), rgba(95,176,255,.03) 56%, transparent 76%);filter:blur(6px)}
.hero-glow-b{width:190px;height:190px;right:44px;bottom:122px;background:radial-gradient(circle, rgba(255,107,26,.18), rgba(255,107,26,.03) 58%, transparent 72%);filter:blur(8px)}
.hero-orbit{position:absolute;border:1px solid rgba(145,195,255,.18);border-radius:999px;pointer-events:none;opacity:.8}
.hero-orbit-a{width:440px;height:440px;top:34px;left:42px;animation:heroSpin 28s linear infinite}
.hero-orbit-b{width:300px;height:300px;right:44px;bottom:42px;border-color:rgba(255,124,43,.18);animation:heroSpinReverse 22s linear infinite}
.hero-light-streak{position:absolute;border-radius:999px;filter:blur(1px);opacity:.68;pointer-events:none}
.streak-a{width:240px;height:2px;left:54px;top:92px;background:linear-gradient(90deg,transparent,rgba(117,194,255,.85),transparent);animation:floatLine 7s ease-in-out infinite}
.streak-b{width:150px;height:2px;right:72px;bottom:96px;background:linear-gradient(90deg,transparent,rgba(255,107,26,.75),transparent);animation:floatLine 9s ease-in-out infinite reverse}
.hero-photo-showcase{position:relative;z-index:2;width:min(480px,100%);height:540px;display:grid;place-items:center}
.hero-photo-stack{position:relative;width:100%;height:100%}
.hero-photo-card{position:absolute;inset:0;z-index:1;width:100%;height:100%;border-radius:34px;overflow:hidden;border:1px solid rgba(255,255,255,.22);box-shadow:0 32px 88px rgba(4,17,42,.34);opacity:0;visibility:hidden;transform:translateY(20px) scale(.96) rotate(-2deg);transition:opacity .9s ease, transform .9s ease, visibility .9s ease;background:rgba(255,255,255,.05);backdrop-filter:blur(8px)}
.hero-photo-card.is-active{opacity:1;visibility:visible;transform:translateY(0) scale(1) rotate(0deg)}
.hero-photo-card img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.05);transition:transform 8s ease}
.hero-photo-card.is-active img{transform:scale(1.0)}
.hero-photo-card:before{content:"";position:absolute;inset:0;background:linear-gradient(155deg,rgba(10,24,56,.10),transparent 30%,transparent 68%,rgba(8,18,38,.28) 100%);z-index:1}
.hero-photo-card:after{content:"";position:absolute;inset:auto 16px 16px auto;width:120px;height:120px;border-radius:24px;border:1px solid rgba(255,255,255,.16);background:linear-gradient(145deg,rgba(255,255,255,.10),rgba(255,255,255,.02));backdrop-filter:blur(10px);opacity:.6;z-index:1}
.hero-photo-sheen{position:absolute;inset:-15%;background:linear-gradient(115deg,transparent 15%,rgba(255,255,255,.13) 46%,transparent 56%);transform:translateX(-120%) rotate(10deg);animation:heroSheen 9s ease-in-out infinite;z-index:2}
.hero-photo-indicators{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);display:flex;gap:9px;z-index:4;padding:9px 12px;border-radius:999px;background:rgba(11,23,53,.52);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.14)}
.hero-photo-dot{width:10px;height:10px;border-radius:50%;border:0;background:rgba(255,255,255,.32);padding:0;cursor:pointer;transition:transform .25s ease, background .25s ease, box-shadow .25s ease}
.hero-photo-dot.is-active{background:#fff;transform:scale(1.18);box-shadow:0 0 0 4px rgba(255,255,255,.12)}
.hero-floating-chip{position:absolute;z-index:4;display:grid;gap:4px;padding:14px 16px;border-radius:18px;background:linear-gradient(145deg,rgba(11,23,53,.88),rgba(11,23,53,.68));border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(10px);box-shadow:0 22px 44px rgba(4,17,42,.2)}
.hero-floating-chip strong{font-size:14px;line-height:1.1;color:#fff}
.hero-floating-chip span{font-size:12px;line-height:1.35;color:#cdd9eb}
.hero-floating-chip.chip-a{left:-34px;top:44px;animation:heroChipFloat 7s ease-in-out infinite}
.hero-floating-chip.chip-b{right:-34px;bottom:108px;animation:heroChipFloat 8.5s ease-in-out infinite reverse}
.hero-speed-badge{right:-10px;bottom:42px;width:228px;padding:24px 22px;border-radius:26px;background:linear-gradient(160deg,rgba(5,38,88,.98),rgba(4,17,42,.98));border:1px solid rgba(52,147,255,.78);box-shadow:0 28px 60px rgba(0,0,0,.36);z-index:5}
.hero-speed-badge:before{content:"";position:absolute;inset:1px;border-radius:25px;border:1px solid rgba(255,255,255,.08);pointer-events:none}
.hero-speed-badge strong{font-size:46px}
.hero-speed-badge span{display:block;opacity:.92}

@keyframes heroSweep{0%,100%{transform:translateX(-38%) translateY(0)}50%{transform:translateX(18%) translateY(6px)}}
@keyframes heroSheen{0%,100%{transform:translateX(-120%) rotate(10deg)}48%{transform:translateX(110%) rotate(10deg)}100%{transform:translateX(110%) rotate(10deg)}}
@keyframes heroSpin{to{transform:rotate(360deg)}}
@keyframes heroSpinReverse{to{transform:rotate(-360deg)}}
@keyframes heroChipFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes floatLine{0%,100%{transform:translateX(0);opacity:.4}50%{transform:translateX(18px);opacity:.86}}

@media(max-width:1200px){
  .hero-photo-showcase{width:min(430px,100%);height:500px}
  .hero-orbit-a{width:360px;height:360px;left:22px}
  .hero-floating-chip.chip-a{left:-8px}
  .hero-floating-chip.chip-b{right:-6px}
}
@media(max-width:1050px){
  .hero-visual{min-height:500px}
  .hero-backdrop{inset:14px 10px 16px 14px}
  .hero-gridfx{inset:28px 18px 24px 24px}
  .hero-orbit-a{width:320px;height:320px;top:38px;left:14px}
  .hero-orbit-b{width:220px;height:220px;right:14px;bottom:68px}
  .hero-photo-showcase{margin-inline:auto;height:480px}
  .hero-floating-chip.chip-a{left:10px;top:18px}
  .hero-floating-chip.chip-b{right:10px;bottom:86px}
  .hero-speed-badge{right:10px;bottom:18px}
}
@media(max-width:680px){
  .hero:after{background-size:30px 30px;opacity:.18}
  .hero-visual{min-height:410px}
  .hero-backdrop{inset:10px 0 12px 0;border-radius:24px}
  .hero-backdrop:before{inset:12px;border-radius:18px;background-size:auto,28px 28px,28px 28px;opacity:.42}
  .hero-backdrop:after{width:180px;height:180px;right:-10px;top:10px}
  .hero-gridfx{inset:18px 8px 18px 8px;border-radius:22px}
  .hero-glow-a{width:180px;height:180px;left:-18px;bottom:20px}
  .hero-glow-b,.hero-orbit,.hero-light-streak{display:none}
  .hero-photo-showcase{width:min(100%,360px);height:390px}
  .hero-photo-card{border-radius:26px}
  .hero-photo-card:after{width:92px;height:92px;bottom:12px;right:12px}
  .hero-photo-indicators{bottom:12px}
  .hero-floating-chip{padding:10px 12px;border-radius:14px}
  .hero-floating-chip strong{font-size:12px}
  .hero-floating-chip span{font-size:11px}
  .hero-floating-chip.chip-a{left:4px;top:12px}
  .hero-floating-chip.chip-b{right:4px;bottom:60px}
  .hero-speed-badge{position:relative;right:auto;bottom:auto;margin:14px auto 0;width:min(100%,260px)}
}
@media (prefers-reduced-motion: reduce){
  .hero-gridfx:before,.hero-orbit,.hero-light-streak,.hero-photo-sheen,.hero-floating-chip,.hero-photo-card img{animation:none!important;transition:none!important}
}

/* === Banner gerenciável v11 === */
.hero .eyebrow{color:var(--hero-eyebrow-color,var(--brand));font-size:var(--hero-eyebrow-size,12px)}
.hero h1{color:var(--hero-title-color,#fff);font-size:clamp(38px,var(--hero-title-size,64px),var(--hero-title-size,64px))}
.hero h1 span{color:var(--hero-title-accent,var(--brand))}
.hero p{color:var(--hero-description-color,#c7d6ea);font-size:var(--hero-description-size,18px)}
.hero-proof{color:var(--hero-proof-color,#d6e1ef);font-size:var(--hero-proof-size,13px)}
.hero .hero-actions .btn-brand{background:var(--hero-primary-bg,var(--brand));color:var(--hero-primary-text,#fff)}
.hero .hero-actions .btn-ghost{color:var(--hero-secondary-text,#fff);border-color:var(--hero-secondary-border,#fff)}
.hero:before{opacity:var(--hero-effect-opacity,1);background:
 radial-gradient(circle at 12% 18%,color-mix(in srgb,var(--hero-effect-orange,#ff6b1a) 18%,transparent),transparent 34%),
 radial-gradient(circle at 88% 16%,color-mix(in srgb,var(--hero-effect-blue,#3a7dff) 18%,transparent),transparent 28%),
 radial-gradient(circle at 72% 78%,rgba(255,255,255,.08),transparent 24%)}
.hero:after{opacity:calc(.22 * var(--hero-effect-opacity,1))}
.hero-backdrop:after{background:radial-gradient(circle,color-mix(in srgb,var(--hero-effect-orange,#ff6b1a) 34%,transparent) 0%,color-mix(in srgb,var(--hero-effect-orange,#ff6b1a) 10%,transparent) 45%,transparent 74%)}
.hero-glow-a{background:radial-gradient(circle,color-mix(in srgb,var(--hero-effect-blue,#3a7dff) 22%,transparent),color-mix(in srgb,var(--hero-effect-blue,#3a7dff) 3%,transparent) 56%,transparent 76%)}
.hero-glow-b{background:radial-gradient(circle,color-mix(in srgb,var(--hero-effect-orange,#ff6b1a) 18%,transparent),color-mix(in srgb,var(--hero-effect-orange,#ff6b1a) 3%,transparent) 58%,transparent 72%)}
.hero-photo-showcase{height:var(--hero-photo-height,540px);transition:transform .25s ease}
.hero-photo-card{border-radius:var(--hero-photo-radius,34px)}
.hero-photo-card:before{border-radius:inherit}
.hero-floating-chip{background:linear-gradient(145deg,color-mix(in srgb,var(--hero-chip-bg,#0b1735) 94%,transparent),color-mix(in srgb,var(--hero-chip-bg,#0b1735) 76%,transparent));max-width:235px}
.hero-floating-chip strong{color:var(--hero-chip-title,#fff);font-size:var(--hero-chip-title-size,14px)}
.hero-floating-chip span{color:var(--hero-chip-text,#cdd9eb);font-size:var(--hero-chip-text-size,12px)}
.hero-floating-chip.chip-a,.hero-floating-chip.chip-b{left:auto;right:auto;top:auto;bottom:auto}
.hero-floating-chip.pos-top-left{left:-34px;top:44px}
.hero-floating-chip.pos-top-right{right:-34px;top:44px}
.hero-floating-chip.pos-bottom-left{left:-34px;bottom:84px}
.hero-floating-chip.pos-bottom-right{right:-34px;bottom:84px}
.hero-speed-badge{left:auto;right:auto;top:auto;bottom:auto;background:linear-gradient(160deg,color-mix(in srgb,var(--hero-badge-bg,#052658) 98%,#000),color-mix(in srgb,var(--hero-badge-bg,#052658) 82%,#000));border-color:var(--hero-badge-border,#3493ff);transition:transform .25s ease}
.hero-speed-badge.pos-bottom-right{right:-10px;bottom:42px}
.hero-speed-badge.pos-bottom-left{left:-10px;bottom:42px}
.hero-speed-badge.pos-top-right{right:-10px;top:42px}
.hero-speed-badge.pos-top-left{left:-10px;top:42px}
.hero-badge-title{display:block;color:var(--hero-badge-title,#fff);font-size:var(--hero-badge-title-size,15px);line-height:1.35}
.hero-speed-badge strong{display:flex;justify-content:center;align-items:baseline;gap:8px;margin:8px 0 4px;line-height:1}
.hero-badge-speed{color:var(--hero-badge-speed,var(--brand));font-size:var(--hero-badge-speed-size,46px);font-weight:950}
.hero-badge-unit{color:var(--hero-badge-unit,var(--brand));font-size:var(--hero-badge-unit-size,22px);font-weight:950}
.hero-badge-subtitle{display:block;color:var(--hero-badge-subtitle,#c7d6ea);font-size:var(--hero-badge-subtitle-size,12px)}
/* Evita automaticamente cards sobrepostos quando posições iguais forem escolhidas */
.hero-visual[data-badge-position="bottom-right"] .hero-floating-chip.pos-bottom-right,
.hero-visual[data-badge-position="bottom-left"] .hero-floating-chip.pos-bottom-left{bottom:202px}
.hero-visual[data-badge-position="top-right"] .hero-floating-chip.pos-top-right,
.hero-visual[data-badge-position="top-left"] .hero-floating-chip.pos-top-left{top:190px}

@media(max-width:1050px){
 .hero-photo-showcase{height:min(var(--hero-photo-height,540px),500px)}
 .hero-floating-chip.pos-top-left{left:10px;top:18px}.hero-floating-chip.pos-top-right{right:10px;top:18px}
 .hero-floating-chip.pos-bottom-left{left:10px;bottom:86px}.hero-floating-chip.pos-bottom-right{right:10px;bottom:86px}
 .hero-speed-badge.pos-bottom-right{right:10px;bottom:18px}.hero-speed-badge.pos-bottom-left{left:10px;bottom:18px}
 .hero-speed-badge.pos-top-right{right:10px;top:18px}.hero-speed-badge.pos-top-left{left:10px;top:18px}
 .hero-visual[data-badge-position="bottom-right"] .hero-floating-chip.pos-bottom-right,
 .hero-visual[data-badge-position="bottom-left"] .hero-floating-chip.pos-bottom-left{bottom:190px}
 .hero-visual[data-badge-position="top-right"] .hero-floating-chip.pos-top-right,
 .hero-visual[data-badge-position="top-left"] .hero-floating-chip.pos-top-left{top:168px}
}
@media(max-width:680px){
 .hero h1{font-size:min(var(--hero-title-size,64px),49px)}
 .hero-photo-showcase{height:min(var(--hero-photo-height,540px),390px)}
 .hero-floating-chip.pos-top-left{left:4px;top:12px}.hero-floating-chip.pos-top-right{right:4px;top:12px}
 .hero-floating-chip.pos-bottom-left{left:4px;bottom:60px}.hero-floating-chip.pos-bottom-right{right:4px;bottom:60px}
 .hero-visual[data-badge-position] .hero-floating-chip.pos-bottom-right,
 .hero-visual[data-badge-position] .hero-floating-chip.pos-bottom-left{bottom:60px}
 .hero-visual[data-badge-position] .hero-floating-chip.pos-top-right,
 .hero-visual[data-badge-position] .hero-floating-chip.pos-top-left{top:12px}
 .hero-speed-badge.pos-bottom-right,.hero-speed-badge.pos-bottom-left,.hero-speed-badge.pos-top-right,.hero-speed-badge.pos-top-left{position:relative;left:auto;right:auto;top:auto;bottom:auto;margin:14px auto 0;width:min(100%,280px)}
}
.hero .eyebrow{font-family:var(--hero-eyebrow-font,inherit)}
.hero h1{font-family:var(--hero-title-font,inherit)}
.hero p{font-family:var(--hero-description-font,inherit)}
.hero-proof{font-family:var(--hero-proof-font,inherit)}
.hero-floating-chip{font-family:var(--hero-chip-font,inherit)}
.hero-speed-badge{font-family:var(--hero-badge-font,inherit)}

/* V15 — mantém até cinco planos na mesma linha com container máximo de 1140px */
@media (min-width:1051px){
  .plans-grid.plan-cols-1{grid-template-columns:minmax(0,1fr)}
  .plans-grid.plan-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .plans-grid.plan-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .plans-grid.plan-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
  .plans-grid.plan-cols-5{grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
  .plans-grid.plan-cols-4 .plan-card{padding:26px}
  .plans-grid.plan-cols-5 .plan-card{padding:22px}
  .plans-grid.plan-cols-5 .plan-speed{font-size:min(var(--plan-speed-font-size,68px),52px)}
  .plans-grid.plan-cols-5 .price{font-size:28px}
  .plans-grid.plan-cols-5 .plan-tag{right:14px;top:14px;padding:6px 9px;font-size:9px}
  .plans-grid.plan-cols-5 .plan-features{font-size:13px}
  .plans-grid.plan-cols-5 .btn{font-size:12px;padding-inline:10px}
}
@media (min-width:681px) and (max-width:1050px){
  .plans-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media (max-width:680px){
  .plans-grid{grid-template-columns:minmax(0,1fr)!important}
}

/* === Tipografia V16: escala inspirada em Fibonacci === */
:root{
  --font-fib-xs:8px;
  --font-fib-sm:13px;
  --font-fib-base:16px;
  --font-fib-lead:21px;
  --font-fib-subtitle:34px;
  --font-fib-title:55px;
  --font-fib-display:89px;
}

/* Base legível; elementos auxiliares usam 13 px e títulos sobem pela escala 21/34/55. */
body{font-size:var(--font-body,var(--font-fib-base))}
.topbar,.menu,.mobile-menu,.proof-item,.plan-type,.city,.footer-links,.footer-bottom,.store-link,.field label{font-size:var(--font-small,var(--font-fib-sm))}
.eyebrow,.playermax-tab-head>span{font-size:var(--font-small,var(--font-fib-sm))}
.brand{font-size:var(--font-brand,var(--font-fib-lead))}
.section-title,.contact-info .section-title,.cta-inner h2{font-size:var(--font-section-title,var(--font-fib-subtitle))}
.section-copy,.hero p{font-size:var(--font-lead,var(--font-fib-lead))}
.diff-card h3,.store-card h3,.footer h4{font-size:var(--font-card-title,var(--font-fib-lead))}
.playermax-tab-head h3{font-size:var(--font-playermax-title,var(--font-fib-subtitle))}
.playermax-tab-head p{font-size:var(--font-body,var(--font-fib-base))}
.quick-item strong{font-size:var(--font-body,var(--font-fib-base))}
.quick-item span,.store-card p,.plan-card p,.plan-features,.price small{font-size:var(--font-small,var(--font-fib-sm))}
.intro-float b,.price{font-size:var(--font-section-title,var(--font-fib-subtitle))}
.btn{font-size:var(--font-button,var(--font-fib-sm))}
.plan-tag{font-size:var(--font-small,var(--font-fib-sm))}
.diff-icon,.quick-icon,.mobile-toggle{font-size:var(--font-icon,var(--font-fib-lead))}
.hero-photo-card.placeholder:before{font-size:var(--font-small,var(--font-fib-sm))}

/* A hierarquia mais forte do banner continua editável no painel, mas é aproximada à sequência Fibonacci pelo PHP. */
.hero h1{font-size:var(--hero-title-size,var(--font-fib-title))}
.hero .eyebrow{font-size:var(--hero-eyebrow-size,var(--font-fib-sm))}
.hero p{font-size:var(--hero-description-size,var(--font-fib-lead))}
.hero-proof,.proof-item{font-size:var(--hero-proof-size,var(--font-fib-sm))}
.hero-floating-chip strong{font-size:var(--hero-chip-title-size,var(--font-fib-sm))}
.hero-floating-chip span{font-size:var(--hero-chip-text-size,var(--font-fib-sm))}
.hero-badge-title{font-size:var(--hero-badge-title-size,var(--font-fib-sm))}
.hero-badge-speed{font-size:var(--hero-badge-speed-size,var(--font-fib-title))}
.hero-badge-unit{font-size:var(--hero-badge-unit-size,var(--font-fib-lead))}
.hero-badge-subtitle{font-size:var(--hero-badge-subtitle-size,var(--font-fib-sm))}

/* Planos: velocidade > preço > conteúdo, sem alterar a grade ou as dimensões dos cards. */
.plan-speed{font-size:var(--plan-speed-font-size,var(--font-fib-title))}
.plan-speed small{font-size:var(--plan-unit-font-size,var(--font-fib-sm))}
.plans-grid.plan-cols-5 .plan-speed{font-size:min(var(--plan-speed-font-size,var(--font-fib-title)),var(--font-fib-title))}
.plans-grid.plan-cols-5 .price{font-size:var(--font-section-title,var(--font-fib-subtitle))}
.plans-grid.plan-cols-5 .plan-tag{font-size:var(--font-micro,var(--font-fib-xs))}
.plans-grid.plan-cols-5 .plan-features,.plans-grid.plan-cols-5 .btn{font-size:var(--font-button,var(--font-fib-sm))}

@media(max-width:680px){
  .hero h1{font-size:min(var(--hero-title-size,var(--font-fib-title)),var(--font-fib-title))}
  .section-title,.contact-info .section-title,.cta-inner h2{font-size:var(--font-section-title,var(--font-fib-subtitle))}
  .section-copy,.hero p{font-size:var(--font-lead,var(--font-fib-lead))}
  .plan-speed{font-size:min(var(--plan-speed-font-size,var(--font-fib-title)),var(--font-fib-title))}
}

/* V17 — elementos tipográficos restantes vinculados ao controle geral */
.store-link{font-size:var(--font-small,var(--font-fib-sm))}
input,select,textarea,.check,.contact-point,.footer-copy,.intro-float span{font-size:var(--font-body,var(--font-fib-base))}
.plans-grid.plan-cols-5 .plan-features{font-size:var(--font-small,var(--font-fib-sm))}
.plans-grid.plan-cols-5 .btn{font-size:var(--font-button,var(--font-fib-sm))}


/* === V18: selo "Mais escolhido" mais moderno e tecnológico === */
.plan-tag{
  position:absolute;
  right:18px;
  top:18px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:36px;
  padding:8px 14px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--plan-accent-color,var(--brand)) 0%, color-mix(in srgb,var(--plan-accent-color,var(--brand)) 78%, #ff9a4d) 100%);
  color:#fff;
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 12px 28px rgba(255,107,26,.24), inset 0 1px 0 rgba(255,255,255,.22);
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.16em;
  line-height:1;
  isolation:isolate;
  overflow:hidden;
}
.plan-tag::after{
  content:"";
  position:absolute;
  inset:1px;
  border-radius:inherit;
  border:1px solid rgba(255,255,255,.14);
  pointer-events:none;
}
.plan-tag::before{
  content:"";
  position:absolute;
  width:82px;
  height:100%;
  top:0;
  left:-58px;
  transform:skewX(-28deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);
  opacity:.9;
}
.plan-card.featured .plan-tag{
  background:linear-gradient(135deg,#ff8c2f 0%, #ff6b1a 42%, #ff5a12 100%);
  box-shadow:0 16px 34px rgba(255,107,26,.28), 0 0 0 1px rgba(255,255,255,.04), inset 0 1px 0 rgba(255,255,255,.22);
}
.plan-card.featured .plan-tag span,
.plan-card .plan-tag span{position:relative;z-index:1}
.plan-card.featured .plan-tag::before{
  animation:planTagSweep 3.8s ease-in-out infinite;
}
@keyframes planTagSweep{
  0%,100%{transform:translateX(0) skewX(-28deg);opacity:0}
  15%{opacity:.15}
  45%{opacity:.9}
  70%{opacity:.15}
  100%{transform:translateX(180px) skewX(-28deg);opacity:0}
}
@media(max-width:680px){
  .plan-tag{right:14px;top:14px;padding:7px 12px;font-size:11px;min-height:32px}
}
@media (prefers-reduced-motion: reduce){
  .plan-card.featured .plan-tag::before{animation:none}
}



/* === V19: até cinco planos por linha + tipografia exclusiva da seção === */
.plans-head .section-title{font-size:var(--font-plans-title,34px)}
.plans-head .section-copy{font-size:var(--font-plans-description,16px)}
.tabs .tab{font-size:var(--font-plans-tabs,13px)}
.plan-card{min-width:0;overflow:hidden}
.plan-card .plan-type{font-size:var(--font-plan-type,13px)}
.plan-card .plan-tag{font-size:var(--font-plan-tag,8px)}
.plan-card .plan-speed{font-size:var(--plan-speed-font-size,55px)}
.plan-card .plan-speed small{font-size:var(--plan-unit-font-size,13px)}
.plan-card>p{font-size:var(--font-plan-description,13px)}
.plan-card .price{font-size:var(--font-plan-price,21px)}
.plan-card .price small{font-size:var(--font-plan-period,13px)}
.plan-card .plan-features{font-size:var(--font-plan-features,13px)}
.plan-card .btn{font-size:var(--font-plan-button,13px)}
.plan-card p,.plan-card li,.plan-card .price,.plan-card .btn{overflow-wrap:anywhere}

@media(min-width:1051px){
  .plans-grid.plan-cols-1{grid-template-columns:minmax(0,1fr)!important}
  .plans-grid.plan-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .plans-grid.plan-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .plans-grid.plan-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:20px}
  .plans-grid.plan-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:16px}
  .plans-grid.plan-cols-4 .plan-card{padding:24px}
  .plans-grid.plan-cols-5 .plan-card{padding:18px}
  .plans-grid.plan-cols-5 .plan-tag{right:10px;top:10px;min-height:28px;padding:6px 8px;max-width:calc(100% - 20px);white-space:nowrap;letter-spacing:.1em}
  .plans-grid.plan-cols-5 .plan-speed{font-size:min(var(--plan-speed-font-size,55px),55px)}
  .plans-grid.plan-cols-5 .price{font-size:min(var(--font-plan-price,21px),21px)}
  .plans-grid.plan-cols-5 .plan-features{font-size:min(var(--font-plan-features,13px),13px)}
  .plans-grid.plan-cols-5 .btn{font-size:min(var(--font-plan-button,13px),13px);padding-inline:8px}
}

/* === V25: contraste editável em Cobertura e Contato === */
#cobertura .section-title{color:var(--coverage-title-color,#ffffff)}
#cobertura .section-copy{color:var(--coverage-description-color,#bcc8dc)}
#cobertura .city,
#cobertura .coverage-item{
  color:var(--coverage-city-text-color,#0b1735);
  background:var(--coverage-city-bg-color,#ffffff);
}
#contato .contact-wrap{background:var(--contact-panel-bg,#ffffff)}
#contato .contact-info .section-title{color:var(--contact-title-color,#0b1735)}
#contato .contact-info .section-copy{color:var(--contact-description-color,#4d5b72)}
#contato .contact-point{color:var(--contact-text-color,#4d5b72)}
#contato .contact-point b{color:var(--contact-label-color,#0b1735)}


/* === V26: imagem editável da seção Cobertura === */
.map-card.has-image{min-height:0;aspect-ratio:4/3;background:#08142f}
.map-card.has-image:before{display:none}
.coverage-map-image{display:block;width:100%;height:100%;object-fit:cover;object-position:center;border-radius:inherit}
@media(max-width:900px){.map-card.has-image{min-height:0;aspect-ratio:4/3}}


/* === V27: seção institucional com imagem gerenciável === */
.intro-section{background:var(--intro-section-bg,#fff)}
.intro-main{width:82%;height:auto;aspect-ratio:1/1;background:linear-gradient(145deg,#edf4ff,#d8e7fb);border-radius:34px;box-shadow:0 26px 70px rgba(11,23,53,.14)}
.intro-main.has-image:before{display:none}
.intro-image{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}
.intro-copy .eyebrow{color:var(--intro-eyebrow-color,#2d7ff9)}
.intro-copy .section-title{color:var(--intro-title-color,#0b1735)}
.intro-copy .section-copy,.intro-copy .check{color:var(--intro-description-color,#4d5b72)}
.intro-copy .check i{background:color-mix(in srgb,var(--intro-highlight-color,#ff6b1a) 14%,transparent);color:var(--intro-highlight-color,#ff6b1a)}
.intro-button{background:var(--intro-button-bg,#0b1735);color:var(--intro-button-text,#fff)}
.intro-button:hover{transform:translateY(-2px);filter:brightness(1.08)}
.intro-float{background:var(--intro-badge-bg,#0b1735)}
.intro-float b{color:var(--intro-badge-number,#fff)}
.intro-float b em{font-style:normal;color:var(--intro-badge-accent,#ff6b1a)}
.intro-float span{color:var(--intro-badge-text,#cfe0f8)}
.intro-upload-box img{aspect-ratio:1/1;object-fit:cover;max-height:520px}
@media(max-width:680px){.intro-main{width:100%;position:relative}.intro-visual{min-height:auto}.intro-float{position:relative;width:100%;margin-top:16px}}


/* === V28: imagem institucional sem sobreposição do card === */
.intro-main.has-image{background:linear-gradient(145deg,#edf4ff,#d8e7fb);overflow:hidden}
.intro-main.has-image .intro-image{object-fit:cover;object-position:center center;filter:saturate(1.02) contrast(1.01)}
.intro-float{z-index:3}
.intro-main{z-index:1}


/* === V29: atendimento direto pelo WhatsApp === */
#contato a.contact-point{text-decoration:none;border-radius:14px;padding:8px 10px;margin-left:-10px;transition:background .2s ease,transform .2s ease}
#contato a.contact-point:hover{background:rgba(45,127,249,.08);transform:translateX(3px)}
#contato .form-card .form-grid{align-items:end}

/* === V31: linguagem tecnológica discreta e consistente === */
:root{
  --tech-blue:#2d7ff9;
  --tech-orange:var(--brand,#ff6b1a);
  --tech-shadow:0 22px 55px rgba(11,23,53,.13);
  --tech-border:rgba(45,127,249,.22);
}

/* Botões: microbrilho comum a todo o site */
.btn{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  box-shadow:0 10px 24px rgba(11,23,53,.10);
  transition:transform .28s ease,box-shadow .28s ease,filter .28s ease,border-color .28s ease;
}
.btn::before{
  content:"";
  position:absolute;
  z-index:-1;
  top:-35%;
  left:-45%;
  width:34%;
  height:170%;
  transform:skewX(-24deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.34),transparent);
  opacity:0;
  pointer-events:none;
}
@media (hover:hover) and (pointer:fine){
  .btn:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(11,23,53,.17);filter:saturate(1.04)}
  .btn:hover::before{animation:techButtonSweep .72s ease}
}
@keyframes techButtonSweep{
  0%{left:-45%;opacity:0}
  18%{opacity:1}
  100%{left:122%;opacity:0}
}

/* Superfícies com halo que acompanha o cursor */
.tech-surface{
  --tech-x:50%;
  --tech-y:50%;
  position:relative;
  isolation:isolate;
}
.tech-surface::after{
  content:"";
  position:absolute;
  z-index:0;
  inset:0;
  border-radius:inherit;
  background:radial-gradient(circle 220px at var(--tech-x) var(--tech-y),rgba(45,127,249,.11),transparent 68%);
  opacity:0;
  pointer-events:none;
  transition:opacity .28s ease;
}
.tech-surface>*{position:relative;z-index:1}
@media (hover:hover) and (pointer:fine){.tech-surface:hover::after{opacity:1}}

/* Faixa de serviços */
.quick-grid{
  overflow:hidden;
  border:1px solid rgba(45,127,249,.08);
  box-shadow:0 24px 60px rgba(11,23,53,.12);
}
.quick-item{
  position:relative;
  transition:background .28s ease,transform .28s ease,box-shadow .28s ease;
}
.quick-item::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:2px;
  background:linear-gradient(90deg,transparent,var(--tech-orange),transparent);
  transform:scaleX(0);
  transition:transform .32s ease;
}
.quick-icon{transition:transform .3s ease,filter .3s ease}
@media (hover:hover) and (pointer:fine){
  .quick-item:hover{background:linear-gradient(145deg,#fff,#f5f9ff);transform:translateY(-2px);box-shadow:inset 0 0 0 1px rgba(45,127,249,.10)}
  .quick-item:hover::before{transform:scaleX(1)}
  .quick-item:hover .quick-icon{transform:translateY(-3px) scale(1.08);filter:drop-shadow(0 8px 12px rgba(45,127,249,.22))}
}

/* Institucional */
.intro-section{position:relative;overflow:hidden}
.intro-section::before{
  content:"";
  position:absolute;
  width:520px;
  height:520px;
  border-radius:50%;
  left:-340px;
  top:40px;
  background:radial-gradient(circle,rgba(45,127,249,.08),transparent 68%);
  pointer-events:none;
}
.intro-main,.intro-float{transition:transform .4s ease,box-shadow .4s ease}
.intro-image{transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .5s ease}
@media (hover:hover) and (pointer:fine){
  .intro-visual:hover .intro-main{transform:translateY(-5px);box-shadow:0 34px 78px rgba(11,23,53,.18)}
  .intro-visual:hover .intro-image{transform:scale(1.025);filter:saturate(1.05) contrast(1.02)}
  .intro-float:hover{transform:translateY(-5px) translateX(3px);box-shadow:0 28px 58px rgba(4,17,42,.28)}
}

/* Abas dos planos */
.tab{position:relative;transition:color .25s ease,background .25s ease,transform .25s ease,box-shadow .25s ease}
.tab::after{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  bottom:5px;
  height:2px;
  border-radius:99px;
  background:var(--tech-orange);
  transform:scaleX(0);
  transition:transform .28s ease;
}
.tab.active::after{transform:scaleX(1)}
@media (hover:hover) and (pointer:fine){.tab:hover{transform:translateY(-1px);color:var(--ink)}}

/* Planos */
.plan-card{
  isolation:isolate;
  box-shadow:0 12px 32px rgba(11,23,53,.07);
  transition:transform .35s cubic-bezier(.2,.75,.25,1),box-shadow .35s ease,border-color .35s ease,filter .35s ease;
}
.plan-card::before{
  content:"";
  position:absolute;
  z-index:0;
  left:-20%;
  top:0;
  width:140%;
  height:2px;
  background:linear-gradient(90deg,transparent,var(--plan-accent-color,var(--tech-orange)),transparent);
  opacity:.45;
  transform:scaleX(.25);
  transition:transform .38s ease,opacity .38s ease;
}
@media (hover:hover) and (pointer:fine){
  .plan-card:hover{transform:translateY(-9px);box-shadow:0 28px 58px rgba(11,23,53,.16);border-color:color-mix(in srgb,var(--plan-accent-color,var(--tech-orange)) 48%,var(--line));filter:saturate(1.025)}
  .plan-card:hover::before{transform:scaleX(1);opacity:1}
  .plan-card.featured:hover{transform:translateY(-15px);box-shadow:0 30px 68px rgba(4,17,42,.28),0 0 0 1px color-mix(in srgb,var(--plan-accent-color,var(--tech-orange)) 36%,transparent)}
  .plan-card:hover .speed-number{filter:drop-shadow(0 8px 16px color-mix(in srgb,var(--plan-accent-color,var(--tech-orange)) 22%,transparent))}
}
.speed-number{transition:filter .3s ease}

/* Diferenciais: destaque principal solicitado */
#diferenciais{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 88% 8%,rgba(45,127,249,.08),transparent 28%),
    linear-gradient(180deg,#fff 0%,#fbfdff 100%);
}
#diferenciais::before{
  content:"";
  position:absolute;
  right:-110px;
  top:80px;
  width:330px;
  height:330px;
  border-radius:50%;
  border:1px solid rgba(45,127,249,.10);
  box-shadow:0 0 0 48px rgba(45,127,249,.025),0 0 0 96px rgba(45,127,249,.018);
  pointer-events:none;
}
.diff-card{
  --tech-rx:0deg;
  --tech-ry:0deg;
  position:relative;
  overflow:hidden;
  min-height:100%;
  border-color:rgba(45,127,249,.11);
  box-shadow:0 14px 38px rgba(11,23,53,.08);
  transform:perspective(900px) rotateX(var(--tech-rx)) rotateY(var(--tech-ry));
  transform-style:preserve-3d;
  transition:transform .34s cubic-bezier(.2,.75,.25,1),box-shadow .34s ease,border-color .34s ease,background .34s ease;
}
.diff-card::before{
  content:"";
  position:absolute;
  z-index:0;
  inset:0 auto 0 0;
  width:3px;
  background:linear-gradient(180deg,var(--tech-orange),var(--tech-blue));
  transform:scaleY(.28);
  transform-origin:center;
  opacity:.45;
  transition:transform .34s ease,opacity .34s ease;
}
.diff-icon{
  position:relative;
  box-shadow:0 10px 24px rgba(255,107,26,.10);
  transition:transform .34s ease,box-shadow .34s ease,background .34s ease,color .34s ease;
}
.diff-icon::after{
  content:"";
  position:absolute;
  inset:-7px;
  border:1px solid rgba(255,107,26,.22);
  border-radius:22px;
  opacity:0;
  transform:scale(.86);
  transition:opacity .34s ease,transform .34s ease;
}
@media (hover:hover) and (pointer:fine){
  .diff-card:hover{
    transform:perspective(900px) translateY(-9px) rotateX(var(--tech-rx)) rotateY(var(--tech-ry));
    border-color:rgba(45,127,249,.28);
    background:linear-gradient(145deg,#fff,#f8fbff);
    box-shadow:0 28px 64px rgba(11,23,53,.16),0 0 0 1px rgba(45,127,249,.04);
  }
  .diff-card:hover::before{transform:scaleY(1);opacity:1}
  .diff-card:hover .diff-icon{transform:translateZ(22px) translateY(-4px) scale(1.06);background:linear-gradient(145deg,#fff0e6,#eef5ff);box-shadow:0 16px 30px rgba(45,127,249,.16);color:var(--tech-orange)}
  .diff-card:hover .diff-icon::after{opacity:1;transform:scale(1)}
  .diff-card:hover h3{color:#10244c}
}
.diff-card h3,.diff-card p{transition:color .3s ease,transform .3s ease}
@media (hover:hover) and (pointer:fine){.diff-card:hover h3,.diff-card:hover p{transform:translateX(3px)}}

/* Cobertura */
#cobertura{position:relative;overflow:hidden}
#cobertura::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 18% 46%,rgba(45,127,249,.14),transparent 34%);
  pointer-events:none;
}
.map-card{transition:transform .42s ease,box-shadow .42s ease,border-color .42s ease;border:1px solid rgba(90,159,255,.16)}
.coverage-map-image{transition:transform .8s cubic-bezier(.2,.7,.2,1),filter .55s ease}
.coverage-item{position:relative;overflow:hidden;transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease,background .28s ease}
.coverage-item i{transition:transform .28s ease,text-shadow .28s ease}
@media (hover:hover) and (pointer:fine){
  .map-card:hover{transform:translateY(-5px);box-shadow:0 34px 76px rgba(0,0,0,.30);border-color:rgba(90,159,255,.34)}
  .map-card:hover .coverage-map-image{transform:scale(1.025);filter:saturate(1.06) contrast(1.02)}
  .coverage-item:hover{transform:translateY(-3px);border-color:rgba(45,127,249,.28);box-shadow:0 14px 26px rgba(0,0,0,.13);background:color-mix(in srgb,var(--coverage-city-bg-color,#fff) 94%,#eaf3ff)}
  .coverage-item:hover i{transform:scale(1.18);text-shadow:0 0 12px var(--tech-orange)}
}

/* Lojas */
#lojas{position:relative;overflow:hidden}
.store-card{
  position:relative;
  overflow:hidden;
  transition:transform .34s ease,box-shadow .34s ease,border-color .34s ease;
  box-shadow:0 10px 28px rgba(11,23,53,.05);
}
.store-thumb{transition:transform .55s ease,filter .45s ease}
.store-card::before{
  content:"";
  position:absolute;
  z-index:2;
  left:24px;
  right:24px;
  top:0;
  height:2px;
  background:linear-gradient(90deg,transparent,var(--tech-orange),transparent);
  transform:scaleX(0);
  transition:transform .34s ease;
}
.store-link{display:inline-flex;align-items:center;gap:5px;transition:gap .25s ease,color .25s ease}
@media (hover:hover) and (pointer:fine){
  .store-card:hover{transform:translateY(-8px);box-shadow:0 26px 54px rgba(11,23,53,.14);border-color:rgba(45,127,249,.24)}
  .store-card:hover::before{transform:scaleX(1)}
  .store-card:hover .store-thumb{transform:scale(1.025);filter:saturate(1.06)}
  .store-card:hover .store-link{gap:10px;color:#e95b12}
}

/* Contato */
#contato{position:relative;overflow:hidden}
#contato::after{
  content:"";
  position:absolute;
  right:-160px;
  bottom:-210px;
  width:520px;
  height:520px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(45,127,249,.15),transparent 68%);
  pointer-events:none;
}
.contact-wrap{position:relative;z-index:1;border:1px solid rgba(45,127,249,.10);transition:box-shadow .35s ease,border-color .35s ease}
.form-card{position:relative;overflow:hidden;border:1px solid rgba(45,127,249,.09);transition:box-shadow .32s ease,border-color .32s ease}
.form-card::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:2px;
  background:linear-gradient(90deg,transparent,var(--tech-blue),var(--tech-orange),transparent);
}
.field input,.field select,.field textarea{transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease,background .25s ease}
@media (hover:hover) and (pointer:fine){
  .contact-wrap:hover{box-shadow:0 30px 72px rgba(0,0,0,.24);border-color:rgba(45,127,249,.20)}
  .form-card:hover{box-shadow:0 20px 42px rgba(11,23,53,.08);border-color:rgba(45,127,249,.20)}
  #contato a.contact-point:hover{background:linear-gradient(90deg,rgba(45,127,249,.10),rgba(255,107,26,.04));transform:translateX(5px)}
}
.field input:focus,.field select:focus,.field textarea:focus{transform:translateY(-1px);box-shadow:0 0 0 4px rgba(255,107,26,.10),0 12px 26px rgba(11,23,53,.08)}

/* CTA final */
.cta-inner{box-shadow:0 24px 56px rgba(255,83,24,.22);transition:transform .35s ease,box-shadow .35s ease}
.cta-inner::before{
  content:"";
  position:absolute;
  inset:-80% -30%;
  background:linear-gradient(115deg,transparent 42%,rgba(255,255,255,.13) 50%,transparent 58%);
  transform:translateX(-38%);
  pointer-events:none;
}
@media (hover:hover) and (pointer:fine){
  .cta-inner:hover{transform:translateY(-4px);box-shadow:0 32px 72px rgba(255,83,24,.29)}
  .cta-inner:hover::before{animation:techCtaSweep 1.15s ease}
}
@keyframes techCtaSweep{from{transform:translateX(-42%)}to{transform:translateX(42%)}}

/* Entrada escalonada dos cards */
.quick-grid.visible .quick-item,
.plans-grid.visible .plan-card,
.diff-grid.visible .diff-card,
.stores-grid.visible .store-card{
  animation:techCardIn .58s cubic-bezier(.2,.75,.25,1) both;
}
.quick-grid.visible>*:nth-child(2),.plans-grid.visible>*:nth-child(2),.diff-grid.visible>*:nth-child(2),.stores-grid.visible>*:nth-child(2){animation-delay:.06s}
.quick-grid.visible>*:nth-child(3),.plans-grid.visible>*:nth-child(3),.diff-grid.visible>*:nth-child(3),.stores-grid.visible>*:nth-child(3){animation-delay:.12s}
.quick-grid.visible>*:nth-child(4),.plans-grid.visible>*:nth-child(4),.diff-grid.visible>*:nth-child(4),.stores-grid.visible>*:nth-child(4){animation-delay:.18s}
.plans-grid.visible>*:nth-child(5),.stores-grid.visible>*:nth-child(5){animation-delay:.24s}
@keyframes techCardIn{
  from{opacity:0;transform:translateY(18px) scale(.985)}
  to{opacity:1;transform:translateY(0) scale(1)}
}

@media(max-width:1050px){
  .plan-card.featured{transform:none}
  .diff-card{transform:none}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .reveal{opacity:1!important;transform:none!important}
  .diff-card,.plan-card,.store-card,.quick-item,.map-card,.intro-main,.intro-float,.cta-inner{transform:none!important}
}


/* === V32: rodapé totalmente gerenciável === */
.footer{background:var(--footer-bg,#07122b);color:var(--footer-description,#c4cee0)}
.footer-grid{grid-template-columns:minmax(250px,1.35fr) repeat(3,minmax(145px,1fr));align-items:start}
.footer h4{color:var(--footer-heading,#fff)}
.footer-copy{color:var(--footer-description,#c4cee0)}
.footer-links a{position:relative;width:max-content;max-width:100%;color:var(--footer-item-link,var(--footer-link,#c4cee0));transition:color .22s ease,transform .22s ease}
.footer-links a:after{content:"";position:absolute;left:0;right:100%;bottom:-3px;height:1px;background:var(--footer-item-hover,var(--footer-link-hover,#ff6b1a));transition:right .24s ease}
.footer-links a:hover,.footer-links a:focus-visible{color:var(--footer-item-hover,var(--footer-link-hover,#ff6b1a));transform:translateX(3px)}
.footer-links a:hover:after,.footer-links a:focus-visible:after{right:0}
.footer-bottom{color:var(--footer-bottom,#c4cee0);border-top-color:var(--footer-divider,#24304a)}
.footer-brand{color:var(--footer-heading,#fff)}
.footer-logo{max-height:48px;width:auto;object-fit:contain;object-position:left center}
@media(max-width:1050px){.footer-grid{grid-template-columns:1.35fr repeat(2,1fr)}.footer-block:last-child{grid-column:2/4}}
@media(max-width:680px){.footer-grid{grid-template-columns:1fr}.footer-block:last-child{grid-column:auto}.footer-links a{width:fit-content}}


/* === V37: ícones personalizados na seção Contato === */
#contato .contact-point{align-items:center}
#contato .contact-point-icon{flex:0 0 28px;width:28px;height:28px;border-radius:9px;display:inline-grid;place-items:center;background:linear-gradient(145deg,rgba(45,127,249,.16),rgba(255,107,26,.10));border:1px solid rgba(45,127,249,.18);box-shadow:0 8px 20px rgba(11,23,53,.10);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
#contato .contact-point-icon:not(.has-image)::after{content:"";width:9px;height:9px;border-radius:50%;background:#60758f}
#contato .contact-point-icon img{display:block;width:20px;height:20px;object-fit:contain}
#contato a.contact-point:hover .contact-point-icon{transform:translateY(-1px);border-color:rgba(255,107,26,.45);box-shadow:0 10px 24px rgba(45,127,249,.14)}
.contact-icon-preview{display:flex;align-items:center;gap:12px;margin:12px 0 18px;padding:12px 14px;border-radius:14px;background:#f4f7fb;border:1px solid #e2e9f2;color:#4d5b72;font-size:13px}
.contact-icon-preview img{width:48px;height:48px;object-fit:contain;border-radius:12px;background:#fff;padding:6px;border:1px solid #dde5ef}


/* === V40: restauração comparativa V36 — Planos e Rodapé === */
/* === V33: link de detalhes/Anatel dos planos e contato configurável === */
.plan-details-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  width:100%;
  margin-top:auto;
  margin-bottom:9px;
  padding:2px 4px;
  color:var(--plan-description-color,var(--text));
  font-size:11px;
  font-weight:750;
  line-height:1.35;
  text-align:center;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
  opacity:.82;
  transition:color .2s ease,opacity .2s ease,transform .2s ease;
}
.plan-details-link:hover{
  color:var(--plan-accent-color,var(--brand));
  opacity:1;
  transform:translateY(-1px);
}
.plan-card .plan-details-link + .btn{margin-top:0}
.plan-card.featured .plan-details-link,
.playermax-plan-card .plan-details-link{color:var(--plan-features-color,#c4cfdf)}
.plan-card.featured .plan-details-link:hover,
.playermax-plan-card .plan-details-link:hover{color:var(--plan-accent-color,var(--brand))}
.plans-grid.plan-cols-5 .plan-details-link{font-size:10px}
@media(max-width:680px){.plan-details-link{font-size:11px}}


/* === V34: correções dos planos, destaque e PlayerMax compacto === */
.plan-card.has-plan-tag{padding-top:68px}
.plan-card .plan-tag{
  left:auto!important;
  right:16px!important;
  top:16px!important;
  width:max-content!important;
  min-width:0!important;
  max-width:calc(100% - 32px)!important;
  min-height:28px!important;
  padding:6px 10px!important;
  flex:0 0 auto!important;
  align-self:flex-start!important;
  justify-content:center!important;
  gap:0!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  font-size:var(--font-plan-tag,8px)!important;
  line-height:1!important;
  letter-spacing:.12em!important;
  box-sizing:border-box!important;
}
.plan-card .plan-tag::after{inset:1px}
.plan-card .plan-tag::before{width:56px}

@media(min-width:1051px){
  .plans-grid.plan-cols-4 .plan-card.has-plan-tag,
  .plans-grid.plan-cols-5 .plan-card.has-plan-tag{padding-top:58px}
  .plans-grid.plan-cols-4 .plan-tag,
  .plans-grid.plan-cols-5 .plan-tag{right:12px!important;top:12px!important;max-width:calc(100% - 24px)!important;min-height:25px!important;padding:5px 8px!important}

  .playermax-panel.playermax-single .plans-grid{
    grid-template-columns:minmax(0,560px)!important;
    justify-content:center;
    width:100%;
    margin-inline:auto;
  }
  .playermax-panel.playermax-single .playermax-plan-card{
    width:100%;
    max-width:560px;
    padding:28px 32px;
    min-height:0;
    justify-self:center;
  }
  .playermax-panel.playermax-single .playermax-plan-card.has-plan-tag{padding-top:62px}
  .playermax-panel.playermax-single .plan-speed{margin:12px 0 5px;font-size:min(var(--plan-speed-font-size,55px),55px)}
  .playermax-panel.playermax-single .price{margin:14px 0;font-size:min(var(--font-plan-price,21px),26px)}
  .playermax-panel.playermax-single .plan-features{gap:8px;margin-bottom:18px}
  .playermax-panel.playermax-single .plan-card>p{margin-top:8px;margin-bottom:8px}
  .playermax-panel.playermax-single .btn{padding-block:13px}
}

.plan-details-link{
  position:relative;
  z-index:2;
  flex:0 0 auto;
  min-height:18px;
  margin-top:auto!important;
  margin-bottom:10px!important;
  visibility:visible;
}
.plan-card .plan-details-link + .btn{margin-top:0!important}

@media(max-width:1050px){
  .playermax-panel.playermax-single .plans-grid{grid-template-columns:minmax(0,1fr)!important;max-width:560px;margin-inline:auto}
}
@media(max-width:680px){
  .plan-card.has-plan-tag{padding-top:60px}
  .plan-card .plan-tag{right:12px!important;top:12px!important;max-width:calc(100% - 24px)!important;min-height:26px!important;padding:5px 9px!important}
  .playermax-panel.playermax-single .playermax-plan-card{padding:24px 22px}
}

/* === V35: destaque integrado ao card e PlayerMax compacto === */
/* O selo passa a funcionar como uma máscara de canto, sem deslocar o conteúdo. */
.plan-card.featured{
  transform:none!important;
  border-color:color-mix(in srgb,var(--plan-accent-color,var(--brand)) 72%,transparent)!important;
  box-shadow:0 16px 42px rgba(5,18,45,.18),inset 0 1px 0 rgba(255,255,255,.06);
}
.plan-card.featured::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  border-radius:inherit;
  pointer-events:none;
  background:
    linear-gradient(135deg,color-mix(in srgb,var(--plan-accent-color,var(--brand)) 13%,transparent),transparent 34%),
    linear-gradient(315deg,rgba(255,255,255,.035),transparent 30%);
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--plan-accent-color,var(--brand)) 24%,transparent);
}
.plan-card.featured>*{position:relative;z-index:2}

/* Remove qualquer espaço extra criado pelo selo. */
.plan-card.has-plan-tag{padding-top:34px!important}
.plans-grid.plan-cols-4 .plan-card.has-plan-tag{padding-top:24px!important}
.plans-grid.plan-cols-5 .plan-card.has-plan-tag{padding-top:18px!important}

/* Máscara moderna integrada ao canto superior direito. */
.plan-card .plan-tag{
  position:absolute!important;
  z-index:5!important;
  top:0!important;
  right:0!important;
  left:auto!important;
  width:auto!important;
  min-width:0!important;
  max-width:min(72%,190px)!important;
  height:36px!important;
  min-height:36px!important;
  padding:0 17px 0 25px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:0 var(--radius,22px) 0 18px!important;
  clip-path:polygon(14px 0,100% 0,100% 100%,0 100%,0 14px)!important;
  background:linear-gradient(105deg,
    color-mix(in srgb,var(--plan-accent-color,var(--brand)) 82%,#ffb066),
    var(--plan-accent-color,var(--brand)) 60%,
    color-mix(in srgb,var(--plan-accent-color,var(--brand)) 80%,#e94b00)
  )!important;
  border:0!important;
  box-shadow:-10px 12px 28px color-mix(in srgb,var(--plan-accent-color,var(--brand)) 22%,transparent),inset 0 1px 0 rgba(255,255,255,.32)!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  color:#fff!important;
  font-size:var(--font-plan-tag,8px)!important;
  font-weight:950!important;
  line-height:1!important;
  letter-spacing:.13em!important;
  text-transform:uppercase!important;
}
.plan-card .plan-tag::after{
  content:"";
  position:absolute;
  inset:1px 1px auto auto!important;
  width:calc(100% - 2px);
  height:1px;
  border:0!important;
  border-radius:0!important;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.55));
  pointer-events:none;
}
.plan-card .plan-tag::before{
  content:"";
  position:absolute;
  top:-8px;
  left:-44px;
  width:34px!important;
  height:52px;
  transform:rotate(24deg)!important;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.38),transparent)!important;
  opacity:.55;
}
@media (hover:hover) and (pointer:fine){
  .plan-card.featured:hover{
    transform:translateY(-9px)!important;
    box-shadow:0 28px 62px rgba(5,18,45,.25),0 0 0 1px color-mix(in srgb,var(--plan-accent-color,var(--brand)) 36%,transparent)!important;
  }
  .plan-card:hover .plan-tag::before{animation:v35TagSweep 1.15s ease both}
}
@keyframes v35TagSweep{
  from{left:-44px;opacity:0}
  35%{opacity:.6}
  to{left:calc(100% + 20px);opacity:0}
}

/* PlayerMax: somente o bloco gamer fica preto e ocupa no máximo dois cards residenciais. */
.playermax-panel.playermax-single{
  width:min(100%,620px)!important;
  max-width:620px!important;
  margin:0 auto!important;
  padding:24px!important;
  border-radius:28px!important;
  background:
    radial-gradient(circle at 100% 0,color-mix(in srgb,var(--pm-accent,#e30613) 18%,transparent),transparent 34%),
    linear-gradient(145deg,#070708,#0d0d11)!important;
  border:1px solid color-mix(in srgb,var(--pm-accent,#e30613) 36%,rgba(255,255,255,.08))!important;
  box-shadow:0 22px 54px rgba(5,10,24,.20)!important;
  overflow:hidden!important;
}
.playermax-panel.playermax-single::before{
  width:230px!important;
  height:230px!important;
  right:-105px!important;
  top:-115px!important;
  opacity:.72;
}
.playermax-panel.playermax-single .playermax-tab-head{
  max-width:100%!important;
  margin:0 0 20px!important;
}
.playermax-panel.playermax-single .playermax-tab-head h3{
  max-width:100%!important;
  margin:7px 0 9px!important;
  font-size:clamp(28px,3vw,34px)!important;
  line-height:1.04!important;
}
.playermax-panel.playermax-single .playermax-tab-head p{
  max-width:100%!important;
  font-size:14px!important;
  line-height:1.5!important;
}
.playermax-panel.playermax-single .plans-grid{
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  grid-template-columns:minmax(0,1fr)!important;
  justify-content:stretch!important;
}
.playermax-panel.playermax-single .playermax-plan-card{
  width:100%!important;
  max-width:none!important;
  min-height:0!important;
  margin:0!important;
  padding:28px 30px!important;
  justify-self:stretch!important;
  border-radius:22px!important;
}
.playermax-panel.playermax-single .playermax-plan-card.has-plan-tag{
  padding-top:28px!important;
}
.playermax-panel.playermax-single .plan-tag{
  max-width:52%!important;
}
.playermax-panel.playermax-single .plan-speed{
  margin:16px 0 7px!important;
  font-size:min(var(--plan-speed-font-size,55px),55px)!important;
}
.playermax-panel.playermax-single .price{
  margin:15px 0!important;
  font-size:min(var(--font-plan-price,21px),26px)!important;
}
.playermax-panel.playermax-single .plan-features{
  gap:9px!important;
  margin-bottom:18px!important;
}
.playermax-panel.playermax-single .plan-card>p{
  margin-top:7px!important;
  margin-bottom:7px!important;
}
.playermax-panel.playermax-single .btn{padding-block:13px!important}

@media(max-width:680px){
  .plan-card.has-plan-tag,
  .plans-grid.plan-cols-4 .plan-card.has-plan-tag,
  .plans-grid.plan-cols-5 .plan-card.has-plan-tag{padding-top:24px!important}
  .plan-card .plan-tag{
    max-width:68%!important;
    height:32px!important;
    min-height:32px!important;
    padding:0 13px 0 21px!important;
    border-radius:0 20px 0 15px!important;
  }
  .playermax-panel.playermax-single{
    width:100%!important;
    padding:18px!important;
    border-radius:22px!important;
  }
  .playermax-panel.playermax-single .playermax-plan-card,
  .playermax-panel.playermax-single .playermax-plan-card.has-plan-tag{padding:24px 21px!important}
  .playermax-panel.playermax-single .playermax-tab-head h3{font-size:29px!important}
}

@media (prefers-reduced-motion:reduce){
  .plan-card:hover .plan-tag::before{animation:none!important}
}


/* === V36: selo linear e redes sociais gerenciáveis no rodapé === */
/* Mantém o posicionamento e os efeitos do destaque, mas usa uma forma geométrica regular. */
.plan-card .plan-tag{
  clip-path:none!important;
  border-radius:0 var(--radius,22px) 0 12px!important;
  padding:0 17px!important;
  background:linear-gradient(105deg,
    color-mix(in srgb,var(--plan-accent-color,var(--brand)) 86%,#ffb066),
    var(--plan-accent-color,var(--brand)) 58%,
    color-mix(in srgb,var(--plan-accent-color,var(--brand)) 82%,#e94b00)
  )!important;
}
.plan-card .plan-tag::after{
  inset:1px 1px auto 1px!important;
  width:auto!important;
  background:linear-gradient(90deg,rgba(255,255,255,.18),rgba(255,255,255,.58),rgba(255,255,255,.12))!important;
}

.footer-socials{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  margin-top:26px;
}
.footer-social-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:42px;
  height:42px;
  flex:0 0 42px;
  border-radius:12px;
  color:var(--social-icon,#fff);
  background:var(--social-bg,#14213f);
  border:1px solid color-mix(in srgb,var(--social-icon,#fff) 18%,transparent);
  box-shadow:0 10px 24px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.08);
  transition:transform .22s ease,color .22s ease,background-color .22s ease,border-color .22s ease,box-shadow .22s ease;
}
.footer-social-link svg{width:21px;height:21px;display:block}
.footer-social-link:hover,.footer-social-link:focus-visible{
  color:var(--social-icon-hover,#fff);
  background:var(--social-bg-hover,#ff6b1a);
  border-color:color-mix(in srgb,var(--social-icon-hover,#fff) 36%,transparent);
  transform:translateY(-3px);
  box-shadow:0 15px 32px color-mix(in srgb,var(--social-bg-hover,#ff6b1a) 28%,transparent),inset 0 1px 0 rgba(255,255,255,.18);
}
.footer-social-link:focus-visible{outline:2px solid var(--social-bg-hover,#ff6b1a);outline-offset:3px}
@media(max-width:680px){.footer-socials{margin-top:20px}.footer-social-link{width:40px;height:40px;flex-basis:40px}}
@media(prefers-reduced-motion:reduce){.footer-social-link{transition:none}.footer-social-link:hover,.footer-social-link:focus-visible{transform:none}}


/* === V45: contatos clicáveis na barra superior === */
.topbar-contact-links a{
  color:inherit;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  min-height:30px;
  transition:color .2s ease,opacity .2s ease,transform .2s ease;
}
.topbar-contact-links a:hover,.topbar-contact-links a:focus-visible{
  color:var(--brand,#ff6b1a);
  opacity:1;
  transform:translateY(-1px);
}
.topbar-contact-links a:focus-visible{outline:2px solid currentColor;outline-offset:3px;border-radius:4px}
@media (prefers-reduced-motion: reduce){.topbar-contact-links a{transition:none}.topbar-contact-links a:hover{transform:none}}
