/* =========================
   7. BUTTONS
========================= */

.cta-link {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  min-width: 220px;
  height: 58px;
  padding: 0 28px;
  border-radius: 999px;
  background: #f5c400;
  color: #0b2d40;
  text-decoration: none;
  font-weight: 600;
  transition: .25s ease;
}

.cta-link:hover {
  transform: translateY(-2px);
  opacity: .92;
  color: #071923;
}

.load-more-btn {
  height: 46px;
  padding: 0 26px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.10);
  color: var(--panea-white);
  font-size: 13px;
  letter-spacing: .4px;
  align-items: center;
   background:transparent;
  border:1px solid #f1c54b;
  transition:.3s ease;
}

.load-more-btn:hover {
  background: var(--panea-yellow);
  color: #0b1f26;
}


/* =========================
   SLIDER WRAPPER
========================= */

.slider-wrapper{
  position:relative;
}

/* =========================
   SLIDER
========================= */

.slider{
  display:flex;
  gap:24px;
  overflow-x:auto;
  scroll-behavior:smooth;
  scrollbar-width:none;
  padding-bottom:10px;
}

.slider::-webkit-scrollbar{
  display:none;
}

/* =========================
   SLIDE ITEM
========================= */

.slide-item{
  min-width:320px;
  flex:0 0 320px;
}

/* =========================
   CARD
========================= */

.slide-card{
  display:block;
  width:100%;
  border-radius:24px;
  overflow:hidden;
  background:#132e3a;
  transition:transform .3s ease;
}

.slide-card:hover{
  transform:translateY(-6px);
}

/* =========================
   IMAGE
========================= */

.slide-card img{
  width:100%;
  height:420px;
  object-fit:cover;
  display:block;
}

/* =========================
   CARD INFO
========================= */

.slide-info{
  padding-top:18px;
}

.slide-info h3{
  font-family:'Playfair Display', serif;
  font-size:1.35rem;
  color:#f4efe8;
  margin-bottom:8px;
  line-height:1.2;
}

.film-director{
  font-size:.95rem;
  color:rgba(255,255,255,.65);
  margin-bottom:10px;
  font-family:'Inter', sans-serif;
}

.film-stars{
  color:var(--panea-yellow);
  letter-spacing:2px;
  font-size:1rem;
}

/* =========================
   SLIDER ARROWS
========================= */

.slider-arrows{
  position:absolute;
  top:-75px;
  right:0;
  display:flex;
  gap:12px;
  z-index:5;
}

.slider-arrow{

  width:48px;

  height:48px;

  border-radius:50%;

  border:none;

  background:var(--panea-yellow);

  color:#0d2e40;

  font-size:1rem;

  cursor:pointer;

  transition:.25s ease;

}

.slider-arrow:hover{

  transform:translateY(-2px);

  opacity:.92;

}

/* =========================
   SPLASH SCREEN
========================= */

#splash{

  position:fixed;

  inset:0;

  width:100%;

  height:100vh;

  background:var(--panea-yellow);

  z-index:99999;

  display:flex;

  flex-direction:column;

  align-items:center;

  justify-content:center;

  text-align:center;
}

/* LOGO */

#splash img{

  width:350px;
  
  margin-bottom:38px;
}
/* =========================
   LOADING BAR
========================= */
.loader-screen {
  background: #fdc103;
}

.loader{

  width:220px;

  height:6px;

  border-radius:999px;

  background:
    rgba(0,0,0,.12);

  overflow:hidden;

  position:relative;
  margin-bottom:24px;
}

/* TESTO LOADER */

.loader-text {

  color: #000000;

}

/* BARRA ESTERNA */

.loader-bar {

  background: rgba(0,0,0,0.12);

}

/* RIEMPIMENTO */

.loader-fill {

  background: linear-gradient(
    90deg,
    #000000,
    #193c4e
  );

}

.loader-bar::after {

  background: #000000;

}
.load-more-wrapper{
  display:flex;
  justify-content:center;
  margin-top:4rem;
}

/* INNER BAR */

.loader::before{

  content:"";

  position:absolute;

  top:0;

  left:-40%;

  width:40%;

  height:100%;

  background:var(--panea-text);

  border-radius:999px;

  animation:
    loadingBar 1.1s ease-in-out infinite;
}

/* TEXT */

