/* 
Theme Name: Marrickville Project Theme
Theme URI: https://osky.com.au
Description: Theme for the Marrickville Project website.
Author: OSKY
Author URI: https://osky.com.au
Template: hello-elementor
Version: 2.0.0
*/

/* Add your custom styles here */

.popup-inner {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 9999;
  background-color: rgba(0, 0, 0, 0.85);
  justify-content: center;
  align-items: center;
  padding: 2rem;
  flex-direction: column;
}
.popup-inner.active {
  display: flex;
}
#close-popup {
  position: absolute;
  top: 1rem;
  right: 1rem;
  background: #fff;
  border: none;
  font-size: 2rem;
  line-height: 1;
  cursor: pointer;
  border-radius: 50%;
  width: 40px;
  height: 40px;
}

#grid-info-btn a {
text-decoration: none;
}
/* Form container */
/*
#gform_1 {
  max-width: 1000px;
  margin: 2rem auto;
  padding: 2rem;
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}

/* Set grid on the fields container 
#gform_fields_1 {
  display: grid;
  grid-template-columns: 50% 1fr;
  grid-template-rows: auto auto auto;
  gap: 1.5rem 2rem;
}

/* Place Name, Email, and Address in column 1 
#field_1_1 {
  grid-column: 1;
  grid-row: 1;
}
#field_1_3 {
  grid-column: 1;
  grid-row: 2;
}
#field_1_4 {
  grid-column: 1;
  grid-row: 3;
}

/* Place Message in column 2, spanning all rows
#field_1_5 {
  grid-column: 2;
  grid-row: 1 / span 3;
}
*/

#gform_fields_1{
  gap:20px;
}

#gform_fields_1 label{
  color:#000 !important;
}

#gform_submit_button_1{
  width: 100%
}

#popup-vid-btn {
  cursor: pointer;
}

.news-scroller.e-widget-swiper .elementor-widget-container .swiper {
  padding-bottom: 0px;
}

.elementor-testimonial-content::before {
  content: url('/wp-content/themes/marrickvilleproject/assets/img/testimonial-quote.png');
  position: absolute;
  z-index: -1;
  left: 56px;
  top: 55px;
}

/* Responsive: Stack all fields on smaller screens */
@media (max-width: 768px) {
  #gform_fields_1 {
    display: flex;
    flex-direction: column;
  }

  #field_1_1,
  #field_1_3,
  #field_1_4,
  #field_1_5 {
    grid-column: unset;
    grid-row: unset;
    width: 100%;
  }
}
.gform-body textarea{
min-block-size: 9rem !important;
}
.gform-footer.gform_footer.top_label {
    justify-content: center;
    margin-top: 0;
}
/* Input & textarea styles */
.gform-body input[type="text"],
.gform-body input[type="email"],
.gform-body textarea {
  width: 100%;
  padding: 0.75rem 1rem;
  font-size: 1rem;
  border: 1px solid #ccc;
  border-radius: 6px;
  background: #FFF;
  margin-bottom: 0.5rem;
  transition: border-color 0.3s ease;
box-shadow: none;
}

.gform-body input:focus,
.gform-body textarea:focus {
  border-color: #ea377d;
  outline: none;
}

#map {
  width: 100%;
  height: 1400px;
  background: #e2efce;
}

#ground-floor-btn, #first-floor-btn {
  cursor: pointer;
}

#ground-floor-btn.active, #first-floor-btn.active {
  background-color: #000;
  color: #fff;
}

#ground-floor-btn:hover, #first-floor-btn:hover {
  background-color: #000;
  color: #fff;
}

.row {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -15px;
}

.col-md-6 {
  flex: 0 0 50%;
  max-width: 50%;
  padding: 0 15px;
}

.col-md-12 {
  flex: 0 0 100%;
  max-width: 100%;
  padding: 0 15px;
}

.tile-name {
  font-size: 22px;
  font-weight: 600;
  margin-bottom: 10px;
}

.tile-heading {
  font-size: 24px;
  font-weight: 600;
  margin-bottom: 10px;
}

.tile-subheading {
  font-size: 16px;
  font-weight: 400;
  margin-bottom: 10px;
}

.callback-form {
  padding: 20px;
}

.callback-form label {
  font-size: 17px;
  font-weight: 400;
  margin-bottom: 5px;
}

.callback-form .row {
  margin: 20px -15px;
}

