/*
Theme Name: NG Theme
Theme URI: https://aggranitequartz.com/
Description: This is a custom child theme for Divi
Author: Never Gravity
Author URI: https://nevergravity.com/
Template: Divi
Version: 1.0.0
*/

/*--MAIN CSS--*/
h1, h2, h3, h4{
    font-weight:600;
    text-transform:uppercase;
    line-height:1.1;
}
h1, h1.entry-title {
    font-size: clamp(2rem, 3.8vw, 3.8rem);
}
h1.sm-size{
    font-size: clamp(2rem, 1.7368rem + 1.0526vw, 3rem);
}
h2, .et_pb_column_2_5 h2{
    font-size: clamp(1.5rem, 2.5vw, 2.25rem);

}
h3 {
    font-size: clamp(1.25rem, 2.5vw, 1.875rem);
}
h4 {
    font-size: clamp(1.125rem, 2.5vw, 1.2rem);
}
.luxe-text{
    font-family: "Playfair Display", serif;
    font-size: clamp(1.5rem, 2.5vw, 2.25rem);
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: italic;
    line-height:1;
}

.vert-align{
    display: flex;
    flex-direction: column;
    justify-content: center;
}
/*--GLOBALS--*/
.et_pb_button{
    font-weight:300;
}
.et_pb_text.et_pb_bg_layout_dark p a{
    color:white;
    text-decoration: underline;
}
.et_pb_text.et_pb_bg_layout_light p a{
    color:#141414;
    text-decoration: underline;
}

/*--NAV--*/
/*--Search--*/
.dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp{
    padding:0px;
}
.dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp input[type=search].dgwt-wcas-search-input{
    padding:8px 24px 8px 48px;
}
.dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp button.dgwt-wcas-search-submit{
    top:5px;
    left:15px;
}
.dgwt-wcas-suggestions-wrapp{
    box-shadow: 1px 10px 16px 1px rgba(0,0,0,0.25);
    -webkit-box-shadow: 1px 10px 16px 1px rgba(0,0,0,0.25);
    -moz-box-shadow: 1px 10px 16px 1px rgba(0,0,0,0.25);
}
.et-cart-info{
    display:none;
}
/*--Add hover line under nav items--*/
#top-menu a:before{
    content: "";
    position: absolute;
    width: 100%;
    height: 3px;
    bottom: 0;
    left: 0;
    background: #0349b6;
    visibility: hidden;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transition: all 0.3s ease-in-out 0s;
    transition: all 0.3s ease-in-out 0s;
}
#top-menu a:hover:before {
  visibility: visible;
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
}
#top-menu-nav>ul>li>a:hover:before{
    opacity:1;
}

body ul#top-menu li.current-menu-item > a:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 3px;
    bottom: 0;
    left: 0;
    background-color: #0349b6;
    visibility: visible;
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
}
/*--Sub Menus--*/
#top-menu-nav ul.sub-menu li a{
    color:#141414;
}
#main-header .nav li ul.sub-menu{
    border-top:none;
}

/*--Switch next and previous pagination--*/
.et_pb_posts_nav .nav-previous { float: right; }
.et_pb_posts_nav .nav-next { float: left; }
.et_pb_posts_nav .meta-nav { display: none; }
.et_pb_posts_nav .nav-next a:before { content: '← '; }
.et_pb_posts_nav .nav-previous a:after { content: ' →'; }

