:root{--navy:#071b34;--blue:#0877c9;--sky:#38bdf8;--ink:#102033;--muted:#5d6a78;--paper:#f5f8fb;--white:#fff;--line:#dce6ef}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);line-height:1.55}a{color:inherit}.wrap{width:min(1120px,calc(100% - 36px));margin:auto}.topbar{background:var(--navy);color:#fff}.nav{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brandmark{text-decoration:none;font-weight:900;font-size:1.45rem;letter-spacing:.2px}.brandmark span{color:var(--sky)}.navlinks{display:flex;align-items:center;gap:22px}.navlinks a{text-decoration:none;font-weight:700}.navcta,.btn{display:inline-block;text-decoration:none;border-radius:10px;padding:13px 20px;font-weight:800}.navcta,.btn.primary{background:#fff;color:var(--navy)}.hero{background:linear-gradient(90deg,rgba(3,18,38,.96) 0%,rgba(5,31,58,.87) 42%,rgba(6,35,65,.28) 100%),url("https://static.wixstatic.com/media/e2df6a907c0c4fe6b0112734cf0cf807.jpg/v1/fill/w_940,h_500,al_c,q_85/Network%20Hub%20and%20Cable.jpg") center/cover no-repeat;color:#fff;min-height:580px;display:flex;align-items:center;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;right:-8%;top:-20%;width:58%;height:140%;background:radial-gradient(circle,#39bdf844 0,transparent 65%)}.hero-copy{position:relative;z-index:1;max-width:690px;padding:78px 0}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:.78rem;font-weight:900;color:#7dd3fc}.hero h1{font-size:clamp(2.6rem,6vw,5.2rem);line-height:.98;margin:14px 0 22px}.hero p{font-size:1.18rem;max-width:620px;color:#dcecff}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn.secondary{border:1px solid #ffffff88;color:#fff}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border-bottom:1px solid var(--line)}.stat{background:#fff;text-align:center;padding:28px 18px}.stat strong{display:block;color:var(--blue);font-size:1.8rem}.section{padding:76px 0}.section h2{font-size:clamp(2rem,4vw,3.1rem);margin:0 0 14px}.lead{font-size:1.08rem;color:var(--muted);max-width:760px}.grid2,.plans,.steps{display:grid;gap:22px;margin-top:34px}.grid2{grid-template-columns:1fr 1fr}.plans{grid-template-columns:1fr 1fr}.card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:28px;box-shadow:0 10px 30px #1020330a}.plan.featured{border:2px solid var(--blue)}.price{font-size:2.5rem;font-weight:900;color:var(--navy)}.price small{font-size:.9rem;color:var(--muted)}.plan ul{padding-left:20px}.steps{grid-template-columns:repeat(5,1fr)}.step-num{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:#fff;font-weight:900}.dark{background:var(--navy);color:#fff}.dark .lead{color:#c8d8e8}.quote{font-size:1.08rem}.footer{background:#041225;color:#c9d5e1;padding:38px 0}.footer a{color:#fff}.shell{max-width:760px;margin:auto;padding:32px 20px}.shell header .brand{font-size:1.35rem;font-weight:900;text-decoration:none;color:var(--navy)}.shell .card{margin-top:20px}.row{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid #e6edf4}.row span{color:var(--muted)}form{margin-top:22px}label{display:block;font-weight:800;margin:14px 0 8px}input,select,textarea{width:100%;font-size:16px;padding:13px;border:1px solid #aebdcc;border-radius:9px;background:#fff}button{margin-top:16px;padding:13px 19px;border:0;border-radius:9px;background:var(--navy);color:#fff;font-weight:800}button:disabled{opacity:.5}#message{min-height:24px}[hidden]{display:none!important}.password-field{display:flex;align-items:center;gap:8px}.password-field input{flex:1}.password-toggle{margin-top:0;background:#526274}#bellconChatButton{position:fixed;right:18px;bottom:18px;z-index:20;box-shadow:0 8px 24px #0004}#bellconChat{position:fixed;right:18px;bottom:78px;width:min(360px,calc(100vw - 36px));max-height:70vh;overflow:auto;background:#fff;color:var(--ink);border-radius:16px;padding:18px;z-index:20;box-shadow:0 18px 55px #0005}#bellconChat header{display:flex;justify-content:space-between;align-items:center}#bellconChatClose{margin:0;padding:5px 10px}@media(max-width:760px){.navlinks a:not(.navcta){display:none}.hero{min-height:520px}.hero-copy{padding:60px 0}.stats,.grid2,.plans,.steps{grid-template-columns:1fr}.stat{padding:20px}.section{padding:54px 0}.row{display:block}.row strong{display:block;margin-top:5px}}
/* BellCon visual preview */
body{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.topbar{position:sticky;top:0;z-index:30;background:rgba(4,18,37,.96);backdrop-filter:blur(14px);border-bottom:1px solid rgba(125,211,252,.14)}
.brandmark{display:flex;align-items:center;gap:10px}.brand-orbit{width:38px;height:38px;border:2px solid #4ade80;border-radius:50%;display:grid;place-items:center;color:#4ade80;box-shadow:0 0 20px #22c55e44}.brand-copy{display:grid;line-height:1}.brand-copy b{font-size:1.12rem;letter-spacing:.07em}.brand-copy b span{color:#38bdf8}.brand-copy small{font-size:.53rem;letter-spacing:.28em;margin-top:5px;color:#b8c9d9}.user-login{display:flex;align-items:center;gap:7px}.user-icon{width:31px;height:31px;border:1px solid #65c9ff;border-radius:50%;display:grid;place-items:center;color:#7dd3fc;font-size:19px}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:28px}.hero-brand{position:relative;z-index:2;display:grid;justify-items:center;filter:drop-shadow(0 20px 35px #0008)}.globe{width:min(370px,34vw);aspect-ratio:1;border-radius:50%;position:relative;display:grid;place-items:center;background:radial-gradient(circle at 34% 28%,#4ade80 0 5%,#167346 24%,#073b31 58%,#031e25 76%);border:3px solid #b8fff0;box-shadow:inset -35px -25px 60px #00151caa,0 0 45px #22c55e55}.globe:before,.globe:after{content:"";position:absolute;inset:10%;border:1px solid #c9fff7aa;border-radius:50%}.globe:after{inset:3% 26%;border-width:0 1px}.globe-lines{font-size:clamp(120px,20vw,260px);font-weight:100;color:#d7fff766;line-height:1;animation:bellconSpin 26s linear infinite}.orbit-arrow{position:absolute;font-size:clamp(100px,16vw,220px);color:#fff;transform:rotate(-18deg);text-shadow:0 0 12px #38bdf8,0 0 25px #0284c7}.hero-logo-text{text-align:center;margin-top:16px;display:grid}.hero-logo-text strong{font-size:clamp(2rem,4vw,3.8rem);letter-spacing:.03em;color:#eef6ff;text-shadow:0 4px 10px #000}.hero-logo-text strong span{color:#20a8f5}.hero-logo-text small{letter-spacing:.42em;font-weight:700;color:#dbeafe}.hero-logo-text em{font-style:normal;letter-spacing:.2em;font-size:.72rem;color:#5ee7ff;margin-top:8px}
@keyframes bellconSpin{to{transform:rotate(360deg)}}.card{transition:transform .2s ease,box-shadow .2s ease}.card:hover{transform:translateY(-3px);box-shadow:0 16px 38px #10203318}
@media(prefers-reduced-motion:reduce){.globe-lines{animation:none}}
@media(max-width:900px){.hero-grid{grid-template-columns:1fr}.hero-brand{margin:-10px 0 45px}.globe{width:min(310px,72vw)}}
@media(max-width:760px){.nav{min-height:68px}.brand-copy small{display:none}.user-login span:last-child{display:none}.user-login{display:flex!important}.navlinks{gap:10px}.navcta{padding:10px 13px}.hero h1{font-size:clamp(2.45rem,13vw,4rem)}}

/* Layered BellCon globe: Earth turns horizontally while orbit stays fixed */
.bellcon-earth{overflow:visible;isolation:isolate;background:radial-gradient(circle at 34% 28%,#22c55e 0 4%,#0d6946 24%,#052d2c 58%,#031823 77%)}
.bellcon-earth:before{content:"";position:absolute;inset:0;border-radius:50%;z-index:5;pointer-events:none;background:radial-gradient(circle at 32% 27%,#ffffff38 0 4%,transparent 26%),linear-gradient(90deg,transparent 48%,#00152277 88%);box-shadow:inset -32px -16px 46px #00131bbb,inset 15px 5px 30px #68ffd322}
.earth-map{position:absolute;inset:7%;border-radius:50%;overflow:hidden;z-index:2;background-repeat:repeat-x;background-size:200% 100%;opacity:.9;animation:earthTravel 34s linear infinite}
.map-a{background-image:radial-gradient(ellipse at 18% 30%,#7cff8b 0 6%,transparent 7%),radial-gradient(ellipse at 28% 45%,#58dc6d 0 8%,transparent 9%),radial-gradient(ellipse at 39% 63%,#39b95b 0 8%,transparent 9%),radial-gradient(ellipse at 60% 27%,#83ff91 0 7%,transparent 8%),radial-gradient(ellipse at 71% 48%,#43c965 0 10%,transparent 11%),radial-gradient(ellipse at 82% 66%,#65e77b 0 6%,transparent 7%)}
.map-b{animation-delay:-17s;opacity:.55;filter:blur(.4px);background-image:radial-gradient(ellipse at 12% 56%,#35b85a 0 5%,transparent 6%),radial-gradient(ellipse at 47% 34%,#75f38a 0 8%,transparent 9%),radial-gradient(ellipse at 67% 69%,#3fc45e 0 7%,transparent 8%),radial-gradient(ellipse at 91% 37%,#6bea7c 0 6%,transparent 7%)}
.earth-grid{position:absolute;inset:3%;border-radius:50%;z-index:4;opacity:.7;background:repeating-linear-gradient(0deg,transparent 0 11%,#bffcff77 11.5% 12%),repeating-linear-gradient(90deg,transparent 0 11%,#bffcff66 11.5% 12%);mask-image:radial-gradient(circle,#000 0 69%,transparent 71%)}
.orbit-ring{position:absolute;z-index:7;width:126%;height:45%;left:-13%;top:29%;border:8px solid #e9fbff;border-top-color:#3cbcf8;border-radius:50%;transform:rotate(-14deg);box-shadow:0 0 10px #fff,0 0 24px #079cff}
.bellcon-earth .orbit-arrow{z-index:8;right:-17%;top:18%;font-size:clamp(80px,11vw,155px);transform:rotate(-18deg);position:absolute}
@keyframes earthTravel{from{background-position:0 0}to{background-position:-200% 0}}
@media(prefers-reduced-motion:reduce){.earth-map{animation:none}}

.menu-toggle{display:none;margin:0;background:transparent;border:1px solid #65c9ff;color:#fff;font-size:24px;line-height:1;padding:8px 10px}
@media(max-width:760px){
 .nav{position:relative}.menu-toggle{display:block;order:-1}
 .navlinks{gap:9px}.navlinks>a:not(.navcta):not(.user-login){display:none}
 .navlinks.menu-open{position:absolute;left:0;right:0;top:68px;background:#041225;padding:16px 18px;display:grid;grid-template-columns:1fr;border-top:1px solid #1c4b70;box-shadow:0 18px 35px #0008}
 .navlinks.menu-open>a{display:block!important;padding:11px 8px}.navlinks.menu-open .navcta{display:block;text-align:center}.navlinks.menu-open .user-login{display:flex!important}
}
@media(prefers-reduced-motion:reduce){.earth-map{animation:earthTravel 34s linear infinite!important}}

/* Responsive nav correction: full nav on iPad/desktop, compact mobile only */
@media (min-width:641px){
 .menu-toggle{display:none!important}
 .navlinks>a{display:flex!important}
 .navlinks{gap:clamp(12px,2vw,22px)}
 .navcta{padding:11px 16px!important;white-space:nowrap;font-size:.95rem}
 .user-login{white-space:nowrap}
}
@media (max-width:640px){
 .nav{min-height:66px;gap:8px}
 .brand-copy small{display:none}
 .brand-copy b{font-size:1rem}
 .brand-orbit{width:34px;height:34px}
 .menu-toggle{display:grid!important;place-items:center;width:42px;height:42px;padding:0!important;font-size:22px;border-radius:10px}
 .navlinks{gap:7px}
 .navcta{padding:9px 11px!important;font-size:.78rem!important;line-height:1.05;white-space:nowrap;border-radius:9px}
 .user-login{width:40px;height:40px;justify-content:center}
 .user-icon{width:36px;height:36px}
 .navlinks.menu-open{top:66px}
}

/* Approved BellCon logo composition */
.approved-logo-stage{gap:8px}
.approved-globe-shell{width:min(420px,38vw);aspect-ratio:1;position:relative;filter:drop-shadow(0 0 20px #0aa7ff88)}
.approved-earth{position:absolute;inset:9%;overflow:hidden;border-radius:50%;background:radial-gradient(circle at 34% 28%,#45ff72 0 4%,#126d45 27%,#042b2c 60%,#021522 78%);border:2px solid #c8ffff;box-shadow:inset -35px -15px 50px #00131bbb,0 0 24px #13baff}
.approved-earth .earth-map{inset:0}
.approved-earth .earth-grid{inset:0}
.approved-orbit{position:absolute;inset:2%;border:9px solid transparent;border-top-color:#39bfff;border-right-color:#1388e8;border-radius:50%;filter:drop-shadow(0 0 7px #0aa7ff)}
.approved-orbit:after{content:"";position:absolute;width:116%;height:40%;left:-11%;top:31%;border:9px solid #f7fdff;border-top-color:#48bfff;border-radius:50%;transform:rotate(-15deg);box-shadow:0 0 9px #fff,0 0 18px #0aa7ff}
.approved-orbit:before{content:"➤";position:absolute;z-index:3;right:-13%;top:24%;font-size:clamp(70px,9vw,125px);line-height:1;color:#fff;transform:rotate(-14deg);text-shadow:0 0 9px #fff,0 0 18px #0aa7ff}
.approved-wordmark{display:grid;text-align:center;width:min(570px,48vw);margin-top:-7px}
.approved-wordmark strong{font-family:Arial Black,Impact,sans-serif;font-size:clamp(2.8rem,5.8vw,5.4rem);line-height:.9;letter-spacing:-.055em;filter:drop-shadow(0 5px 5px #0008)}
.approved-wordmark .bell{background:linear-gradient(#fff,#d9e0e8 43%,#7d8793 68%,#fff);-webkit-background-clip:text;color:transparent}
.approved-wordmark .con{background:linear-gradient(#63edff,#00a8ff 48%,#0068df);-webkit-background-clip:text;color:transparent}
.approved-wordmark small{font-size:clamp(.72rem,1.3vw,1.05rem);font-weight:600;letter-spacing:.48em;color:#fff;margin:12px 0 15px}
.approved-wordmark i{height:2px;background:linear-gradient(90deg,transparent,#159cff 8%,#58efff 46%,#fff 50%,#58efff 54%,#159cff 92%,transparent);position:relative}
.approved-wordmark i:after{content:"";position:absolute;width:12px;height:12px;border-radius:50%;background:#c9ffff;box-shadow:0 0 12px #00bfff;left:50%;top:50%;transform:translate(-50%,-50%)}
.approved-wordmark em{font-style:normal;font-size:clamp(.58rem,1.05vw,.86rem);letter-spacing:.28em;color:#43dfff;margin-top:14px}
@media(max-width:900px){.approved-globe-shell{width:min(390px,72vw)}.approved-wordmark{width:min(560px,88vw)}}
@media(max-width:640px){.approved-globe-shell{width:min(330px,82vw)}.approved-wordmark{width:90vw}.approved-wordmark strong{font-size:clamp(3rem,16vw,4.5rem)}.approved-wordmark small{letter-spacing:.35em}.approved-wordmark em{font-size:.58rem;letter-spacing:.2em}}

/* Repair approved logo layout after legacy hero rules */
.approved-logo-stage{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;min-width:0}
.approved-globe-shell{display:block!important;flex:none!important;min-width:250px}
.approved-wordmark{display:grid!important;position:relative!important;z-index:10;flex:none!important;white-space:normal!important}
.approved-wordmark strong{display:block!important;white-space:nowrap!important}
.approved-wordmark small,.approved-wordmark em{display:block!important;white-space:nowrap!important}
@media(max-width:640px){
 .navlinks.menu-open{z-index:1000!important;display:grid!important}
 .navlinks.menu-open>a{display:flex!important}
 .navlinks.menu-open .navcta{display:flex!important;justify-content:center}
 .approved-logo-stage{width:100%!important;margin-top:30px!important}
 .approved-globe-shell{width:min(330px,82vw)!important;min-width:260px!important;height:auto!important}
 .approved-wordmark{width:min(360px,90vw)!important;margin-top:5px!important}
 .approved-wordmark strong{font-size:clamp(3rem,15vw,4.4rem)!important}
 .approved-wordmark small{font-size:.64rem!important;letter-spacing:.34em!important;margin:10px 0 13px!important}
 .approved-wordmark em{font-size:.54rem!important;letter-spacing:.17em!important;margin-top:12px!important}
}

/* Uploaded approved BellCon artwork: preserve exact generated typography/artwork */
.uploaded-logo-stage{display:flex;align-items:center;justify-content:center;width:100%;min-width:0}
.uploaded-bellcon-logo{display:block;width:min(590px,100%);height:auto;object-fit:contain;filter:drop-shadow(0 16px 32px rgba(0,20,55,.35));animation:bellconLogoFloat 7s ease-in-out infinite}
@keyframes bellconLogoFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@media(max-width:640px){
 .uploaded-logo-stage{margin-top:24px}
 .uploaded-bellcon-logo{width:min(390px,94vw)}
}
@media(prefers-reduced-motion:reduce){.uploaded-bellcon-logo{animation:none}}

/* Final proportional sizing for the uploaded full logo artwork */
.uploaded-logo-stage{
  width:100%!important;
  max-width:440px!important;
  margin:0 auto!important;
  padding:12px 0 26px!important;
  overflow:visible!important;
}
.uploaded-bellcon-logo{
  width:100%!important;
  max-width:400px!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
}
@media (max-width:900px){
 .uploaded-logo-stage{max-width:350px!important;padding:0 0 30px!important}
 .uploaded-bellcon-logo{max-width:330px!important}
 .hero-brand{margin:0 auto 20px!important}
}
@media (max-width:640px){
 .uploaded-logo-stage{max-width:270px!important;margin:8px auto 0!important;padding:0 0 24px!important}
 .uploaded-bellcon-logo{width:100%!important;max-width:260px!important}
 .hero-grid{grid-template-columns:minmax(0,1fr)!important;width:100%!important}
 .hero-copy,.hero-brand{min-width:0!important;width:100%!important}
}

/* Balanced final logo sizing: phone / tablet / desktop */
.uploaded-logo-stage{max-width:none!important;width:100%!important;margin:0 auto!important;padding:10px 0 22px!important}
.uploaded-bellcon-logo{display:block!important;width:clamp(300px,34vw,430px)!important;max-width:100%!important;height:auto!important;margin:0 auto!important;object-fit:contain!important;animation:none!important}
@media(max-width:900px) and (min-width:641px){
 .uploaded-logo-stage{padding:14px 0 28px!important}
 .uploaded-bellcon-logo{width:clamp(330px,48vw,400px)!important}
}
@media(max-width:640px){
 .uploaded-logo-stage{margin:14px auto 0!important;padding:0 0 24px!important}
 .uploaded-bellcon-logo{width:min(78vw,330px)!important;max-width:330px!important}
}

/* Requested targeted adjustments only */
.brandmark{height:52px;display:flex;align-items:center;min-width:0;overflow:hidden}
.header-approved-logo{display:block;width:auto;height:46px;max-width:174px;object-fit:contain;object-position:left center;flex:none}

/* Familiar floating chat-bubble treatment */
#bellconChatButton{display:flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;border-radius:24px 24px 6px 24px!important;padding:11px 15px!important;min-height:46px!important;background:#071c36!important;border:1px solid #36bdf5!important;box-shadow:0 10px 28px rgba(0,0,0,.25)!important}
.chat-bubble-glyph{position:relative;display:inline-block;width:23px;height:18px;border:2px solid #7ddcff;border-radius:9px;flex:none}
.chat-bubble-glyph:after{content:"";position:absolute;right:2px;bottom:-5px;width:7px;height:7px;border-right:2px solid #7ddcff;border-bottom:2px solid #7ddcff;transform:skewY(35deg);background:#071c36}
.chat-text{white-space:nowrap}

/* iPad/tablet: enlarge ONLY the existing hero logo, not header or CTA area */
@media(min-width:641px) and (max-width:1024px){
 .uploaded-bellcon-logo{width:min(54vw,465px)!important;max-width:465px!important}
 .header-approved-logo{height:42px;max-width:158px}
}
/* Mobile: preserve current hero-logo proportion; only fit approved artwork into existing header */
@media(max-width:640px){
 .brandmark{height:48px!important;max-width:145px!important}
 .header-approved-logo{height:42px!important;max-width:142px!important}
 .uploaded-bellcon-logo{width:min(78vw,330px)!important;max-width:330px!important}
 #bellconChatButton{padding:10px 12px!important;gap:7px!important;right:14px!important}
 .chat-text{font-size:.82rem}
}

/* New horizontal BellCon header artwork — fill existing space without changing header height */
.header-approved-logo.header-horizontal-logo{
  width:min(260px,24vw)!important;
  max-width:260px!important;
  height:48px!important;
  object-fit:contain!important;
  object-position:left center!important;
}
.brandmark{flex:0 1 270px!important;max-width:270px!important}
@media(min-width:641px) and (max-width:1024px){
 .brandmark{flex-basis:210px!important;max-width:210px!important}
 .header-approved-logo.header-horizontal-logo{width:205px!important;max-width:205px!important;height:44px!important}
}
@media(max-width:640px){
 .brandmark{flex:0 1 168px!important;max-width:168px!important;height:48px!important}
 .header-approved-logo.header-horizontal-logo{width:164px!important;max-width:164px!important;height:43px!important}
}

/* BellCon metallic display typography — headings/navigation only */
:root{--bellcon-display:Arial Black,Arial,sans-serif}
.hero h1,.section h2,.card h3,.stat strong,.price{
 font-family:var(--bellcon-display)!important;
 font-weight:900!important;
 letter-spacing:-.035em;
 color:#eef6ff;
 text-shadow:0 1px 0 #fff,0 2px 0 #8fa7bb,0 4px 12px rgba(0,119,255,.24);
}
.hero h1,.section:not(.dark) h2{
 background:linear-gradient(180deg,#ffffff 0%,#dfe8f1 38%,#7e9bb3 55%,#12bfff 72%,#0877dc 100%);
 -webkit-background-clip:text;background-clip:text;color:transparent!important;
 filter:drop-shadow(0 3px 3px rgba(0,25,55,.28));
}
.section.dark h2{
 background:linear-gradient(180deg,#fff 0%,#dbe8f5 38%,#72dfff 65%,#0ba5f5 100%);
 -webkit-background-clip:text;background-clip:text;color:transparent!important;
}
.card h3,.stat strong,.price{
 background:linear-gradient(180deg,#f8fdff 0%,#c8d5e2 45%,#25c5ff 68%,#0878d7 100%);
 -webkit-background-clip:text;background-clip:text;color:transparent!important;
}
.navlinks>a{
 font-family:var(--bellcon-display)!important;
 font-weight:800!important;
 letter-spacing:.015em;
 color:#eaf5ff!important;
 text-shadow:0 1px 0 #fff3,0 2px 8px #008cff38;
}
.navlinks>a:not(.navcta):hover{color:#65d8ff!important}
.navlinks .navcta{
 background:linear-gradient(180deg,#fff,#e9f3fa)!important;
 color:#09203b!important;
 border:1px solid #8ddcff!important;
 box-shadow:inset 0 1px 0 #fff,0 5px 16px #009dff24!important;
 text-shadow:none!important;
}
.user-login .user-icon{color:#6edcff}
@media(max-width:640px){
 .hero h1{letter-spacing:-.045em}
 .navlinks.menu-open>a{font-family:var(--bellcon-display)!important}
}

/* Mobile header cleanup requested from screenshots — desktop/tablet untouched */
.css-user-icon{position:relative;display:inline-block;width:28px;height:28px;border:2px solid #62d3ff;border-radius:50%;box-sizing:border-box}
.css-user-icon:before{content:"";position:absolute;left:50%;top:5px;width:6px;height:6px;border:1.8px solid #9be7ff;border-radius:50%;transform:translateX(-50%)}
.css-user-icon:after{content:"";position:absolute;left:50%;bottom:5px;width:12px;height:7px;border:1.8px solid #9be7ff;border-radius:8px 8px 4px 4px;transform:translateX(-50%)}
@media(max-width:640px){
 .topbar .nav{position:relative!important;display:flex!important;align-items:center!important;justify-content:center!important;min-height:80px!important;padding-left:18px!important;padding-right:18px!important}
 .brandmark{position:absolute!important;left:50%!important;transform:translateX(-50%)!important;flex:none!important;width:205px!important;max-width:205px!important;height:58px!important;display:flex!important;align-items:center!important;justify-content:center!important;overflow:visible!important}
 .header-approved-logo.header-horizontal-logo{width:200px!important;max-width:200px!important;height:54px!important;object-position:center!important}
 .navlinks{position:static!important;margin:0!important;width:100%!important;display:flex!important;justify-content:flex-end!important;align-items:center!important}
 .navlinks>.menu-toggle{display:flex!important;align-items:center!important;justify-content:center!important;margin:0!important;width:52px!important;height:52px!important;position:relative!important;right:0!important;z-index:4!important}
 .navlinks>a{display:none!important}
 .navlinks.menu-open{position:absolute!important;top:80px!important;left:18px!important;right:18px!important;width:auto!important;padding:22px!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:8px!important;background:#031a33!important;border:1px solid #17456c!important;border-radius:0 0 14px 14px!important;box-shadow:0 18px 35px rgba(0,0,0,.35)!important;z-index:30!important}
 .navlinks.menu-open>.menu-toggle{align-self:flex-end!important;margin:0 0 8px!important;width:48px!important;height:48px!important}
 .navlinks.menu-open>a{display:flex!important;min-height:54px!important;align-items:center!important;padding:8px 14px!important;font-size:1.18rem!important}
 .navlinks.menu-open>.user-login{order:5!important;gap:12px!important}
 .navlinks.menu-open>.user-login .login-label{display:inline!important}
 .navlinks.menu-open>.navcta{display:none!important}
 .navlinks.menu-open .css-user-icon{width:30px!important;height:30px!important;flex:none!important}
}

/* Nudge mobile Login row safely inside menu */
@media(max-width:640px){
 .navlinks.menu-open>.user-login{
   padding-left:30px!important;
   gap:10px!important;
 }
 .navlinks.menu-open>.user-login .css-user-icon{
   margin-left:0!important;
   flex:0 0 30px!important;
 }
}

/* Explicit mobile Login placement: keep icon fully inside menu and directly beside label */
@media(max-width:640px){
 .navlinks.menu-open>.user-login{
   box-sizing:border-box!important;
   width:100%!important;
   padding-left:52px!important;
   padding-right:14px!important;
   display:flex!important;
   align-items:center!important;
   justify-content:flex-start!important;
   gap:12px!important;
   transform:none!important;
 }
 .navlinks.menu-open>.user-login .css-user-icon{
   position:relative!important;
   left:0!important;
   margin:0!important;
   transform:none!important;
   flex:0 0 30px!important;
 }
 .navlinks.menu-open>.user-login .login-label{
   margin:0!important;
   padding:0!important;
 }
}

/* Mobile menu: Login text first, account icon on its RIGHT, both fully inside panel */
@media(max-width:640px){
  .navlinks.menu-open>.user-login{
    width:auto!important;
    padding:0!important;
    margin-left:76px!important;
    margin-right:28px!important;
    display:flex!important;
    flex-direction:row-reverse!important;
    justify-content:flex-end!important;
    align-items:center!important;
    gap:12px!important;
    transform:none!important;
  }
  .navlinks.menu-open>.user-login .css-user-icon{
    position:static!important;
    inset:auto!important;
    margin:0!important;
    transform:none!important;
    flex:0 0 30px!important;
  }
}

/* BellCon metallic-blue display text: keep body/descriptive copy untouched */
:is(h1,h2,h3,.section-title,.price,.stat strong,.plan-price,.step-number,.eyebrow,.kicker) {
  color:#087fc4;
}
@supports ((-webkit-background-clip:text) or (background-clip:text)) {
  :is(h1,h2,h3,.section-title,.price,.stat strong,.plan-price,.step-number,.eyebrow,.kicker) {
    background-image:linear-gradient(180deg,#d8f4ff 0%,#55c8ff 20%,#078bd2 47%,#005aa7 68%,#42c8ff 84%,#0875ba 100%);
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    text-shadow:none;
  }
}
/* Stronger outline/shadow where metallic headings sit on white */
:is(.stats,.section-light,.plans,.plan-card,.support-card) :is(h1,h2,h3,.section-title,.price,.stat strong,.plan-price,.step-number) {
  filter:drop-shadow(0 1px 0 rgba(0,58,110,.22));
}

/* Restore the mobile Login row exactly to the prior screenshot-2 arrangement */
@media(max-width:640px){
 .navlinks.menu-open>.user-login{
   box-sizing:border-box!important;
   width:100%!important;
   padding-left:30px!important;
   padding-right:14px!important;
   margin:0!important;
   display:flex!important;
   flex-direction:row!important;
   align-items:center!important;
   justify-content:flex-start!important;
   gap:10px!important;
   transform:none!important;
 }
 .navlinks.menu-open>.user-login .css-user-icon{
   position:relative!important;
   inset:auto!important;
   left:0!important;
   width:30px!important;
   height:30px!important;
   margin:0!important;
   transform:none!important;
   flex:0 0 30px!important;
 }
 .navlinks.menu-open>.user-login .login-label{
   margin:0!important;
   padding:0!important;
 }
}

/* FINAL visibility correction: display text must be BLUE-filled, never white-on-white */
:is(h1,h2,h3,.section-title,.price,.stat strong,.plan-price,.step-number,.eyebrow,.kicker){
  color:#086fb5!important;
  -webkit-text-fill-color:unset!important;
  background:none!important;
  background-image:linear-gradient(180deg,#45c9ff 0%,#138fd3 32%,#075f9f 62%,#063f77 100%)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  -webkit-text-fill-color:transparent!important;
  text-shadow:0 1px 0 rgba(0,40,80,.25)!important;
  filter:drop-shadow(0 1px 0 rgba(0,57,105,.20))!important;
}
/* Solid blue fallback if text-gradient clipping is unavailable */
@supports not ((-webkit-background-clip:text) or (background-clip:text)){
 :is(h1,h2,h3,.section-title,.price,.stat strong,.plan-price,.step-number,.eyebrow,.kicker){
   background:none!important;
   color:#086fb5!important;
   -webkit-text-fill-color:#086fb5!important;
 }
}
/* FINAL mobile Login: one intact SVG LEFT of Login, fully inside menu */
.login-user-svg{width:32px;height:32px;display:block;color:#63d5ff;overflow:visible;flex:none}
.login-user-svg:before,.login-user-svg:after{content:none!important;display:none!important}
@media(max-width:640px){
 .navlinks.menu-open>.user-login{
   box-sizing:border-box!important;
   width:100%!important;
   margin:0!important;
   padding:8px 14px 8px 30px!important;
   display:flex!important;
   flex-direction:row!important;
   align-items:center!important;
   justify-content:flex-start!important;
   gap:12px!important;
   transform:none!important;
 }
 .navlinks.menu-open>.user-login .login-user-svg{
   position:static!important;
   width:32px!important;
   height:32px!important;
   margin:0!important;
   transform:none!important;
   flex:0 0 32px!important;
 }
 .navlinks.menu-open>.user-login .login-label{
   display:inline!important;
   margin:0!important;
   padding:0!important;
 }
}

/* Match section headings to the approved blue used by $29.99 / 1 local number.
   Applies at iPad/desktop and iPhone widths. */
:root{--bellcon-approved-blue:#118fcb}
:is(h1,h2,h3,.section-title,.price,.stat strong,.plan-price,.step-number,.eyebrow,.kicker){
  color:var(--bellcon-approved-blue)!important;
  background:none!important;
  background-image:none!important;
  -webkit-background-clip:border-box!important;
  background-clip:border-box!important;
  -webkit-text-fill-color:var(--bellcon-approved-blue)!important;
  text-shadow:none!important;
  filter:none!important;
}
/* Keep the main section headings/numbers identical across iPad and iPhone */
@media(max-width:1024px){
 :is(h1,h2,h3,.section-title,.price,.stat strong,.plan-price,.step-number,.eyebrow,.kicker){
   color:var(--bellcon-approved-blue)!important;
   -webkit-text-fill-color:var(--bellcon-approved-blue)!important;
 }
}

/* Keep iPhone display typography identical to iPad/desktop.
   Mobile may reflow lines, but font face/weight/colour/effects are inherited unchanged. */
@media(max-width:640px){
 .hero h1,
 .section h2,
 .section h3,
 .section-title,
 .price,
 .plan-price,
 .stat strong,
 .eyebrow,
 .kicker{
   font-family:var(--bellcon-display,Arial Black,Arial,sans-serif)!important;
   font-weight:900!important;
   font-style:normal!important;
   letter-spacing:inherit!important;
   color:var(--bellcon-approved-blue,#118fcb)!important;
   background:none!important;
   background-image:none!important;
   -webkit-background-clip:border-box!important;
   background-clip:border-box!important;
   -webkit-text-fill-color:var(--bellcon-approved-blue,#118fcb)!important;
   text-shadow:none!important;
   filter:none!important;
 }
 /* Do not let an older mobile rule substitute a different hero-heading type treatment */
 .hero h1{
   text-transform:none!important;
 }
}

/* Restore approved iPad two-tone BellCon blue fill and use it identically on iPhone */
:root{
  --bellcon-blue-top:#19b8ee;
  --bellcon-blue-mid:#078fd0;
  --bellcon-blue-bottom:#075b9e;
}
:is(.hero h1,.section h2,.section h3,.section-title,.price,.plan-price,.stat strong,.eyebrow,.kicker){
  color:#078fd0!important;
  background-image:linear-gradient(180deg,
    var(--bellcon-blue-top) 0%,
    var(--bellcon-blue-mid) 52%,
    var(--bellcon-blue-bottom) 100%)!important;
  background-color:transparent!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  -webkit-text-fill-color:transparent!important;
  text-shadow:none!important;
  filter:none!important;
}
/* Same exact fill on iPhone — no mobile colour override */
@media(max-width:640px){
 :is(.hero h1,.section h2,.section h3,.section-title,.price,.plan-price,.stat strong,.eyebrow,.kicker){
   color:#078fd0!important;
   background-image:linear-gradient(180deg,
     var(--bellcon-blue-top) 0%,
     var(--bellcon-blue-mid) 52%,
     var(--bellcon-blue-bottom) 100%)!important;
   background-color:transparent!important;
   -webkit-background-clip:text!important;
   background-clip:text!important;
   -webkit-text-fill-color:transparent!important;
   text-shadow:none!important;
   filter:none!important;
 }
}


/* Migration customer-flow additions */
.account-identity{margin-top:12px;display:grid;gap:2px}.account-identity strong{font-size:1rem;color:var(--navy)}.account-identity span{font-size:.92rem;color:var(--muted);overflow-wrap:anywhere}

/* Approved BellCon brand proportions recovered from the final mobile design reference. */
.brand-copy-approved{min-width:190px}.brand-copy-approved b{font-size:1.35rem}.brand-copy-approved small{font-size:.58rem;letter-spacing:.32em}.brand-copy-approved i{font-style:normal;font-size:.38rem;letter-spacing:.16em;color:#9fb6cb;margin-top:5px;white-space:nowrap}
.approved-logo-placeholder{min-height:430px;align-content:center}.approved-globe-mark{width:min(390px,36vw);aspect-ratio:1;position:relative;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle at 38% 32%,#2ee87b 0 4%,#147548 20%,#052f39 57%,#021725 75%);border:4px solid #9fefff;box-shadow:inset -34px -25px 58px #00121daa,0 0 38px #0ea5e977}.approved-globe{font-size:clamp(180px,27vw,350px);line-height:1;color:#d9ffff80}.approved-orbit{position:absolute;font-size:clamp(120px,18vw,235px);color:#fff;transform:rotate(-17deg);text-shadow:0 0 12px #38bdf8,0 0 25px #0284c7}
@media(max-width:760px){.brand-copy-approved{min-width:0}.brand-copy-approved b{font-size:1rem}.brand-copy-approved small{display:block;font-size:.43rem;letter-spacing:.25em}.brand-copy-approved i{font-size:.28rem;letter-spacing:.09em}.approved-logo-placeholder{min-height:410px;margin-bottom:20px}.approved-globe-mark{width:min(330px,78vw)}}

/* Final approved BellCon typography and mobile composition reference. */
:root{--bellcon-display:Arial,Helvetica,sans-serif;--bellcon-body:Arial,Helvetica,sans-serif}
body{font-family:var(--bellcon-body);font-weight:400;letter-spacing:0}
.navlinks a,.navcta,.btn,.eyebrow,.stat strong,.price,.step-num,button,label{font-family:var(--bellcon-body)}
.hero h1,.section h2{font-family:var(--bellcon-display);font-weight:800;letter-spacing:-.035em}
.hero h1{max-width:680px}.hero p,.lead{font-weight:400;letter-spacing:0}.eyebrow{font-size:.75rem;letter-spacing:.17em}.btn,.navcta{border-radius:6px}.card{border-radius:14px}
.brand-copy-approved b,.hero-logo-text strong{font-family:Arial Black,Arial,Helvetica,sans-serif;font-weight:900}.brand-copy-approved small,.brand-copy-approved i,.hero-logo-text small,.hero-logo-text em{font-family:Arial,Helvetica,sans-serif;font-weight:700}
@media(max-width:760px){.wrap{width:min(100% - 30px,1120px)}.nav{gap:10px}.brandmark{gap:6px}.brand-copy-approved b{font-size:.96rem;letter-spacing:.055em}.brand-copy-approved small{font-size:.39rem;letter-spacing:.23em;margin-top:3px}.brand-copy-approved i{font-size:.25rem;letter-spacing:.065em;margin-top:3px}.navcta{font-size:.82rem;padding:9px 11px}.hero-copy{padding:48px 0 28px}.hero h1{font-size:clamp(2.35rem,12vw,3.55rem);line-height:1.01;margin:12px 0 18px}.hero p{font-size:1.03rem;line-height:1.55}.hero-brand{margin:0 0 34px}.hero-logo-text{margin-top:10px}.hero-logo-text strong{font-size:clamp(2.05rem,11vw,3.15rem)}.hero-logo-text small{font-size:.62rem;letter-spacing:.32em}.hero-logo-text em{font-size:.55rem;letter-spacing:.14em}.section h2{line-height:1.08}}

.account-brand{display:inline-grid!important;line-height:1!important;text-decoration:none!important}.account-brand strong{font-family:Arial Black,Arial,Helvetica,sans-serif;font-size:1.25rem;letter-spacing:.06em;color:var(--navy)}.account-brand strong span{color:var(--blue)}.account-brand small{font-size:.5rem;letter-spacing:.28em;color:var(--muted);margin-top:4px}.shell>header{padding-top:8px}.shell>header h1{font-family:var(--bellcon-display);font-weight:800;letter-spacing:-.025em;line-height:1.08;margin-top:22px}

.service-choice{display:inline-flex!important;align-items:center;justify-content:center;background:#071b34!important;color:#fff!important;border:2px solid #2aa8e8!important;border-radius:10px!important;padding:13px 22px!important;font-weight:800!important;text-decoration:none!important;box-shadow:0 3px 0 rgba(7,27,52,.28),0 6px 14px rgba(7,27,52,.16)!important;min-width:150px}.service-choice:active{transform:translateY(2px);box-shadow:0 1px 0 rgba(7,27,52,.28),0 3px 8px rgba(7,27,52,.14)!important}

/* Temporary new-site reassurance + attention effects */
.topbar{position:sticky;top:0;z-index:1000}
.new-site-banner{background:#f7b928;color:#071b34;border-top:1px solid rgba(7,27,52,.16);padding:8px 18px;text-align:center;box-shadow:0 3px 10px rgba(0,0,0,.12);animation:newSitePulse 2.6s ease-in-out infinite}
.new-site-banner strong{font-weight:900;letter-spacing:.035em;margin-right:10px}
.new-site-banner span{font-weight:650}
@keyframes newSitePulse{0%,100%{background:#f7b928;box-shadow:0 3px 10px rgba(0,0,0,.12),0 0 0 rgba(255,215,64,0)}50%{background:#ffe16b;box-shadow:0 4px 14px rgba(0,0,0,.18),0 0 22px 8px rgba(255,210,38,.88),0 0 42px 16px rgba(255,223,88,.52)}}
.service-choice{position:relative;overflow:hidden}
.service-choice::after{content:"";position:absolute;top:-45%;left:-35%;width:24%;height:190%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.2),rgba(255,255,255,.95),rgba(255,255,255,.2),transparent);transform:skewX(-18deg);animation:serviceSweep 2.4s linear infinite;pointer-events:none}
@keyframes serviceSweep{0%{left:-35%}58%,100%{left:125%}}
@media(max-width:640px){.new-site-banner{padding:7px 12px;font-size:.78rem;line-height:1.25}.new-site-banner strong{display:block;margin:0 0 2px}.new-site-banner span{display:block}}
@media(prefers-reduced-motion:reduce){.new-site-banner,.service-choice::after{animation:none}}


/* Mobile hero artwork: keep the complete approved logo visible inside the hero */
@media(max-width:640px){
 .hero{height:auto!important;min-height:0!important;overflow:visible!important}
 .hero .hero-grid{padding-bottom:28px!important}
 .hero .uploaded-logo-stage{height:auto!important;min-height:0!important;overflow:visible!important;margin:18px auto 0!important;padding:0 0 18px!important}
 .hero .uploaded-bellcon-logo{display:block!important;width:min(86vw,360px)!important;max-width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;object-position:center!important}
}


/* Release-candidate fixes: visible Need Help copy and dedicated phone Get Started */
.mobile-get-started{display:none}
.need-help-card,.need-help-card p{color:#102033!important}
.need-help-card a{color:#086fae!important;text-decoration:underline}
@media(max-width:640px){
 .topbar .nav{padding-left:18px!important;padding-right:18px!important}
 .mobile-get-started{
   display:inline-flex!important;position:absolute!important;right:78px!important;top:50%!important;
   transform:translateY(-50%)!important;z-index:5!important;align-items:center!important;justify-content:center!important;
   padding:8px 9px!important;border:1px solid #8ddcff!important;border-radius:7px!important;
   background:linear-gradient(180deg,#fff,#e9f3fa)!important;color:#09203b!important;
   text-decoration:none!important;font-size:.72rem!important;font-weight:800!important;line-height:1!important;white-space:nowrap!important;
   box-shadow:inset 0 1px 0 #fff,0 4px 12px #009dff24!important
 }
}
@media(min-width:641px){.mobile-get-started{display:none!important}}


/* Safari release-candidate fix: explicitly reset inherited WebKit text-fill/background
   on Need Help body copy. Safari can retain transparent text fill from earlier
   gradient-text rules even when color is overridden. */
.need-help-card p,
.need-help-card p strong,
.need-help-card p a{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  background:none!important;
  background-image:none!important;
  -webkit-background-clip:border-box!important;
  background-clip:border-box!important;
  -webkit-text-fill-color:#102033!important;
  color:#102033!important;
  text-shadow:none!important;
  filter:none!important;
}
.need-help-card p a{
  display:inline!important;
  -webkit-text-fill-color:#086fae!important;
  color:#086fae!important;
  text-decoration:underline!important;
}


/* Need Help: plain body copy, intentionally independent of paragraph/heading effects. */
.need-help-card .need-help-copy,
.need-help-card .need-help-copy div,
.need-help-card .need-help-copy strong{
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:1rem!important;
  font-weight:400!important;
  line-height:1.55!important;
  color:#000!important;
  -webkit-text-fill-color:#000!important;
  background:none!important;
  background-image:none!important;
  -webkit-background-clip:border-box!important;
  background-clip:border-box!important;
  opacity:1!important;
  visibility:visible!important;
  text-shadow:none!important;
  filter:none!important;
}
.need-help-card .need-help-copy{display:grid!important;gap:14px!important;margin-top:12px!important}
.need-help-card .need-help-copy strong{font-weight:700!important}
.need-help-card .need-help-copy a{
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:1rem!important;
  font-weight:400!important;
  color:#000!important;
  -webkit-text-fill-color:#000!important;
  background:none!important;
  text-decoration:underline!important;
}

.need-help-card .need-help-email{
  color:#000!important;
  -webkit-text-fill-color:#000!important;
  text-decoration:none!important;
}


/* Final mobile header placement: logo centered, Get Started in unused left slot,
   menu on the right. Keep all three from overlapping. */
@media(max-width:640px){
  .topbar .nav{padding-left:10px!important;padding-right:10px!important}
  .mobile-get-started{
    left:10px!important;
    right:auto!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    min-width:0!important;
    padding:8px 8px!important;
    font-size:.68rem!important;
    z-index:6!important;
  }
  .brandmark{
    left:50%!important;
    transform:translateX(-50%)!important;
    width:190px!important;
    max-width:190px!important;
  }
  .header-approved-logo.header-horizontal-logo{
    width:186px!important;
    max-width:186px!important;
  }
  .navlinks>.menu-toggle{
    margin-left:auto!important;
    width:50px!important;
    height:50px!important;
    z-index:6!important;
  }
}

/* Institution checker + mobile chat safe-area release bundle */
.institution-checker{margin-top:16px;padding:14px;border:1px solid var(--line);border-radius:10px;background:#f8fbfd}.institution-checker label{margin:0 0 8px}.institution-result{margin:9px 0 0;font-size:.92rem;font-weight:700;color:var(--navy)}
#bellconChat{display:flex;flex-direction:column;overflow:hidden;max-height:min(70vh,calc(100dvh - 110px))}#bellconChat>header{position:sticky;top:0;z-index:3;flex:none;background:#fff;padding-bottom:8px;border-bottom:1px solid var(--line);gap:8px}#bellconChatMessages{overflow:auto;min-height:80px;max-height:34vh}#bellconChatBack{margin:0;padding:6px 9px;font-size:.78rem}#bellconChatClose{flex:none}
@media(min-width:641px){#how .steps{align-items:start}.step-four .institution-checker{position:absolute;margin-top:30px;width:calc((100% - 88px)/5)}.step-four{position:relative}#how{padding-bottom:210px}}
@media(max-width:640px){.step-four .institution-checker{margin-top:14px}#bellconChat{top:calc(env(safe-area-inset-top,0px) + 8px)!important;bottom:calc(env(safe-area-inset-bottom,0px) + 8px)!important;right:8px!important;left:8px!important;width:auto!important;max-height:none!important;height:auto!important;padding:12px!important}#bellconChat>header{padding-top:2px}#bellconChatMessages{max-height:none;flex:1;min-height:100px}#bellconChat form{flex:none;margin-top:10px}#bellconChatBack{font-size:.72rem;padding:7px}#bellconChatClose{font-size:1.15rem;padding:6px 11px}}

.chat-badge{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;margin-left:5px;border-radius:999px;background:#fff;color:var(--navy);font-size:.75rem;font-weight:800}.chat-badge[hidden]{display:none!important}

/* Institution guidance responsive refinement */
.institution-checker{width:100%;max-width:none}.institution-checker select{width:100%;min-width:0}.institution-result{display:grid;gap:5px}.institution-result span{display:block;font-weight:500}.institution-result strong{font-weight:800}@media(min-width:641px){#how .step-four .institution-checker{position:absolute;left:0;width:min(620px,calc(200vw - 40px));max-width:620px;margin-top:30px;padding:18px}.step-four .institution-checker select{font-size:1rem;padding:12px}.step-four .institution-result{grid-template-columns:1fr 1fr;column-gap:18px}.step-four .institution-result strong{grid-column:1/-1}.step-four .institution-result span:last-child{justify-self:start}}

/* Emergency mobile chat correction: fixed controls + one scrollable transcript */
@media(max-width:640px){body.chat-open{overflow:hidden!important}#bellconChat{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;max-height:100dvh!important;border-radius:0!important;padding:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;background:#fff!important;z-index:9999!important}#bellconChat[hidden]{display:none!important}#bellconChat>header{position:relative!important;top:auto!important;display:grid!important;grid-template-columns:auto 1fr auto!important;align-items:center!important;gap:8px!important;flex:0 0 auto!important;padding:calc(env(safe-area-inset-top,0px) + 10px) 12px 10px!important;background:#fff!important;border-bottom:1px solid var(--line)!important;z-index:2!important}#bellconChat>header strong{text-align:center;font-size:.9rem!important;white-space:nowrap}#bellconChatBack,#bellconChatClose{display:inline-flex!important;align-items:center!important;justify-content:center!important;margin:0!important;position:static!important}#bellconChatBack{font-size:.72rem!important;padding:8px!important;white-space:nowrap!important}#bellconChatClose{font-size:1.35rem!important;width:42px!important;height:42px!important;padding:0!important}#bellconChatMessages{flex:1 1 auto!important;min-height:0!important;max-height:none!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;padding:14px 16px!important}#bellconIdentifyForm,#bellconChatForm,#bellconIdentifyStatus,#bellconChatStatus{flex:0 0 auto!important;margin:0!important;padding-left:16px!important;padding-right:16px!important}#bellconIdentifyForm{padding-top:6px!important}#bellconChatForm{padding-top:8px!important}#bellconChatStatus{padding-top:6px!important;padding-bottom:calc(env(safe-area-inset-bottom,0px) + 10px)!important}#bellconChat textarea{min-height:64px!important;max-height:90px!important}#bellconChat form label{margin:4px 0!important}#bellconChat form button{margin-top:7px!important;padding:10px 16px!important}}

/* Final institution checker sizing */
@media(min-width:641px){#how .step-four .institution-checker{position:absolute!important;left:0!important;width:420px!important;max-width:min(420px,calc(100vw - 48px))!important;margin-top:24px!important;padding:14px!important}.step-four .institution-result{grid-template-columns:1fr!important}.step-four .institution-checker select{width:100%!important;max-width:100%!important}.institution-result:not(:empty){margin-top:12px!important;padding:10px 12px!important;background:#fff!important;border:1px solid var(--line)!important;border-radius:8px!important}}

/* Compact tablet/desktop institution checker */
@media(min-width:641px){#how .step-four .institution-checker{width:300px!important;max-width:300px!important;padding:12px!important;margin-top:18px!important}.step-four .institution-checker select{width:100%!important;font-size:.9rem!important;padding:9px 10px!important}.step-four .institution-result{width:100%!important;font-size:.86rem!important;line-height:1.35!important}}

/* iPad institution checker containment + always-visible guidance */
#how .step-four{overflow:visible!important}#how .institution-checker{box-sizing:border-box!important}#how .institution-checker select{display:block!important;box-sizing:border-box!important;min-width:0!important;max-width:100%!important}#how .institution-result{display:grid!important;gap:5px!important;visibility:visible!important;overflow:visible!important;min-height:54px!important}@media(min-width:641px) and (max-width:1180px){#how .step-four .institution-checker{left:0!important;width:260px!important;max-width:260px!important;padding:10px!important}#how .step-four .institution-checker select{width:238px!important;max-width:238px!important;font-size:14px!important}#how{padding-bottom:250px!important}}

/* Customer / Affiliate login chooser */
.login-choice{position:relative;display:flex;align-items:center}.login-choice-toggle{margin:0;padding:0;border:0;background:transparent;border-radius:0;font:inherit;color:inherit;cursor:pointer}.login-choice-menu{position:absolute;z-index:60;right:0;top:calc(100% + 14px);width:270px;padding:8px;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 45px #0005}.login-choice-menu a{display:block!important;padding:12px 13px!important;border-radius:9px;text-decoration:none!important}.login-choice-menu a:hover,.login-choice-menu a:focus{background:#eef7fd}.login-choice-menu strong,.login-choice-menu small{display:block}.login-choice-menu strong{color:var(--navy)}.login-choice-menu small{margin-top:2px;color:var(--muted);font-weight:500;font-size:.78rem}.login-choice-toggle[aria-expanded="true"] .user-icon{box-shadow:0 0 0 3px #38bdf833}
@media(max-width:640px){.login-choice{width:40px;height:40px}.login-choice-toggle{width:40px;height:40px;justify-content:center}.login-choice-menu{position:fixed;left:18px;right:18px;top:72px;width:auto}.navlinks.menu-open .login-choice{width:100%;height:auto}.navlinks.menu-open .login-choice-toggle{width:auto;height:auto;padding:11px 8px;gap:7px}.navlinks.menu-open .login-choice-toggle .login-label{display:inline}.navlinks.menu-open .login-choice-menu{position:absolute;left:0;right:0;top:100%;width:auto}}
