/*
 Theme Name: Divi Child
 Theme URI: https://www.elegantthemes.com/gallery/divi/
 Description: Divi Child Theme
 Author: Elegant Themes
 Author URI: https://www.elegantthemes.com
 Template: Divi
 Version: 1.0.0
*/
 
/* =Theme customization starts here
------------------------------------------------------- */

/* ================================ */
/* COMMON */
/* ================================ */

:root {
--rt-events-blue: #60b3c6;
--rt-events-gray: #a4a4a4;
 --content-width: calc(100% - 40px);
--section-gutter: 30px;
}

* {
	text-wrap: pretty;
}

h1, h2, h3,h4 {
	text-wrap: balance;
}

@media only screen and (max-width: 765px) {
	h1, h2, h3,h4 {
		text-wrap: pretty;
	}
}

h1 {
    padding-bottom: 20px;
}

h3 {
    padding-top: 20px;
    padding-bottom: 20px;
}

a {
	color: var(--rt-events-blue);
	text-wrap: balance;
}

a.disabled {
    pointer-events: none;
    cursor: default;
	color: #000000 !important;
	text-decoration: none !important;
}

p, li {
    font-size: 16px;
}

label > input {
    vertical-align: top;
}

input[type="checkbox"] {
    width: 18px;
    height: 18px;
    border-radius: 2.5px;
    margin-right: 5px;
}

textarea {
	resize: vertical !important;
	min-height: 70px;
}

/* REMOVE ALL SIDEBARS */

#sidebar, 
.widget-area, 
aside.sidebar {
    display: none !important;
}

#main-content .container:before,
#content:before,
.site-content {
    border-right: none !important;
    border-left: none !important;
    background: none !important;
}

#primary, 
#left-area, 
.content-area {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
}

/* ================================ */
/* DIVI */
/* ================================ */

#main-header {
    box-shadow: 0 0 10px 10px rgba(255, 255, 255, 1) !important;
}

@media (min-width: 981px) {
    #main-header.et-fixed-header {
        box-shadow: 0 0 20px 20px rgba(255, 255, 255, 1) !important;
    }
}

.et_header_style_left #logo {
    max-width:80%;
}

ul#mobile_menu.et_mobile_menu {
    border-top: 3px solid var(--rt-events-blue);
}

li.menu-item.current_page_item a {
	color: var(--rt-events-blue) !important;
}

.container {
    width: var(--content-width);
}

@media (max-width: 980px) {
    .et_header_style_left .et-fixed-header #et-top-navigation, .et_header_style_left #et-top-navigation {
        padding-top: 40px;
        display: block;
    }
	
    .et_pb_image_bottom_space_tablet {
        margin-bottom: 0 !important;
    }
}

@media (min-width: 981px) {
    .et_header_style_left .et-fixed-header #et-top-navigation {
        padding-top: 45px;
    }
}

@media (max-width: 767px) {
    .et_pb_image_bottom_space_phone {
        margin-bottom: 0 !important;
    }
}

/* ================================ */
/* rt-events, in-iframe
/* ================================ */

div#page-container.in-iframe {
    #et-top-navigation, #main-footer {
        visibility: hidden;
    }
}

/* ================================ */
/* rt-events
/* ================================ */

.rt-events-home-locations {
	grid-template-columns: 1fr 1fr 1fr 1fr!important;
}

.rt-events-home-locations img {
        max-width: 150px;
}

.rt-events-home-locations a {
    text-align: center;
}

@media only screen and (max-width: 879px) {
    .rt-events-home-locations {
        grid-template-columns: 1fr 1fr !important;
    }
}

@media only screen and (max-width: 399px) {
    .rt-events-home-locations {
        grid-template-columns: 1fr  !important;
    }
}


/* ================================ */
/* EVENTS MANAGER */
/* ================================ */

.em {
	--default-border: var(--rt-events-blue);
}

.em a {
    --meta-color: var(--rt-events-blue)
}

a.button {
    font-size: 17px;
    font-weight: bold;
    display: inline-block;
    padding: 5px 15px;
    border-radius: 5px;
	border: 2px solid var(--rt-events-blue);
    background-color: var(--rt-events-blue);
    color: #ffffff;
	box-shadow: 0 0 10px 2px #00000033;
}

.em-event-content ul {
    margin-top: 10px;
    margin-left: 5px;
}

.em-item-meta-line.em-location-address {
    font-size: 16px;
    line-height: 1.4em !important;
}

.em.em-item .em-item-image img, .em.em-list .em-item .em-item-image img {
    display: block;
    max-width: 256px;
    margin: auto;
}

section.em-booking-form-section-details div.em-booking-form-details.em-booking-section p.input-user-field,
section.em-booking-form-section-details div.em-booking-form-details.em-booking-section p.input-field-booking_comment,
.em.em-event-booking-form .em-tickets p.input-group.input-text
{
    display: grid !important;
    margin-bottom: 5px !important;
    input[type="text"], select, textarea {
		font-size: 16px;
        width: 100%;
        padding: 7px;
        border-radius: 5px;
    }
}

.em-login-trigger {
    display: none !important;
}

div.em-item-meta-line.em-event-prices {
    display: none !important;
}

.em.em-event-booking-form h3.em-booking-section-title {
    line-height: 1.2em;
}

