:root{--ink:#04161c;--deep:#0a2a33;--slate:#123b46;--glow:#0f8;--glow-text:#00c46a;--beam:#5bc8fa;--paper:#eef4f2;--paper-2:#e2ebe8;--muted:#7fa0a6;--muted-dark:#4a6a70;--display:"Bricolage Grotesque", sans-serif;--body:"Instrument Sans", sans-serif;--data:"Martian Mono", monospace}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--body);background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;overflow-x:hidden}.wrap{max-width:1180px;margin:0 auto;padding:0 28px}:focus-visible{outline:2px solid var(--glow);outline-offset:2px}nav{z-index:100;backdrop-filter:blur(14px);background:#04161cd1;border-bottom:1px solid #00ff8824;padding:18px 0;position:fixed;top:0;left:0;right:0}nav .wrap{justify-content:space-between;align-items:center;gap:24px;display:flex}.brand{align-items:center;gap:11px;text-decoration:none;display:flex}.brand-mark{flex-shrink:0;width:auto;height:24px;display:block}.brand-name{font-family:var(--display);color:var(--paper);letter-spacing:-.02em;font-size:19px;font-weight:800}.brand-name em{color:var(--glow);font-style:normal}.nav-links{align-items:center;gap:30px;display:flex}.nav-links a{color:var(--muted);font-size:14.5px;font-weight:500;text-decoration:none;transition:color .2s}.nav-links a:hover{color:var(--paper)}.nav-cta{background:var(--glow);border-radius:2px;padding:9px 18px;font-size:14px;font-weight:600;transition:transform .2s,box-shadow .2s;color:var(--ink)!important}.nav-cta:hover{transform:translateY(-1px);box-shadow:0 6px 22px #00ff884d}.burger{cursor:pointer;background:0 0;border:0;padding:6px;display:none}.burger span{background:var(--paper);width:22px;height:2px;margin:4px 0;display:block}header{background:var(--ink);padding:150px 0 0;position:relative;overflow:hidden}header:after{content:"";pointer-events:none;background:radial-gradient(70% 50% at 15% 30%,#00ff8817,#0000 65%),radial-gradient(60% 45% at 85% 65%,#5bc8fa12,#0000 65%);position:absolute;inset:0}.hero-grid{z-index:2;grid-template-columns:1.05fr .95fr;align-items:center;gap:56px;display:grid;position:relative}.eyebrow{font-family:var(--data);letter-spacing:.16em;text-transform:uppercase;color:var(--glow);align-items:center;gap:10px;margin-bottom:26px;font-size:10.5px;font-weight:600;display:flex}.eyebrow:before{content:"";background:var(--glow);width:26px;height:1px}h1{font-family:var(--display);letter-spacing:-.035em;color:var(--paper);margin-bottom:24px;font-size:clamp(46px,6.6vw,80px);font-weight:800;line-height:.94}h1 .lit{color:var(--glow);text-shadow:0 0 34px #00ff8873;display:inline-block}.hero-sub{color:var(--muted);max-width:440px;margin-bottom:36px;font-size:17.5px;line-height:1.62}.checker{max-width:470px}.checker-label{font-family:var(--data);letter-spacing:.13em;text-transform:uppercase;color:var(--muted-dark);margin-bottom:10px;font-size:10px}.checker-row{gap:9px;display:flex}.checker select{background:var(--deep);border:1px solid var(--slate);color:var(--paper);font-family:var(--body);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='7' viewBox='0 0 11 7'%3E%3Cpath d='M1 1l4.5 4.5L10 1' stroke='%237FA0A6' stroke-width='1.6' fill='none'/%3E%3C/svg%3E");background-position:right 15px center;background-repeat:no-repeat;border-radius:2px;flex:1;padding:14px 15px;font-size:15px}.checker select:focus{outline:2px solid var(--glow);outline-offset:1px}.checker button{background:var(--glow);color:var(--ink);font-family:var(--body);cursor:pointer;white-space:nowrap;border:0;border-radius:2px;padding:14px 24px;font-size:15px;font-weight:600;transition:transform .2s,box-shadow .2s}.checker button:hover{transform:translateY(-1px);box-shadow:0 6px 22px #00ff8852}.checker-result{border-left:2px solid var(--glow);color:var(--paper);background:#00ff8812;border-radius:2px;margin-top:16px;padding:15px 17px;font-size:14.5px;line-height:1.5;display:none}.checker-result.no{border-left-color:var(--beam);background:#5bc8fa12}.checker-result.show{animation:.4s fade;display:block}.checker-result strong{color:var(--glow)}.checker-result.no strong{color:var(--beam)}@keyframes fade{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}.splitter-panel{padding:10px 0;position:relative}.splitter-cap{font-family:var(--data);letter-spacing:.13em;text-transform:uppercase;color:var(--muted-dark);text-align:right;margin-top:14px;font-size:9.5px}#splitter{width:100%;height:auto;display:block;overflow:visible}.fib{fill:none;stroke:var(--slate);stroke-width:1.4px}.node-ring{fill:none;stroke:var(--slate);stroke-width:1.3px}.node-core{fill:var(--deep)}.node-lbl{fill:var(--muted-dark);letter-spacing:.06em;font-family:Martian Mono,monospace;font-size:8.5px}.pulse{fill:none;stroke:var(--glow);stroke-width:1.8px;stroke-linecap:round;filter:drop-shadow(0 0 5px #00ff88d9);stroke-dasharray:26 999;stroke-dashoffset:26px}.olt-box{fill:var(--deep);stroke:var(--glow);stroke-width:1.4px}.olt-t{fill:var(--glow);letter-spacing:.08em;font-family:Martian Mono,monospace;font-size:9px}.strip{z-index:2;border-top:1px solid #7fa0a629;grid-template-columns:repeat(4,1fr);margin-top:80px;display:grid;position:relative}.strip div{border-right:1px solid #7fa0a629;padding:26px 22px 30px}.strip div:last-child{border-right:0}.strip b{font-family:var(--display);color:var(--paper);letter-spacing:-.03em;font-size:30px;font-weight:800;line-height:1;display:block}.strip b i{color:var(--glow);font-style:normal}.strip span{font-family:var(--data);letter-spacing:.11em;text-transform:uppercase;color:var(--muted-dark);margin-top:9px;font-size:9.5px;display:block}section{padding:104px 0}.sec-head{max-width:640px;margin-bottom:52px}.sec-tag{font-family:var(--data);letter-spacing:.16em;text-transform:uppercase;color:var(--muted-dark);align-items:center;gap:10px;margin-bottom:14px;font-size:10px;font-weight:600;display:flex}.sec-tag:before{content:"";background:currentColor;width:20px;height:1px}h2{font-family:var(--display);letter-spacing:-.032em;margin-bottom:16px;font-size:clamp(31px,4.1vw,47px);font-weight:800;line-height:1.03}.sec-head p{color:var(--muted-dark);font-size:16.5px;line-height:1.62}.tabs{flex-wrap:wrap;gap:5px;margin-bottom:34px;display:flex}.tab{cursor:pointer;font-family:var(--body);color:var(--muted-dark);background:0 0;border:1px solid #123b4633;border-radius:2px;padding:9px 19px;font-size:14px;font-weight:500;transition:all .2s}.tab:hover{border-color:var(--slate);color:var(--ink)}.tab.on{background:var(--ink);border-color:var(--ink);color:var(--paper)}.planos{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.plano{background:#fff;border:1px solid #123b461c;border-radius:3px;flex-direction:column;padding:28px 26px 26px;transition:transform .22s,box-shadow .22s,border-color .22s;display:flex}.plano:hover{border-color:#00ff8880;transform:translateY(-3px);box-shadow:0 14px 40px #04161c17}.plano.destaque{background:var(--ink);border-color:var(--ink)}.plano-tipo{font-family:var(--data);letter-spacing:.13em;text-transform:uppercase;color:var(--muted-dark);margin-bottom:16px;font-size:9.5px}.plano.destaque .plano-tipo{color:var(--glow)}.plano h3{font-family:var(--display);letter-spacing:-.02em;margin-bottom:20px;font-size:22px;font-weight:600;line-height:1.15}.plano.destaque h3{color:var(--paper)}.speeds{border-top:1px solid #123b461a;border-bottom:1px solid #123b461a;gap:22px;margin-bottom:20px;padding:16px 0;display:flex}.plano.destaque .speeds{border-color:#7fa0a633}.spd b{font-family:var(--data);color:var(--ink);letter-spacing:-.02em;font-size:16px;font-weight:600;display:block}.plano.destaque .spd b{color:var(--paper)}.spd span{font-family:var(--data);letter-spacing:.09em;text-transform:uppercase;color:var(--muted-dark);margin-top:5px;font-size:9px;display:block}.spd.down b:after{content:" ↓";color:var(--glow-text)}.plano.destaque .spd.down b:after{color:var(--glow)}.spd.up b:after{content:" ↑";color:var(--beam)}.preco{margin-bottom:6px}.preco b{font-family:var(--display);letter-spacing:-.035em;color:var(--ink);font-size:29px;font-weight:800}.plano.destaque .preco b{color:var(--glow)}.preco span{color:var(--muted-dark);margin-left:3px;font-size:14px}.plano.destaque .preco span{color:var(--muted)}.iva{color:var(--muted-dark);margin-bottom:22px;font-size:12.5px}.plano.destaque .iva{color:var(--muted-dark)}.plano a{text-align:center;border:1px solid var(--ink);color:var(--ink);border-radius:2px;margin-top:auto;padding:12px;font-size:14.5px;font-weight:600;text-decoration:none;transition:all .2s;display:block}.plano a:hover{background:var(--ink);color:var(--paper)}.plano.destaque a{background:var(--glow);border-color:var(--glow);color:var(--ink)}.plano.destaque a:hover{color:var(--glow);background:0 0}.adesao{background:var(--paper-2);border-radius:3px;flex-wrap:wrap;align-items:center;gap:40px;margin-top:26px;padding:22px 26px;display:flex}.adesao>p{font-family:var(--data);letter-spacing:.12em;text-transform:uppercase;color:var(--muted-dark);font-size:9.5px}.adesao ul{flex-wrap:wrap;gap:36px;list-style:none;display:flex}.adesao li{font-size:14.5px}.adesao li b{font-family:var(--data);margin-top:3px;font-size:14px;font-weight:600;display:block}.cobertura{background:var(--ink);color:var(--paper)}.cobertura h2{color:var(--paper)}.cobertura .sec-head p{color:var(--muted)}.cobertura .sec-tag{color:var(--glow)}.zonas{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.zona{border:1px solid #7fa0a62e;border-radius:2px;padding:20px 20px 18px;transition:border-color .22s,background .22s}.zona:hover{background:#00ff880a;border-color:#00ff8873}.zona h4{font-family:var(--display);margin-bottom:11px;font-size:17px;font-weight:600}.zona .st{font-family:var(--data);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:7px;font-size:9.5px;display:flex}.dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.on .dot{background:var(--glow);box-shadow:0 0 8px var(--glow)}.on{color:var(--glow)}.soon .dot{background:var(--beam)}.soon{color:var(--beam)}.bar{background:#7fa0a62e;height:2px;margin-top:14px;position:relative;overflow:hidden}.bar i{background:var(--glow);width:0;transition:width 1.1s cubic-bezier(.22,1,.36,1);position:absolute;top:0;bottom:0;left:0}.soon-bar i{background:var(--beam)}.bar-lbl{font-family:var(--data);color:var(--muted-dark);letter-spacing:.06em;margin-top:8px;font-size:9px}.etapas{grid-template-columns:repeat(4,1fr);gap:0;display:grid}.etapa{padding:0 26px 0 0;position:relative}.etapa:before{content:"";background:#123b4626;height:1px;position:absolute;top:13px;left:0;right:26px}.etapa:last-child:before{right:0}.etapa-n{background:var(--ink);width:26px;height:26px;color:var(--glow);font-family:var(--data);z-index:2;border-radius:50%;justify-content:center;align-items:center;margin-bottom:20px;font-size:10px;font-weight:600;display:flex;position:relative}.etapa h4{font-family:var(--display);letter-spacing:-.015em;margin-bottom:9px;font-size:19px;font-weight:600}.etapa p{color:var(--muted-dark);padding-right:14px;font-size:14.5px;line-height:1.6}.suporte{background:var(--paper-2)}.contactos{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;display:grid}.contacto{background:#fff;border:1px solid #123b4617;border-radius:3px;padding:28px 26px}.contacto .ic{font-family:var(--data);letter-spacing:.13em;text-transform:uppercase;color:var(--muted-dark);margin-bottom:14px;font-size:9.5px}.contacto h4{font-family:var(--display);margin-bottom:8px;font-size:20px;font-weight:600}.contacto p{color:var(--muted-dark);margin-bottom:16px;font-size:14.5px;line-height:1.6}.contacto a{font-family:var(--data);color:var(--ink);border-bottom:1px solid var(--glow);padding-bottom:2px;font-size:13px;text-decoration:none}.contacto a:hover{color:var(--muted-dark)}.cta-band{background:var(--ink);padding:88px 0;position:relative;overflow:hidden}.cta-band:after{content:"";background:radial-gradient(50% 70% at 50% 100%,#00ff881c,#0000 70%);position:absolute;inset:0}.cta-in{z-index:2;text-align:center;max-width:640px;margin:0 auto;position:relative}.cta-in h2{color:var(--paper);margin-bottom:18px}.cta-in p{color:var(--muted);margin-bottom:32px;font-size:17px;line-height:1.6}.btns{flex-wrap:wrap;justify-content:center;gap:11px;display:flex}.btn-p{background:var(--glow);color:var(--ink);border-radius:2px;padding:14px 30px;font-size:15.5px;font-weight:600;text-decoration:none;transition:transform .2s,box-shadow .2s}.btn-p:hover{transform:translateY(-2px);box-shadow:0 8px 26px #00ff8852}.btn-s{color:var(--paper);border:1px solid #7fa0a659;border-radius:2px;padding:14px 30px;font-size:15.5px;font-weight:500;text-decoration:none;transition:all .2s}.btn-s:hover{border-color:var(--paper)}footer{background:var(--ink);border-top:1px solid #7fa0a624;padding:52px 0 34px}.f-grid{grid-template-columns:1.6fr 1fr 1fr 1fr;gap:38px;margin-bottom:40px;display:grid}.f-grid p{color:var(--muted-dark);max-width:270px;margin-top:14px;font-size:14px;line-height:1.65}.f-col h5{font-family:var(--data);letter-spacing:.13em;text-transform:uppercase;color:var(--muted-dark);margin-bottom:15px;font-size:9.5px}.f-col a{color:var(--muted);margin-bottom:9px;font-size:14.5px;text-decoration:none;display:block}.f-col a:hover{color:var(--glow)}.f-base{color:var(--muted-dark);border-top:1px solid #7fa0a624;flex-wrap:wrap;justify-content:space-between;gap:16px;padding-top:24px;font-size:13px;display:flex}.f-base .made{font-family:var(--data);font-size:11px}.rv{opacity:0;transition:opacity .65s,transform .65s cubic-bezier(.22,1,.36,1);transform:translateY(18px)}.rv.in{opacity:1;transform:none}@media (width<=960px){.hero-grid{grid-template-columns:1fr;gap:44px}.splitter-panel{order:-1}.planos,.zonas,.etapas,.contactos,.strip{grid-template-columns:repeat(2,1fr)}.strip div:nth-child(2){border-right:0}.etapa:before{display:none}.f-grid{grid-template-columns:1fr 1fr;gap:30px}}@media (width<=640px){.nav-links{background:var(--ink);border-bottom:1px solid #00ff8824;flex-direction:column;gap:0;padding:12px 28px 22px;display:none;position:fixed;top:63px;left:0;right:0}.nav-links.open{display:flex}.nav-links a{width:100%;padding:12px 0}.nav-cta{text-align:center;margin-top:8px}.burger{display:block}header{padding:112px 0 0}section{padding:72px 0}.planos,.zonas,.contactos,.strip{grid-template-columns:1fr}.etapas{grid-template-columns:1fr;gap:30px}.strip div{border-bottom:1px solid #7fa0a629;border-right:0}.checker-row{flex-direction:column}.adesao ul{gap:22px}.f-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation:none!important}.rv{opacity:1;transform:none}.bar i{transition:none}}
