/*
Theme Name: Pageant Media 2021
Theme URI: -
Author: Pageant Media 
Author URI: https://www.pageantmedia.com
Description: Pageant Media 2021
Version: 1.0.5
License: GNU General Public License v2 or later
License URI: <https://www.gnu.org/licenses/gpl-2.0.html>
Text Domain: pageant-media-theme
Tags: pageantmedia
*/

/* Bootstrap replacement CSS - Low priority */
.btn-group-sm>.btn, .btn-sm {
    padding: 0.25rem 0.5rem;
    font-size: .875rem;
    border-radius: 0.2rem;
}
.btn {
    display: inline-block;
    font-weight: 400;
    line-height: 1.5;
    color: #212529;
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    background-color: transparent;
    border: 1px solid transparent;
    padding: 0.375rem 0.75rem;
    font-size: 1rem;
    border-radius: 0.25rem;
    transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}
[type=button]:not(:disabled), [type=reset]:not(:disabled), [type=submit]:not(:disabled), button:not(:disabled) {
    cursor: pointer;
}
.btn-group-sm>.btn, .btn-sm {
    padding: 0.25rem 0.5rem;
    font-size: .875rem;
    border-radius: 0.2rem;
}
/* Bootstrap replacement CSS - Low priority */



:root {
  --pm-color-purple: #6c2bff;
  --pm-color-purple-dark: #3f00d0;
  --pm-color-purple-light: #a17eff;
  --pm-color-purple-ultralight: #e1d9fc;
  --pm-color-dark: #000;
  --pm-color-grey: #26262c;
  --pm-color-grey-light: #888; /* in the designs, not in the official color palette */
  --pm-color-grey-light-map: #eaeaeb; /* in the designs, not in the official color palette */
  --pm-color-cream: #f6f6f6;
  --pm-color-light: #fff;
  --pm-color-gold: #c9b67f;
  --pm-color-gold-dark: #998b61;
}

@font-face {
  font-family: "ModernEra-Regular";
  src: url("font/ModernEra-Regular/ModernEra-Regular.woff2") format("woff2"),
    url("font/ModernEra-Regular/ModernEra-Regular.woff") format("woff");
}



body *:not(i) {
  /*exclude icons, overwrite plugins and bootstrap default font */
  font-family: "ModernEra-Regular", sans-serif;
}

h1,
h2,
h3,
h4,
h5,
h6,
.elementor-heading-title {
  color: #999 !important;
  font-weight: 400;
  font-style: normal;
  --pm-color-gold: #c9b67f;
  --pm-color-gold-dark: #998b61;
}

h1,
h2,
h3,
h4,
h5,
h6,
.elementor-heading-title {
  color: var(--pm-color-grey) !important;
  font-weight: 400;
  font-style: normal;
}

h1 {
  font-size: 9.8vw;
}

h2 {
  font-size: 8.5vw;
}

h3 {
  font-size: 7.2vw;
}

h4 {
  font-size: 6vw;
}

h5 {
  font-size: 4.8vw;
}

h6 {
  font-size: 3.6vw;
}

p {
  font-size: 3.4vw;
}

@media only screen and (min-width: 780px) {
  h1 {
    font-size: 80px;
  }

  h2 {
    font-size: 69px;
  }

  h3 {
    font-size: 59px;
  }

  h4 {
    font-size: 49px;
  }

  h5 {
    font-size: 39px;
  }

  h6 {
    font-size: 29px;
  }

  p {
    font-size: 28px;
  }
}

/* masthead */

#masthead {
  background: var(--pm-color-dark);
}

#masthead a {
  color: var(--pm-color-light);
  position: relative;
}

#masthead .container-fluid {
  padding: 0px 0px 0px 0px;
}

/* nav */

.navbar {
  padding-top: 0px;
  padding-bottom: 0px;
}

.site-title {
  color: var(--pm-color-purple);
}

.site-title img {
  max-width: 150px;
}

.mega-sub-menu {
  position: relative !important;
}

.mega-sub-menu > .mega-menu-item > .mega-sub-menu {
  padding: 10px !important;
}

