*{box-sizing:border-box}html,body{margin:0;background:#05080b;color:#f5f3ee}body.events-v15{font-family:Arial,Helvetica,sans-serif}.event-feature{width:100%;min-height:640px;display:grid;grid-template-columns:minmax(0,48%) minmax(0,52%);background:#05080b}.event-scene{min-height:640px;background:url("veranstaltungen-scene.jpg") center/cover no-repeat}.event-card{padding:clamp(36px,4vw,64px) clamp(34px,4.5vw,72px);display:flex;flex-direction:column;justify-content:center;background:linear-gradient(135deg,#080b10,#05080b);border:1px solid rgba(255,255,255,.08);border-right:0;border-radius:28px 0 0 28px}.event-eyebrow{margin:0 0 10px;color:#ff2d72;text-transform:uppercase;font-size:.82rem;font-weight:700}.event-card h1{margin:0;font-size:clamp(2.35rem,4vw,4.3rem);line-height:1.04}.event-accent{display:block;width:min(390px,70%);height:2px;margin:14px 0 20px;background:linear-gradient(90deg,#ff2d72,#ff8a28,#ffe14a,#68f34b)}.event-statement{font-size:clamp(1.05rem,1.5vw,1.32rem);line-height:1.45}.event-facts{display:grid;grid-template-columns:1fr 1fr 1.25fr;margin:0 0 25px}.fact{min-height:88px;padding:4px 18px;display:flex;align-items:center;gap:13px;border-right:1px solid rgba(255,255,255,.24)}.fact:first-child{padding-left:0}.fact:last-child{border-right:0}.fact-icon{font-size:1.9rem}.pink{color:#ff2d72}.orange{color:#ff9800}.green{color:#78f62f}.fact small{display:block;margin-bottom:7px;text-transform:uppercase;font-size:.73rem;color:#c8c9cb}.fact strong{font-size:.97rem;line-height:1.45}.event-divider{height:1px;background:rgba(255,255,255,.30);margin:2px 0 20px}.event-copy{text-align:center;color:#e7e5e1;font-size:clamp(.92rem,1.15vw,1.03rem);line-height:1.55}.event-copy em{color:#83ef3c;font-style:normal}.event-actions{display:grid;grid-template-columns:minmax(230px,.95fr) minmax(260px,1.05fr);gap:28px;margin-top:26px}.flat-card{min-height:88px;display:flex;align-items:center;gap:16px;padding:14px 20px;border:1px solid rgba(255,214,0,.45);border-radius:9px}.glass-icon{color:#ff2d72;font-size:2rem}.flat-card small{display:block;color:#ffe93b;text-transform:uppercase;font-size:.82rem;font-weight:700}.flat-card strong{display:inline-block;margin:3px 10px 0 0;color:#82ef3e;font-size:1.55rem}.signup-btn{min-height:88px;display:flex;align-items:center;justify-content:center;padding:14px 28px;border-radius:14px;text-decoration:none;color:#05080b;font-size:clamp(1rem,1.35vw,1.2rem);font-weight:800;background:linear-gradient(90deg,#ff3f85,#ffb82e 36%,#d8ef4a 56%,#1ed6f3)}.future-strip{min-height:150px;padding:28px clamp(34px,8vw,128px);display:flex;align-items:center;justify-content:space-between;gap:40px;border-top:1px solid rgba(255,255,255,.09)}.future-copy p{margin:0 0 8px;color:#ff2d72;text-transform:uppercase;font-size:.78rem;font-weight:700}.future-copy h2{margin:0 0 8px;font-size:clamp(1.55rem,2.3vw,2.3rem)}.travel-mark{min-width:360px;display:flex;align-items:center;justify-content:flex-end;gap:14px}.route{width:180px;height:42px;border-top:2px dashed #ff2d72;border-radius:50%}.globe{color:#8ef02f;font-size:4rem}.plane{color:#ffe423;font-size:2.1rem}@media(max-width:820px){.event-feature{grid-template-columns:1fr}.event-scene{min-height:330px}.event-card{border-radius:0;border-left:0;padding:34px 24px 38px}.event-facts{grid-template-columns:1fr}.fact{border-right:0;border-bottom:1px solid rgba(255,255,255,.14);padding:10px 0 14px}.event-copy{text-align:left}.event-actions{grid-template-columns:1fr}.future-strip{flex-direction:column;align-items:flex-start}.travel-mark{min-width:0;width:100%}}
/* V18: Original-Reisegrafik */
.travel-mark{min-width:360px;display:flex;align-items:center;justify-content:flex-end}.travel-mark img{display:block;width:min(100%,520px);height:auto;object-fit:contain}@media(max-width:820px){.travel-mark{min-width:0;width:100%;justify-content:center}.travel-mark img{width:min(100%,520px)}}

/* V30 – Getränke-Angebot statt einzelner Cocktail-Flatrate */
.drinks-card{
  min-height:112px;
  align-items:flex-start;
  padding:16px 20px;
}
.drinks-card-inner{
  width:100%;
}
.drinks-card small{
  display:block;
  margin-bottom:8px;
  color:#ffe93b;
  text-transform:uppercase;
  font-size:.82rem;
  font-weight:700;
}
.drinks-list{
  margin:0;
  padding-left:18px;
  color:#f1efeb;
  font-size:.88rem;
  line-height:1.5;
}
.drinks-list li{
  margin:3px 0;
}
.drinks-list li::marker{
  color:#ff2d72;
}
.drinks-list strong{
  color:#fff;
  font-weight:700;
}
.glass-icon{
  display:none !important;
}

/* V31 – Veranstaltungen Feinschliff */
.event-actions{
  grid-template-columns:minmax(260px,1fr) auto;
  align-items:stretch;
  gap:22px;
}

.drinks-card{
  min-height:96px;
  padding:15px 18px;
  display:block;
}
.drinks-card-inner{
  width:100%;
}
.drinks-card small{
  display:block;
  margin-bottom:9px;
  color:#ffe93b;
  text-transform:uppercase;
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.03em;
}
.drink-option{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:4px 0;
  font-size:.9rem;
}
.drink-option span{
  color:#f2f0ec;
}
.drink-option strong{
  font-size:.94rem;
  font-weight:800;
  white-space:nowrap;
}
.flatrate-option strong{
  color:transparent;
  background:linear-gradient(90deg,#ff2d72 0%,#ff9f2b 38%,#ffe544 61%,#77ef3b 100%);
  -webkit-background-clip:text;
  background-clip:text;
}
.single-option strong{
  color:#fff;
}

/* Anmeldung kompakter statt überdimensioniert */
.signup-btn{
  min-height:56px !important;
  height:auto;
  min-width:210px;
  align-self:center;
  padding:14px 24px !important;
  font-size:clamp(.95rem,1.1vw,1.08rem) !important;
  border-radius:12px;
}

/* Responsive Anpassung */
@media(max-width:1050px){
  .event-actions{
    grid-template-columns:1fr;
  }
  .signup-btn{
    justify-self:start;
    width:auto;
  }
}
@media(max-width:620px){
  .drink-option{
    align-items:flex-start;
    flex-direction:column;
    gap:2px;
  }
  .drink-option strong{
    white-space:normal;
  }
  .signup-btn{
    width:100%;
    min-width:0;
  }
}

/* V32 – Angebot: Cocktails/Mocktails + Fingerfood */
.food-option strong{
  color:#fff;
  font-weight:800;
}

/* V33 – Feinschliff Angebot & Anmeldebutton */
.drinks-card{
  min-height:auto;
  padding:16px 18px;
}
.drinks-card-inner{
  width:100%;
}
.offer-line{
  display:flex;
  align-items:baseline;
  flex-wrap:wrap;
  gap:6px 9px;
  padding:3px 0;
  line-height:1.45;
}
.offer-title{
  color:#fff;
  font-weight:800;
}
.offer-flatrate{
  font-weight:800;
  color:transparent;
  background:linear-gradient(90deg,#ff2d72 0%,#ff8a2a 34%,#ffe447 61%,#76ef3c 100%);
  -webkit-background-clip:text;
  background-clip:text;
}
.offer-or,
.offer-detail{
  color:#fff;
  font-weight:400;
}

/* Anmeldebutton mit klarem Abstand unter dem Angebotskasten */
.event-actions{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  gap:0 !important;
}
.signup-btn{
  margin-top:24px !important;
  width:auto !important;
  min-width:210px;
  min-height:54px !important;
  padding:13px 22px !important;
  align-self:flex-start !important;
}

/* Responsive */
@media(max-width:620px){
  .offer-line{
    display:block;
  }
  .offer-line > *{
    display:inline;
  }
  .offer-line + .offer-line{
    margin-top:6px;
  }
  .signup-btn{
    width:100% !important;
    min-width:0;
  }
}

/* V34 – Angebotszeilen nutzen die volle Kartenbreite */
.drinks-card{
  width:100%;
}
.drinks-card-inner{
  width:100%;
}
.offer-line{
  display:grid !important;
  grid-template-columns:minmax(150px, 1fr) auto minmax(170px, 1fr);
  align-items:baseline;
  column-gap:18px;
  width:100%;
}
.offer-title{
  color:#fff !important;
  font-weight:800 !important;
  font-size:12px !important;
}
.offer-flatrate{
  justify-self:center;
  white-space:nowrap;
}
.offer-or{
  justify-self:end;
  color:#fff !important;
  font-weight:400 !important;
  text-align:right;
}
.offer-detail{
  grid-column:3;
  justify-self:end;
  color:#fff !important;
  font-weight:400 !important;
  text-align:right;
}
.offer-line:nth-of-type(2){
  grid-template-columns:minmax(150px, 1fr) minmax(120px, auto) minmax(170px, 1fr);
}
.offer-line:nth-of-type(2) .offer-title{
  grid-column:1;
}
.offer-line:nth-of-type(2) .offer-detail{
  grid-column:3;
}

/* Tablet: weiterhin breit verteilen */
@media(max-width:900px){
  .offer-line{
    grid-template-columns:minmax(130px,1fr) auto minmax(150px,1fr);
    column-gap:12px;
  }
}

/* Mobil: sauber umbrechen, ohne gequetscht zu wirken */
@media(max-width:620px){
  .offer-line{
    display:grid !important;
    grid-template-columns:1fr;
    row-gap:3px;
  }
  .offer-title,
  .offer-flatrate,
  .offer-or,
  .offer-detail{
    grid-column:1 !important;
    justify-self:start !important;
    text-align:left !important;
  }
  .offer-line + .offer-line{
    margin-top:10px;
  }
}

/* V35 – Angebotslayout feinjustiert */
.offer-line{
  display:grid !important;
  grid-template-columns:minmax(190px, 1.15fr) minmax(260px, 1fr);
  align-items:baseline;
  column-gap:24px;
  width:100%;
}
.offer-title{
  font-size:14px !important;
  font-weight:800 !important;
  color:#fff !important;
}
.offer-flatrate{
  grid-column:2;
  justify-self:start;
  white-space:nowrap;
}
.offer-or{
  grid-column:2;
  justify-self:end;
  color:#fff !important;
  font-weight:400 !important;
  text-align:right;
  margin-left:14px;
}
.offer-line:first-of-type{
  grid-template-columns:minmax(190px, 1.15fr) auto auto;
}
.offer-line:first-of-type .offer-title{
  grid-column:1;
}
.offer-line:first-of-type .offer-flatrate{
  grid-column:2;
  justify-self:end;
}
.offer-line:first-of-type .offer-or{
  grid-column:3;
  justify-self:end;
}
.offer-line:nth-of-type(2){
  grid-template-columns:minmax(190px, 1.15fr) minmax(260px,1fr);
}
.offer-line:nth-of-type(2) .offer-title{
  grid-column:1;
}
.offer-line:nth-of-type(2) .offer-detail{
  grid-column:2;
  justify-self:end;
}

/* Anmeldung exakt so breit wie Angebotskasten */
.event-actions{
  width:100% !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
}
.drinks-card{
  width:100% !important;
}
.signup-btn{
  width:100% !important;
  min-width:0 !important;
  align-self:stretch !important;
  justify-self:stretch !important;
  margin-top:24px !important;
}

/* Responsive Anpassung */
@media(max-width:900px){
  .offer-line:first-of-type{
    grid-template-columns:minmax(160px,1fr) auto auto;
    column-gap:10px;
  }
  .offer-line:nth-of-type(2){
    grid-template-columns:minmax(160px,1fr) minmax(150px,1fr);
  }
}
@media(max-width:620px){
  .offer-line,
  .offer-line:first-of-type,
  .offer-line:nth-of-type(2){
    grid-template-columns:1fr !important;
    row-gap:3px;
  }
  .offer-title,
  .offer-flatrate,
  .offer-or,
  .offer-detail{
    grid-column:1 !important;
    justify-self:start !important;
    text-align:left !important;
    margin-left:0 !important;
  }
}

/* V36 – exakt ein Leerzeichen zwischen Preis und Einzelpreis */
.offer-line:first-of-type{
  grid-template-columns:minmax(190px,1.15fr) minmax(300px,1fr) !important;
}
.offer-line:first-of-type .offer-title{
  grid-column:1 !important;
}
.offer-price{
  grid-column:2 !important;
  justify-self:end !important;
  white-space:nowrap;
  display:inline;
}
.offer-price .offer-flatrate,
.offer-price .offer-or{
  display:inline !important;
  margin:0 !important;
  padding:0 !important;
}

/* V45 – Responsive Check: Veranstaltungen */
@media (min-width:821px) and (max-width:1100px){
  .event-feature{
    grid-template-columns:minmax(0,42%) minmax(0,58%);
  }
  .event-card{
    padding:34px 30px;
  }
  .event-facts{
    grid-template-columns:1fr 1fr;
  }
  .fact:nth-child(2){
    border-right:0;
  }
  .fact:last-child{
    grid-column:1 / -1;
    border-top:1px solid rgba(255,255,255,.14);
  }
}
@media (max-width:620px){
  .offer-line,
  .offer-line:first-of-type,
  .offer-line:nth-of-type(2){
    grid-template-columns:1fr !important;
    row-gap:3px !important;
  }
  .offer-price{
    grid-column:1 !important;
    justify-self:start !important;
    white-space:normal !important;
  }
  .offer-title,
  .offer-flatrate,
  .offer-or,
  .offer-detail{
    grid-column:1 !important;
    justify-self:start !important;
    text-align:left !important;
    margin-left:0 !important;
  }
  .event-card{
    padding-left:20px;
    padding-right:20px;
  }
  .event-statement br,
  .event-copy br{
    display:none;
  }
}
@media (max-width:390px){
  .fact strong{
    font-size:.9rem;
  }
  .signup-btn{
    font-size:.92rem !important;
  }
}
