/* Existing landing header/footer, shared by customer HTML pages without widening their CSP. */
[data-site-header],.hc-site-header-shell,.hc-site-footer{--hc-hero-navy:#062b72;--hc-hero-blue:#06a8f4;--hc-hero-white:#ffffff;--hc-page-white:#ffffff;--hc-page-blue:#04a9f4;--hc-page-blue-dark:#004fae;--hc-page-navy:#063279;--hc-page-border:#bedff2;--hc-page-shadow:0 18px 46px rgba(6,43,114,.1);--font-sans:'Instrument Sans',ui-sans-serif,system-ui,sans-serif;font-family:var(--font-sans)}
[data-site-header],[data-site-header] *,.hc-site-header-shell,.hc-site-header-inner,.hc-site-footer,.hc-site-footer *{box-sizing:border-box}
[data-site-header] a{line-height:1.5}
[data-site-header] :is(img,svg),.hc-site-footer :is(img,svg){display:block}
.hc-site-footer p{margin:0}
.hc-site-footer a{text-decoration:none}
.hc-site-footer__column{margin:0;border:0;padding:0}
[data-site-header] .hc-hero__mobile-nav{margin:0;padding:0;border:0}
.hc-site-footer .hc-section{margin:0 auto;max-width:1320px;padding-left:80px;padding-right:80px;width:100%}
@media(max-width:1180px){.hc-site-footer .hc-section{padding-left:48px;padding-right:48px}}
@media(max-width:860px){.hc-site-footer .hc-section{padding-left:32px;padding-right:32px}}
@media(max-width:560px){.hc-site-footer .hc-section{padding-left:28px;padding-right:28px}}
@media(max-width:420px){.hc-site-footer .hc-section{padding-left:24px;padding-right:24px}}
.hc-site-header-shell{
    background: var(--hc-page-white);
    color: var(--hc-hero-navy);
    font-family: var(--font-sans);
    position: relative;
    z-index: 10;
}
.hc-site-header-inner{
    margin: 0 auto;
    max-width: 1672px;
    padding: 24px 104px;
}
@media (max-width: 1180px){.hc-site-header-inner{ padding-left: 48px; padding-right: 48px; }}
@media (max-width: 860px){.hc-site-header-inner{ padding: 44px 28px; }}
.hc-hero__header{
    align-items: flex-start;
    display: flex;
    gap: 34px;
    justify-content: space-between;
}
.hc-hero__logo :is(img,svg){
    height: auto;
    max-width: min(64vw, 292px);
    object-fit: contain;
    width: 292px;
}
.hc-hero__nav{
    align-items: center;
    display: flex;
    flex: 1;
    gap: clamp(24px, 3vw, 50px);
    justify-content: center;
    padding-top: 24px;
}
.hc-hero__nav a{
    color: var(--hc-hero-navy);
    font-size: 18px;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
}
.hc-hero__nav-cta{
    align-items: center;
    background: var(--hc-hero-blue);
    border-radius: 24px;
    color: var(--hc-hero-white);
    display: inline-flex;
    font-weight: 800;
    justify-content: center;
    text-decoration: none;
}
.hc-hero__nav-cta{
    gap: 18px;
    margin-top: 1px;
    min-width: 304px;
    padding: 18px 28px;
}
.hc-hero__nav-cta span{
    height: 20px;
    width: 20px;
}
.hc-hero__menu{
    color: var(--hc-hero-navy);
    display: none;
    padding: 13px 0;
}
.hc-hero__mobile-nav{
    display: none;
    position: relative;
}
.hc-hero__menu{
    cursor: pointer;
    list-style: none;
}
.hc-hero__menu::-webkit-details-marker{
    display: none;
}
.hc-hero__menu span{
    background: currentColor;
    border-radius: 999px;
    display: block;
    height: 4px;
    margin: 6px 0;
    width: 44px;
}
.hc-site-footer{
    font-size:16px;
    line-height:1.5;
    background: var(--hc-page-blue-dark);
    color: var(--hc-page-white);
    margin-top: -1px;
    padding: 54px 0 34px;
}
.hc-site-footer__grid{
    align-items: start;
    border-top: 1px solid rgba(255, 255, 255, 0.16);
    display: grid;
    gap: 68px;
    grid-template-columns: minmax(240px, 0.85fr) minmax(0, 2.6fr);
    padding-top: 36px;
}
.hc-site-footer__brand{
    display: grid;
    gap: 18px;
    max-width: 330px;
}
.hc-site-footer__logo{
    display: inline-flex;
    text-decoration: none;
    width: max-content;
}
.hc-site-footer__logo :is(img,svg){
    height: auto;
    object-fit: contain;
    width: 220px;
}
.hc-site-footer__tag,
.hc-site-footer__mark{
    color: var(--hc-page-blue);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}
.hc-site-footer p,
.hc-site-footer a{
    color: rgba(255, 255, 255, 0.78);
    font-size: 15px;
    font-weight: 500;
    line-height: 1.45;
}
.hc-site-footer__columns{
    align-items: start;
    display: grid;
    gap: 40px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}
.hc-site-footer__column{
    align-self: start;
    display: grid;
    gap: 11px;
}
.hc-site-footer__column summary{
    align-items: center;
    color: var(--hc-page-white);
    display: flex;
    font-size: 13px;
    font-weight: 800;
    gap: 12px;
    justify-content: space-between;
    letter-spacing: 0.12em;
    list-style: none;
    margin-bottom: 6px;
    text-transform: uppercase;
}
.hc-site-footer__column summary::-webkit-details-marker{
    display: none;
}
.hc-site-footer__column summary .hc-chrome-icon{
    display: none;
    height: 16px;
    transition: transform 160ms ease;
    width: 16px;
}
.hc-site-footer__column[open] summary .hc-chrome-icon{
    transform: rotate(180deg);
}
.hc-site-footer__links{
    display: grid;
    gap: 11px;
}
.hc-site-footer__links a{
    color: var(--hc-page-white);
    font-size: 15px;
    font-weight: 500;
    text-decoration: none;
}
.hc-site-footer__bottom{
    align-items: center;
    border-top: 1px solid rgba(255, 255, 255, 0.22);
    display: grid;
    gap: 28px;
    grid-template-columns: minmax(210px, 0.9fr) minmax(0, 1.4fr) minmax(210px, 0.9fr);
    margin-top: 46px;
    padding-top: 28px;
}
.hc-site-footer__legal{
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center;
}
.hc-site-footer__legal span{
    color: rgba(255, 255, 255, 0.82);
    font-size: 13px;
    font-weight: 500;
}
.hc-site-footer__mark{
    justify-self: end;
    max-width: 220px;
}
@media (max-width: 1180px){.hc-hero__nav{
        gap: 22px;
    }
.hc-hero__nav a{
        font-size: 16px;
    }
.hc-hero__nav-cta{
        min-width: 240px;
    }}
@media (max-width: 860px){.hc-site-footer__grid{
        align-items: start;
        grid-template-columns: 1fr;
        padding-top: 30px;
    }
.hc-site-footer__columns{
        gap: 28px;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
.hc-site-footer__bottom{
        display: grid;
        grid-template-columns: 1fr;
        justify-items: start;
    }
.hc-site-footer__legal{
        justify-content: start;
    }
.hc-site-footer__mark{
        justify-self: start;
    }
.hc-hero__header{
        align-items: flex-start;
    }
.hc-hero__logo :is(img,svg){
        max-width: min(68vw, 240px);
        width: 240px;
    }
.hc-hero__nav,
.hc-hero__nav-cta{
        display: none;
    }
.hc-hero__mobile-nav{
        display: block;
    }
.hc-hero__menu{
        display: block;
    }
.hc-hero__mobile-panel{
        background: var(--hc-page-white);
        border: 1px solid var(--hc-page-border);
        border-radius: 8px;
        box-shadow: var(--hc-page-shadow);
        min-width: 240px;
        overflow: hidden;
        position: absolute;
        right: 0;
        top: calc(100% + 8px);
        z-index: 5;
    }
.hc-hero__mobile-panel a{
        color: var(--hc-page-navy);
        display: block;
        font-size: 15px;
        font-weight: 800;
        padding: 14px 18px;
        text-decoration: none;
    }
.hc-hero__mobile-panel a + a{
        border-top: 1px solid var(--hc-page-border);
    }}
@media (max-width: 560px){.hc-site-footer{
        padding-top: 44px;
    }
.hc-site-footer__columns{
        grid-template-columns: 1fr;
    }
.hc-site-footer p,
.hc-site-footer a{
        font-size: 14px;
    }
.hc-site-footer__column summary{
        font-size: 12px;
    }
.hc-site-footer__column{
        border-top: 1px solid rgba(255, 255, 255, 0.16);
        gap: 0;
        padding: 0;
    }
.hc-site-footer__column summary{
        cursor: pointer;
        margin-bottom: 0;
        padding: 16px 0;
    }
.hc-site-footer__column summary .hc-chrome-icon{
        display: inline-block;
    }
.hc-site-footer__links{
        gap: 10px;
        padding: 0 0 16px;
    }
.hc-hero__logo :is(img,svg){
        max-width: min(68vw, 220px);
        width: 220px;
    }
.hc-hero__menu span{
        height: 3px;
        width: 34px;
    }}
@media (max-width: 360px){.hc-hero__header{ gap: 12px; }
.hc-hero__logo{ min-width: 0; }
.hc-hero__logo :is(img,svg){ max-width: 100%; }
.hc-hero__mobile-nav{ flex-shrink: 0; }}
[data-site-header] :is(a,summary):focus-visible,.hc-site-footer :is(a,summary):focus-visible{outline:3px solid currentColor;outline-offset:4px}
[data-site-header] .hc-hero__menu{min-width:44px;min-height:44px}
[data-site-header] .hc-hero__nav-cta{color:var(--hc-hero-white)}
[data-site-header] .hc-hero__mobile-nav:not([open])>.hc-hero__mobile-panel{display:none}
.hc-site-footer__column:not([open])>.hc-site-footer__links{display:none}

.hc-chrome-icon{display:inline-block;flex:0 0 auto}.hc-chrome-icon svg{display:block;width:100%;height:100%}

/* Action cursors stay shared; disabled and busy controls keep their own states. */
:where(button, input[type="submit"], input[type="button"], a[href]):not(:disabled):not([aria-disabled="true"]):not([aria-busy="true"]) { cursor: pointer; }
:where(button, input[type="submit"], input[type="button"], a[href]):is(:disabled, [aria-disabled="true"]) { cursor: not-allowed; }
:where(button, input[type="submit"], input[type="button"], a[href])[aria-busy="true"] { cursor: wait; }
