/* ============================================================
   KÖRÚTI SZÍNHÁZ - TELJES TISZTÍTOTT CSS
   ============================================================ */

/* === ALAP === */
.main-page,
body {
  background-color: #fdf3dc;
  font-family: LibreBaskerville, Arial, Helvetica, sans-serif;
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
	font-family: LibreBaskerville, Arial, Helvetica, sans-serif;
}

.mt-30 {
	margin-top: 30px;
}

.pb-30 {
	padding-bottom: 30px;
}

/* === FEJLÉC === */
header.header-default .header-main-inner .branding {
	width: 285px !important;
}

header .site-branding-logo {
	padding: 30px 0 15px;
  max-width: 285px !important;
}

header.header-default {
  background: #fceac6 !important;
  height: 200px !important; /* JAVÍTVA: hiányzó !important */
}

header.header-default .sticky-wrapper .header-main {
  background: #fceac6 !important;
}

header.header-default .header-main-inner .header-inner {
  height: 200px !important;
  align-items: flex-end !important;
  justify-content: flex-end !important;
  padding-right: 20px !important;
  padding-left: 0 !important;
  display: flex;
}

header.header-default .header-main-inner .header-inner .main-menu {
  margin-bottom: 30px;
  margin-right: 30px;
}

.navigation .gva_menu > li:hover > ul.sub-menu {
	margin-top: -15px;
}

.navigation .gva_menu > li > .sub-menu::after {
	left: 55px;
}

header.header-default .gva-search-region {
  top: unset !important;
  bottom: 56px !important;
  right: 0 !important;
  font-size: 10px;
}

header.header-default .gva-search-region i {
  font-size: 30px;
  color: #060000 !important;
}

header.header-default .gva-search-region .icon {
  color: #fff;
}

/* fejléc topbar háttér */
.topbar {
  background-color: transparent !important;
  background-image: url("/sites/default/files/gbb-uploads/logo_hatter.jpg") !important;
  background-repeat: repeat !important;
  background-position: center center !important;
  background-size: auto !important;
}

/* menü háttér */
header .header-main {
  padding: 0;
}

.gva-navigation {
  margin-top: -10px;
}

/* fejléc jegyvásárlás + social blokk */
#block-daudo-subtheme-fejlecjegyvasarlasessocial {
  position: absolute;
  top: 0;
  right: 0;
}

#block-daudo-subtheme-fejlecjegyvasarlasessocial .gsc-button {
  background: #f9165b;
  color: #ffffff;
  border-color: #f9165b;
  font-size: 16px;
  padding: 14px 38px;
}

.socials a i.fa-youtube,
.socials a i.fa-instagram,
.socials a i.fa-facebook-square,
.socials a i.fa-facebook {
	background: #fceac6;
  color: #f9165b !important;
  border: 2px solid #f9165b;
  width: 56px;
  height: 56px;
}

.fa-youtube::before,
.fa-instagram::before,
.fa-facebook::before {
	font-size: 38px;
  line-height: 53px;
}

/* === NAVIGÁCIÓ === */
.navigation .gva_menu > li.menu-item > a {
	display: flex;
  align-items: center;
  font-size: 20px;
  letter-spacing: 0.06em;
  color: #060000 !important;
  text-transform: uppercase;
  padding: 30px 20px 20px 20px !important;
  font-weight: normal;
}

.navigation .gva_menu > li > a > span {
	padding: 0;
}

.navigation .gva_menu li a .icaret {
	font-size: 12px;
}

.custom-header {
  margin-top: 35px;
  display: flex;
}

.custom-header .social-copyright {
  margin-left: 20px;
}

@media (min-width: 992px) {
  .navigation .gva_menu > li.menu-item--active-trail > a {
    color: #ed2624 !important;
  }
}

/* JAVÍTVA: redundáns and (min-width: 576px) eltávolítva */
@media (min-width: 992px) {
  .navigation .gva_menu > li:hover > a {
    color: #FEC15E;
  }
}

/* mobil menü */
.menu-bar span {
  background-color: #111111;
}

/* === H2 ALAPSTÍLUS === */
h2 {
  margin: 0px;
  padding-top: 10px;
  padding-bottom: 15px;
  padding-left: 0px;
  padding-right: 0px;
  font-size: 40px;
  color: #111111;
  font-weight: normal;
}

/* === FŐOLDAL SZEKCIÓ FEJLÉCEK - GRADIENT === */
.gavias-builder--content .column-content h2,
.gavias-builder--content .column-content-inner > div > h2 {
	background: linear-gradient(to right, #f91958, #DD910A) !important;
  color: white !important;
  text-align: center;
  padding: 15px 30px !important;
  text-transform: uppercase !important;
  letter-spacing: 2px;
  font-size: 1.9rem !important;
  margin: 0 0 20px 0 !important;
  font-weight: normal;
  display: block;
  width: 100%;
  box-sizing: border-box;
}

/* Naptár h2 - NE legyen gradient */
.fc-toolbar h2 {
  background: none !important;
  background-image: none !important;
  color: #333 !important;
  padding: 5px !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  font-size: 18px !important;
  margin: 0 !important;
  display: inline-block !important;
}

/* Lábléc h2 - NE legyen gradient */
#footer h2,
#footer h2.block-title,
.footer-four h2 {
  background: none !important;
  color: #ffffff !important;
  padding: 0 0 10px 0 !important;
  margin: 0 0 15px 0 !important;
  font-size: 16px !important;
  text-transform: uppercase;
  letter-spacing: 1px;
}

/* === LINKEK === */
a:hover, a:focus, a:active {
  outline: none !important;
  color: #dc3545;
  text-decoration: none;
}

.button:hover, .btn:hover, .btn-white:hover, .btn-theme:hover,
.btn-theme-second:hover, .more-link a:hover, .btn-theme-submit:hover {
  color: #fff;
  background: #dc3545;
}

/* === LÁBLÉC === */
#footer {
  color: #fff;
  background: url('/sites/default/files/footer_bg.webp') no-repeat center top;
  background-size: cover;
}

#footer a:hover, #footer a:focus {
  color: #ffc107;
}

.footer-four .post-list-small-2 a {
  color: #000000 !important;
}

#footer .footer-top {
	background: unset;
	padding: 0;
}

#footer .footer-top .container {
	margin-top: -35px;
  background-color: #ce8911;
  position: absolute;
  left: 0;
  right: 0;
}

#footer .footer-top .szinhazi-eloadast-szervez-wrapper {
	padding: 15px 0;
  display: flex;
  flex-direction: row;
}

#footer .footer-top .szinhazi-eloadast-szervez-wrapper img {
	height: 250px;
  width: auto;
}

#footer .footer-top .szinhazi-eloadast-szervez-wrapper .szinhazi-eloadast-szervez-2 {
	flex-grow: 1;
	display: flex;
  flex-direction: column;
  justify-content: center;
}

#footer .footer-top .szinhazi-eloadast-szervez-wrapper .szinhazi-eloadast-szervez-2 .title {
	text-align: center;
  font-size: 30px;
  font-style: italic;
}

#footer .footer-top .szinhazi-eloadast-szervez-wrapper .szinhazi-eloadast-szervez-2 hr {
	margin: 15px 30%;
  height: 0px;
  border: none;
  border-top: 3px solid black;
  border-color: #ffffff;
}

#footer .footer-top .szinhazi-eloadast-szervez-wrapper .szinhazi-eloadast-szervez-2 .subtitle {
	text-align: center;
	font-size: 24px;
	font-style: italic;
}

#footer .footer-top .szinhazi-eloadast-szervez-wrapper .szinhazi-eloadast-szervez-2 .requests-an-offer {
	text-align: center;
  margin-top: 10px;
}

#footer .footer-top .szinhazi-eloadast-szervez-wrapper .szinhazi-eloadast-szervez-2 .requests-an-offer a {
	display: inline-block !important;
  background: transparent !important;
  background-color: transparent !important;
  color: #000 !important;
  border: 2px solid #000 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 6px 14px !important;
  width: auto !important;
  min-width: 0 !important;
  height: auto !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  text-align: center !important;
  text-decoration: none !important;
  text-transform: none !important;
}

