/* Homepage video hero, credentials marquee and the consultation band below it. */
.my-video.hero-banner.hv-hero {
  position:relative; display:flex; flex-direction:column; align-items:stretch; height:auto;
  min-height:clamp(620px, calc(100vh - 130px), 860px); padding:0; overflow:hidden; background:#05080f; color:#fff;
}
.my-video.hero-banner.hv-hero::before,.my-video.hero-banner.hv-hero::after { content:none; display:none; }
.hv-video,.hv-overlay { position:absolute; inset:0; width:100%; height:100%; }
.hv-video { object-fit:cover; z-index:0; }
.hv-overlay { z-index:1; pointer-events:none; background:linear-gradient(0deg, rgba(3,6,14,.94) 0, rgba(3,6,14,.58) 24%, rgba(3,6,14,.18) 48%), linear-gradient(90deg, rgba(3,6,14,.87) 0, rgba(3,6,14,.75) 42%, rgba(3,6,14,.43) 76%, rgba(3,6,14,.5) 100%); }
.hv-hero .hv-main { position:relative; z-index:2; flex:1; display:flex; align-items:flex-end; justify-content:space-between; gap:40px; width:100%; max-width:1440px; margin:0 auto; padding:40px 28px 110px; }
.hv-hero .hero-text-content { flex:1 1 auto; width:auto; max-width:900px; min-width:0; padding:0; text-align:left; }
.hv-hero h1.hero-badge { display:block; width:auto; margin:0 0 16px; padding:0; border:0; border-radius:0; background:none; box-shadow:none; color:#fff; font-family:"Poppins",sans-serif; font-size:clamp(14px,1.15vw,17px); font-weight:500; line-height:1.5; letter-spacing:.01em; text-transform:none; animation:none; }
.hv-hero h2.hero-heading { margin:0 0 20px; color:#fff; font-family:"Poppins",sans-serif; font-size:clamp(36px,4.2vw,66px); font-weight:600; line-height:1.14; letter-spacing:-.02em; text-transform:none; text-align:left; text-shadow:none; background:none; -webkit-text-fill-color:#fff; }
.hv-hero p.hero-desc { max-width:820px; margin:0 0 28px; color:#fff; font-family:"Poppins",sans-serif; font-size:clamp(15px,1.15vw,18px); font-weight:400; line-height:1.68; text-align:left; text-transform:none; }
.hv-hero .hero-cta-row { display:flex; flex-wrap:wrap; align-items:center; gap:14px; margin:0; justify-content:flex-start; }
.hv-hero .hero-cta-row .common_btn { display:inline-flex; align-items:center; gap:12px; margin:0!important; padding:15px 30px; border:1px solid transparent; border-radius:18px; background:linear-gradient(90deg,#0f62fe,#2a7bff); color:#fff; font-family:"Poppins",sans-serif; font-size:16px; font-weight:500; line-height:1.3; text-decoration:none; text-transform:none; box-shadow:none; transition:background .18s ease, transform .18s ease; }
.hv-hero .hero-cta-row .common_btn::before { content:none; display:none; }
.hv-hero .hero-cta-row .common_btn::after { content:"\2197"; position:static; display:inline; width:auto; height:auto; margin:0; background:none; color:inherit; font-size:17px; line-height:1; opacity:1; transform:none; animation:none; }
.hv-hero .hero-cta-row .common_btn:hover { transform:translateY(-2px); color:#fff; background:linear-gradient(90deg,#0a4fd1,#0f62fe); }
.hv-hero .hero-cta-row .common_btn + .common_btn { border-color:rgba(255,255,255,.55); background:rgba(255,255,255,.04); }
.hv-hero .hero-cta-row .common_btn + .common_btn:hover { background:rgba(255,255,255,.14); }
.hv-partners { flex:none; min-width:0; padding-bottom:4px; }
.hv-hero .hv-partners h2 { margin:0 0 12px; color:#fff; font-family:"Poppins",sans-serif; font-size:14px; font-weight:500; line-height:1.4; letter-spacing:.26em; text-transform:uppercase; }
.hv-partner-list { display:flex; align-items:center; margin:0; padding:0; list-style:none; }
.hv-partner-list li { margin:0; padding:0 26px; list-style:none; border-left:1px solid rgba(255,255,255,.34); }
.hv-partner-list li:first-child { padding-left:0; border-left:0; }
.hv-partner-list li:last-child { padding-right:0; }
.hv-partner-name { display:block; color:#fff; font-family:"Poppins",sans-serif; font-size:clamp(26px,2.3vw,38px); font-weight:600; line-height:1.15; letter-spacing:-.02em; white-space:nowrap; }
.hv-partner-anthropic { font-size:clamp(21px,1.9vw,31px); letter-spacing:.06em; text-transform:uppercase; }
.hv-partner-status { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.hv-hero .hv-partner-note { max-width:420px; margin:12px 0 0; color:rgba(255,255,255,.82); text-transform:none; font-family:"Poppins",sans-serif; font-size:12.5px; line-height:1.6; }

.hv-marquee { position:relative; z-index:2; overflow:hidden; margin:12px 0 0; border-top:1px solid rgba(255,255,255,.18); padding:26px 0 28px; background:rgba(3,6,14,.24); -webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent); mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent); }
.hv-marquee-track { display:flex; width:max-content; animation:hvMarquee 34s linear infinite; }
.hv-marquee:hover .hv-marquee-track,.hv-marquee:focus-within .hv-marquee-track { animation-play-state:paused; }
.hv-marquee-group { display:flex; flex:none; margin:0; padding:0; list-style:none; }
.hv-marquee-group li { flex:none; display:flex; align-items:center; justify-content:center; min-width:180px; margin:0; padding:0 36px; list-style:none; border-right:1px solid rgba(255,255,255,.16); }
.hv-marquee-group img { display:block; width:auto; max-width:260px; height:64px; object-fit:contain; }
@keyframes hvMarquee { to { transform:translateX(calc(-100% / 6)); } }

@media (max-width:1100px) {
  .hv-hero .hv-main { flex-direction:column; align-items:flex-start; justify-content:flex-end; gap:30px; padding:44px 24px 44px; }
  .hv-hero .hero-text-content { flex:none; }
}
@media (max-width:767px) {
  .my-video.hero-banner.hv-hero { min-height:0; }
  .hv-overlay { background:linear-gradient(0deg, rgba(3,6,14,.95) 0, rgba(3,6,14,.8) 45%, rgba(3,6,14,.67) 100%); }
  .hv-hero .hv-main { padding:32px 16px 18px; }
  .hv-hero h2.hero-heading { font-size:clamp(32px,9vw,42px); }
  .hv-hero .hero-cta-row .common_btn { justify-content:center; width:100%; }
  .hv-hero .hv-partners h2 { font-size:12px; letter-spacing:.2em; }
  .hv-partner-list li { padding:0 16px; }
  .hv-partner-name { font-size:24px; }
  .hv-partner-anthropic { font-size:18px; }
  .hv-marquee-group li { padding:0 18px; }
  .hv-marquee-group img { height:54px; }
}
@media (prefers-reduced-motion:reduce) {
  .hv-marquee { overflow-x:auto; -webkit-mask-image:none; mask-image:none; }
  .hv-marquee-track { animation:none; }
  .hv-marquee-group[aria-hidden="true"] { display:none; }
  .hv-hero .hero-cta-row .common_btn { transition:none; }
}
