.group-page { padding-top: 74px; background: linear-gradient(135deg,#cde2df,#f0e5d3); }
.group-hero { color: #fff8e9; background: linear-gradient(90deg,#052a40 8%,rgba(5,42,64,.98) 32%,rgba(5,42,64,.73) 56%,rgba(5,42,64,.08) 84%),url("assets/ibiza-essence-giessen-garnelen-rotwein.jpg") center 51% / cover; }
.group-hero-inner, .group-shell { max-width: 1220px; margin: auto; padding-inline: clamp(20px,5vw,70px); }
.group-hero-inner { padding-block: clamp(55px,7vw,110px); }
.group-hero h1 { font-size: clamp(2.55rem,6.1vw,6.2rem); line-height: 1.06; }
.group-hero h1 em { color: #ecdaaa; display: block; font-family: Georgia,serif; font-weight: 400; }
.group-hero-inner > p:not(.section-label) { max-width: 41ch; margin-top: 24px; }
.group-actions .button { gap: 10px; }
.group-actions a:not(.button) { font-size: .87rem; }
.group-shell { padding-bottom: 64px; }
.group-jumps {
  display: grid;
  grid-template-columns: repeat(5, minmax(0,1fr));
  align-items: stretch;
  gap: 1px;
  margin: clamp(20px,3vw,40px) 0;
  padding: 1px;
  background: #c8c2af;
  border-radius: 8px;
  box-shadow: 0 8px 22px #123c4910;
}
.group-jumps a {
  position: relative;
  display: grid;
  align-content: center;
  gap: 7px;
  padding: 18px clamp(12px,1.6vw,22px);
  background: #fbf5e9;
  color: var(--navy);
  text-decoration: none;
  transition: background-color .16s, color .16s;
}
.group-jumps a:first-child { border-radius: 7px 0 0 7px; }
.group-jumps a:last-child { border-radius: 0 7px 7px 0; }
.jump-name { font: 500 clamp(1.08rem,1.6vw,1.45rem)/1.2 "Playfair Display",Georgia,serif; }
.jump-price { font-size: .88rem; font-weight: 700; }
.jump-price small { font-size: .7rem; font-weight: 400; }
.jump-arrow { position: absolute; right: 12px; bottom: 16px; color: #886722; }
.group-jumps a:is(:hover,:focus-visible) { background: #10495a; color: #fff6e4; }
.group-jumps a:is(:hover,:focus-visible) .jump-arrow { color: #edd79d; }
@media (max-width: 840px) {
  .group-jumps { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .group-jumps a { padding: 12px 14px; }
  .group-jumps a:first-child { border-radius: 7px 0 0 0; }
  .group-jumps a:nth-child(2) { border-radius: 0 7px 0 0; }
  .group-jumps a:last-child { grid-column: 1 / -1; border-radius: 0 0 7px 7px; }
}
.group-menu { background: #fbf3e4; display: grid; grid-template-columns: minmax(0,.78fr) minmax(0,1.5fr); margin: 0 0 30px; border-radius: 6px; overflow: hidden; box-shadow: 0 10px 35px #143e4b18; }
.menu-heading { container-type: inline-size; padding: clamp(24px,4vw,56px); background: linear-gradient(145deg,#062d49,#145768); color: #fff7e5; }
.group-menu:nth-of-type(even) .menu-heading { background: linear-gradient(145deg,#124c53,#246859); }
.menu-heading p { color: #edd79d; letter-spacing: .15em; text-transform: uppercase; font-size: .72rem; font-weight: bold; }
.menu-heading h2 { color: inherit; font-size: clamp(1.5rem, 16cqi, 4rem); overflow-wrap: anywhere; margin: 14px 0 26px; }
.menu-heading span { display: inline-block; padding-top: 16px; border-top: 1px solid #c1a766; font-size: .85rem; }
.menu-heading strong { font: 500 1.85rem "Playfair Display",Georgia,serif; margin-right: 5px; }
.group-menu dl { margin: 0; padding: clamp(24px,3.5vw,46px); }
.group-menu dt { font: 600 1.22rem "Playfair Display",Georgia,serif; margin: 16px 0 4px; color: #174c58; }
.group-menu dt:first-child { margin-top: 0; }
.group-menu dd { line-height: 1.6; color: #34454a; }
.group-contact { padding: clamp(26px,5vw,60px); color: #fff7e5; background: #07384c; }
.group-contact h2 { color: inherit; font-size: clamp(2rem,4.5vw,3.8rem); }
.group-contact p a { text-decoration: underline; }
@media (max-width: 720px) {
  .group-hero { background-image: linear-gradient(90deg,#062d46ef,#062d46bc),url("assets/ibiza-essence-giessen-garnelen-rotwein.jpg"); }
  .group-menu { grid-template-columns: 1fr; }
  .menu-heading h2 { margin: 6px 0 10px; }
  .menu-heading p { margin: 0; }
  .menu-heading span { padding-top: 8px; }
}
@media (prefers-reduced-motion: no-preference) {
  .group-hero-inner { animation: group-arrive .55s ease-out; }
  @keyframes group-arrive { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
}

.group-intro {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr);
  align-items: center;
  gap: clamp(24px, 5vw, 72px);
  padding-top: clamp(32px, 5vw, 72px);
}
.group-intro h2 { font-size: clamp(2.2rem, 4vw, 3.8rem); text-wrap: balance; }
.group-intro h3 { font-size: 1.45rem; color: var(--navy); }
.group-intro p { margin: 14px 0 0; }
.group-intro aside { border-left: 3px solid #b19a61; background: #f7f1e5; padding: clamp(20px, 2.6vw, 36px); }
@media (max-width: 800px) {
  .group-intro { grid-template-columns: 1fr; }
}