#footer .footer-top .szinhazi-eloadast-szervez-wrapper .szinhazi-eloadast-szervez-2 .link-to-repertoire {
	text-align: center;
  margin-top: 10px;
  font-size: 20px;
  font-style: italic;
  text-decoration: underline;
  color: #000 !important;
}

#footer .footer-top .szinhazi-eloadast-szervez-wrapper .szinhazi-eloadast-szervez-2 .link-to-repertoire a {
	color: #000 !important;
}

#footer .footer-center {
	padding-top: 900px;
}

.contact-info ul li i {
  color: #eeddbf;
  width: 20px;
  margin-right: 10px;
}

.post-list-small-2 .post-block .post-image {
  width: 100px;
  float: left;
}

.post-list-small-2 .post-block .post-image img {
  height: auto;
  width: 100%;
  margin-top: 5px;
  margin-left: 3px;
}

.post-list-small-2 .post-block .post-title {
  margin: 0;
}

/* === KERESÉS === */
.gva-search-region {
  margin-top: -18px;
  z-index: 9;
}

@media (max-width: 767.98px) {
  .gva-search-region {
    margin-top: -12px;
  }
}

/* === MORZSAÚT === */
.breadcrumb-content-inner .gva-block-breadcrumb .breadcrumb-links {
  display: inline-block;
  background: transparent !important;
}

.breadcrumb-content-inner .gva-block-breadcrumb.text-white .page-title,
.breadcrumb-content-inner .gva-block-breadcrumb.text-light .page-title {
  text-shadow: 1px 0px 1px black, -1px 0px 1px black, 0px 1px 1px black, 0px -1px 1px black;
}

.breadcrumb-content-inner .gva-block-breadcrumb .breadcrumb-links nav.breadcrumb ol li {
  color: transparent;
}

.breadcrumb-content-inner .gva-block-breadcrumb .breadcrumb-links nav.breadcrumb ol li a {
  color: transparent;
}

/* === SAJTÓ / HÍREK LISTA HÁTTÉR === */
.item-list ul li.view-list-item {
  margin: 0 0 30px;
  overflow: hidden;
  list-style-type: none;
  background: #fbf1df;
}

/* === HÍREK KÉP BLOKK === */
.post-style-list .post-block .post-image {
  width: 20%;
  float: left;
}

.post-style-list .post-block .post-content {
  padding-top: 5px;
  width: 80%;
  padding-left: 30px;
  float: left;
}

/* === NAPTÁR === */
.fc-time-grid-event:has(.has-ticket),
.fc-day-grid-event:has(.has-ticket) {
  background-color: #113b3c !important;
  border-color: #113b3c !important;
}

.fc-list-item .fc-event-dot {
  width: 16px;
  height: 16px;
  border-radius: 3px;
}

.fc-list-item:has(.has-ticket) .fc-event-dot {
  background-color: #113b3c !important;
}

.fc-event-container span.fc-title {
  font-size: 14px;
  display: block;
  text-wrap: wrap;
}

.fc-event-container div.fc-location {
  font-size: 11px;
  text-wrap: wrap;
}

@media (max-width: 768px) {
  .fc-event-container span.fc-title {
    font-size: 11px;
  }
  .fc-event-container div.fc-location {
    display: none;
  }
  .js-drupal-fullcalendar button {
    padding: 3px;
  }
  .js-drupal-fullcalendar .fc-toolbar h2 {
    font-size: 18px;
    text-align: center;
  }
  .js-drupal-fullcalendar .fc-toolbar .fc-left {
    display: flex;
  }
  .js-drupal-fullcalendar .fc-toolbar .fc-today-button {
    margin-left: 5px;
  }
}

/* === ELŐADÁS RÉSZLETEK === */
.custom-event-images {
  margin-top: 18px;
}

.custom-event-image h2,
.custom-event-poster h2 {
  font-size: 16px;
  margin-top: 16px;
  padding: 0;
}

.custom-event-image .field__item span:last-child,
.custom-event-poster .field__item span:last-child {
  display: none;
}

.appointment-full a:hover,
.event-full .field--name-field-szineszek a:hover {
  color: #113b3c !important;
}

.appointment-full a {
  font-weight: bold;
}

.event-full .field--name-field-szineszek a {
	font-weight: 600;
	text-transform: uppercase;
	text-align: end;
  text-wrap: nowrap;
}

.event-full .field--name-field-szineszek .field__item {
	text-align: end;
}

.appointment-full a,
.event-full .field--name-field-szineszek a,
.event-full h4 {
  color: #111111 !important;
}

.appointment-full .post-title,
.event-full .post-title {
  font-size: 100px;
  padding: 0;
  font-weight: normal;
}

.appointment-full h4,
.event-full h4 {
	margin-bottom: -25px;
	font-weight: normal;
	font-size: 1.9rem;
}

.appointment-full h6,
.event-full h6 {
	font-weight: normal;
	color: #111111 !important;
	font-size: 1.9rem;
	font-style: italic;
	margin-bottom: 1.5rem;
}

.event-full .event-summary {
	font-weight: normal;
	color: #111111 !important;
	font-size: 1.9rem;
	margin-bottom: 1.5rem;
}

.event-full .bemutato-kartya-belso {
	flex-direction: column;
}

.event-full .bemutato-kartya-belso p {
	color: #111;
  font-weight: 600;
	margin-bottom: 0;
}

.event-full .eloadas-kartya-grid {
	display: flex;
	margin-top: 30px;
	margin-bottom: 40px;
}

.event-full .eloadas-kartya-grid .bemutato-kartya {
	min-height: unset !important;
	max-height: unset !important;
	flex: 1;
}

.event-full .gallery-post {
	width: 100%;
  margin: 0;
}

.event-full .gallery-post .item-image {
	position: relative;
  width: 100%;
  #padding-top: 56.25%;
  padding-top: calc(56.25% + 30px);
}

.event-full .gallery-post .item-image img {
	position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  border: 0;
}

.event-full .item-image img {
	width: 100%;
}

.custom-event-presentation {
  margin-bottom: 18px;
}

.custom-event-cast {
  margin-top: 30px;
  margin-bottom: 30px;
}

