.programme-hero{
  background:#052d25;
  color:#fff;
  padding:clamp(72px,10vw,130px) 0 clamp(55px,7vw,92px)
}
.programme-hero__inner{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(250px,.55fr);
  gap:clamp(40px,8vw,120px);
  align-items:end
}
.programme-hero .eyebrow{color:#efb331}
.programme-hero h1{
  max-width:920px;
  margin:18px 0 22px;
  color:#fff;
  font-size:clamp(3.2rem,6.7vw,7rem);
  line-height:.9;
  letter-spacing:-.055em
}
.programme-hero p{
  margin:0;
  color:rgba(255,255,255,.76);
  font-size:1.08rem
}
.programme-hero__actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:26px
}
.programme-hero__actions a{
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-height:46px;
  padding:0 17px;
  border-radius:999px;
  background:#efb331;
  color:#052d25;
  font-size:.84rem;
  font-weight:900;
  text-decoration:none
}
.programme-hero__actions .programme-hero__secondary{
  border:1px solid rgba(255,255,255,.26);
  background:transparent;
  color:#fff
}
.programme-hero__actions a:hover,
.programme-hero__actions a:focus-visible{
  transform:translateY(-1px)
}
.programme-hero__meta{
  display:grid;
  gap:8px;
  padding:22px 0 4px;
  border-top:2px solid #efb331
}
.programme-hero__meta span{
  color:rgba(255,255,255,.64);
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase
}
.programme-hero__meta strong{font-size:1.25rem}
.programme-hero__meta small{color:rgba(255,255,255,.62);line-height:1.45}
.programme-day-nav{
  position:sticky;
  z-index:50;
  top:0;
  border-bottom:1px solid rgba(5,45,37,.14);
  background:rgba(255,253,247,.96);
  backdrop-filter:blur(12px)
}
.programme-day-nav .container{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr))
}
.programme-day-nav a{
  display:flex;
  gap:12px;
  align-items:baseline;
  padding:17px 20px;
  border-right:1px solid rgba(5,45,37,.12);
  color:#052d25;
  text-decoration:none
}
.programme-day-nav a:first-child{border-left:1px solid rgba(5,45,37,.12)}
.programme-day-nav a:hover{background:#edf5f1}
.programme-day-nav span{
  color:#6d7b75;
  font-size:.7rem;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase
}
.programme-day-nav strong{font-size:1rem}
.programme-page{padding-block:clamp(55px,8vw,100px)}
.programme-day{scroll-margin-top:90px}
.programme-day+.programme-day{margin-top:clamp(90px,12vw,150px)}
.programme-day__header{
  display:grid;
  grid-template-columns:minmax(220px,.55fr) minmax(0,1.45fr);
  gap:clamp(35px,7vw,100px);
  align-items:end;
  padding-bottom:34px;
  border-bottom:3px solid #052d25
}
.programme-day__kicker{
  display:block;
  margin-bottom:8px;
  color:#0b7657;
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase
}
.programme-day__header h2{
  margin:0;
  color:#052d25;
  font-size:clamp(3rem,6vw,6rem);
  line-height:.88;
  letter-spacing:-.045em;
  text-transform:uppercase
}
.programme-day__header p{
  margin:0;
  color:#29463e;
  font-size:clamp(1.4rem,3vw,2.6rem);
  font-weight:650;
  line-height:1.08
}
.programme-section{padding-top:38px}
.programme-section+.programme-section{margin-top:34px}
.programme-section__header{
  padding:14px 18px;
  border-left:5px solid #efb331;
  background:#e9f3ee
}
.programme-section__header>div{
  display:flex;
  gap:14px;
  align-items:baseline;
  flex-wrap:wrap
}
.programme-section__header span{
  color:#0b7657;
  font-weight:900;
  font-size:.8rem;
  letter-spacing:.05em;
  text-transform:uppercase
}
.programme-section__header h3{
  margin:0;
  color:#052d25;
  font-size:1.18rem
}
.programme-sessions{
  border-top:1px solid rgba(5,45,37,.12)
}
.programme-session{
  display:grid;
  grid-template-columns:155px minmax(0,1fr) 110px;
  gap:28px;
  padding:28px 4px;
  border-bottom:1px solid rgba(5,45,37,.12)
}
.programme-session__time{
  display:grid;
  align-content:start;
  gap:8px
}
.programme-session__time time{
  color:#087448;
  font-size:1rem;
  font-weight:900
}
.programme-session__time span{
  color:#7a8882;
  font-size:.78rem
}
.programme-session__type{
  display:block;
  margin-bottom:7px;
  color:#052d25;
  font-size:.74rem;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase
}
.programme-session__main h4{
  max-width:850px;
  margin:0;
  color:#173e30;
  font-size:clamp(1.25rem,2.1vw,1.85rem);
  line-height:1.2
}
.programme-session__speakers{
  display:grid;
  gap:7px;
  margin:18px 0 0;
  padding:0;
  list-style:none
}
.programme-session__speakers li{
  position:relative;
  padding-left:15px;
  color:#56665f;
  line-height:1.55
}
.programme-session__speakers li:before{
  position:absolute;
  left:0;
  top:.65em;
  width:5px;
  height:5px;
  border-radius:50%;
  background:#0b7657;
  content:""
}
.programme-session__capacity{
  display:grid;
  align-content:start;
  justify-items:end;
  gap:4px;
  text-align:right
}
.programme-session__capacity span{
  color:#85918c;
  font-size:.64rem;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase
}
.programme-session__capacity strong{
  color:#052d25;
  font-size:1.2rem
}
.programme-notes{
  display:grid;
  gap:8px;
  margin-top:24px;
  padding:20px 22px;
  border-left:4px solid #0b7657;
  background:#f2f7f4
}
.programme-notes p{
  margin:0;
  color:#53635c;
  line-height:1.55
}
@media(max-width:820px){
  .programme-hero__inner,
  .programme-day__header{grid-template-columns:1fr}
  .programme-session{grid-template-columns:110px minmax(0,1fr)}
  .programme-session__capacity{
    grid-column:2;
    justify-items:start;
    text-align:left
  }
}
@media(max-width:620px){
  .programme-hero{padding-top:58px}
  .programme-hero h1{font-size:3.35rem}
  .programme-day-nav span{display:none}
  .programme-day-nav a{justify-content:center;padding:14px 8px}
  .programme-page{padding-top:48px}
  .programme-day__header{gap:18px}
  .programme-day__header h2{font-size:3.4rem}
  .programme-session{
    grid-template-columns:1fr;
    gap:13px;
    padding:24px 2px
  }
  .programme-session__time{
    display:flex;
    justify-content:space-between;
    gap:12px
  }
  .programme-session__capacity{grid-column:1}
}
