.hero-slim{
  padding:8px 0 0;
}

.hero-workshops{
  --ws-accent:#66ffe6;
  --ws-accent-rgb:102,255,230;
  position:relative;
  padding:12px 0 0;
  overflow:hidden;
  background:
    radial-gradient(circle at 82% 30%,rgba(0,214,200,.11),transparent 26%),
    radial-gradient(circle at 100% 0%,rgba(83,109,254,.11),transparent 34%),
    linear-gradient(135deg,#0a101a 0%,#0b1422 56%,#0c1626 100%);
}

.hero-workshops::before{
  background-image:
    linear-gradient(rgba(144,174,215,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(144,174,215,.045) 1px,transparent 1px);
  background-size:72px 72px;
  opacity:.45;
  animation:none;
  -webkit-mask-image:linear-gradient(to bottom,#000,transparent 94%);
  mask-image:linear-gradient(to bottom,#000,transparent 94%);
}

.hero-workshops::after{
  background:none;
  opacity:1;
}

.ws-container{
  width:min(1200px,calc(100% - 40px));
  margin-inline:auto;
}

.ws-hero-layout{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);
  gap:clamp(48px,7vw,92px);
  align-items:center;
  padding:58px 0 72px;
}

.ws-kicker{
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:#8bf5e6;
  font-size:.7rem;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.ws-kicker::before{
  content:"";
  width:32px;
  height:1px;
  background:currentColor;
  box-shadow:0 0 12px rgba(var(--ws-accent-rgb),.4);
}

.ws-hero-copy h1{
  max-width:740px;
  margin:18px 0 0;
  color:#f2f6fd;
  font-family:"Inter Tight",system-ui,sans-serif;
  font-size:clamp(3.2rem,5.5vw,5.35rem);
  font-weight:300;
  line-height:.97;
  letter-spacing:-.052em;
}

.ws-hero-copy h1 strong{
  display:block;
  color:var(--ws-accent);
  font-weight:620;
}

.ws-hero-copy .sub{
  max-width:680px;
  margin:23px 0 0;
  color:#acbdd3;
  font-size:clamp(.97rem,1.25vw,1.08rem);
  line-height:1.72;
}

.ws-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:29px;
}

.ws-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  min-height:48px;
  padding:0 20px;
  border:1px solid transparent;
  border-radius:11px;
  font-size:.88rem;
  font-weight:800;
  line-height:1;
  text-decoration:none;
  transition:transform .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease;
}

.ws-button:hover{
  transform:translateY(-2px);
}

.ws-button-primary{
  color:#06131b;
  background:linear-gradient(135deg,#78ffec,#24d7ca);
  box-shadow:0 12px 30px rgba(0,214,200,.18);
}

.ws-button-primary:hover{
  box-shadow:0 16px 38px rgba(0,214,200,.25);
}

.ws-button-secondary{
  border-color:rgba(191,211,240,.23);
  color:#eaf2ff;
  background:rgba(255,255,255,.035);
}

.ws-button-secondary:hover{
  border-color:rgba(var(--ws-accent-rgb),.48);
  background:rgba(var(--ws-accent-rgb),.055);
}

.ws-hero-art{
  position:relative;
  display:grid;
  place-items:center;
  min-height:390px;
}

.ws-session-board{
  position:relative;
  width:min(360px,90vw);
  min-height:410px;
  padding:22px;
  overflow:hidden;
  border:1px solid rgba(176,202,235,.16);
  border-radius:22px;
  background:
    radial-gradient(circle at 50% 42%,rgba(var(--ws-accent-rgb),.11),transparent 34%),
    linear-gradient(155deg,rgba(255,255,255,.045),rgba(255,255,255,.012)),
    #09131f;
  box-shadow:0 30px 80px rgba(0,0,0,.34);
}

.ws-session-board::before{
  content:"";
  position:absolute;
  right:-90px;
  bottom:-90px;
  width:250px;
  aspect-ratio:1;
  border:1px solid rgba(var(--ws-accent-rgb),.15);
  border-radius:50%;
  box-shadow:
    0 0 0 32px rgba(var(--ws-accent-rgb),.025),
    0 0 0 66px rgba(83,109,254,.018);
}

.ws-board-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding-bottom:16px;
  border-bottom:1px solid rgba(176,202,235,.11);
  color:#8396b0;
  font-size:.65rem;
  font-weight:800;
  letter-spacing:.11em;
  text-transform:uppercase;
}

.ws-board-status{
  display:inline-flex;
  align-items:center;
  gap:6px;
  color:#99f8ea;
}

.ws-board-status::before{
  content:"";
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--ws-accent);
  box-shadow:0 0 10px rgba(var(--ws-accent-rgb),.6);
}

.ws-board-icon{
  position:relative;
  z-index:1;
  display:grid;
  place-items:center;
  width:144px;
  aspect-ratio:1;
  margin:55px auto 45px;
  border:1px solid rgba(var(--ws-accent-rgb),.2);
  border-radius:50%;
  color:#e5fbf7;
  background:rgba(6,14,24,.48);
  box-shadow:
    0 0 0 18px rgba(var(--ws-accent-rgb),.025),
    inset 0 0 35px rgba(var(--ws-accent-rgb),.06);
}

.ws-board-icon i{
  font-size:4.2rem;
}

.ws-board-tags{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  border-top:1px solid rgba(176,202,235,.11);
  border-bottom:1px solid rgba(176,202,235,.11);
}

.ws-board-tags span{
  padding:12px 8px;
  border-right:1px solid rgba(176,202,235,.11);
  color:#c9d7e8;
  font-size:.67rem;
  font-weight:750;
  text-align:center;
  text-transform:uppercase;
}

.ws-board-tags span:last-child{
  border-right:0;
}

.ws-board-foot{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  gap:8px;
  margin-top:17px;
  color:#8396b0;
  font-size:.69rem;
}

.ws-board-foot i{
  color:var(--ws-accent);
}

.ws-hero-rail{
  position:relative;
  z-index:2;
  border-top:1px solid rgba(176,202,235,.11);
  background:rgba(7,14,24,.52);
  backdrop-filter:blur(12px);
}

.ws-hero-rail-inner{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.ws-hero-fact{
  display:flex;
  align-items:center;
  gap:13px;
  min-width:0;
  padding:16px 24px;
  border-right:1px solid rgba(176,202,235,.1);
}

.ws-hero-fact:first-child{
  padding-left:0;
}

.ws-hero-fact:last-child{
  padding-right:0;
  border-right:0;
}

.ws-hero-fact i{
  display:grid;
  place-items:center;
  flex:0 0 auto;
  width:36px;
  height:36px;
  border:1px solid rgba(var(--ws-accent-rgb),.18);
  border-radius:9px;
  color:var(--ws-accent);
  background:rgba(var(--ws-accent-rgb),.05);
}

.ws-hero-fact strong,
.ws-hero-fact span{
  display:block;
}

.ws-hero-fact strong{
  color:#e2ebf8;
  font-size:.78rem;
  font-weight:750;
}

.ws-hero-fact span{
  margin-top:2px;
  color:#8193ad;
  font-size:.66rem;
}

.ws-section{
  position:relative;
  padding:clamp(76px,8vw,108px) 0;
  overflow:hidden;
  background:#09111e;
}

.ws-section-alt{
  background:
    radial-gradient(circle at 100% 0%,rgba(83,109,254,.07),transparent 30%),
    linear-gradient(180deg,#0b1422,#09111e);
}

.ws-section-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:34px;
  margin-bottom:34px;
}

.ws-section-head > div{
  max-width:720px;
}

.ws-section-head .ws-kicker{
  margin-bottom:13px;
}

.ws-section-head h2{
  margin:0;
  color:#f1f6ff;
  font-family:"Inter Tight",system-ui,sans-serif;
  font-size:clamp(2.15rem,4vw,3.55rem);
  font-weight:400;
  line-height:1.05;
  letter-spacing:-.035em;
}

.ws-section-head p{
  margin:14px 0 0;
  max-width:650px;
  color:#a7b7cd;
  line-height:1.7;
}

.ws-audience-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  border-top:1px solid rgba(176,202,235,.13);
  border-bottom:1px solid rgba(176,202,235,.13);
}

.ws-audience-item{
  position:relative;
  min-width:0;
  padding:28px 28px 30px;
  border-right:1px solid rgba(176,202,235,.13);
}

.ws-audience-item:first-child{
  padding-left:0;
}

.ws-audience-item:last-child{
  padding-right:0;
  border-right:0;
}

.ws-audience-number{
  display:block;
  margin-bottom:34px;
  color:var(--ws-accent);
  font-size:.7rem;
  font-weight:800;
  letter-spacing:.1em;
}

.ws-audience-item i{
  display:block;
  margin-bottom:16px;
  color:#8fa5ff;
  font-size:1.45rem;
}

.ws-audience-item h3{
  margin:0 0 9px;
  color:#edf4ff;
  font-family:"Inter Tight",system-ui,sans-serif;
  font-size:1.15rem;
  font-weight:620;
}

.ws-audience-item p{
  margin:0;
  color:#9eafc4;
  font-size:.87rem;
  line-height:1.66;
}

.ws-format-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

.ws-format{
  position:relative;
  min-width:0;
  padding:30px;
  overflow:hidden;
  border:1px solid rgba(176,202,235,.13);
  border-radius:18px;
  background:
    linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.012)),
    #0a1321;
}