.custom-event-cast .field--name-field-szereposztas > .field__item {
	background-image: linear-gradient(to right, #5d5951 33%, rgba(255,255,255,0) 0%);
  background-position: bottom;
  background-size: 10px 3px;
  background-repeat: repeat-x;
  margin-bottom: 10px;
}

.custom-event-cast .paragraph--type--szereposztas-sor {
  display: flex;
  justify-content: space-between;
  padding-bottom: 10px;
}

.custom-event-cast .field--name-field-szerep {
  width: 350px;
  color: #111;
}

@media (max-width: 680px) {
  .custom-event-cast .field--name-field-szerep {
    width: 200px;
  }
  .gallery-post {
    width: 100% !important;
  }
  .gallery-post a.zoomGallery {
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    margin: 0;
  }
}

/* === YOUTUBE / VIDEO === */
.youtube-container {
  position: relative;
  width: 100%;
  padding-top: calc(56.25% + 30px);
  margin-bottom: 0;
}

.youtube-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

/* === GALÉRIA === */
.photoswipe-gallery {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.photoswipe-gallery .field__item {
  margin-right: 5px;
  margin-bottom: 10px;
  margin-left: 5px;
}

/* === TEAM OLDAL === */
.team-single-page .heading {
  font-size: 1px;
}

.team-single-page .team-name .line span.one {
  background: #f08721;
  margin-left: 0;
}

.team-single-page .team-name .line span.three {
  background: #c6b74b;
  margin-right: 0;
}

.team-block.team-v2 .team-content .team-name {
  font-size: 16px;
}

/* === PARTNEREINK === */
.gsc-our-partners .image {
  width: 250px;
  float: left;
}

@media (max-width: 768px) {
  .gsc-our-partners .content-inner {
    width: 100% !important;
    float: none !important;
    padding-left: 0 !important;
  }
  .gsc-our-partners .image {
    width: 100% !important;
    float: none !important;
    display: block;
    margin: 0 auto 1rem auto;
  }
}

/* === WEBFORM === */
.webform-confirmation__message, .webform-confirmation__back {
  margin: 0 0 1em 0;
  color: #259949;
  font-size: x-large;
}

.webform-submission-form .webform-type-radios .form-item {
  float: left;
  width: 115px;
}

.webform-submission-form .webform-type-radios .form-item input {
  height: 25px;
}

.webform-submission-form .webform-type-radios .form-item label {
  text-align: center;
  margin: 0;
}

.webform-submission-form .webform-type-radios legend {
  font-size: 16px;
  font-weight: 700;
  color: #000;
}

.webform-submission-form .webform-actions input {
  margin-bottom: 20px;
  border-radius: 8px;
}

.webform-submission-form .webform-flexbox {
  margin-bottom: 0;
}

.webform-submission-form .form-item input {
  background-color: #F5F5F5;
  border-radius: 8px;
  margin-top: 0.25rem;
  padding-top: 4px;
  padding-bottom: 4px;
}

.webform-submission-form .form-item label.form-required:after {
  content: "\f069";
  font-family: 'Font Awesome 5 Free';
  color: #ED2624;
  font-size: 9px;
  vertical-align: top;
}

/* === EGYÉB WIDGETEK === */
.event-block-2 {
  border-bottom: 1px solid #113b3c;
}

.hide-not-logged {
  display: none !important;
}

body.logged-in .only-logged-in {
  display: inline-block !important;
}

.custom-fixed-background {
  background-image: url('/sites/default/files/gbb-uploads/hatter1900.png');
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
  background-attachment: fixed;
}

.custom-content-background {
  background-image: url('/sites/default/files/gbb-uploads/content_bkgd.jpg');
  background-repeat: repeat;
  background-position: center center;
}

.contact-link {
  background: #53A847;
  color: #fff;
  padding: 30px;
}

.gsc-service-carousel .item .content-inner .title {
  font-weight: 700;
  font-size: 15px;
}

.gsc-heading .sub-title {
  font-size: 12px;
}

.custom-margin-top-extra {
  margin-top: 30px;
}

.custom-gray-background .container-bg {
  background-color: #f6f6f6;
}

.custom-gray-background .container-bg .gsc-icon-box-new {
  margin: 0;
  border: 0;
  padding: 10px 20px;
  min-height: 105px;
}

.custom-gray-background .container-bg .gsc-icon-box-new .desc p {
  margin: 0;
}

.custom-gray-background .container-bg .gsc-icon-box-new .desc span,
.custom-gray-background .container-bg .gsc-icon-box-new .title {
  font-size: 14px !important;
}

.custom-gray-background .container-bg .gsc-icon-box-new .icon-inner {
  width: 60px;
  height: 60px;
  padding-top: 4px;
}

.custom-gray-background .container-bg .custom-link {
  color: #FFFFFF;
}

.custom-gray-background .container-bg .custom-link:hover {
  color: #000000;
}

/* === ESEMÉNY NAPTÁR === */
.custom-esemeny-naptar .fc-button-primary {
  background-color: #53A847;
  border-color: #53A847;
}

.custom-esemeny-naptar .fc-button-group > .fc-button.fc-button-active,
.custom-esemeny-naptar .fc-button-primary:hover {
  background-color: #1b6b36;
  border-color: #1b6b36;
}

.custom-esemeny-naptar table {
  margin-bottom: 0;
}

.custom-esemeny-naptar .fc-day-header {
  background-color: #53A847;
  color: #ffffff;
}

.custom-esemeny-naptar .fc-day-header.fc-sat,
.custom-esemeny-naptar .fc-day-header.fc-sun {
  background-color: #1b6b36;
}

/* === CSILLAGOS FELSOROLÁS === */
.star-bullets {
  list-style: none;
  padding-left: 0;
  margin-left: 0;
}

.star-bullets li {
  position: relative;
  padding-left: 12px;
  margin: 1px 0;
}

.star-bullets li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.55em;
  width: 8px;
  height: 8px;
  background-image: url("/sites/default/files/gbb-uploads/star.png");
  background-repeat: no-repeat;
  background-size: contain;
}

/* === YOUTUBE FEATURED OLDAL === */
.youtube-featured-page {
  max-width: 1600px;
  margin: 0 auto;
  padding: 30px 15px;
}

.youtube-featured-intro {
  background: #f6f6f6;
  border-radius: 12px;
  padding: 25px 25px;
  margin-bottom: 35px;
}

.youtube-featured-intro h1 {
  margin: 0 0 12px;
  font-size: 32px;
  font-weight: 700;
}

.youtube-featured-intro p {
  margin: 0;
  font-size: 16px;
  line-height: 1.6;
  color: #444;
}

.youtube-featured-block {
  background: #ffffff;
  border: 1px solid #e5e5e5;
  border-radius: 12px;
  padding: 22px;
  margin-bottom: 35px;
  box-shadow: 0 6px 18px rgba(0,0,0,0.06);
}

.youtube-featured-block h2 {
  margin: 0 0 8px;
  font-size: 26px;
  font-weight: 700;
}

.youtube-featured-desc {
  margin: 0 0 18px;
  font-size: 16px;
  color: #555;
  line-height: 1.6;
}

.youtube-featured-block .yt-embed {
  position: relative;
  width: 100%;
  overflow: hidden;
  border-radius: 12px;
}

.youtube-featured-block .yt-embed-big {
  padding-top: 62%;
}

.youtube-featured-block .yt-embed iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.koruti-videok {
  max-width: 900px;
  margin: 0 auto;
  padding: 0 16px;
}

.koruti-videok .yt-embed-big {
  position: relative;
  width: 100%;
  padding-bottom: 56.25%;
  height: 0;
  margin: 14px 0 24px;
}

.koruti-videok .yt-embed-big iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  border: 0;
}

@media (max-width: 600px) {
  .koruti-videok {
    padding: 0 12px;
  }
}

.iframe-embed {
  position: relative;
  width: 100%;
  height: 900px;
  overflow: hidden;
  border-radius: 12px;
}

.iframe-embed iframe {
  width: 100%;
  height: 100%;
  border: 0;
}

/* === GALÉRIA OLDAL === */
.gallery-post {
  position: relative;
  display: block;
  width: 400px;
  margin: 0 auto 30px auto;
}

/* === JELMAGYARÁZAT BLOKK === */
.jelmagyarazat-blokk .naptar-jelmagyarazat {
  margin-bottom: 20px;
  padding: 12px 16px;
  background: #f3f6f8;
  border: 1px solid #d9e1e6;
  border-radius: 6px;
  font-size: 15px;
}

.jelmagyarazat-blokk .naptar-jelmagyarazat-cim {
  font-weight: 700;
  margin-bottom: 10px;
  font-size: 17px;
}

.jelmagyarazat-blokk .naptar-jelmagyarazat-sor {
  position: relative;
  padding-left: 26px;
  margin-bottom: 8px;
  line-height: 1.5;
}

.jelmagyarazat-blokk .naptar-jelmagyarazat-sor:last-child {
  margin-bottom: 0;
}

.jelmagyarazat-blokk .naptar-jelmagyarazat-sor::before {
  content: "";
  position: absolute;
  left: 0;
  top: 3px;
  width: 16px;
  height: 16px;
  border-radius: 3px;
  display: block;
}

.jelmagyarazat-blokk .naptar-jelmagyarazat-sor:nth-of-type(2)::before {
  background: #0f4c5c;
}

.jelmagyarazat-blokk .naptar-jelmagyarazat-sor:nth-of-type(3)::before {
  background: #5fa9d6;
}

/* === GOOGLE NAPTÁR === */
.koruti-google-naptar {
  width: 100%;
  margin: 0 0 30px 0;
}

