@charset "utf-8";
/* WORK page-specific styles */

.section{
  position:relative;
  overflow:hidden;
}

.section-kicker{
  display:inline-block;
  margin-bottom:18px;
  font-size:.9rem;
  font-weight:700;
  letter-spacing:.18em;
  text-transform:uppercase;
}

.section-title{
  margin:0;
  font-size:clamp(2.5rem, 5vw, 5.8rem);
  line-height:.92;
  font-weight:900;
  letter-spacing:-.03em;
}

.section-text{
  font-size:1.08rem;
  line-height:1.8;
  margin:0;
}

.hero{
  min-height:100vh;
  position:relative;
  display:flex;
  align-items:center;
  overflow:hidden;
  color:#fff;
  background:
    radial-gradient(circle at 14% 18%, rgba(233,74,87,.82), transparent 26%),
    radial-gradient(circle at 35% 38%, rgba(148,178,255,.36), transparent 18%),
    radial-gradient(circle at 84% 18%, rgba(255,255,255,.10), transparent 18%),
    linear-gradient(120deg, #101828 0%, #18253e 44%, #213764 100%);
}

.hero::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px),
    linear-gradient(rgba(255,255,255,.03) 1px, transparent 1px);
  background-size:64px 64px;
  opacity:.35;
  pointer-events:none;
}

.hero-bg-logo{
  position:absolute;
  left:58%;
  top:52%;
  transform:translate(-50%,-50%);
  width:min(78vw, 1100px);
  opacity:.10;
  filter:brightness(0) invert(1);
  pointer-events:none;
  animation:heroLogoSpin 36s linear infinite;
}

@keyframes heroLogoSpin{
  from{transform:translate(-50%,-50%) rotate(0deg)}
  to{transform:translate(-50%,-50%) rotate(360deg)}
}

.hero-grid{
  min-height:100vh;
  display:grid;
  align-items:center;
  padding:150px 0 110px;
}

.hero-content{
  max-width:860px;
  position:relative;
  z-index:3;
}

.hero-kicker{
  margin-bottom:22px;
  font-size:.98rem;
  font-weight:700;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:rgba(255,255,255,.86);
}

.hero-content h1{
  margin:0 0 28px;
  font-size:clamp(3.2rem, 8vw, 8rem);
  line-height:.88;
  font-weight:900;
  letter-spacing:-.04em;
  max-width:10ch;
}

.hero-content p{
  margin:0 0 38px;
  max-width:760px;
  font-size:1.24rem;
  line-height:1.65;
  color:var(--text-light);
}

.cta-row{
  display:flex;
  align-items:center;
  gap:18px;
  flex-wrap:wrap;
}

.date-badge{
  display:inline-flex;
  align-items:center;
  min-height:58px;
  padding:0 22px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.16);
  backdrop-filter:blur(8px);
  font-size:.92rem;
  font-weight:760;
  letter-spacing:.15em;
  text-transform:uppercase;
  white-space:nowrap;
}

.scroll-indicator{
  position:absolute;
  bottom:36px;
  left:50%;
  transform:translateX(-50%);
  z-index:10;
  opacity:.9;
}

.scroll-mouse{
  width:28px;
  height:46px;
  border-radius:20px;
  border:2px solid rgba(255,255,255,.75);
  display:flex;
  justify-content:center;
  padding-top:6px;
}

.scroll-dot{
  width:4px;
  height:8px;
  border-radius:4px;
  background:#fff;
  animation:scrollMove 2s ease-in-out infinite;
}

@keyframes scrollMove{
  0%{transform:translateY(0);opacity:0}
  30%{opacity:1}
  60%{transform:translateY(12px);opacity:.9}
  100%{opacity:0}
}

.intro-section{
  padding:130px 0 110px;
  background:var(--bg-light);
  color:var(--text-dark);
}

.intro-section .section-kicker{
  color:var(--red);
}

.intro-layout{
  display:grid;
  grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
  gap:56px;
  align-items:start;
}

.intro-copy{
  display:grid;
  gap:28px;
}

.intro-copy p{
  color:var(--text-mid);
  font-size:1.08rem;
  line-height:1.85;
  margin:0;
}

.statement-section{
  padding:110px 0;
  background:#fff;
  color:var(--text-dark);
  border-top:1px solid var(--line-dark);
  border-bottom:1px solid var(--line-dark);
}

