/* Global styles of the design (its <helmet> block) */
*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;-webkit-font-smoothing:antialiased;font-family:Inter,sans-serif;color:#093346}
a{color:#093346;text-underline-offset:4px}
a:hover{color:#0F4C68}
button,input,select,textarea{font:inherit}
:focus-visible{outline:3px solid currentColor;outline-offset:4px}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}

/* Skip link (design: off-screen until focused) */
.aio-skip{position:absolute;left:16px;top:-80px;z-index:100;background:#fff;color:#093346;font-family:Montserrat;font-weight:700;padding:14px 20px}
.aio-skip:focus{top:16px}

/* Elementor wraps every widget; keep the design's own spacing */
.aio-page{display:block!important;padding:0!important}
.aio-page>.elementor-element,.aio-page>.e-con-inner>.elementor-element{width:100%;max-width:none}
.elementor-widget:not(:last-child){margin-block-end:0}
.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px}
.elementor .elementor-widget figure{margin:0}
.elementor img{height:revert-layer}
.e-con.aio-page{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--gap:0px;--row-gap:0px;--column-gap:0px}
.admin-bar [data-aio-nav]{top:32px}@media (max-width:782px){.admin-bar [data-aio-nav]{top:46px}}

/* Reveal on scroll: hidden only when scripts run with motion allowed (site.js adds .rv-in) */
.aio-motion [data-rv]:not(.rv-in){--rv-o:0;--rv-y:32px;--rv-clip:inset(0% 0% 100% 0%)}
.aio-motion [data-rv^="ip"]:not(.rv-in){--rv-y:28px}

/* Plain WordPress pages (not built in Elementor), archives and 404 */
.aio-wrap{max-width:1312px;margin:0 auto}
.aio-basic-hero{background:#093346;color:#fff;padding:clamp(140px,16vw,210px) clamp(20px,4.5vw,64px) clamp(56px,7vw,96px)}
.aio-basic-hero h1{margin:0;font-family:Montserrat;font-weight:800;font-size:clamp(40px,6.4vw,96px);line-height:.95;letter-spacing:-.035em;text-wrap:balance}
.aio-basic-hero p{margin:20px 0 0;max-width:620px;font-size:19px;line-height:1.6;color:#E4E9EC}
.aio-eyebrow{font-family:Montserrat;font-weight:600;font-size:13px;letter-spacing:.2em;color:#9FB3BE;margin-bottom:24px}
.aio-btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px!important}
.aio-btn{display:inline-flex;align-items:center;min-height:56px;padding:0 28px;border:1px solid #9FB3BE;color:#fff;font-family:Montserrat;font-weight:700;font-size:15px;letter-spacing:.06em;text-decoration:none}
.aio-btn--red{background:#E82400;border-color:#E82400}
.aio-btn:hover{color:#fff;background:#0F4C68}
.aio-basic{padding:clamp(56px,8vw,120px) clamp(20px,4.5vw,64px)}
.aio-prose{max-width:760px;font-size:18px;line-height:1.7;color:#2B4A5A}
.aio-prose h2,.aio-prose h3{font-family:Montserrat;color:#093346;letter-spacing:-.02em}
.aio-list{list-style:none;margin:0;padding:0;display:grid;gap:24px}
.aio-list a{font-family:Montserrat;font-weight:700;font-size:22px;text-decoration:none}

/* Elementor editor preview of the header/footer templates: header on navy, every mega menu shown */
.elementor-editor-active .elementor-widget-aio-site-header{background:#093346}
.elementor-editor-active .elementor-widget-aio-site-header [data-aio-nav]{position:relative!important}
.elementor-editor-active .elementor-widget-aio-site-header [data-mega][hidden]{display:block!important;margin-bottom:24px}
.elementor-editor-active .elementor-widget-aio-quick-actions [role="region"]{position:relative!important;transform:none!important;inset:auto!important;padding:16px!important}
.elementor-editor-active .elementor-widget-aio-site-header [data-mega]>div{opacity:1!important;transform:none!important}
