
html{scroll-behavior:smooth;overflow-x:clip}
body{overflow-x:clip}
.site-header{position:sticky;top:0;z-index:90;transition:box-shadow .28s ease,background-color .28s ease;backdrop-filter:blur(14px)}
.site-header.bd-scrolled{box-shadow:0 10px 32px rgba(17,24,39,.08);background:rgba(255,255,255,.94)}
.bd-progress{position:fixed;inset:0 auto auto 0;height:3px;width:0;z-index:120;background:linear-gradient(90deg,#7ab2fb,#a6c9fb);pointer-events:none}

/* First-render hero entrance. @starting-style keeps the page fully usable without JS. */
.bd-hero-enter{opacity:1;transform:translate3d(0,0,0) scale(1);filter:blur(0);transform-origin:50% 50%;transition:opacity .82s ease,filter .78s ease,transform 1.05s cubic-bezier(.16,1,.3,1)}
@starting-style{.bd-hero-enter{opacity:0;transform:translate3d(-150px,0,0) scale(.965);filter:blur(7px)}}

/* Whole-block scroll entrances. Classes are added only after JS is ready. */
.bd-section-enter{opacity:0;will-change:transform,opacity,filter;filter:blur(4px);transition:opacity .72s ease,filter .72s ease,transform .92s cubic-bezier(.16,1,.3,1)}
.bd-section-enter.bd-left{transform:translate3d(-105px,0,0) scale(.985)}
.bd-section-enter.bd-right{transform:translate3d(105px,0,0) scale(.985)}
.bd-section-enter.bd-up{transform:translate3d(0,75px,0) scale(.985)}
.bd-section-enter.bd-down{transform:translate3d(0,-75px,0) scale(.985)}
.bd-section-enter.bd-visible{opacity:1;filter:blur(0);transform:none}

/* Color interactions: no hopping or translate-on-hover. */
.header-cta,.btn,.join-pill,.mini-join,.read-more-wide{transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease!important;transform:none!important}
.header-cta:hover,.join-pill:hover,.read-more-wide:hover{background:#5f9ff0!important;color:#fff!important;box-shadow:0 0 0 4px rgba(122,178,251,.14)}
.btn-blue:hover{background:#5f9ff0!important;color:#fff!important}
.btn-white:hover{background:#eef6ff!important;color:#4c91e7!important;border-color:#a9cdf8!important}
.mini-join:hover{background:#dfeeff!important;color:#3f86d8!important}
.session-card,.latest-row,.feature-card,.category-card,.session-list-card,.info-card,.ready-card,.article-tile{transition:background-color .24s ease,border-color .24s ease,box-shadow .24s ease!important;transform:none!important}
.session-card:hover{background:#f3f8ff!important;border-color:#bcd6f6!important;box-shadow:inset 4px 0 0 #7ab2fb}
.latest-row:hover{background:#f6faff!important;border-color:#c4daf5!important}
.feature-card:hover,.article-tile:hover{background:#f8fbff!important;border-color:#bdd7f7!important;box-shadow:0 0 0 3px rgba(122,178,251,.08)}
.category-card:nth-child(1):hover{background:#f3f8ff!important;border-color:#bfd7f5!important}
.category-card:nth-child(2):hover{background:#f8f5ff!important;border-color:#d2c5f5!important}
.category-card:nth-child(3):hover{background:#f4fbf7!important;border-color:#c5e4d1!important}
.info-card:hover{background:#f7fbff!important;border-color:#c8ddf7!important}
.ready-card:hover{background:#edf6ff!important}

/* Marquee directly under the homepage hero. */
.bd-marquee{position:relative;overflow:hidden;margin:14px 0 28px;border-top:1px solid #dfe5ec;border-bottom:1px solid #dfe5ec;background:#f8fbff;mask-image:linear-gradient(to right,transparent,#000 6%,#000 94%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,#000 6%,#000 94%,transparent)}
.bd-marquee-track{display:flex;width:max-content;align-items:center;animation:bd-marquee 32s linear infinite;will-change:transform}
.bd-marquee:hover .bd-marquee-track{animation-play-state:paused}
.bd-marquee-group{display:flex;align-items:center;white-space:nowrap}
.bd-marquee-item{display:inline-flex;align-items:center;gap:18px;padding:14px 24px;font-size:14px;line-height:1;font-weight:650;letter-spacing:.01em;color:#48566a}
.bd-marquee-item::after{content:'•';font-size:18px;line-height:1;color:#7ab2fb}
.bd-marquee-item em{font-style:normal;color:#161b26}
@keyframes bd-marquee{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .bd-hero-enter,.bd-section-enter{opacity:1!important;transform:none!important;filter:none!important;transition:none!important}
  .bd-marquee{mask-image:none;-webkit-mask-image:none}
  .bd-marquee-track{animation:none!important;white-space:normal;flex-wrap:wrap}
  .bd-marquee-group[aria-hidden='true']{display:none}
  *,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important}
}