.statement-shell{
  max-width:980px;
}

.statement-section .section-kicker{
  color:var(--red);
}

.statement-text{
  margin-top:22px;
  font-size:clamp(1.5rem, 2.5vw, 2.4rem);
  line-height:1.45;
  font-weight:500;
  color:#17223a;
}

.focus-section{
  padding:130px 0;
  background:
    radial-gradient(circle at 78% 14%, rgba(233,74,87,.08), transparent 24%),
    linear-gradient(180deg, #f7f3ed 0%, #f3ede4 100%);
  color:var(--text-dark);
}

.focus-top{
  display:grid;
  grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
  gap:48px;
  align-items:stretch;
  margin-bottom:72px; 
}

.focus-top-right{
  display:flex;
  flex-direction:column;
  justify-content:flex-end; 
  gap:18px;
}

.focus-subtitle{
  margin:0;
  max-width:22ch;
  font-size:clamp(1.5rem, 2.2vw, 2.2rem);
  line-height:1.15;
  font-weight:850;
  letter-spacing:-.02em;
  color:#101828;
}

.focus-section .section-kicker{
  color:var(--red);
}

.focus-intro{
  margin:0;
  max-width:60ch;
  color:var(--text-mid);
  font-size:1.08rem;
  line-height:1.8;
}

.focus-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

.focus-card{
  min-height:250px;
  padding:28px 28px 30px;
  border-radius:26px;
  background:#fff;
  border:1px solid rgba(15,23,40,.08);
  box-shadow:var(--shadow-soft);
  transition:transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}

.focus-card:hover{
  transform:translateY(-5px);
  box-shadow:0 28px 60px rgba(17,24,39,.12);
  border-color:rgba(233,74,87,.24);
}

.focus-index{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:46px;
  height:46px;
  margin-bottom:18px;
  border-radius:50%;
  background:rgba(233,74,87,.10);
  color:var(--red);
  font-size:.9rem;
  font-weight:800;
  letter-spacing:.08em;
}

.focus-card h3{
  margin:0 0 14px;
  font-size:clamp(1.45rem, 2vw, 1.95rem);
  line-height:1.06;
  font-weight:850;
  color:#101828;
}

.focus-card p{
  margin:0;
  color:var(--text-mid);
  font-size:1rem;
  line-height:1.72;
}

.goal-section{
  padding:130px 0;
  background:linear-gradient(180deg, #20355d 0%, #101b2f 100%);
  color:#fff;
}

.goal-section .section-kicker{
  color:rgba(255,255,255,.72);
}

.goal-layout{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:90px;
  align-items:start;
}

.goal-copy{
  padding-left:26px;
}

.goal-copy p{
  margin:0 0 28px;
  color:rgba(255,255,255,.82);
  font-size:1.08rem;
  line-height:1.85;
}

.goal-copy p:last-child{
  margin-bottom:0;
}

.goal-quote{
  margin-top:32px;
  padding-top:22px;
  border-top:1px solid rgba(255,255,255,.14);
  font-size:clamp(1.25rem, 1.8vw, 1.7rem);
  line-height:1.35;
  font-weight:600;
  letter-spacing:-.01em;
  color:rgba(255,255,255,.92);
  max-width:28rem;
}

.statement-shell{
  max-width:var(--container); 
}

.statement-grid{
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);
  gap:60px;
  align-items:start;
}

.statement-left{
  max-width:none; 
}



.statement-box{
  position:relative;

  padding:36px 36px 38px;
  border-radius:24px;

  background:
    radial-gradient(circle at 0% 0%, rgba(233,74,87,.12), transparent 40%),
    linear-gradient(180deg, #ffffff, #f9f6f2);

  border:1px solid rgba(233,74,87,.18);

  box-shadow:
    0 30px 80px rgba(17,24,39,.12),
    0 8px 20px rgba(233,74,87,.08);

  transform:translateY(30px); /* bewusst versetzt */
}

.statement-box h3{
  margin:0 0 20px;
  font-size:1.45rem;
  font-weight:900;
  letter-spacing:-.01em;
  color:#0f1728;
}

.statement-box ul{
  margin:0;
  padding:0;
  list-style:none;
  display:grid;
  gap:12px;
}

.statement-box li{
  position:relative;
  padding-left:22px;
  font-size:1.05rem;
  line-height:1.65;
  color:#3f4a5f;
}

.statement-box li::before{
  content:"";
  position:absolute;
  left:0;
  top:8px;
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--red);
}

.statement-box li::before{
  width:10px;
  height:10px;
  top:7px;
  background:var(--red);
  box-shadow:0 0 0 4px rgba(233,74,87,.12);
}

@media (max-width:1000px){
  .statement-grid{
    grid-template-columns:1fr;
    gap:36px;
  }

  .statement-box{
    max-width:520px;
      margin-left:0;
    transform:none;
  }
}



.speakers-section{
  position:relative;
  padding:150px 0;
  background:#F3ECE6;
  color:#0f1728;
  overflow:hidden;
}

.speakers-section::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 18% 18%, rgba(233,74,87,.06), transparent 26%),
    radial-gradient(circle at 84% 26%, rgba(43,67,119,.05), transparent 24%),
    linear-gradient(90deg, rgba(15,23,40,.025) 1px, transparent 1px),
    linear-gradient(rgba(15,23,40,.025) 1px, transparent 1px);
  background-size:auto, auto, 72px 72px, 72px 72px;
  mask-image:linear-gradient(180deg, rgba(0,0,0,.18), rgba(0,0,0,.03));
  pointer-events:none;
}

