/* Generated from assets/css/main.css - do not edit by hand.
 *
 * The header and footer rules, fenced inside .bsp-chrome so they style
 * those two and nothing else on the page. Rebuild with
 * scratchpad/build_chrome_css.py after changing main.css.
 */
.bsp-chrome{--brand:        #0C8CE9;   
  --brand-600:    #0A6FBF;
  --brand-soft:   rgba(12, 140, 233, 0.11);
  --cyan:         #06B6D4;
  --aqua:         #14B8A6;
  --teal:         #0D9488;
  --sky:          #38BDF8;
  --violet:       #7C5CFF;   
  --indigo:       #5B5BD6;
  --coral:        #FF6B57;   
  --amber:        #FFB020;

  
  --bg:           #FFFFFF;
  --bg-alt:       #F1F8FC;
  --surface:      #FFFFFF;
  --surface-2:    #E9F3FA;
  --ink:          #062A40;   
  --ink-2:        #1E4A66;
  --muted:        #557E99;
  --faint:        #8AABC0;
  --line:         #DBEAF3;
  --line-2:       #C3DDEC;

  
  --shadow-sm:  0 1px 2px rgba(6,42,64,.07), 0 1px 3px rgba(6,42,64,.06);
  --shadow-md:  0 4px 14px rgba(6,42,64,.09), 0 2px 4px rgba(6,42,64,.05);
  --shadow-lg:  0 18px 42px -12px rgba(6,42,64,.22), 0 6px 14px -6px rgba(6,42,64,.10);
  --shadow-xl:  0 32px 74px -20px rgba(6,42,64,.30);
  --ring:       0 0 0 3px rgba(12,140,233,.24);

  --grad-brand: linear-gradient(120deg, #0C8CE9 0%, #06B6D4 55%, #14B8A6 100%);
  --grad-ai:    linear-gradient(120deg, #7C5CFF 0%, #0C8CE9 50%, #14B8A6 100%);
  --grad-warm:  linear-gradient(120deg, #FF6B57 0%, #FFB020 100%);
  --grad-ink:   linear-gradient(140deg, #04263B 0%, #073A57 48%, #0A5578 100%);
  --wave-fill:  #04263B;

  
  --logo-blue: #2E6FD0;
  --logo-red:  #E8262D;
  --logo-navy: #16357E;

  
  --solid-bg: #062A40;
  --solid-fg: #FFFFFF;

  
  --r-sm: 8px;
  --r:    14px;
  --r-lg: 20px;
  --r-xl: 28px;
  --r-full: 999px;

  --maxw: 1200px;
  --gut: clamp(18px, 4vw, 40px);
  --sec-y: clamp(64px, 8vw, 116px);

  
  --font: "Plus Jakarta Sans", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;

  --ease: cubic-bezier(.22,.7,.3,1);
  --header-h: 72px;
  color-scheme: light;}
[data-theme="dark"] .bsp-chrome{--bg:        #03151F;   
  --bg-alt:    #051E2D;
  --surface:   #082A3C;
  --surface-2: #0C3A50;
  --ink:       #E8F6FD;
  --ink-2:     #BBDCEC;
  --muted:     #8FB6CC;
  --faint:     #63899F;
  --line:      #124057;
  --line-2:    #1A5273;
  --brand-soft: rgba(12, 140, 233, 0.20);

  --shadow-sm: 0 1px 2px rgba(0,10,18,.55);
  --shadow-md: 0 6px 18px rgba(0,10,18,.5);
  --shadow-lg: 0 22px 50px -14px rgba(0,10,18,.7);
  --shadow-xl: 0 36px 80px -22px rgba(0,10,18,.8);
  --grad-ink:  linear-gradient(140deg, #03151F 0%, #073349 50%, #0A4A66 100%);
  --wave-fill: #03151F;

  
  --logo-blue: #5B9BEE;
  --logo-red:  #FF4D54;
  --logo-navy: #DCEBFF;

  --solid-bg: #0F5C80;   
  --solid-fg: #FFFFFF;
  color-scheme: dark;}
.bsp-chrome *, .bsp-chrome *::before, .bsp-chrome *::after{box-sizing: border-box;}
@media (prefers-reduced-motion: reduce){
.bsp-chrome *, .bsp-chrome *::before, .bsp-chrome *::after{animation-duration: .001ms !important; transition-duration: .001ms !important;}
}
.bsp-chrome{font-family: var(--font); font-size: 16px; line-height: 1.65; color: var(--ink-2); -webkit-font-smoothing: antialiased;}
body.nav-open{overflow: hidden;}
.bsp-chrome h1, .bsp-chrome h2, .bsp-chrome h3, .bsp-chrome h4, .bsp-chrome h5{margin: 0 0 .5em; color: var(--ink); font-weight: 800; line-height: 1.15; letter-spacing: -.02em;}
.bsp-chrome h1{font-size: clamp(2.15rem, 5.2vw, 3.85rem); letter-spacing: -.035em;}
.bsp-chrome h2{font-size: clamp(1.75rem, 3.6vw, 2.7rem); letter-spacing: -.03em;}
.bsp-chrome h3{font-size: clamp(1.12rem, 1.7vw, 1.35rem);}
.bsp-chrome p{margin: 0 0 1rem;}
.bsp-chrome a{color: inherit; text-decoration: none;}
.bsp-chrome img, .bsp-chrome svg{max-width: 100%; display: block;}
.bsp-chrome ul{margin: 0; padding: 0; list-style: none;}
.bsp-chrome button, .bsp-chrome input, .bsp-chrome select, .bsp-chrome textarea{font: inherit; color: inherit;}
.bsp-chrome .wrap{width: 100%; max-width: var(--maxw); margin-inline: auto; padding-inline: var(--gut);}
.bsp-chrome .btn{--btn-bg: var(--solid-bg); --btn-fg: var(--solid-fg);
  display: inline-flex; align-items: center; justify-content: center; gap: 9px;
  padding: 13px 24px; border: 1px solid transparent; border-radius: var(--r-full);
  background: var(--btn-bg); color: var(--btn-fg);
  font-weight: 700; font-size: .93rem; letter-spacing: -.01em;
  cursor: pointer; white-space: nowrap;
  transition: transform .22s var(--ease), box-shadow .22s var(--ease), background .22s var(--ease), border-color .22s var(--ease), color .22s var(--ease);}
.bsp-chrome .btn:hover{transform: translateY(-2px); box-shadow: var(--shadow-lg);}
.bsp-chrome .btn:active{transform: translateY(0);}
.bsp-chrome .btn svg{width: 17px; height: 17px; flex: none;}
.bsp-chrome .btn--brand{--btn-bg: none; background-image: var(--grad-brand); box-shadow: 0 8px 22px -8px rgba(12,140,233,.55);}
.bsp-chrome .btn--brand:hover{box-shadow: 0 16px 34px -10px rgba(12,140,233,.62);}
.bsp-chrome .btn--ghost{--btn-bg: transparent; --btn-fg: var(--ink); border-color: var(--line-2);}
.bsp-chrome .btn--ghost:hover{border-color: var(--brand); color: var(--brand); background: var(--surface-2);}
.bsp-chrome .btn--sm{padding: 9px 17px; font-size: .84rem;}
.bsp-chrome .btn--block{width: 100%;}
.bsp-chrome .chip[aria-pressed="true"], .bsp-chrome .chip.is-active{background: var(--solid-bg); border-color: var(--solid-bg); color: var(--solid-fg);}
.bsp-chrome .topbar{position: relative; overflow: hidden;
  
  background: linear-gradient(90deg, #0A5FBF 0%, #0E7490 30%, #0F766E 55%, #0E7490 78%, #0A5FBF 100%);
  background-size: 300% 100%;
  color: rgba(255,255,255,.92);
  font-size: .8rem; padding: 8px 0;}
.bsp-chrome .topbar .wrap{display: flex; align-items: center; justify-content: space-between; gap: 18px;}
.bsp-chrome .topbar__note{display: flex; align-items: center; gap: 9px;}
.bsp-chrome .topbar__links{display: flex; align-items: center; gap: 20px;}
.bsp-chrome .topbar a:hover{color: #fff;}
.bsp-chrome .header{position: sticky; top: 0; z-index: 90; isolation: isolate;
  background: color-mix(in srgb, var(--bg) 82%, transparent);
  backdrop-filter: saturate(180%) blur(14px);
  border-bottom: 1px solid transparent;
  transition: border-color .25s var(--ease), box-shadow .25s var(--ease), background .25s var(--ease);}
.bsp-chrome .header::before{content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
  background: linear-gradient(100deg,
      transparent 0%,
      rgba(12,140,233,.10) 22%,
      rgba(6,182,212,.13) 42%,
      rgba(20,184,166,.10) 62%,
      rgba(56,189,248,.08) 80%,
      transparent 100%);
  background-size: 260% 100%;}
[data-theme="dark"] .bsp-chrome .header::before{background: linear-gradient(100deg,
      transparent 0%,
      rgba(12,140,233,.20) 22%,
      rgba(6,182,212,.22) 42%,
      rgba(20,184,166,.18) 62%,
      rgba(56,189,248,.16) 80%,
      transparent 100%);
  background-size: 260% 100%;}
.bsp-chrome .header::after{content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 1px;
  z-index: -1; pointer-events: none; opacity: .55;
  background: linear-gradient(90deg, transparent, var(--brand), var(--cyan), var(--aqua), transparent);
  background-size: 200% 100%;
  transition: opacity .25s var(--ease);}
.bsp-chrome .header.is-stuck::after{opacity: 1;}
.bsp-chrome .header.is-stuck{border-bottom-color: transparent;}
.bsp-chrome .header.is-stuck{border-bottom-color: var(--line); box-shadow: var(--shadow-sm);}
.bsp-chrome .header__inner{height: var(--header-h); display: flex; align-items: center; gap: 20px; position: relative; z-index: 1;}
.bsp-chrome .logo{display: flex; align-items: center; margin-right: auto;}
.bsp-chrome .logo__img{height: 42px; width: auto; display: block;
  image-rendering: -webkit-optimize-contrast;   
  transition: transform .3s var(--ease);}
.bsp-chrome .logo:hover .logo__img{transform: translateY(-1px);}
.bsp-chrome .logo--lg .logo__img{height: 52px;}
.bsp-chrome .logo__img--dark{display: none;}
[data-theme="dark"] .bsp-chrome .logo__img--light{display: none;}
[data-theme="dark"] .bsp-chrome .logo__img--dark{display: block;}
@media (max-width: 860px){
.bsp-chrome .logo__img{height: 36px;}
}
@media (max-width: 400px){
.bsp-chrome .logo__img{height: 32px;}
}
.bsp-chrome .nav{display: flex; align-items: center; gap: 2px; flex-wrap: nowrap;}
.bsp-chrome .nav > li > a, .bsp-chrome .nav__toggle{display: inline-flex; align-items: center; gap: 5px;
  padding: 9px 11px; border-radius: var(--r-sm);
  font-size: .9rem; font-weight: 600; color: var(--ink-2);
  background: none; border: 0; cursor: pointer;
  white-space: nowrap;                 
  transition: color .2s var(--ease), background .2s var(--ease);}
@media (max-width: 1180px){
.bsp-chrome .nav > li > a, .bsp-chrome .nav__toggle{padding: 9px 8px; font-size: .86rem;}
.bsp-chrome .header__inner{gap: 12px;}
}
.bsp-chrome .nav > li > a:hover, .bsp-chrome .nav__toggle:hover{color: var(--ink); background: var(--surface-2);}
.bsp-chrome .nav__toggle svg{width: 13px; height: 13px; transition: transform .25s var(--ease);}
.bsp-chrome .nav__item.open .nav__toggle svg{transform: rotate(180deg);}
.bsp-chrome .nav__item{position: relative;}
.bsp-chrome .mega{position: absolute; top: calc(100% + 12px); left: 50%; translate: -50% 0;
  width: min(760px, 88vw); padding: 18px;
  background: var(--surface); border: 1px solid var(--line); border-radius: var(--r-lg);
  box-shadow: var(--shadow-xl);
  display: grid; grid-template-columns: repeat(2, 1fr); gap: 6px;
  opacity: 0; visibility: hidden; transform: translateY(-8px); pointer-events: none;
  transition: all .24s var(--ease);}
.bsp-chrome .nav__item.open .mega{opacity: 1; visibility: visible; transform: none; pointer-events: auto;}
.bsp-chrome .mega__link{display: flex; gap: 12px; padding: 11px; border-radius: var(--r); transition: background .18s var(--ease);}
.bsp-chrome .mega__link:hover{background: var(--surface-2);}
.bsp-chrome .mega__ico{width: 38px; height: 38px; border-radius: 10px; flex: none; display: grid; place-items: center; font-size: .78rem; font-weight: 900; color: #fff;}
.bsp-chrome .mega__link b{display: block; color: var(--ink); font-size: .9rem; font-weight: 700;}
.bsp-chrome .mega__link span{font-size: .78rem; color: var(--muted); line-height: 1.45;}
.bsp-chrome .mega__foot{grid-column: 1 / -1; margin-top: 8px; padding-top: 14px; border-top: 1px solid var(--line); display: flex; justify-content: space-between; align-items: center;}
.bsp-chrome .mega__foot span{font-size: .82rem; color: var(--muted);}
.bsp-chrome .header__actions{display: flex; align-items: center; gap: 8px;}
.bsp-chrome .icon-btn{width: 40px; height: 40px; display: grid; place-items: center;
  border-radius: var(--r-sm); border: 1px solid var(--line); background: var(--surface);
  color: var(--ink-2); cursor: pointer; transition: all .2s var(--ease);}
.bsp-chrome .icon-btn:hover{color: var(--ink); border-color: var(--line-2); background: var(--surface-2);}
.bsp-chrome .icon-btn svg{width: 18px; height: 18px;}
[data-theme="dark"] .bsp-chrome .theme-btn .moon{display: block;}
[data-theme="dark"] .bsp-chrome .theme-btn .sun{display: none;}
.bsp-chrome .burger{display: none;}
.bsp-chrome .drawer{position: fixed; inset: 0 0 0 auto; width: min(360px, 88vw); z-index: 100;
  background: var(--bg); border-left: 1px solid var(--line);
  transform: translateX(102%); transition: transform .35s var(--ease);
  display: flex; flex-direction: column; padding: 18px var(--gut) 28px;
  overflow-y: auto;}
.bsp-chrome .drawer.open{transform: none;}
.bsp-chrome .drawer__head{display: flex; align-items: center; justify-content: space-between; margin-bottom: 22px;}
.bsp-chrome .drawer a{display: block; padding: 13px 0; border-bottom: 1px solid var(--line); font-weight: 700; color: var(--ink);}
.bsp-chrome .drawer .btn{margin-top: 20px;}
.bsp-chrome .scrim{position: fixed; inset: 0; background: rgba(4,38,59,.62); backdrop-filter: blur(3px); z-index: 99; opacity: 0; visibility: hidden; transition: all .3s var(--ease);}
.bsp-chrome .scrim.on{opacity: 1; visibility: visible;}
[data-theme="dark"] .bsp-chrome .hero__art{filter: drop-shadow(0 26px 48px rgba(0,0,0,.55));}
[data-theme="dark"] .bsp-chrome .logo-chip{background: #FFFFFF; border-color: rgba(255,255,255,.14);}
[data-theme="dark"] .bsp-chrome .logo-chip:hover{border-color: var(--brand); box-shadow: 0 10px 26px -10px rgba(12,140,233,.6);}
.bsp-chrome .footer{background: var(--bg-alt); border-top: 1px solid var(--line); padding-block: clamp(48px, 6vw, 72px) 0;}
.bsp-chrome .footer__top{display: grid; grid-template-columns: 1.4fr repeat(4, 1fr); gap: 32px; padding-bottom: 44px;}
.bsp-chrome .footer__about p{font-size: .88rem; color: var(--muted); max-width: 40ch; margin: 16px 0 20px;}
.bsp-chrome .footer h4{font-size: .78rem; letter-spacing: .12em; text-transform: uppercase; color: var(--ink); margin-bottom: 16px;}
.bsp-chrome .footer li{margin-bottom: 10px;}
.bsp-chrome .footer li a{font-size: .88rem; color: var(--muted); transition: color .2s var(--ease);}
.bsp-chrome .footer li a:hover{color: var(--brand);}
.bsp-chrome .socials{display: flex; gap: 9px;}
.bsp-chrome .socials a{width: 36px; height: 36px; border-radius: 10px; border: 1px solid var(--line); background: var(--surface); display: grid; place-items: center; color: var(--muted); transition: all .2s var(--ease);}
.bsp-chrome .socials a:hover{color: #fff; background: var(--solid-bg); border-color: var(--solid-bg); transform: translateY(-2px);}
.bsp-chrome .socials svg{width: 16px; height: 16px;}
.bsp-chrome .footer__contact{display: grid; gap: 10px; margin-bottom: 18px;}
.bsp-chrome .footer__contact a{display: flex; align-items: center; gap: 10px; font-size: .88rem; color: var(--muted);}
.bsp-chrome .footer__contact a:hover{color: var(--brand);}
.bsp-chrome .footer__contact svg{width: 16px; height: 16px; color: var(--brand); flex: none;}
.bsp-chrome .footer__bar{border-top: 1px solid var(--line); padding-block: 20px; display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; font-size: .82rem; color: var(--faint);}
.bsp-chrome .footer__bar a:hover{color: var(--brand);}
@media (max-width: 1080px){
.bsp-chrome .footer__top{grid-template-columns: 1fr 1fr;}
}
@media (max-width: 860px){
.bsp-chrome{--header-h: 64px;}
.bsp-chrome .nav, .bsp-chrome .header__actions .btn, .bsp-chrome .topbar__note{display: none;}
.bsp-chrome .burger{display: grid;}
.bsp-chrome .mega{display: none;}
}
@media (max-width: 620px){
.bsp-chrome .footer__top{grid-template-columns: 1fr; gap: 28px;}
.bsp-chrome .hero__cta .btn{width: 100%;}
.bsp-chrome .cta-band__acts .btn{width: 100%;}
}
.bsp-chrome .corp-form .btn{margin-top: 6px;}
.bsp-chrome .ai-sec .chip[aria-pressed="true"], .bsp-chrome .ai-sec .chip.is-active{background: #fff; border-color: #fff; color: #062A40;}
[data-theme="dark"] .bsp-chrome .client-tile{background: #FFFFFF; border-color: rgba(255,255,255,.14);}
[data-theme="dark"] .bsp-chrome .client-tile--text{background: var(--surface); border-color: var(--line);}
[data-theme="dark"] .bsp-chrome .client-tile--text b{color: var(--ink);}
@media (max-width: 620px){
.bsp-chrome .partner-empty__acts .btn{width: 100%;}
}
.bsp-chrome .course-more .btn svg{transition: transform .3s var(--ease);}
.bsp-chrome .course-more .btn[aria-expanded="true"] svg{transform: rotate(180deg);}
.bsp-chrome .footer__blog li a::before{content: "›"; margin-right: 7px; color: var(--brand); font-weight: 800;}
.bsp-chrome .topic-course .btn{flex: none;}
.bsp-chrome .office.is-active{border-color: var(--brand); box-shadow: 0 0 0 3px var(--brand-soft);}
[data-theme="dark"] .bsp-chrome .map-block__frame iframe{filter: invert(.92) hue-rotate(180deg) saturate(.8);}
@media (max-width: 620px){
.bsp-chrome .office__acts .btn{flex: 1;}
}
[data-theme="dark"] .bsp-chrome .webinar-art img{filter: drop-shadow(0 18px 36px rgba(0,0,0,.55));}
.bsp-chrome .iso-badge{height: 40px; width: auto; display: block; margin-top: 4px;
  border-radius: 6px;}
[data-theme="dark"] .bsp-chrome .iso-badge{background: #fff; padding: 4px 7px;
  box-shadow: 0 2px 8px rgba(0,0,0,.3);}
.bsp-chrome .mega--bootcamp{width: min(430px, 92vw);
  grid-template-columns: 1fr;
  left: auto; right: 0; translate: none;
  padding: 14px;}
.bsp-chrome .mega--bootcamp .mega__link{align-items: flex-start; gap: 13px;}
.bsp-chrome .mega--bootcamp .mega__link > span:last-child{display: block; min-width: 0;}
.bsp-chrome .mega--bootcamp .mega__link b{display: block; color: var(--ink); font-size: .94rem; font-weight: 800; margin-bottom: 3px;}
.bsp-chrome .mega--bootcamp .mega__link > span:last-child > span{display: block; font-size: .79rem; color: var(--muted); line-height: 1.5;}
.bsp-chrome .mega--bootcamp .mega__ico{width: 42px; height: 42px; border-radius: 12px; flex: none;
  display: grid; place-items: center;
  font-size: .82rem; font-weight: 900; color: #fff; letter-spacing: -.02em;}
.bsp-chrome .mega--bootcamp .mega__link:hover b{color: var(--brand);}
.bsp-chrome .mega--bootcamp .mega__foot{margin-top: 6px; padding-top: 13px; gap: 12px; flex-wrap: wrap;}
.bsp-chrome .mega--bootcamp .mega__foot span{font-size: .76rem;}
.bsp-chrome .nav__item.open .nav__toggle{color: var(--brand); background: var(--brand-soft);}
