:root{
  --wf-brand:#0033A5;--wf-brand2:#0057ff;--wf-brand3:#001f72;
  --wf-green:#16a34a;--wf-green2:#22c55e;--wf-ink:#0f172a;--wf-muted:#64748b;
  --wf-bg:#f5f8fd;--wf-soft:#eef4ff;--wf-line:#dce8f8;--wf-white:#fff;
  --wf-radius:22px;--wf-radius-lg:30px;
  --wf-shadow:0 18px 48px rgba(15,23,42,.10);--wf-shadow-sm:0 8px 24px rgba(15,23,42,.07)
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;background:var(--wf-bg);color:var(--wf-ink);overflow-x:hidden}
a{text-decoration:none;color:inherit}button,input{font:inherit}.wf-container{width:min(1180px,92vw);margin-inline:auto}.wf-section{padding:82px 0}.wf-section--white{background:#fff}.wf-section-head{text-align:center;max-width:720px;margin:0 auto 44px}.wf-section-head h2,.wf-coverage h2,.wf-portal-copy h2,.wf-contact h2{font-size:clamp(2rem,3.4vw,3rem);line-height:1.02;letter-spacing:-.06em;font-weight:900;margin:8px 0 12px}.wf-section-head p,.wf-coverage p,.wf-portal-copy p,.wf-contact p{color:var(--wf-muted);line-height:1.7;font-size:15px}.wf-eyebrow{display:inline-flex;align-items:center;gap:8px;text-transform:uppercase;letter-spacing:.1em;font-size:11px;font-weight:900;color:var(--wf-brand);background:var(--wf-soft);border:1px solid #cbdaf4;padding:6px 12px;border-radius:999px}.wf-pill{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:7px 12px;font-size:12px;font-weight:800;background:var(--wf-soft);color:var(--wf-brand);border:1px solid #cbdaf4}.wf-pill--light{background:rgba(255,255,255,.14);color:#fff;border-color:rgba(255,255,255,.22)}.wf-dot{width:8px;height:8px;border-radius:99px;background:var(--wf-brand2);display:inline-block}.wf-dot--green{background:#4ade80;box-shadow:0 0 14px rgba(74,222,128,.9);animation:wfPulse 1.7s infinite}@keyframes wfPulse{50%{opacity:.45;transform:scale(.85)}}
.wf-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:14px;min-height:44px;padding:0 18px;font-weight:850;font-size:14px;cursor:pointer;transition:.18s ease;white-space:nowrap}.wf-btn:hover{transform:translateY(-1px)}.wf-btn:active{transform:scale(.98)}.wf-btn--lg{min-height:52px;padding:0 26px;font-size:15px;border-radius:16px}.wf-btn--full{width:100%}.wf-btn--primary{background:linear-gradient(135deg,var(--wf-brand),var(--wf-brand2));color:#fff;box-shadow:0 12px 28px rgba(0,51,165,.26)}.wf-btn--white{background:#fff;color:var(--wf-brand);box-shadow:0 14px 30px rgba(0,0,0,.16)}.wf-btn--ghost{background:rgba(255,255,255,.12);border:1.5px solid rgba(255,255,255,.25);color:#fff}.wf-btn--outline{background:#fff;color:var(--wf-brand);border:1.5px solid #cbdaf4}.wf-btn--soft{background:var(--wf-soft);color:var(--wf-brand);border:1.5px solid #cbdaf4}.wf-btn--wa{background:linear-gradient(135deg,var(--wf-green),var(--wf-green2));color:#fff;box-shadow:0 10px 26px rgba(34,197,94,.26)}
.wf-nav{position:sticky;top:0;z-index:80;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border-bottom:1px solid var(--wf-line)}.wf-nav__in{height:68px;display:flex;align-items:center;justify-content:space-between;gap:16px}.wf-logo{display:flex;align-items:center;gap:10px;font-weight:900;color:var(--wf-brand);letter-spacing:-.03em}.wf-logo__mark{width:40px;height:40px;border-radius:14px;background:linear-gradient(135deg,var(--wf-brand),var(--wf-brand2));color:#fff;display:grid;place-items:center;box-shadow:0 8px 24px rgba(0,51,165,.22)}.wf-nav__links{display:flex;gap:24px;font-size:13px;font-weight:800;color:#475569}.wf-nav__links a:hover{color:var(--wf-brand)}.wf-nav__actions{display:flex;align-items:center;gap:10px}.wf-burger{display:none;width:42px;height:42px;border:0;border-radius:13px;background:var(--wf-soft);color:var(--wf-brand);font-size:20px;cursor:pointer}.wf-drawer{position:fixed;inset:0;background:rgba(15,23,42,.55);z-index:120;display:none}.wf-drawer.is-open{display:block}.wf-drawer__panel{margin-left:auto;width:min(310px,86vw);height:100%;background:#fff;padding:20px;box-shadow:-18px 0 50px rgba(0,0,0,.20);display:flex;flex-direction:column;gap:6px}.wf-drawer__panel a{padding:13px 14px;border-radius:13px;font-weight:800}.wf-drawer__panel a:hover{background:var(--wf-bg);color:var(--wf-brand)}.wf-drawer__close{align-self:flex-end;border:0;background:var(--wf-bg);width:40px;height:40px;border-radius:13px;font-size:24px;cursor:pointer}.wf-drawer__portal{color:var(--wf-brand)!important;background:var(--wf-soft)}
.wf-hero{position:relative;overflow:hidden;background:linear-gradient(145deg,var(--wf-brand3),var(--wf-brand) 55%,#0066ff);padding:78px 0 88px}.wf-hero__bg{position:absolute;inset:0;background:radial-gradient(circle at 78% 20%,rgba(255,255,255,.20),transparent 34%),radial-gradient(circle at 18% 70%,rgba(34,197,94,.22),transparent 30%);opacity:.9}.wf-hero__grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) 420px;align-items:center;gap:56px}.wf-hero-slider{min-height:245px;position:relative}.wf-hero-slide{position:absolute;inset:0;opacity:0;transform:translateY(16px);transition:.55s ease}.wf-hero-slide.is-active{opacity:1;transform:translateY(0);position:relative}.wf-hero h1{font-size:clamp(2.45rem,4.7vw,4.8rem);line-height:.94;letter-spacing:-.078em;color:#fff;font-weight:950;margin:20px 0}.wf-hero p{max-width:610px;color:rgba(255,255,255,.86);line-height:1.7;font-size:clamp(.98rem,1.35vw,1.12rem)}.wf-hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0 34px}.wf-hero__stats{display:flex;gap:26px;flex-wrap:wrap}.wf-hero__stats b{display:block;color:#fff;font-size:22px;font-weight:950;letter-spacing:-.04em}.wf-hero__stats span{display:block;color:rgba(255,255,255,.68);font-size:12px;font-weight:700;margin-top:2px}.wf-device-card{background:#fff;border-radius:32px;padding:26px;box-shadow:0 30px 80px rgba(0,0,0,.24);border:1px solid rgba(255,255,255,.4)}.wf-device-card__top{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;font-size:13px;font-weight:900}.wf-device-card__top b{display:flex;align-items:center;gap:7px;color:var(--wf-green);font-size:12px}.wf-speed strong{font-size:74px;line-height:.9;color:var(--wf-brand);font-weight:950;letter-spacing:-.08em}.wf-speed span{font-weight:900;color:var(--wf-muted);font-size:20px}.wf-speedbar{height:7px;background:#ecf2fb;border-radius:999px;overflow:hidden;margin:18px 0}.wf-speedbar i{display:block;height:100%;width:0;border-radius:999px;background:linear-gradient(90deg,var(--wf-brand),var(--wf-brand2));animation:wfSpeed 1.6s ease forwards}@keyframes wfSpeed{to{width:88%}}.wf-chip-row{display:flex;gap:8px;flex-wrap:wrap}.wf-chip-row span{font-size:11px;font-weight:850;background:var(--wf-soft);color:var(--wf-brand);border:1px solid #d2dff5;border-radius:999px;padding:6px 10px}.wf-mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;border-top:1px solid var(--wf-line);margin-top:20px;padding-top:18px;text-align:center}.wf-mini-grid b{display:block;font-size:16px;font-weight:950}.wf-mini-grid span{display:block;font-size:10px;text-transform:uppercase;color:var(--wf-muted);font-weight:850;margin-top:3px}
.wf-plan-tabs{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-bottom:24px}.wf-plan-tabs button{border:1.5px solid #cbdaf4;background:#fff;color:var(--wf-brand);font-weight:900;border-radius:999px;padding:10px 16px;cursor:pointer}.wf-plan-tabs button.is-active{background:linear-gradient(135deg,var(--wf-brand),var(--wf-brand2));color:#fff;border-color:transparent;box-shadow:0 10px 24px rgba(0,51,165,.22)}.wf-plans-shell{position:relative}.wf-plans-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 40px)/3);gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:6px 2px 20px}.wf-plans-track::-webkit-scrollbar{display:none}.wf-plan{position:relative;scroll-snap-align:start;background:#fff;border:1.5px solid var(--wf-line);border-radius:28px;padding:28px;box-shadow:var(--wf-shadow-sm);transition:.2s ease;min-height:540px;display:flex;flex-direction:column}.wf-plan:hover{transform:translateY(-4px);box-shadow:var(--wf-shadow);border-color:#cbdaf4}.wf-plan.is-featured{border-color:var(--wf-brand);box-shadow:0 0 0 1px rgba(0,51,165,.12),0 22px 54px rgba(0,51,165,.13)}.wf-plan__badge{position:absolute;top:18px;right:18px;border-radius:999px;background:linear-gradient(135deg,var(--wf-brand),var(--wf-brand2));color:#fff;font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.07em;padding:5px 10px}.wf-plan__type{color:var(--wf-muted);font-size:11px;font-weight:950;text-transform:uppercase;letter-spacing:.09em}.wf-plan h3{font-size:21px;font-weight:950;letter-spacing:-.04em;margin:9px 0 8px}.wf-plan__speed{display:flex;align-items:baseline;gap:4px}.wf-plan__speed strong{font-size:56px;line-height:1;color:var(--wf-brand);font-weight:950;letter-spacing:-.08em}.wf-plan__speed span{font-weight:900;color:var(--wf-muted)}.wf-plan__detail{font-size:13px;color:var(--wf-muted);line-height:1.55;margin:14px 0;border-bottom:1px solid var(--wf-line);padding-bottom:18px}.wf-plan__price{display:flex;align-items:baseline;gap:4px;margin-bottom:15px}.wf-plan__price span,.wf-plan__price em{font-size:14px;font-style:normal;color:var(--wf-muted);font-weight:800}.wf-plan__price strong{font-size:40px;font-weight:950;letter-spacing:-.06em}.wf-plan__list{list-style:none;display:flex;flex-direction:column;gap:10px;margin-bottom:22px;flex:1}.wf-plan__list li{display:flex;gap:9px;line-height:1.42;font-size:13px}.wf-plan__list span{width:20px;height:20px;border-radius:7px;background:#effdf4;color:var(--wf-green);display:grid;place-items:center;flex:0 0 auto;font-weight:950}.wf-carousel-btn{position:absolute;top:42%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;border:0;background:#fff;color:var(--wf-brand);box-shadow:var(--wf-shadow-sm);font-size:30px;z-index:3;cursor:pointer}.wf-carousel-btn--prev{left:-18px}.wf-carousel-btn--next{right:-18px}.wf-plan.is-hidden{display:none}
.wf-coverage{display:grid;grid-template-columns:1.1fr .9fr;gap:34px;align-items:center}.wf-zone-list{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}.wf-zone-list span{background:#fff;border:1px solid var(--wf-line);border-radius:999px;padding:8px 12px;color:var(--wf-brand);font-size:12px;font-weight:850}.wf-coverage__form{background:#fff;border:1.5px solid var(--wf-line);box-shadow:var(--wf-shadow-sm);border-radius:30px;padding:28px;display:flex;flex-direction:column;gap:12px}.wf-coverage__form label{font-size:12px;font-weight:950;color:var(--wf-ink)}.wf-coverage__form input{height:48px;border-radius:14px;border:1.5px solid var(--wf-line);padding:0 14px;outline:none}.wf-coverage__form input:focus{border-color:var(--wf-brand);box-shadow:0 0 0 4px rgba(0,51,165,.08)}.wf-coverage__form small{color:var(--wf-muted);line-height:1.5}
.wf-billing-pro{position:relative;overflow:hidden;background:linear-gradient(135deg,#ffffff 0%,#f7faff 55%,#eef4ff 100%);border:1.5px solid #cbdaf4;border-radius:34px;padding:28px 30px 38px;box-shadow:0 28px 75px rgba(0,51,165,.12)}.wf-billing-pro__halo{position:absolute;inset:auto -80px -120px auto;width:330px;height:330px;border-radius:50%;background:radial-gradient(circle,rgba(0,87,255,.18),transparent 68%);pointer-events:none}.wf-billing-pro__top{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:38px;position:relative;z-index:1}.wf-billing-pro__top small{display:block;color:var(--wf-brand);font-weight:950;text-transform:uppercase;letter-spacing:.09em;font-size:11px}.wf-billing-pro__top strong{display:block;font-size:24px;letter-spacing:-.04em}.wf-billing-pro__top span{background:var(--wf-brand);color:#fff;border-radius:999px;padding:9px 14px;font-size:12px;font-weight:950;box-shadow:0 12px 28px rgba(0,51,165,.22)}.wf-timeline{position:relative;display:grid;grid-template-columns:repeat(5,1fr);gap:0;z-index:1;min-height:250px;padding:40px 8px 0}.wf-timeline__bar{position:absolute;left:8%;right:8%;top:76px;height:13px;background:#dce8ff;border-radius:999px;box-shadow:inset 0 1px 3px rgba(0,31,114,.12)}.wf-timeline__bar i{display:block;width:100%;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--wf-brand3),var(--wf-brand),var(--wf-brand2));box-shadow:0 10px 22px rgba(0,51,165,.24);animation:wfLinePulse 3.8s ease-in-out infinite}@keyframes wfLinePulse{0%,100%{filter:saturate(1)}50%{filter:saturate(1.45);transform:scaleY(1.08)}}.wf-timeline__item{position:relative;text-align:center;display:grid;justify-items:center;align-content:start}.wf-timeline__dot{position:relative;z-index:2;width:50px;height:50px;border-radius:50%;border:6px solid #fff;background:linear-gradient(135deg,var(--wf-brand),var(--wf-brand2));box-shadow:0 0 0 3px #bdd0f4,0 14px 24px rgba(0,51,165,.22);display:grid;place-items:center;cursor:pointer;transition:.22s ease}.wf-timeline__dot span{font-size:20px;filter:drop-shadow(0 1px 0 rgba(0,0,0,.08))}.wf-timeline__item:hover .wf-timeline__dot,.wf-timeline__item.is-main .wf-timeline__dot{transform:translateY(-6px) scale(1.08);box-shadow:0 0 0 5px rgba(0,87,255,.14),0 18px 34px rgba(0,51,165,.28)}.wf-timeline__item.is-danger .wf-timeline__dot{background:linear-gradient(135deg,#0f172a,var(--wf-brand3))}.wf-timeline__item.is-danger:before{content:'▼';position:absolute;top:-34px;color:#0f172a;font-size:24px;animation:wfCutArrow 1.4s ease-in-out infinite}.wf-timeline__item.is-danger:after{content:'▲';position:absolute;top:46px;color:#0f172a;font-size:20px;animation:wfCutArrow 1.4s ease-in-out infinite reverse}@keyframes wfCutArrow{50%{transform:translateY(5px);opacity:.55}}.wf-timeline__day{font-size:36px;font-weight:1000;letter-spacing:-.08em;color:var(--wf-ink);margin-top:12px;line-height:1}.wf-timeline__item.is-main .wf-timeline__day{font-size:44px;color:var(--wf-brand)}.wf-timeline__txt{margin-top:9px;max-width:190px}.wf-timeline__txt b{display:block;font-size:12px;color:var(--wf-brand);font-weight:950}.wf-timeline__txt strong{display:block;font-size:15px;font-weight:950;margin-top:2px}.wf-timeline__txt p{display:none;margin-top:8px;font-size:12px;line-height:1.48;color:var(--wf-muted);background:#fff;border:1px solid var(--wf-line);border-radius:16px;padding:12px;box-shadow:var(--wf-shadow-sm)}.wf-timeline__item:hover p,.wf-timeline__item.is-main p{display:block}.wf-flow-card--pro{background:#fff}.wf-flow-card--pro b{color:var(--wf-brand)}
.wf-portal-grid{display:grid;grid-template-columns:380px 1fr;gap:58px;align-items:center}.wf-phone-mock{width:310px;min-height:570px;margin:auto;border-radius:42px;padding:15px;background:#0f172a;box-shadow:0 30px 80px rgba(15,23,42,.23)}.wf-phone-mock__screen{height:540px;border-radius:32px;background:linear-gradient(180deg,#f8fbff,#eef4ff);padding:24px;overflow:hidden}.wf-phone-mock h3{font-size:28px;margin:22px 0 18px;font-weight:950;letter-spacing:-.05em}.wf-status-card,.wf-pay-card{background:#fff;border:1px solid var(--wf-line);border-radius:22px;padding:18px;margin-bottom:14px;box-shadow:var(--wf-shadow-sm)}.wf-status-card b,.wf-pay-card b{display:block}.wf-status-card span,.wf-pay-card span,.wf-pay-card em{display:block;color:var(--wf-muted);font-style:normal;font-size:12px;margin-top:5px}.wf-pay-card b{font-size:34px;color:var(--wf-brand);letter-spacing:-.06em}.wf-phone-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:20px}.wf-phone-actions span{background:#fff;border:1px solid var(--wf-line);border-radius:16px;padding:13px;font-weight:850}.wf-feature-list{display:grid;gap:12px;margin:24px 0}.wf-feature-list div{background:#fff;border:1.5px solid var(--wf-line);border-radius:18px;padding:16px}.wf-feature-list b{display:block;margin-bottom:5px}.wf-feature-list span{display:block;color:var(--wf-muted);font-size:13px;line-height:1.5}.wf-benefits-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.wf-benefits-grid article{background:#fff;border:1.5px solid var(--wf-line);border-radius:24px;padding:24px;box-shadow:var(--wf-shadow-sm)}.wf-benefits-grid i{font-style:normal;font-size:32px}.wf-benefits-grid h3{font-size:16px;margin:14px 0 7px;font-weight:950}.wf-benefits-grid p{font-size:12px;line-height:1.55;color:var(--wf-muted)}.wf-contact{display:grid;grid-template-columns:1fr 380px;gap:32px;align-items:center;background:linear-gradient(135deg,var(--wf-brand3),var(--wf-brand));border-radius:34px;padding:40px;color:#fff}.wf-contact .wf-eyebrow{background:rgba(255,255,255,.14);color:#fff;border-color:rgba(255,255,255,.22)}.wf-contact p{color:rgba(255,255,255,.82)}.wf-contact__box{display:flex;align-items:center;gap:14px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:20px;padding:16px;margin-top:22px;max-width:360px}.wf-contact__box span{font-size:28px}.wf-contact__box b{display:block;font-size:23px}.wf-contact__box small{color:rgba(255,255,255,.72)}.wf-contact__actions{display:flex;flex-direction:column;gap:12px}.wf-footer{background:#fff;border-top:1px solid var(--wf-line);padding:28px 0}.wf-footer__in{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;color:var(--wf-muted);font-size:12px}.wf-logo--footer .wf-logo__mark{width:34px;height:34px;border-radius:11px}.wf-footer a{color:var(--wf-green);font-weight:900}.wf-wa-float{position:fixed;right:22px;bottom:22px;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--wf-green),var(--wf-green2));color:#fff;font-size:25px;box-shadow:0 14px 34px rgba(34,197,94,.42);z-index:70}
@media(max-width:1060px){.wf-hero__grid,.wf-coverage,.wf-portal-grid,.wf-contact{grid-template-columns:1fr}.wf-device-card{max-width:500px}.wf-plans-track{grid-auto-columns:calc((100% - 20px)/2)}.wf-benefits-grid{grid-template-columns:repeat(2,1fr)}.wf-timeline{grid-template-columns:1fr;gap:18px;min-height:auto;padding:10px 0}.wf-timeline__bar{left:25px;right:auto;top:18px;bottom:18px;width:12px;height:auto}.wf-timeline__item{grid-template-columns:62px 54px 1fr;text-align:left;justify-items:start;align-items:center}.wf-timeline__txt{max-width:none;margin-top:0}.wf-timeline__txt p{display:block}.wf-timeline__day,.wf-timeline__item.is-main .wf-timeline__day{font-size:30px;margin-top:0}.wf-timeline__item.is-danger:before,.wf-timeline__item.is-danger:after{display:none}.wf-benefits-grid{grid-template-columns:repeat(2,1fr)}.wf-contact{padding:32px}.wf-phone-mock{width:min(310px,100%)}}
@media(max-width:760px){.wf-section{padding:58px 0}.wf-nav__links,.wf-hide-sm{display:none}.wf-burger{display:grid;place-items:center}.wf-logo__text{font-size:14px}.wf-hero{padding:52px 0 64px}.wf-hero__grid{gap:34px}.wf-hero-slider{min-height:300px}.wf-hero__actions{flex-direction:column}.wf-hero__actions .wf-btn{width:100%}.wf-device-card{border-radius:26px;padding:22px}.wf-speed strong{font-size:62px}.wf-plans-track{grid-auto-columns:86%}.wf-carousel-btn{display:none}.wf-benefits-grid{grid-template-columns:1fr}.wf-billing-pro{padding:22px 16px 26px;border-radius:26px}.wf-billing-pro__top{align-items:flex-start;flex-direction:column;margin-bottom:22px}.wf-billing-pro__top strong{font-size:21px}.wf-timeline__item{grid-template-columns:58px 48px 1fr}.wf-timeline__dot{width:44px;height:44px;border-width:5px}.wf-timeline__day,.wf-timeline__item.is-main .wf-timeline__day{font-size:26px}.wf-flow-card{align-items:stretch;flex-direction:column}.wf-contact{border-radius:26px}.wf-contact__actions{width:100%}.wf-footer__in{justify-content:center;text-align:center;flex-direction:column}.wf-wa-float{right:16px;bottom:16px}}
@media(max-width:460px){.wf-container{width:min(100% - 24px,1180px)}.wf-hero h1{font-size:2.25rem}.wf-section-head h2,.wf-coverage h2,.wf-portal-copy h2,.wf-contact h2{font-size:2rem}.wf-plans-track{grid-auto-columns:92%}.wf-plan{padding:22px}.wf-coverage__form{padding:22px}.wf-phone-mock{min-height:auto}.wf-phone-mock__screen{height:auto;min-height:500px}.wf-nav__actions .wf-btn--wa{padding:0 12px;font-size:12px}}










/* =========================================================
   WIFICOR PERU — EFECTOS PRO EXTRA
   AGREGAR AL FINAL DE home.css
========================================================= */

/* =========================================
   GLASS EFFECT GLOBAL
========================================= */
.wf-glass{
  background:rgba(255,255,255,.72);
  backdrop-filter:blur(16px);
  border:1px solid rgba(255,255,255,.32);
  box-shadow:0 18px 40px rgba(15,23,42,.08);
}

/* =========================================
   HERO GLOW
========================================= */
.wf-hero:before{
  content:'';
  position:absolute;
  top:-180px;
  left:-120px;
  width:420px;
  height:420px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,255,255,.16),transparent 70%);
  animation:wfGlowMove 7s ease-in-out infinite;
  pointer-events:none;
}

@keyframes wfGlowMove{
  0%,100%{
    transform:translateY(0px) scale(1);
  }
  50%{
    transform:translateY(20px) scale(1.08);
  }
}

/* =========================================
   HERO FLOAT ICONS
========================================= */
.wf-floating-icons{
  position:absolute;
  inset:0;
  pointer-events:none;
  overflow:hidden;
}

.wf-floating-icons span{
  position:absolute;
  width:54px;
  height:54px;
  border-radius:18px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.14);
  backdrop-filter:blur(10px);
  display:grid;
  place-items:center;
  color:#fff;
  font-size:24px;
  animation:wfFloat 6s ease-in-out infinite;
}

.wf-floating-icons span:nth-child(1){
  top:18%;
  left:8%;
}

.wf-floating-icons span:nth-child(2){
  top:22%;
  right:12%;
  animation-delay:1s;
}

.wf-floating-icons span:nth-child(3){
  bottom:16%;
  left:12%;
  animation-delay:2s;
}

.wf-floating-icons span:nth-child(4){
  bottom:10%;
  right:18%;
  animation-delay:3s;
}

@keyframes wfFloat{
  0%,100%{
    transform:translateY(0px);
  }
  50%{
    transform:translateY(-14px);
  }
}

/* =========================================
   PLAN HOVER PREMIUM
========================================= */
.wf-plan{
  overflow:hidden;
}

.wf-plan:before{
  content:'';
  position:absolute;
  inset:-2px;
  background:linear-gradient(
    135deg,
    rgba(255,255,255,0),
    rgba(255,255,255,.24),
    rgba(255,255,255,0)
  );
  transform:translateX(-120%);
  transition:1s;
}

.wf-plan:hover:before{
  transform:translateX(120%);
}

/* =========================================
   PLAN BORDER GLOW
========================================= */
.wf-plan.is-featured{
  position:relative;
}

.wf-plan.is-featured:after{
  content:'';
  position:absolute;
  inset:-1px;
  border-radius:inherit;
  padding:1px;
  background:linear-gradient(
    135deg,
    rgba(0,87,255,.5),
    rgba(0,51,165,.1),
    rgba(0,87,255,.5)
  );
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  pointer-events:none;
}

/* =========================================
   BUTTON GLOW
========================================= */
.wf-btn--primary,
.wf-btn--wa{
  position:relative;
  overflow:hidden;
}

.wf-btn--primary:before,
.wf-btn--wa:before{
  content:'';
  position:absolute;
  top:0;
  left:-120%;
  width:100%;
  height:100%;
  background:linear-gradient(
    90deg,
    transparent,
    rgba(255,255,255,.34),
    transparent
  );
  transition:.7s;
}

.wf-btn--primary:hover:before,
.wf-btn--wa:hover:before{
  left:120%;
}

/* =========================================
   TIMELINE ACTIVE PULSE
========================================= */
.wf-timeline__item.is-main .wf-timeline__dot{
  animation:wfMainPulse 2.4s infinite;
}

@keyframes wfMainPulse{
  0%,100%{
    box-shadow:
      0 0 0 5px rgba(0,87,255,.12),
      0 18px 34px rgba(0,51,165,.28);
  }

  50%{
    box-shadow:
      0 0 0 12px rgba(0,87,255,.06),
      0 22px 40px rgba(0,51,165,.34);
  }
}

/* =========================================
   COVERAGE CARD PRO
========================================= */
.wf-coverage__form{
  position:relative;
  overflow:hidden;
}

.wf-coverage__form:before{
  content:'';
  position:absolute;
  top:-100px;
  right:-100px;
  width:240px;
  height:240px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(0,87,255,.12),transparent 72%);
}

/* =========================================
   PORTAL PHONE SHADOW
========================================= */
.wf-phone-mock{
  position:relative;
}

.wf-phone-mock:before{
  content:'';
  position:absolute;
  inset:auto 12% -30px 12%;
  height:30px;
  background:rgba(15,23,42,.22);
  filter:blur(18px);
  border-radius:50%;
  z-index:-1;
}

/* =========================================
   STATUS LIVE
========================================= */
.wf-live{
  display:inline-flex;
  align-items:center;
  gap:8px;
  background:#effdf4;
  border:1px solid #bbf7d0;
  color:#15803d;
  border-radius:999px;
  padding:7px 12px;
  font-size:12px;
  font-weight:900;
}

.wf-live:before{
  content:'';
  width:8px;
  height:8px;
  border-radius:50%;
  background:#22c55e;
  box-shadow:0 0 12px #22c55e;
  animation:wfLivePulse 1.5s infinite;
}

@keyframes wfLivePulse{
  50%{
    opacity:.45;
    transform:scale(.75);
  }
}

/* =========================================
   SCROLL REVEAL
========================================= */
.wf-reveal{
  opacity:0;
  transform:translateY(40px);
  transition:1s cubic-bezier(.22,1,.36,1);
}

.wf-reveal.is-visible{
  opacity:1;
  transform:none;
}

/* =========================================
   PREMIUM SECTION DIVIDER
========================================= */
.wf-divider{
  width:100%;
  height:1px;
  background:linear-gradient(
    90deg,
    transparent,
    rgba(0,51,165,.18),
    transparent
  );
  margin:80px 0;
}

/* =========================================
   MOBILE ENHANCEMENTS
========================================= */
@media(max-width:760px){

  .wf-plan{
    border-radius:24px;
  }

  .wf-btn{
    min-height:48px;
  }

  .wf-device-card{
    box-shadow:
      0 20px 60px rgba(0,0,0,.22),
      0 8px 24px rgba(0,51,165,.14);
  }

  .wf-timeline__txt p{
    font-size:11px;
  }

  .wf-contact{
    position:relative;
    overflow:hidden;
  }

  .wf-contact:before{
    content:'';
    position:absolute;
    inset:auto -60px -100px auto;
    width:220px;
    height:220px;
    border-radius:50%;
    background:radial-gradient(circle,rgba(255,255,255,.14),transparent 70%);
  }
}











/* =========================================================
   WIFICOR — BARRA AZUL AVANZANDO SUAVE
   La animación vive en la misma barra, sin efectos encima
========================================================= */

.wf-timeline__bar{
  height:18px !important;
  top:82px !important;
  overflow:hidden !important;
  border-radius:999px !important;

  background:linear-gradient(
    90deg,
    #001f72 0%,
    #0033A5 20%,
    #0057ff 40%,
    #0b7cff 50%,
    #0057ff 60%,
    #0033A5 80%,
    #001f72 100%
  ) !important;

  background-size:220% 100% !important;

  box-shadow:
    inset 0 2px 4px rgba(255,255,255,.20),
    inset 0 -3px 5px rgba(0,31,114,.36),
    0 8px 22px rgba(0,51,165,.28) !important;

  animation:wfBarMoveSmooth 3.2s linear infinite !important;
}

/* anula efectos externos anteriores */
.wf-timeline__bar:before,
.wf-timeline__bar:after{
  display:none !important;
  content:none !important;
}

/* deja el <i> como relleno interno normal, no encima */
.wf-timeline__bar i{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  border-radius:999px !important;

  background:linear-gradient(
    90deg,
    rgba(255,255,255,.05),
    rgba(255,255,255,.18),
    rgba(255,255,255,.05)
  ) !important;

  background-size:160% 100% !important;
  animation:wfBarInnerMove 3.2s linear infinite !important;
  opacity:.45 !important;
}

@keyframes wfBarMoveSmooth{
  0%{
    background-position:220% 50%;
  }
  100%{
    background-position:0% 50%;
  }
}

@keyframes wfBarInnerMove{
  0%{
    background-position:160% 50%;
  }
  100%{
    background-position:0% 50%;
  }
}










/* Transición suave al rotar el plan en el hero card */
.wf-device-card--pricing {
  transition: opacity .25s ease;
}
.wf-device-card--pricing.is-switching {
  opacity: 0;
}