.speakers-shell{
  position:relative;
  z-index:2;
}

.speakers-head{
  max-width:920px;
  margin-bottom:72px;
}

.speakers-kicker{
  color:#e94a57;
}

.speakers-title{
  max-width:12ch;
  margin:0;
  line-height:.88;
}

.speakers-intro{
  margin:56px 0 0;
  max-width:720px;
  font-size:1.12rem;
  line-height:1.9;
  color:#4b5565;
}

.speakers-empty{
  padding:28px 30px;
  border-radius:24px;
  background:rgba(255,255,255,.85);
  border:1px solid rgba(15,23,40,.08);
  box-shadow:0 20px 50px rgba(17,24,39,.08);
  color:#4b5565;
}

.speakers-row{
  display:grid;
  gap:0;
  margin-bottom:22px;
  border:0 !important;
  box-shadow:none !important;
}

.speakers-row::before,
.speakers-row::after{
  content:none !important;
  display:none !important;
}

.speakers-grid{
  display:grid;
  gap:18px;
  align-items:stretch;
}

.speakers-grid-four{
  grid-template-columns:repeat(4, minmax(0, 1fr));
}

.speaker-card{
  position:relative;
  display:flex;
  flex-direction:column;
  min-height:100%;
  border-radius:24px;
  overflow:hidden;
  background:transparent;
}

.speaker-card-hit{
  position:relative;
  z-index:2;
  display:flex;
  flex-direction:column;
  width:100%;
  height:100%;
  border:0;
  padding:0;
  margin:0;
  background:none;
  text-align:left;
  color:inherit;
  text-decoration:none;
  cursor:pointer;
  pointer-events:auto;
}

.speaker-card-hit:focus-visible{
  outline:3px solid rgba(233,74,87,.38);
  outline-offset:4px;
  border-radius:24px;
}

.speaker-card-no-bio .speaker-card-hit{
  cursor:default;
}

.speaker-card-hit > *{
  pointer-events:none;
}

.speaker-image-wrap{
  position:relative;
  aspect-ratio:4 / 3.4;
  overflow:hidden;
  border-radius:24px 24px 0 0;
  background:#e9edf3;
}

.speaker-image{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .55s ease;
}

.speaker-card-has-bio:hover .speaker-image{
  transform:scale(1.04);
}