#et_mobile_nav_menu .mobile_nav.opened .mobile_menu_bar::before,
.et_pb_module.et_pb_menu .et_mobile_nav_menu .mobile_nav.opened .mobile_menu_bar::before {
	content: '\4d';
    color:#0349b6;
}
.et_pb_menu .et_mobile_menu .menu-item-has-children > a,
#main-header .et_mobile_menu .menu-item-has-children > a {
    background-color: transparent;
    position: relative;
}
.et_pb_menu .et_mobile_menu .menu-item-has-children > a:after, #main-header .et_mobile_menu .menu-item-has-children > a:after {
    font-family: 'ETmodules';
    text-align: center;
    speak: none;
    font-weight: 600;
    font-variant: normal;
    text-transform: none;
    -webkit-font-smoothing: antialiased;
    position: absolute;
    font-size: 26px;
    content: '\4c';
    top: 12px;
    right: 13px;
}
.et_pb_menu .et_mobile_menu .menu-item-has-children.visible > a:after,
#main-header .et_mobile_menu .menu-item-has-children.visible > a:after {
    content: '\4b';
}
.et_pb_menu .et_mobile_menu ul.sub-menu,
#main-header .et_mobile_menu ul.sub-menu,
.et-db #et-boc .et-l .et_pb_menu .et_mobile_menu li ul.sub-menu {
    display: none !important;
    visibility: hidden !important;
    transition: all 1.5s ease-in-out;
}
.et_pb_menu .et_mobile_menu li.visible > ul.sub-menu,
#main-header .et_mobile_menu li.visible > ul.sub-menu,
.et-db #et-boc .et-l #main-header .et_mobile_menu li.visible > ul.sub-menu,
.et-db #et-boc .et-l .et_pb_fullwidth_menu .et_mobile_menu li.visible > ul.sub-menu,
.et-db #et-boc .et-l .et_pb_menu .et_mobile_menu li.visible > ul.sub-menu {
    display: block !important;
    visibility: visible !important;
}

/*--Product Page--*/
.product-title h1{
    font-size: clamp(2rem, 2.75vw, 2.75rem);
}
.product-hero{
    display: grid;
    grid-template-columns: 59% 30px auto;
    max-width: 1400px;
    width: 80%;
    margin: 0 auto;
    column-gap: 30px;
}
.product-hero .et_pb_row{
    height:100%;
    width:100%;
    padding:0px;
}
.product-info-vert-text{
    writing-mode: vertical-rl;
    align-items: center;
}
.vertical-text{
    transform: rotate(180deg);
    display: inline-block;
}
/*--Override styling on the dimensions attribute table row--*/
tr.woocommerce-product-attributes-item.woocommerce-product-attributes-item--dimensions{
    height:60px;
}
/*--Shop Page-Slab Collection--*/
.wpc-filters-widget-wrapper{
    font-size:16px;
}
.wpc-filters-section{
    margin-bottom: 0 !important;
    padding: 15px 0 5px 0;
    border-bottom: 1px solid #eaeaea;
}
form.woocommerce-ordering{
    display:none;
}
/*--Legal pages--*/
body.privacy-policy article{
    max-width:900px;
    margin: 0 auto;
}
body.privacy-policy article h2, body.privacy-policy article h3, body.privacy-policy article h4{
    margin:15px 0;
}
body.privacy-policy article{
    font-size:16px;
}
body.privacy-policy article li{
    margin-bottom:10px;
}
/*--Gravity Forms--*/
.gform_wrapper.gravity-theme .gfield_label,.gform-field-label, .gform_wrapper.gravity-theme .field_description_above .description, .gform_wrapper.gravity-theme .field_description_above .gfield_description, .gform_wrapper.gravity-theme .field_description_above .gsection_description, .gform_wrapper.gravity-theme .field_description_above .instruction{
    color:white;
}
body .gform_wrapper .gform_footer input[type=submit] {
    color: #FFFFFF;
    border-top-width: 1px !important;
    border-right-width: 1px !important;
    border-bottom-width: 1px !important;
    border-left-width: 0px !important;
    border-color: #D8D4C3;
    border-radius: 0px;
    text-transform: uppercase !important;
    line-height:1!important;
    background: transparent;
    padding: 10px 20px!important;
    font-size: 20px;
    cursor:pointer;
    transition: all 250ms;
}
body .gform_wrapper .gform_footer input[type=submit]:hover {
    color:#141414;
    background:#D8D4C3;
}
.gform_wrapper.gravity-theme .gfield_required{
    color:#fe937b;
}
.gfield_validation_message{
    color:#c02b0a!important;
}
.gform_wrapper.gravity-theme .gfield_error .gfield_repeater_cell label, .gform_wrapper.gravity-theme .gfield_error label, .gform_wrapper.gravity-theme .gfield_error legend, .gform_wrapper.gravity-theme .gfield_validation_message, .gform_wrapper.gravity-theme .validation_message, .gform_wrapper.gravity-theme [aria-invalid=true]+label, .gform_wrapper.gravity-theme label+[aria-invalid=true]{
    color:#fe937b;
}
#gform_1_validation_container{
    display:none;
}
/*--FOOTER--*/
p#footer-info{
    font-size:12px;
}
.bottom-nav{
    display:flex;
    justify-content: center;
    padding:15px 0 50px 0;
}
.footer-widget{
    margin-bottom:0px!important;
}
#footer-widgets .footer-widget li:before {
    display:none;
}

