/*
 Theme Name:   Twenty Twenty Five Child Theme
 Theme URI:    https://happy-rider.ancorathemes.com/
 Description:  Twenty Twenty Five Child Theme
 Author:       AncoraThemes
 Author URI:   http://ancorathemes.com/
 Template:     twentytwentyfive
 Version:      1.0
 Tags:         flexible-header, custom-background, custom-colors, custom-header, custom-menu, featured-image-header, featured-images, full-width-template, microformats, post-formats, theme-options, threaded-comments, translation-ready
 Text Domain:  twentytwentyfive
*/


/* =Child-Theme customization starts here
------------------------------------------------------------ */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
    line-height: 1.15;
    -webkit-text-size-adjust: 100%;
}
.has-global-padding {
    /*padding-right: var(--wp--style--root--padding-right);
    padding-left: var(--wp--style--root--padding-left);*/
}
html,
body {
    overflow-x: hidden;
    width: 100%;
    margin: 0;
    padding: 0;
}
body {
    position: relative;
}

.container,
.site {
    max-width: 100%;
    overflow-x: hidden;
}
body {
    font-family: 'Roboto', sans-serif;
    font-size: var(--wp--preset--font-size--medium);
    line-height: 1.6;
}
a:focus {
    outline: none;
}
a:focus:not(:focus-visible) {
    outline: none;
}
header {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 100;
    box-shadow: 0 2px 4px 0 #dddddd;
    background-color: #1C1C1C;
    color: #FFF;
    text-transform: uppercase;
    
}
header .main-nav-in-header {
    /*padding-top: 0 !important;
    padding-bottom: 0 !important;*/
}
li.current-menu-item {
    border-bottom: 4px solid #A3610A;
    color: #A3610A !important;
}
/*.wp-block-navigation__responsive-container-open:not(.always-shown) {
    display: none;
}*/
header div.wp-block-group.alignfull.is-layout-flow {
    height: auto;
    max-width: initial;
    margin: 0 auto;
    padding: 0 28px;
}
h1.wp-block-post-title {
    color: #A3610A;
    font-size: 40px;
    text-align: center;   
    font-weight: bold;
    letter-spacing: 2px;
    /*padding: 20px 0;*/   
}
.is-layout-constrained> :where(:not(.alignleft):not(.alignright):not(.alignfull)){
    max-width: 1200px;
}
.wp-block-group.alignfull.has-global-padding.is-layout-constrained{
    
}
li.wp-block-pages-list__item.wp-block-navigation-item a:hover {
 text-decoration: none;
}
header nav ul.wp-block-page-list li {
    padding: 27px;
    transition: .3s;
}
.main-nav-menu .wp-block-navigation-item.wp-block-navigation-link {
  padding: 27px; 
  font-size: 16px;  
}
header nav ul.wp-block-page-list li a {
    color: #fff;
    padding: 27px 0;
    transition: .3s;
    text-transform: uppercase;
    transition: .3s;
}
header nav ul.wp-block-page-list li a:hover {
    text-decoration: none!important;
}
.home .entry-content.alignfull.wp-block-post-content {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

.home-hero-img figcaption {
    color: #A3610A;
    font-size: 25px;
    font-weight: 500;
    text-align: center;
}
.main-footer-nav .footer-row-1.is-layout-flex {
    display: block;
    text-align: center;
}
.home .wp-block-post-title {
    display:none;
}
a.latest-pdf-button,
.home-page-button a {
    background-color: #A3610A;
    font-weight: bold;
    letter-spacing: 2px;
    width: 400px;
    padding: 10px 0;
    outline: none;
    border: none;
    border-radius: 50px;
    text-transform: uppercase;
    color: #fff;
    font-size: 24px;
    margin: 50px 0;
    text-decoration: none;
}
a.latest-pdf-button,
.home-page-button.is-layout-flex.wp-block-buttons-is-layout-flex {
    display: block;
    text-align: center;
}
.main-footer-nav.has-global-padding {
    padding-top:0!important;
    padding-bottom:0!important;
}
.home-page-button .wp-block-buttons>.wp-block-button {
    margin-left: auto;
    margin-right: auto;
    display: block;
}
.homepage-heading-2 {
    text-transform: uppercase;
}
.wp-block-group.alignfull.has-global-padding.is-layout-constrained.wp-block-group-is-layout-constrained {
    padding-bottom:0!important;
}

.wpcf7-form label {
    font-size: 13px;
    color: rgba(0, 0, 0, 0.5);
    margin-bottom: 4px;
    font-weight: 500;
}
.wpcf7-form select {    
        width: 100%;
        max-width: 100%;
        display: block;
        flex-grow: 1 !important;
        background-color: #F6F6F6;
        border: 1px solid #E3E3E3;
        margin: 0 auto;
        outline: none;
        border-radius: 5px;
        font-family: l-medium;
        font-size: 16px;
        padding-left: 10px;
        padding:10px;                   
        }

.wpcf7-form {
    max-width: 500px;
    margin: 0 auto;
    padding: 0 20px;
}
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form input[type="url"],
.wpcf7-form input[type="number"],
.wpcf7-form input[type="date"],
.wpcf7-form input[type="file"],
.wpcf7-form textarea,
.wpcf7-form select {
    width: 100%;
    box-sizing: border-box;
}
/* Ensure select fields are full width */
form.wpcf7-form label {
    width: 100%;
}
.wpcf7-form-control-wrap {
    display: block;
    width: 100%;
}
.wpcf7-form input,  .wpcf7-form textarea{
    width: 100%;
    height: 44px;
    background-color: #F6F6F6;
    border: 1px solid #E3E3E3;
    margin: 0 auto;
    outline: none;
    border-radius: 5px;
    font-family: 'Roboto';
    font-size: 16px;
    padding-left: 10px;
}
.wpcf7-form textarea {
    height: initial;
}
.wpcf7-form input::placeholder,
.wpcf7-form textarea::placeholder {
    font-size: 14px;
    color: rgba(0, 0, 0, 0.5);  
    font-family: 'Roboto';
    font-weight: 500;
}

.wpcf7-form .wpcf7-submit {
    background-color: #000!important;
    color: #fff;
    text-transform: uppercase;
    width: 100%;
    outline: none;
    border: none;
    border-radius: 4px;
    margin: 40px 0 80px 0;
    transition: .3s;
    font-family: 'Roboto';
    height: initial;
    padding: 20px;
}

.wpcf7-form select, .wpcf7 select option,
.wpcf7 input[type="file"] {
    font-family: "Roboto",sans-serif;
    font-size: 13px;   
    color: rgba(0, 0, 0, 0.5);
}

h1.wp-block-post-title {
    text-align: center;
    font-family: l-bold;
    font-size: 28px;
    color: #212529;
    font-family: "Roboto",sans-serif;
}

.homepage-yellow-heading {
    color: #A3610A;
    font-size: 40px;
    text-align: center;
    text-transform: uppercase;
    font-family: "Roboto",sans-serif;
    font-weight: bold;
    letter-spacing: 2px;
    padding: 0px 0 35px 0;
    margin-top:-10px;
}
.main-nav-menu .main-nav-in-header .wp-block-site-title {
    font-size: 28px;
    letter-spacing: 4px;
}
p.wp-block-site-title a:hover, nav ul li.wp-block-navigation-item a:hover {
    text-decoration: none;
}
nav ul li.wp-block-navigation-item {
    font-weight:500;
}
/* Gallery aspect ratio */
.sf-gallery-tab1 img, .sf-gallery-tab2 img {
    aspect-ratio: 1;
}
.gallery-tabs .wp-block-ub-tabbed-content-tabs-title {
    background-color: #F4F4F4;
    border: 1px solid #E6E6E6;
    width: 100%;
}

.gallery-tabs div [role="tab"] {
    border:none;
}
.gallery-tabs div [aria-selected="true"] {
    font-weight: 500;
    background-color: unset;
    border-radius: 0;
    border-left:0!important;
    border-right: 0!important;
    border-bottom: 3px solid #A3610A!important;
    outline: none !important;
    
}
.footer-row-1 .wp-block-columns {
    gap: 0 !important;
}
.wp-block-column.footer-email-icon{
    text-align: right;
}
.wp-block-column.footer-email-icon img {
    width: 16px;
    vertical-align: top;
    margin-right: 8px;
    margin-top: 3px;
}
.wp-block-column.footer-email {
    text-align: left;
    font-size:13px;
    font-weight: 500;
}
.footer-copyright {
    font-size:12px;
}
.footer-row-1 {
        
}
footer .wp-block-group.main-footer-nav, 
footer .wp-block-group.main-footer-nav .wp-block-group {
    width: 100vw;
        /* Full width of the viewport */
        max-width: 100%;
        /* Ensures it doesn't get restricted */
        margin-left: 0;
        margin-right: 0;
        padding-left: 0;
        padding-right: 0;
}
.footer-row-1 .wp-container-core-columns-is-layout-1 {
    display:none;
}

.footer-email-1 {
    width: 100vw;
    /* Full width of the viewport */
    max-width: 100%;
    text-align:center;
    font-size:13px;
    text-align: center;
    padding-top: 30px;
    padding-bottom: 30px;
    border-top: 1px solid rgba(0, 0, 0, .1);
    border-bottom: 1px solid rgba(0, 0, 0, .1);
    color: #000;
}
.footer-copyright-2 {
    text-align: center;
    color: #898989;
    margin: 10px;
    font-size: 13px;
}
h3.introduction {
    text-transform: uppercase;
    font-weight: 500;
    font-size: 18px;
}
.home-hero-img {
    margin-top: -50px;
}
.gallery-tabs .wp-block-ub-tabbed-content-tabs-content {
    border: 0;
    padding-left: 0;
    padding-right: 0;
}

.icons-block {
    /*position: absolute;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    display: flex!important;
    gap: 20px;
    background: red;*/
}
.download-btn {
    background-size: 18px;
    background-repeat: no-repeat;
    background-position: 64px;
    background-image: url(inc/assets/images/download.png);
    padding: 7px 30px 7px 6px;
    background-color: RGBA(17, 17, 17, 0.68);
    border-radius: 50px;
    color: #fff;
    cursor: pointer;
    text-decoration: none;
    position: absolute;
    left: 10px;
    bottom: 20px;
    font-size: 11px;
    border-width: 0;
    border-style: none;        
}

.view-btn {
    background-size: 18px;
    background-repeat: no-repeat;
    background-position: 41px;
    background-image: url(inc/assets/images/view.png);
    padding: 7px 32px 7px 12px;
    background-color: RGBA(17, 17, 17, 0.68);
    border-radius: 50px;
    color: #fff;
    cursor: pointer;
    text-decoration: none;
    position: absolute;
    right: 10px;
    bottom: 20px;
    font-size: 11px;
    border: 0;
}







.file-input {
    display: none !important;
    /* Hides default file input */
}
.upload-wrapper {
    width: 100%;
    margin: 0 auto;
    text-align: center;
    border: 2px dashed #e3e3e3;
    background-color: #f6f6f6;
    
}
.upload-wrapper:hover {
    background-color: #e0e0e0;
}
.upload-wrapper img {
    width: 100px;    
}
.upload-wrapper span {
    display:block;
    font-size: 22px;
    color: #333;
    font-weight: 500;
}
.wpcf7-form-control-wrap div.upload-wrapper span:nth-of-type(2) {
    font-size: 13px;
    font-weight: 400;
}










/* hide the admin bar when logged in */
html #wpadminbar {
    display: none;
}

