/* Reference hero styles are isolated from the rest of the PHP site. */
@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap');
#home.reference-hero{--ink:#051127;--ink2:#0B1A33;--mute:#4B5970;--line:#E3EAF5;--blue:#0A6DF0;font-family:'Plus Jakarta Sans',system-ui,sans-serif;color:var(--ink);padding:0;isolation:isolate}
#home.reference-hero *,#home.reference-hero *:before,#home.reference-hero *:after{box-sizing:border-box}
#home.reference-hero .wrap{width:100%;max-width:1190px;margin:0 auto;padding:0 20px}
#home.reference-hero svg{color:inherit}
#home.reference-hero a{color:inherit;text-decoration:none}
#home.reference-hero .btn{display:inline-flex;align-items:center;gap:14px;min-height:46px;padding:0 22px;border-radius:9px;font-weight:600;font-size:14.5px;letter-spacing:-.005em}
#home.reference-hero .btn.dark{background:linear-gradient(180deg,#0E2142,#051127);color:#fff;border:1px solid #1C2E52;box-shadow:0 6px 16px rgba(5,17,39,.18)}
#home.reference-hero .btn.dark:hover{background:var(--blue);border-color:var(--blue)}
#home.reference-hero .btn.out{background:#fff;border:1px solid #C5D1E4;color:var(--ink)}
#home.reference-hero .btn.out:hover{border-color:var(--blue);color:var(--blue)}
#home.reference-hero{background:linear-gradient(100deg,#fff 38%,#EDF4FE 100%);position:relative;overflow:hidden}
#home.reference-hero .stage{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.02fr);grid-template-areas:"copy art" "tabs art";column-gap:40px;align-items:center;padding:34px 0 0;min-height:560px}
#home.reference-hero .copy{grid-area:copy;display:grid;align-self:end}
#home.reference-hero .art{grid-area:art;display:grid}
#home.reference-hero .slide,#home.reference-hero .scene{grid-area:1/1;opacity:0;visibility:hidden;transition:opacity .6s,transform .6s,visibility .6s}
#home.reference-hero .slide{transform:translateY(14px);align-self:end}
#home.reference-hero .scene{transform:scale(.95) translateX(24px);align-self:center}
#home.reference-hero .slide.on,#home.reference-hero .scene.on{opacity:1;visibility:visible;transform:none}
#home.reference-hero .kicker{font-weight:500;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:#5B6880;margin:0 0 30px}
#home.reference-hero h1,#home.reference-hero .h1{font-weight:700;font-size:clamp(36px,4.7vw,58px);line-height:1.07;letter-spacing:-.035em;margin:0 0 26px;color:var(--ink)}
#home.reference-hero .hl{background:linear-gradient(90deg,#0A6DF0 10%,#18B4D2 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
#home.reference-hero .slide p{font-size:17px;line-height:1.7;color:var(--mute);margin:0 0 20px;max-width:500px}
#home.reference-hero .pills{list-style:none;padding:0;margin:0 0 26px;display:flex;flex-wrap:wrap;gap:8px;max-width:520px}
#home.reference-hero .pills li{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;background:rgba(255,255,255,.85);border:1px solid #D5E0F2;border-radius:999px;padding:6px 13px}
#home.reference-hero .pills li:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--blue)}
#home.reference-hero .ctas{display:flex;gap:12px;flex-wrap:wrap}
#home.reference-hero .tabs{grid-area:tabs;display:grid;grid-template-columns:repeat(4,auto);justify-content:start;margin:34px 0 0}
#home.reference-hero .tab{all:unset;cursor:pointer;position:relative;display:flex;align-items:center;gap:10px;padding:10px 22px 14px 0;margin-right:22px;border-right:1px solid var(--line);color:#1E7BF0;font-weight:700;font-size:13px;line-height:1.3;min-height:48px}
#home.reference-hero .tab:last-child{border:0}
#home.reference-hero .tab span:not(.bar){color:var(--ink2)}
#home.reference-hero .tab:hover span:not(.bar){color:var(--blue)}
#home.reference-hero .tab:focus-visible{outline:3px solid var(--blue);outline-offset:2px}
#home.reference-hero .bar{position:absolute;left:0;right:22px;bottom:2px;height:2px;border-radius:2px;background:transparent;overflow:hidden}
#home.reference-hero .tab[aria-selected="true"] .bar{background:#D5E3F8}
#home.reference-hero .tab:last-child .bar{right:0}
#home.reference-hero .bar i{display:block;height:100%;width:0;background:var(--blue)}
#home.reference-hero .tab[aria-selected="true"] .bar i{animation:wbs-hero-fill 9s linear forwards}
#home.reference-hero.paused .tab[aria-selected="true"] .bar i{animation-play-state:paused}
#home.reference-hero .pz{all:unset;cursor:pointer;grid-area:art;align-self:end;justify-self:end;z-index:3;width:44px;height:44px;border-radius:50%;background:#fff;border:1px solid #C5D1E4;color:var(--ink);display:flex;align-items:center;justify-content:center;box-shadow:0 6px 16px rgba(5,17,39,.1)}
#home.reference-hero .pz:hover{border-color:var(--blue);color:var(--blue)}
#home.reference-hero .pz:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
#home.reference-hero .pz .pl{display:none}
#home.reference-hero .pz[aria-pressed="true"] .pa{display:none}
#home.reference-hero .pz[aria-pressed="true"] .pl{display:block}
#home.reference-hero.manual .tab[aria-selected="true"] .bar i{animation-play-state:paused}
#home.reference-hero .rule{border:0;border-top:1px solid var(--line);margin:0}
#home.reference-hero .since{text-align:center;margin:30px 0 0;font-size:11px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:#5B6880}
#home.reference-hero .stats{display:grid;grid-template-columns:repeat(4,1fr);padding:20px 0 48px}
#home.reference-hero .stats div{text-align:center;padding:4px 12px;border-left:1px solid var(--line)}
#home.reference-hero .stats div:first-child{border:0}
#home.reference-hero .stats b{display:block;font-size:32px;font-weight:600;letter-spacing:-.03em;color:var(--ink)}
#home.reference-hero .stats span{font-size:14px;color:var(--mute)}
#home.reference-hero .art svg{width:100%;height:auto;max-height:520px;overflow:visible}
@keyframes wbs-hero-fill{to{width:100%}}
@keyframes wbs-hero-rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes wbs-hero-pop{from{opacity:0;transform:scale(.6)}to{opacity:1;transform:none}}
@keyframes wbs-hero-grow{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@keyframes wbs-hero-growx{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes wbs-hero-draw{to{stroke-dashoffset:0}}
@keyframes wbs-hero-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
@keyframes wbs-hero-spin{to{transform:rotate(360deg)}}
@keyframes wbs-hero-ping{0%{transform:scale(.6);opacity:.7}100%{transform:scale(1.8);opacity:0}}
@keyframes wbs-hero-flow{to{stroke-dashoffset:-24}}
@keyframes wbs-hero-click{0%,55%{transform:translate(0,0)}70%{transform:translate(0,3px) scale(.92)}85%,100%{transform:translate(0,0)}}
#home.reference-hero .s *{transform-box:fill-box}
#home.reference-hero .scene.on .a{opacity:0;animation:wbs-hero-rise .6s cubic-bezier(.2,.7,.2,1) forwards}
#home.reference-hero .scene.on .p{opacity:0;animation:wbs-hero-pop .5s cubic-bezier(.2,.9,.3,1.3) forwards}
#home.reference-hero .scene.on .g{transform-origin:50% 100%;animation:wbs-hero-grow .8s cubic-bezier(.2,.7,.2,1) backwards}
#home.reference-hero .scene.on .gx{transform-origin:0 50%;animation:wbs-hero-growx .8s cubic-bezier(.2,.7,.2,1) backwards}
#home.reference-hero .scene.on .d{stroke-dasharray:600;stroke-dashoffset:600;animation:wbs-hero-draw 1.6s ease-out .3s forwards}
#home.reference-hero .scene.on .bob{animation:wbs-hero-bob 4.5s ease-in-out infinite}
#home.reference-hero .scene.on .spin{transform-origin:50% 50%;animation:wbs-hero-spin 14s linear infinite}
#home.reference-hero .scene.on .ping{transform-origin:50% 50%;animation:wbs-hero-ping 2.4s ease-out infinite}
#home.reference-hero .scene.on .flow{animation:wbs-hero-flow 1.2s linear infinite}
#home.reference-hero .scene.on .cur{animation:wbs-hero-click 3s ease-in-out 1.4s infinite}
#home.reference-hero .t1{animation-delay:.1s!important}
#home.reference-hero .t2{animation-delay:.25s!important}
#home.reference-hero .t3{animation-delay:.4s!important}
#home.reference-hero .t4{animation-delay:.55s!important}
#home.reference-hero .t5{animation-delay:.7s!important}
#home.reference-hero .t6{animation-delay:.85s!important}
#home.reference-hero .t7{animation-delay:1s!important}
#home.reference-hero .lbl{font:700 13px 'Plus Jakarta Sans',sans-serif;fill:#051127}
#home.reference-hero .sm{font:600 11px 'Plus Jakarta Sans',sans-serif;fill:#4B5970}
@media (max-width:900px){#home.reference-hero nav,#home.reference-hero .hd .sr{display:none}
#home.reference-hero header .wrap{height:80px}
#home.reference-hero .logo img{height:58px}
#home.reference-hero .stage{grid-template-columns:1fr;grid-template-areas:"copy" "art" "tabs";min-height:0;padding-top:28px}
#home.reference-hero .art svg{max-height:340px}
#home.reference-hero .tabs{grid-template-columns:repeat(2,1fr);row-gap:6px;margin:8px 0 24px}
#home.reference-hero .tab{border:0;margin:0;padding-right:8px}
#home.reference-hero .bar,#home.reference-hero .tab:last-child .bar{right:8px}
#home.reference-hero .stats{grid-template-columns:repeat(2,1fr);row-gap:18px}
#home.reference-hero .stats div:nth-child(3){border-left:0}
}
@media (prefers-reduced-motion:reduce){#home.reference-hero *,#home.reference-hero *:before{animation:none!important;transition:none!important}
#home.reference-hero .scene.on .a,#home.reference-hero .scene.on .p{opacity:1}
#home.reference-hero .scene.on .d{stroke-dashoffset:0}
#home.reference-hero .tab[aria-selected="true"] .bar i{width:100%}
}
#home.reference-hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(10,109,240,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(10,109,240,.07) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:radial-gradient(ellipse at 78% 45%,#000 5%,transparent 68%);mask-image:radial-gradient(ellipse at 78% 45%,#000 5%,transparent 68%);pointer-events:none}
#home.reference-hero .wrap{position:relative}
#home.reference-hero .slide p{margin-bottom:28px}
#home.reference-hero .micro{margin:16px 0 0!important;font-size:13.5px!important;color:var(--mute);max-width:420px!important}
#home.reference-hero h1,#home.reference-hero .h1{font-size:clamp(38px,5vw,64px)}
#home.reference-hero .btn.dark{position:relative;overflow:hidden;transition:box-shadow .3s,border-color .3s,transform .3s}
#home.reference-hero .btn.dark:hover{background:linear-gradient(180deg,#12306B,#051127);border-color:#3A74D6;box-shadow:0 12px 30px rgba(10,109,240,.38);transform:translateY(-1px)}
#home.reference-hero .btn.dark:after{content:"";position:absolute;top:0;left:-70%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.3),transparent);transform:skewX(-20deg);transition:left .8s}
#home.reference-hero .btn.dark:hover:after{left:130%}
#home.reference-hero .btn svg{transition:transform .3s}
#home.reference-hero .btn:hover svg{transform:translateX(4px)}
#home.reference-hero .dk{position:relative;overflow:hidden}
#home.reference-hero .dk>*{position:relative;z-index:1}

#home.reference-hero .stage{padding-bottom:28px}
#home.reference-hero .btn.dark{color:#fff}
#home.reference-hero .btn.out{color:var(--ink)}
#home.reference-hero .btn svg{width:18px;height:18px;flex-shrink:0}
#home.reference-hero .tab>svg{width:26px;height:26px;flex-shrink:0}
#home.reference-hero .pz svg{width:16px;height:16px}
@media(max-width:900px){#home.reference-hero .pz{margin-bottom:8px}}
@media(max-width:560px){#home.reference-hero .ctas{flex-direction:column;align-items:stretch}#home.reference-hero .btn{justify-content:center;padding:12px 16px}#home.reference-hero h1,#home.reference-hero .h1{font-size:38px}}
@media(prefers-reduced-motion:reduce){#home.reference-hero .btn.dark:after{display:none}}
