/* Fiber Link Broadband unified visual system — 2026-08-23 */
:root{
  --fl-ink:#0b1730;
  --fl-ink-2:#13213d;
  --fl-blue:#0b63ce;
  --fl-blue-2:#135ee8;
  --fl-blue-soft:#eaf3ff;
  --fl-gold:#f4b429;
  --fl-gold-2:#ffca43;
  --fl-green:#16a36a;
  --fl-bg:#f6f8fc;
  --fl-surface:#ffffff;
  --fl-muted:#667085;
  --fl-line:#e5eaf2;
  --fl-shadow:0 16px 45px rgba(11,23,48,.10);
  --fl-radius:18px;
}

html{scroll-behavior:smooth;scroll-padding-top:104px}
body.fl-redesign-v2{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
body.fl-redesign-v2 *{box-sizing:border-box}
body.fl-redesign-v2 img,body.fl-redesign-v2 video,body.fl-redesign-v2 iframe{max-width:100%}
body.fl-redesign-v2 :focus-visible{outline:3px solid rgba(19,94,232,.32);outline-offset:3px;border-radius:8px}
body.fl-redesign-v2 ::selection{background:#cfe2ff;color:#07152d}

/* Hide previous page-specific announcement/nav strips so every page begins consistently. */
body.fl-redesign-v2>.offer-topbar,
body.fl-redesign-v2>#urgency-bar,
body.fl-redesign-v2>.mini-top,
body.fl-redesign-v2>.local-trends,
body.fl-redesign-v2>.social-ticker{display:none!important}

/* ---------- Unified header ---------- */
.fl-site-header{position:sticky!important;top:0!important;z-index:10050!important;width:100%!important;background:rgba(255,255,255,.96)!important;border-bottom:1px solid rgba(229,234,242,.92)!important;box-shadow:0 7px 24px rgba(11,23,48,.06)!important;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);transition:box-shadow .25s ease,background .25s ease}
.fl-site-header.fl-scrolled{background:rgba(255,255,255,.985)!important;box-shadow:0 12px 34px rgba(11,23,48,.12)!important}
.fl-topline{background:linear-gradient(90deg,#07152d 0%,#0b2b62 50%,#07152d 100%)!important;color:#fff!important;font-size:12.5px!important;line-height:1.4!important}
.fl-topline-inner{max-width:1220px!important;margin:0 auto!important;padding:7px 20px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;text-align:center!important}
.fl-topline-dot{width:7px!important;height:7px!important;border-radius:999px!important;background:#35d08b!important;box-shadow:0 0 0 4px rgba(53,208,139,.16)!important;flex:0 0 auto!important}
.fl-topline a{color:#fff!important;text-decoration:none!important;font-weight:800!important}
.fl-topline a:hover{text-decoration:underline!important;text-underline-offset:3px!important}
.fl-header-main{max-width:1220px!important;margin:0 auto!important;padding:10px 20px!important;min-height:76px!important;display:flex!important;align-items:center!important;gap:22px!important}
.fl-brand{display:inline-flex!important;align-items:center!important;gap:10px!important;text-decoration:none!important;color:var(--fl-ink)!important;min-width:192px!important;flex:0 0 auto!important}
.fl-brand-logo{width:54px!important;height:54px!important;display:block!important;object-fit:contain!important;filter:drop-shadow(0 4px 10px rgba(11,99,206,.12))}
.fl-brand-copy{display:flex!important;flex-direction:column!important;line-height:1!important}
.fl-brand-copy strong{font-size:19px!important;line-height:1.05!important;font-weight:900!important;letter-spacing:-.35px!important;color:var(--fl-ink)!important}
.fl-brand-copy small{font-size:10px!important;line-height:1.2!important;margin-top:5px!important;font-weight:900!important;letter-spacing:1.65px!important;text-transform:uppercase!important;color:var(--fl-blue)!important}
.fl-nav-links{display:flex!important;align-items:center!important;justify-content:center!important;gap:4px!important;margin-left:auto!important}
.fl-nav-links a{position:relative!important;display:inline-flex!important;align-items:center!important;min-height:42px!important;padding:0 10px!important;border-radius:10px!important;text-decoration:none!important;color:#334155!important;font-size:13.5px!important;font-weight:750!important;white-space:nowrap!important;transition:color .2s ease,background .2s ease!important}
.fl-nav-links a:hover,.fl-nav-links a.fl-active{color:var(--fl-blue)!important;background:var(--fl-blue-soft)!important}
.fl-nav-links a.fl-active:after{content:""!important;position:absolute!important;left:11px!important;right:11px!important;bottom:5px!important;height:2px!important;border-radius:999px!important;background:var(--fl-blue)!important}
.fl-location-nav{position:relative!important;display:block!important}
.fl-location-nav>summary{list-style:none!important;position:relative!important;display:inline-flex!important;align-items:center!important;gap:6px!important;min-height:42px!important;padding:0 10px!important;border-radius:10px!important;color:#334155!important;font-size:13.5px!important;font-weight:750!important;white-space:nowrap!important;cursor:pointer!important;transition:color .2s ease,background .2s ease!important}
.fl-location-nav>summary::-webkit-details-marker{display:none!important}
.fl-location-nav>summary:after{content:""!important;width:7px!important;height:7px!important;border-right:2px solid currentColor!important;border-bottom:2px solid currentColor!important;transform:translateY(-2px) rotate(45deg)!important;transition:transform .2s ease!important}
.fl-location-nav[open]>summary,.fl-location-nav>summary:hover,.fl-location-nav.fl-active>summary{color:var(--fl-blue)!important;background:var(--fl-blue-soft)!important}
.fl-location-nav[open]>summary:after{transform:translateY(2px) rotate(225deg)!important}
.fl-location-menu{position:absolute!important;top:calc(100% + 10px)!important;left:50%!important;transform:translateX(-50%)!important;width:min(780px,calc(100vw - 40px))!important;padding:18px!important;background:#fff!important;border:1px solid var(--fl-line)!important;border-radius:18px!important;box-shadow:0 24px 60px rgba(11,23,48,.18)!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;z-index:10100!important}
.fl-location-group{min-width:0!important;padding:12px!important;border-radius:13px!important;background:#f7f9fc!important;border:1px solid #edf1f7!important}
.fl-location-group strong{display:flex!important;align-items:center!important;justify-content:space-between!important;margin:0 3px 7px!important;color:var(--fl-ink)!important;font-size:12px!important;font-weight:900!important;letter-spacing:.2px!important}
.fl-location-group strong span{color:var(--fl-blue)!important;font-size:10px!important;letter-spacing:.65px!important}
.fl-nav-links .fl-location-menu a{display:flex!important;align-items:center!important;justify-content:space-between!important;min-height:34px!important;padding:5px 7px!important;border-radius:8px!important;color:#41506a!important;font-size:12px!important;font-weight:720!important;line-height:1.25!important;white-space:normal!important}
.fl-nav-links .fl-location-menu a:after{content:"\203A"!important;position:static!important;width:auto!important;height:auto!important;background:none!important;color:#94a3b8!important;font-size:16px!important;line-height:1!important}
.fl-nav-links .fl-location-menu a:hover,.fl-nav-links .fl-location-menu a.fl-active{background:#e9f3ff!important;color:var(--fl-blue)!important}
.fl-location-all{grid-column:1/-1!important;display:flex!important;align-items:center!important;justify-content:space-between!important;min-height:42px!important;padding:0 13px!important;border-radius:11px!important;background:linear-gradient(135deg,#0b63ce,#08499d)!important;color:#fff!important;font-size:12.5px!important;font-weight:900!important}
.fl-nav-links .fl-location-menu .fl-location-all:after{display:none!important}
.fl-nav-links .fl-location-menu .fl-location-all:hover{background:linear-gradient(135deg,#135ee8,#073f8a)!important;color:#fff!important}
.fl-header-actions{display:flex!important;align-items:center!important;gap:8px!important;flex:0 0 auto!important}
.fl-header-call,.fl-header-cta{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;min-height:42px!important;border-radius:11px!important;padding:0 13px!important;text-decoration:none!important;font-size:13px!important;font-weight:850!important;white-space:nowrap!important;transition:transform .2s ease,box-shadow .2s ease,background .2s ease!important}
.fl-header-call{color:var(--fl-ink)!important;background:#fff!important;border:1px solid var(--fl-line)!important}
.fl-header-call:hover{background:#f8fbff!important;border-color:#cbdcf5!important;transform:translateY(-1px)!important}
.fl-header-cta{color:#fff!important;background:linear-gradient(135deg,var(--fl-blue-2),#064da9)!important;border:1px solid transparent!important;box-shadow:0 8px 20px rgba(11,99,206,.23)!important}
.fl-header-cta:hover{transform:translateY(-1px)!important;box-shadow:0 11px 25px rgba(11,99,206,.30)!important}
.fl-pay-renew-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:42px!important;padding:0 13px!important;border:1px solid #e0a314!important;border-radius:11px!important;background:linear-gradient(135deg,#ffca43,#f4b429)!important;color:#3b2800!important;font-size:12.5px!important;font-weight:900!important;line-height:1.15!important;text-decoration:none!important;text-align:center!important;white-space:nowrap!important;box-shadow:0 8px 18px rgba(244,180,41,.22)!important}
.fl-pay-renew-btn:hover{background:linear-gradient(135deg,#ffd260,#f0a90e)!important;transform:translateY(-1px)!important}
.fl-menu-toggle{display:none!important;width:44px!important;height:44px!important;border:1px solid var(--fl-line)!important;border-radius:11px!important;background:#fff!important;padding:0!important;margin-left:auto!important;align-items:center!important;justify-content:center!important;cursor:pointer!important}
.fl-menu-toggle span{display:block!important;width:19px!important;height:2px!important;background:var(--fl-ink)!important;border-radius:999px!important;transition:transform .2s ease,opacity .2s ease!important}
.fl-menu-toggle span+span{margin-top:4px!important}
.fl-menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)!important}
.fl-menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0!important}
.fl-menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)!important}
.fl-mobile-panel{display:none!important;max-width:1220px!important;margin:0 auto!important;padding:0 18px 16px!important}
.fl-mobile-panel.fl-open{display:block!important}
.fl-mobile-card{background:#fff!important;border:1px solid var(--fl-line)!important;border-radius:16px!important;padding:8px!important;box-shadow:var(--fl-shadow)!important}
.fl-mobile-card a{display:flex!important;align-items:center!important;justify-content:space-between!important;min-height:45px!important;padding:0 11px!important;border-radius:10px!important;text-decoration:none!important;color:#24324a!important;font-size:14px!important;font-weight:750!important}
.fl-mobile-card a:hover,.fl-mobile-card a.fl-active{background:var(--fl-blue-soft)!important;color:var(--fl-blue)!important}
.fl-mobile-locations{border-bottom:1px solid #edf1f7!important}
.fl-mobile-locations>summary{list-style:none!important;display:flex!important;align-items:center!important;justify-content:space-between!important;min-height:45px!important;padding:0 11px!important;border-radius:10px!important;color:#24324a!important;font-size:14px!important;font-weight:800!important;cursor:pointer!important}
.fl-mobile-locations>summary::-webkit-details-marker{display:none!important}
.fl-mobile-locations>summary span{color:var(--fl-blue)!important;font-size:20px!important;font-weight:500!important;transition:transform .2s ease!important}
.fl-mobile-locations[open]>summary,.fl-mobile-locations.fl-active>summary{background:var(--fl-blue-soft)!important;color:var(--fl-blue)!important}
.fl-mobile-locations[open]>summary span{transform:rotate(45deg)!important}
.fl-mobile-location-list{padding:8px 8px 12px!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:5px 8px!important}
.fl-mobile-location-list b{grid-column:1/-1!important;margin:7px 2px 1px!important;color:#64748b!important;font-size:10px!important;letter-spacing:.75px!important;text-transform:uppercase!important}
.fl-mobile-card .fl-mobile-location-list a{min-height:38px!important;padding:6px 8px!important;background:#f7f9fc!important;border:1px solid #edf1f7!important;font-size:12px!important;line-height:1.25!important}
.fl-mobile-card .fl-mobile-location-list .fl-mobile-all{grid-column:1/-1!important;justify-content:center!important;background:#0b63ce!important;border-color:#0b63ce!important;color:#fff!important;font-weight:900!important}
.fl-mobile-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;padding:8px 3px 2px!important}
.fl-mobile-actions a{justify-content:center!important;background:#f7f9fc!important;border:1px solid var(--fl-line)!important}
.fl-mobile-actions a:last-child{background:var(--fl-blue)!important;border-color:var(--fl-blue)!important;color:#fff!important}

/* ---------- Safe visual polish for existing content ---------- */
body.fl-redesign-v2 :where(.article-card,.side-card,.faq-item,.connection-plan,.plan-card,.area-card,.service-card,.blog-card,.contact-card){border-radius:var(--fl-radius)!important}
body.fl-redesign-v2 :where(.article-card,.side-card,.connection-plan,.plan-card,.area-card,.service-card,.blog-card){box-shadow:0 10px 30px rgba(11,23,48,.075)!important;border-color:var(--fl-line)!important}
body.fl-redesign-v2 :where(.plan-card,.area-card,.service-card,.blog-card,.connection-plan){transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease!important}
@media (hover:hover){body.fl-redesign-v2 :where(.plan-card,.area-card,.service-card,.blog-card,.connection-plan):hover{transform:translateY(-3px)!important;box-shadow:0 16px 38px rgba(11,23,48,.12)!important;border-color:#cbdcf5!important}}
body.fl-redesign-v2 :where(.btn,.connection-select,.connection-wa,.connection-call){transition:transform .2s ease,box-shadow .2s ease,filter .2s ease!important}
@media (hover:hover){body.fl-redesign-v2 :where(.btn,.connection-select,.connection-wa,.connection-call):hover{transform:translateY(-1px)!important}}
body.fl-redesign-v2 :where(input,select,textarea){border-radius:11px!important}
body.fl-redesign-v2 :where(h1,h2,h3){text-wrap:balance}
body.fl-redesign-v2 :where(p,li){text-wrap:pretty}
body.fl-redesign-v2 .breadcrumb a{text-underline-offset:3px}

/* ---------- Unified pre-footer CTA ---------- */
.fl-prefooter{position:relative!important;overflow:hidden!important;background:linear-gradient(135deg,#0b63ce 0%,#0b3b83 58%,#07152d 100%)!important;color:#fff!important}
.fl-prefooter:before{content:""!important;position:absolute!important;inset:-120px auto auto -80px!important;width:310px!important;height:310px!important;border-radius:50%!important;background:rgba(255,255,255,.07)!important}
.fl-prefooter:after{content:""!important;position:absolute!important;right:-100px!important;bottom:-180px!important;width:370px!important;height:370px!important;border-radius:50%!important;background:rgba(244,180,41,.13)!important}
.fl-prefooter-inner{position:relative!important;z-index:1!important;max-width:1220px!important;margin:0 auto!important;padding:36px 20px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:28px!important}
.fl-prefooter-copy{max-width:700px!important}
.fl-prefooter-kicker{display:inline-flex!important;align-items:center!important;gap:7px!important;margin-bottom:9px!important;font-size:11px!important;letter-spacing:1.1px!important;text-transform:uppercase!important;font-weight:900!important;color:#ddebff!important}
.fl-prefooter h2{margin:0!important;color:#fff!important;font-size:clamp(24px,3vw,38px)!important;line-height:1.12!important;letter-spacing:-.7px!important}
.fl-prefooter p{margin:10px 0 0!important;color:#d8e7fb!important;font-size:14px!important;line-height:1.65!important}
.fl-prefooter-actions{display:flex!important;gap:10px!important;flex:0 0 auto!important}
.fl-prefooter-actions a{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:46px!important;padding:0 16px!important;border-radius:11px!important;text-decoration:none!important;font-size:13px!important;font-weight:900!important;white-space:nowrap!important}
.fl-prefooter-actions .fl-pf-call{background:#fff!important;color:#0b3b83!important}
.fl-prefooter-actions .fl-pf-wa{background:var(--fl-gold)!important;color:#2d2105!important}

/* ---------- Unified footer ---------- */
.fl-site-footer{position:relative!important;background:#061126!important;color:#c8d3e5!important;font-family:inherit!important}
.fl-footer-shell{max-width:1220px!important;margin:0 auto!important;padding:48px 20px 20px!important}
.fl-footer-grid{display:grid!important;grid-template-columns:1.35fr .8fr .9fr .9fr!important;gap:34px!important}
.fl-footer-brand{display:flex!important;align-items:center!important;gap:10px!important;text-decoration:none!important;color:#fff!important;margin-bottom:14px!important}
.fl-footer-brand img{width:48px!important;height:48px!important;object-fit:contain!important}
.fl-footer-brand strong{display:block!important;font-size:18px!important;line-height:1.1!important;color:#fff!important}
.fl-footer-brand small{display:block!important;margin-top:4px!important;font-size:10px!important;letter-spacing:1.4px!important;text-transform:uppercase!important;color:#72aef8!important;font-weight:900!important}
.fl-footer-about{margin:0 0 16px!important;max-width:380px!important;color:#9fb0c9!important;font-size:13px!important;line-height:1.75!important}
.fl-footer-contact{display:grid!important;gap:7px!important}
.fl-footer-contact a,.fl-footer-contact span{color:#d5deec!important;text-decoration:none!important;font-size:13px!important;line-height:1.5!important}
.fl-footer-contact a:hover{color:#fff!important}
.fl-footer-title{margin:2px 0 13px!important;color:#fff!important;font-size:13px!important;font-weight:900!important;letter-spacing:.35px!important}
.fl-footer-links{display:grid!important;gap:9px!important}
.fl-footer-links a{width:max-content!important;max-width:100%!important;color:#9fb0c9!important;text-decoration:none!important;font-size:13px!important;line-height:1.45!important;transition:color .2s ease,transform .2s ease!important}
.fl-footer-links a:hover{color:#fff!important;transform:translateX(2px)!important}
.fl-footer-bottom{margin-top:38px!important;padding:17px 0 0!important;border-top:1px solid rgba(255,255,255,.10)!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;flex-wrap:wrap!important}
.fl-footer-bottom p{margin:0!important;color:#8293ad!important;font-size:11.5px!important;line-height:1.5!important}
.fl-footer-legal{display:flex!important;gap:15px!important;flex-wrap:wrap!important}
.fl-footer-legal a{color:#9fb0c9!important;text-decoration:none!important;font-size:11.5px!important}
.fl-footer-legal a:hover{color:#fff!important}

/* ---------- Fiber Buddy footer animation ---------- */
.fl-buddy-stage{
  position:relative!important;
  z-index:1!important;
  height:154px!important;
  overflow:hidden!important;
  border-top:1px solid #e6edf7!important;
  border-bottom:1px solid rgba(11,23,48,.08)!important;
  background:
    radial-gradient(circle at 50% 118%,rgba(11,99,206,.10),transparent 31%),
    linear-gradient(180deg,#fff 0%,#f7faff 100%)!important;
}
.fl-buddy-stage:after{
  content:""!important;
  position:absolute!important;
  z-index:4!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  height:2px!important;
  background:linear-gradient(90deg,transparent,rgba(11,99,206,.24),transparent)!important;
}
.fl-buddy{
  --fl-eye-x:0px;
  --fl-eye-y:0px;
  position:absolute!important;
  z-index:2!important;
  left:50%!important;
  bottom:-54px!important;
  width:170px!important;
  height:160px!important;
  transform:translateX(-50%);
  filter:drop-shadow(0 13px 12px rgba(7,21,45,.17))!important;
  animation:flBuddyPeek 7s cubic-bezier(.2,.8,.25,1) infinite!important;
  will-change:transform!important;
}
.fl-buddy-body{
  position:absolute!important;
  z-index:2!important;
  left:33px!important;
  bottom:0!important;
  width:106px!important;
  height:121px!important;
  border-radius:52% 52% 36% 36% / 47% 47% 26% 26%!important;
  background:
    radial-gradient(circle at 38% 22%,rgba(62,142,255,.28),transparent 20%),
    radial-gradient(circle at 64% 48%,rgba(255,255,255,.055) 0 1px,transparent 1.6px) 0 0/7px 7px,
    linear-gradient(145deg,#0d3f84 0%,#071d44 58%,#041126 100%)!important;
  box-shadow:inset 9px 4px 18px rgba(65,145,255,.12),inset -11px -6px 21px rgba(0,0,0,.28)!important;
}
.fl-buddy-ear{
  position:absolute!important;
  z-index:1!important;
  top:7px!important;
  width:47px!important;
  height:85px!important;
  border-radius:52% 52% 42% 42%!important;
  background:linear-gradient(150deg,#0e438d 0%,#071d43 68%,#041126 100%)!important;
  box-shadow:inset 7px 4px 13px rgba(83,156,255,.12)!important;
}
.fl-buddy-ear-left{left:31px!important;transform:rotate(-28deg)!important;transform-origin:bottom center!important}
.fl-buddy-ear-right{right:29px!important;top:-2px!important;height:94px!important;transform:rotate(15deg)!important;transform-origin:bottom center!important}
.fl-buddy-eyes{
  position:absolute!important;
  z-index:5!important;
  left:50%!important;
  top:71px!important;
  display:flex!important;
  gap:9px!important;
  transform:translateX(-50%)!important;
}
.fl-buddy-eye{
  position:relative!important;
  display:block!important;
  width:29px!important;
  height:33px!important;
  overflow:hidden!important;
  border:2px solid rgba(3,12,28,.58)!important;
  border-radius:50%!important;
  background:#fff!important;
  box-shadow:inset 0 -3px 5px rgba(135,160,190,.30),0 2px 5px rgba(0,0,0,.28)!important;
  transform-origin:center!important;
  animation:flBuddyBlink 5.4s infinite!important;
}
.fl-buddy-pupil{
  position:absolute!important;
  left:9px!important;
  top:11px!important;
  width:10px!important;
  height:12px!important;
  border-radius:50%!important;
  background:#020817!important;
  box-shadow:inset 2px 2px 0 rgba(255,255,255,.78)!important;
  transform:translate(var(--fl-eye-x),var(--fl-eye-y))!important;
  transition:transform .12s ease-out!important;
}
.fl-buddy-smile{
  position:absolute!important;
  z-index:5!important;
  left:75px!important;
  top:108px!important;
  width:21px!important;
  height:10px!important;
  border-bottom:3px solid #7db5ff!important;
  border-radius:0 0 50% 50%!important;
  opacity:.82!important;
}
.fl-buddy-arm{
  position:absolute!important;
  z-index:1!important;
  right:4px!important;
  top:75px!important;
  width:48px!important;
  height:58px!important;
  border-top:10px solid #071d43!important;
  border-right:10px solid #071d43!important;
  border-radius:0 35px 0 0!important;
  transform:rotate(-7deg);
  transform-origin:7px 50px!important;
  animation:flBuddyWave 1.9s ease-in-out infinite!important;
}
.fl-buddy-hand{
  position:absolute!important;
  right:-15px!important;
  top:-15px!important;
  width:25px!important;
  height:19px!important;
  border-radius:55% 55% 45% 45%!important;
  background:#08285a!important;
  box-shadow:inset 4px 2px 6px rgba(79,151,255,.16)!important;
  transform:rotate(22deg)!important;
}
.fl-buddy-badge{
  position:absolute!important;
  z-index:6!important;
  left:50%!important;
  top:118px!important;
  display:grid!important;
  place-items:center!important;
  width:25px!important;
  height:25px!important;
  border:2px solid rgba(255,255,255,.28)!important;
  border-radius:50%!important;
  background:var(--fl-gold)!important;
  color:#07152d!important;
  font-size:14px!important;
  font-weight:950!important;
  transform:translateX(-50%)!important;
  box-shadow:0 5px 10px rgba(0,0,0,.22)!important;
}
.fl-buddy-message{
  position:absolute!important;
  z-index:3!important;
  left:calc(50% + 96px)!important;
  top:42px!important;
  max-width:190px!important;
  padding:9px 12px!important;
  border:1px solid #d7e3f3!important;
  border-radius:13px 13px 13px 3px!important;
  background:#fff!important;
  color:#17304f!important;
  box-shadow:0 10px 24px rgba(11,23,48,.10)!important;
  font-size:11.5px!important;
  font-weight:850!important;
  line-height:1.35!important;
  white-space:nowrap!important;
  opacity:0;
  transform:translateY(7px) scale(.96);
  transform-origin:left bottom!important;
  animation:flBuddyMessage 7s ease-in-out infinite!important;
}
@keyframes flBuddyPeek{
  0%,8%{transform:translate(-50%,45px)}
  17%,78%{transform:translate(-50%,0)}
  86%,100%{transform:translate(-50%,45px)}
}
@keyframes flBuddyWave{
  0%,100%{transform:rotate(-14deg)}
  50%{transform:rotate(18deg)}
}
@keyframes flBuddyBlink{
  0%,43%,47%,100%{transform:scaleY(1)}
  45%{transform:scaleY(.08)}
}
@keyframes flBuddyMessage{
  0%,22%,74%,100%{opacity:0;transform:translateY(7px) scale(.96)}
  30%,65%{opacity:1;transform:translateY(0) scale(1)}
}

@media(max-width:620px){
  .fl-buddy-stage{height:118px!important}
  .fl-buddy{bottom:-48px!important;transform:translateX(-50%) scale(.84);transform-origin:center bottom!important;animation-name:flBuddyPeekMobile!important}
  .fl-buddy-message{display:none!important}
  @keyframes flBuddyPeekMobile{
    0%,8%{transform:translate(-50%,38px) scale(.84)}
    17%,78%{transform:translate(-50%,0) scale(.84)}
    86%,100%{transform:translate(-50%,38px) scale(.84)}
  }
}

@media(max-width:1080px){
  .fl-nav-links a{padding:0 7px!important;font-size:13px!important}
  .fl-header-call{display:none!important}
  .fl-footer-grid{grid-template-columns:1.25fr 1fr 1fr!important}
  .fl-footer-grid>.fl-footer-col:last-child{grid-column:2/4!important}
}
@media(max-width:900px){
  html{scroll-padding-top:90px}
  .fl-topline-inner{padding:6px 14px!important;font-size:11.5px!important}
  .fl-header-main{padding:8px 14px!important;min-height:68px!important}
  .fl-brand{min-width:0!important}
  .fl-brand-logo{width:48px!important;height:48px!important}
  .fl-brand-copy strong{font-size:17px!important}
  .fl-brand-copy small{font-size:9px!important;letter-spacing:1.35px!important}
  .fl-nav-links,.fl-header-actions{display:none!important}
  .fl-menu-toggle{display:flex!important}
  .fl-prefooter-inner{align-items:flex-start!important;flex-direction:column!important}
  .fl-prefooter-actions{width:100%!important}
  .fl-prefooter-actions a{flex:1 1 0!important}
  .fl-footer-grid{grid-template-columns:1fr 1fr!important}
  .fl-footer-grid>.fl-footer-col:last-child{grid-column:auto!important}
}
@media(max-width:620px){
  .fl-topline-inner{justify-content:flex-start!important;text-align:left!important;overflow:hidden!important;white-space:nowrap!important}
  .fl-topline-message{overflow:hidden!important;text-overflow:ellipsis!important}
  .fl-header-main{padding:7px 12px!important}
  .fl-brand-logo{width:44px!important;height:44px!important}
  .fl-brand-copy strong{font-size:16px!important}
  .fl-mobile-panel{padding:0 10px 12px!important}
  .fl-mobile-actions{grid-template-columns:1fr!important}
  .fl-prefooter-inner{padding:30px 15px!important}
  .fl-prefooter-actions{display:grid!important;grid-template-columns:1fr!important}
  .fl-footer-shell{padding:38px 15px 18px!important}
  .fl-footer-grid{grid-template-columns:1fr!important;gap:26px!important}
  .fl-footer-bottom{margin-top:30px!important;align-items:flex-start!important;flex-direction:column!important}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .fl-site-header,.fl-nav-links a,.fl-header-call,.fl-header-cta,.fl-menu-toggle span,.fl-footer-links a,body.fl-redesign-v2 :where(.plan-card,.area-card,.service-card,.blog-card,.connection-plan,.btn){transition:none!important}
  .fl-buddy,.fl-buddy-eye,.fl-buddy-arm,.fl-buddy-message{animation:none!important}
  .fl-buddy{transform:translateX(-50%)!important}
  .fl-buddy-message{opacity:1!important;transform:none!important}
}

/* ---------- Tiny Fiber Buddy visual base ---------- */
.fl-cursor-buddy{
  --fl-cursor-eye-x:0px;
  --fl-cursor-eye-y:0px;
  position:fixed!important;
  z-index:10060!important;
  left:0!important;
  top:0!important;
  width:42px!important;
  height:48px!important;
  pointer-events:none!important;
  opacity:0!important;
  visibility:hidden!important;
  transform:translate3d(-80px,-80px,0)!important;
  transform-origin:50% 75%!important;
  transition:opacity .18s ease,visibility 0s linear .18s!important;
  contain:layout style paint!important;
  will-change:transform!important;
}
.fl-cursor-buddy.fl-cursor-buddy-visible{
  opacity:.96!important;
  visibility:visible!important;
  transition:opacity .18s ease!important;
}
.fl-cursor-buddy-inner{
  position:relative!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  filter:drop-shadow(0 5px 5px rgba(3,14,34,.25))!important;
  animation:flCursorBuddyBob 1.55s ease-in-out infinite!important;
}
.fl-cursor-buddy-inner:before,.fl-cursor-buddy-inner:after{
  content:""!important;
  position:absolute!important;
  z-index:0!important;
  bottom:-1px!important;
  width:9px!important;
  height:6px!important;
  border-radius:50%!important;
  background:#061a3b!important;
}
.fl-cursor-buddy-inner:before{left:7px!important;transform:rotate(13deg)!important}
.fl-cursor-buddy-inner:after{right:7px!important;transform:rotate(-13deg)!important}
.fl-cursor-buddy.fl-cursor-buddy-running .fl-cursor-buddy-inner{animation:flCursorBuddyRun .34s steps(2,end) infinite!important}
.fl-cursor-buddy-ear{
  position:absolute!important;
  z-index:1!important;
  top:1px!important;
  width:13px!important;
  height:23px!important;
  border-radius:55% 55% 43% 43%!important;
  background:linear-gradient(145deg,#1760bb,#071c42 72%)!important;
}
.fl-cursor-buddy-ear:first-child{left:7px!important;transform:rotate(-23deg)!important}
.fl-cursor-buddy-ear:nth-child(2){right:7px!important;top:-1px!important;height:25px!important;transform:rotate(18deg)!important}
.fl-cursor-buddy-face{
  position:absolute!important;
  z-index:2!important;
  left:4px!important;
  bottom:1px!important;
  width:34px!important;
  height:34px!important;
  border:1px solid rgba(105,171,255,.25)!important;
  border-radius:52% 52% 45% 45%!important;
  background:
    radial-gradient(circle at 36% 22%,rgba(88,163,255,.25),transparent 24%),
    linear-gradient(145deg,#0d448d 0%,#061a3b 70%,#030d20 100%)!important;
  box-shadow:inset 4px 3px 7px rgba(76,151,255,.14)!important;
}
.fl-cursor-buddy-eye{
  position:absolute!important;
  z-index:3!important;
  top:10px!important;
  width:9px!important;
  height:10px!important;
  overflow:hidden!important;
  border-radius:50%!important;
  background:#fff!important;
  box-shadow:0 1px 2px rgba(0,0,0,.38)!important;
  animation:flCursorBuddyBlink 4.8s infinite!important;
}
.fl-cursor-buddy-eye:first-of-type{left:7px!important}
.fl-cursor-buddy-eye:nth-of-type(2){right:7px!important}
.fl-cursor-buddy-eye:after{
  content:""!important;
  position:absolute!important;
  left:3px!important;
  top:3px!important;
  width:4px!important;
  height:5px!important;
  border-radius:50%!important;
  background:#020817!important;
  transform:translate(var(--fl-cursor-eye-x),var(--fl-cursor-eye-y))!important;
}
.fl-cursor-buddy-smile{
  position:absolute!important;
  left:13px!important;
  top:23px!important;
  width:8px!important;
  height:4px!important;
  border-bottom:1.5px solid #9ac8ff!important;
  border-radius:0 0 50% 50%!important;
}
.fl-cursor-buddy-bolt{
  position:absolute!important;
  z-index:4!important;
  right:-2px!important;
  bottom:-1px!important;
  display:grid!important;
  place-items:center!important;
  width:14px!important;
  height:14px!important;
  border:1px solid rgba(255,255,255,.75)!important;
  border-radius:50%!important;
  background:#f4b429!important;
  color:#07152d!important;
  font-size:8px!important;
  font-style:normal!important;
  line-height:1!important;
}
.fl-cursor-buddy-signal{
  position:absolute!important;
  z-index:8!important;
  left:36px!important;
  top:2px!important;
  display:flex!important;
  align-items:center!important;
  min-height:27px!important;
  padding:5px 9px!important;
  border:2px solid #fff!important;
  border-radius:10px 10px 10px 2px!important;
  background:#f4b429!important;
  color:#241900!important;
  box-shadow:0 7px 18px rgba(3,18,43,.25)!important;
  font-size:10px!important;
  font-weight:950!important;
  line-height:1!important;
  white-space:nowrap!important;
  opacity:0!important;
  transform:translateY(5px) scale(.85)!important;
  transform-origin:left bottom!important;
  transition:opacity .2s ease,transform .2s ease!important;
}
.fl-cursor-buddy.fl-cursor-buddy-guiding .fl-cursor-buddy-signal{
  opacity:1!important;
  transform:translateY(0) scale(1)!important;
  animation:flCursorBuddySignal .9s ease-in-out infinite!important;
}
.fl-cursor-buddy.fl-cursor-buddy-happy .fl-cursor-buddy-inner{animation:flCursorBuddyHappy .48s ease-in-out 3!important}
.fl-cursor-buddy.fl-cursor-buddy-happy .fl-cursor-buddy-face{
  background:radial-gradient(circle at 36% 22%,rgba(120,190,255,.38),transparent 27%),linear-gradient(145deg,#1762bd 0%,#08285b 72%,#04132d 100%)!important;
}
.fl-cursor-buddy.fl-cursor-buddy-happy .fl-cursor-buddy-eye{height:7px!important;top:12px!important;background:#dcebff!important;border-bottom:2px solid #07152d!important}
.fl-cursor-buddy.fl-cursor-buddy-happy .fl-cursor-buddy-eye:after{display:none!important}
.fl-cursor-buddy.fl-cursor-buddy-happy .fl-cursor-buddy-smile{left:10px!important;top:21px!important;width:14px!important;height:8px!important;border-bottom:3px solid #fff!important}
.fl-cursor-buddy.fl-cursor-buddy-happy .fl-cursor-buddy-signal{background:#28b875!important;color:#fff!important}
.fl-buddy-plan-highlight{
  position:relative!important;
  z-index:1!important;
  color:#7a5200!important;
  background:#fff3c4!important;
  box-shadow:0 0 0 3px rgba(244,180,41,.34),0 8px 22px rgba(244,180,41,.24)!important;
  animation:flBuddyPlanPulse .9s ease-in-out infinite!important;
}
@keyframes flCursorBuddyBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@keyframes flCursorBuddyRun{0%{transform:translateY(0) rotate(-4deg)}100%{transform:translateY(-4px) rotate(4deg)}}
@keyframes flCursorBuddyBlink{0%,45%,49%,100%{transform:scaleY(1)}47%{transform:scaleY(.08)}}
@keyframes flCursorBuddySignal{0%,100%{filter:brightness(1);margin-left:0}50%{filter:brightness(1.08);margin-left:3px}}
@keyframes flCursorBuddyHappy{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-9px) rotate(5deg)}}
@keyframes flBuddyPlanPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.04)}}
@media(hover:none),(pointer:coarse){.fl-cursor-buddy{display:none!important}}
@media(prefers-reduced-motion:reduce){.fl-cursor-buddy{display:none!important}.fl-cursor-buddy-inner,.fl-cursor-buddy-eye,.fl-cursor-buddy-signal,.fl-buddy-plan-highlight{animation:none!important}}

/* Autonomous roaming, quick menu, sleep and motion controls — v4 */
.fl-cursor-buddy{
  --fl-roam-duration:0ms;
  display:block!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  outline:0!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  overflow:visible!important;
  background:transparent!important;
  color:inherit!important;
  font:inherit!important;
  line-height:1!important;
  pointer-events:auto!important;
  cursor:pointer!important;
  contain:layout style!important;
  transition:transform var(--fl-roam-duration) cubic-bezier(.34,.12,.22,1),opacity .2s ease,visibility 0s!important;
  touch-action:manipulation!important;
}
.fl-cursor-buddy:hover .fl-cursor-buddy-inner{filter:drop-shadow(0 7px 7px rgba(3,14,34,.34)) brightness(1.07)!important}
.fl-cursor-buddy:focus-visible{outline:3px solid rgba(244,180,41,.8)!important;outline-offset:6px!important;border-radius:50%!important}
.fl-cursor-buddy.fl-buddy-facing-left .fl-cursor-buddy-signal{left:auto!important;right:36px!important;border-radius:10px 10px 2px 10px!important;transform-origin:right bottom!important}
.fl-cursor-buddy.fl-cursor-buddy-sleeping .fl-cursor-buddy-inner{animation:flCursorBuddySleep 2.2s ease-in-out infinite!important}
.fl-cursor-buddy.fl-cursor-buddy-sleeping .fl-cursor-buddy-eye{top:14px!important;height:3px!important;background:transparent!important;border-bottom:2px solid #dcebff!important;box-shadow:none!important;animation:none!important}
.fl-cursor-buddy.fl-cursor-buddy-sleeping .fl-cursor-buddy-eye:after{display:none!important}
.fl-cursor-buddy.fl-cursor-buddy-sleeping .fl-cursor-buddy-smile{opacity:.4!important}
.fl-buddy-quick-menu[hidden]{display:none!important}
.fl-buddy-quick-menu{
  position:fixed!important;
  z-index:10065!important;
  width:184px!important;
  padding:9px!important;
  border:1px solid #dbe5f2!important;
  border-radius:15px!important;
  background:rgba(255,255,255,.98)!important;
  box-shadow:0 18px 50px rgba(3,18,43,.24)!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important;
  opacity:0!important;
  visibility:hidden!important;
  transform:translateY(8px) scale(.96)!important;
  transform-origin:top left!important;
  transition:opacity .18s ease,transform .18s ease,visibility 0s linear .18s!important;
}
.fl-buddy-quick-menu.fl-buddy-menu-open{opacity:1!important;visibility:visible!important;transform:none!important;transition:opacity .18s ease,transform .18s ease!important}
.fl-buddy-quick-menu>strong{display:block!important;padding:5px 7px 8px!important;color:#0b1730!important;font-size:11px!important;font-weight:950!important;letter-spacing:.07em!important;text-transform:uppercase!important}
.fl-buddy-quick-menu a,.fl-buddy-quick-menu button{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  width:100%!important;
  min-height:38px!important;
  margin:0!important;
  padding:7px 8px!important;
  border:0!important;
  border-radius:9px!important;
  background:transparent!important;
  color:#273a54!important;
  font:inherit!important;
  font-size:11.5px!important;
  font-weight:850!important;
  line-height:1.25!important;
  text-align:left!important;
  text-decoration:none!important;
  cursor:pointer!important;
}
.fl-buddy-quick-menu a:hover,.fl-buddy-quick-menu button:hover,.fl-buddy-quick-menu a:focus-visible,.fl-buddy-quick-menu button:focus-visible{background:#eaf3ff!important;color:#0b63ce!important;outline:none!important}
.fl-buddy-quick-menu a span,.fl-buddy-quick-menu button span{display:grid!important;place-items:center!important;flex:0 0 25px!important;width:25px!important;height:25px!important;border-radius:8px!important;background:#edf4ff!important;font-size:13px!important}
.fl-buddy-confetti{position:fixed!important;z-index:11020!important;inset:0!important;overflow:hidden!important;pointer-events:none!important}
.fl-buddy-confetti i{
  position:absolute!important;
  display:block!important;
  width:8px!important;
  height:12px!important;
  border-radius:2px!important;
  opacity:0!important;
  animation:flBuddyConfetti 1.25s cubic-bezier(.16,.7,.25,1) forwards!important;
}
@keyframes flCursorBuddySleep{0%,100%{transform:translateY(0) scaleY(1)}50%{transform:translateY(2px) scaleY(.94)}}
@keyframes flBuddyConfetti{0%{opacity:1;transform:translate(0,0) rotate(0)}70%{opacity:1}100%{opacity:0;transform:translate(var(--fl-confetti-x),var(--fl-confetti-y)) rotate(var(--fl-confetti-r))}}
@media(max-width:620px){
  .fl-cursor-buddy{width:40px!important;height:46px!important}
  .fl-buddy-quick-menu{width:176px!important}
  .fl-cursor-buddy-signal{max-width:170px!important;overflow:hidden!important;text-overflow:ellipsis!important}
}
@media(hover:none),(pointer:coarse){.fl-cursor-buddy{display:block!important}}
@media(prefers-reduced-motion:reduce){
  .fl-cursor-buddy{display:block!important;transition:none!important}
  .fl-cursor-buddy-inner,.fl-cursor-buddy-eye,.fl-cursor-buddy-signal,.fl-buddy-plan-highlight,.fl-buddy-confetti i{animation:none!important}
  .fl-buddy-confetti{display:none!important}
}

/* Keep roaming Buddy outside plan cards and keep every comparison row aligned. */
.fl-cursor-buddy.fl-buddy-plan-safe{opacity:.78!important}
.fl-cursor-buddy.fl-buddy-plan-safe .fl-cursor-buddy-inner{scale:.84!important}
.fl-cursor-buddy.fl-buddy-plan-safe .fl-cursor-buddy-signal{display:none!important}
#plans .plans-grid,#plans .pc-grid{align-items:stretch!important}
#plans .plan,#plans .pc-card{height:100%!important;transform:none!important}
#plans .plan:hover,#plans .pc-card:hover{
  transform:none!important;
  box-shadow:0 18px 42px rgba(15,23,42,.15)!important;
}
#plans .pc-card::after,#plans .pc-card:hover::after,#plans .pc-card.is-recommended::after{transform:none!important}
#plans .pc-card .pc-bestfor{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  flex:0 0 92px!important;
  width:100%!important;
  min-height:92px!important;
  height:92px!important;
  margin-top:auto!important;
  overflow:hidden!important;
}
#plans .pc-card .pc-cta{
  flex:0 0 40px!important;
  min-height:40px!important;
  height:40px!important;
  margin-top:12px!important;
  transform:none!important;
}
#plans .pc-card .pc-cta:hover,#plans .pc-card .pc-cta:focus-visible,#plans .plan .plan-btn:hover,#plans .plan .plan-btn:focus-visible{transform:none!important}
@media(max-width:680px){
  #plans .pc-card .pc-bestfor{flex-basis:auto!important;min-height:0!important;height:auto!important;overflow:visible!important}
}

/* Existing standalone social strip is folded into the unified footer for a cleaner ending. */
body.fl-redesign-v2 .social-connect-section{display:none!important}
.fl-footer-social{display:flex!important;flex-wrap:wrap!important;gap:7px!important;margin-top:15px!important}
.fl-footer-social a{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:32px!important;padding:0 10px!important;border-radius:9px!important;border:1px solid rgba(255,255,255,.11)!important;background:rgba(255,255,255,.045)!important;color:#c9d6e8!important;text-decoration:none!important;font-size:11.5px!important;font-weight:800!important;transition:background .2s ease,border-color .2s ease,color .2s ease!important}
.fl-footer-social a:hover{background:rgba(255,255,255,.09)!important;border-color:rgba(255,255,255,.2)!important;color:#fff!important}
.fl-topline-message{min-width:0!important}
.fl-topline a{flex:0 0 auto!important}

/* ========================================================================== 
   TYPOGRAPHY REFRESH — 2026-08-26
   A quieter, more editorial type system with stronger hierarchy and rhythm.
   ========================================================================== */
:root{
  --fl-font-body:Inter,"Aptos","Segoe UI Variable","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --fl-font-display:"Aptos Display","Segoe UI Variable Display",Inter,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --fl-reading-width:70ch;
  --fl-type-ink:#0a1931;
  --fl-type-copy:#33465f;
  --fl-type-soft:#64748b;
}

body.fl-redesign-v2{
  font-family:var(--fl-font-body)!important;
  font-size:16px;
  line-height:1.66;
  letter-spacing:-.006em;
  font-kerning:normal;
  font-optical-sizing:auto;
  font-synthesis:none;
  font-feature-settings:"kern" 1,"liga" 1,"calt" 1;
}
body.fl-redesign-v2 :where(button,input,select,textarea){font-family:inherit!important}
body.fl-redesign-v2 :where(h1,h2,h3,h4,h5,h6,.s-title,.service-title,.compare-title){
  font-family:var(--fl-font-display)!important;
  font-kerning:normal;
  font-optical-sizing:auto;
}
body.fl-redesign-v2 :where(h1){font-weight:850!important;line-height:1.025!important;letter-spacing:-.048em!important}
body.fl-redesign-v2 :where(h2){font-weight:820!important;line-height:1.14!important;letter-spacing:-.034em!important}
body.fl-redesign-v2 :where(h3){font-weight:780!important;line-height:1.25!important;letter-spacing:-.019em!important}
body.fl-redesign-v2 :where(h4,h5,h6){font-weight:760!important;line-height:1.32!important;letter-spacing:-.012em!important}
body.fl-redesign-v2 :where(p,li,dd){line-height:1.72}
body.fl-redesign-v2 :where(strong,b){font-weight:760}
body.fl-redesign-v2 :where(small,.muted,.s-sub){letter-spacing:.004em}
body.fl-redesign-v2 main h1{font-size:clamp(2rem,4vw,3.45rem)!important}

/* Display moments */
body.fl-redesign-v2 :where(.hero h1,.kp-hero h1,.la-hero h1){
  max-width:22ch;
  font-size:clamp(2.15rem,4.4vw,3.5rem)!important;
  line-height:1.02!important;
  letter-spacing:-.049em!important;
  text-wrap:balance;
}
body.fl-redesign-v2 #page-title{max-width:26ch;margin-left:auto;margin-right:auto;font-size:clamp(2rem,4vw,3.25rem)!important}
body.fl-redesign-v2 :where(.hero-sub,.hero>p,.hero-copy>p:last-child,.kp-hero>div>p){
  max-width:62ch;
  font-size:clamp(1rem,1.25vw,1.18rem)!important;
  line-height:1.68!important;
  letter-spacing:-.012em!important;
}
body.fl-redesign-v2 :where(.s-title,.service-title,#why-title,#referral-title){
  font-size:clamp(1.75rem,3vw,2.7rem)!important;
  line-height:1.1!important;
  letter-spacing:-.04em!important;
}
body.fl-redesign-v2 :where(.sh .eyebrow,.hero-tag,.kp-label,.service-cat,.blog-guides-eyebrow,.fl-prefooter-kicker){
  font-family:var(--fl-font-body)!important;
  font-size:.72rem!important;
  font-weight:820!important;
  line-height:1.25!important;
  letter-spacing:.105em!important;
  text-transform:uppercase!important;
}

/* Long-form reading */
body.fl-redesign-v2 :where(.article p,.article li,.kp-content p,.kp-content li,.content-section p,.content-section li){
  color:var(--fl-type-copy);
  font-size:clamp(1rem,.25vw + .95rem,1.075rem);
  line-height:1.78!important;
}
body.fl-redesign-v2 :where(.article-inner>p,.kp-content>p,.content-section>p){max-width:var(--fl-reading-width)}
body.fl-redesign-v2 :where(.article .lead,.kp-content>p:first-of-type){
  max-width:64ch;
  font-size:clamp(1.08rem,.45vw + 1rem,1.22rem)!important;
  line-height:1.72!important;
  letter-spacing:-.012em;
}
body.fl-redesign-v2 :where(.article h2,.kp-content h2,.content-section h2){
  margin-top:1.65em;
  font-size:clamp(1.45rem,2.2vw,2rem)!important;
  line-height:1.2!important;
  letter-spacing:-.032em!important;
}
body.fl-redesign-v2 :where(.article h3,.kp-content h3,.content-section h3){
  font-size:clamp(1.17rem,1.4vw,1.42rem)!important;
  line-height:1.28!important;
  letter-spacing:-.022em!important;
}
body.fl-redesign-v2 :where(.article a,.kp-content a,.content-section a){
  text-decoration-thickness:.08em;
  text-underline-offset:.17em;
}

/* Interface typography */
body.fl-redesign-v2 :where(.fl-nav-links a,.fl-location-nav>summary,.fl-mobile-card a,.btn,.fl-header-call,.fl-header-cta,.fl-pay-renew-btn,.plan-btn,.pc-cta){
  font-weight:760!important;
  letter-spacing:.006em!important;
}
body.fl-redesign-v2 :where(.fl-brand-copy strong,.logo-name,.brand-copy strong){
  font-family:var(--fl-font-display)!important;
  font-weight:850!important;
  letter-spacing:-.032em!important;
}
body.fl-redesign-v2 :where(.fl-brand-copy small,.logo-tag,.brand-copy small,.connection-label,.stage-label){
  font-weight:780!important;
  letter-spacing:.13em!important;
}
body.fl-redesign-v2 :where(.price,.plan-price,.pc-price,.plan-spd,.hero-num .n,.stat,.metric-value,.live-value){
  font-family:var(--fl-font-display)!important;
  font-variant-numeric:tabular-nums lining-nums;
  letter-spacing:-.045em!important;
}
body.fl-redesign-v2 :where(table,.kp-meta,.post-meta,.badge){font-variant-numeric:tabular-nums lining-nums}
body.fl-redesign-v2 :where(.fl-footer-title,.side-card h3,.kp-side-card h2){letter-spacing:-.012em!important}

@media(max-width:720px){
  body.fl-redesign-v2{font-size:15.5px;line-height:1.64}
  body.fl-redesign-v2 :where(.hero h1,.kp-hero h1,.la-hero h1){font-size:clamp(1.95rem,8.4vw,2.65rem)!important;line-height:1.04!important;letter-spacing:-.043em!important}
  body.fl-redesign-v2 :where(.s-title,.service-title,#why-title,#referral-title){font-size:clamp(1.65rem,7vw,2.15rem)!important;line-height:1.12!important}
  body.fl-redesign-v2 :where(.article p,.article li,.kp-content p,.kp-content li,.content-section p,.content-section li){font-size:1rem;line-height:1.74!important}
}

/* Sidebar plan text contrast */
body .sidebar .side-card.new-connection-widget h3{color:#fff!important}
body .sidebar .side-card.new-connection-widget .connection-intro{color:#dbeafe!important;background:transparent!important}
body .new-connection-widget .connection-benefits,body .new-connection-widget .connection-note{color:#dbeafe!important}
body .plan-card .pf{overflow-wrap:break-word}
