/*
Theme Name: Teatro Popolare
Theme URI: https://teatrogruppopopolare.it
Author: Your Name
Author URI: https://yourwebsite.com
Description: Tema WordPress per TeatroGruppo Popolare
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: teatro-popolare
Tags: teatro, bootstrap, responsive
*/

/* General Styles */
body {
  font-family: 'PT Sans', sans-serif;
}

/* Top Bar */
.top-bar {
  font-size: 0.8rem;
}

/* Logo */
.logo img {
  max-height: 60px;
}

/* Social Icons */
.social-icons {
  font-size: 0.8rem;
}

.social-icons a {
  color: #333;
  text-decoration: none;
}

.social-icons a:hover {
  color: #4caf50;
}

.top-bar .navbar-nav,
.top-bar .d-flex {
    list-style: none;
    padding-left: 0;
    margin-bottom: 0;
}

.top-bar .navbar-nav li,
.top-bar .d-flex li {
    display: inline-block;
}

.top-bar .navbar-nav a,
.top-bar .d-flex a {
    color: #fff !important;
    text-decoration: none;
    font-size: 0.875rem;
}

.top-bar .navbar-nav a:hover,
.top-bar .d-flex a:hover {
    text-decoration: underline;
}




/* Navigation */
.navbar .nav-link {
  font-size: 0.9rem;
  font-weight: 500;
  padding: 0.5rem 0.8rem !important;
}

/* Hero Slider */
.hero-slide {
  padding: 3rem 0;
  position: relative;
}

.bg-teatro {
  background-color: #e74c3c;
  background-image: linear-gradient(to right, #e74c3c, #e67e22);
}

.hero-content {
  padding: 2rem 0;
}

.hero-title h1 {
  font-size: 3.5rem;
  font-weight: 700;
  line-height: 1.1;
}

.character-img {
  max-height: 300px;
}

/* Mission Section */
.mission h2,
.mission h3 {
  color: #4caf50;
  font-weight: 600;
}

/* Cards */
/*
.card {
  border: none;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  transition: transform 0.3s;
}

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

.card-title {
  color: #4caf50;
  font-weight: 600;
}
*/

/* Buttons */
/*
.btn-success {
  background-color: #4caf50;
  border-color: #4caf50;
  font-size: 0.85rem;
  padding: 0.5rem 1rem;
}

.btn-success:hover {
  background-color: #388e3c;
  border-color: #388e3c;
}

.btn-outline-success {
  color: #4caf50;
  border-color: #4caf50;
  font-size: 0.8rem;
}

.btn-outline-success:hover {
  background-color: #4caf50;
  color: white;
}
*/

/* Quote Section */
.quote h3 {
  font-style: italic;
  font-weight: 600;
}

/* WordPress Specific */
.wp-caption {
  max-width: 100%;
  height: auto;
}

.wp-caption-text {
  font-style: italic;
  font-size: 0.9rem;
}

.gallery-caption {
  font-size: 0.9rem;
}

.bypostauthor {
  background: rgba(0, 0, 0, 0.03);
}

.alignright {
  float: right;
  margin: 0 0 1em 1em;
}

.alignleft {
  float: left;
  margin: 0 1em 1em 0;
}

.aligncenter {
  display: block;
  margin: 0em auto;
}

/* Single Post */
.single-post .entry-header {
  margin-bottom: 2rem;
}

.single-post .entry-title {
  font-size: 2.5rem;
  color: #4caf50;
}

.single-post .entry-meta {
  font-size: 0.9rem;
  color: #666;
  margin-bottom: 1rem;
}

.single-post .entry-content {
  font-size: 1.1rem;
  line-height: 1.8;
}

/* Archive Pages */

.archive h3 a {
	text-decoration: none;
	color: none;
}

.archive-title {
  font-size: 2rem;
  color: #4caf50;
  margin-bottom: 2rem;
}

.archive-description {
  margin-bottom: 2rem;
}

/* Comments */
.comments-area {
  margin-top: 3rem;
  padding-top: 2rem;
  border-top: 1px solid #eee;
}

.comment-list {
  list-style: none;
  padding: 0;
}

.comment {
  padding: 1rem;
  margin-bottom: 1rem;
  background-color: #f9f9f9;
  border-radius: 5px;
}

/* Widgets */
.widget {
  margin-bottom: 2rem;
}

.widget-title {
  font-size: 1.2rem;
  color: #4caf50;
  margin-bottom: 1rem;
}

/* Responsive Adjustments */
@media (max-width: 768px) {
  .hero-title h1 {
    font-size: 2.5rem;
  }

  .navbar .nav-link {
    padding: 0.5rem !important;
  }

  .card {
    margin-bottom: 1.5rem;
  }
}

/* Eventi */
.evento-date {
  font-size: 0.9rem;
  color: #666;
  margin-bottom: 0.5rem;
}

.evento-location {
  font-size: 0.9rem;
  font-weight: 600;
  margin-bottom: 1rem;
}

.evento-meta {
  display: flex;
  justify-content: space-between;
  border-top: 1px solid #eee;
  padding-top: 1rem;
  margin-top: 2rem;
  font-size: 0.85rem;
  color: #666;
}

/* ---------------------
	SUPERFISH MENU
--------------------- */

.sf-menu {
	width: 90%;
}

.sf-menu li {
	background-color: #f8f9fa !important;
}

.sf-menu li a {
	color: #000;
	border: 0px !important;
}

.sf-arrows .sf-with-ul:after {
	border-top-color: #CCC;
}

/* Nascondi i sotto-menu su mobile */
@media (max-width: 991.98px) {
  .sf-menu ul {
    display: none !important;
    position: static !important;
    opacity: 1 !important;
    visibility: visible !important;
    background: none !important;
    box-shadow: none !important;
    padding-left: 1rem;
  }

  .sf-menu li:hover > ul,
  .sf-menu li.sfHover > ul,
  .sf-menu li.open > ul {
    display: block !important;
  }

  .sf-menu li a {
    display: block;
    width: 100%;
  }

  .navbar-nav li.menu-item-has-children > a::after {
    font-family: 'Font Awesome 5 Free'; /* Oppure 6 */
    font-weight: 900; /* Per solid icons */
    content: '\f078'; /* caret-down */
    float: right;
    margin-left: 0.5rem;
    transition: transform 0.3s ease;
  }

  .navbar-nav li.menu-item-has-children.open > a::after {
    content: '\f077'; /* caret-up */
  }
}

/* Correzioni generali */
.sf-menu ul {
  z-index: 1000;
}

.sf-menu li {
  position: relative;
}

.sf-menu li ul {
  background-color: #fff;
  border: 1px solid #ddd;
}

.sf-menu li li a {
  padding-left: 1.5rem;
}