.ws-format::before{
  content:"";
  position:absolute;
  top:0;
  right:0;
  left:0;
  height:2px;
  background:linear-gradient(90deg,var(--ws-accent),rgba(129,152,255,.65),transparent);
  opacity:.55;
}

.ws-format-head{
  display:flex;
  align-items:flex-start;
  gap:15px;
}

.ws-format-icon{
  display:grid;
  place-items:center;
  flex:0 0 auto;
  width:46px;
  height:46px;
  border:1px solid rgba(var(--ws-accent-rgb),.18);
  border-radius:11px;
  color:var(--ws-accent);
  background:rgba(var(--ws-accent-rgb),.05);
  font-size:1.12rem;
}

.ws-format-head small{
  display:block;
  margin-bottom:4px;
  color:#8193ad;
  font-size:.65rem;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}

.ws-format h3{
  margin:0;
  color:#edf4ff;
  font-family:"Inter Tight",system-ui,sans-serif;
  font-size:1.27rem;
  font-weight:620;
}

.ws-format > p{
  margin:19px 0 0;
  color:#a7b7cc;
  font-size:.9rem;
  line-height:1.68;
}

.ws-format-list{
  display:grid;
  gap:9px;
  margin:20px 0 0;
  padding:18px 0 0;
  border-top:1px solid rgba(176,202,235,.1);
  list-style:none;
}