.speaker-image-placeholder{
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:
    radial-gradient(circle at 20% 18%, rgba(255,255,255,.12), transparent 18%),
    linear-gradient(135deg, #23375f 0%, #e94a57 100%);
}

.speaker-placeholder-logo{
  width:min(46%, 140px);
  opacity:.96;
  filter:drop-shadow(0 10px 24px rgba(0,0,0,.16));
}

.speaker-card-body{
  flex:1 1 auto;
  display:flex;
  flex-direction:column;
  padding:18px 18px 18px;
  border-radius:0 0 24px 24px;
  background:rgba(255,255,255,.94);
  border:1px solid rgba(15,23,40,.08);
  border-top:0;
  box-shadow:0 20px 50px rgba(17,24,39,.08);
  min-height:190px;
}

.speaker-card-info{
  display:grid;
  gap:10px;
}

.speaker-conference-role{
  display:inline-block;
  align-self:flex-start;
  font-size:.62rem;
  font-weight:800;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:#e94a57;
  margin-bottom:4px;
}

.speaker-card-actions{
  margin-top:auto;
  display:flex;
  justify-content:center;
  padding-top:28px;
  min-height:68px;
  align-items:flex-end;
}

.speaker-name{
  margin:0;
  font-size:1.2rem;
  line-height:1.08;
  font-weight:850;
  letter-spacing:-.02em;
  transition:color .24s ease;
}

.speaker-card-has-bio:hover .speaker-name{
  color:#e94a57;
}

.speaker-role{
  margin:0;
  font-size:.82rem;
  line-height:1.58;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:#566176;
}

.speaker-more{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:0 16px;
  border-radius:999px;
  background:rgba(233,74,87,.08);
  border:1px solid rgba(233,74,87,.18);
  font-size:.74rem;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#e94a57;
  line-height:1;
  transition:background .24s ease, border-color .24s ease, transform .24s ease;
}

.speaker-card-has-bio:hover .speaker-more{
  background:rgba(233,74,87,.12);
  border-color:rgba(233,74,87,.28);
}


.sponsor-section{
  padding:108px 0 92px;
  background:#fff;
  border-top:1px solid var(--line-dark);
}

.sponsor-head{
  margin-bottom:88px;
}

.sponsor-section .section-kicker{
  color:var(--red);
}

.sponsor-row-shell{
  position:relative;
}

.sponsor-marquee-bleed{
  position:relative;
  width:100%;
}

.sponsor-marquee{
  position:relative;
  width:100%;
  overflow:hidden;
}

.sponsor-marquee::before,
.sponsor-marquee::after{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  width:72px;
  z-index:3;
  pointer-events:none;
}

.sponsor-marquee::before{
  left:-1px;
  background:linear-gradient(90deg, #fff 0%, rgba(255,255,255,0) 100%);
}

.sponsor-marquee::after{
  right:-1px;
  background:linear-gradient(270deg, #fff 0%, rgba(255,255,255,0) 100%);
}

.sponsor-track{
  display:flex;
  align-items:center;
  width:max-content;
  animation:sponsorLoop 32s linear infinite;
  will-change:transform;
}

.sponsor-group{
  display:flex;
  align-items:center;
  gap:96px; /* ← Abstand zwischen Logos */
  margin-right:96px; /* ← GANZ WICHTIG für Loop */
}

.sponsor-group{
  display:flex;
  align-items:center;
  gap:96px;
  flex:0 0 auto;
  padding:12px 0;
  min-width:max-content;
}

.sponsor-group img{
  height:72px;
  width:auto;
  max-width:220px;
  object-fit:contain;
  flex:0 0 auto;
  filter:brightness(0) saturate(100%) invert(8%) sepia(26%) saturate(1735%) hue-rotate(205deg) brightness(93%) contrast(103%);
  opacity:.96;
  transition:transform .28s ease, opacity .28s ease;
}

.sponsor-group img:hover{
  transform:translateY(-2px);
  opacity:1;
}

.sponsor-empty{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:72px;
  padding:0 24px;
  border-radius:18px;
  background:#f6f2ec;
  border:1px solid rgba(15,23,40,.08);
  color:#566176;
  font-size:1rem;
  line-height:1.4;
}

@keyframes sponsorLoop{
  from{transform:translateX(0)}
  to{transform:translateX(-25%)}
}

.closing-image-section{
  position:relative;
  width:100%;
  overflow:hidden;
  background:#d9d6cf;
}

.closing-image-section::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(11,18,32,.08) 100%);
  pointer-events:none;
}

.closing-image-section img{
  display:block;
  width:100%;
  height:min(72vh, 820px);
  object-fit:cover;
  object-position:center center;
}

#about,
#statement,
#focus,
#goal,
#speakers,
#partner,
#top{
  scroll-margin-top:0;
}



/* Additional WORK sections preserved for later use */
.agenda-section{
  background:#fff;
  color:#0a0d16;
  padding:160px 0;
}

