/* Homepage-approved panel shared across all standardized carousel pages. */
.hero-carousel[data-standard-hero] .hero-text-box {
  padding:2.5rem 3rem; border-radius:20px; max-width:850px;
}
.hero-carousel[data-standard-hero] .hero-logo { filter:drop-shadow(0 2px 8px rgba(0,0,0,.3)); }
.hero-carousel[data-standard-hero] .hero-badge { background:var(--yellow); color:var(--dark-brown); text-shadow:none; }
.hero-carousel[data-standard-hero] h1.typewriter-headline {
  color:white; text-shadow:2px 2px 8px rgba(0,0,0,.7); min-height:2.4em;
}
.hero-carousel[data-standard-hero] h1 .highlight { color:var(--pink); text-shadow:2px 2px 8px rgba(0,0,0,.7); }
.hero-carousel[data-standard-hero] h1 .highlight-yellow { color:var(--yellow); text-shadow:2px 2px 8px rgba(0,0,0,.7); }
.hero-carousel[data-standard-hero] .hero-description {
  font-size:1.43rem; color:white; font-weight:600; max-width:700px; margin:0 auto 2rem;
  text-shadow:1px 1px 4px rgba(0,0,0,.7);
}
@media(max-width:768px) {
  .hero-carousel[data-standard-hero] .hero-text-box { padding:1.25rem 1rem; margin:0 .5rem; border-radius:15px; }
  .hero-carousel[data-standard-hero] h1.typewriter-headline {
    font-size:1.5rem !important; line-height:1.3; margin-bottom:.5rem;
    height:3.9rem; min-height:3.9rem; max-height:3.9rem; overflow:hidden;
    display:flex; flex-wrap:wrap; align-content:flex-start; justify-content:center;
  }
  .hero-carousel[data-standard-hero] .hero-description { font-size:.95rem !important; line-height:1.5; margin-bottom:1rem; }
  .hero-carousel[data-standard-hero] .hero-badge { font-size:.75rem; padding:.35rem .8rem; margin-bottom:.75rem; }
  .hero-carousel[data-standard-hero] .hero-logo { width:60px; margin-bottom:.75rem; }
  .hero-carousel[data-standard-hero] .hero-buttons {
    display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:10px;
  }
  .hero-carousel[data-standard-hero] .hero-buttons .btn {
    display:flex; align-items:center; justify-content:center;
    width:100%; min-width:0; min-height:55px; padding:10px 9px;
    font-size:16px; line-height:1.2; white-space:nowrap; text-align:center;
  }
}
@media(max-width:480px) {
  .hero-carousel[data-standard-hero] .hero-text-box { padding:1rem .75rem; margin:0 .25rem; }
  .hero-carousel[data-standard-hero] h1.typewriter-headline { font-size:1.3rem !important; height:3.4rem; min-height:3.4rem; max-height:3.4rem; }
  .hero-carousel[data-standard-hero] .hero-description { font-size:.85rem !important; }
}
