:root{--mos-navy:#2d425b;--mos-blue:#489df2;--mos-cyan:#078fbb;--mos-line:#aad0ff;--mos-text:#31343a}
*{box-sizing:border-box}html{scroll-behavior:smooth}body.mos-site{margin:0;background:#fff;color:var(--mos-text);font:16px/1.55 Roboto,"Open Sans",Arial,sans-serif;min-width:320px}
.mos-container{width:min(1120px,calc(100% - 48px));margin-inline:auto}.mos-skip{position:absolute;left:1rem;top:-5rem;z-index:1000;background:#fff;color:#123;padding:.6rem 1rem}.mos-skip:focus{top:1rem}
.mos-header{background:var(--mos-navy);color:#fff;position:relative;z-index:10}.mos-home .mos-header{background:rgba(20,43,70,.94)}.mos-header__inner{display:flex;align-items:flex-end;justify-content:space-between;min-height:102px;gap:1rem}
.mos-brand{display:flex;align-items:center;gap:14px;color:#fff;text-decoration:none;align-self:center;flex-shrink:0;max-width:385px}.mos-brand:hover,.mos-brand:focus{color:#fff}.mos-brand img{width:86px;height:86px;object-fit:contain}.mos-brand__text{display:block;line-height:1.25;color:#fff}.mos-brand__text span{display:block;font-size:11px;white-space:nowrap}.mos-brand__text strong{display:block;font-size:25px;letter-spacing:.31em;line-height:1.15;font-weight:800;white-space:nowrap}
.mos-nav{min-width:0}.mos-nav ul{list-style:none;margin:0;padding:0}.mos-nav>ul,.mos-nav .mod-menu{display:flex;align-items:stretch;flex-wrap:wrap;justify-content:flex-end;gap:1px}.mos-nav li{position:relative;margin:0;padding:0}.mos-nav>ul>li>a,.mos-nav .mod-menu>li>a,.mos-nav .mod-menu>li>span{display:block;background:var(--mos-blue);color:white;padding:8px 12px;font-size:12px;line-height:1.25;text-decoration:none;white-space:nowrap;min-height:31px}.mos-nav li.current>a,.mos-nav li.active>a,.mos-nav li>a:hover,.mos-nav li>a:focus-visible{background:#2e7dbf;color:white}.mos-nav li>ul{display:none;position:absolute;left:0;top:100%;min-width:210px;background:#3a8bdb;z-index:20;box-shadow:0 7px 15px #102b4650}.mos-nav li:hover>ul,.mos-nav li:focus-within>ul,.mos-nav li.mos-open>ul{display:block}.mos-nav li>ul li a,.mos-nav li>ul li span{display:block;color:#fff;text-decoration:none;padding:10px 14px;border-bottom:1px solid #ffffff30;white-space:normal;font-size:13px}.mos-nav li>ul li a:hover,.mos-nav li>ul li a:focus-visible{background:#246cae}.mos-nav .mos-sub-toggle{background:transparent;border:0;color:white;font-size:13px;cursor:pointer;position:absolute;right:2px;top:0;padding:5px;line-height:20px}.mos-nav li:has(>.mos-sub-toggle)>a{padding-right:24px}.mos-nav li>ul .mos-sub-toggle{top:4px}.mos-nav li>ul li>ul{left:100%;top:0}.mos-menu-toggle{display:none}
.mos-hero{height:500px;position:relative;overflow:hidden;background:#122c4b}.mos-hero__slide{position:absolute;inset:0;background-position:center center;background-repeat:no-repeat;background-size:cover;opacity:0;transition:opacity 1.3s ease}.mos-hero__slide--active{opacity:1}
.mos-layout{display:flex;gap:32px;align-items:flex-start;padding-top:78px;padding-bottom:86px;min-height:580px}.mos-inner .mos-layout{padding-top:42px}.mos-content{flex:1;min-width:0;overflow-x:auto}.mos-sidebar{flex:0 0 235px}.mos-content .item-page,.mos-content .com-content-article{min-width:0}.mos-content h1,.mos-content h2,.mos-content h3,.mos-content h4,.mos-content h5{color:#5d8fc9;font-weight:400;line-height:1.25}.mos-content h1{font-size:36px;margin:0 0 24px}.mos-content h2{font-size:30px;margin:26px 0 18px}.mos-content h3{font-size:30px;margin:22px 0 20px}.mos-content h4{font-size:25px}.mos-content h5{font-size:20px;text-transform:uppercase;margin:24px 0 12px}.mos-content p{margin:0 0 1.15rem}.mos-content a:not(.btblue){color:#f6a400}.mos-content a:not(.btblue):hover{text-decoration:underline}
.mos-content a.btblue{display:inline-block;background:var(--mos-cyan);color:#fff;text-align:center;text-decoration:none;font-size:10px;font-weight:600;line-height:1.3;padding:8px 16px;margin:0 4px 5px 0;min-width:140px;vertical-align:middle}.mos-content a.btblue:hover,.mos-content a.btblue:focus-visible{background:#08749a;color:#fff}.mos-content p:has(>a.btblue){margin:16px 0 24px}
.mos-content img{max-width:100%}
.mos-footer{background:var(--mos-navy);color:#e8eff7;padding:28px 0 18px;font-size:11px}.mos-footer__inner{display:grid;grid-template-columns:1fr 2fr 1fr;align-items:center;min-height:80px}.mos-footer__logo{justify-self:start}.mos-footer__logo img{display:block;width:78px;height:78px;object-fit:contain}.mos-footer address{font-style:normal;text-align:center;grid-column:2;line-height:1.5}.mos-footer a{color:#ffd000}.mos-footer__bottom{text-align:center;font-size:10px;color:#c3cbd6;margin-top:4px}
@media(max-width:1080px){.mos-header__inner{align-items:center}.mos-brand img{width:72px;height:72px}.mos-brand__text strong{font-size:20px}.mos-nav>ul>li>a,.mos-nav .mod-menu>li>a,.mos-nav .mod-menu>li>span{padding:8px;font-size:11px}.mos-hero{height:410px}}
@media(max-width:800px){.mos-container{width:min(100% - 32px,1120px)}.mos-header__inner{min-height:82px;align-items:center}.mos-brand{gap:9px}.mos-brand img{width:58px;height:58px}.mos-brand__text span{font-size:9px}.mos-brand__text strong{font-size:16px;letter-spacing:.22em}.mos-menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;width:42px;height:42px;flex:0 0 42px;background:var(--mos-blue);border:0;padding:10px;cursor:pointer}.mos-menu-toggle span{display:block;height:2px;width:100%;background:white}.mos-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--mos-navy);padding:12px 16px 18px;max-height:75vh;overflow-y:auto}.mos-nav.mos-nav--open{display:block}.mos-nav>ul,.mos-nav .mod-menu{display:block}.mos-nav li{border-bottom:1px solid #ffffff30}.mos-nav>ul>li>a,.mos-nav .mod-menu>li>a,.mos-nav .mod-menu>li>span{font-size:14px;padding:12px;background:transparent}.mos-nav li>ul,.mos-nav li>ul li>ul{display:none;position:static;box-shadow:none;padding-left:14px;background:#395676}.mos-nav li:hover>ul{display:none}.mos-nav li.mos-open>ul,.mos-nav li:focus-within>ul{display:block}.mos-nav .mos-sub-toggle{font-size:16px;padding:10px 14px}.mos-hero{height:340px}.mos-layout{padding-top:46px;padding-bottom:55px}.mos-inner .mos-layout{padding-top:35px}.mos-content h1{font-size:30px}.mos-content h2,.mos-content h3{font-size:25px}.mos-sidebar{flex-basis:180px}}
@media(max-width:600px){.mos-hero{height:250px}.mos-layout{display:block}.mos-sidebar{margin-top:30px}.mos-content a.btblue{min-width:0;width:calc(50% - 5px);margin:0 4px 5px 0;padding:10px 5px}.mos-footer__inner{display:flex;flex-direction:column;gap:9px}.mos-footer__logo{align-self:center}.mos-footer__bottom{line-height:1.5}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.mos-hero__slide{transition:none}}

/* Modern navigation: a single desktop row and a compact mobile drawer. */
@media(min-width:1101px){
  .mos-header__inner{width:min(1230px,calc(100% - 48px));min-height:96px;align-items:center}
  .mos-brand{max-width:345px;gap:10px}.mos-brand img{width:74px;height:74px}.mos-brand__text strong{font-size:22px;letter-spacing:.27em}
  .mos-nav{flex:1 1 auto;display:flex;justify-content:flex-end;align-items:center;min-width:0}
  .mos-nav>ul,.mos-nav .mod-menu{display:flex;flex-flow:row nowrap;width:max-content;gap:3px;justify-content:flex-end;align-items:center}
  .mos-nav>ul>li>a,.mos-nav .mod-menu>li>a,.mos-nav .mod-menu>li>span{background:transparent;border-bottom:3px solid transparent;padding:13px 10px 11px;min-height:0;border-radius:4px 4px 0 0;font-size:12px;font-weight:600;letter-spacing:.01em}
  .mos-nav li.current>a,.mos-nav li.active>a,.mos-nav li>a:hover,.mos-nav li>a:focus-visible{background:#4094de;border-bottom-color:#74c3ff}
  .mos-nav li>ul{border-top:3px solid #74c3ff;background:#304f70;min-width:215px}
  .mos-nav li>ul li a,.mos-nav li>ul li span{font-size:13px}
  .mos-nav .mos-sub-toggle{top:8px}
}
@media(max-width:1100px){
  .mos-header__inner{min-height:84px;align-items:center}
  .mos-menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;width:42px;height:42px;flex:0 0 42px;background:#4094de;border:0;border-radius:5px;padding:10px;cursor:pointer}
  .mos-menu-toggle span{display:block;height:2px;width:100%;background:#fff}
  .mos-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#263e5b;padding:10px 24px 18px;max-height:76vh;overflow-y:auto}
  .mos-nav.mos-nav--open{display:block}
  .mos-nav>ul,.mos-nav .mod-menu{display:block;width:100%;max-width:100%}
  .mos-nav li{border-bottom:1px solid #ffffff2a}
  .mos-nav>ul>li>a,.mos-nav .mod-menu>li>a,.mos-nav .mod-menu>li>span{display:block;font-size:14px;padding:12px;background:transparent}
  .mos-nav li>ul,.mos-nav li>ul li>ul{display:none;position:static;box-shadow:none;padding-left:14px;background:#355578}
  .mos-nav li:hover>ul{display:none}
  .mos-nav li.mos-open>ul,.mos-nav li:focus-within>ul{display:block}
  .mos-nav .mos-sub-toggle{font-size:16px;padding:10px 14px}
}

/* Header details requested for the Joomla 5 layout. */
.mos-header,.mos-home .mos-header{position:sticky;top:0;z-index:50;background:rgba(45,66,91,.95);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.mos-hero--module{height:auto;min-height:0;overflow:visible;background:transparent}
.mos-hero--module img{max-width:100%;height:auto}
@media(min-width:1101px){
  .mos-header__inner{min-height:103px;align-items:flex-end}
  .mos-brand{align-self:flex-end;position:relative;z-index:2;transform:translateY(4px);padding-bottom:0}
  .mos-brand img{width:80px;height:80px}
  .mos-nav{align-self:flex-end;align-items:flex-end}
  .mos-nav>ul,.mos-nav .mod-menu{align-items:flex-end}
  .mos-nav>ul>li>a,.mos-nav .mod-menu>li>a,.mos-nav .mod-menu>li>span{position:relative;display:block;background:transparent;border:0;border-radius:0;color:rgba(255,255,255,.85);padding:14px 10px 15px;transition:color .22s ease}
  .mos-nav>ul>li>a::after,.mos-nav .mod-menu>li>a::after,.mos-nav .mod-menu>li>span::after{content:"";position:absolute;left:9px;right:9px;bottom:0;height:4px;border-radius:3px 3px 0 0;background:#6fc3ff;transform:scaleX(0);transform-origin:center;transition:transform .25s ease}
  .mos-nav>ul>li.current>a,.mos-nav>ul>li.active>a,.mos-nav .mod-menu>li.current>a,.mos-nav .mod-menu>li.active>a{background:transparent;color:#fff}
  .mos-nav>ul>li>a:hover,.mos-nav>ul>li>a:focus-visible,.mos-nav .mod-menu>li>a:hover,.mos-nav .mod-menu>li>a:focus-visible,.mos-nav .mod-menu>li>span:hover{background:transparent;color:#fff}
  .mos-nav>ul>li>a:hover::after,.mos-nav>ul>li>a:focus-visible::after,.mos-nav .mod-menu>li>a:hover::after,.mos-nav .mod-menu>li>a:focus-visible::after,.mos-nav .mod-menu>li>span:hover::after{transform:scaleX(1)}
  .mos-nav .mos-sub-toggle{top:11px;color:rgba(255,255,255,.85)}
}
@media(max-width:1100px){
  .mos-brand{transform:none;align-self:center}
  .mos-nav .mod-menu>li.current>a,.mos-nav .mod-menu>li.active>a{background:transparent;color:#fff}
  .mos-nav .mod-menu>li>a{color:rgba(255,255,255,.85)}
  .mos-nav .mod-menu>li>a:hover,.mos-nav .mod-menu>li>a:focus-visible{color:#fff}
}
@media(prefers-reduced-motion:reduce){.mos-nav a,.mos-nav a::after{transition:none!important}}

/* Typography from the previous site: Open Sans body, Roboto headings. */
body.mos-site{font-family:"Open Sans",Arial,sans-serif;font-weight:400}
.mos-content h1,.mos-content h2,.mos-content h3,.mos-content h4,.mos-content h5,.mos-content h6{font-family:Roboto,Arial,sans-serif;font-weight:300}
.mos-content h1{font-size:38px}.mos-content h2{font-size:34px}
.mos-brand__text{font-family:"Open Sans",Arial,sans-serif}
.mos-brand__text strong{font-weight:800}
.mos-sub-toggle{display:flex;align-items:center;justify-content:center;width:28px;height:35px;padding:0!important}
.mos-sub-toggle span{display:block;width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .22s ease}
.mos-nav li.mos-open>.mos-sub-toggle span{transform:translateY(2px) rotate(225deg)}
@media(min-width:1101px){
  .mos-header__inner{min-height:104px}
  .mos-brand{transform:translateY(6px);max-width:390px}
  .mos-brand img{width:100px;height:100px}
  .mos-brand__text strong{font-size:25px}
  .mos-nav li:has(>.mos-sub-toggle)>a{padding-right:35px}
  .mos-nav>ul>li>.mos-sub-toggle,.mos-nav .mod-menu>li>.mos-sub-toggle{right:5px;top:6px;height:39px;color:rgba(255,255,255,.9)}
  .mos-nav li>ul{display:block;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(9px);transition:opacity .22s ease,transform .22s ease,visibility .22s ease}
  .mos-nav li:hover>ul,.mos-nav li:focus-within>ul,.mos-nav li.mos-open>ul{display:block;opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
  .mos-nav li:hover>.mos-sub-toggle span,.mos-nav li:focus-within>.mos-sub-toggle span{transform:translateY(2px) rotate(225deg)}
  .mos-nav li>ul li>ul{transform:translateX(9px)}
  .mos-nav li>ul li:hover>ul,.mos-nav li>ul li:focus-within>ul,.mos-nav li>ul li.mos-open>ul{transform:translateX(0)}
}
@media(max-width:1100px){.mos-nav li:has(>.mos-sub-toggle)>a{padding-right:48px}.mos-nav .mos-sub-toggle{right:6px;top:2px;width:40px;height:40px}}
@media(prefers-reduced-motion:reduce){.mos-nav li>ul,.mos-sub-toggle span{transition:none!important}}

/* The home slideshow begins behind the translucent fixed-height header. */
.mos-home .mos-hero--module{margin-top:-104px;position:relative;z-index:1}
.mos-home .mos-layout{padding-top:24px}
.mos-content a.btblue{min-width:155px;padding:11px 16px;font-size:11px;font-weight:700;letter-spacing:.025em;transition:background-color .22s ease,transform .22s ease,box-shadow .22s ease}
.mos-content a.btblue:hover,.mos-content a.btblue:focus-visible{background:#087aa1;transform:translateY(-3px);box-shadow:0 7px 14px rgba(12,73,112,.2)}
@media(max-width:1100px){.mos-home .mos-hero--module{margin-top:-84px}}
@media(max-width:600px){.mos-home .mos-layout{padding-top:20px}.mos-content a.btblue{min-width:0;padding:11px 6px;font-size:10px}}
@media(prefers-reduced-motion:reduce){.mos-content a.btblue{transition:none}.mos-content a.btblue:hover,.mos-content a.btblue:focus-visible{transform:none}}

/* Footer modules and short-page layout. */
body.mos-site{display:flex;flex-direction:column;min-height:100vh}
.mos-layout{flex:1 0 auto;min-height:0}
.mos-header,.mos-hero{flex-shrink:0}
.mos-footer{margin-top:auto;padding:0;background:#182b40;color:#e7eff6}
.mos-footer__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px;min-height:150px;padding-top:38px;padding-bottom:38px}
.mos-footer__column{min-width:0}
.mos-footer__column h2,.mos-footer__column h3,.mos-footer__column h4{color:#fff;font-size:17px;margin:0 0 12px}
.mos-footer__column p{margin:0 0 10px}
.mos-footer__column a,.mos-footer__lower a{color:#e4ba45}
.mos-footer__lower{background:#101f30;padding:17px 0;min-height:48px;text-align:center}
.mos-footer__lower p{margin:0}
@media(max-width:700px){.mos-footer__grid{grid-template-columns:1fr;gap:22px;padding-top:30px;padding-bottom:30px;min-height:0}}

/* Joomla's menu module may apply its own collapse display rule. The submenu
   remains mounted on desktop so opacity and movement can animate reliably. */
@media(min-width:1101px){
  .mos-nav,.mos-nav .mod-menu,.mos-nav li{overflow:visible}
  .mos-nav .mod-menu li>ul,.mos-nav li>ul{display:block!important;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(8px);transition:opacity .2s ease,transform .2s ease,visibility .2s ease}
  .mos-nav .mod-menu li:hover>ul,.mos-nav .mod-menu li:focus-within>ul,.mos-nav .mod-menu li.mos-open>ul,.mos-nav li:hover>ul,.mos-nav li:focus-within>ul,.mos-nav li.mos-open>ul{display:block!important;opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
  .mos-nav li:hover>a,.mos-nav li.mos-open>a{color:#fff}
  .mos-nav li:hover>a::after,.mos-nav li.mos-open>a::after{transform:scaleX(1)}
}
@media(max-width:1100px){
  .mos-nav .mod-menu li>ul,.mos-nav li>ul{display:none!important}
  .mos-nav .mod-menu li.mos-open>ul,.mos-nav li.mos-open>ul{display:block!important;opacity:1;visibility:visible;pointer-events:auto;transform:none}
}