.agenda-head{
  max-width:900px;
  margin-bottom:80px;
}

.agenda-kicker{
  display:inline-block;
  letter-spacing:.18em;
  text-transform:uppercase;
  font-size:.9rem;
  margin-bottom:16px;
  color:#e94a57;
}

.agenda-title{
  font-size:clamp(3rem,6vw,5.5rem);
  line-height:.95;
  margin:0;
  font-weight:900;
}

.agenda-timeline{
  position:relative;
  padding-left:120px;
}

.agenda-timeline::before{
  content:"";
  position:absolute;
  left:40px;
  top:0;
  bottom:0;
  width:2px;
  background:#e94a57;
}

.agenda-item{
  position:relative;
  margin-bottom:70px;
}

.agenda-item:last-child{
  margin-bottom:0;
}

.agenda-time{
  position:absolute;
  left:-120px;
  top:0;
  font-weight:800;
  font-size:1.2rem;
  color:#e94a57;
}

.agenda-content{
  background:#f6f2ec;
  padding:32px;
  border-radius:22px;
  box-shadow:0 20px 40px rgba(0,0,0,.06);
}

.agenda-content h3{
  margin:0 0 10px;
  font-size:1.6rem;
}

.agenda-content p{
  margin:0;
  line-height:1.6;
  color:#444;
}

.location-section{
  position:relative;
  padding:160px 0;
  background:linear-gradient(180deg, #0b0f18 0%, #0d1320 100%);
  color:#fff;
  overflow:hidden;
}

.location-section::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 18% 24%, rgba(233,74,87,.12), transparent 24%),
    radial-gradient(circle at 82% 72%, rgba(149,179,255,.10), transparent 24%);
  pointer-events:none;
}

.location-shell{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(0, 1.05fr) minmax(0, .95fr);
  gap:40px;
  align-items:center;
}

.location-visual{
  position:relative;
  border-radius:34px;
  overflow:hidden;
  background:#141b29;
  box-shadow:0 30px 80px rgba(0,0,0,.30);
  aspect-ratio: 16 / 10;
}

.location-visual img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
}

.location-visual::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 22% 20%, rgba(255,255,255,.09), transparent 18%),
    radial-gradient(circle at 72% 36%, rgba(255,255,255,.06), transparent 22%),
    linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,0));
  opacity:.9;
}

.location-overlay-card{
  position:absolute;
  left:28px;
  right:28px;
  bottom:28px;
  padding:26px 26px 28px;
  border-radius:24px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  backdrop-filter:blur(12px);
}

.location-label{
  display:inline-block;
  margin-bottom:14px;
  font-size:.82rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(255,255,255,.72);
}

.location-overlay-card h3{
  margin:0;
  font-size:clamp(1.8rem, 3vw, 3rem);
  line-height:.98;
  letter-spacing:-.04em;
}

.location-copy{
  max-width:640px;
}

.location-kicker{
  display:inline-block;
  margin-bottom:16px;
  font-size:.95rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:rgba(255,255,255,.72);
}

.location-title{
  margin:0 0 22px;
  font-size:clamp(3rem, 5.6vw, 5.6rem);
  line-height:.92;
  letter-spacing:-.05em;
  font-weight:900;
}

.location-intro{
  margin:0 0 30px;
  font-size:1.16rem;
  line-height:1.7;
  color:rgba(255,255,255,.8);
}

.location-points{
  display:grid;
  gap:18px;
}

.location-cta{
  margin-top:36px;
  padding-top:8px;
  display:flex;
  align-items:flex-start;
}

.location-cta .btn{
  box-shadow:0 18px 40px rgba(233,74,87,.28);
  font-size:1.02rem;
  padding:0 38px;
}


.location-point{
  padding:20px 22px;
  border-radius:20px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
}

.location-point strong{
  display:block;
  margin-bottom:8px;
  font-size:1.1rem;
  letter-spacing:-.02em;
}

.location-point span{
  color:rgba(255,255,255,.72);
  line-height:1.6;
}

.location-right{
  display:flex;
  flex-direction:column;
  gap:24px;
}

.location-points{
  margin-top:6px;
}

.location-cta{
  margin-top:12px;
}

.tickets-section{
  padding:160px 0;
  background:#fff;
  color:#0a0d16;
  text-align:center;
}

