/* =========================================================
   ARENA HOSTEL HAMBURG - GLOBAL WEBSITE STYLE
========================================================= */

.arena-grid,
.arena-contact-grid,
.arena-privacy-grid,
.arena-legal-grid,
.arena-rules-grid,
.arena-feature-grid,
.arena-green-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
  gap:30px;
}

.arena-contact-page,
.arena-privacy-page,
.arena-legal-page,
.arena-rules-page,
.arena-about-page{
  max-width:1200px;
  margin:0 auto;
  padding:30px 20px 80px;
}

.arena-contact-hero,
.arena-privacy-hero,
.arena-legal-hero,
.arena-rules-hero,
.arena-about-hero{
  background:linear-gradient(135deg,#111827,#1f2937);
  color:white;
  padding:50px;
  border-radius:30px;
  margin-bottom:40px;
  box-shadow:0 18px 45px rgba(0,0,0,0.16);
}

.arena-contact-badge,
.arena-privacy-badge,
.arena-legal-badge,
.arena-rules-badge,
.arena-about-badge{
  display:inline-block;
  background:rgba(255,255,255,0.15);
  padding:8px 14px;
  border-radius:999px;
  font-size:14px;
  font-weight:700;
  margin-bottom:18px;
}

.arena-contact-hero h1,
.arena-privacy-hero h1,
.arena-legal-hero h1,
.arena-rules-hero h1,
.arena-about-hero h1{
  font-size:48px;
  margin:0 0 16px;
  color:white;
  line-height:1.2;
}

.arena-contact-hero p,
.arena-privacy-hero p,
.arena-legal-hero p,
.arena-rules-hero p,
.arena-about-hero p{
  font-size:20px;
  line-height:1.7;
  max-width:850px;
  color:rgba(255,255,255,0.92);
  margin:0;
}

.arena-card,
.arena-contact-card,
.arena-privacy-card,
.arena-legal-card,
.arena-rules-card,
.arena-feature-card,
.arena-form-card,
.arena-map-card,
.arena-about-text,
.arena-about-cta{
  background:#ffffff;
  border-radius:26px;
  overflow:hidden;
  border:1px solid #e5e7eb;
  box-shadow:0 12px 35px rgba(0,0,0,0.08);
}

.arena-form-card,
.arena-contact-card,
.arena-rules-card,
.arena-feature-card,
.arena-about-text,
.arena-about-cta{
  padding:34px;
}

.arena-card:hover,
.arena-feature-card:hover{
  transform:translateY(-6px);
  transition:0.25s ease;
  box-shadow:0 20px 45px rgba(0,0,0,0.14);
}

.arena-contact-card h2,
.arena-rules-card h2,
.arena-feature-card h3,
.arena-about-text h2,
.arena-about-cta h2,
.arena-privacy-card h2,
.arena-legal-card h2{
  font-size:30px;
  margin:0 0 20px;
  color:#111827;
  line-height:1.25;
}

.arena-contact-card p,
.arena-rules-card p,
.arena-feature-card p,
.arena-about-text p,
.arena-about-cta p,
.arena-privacy-card p,
.arena-legal-card p{
  font-size:18px;
  line-height:1.75;
  color:#4b5563;
  margin:0 0 22px;
}

.arena-contact-grid{
  display:grid;
  grid-template-columns:1.1fr 0.9fr;
  gap:30px;
  align-items:start;
}

.arena-about-intro{
  display:grid;
  grid-template-columns:1.4fr 0.9fr;
  gap:34px;
  margin-bottom:40px;
  align-items:stretch;
}

.arena-about-image{
  border-radius:26px;
  overflow:hidden;
  min-height:420px;
  background:#f3f4f6;
  border:1px solid #e5e7eb;
  box-shadow:0 12px 35px rgba(0,0,0,0.08);
}

.arena-about-image img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center top;
}

.arena-feature-grid{
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  margin:40px 0;
}

.arena-feature-card h3{
  font-size:24px;
}

.arena-feature-card p{
  font-size:17px;
}

