@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');
:root{--navy:#142d4b;--blue:#2465ac;--sky:#eaf3fc;--ink:#23344a;--muted:#5b6b7e;--line:#dae4ef}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:16px/1.65 Inter,Arial,sans-serif;color:var(--ink);background:#fff}a{color:inherit;text-decoration:none}.wrap{width:min(1160px,calc(100% - 40px));margin:auto}.top{background:#102c4c;color:#fff;font-size:13px;padding:7px 0}.top .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.top a:hover{text-decoration:underline}.header{background:#fff;position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:76px}.brand{font-size:23px;font-weight:800;letter-spacing:-.9px;color:var(--navy);white-space:nowrap}.brand span{color:var(--blue)}.brand small{display:block;font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:var(--muted);font-weight:600;margin-top:-8px}.nav{display:flex;align-items:center;gap:15px}.nav a{font-size:13px;font-weight:600;color:#30445b}.nav a:hover,.nav a.active{color:var(--blue)}.langs{display:flex;gap:6px}.langs a{border:1px solid var(--line);border-radius:5px;padding:3px 7px;font-size:12px}.langs a.active{background:var(--navy);color:white}.menu-btn{display:none;border:1px solid var(--line);background:white;padding:7px 12px;border-radius:6px;font-size:20px}.hero{background:linear-gradient(125deg,#e9f3fd,#f9fcff 58%,#e4effa);overflow:hidden}.hero-inner{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:34px;padding:90px 0 85px}.eyebrow{font-size:12px;letter-spacing:1.5px;color:var(--blue);font-weight:800;text-transform:uppercase}.hero h1,.pagehero h1{font-size:clamp(35px,4.3vw,60px);line-height:1.12;letter-spacing:-2px;color:var(--navy);margin:14px 0 23px}.hero p,.pagehero p{font-size:18px;color:#526780;max-width:620px}.buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:29px}.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--blue);color:white;padding:13px 22px;border-radius:6px;font-weight:700;border:2px solid var(--blue);font-size:14px;cursor:pointer}.btn:hover{background:#174d86}.btn.alt{background:transparent;color:var(--blue)}.device-scene{position:relative;min-height:385px;display:grid;place-items:center}.halo{position:absolute;border-radius:50%;width:340px;height:340px;background:#d0e5f8;filter:blur(2px)}.device{position:relative;width:195px;height:360px;border:7px solid #273746;border-radius:29px;background:linear-gradient(140deg,#26394b,#111d29);box-shadow:20px 28px 55px #153e653d,inset 0 0 0 3px #627282;padding:20px;display:flex;flex-direction:column;align-items:center}.camera{width:72px;height:72px;border:8px solid #485e72;border-radius:50%;background:radial-gradient(circle at 45% 45%,#72b8d6 0 12%,#102337 17% 42%,#304e66 45% 65%,#121f2b 70%);box-shadow:0 0 0 3px #121e2b;margin:16px auto 21px}.device-screen{width:132px;height:105px;border-radius:6px;background:linear-gradient(145deg,#2e80bb,#0f3b63);display:grid;place-items:center;color:#d4f2ff;text-align:center;font-size:12px;font-weight:700}.device-screen svg{width:38px;height:38px;display:block;margin:auto}.speaker{display:flex;gap:4px;margin:17px}.speaker i{width:4px;height:4px;border-radius:50%;background:#8797a5}.call{width:52px;height:52px;border:2px solid #a4b3be;border-radius:50%;display:grid;place-items:center;color:#e5f3fb;font-size:24px}.float-card{position:absolute;bottom:25px;right:0;background:white;border:1px solid #dbe7f1;box-shadow:0 15px 35px #1a4c7824;border-radius:12px;padding:16px 20px;max-width:220px;font-size:13px;font-weight:700;color:var(--navy)}.float-card b{display:block;color:#1e8b68;font-size:12px}.section{padding:75px 0}.section.alt{background:#f5f8fc}.section h2{font-size:clamp(28px,3vw,39px);letter-spacing:-1.2px;color:var(--navy);line-height:1.2;margin:0 0 14px}.lead{font-size:17px;color:var(--muted);max-width:760px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:35px}.tile{background:#fff;border:1px solid var(--line);border-radius:11px;padding:26px;box-shadow:0 8px 25px #163d5b0a}.tile .symbol{font-size:28px;color:var(--blue);display:block;margin-bottom:12px}.tile h3{font-size:18px;color:var(--navy);margin:0 0 8px}.tile p{margin:0;color:var(--muted);font-size:14px}.pagehero{background:linear-gradient(110deg,#edf5fd,#fff);padding:80px 0}.pagehero h1{max-width:850px;font-size:clamp(33px,4vw,52px)}.checks{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin:28px 0}.check{padding:18px 20px;border:1px solid var(--line);border-radius:8px;background:white;font-weight:600}.check:before{content:'✓';color:#1d906a;font-weight:800;margin-right:12px}.notice{background:#eaf3fc;border-left:4px solid var(--blue);padding:17px 22px;margin-top:25px;color:#34516f;font-size:14px}.cta-band{background:var(--navy);color:white;padding:56px 0}.cta-band .wrap{display:flex;justify-content:space-between;align-items:center;gap:25px}.cta-band h2{color:white;margin:0;font-size:29px}.cta-band p{color:#bfd0e1;margin:8px 0 0}.cta-band .btn{background:white;border-color:white;color:var(--navy)}.form{max-width:760px;background:white;border:1px solid var(--line);border-radius:12px;padding:30px;box-shadow:0 12px 35px #143f6410}.fields{display:grid;grid-template-columns:1fr 1fr;gap:17px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:17px}.field label{font-weight:600;font-size:14px}.field input,.field select,.field textarea{width:100%;padding:12px;border:1px solid #bfcedc;border-radius:6px;font:inherit;background:#fff}.field textarea{min-height:135px;resize:vertical}.hidden-field{position:absolute;left:-10000px}.status{padding:12px 16px;border-radius:6px;margin-bottom:20px}.status.ok{background:#e5f6ec;color:#155d35}.status.fail{background:#fff0ee;color:#9c332b}.footer{background:#10253c;color:#d3e0ec;padding:42px 0 24px}.footer a:hover{text-decoration:underline}.footrow{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap}.footer .brand{color:white}.footer .brand small{color:#a4bed2}.fine{border-top:1px solid #36516a;margin-top:30px;padding-top:18px;font-size:12px;color:#b6c6d4}.muted{color:var(--muted)}@media(max-width:1050px){.menu-btn{display:block}.nav{display:none;position:absolute;left:0;right:0;top:76px;background:white;padding:22px 25px;box-shadow:0 15px 25px #18344e22;flex-direction:column;align-items:flex-start}.nav.open{display:flex}.header-inner{position:relative}.hero-inner{padding:65px 0}.nav a{font-size:15px}}@media(max-width:720px){.hero-inner{grid-template-columns:1fr;padding:52px 0 32px}.device-scene{min-height:350px}.float-card{right:6%}.grid,.checks{grid-template-columns:1fr}.fields{grid-template-columns:1fr;gap:0}.section{padding:52px 0}.pagehero{padding:54px 0}.cta-band .wrap{display:block}.cta-band .btn{margin-top:22px}.top{font-size:11px}.form{padding:20px}.brand{font-size:20px}}

/* Four-step visitor workflow */
.workflow-section{background:#fff}.workflow-intro{max-width:760px;margin:0 auto 35px;text-align:center}.workflow-intro .eyebrow{margin-bottom:12px}.workflow-intro .lead{margin:12px auto 0}.workflow-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.workflow-step{position:relative;background:#f5f8fc;border:1px solid #dce6f0;border-radius:14px;padding:25px 21px 26px;min-width:0}.workflow-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:12px;background:#e1edf9;color:#275b98;margin-bottom:18px}.workflow-icon svg{width:29px;height:29px}.workflow-number{font-size:12px;font-weight:800;letter-spacing:.13em;color:#4271a5;margin-bottom:9px}.workflow-step h3{font-size:19px;line-height:1.3;margin:0 0 10px;color:#173453}.workflow-step p{font-size:14px;line-height:1.6;margin:0;color:#536b81}.workflow-bottom{text-align:center;margin-top:28px}@media(max-width:980px){.workflow-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.workflow-grid{grid-template-columns:1fr}.workflow-step{padding:22px}.workflow-intro{text-align:left}}

/* Local entry: Grandstream GDS3725 */
.local-entry-section{background:#f3f7fb}
.local-entry-section .eyebrow{margin-bottom:12px}
.local-entry-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:30px}
.local-entry-card{background:#fff;border:1px solid #dce6f1;border-radius:14px;padding:25px 20px;box-shadow:0 7px 24px rgba(20,45,75,.055)}
.local-entry-icon{display:flex;align-items:center;justify-content:center;width:50px;height:50px;background:#e9f2ff;color:#1c5fa8;border-radius:12px;font-size:29px;margin-bottom:16px}
.local-entry-card h3{font-size:1.13rem;line-height:1.3;margin:0 0 10px;color:#142d4b}
.local-entry-card p{margin:0;color:#53657a;line-height:1.6;font-size:.95rem}
.local-entry-note{font-size:.83rem;color:#65758a;margin:22px 0 0}
@media(max-width:850px){.local-entry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.local-entry-grid{grid-template-columns:1fr}.local-entry-card{padding:20px}}

/* Service-page redesign (2026-10): scoped to new sections */
.upgrade-logo{display:block;width:185px;max-width:100%;height:auto}.upgrade-hero{background:linear-gradient(115deg,#eaf3fd 0%,#f7fbff 55%,#e7f1fc 100%);overflow:hidden}.upgrade-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:46px;align-items:center;padding:70px 0}.upgrade-hero h1{font-size:clamp(34px,4vw,54px);line-height:1.12;letter-spacing:-1.8px;color:var(--navy);margin:15px 0 22px}.upgrade-copy p{font-size:17px;line-height:1.75;color:#526780;max-width:590px}.upgrade-hero-image{min-height:355px;border-radius:20px;overflow:hidden;box-shadow:0 22px 55px #142d4b20;background:#dcebf8}.upgrade-hero-image img{display:block;width:100%;height:100%;min-height:355px;max-height:450px;object-fit:cover}.upgrade-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:32px}.upgrade-card{border:1px solid var(--line);border-radius:14px;background:white;padding:24px;box-shadow:0 10px 24px #123c6010}.upgrade-number{font-weight:800;color:#2465ac;letter-spacing:.12em;font-size:13px}.upgrade-card h3{color:var(--navy);font-size:18px;line-height:1.35;margin:12px 0}.upgrade-card p{font-size:14px;color:var(--muted);line-height:1.65;margin:0}.upgrade-split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:55px}.upgrade-split>img{width:100%;max-height:370px;object-fit:contain;border-radius:14px}.upgrade-split .btn{margin-top:20px}.upgrade-video{background:#f4f8fd}.upgrade-video-frame{position:relative;max-width:900px;aspect-ratio:16/9;border-radius:14px;overflow:hidden;margin-top:24px;background:#142d4b}.upgrade-video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}@media(max-width:960px){.upgrade-grid{grid-template-columns:repeat(2,1fr)}.upgrade-hero-grid{gap:24px}}@media(max-width:720px){.upgrade-hero-grid,.upgrade-split{grid-template-columns:1fr}.upgrade-hero-grid{padding:42px 0}.upgrade-hero-image{min-height:230px}.upgrade-hero-image img{min-height:230px;max-height:310px}.upgrade-grid{grid-template-columns:1fr}.upgrade-reverse>img{order:2}.upgrade-reverse>div{order:1}.upgrade-hero h1{font-size:clamp(32px,8vw,43px)}.upgrade-logo{width:165px}}


/* Layout fix, 2026-10-15 */
body:has(.upgrade-hero) .header .brand{display:flex;align-items:center;min-width:180px}
body:has(.upgrade-hero) .header .brand img.upgrade-logo{display:block!important;width:185px!important;max-height:58px!important;object-fit:contain}
body:has(.upgrade-hero) .upgrade-hero-grid{display:grid!important;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)!important;align-items:center}
body:has(.upgrade-hero) .upgrade-hero-image img{width:100%!important;height:370px!important;max-height:370px!important;object-fit:cover!important}
body:has(.upgrade-hero) .upgrade-split{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;align-items:center}
body:has(.upgrade-hero) .upgrade-split>img{display:block;width:100%!important;height:320px!important;max-height:320px!important;object-fit:contain!important}
body:has(.upgrade-hero) .upgrade-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important}
body:has(.upgrade-hero) .upgrade-video-frame{width:100%;max-width:900px;aspect-ratio:16/9}
body:has(.upgrade-hero) .upgrade-video-frame iframe{width:100%!important;height:100%!important}
@media(max-width:980px){body:has(.upgrade-hero) .upgrade-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:720px){body:has(.upgrade-hero) .upgrade-hero-grid,body:has(.upgrade-hero) .upgrade-split{grid-template-columns:minmax(0,1fr)!important}body:has(.upgrade-hero) .upgrade-grid{grid-template-columns:minmax(0,1fr)!important}body:has(.upgrade-hero) .upgrade-hero-image img{height:260px!important}body:has(.upgrade-hero) .upgrade-split>img{height:250px!important}}

/* Homepage Explore Solutions refresh — 2026-10 */
#explore-solutions .grid{gap:18px}
#explore-solutions .tile{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:flex-end;min-height:240px;padding:20px;border-radius:14px;overflow:hidden;color:#fff;background:#18314e;box-shadow:0 12px 26px #112e4a22;transition:transform .2s ease,box-shadow .2s ease}
#explore-solutions .tile::before{content:"";position:absolute;inset:0;z-index:-2;background-image:var(--card-photo);background-position:center;background-size:cover;transition:transform .35s ease}
#explore-solutions .tile::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(5,19,38,.04) 0%,rgba(7,22,44,.58) 40%,rgba(5,17,34,.95) 100%)}
#explore-solutions .tile:hover{transform:translateY(-3px);box-shadow:0 18px 34px #112e4a35}
#explore-solutions .tile:hover::before{transform:scale(1.04)}
#explore-solutions .tile .symbol{display:flex;align-items:center;justify-content:center;width:43px;height:43px;border-radius:50%;background:#2264bc;color:white;margin-bottom:auto}
#explore-solutions .tile .symbol svg{width:23px;height:23px;stroke:currentColor;fill:none;stroke-width:1.8}
#explore-solutions .tile h3{color:#fff;font-size:19px;line-height:1.2;margin:15px 0 7px;text-shadow:0 1px 3px #0006}
#explore-solutions .tile p{color:#fff;font-size:14px;line-height:1.48;margin:0;max-width:36ch;text-shadow:0 1px 3px #0008}
@media(max-width:720px){#explore-solutions .grid{grid-template-columns:repeat(2,minmax(0,1fr))}#explore-solutions .tile{min-height:255px;padding:16px}#explore-solutions .tile h3{font-size:17px}#explore-solutions .tile p{font-size:13px}}
@media(max-width:470px){#explore-solutions .grid{grid-template-columns:1fr}#explore-solutions .tile{min-height:215px}}
@media(prefers-reduced-motion:reduce){#explore-solutions .tile,#explore-solutions .tile::before{transition:none}}

/* Greater Cleveland service area: English pages only */
.seo-service-area{padding:42px 0;background:#f3f7fb;border-top:1px solid #dce6f1}.seo-service-area h2{font-size:clamp(22px,2.5vw,29px);color:#142d4b;margin:0 0 10px}.seo-service-area p{max-width:900px;color:#415a77;line-height:1.7;margin:0}
