/* =========================
   NURIA TOURS — GROUPS
========================= */
/* =========================
   NURIA TOURS — GROUPS
========================= */

/* HERO */

.nt-group-hero{
  position:relative;
  min-height:75vh;
  padding:90px 0 70px;
  display:flex;
  align-items:center;

  background:
    linear-gradient(
      rgba(10,15,25,.60),
      rgba(10,15,25,.60)
    ),
    url('/assets/img/groups/group-experience.webp');

  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  border-bottom:1px solid rgba(255,255,255,.08);
}

.nt-group-hero h1,
.nt-group-hero .nt-kicker{
  color:#ffffff;
}

.nt-group-hero h1{
  font-size:clamp(2.2rem, 4vw, 3.8rem);
  line-height:1.15;
}

.nt-group-hero p{
  color:rgba(255,255,255,.84);
}

/* SIDE CARD */

.nt-group-sidecard{
  background:rgba(255,255,255,.94);
  backdrop-filter:blur(8px);
  border:1px solid rgba(255,255,255,.25);
  border-radius:22px;
  box-shadow:0 18px 45px rgba(0,0,0,.18);
}

/* BADGES */

.nt-group-badge{
  background:rgba(255,255,255,.12);
  color:#fff;
  border:1px solid rgba(255,255,255,.22);
  border-radius:999px;
  padding:8px 14px;
  font-size:.9rem;
}

/* BUTTONS */

.nt-group-outline{
  border-color:rgba(255,255,255,.55);
  color:#fff;
}

.nt-group-outline:hover{
  background:#fff;
  color:#0f172a;
}

.btn-brand{
  background:#c21d1d;
  border-color:#c21d1d;
  border-radius:14px;
  padding:.85rem 1rem;
}

.btn-brand:hover{
  filter:brightness(.95);
}

/* TRUST NOTE */

.trust-note{
  border-left:4px solid #c21d1d;
  background:rgba(199,205,214,.18);
  padding:14px 16px;
  border-radius:14px;
}

/* PAGE TYPOGRAPHY */

.nt-page-title{
  font-size:clamp(2.4rem, 5vw, 4rem);
  font-weight:700;
  color:#0f172a;
  letter-spacing:-0.03em;
  margin:14px 0 18px;
}

.nt-page-subtitle{
  max-width:780px;
  margin:0 auto;
  color:#64748b;
  font-size:1.08rem;
  line-height:1.8;
}

/* SECTIONS */

.nt-groups-overview{
  background:#ffffff;
}

.nt-groups-types{
  background:#ffffff;
}

.nt-groups-planning{
  background:#f7f7f5;
  border-top:1px solid rgba(15,23,42,.06);
  border-bottom:1px solid rgba(15,23,42,.06);
}

/* MOBILE */

@media (max-width:768px){

  .nt-group-hero{
    min-height:auto;
    padding:70px 0 55px;
  }

  .nt-group-hero h1{
    font-size:2.2rem;
  }

  .nt-group-sidecard{
    margin-top:24px;
  }

  .nt-group-badge{
    font-size:.82rem;
  }

  .nt-group-hero .btn{
    width:100%;
  }

}