/* ============================================================
   PARLAMALAMENT · landing 3 — home "El Parlamalament"
   ============================================================ */

/* Salutació personalitzada (nom + perfil) */
.greeting { padding-block: 34px 6px; }   /* manté el padding-inline del .container */
.greeting h1 { margin: 0; font-size: clamp(1.8rem, 4.2vw, 2.7rem); font-weight: 400; }
.greeting .sub { margin: 6px 0 0; font-size: 1.1rem; color: var(--ink-soft); }

/* Graella: barra lateral de funcions + contingut principal */
.home-layout {
  display: grid; grid-template-columns: 230px 1fr; gap: var(--space-4);
  padding-top: var(--space-3);
}
/* Rètol de secció (majúscules amb filet), compartit per sidebar i òrgans */
.sidebar h2, .organs h2 {
  margin: 0 0 12px; padding-bottom: 8px;
  font-size: .76rem; text-transform: uppercase; letter-spacing: .08em;
  color: var(--ink-soft);
  border-bottom: 1px solid var(--line);
}
.sidebar ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; }
.sidebar a {
  display: block; padding: 7px 10px;
  font-size: .98rem; color: var(--ink); text-decoration: none;
  border-left: 3px solid transparent;
}
.sidebar a:hover { color: var(--red); background: var(--gray-bg); border-left-color: var(--red); }
.sidebar a.soon { color: var(--ink-soft); }                                   /* secció sense pàgina */
.sidebar a[aria-current="page"] { color: var(--red); font-weight: 600; border-left-color: var(--red); }

.home-main { min-width: 0; }

/* Manifest (les 3 frases "El Parlamalament representa…") */
.manifest { margin: 0 0 var(--space-3); }
.manifest p {
  margin: 0 0 10px; padding-left: 16px;
  font-size: 1.05rem;
  border-left: 4px solid var(--red);
}

/* Carrusel d'imatges (autoplay + fletxes + punts; els controls s'amaguen amb 1 sola imatge) */
.carousel {
  position: relative; width: 100%;
  height: clamp(320px, 42vw, 540px);
  overflow: hidden; background: #111;
}
.carousel-track { position: absolute; inset: 0; }
.slide {
  position: absolute; inset: 0;
  opacity: 0; transition: opacity .5s ease;
}
.slide.active { opacity: 1; }
.slide img { width: 100%; height: 100%; object-fit: cover; object-position: center 45%; }
.carousel-btn {
  position: absolute; top: 50%; transform: translateY(-50%);
  z-index: 3;
  width: 44px; height: 44px;
  display: grid; place-items: center;
  font-size: 22px; color: #111;
  cursor: pointer; border: 0; background: rgba(255,255,255,.85);
}
.carousel-btn:hover { background: #fff; }
.carousel-btn.prev { left: 10px; }
.carousel-btn.next { right: 10px; }
.carousel-dots {
  position: absolute; bottom: 10px; left: 0; right: 0; z-index: 3;
  display: flex; justify-content: center; gap: 8px;
}
.carousel-dots button {
  width: 10px; height: 10px; border-radius: 50%;
  cursor: pointer; border: 0; background: rgba(255,255,255,.5);
}
.carousel-dots button.active { background: #fff; }

.home-cta { display: flex; flex-wrap: wrap; gap: 12px; justify-content: flex-end; margin-top: var(--space-3); }

/* Òrgans executius (els 4 Ministeris amb les seves sigles) */
.organs { margin-top: var(--space-5); }
.organs h2 { margin-bottom: 16px; }   /* només difereix en el marge inferior */
.organs-list {
  list-style: none; margin: 0; padding: 0;
  display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px;
}
.organs-list li { display: flex; align-items: center; gap: 12px; font-size: 1rem; }
.organs-list a { display: flex; align-items: center; gap: 12px; color: var(--ink); text-decoration: none; }
.organs-list a:hover { color: var(--red); }
.organs-list a:hover .sigla { background: var(--red-dark); }
.organs-list .sigla {
  flex: none; min-width: 50px;
  padding: 5px 8px; text-align: center; letter-spacing: .04em;
  font-size: .8rem; font-weight: 700;
  color: #fff; background: var(--red);
}

@media (max-width: 880px) {
  .home-layout { grid-template-columns: 1fr; }
  .sidebar { order: 2; }
}
@media (max-width: 600px) {
  .organs-list { grid-template-columns: 1fr; }
}
