
body{margin:0;background:#07070F}
*{box-sizing:border-box}
a{color:inherit}
a:hover{opacity:.82}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #4DA3FF;outline-offset:2px}
h1,h2,h3,p,ul,ol{margin:0;padding:0}
ul,ol{list-style:none}
.wrap{position:relative;width:100%;max-width:1280px;margin:0 auto;padding-inline:clamp(16px,4vw,48px)}
.dark{position:relative;color:#FFFFFF;background:#07070F;overflow:hidden}
.light{position:relative;color:#07070F;background:#F4F6FA}
.band{padding-block:clamp(72px,10vw,136px)}
.display{font-weight:800;letter-spacing:-.04em;line-height:1.05}
.neon{color:#4DA3FF;text-shadow:0 0 20px rgba(77,163,255,.6),0 0 52px rgba(77,163,255,.3)}
.blue{color:#1362B7}
.k-js .rise:not(.in) .drawn svg{animation-play-state:paused}
.hero-h1{font-size:clamp(2.4rem,4.4vw,3.9rem);line-height:1.05}
.h2{font-size:clamp(1.9rem,3.6vw,3.25rem);text-wrap:balance}
.kicker{display:inline-flex;align-self:flex-start;align-items:center;gap:9px;padding:7px 14px 7px 10px;font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:#CFE3FF;background:rgba(30,119,216,.2);border:1px solid rgba(77,163,255,.45);border-radius:10px}
.kicker svg{flex:none;width:18px;height:18px;fill:none;stroke:#4DA3FF;stroke-width:3.2;stroke-linecap:round;stroke-dasharray:.1 5.87}
.lede{max-width:680px;font-size:15px;line-height:1.65;text-wrap:pretty}
.soft{color:#D5D7EA}
.muted{color:#45485F}
.head-block{display:flex;flex-direction:column;gap:18px;margin-bottom:clamp(36px,5vw,64px)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:40px;align-items:center}
@keyframes bob{0%,100%{translate:0 0}50%{translate:0 -7px}}
@keyframes tagin{from{opacity:0}}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 20px;font-size:14px;font-weight:700;border-radius:999px;text-decoration:none}
.btn-main{color:#FFFFFF;background:#1362B7;box-shadow:0 0 12px rgba(77,163,255,.2)}
.btn-line{color:#FFFFFF;border:1px solid rgba(255,255,255,.6)}
@keyframes slide{to{transform:translateX(-50%)}}
.hero-dots{-webkit-mask-image:linear-gradient(180deg,#000 45%,transparent 92%)!important;mask-image:linear-gradient(180deg,#000 45%,transparent 92%)!important;animation:none!important;opacity:.17!important;background-image:radial-gradient(#F4F6FA 1.3px,transparent 1.8px)!important}
.dotsbg{position:absolute;inset:0;opacity:.2;background-image:radial-gradient(#4DA3FF 1.3px,transparent 1.8px);background-size:30px 30px;-webkit-mask-image:linear-gradient(115deg,transparent 40%,#000 100%);mask-image:linear-gradient(115deg,transparent 40%,#000 100%);animation:dots 22s linear infinite;pointer-events:none}
@keyframes dots{to{background-position:30px 60px}}
.kicker.kicker-light{gap:7px;margin-bottom:-11px;padding:0;font-size:11px;color:#1362B7;background:none;border:0;border-radius:0}
.kicker.kicker-light svg{width:14px;height:14px;stroke:#1362B7}
.quote{position:relative;margin:6px 0 0;padding-left:20px;border-left:3px solid #1362B7}
.quote blockquote{margin:0;font-size:16px;font-weight:600;line-height:1.55;color:#07070F}
.quote figcaption{display:flex;flex-direction:column;margin-top:10px;font-size:13px;line-height:1.4;color:#45485F}
.quote b{color:#07070F}
.split{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(32px,6vw,88px);align-items:center}
.svc-track{display:flex;width:max-content;animation:slide 42s linear infinite}
.svc-band:hover .svc::before{transform:scale(1.5)}
.svc-band{position:relative;z-index:1;overflow:hidden;padding-block:clamp(9px,1vw,13px);background:#1362B7}
.svc{--pop:#4DA3FF;flex:none;display:flex;align-items:center;gap:10px;margin-right:30px;padding-block:6px;font-size:14px;font-weight:700;white-space:nowrap;color:#FFFFFF}
.svc::before{content:'';flex:none;width:9px;height:9px;background:var(--pop);border-radius:50%;box-shadow:0 0 10px var(--pop);transition:transform .45s ease}
.svc:nth-child(4n+2){--pop:#FCCB09}
.svc:nth-child(4n+3){--pop:#FF8C00}
.svc:nth-child(4n+1),.svc:nth-child(4n+4){--pop:#FFFFFF}
.big-track{display:flex;width:max-content;animation:slide 24s linear infinite}
.big-track .big-ring{display:flex;align-items:center}
.big-ring svg{display:block;width:.62em;height:.62em;overflow:visible;fill:none;stroke:var(--ring,#4DA3FF);stroke-width:2.6;stroke-linecap:round;stroke-dasharray:.1 4.1;filter:drop-shadow(0 0 7px var(--ring,#4DA3FF))}
.big-ring:nth-child(8n+2) svg{--ring:#FFD35C}
.big-ring:nth-child(8n+4) svg{--ring:#FF7A59}
.big-ring:nth-child(8n+6) svg{--ring:#2DD4BF}
.big-ring:nth-child(8n+8) svg{--ring:#B98AFF}
.big-track a{display:block;padding-inline:26px;font-size:clamp(2.6rem,7.4vw,6.6rem);white-space:nowrap;text-decoration:none}
.ghost{color:transparent;-webkit-text-stroke:1.5px #FFFFFF}
.cta{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(36px,6vw,88px);align-items:center}
.contact{display:flex;flex-direction:column;gap:14px;padding-top:10px;font-style:normal}
.contact a{display:flex;align-items:center;gap:12px;min-height:44px;font-size:clamp(1.7rem,2.8vw,2.3rem);font-weight:800;letter-spacing:-.03em;text-decoration:none}
.ico{flex:none;width:38px;height:38px;padding:6px;fill:#FFFFFF;background:#1362B7;border-radius:50%;box-shadow:0 0 0 5px rgba(77,163,255,.16)}
.note{display:flex;align-items:flex-start;gap:8px;max-width:300px;margin:-2px 0 0 52px;font-family:'Caveat','Comic Sans MS',cursive;font-size:23px;font-weight:600;line-height:1.1;color:#CFE3FF;transform:rotate(-2deg)}
.note svg{flex:none;width:52px;height:46px;fill:none;stroke:#4DA3FF;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.note p{padding-top:14px}
.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.form-card{display:flex;flex-direction:column;gap:18px;justify-self:end;width:100%;max-width:470px;color:#FFFFFF}
.form-card .blue{color:#4DA3FF}
.form-card h3{padding-bottom:10px;font-size:clamp(1.25rem,1.9vw,1.55rem);font-weight:700;letter-spacing:-.02em;line-height:1.3}
.when{grid-column:1 / -1;min-width:0;margin:0;padding:0;border:0}
.when legend{padding:0 0 2px;font-size:13px;font-weight:600;color:#C9CDE2}
.when-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.when input{position:absolute;opacity:0;width:0;height:0}
.when span{display:flex;align-items:center;justify-content:flex-start;height:38px;font-size:14px;font-weight:500;color:#FFFFFF;background:transparent;border-bottom:1px solid #5A5F8A;cursor:pointer;transition:color .2s ease,border-color .2s ease,box-shadow .2s ease}
.when span:hover{border-bottom-color:#4DA3FF}
.when input:checked + span{font-weight:700;color:#4DA3FF;border-bottom-color:#4DA3FF;box-shadow:0 1px 0 #4DA3FF}
.when input:focus-visible + span{box-shadow:0 0 0 4px rgba(30,119,216,.25)}
.form-note{font-size:12.5px;color:#C9CDE2}
.submit{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:46px;font:inherit;font-weight:700;color:#FFFFFF;background:#1362B7;border:0;border-radius:12px;cursor:pointer;transition:background .2s ease}
.submit:hover{background:#0E4F96}
.submit svg{transition:transform .25s ease}
.submit:hover svg{transform:translateX(5px)}
.field{display:flex;flex-direction:column;gap:0;font-size:13px;font-weight:600;color:#C9CDE2}
.field input{height:38px;width:100%;padding:0;font:inherit;font-size:14px;font-weight:500;color:#FFFFFF;color-scheme:dark;background:transparent;border:0;border-bottom:1px solid #5A5F8A;border-radius:0;transition:border-color .2s ease,box-shadow .2s ease}
.field input:focus{outline:0;border-bottom-color:#4DA3FF;box-shadow:0 1px 0 #4DA3FF}
.k-js .rise{opacity:0;transform:translateY(44px)}
.k-js .rise.in{opacity:1;transform:none;transition:opacity .7s ease,transform .7s cubic-bezier(.2,.8,.2,1)}

.pp-hero{position:relative;overflow:clip;padding-block:clamp(52px,6vw,88px) clamp(44px,5vw,72px)}
.pp-hero .dotsbg{opacity:.2;-webkit-mask-image:radial-gradient(ellipse at 50% 40%,#000 40%,transparent 100%);mask-image:radial-gradient(ellipse at 50% 40%,#000 40%,transparent 100%)}
.pp-top{position:relative;display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}
.pp-top .kicker{align-self:center}.pp-top .lede{max-width:640px;text-wrap:balance}
.pp-h{font-size:clamp(2.600rem,6vw,5.400rem)}
.pp-date{margin:6px 0 0;font-size:13px;font-weight:700;letter-spacing:.04em;color:#8F96BC}
.pp-body{padding-block:clamp(44px,5vw,80px)}
.pp-grid{display:grid;grid-template-columns:240px minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:start}
.pp-nav{position:sticky;top:96px;display:flex;flex-direction:column;gap:2px}
.pp-nav a{padding:7px 14px;font-size:14px;font-weight:700;color:#45485F;text-decoration:none;border-left:3px solid #D5D9E8;transition:color .2s ease,border-color .2s ease}
.pp-nav a:hover,.pp-nav a.on{color:#1362B7;border-color:#1362B7}
.pp-list{display:flex;flex-direction:column;gap:clamp(30px,3.600vw,44px);max-width:760px}
.pp-s{scroll-margin-top:96px}
.pp-s h2,.pp-short h2{margin:0 0 12px;font-size:clamp(1.400rem,2.200vw,1.800rem);font-weight:800;letter-spacing:-.03em;color:#07070F;text-wrap:balance}
.pp-s p{margin:0 0 12px;font-size:15.500px;line-height:1.75;color:#33364A;text-wrap:pretty}
.pp-s ul{margin:0 0 12px;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}
.pp-s li{position:relative;padding-left:22px;font-size:15.500px;line-height:1.7;color:#33364A;text-wrap:pretty}
.pp-s li::before{content:'';position:absolute;left:4px;top:.72em;width:7px;height:7px;border-radius:50%;background:#1E77D8}
.pp-s b{color:#07070F;font-weight:700}
.pp-s a{font-weight:700;color:#1362B7;text-decoration:underline;text-decoration-thickness:1.500px;text-underline-offset:3px;overflow-wrap:anywhere}
.pp-short{padding:clamp(22px,3vw,30px);background:#FFFFFF;border-radius:18px;box-shadow:0 1px 0 rgba(7,7,15,.04),0 10px 28px rgba(19,98,183,.08)}
.pp-short ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}
.pp-short li{display:flex;gap:12px;align-items:flex-start;font-size:15.500px;font-weight:600;color:#07070F}
.pp-short svg{flex:none;width:22px;height:22px;padding:4px;margin-top:1px;fill:none;stroke:#FFFFFF;stroke-width:2.600;stroke-linecap:round;stroke-linejoin:round;background:#1E77D8;border-radius:50%}
@media (max-width:860px){.pp-grid{grid-template-columns:minmax(0,1fr)}
.pp-nav{position:sticky;top:64px;z-index:3;flex-direction:row;gap:6px;margin-inline:-16px;padding:10px 16px;overflow-x:auto;background:#F4F6FA;scrollbar-width:none}
.pp-nav::-webkit-scrollbar{display:none}
.pp-nav a{flex:none;padding:8px 14px;font-size:13px;white-space:nowrap;background:#FFFFFF;border:1.500px solid #D5D9E8;border-radius:99px}
.pp-nav a.on{color:#FFFFFF;background:#1362B7;border-color:#1362B7}}

.tc-c{display:grid;grid-template-columns:56px minmax(0,1fr);gap:4px;margin:0 0 12px}
.tc-c>span{font-size:14px;font-weight:800;color:#1362B7;padding-top:2px}
.tc-c>p{margin:0!important}
.pp-s h3{margin:18px 0 8px;font-size:16.500px;font-weight:800;letter-spacing:-.01em;color:#07070F}
.hl .tc-new{background:#FFF4CC;box-shadow:0 0 0 8px #FFF4CC;border-radius:4px}
.tc-intro p{margin:0 0 12px}
.tc-sched{padding-top:clamp(20px,3vw,32px);border-top:2px solid #D5D9E8}
.tc-tbl{width:100%;border-collapse:collapse;margin:4px 0 16px;font-size:14.500px;background:#FFFFFF;border-radius:12px;overflow:hidden}
.tc-tbl th,.tc-tbl td{padding:12px 14px;text-align:left;vertical-align:top;border-bottom:1px solid #E4E7F1;color:#33364A}
.tc-tbl th{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#07070F;background:#EEF1F8}
.tc-tbl td:first-child{font-weight:700;color:#07070F}
.pp-s ol.tc-ol{margin:0 0 12px;padding-left:22px;list-style:decimal;display:flex;flex-direction:column;gap:8px}
.pp-s ol.tc-ol li{padding-left:6px;font-size:15.500px;line-height:1.7;color:#33364A}
.pp-s ol.tc-ol li::before{display:none}
.pp-nav{max-height:calc(100vh - 120px);overflow:auto}
.pp-nav a{padding:5px 14px;font-size:13px}
@media (max-width:860px){.pp-nav{max-height:none;overflow-x:auto}}
@media (max-width:600px){.tc-tbl th,.tc-tbl td{padding:10px;font-size:13px}}


/* page wrapper */
#pd.k-root,.editor-styles-wrapper .k-root{--accent: #1E77D8; font-family: 'Plus Jakarta Sans', Arial, sans-serif; font-size: 14px; line-height: 1.7; background: #07070F}


/* desktop body text, 15% bigger */
@media (min-width:1024px){.hero-h1{font-size:calc(clamp(2.4rem,4.4vw,3.9rem) * 1.15)}}
@media (min-width:1024px){.h2{font-size:calc(clamp(1.9rem,3.6vw,3.25rem) * 1.15)}}
@media (min-width:1024px){.kicker{font-size:13.80px}}
@media (min-width:1024px){.lede{font-size:17.25px}}
@media (min-width:1024px){.btn{font-size:16.10px}}
@media (min-width:1024px){.kicker.kicker-light{font-size:12.65px}}
@media (min-width:1024px){.quote blockquote{font-size:18.40px}}
@media (min-width:1024px){.quote figcaption{font-size:14.95px}}
@media (min-width:1024px){.svc{font-size:16.10px}}
@media (min-width:1024px){.big-track a{font-size:calc(clamp(2.6rem,7.4vw,6.6rem) * 1.15)}}
@media (min-width:1024px){.contact a{font-size:calc(clamp(1.7rem,2.8vw,2.3rem) * 1.15)}}
@media (min-width:1024px){.note{font-size:26.45px}}
@media (min-width:1024px){.when legend{font-size:14.95px}}
@media (min-width:1024px){.when span{font-size:16.10px}}
@media (min-width:1024px){.form-note{font-size:14.37px}}
@media (min-width:1024px){.field{font-size:14.95px}}
@media (min-width:1024px){.field input{font-size:16.10px}}
@media (min-width:1024px){.pp-date{font-size:14.95px}}
@media (min-width:1024px){.pp-nav a{font-size:16.10px}}
@media (min-width:1024px){.pp-s p{font-size:17.82px}}
@media (min-width:1024px){.pp-s li{font-size:17.82px}}
@media (min-width:1024px){.pp-short li{font-size:17.82px}}
@media (min-width:1024px){.tc-c>span{font-size:16.10px}}
@media (min-width:1024px){.tc-tbl{font-size:16.67px}}
@media (min-width:1024px){.tc-tbl th{font-size:13.80px}}
@media (min-width:1024px){.pp-s ol.tc-ol li{font-size:17.82px}}
@media (min-width:1024px){.pp-nav a{font-size:14.95px}}
@media (min-width:1024px){#pd.k-root,.editor-styles-wrapper .k-root{font-size:16.10px}}
@media (min-width:1024px){#pd.k-root,.editor-styles-wrapper .k-root{font-size:16.10px}}
