/* Current ABI frame extracted from homepage final 9f1f5686. Only dedicated layouts load this file. */
body.abi-current-frame{--violet:#3d2070;--deep:#281347;--ink:#19191b;--muted:#717176;--rule:#dedee1;--gutter:4%;--body:16px;--lh:1.55}
body.abi-current-frame *{box-sizing:border-box}
html:has(>body.abi-current-frame){scroll-behavior:smooth}
body.abi-current-frame{margin:0;background:#fff;color:var(--ink);font-family:Raleway,Arial,sans-serif;font-size:var(--body);line-height:var(--lh)}
body.abi-current-frame button,body.abi-current-frame input,body.abi-current-frame a{-webkit-tap-highlight-color:transparent}
body.abi-current-frame button,body.abi-current-frame input{font:inherit}
body.abi-current-frame button,body.abi-current-frame a{touch-action:manipulation}
body.abi-current-frame button{cursor:pointer}
body.abi-current-frame a{color:inherit;text-decoration:none}
body.abi-current-frame a:focus-visible,body.abi-current-frame button:focus-visible,body.abi-current-frame input:focus-visible,body.abi-current-frame summary:focus-visible{outline:3px solid #9371c4;outline-offset:4px}
body.abi-current-frame button{color:inherit}
body.abi-current-frame img{display:block;max-width:100%}
body.abi-current-frame .skip{position:absolute;top:-100px;background:#fff;padding:12px;z-index:20}
body.abi-current-frame .skip:focus{top:8px}
body.abi-current-frame h1,body.abi-current-frame h2,body.abi-current-frame h3,body.abi-current-frame p{margin:0}
body.abi-current-frame h1,body.abi-current-frame h2,body.abi-current-frame h3{font-weight:600;letter-spacing:-.035em}
body.abi-current-frame h1{font-size:clamp(34px,4.9vw,66px);line-height:1.15}
body.abi-current-frame h2{font-size:clamp(25px,3.1vw,42px);line-height:1.25}
body.abi-current-frame h3{font-size:24px;line-height:1.25}
body.abi-current-frame p{line-height:1.55}
body.abi-current-frame .header{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:18px var(--gutter);gap:20px;z-index:2}
body.abi-current-frame .brandgroup{display:flex;align-items:center;gap:18px}
body.abi-current-frame .brand{display:flex;align-items:center;gap:12px}
body.abi-current-frame .brand img{width:64px;height:64px;border-radius:2px}
body.abi-current-frame .brandword{font-size:23px;letter-spacing:.12em;font-weight:500}
body.abi-current-frame .burger{width:40px;height:44px;display:grid;align-content:center;gap:6px;border:0;background:none;padding:7px 0}
body.abi-current-frame .burger i{height:2px;width:25px;background:currentColor}
body.abi-current-frame .header-contact{font-size:16px;font-weight:600;white-space:nowrap}
body.abi-current-frame .footer{background:var(--deep);color:white;padding:60px var(--gutter) 65px}
body.abi-current-frame .footer-inner{max-width:1280px;margin:auto}
body.abi-current-frame .footernav{display:grid;grid-template-columns:1fr 1fr;gap:50px}
body.abi-current-frame .footernav details{border-bottom:1px solid #ffffff44}
body.abi-current-frame .footernav summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;font-size:28px;font-weight:500;padding:20px 0}
body.abi-current-frame .footernav summary::-webkit-details-marker{display:none}
body.abi-current-frame .footernav summary:after{content:'⌄';font-size:26px;color:#fff9}
body.abi-current-frame .footernav details[open] summary:after{transform:rotate(180deg)}
body.abi-current-frame .footerlinks{display:grid;gap:12px;padding-bottom:24px;font-size:16px}
body.abi-current-frame .footerlinks a{min-height:32px}
body.abi-current-frame .footer-contact{display:flex;gap:14px;flex-wrap:wrap;margin-top:45px}
body.abi-current-frame .footer-contact a{border:1px solid #fff8;border-radius:6px;min-height:46px;padding:10px 20px;font-weight:600}
body.abi-current-frame .social{display:flex;gap:24px;margin-top:42px;font-size:16px;font-weight:600}
body.abi-current-frame .legal{font-size:13px;line-height:1.7;color:#ffffffe0;margin-top:28px;max-width:1000px}
body.abi-current-frame .legal a{text-decoration:underline;text-underline-offset:3px}
body.abi-current-frame .copyright{margin-top:18px}
body.abi-current-frame .overlay{position:fixed;inset:0;background:#0007;z-index:8}
body.abi-current-frame .drawer{position:fixed;left:0;top:0;bottom:0;width:min(79%,440px);background:white;z-index:9;overflow-y:auto;overscroll-behavior:contain;padding-bottom:28px;color:var(--ink);box-shadow:8px 0 35px #0002}
body.abi-current-frame .drawer-head{display:flex;gap:18px;align-items:center;padding:16px 20px}
body.abi-current-frame .drawer-head img{width:60px;height:60px}
body.abi-current-frame .drawer .close{font-size:30px;background:none;border:0;width:34px;height:44px}
body.abi-current-frame .drawer .navgroup{padding:8px 20px;border-bottom:1px solid var(--rule)}
body.abi-current-frame .drawer .navgroup a{display:flex;align-items:center;min-height:48px;font-size:17px}
body.abi-current-frame .drawer .cta{display:block;margin:20px 20px 0;background:var(--violet);color:white;border-radius:40px;text-align:center;font-weight:700;padding:14px}
body.abi-current-frame .drawer small{display:block;padding:20px 20px 0;color:var(--muted)}
body.abi-current-frame [hidden]{display:none!important}
body.abi-current-frame.menu-open{overflow:hidden}
body.abi-current-frame .sr{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:600px){
body.abi-current-frame{--gutter:4%;--body:16px}
body.abi-current-frame .header{padding:10px var(--gutter);gap:10px}
body.abi-current-frame .brandgroup{gap:12px}
body.abi-current-frame .brand img{width:48px;height:48px}
body.abi-current-frame .brandword{font-size:14px;letter-spacing:.08em}
body.abi-current-frame .burger{width:23px}
body.abi-current-frame .burger i{width:19px;height:2px}
body.abi-current-frame .header-contact{font-size:13px}
body.abi-current-frame h1{font-size:31px;line-height:1.18;letter-spacing:-.045em}
body.abi-current-frame h2{font-size:25px;line-height:1.25}
body.abi-current-frame .footer{padding-top:60px;padding-bottom:50px}
body.abi-current-frame .footernav{grid-template-columns:1fr;gap:0}
body.abi-current-frame .footernav summary{font-size:26px;padding:24px 0}
body.abi-current-frame .footer-contact{margin-top:45px;gap:12px}
body.abi-current-frame .footer-contact a{font-size:14px;padding:10px 15px}
body.abi-current-frame .social{font-size:15px;gap:24px;margin-top:43px}
body.abi-current-frame .legal{font-size:13px;line-height:1.55;margin-top:26px}
body.abi-current-frame .drawer-head{padding:10px 16px;gap:12px}
body.abi-current-frame .drawer .navgroup{padding-left:16px;padding-right:16px}
body.abi-current-frame .drawer .navgroup a{min-height:45px;font-size:16px}
body.abi-current-frame .drawer .cta{font-size:15px}
body.abi-current-frame .drawer small{font-size:12px}
}
@media(prefers-reduced-motion:reduce){
html:has(>body.abi-current-frame){scroll-behavior:auto}
}
body.abi-current-frame .header{padding-top:18px}
body.abi-current-frame h1,body.abi-current-frame .footernav summary{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.025em}
body.abi-current-frame .footer{background:#17121d}
body.abi-current-frame .footernav summary{font-size:32px}
body.abi-current-frame .footer-contact{margin-top:60px}
body.abi-current-frame .social{margin-top:48px}
body.abi-current-frame .legal{max-width:900px}
@media(max-width:600px){
body.abi-current-frame .header{padding-top:10px}
body.abi-current-frame .footer{padding-top:54px}
body.abi-current-frame .footernav summary{font-size:29px;padding:24px 0}
body.abi-current-frame .footer-contact{margin-top:48px}
body.abi-current-frame .social{margin-top:40px}
}
body.abi-current-frame .header{max-width:1440px;margin:auto;padding:18px 4%}
@media(max-width:600px){
body.abi-current-frame .header{padding:10px 4%;gap:12px}
body.abi-current-frame .brandgroup{gap:10px}
body.abi-current-frame .brand{gap:9px}
body.abi-current-frame .brand img{width:42px;height:42px}
body.abi-current-frame .brandword{font-size:13px;letter-spacing:.065em}
body.abi-current-frame .header-contact{font-size:12px}
body.abi-current-frame .burger{width:28px;min-height:44px}
}
@media(max-width:360px){
body.abi-current-frame .brandword{font-size:11px;letter-spacing:.025em}
body.abi-current-frame .brand img{width:36px;height:36px}
body.abi-current-frame .header-contact{font-size:11px}
}
/* The same homepage header, in a non-hero masthead on interior pages. */
body.abi-current-frame .abi-current-masthead{background:#3d2070;color:#fff}
body.abi-current-frame .abi-current-masthead>.header{position:relative;inset:auto}
body.abi-current-frame .drawer .close{flex-shrink:0}