.tickets-head{
  max-width:760px;
  margin:0 auto 70px;
}

.tickets-kicker{
  display:inline-block;
  margin-bottom:16px;
  font-size:.95rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:#e94a57;
}

.tickets-title{
  font-size:clamp(3rem,6vw,5.5rem);
  line-height:.92;
  margin:0 0 20px;
  font-weight:900;
}

.tickets-intro{
  font-size:1.2rem;
  line-height:1.6;
  color:#444;
}

.ticket-card{
  max-width:520px;
  margin:auto;
  padding:60px 50px 55px;
  border-radius:34px;
  background:linear-gradient(180deg,#fff,#f6f2ec);
  box-shadow:0 40px 90px rgba(0,0,0,.12);
  transition:.4s;
}

.ticket-card:hover{
  transform:translateY(-10px);
  box-shadow:0 60px 120px rgba(0,0,0,.18);
}

.ticket-price{
  margin-bottom:34px;
}

.ticket-amount{
  font-size:clamp(4rem,8vw,6rem);
  font-weight:900;
  color:#e94a57;
  display:block;
}

.ticket-note{
  font-size:.9rem;
  letter-spacing:.15em;
  text-transform:uppercase;
  color:#888;
}

.ticket-features{
  margin-bottom:40px;
  display:grid;
  gap:10px;
  text-align:left;
  font-size:1.05rem;
}

.ticket-actions{
  display:flex;
  gap:16px;
  justify-content:center;
  flex-wrap:wrap;
}

.tickets-section .btn-outline{
  border:2px solid #e94a57;
  color:#e94a57;
  background:transparent;
}

.tickets-section .btn-outline:hover{
  background:#e94a57;
  color:#fff;
  border-color:#e94a57;
}

.takeaway-section{
  padding:160px 0;
  background:
    radial-gradient(circle at 20% 20%, rgba(233,74,87,.06), transparent 30%),
    radial-gradient(circle at 80% 60%, rgba(43,67,119,.06), transparent 30%),
    linear-gradient(180deg,#f6f2ec 0%, #ffffff 100%);
  color:#0a0d16;
}

.takeaway-head{
  max-width:820px;
  margin-bottom:60px;
}

.takeaway-kicker{
  display:inline-block;
  margin-bottom:16px;
  font-size:.95rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:#e94a57;
}

.takeaway-title{
  font-size:clamp(3rem,6vw,5rem);
  line-height:.92;
  margin:0 0 18px;
  font-weight:900;
}

.takeaway-intro{
  font-size:1.15rem;
  line-height:1.6;
  color:#444;
}

.takeaway-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:22px;
}

.takeaway-card{
  padding:30px 26px;
  border-radius:26px;
  background:#fff;
  box-shadow:0 24px 60px rgba(0,0,0,.08);
  transition:.35s;
}

.takeaway-card:hover{
  transform:translateY(-8px);
  box-shadow:0 40px 90px rgba(0,0,0,.12);
}

.takeaway-card h3{
  margin:0 0 10px;
  font-size:1.4rem;
}

.takeaway-card p{
  margin:0;
  line-height:1.6;
  color:#555;
}

.agenda-section--hero{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 16% 18%, rgba(233,74,87,.08), transparent 24%),
    radial-gradient(circle at 84% 22%, rgba(43,67,119,.08), transparent 24%),
    linear-gradient(180deg, #fff 0%, #f6f2ec 100%);
}

.agenda-section--hero::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg, rgba(10,13,22,.03) 1px, transparent 1px),
    linear-gradient(rgba(10,13,22,.03) 1px, transparent 1px);
  background-size:72px 72px;
  mask-image:linear-gradient(180deg, rgba(0,0,0,.25), rgba(0,0,0,.06));
  pointer-events:none;
}

.agenda-head--hero{
  position:relative;
  z-index:2;
  max-width:980px;
  margin-bottom:44px;
}

.agenda-head--hero .agenda-title{
  max-width:13ch;
}

.agenda-head--hero .agenda-intro{
  max-width:760px;
  font-size:1.14rem;
  line-height:1.7;
  color:#444;
  opacity:1;
}

