
/* Header */
.site-header{height:80px;background:#fff;border-bottom:1px solid rgba(11,27,46,.075);position:sticky;top:0;z-index:50;}
.header-inner{height:100%;display:flex;align-items:center;gap:34px;}
.brand{display:flex;align-items:center;flex:0 0 auto;}
.brand img{width:190px;height:auto;object-fit:contain;}
.main-nav{margin-left:auto;display:flex;align-items:center;gap:38px;height:100%;}
.main-nav a{position:relative;display:inline-flex;align-items:center;height:100%;font-size:13px;line-height:1;font-weight:700;letter-spacing:-.012em;color:#15253b;white-space:nowrap;}
.main-nav a.active{color:var(--blue)}
.main-nav a.active::after{content:"";position:absolute;left:0;right:0;bottom:18px;height:3px;border-radius:99px;background:var(--blue);}
.header-cta{margin-left:24px;height:42px;display:inline-flex;align-items:center;justify-content:center;padding:0 27px;border-radius:5px;background:var(--blue);color:#fff;font-size:13px;font-weight:800;letter-spacing:-.01em;box-shadow:0 8px 18px rgba(0,87,216,.18);white-space:nowrap;}
.header-cta:hover{background:#004fc5}

/* Buttons */
.btn{height:44px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:0 26px;border-radius:5px;border:1px solid transparent;font-size:13px;font-weight:800;letter-spacing:-.012em;line-height:1;white-space:nowrap;}
.btn-primary{background:var(--blue);color:#fff;box-shadow:0 10px 22px rgba(0,87,216,.16)}
.btn-outline{background:#fff;color:var(--blue);border-color:#b8cff2;box-shadow:0 6px 18px rgba(11,27,46,.035)}
.btn .arrow{font-size:15px;line-height:1;transform:translateY(-1px)}

/* Cards & Icons */
.card{background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-soft);}
.icon-badge{width:58px;height:58px;border-radius:999px;background:#eef5ff;color:var(--blue);display:flex;align-items:center;justify-content:center;flex:0 0 auto;}
.icon-badge.small{width:44px;height:44px}.icon-badge.tiny{width:36px;height:36px}
.icon-badge svg{width:26px;height:26px;stroke:currentColor;stroke-width:1.9;fill:none;stroke-linecap:round;stroke-linejoin:round;}
.icon-badge.small svg{width:21px;height:21px}.icon-badge.tiny svg{width:18px;height:18px}
.learn{margin-top:14px;display:inline-flex;align-items:center;gap:8px;color:var(--blue);font-size:13px;font-weight:800;}

/* CTA and footer */
.cta-strip{margin-top:22px;background:#eef5ff;border-top:1px solid #deebfb;border-bottom:1px solid #dce9fb;position:relative;overflow:hidden;}
.cta-strip::before,.cta-strip::after{content:"";position:absolute;width:270px;height:270px;border:1px solid rgba(0,87,216,.08);border-radius:50%;top:-78px;}
.cta-strip::before{left:90px;box-shadow:0 0 0 30px rgba(0,87,216,.025),0 0 0 62px rgba(0,87,216,.018)}
.cta-strip::after{right:96px;box-shadow:0 0 0 30px rgba(0,87,216,.025),0 0 0 62px rgba(0,87,216,.018)}
.cta-inner{position:relative;z-index:2;min-height:142px;display:flex;align-items:center;justify-content:center;gap:28px;flex-direction:column;text-align:center;}
.cta-copy h2{font-size:25px;line-height:1.12;letter-spacing:-.034em}.cta-copy p{font-size:13.2px;color:#5e6d80;margin-top:8px;font-weight:500;}
.cta-actions{display:flex;gap:22px;align-items:center;}
.site-footer{background:var(--footer);color:#fff;padding:36px 0 26px;}
.footer-inner{display:grid;grid-template-columns:1.1fr 1.4fr;gap:78px;align-items:start;}
.footer-brand img{width:206px;height:auto;margin-bottom:15px;}
.footer-brand p{max-width:330px;color:rgba(255,255,255,.68);font-size:13px;line-height:1.58;font-weight:500;}
.footer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px 52px;}
.footer-grid a,.footer-grid button{background:transparent;border:0;padding:0;color:rgba(255,255,255,.8);font-size:13px;font-weight:650;line-height:1.2;text-align:left;cursor:pointer;font-family:var(--font);}
.footer-grid a:hover,.footer-grid button:hover{color:#fff}.footer-bottom{margin-top:32px;border-top:1px solid rgba(255,255,255,.08);padding-top:18px;text-align:center;color:rgba(255,255,255,.45);font-size:12px;font-weight:500;}
.modal-backdrop{position:fixed;inset:0;background:rgba(5,14,25,.58);display:none;align-items:center;justify-content:center;z-index:100;padding:24px;}
.modal-backdrop.active{display:flex}.modal-card{width:min(560px,100%);background:#fff;border-radius:18px;box-shadow:0 28px 90px rgba(0,0,0,.25);padding:30px;color:var(--text);position:relative;}.modal-close{position:absolute;right:18px;top:15px;border:0;background:#eef5ff;color:#174066;border-radius:50%;width:34px;height:34px;cursor:pointer;font-size:22px;line-height:1}.modal-card h3{font-size:22px;margin-bottom:12px}.modal-card p{font-size:16px;color:#42536a;font-weight:650}.modal-card img{margin-top:18px;border:1px solid var(--border);border-radius:12px}
@media(max-width:1050px){.main-nav{gap:22px}.brand img{width:170px}.header-cta{padding:0 20px}.footer-inner{grid-template-columns:1fr;gap:32px}.footer-grid{gap:18px}}
@media(max-width:760px){.site-header{height:auto}.header-inner{padding:18px 0;flex-wrap:wrap}.main-nav{order:3;width:100%;justify-content:space-between;gap:10px}.header-cta{margin-left:auto}.brand img{width:160px}.cta-inner{height:auto;padding:24px 0}.footer-grid{grid-template-columns:1fr}}


/* Final fix: remove blue focus/active frame on mouse-clicked navigation and buttons */
.main-nav a:focus,
.main-nav a:active,
.site-header a:focus,
.site-header a:active,
.btn:focus,
.btn:active,
.header-cta:focus,
.header-cta:active,
button:focus,
button:active,
a:focus:not(:focus-visible),
button:focus:not(:focus-visible) {
  outline: none !important;
  box-shadow: none !important;
}

.main-nav a:focus-visible,
.site-header a:focus-visible,
.btn:focus-visible,
.header-cta:focus-visible,
button:focus-visible {
  outline: none !important;
  box-shadow: none !important;
}