/****************************************************************************************************************************/

.wp-block-gallery.wp-block-gallery-2,
.wp-block-gallery.wp-block-gallery-3 {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 10px;
}

.wp-block-gallery .wp-block-image {
    width: 100%!important;
    height: auto;
}

/* Tablet Layout (3 columns) */
@media (max-width: 1024px) {
    .wp-block-gallery.wp-block-gallery-2,
    .wp-block-gallery.wp-block-gallery-3 {
        grid-template-columns: repeat(4, 1fr);
    }
}

@media (max-width: 768px) {
    .wp-block-gallery.wp-block-gallery-2,
    .wp-block-gallery.wp-block-gallery-3 {
        grid-template-columns: repeat(3, 1fr);
    }
}

/* Mobile Layout (1 column) */
@media (max-width: 600px) {
    .wp-block-gallery.wp-block-gallery-2,
    .wp-block-gallery.wp-block-gallery-3 {
        grid-template-columns: repeat(1, 1fr);
        
    }
    .wp-block-image {
        max-height: 260px;
        padding: 12px;
    }
}



.image-overlay {
    position: absolute;
    top: 10px;
    left: 10px;
    display: flex;
    gap: 8px;
    background: rgba(0, 0, 0, 0.6);
    padding: 5px 10px;
    border-radius: 5px;
   }