.koruti-google-naptar__desktop iframe {
  width: 100%;
  height: 680px;
  border: 1px solid #d7d7d7;
  display: block;
  background: #ffffff;
}

.koruti-google-naptar__mobile {
  display: none;
}

.koruti-google-naptar__mobile-box {
  padding: 22px 18px;
  border: 1px solid #d9e1e6;
  border-radius: 10px;
  background: #f7f9fb;
  text-align: center;
}

.koruti-google-naptar__mobile-box h3 {
  margin: 0 0 10px 0;
  font-size: 24px;
  line-height: 1.2;
}

.koruti-google-naptar__mobile-box p {
  margin: 0 0 16px 0;
  font-size: 15px;
  line-height: 1.6;
  color: #334;
}

.koruti-google-naptar__button {
  display: inline-block;
  padding: 12px 20px;
  background: #0f4c5c;
  color: #ffffff !important;
  text-decoration: none;
  border-radius: 7px;
  font-weight: 700;
  transition: background 0.2s ease;
}

.koruti-google-naptar__button:hover,
.koruti-google-naptar__button:focus {
  background: #0c3c49;
  color: #ffffff !important;
  text-decoration: none;
}

@media (max-width: 767px) {
  .koruti-google-naptar__desktop {
    display: none;
  }
  .koruti-google-naptar__mobile {
    display: block;
  }
}

/* === LOGIN OLDAL === */
.page-user-login .main-page,
.page-user-register .main-page,
.page-user-pass .main-page {
  height: 850px !important;
}

/* ============================================================
   FŐOLDAL AJÁNLÓK SZEKCIÓ
   ============================================================ */

/* YouTube play gomb overlay */
.front-video-carousel .views-field-field-youtube-video .field-content a {
  position: relative;
  display: block;
  overflow: hidden;
}

.front-video-carousel .views-field-field-youtube-video .field-content a::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 90px;
  height: 60px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 68 48'%3E%3Cpath d='M66.52 7.74c-.78-2.93-2.49-5.41-5.42-6.19C55.79.13 34 0 34 0S12.21.13 6.9 1.55c-2.93.78-4.63 3.26-5.42 6.19C0 13.05 0 24 0 24s0 10.95 1.48 16.26c.78 2.93 2.49 5.41 5.42 6.19C12.21 47.87 34 48 34 48s21.79-.13 27.1-1.55c2.93-.78 4.64-3.26 5.42-6.19C68 34.95 68 24 68 24s0-10.95-1.48-16.26z' fill='%23f00'/%3E%3Cpath d='M45 24 27 14v20' fill='%23fff'/%3E%3C/svg%3E") no-repeat center;
  background-size: contain;
  z-index: 10;
  pointer-events: none;
}

/* Carousel nyilak */
.front-video-carousel .owl-nav {
  position: absolute !important;
  top: 130px !important;
  left: 0px !important;
  right: 0px !important;
  display: flex !important;
  justify-content: space-between !important;
  pointer-events: none !important;
  margin: 0 !important;
  height: 0 !important;
}

.front-video-carousel .owl-nav .owl-prev,
.front-video-carousel .owl-nav .owl-next {
  pointer-events: all !important;
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
  width: 40px !important;
  height: 40px !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 0 !important;
  transform: translateY(-50%) !important;
}

.front-video-carousel .owl-nav .owl-prev i,
.front-video-carousel .owl-nav .owl-next i {
  display: none !important;
}

.front-video-carousel .owl-nav .owl-prev::after {
  content: '❮';
  font-size: 72px;
  color: #F9165B;
  line-height: 1;
  font-weight: 300;
}

.front-video-carousel .owl-nav .owl-next::after {
  content: '❯';
  font-size: 72px;
  color: #F9165B;
  line-height: 1;
  font-weight: 300;
}

.front-video-carousel .owl-nav .owl-prev:hover::after,
.front-video-carousel .owl-nav .owl-next:hover::after {
  color: #cc0000;
}

/* Kártya szöveg és gombok */
.front-video-carousel .video-card-info {
  text-align: center;
  padding: 8px 10px;
}

.front-video-carousel .video-card-info a {
  color: #222 !important;
  text-decoration: none !important;
}

.front-video-carousel .ajanlo-szerzo {
	font-size: 14px !important;
  line-height: 1.2 !important;
  color: #111 !important;
  margin-bottom: -4px !important;
  font-style: italic;
}

.front-video-carousel .ajanlo-cim {
	font-family: ArialNarrow, LibreBaskerville, Arial, Helvetica, sans-serif;
	font-size: 25px;
}

.front-video-carousel .ajanlo-desc {
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  font-style: italic;
  font-size: 13px;
  color: #555;
  line-height: 1.5;
  margin-bottom: 10px;
}

.front-video-carousel .owl-item a.ajanlo-jegy-btn {
  display: inline-block !important;
  width: auto !important;
  background: #f9165b !important;
  color: #fff !important;
  padding: 10px 44px !important;
  text-decoration: none !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  margin-top: 8px !important;
  margin-bottom: 6px !important;
}

.front-video-carousel .owl-item a.ajanlo-jegy-btn:hover {
  background: #d4004a !important;
  color: #fff !important;
}

.front-video-carousel .owl-item a.ajanlo-reszletek {
  display: inline-block !important;
  font-size: 14px !important;
  color: #111 !important;
  font-style: italic !important;
  text-decoration: underline !important;
  font-weight: normal !important;
}

.front-video-carousel .init-carousel-owl {
	margin: 0;
}

/* ============================================================
   MŰSOR LISTA - VÉGLEGES
   ============================================================ */

/* Blokk háttér */
.el-67579139 {
  background-color: #FDF2DC !important;
}

.view-content-wrap {
  padding: 0 !important;
  margin: 0 !important;
  background: #FDF2DC;
}

.musor-sor.item,
.view-content-wrap .item {
  margin: 0 0 13px 0 !important;
  padding: 0 !important;
}

.musor-sor {
  display: block !important;
  margin: 0 0 15px 0 !important;
  padding: 0 !important;
  overflow: hidden;
  list-style: none !important;
}

.musor-sor:nth-child(odd),
.musor-sor:nth-child(even) {
  background: transparent !important;
}

.musor-sor > .views-field { display: none !important; }
.musor-sor > .views-field-nothing { display: block !important; }

.musor-sor-inner {
  display: flex !important;
  align-items: stretch !important;
  min-height: 58px;
  padding: 0 !important;
  margin: 0 !important;
}

/* BAL: fekete háttér, fehér szöveg */
.musor-datum-varos {
  width: 220px !important;
  min-width: 220px !important;
  background: #000000 !important;
  color: #ffffff !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  line-height: 1.6;
  padding: 10px 14px !important;
  display: flex !important;
  flex-direction: column;
  justify-content: center !important;
  align-items: left !important;
  flex-shrink: 0;
}

.musor-datum-varos .varos {
  text-transform: uppercase;
}