#mega-menu-wrap-header-menu
  #mega-menu-header-menu
  > li.mega-menu-megamenu
  > ul.mega-sub-menu
  li.mega-menu-columns-1-of-6 {
  width: 25% !important;
}

#mega-menu-wrap-header-menu
  #mega-menu-header-menu
  > li.mega-menu-megamenu
  > ul.mega-sub-menu
  > li.mega-menu-item.mega-disable-link
  > a.mega-menu-link:hover {
  color: #fff !important;
}

/* MegaMenu */
#mega-menu-header-menu {
	z-index: 9999999;
}
@media only screen and (max-width: 780px) {
  /**
    The styles of the menu goes with override
    because it comes from the main widget. Target
    specific components with important
  */

  #mega-menu-wrap-header-menu
    #mega-menu-header-menu
    > li.mega-menu-megamenu
    > ul.mega-sub-menu
    > li.mega-menu-item.mega-menu-item-has-children
    > a.mega-menu-link {
    font-size: 22px !important;
  }

  #mega-menu-wrap-header-menu
    #mega-menu-header-menu
    > li.mega-menu-megamenu
    > ul.mega-sub-menu
    > li.mega-menu-item.mega-menu-item-has-children
    > a.mega-menu-link
    > span.mega-indicator {
    margin-right: -14px;
  }

  #mega-menu-wrap-header-menu
    #mega-menu-header-menu
    > li.mega-menu-megamenu
    > ul.mega-sub-menu
    > li.mega-menu-item
    li.mega-menu-item
    > a.mega-menu-link {
    margin: 8px 0px 0px 0px !important;
    padding: 8px 0px 0px 0px !important;
  }

  #mega-menu-wrap-header-menu
    #mega-menu-header-menu
    > li.mega-menu-item
    > a.mega-menu-link {
    height: 56px !important;
    padding: 0px 0px 0px 0px !important;
  }

  #mega-menu-wrap-header-menu
    #mega-menu-header-menu
    > li.mega-menu-megamenu
    > ul.mega-sub-menu
    li.mega-menu-columns-1-of-6 {
    width: 100% !important;
  }

  .mega-sub-menu > .mega-menu-item > .mega-sub-menu {
    padding: 20px !important;
  }

  #mega-menu-header-menu {
    padding: 0 40px !important;
  }

  a.mega-menu-link:not(.mega-sub-menu .mega-menu-item a) {
    font-size: 22px !important;
    margin-bottom: 50px !important;
  }

  .mega-sub-menu .mega-menu-item a {
    font-size: 29px !important;
    margin-bottom: -20px !important;
    font-weight: 100 !important;
  }

	.mega-toggle-block, .mega-toggle-block button  {
		min-width: 0;
		height: auto;
	}
  .mega-menu-item a:not(.mega-sub-menu .mega-menu-item a) {
    border-bottom: 1px solid rgb(255, 255, 255, 0.25) !important;
    /* the provided design is using white with level of transparency to make grey. 
    Bad practice, retrieve real colors as transparency is not used at any
     stage as the backlground is solid
     */
  }

  a.mega-menu-link:not(.mega-sub-menu .mega-menu-item a) {
    margin-bottom: 0px !important;
  }

  .mega-toggle-on * {
    margin-bottom: 0;
  }

  .mega-sub-menu {
    margin-bottom: 30px !important;
  }

  .menu-item-subtitle {
    font-size: 14px !important;
  }

  #mega-menu-header-menu
    li
    a:not(.mega-sub-menu .mega-menu-item a, #mega-menu-header-menu
      li.mega-toggle-on
      a) {
    margin-bottom: 55px !important;
  }
}