.wp-block-gallery .wp-block-image:hover .image-overlay {
    opacity: 1;
}

.image-overlay a {
    color: white;
    text-decoration: none;
    font-size: 14px;
    padding: 3px 6px;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 3px;
}

.image-overlay a:hover {
    background: rgba(255, 255, 255, 0.4);
}
.wp-block-contact-form-7-contact-form-selector #wpcf7-f80-p27-o1,
.wp-block-contact-form-7-contact-form-selector #wpcf7-f85-p29-o1
{
    margin-top: -30px;
}

#baguetteBox-overlay .full-image figcaption {
    display: block;
    position: absolute;
    width: 100%;
    text-align: center;
    white-space: normal;
    color: white;
    background-color: transparent;
    font-family: "Roboto",sans-serif;
    font-size: 14px;
    bottom: initial;
}
.wp-block-gallery .wp-block-image .wp-element-caption {
    display:none;
}
#baguetteBox-overlay .full-image img{
    max-height: 95%;
    width: auto;
}

/*********************** Download Document Modal *****************/
.pum-theme-279 .pum-container,
.pum-theme-lightbox .pum-container {
    border: 0;
}
.pum-theme-279 .pum-title,
.pum-theme-lightbox .pum-title {
    text-align: center;
    font-size: 20px;
    font-weight: 400;
    padding: 1rem 1rem;
    border-bottom: 1px solid #dee2e6;
}
.pum-theme-279 .pum-container,
.pum-theme-lightbox .pum-container{
    padding: 0;
}
.pum-theme-279 .pum-content,
.pum-theme-lightbox .pum-content {
    text-align: center;
}
.pdf-source {
    background: #f0a641;
    color: #fff;
    border-radius: 30px;
    width: 140px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    transition: .5s;
    text-decoration: none;
    margin: 0 auto;
    font-weight: 400;
}
.pdf-source:hover {
    border: 1px solid #f0a641;
    background: transparent;
    color: #f0a641;
    text-decoration: none;
    box-shadow: 0 5px 15px rgb(163 97 10 / 40%);
    transition: .3s;
}
.popup-footer {
    align-items: center;
    padding: .75rem;
    border-top: 1px solid #dee2e6;
}
.wp-block-navigation__responsive-container-open {
    display: initial;
}
@media only screen and (min-width: 1024px) {
    .pum-container.pum-responsive.pum-responsive-medium {
        width: 50%;
    }
}
/*********************** Download Document Modal ****************/
/*********************** Responsive Media Query for main container *************************************/
@media (max-width: 1024px) {
    main {
        padding-left: 45px!important;
        padding-right: 45px!important;
    }
}