.agenda-spotlight{
  position:relative;
  z-index:2;
  margin-bottom:24px;
  padding:34px;
  border-radius:34px;
  overflow:hidden;
  background:
    radial-gradient(circle at 18% 18%, rgba(255,255,255,.14), transparent 18%),
    radial-gradient(circle at 76% 28%, rgba(255,255,255,.08), transparent 24%),
    linear-gradient(135deg, #151a28 0%, #243457 44%, #e94a57 140%);
  color:#fff;
  box-shadow:0 38px 90px rgba(0,0,0,.18);
}

.agenda-spotlight::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg, rgba(255,255,255,.04) 1px, transparent 1px),
    linear-gradient(rgba(255,255,255,.04) 1px, transparent 1px);
  background-size:76px 76px;
  opacity:.4;
  pointer-events:none;
}

.agenda-spotlight::after{
  content:"";
  position:absolute;
  right:-80px;
  top:-80px;
  width:320px;
  height:320px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(255,255,255,.18), rgba(255,255,255,0));
  filter:blur(6px);
  pointer-events:none;
}

.agenda-spotlight-meta{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-bottom:34px;
}

.agenda-spotlight-label,
.agenda-spotlight-time{
  display:inline-flex;
  align-items:center;
  min-height:42px;
  padding:0 16px;
  border-radius:999px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.14);
  backdrop-filter:blur(10px);
  font-size:.82rem;
  font-weight:760;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.agenda-spotlight-body{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(0, 1.25fr) minmax(280px, .75fr);
  gap:28px;
  align-items:end;
}

.agenda-spotlight-copy h3{
  margin:0 0 16px;
  font-size:clamp(2rem, 3.8vw, 4rem);
  line-height:.92;
  font-weight:900;
  letter-spacing:-.04em;
  max-width:11ch;
}

.agenda-spotlight-copy p{
  margin:0;
  max-width:60ch;
  font-size:1.08rem;
  line-height:1.72;
  color:rgba(255,255,255,.84);
}

.agenda-spotlight-pillars{
  display:grid;
  gap:14px;
}

.agenda-pillar{
  padding:18px 18px 16px;
  border-radius:20px;
  background:rgba(255,255,255,.09);
  border:1px solid rgba(255,255,255,.12);
  backdrop-filter:blur(10px);
}

.agenda-pillar strong{
  display:block;
  margin-bottom:6px;
  font-size:1rem;
  letter-spacing:-.01em;
}

.agenda-pillar span{
  display:block;
  color:rgba(255,255,255,.76);
  line-height:1.55;
  font-size:.98rem;
}

.agenda-feature-grid{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:20px;
}