/* Tablet + Desktop */
@media only screen and (min-width: 780px) {
  #mega-menu-wrap-header-menu
    #mega-menu-header-menu
    > li.mega-menu-item
    > a.mega-menu-link:hover {
    color: #fff !important;
    cursor: pointer;
  }

  .navbar-brand {
    margin-left: 100px;
  }

  #mega-menu-header-menu a {
    padding: 0 15px !important;
  }

  .mega-menu-columns-1-of-4 a,
  .mega-menu-columns-1-of-6 a {
    font-size: 29px !important;
  }

  .menu-item-maintitle {
    font-size: 29px !important;
    margin-left: -15px; /*temp */
  }

  .menu-item-subtitle {
    font-size: 14px !important;
    padding-top: 0px;
    margin-bottom: 16px;
  }

  .menu-item-section {
    padding-top: 10px;
  }

  ul.mega-sub-menu {
    min-height: 500px !important;
  }

  .menu-item-section {
    font-size: 22px !important;
  }

  #mega-menu-item-466 .mega-sub-menu .mega-menu-link {
    font-size: 29px !important;
  }

  .navbar-toggler {
    background: var(--pm-color-light);
  }

  #mega-menu-wrap-header-menu
    #mega-menu-header-menu
    > li.mega-menu-item
    > ul.mega-sub-menu {
    position: fixed !important;
    top: 129px !important;
  }

  .mega-sub-menu {
    padding: 30px 120px !important;
  }

  .menu-item-section {
    padding-bottom: 40px;
  }
}

/* menu  end */




/*
section.elementor-section-boxed > .elementor-container {
  max-width: 100% !important;
}
*/
.navigation {
  width: 100%;
}

button {
  position: relative;
  min-width: 150px;
  height: 43px;
  margin: 0;
  padding: 0;
  font-size: 15px;
  color: none;
  border: none;
  border-radius: 4px;
  outline: 0;
  overflow: hidden;
  background: none;
  z-index: 1;
  cursor: pointer;
  transition: 0.08s ease-in;
  -o-transition: 0.08s ease-in;
  -ms-transition: 0.08s ease-in;
  -moz-transition: 0.08s ease-in;
  -webkit-transition: 0.08s ease-in;
}

button * {
  padding: 0 0 0 0px;
}
button.schedule { padding: 10px 20px; position: relative; }
button:not(.mega-toggle-animated) span span {
	visibility: hidden;
}
button:not(.mega-toggle-animated) span span::before {
	visibility: visible;
	content: ' ';
	width: 1px;
	top: 8px;
	bottom: 8px;
	background: #ffffff44;
	position: absolute;
	margin-left: 6px;
}
button:not(.mega-toggle-animated) span span i {
	visibility: visible;
	display: inline-block;
	font-size: 1rem;
	padding-left: 12px;
}

.signin {
  -webkit-transition: all 150ms cubic-bezier(0.445, 0.05, 0.55, 0.95);
  border: 1px solid var(--pm-color-purple);
  border-radius: 5px;
  /* height: 50px; */
  color: var(--pm-color-light);
  background-color: var(--pm-color-dark);
  /* text-transform: uppercase; */
  padding: 0;
  margin: 10px 20px;
}

.primary {
  -webkit-transition: all 150ms cubic-bezier(0.445, 0.05, 0.55, 0.95);
  background: var(--pm-color-purple);
  border-radius: 5px;
  /* height: 50px; */
  color: var(--pm-color-light);
  padding: 0;
}

.secondary {
  -webkit-transition: all 150ms cubic-bezier(0.445, 0.05, 0.55, 0.95);
  background: var(--pm-color-light) !important;
  border-radius: 5px;
  color: var(--pm-color-purple) !important;
  padding: 0;
}

.info {
  -webkit-transition: all 150ms cubic-bezier(0.445, 0.05, 0.55, 0.95);

  border-radius: 5px;
  color: var(--pm-color-purple);
  border: 1px solid var(--pm-color-purple);

  padding: 0;
}

.readmore {
  -webkit-transition: all 150ms cubic-bezier(0.445, 0.05, 0.55, 0.95);
  color: var(--pm-color-light);
  padding: 0;
  margin: 10px 20px;
  width: auto;
  border-bottom: 1px solid var(--pm-color-grey-light);
  min-width: auto;
  height: 40px;
  padding: 0 !important;
}

