/*
Theme Name:   Skylith Child - AZ Builders
Theme URI:    https://azbuilders.org
Author:       Cooper Richardson
Template:     skylith
Author URI:   https://tmbpartners.com
Description:  Skylith Child Theme for AZ Builders with block styles and design system.
Version:      2.0.0
License:      GNU General Public License v2 or later
License URI:  http://www.gnu.org/licenses/gpl-2.0.html
Text Domain:  skylith-child-azbuilders
Tags:         full-site-editing, block-styles, custom-colors
*/


/* Theme customization starts here
-------------------------------------------------------------- */

/* =============================================================================
   Global Button Styles
   ============================================================================= */

:root :where(.wp-element-button, .wp-block-button__link) {
    background-color: var(--wp--preset--color--secondary);
    color: var(--wp--preset--color--white);
    border: 1px solid var(--wp--preset--color--secondary);
    border-radius: 0;
    padding: 0.75em 2em;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: 700;
    font-family: var(--wp--preset--font-family--nunito-sans);
    cursor: pointer;
    transition: all 0.3s ease;
}

:root :where(.wp-element-button:hover, .wp-block-button__link:hover) {
    background-color: var(--wp--preset--color--white);
    color: var(--wp--preset--color--secondary);
}

/* =============================================================================
   Hover Color Block Pattern Styles
   ============================================================================= */

.az-hover-color-block {
    position: relative;
    cursor: pointer;
    overflow: hidden;
}

.az-hover-color-block::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: inherit;
    mix-blend-mode: color;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
}

.az-hover-color-block:hover::before {
    opacity: 0.9;
}

.az-hover-overlay {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: center;
}

.az-hover-content {
    height: 44px;
    overflow: hidden;
    transition: height 0.4s ease;
    width: 100%;
}

.az-hover-description,
.az-hover-button {
    opacity: 0;
    transform: translateY(20px);
    transition: all 0.4s ease 0.1s;
}

.az-hover-color-block:hover .az-hover-content {
    height: var(--content-height);
}

.az-hover-color-block:hover .az-hover-description,
.az-hover-color-block:hover .az-hover-button {
    opacity: 1;
    transform: translateY(0);
}

/* Tablet: 2 columns for images at 990px and below */
@media (max-width: 990px) {

}

/* Mobile: Convert hover to always visible */
@media (max-width: 768px) {
    .az-hover-color-block::before {
        opacity: 0.9;
    }

    .az-hover-content {
        height: auto;
    }

    .az-hover-description,
    .az-hover-button {
        opacity: 1;
        transform: translateY(0);
    }

    .nk-navbar .container-fluid .nk-nav-table,
    .nk-navbar-full .container-fluid .nk-nav-header {
        padding-left: 0;
    }
}

/* =============================================================================
   Menu Styles
   ============================================================================= */


#menu-mega-menu{
  display: flex !important; 
}

#menu-mega-menu .search-button.menu-item 
{
  margin-left: auto;
}

.what-we-do-menu {

}

.mega-sub-menu {
   position: absolute;
   transition: all .2s;
   opacity: 0;
   visibility: hidden;
   top: 100%;
   width: 100%;
}

.mega-sub-menu.active {
   opacity: 1;
   visibility: visible;
}
.mega-sub-menu .az-hover-content{
  height: auto;
}

.nk-header .nk-navbar{
   padding: 13px 0;
}

.nk-header .nk-navbar .nk-nav > li > a{
   padding: .25em 1em;
   font-size: 1.25rem;
   font-weight: 600;
   color: var(--wp--preset--color--secondary);
   cursor: pointer;
}
.nk-header .nk-navbar .nk-nav > li:hover a{
   text-decoration: underline;
   text-decoration-thickness: 0.125em;
   /* FIXED: Reduced from .5em to .2em to prevent mouseleave gap issue */
   text-underline-offset: .2em;
}

/* Button block items styling */
.nk-header .nk-navbar .nk-nav > li.__item--wp-block-button a{
   text-decoration: none !important;
   transition: background-color 0.3s ease, color 0.3s ease;
}