/* KÖZÉP: arany színátmenet */
.musor-info {
  flex: 1 !important;
  padding: 10px 20px !important;
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden !important;
  background: linear-gradient(to right, #E1AF4C, #E6CB96, #EAD7B6, #E6CB96, #E1AF4C) !important;
}

.musor-info .musor-cim a,
.musor-info .fc-title-inner a {
	display: block;
	font-family: ArialNarrow, LibreBaskerville, Arial, Helvetica, sans-serif;
  color: #1a0a02 !important;
  font-weight: 700 !important;
  text-decoration: underline !important;
  font-size: 20px !important;
}

.musor-info .fc-location { display: none !important; }

.musor-helyszin-nev {
  font-size: 14px !important;
  color: #4a2e08 !important;
  margin-top: 0 !important;
}

/* JOBB: krémszínű gombterület */
.musor-gomb {
  width: 220px !important;
  min-width: 220px !important;
  background: #fdf3dc !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  flex-shrink: 0;
  border: 2px solid #E4B85F !important;
}

.musor-gomb a {
  width: 180px !important;
  height: 40px !important;
  background: #f9165b !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  margin: 0 auto !important;
  border-radius: 0 !important;
  text-decoration: none !important;
  color: transparent !important;
  font-size: 0 !important;
}

.musor-gomb a::after {
  content: 'Jegyvásárlás';
  font-size: 16px !important;
  line-height: 1 !important;
  color: #ffffff !important;
  font-weight: 700 !important;
}

/* Tab gombok */
.musor-tabok { padding: 10px 0 15px 0; }

.musor-tab {
  display: inline-block !important;
  padding: 6px 16px !important;
  margin-right: 5px !important;
  background: #e8e8e8 !important;
  color: #333 !important;
  text-decoration: none !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  border: 1px solid #ccc !important;
  text-transform: uppercase !important;
}

.musor-tab-aktiv {
  background: #d4c5a9 !important;
  border-color: #b0a080 !important;
}

/* ============================================================
   MŰSOR MOBIL NÉZET
   ============================================================ */

@media (max-width: 768px) {

  .musor-sor-inner {
    flex-direction: column !important;
  }

  /* DÁTUM BLOKK */
  .musor-datum-varos {
    width: 100% !important;
    min-width: 100% !important;
    justify-content: center !important;
    text-align: center !important;
    padding: 14px !important;
    flex-direction: row;
  }

  .musor-datum-varos .datum {
  	padding-right: 10px;
  }

  /* KÖZÉPSŐ INFORMÁCIÓS RÉSZ */
  .musor-info {
    width: 100% !important;
    padding: 14px 16px !important;
  }

  .musor-info .musor-cim a,
  .musor-info .fc-title-inner a {
    font-size: 18px !important;
    line-height: 1.3 !important;
  }

  .musor-helyszin-nev {
    font-size: 14px !important;
    line-height: 1.4 !important;
  }

  /* GOMB RÉSZ */
  .musor-gomb {
    width: 100% !important;
    min-width: 100% !important;
    padding: 16px !important;
    justify-content: center !important;
  }

  .musor-gomb a {
    min-width: 220px !important;
  }

}

/* ============================================================
   FŐOLDAL VIDEÓ AJÁNLÓK – CÍM KÖZÉPRE + FÉLKÖVÉR
   ============================================================ */

.front-video-carousel .video-title-center,
.front-video-carousel .video-title-center a {
  text-align: center !important;
  font-weight: 700 !important;
  display: block !important;
  width: 100% !important;
}

.front-video-carousel .views-field-title,
.front-video-carousel .views-field-title a,
.front-video-carousel .field-content,
.front-video-carousel .field-content a {
	text-align: center !important;
  font-weight: 700 !important;
  display: block !important;
  width: 100% !important;
}

.views-field-title {
  text-align: center !important;
}

.views-field-title a {
  display: inline-block !important;
  font-weight: 600 !important;
  text-align: center !important;
}

.views-field-title .field-content {
  display: block !important;
  width: 100% !important;
  text-align: center !important;
}

/* === CSAK A MŰSOR NÉZET TOVÁBBI ELŐADÁSOK GOMBJA === */

.custom-esemeny-naptar .more-link {
  display: block;
  width: 100% !important;
  text-align: right !important;
  margin: 8px 0 25px 0 !important;
  padding: 0 !important;
}

.custom-esemeny-naptar .more-link a[href="/esemeny-naptar"] {
  display: inline-block !important;
  background: transparent !important;
  background-color: transparent !important;
  color: #000000 !important;
  border: 2px solid #000000 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 6px 14px !important;
  width: auto !important;
  min-width: 0 !important;
  height: auto !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  text-align: center !important;
  text-decoration: none !important;
  text-transform: none !important;
}

.custom-esemeny-naptar .more-link a[href="/esemeny-naptar"]:hover,
.custom-esemeny-naptar .more-link a[href="/esemeny-naptar"]:focus,
.custom-esemeny-naptar .more-link a[href="/esemeny-naptar"]:active {
  background: #F9165B !important;
  background-color: #F9165B !important;
  color: #ffffff !important;
  border: 2px solid #F9165B !important;
  box-shadow: none !important;
  text-decoration: none !important;
}

/* ============================================================
   ELŐADÁS KÁRTYÁK - KÖZÖS 2x2 ELRENDEZÉS
   Használható: Bemutatók, Darabok, hasonló nézetek
   ============================================================ */

.eloadas-kartya-grid .view-content-wrap {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  column-gap: 28px !important;
  row-gap: 28px !important;
  margin: 0 0 36px 0 !important;
  padding: 0 !important;
  background: transparent !important;
  align-items: stretch !important;
}

/* CSAK A BEMUTATÓK FIX BAL FELSŐ KÁRTYÁJA */
.bemutatok-fix-grid .view-content-wrap::before {
  content: "" !important;
  display: block !important;
  width: 100% !important;
  min-height: 250px !important;
  box-sizing: border-box !important;
  background: url("/sites/default/files/gbb-uploads/bemutato_fix.webp") center center / cover no-repeat #f8edcf !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.28) !important;
}

.eloadas-kartya-grid .bemutato-kartya {
  width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  background: #f8edcf !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.28) !important;
  min-height: 308px !important;
  max-height: 308px !important;
  padding: 14px !important;
  margin: 0 !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
}

.eloadas-kartya-grid .bemutato-kartya-belso {
  display: flex !important;
  align-items: stretch !important;
  gap: 18px !important;
  height: 100% !important;
  overflow: hidden !important;
}

.eloadas-kartya-grid .bemutato-kep {
  flex: 0 0 200px !important;
  width: 200px !important;
}

.eloadas-kartya-grid .bemutato-kep img {
  width: 200px !important;
  max-width: 200px !important;
  height: auto !important;
  display: block !important;
}

.eloadas-kartya-grid .bemutato-tartalom {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
  overflow: hidden !important;
}

.eloadas-kartya-grid .bemutato-szerzo {
  font-size: 13px !important;
  line-height: 1.2 !important;
  color: #111 !important;
  margin-bottom: 2px !important;
}

.eloadas-kartya-grid .bemutato-cim {
	font-family: ArialNarrow, LibreBaskerville, Arial, Helvetica, sans-serif;
	font-size: 30px !important;
}

.eloadas-kartya-grid .bemutato-cim,
.eloadas-kartya-grid .bemutato-cim a {
  line-height: 1.05 !important;
  font-weight: 700 !important;
  color: #111 !important;
  text-decoration: none !important;
  text-align: left !important;
  margin-bottom: 2px !important;
}

.eloadas-kartya-grid .bemutato-mufaj {
	font-size: 14px !important;
  line-height: 1.2 !important;
  color: #111 !important;
  margin-bottom: 15px !important;
}

.eloadas-kartya-grid .bemutato-leiras {
	display: -webkit-box !important;
  -webkit-line-clamp: 5 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
  font-style: italic !important;
  color: #111 !important;
  margin-bottom: 14px !important;
}

.eloadas-kartya-grid .bemutato-gombok {
  margin-top: auto !important;
}

.eloadas-kartya-grid .bemutato-jegy a {
  display: inline-block !important;
  background: #F9165B !important;
  color: #ffffff !important;
  padding: 10px 26px !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  border-radius: 0 !important;
  margin-bottom: 8px !important;
}

.eloadas-kartya-grid .bemutato-jegy a:hover {
  background: #d4004a !important;
  color: #ffffff !important;
  text-decoration: none !important;
}

.eloadas-kartya-grid .bemutato-reszletek a {
  display: inline-block !important;
  font-size: 14px !important;
  color: #111 !important;
  font-style: italic !important;
  text-decoration: underline !important;
}

.eloadas-kartya-grid .bemutato-reszletek a:hover {
  color: #F9165B !important;
}

/* MOBIL */
@media (max-width: 768px) {
  .eloadas-kartya-grid .view-content-wrap {
    grid-template-columns: 1fr !important;
    max-width: 100% !important;
    row-gap: 22px !important;
  }

  .eloadas-kartya-grid .bemutato-kartya,
  .bemutatok-fix-grid .view-content-wrap::before {
    min-height: 250px !important;
    max-height: none !important;
  }

  .eloadas-kartya-grid .bemutato-kep {
    flex: 0 0 120px !important;
    width: 120px !important;
  }

  .eloadas-kartya-grid .bemutato-kep img {
    width: 120px !important;
    max-width: 120px !important;
  }

  .eloadas-kartya-grid .bemutato-cim,
  .eloadas-kartya-grid .bemutato-cim a {
    font-size: 22px !important;
  }
}

/* ============================================================
   HERO / CALL TO ACTION - JAVÍTOTT
   ============================================================ */

body:not(.path-admin) .front-hero-row {
  position: relative !important;
  overflow: visible !important;
  width: 100% !important;
  aspect-ratio: 1900 / 591 !important;
  min-height: 0 !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-color: transparent !important;
}

body:not(.path-admin) .front-hero-row > .bb-inner,
body:not(.path-admin) .front-hero-row > .container,
body:not(.path-admin) .front-hero-row > .container-full,
body:not(.path-admin) .front-hero-row .row-wrapper,
body:not(.path-admin) .front-hero-row .gsc-column,
body:not(.path-admin) .front-hero-row .column-inner {
  width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
}

body:not(.path-admin) .front-hero-row .gsc-column,
body:not(.path-admin) .front-hero-row .column-inner {
  position: relative !important;
  inset: auto !important;
  padding: 0 !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: center !important;
}

body:not(.path-admin) .front-hero-cta {
  width: 100% !important;
  max-width: 800px !important;
  margin: auto auto 70px auto !important;
  padding: 0 20px !important;
  text-align: center !important;
}

/* ASZTALI: közbülső konténerek layout-ból kivéve, front-hero-row flex alap */
@media (min-width: 769px) {
  body:not(.path-admin) .front-hero-row {
    display: flex !important;
    align-items: flex-end !important;
    justify-content: center !important;
  }

  body:not(.path-admin) .front-hero-row > .bb-inner,
  body:not(.path-admin) .front-hero-row > .container,
  body:not(.path-admin) .front-hero-row > .container-full,
  body:not(.path-admin) .front-hero-row .row-wrapper,
  body:not(.path-admin) .front-hero-row .gsc-column,
  body:not(.path-admin) .front-hero-row .column-inner {
    display: contents !important;
  }

  body:not(.path-admin) .front-hero-cta {
    position: static !important;
    transform: none !important;
    width: 100% !important;
    max-width: 800px !important;
    margin: 0 auto 50px auto !important;
  }
}

body:not(.path-admin) .front-hero-cta .content-inner,
body:not(.path-admin) .front-hero-cta .content,
body:not(.path-admin) .front-hero-cta .box-content {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  width: 100% !important;
}

body:not(.path-admin) .front-hero-cta .hero-main-title {
  margin: 0 0 10px 0 !important;
  font-size: 46px !important;
  line-height: 1.05 !important;
  font-weight: 700 !important;
  letter-spacing: 5px !important;
  text-transform: uppercase !important;
  color: #ffffff !important;
  text-shadow:
    -1px -1px 0 #000,
     1px -1px 0 #000,
    -1px  1px 0 #000,
     1px  1px 0 #000 !important;
}

body:not(.path-admin) .front-hero-cta .hero-lead {
  margin: 0 auto 18px auto !important;
  max-width: 800px !important;
  font-size: 18px !important;
  line-height: 1.4 !important;
  font-style: italic !important;
  color: #ffffff !important;
  text-shadow:
    -1px -1px 0 #000,
     1px -1px 0 #000,
    -1px  1px 0 #000,
     1px  1px 0 #000 !important;
}

body:not(.path-admin) .front-hero-cta .button-action,
body:not(.path-admin) .front-hero-cta .content-action,
body:not(.path-admin) .front-hero-cta .action,
body:not(.path-admin) .front-hero-cta .gsc-button {
  display: flex !important;
  flex-direction: row !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 12px !important;
  width: 100% !important;
  margin-top: 10px !important;
}

body:not(.path-admin) .front-hero-cta .btn-theme,
body:not(.path-admin) .front-hero-cta .btn-white {
  min-width: 150px !important;
  height: 42px !important;
  padding: 0 28px !important;
  margin: 0 !important;
  display: inline-flex !important;
  justify-content: center !important;
  align-items: center !important;
  border-radius: 0 !important;
  text-decoration: none !important;
  font-size: 15px !important;
  font-weight: 700 !important;
}

body:not(.path-admin) .front-hero-cta .btn-theme {
  background: #F9165B !important;
  border: 2px solid #F9165B !important;
  color: #ffffff !important;
}

body:not(.path-admin) .front-hero-cta .btn-white {
  background: transparent !important;
  border: 2px solid #ffffff !important;
  color: #ffffff !important;
}

/* MOBIL */
@media (max-width: 768px) {

  body:not(.path-admin) .front-hero-row {
    aspect-ratio: auto !important;
    height: auto !important;
    min-height: auto !important;
    padding-top: 95px !important;
    background-size: 100% auto !important;
    background-position: center top !important;
    background-repeat: no-repeat !important;
    background-color: #000000 !important;
  }

  body:not(.path-admin) .front-hero-row .gsc-column,
  body:not(.path-admin) .front-hero-row .column-inner {
    position: relative !important;
    inset: auto !important;
    height: auto !important;
    display: block !important;
  }

  body:not(.path-admin) .front-hero-cta {
    margin: -42px auto 0 auto !important;
    max-width: 100% !important;
    padding: 16px 18px 30px 18px !important;
    background: linear-gradient(
      to bottom,
      rgba(0,0,0,0) 0%,
      rgba(0,0,0,0.75) 20%,
      rgba(0,0,0,1) 50%,
      rgba(0,0,0,1) 100%
    ) !important;
  }

  body:not(.path-admin) .front-hero-cta .hero-main-title {
    font-size: 20px !important;
    line-height: 1.08 !important;
    letter-spacing: 1px !important;
    margin-bottom: 8px !important;
  }

  body:not(.path-admin) .front-hero-cta .hero-lead {
    font-size: 13px !important;
    line-height: 1.35 !important;
    margin-bottom: 14px !important;
  }

  body:not(.path-admin) .front-hero-cta .button-action,
  body:not(.path-admin) .front-hero-cta .content-action,
  body:not(.path-admin) .front-hero-cta .action,
  body:not(.path-admin) .front-hero-cta .gsc-button {
    flex-direction: column !important;
    gap: 10px !important;
  }

  body:not(.path-admin) .front-hero-cta .btn-theme,
  body:not(.path-admin) .front-hero-cta .btn-white {
    width: 220px !important;
    min-width: 220px !important;
    height: 46px !important;
    font-size: 15px !important;
  }
}

/* ============================================================
   ADMIN FELÜLET SCROLL JAVÍTÁS
   ============================================================ */

body.path-admin {
  overflow: auto !important;
  overflow-x: auto !important;
  overflow-y: auto !important;
  height: auto !important;
  max-height: none !important;
}

body.path-admin .dialog-off-canvas-main-canvas,
body.path-admin .layout-container,
body.path-admin .region-content,
body.path-admin .main-content,
body.path-admin main {
  overflow: visible !important;
  height: auto !important;
  max-height: none !important;
}

body.path-admin .CodeMirror {
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
}

body.path-admin .CodeMirror-scroll {
  overflow: auto !important;
  max-height: 620px !important;
}

body.path-admin .CodeMirror-hscrollbar,
body.path-admin .CodeMirror-vscrollbar {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

body.path-admin textarea,
body.path-admin .form-textarea-wrapper,
body.path-admin .form-textarea {
  overflow: auto !important;
}

/* ============================================================
   TÁRSULAT OLDAL
   ============================================================ */

/* Színészek + munkatársak - 2 oszlopos grid */
.tarsulat-szineszek .view-content-wrap,
.tarsulat-munkatarsak .view-content-wrap {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  column-gap: 32px !important;
  row-gap: 16px !important;
  padding-bottom: 20px !important;
  background: transparent !important;
  align-items: start !important;
}

/* Igazgató - fél szélesség mint egy grid kártya */
.tarsulat-igazgato .view-content-wrap {
  width: calc(50% - 8px) !important;
  max-width: calc(50% - 8px) !important;
}

.tarsulat-igazgato .item,
.tarsulat-igazgato .tarsulat-kartya {
  max-width: 100% !important;
  width: 100% !important;
}

/* Kártya */
.tarsulat-kartya {
  display: flex !important;
  flex-direction: row !important;
  align-items: stretch !important;
  background: #f8edcf !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.28) !important;
  overflow: hidden !important;
  min-height: 240px !important;
}

/* Fotó - álló téglalap, teljes kártya magasság */
.tarsulat-kep {
  flex: 0 0 160px !important;
  width: 160px !important;
  overflow: hidden !important;
  align-self: stretch !important;
  margin: 10px 0 10px 10px !important;
}

.tarsulat-kep img {
  width: 160px !important;
  height: 100% !important;
  min-height: 240px !important;
  object-fit: cover !important;
  object-position: top center !important;
  display: block !important;
}

/* Szöveg */
.tarsulat-szoveg {
  flex: 1 !important;
  padding: 14px 18px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  min-width: 0 !important;
}

/* Név - két sorban */
.tarsulat-nev {
  font-size: 22px !important;
  font-weight: 700 !important;
  margin: 0 0 6px 0 !important;
  padding: 0 !important;
  color: #111 !important;
  line-height: 1.2 !important;
  max-width: 110px !important;
}

.tarsulat-nev a {
  color: #111 !important;
  text-decoration: none !important;
}

.tarsulat-nev a:hover {
  color: #F9165B !important;
}

/* Szerepkör */
.tarsulat-szerep {
  font-size: 13px !important;
  color: #555 !important;
  font-style: italic !important;
  margin: 0 !important;
}

/* Redundáns h2 elrejtése */
.el-43366164 {
  display: none !important;
}

/* Mobil */
@media (max-width: 768px) {
  .tarsulat-szineszek .view-content-wrap,
  .tarsulat-munkatarsak .view-content-wrap {
    grid-template-columns: 1fr !important;
  }

  .tarsulat-igazgato .view-content-wrap {
    width: 100% !important;
    max-width: 100% !important;
  }

  .tarsulat-kartya {
    flex-direction: column !important;
    min-height: auto !important;
  }

  .tarsulat-kep {
    flex: 0 0 auto !important;
    width: 100% !important;
  }

  .tarsulat-kep img {
    width: 100% !important;
    height: 220px !important;
    min-height: 0 !important;
  }

  .tarsulat-nev {
    font-size: 18px !important;
  }
}

/* ============================================================
   TÁRSULAT OLDAL
   ============================================================ */

/* Főcím elrejtése - szekciók kapnak saját fejlécet */
.el-43366164 {
  display: none !important;
}

/* Közös gradient fejléc az egyes szekciókhoz */
.el-99942082::before,
.el-85417915::before,
.el-98035786::before,
.el-34216801::before {
  display: block;
  background: linear-gradient(to right, #f91958, #DD910A);
  color: white;
  text-align: center;
  padding: 15px 30px;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: 1.5rem;
  margin: 0 0 20px 0;
  font-weight: normal;
  box-sizing: border-box;
  width: 100%;
}

.el-99942082::before { content: 'IGAZGATÓ'; }
.el-85417915::before { content: 'SZÍNÉSZEK'; }
.el-98035786::before { content: 'MUNKATÁRSAINK'; }
.el-34216801::before { content: 'IN MEMORIAM'; }

/* IGAZGATÓ - középre igazított egysoros elrendezés */
.el-99942082 .view-content {
  display: flex !important;
  justify-content: center !important;
  margin-bottom: 30px !important;
}

.el-99942082 .team-block.team-v2 {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  padding: 16px !important;
  background: #f8edcf !important;
  max-width: 400px !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.12) !important;
}

/* SZÍNÉSZEK + MUNKATÁRSAINK + IN MEMORIAM - 2 oszlopos grid */
.el-85417915 .view-content,
.el-98035786 .view-content,
.el-34216801 .view-content {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 20px 28px !important;
  max-width: 940px !important;
  margin: 0 auto 30px auto !important;
}

/* Team kártya keret */
.el-85417915 .node--type-team,
.el-98035786 .node--type-team,
.el-34216801 .node--type-team {
  background: #f8edcf !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.12) !important;
}

/* Team blokk - vízszintes fotó + szöveg */
.el-85417915 .team-block.team-v2,
.el-98035786 .team-block.team-v2,
.el-34216801 .team-block.team-v2,
.el-99942082 .team-block.team-v2 {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  padding: 12px !important;
  min-height: 110px;
}

/* Fotó mérete */
.el-85417915 .team-block.team-v2 .team-image,
.el-98035786 .team-block.team-v2 .team-image,
.el-34216801 .team-block.team-v2 .team-image,
.el-99942082 .team-block.team-v2 .team-image {
  flex: 0 0 100px !important;
  width: 100px !important;
}

.el-85417915 .team-block.team-v2 .team-image img,
.el-98035786 .team-block.team-v2 .team-image img,
.el-34216801 .team-block.team-v2 .team-image img,
.el-99942082 .team-block.team-v2 .team-image img {
  width: 100px !important;
  height: auto !important;
  display: block !important;
}

/* Szöveges tartalom */
.el-85417915 .team-block.team-v2 .team-content,
.el-98035786 .team-block.team-v2 .team-content,
.el-34216801 .team-block.team-v2 .team-content,
.el-99942082 .team-block.team-v2 .team-content {
  flex: 1 !important;
}

/* Név */
.el-85417915 .team-block.team-v2 .team-name,
.el-98035786 .team-block.team-v2 .team-name,
.el-34216801 .team-block.team-v2 .team-name,
.el-99942082 .team-block.team-v2 .team-name {
  font-size: 18px !important;
  font-weight: 700 !important;
  color: #111 !important;
  line-height: 1.2 !important;
  margin-bottom: 4px !important;
}

.el-85417915 .team-block.team-v2 .team-name a,
.el-98035786 .team-block.team-v2 .team-name a,
.el-34216801 .team-block.team-v2 .team-name a,
.el-99942082 .team-block.team-v2 .team-name a {
  color: #111 !important;
  text-decoration: none !important;
}

.el-85417915 .team-block.team-v2 .team-name a:hover,
.el-98035786 .team-block.team-v2 .team-name a:hover,
.el-34216801 .team-block.team-v2 .team-name a:hover,
.el-99942082 .team-block.team-v2 .team-name a:hover {
  color: #F9165B !important;
}

/* Pozíció / szerepkör */
.el-85417915 .team-block.team-v2 .position,
.el-98035786 .team-block.team-v2 .position,
.el-34216801 .team-block.team-v2 .position,
.el-99942082 .team-block.team-v2 .position,
.el-85417915 .team-block.team-v2 .team-position,
.el-98035786 .team-block.team-v2 .team-position,
.el-34216801 .team-block.team-v2 .team-position,
.el-99942082 .team-block.team-v2 .team-position {
  font-size: 13px !important;
  color: #555 !important;
  font-style: italic !important;
}

/* MOBIL */
@media (max-width: 768px) {
  .el-85417915 .view-content,
  .el-98035786 .view-content,
  .el-34216801 .view-content {
    grid-template-columns: 1fr !important;
    max-width: 92% !important;
  }

  .el-85417915::before,
  .el-98035786::before,
  .el-34216801::before,
  .el-99942082::before {
    font-size: 1.2rem !important;
    padding: 12px 20px !important;
  }
}
/* ============================================================
   HOVER ÁLLAPOTOK
   ============================================================ */

/* Hero Jegyvásárlás gomb hover */
body:not(.path-admin) .front-hero-cta .btn-theme:hover {
  background: #d4004a !important;
  border-color: #d4004a !important;
  color: #ffffff !important;
}

/* Hero Repertoár gomb hover */
body:not(.path-admin) .front-hero-cta .btn-white:hover {
  background: rgba(255, 255, 255, 0.25) !important;
  border-color: #ffffff !important;
  color: #ffffff !important;
}

/* Fejléc Jegyvásárlás gomb hover */
#block-daudo-subtheme-fejlecjegyvasarlasessocial .gsc-button:hover {
  background: #d4004a !important;
  border-color: #d4004a !important;
  color: #ffffff !important;
}

/* Műsor lista Jegyvásárlás gomb hover */
.musor-gomb a:hover {
  background: #d4004a !important;
}

/* Társulat kártya hover */
.tarsulat-kartya:hover {
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.35) !important;
}