@media (max-width: 768px) {
    main {
        padding: 10px;
    }
}

@media (max-width: 480px) {
    main {
        padding: 5px;
    }
}
/*********************** Responsive Media Query for main container *************************************/

/*********************** Navigation main menu ********************************/
/* Remove padding for desktop screens (1024px and above) */
@media (min-width: 1024px) {
    header .main-nav-in-header {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }
}

/* Add padding for mobile screens (up to 1023px) */
@media (max-width: 1023px) {
    header .main-nav-in-header {
        background: #1C1C1C;
        padding-top: var(--wp--preset--spacing--30) !important;
        padding-bottom: var(--wp--preset--spacing--30) !important;
    }
}
/*********************** Navigation main menu ********************************/



/*********************** Media Query *************************************/
/* For tablet screens (600px to 991px) */
@media (min-width: 600px) and (max-width: 991px) {
    .wp-block-navigation__responsive-container-open:not(.always-shown) {
        display: block;
        /* Or any value you need, like flex, none, etc. */
    }
}
@media (max-width: 1400px) {
}
@media screen and (min-width: 992px) {
    .wp-block-navigation__responsive-container-open {
        display: none;
    }
}
@media (min-width: 992px) and (max-width: 1117px) {
    .main-nav-menu .wp-block-navigation-item.wp-block-navigation-link {
            padding: 18px;
            font-size:15px;
    }
}
@media screen and (max-width: 991px) {
h1.homepage-yellow-heading {
    font-size: 23px;
    padding-top: 0;
    padding-bottom:0;
    }
/* to start showing the hamburger mobile menu navigation from tablet screen size instead of mobile */
/* Force hide desktop menu */
.wp-block-navigation__container {
    display: none;
}

/* Show mobile toggle button */
.wp-block-navigation__responsive-container-open {
    display: block;
    }
.main-nav-menu {
    padding-top: 15px;
    padding-bottom: 15px;
}

.main-nav-menu .main-nav-in-header .wp-block-site-title {
    font-size: 16px;
    letter-spacing: 4px;
}
/* all styles for mobile modal menu here */
.main-nav-menu .main-nav-in-header .is-menu-open {
    background: #212529 !important;
}

.main-nav-menu .main-nav-in-header .is-menu-open ul.wp-block-navigation li a {
    text-align: center !important;
    color: #FFF !important;
    padding: 6px;
}
a.latest-pdf-button,
.home-page-button a {
    height: initial;
    width: 100%;
    font-size: 16px;
}

header.wp-block-template-part {
    z-index: 2000 !important;
}

.main-nav-menu .main-nav-in-header .is-menu-open li.wp-block-navigation-item.wp-block-navigation-link {
    padding-left: 0;
    margin-right: 0;
    padding-bottom: 6px;
    padding-top:0;
    width: 90%!important;
    color:#A3610A;
}


.main-nav-menu .main-nav-in-header .is-menu-open ul.wp-block-navigation {
    --navigation-layout-justification-setting: center;
    --navigation-layout-justify: center;
    width: 100%;
}

.main-nav-menu .main-nav-in-header .is-menu-open ul.wp-block-navigation li.wp-block-navigation-item {
    width: 100%;
}

.wp-block-navigation__responsive-container {
    position: fixed;
    /*top: 60px;*/
    /* Push below header */
    left: -30px;
    width: 100%;
    /*height: calc(100vh - 80px);*/
    /* Adjust height to avoid covering the header */
    /* Ensure visibility */
    z-index: 998;
    /* Lower than the header */
}

.has-modal-open .is-menu-open .wp-block-navigation__responsive-dialog {
    padding-top: 0;
    margin-top: 0 !important;
}

.wp-block-navigation__responsive-dialog li.current-menu-item {
    /*padding-left: 15px;
    padding-right: 15px;
    padding-bottom: 6px;*/
}

.wp-block-navigation__responsive-container-close svg,
.wp-block-navigation__responsive-container-open svg {
    fill: white; 
    transform: scaleX(1.5);
    /* Increase width by 30% */
    transform-origin: center;
}
.wp-block-navigation__responsive-container-open svg path,
.wp-block-navigation__responsive-container-close svg path {
    stroke: currentColor;
    stroke-width: 1.4;
    /* Increase thickness */
    fill: none;
    /* Optional: use stroke instead of fill */
}

.wp-block-navigation__responsive-container-close[aria-label="Close menu"] svg
 {
    transform: scaleX(1.0);
    fill: white;
    color: white;
}

.wp-block-navigation__responsive-container-close {
    right: 30px;
    top: 0; 
    position: absolute;
      
}


/* Keep header (site title + menu button) fixed at the top */
.main-nav-in-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    /* Keep it visible */
    z-index: 999;
    /* Higher than the modal */
    padding: 30px;
}
/* all styles for mobile modal menu here */
.home-hero-img {
    margin-top: -10px;
    }
.view-btn {
    right: 30px;
    bottom: 30px;
    padding: 7px 43px 7px 11px;
    }
.download-btn {
    left: 30px;
    bottom: 30px;
    }
}

@media (max-width: 767px) {
.has-global-padding {
        /*padding-left: 20px;
        padding-right: 20px;*/
    }

 .home-hero-img {
    margin-inline-start: auto!important;
    margin:0 auto;
   }
   
    main {
        margin-top: 75px !important;
    }
/****************************** This css is for mobile modal menu **********************************/


/****************************** This css is for mobile modal menu **********************************/
.wpcf7-form {
    /*padding: 0 10px;*/
    }   
}

@media (max-width: 375px) {
    h1.homepage-yellow-heading {
            font-size: 20px;
        }
        
}
