@font-face{
    font-family:Inter;
    src:url('/fonts/InterVariable.woff2') format('woff2');
    font-style:normal;
    font-weight:100 900;
    font-display:swap
}
:root{
    --navy:#071c40;
    --body:#405269;
    --blue:#0067ff;
    --cyan:#009ef5;
    --pale:#edf7ff;
    --border:#e7edf3;
    --font:Inter,"Segoe UI",Arial,sans-serif
}
*{
    box-sizing:border-box
}
html{
    scroll-behavior:smooth;
    scroll-padding-top:24px
}
body{
    margin:0;
    color:var(--navy);
    font-family:var(--font);
    font-size:18px;
    line-height:1.5;
    -webkit-font-smoothing:antialiased
}
h1,h2,h3,h4,p,figure,blockquote{
    margin:0
}
h1,h2,h3,h4{
    line-height:1.15;
    letter-spacing:-.035em
}
a{
    color:inherit;
    text-decoration:none
}
button{
    font:inherit;
    color:inherit;
    cursor:pointer
}
button,a{
    -webkit-tap-highlight-color:transparent
}
button{
    border:0
}
button:focus-visible,a:focus-visible{
    outline:3px solid #0067ff;
    outline-offset:5px
}
ul{
    padding:0;
    margin:0;
    list-style:none
}
img{
    max-width:100%;
    display:block
}
svg{
    display:block
}
svg.icon{
    width:24px;
    height:24px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
    flex-shrink:0
}
.icon-sprite{
    position:absolute;
    width:0;
    height:0;
    overflow:hidden
}
.container{
    width:90%;
    max-width:1320px;
    margin-inline:auto
}
.wide-container{
    width:94%;
    max-width:1360px
}
.eyebrow{
    font-size:12px;
    font-weight:700;
    letter-spacing:.19em;
    text-transform:uppercase
}
.button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:16px;
    padding:17px 24px;
    font-weight:650;
    font-size:16px;
    line-height:1.2;
    border:1px solid transparent;
    border-radius:5px;
    white-space:nowrap;
    min-height:56px;
    transition:background .15s,box-shadow .15s
}
.button .icon{
    width:22px;
    height:22px
}
.button-primary{
    color:#fff;
    background:linear-gradient(115deg,#005df2,#004be2);
    box-shadow:0 5px 12px #0067ff16
}
.button-primary:hover{
    background:#004bc9;
    box-shadow:0 5px 18px #0067ff2b
}
.button-outline{
    color:#005cff;
    border-color:#0067ff;
    background:#ffffffb3
}
.button-outline:hover{
    background:#edf5ff
}
.button-white{
    background:#fff;
    color:var(--navy);
    border-color:#e4edf4
}
.button-white:hover{
    background:#edf6ff
}
.button-row{
    display:flex;
    gap:22px;
    flex-wrap:wrap
}
.skip-link{
    position:absolute;
    top:-100px;
    left:20px;
    z-index:100;
    padding:12px 20px;
    background:#fff;
    color:var(--blue)
}
.skip-link:focus{
    top:12px
}
.site-header{
    height:80px;
    background:#fff;
    border-bottom:1px solid #f0f3f7;
    position:relative;
    z-index:20
}
.header-inner{
    height:100%;
    display:flex;
    align-items:center;
    gap:48px
}
.logo{
    display:inline-flex;
    gap:7px;
    align-items:center;
    flex-shrink:0;
    line-height:1
}
.logo span{
    font-size:36px;
    font-weight:750;
    letter-spacing:-.055em
}
.main-navigation{
    display:flex;
    align-items:center;
    justify-content:space-between;
    flex:1;
    gap:20px
}
.nav-links{
    display:flex;
    gap:32px;
    align-items:center
}
.nav-dropdown{
    position:relative
}
.nav-dropdown>button{
    background:none;
    display:flex;
    align-items:center;
    gap:5px;
    font-weight:600;
    font-size:13px;
    padding:12px 0;
    white-space:nowrap
}
.chevron{
    width:12px;
    height:12px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.6;
    stroke-linecap:round;
    stroke-linejoin:round
}
.nav-dropdown>button[aria-expanded=true] .chevron{
    transform:rotate(180deg)
}
.dropdown-menu{
    position:absolute;
    top:100%;
    left:-18px;
    min-width:210px;
    padding:10px;
    background:#fff;
    border:1px solid var(--border);
    border-radius:8px;
    box-shadow:0 12px 35px #071c4015
}
.dropdown-menu a{
    display:block;
    padding:10px;
    border-radius:4px;
    font-size:14px
}
.dropdown-menu a:hover{
    background:#edf7ff;
    color:var(--blue)
}
.header-actions{
    display:flex;
    align-items:center;
    gap:32px;
    flex-shrink:0
}
.login-link{
    font-size:13px;
    font-weight:650;
    color:#005cff;
    white-space:nowrap
}
.login-link:hover{
    text-decoration:underline
}
.header-demo{
    font-size:13px;
    padding:14px 20px;
    min-height:46px;
    gap:10px
}
.header-demo .icon{
    width:18px;
    height:18px
}
.menu-toggle{
    display:none;
    background:transparent
}
.hero{
    background:radial-gradient(ellipse at 86% 52%,#deedf6 0,transparent 49%),linear-gradient(105deg,#eff7ff 0,#f7fbff 43%,#eaf3f8 100%);
    padding:110px 0 68px;
    overflow:hidden
}
.hero-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:20px;
    min-height:630px;
    align-items:start
}
.hero-copy{
    padding-top:0;
    position:relative;
    z-index:2
}
.hero .eyebrow{
    color:#193a66;
    font-size:11.5px;
    letter-spacing:.18em;
    margin-bottom:18px;
    white-space:nowrap
}
.hero h1{
    font-size:clamp(38px,3.8vw,59px);
    font-weight:750;
    line-height:1.13;
    letter-spacing:-.045em;
    max-width:700px
}
.hero h1 span{
    color:#008bfa
}
.hero-description{
    font-size:21px;
    line-height:1.5;
    color:var(--body);
    max-width:570px;
    margin-top:20px;
    margin-bottom:29px
}
.hero-highlights{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    max-width:580px;
    margin-top:66px;
    gap:20px
}
.hero-highlights .icon{
    color:#0086ff;
    width:31px;
    height:31px;
    margin-bottom:8px
}
.hero-highlights span{
    display:block;
    font-size:14px;
    line-height:1.45;
    color:#263c53
}
.hero-visual{
    align-self:end;
    min-width:0;
    padding-bottom:0;
    position:relative
}
.dashboard{
    display:grid;
    grid-template-columns:19.5% 80.5%;
    width:100%;
    aspect-ratio:1.21;
    background:#f6f8fc;
    border-radius:10px;
    overflow:hidden;
    box-shadow:0 24px 45px #10263b27,0 2px 3px #1839520a;
    container-type:inline-size
}
.dashboard-sidebar{
    background:linear-gradient(135deg,#061a2f,#162c42);
    color:#fff;
    padding:3.1cqw 2.3cqw
}
.dashboard-logo{
    display:flex;
    align-items:center;
    gap:3px;
    font-size:3.3cqw;
    font-weight:700;
    letter-spacing:-.04em
}
.dashboard-logo img{
    width:3.3cqw;
    height:3.3cqw;
    padding:.3cqw;
    background:#fff;
    border-radius:50%
}
.dashboard-nav{
    display:grid;
    gap:2.3cqw;
    margin-top:4cqw;
    color:#c9d7e3
}
.dashboard-nav span{
    display:flex;
    align-items:center;
    gap:1.4cqw;
    font-size:1.45cqw
}
.dashboard-nav svg{
    width:1.7cqw;
    height:1.7cqw;
    fill:none;
    stroke:currentColor;
    stroke-width:1.6
}
.dashboard-main{
    padding:2.8cqw 2.7cqw 3.2cqw
}
.dashboard-toolbar{
    display:flex;
    justify-content:flex-end;
    gap:2cqw;
    align-items:center;
    height:4cqw
}
.dashboard-search{
    display:flex;
    align-items:center;
    justify-content:space-between;
    width:40cqw;
    gap:1cqw;
    border:1px solid #e4eaf2;
    border-radius:5px;
    padding:.7cqw 1cqw;
    color:#8995a6;
    background:#fff;
    font-size:1.25cqw
}
.dashboard-search svg{
    width:1.6cqw;
    height:1.6cqw;
    fill:none;
    stroke:#9ba9b7;
    stroke-width:1.5
}
.dashboard-search svg:last-child{
    margin-left:auto
}
.dashboard-user{
    background:#091e33;
    color:#fff;
    font-size:1.2cqw;
    width:4cqw;
    height:4cqw;
    display:grid;
    place-items:center;
    border-radius:50%
}
.dashboard-greeting{
    margin-top:2.2cqw;
    margin-bottom:3cqw;
    display:grid;
    gap:.8cqw
}
.dashboard-greeting strong{
    font-size:2.7cqw;
    letter-spacing:-.03em;
    font-weight:650
}
.dashboard-greeting span{
    font-size:1.55cqw;
    color:#778498
}
.dashboard-widgets{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:1.8cqw
}
.dashboard-widget{
    padding:2.6cqw 2.3cqw 1.8cqw;
    min-height:28cqw;
    border-radius:7px;
    background:#fff;
    box-shadow:0 1px 6px #16243b06;
    border:1px solid #eef1f6;
    position:relative;
    overflow:hidden
}
.dashboard-widget h4{
    font-size:1.9cqw;
    font-weight:650;
    letter-spacing:-.02em;
    white-space:nowrap;
    margin-bottom:3.2cqw
}
.learning-summary{
    display:flex;
    align-items:center;
    gap:2.8cqw
}
.donut{
    width:12.5cqw;
    height:12.5cqw;
    border-radius:50%;
    position:relative;
    display:grid;
    place-items:center;
    flex-shrink:0
}
.donut:before{
    content:"";
    position:absolute;
    inset:1.25cqw;
    border-radius:50%;
    background:#fff
}
.donut span{
    z-index:1;
    font-size:2.6cqw;
    font-weight:650;
    letter-spacing:-.04em
}
.learning-donut{
    background:conic-gradient(#00c2c4 0 24%,#078cff 24% 78%,#dfebfa 78%)
}
.course-count{
    display:grid;
    gap:.7cqw
}
.course-count small{
    font-size:1.55cqw;
    font-weight:600;
    white-space:nowrap
}
.course-count strong{
    font-size:2.7cqw;
    line-height:1.25;
    white-space:nowrap
}
.course-count strong span{
    font-size:1.65cqw;
    font-weight:500
}
.course-count em,.positive{
    font-size:1.5cqw;
    color:#079d69;
    font-style:normal;
    font-weight:600
}
.mini-bars{
    display:flex;
    justify-content:flex-end;
    gap:.7cqw;
    align-items:end;
    height:5.5cqw;
    margin-top:1.2cqw
}
.mini-bars i{
    width:.9cqw;
    height:20%;
    background:#80c0ff;
    border-radius:1px
}
.mini-bars i:nth-child(2){
    height:28%
}
.mini-bars i:nth-child(3){
    height:40%
}
.mini-bars i:nth-child(4){
    height:54%
}
.mini-bars i:nth-child(5){
    height:65%
}
.mini-bars i:nth-child(6){
    height:56%
}
.mini-bars i:nth-child(7){
    height:77%
}
.mini-bars i:nth-child(8){
    height:100%
}
.performance-score{
    font-size:4.2cqw;
    font-weight:650;
    line-height:1.2;
    letter-spacing:-.03em
}
.performance-score span{
    font-size:2.2cqw;
    font-weight:500;
    color:#52657c
}
.widget-caption{
    font-size:1.3cqw;
    color:#8d99aa;
    display:block;
    margin:.3cqw 0 1.3cqw
}
.positive{
    display:block
}
.performance-chart{
    width:100%;
    height:7.5cqw;
    margin-top:.4cqw
}
.skills-bars{
    display:grid;
    gap:2.4cqw
}
.skills-bars>div{
    display:grid;
    grid-template-columns:14.5cqw 1fr 4cqw;
    gap:1.2cqw;
    align-items:center
}
.skills-bars span{
    font-size:1.5cqw
}
.skills-bars small{
    font-size:1.5cqw;
    color:#728095
}
.skills-bars i,.course-details i{
    display:block;
    background:#edf1f5;
    position:relative;
    height:.8cqw;
    border-radius:20px;
    overflow:hidden
}
.skills-bars i:before,.course-details i:before{
    content:"";
    display:block;
    width:var(--progress);
    height:100%;
    background:#0089ff;
    border-radius:20px
}
.readiness-summary{
    display:flex;
    align-items:center;
    gap:2.5cqw
}
.readiness-donut{
    width:14.5cqw;
    height:14.5cqw;
    background:conic-gradient(#00b7ba 0 36%,#ffa268 36% 45%,#e0e8ef 45% 54%,#a8ceff 54%)
}
.readiness-legend{
    display:grid;
    gap:1.9cqw;
    white-space:nowrap
}
.readiness-legend li{
    font-size:1.25cqw;
    display:flex;
    align-items:center;
    gap:.7cqw
}
.readiness-legend li:before{
    content:"";
    width:1.5cqw;
    height:1.5cqw;
    border-radius:50%;
    background:#00b7ba;
    flex-shrink:0
}
.readiness-legend li:nth-child(2):before{
    background:#3c9bfd
}
.readiness-legend li:nth-child(3):before{
    background:#ffa268
}
.readiness-legend li:nth-child(4):before{
    background:#f08d79
}
.customer-section{
    padding:42px 0 50px;
    background:linear-gradient(#fff,#fefefe)
}
.customer-section .eyebrow{
    color:#536985;
    text-align:center;
    font-size:11px;
    margin-bottom:34px;
    letter-spacing:.2em
}
.customer-logos{
    display:grid;
    grid-template-columns:repeat(6,1fr);
    align-items:center;
    gap:35px
}
.customer-logos li{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:10px;
    color:#8292a2;
    font-size:16px;
    font-weight:500;
    letter-spacing:.12em;
    white-space:nowrap
}
.customer-logos li:nth-child(1),.customer-logos li:nth-child(5),.customer-logos li:nth-child(6){
    font-size:12px
}
.customer-mark{
    width:37px;
    height:40px;
    fill:none;
    stroke:currentColor;
    flex-shrink:0
}
.customer-logos img{
    object-fit:contain;
    max-height:45px
}
.section-heading{
    text-align:center;
    margin-bottom:36px
}
.section-heading .eyebrow{
    color:#174178;
    margin-bottom:14px
}
.section-heading h2{
    font-size:40px;
    font-weight:750;
    letter-spacing:-.035em;
    margin-bottom:16px
}
.section-heading>p:last-child{
    color:var(--body);
    font-size:18px;
    line-height:1.5
}
.solutions{
    padding:50px 0 43px;
    background:linear-gradient(#f9fbfe,#fff)
}
.solution-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:26px
}
.solution-card{
    padding:26px 26px 29px;
    border-radius:12px;
    background:#fff;
    border:1px solid #f3f5f8;
    box-shadow:0 5px 23px #0a244005;
    display:flex;
    flex-direction:column;
    min-width:0
}
.solution-heading{
    display:flex;
    align-items:center;
    gap:24px;
    margin-bottom:26px;
    min-height:96px
}
.solution-heading h3{
    font-size:28px;
    font-weight:750;
    margin-bottom:6px;
    letter-spacing:-.035em
}
.solution-heading p{
    font-size:18px;
    line-height:1.45;
    color:var(--body)
}
.solution-icon{
    width:87px;
    height:87px;
    border-radius:50%;
    display:grid;
    place-items:center;
    background:#e6f4ff;
    color:#0082ff;
    flex-shrink:0
}
.solution-icon .icon{
    width:43px;
    height:43px
}
.solution-description{
    color:var(--body);
    font-size:20px;
    line-height:1.5;
    margin-bottom:23px;
    min-height:150px
}
.product-preview{
    border:1px solid #e1e7ef;
    border-radius:8px;
    padding:17px 15px;
    background:linear-gradient(#fff,#fdfefe);
    min-height:307px;
    margin-top:auto;
    container-type:inline-size;
    overflow:hidden
}
.product-preview h4{
    font-size:15px;
    font-weight:650;
    letter-spacing:-.025em;
    line-height:1.35
}
.preview-tabs{
    display:flex;
    gap:4cqw;
    white-space:nowrap;
    border-bottom:1px solid #edf0f5;
    margin-top:17px;
    margin-bottom:9px;
    color:#64758c;
    font-size:2.65cqw
}
.preview-tabs span{
    padding-bottom:8px
}
.preview-tabs span:first-child{
    color:#162b46;
    border-bottom:2px solid #0089ff
}
.course-row{
    display:flex;
    gap:14px;
    padding:9px 0;
    align-items:center
}
.course-row img{
    width:20cqw;
    height:14cqw;
    object-fit:cover;
    border-radius:3px
}
.course-row>div{
    flex:1;
    min-width:0
}
.course-row strong{
    font-size:3.2cqw;
    font-weight:600;
    display:block;
    letter-spacing:-.02em;
    margin-bottom:6px;
    white-space:nowrap
}
.course-details{
    display:flex;
    gap:3cqw;
    align-items:center;
    font-size:2.7cqw;
    color:#64758c;
    white-space:nowrap
}
.course-details i{
    height:1cqw;
    flex:1;
    min-width:10cqw
}
.course-details small{
    font-size:2.5cqw
}
.preview-title{
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-bottom:19px
}
.preview-title>span{
    font-size:11px;
    color:#0067ff
}
.goal-row{
    display:flex;
    gap:12px;
    align-items:center;
    min-height:76px;
    padding:9px 0
}
.avatar{
    display:grid;
    place-items:center;
    width:36px;
    height:36px;
    border-radius:50%;
    font-size:10px;
    font-weight:600;
    flex-shrink:0;
    border:2px solid #e8f0f3
}
.avatar-one{
    color:#fff;
    background:#957963
}
.avatar-two{
    color:#fff;
    background:#658d8a
}
.avatar-three{
    color:#fff;
    background:#667d98
}
.goal-row>div{
    flex:1;
    min-width:0
}
.goal-row strong{
    display:block;
    font-size:2.9cqw;
    font-weight:550;
    line-height:1.5;
    letter-spacing:-.015em
}
.goal-row>div>span{
    display:block;
    font-size:2.7cqw;
    color:#64758c;
    margin-top:3px
}
.status{
    border-radius:6px;
    background:#d9f7e7;
    color:#147b58;
    padding:3px 8px;
    font-size:2.7cqw;
    white-space:nowrap;
    flex-shrink:0
}
.status-risk{
    background:#ffe5de;
    color:#bb4636
}
.pipeline{
    display:flex;
    margin-top:26px;
    gap:3cqw;
    height:213px
}
.pipeline-pyramid{
    width:41%;
    display:flex;
    flex-direction:column;
    clip-path:polygon(50% 0,100% 100%,0 100%);
    background:#d1e7ff;
    flex-shrink:0
}
.pipeline-pyramid>div{
    height:25%;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:2cqw
}
.pipeline-pyramid>div:nth-child(1){
    background:#95caff
}
.pipeline-pyramid>div:nth-child(2){
    background:#b7e9de
}
.pipeline-pyramid>div:nth-child(3){
    background:#ffe7a3
}
.pipeline-pyramid>div:nth-child(4){
    background:#c4c6ff
}
.tiny-avatar{
    width:6cqw;
    height:6cqw;
    border:1px solid #fff;
    display:grid;
    place-items:center;
    border-radius:50%;
    font-size:1.8cqw;
    color:#fff;
    background:#8b7162
}
.tiny-avatar:nth-child(2){
    background:#727e94
}
.tiny-avatar:nth-child(3){
    background:#7a9295
}
.pipeline-levels{
    flex:1;
    display:grid;
    grid-template-rows:repeat(4,1fr);
    min-width:0
}
.pipeline-levels>div{
    display:flex;
    justify-content:space-between;
    gap:5px;
    align-items:center;
    border-bottom:1px solid #f0f3f7
}
.pipeline-levels strong{
    font-size:3.1cqw;
    font-weight:600;
    white-space:nowrap;
    letter-spacing:-.02em
}
.pipeline-levels span{
    font-size:3cqw;
    font-weight:600;
    padding:2px 7px;
    background:#f0f4f8;
    border-radius:10px
}
.pipeline-levels>div:first-child span{
    background:#e4f2ff
}
.pipeline-levels>div:last-child span{
    background:#eef0ff
}
.explore-link{
    font-size:17px;
    font-weight:650;
    color:#005eff;
    display:flex;
    align-items:center;
    gap:18px;
    margin-top:25px;
    align-self:flex-start
}
.explore-link .icon{
    width:23px;
    height:23px
}
.explore-link:hover{
    text-decoration:underline
}
.results{
    background:#031d37;
    position:relative;
    isolation:isolate;
    overflow:hidden;
    padding:30px 0
}
.results-photo{
    position:absolute;
    left:34%;
    top:0;
    width:50%;
    height:100%;
    object-fit:cover;
    object-position:38% center;
    z-index:-2
}
.results:after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(90deg,#031d37 0%,#031d37 33%,#031d3755 51%,#031d3710 64%,#031d37 96%);
    z-index:-1
}
.results-grid{
    display:grid;
    grid-template-columns:1fr 31%;
    gap:8%;
    align-items:center;
    min-height:385px
}
.results-copy{
    max-width:650px;
    padding:15px 0
}
.results-copy .eyebrow{
    font-size:11px;
    letter-spacing:.18em;
    color:#f1f6fc;
    margin-bottom:19px
}
.results-copy h2{
    font-size:clamp(36px,3.65vw,56px);
    font-weight:750;
    line-height:1.15;
    color:#fff;
    letter-spacing:-.03em;
    margin-bottom:22px
}
.results-copy h2 span{
    color:#7ed6fa;
    font-size:1.2em
}
.results-copy>p:not(.eyebrow){
    color:#f0f5fb;
    font-size:20px;
    line-height:1.5;
    max-width:540px;
    margin-bottom:24px
}
.results-copy .button{
    font-size:16px;
    padding:16px 24px
}
.testimonial{
    border:1px solid #dce4ed;
    border-radius:9px;
    background:linear-gradient(130deg,#fff,#f8fbff);
    padding:33px 27px;
    color:#3b506b;
    box-shadow:0 10px 24px #071b3529
}
.quote-mark{
    color:#009eff;
    width:42px;
    height:37px;
    margin-bottom:22px
}
.testimonial blockquote p{
    font-size:20px;
    line-height:1.6;
    letter-spacing:-.012em
}
.testimonial figcaption{
    display:grid;
    font-size:16px;
    line-height:1.6;
    color:#132944;
    margin-top:18px
}
.quote-rule{
    width:44px;
    height:2px;
    background:#00a0fb;
    margin-bottom:16px
}
.testimonial figcaption strong{
    font-size:17px;
    font-weight:500
}
.metrics{
    background:linear-gradient(100deg,#f1f8ff,#edf6fd);
    padding:28px 0 31px
}
.metrics-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    align-items:center
}
.metric{
    display:flex;
    gap:24px;
    align-items:center;
    justify-content:center;
    border-right:1px solid #c9d9e9
}
.metric:first-child{
    justify-content:flex-start;
    padding-left:20px
}
.metric:last-child{
    border:0;
    justify-content:flex-end;
    padding-right:20px
}
.metric-icon{
    border:2px solid #0085ff;
    color:#0085ff;
    border-radius:50%;
    width:56px;
    height:56px;
    display:grid;
    place-items:center;
    flex-shrink:0
}
.metric-icon .icon{
    width:33px;
    height:33px
}
.metric strong{
    font-size:34px;
    letter-spacing:-.035em;
    font-weight:750;
    line-height:1.2;
    display:block;
    margin-bottom:2px
}
.metric div>span{
    font-size:16px;
    color:#3b526b;
    display:block
}
.industries{
    padding:43px 0 36px;
    background:linear-gradient(#fff,#fcfdff)
}
.industries .section-heading{
    margin-bottom:25px
}
.industries .section-heading h2{
    font-size:37px;
    margin-bottom:15px
}
.industries .section-heading .eyebrow{
    font-size:11px;
    margin-bottom:16px
}
.industry-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:25px
}
.industry-card{
    position:relative;
    display:block;
    height:196px;
    overflow:hidden;
    border-radius:7px;
    background:#0b233e
}
.industry-card img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center 38%;
    transition:transform .2s
}
.industry-card:first-child img{
    object-position:center 40%
}
.industry-card:nth-child(2) img{
    object-position:center 33%
}
.industry-card:after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(transparent 35%,#03172cdb 100%)
}
.industry-card>span{
    position:absolute;
    z-index:1;
    left:21px;
    right:21px;
    bottom:17px;
    color:#fff;
    font-size:21px;
    font-weight:650;
    display:flex;
    align-items:center;
    justify-content:space-between
}
.industry-card>span .icon{
    width:23px;
    height:23px
}
.industry-card:hover img{
    transform:scale(1.025)
}
.closing-cta{
    padding:0 0 29px;
    background:#fcfdff
}
.cta-panel{
    background:linear-gradient(110deg,#0647c5 0%,#0067dc 54%,#009dea 100%);
    color:#fff;
    border-radius:15px;
    padding:35px 7%;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:40px;
    min-height:180px;
    box-shadow:0 10px 27px #0067ff09
}
.cta-panel h2{
    font-size:38px;
    font-weight:700;
    letter-spacing:-.025em;
    margin-bottom:12px
}
.cta-panel p{
    color:#eff7ff;
    font-size:20px;
    line-height:1.5
}
.cta-panel .button{
    color:#005bfa;
    min-width:222px;
    gap:16px;
    flex-shrink:0
}
.site-footer{
    padding:20px 0 18px;
    background:#fff
}
.footer-main{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    padding:8px 0 24px
}
.footer-main .logo span{
    font-size:32px
}
.footer-main>nav{
    display:flex;
    gap:32px;
    font-size:13px;
    font-weight:550
}
.footer-main>nav a:hover,.footer-bottom a:hover{
    color:var(--blue);
    text-decoration:underline
}
.footer-social{
    display:flex;
    gap:21px;
    align-items:center
}
.footer-social .icon{
    width:22px;
    height:22px
}
.social-divider{
    height:24px;
    width:1px;
    background:#e4eaf1;
    margin-left:8px;
    margin-right:8px
}
.footer-bottom{
    border-top:1px solid #e8edf3;
    padding-top:16px;
    display:flex;
    justify-content:space-between;
    gap:20px;
    align-items:center;
    font-size:12px;
    color:#4d627b
}
.footer-bottom nav{
    display:flex;
    gap:0;
    color:#163250
}
.footer-bottom nav a{
    padding:0 15px;
    border-right:1px solid #d8e0ea;
    line-height:1
}
.footer-bottom nav a:last-child{
    padding-right:0;
    border:0
}
.error-page{
    padding-block:100px;
    min-height:65vh
}
.error-page .eyebrow{
    color:#416586;
    margin-bottom:20px
}
.error-page h1{
    font-size:48px;
    margin-bottom:20px
}
.error-page>p:not(.eyebrow){
    color:var(--body);
    max-width:600px;
    margin-bottom:30px
}
@media(min-width:1500px){
    .hero-grid{
        gap:30px
    }
    .hero{
        padding-top:115px
    }
}
@media(max-width:1250px){
    .header-inner{
        gap:30px
    }
    .nav-links{
        gap:21px
    }
    .header-actions{
        gap:22px
    }
    .logo span{
        font-size:32px
    }
    .hero .eyebrow{
        font-size:9.5px
    }
    .hero-description{
        font-size:19px
    }
    .hero-highlights{
        margin-top:50px
    }
    .hero-grid{
        min-height:560px
    }
    .hero{
        padding:85px 0 60px
    }
    .solution-heading{
        gap:16px
    }
    .solution-icon{
        width:69px;
        height:69px
    }
    .solution-icon .icon{
        width:36px;
        height:36px
    }
    .solution-heading h3{
        font-size:25px
    }
    .solution-heading p{
        font-size:16px
    }
    .solution-description{
        font-size:18px;
        min-height:162px
    }
    .product-preview{
        min-height:270px;
        padding:14px 12px
    }
    .product-preview h4{
        font-size:13px
    }
    .goal-row{
        gap:8px;
        min-height:67px
    }
    .avatar{
        width:29px;
        height:29px;
        font-size:8px
    }
    .status{
        padding:3px 5px
    }
    .pipeline{
        height:182px;
        margin-top:22px
    }
    .results-grid{
        min-height:350px
    }
    .testimonial blockquote p{
        font-size:18px
    }
    .testimonial{
        padding:27px 23px
    }
    .results-copy>p:not(.eyebrow){
        font-size:18px;
        max-width:465px
    }
    .section-heading h2{
        font-size:34px
    }
    .industries .section-heading h2{
        font-size:32px
    }
    .metric{
        gap:15px
    }
    .metric div>span{
        font-size:14px
    }
    .cta-panel h2{
        font-size:32px
    }
    .cta-panel p{
        font-size:18px
    }
    .footer-main>nav{
        gap:24px
    }
    .footer-social{
        gap:16px
    }
}
@media(max-width:1000px){
    .site-header{
        height:72px
    }
    .header-inner{
        justify-content:space-between
    }
    .menu-toggle{
        display:block;
        padding:10px
    }
    .main-navigation{
        display:none;
        position:absolute;
        top:71px;
        left:0;
        right:0;
        flex-direction:column;
        align-items:stretch;
        padding:20px 5%;
        background:#fff;
        border-bottom:1px solid var(--border);
        box-shadow:0 10px 25px #081e4010
    }
    .main-navigation.is-open{
        display:flex
    }
    .nav-links{
        flex-direction:column;
        align-items:stretch;
        gap:2px
    }
    .nav-dropdown>button{
        width:100%;
        justify-content:space-between;
        font-size:16px;
        padding:14px 0
    }
    .dropdown-menu{
        position:static;
        box-shadow:none;
        border:0;
        border-left:2px solid #cbe6ff;
        border-radius:0;
        padding:0 10px;
        margin-bottom:8px
    }
    .dropdown-menu a{
        font-size:15px
    }
    .header-actions{
        justify-content:space-between;
        padding:15px 0 0;
        border-top:1px solid var(--border)
    }
    .login-link{
        font-size:14px
    }
    .hero-grid{
        grid-template-columns:1.05fr 1fr;
        gap:15px;
        min-height:500px;
        align-items:center
    }
    .hero{
        padding:65px 0 50px
    }
    .hero h1{
        font-size:36px
    }
    .hero .eyebrow{
        font-size:9px;
        line-height:1.7;
        white-space:normal;
        max-width:340px
    }
    .hero-description{
        font-size:17px;
        margin-top:20px
    }
    .hero .button{
        font-size:14px;
        padding:14px 18px;
        min-height:48px
    }
    .button-row{
        gap:12px
    }
    .hero-highlights{
        gap:12px;
        margin-top:40px
    }
    .hero-highlights span{
        font-size:12px
    }
    .hero-highlights .icon{
        width:27px;
        height:27px
    }
    .hero-visual{
        align-self:center;
        margin-top:45px
    }
    .customer-logos{
        gap:15px
    }
    .customer-logos li{
        font-size:12px;
        gap:6px
    }
    .customer-logos li:nth-child(1),.customer-logos li:nth-child(5),.customer-logos li:nth-child(6){
        font-size:9px
    }
    .customer-mark{
        width:29px;
        height:32px
    }
    .section-heading h2{
        font-size:30px
    }
    .section-heading>p:last-child{
        font-size:16px
    }
    .solution-grid{
        gap:16px
    }
    .solution-card{
        padding:22px 18px
    }
    .solution-heading{
        gap:12px;
        align-items:flex-start;
        min-height:108px
    }
    .solution-icon{
        width:50px;
        height:50px
    }
    .solution-icon .icon{
        width:27px;
        height:27px
    }
    .solution-heading h3{
        font-size:21px;
        margin-top:9px
    }
    .solution-heading p{
        font-size:14px
    }
    .solution-heading br{
        display:none
    }
    .solution-description{
        font-size:16px;
        min-height:168px
    }
    .product-preview{
        padding:12px 9px;
        min-height:228px
    }
    .product-preview h4{
        font-size:11px
    }
    .preview-tabs{
        margin-top:12px;
        gap:3cqw
    }
    .course-row{
        gap:8px;
        padding:7px 0
    }
    .goal-row{
        gap:6px;
        min-height:55px
    }
    .avatar{
        width:22px;
        height:22px;
        font-size:6px
    }
    .preview-title{
        margin-bottom:10px
    }
    .preview-title>span{
        font-size:8px
    }
    .pipeline{
        height:157px;
        margin-top:20px
    }
    .pipeline-levels span{
        padding:2px 5px
    }
    .explore-link{
        font-size:14px;
        gap:12px;
        margin-top:20px
    }
    .results-grid{
        grid-template-columns:1fr 33%;
        gap:5%
    }
    .results-copy h2{
        font-size:36px
    }
    .results-copy>p:not(.eyebrow){
        font-size:16px;
        max-width:400px
    }
    .results-copy .button{
        font-size:14px;
        padding:15px 20px;
        gap:12px
    }
    .testimonial{
        padding:25px 20px
    }
    .testimonial blockquote p{
        font-size:16px
    }
    .testimonial figcaption{
        font-size:12px
    }
    .testimonial figcaption strong{
        font-size:14px
    }
    .quote-mark{
        width:35px;
        height:30px;
        margin-bottom:16px
    }
    .metric-icon{
        width:46px;
        height:46px
    }
    .metric-icon .icon{
        width:27px;
        height:27px
    }
    .metric strong{
        font-size:28px
    }
    .metric div>span{
        font-size:12px
    }
    .metric:first-child,.metric:last-child{
        padding:0
    }
    .metric{
        gap:13px
    }
    .industries .section-heading h2{
        font-size:28px
    }
    .industry-card{
        height:160px
    }
    .industry-card>span{
        font-size:16px;
        left:17px;
        right:17px
    }
    .cta-panel{
        padding:30px 5%;
        gap:25px
    }
    .cta-panel h2{
        font-size:28px
    }
    .cta-panel p{
        font-size:16px
    }
    .cta-panel .button{
        min-width:180px;
        font-size:14px;
        padding:15px 17px
    }
    .footer-main{
        flex-wrap:wrap;
        gap:24px
    }
    .footer-main>nav{
        order:3;
        width:100%;
        justify-content:center;
        gap:40px
    }
}
@media(max-width:760px){
    body{
        font-size:16px
    }
    .container{
        width:90%
    }
    .wide-container{
        width:90%
    }
    .hero{
        padding:45px 0 48px
    }
    .hero-grid{
        grid-template-columns:1fr;
        min-height:0;
        gap:36px
    }
    .hero-copy{
        max-width:600px;
        margin-inline:auto;
        width:100%
    }
    .hero .eyebrow{
        font-size:10px;
        max-width:100%;
        margin-bottom:17px
    }
    .hero h1{
        font-size:clamp(33px,6.4vw,47px);
        max-width:620px
    }
    .hero-description{
        font-size:18px;
        max-width:570px;
        margin-top:20px;
        margin-bottom:25px
    }
    .hero .button{
        font-size:15px;
        padding:15px 20px;
        min-height:50px
    }
    .hero-highlights{
        margin-top:36px;
        max-width:570px;
        gap:14px
    }
    .hero-highlights span{
        font-size:13px
    }
    .hero-visual{
        width:100%;
        max-width:580px;
        margin:0 auto;
        align-self:auto
    }
    .dashboard{
        border-radius:9px
    }
    .customer-section{
        padding:31px 0 34px
    }
    .customer-section .eyebrow{
        font-size:9px;
        margin-bottom:25px;
        line-height:1.8
    }
    .customer-logos{
        grid-template-columns:repeat(3,1fr);
        row-gap:26px;
        column-gap:16px
    }
    .customer-logos li{
        font-size:13px
    }
    .customer-logos li:nth-child(1),.customer-logos li:nth-child(5),.customer-logos li:nth-child(6){
        font-size:10px
    }
    .customer-mark{
        width:29px;
        height:32px
    }
    .solutions{
        padding:40px 0
    }
    .section-heading{
        margin-bottom:28px
    }
    .section-heading .eyebrow{
        font-size:10px;
        margin-bottom:13px
    }
    .section-heading h2{
        font-size:29px;
        line-height:1.2;
        margin-bottom:16px
    }
    .desktop-break{
        display:none
    }
    .section-heading>p:last-child{
        font-size:16px;
        line-height:1.6
    }
    .solution-grid{
        grid-template-columns:1fr;
        gap:22px;
        max-width:520px;
        margin-inline:auto
    }
    .solution-card{
        padding:25px;
        border:1px solid #edf2f7
    }
    .solution-heading{
        min-height:0;
        gap:20px;
        margin-bottom:22px;
        align-items:center
    }
    .solution-icon{
        width:72px;
        height:72px
    }
    .solution-icon .icon{
        width:35px;
        height:35px
    }
    .solution-heading h3{
        font-size:27px;
        margin-top:0;
        margin-bottom:5px
    }
    .solution-heading p{
        font-size:17px
    }
    .solution-heading br{
        display:initial
    }
    .solution-description{
        font-size:18px;
        min-height:0;
        margin-bottom:24px
    }
    .product-preview{
        padding:17px 15px;
        min-height:290px;
        max-width:100%
    }
    .product-preview h4{
        font-size:14px
    }
    .preview-tabs{
        margin-top:14px;
        font-size:2.65cqw
    }
    .preview-title{
        margin-bottom:15px
    }
    .preview-title>span{
        font-size:11px
    }
    .course-row{
        gap:13px;
        padding:9px 0
    }
    .goal-row{
        gap:12px;
        min-height:76px
    }
    .avatar{
        width:34px;
        height:34px;
        font-size:9px
    }
    .status{
        padding:3px 8px
    }
    .pipeline{
        height:207px;
        margin-top:23px
    }
    .explore-link{
        font-size:16px;
        margin-top:23px
    }
    .results{
        padding:37px 0
    }
    .results-grid{
        grid-template-columns:1fr;
        gap:32px;
        min-height:0
    }
    .results-copy{
        max-width:540px;
        padding:0
    }
    .results-copy h2{
        font-size:37px;
        margin-bottom:20px;
        max-width:500px
    }
    .results-copy>p:not(.eyebrow){
        font-size:18px;
        max-width:510px
    }
    .results-photo{
        left:25%;
        width:90%;
        height:53%;
        object-position:50% 40%;
        opacity:.42
    }
    .results:after{
        background:linear-gradient(90deg,#031d37 0,#031d37ba 58%,#031d3770),linear-gradient(0deg,#031d37 42%,transparent 85%)
    }
    .testimonial{
        padding:27px;
        width:100%;
        max-width:540px
    }
    .testimonial blockquote p{
        font-size:18px
    }
    .testimonial figcaption{
        font-size:14px
    }
    .testimonial figcaption strong{
        font-size:16px
    }
    .metrics{
        padding:26px 0
    }
    .metrics-grid{
        grid-template-columns:1fr;
        gap:20px
    }
    .metric,.metric:first-child,.metric:last-child{
        border:0;
        justify-content:flex-start;
        max-width:330px;
        width:100%;
        margin:auto;
        padding-bottom:18px;
        border-bottom:1px solid #c9d9e9;
        gap:22px
    }
    .metric:last-child{
        padding-bottom:0;
        border:0
    }
    .metric-icon{
        width:51px;
        height:51px
    }
    .metric strong{
        font-size:32px
    }
    .metric div>span{
        font-size:14px
    }
    .industries{
        padding:38px 0 30px
    }
    .industries .section-heading h2{
        font-size:29px;
        line-height:1.2
    }
    .industry-grid{
        grid-template-columns:1fr;
        gap:18px;
        max-width:540px;
        margin:auto
    }
    .industry-card{
        height:215px
    }
    .industry-card>span{
        font-size:20px;
        bottom:20px;
        left:22px;
        right:22px
    }
    .industry-card:nth-child(2) img{
        object-position:center 33%
    }
    .cta-panel{
        padding:30px 25px;
        flex-direction:column;
        align-items:flex-start;
        gap:25px;
        border-radius:11px
    }
    .cta-panel h2{
        font-size:29px;
        line-height:1.2
    }
    .cta-panel p{
        font-size:17px;
        line-height:1.55
    }
    .cta-panel .button{
        font-size:15px;
        min-width:0;
        padding:15px 20px
    }
    .closing-cta{
        padding-bottom:25px
    }
    .footer-main{
        gap:25px;
        padding-bottom:25px
    }
    .footer-main .logo span{
        font-size:28px
    }
    .footer-main>nav{
        gap:21px;
        justify-content:flex-start;
        flex-wrap:wrap;
        font-size:12px
    }
    .footer-social{
        gap:14px;
        flex-wrap:wrap
    }
    .footer-social .login-link{
        font-size:12px
    }
    .social-divider{
        margin:0 4px;
        height:20px
    }
    .footer-social .icon{
        width:19px;
        height:19px
    }
    .footer-bottom{
        font-size:10px;
        gap:14px;
        flex-wrap:wrap
    }
    .footer-bottom nav a{
        padding:0 12px
    }
    .error-page h1{
        font-size:36px
    }
}
@media(max-width:380px){
    .hero h1{
        font-size:31px
    }
    .hero .button{
        font-size:13px;
        padding:14px 17px;
        gap:10px
    }
    .hero-highlights{
        gap:8px
    }
    .hero-highlights span{
        font-size:11px
    }
    .solution-card{
        padding:21px
    }
    .solution-heading p{
        font-size:15px
    }
    .solution-icon{
        width:62px;
        height:62px
    }
    .solution-heading{
        gap:16px
    }
    .product-preview{
        padding:13px 10px;
        min-height:256px
    }
    .goal-row{
        min-height:66px;
        gap:8px
    }
    .avatar{
        width:27px;
        height:27px;
        font-size:7px
    }
    .pipeline{
        height:180px
    }
    .footer-social{
        width:100%
    }
    .industry-card{
        height:190px
    }
}
@media(max-width:380px){
    .customer-logos{
        grid-template-columns:repeat(3,minmax(0,1fr));
        column-gap:10px
    }
    .customer-logos li{
        font-size:11px;
        gap:5px
    }
    .customer-logos li:nth-child(1),.customer-logos li:nth-child(5),.customer-logos li:nth-child(6){
        font-size:8px
    }
    .customer-mark{
        width:24px;
        height:28px
    }
}
.avatar > img{
    width:100%;
    height:100%;
    display:block;
    border-radius:inherit;
    object-fit:cover;
    object-position:center
}
img.tiny-avatar{
    object-fit:cover;
    object-position:center;
    flex-shrink:0
}
@media(prefers-reduced-motion:reduce){
    html{
        scroll-behavior:auto
    }
    *,*:before,*:after{
        transition:none!important
    }
}
@media print{
    .site-header,.site-footer,.closing-cta,.button,.explore-link{
        display:none
    }
    .hero,.results,.metrics{
        print-color-adjust:exact
    }
    .hero{
        padding:20px 0
    }
    .hero-grid{
        min-height:0
    }
    .solution-card{
        break-inside:avoid
    }
    .results-grid{
        break-inside:avoid
    }
}

/* Shared styling for the complete marketing site. */
.logo img { width:174px; height:auto; }
.site-footer .logo img { width:156px; }
.footer-contact-link { display:inline-flex; align-items:center; gap:10px; font-size:13px; font-weight:650; }
.footer-contact-link .icon { width:18px; height:18px; }
.dropdown-menu a[aria-current="page"] { color:#0054d6; background:#edf7ff; font-weight:650; }
.customer-logos { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); align-items:center; gap:32px; }
.customer-logos li { display:flex; align-items:center; justify-content:center; min-width:0; }
.customer-logos img { width:100%; max-width:170px; height:70px; max-height:none; object-fit:contain; filter:grayscale(1); opacity:.72; }
.customer-directory .customer-logos { grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; margin-bottom:45px; }
.customer-directory .customer-logos li { padding:28px; min-height:150px; border:1px solid var(--border); border-radius:10px; background:#fff; }
.customer-directory .customer-logos img { height:90px; }
.customer-directory .container > .button { display:flex; width:fit-content; margin-inline:auto; }
.metrics-source { margin:0 auto; padding:0 20px 18px; text-align:center; font-size:12px; color:var(--body); }
.metrics-source a { text-decoration:underline; text-underline-offset:3px; }
.page-hero { padding:84px 0 76px; background:radial-gradient(ellipse at 85% 20%,#e3f2ff 0,transparent 55%),linear-gradient(120deg,#f4faff,#fff); }
.page-hero-grid { display:grid; grid-template-columns:1.05fr 1fr; gap:64px; align-items:center; }
.page-hero-copy h1 { max-width:820px; font-size:clamp(38px,4vw,60px); font-weight:750; margin:20px 0 24px; line-height:1.09; }
.page-hero-copy > p:not(.eyebrow) { color:var(--body); font-size:20px; line-height:1.65; max-width:670px; }
.page-hero-copy .eyebrow { color:#084587; }
.page-hero-copy .button-row { margin-top:30px; align-items:center; }
.page-hero-centered { text-align:center; max-width:980px; }
.page-hero-centered h1,.page-hero-centered .page-hero-copy > p { margin-inline:auto; }
.page-hero-centered .button-row { justify-content:center; }
.page-hero-preview { min-width:0; }
.page-hero-preview .product-preview { height:auto; min-height:280px; margin:0; box-shadow:0 18px 45px #16345312; background:#fff; padding:22px; }
.page-hero-preview .dashboard { width:100%; transform:none; }
.page-hero-photo { width:100%; height:390px; object-fit:cover; border-radius:12px; box-shadow:0 18px 45px #16345318; }
.page-feature-strip { padding:42px 0; background:#f0f8ff; border-block:1px solid #e7f0f8; }
.page-feature-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:40px; }
.page-feature-grid strong { font-size:21px; letter-spacing:-.025em; }
.page-feature-grid p { margin-top:10px; font-size:16px; line-height:1.65; color:var(--body); }
.content-section { padding:68px 0; }
.loves-results { padding:76px 0 54px; background:#f7fafc; }
.loves-results-heading { display:flex; justify-content:space-between; align-items:center; gap:32px; margin-bottom:36px; }
.loves-results-heading .eyebrow { color:#0054b9; margin-bottom:15px; }
.loves-results-heading h2 { font-size:clamp(30px,3.3vw,46px); line-height:1.13; letter-spacing:-.04em; }
.loves-results-brand { display:flex; align-items:center; gap:18px; }
.loves-results-brand img { width:72px; height:80px; object-fit:contain; }
.loves-results-brand span { max-width:125px; color:var(--body); font-size:14px; line-height:1.6; }
.loves-results-grid { display:grid; grid-template-columns:1.15fr 1fr; gap:24px; }
.loves-savings { position:relative; overflow:hidden; padding:42px; border-radius:20px; background:radial-gradient(ellipse at 95% 100%,#075176 0,transparent 65%),#001a36; color:#fff; display:flex; flex-direction:column; justify-content:center; }
.loves-savings::after { content:""; position:absolute; width:310px; height:310px; border:1px solid #6dd8ff20; border-radius:50%; right:-195px; top:-165px; box-shadow:0 0 0 28px #6dd8ff08,0 0 0 56px #6dd8ff06; pointer-events:none; }
.loves-savings-kicker { font-size:13px; color:#b7d7ed; margin-bottom:28px; }
.loves-savings-value { color:#76ddff; font-size:clamp(34px,4.8vw,72px); font-weight:750; line-height:1.05; letter-spacing:-.06em; font-variant-numeric:tabular-nums; white-space:nowrap; }
.loves-savings-value > span { font-size:.55em; vertical-align:super; margin-left:3px; }
.loves-savings h3 { margin-top:19px; font-size:26px; line-height:1.3; font-weight:550; letter-spacing:-.02em; }
.loves-savings-footer { display:flex; align-items:center; gap:22px; border-top:1px solid #ffffff24; padding-top:23px; margin-top:30px; }
.loves-savings-art { width:126px; height:71px; flex:none; stroke:#76ddff; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.loves-savings-footer p { font-size:14px; line-height:1.65; color:#b7d7ed; }
.loves-results-support { display:grid; gap:24px; }
.loves-result-card { display:flex; align-items:center; gap:28px; padding:32px; border:1px solid #d8e7ea; border-radius:20px; background:#eef8f6; }
.loves-result-service { background:#edf5ff; border-color:#dce8f6; }
.loves-result-ring { width:112px; height:112px; flex:none; stroke:#078777; }
.loves-result-service .loves-result-ring { stroke:#005be5; }
.loves-ring-track { stroke:currentColor; color:#d3e9e4; stroke-width:8; }
.loves-result-service .loves-ring-track { color:#d6e5fa; }
.loves-ring-value { stroke-width:8; stroke-linecap:round; }
.loves-ring-arrow { stroke-width:3; stroke-linecap:round; stroke-linejoin:round; }
.loves-result-value { font-size:56px; font-weight:750; line-height:1; letter-spacing:-.05em; font-variant-numeric:tabular-nums; }
.loves-result-value span { font-size:.55em; margin-left:2px; }
.loves-result-card h3 { font-size:18px; line-height:1.35; letter-spacing:-.02em; margin-top:12px; }
.loves-result-description { color:var(--body); font-size:13px; line-height:1.6; margin-top:7px; }
.loves-results-note { margin-top:24px; font-size:12px; line-height:1.7; color:var(--body); }
@media (max-width:1000px) {
    .loves-results-grid { grid-template-columns:1fr; }
    .loves-savings-value { font-size:clamp(34px,8vw,72px); }
    .loves-results-support { grid-template-columns:1fr 1fr; }
    .loves-result-card { flex-direction:column; align-items:flex-start; gap:22px; }
}
@media (max-width:600px) {
    .loves-results { padding:48px 0 36px; }
    .loves-results-heading { align-items:flex-start; }
    .loves-results-brand img { width:48px; height:58px; }
    .loves-results-brand span { display:none; }
    .loves-results-heading h2 { font-size:28px; }
    .loves-savings { padding:28px 24px; border-radius:16px; }
    .loves-savings-value { font-size:clamp(34px,9.6vw,56px); }
    .loves-savings h3 { font-size:23px; }
    .loves-savings-footer { gap:14px; }
    .loves-savings-art { width:90px; height:55px; }
    .loves-savings-footer p { font-size:12px; }
    .loves-results-support { grid-template-columns:1fr; gap:16px; }
    .loves-results-grid { gap:16px; }
    .loves-result-card { flex-direction:row; align-items:center; padding:24px 20px; gap:18px; border-radius:16px; }
    .loves-result-ring { width:78px; height:78px; }
    .loves-result-value { font-size:44px; }
    .loves-result-card h3 { font-size:16px; }
}
.customer-story-quote { background:#001a36; color:#fff; }
.customer-story-testimonial { display:grid; grid-template-columns:160px minmax(0,1fr); gap:42px; align-items:center; max-width:1020px; margin-inline:auto; }
.customer-story-testimonial > img { width:160px; height:160px; object-fit:cover; border-radius:50%; }
.customer-story-testimonial .eyebrow { color:#7dd6ff; margin-bottom:20px; }
.customer-story-testimonial blockquote p { font-size:clamp(22px,2.4vw,30px); line-height:1.5; }
.customer-story-testimonial figcaption { display:grid; gap:5px; margin-top:24px; font-size:15px; line-height:1.5; color:#c8d9e9; }
.customer-story-testimonial figcaption strong { color:#fff; font-size:18px; }
@media (max-width:600px) {
    .customer-story-testimonial { grid-template-columns:1fr; gap:25px; }
    .customer-story-testimonial > img { width:112px; height:112px; }
}
.editorial-sections { max-width:1020px; }
.editorial-block { display:grid; grid-template-columns:90px 1fr; gap:26px; padding:44px 0; border-bottom:1px solid var(--border); scroll-margin-top:40px; }
.editorial-block:first-child { padding-top:0; }
.editorial-block:last-child { border-bottom:0; padding-bottom:0; }
.editorial-number { font-size:37px; font-weight:700; color:#0081e5; letter-spacing:-.05em; }
.editorial-block h2 { font-size:31px; line-height:1.2; margin:0 0 18px; }
.editorial-block p { font-size:18px; line-height:1.75; color:var(--body); }
.editorial-block .company-milestone { margin-top:24px; font-size:16px; line-height:1.65; }
.company-milestone a { text-decoration:underline; text-underline-offset:3px; }
.check-list { margin:22px 0; }
.check-list li { position:relative; padding-left:29px; margin:12px 0; color:var(--body); line-height:1.6; }
.check-list li::before { content:"✓"; position:absolute; left:0; color:#0076df; font-weight:750; }
.editorial-block .explore-link { margin-top:23px; width:fit-content; }
.subpage-cta { padding:15px 0 55px; }
.subpage-cta .cta-panel { padding:40px 46px; }
.team-section { background:#f7fbfe; }
.team-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; margin-top:42px; }
.team-card { border:1px solid var(--border); border-radius:12px; overflow:hidden; background:#fff; }
.team-card > img { width:100%; height:300px; object-fit:cover; object-position:center 35%; }
.team-card > div { padding:26px; }
.team-card h3 { font-size:23px; margin-bottom:7px; }
.team-card p { color:var(--body); font-size:15px; line-height:1.7; }
.team-card .team-role { font-size:13px; color:#0054b9; font-weight:650; margin-bottom:17px; }
.partner-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:25px; margin-top:40px; }
.partner-grid li { border:1px solid var(--border); padding:24px; border-radius:10px; text-align:center; }
.partner-grid img { width:100%; height:90px; object-fit:contain; filter:grayscale(1); margin-bottom:20px; }
.partner-grid span { display:block; font-size:14px; font-weight:600; color:var(--body); }
.integration-experience .container,.integrations-requirements .container { max-width:1020px; }
.integrations-intro { margin-bottom:48px; }
.integrations-intro p,.integrations-requirements p { color:var(--body); font-size:18px; line-height:1.75; }
.integrations-intro p + p { margin-top:20px; }
.integration-system-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin-top:36px; padding:0; list-style:none; }
.integration-system-grid li { padding:28px; border:1px solid var(--border); border-radius:10px; }
.integration-system-grid li:last-child:nth-child(odd) { grid-column:1 / -1; }
.integration-system-grid h3 { font-size:23px; line-height:1.3; margin-bottom:14px; }
.integration-system-grid p { color:var(--body); font-size:17px; line-height:1.7; max-width:760px; }
.integrations-requirements { background:#f7fbfe; margin-bottom:40px; }
.resource-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; }
.resource-card { border:1px solid var(--border); border-radius:12px; overflow:hidden; box-shadow:0 10px 30px #15325308; }
.resource-card > a { display:block; padding:25px; background:#ecf4fa; }
.resource-card img { width:100%; height:310px; object-fit:contain; }
.resource-card > div { padding:28px; }
.resource-card .eyebrow { color:#0054b9; font-size:10px; }
.resource-card h2 { font-size:25px; line-height:1.3; margin:14px 0; }
.resource-card h2 a:hover { color:#0054b9; }
.resource-card p:not(.eyebrow) { color:var(--body); font-size:16px; line-height:1.65; }
.resource-meta { font-size:12px; color:var(--body); display:block; margin-top:18px; }
.resource-card .explore-link { margin-top:22px; }
.guide-hero-cover { display:flex; justify-content:center; padding:25px; }
.guide-hero-cover img { width:auto; height:400px; object-fit:contain; box-shadow:0 15px 40px #122f4f25; }
.text-link { color:#0054b9; font-size:16px; font-weight:650; text-decoration:underline; text-underline-offset:4px; }
.inquiry-section { padding:78px 0 85px; background:radial-gradient(ellipse at 0 20%,#e8f5ff,transparent 70%),#f8fbfe; }
.inquiry-grid { display:grid; grid-template-columns:1fr 1.08fr; gap:80px; align-items:start; }
.inquiry-copy { padding-top:24px; }
.inquiry-copy h1 { font-size:clamp(38px,3.8vw,55px); line-height:1.12; margin:20px 0 25px; }
.inquiry-copy > p:not(.eyebrow) { color:var(--body); font-size:19px; line-height:1.75; }
.inquiry-copy h2 { font-size:23px; margin:32px 0 16px; }
.inquiry-copy .check-list { font-size:17px; }
.inquiry-contact { border-top:1px solid #dae7f0; margin-top:32px; padding-top:25px; font-size:16px; color:var(--body); }
.inquiry-contact p { margin:12px 0; }
.inquiry-contact a { display:block; width:fit-content; color:#0054b9; font-weight:600; margin:8px 0; text-decoration:underline; text-underline-offset:4px; }
.inquiry-contact address { font-style:normal; margin-top:15px; line-height:1.7; }
.contact-details a { display:block; width:fit-content; margin:8px 0; color:#0054b9; font-size:17px; font-weight:600; text-decoration:underline; text-underline-offset:4px; }
.contact-details address { font-style:normal; color:var(--body); font-size:17px; line-height:1.7; }
.inquiry-panel { background:#fff; border:1px solid var(--border); border-radius:14px; padding:38px; box-shadow:0 16px 50px #1634510b; min-width:0; }
.inquiry-form h2,.form-success h2 { font-size:28px; line-height:1.2; }
.form-intro { color:var(--body); font-size:13px; margin:12px 0 24px; }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.form-grid > div { min-width:0; }
.form-full { grid-column:1/-1; }
.inquiry-form label { display:block; font-size:14px; font-weight:650; margin-bottom:8px; }
.inquiry-form input,.inquiry-form select,.inquiry-form textarea { display:block; width:100%; font:inherit; font-size:16px; color:var(--navy); border:1px solid #bdccdb; border-radius:5px; background:#fff; padding:11px 12px; min-height:46px; }
.inquiry-form textarea { resize:vertical; }
.inquiry-form input:focus-visible,.inquiry-form select:focus-visible,.inquiry-form textarea:focus-visible { outline:3px solid #b0d7ff; border-color:#0067ff; outline-offset:1px; }
.inquiry-form .input-validation-error { border-color:#a62128; }
.field-error { display:block; font-size:12px; color:#a62128; margin-top:6px; }
.validation-summary-valid,.field-validation-valid { display:none; }
.validation-summary-errors { color:#9f2029; font-size:14px; background:#fff5f5; border:1px solid #f0ced1; border-radius:6px; padding:16px; margin:22px 0; line-height:1.6; }
.form-trap { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
.form-privacy { color:var(--body); font-size:12px; line-height:1.6; margin:24px 0; }
.form-privacy a { color:#0054b9; text-decoration:underline; }
.form-success { padding:30px 0; }
.success-check { display:flex; align-items:center; justify-content:center; width:58px; height:58px; background:#e4f8ef; border-radius:50%; color:#067443; font-size:28px; margin-bottom:25px; }
.form-success p { color:var(--body); line-height:1.75; margin:22px 0 30px; }
.legal-page { max-width:900px; padding-top:75px; padding-bottom:80px; }
.legal-page h1 { font-size:48px; margin:18px 0; }
.legal-page h2 { font-size:25px; margin:34px 0 14px; }
.legal-page p { color:var(--body); font-size:17px; line-height:1.8; margin-bottom:15px; }
.legal-page .legal-date { font-size:13px; margin-bottom:30px; }
.legal-page a { color:#0054b9; text-decoration:underline; text-underline-offset:3px; }
@media (max-width:1150px) {
    .header-inner { gap:30px; }
    .nav-links { gap:20px; }
    .header-actions { gap:20px; }
    .page-hero-grid { gap:35px; }
    .inquiry-grid { gap:40px; }
}
@media (max-width:1000px) {
    .page-hero { padding:60px 0; }
    .page-hero-grid { grid-template-columns:1fr; max-width:780px; gap:45px; }
    .page-hero-copy h1 { font-size:46px; }
    .page-hero-copy > p:not(.eyebrow) { font-size:19px; }
    .page-hero-preview { max-width:630px; width:100%; margin:auto; }
    .page-hero-photo { max-width:700px; margin-inline:auto; height:350px; }
    .team-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .partner-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .customer-directory .customer-logos { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .inquiry-grid { grid-template-columns:1fr; max-width:730px; gap:36px; }
    .inquiry-copy { padding-top:0; }
    .inquiry-copy h1 { max-width:650px; }
    .resource-grid { gap:20px; }
    .resource-card > div { padding:20px; }
    .resource-card h2 { font-size:22px; }
}
@media (max-width:700px) {
    .logo img { width:148px; }
    .customer-logos { grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px 20px; }
    .customer-logos img { height:55px; }
    .customer-directory .customer-logos { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
    .customer-directory .customer-logos li { padding:18px; min-height:120px; }
    .customer-directory .customer-logos img { height:75px; }
    .page-hero { padding:45px 0; }
    .page-hero-copy h1 { font-size:36px; margin-top:17px; }
    .page-hero-copy > p:not(.eyebrow) { font-size:17px; }
    .page-hero-photo { height:260px; }
    .page-feature-grid { grid-template-columns:1fr; gap:26px; }
    .page-feature-strip { padding:32px 0; }
    .page-feature-grid strong { font-size:20px; }
    .content-section { padding:45px 0; }
    .editorial-block { grid-template-columns:1fr; gap:12px; padding:32px 0; }
    .editorial-number { font-size:25px; }
    .editorial-block h2 { font-size:27px; }
    .editorial-block p { font-size:17px; }
    .check-list li { font-size:16px; }
    .subpage-cta .cta-panel { padding:30px 25px; }
    .team-grid,.resource-grid { grid-template-columns:1fr; }
    .team-card > img { height:310px; }
    .team-card > div { padding:25px; }
    .partner-grid { gap:15px; }
    .partner-grid li { padding:18px; }
    .partner-grid img { height:70px; }
    .integration-system-grid { grid-template-columns:1fr; gap:18px; }
    .integration-system-grid li { padding:24px; }
    .integration-system-grid h3 { font-size:22px; }
    .integrations-intro p,.integrations-requirements p { font-size:17px; }
    .guide-hero-cover img { height:330px; }
    .inquiry-section { padding:40px 0 50px; }
    .inquiry-copy h1 { font-size:37px; }
    .inquiry-copy > p:not(.eyebrow) { font-size:17px; }
    .inquiry-panel { padding:26px 22px; }
    .form-grid { grid-template-columns:1fr; }
    .form-full { grid-column:auto; }
    .inquiry-form h2 { font-size:26px; }
    .legal-page { padding:45px 0 50px; }
    .legal-page h1 { font-size:37px; }
    .legal-page p { font-size:16px; }
}
:root { --consent-layer: 100; }
.tracking-consent { position: fixed; z-index: var(--consent-layer); bottom: 1rem; right: 1rem; width: min(34rem, calc(100% - 2rem)); padding: 1.5rem; background: white; color: #001a36; border: 1px solid #ccd5df; border-radius: 1rem; box-shadow: 0 8px 32px #001a3626; }
.tracking-consent[hidden], .tracking-consent [hidden] { display: none; }
.tracking-consent label { display: block; margin-bottom: .75rem; }
.tracking-consent .button-row { flex-wrap: wrap; }
.consent-settings { margin: .5rem 1rem; padding: .5rem; color: #001a36; background: white; border: 1px solid #ccd5df; border-radius: .25rem; cursor: pointer; }