#footer-widgets .footer-widget li {
    padding-left: 0px;
}


/*--MEDIA QUERIES--*/
@media screen and (max-width: 1100px) {
     
     /*--Slide in menu--*/
     /*--Add box shadow to mobile menu--*/
     #et_mobile_nav_menu .mobile_nav.opened #mobile_menu{
         box-shadow: -15px 0px 10px 1px rgba(0, 0, 0, .5);
     }
     
    /*--Start Mobile Menu slide in--*/
    #mobile_menu{
        position:fixed;
        z-index:99998;
        height:100vh!important;
        overflow:auto;
        display:block!important;
        right:0;
        left:auto;
        top:0;
        padding:60px 5% 5% 5%!important;
        background-color:#ffffff!important;
        border-top: 5px solid #0349b6;
        -webkit-transition: -webkit-transform 0.4s 0s;
        -moz-transition: -moz-transform 0.4s 0s;
        transition: transform 0.4s 0s;
        -overflow-scrolling:touch!important;
        -webkit-overflow-scrolling:touch!important;
    }
    /* Move the mobile menu back onto the screen when open using translateX(0%) */
    .mobile_nav.opened #mobile_menu {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
    /* Move the mobile menu fully off the screen when closed using translateX(100%) */
    .mobile_nav.closed #mobile_menu {
        -webkit-transform: translateX(100%);
        -moz-transform: translateX(100%);
        -ms-transform: translateX(100%);
        -o-transform: translateX(100%);
        transform: translateX(100%);
    }
    .et_header_style_left #et-top-navigation .mobile_menu_bar{
        z-index:99999;
    }
    #mobile_menu{
        width: 60%;
    }
    /*--END Mobile Menu SLide In--*/
}

/*** Responsive Styles Desktop Only ***/
@media all and (min-width: 981px) {
/*--Homepage Product List--*/
     .et_pb_gutters3 .et_pb_column_4_4 .latest-products.et_pb_shop_grid .woocommerce ul.products li.product{
        margin-bottom:20px;
    }
}
/*** Responsive Styles Tablet And Below ***/
@media all and (max-width: 980px) {
  .product-hero {
    grid-template-columns: 30px 1fr;
    grid-template-areas:
      "product-image product-image"
      "product-info-banner product-info";
    row-gap: 20px;
    column-gap: 20px;
  }

  .product-image {
    grid-area: product-image;
  }

  .product-info-banner {
    grid-area: product-info-banner;
  }

  .product-info {
    grid-area: product-info;
  }
}

/*** Responsive Styles Tablet Only ***/
@media all and (min-width: 768px) and (max-width: 980px) {

}
/*** Responsive Styles Smartphone Only ***/
@media all and (min-width: 768px) {
    .footer-widget .et_pb_widget{
        float:none;
    }
    .footer-logo img{
        width:294px;
        height:70px;
    }
    p#footer-info{
        text-align:center;
        float:none;
    }
}
/*** Responsive Styles Smartphone Only ***/
@media all and (max-width: 767px) {
    p#footer-info{
        text-align:left;
    }
    .footer-logo img{
        width:210px;
        height:50px;
    }
    .bottom-nav{
        flex-direction:column;
        justify-content: flex-start;
        text-align:left;
    }
    #footer-widgets {
        padding: 10% 0 0 0;
    }
    .et_pb_button{
        font-size:18px;
    }
    #mobile_menu{
        width: 80%;
    }
}

/*** Responsive Styles Smartphone Portrait ***/
@media all and (max-width: 479px) {

}