.nk-header .nk-navbar .nk-nav > li.__item--wp-block-button:hover a,
.nk-header .nk-navbar .nk-nav > li.__item--wp-block-button.active a{
   text-decoration: none !important;
   background-color: var(--wp--preset--color--secondary);
   color: white !important;
}

.simple-menu a{
   font-weight: 600;
}

.simple-menu .red-underline, .member-menu-menu .red-underline, .what-we-do-menu .red-underline{
   text-decoration-thickness: 2px;
   color: var(--wp--preset--color--secondary);
}

.member-menu-menu a{
}

.member-menu-menu .wp-block-navigation a{
   font-weight: 600;
   /* text-decoration-thickness: 2px;
   text-decoration: underline;
   text-underline-offset: .5em; */
   /* color: var(--wp--preset--color--secondary); */
}

.site-content {
   /* transition: filter 0.3s ease; */
}
.site-content.blur {
   filter: blur(5px);
}
.search-button svg,
.cart-button svg {
   width: 1.125em;
   vertical-align: middle;
}

@media (max-width: 787px) {
   .wp-block-azbuilders-product-variation-cart-button {
      margin-top: 1em !important;
      margin-bottom: 1em !important;
   }
}

/* Hide cart item image links */
td.wc-block-cart-item__image a {
    display: none !important;
}

td.wc-block-cart-item__image img {
    display: none !important;
}

/* Hide WooCommerce new products block and related elements */
.wp-block-woocommerce-product-new {
    display: none;
}

/* Hide dots separator and "New in store" heading on cart page */
.woocommerce-cart .wp-block-separator.is-style-dots {
    display: none !important;
}

.woocommerce-cart h2.wp-block-heading:has(+ .wp-block-woocommerce-product-new) {
    display: none !important;
}

/* Hide order summary item images */
.wc-block-components-order-summary-item__image {
    display: none !important;
}

.wc-block-components-order-summary-item__image img {
    display: none !important;
}

/* Password protected post styling */
.post-password-required {
    min-height: 50vh;
    margin-top: 50vh;
}

.what-we-do-menu .az-hover-color-block{
   min-height: auto !important;
}

/* ============================================================================
   SUB-SUBMENU FUNCTIONALITY - INTENTIONALLY DISABLED
   ============================================================================
   Sub-submenu functionality is currently disabled pending future implementation.

   To re-enable:
   1. Uncomment the CSS rule below (lines 197-200)
   2. Uncomment the event handlers in menu-script.js (lines 92-93)
   3. Test thoroughly before deploying
   ============================================================================ */
nav.mega-sub-submenu {
   display: none !important;
   visibility: hidden !important;
}

/* Re-enable this rule when sub-submenus are ready to use
nav.mega-sub-submenu[data-visible="true"] {
   display: block !important;
   visibility: visible !important;
}
*/

/* .nk-navbar-sticky:not(.nk-navbar-fixed){
  background: transparent;
} */
.nk-navbar-sticky:not(.nk-navbar-solid) .nk-nav-table>#menu-mega-menu > li > a{
  color: white;
}
/* .nk-header.nk-header-opaque{
  position: absolute;
} */

.__item--wp-block-button{
  border: 1px solid var(--wp--preset--color--secondary);
}
.__item--wp-block-button:hover a{
  text-decoration: none;
}

.nk-navbar-sticky:not(.nk-navbar-solid) .__item--wp-block-button{
  border: 1px solid white;
}

.__item--wp-block-button a{
  font-size: 16px;
  padding: .5em 1em;
}
.nk-navbar.nk-navbar-white-text-on-top.nk-navbar-solid .nk-nav > li > a{
  color: var(--wp--preset--color--secondary);
}


.nk-navbar-full .dropdown > .dropdown-back > a::after{
  margin-top: -8px;
  border: none;
  border-top: 8px solid transparent;
  border-right: 8px solid;
  border-bottom: 8px solid transparent;
}