.ws-format-list li{
  display:flex;
  align-items:flex-start;
  gap:9px;
  color:#c6d3e3;
  font-size:.82rem;
  line-height:1.5;
}

.ws-format-list i{
  flex:0 0 auto;
  margin-top:2px;
  color:var(--ws-accent);
}

.ws-session-layout{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(430px,1.1fr);
  gap:clamp(55px,8vw,110px);
  align-items:start;
}

.ws-session-intro{
  position:sticky;
  top:110px;
}

.ws-session-intro h2{
  margin:14px 0 0;
  color:#f1f6ff;
  font-family:"Inter Tight",system-ui,sans-serif;
  font-size:clamp(2.25rem,4vw,3.65rem);
  font-weight:400;
  line-height:1.05;
  letter-spacing:-.04em;
}

.ws-session-intro p{
  margin:17px 0 0;
  color:#a7b7cd;
  line-height:1.72;
}

.ws-topic-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 22px;
  margin-top:28px;
  border-top:1px solid rgba(176,202,235,.13);
}

.ws-topic{
  display:flex;
  align-items:center;
  gap:9px;
  min-width:0;
  padding:12px 0;
  border-bottom:1px solid rgba(176,202,235,.1);
  color:#c9d6e7;
  font-size:.79rem;
  font-weight:650;
}

.ws-topic i{
  flex:0 0 auto;
  color:#8fa5ff;
}

.ws-session-details{
  border-top:1px solid rgba(176,202,235,.13);
}

.ws-session-detail{
  display:grid;
  grid-template-columns:48px minmax(0,1fr);
  gap:16px;
  padding:24px 0;
  border-bottom:1px solid rgba(176,202,235,.13);
}

.ws-session-detail > i{
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  border:1px solid rgba(var(--ws-accent-rgb),.18);
  border-radius:11px;
  color:var(--ws-accent);
  background:rgba(var(--ws-accent-rgb),.05);
  font-size:1.08rem;
}

.ws-session-detail h3{
  margin:0 0 6px;
  color:#e8f1fd;
  font-family:"Inter Tight",system-ui,sans-serif;
  font-size:1.08rem;
  font-weight:620;
}

.ws-session-detail p{
  margin:0;
  color:#98a9bf;
  font-size:.86rem;
  line-height:1.64;
}

.ws-voucher-note{
  display:flex;
  align-items:flex-start;
  gap:12px;
  margin-top:22px;
  padding:3px 0 3px 16px;
  border-left:2px solid #8198ff;
  color:#aebed1;
  font-size:.82rem;
  line-height:1.62;
}

.ws-voucher-note i{
  flex:0 0 auto;
  margin-top:2px;
  color:#9eafff;
}

.ws-process-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  counter-reset:ws-step;
}

.ws-process-step{
  position:relative;
  min-width:0;
  padding:25px 24px;
  border-top:1px solid rgba(176,202,235,.13);
  border-bottom:1px solid rgba(176,202,235,.13);
  counter-increment:ws-step;
}

.ws-process-step::before{
  content:"0" counter(ws-step);
  display:block;
  margin-bottom:34px;
  color:var(--ws-accent);
  font-size:.7rem;
  font-weight:800;
  letter-spacing:.1em;
}

.ws-process-step i{
  display:block;
  margin-bottom:15px;
  color:#8fa5ff;
  font-size:1.35rem;
}

.ws-process-step h3{
  margin:0 0 8px;
  color:#edf4ff;
  font-family:"Inter Tight",system-ui,sans-serif;
  font-size:1.13rem;
  font-weight:620;
}

