:root{
    --primary:#18b8b0;
    --primary-dark:#0b7f83;
    --accent:#ff9f1c;
    --navy:#0d213d;
    --navy-light:#173454;
    --text:#182a42;
    --muted:#687990;
    --surface:#f4f7fb;
    --line:#dce5ef;
    --white:#fff;
    --shadow:0 24px 70px rgba(11,33,61,.1)
}
 *{
    box-sizing:border-box
}
html{
    scroll-behavior:smooth
}
body{
    margin:0;
    background:var(--white);
    color:var(--text);
    font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    -webkit-font-smoothing:antialiased
}
a{
    color:inherit;
    text-decoration:none
}
button,input{
    font:inherit
}
.shell{
    width:min(1180px,calc(100% - 48px));
    margin:0 auto
}
.site-header{
    position:absolute;
    inset:0 0 auto;
    z-index:20;
    color:#fff
}
.header-inner{
    display:flex;
    min-height:88px;
    align-items:center;
    justify-content:space-between;
    gap:34px;
    border-bottom:1px solid rgba(255,255,255,.15)
}
.brand{
    font-size:25px;
    font-weight:850;
    letter-spacing:-1px
}
.brand span,.footer-brand strong span{
    color:var(--accent)
}
.main-nav{
    display:flex;
    align-items:center;
    gap:34px;
    margin-left:auto
}
.main-nav a{
    color:rgba(255,255,255,.72);
    font-size:13px;
    font-weight:650
}
.main-nav a:hover{
    color:#fff
}
.button{
    display:inline-flex;
    min-height:54px;
    align-items:center;
    justify-content:center;
    gap:12px;
    padding:0 24px;
    border:1px solid transparent;
    border-radius:13px;
    font-size:13px;
    font-weight:750;
    transition:transform .2s ease,background .2s ease,border-color .2s ease
}
.button:hover{
    transform:translateY(-2px)
}
.button-small{
    min-height:42px;
    padding:0 17px
}
.button-primary{
    background:var(--accent);
    color:var(--navy);
    box-shadow:0 12px 28px rgba(255,159,28,.22)
}
.button-outline{
    border-color:rgba(255,255,255,.35);
    color:#fff
}
.button-outline:hover,.button-ghost:hover{
    background:rgba(255,255,255,.1)
}
.button-ghost{
    border-color:rgba(255,255,255,.25);
    color:#fff
}
.button-light{
    background:#fff;
    color:var(--navy)
}
.eyebrow{
    display:inline-flex;
    align-items:center;
    gap:10px;
    color:#9ee7e3;
    font-size:11px;
    font-weight:800;
    letter-spacing:1.15px;
    text-transform:uppercase
}
.eyebrow i{
    width:24px;
    height:2px;
    background:currentColor
}
.eyebrow.dark{
    color:var(--primary-dark)
}
.section{
    padding:105px 0
}
.section-heading h2,.workflow-copy h2,.audience-copy h2,.cta-card h2{
    margin:15px 0 0;
    color:var(--navy);
    font-size:clamp(34px,4vw,51px);
    line-height:1.08;
    letter-spacing:-2px
}
.section-heading>p,.split-heading>p,.workflow-copy>p,.audience-copy>p,.cta-card p{
    color:var(--muted);
    font-size:15px;
    line-height:1.75
}
.split-heading{
    display:grid;
    grid-template-columns:minmax(0,1.25fr) minmax(300px,.65fr);
    align-items:end;
    gap:80px;
    margin-bottom:48px
}
.split-heading>p{
    margin:0 0 5px
}
.centered{
    max-width:720px;
    margin:0 auto 48px;
    text-align:center
}
.centered .eyebrow{
    justify-content:center
}
.centered>p{
    max-width:580px;
    margin:18px auto 0
}
.site-footer{
    padding:42px 0;
    background:#091a30;
    color:#fff
}
.footer-inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:32px
}
.footer-brand strong{
    font-size:23px
}
.footer-brand p{
    margin:6px 0 0;
    color:rgba(255,255,255,.5);
    font-size:11px
}
.footer-meta{
    display:flex;
    align-items:center;
    gap:14px;
    color:rgba(255,255,255,.5);
    font-size:10px
}
.footer-meta a{
    display:flex;
    align-items:center;
    gap:10px;
    color:#fff
}
.footer-meta img{
    width:auto;
    height:34px;
    filter:brightness(0) invert(1)
}
 @media(max-width:760px){
    .shell{
        width:calc(100% - 30px)
    }
    .header-inner{
        min-height:72px
    }
    .main-nav{
        display:none
    }
    .button-small{
        padding:0 13px;
        font-size:11px
    }
    .section{
        padding:76px 0
    }
    .split-heading{
        grid-template-columns:1fr;
        gap:15px
    }
    .section-heading h2,.workflow-copy h2,.audience-copy h2,.cta-card h2{
        font-size:35px;
        letter-spacing:-1.4px
    }
    .footer-inner,.footer-meta{
        align-items:flex-start;
        flex-direction:column
    }
}
 @media(prefers-reduced-motion:reduce){
    html{
        scroll-behavior:auto
    }
    .button{
        transition:none
    }
}
 .brand{
    display:flex;
    align-items:center;
    font-size:0
}
.brand img{
    display:block;
    width:auto;
    height:42px;
    max-width:175px
}
.site-header:not(.legal-header){
    color:var(--navy)
}
.site-header:not(.legal-header) .header-inner{
    border-color:rgba(13,33,61,.14)
}
.site-header:not(.legal-header) .main-nav a{
    color:rgba(13,33,61,.68)
}
.site-header:not(.legal-header) .main-nav a:hover{
    color:var(--navy)
}
.site-header:not(.legal-header) .button-outline{
    border-color:rgba(13,33,61,.28);
    color:var(--navy)
}
.site-header:not(.legal-header) .button-outline:hover{
    background:rgba(255,255,255,.45)
}
.footer-brand img{
    display:block;
    width:auto;
    height:40px;
    max-width:170px
}
.footer-brand p{
    margin-top:8px
}
 .site-footer{
    background:#e7f2f4;
    color:var(--navy)
}
.site-footer .footer-brand p{
    color:var(--muted)
}
.footer-legal{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:18px
}
.footer-legal a{
    color:#60758a;
    font-size:10px
}
.footer-legal a:hover{
    color:var(--navy)
}
.site-footer .footer-meta{
    color:#60758a
}
.site-footer .footer-meta a{
    color:var(--navy)
}
.site-footer .footer-meta img{
    filter:none
}
 @media(max-width:900px){
    .footer-inner{
        flex-wrap:wrap
    }
    .footer-legal{
        order:3;
        width:100%;
        justify-content:flex-start
    }
}
 