.tarsulat-kartya:hover .tarsulat-nev a {
  color: #F9165B !important;
}

/* ============================================================
   TABLET NÉZET (769px - 976px)
   ============================================================ */

@media (min-width: 769px) and (max-width: 976px) {

  /* HERO - minimum magasság hogy a CTA elférjen */
  body:not(.path-admin) .front-hero-row {
    min-height: 320px !important;
  }

  /* HERO CTA - kompakt méret tableten */
  body:not(.path-admin) .front-hero-cta {
    margin: 0 auto 20px auto !important;
    padding: 0 10px !important;
  }

  body:not(.path-admin) .front-hero-cta .hero-main-title {
    font-size: 22px !important;
    letter-spacing: 1px !important;
    margin-bottom: 4px !important;
  }

  body:not(.path-admin) .front-hero-cta .hero-lead {
    font-size: 12px !important;
    line-height: 1.3 !important;
    margin-bottom: 8px !important;
  }

  body:not(.path-admin) .front-hero-cta .btn-theme,
  body:not(.path-admin) .front-hero-cta .btn-white {
    height: 36px !important;
    font-size: 13px !important;
  }

  /* MŰSOR SOROK - kisebb oszlopok hogy elférjen */
  .musor-datum-varos {
    width: 160px !important;
    min-width: 160px !important;
    font-size: 13px !important;
  }

  .musor-gomb {
    width: 160px !important;
    min-width: 160px !important;
  }

  .musor-gomb a {
    width: 140px !important;
  }

  /* ELŐADÁS KÁRTYÁK - 1 oszlop tableten */
  .eloadas-kartya-grid .view-content-wrap {
    grid-template-columns: 1fr !important;
    max-width: 600px !important;
    margin: 0 auto 36px auto !important;
  }

  .eloadas-kartya-grid .bemutato-kartya {
    max-height: none !important;
  }

  /* TÁRSULAT KÁRTYÁK - 1 oszlop tableten */
  .tarsulat-szineszek .view-content-wrap,
  .tarsulat-munkatarsak .view-content-wrap {
    grid-template-columns: 1fr !important;
  }

  .tarsulat-igazgato .view-content-wrap {
    width: 100% !important;
    max-width: 100% !important;
  }

}
/* Műsor tab gombok hover */
.musor-tab:hover {
  background: #F9165B !important;
  color: #ffffff !important;
  border-color: #F9165B !important;
  cursor: pointer !important;
}