.ws-process-step p{
  margin:0;
  color:#9eafc4;
  font-size:.86rem;
  line-height:1.65;
}

.ws-invite{
  background:
    radial-gradient(circle at 50% 100%,rgba(0,214,200,.075),transparent 30%),
    linear-gradient(180deg,#0b1422,#09111e);
}

.ws-invite-layout{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);
  gap:clamp(55px,8vw,110px);
  align-items:center;
}

.ws-invite-copy h2{
  margin:14px 0 0;
  color:#f1f6ff;
  font-family:"Inter Tight",system-ui,sans-serif;
  font-size:clamp(2.25rem,4vw,3.65rem);
  font-weight:400;
  line-height:1.05;
  letter-spacing:-.04em;
}

.ws-invite-copy p{
  margin:17px 0 0;
  color:#a7b7cd;
  line-height:1.72;
}

.ws-email-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:24px;
  padding-bottom:4px;
  border-bottom:1px solid rgba(var(--ws-accent-rgb),.35);
  color:var(--ws-accent);
  font-weight:750;
  text-decoration:none;
}

.ws-invite-checklist{
  border-top:1px solid rgba(176,202,235,.13);
}

.ws-invite-checklist h3{
  margin:0;
  padding:0 0 15px;
  border-bottom:1px solid rgba(176,202,235,.13);
  color:#dce7f6;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}

.ws-invite-checklist ul{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 22px;
  margin:0;
  padding:0;
  list-style:none;
}

.ws-invite-checklist li{
  display:flex;
  align-items:center;
  gap:9px;
  padding:13px 0;
  border-bottom:1px solid rgba(176,202,235,.1);
  color:#c3d1e2;
  font-size:.82rem;
}

.ws-invite-checklist li::before{
  content:"";
  flex:0 0 auto;
  width:6px;
  height:6px;
  border:1px solid var(--ws-accent);
  transform:rotate(45deg);
}

.ws-invite-actions{
  margin-top:24px;
}

@media(max-width:980px){
  .ws-hero-layout{
    grid-template-columns:1fr;
    gap:30px;
    padding:48px 0 62px;
  }

  .ws-hero-copy{
    max-width:760px;
  }

  .ws-hero-art{
    min-height:360px;
  }

  .ws-session-board{
    min-height:380px;
  }

  .ws-session-layout,
  .ws-invite-layout{
    grid-template-columns:1fr;
    gap:42px;
  }

  .ws-session-intro{
    position:static;
    max-width:720px;
  }
}

@media(max-width:760px){
  .ws-container{
    width:calc(100% - 32px);
  }

  .ws-hero-rail-inner,
  .ws-audience-grid,
  .ws-format-grid,
  .ws-process-grid{
    grid-template-columns:1fr;
  }

  .ws-hero-fact,
  .ws-hero-fact:first-child,
  .ws-hero-fact:last-child{
    padding:13px 0;
    border-right:0;
    border-bottom:1px solid rgba(176,202,235,.1);
  }

  .ws-hero-fact:last-child{
    border-bottom:0;
  }

  .ws-audience-item,
  .ws-audience-item:first-child,
  .ws-audience-item:last-child{
    padding:25px 0;
    border-right:0;
    border-bottom:1px solid rgba(176,202,235,.1);
  }

  .ws-audience-item:last-child{
    border-bottom:0;
  }

  .ws-audience-number{
    margin-bottom:22px;
  }

  .ws-process-step{
    border-top:0;
  }

  .ws-process-step:first-child{
    border-top:1px solid rgba(176,202,235,.13);
  }
}

@media(max-width:560px){
  .ws-container{
    width:calc(100% - 28px);
  }

  .ws-hero-layout{
    padding:40px 0 50px;
  }

  .ws-hero-copy h1{
    font-size:clamp(2.85rem,14vw,4rem);
  }

  .ws-actions{
    display:grid;
    grid-template-columns:1fr;
  }

  .ws-button{
    width:100%;
  }

  .ws-hero-art{
    min-height:320px;
  }

  .ws-session-board{
    width:min(330px,92vw);
    min-height:350px;
  }

  .ws-board-icon{
    width:125px;
    margin:42px auto 34px;
  }

  .ws-section{
    padding:66px 0;
  }

  .ws-section-head{
    display:block;
    margin-bottom:26px;
  }

  .ws-format{
    padding:24px 20px;
  }

  .ws-topic-list,
  .ws-invite-checklist ul{
    grid-template-columns:1fr;
  }

  .ws-session-detail{
    grid-template-columns:42px minmax(0,1fr);
    gap:12px;
  }

  .ws-session-detail > i{
    width:40px;
    height:40px;
  }
}

@media(prefers-reduced-motion:reduce){
  .ws-button{
    transition:none;
  }
}