.schedule {
  -webkit-transition: all 500ms cubic-bezier(0.445, 0.05, 0.55, 0.95);
  background-image: linear-gradient(
    var(--pm-color-purple),
    var(--pm-color-purple-light)
  );
  border-radius: 5px;
  /* height: 50px; */
  color: var(--pm-color-light);
  padding: 10px;
	border: 0;
}
.schedule:before, .schedule:after {
	opacity: 0.0;
}
.golden {
  -webkit-transition: all 150ms cubic-bezier(0.445, 0.05, 0.55, 0.95);
  background-image: linear-gradient(
    var(--pm-color-gold-dark),
    var(--pm-color-gold)
  );
  border-radius: 5px;
  /* height: 50px; */
  color: var(--pm-color-light);
  padding: 10px;
}

.signin:hover,
.info:hover,
.schedule:hover {
  color: var(--pm-color-light);
}

.primary:hover,
.schedule:hover {
  color: var(--pm-color-light);
}

.readmore:hover {
  color: var(--pm-color-light);
}

.golden:hover {
  color: var(--pm-color-light);
  background: var(--pm-color-gold-dark);
}

.signin:before,
.primary:before,
.info:before,
.schedule:before,
.golden:before {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: -1;
  opacity: 0;
  -webkit-transition: all 500ms cubic-bezier(0.23, 1, 0.32, 1);
  transition: all 500ms cubic-bezier(0.23, 1, 0.32, 1);
}

.signin:after,
.primary:after,
.secondary:after,
.info:after,
.schedule:after,
.golden:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 100%;
  top: 0;
  z-index: -2;
  -webkit-transition: all 500ms cubic-bezier(0.23, 1, 0.32, 1);
  transition: all 500ms cubic-bezier(0.23, 1, 0.32, 1);
}
.schedule:after { bottom: 30%; }
.signin:after,
.info:after,
.schedule:after {
  background: var(--pm-color-purple);
  color: var(--pm-color-light);
}

.primary:after,
.schedule:after {
  background: var(--pm-color-purple-dark);
}

.secondary:after {
  background: var(--pm-color-purple-ultralight);
}

.golden:after {
  background: var(--pm-color-gold-dark);
}

.signin:hover:before,
.primary:hover:before,
.secondary:hover:before,
.info:hover:before,
.schedule:hover:before,
.golden:hover:before {
  opacity: 0.6;
}
.signin:hover:after,
.primary:hover:after,
.secondary:hover:after,
.info:hover:after,
.schedule:hover:after,
.golden:hover:after {
  opacity: 0.6;
  right: 0;
	bottom: 0;
}


/* Elementor limitations fixes */

#jumbotron {
  min-height: 100vh;
}

#jumbotron * {
  background-repeat: no-repeat;
}

.float-right button {
  float: right;
}

#event-cards .elementor-widget {
  float: left;
  width: 493px;
  margin-right: 100px;
}

/* end of nav */

.testimonial-image {
  width: 5em !important;
  height: 5em !important;
  border-radius: 100% !important;
  object-position: center;
  object-fit: cover;
  margin-inline: 0px;
  margin-block: 1em;
}

.testimonial-card {
  padding: 2em;
  -webkit-box-shadow: 9px 11px 14px 0 rgb(0 0 0 / 10%);
  box-shadow: 9px 11px 14px 0 rgb(0 0 0 / 10%);
}

.cards .elementor-widget:not(:last-child) {
  margin: 0; /*remove unneded space in cards rows*/
}

a,
a:hover,
a:focus,
a:active {
  color: inherit;
}




/* footer */

#footer {
  background: #000;
  font-size: 22px;
  padding: 300px 122px 30px 122px !important;
	line-height: 1.5;
}

#footer a {
  text-decoration: none !important;
}

#footer div {
  color: var(--pm-color-cream);
  margin-bottom: 0px;
  flex-wrap: wrap;
}

#footer ul {
  list-style-type: none !important;
  margin-bottom: 0 !important;
}
.socialmedia {
  list-style-type: none !important;
  padding-top: 120px;
}
.socialmedia li {
  padding-right: 25px;
}

#footer-mail ul {
  padding: 0;
}

#footer-links {
  flex-direction: row;
}
.copyright {
  color: var(--pm-color-grey-light) !important;
  text-align: right;
  font-size: 18px;
}

/* general side space 122px */