.agenda-feature-card{
  position:relative;
  padding:28px 26px 26px;
  border-radius:26px;
  background:linear-gradient(180deg, #ffffff, #f8f5f1);
  border:1px solid rgba(10,13,22,.06);
  box-shadow:0 24px 60px rgba(0,0,0,.08);
  transition:transform .35s ease, box-shadow .35s ease, border-color .35s ease;
  overflow:hidden;
}

.agenda-feature-card::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:4px;
  background:linear-gradient(180deg, #e94a57, rgba(43,67,119,.35));
}

.agenda-feature-card:hover{
  transform:translateY(-8px);
  box-shadow:0 36px 80px rgba(0,0,0,.12);
  border-color:rgba(233,74,87,.18);
}

.agenda-feature-time{
  margin-bottom:14px;
  font-size:.82rem;
  font-weight:760;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#2b4377;
}

.agenda-feature-card h3{
  margin:0 0 10px;
  font-size:clamp(1.35rem, 2vw, 1.9rem);
  line-height:1;
  font-weight:850;
  letter-spacing:-.03em;
}

.agenda-feature-card p{
  margin:0;
  color:#444;
  line-height:1.68;
}

.agenda-section--hero .agenda-hero-note{
  position:relative;
  z-index:2;
  margin-top:24px;
  background:rgba(255,255,255,.66);
  border:1px solid rgba(10,13,22,.08);
  backdrop-filter:blur(10px);
}

.agenda-section--hero .agenda-hero-note p{
  color:#444;
  opacity:1;
}

@media (max-width:1200px){
  .speakers-grid-four{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .speaker-card-body{
    min-height:200px;
  }
}

@media (max-width:1100px){
  .sponsor-section{
    padding:96px 0 82px;
  }

  .sponsor-head{
    margin-bottom:50px;
  }

  .sponsor-group{
    gap:72px;
  }

  .sponsor-group img{
    height:60px;
    max-width:190px;
  }

  .location-shell{
    grid-template-columns:1fr;
  }

  .location-copy{
    max-width:none;
  }

  .agenda-spotlight-body{
    grid-template-columns:1fr;
  }

  .agenda-feature-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width:1000px){
  .intro-layout,
  .focus-top,
  .goal-layout{
    grid-template-columns:1fr;
  }
}

@media (max-width:800px){
  .agenda-section{
    padding:100px 0;
  }

  .agenda-timeline{
    padding-left:0;
  }

  .agenda-timeline::before{
    left:0;
  }

  .agenda-time{
    position:relative;
    left:0;
    margin-bottom:8px;
  }

  .agenda-section--hero{
    padding:100px 0;
  }

  .agenda-spotlight{
    padding:24px 20px;
    border-radius:26px;
  }

  .agenda-spotlight-meta{
    flex-direction:column;
    align-items:flex-start;
    margin-bottom:22px;
  }

  .agenda-spotlight-copy h3{
    max-width:12ch;
    font-size:2.3rem;
  }

  .agenda-head--hero .agenda-intro{
    font-size:1rem;
  }

  .agenda-feature-card{
    padding:22px 20px 22px;
    border-radius:22px;
  }
}

@media (max-width:760px){
  .hero-grid{
    padding:132px 0 96px;
  }

  .focus-grid{
    grid-template-columns:1fr;
  }

  .focus-card{
    min-height:auto;
  }

  .goal-layout{
    grid-template-columns:1fr !important;
    gap:34px !important;
  }

  .goal-copy{
    padding-left:0 !important;
  }

  .goal-copy,
  .goal-copy p,
  .goal-quote{
    max-width:100%;
  }

  .speakers-section{
    padding:100px 0;
  }

  .speakers-head{
    margin-bottom:52px;
  }

  .speakers-intro{
    margin-top:34px;
    font-size:1rem;
  }

  .speakers-grid-four{
    grid-template-columns:1fr;
  }

  .speaker-image-wrap{
    aspect-ratio:4 / 3.2;
  }

  .speaker-card-body{
    min-height:auto;
  }

  .speaker-modal{
    padding:14px;
  }

  .speaker-modal-dialog{
    width:min(100%, calc(100vw - 28px));
    max-height:calc(100vh - 28px);
    padding:18px 18px 20px;
    border-radius:22px;
  }

  .speaker-modal-close{
    top:12px;
    right:12px;
    width:40px;
    height:40px;
    background:rgba(255,255,255,.96);
    box-shadow:0 8px 24px rgba(0,0,0,.14);
  }

  .speaker-modal-grid{
    grid-template-columns:1fr;
    gap:18px;
    padding-top:28px;
  }

  .speaker-modal-image-wrap{
    aspect-ratio:4 / 3.2;
  }

  .sponsor-section{
    padding:82px 0 72px;
  }

  .sponsor-head{
    margin-bottom:42px;
  }

  .sponsor-group{
    gap:52px;
  }

  .sponsor-group img{
    height:46px;
    max-width:150px;
  }

  .sponsor-marquee::before,
  .sponsor-marquee::after{
    width:36px;
  }

 /* .legal-modal{
    padding:14px;
  }

  .legal-modal-dialog{
    padding:28px 22px 24px;
    border-radius:22px;
  }

  .legal-modal h2{
    margin-bottom:18px;
  }*/
}

@media (max-width:640px){
  .date-badge{
    min-height:52px;
    font-size:.82rem;
  }

  .hero-content p,
  .section-text,
  .focus-intro,
  .goal-copy p,
  .intro-copy p{
    font-size:1rem;
  }

  .location-section{
    padding:100px 0;
  }

.location-visual{
  border-radius:26px;
  aspect-ratio: 16 / 9;
}

  .location-overlay-card{
    left:18px;
    right:18px;
    bottom:18px;
    padding:20px;
    border-radius:18px;
  }

  .location-title{
    font-size:2.8rem;
  }

  .location-intro{
    font-size:1rem;
  }

  .takeaway-section{
    padding:100px 0;
  }

  .takeaway-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width:1000px){
  .takeaway-grid{
    grid-template-columns:1fr 1fr;
  }
}