.nk-navbar-full .nk-nav .nk-drop-item > a::after, .nk-navbar-full .nk-nav .nk-drop-item .nk-drop-item > a::after, .nk-navbar-full .nk-nav > .nk-drop-item > a::after{
  margin-top: -8px;
  border: none;
  border-top: 8px solid transparent;
  border-left: 8px solid;
  border-bottom: 8px solid transparent;
}
.nk-navbar-full .nk-nav > li > a, .nk-navbar-full .nk-nav .dropdown > li > a, .nk-navbar-full .nk-nav .dropdown > li:last-of-type > a, .nk-navbar-full .nk-nav > li:last-of-type > a, .nk-navbar-full .nk-nav > li > a{
  font-family: var(--wp--preset--font-family--nunito-sans);
}
.nk-navbar-full.open .nk-nav-row-full{
  padding-bottom: 6em;
}
/* =============================================================================
   Calendar Styles
   ============================================================================= */

/* Calendar month view - event cards only (not single event pages) */
   .tribe-events-calendar-month__calendar-event.tribe_events_cat-tucson {background-color: #123977;}
   .tribe-events-calendar-month__calendar-event.tribe_events_cat-phoenix {background-color: #145835;}
   .tribe-events-calendar-month__calendar-event.tribe_events_cat-national {background-color: #546e7a;}
   
   .tribe_events_cat-tucson .tribe-events-calendar-month__calendar-event-details time,
   .tribe_events_cat-tucson .tribe-events-calendar-month__calendar-event-details span,
   .tribe_events_cat-tucson .tribe-events-calendar-month__calendar-event-details h3.tribe-events-calendar-month__calendar-event-title .tribe-events-calendar-month__calendar-event-title-link { color:#fff !important; }
   
   .tribe_events_cat-phoenix .tribe-events-calendar-month__calendar-event-details time,
   .tribe_events_cat-phoenix .tribe-events-calendar-month__calendar-event-details span,
   .tribe_events_cat-phoenix .tribe-events-calendar-month__calendar-event-details h3.tribe-events-calendar-month__calendar-event-title .tribe-events-calendar-month__calendar-event-title-link { color:#fff !important; }
   
   .tribe_events_cat-national .tribe-events-calendar-month__calendar-event-details time,
   .tribe_events_cat-national .tribe-events-calendar-month__calendar-event-details span,
   .tribe_events_cat-national .tribe-events-calendar-month__calendar-event-details  h3.tribe-events-calendar-month__calendar-event-title .tribe-events-calendar-month__calendar-event-title-link { color:#fff !important; }

   /* Event title links - white color */
   .tribe-events .tribe-events-calendar-month__calendar-event-title-link,
   .tribe-events .tribe-events-calendar-month__multiday-event-bar-title {
       color: white !important;
   }

   /* Remove container padding */
   .tribe-events .tribe-events-l-container {
       padding: 0 !important;
   }

   /* Remove padding from main event containers */
   #tribe-events,
   #tribe-events-pg-template,
   .tribe-events-pg-template,
   #tribe-events-content {
       padding: 0 !important;
   }

   /* Remove post text margin */
   .nk-post-text {
       margin: 0 !important;
   }


.catfilterseccls {
       margin: 10px 0px;
       width: 100%;
   }
   .entry .entry-content .event-tickets .tribe-tickets__tickets-form, .event-tickets .tribe-tickets__tickets-form, .event-tickets .tribe-tickets__rsvp-wrapper{
     max-width:none;
   }
   .tribe-events-back, .tribe-events-single-event-title, #tribe-events-footer{
     display:none;
   }
   .tribe-tickets__tickets-item-quantity button{
     border: 0 !important;
     padding: 0 !important;
     width: auto !important;
   }
   .tribe-tickets__attendee-tickets-item-remove{
     background-color:transparent !important;
     border:none !important;
     width: auto !important;
   }
   
   .tribe-dialog__close-button.tribe-modal__close-button{
         width: var(--tec-dialog-close-height) !important;
   }
   @media screen and (min-width: 768px) {
     .tribe-dialog__close-button.tribe-modal__close-button{
         width: var(--tec-dialog-close-height-desktop) !important;
   }
   }
   
   .tribe-events-c-top-bar__datepicker-button{
     padding: .1em .5em !important;
     border-radius: 5px !important;	
   }
   .tribe-events-c-subscribe-dropdown__container{
   display:none !important;
   }
   
   article.tribe_events_cat-phoenix{
     background-color:transparent !important;
   }
   article.tribe_events_cat-phoenix>div{
     background-color:#EE3342 !important;
   }
   article.tribe_events_cat-phoenix>div h3{
     color:white !important;
     font-weight:bold !important;
   }
   
   article.tribe_events_cat-tucson{
     background-color:transparent !important;
   }
   article.tribe_events_cat-tucson>div{
     background-color:#14315A !important;
   }
   article.tribe_events_cat-tucson>div h3{
     color:white !important;
     font-weight:bold !important;
   }
   
   article.tribe_events_cat-national{
     background-color:transparent !important;
   }
   article.tribe_events_cat-national>div{
     background-color:#546e7a !important;
   }
   article.tribe_events_cat-national>div h3{
     color:white !important;
     font-weight:bold !important;
   }
   
   .tribe-events .tribe-events-calendar-month__calendar-event{
     padding: 0 !important;
   }
   .tribe-events-calendar-month__calendar-event-details{
     padding:.25em !important;
   }
   .tribe-events .tribe-events-calendar-month__multiday-event-bar-inner{
     background: unset !important;
   }
   .tribe-events .tribe-events-calendar-month__multiday-event--past .tribe-events-calendar-month__multiday-event-bar-featured-icon, .tribe-events .tribe-events-calendar-month__multiday-event--past .tribe-events-calendar-month__multiday-event-bar-title{
   /* 	opacity:1; */
   }
   .tribe-events .tribe-events-calendar-month__day-cell--mobile{
     color: unset;
     background-color: transparent;
     border-radius: unset;
     padding: 5px;
   }
   .tribe-events .tribe-events-calendar-month-mobile-events__mobile-event-datetime{
     color: white !important;
   }
   .tribe-events .tribe-events-calendar-month-mobile-events__mobile-event-title-link{
     color: white !important;
   }
   
  .entry-content .tribe-events table th, .entry-content .tribe-events table td{
       padding: unset;
       word-break: initial;
       border: none;
   }


/* =============================================================================
   Form Styles - Gravity Forms
   ============================================================================= */

.gform_wrapper.gravity-theme input[type=color],
.gform_wrapper.gravity-theme input[type=date],
.gform_wrapper.gravity-theme input[type=datetime-local],
.gform_wrapper.gravity-theme input[type=datetime],
.gform_wrapper.gravity-theme input[type=email],
.gform_wrapper.gravity-theme input[type=month],
.gform_wrapper.gravity-theme input[type=number],
.gform_wrapper.gravity-theme input[type=password],
.gform_wrapper.gravity-theme input[type=search],
.gform_wrapper.gravity-theme input[type=tel],
.gform_wrapper.gravity-theme input[type=text],
.gform_wrapper.gravity-theme input[type=time],
.gform_wrapper.gravity-theme input[type=url],
.gform_wrapper.gravity-theme input[type=week],
.gform_wrapper.gravity-theme select,
.gform_wrapper.gravity-theme textarea,
.gform_wrapper.gravity-theme input[type=color]:focus,
.gform_wrapper.gravity-theme input[type=date]:focus,
.gform_wrapper.gravity-theme input[type=datetime-local]:focus,
.gform_wrapper.gravity-theme input[type=datetime]:focus,
.gform_wrapper.gravity-theme input[type=email]:focus,
.gform_wrapper.gravity-theme input[type=month]:focus,
.gform_wrapper.gravity-theme input[type=number]:focus,
.gform_wrapper.gravity-theme input[type=password]:focus,
.gform_wrapper.gravity-theme input[type=search]:focus,
.gform_wrapper.gravity-theme input[type=tel]:focus,
.gform_wrapper.gravity-theme input[type=text]:focus,
.gform_wrapper.gravity-theme input[type=time]:focus,
.gform_wrapper.gravity-theme input[type=url]:focus,
.gform_wrapper.gravity-theme input[type=week]:focus,
.gform_wrapper.gravity-theme select:focus,
.gform_wrapper.gravity-theme textarea:focus,
.gform_wrapper.gravity-theme input[type=color]:active,
.gform_wrapper.gravity-theme input[type=date]:active,
.gform_wrapper.gravity-theme input[type=datetime-local]:active,
.gform_wrapper.gravity-theme input[type=datetime]:active,
.gform_wrapper.gravity-theme input[type=email]:active,
.gform_wrapper.gravity-theme input[type=month]:active,
.gform_wrapper.gravity-theme input[type=number]:active,
.gform_wrapper.gravity-theme input[type=password]:active,
.gform_wrapper.gravity-theme input[type=search]:active,
.gform_wrapper.gravity-theme input[type=tel]:active,
.gform_wrapper.gravity-theme input[type=text]:active,
.gform_wrapper.gravity-theme input[type=time]:active,
.gform_wrapper.gravity-theme input[type=url]:active,
.gform_wrapper.gravity-theme input[type=week]:active,
.gform_wrapper.gravity-theme select:active,
.gform_wrapper.gravity-theme textarea:active {
    border: 1px solid var(--wp--preset--color--secondary);
}

.gform_wrapper.gravity-theme .gform_footer button,
.gform_wrapper.gravity-theme .gform_footer input,
.gform_wrapper.gravity-theme .gform_page_footer button,
.gform_wrapper.gravity-theme .gform_page_footer input {
    background-color: var(--wp--preset--color--white);
    color: var(--wp--preset--color--secondary);
    border: 1px solid var(--wp--preset--color--secondary);
    border-radius: 0;
    padding: 0.75em 2em;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: 700;
    font-family: var(--wp--preset--font-family--nunito-sans);
    cursor: pointer;
    transition: all 0.3s ease;
}

.gform_wrapper.gravity-theme .gform_footer button:hover,
.gform_wrapper.gravity-theme .gform_footer input:hover,
.gform_wrapper.gravity-theme .gform_page_footer button:hover,
.gform_wrapper.gravity-theme .gform_page_footer input:hover {
    background-color: var(--wp--preset--color--secondary);
    color: var(--wp--preset--color--white);
}

.gform_wrapper.gravity-theme .gf_progressbar_percentage.percentbar_blue {
    background-color: var(--wp--preset--color--secondary);
}

.gform_wrapper.gravity-theme .gf_progressbar,
.gform_wrapper.gravity-theme .gf_progressbar_percentage,
.gform_wrapper.gravity-theme .gf_progressbar_percentage:not(.percentbar_100) {
    border-radius: 0;
}

/* =============================================================================
   Member Sliders
   ============================================================================= */

.swiper-wrapper.wp-block-group-is-layout-flex{
  gap: 0;
}

.member-slider-images figure.swiper-slide {
    height: 300px;
}

.member-slider-images figure.swiper-slide img {
    height: 240px;
    /* transition: all .25s ease-in-out; */
}
.member-slider-images figure.swiper-slide.swiper-slide-active img {
    height: 300px;
    object-fit: cover;
}
.member-slider-images .swiper-wrapper{
  align-items: baseline;
  height: 300px;
}

/* Tablet: Member swiper slide column layout at 991px and below */
@media (max-width: 991px) {
    .wp-block-azbuilders-member-slider-content .member-slider-text .swiper-slide {
        flex-direction: column !important;
    }

    .wp-block-azbuilders-member-slider-content .member-slider-text .member-info {
        flex: 1;
        border-right: none;
        border-bottom: 2px solid var(--wp--preset--color--primary);
        padding-bottom: 1em;
    }

    .h2, h2 {
        font-size: 1.5rem;
    }

    #menu-mega-menu {
        display: none !important;
    }
}

@media (min-width: 768px) {
    .container {
        max-width: 768px;
    }
}

@media (max-width: 787px) {
    body .is-layout-grid {
        display: flex;
        flex-direction: column;
        align-items: start;
    }

    body .is-layout-flex {
        flex-direction: column;
        align-items: start;
        /* padding-left: 0 !important;
        padding-right: 0 !important; */
    }

    .is-style-section-gray--5 .wp-block-group.has-global-padding {
        padding: 0;
    }
}

@media (max-width: 767px) {
    .wp-block-group-is-layout-grid > * {
        grid-column: span 2;
    }
}

@media (min-width: 992px) {
    .container {
        max-width: 960px;
    }
}

@media (min-width: 1200px) {
    .container {
        max-width: 1140px;
    }
}

/* =============================================================================
   Global Mobile Responsive Fixes
   Comprehensive mobile solutions for site-wide responsive issues
   ============================================================================= */

/* Prevent Horizontal Scroll */
/* body {
    overflow-x: hidden;
}

.site-content,
.entry-content,
main {
    overflow-x: hidden;
    max-width: 100vw;
} */

/* Responsive Images */
/* img {
    max-width: 100%;
    height: auto;
}

.wp-block-image img {
    width: 100%;
    height: auto;
    object-fit: cover;
} */



/* Universal Grid Stacking for Mobile */
@media (max-width: 787px) {
    /* Fluid Typography System */
    h1, .h1 {
        font-size: clamp(1.75rem, 4vw + 1rem, 3rem);
        line-height: 1.2;
    }
    
    h2, .h2 {
        font-size: clamp(1.5rem, 3vw + 0.75rem, 2.5rem);
        line-height: 1.25;
    }
    
    h3, .h3 {
        font-size: clamp(1.25rem, 2.5vw + 0.5rem, 2rem);
        line-height: 1.3;
    }
    
    p, .has-medium-font-size {
        font-size: clamp(0.95rem, 1.5vw + 0.5rem, 1.125rem);
    }
    
    .has-small-font-size {
        font-size: clamp(0.875rem, 1vw + 0.5rem, 1rem);
    }
  
    /* Convert all WP grid containers to flex columns */
    [class*="wp-container-core-group-is-layout-"] {
        display: flex !important;
        flex-direction: column !important;
        gap: 0 !important;
    }

    /* Full width for all grid children */
    [class*="wp-container-core-group-is-layout-"] > * {
        grid-column: span 1 !important;
        width: 100% !important;
        max-width: 100% !important;
    }
    
    .wp-container-core-group-is-layout-eaa9ba3d{
      gap: 0 !important;
    }

    /* Responsive padding */
    /* .has-global-padding {
        padding-left: clamp(1rem, 4vw, 2rem) !important;
        padding-right: clamp(1rem, 4vw, 2rem) !important;
    } */

    /* Remove image height constraints on mobile */
    .wp-block-image img {
        max-height: none;
    }

    .alignright,
    .is-layout-flow > .alignright {
        float: none;
    }

    .wp-container-core-group-is-layout-645c0388 {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    #block-7 .wp-block-image.size-full {
        max-width: 230px;
        margin-left: 0 !important;
    }

    body #block-10 .is-layout-flex.wp-block-social-links {
        flex-direction: row !important;
        margin-top: 0 !important;
    }

    /* Member/Staff Cards - Force vertical layout */
    .azbm-member-card,
    .member-card,
    [class*="member-card"] {
        flex-direction: column !important;
        text-align: center !important;
    }

    .azbm-member-card img,
    .member-card img {
        width: 100% !important;
        max-width: 200px !important;
        height: auto !important;
        margin: 0 auto 1rem !important;
    }

    .azbm-member-card--horizontal {
        grid-template-columns: 1fr !important;
    }

    /* Touch-friendly interactive elements */
    .wp-block-button__link,
    button,
    input[type="submit"],
    input[type="button"] {
        min-height: 44px !important;
        padding: 0.75rem 1.5rem !important;
    }

    /* Form inputs - Prevent iOS zoom */
    input[type="text"],
    input[type="email"],
    input[type="tel"],
    textarea,
    select {
        min-height: 44px !important;
        font-size: 16px !important;
    }

    /* Contain overflow on all layout containers */
    /* .is-layout-flex,
    .is-layout-grid,
    [class*="wp-container-"] {
        max-width: 100% !important;
        overflow-x: hidden !important;
    } */

}

@media (min-width: 788px) {
    .wp-container-core-columns-is-layout-cbe57604 .wp-block-column:first-child {
        border-left: none;
    }
}

/* Tablet-Specific Breakpoints (788px to 991px) */
@media (max-width: 991px) and (min-width: 788px) {
    /* 2-column layout for tablets */
    [class*="wp-container-core-group-is-layout-"] {
        grid-template-columns: repeat(2, 1fr) !important;
    }

    [class*="wp-container-core-group-is-layout-"] > * {
        grid-column: span 1 !important;
    }
    /* Hover Color Blocks - Full width on mobile */

}

@media (max-width: 1150px){
  .az-hover-color-block {
      grid-column: 1 / -1 !important;
      width: 100% !important;
  }
}

/* Small Mobile Adjustments (600px and below) */
@media (max-width: 600px) {
    .wp-block-nk-awb {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}

/* Gallery Images - Full width when stacked on mobile */
@media (max-width: 787px) {
    .wp-block-gallery.has-nested-images figure.wp-block-image {
        width: 100% !important;
    }
}

/* Constrained Images - Limit image size when columns stack on mobile */
@media (max-width: 787px) {
    .az-constrained-images img {
        max-width: 150px;
        height: auto;
        margin-left: auto;
        margin-right: auto;
        display: block;
    }
}

/* Small Mobile Adjustments (480px and below) */
@media (max-width: 480px) {
    /* Smaller typography on very small screens */
    h1, .h1 {
        font-size: 1.75rem;
    }

    h2, .h2 {
        font-size: 1.5rem;
    }

    h3, .h3 {
        font-size: 1.25rem;
    }

    /* Minimal padding on small screens */
    .has-global-padding {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }
}

/* =============================================================================
   Young Builders Council Form Styles (Form ID: 20)
   ============================================================================= */

/* Add spacing between checkbox labels for better readability */
#gform_wrapper_20.gform_wrapper.gravity-theme .gfield-choice-input+label {
    margin-bottom: 1em;
    vertical-align: top;
}

/* Align checkbox inputs with top of label text */
#gform_wrapper_20.gform_wrapper.gravity-theme .gfield-choice-input {
    margin-top: .375em;
    vertical-align: top;
}

/* =============================================================================
   Events Calendar Styles
   ============================================================================= */

/* Hide tooltip on events archive page */
.tooltipster-base.tribe-events-pro {
    display: none !important;
}

/* Header z-index for proper stacking */
.nk-header,
.nk-navbar {
    z-index: 10;
}

/* Single Event Custom Styles */
.tribe-events-single.azbuilders-custom-event {
    /* Override default single event container styles */
}

/* Custom header styling */
.tribe-events-single .wp-block-nk-awb.nk-awb {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    width: 100vw;
    max-width: 100vw;
}

/* Ensure proper spacing after custom header */
.tribe-events-single .nk-awb + .tribe-events-single-event-description,
.tribe-events-single .nk-awb + .tribe-common {
    margin-top: var(--wp--preset--spacing|80, 2rem);
}

/* Event content area styling */
.tribe-events-single .tribe-events-single-event-description {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    padding-left: var(--wp--preset--spacing|60, 1.5rem);
    padding-right: var(--wp--preset--spacing|60, 1.5rem);
}

/* Event meta blocks (date/time, categories, etc.) */
.tribe-events-single .tribe-block__events-link,
.tribe-events-single .tribe-block__event-datetime,
.tribe-events-single .tribe-block__event-categories,
.tribe-events-single .tribe-block__event-tags {
    margin-bottom: 1.5rem;
}

/* Event sharing buttons */
.tribe-events-single .tribe-events-cal-links {
    margin-top: 2rem;
    margin-bottom: 2rem;
}

/* RSVP and Tickets blocks */
.tribe-events-single .tribe-tickets,
.tribe-events-single .tribe-ticket {
    margin-top: 2rem;
}

/* Event footer navigation */
.tribe-events-single .tribe-events-sub-nav {
    border-top: 1px solid var(--wp--preset--color--neutral-200, #e5e5e5);
    margin-top: 3rem;
    padding-top: 2rem;
}

/* Responsive adjustments for mobile */
@media (max-width: 782px) {
    .tribe-events-single .wp-block-nk-awb .wp-block-post-title {
        font-size: clamp(1.75rem, 5vw, 3rem) !important;
    }

    .tribe-events-single .wp-block-columns {
        flex-direction: column;
    }

    .tribe-events-single .wp-block-column {
        flex-basis: 100% !important;
    }
}