.hidden.callback-form, .tile-content.hidden {
  display: none;
}

.hidden-div {
  display: none;
}

.form-alert {
  color: #D92B31;
  font-size: 14px;
  margin-top: 10px;
}

.form-alert.hidden {
  display: none;
}

.unit-number {
  font-size: 22px;
  font-weight: 400;
  margin-bottom: 10px;
}

.tile-description {
  font-size: 16px;
  font-weight: 400;
  margin-bottom: 10px;
}

.tile-cost {
  font-size: 22px;
  font-weight: 600;
  margin-bottom: 10px;
}

button.book-to-talk,
button.request-callback {
  font-size: 14px;
  font-weight: 400;
  padding: 10px 20px;
  border-radius: 24px;
}

button.book-to-talk {
  background-color: #D92B31;
  color: #fff;
  border: none;
  transition: background-color 0.3s ease;
}

button.request-callback {
  background-color: #fff;
  color: #000;
  border: 2px solid #D92B31;
}

button.submit-callback {
  background-color: #D92B31;
  color: #fff;
  border: none;
  padding: 10px 20px;
  font-size: 16px;
  font-weight: 600;
  border-radius: 24px;
  width: 100%;
  margin: 12px;
  margin-top: 20px;
}

#secure-your-spot {
  cursor: pointer;
}

.tile-content {
  padding: 20px;
  display: grid;
  font-family: 'Poppins', sans-serif;
}

.leaflet-popup-content {
  margin: 0px;
}

.leaflet-popup-content-wrapper {
  padding: 0px;
}

.popularity-marker-badge {
  background: #FF5056;
  color: #fff;
  padding: 4px 8px;
  border: 1px solid #fff;
  border-radius: 12px;
  font-size: 10px;
  font-weight: 400;
}

.popularity-marker-badge.medium {
  background: #FEC431;
  width: 54px;
}

.popularity-marker-badge.low {
  background: #BDD36D;
}

/* Mobile circular styling for popularity markers */
@media screen and (max-width: 799px) {
  .popularity-marker-badge.mobile {
    border-radius: 50%;
    width: 14px;
    height: 14px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 8px;
    text-align: center;
    content-visibility: hidden;
  }
}

/* Labels */
.gform-field-label, legend.gfield_label.gform-field-label {
    font-weight: 400 !important;
    font-size: 16px !important;
    margin-bottom: 0.5rem;
    color: #000;
}

.gform_fields .gform-field-label.gform-field-label--type-sub {
  font-size: 14px !important;
}

#gfb-fancy-calendar {
  font-size: 14px;
}

/* Submit button */
#gform_submit_button_1 {
    background: #000000;
    color: #fff;
    border: 1px solid;
    padding: 0.75rem 2rem;
    font-size: 18px;
    font-weight: bold;
    border-radius: 6px;
    cursor: pointer;
    transition: background 0.3s ease;
}
#gform_submit_button_1:hover {
  background: #dd3333;
}

.wp-block-image.alignfull.size-large{
  width:100%;
  max-width:100%;
  margin:auto;
}

.elementor-post .elementor-post__read-more{
  color:#000 !important;
  background-color:#fff !important;
  transition: all 0.4s;
  border:1px solid #fff;
  border-radius: 8px;
  font-weight: 600;
  font-size: 16px;
  padding:8px 16px;
}

.latest-news button{
  transition: all 0.4s;
  border:1px solid #fff;
}

.elementor-post .elementor-post__read-more:hover,
.elementor-post .elementor-post__read-more:active,
.latest-news button:hover,
.latest-news button:active{
  color:#fff !important;
  background-color:transparent !important;
}

.elementor-post{
  overflow:initial !important;
}

nav .menu-item a,
nav .menu-item a.elementor-item-active{
  padding:8px 16px !important;
  transition:all 0.4s;
}

@media screen and (max-width:1280px){
  button.book-to-talk, button.request-callback {
    font-size: 10px;
    padding: 8px 10px;
  }

}

@media screen and (min-width:800px){
  nav .menu-item a,
  nav .menu-item a.elementor-item-active{
    color:#fff !important;
    border:1px solid #fff;
    border-radius:30px;
  }
}

nav .menu-item a:hover,
nav .menu-item a:active{
  background-color:#fff !important;
  color:#000 !important;
}

.cta-icon a{
  text-decoration:none;
}