@media (max-width: 1200px) {
	#footer .footer-top .szinhazi-eloadast-szervez-wrapper .szinhazi-eloadast-szervez-2 .title {
		font-size: 28px;
	}

	#footer .footer-top .szinhazi-eloadast-szervez-wrapper .szinhazi-eloadast-szervez-2 .subtitle {
		font-size: 22px;
	}

	#footer .footer-top .szinhazi-eloadast-szervez-wrapper .szinhazi-eloadast-szervez-2 .requests-an-offer a {
		font-size: 18px !important;
	}
	
	#footer .footer-top .szinhazi-eloadast-szervez-wrapper .szinhazi-eloadast-szervez-2 .link-to-repertoire {
		font-size: 18px;
	}

	#block-daudo-subtheme-mainnavigation {
		padding-top: 90px;
	}
	
	.navigation .gva_menu > li.menu-item > a {
		padding: 0 !important;
	}
}

@media (max-width: 992px) {
	#footer .footer-top .szinhazi-eloadast-szervez-wrapper .szinhazi-eloadast-szervez-1 {
		display: none;
	}
	
	#footer .footer-top .szinhazi-eloadast-szervez-wrapper .szinhazi-eloadast-szervez-2 {
		margin-top: 15px;
	}
	
	#footer .footer-top .szinhazi-eloadast-szervez-wrapper .szinhazi-eloadast-szervez-3 {
		display: none;
	}
}