#splash p{

  font-size:16px;

  font-weight:700;

  letter-spacing:4px;

  text-transform:uppercase;

  color:var(--panea-text);
}

/* =========================
   ANIMATION
========================= */

@keyframes loadingBar{

  0%{
    left:-40%;
  }

  100%{
    left:100%;
  }

}


/* =========================
   CARD
========================= */

.card {

  padding: 38px;

  border-radius: 30px;

  background: rgba(255,255,255,0.03);

  border: 1px solid rgba(255,255,255,0.08);

  backdrop-filter: blur(14px);

  -webkit-backdrop-filter: blur(14px);

  transition: 0.3s ease;

  min-height: 320px;

  display: flex;

  flex-direction: column;

  justify-content: space-between;

}

.card:hover {

  transform: translateY(-6px);

  background: rgba(255,255,255,0.05);

  border: 1px solid rgba(255,255,255,0.14);

}

/* =========================
   CARD TEXT
========================= */

.card h3 {

  font-size: 0.78rem;

  letter-spacing: 2px;

  text-transform: uppercase;

  color: #f0b94b;

  margin-bottom: 18px;

  font-family: 'Inter', sans-serif;

}

.card h2 {

  font-size: 2.2rem;

  line-height: 0.95;

  margin-bottom: 24px;

  color: #f5f1e8;

  font-family: 'Playfair Display', serif;

}

.card p {

  font-size: 1rem;

  line-height: 1.7;

  color: rgba(255,255,255,0.78);

  font-family: 'Inter', sans-serif;

}

/* =========================
   5. HEADER
========================= */

.header {
  width: 100%;
  padding-top: 28px;
  padding-bottom: 28px;
}

.menu {
  display: flex;
  align-items: center;
  gap: 18px;
  margin-top: 12px;
}

.menu a {
  font-size: 18px;
  letter-spacing: 1px;
  color: var(--panea-white);
  position: relative;
  padding-bottom: 4px;
  transition: color .25s ease;
}

.menu a:hover,
.menu a.active {
  color: var(--panea-yellow);
}

.menu a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  height: 1px;
  background: var(--panea-yellow);
  transition: width .25s ease;
}

.menu a:hover::after,
.menu a.active::after {
  width: 100%;
}


.menu-toggle{

  display:none;

}

/* HAMBURGER */

.menu-toggle span{

  display:block;

  width:28px;
  height:2px;

  background:#f4efe8;

  margin:6px 0;

  border-radius:20px;

}

/* =========================
   GLOBAL BUTTON STYLE
========================= */

/* BOTTONI FILTRI ATTIVI */

.filter-btn.active{

  background:var(--panea-yellow);
  color:#0b1f26;
}

/* =========================
   NEWSLETTER
========================= */

.newsletter{
margin-top:-15px !important;
  padding-top:50px !important;
  text-align:center;

}

.newsletter-inner{

  max-width:700px;

  margin:0 auto;

}

.newsletter-kicker{

  font-size:.75rem;

  letter-spacing:.25em;

  text-transform:uppercase;

  color:var(--panea-yellow);

  margin-bottom:20px;

}

.newsletter h2{

  font-family:"Playfair Display", serif;

  font-size:clamp(2.5rem,6vw,4rem);

  line-height:1;

  color:var(--panea-white);

  margin-bottom:24px;

}

.newsletter-sub{

  font-size:1.05rem;

  line-height:1.8;

  color:rgba(255,255,255,.72);

  margin-bottom:40px;

}

.newsletter-btn{

  display:inline-flex;

  align-items:center;

  justify-content:center;

  padding:18px 36px;

  border-radius:999px;

  background:var(--panea-yellow);

  color:#0d2e40;

  font-weight:700;

  text-decoration:none;

  transition:.25s ease;

}

.newsletter-btn:hover{

  transform:translateY(-2px);

}

/* =========================
   FOOTER
========================= */

.credits{

  padding:30px 20px 30px;

  text-align:center;

}

.credits-inner{

  max-width:700px;

  margin:0 auto;

}

.credits-label{

  font-size:.7rem;

  letter-spacing:.25em;

  text-transform:uppercase;

  color:rgba(255,255,255,.45);

  margin-top:28px;

  margin-bottom:10px;

}

.credits-name{

  font-family:"Playfair Display", serif;

  font-size:1.4rem;

  color:var(--panea-white);

}