.gform_required_legend{
  display:none !important;
}

.gform_fields .gfield label{
  font-size:20px !important;
  color:#fff !important;
}

.gform_fields .gfield input[type="text"],
.gform_fields .gfield input[type="email"],
.gform_fields .gfield input[type="phone"],
.gform_fields .gfield input[type="tel"],
.gform_fields .gfield input[type="number"],
.gform_fields .gfield select{
  height:50px !important;
  border-radius:4px !important;
}

.gform-footer {
  margin-top:20px !important;
  justify-content:start !important;
}

.gform-footer .gform_button {
  font-size:16px !important;
  padding:13px 24px !important;
  background-color:#D92B31 !important;
  transition:all 0.4s;
  border:1px solid #D92B31 !important;
}

.gform-footer .gform_button:hover,
.gform-footer .gform_button:active{
  background-color:transparent !important;
  color: #D92B31 !important;
}

.wp-block-image.alignfull.size-large{
  width:100%;
  max-width:100%;
  margin:auto;
}

.elementor-post .elementor-post__read-more{
  color:#000 !important;
  background-color:#fff !important;
  transition: all 0.4s;
  border:1px solid #fff;
  border-radius: 8px;
  font-weight: 600;
  font-size: 16px;
  padding:8px 16px;
}

.latest-news button{
  transition: all 0.4s;
  border:1px solid #fff;
}

.elementor-post .elementor-post__read-more:hover,
.elementor-post .elementor-post__read-more:active,
.latest-news button:hover,
.latest-news button:active{
  color:#fff !important;
  background-color:transparent !important;
}

.elementor-post{
  overflow:initial !important;
}

nav .menu-item a,
nav .menu-item a.elementor-item-active{
  padding:8px 16px !important;
  transition:all 0.4s;
}

nav.elementor-nav-menu--dropdown{
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

@media screen and (min-width:800px){
  nav .menu-item a{
    color:#fff !important;
    border:1px solid #fff;
    border-radius:30px;
  }
}

@media screen and (max-width:799px){
  nav .menu-item a{
    color:#000 !important;
  }

  nav li.current_page_item a{
    background-color: transparent !important;
    color:#000 !important;
  }
  
  .col-md-6 {
    flex: 0 0 100%;
    max-width: 100%;
    padding: 0 15px;
  }

  button.book-to-talk {
    margin-bottom: 10px;
  }

}

nav .menu-item a:hover,
nav .menu-item a:active{
  background-color:#fff !important;
  color:#000 !important;
}

.cta-icon a{
  text-decoration:none;
}

.gform_required_legend{
  display:none !important;
}

.gform_fields .gfield label{
  font-size:20px !important;
  color:#fff !important;
}

#gform_5 .gform_fields .gfield label {
  color: #000 !important;
}

.gform_fields .gfield input[type="text"],
.gform_fields .gfield input[type="email"],
.gform_fields .gfield input[type="phone"],
.gform_fields .gfield input[type="tel"],
.gform_fields .gfield input[type="number"],
.gform_fields .gfield select{
  height:50px !important;
  border-radius:4px !important;
  line-height: 48px;
}

.gform-footer {
  margin-top:20px !important;
  justify-content:start !important;
}

.gform-footer .gform_button {
  font-size:16px !important;
  padding:13px 24px !important;
  background-color:#D92B31 !important;
  transition:all 0.4s;
  border:1px solid #D92B31 !important;
}

.gform-footer .gform_button:hover,
.gform-footer .gform_button:active{
  background-color:transparent !important;
  color: #D92B31 !important;
}

#gform_fields_3{
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
}

@media screen and (max-width:799px){
  #gform_fields_3{
    row-gap:20px;
    justify-content: center;
  }
}

#gform_fields_3 input[type="email"]{
  height: 44px !important;
}

#gform_submit_button_3{
  background-color: #D92B31;
  border:1px solid #D92B31;
  font-size: 16px !important;
  padding: 12px 16px;
  margin-bottom: 8px;
  transition: all .4s;
  font-weight: 500;
}

#gform_submit_button_3:hover,
#gform_submit_button_3:active{
  background-color: transparent;
  color:#D92B31;
}

@media screen and (max-width:767px){
  .elementor-14 .elementor-element.elementor-element-3b007fc .elementor-button{
    padding:12px 15px 12px 15px;
  }
}