:root{
    --hs-blue:#191970;
    --hs-white:#fff;
    --hs-blue-02:rgba(25,25,112,.02);
    --hs-blue-04:rgba(25,25,112,.04);
    --hs-blue-06:rgba(25,25,112,.06);
    --hs-blue-08:rgba(25,25,112,.08);
    --hs-blue-10:rgba(25,25,112,.10);
    --hs-blue-14:rgba(25,25,112,.14);
    --hs-blue-22:rgba(25,25,112,.22);
    --hs-blue-60:rgba(25,25,112,.60);
    --hs-blue-74:rgba(25,25,112,.74);
    --hs-ease:cubic-bezier(.22,1,.36,1);
}

html{background:var(--hs-white)}
body.hs-page{background:var(--hs-white);color:var(--hs-blue);font-family:"Instrument Sans",sans-serif;font-size:16px;line-height:1.65}
body.hs-page *:not(.fa):not([class*="glyphicon"]){font-family:"Instrument Sans",sans-serif}
body.hs-page h1,body.hs-page h2,body.hs-page h3,body.hs-page h4,body.hs-page h5,body.hs-page h6{color:var(--hs-blue);font-family:"Instrument Sans",sans-serif;font-weight:600;letter-spacing:-.035em}
body.hs-page p,body.hs-page li,body.hs-page td,body.hs-page th{color:var(--hs-blue-74)}
body.hs-page a{color:var(--hs-blue);transition:opacity .25s ease,color .25s ease,background .25s ease,border-color .25s ease}
body.hs-page a:hover,body.hs-page a:focus{color:var(--hs-blue);text-decoration:none}
body.hs-page ::selection{background:var(--hs-blue);color:var(--hs-white)}
body.hs-page img{max-width:100%}

/* Common layout helpers used by the new home and inner-page patches. */
.hs-site-container{width:min(1380px,calc(100% - 64px));margin:0 auto}
.hs-section{position:relative;padding:clamp(72px,8vw,130px) 0;background:var(--hs-white)}
.hs-section--soft{background:var(--hs-blue-04)}
.hs-kicker{margin:0 0 18px;color:var(--hs-blue);font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase}
.hs-display{margin:0;color:var(--hs-blue);font-size:clamp(42px,6vw,88px);line-height:.94;font-weight:500;letter-spacing:-.065em}
.hs-heading{margin:0;color:var(--hs-blue);font-size:clamp(34px,4vw,62px);line-height:1;font-weight:500;letter-spacing:-.055em}
.hs-copy{max-width:720px;margin:0;color:var(--hs-blue-74);font-size:clamp(16px,1.35vw,20px);line-height:1.72}
.hs-rule{height:1px;background:var(--hs-blue-10)}

.hs-arrow-link{display:inline-flex;align-items:center;gap:14px;padding:11px 0;border-bottom:1px solid var(--hs-blue);color:var(--hs-blue)!important;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.hs-arrow-link i{font-size:10px;transform:rotate(-45deg);transition:transform .3s var(--hs-ease)}
.hs-arrow-link:hover i{transform:translate(4px,-4px) rotate(-45deg)}

.hs-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 22px;border:1px solid var(--hs-blue);border-radius:0;background:var(--hs-blue);color:var(--hs-white)!important;font-size:12px;font-weight:700;letter-spacing:.055em;text-transform:uppercase}
.hs-button:hover{background:var(--hs-white);color:var(--hs-blue)!important}
.hs-button--outline{background:var(--hs-white);color:var(--hs-blue)!important}
.hs-button--outline:hover{background:var(--hs-blue);color:var(--hs-white)!important}

/* Gradually normalise the legacy HS components before they are replaced. */
body.hs-page .btn{border-radius:0;font-family:"Instrument Sans",sans-serif;font-weight:600;box-shadow:none}
body.hs-page .btn-info,body.hs-page .btn-success,body.hs-page .btn-primary{border-color:var(--hs-blue);background:var(--hs-blue);color:var(--hs-white)}
body.hs-page .btn-info:hover,body.hs-page .btn-success:hover,body.hs-page .btn-primary:hover{border-color:var(--hs-blue);background:var(--hs-white);color:var(--hs-blue)}
body.hs-page .form-control{height:auto;min-height:44px;border:1px solid var(--hs-blue-14);border-radius:0;box-shadow:none;color:var(--hs-blue);font-family:"Instrument Sans",sans-serif}
body.hs-page .form-control:focus{border-color:var(--hs-blue);box-shadow:0 0 0 3px var(--hs-blue-06)}
body.hs-page hr{border-top-color:var(--hs-blue-10)}
body.hs-page .well,body.hs-page .panel,body.hs-page .thumbnail{border-color:var(--hs-blue-10);border-radius:0;box-shadow:none;background:var(--hs-white)}
body.hs-page .table>thead>tr>th,body.hs-page .table>tbody>tr>td{border-color:var(--hs-blue-10)}
body.hs-page .table>thead>tr>th{color:var(--hs-blue);font-weight:700}

/* Existing HS notice strip: blue/white until the full home redesign replaces it. */
body.hs-page .notice{margin:0;background:var(--hs-white);border-bottom:1px solid var(--hs-blue-10)}
body.hs-page .notice .notice-hrad,body.hs-page .notice .notice-hrad a{background:var(--hs-blue)!important;color:var(--hs-white)!important}
body.hs-page .notice marquee,body.hs-page .notice marquee *{color:var(--hs-blue)!important}

/* Motion system. */
[data-hs-reveal]{opacity:0;transform:translateY(34px);transition:opacity .8s var(--hs-ease),transform .8s var(--hs-ease);transition-delay:var(--hs-delay,0ms)}
[data-hs-reveal="left"]{transform:translateX(-38px)}
[data-hs-reveal="right"]{transform:translateX(38px)}
[data-hs-reveal="scale"]{transform:scale(.965)}
[data-hs-reveal].is-visible{opacity:1;transform:none}
.hs-image-reveal{position:relative;overflow:hidden}
.hs-image-reveal::after{content:"";position:absolute;inset:0;background:var(--hs-blue);transform:scaleX(1);transform-origin:right;transition:transform 1s var(--hs-ease);transition-delay:.12s;pointer-events:none}
.hs-image-reveal.is-visible::after{transform:scaleX(0)}
.hs-image-reveal img{transform:scale(1.045);transition:transform 1.25s var(--hs-ease)}
.hs-image-reveal.is-visible img{transform:scale(1)}

/* Accessibility. */
body.hs-page :focus-visible{outline:2px solid var(--hs-blue);outline-offset:3px}

@media(max-width:991px){
    .hs-site-container{width:calc(100% - 38px)}
    .hs-section{padding:72px 0}
}
@media(max-width:600px){
    body.hs-page{font-size:15px}
    .hs-site-container{width:calc(100% - 28px)}
    .hs-section{padding:58px 0}
    .hs-copy{font-size:16px}
}
@media(prefers-reduced-motion:reduce){
    [data-hs-reveal],.hs-image-reveal::after,.hs-image-reveal img{opacity:1!important;transform:none!important;transition:none!important;animation:none!important}
}