.em.em-event-booking-form h3.em-booking-section-title {
  border: 1px solid var(--main-border-color);
}

.em.em-event-booking-form .em-button.em-booking-submit {
  background-color: var(--rt-events-blue);
  border: 1px solid var(--main-border-color);
  border-radius: 10px;
  color: #ffffff;
  cursor: pointer;
  font-size: 20px;
}

form.em-booking-form {
  border: none !important;
}

p.ticket-desc {
    line-height: 1.4em;
}

a.button.input.with-icon-right {
    font-size: 18px;
    font-weight: bold;
}

.em.em-item .em-item-meta .em-item-meta-line, .em.em-list-widget .em-item .em-item-meta .em-item-meta-line {
    a {
		font-size: 18px;
		font-style: normal !important;
		display: block;
		margin-bottom: 5px;
    }
	a + br {
		display: none;
	}
}

.em.em-item .em-item-meta .em-item-meta-line a, .em.em-list .em-item .em-item-meta .em-item-meta-line a, .em.em-list-widget .em-item .em-item-meta .em-item-meta-line a {
    font-style: normal !important;
	font-weight: bold;
}

.em.em-view-container {
    margin-bottom: 30px !important;
}

.em-login {
	display: none !important;
}

p.ticket-price::after, div.em-bs-cell-price::after {
	content: " (USD)";
}

p.ticket-price label {
    margin-right: 10px;
}

p.ticket-price label::after {
    content: ":";
}

a.em-item-read-more.button::after {
	content: "…";
}

a.button.input.with-icon-right:has(span.em-icon-ticket)  {
    padding: 5px 20px !important;

    span.em-icon-ticket.em-icon.em-icon-ticket {
        display: none;
    }
}

.em-event-book-now.button:has(.em-icon.em-icon-ticket) {
    .em-icon.em-icon-ticket {
        display: none;
    }
}

a.em-event-book-now.button {
    background: #ffffff;
    color: var(--rt-events-blue);
}

div.em-item-actions.input a.button:nth-child(2) {
    margin-left: 7px;
}

.em.em-list .em-item .em-item-info h3.em-item-title {
    margin-bottom: 15px;
}

.em-event-meta.em-item-meta {
    font-size: 16px;
}

.em.em-list.em-events-list .em-event-meta.em-item-meta {
    display: block;
}

.em.em-item .em-item-image .em-item-image-placeholder,.em.em-list .em-item .em-item-image .em-item-image-placeholder,.em.em-list-widget .em-item .em-item-image .em-item-image-placeholder {
    opacity: 0.75;
}

section.em-location-events {
    font-size: 16px;
}

section.em-location-events a {
	font-weight: bold;
    display: block;
}

.em-item-meta-line.em-location-events a {
    display: block;
    margin-bottom: 7px;
}

.em.em-list .em-item .em-item-info {
    border: none;
    border-left: 2px solid #f0f0f0;
}

.em.em-list .em-item {
    border-top: 2px solid #f0f0f0;
}

.em.em-list.em-grid .em-item .em-item-info, .em.em-list.size-small .em-item .em-item-info {
    border: none;
}

.em.em-list.em-grid .em-item, .em.em-list.size-small .em-item {
    border: none;
    border-bottom: 2px solid #f0f0f0;
    box-shadow: none;
    padding-bottom: 30px;
}

p.em-tickets-spaces label::after{
    content: ":";
}

.em-ticket-select {
    padding: 5px 10px;
    margin-left: 10px;
    border-radius: 5px;
    font-size: 16px;
    border: 1px solid #666666;
}

.em-event-bookings h2 {
    margin-top: 40px;
    padding-top: 40px;
    border-top: 3px solid var(--rt-events-blue) !important;
    color: var(--rt-events-blue);
}

.em-booking-form {
    margin-top: 40px;
}

.em.em-event-booking-form h3.em-booking-section-title {
    background-color: transparent !important;
    color: var(--rt-events-gray);
    font-weight: 700;
    padding: 15px 0;
    border: none;
    margin: 0;
}

.em-booking-section {
    border: 1px solid #e0e0e0;
    border-radius: 5px;
    background: #f7f7f7;
    margin-bottom: 15px !important;
}

.em-booking-section.em-payment-gateways {
    display: none
}

.em-booking-form-summary.em-booking-section {
    border-bottom: none;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    margin-bottom: 0px!important;
}

.em-booking-section.em-booking-buttons {
    margin-top: 0px!important;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-top: none
}

.em-tickets p.ticket-desc {
    font-size: 18px;
    margin-bottom: 20px;
}

.em-tickets p.ticket-price {
    margin-bottom: 20px;
}

.em.em-event-booking-form .em-tickets {
    width: 100%;
}

.em-ticket-bookings .em-ticket-booking:last-child {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

.em.em-item.em-item-single .em-item-header .em-item-image img {
    border: none !important;
}

section.em-location-events * {
    line-height: 1.3em !important;
}

section.em-location-events a {
    margin-bottom: 5px;
}

@media only screen and (max-width: 765px) {
	.em.em-item .em-item-image img, .em.em-list .em-item .em-item-image img {
		max-width: 192px;
	}
	
    .em.em-event-booking-form .em-booking-section {
        padding: 10px;
    }

    .em.em-event-booking-form .em-tickets .em-ticket-bookings {
        padding: 10px !important;
    }
}