/* 2.10.1: compact presentation, continuous carousel and uncropped animated media. */
body {font-size:16px;line-height:1.6}
body [hidden]{display:none!important}
body :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #219ab8;outline-offset:4px}
body :is(section,[id]){scroll-margin-top:100px}
body header{gap:20px!important;height:80px!important;padding-inline:max(24px,calc((100vw - 1240px)/2))!important;flex-wrap:nowrap!important}
body header .logo{flex:0 0 auto;margin-right:auto}
body header .brand-mark{width:70px!important;height:66px!important;filter:none!important}
body header #nav{align-items:center;gap:22px;white-space:nowrap}
body header #nav a{font-size:13px;line-height:1.3;white-space:nowrap}
body header :is(.nav-cta,.mode-switch){min-height:44px;white-space:nowrap;margin:0;font-size:12px}
body header .hp-theme-toggle{order:0;flex:0 0 auto;min-height:44px;gap:5px;padding:8px;cursor:pointer}
body .hp-theme-toggle i{display:block;flex:0 0 32px;width:32px;height:18px}
body .hp-theme-toggle i:after{left:3px!important;transform:none!important}
body .hp-theme-toggle[aria-pressed="true"] i:after{left:17px!important;transform:none!important}
body .menu{min-width:44px;min-height:44px;color:#071f45!important;background:#edf2f8!important;border:1px solid #c7d5e5!important}
body .menu i{background:#071f45!important}
body .mode-switch span{display:inline!important}
body :is(h1,.v2-copy h1,.inner-tech-hero h1,.tech-hero h1,.cs-hero h1){font-size:clamp(34px,4.4vw,58px)!important;line-height:1.1!important;letter-spacing:-.035em}
body :is(.tech-heading h2,.cs-head h2,.intro>h2,.how h2,.v2-cta h2,.hp-tech-trusted h2,.hp-learning-trusted h2){font-size:clamp(26px,3.2vw,40px)!important;line-height:1.18!important}
body :is(.page-section,.tech-section,.cs-section,.cs-tree-wrap,.business-features,.about-purpose){padding:48px max(24px,calc((100vw - 1200px)/2))!important}
body .v2-section{max-width:1248px;padding:48px 24px!important}
body :is(.tech-hero,.inner-tech-hero,.cs-hero,.page-hero,.app-page-hero,.business-page-hero,.about-hero){min-height:0!important;padding-block:52px!important}
body .hp-tech-contact .inner-tech-hero{padding-block:34px!important}
body :is(.tech-heading,.cs-head){margin-bottom:26px!important}
body :is(.v2-cta,.tech-cta,.price-band){padding-block:44px!important}
body :is(.resource-grid,.offer-grid,.service-grid,.cs-service-grid){gap:16px}
body :is(.resource-grid>a,.offer-grid>a,.service-grid>a,.service-grid article,.cs-service-grid article){padding:24px!important;min-height:0!important;border-radius:18px;box-shadow:0 4px 18px #12315308}
body :is(.resource-grid>a,.offer-grid>a,.service-grid>a){display:flex;flex-direction:column;align-items:flex-start}
body :is(.resource-grid,.offer-grid,.service-grid) h3{font-size:20px;margin:12px 0 8px!important}
body :is(.resource-grid,.offer-grid,.service-grid) p{font-size:14px;line-height:1.65;margin:0 0 16px!important}
body :is(.resource-grid>a,.offer-grid>a,.service-grid>a)>b{position:static!important;display:block;margin-top:auto;padding-top:8px;font-size:13px}
body :is(.resource-icon,.offer-icon,.service-icon){width:42px;height:42px;margin-bottom:12px!important}
body .student-content{padding-top:30px!important}
body .hp-resource-heading{margin:0 0 20px}
body .hp-resource-heading h1{font-size:34px!important;margin:0 0 8px}
body .hp-resource-heading p{margin:0;color:#52647e}
body .student-content .filter-row{justify-content:flex-start;gap:8px;overflow:visible;margin:0 0 12px!important}
body .student-content .filter{min-height:44px!important;font-size:13px;cursor:pointer}
body.hp-dark .student-content .filter.active{background:#f2bf3e!important;color:#071f45!important;border-color:#f2bf3e!important}
body #resourceStatus{font-size:13px;margin:0 0 16px;color:#52647e}
body.hp-dark :is(.hp-resource-heading p,#resourceStatus){color:#c8d6ea}
body .hp-disclosure{display:block;margin:18px auto;padding:0;width:calc(100% - 48px);max-width:1200px;border:1px solid #d2dfed;border-radius:16px;background:#fff;color:#071f45;overflow:hidden}
body .hp-disclosure>summary{padding:18px 22px;min-height:56px;cursor:pointer;font-weight:750;font-size:15px;list-style-position:inside}
body .hp-disclosure[open]>summary{border-bottom:1px solid #d2dfed}
body .hp-disclosure>section{margin:0!important;width:100%!important;padding:28px!important}
body .hp-disclosure>.portfolio-grid{padding:20px}
body.hp-dark .hp-disclosure{background:#102f5b;color:#f4f8ff;border-color:#355a85}
body .hp-delivery-system{display:block!important;max-width:none!important;background:#071f45!important;padding:36px!important;color:#fff!important}
body .hp-delivery-system .tech-heading{max-width:none!important;margin:0 0 28px!important;text-align:left!important}
body .hp-delivery-system .tech-heading h2{font-size:30px!important}
body .hp-delivery-timeline{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important;padding:0!important;width:100%!important}
body .hp-delivery-timeline:before,body .hp-delivery-timeline article:after{display:none!important}
body .hp-delivery-timeline article{display:flex!important;transform:none!important;min-height:0!important;padding:22px!important;gap:16px!important;grid-column:auto!important}
body .hp-delivery-timeline article>div{min-width:0;flex:1}
body .hp-delivery-timeline i{flex-basis:46px;height:46px;border-radius:12px}
body .hp-delivery-timeline h3{font-size:20px!important}
body :is(.hp-learning-trusted,.hp-tech-trusted){padding:36px 0!important}
body :is(.hp-learning-trusted,.hp-tech-trusted)>div:first-child{width:calc(100% - 48px);max-width:1200px;margin:0 auto 22px!important}
body .hp-logo-marquee{overflow-x:auto!important;padding:0 24px 12px;scroll-snap-type:x proximity}
body .hp-logo-marquee>div{animation:none!important;gap:12px}
body .hp-logo-marquee article{flex:0 0 170px;width:170px;height:136px!important;padding:12px!important;scroll-snap-align:start}
body .hp-logo-marquee img{height:62px;width:62px}
body .hp-logo-marquee article b{font-size:12px!important;color:#071f45!important}
body .browser-screen.actual{height:300px!important;background:#f4f7fb!important}
body .browser-screen.actual img{object-fit:contain!important}
body .portfolio-meta b{color:#071f45!important;font-size:17px}
body .portfolio-meta small{color:#52647e!important}
body .v2-hero{min-height:0!important;padding-block:44px!important;gap:30px}
body .v2-visual{height:330px!important}
body .learning-visual img{height:370px!important;bottom:-44px!important;right:15px!important}
body .visual-blob{width:300px;height:300px}
body .top-chip{top:65px}
body .bottom-chip{bottom:24px;right:0}
body .hp-tech-image{display:block;width:100%;height:100%;object-fit:cover;border-radius:24px}
body .intro>p{margin-bottom:26px}
body :is(.motion-card,.motion-title,.reveal){opacity:1!important;transform:none!important;visibility:visible!important}
body .hp-footer-main{padding-block:34px!important;gap:26px!important}
body .hp-footer-main a{line-height:1.6;padding-block:5px}
body :is(input,select,textarea){font-size:16px;min-height:44px}
body .wa-launch{min-height:48px;padding:12px 16px}
@media(min-width:1051px){body header #nav{display:flex!important;flex:0 1 auto;margin-left:auto;background:transparent!important}body header #nav a{display:inline-flex!important;align-items:center}body header .hp-theme-toggle{order:3}body header .nav-cta,body header .mode-switch{order:4}}
@media(max-width:1050px){body header{padding-inline:20px!important;gap:12px!important}body header #nav{display:none!important}body header #nav.open{display:flex!important;flex-direction:column;align-items:stretch;gap:4px}body header #nav a{min-height:44px;padding:13px 16px!important;color:#f3f7ff!important}body header .hp-theme-toggle{margin-left:auto}body header .mode-switch{margin-left:0!important}body .resource-grid,body .offer-grid,body .service-grid,body .cs-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}body .v2-hero{grid-template-columns:1fr 1fr!important;padding-inline:24px!important}body .visual-chip{display:none}}
@media(max-width:600px){body header{padding-inline:12px!important;height:72px!important;gap:8px!important}body header .brand-mark{width:55px!important;height:56px!important}body header .mode-switch{padding:8px 10px!important;font-size:10px!important;gap:4px}body header .mode-switch i,body header .mode-switch b{display:none}body header .hp-theme-toggle{padding:8px 6px;gap:3px}body header .hp-theme-toggle span{font-size:12px}body header .menu{flex-basis:44px}body :is(.page-section,.tech-section,.cs-section,.cs-tree-wrap,.business-features,.about-purpose){padding:30px 20px!important}body .v2-section{padding:30px 20px!important}body .v2-hero{grid-template-columns:1fr!important;padding:30px 20px!important}body .v2-visual{height:220px!important;max-width:330px}body .learning-visual img{height:260px!important;bottom:-30px!important;right:35px!important}body .visual-blob{height:220px;width:240px;top:0;right:20px}body .hero-proof{margin-top:22px}body :is(.tech-hero,.inner-tech-hero,.cs-hero){padding:34px 20px!important}body .hp-tech-contact .inner-tech-hero{padding:28px 20px!important}body :is(.resource-grid,.offer-grid,.service-grid,.cs-service-grid){grid-template-columns:1fr!important}body .hp-delivery-timeline{grid-template-columns:1fr!important}body .hp-disclosure{width:calc(100% - 40px)}body .hp-disclosure>section{padding:20px!important}body .browser-screen.actual{height:240px!important}body .hp-footer-main{grid-template-columns:1fr 1fr!important;padding:28px 20px!important}body .hp-footer-brand{grid-column:1/-1}body .wa-launch{padding:10px!important;min-height:48px}body .wa-launch span{font-size:12px}body .wa-widget{right:12px!important;bottom:12px!important}}
@media(prefers-reduced-motion:reduce){body *,body *:before,body *:after{animation:none!important;scroll-behavior:auto!important;transition:none!important}}

/* Motion stays inside the image frame; the complete original image is retained. */
body .hp-logo-marquee{overflow:hidden!important;scroll-snap-type:none;padding:4px 0 14px}
body .hp-logo-marquee>div{gap:12px;animation:hpSchoolsLoop 48s linear infinite!important;will-change:transform}
@keyframes hpSchoolsLoop{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 6px))}}
body .hp-logo-marquee:hover>div,body .hp-logo-marquee:focus-within>div{animation-play-state:paused!important}
body .v2-visual.learning-visual{height:400px!important;min-width:0;display:grid;place-items:center;padding:12px;overflow:visible}
body.technology-mode .v2-visual.learning-visual{display:none!important}
body .learning-visual img{position:relative!important;inset:auto!important;display:block;width:100%!important;max-width:100%;height:100%!important;max-height:376px;object-fit:contain!important;object-position:center!important;animation:hpPhotoFloat 7s ease-in-out infinite!important}
body .v2-visual.tech-visual{height:auto!important;min-height:0;padding:12px}
body .hp-tech-image{height:auto!important;max-height:440px;object-fit:contain!important;animation:hpPhotoFloat 8s ease-in-out infinite!important}
body .visual-chip{animation:hpChipFloat 5s ease-in-out infinite!important}
body .visual-chip.bottom-chip{animation-delay:-2.5s!important}
body .visual-blob{max-width:90%;animation:hpGlow 9s ease-in-out infinite!important}
body .hp-photo-hero{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;align-items:center;gap:32px;isolation:isolate;padding:48px max(24px,calc((100vw - 1240px)/2))!important;background:linear-gradient(125deg,#061a3c,#0c315f)!important;overflow:hidden}
body .hp-photo-hero:before{display:none!important}
body .hp-photo-hero>.hp-hero-copy,body .hp-photo-hero>.hp-hero-media{max-width:none!important;min-width:0;width:100%;position:relative;z-index:1}
body .hp-hero-copy>div{max-width:none}
body .hp-photo-hero h1{font-size:clamp(34px,4vw,56px)!important}
body .hp-hero-media{margin:0!important;padding:12px!important}
body .hp-hero-media img{display:block;width:100%;height:auto;max-height:490px;object-fit:contain;border-radius:22px;box-shadow:0 24px 52px #0003;animation:hpPhotoFloat 8s ease-in-out infinite!important}
body .cs-photo img{object-fit:contain!important;height:auto!important;max-height:none!important}
body .hp-motion-toggle{display:inline-flex;align-items:center;min-height:44px;margin-top:16px;padding:8px 14px;border:1px solid #bfd0e0;border-radius:999px;background:#fff;color:#123153;font:700 12px Manrope,sans-serif;cursor:pointer}
body .hp-photo-hero .hp-motion-toggle,body.technology-mode .v2-copy .hp-motion-toggle{color:#e9f5ff;background:#ffffff0d;border-color:#ffffff55}
@keyframes hpPhotoFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@keyframes hpChipFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes hpGlow{0%,100%{opacity:.75}50%{opacity:1}}
body.hp-motion-paused :is(.hp-logo-marquee>div,.learning-visual img,.hp-tech-image,.hp-hero-media img,.visual-chip,.visual-blob){animation-play-state:paused!important}
@media(max-width:900px){body .hp-photo-hero{grid-template-columns:1fr!important;gap:20px;padding:32px 24px!important}body .hp-hero-media{max-width:620px!important;margin:auto!important}body .hp-hero-media img{max-height:360px}}
@media(max-width:600px){body .v2-visual.learning-visual{height:300px!important;width:100%;max-width:360px}body .learning-visual img{max-height:276px}body .hp-photo-hero{padding:30px 20px!important}body .hp-hero-media{padding:8px!important}body .hp-hero-media img{max-height:300px;border-radius:16px}body .hp-logo-marquee>div{animation-duration:56s!important}}
@media(prefers-reduced-motion:reduce){body :is(.hp-logo-marquee>div,.learning-visual img,.hp-tech-image,.hp-hero-media img,.visual-chip,.visual-blob){animation:none!important;transform:none!important}body .hp-logo-marquee{overflow-x:auto!important}body .hp-logo-marquee [aria-hidden="true"]{display:none!important}body .hp-motion-toggle{display:none}}