/**
  Mobile
*/
@media only screen and (max-width: 750px) {
  /**
    Footer styles
  */
  #footer {
    padding: 90px 30px 30px 30px !important;
    font-size: 3vw;
  }

  #footer ul {
    margin-bottom: 0 !important;
    padding-left: 0;
  }

  #footer li {
    padding-bottom: 5px;
  }

  #footer-mail {
    padding: 0 50px 30px 0;
  }

  #footer-links div {
    padding: 0 50px 30px 0;
    flex-direction: column;
  }

  #footer .socialmedia ul {
    padding-top: 80px 5px 0 0;
    flex: 0;
  }

  .socialmedia {
    padding: 30px 0;
  }

  .copyright {
    color: var(--pm-color-grey-light) !important;
    text-align: left;
    font-size: 3vw;
    padding: 0;
  }

  #mega-menu-wrap-header-menu
    #mega-menu-header-menu
    > li.mega-menu-megamenu
    > ul.mega-sub-menu {
    padding: 10px 0px 50px 0px !important;
  }

  #mega-menu-wrap-header-menu
    #mega-menu-header-menu
    > li.mega-menu-megamenu
    > ul.mega-sub-menu
    > li.mega-menu-item {
    padding: 15px 15px 15px 0px !important;
  }

  #mega-menu-wrap-header-menu
    .mega-menu-toggle.mega-menu-open
    + #mega-menu-header-menu {
    padding-top: 25px !important;
  }

  .navbar-brand {
    width: 200px;
  }

  .signin {
    display: none;
  }
}

/* end footer */

.navbar-brand {
  position: relative;
  z-index: 1;
  padding-top: 0px;
  padding-bottom: 0px;
}

.navbar-collapse {
  position: relative;
  z-index: 0;
}

object {
  pointer-events: none;
}

/* PM card plugin */
.pm-card-event .category {
	z-index: 10 !important;
}

/* Bootstrap replacement CSS - High priority */
body {
	margin: 0;
    font-family: var(--bs-font-sans-serif);
    font-size: 1rem;
    font-weight: 400;
 /*   line-height: 1.5; */
    color: #212529;
    background-color: #fff;
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: transparent;
}
*,
*::before,
*::after {
  box-sizing: border-box;
}
.container-fluid {
	padding: 0;
}
.navbar>.container, .navbar>.container-fluid, .navbar>.container-lg, .navbar>.container-md, .navbar>.container-sm, .navbar>.container-xl, .navbar>.container-xxl {
    display: flex;
    flex-wrap: inherit;
    align-items: center;
    justify-content: space-between;
}
.navbar {
	padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}
.row {
    --bs-gutter-x: 1.5rem;
    --bs-gutter-y: 0;
    display: flex;
    flex-wrap: wrap;
    margin-top: calc(var(--bs-gutter-y) * -1);
    margin-right: calc(var(--bs-gutter-x) * -.5);
    margin-left: calc(var(--bs-gutter-x) * -.5);
}
.row>* {
    flex-shrink: 0;
    width: 100%;
    max-width: 100%;
    padding-right: calc(var(--bs-gutter-x) * .5);
    padding-left: calc(var(--bs-gutter-x) * .5);
    margin-top: var(--bs-gutter-y);
}
.col {
    flex: 1 0 0%;
    flex-grow: 1;
    flex-shrink: 0;
    flex-basis: 0%;
	margin: 0;
}
.col-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
}
.col-3 {
    flex: 0 0 auto;
    width: 25%;
}
.col-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
}
.col-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
}
.col-9 {
    flex: 0 0 auto;
    width: 75%;
}
.col-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
}
.p-0 {
    padding: 0!important;
}
.m-0 {
    margin: 0!important;
}
.mt-3 {
    margin-top: 1rem!important;
}
.d-flex {
    display: flex;
}
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
    margin-top: 0;
    margin-bottom: 0.5rem;
    line-height: 1.2;
}
p {
    margin-top: 0;
    margin-bottom: 1rem;
	line-height: 1.5;
}
.align-items-center {
    align-items: center!important;
}
.justify-content-center {
    justify-content: center!important;
}
.overflow-scroll {
    overflow: scroll;
}
/* end bootstrap replacement CSS */