/* A lábléc alatti menü blokkok */
.ksz-after-footer {
  background-color: #000000;
  color: #ffffff;
  padding: 40px 0 30px 0;
  font-family: LibreBaskerville, Arial, Helvetica, sans-serif;
}

.ksz-after-footer .ksz-footer-inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 30px;
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
  justify-content: space-between;
}

.ksz-after-footer .ksz-footer-col {
  flex: 1;
  min-width: 140px;
}

.ksz-after-footer .ksz-footer-col.ksz-social-col {
  min-width: 180px;
  flex: 1.2;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}

/* FEJLÉCEK - fehér, nincs gradient */
.ksz-after-footer .ksz-footer-col h4 {
  color: #ffffff !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  margin: 0 0 14px 0 !important;
  padding: 0 0 10px 0 !important;
  border-bottom: 1px solid #1F1F1F !important;
  background: none !important;
  background-image: none !important;
  text-align: left !important;
  display: block !important;
  width: auto !important;
  box-sizing: border-box !important;
}

/* MENÜPONTOK - fehér */
.ksz-after-footer ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.ksz-after-footer ul li {
  margin-bottom: 6px !important;
}

.ksz-after-footer ul li a,
.ksz-after-footer ul li a:link,
.ksz-after-footer ul li a:visited {
  color: #ffffff !important;
  text-decoration: none !important;
  font-size: 14px !important;
}

.ksz-after-footer ul li a:hover,
.ksz-after-footer ul li a:focus,
.ksz-after-footer ul li a:active {
  color: #DD900A !important;
  text-decoration: none !important;
}

/* SOCIAL IKONOK */
.ksz-social-icons {
  display: flex;
  gap: 12px;
  margin-bottom: 20px;
}

.ksz-social-icons a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 50px !important;
  height: 50px !important;
  border-radius: 50% !important;
  border: 2px solid #DD900A !important;
  color: #DD900A !important;
  background: transparent !important;
  text-decoration: none !important;
}

.ksz-social-icons a i,
.ksz-social-icons a i.fab {
  color: #DD900A !important;
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  width: auto !important;
  height: auto !important;
  font-size: 22px !important;
  line-height: 1 !important;
  display: inline !important;
}

.ksz-social-icons a:hover,
.ksz-social-icons a:focus {
  background: #DD900A !important;
  color: #000000 !important;
  text-decoration: none !important;
}

.ksz-social-icons a:hover i,
.ksz-social-icons a:focus i {
  color: #000000 !important;
}

/* HÍRLEVÉL GOMB */
.ksz-newsletter-btn,
.ksz-newsletter-btn:link,
.ksz-newsletter-btn:visited {
  display: inline-block !important;
  border: 2px solid #F61559 !important;
  color: #F61559 !important;
  padding: 14px 20px !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  text-align: center !important;
  text-decoration: none !important;
  line-height: 1.3 !important;
  background: transparent !important;
}

.ksz-newsletter-btn:hover,
.ksz-newsletter-btn:focus,
.ksz-newsletter-btn:active {
  background: #F61559 !important;
  color: #ffffff !important;
  text-decoration: none !important;
}

@media (max-width: 768px) {
  .ksz-after-footer .ksz-footer-inner {
    flex-direction: column;
    gap: 20px;
  }
  .ksz-after-footer .ksz-footer-col.ksz-social-col {
    align-items: flex-start;
  }
}