.arena-green-box{
  background:linear-gradient(135deg,#064e3b,#065f46);
  color:white;
  border-radius:26px;
  padding:34px;
  margin:40px 0;
  box-shadow:0 12px 35px rgba(0,0,0,0.08);
}

.arena-green-box h2{
  color:white;
  font-size:30px;
  margin-bottom:18px;
}

.arena-green-box p{
  color:rgba(255,255,255,0.92);
  font-size:18px;
  line-height:1.75;
}

.arena-green-item{
  background:rgba(255,255,255,0.12);
  border:1px solid rgba(255,255,255,0.18);
  border-radius:18px;
  padding:20px;
  color:white;
}

.arena-highlight,
.arena-contact-note,
.arena-rules-highlight{
  background:#fff7ed;
  border-left:6px solid #f59e0b;
  padding:18px;
  border-radius:14px;
  margin:20px 0;
  line-height:1.7;
  color:#4b5563;
}

.arena-rules-warning{
  background:#fef2f2;
  border-left:6px solid #dc2626;
  padding:18px;
  border-radius:14px;
  margin-top:20px;
  line-height:1.7;
  color:#7f1d1d;
}

.arena-link{
  color:#f59e0b;
  font-weight:700;
  text-decoration:none;
}

.arena-link:hover{
  text-decoration:underline;
}

a.arena-inline-link{
  all:unset !important;
  display:inline !important;
  color:#f59e0b !important;
  font-weight:700 !important;
  cursor:pointer !important;
  text-decoration:none !important;
}

a.arena-inline-link:hover{
  text-decoration:underline !important;
}

.arena-card-image{
  height:250px;
  background-size:cover;
  background-position:center;
  position:relative;
}

.arena-card-content{
  padding:34px;
}

.arena-card-content h4{
  font-size:30px;
  margin:0 0 18px;
  color:#111827;
}

.arena-card-content p{
  font-size:18px;
  line-height:1.75;
  color:#4b5563;
}

.arena-badge{
  position:absolute;
  top:20px;
  left:20px;
  background:rgba(255,255,255,0.92);
  color:#111827;
  padding:10px 18px;
  border-radius:999px;
  font-size:15px;
  font-weight:800;
}

.arena-contact-buttons,
.arena-about-buttons{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:24px;
}

.arena-contact-buttons a,
.arena-about-buttons a{
  display:inline-block;
  background:#111827;
  color:white !important;
  padding:14px 20px;
  border-radius:999px;
  text-decoration:none !important;
  font-weight:700;
}

.arena-contact-buttons a:hover,
.arena-about-buttons a:hover{
  background:#f59e0b;
  color:#111827 !important;
}

.arena-events-button-wrap{
  display:flex;
  justify-content:center;
  margin-top:40px;
}

.arena-events-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#0f172a;
  color:#ffffff;
  padding:18px 34px;
  border-radius:999px;
  border:none;
  font-size:18px;
  font-weight:700;
  cursor:pointer;
  box-shadow:0 10px 24px rgba(0,0,0,0.12);
}

.arena-events-button:hover{
  background:#f59e0b;
  color:#111827;
}

.arena-booking-steps{
  margin:20px 0 0;
  padding-left:24px;
}

.arena-booking-steps li{
  margin-bottom:16px;
  line-height:1.7;
  color:#4b5563;
  font-size:18px;
}

.arena-times,
.arena-rules-times{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
  margin-top:24px;
}

.arena-times div,
.arena-rules-times div{
  background:#f9fafb;
  border-radius:16px;
  padding:18px;
  text-align:center;
  color:#374151;
}

.arena-form-card iframe{
  width:100%;
  border:none;
  border-radius:22px;
  background:#fff;
}

@media (max-width:900px){

  .arena-contact-grid,
  .arena-about-intro,
  .arena-grid,
  .arena-rules-grid,
  .arena-feature-grid,
  .arena-green-grid{
    grid-template-columns:1fr;
  }

  .arena-contact-hero,
  .arena-privacy-hero,
  .arena-legal-hero,
  .arena-rules-hero,
  .arena-about-hero{
    padding:34px 26px;
  }

  .arena-contact-hero h1,
  .arena-privacy-hero h1,
  .arena-legal-hero h1,
  .arena-rules-hero h1,
  .arena-about-hero h1{
    font-size:36px;
  }

  .arena-contact-hero p,
  .arena-privacy-hero p,
  .arena-legal-hero p,
  .arena-rules-hero p,
  .arena-about-hero p{
    font-size:18px;
  }

  .arena-times,
  .arena-rules-times{
    grid-template-columns:1fr;
  }

  .arena-form-card iframe{
    height:950px !important;
  }

  .arena-about-image{
    min-height:260px;
  }

}