*{
    margin: 0 ;
    padding: 0;
    box-sizing: border-box;
}
body {
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
    font-family: 'superior', sans-serif !important;
    color: #0F1610 !important; 
    overflow-y: auto;
    -ms-overflow-style:none;
    scrollbar-width:none; 
}
html{
    overflow-y: auto;
    -ms-overflow-style:none;
    scrollbar-width:none; 
}
.container {
    max-width: 1312px !important;
    margin: 0 auto;
    padding: 0 !important;
}
/* ==============superior==============*/

@font-face {
    font-family: 'superior';
    src: url('../fonts/superior/LTSuperior-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'superior';
    src: url('../fonts/superior/LTSuperior-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'superior';
    src: url('../fonts/superior/LTSuperior-SemiBold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}
/* ==============Superior Serif==============*/
@font-face {
    font-family: 'superior-serif';
    src: url('../fonts/superior-serif/LTSuperiorSerif-Regular.otf') format('opentype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

/*==============custom-theme==============*/
.site{
    max-width: 100% !important;
    border: none !important;
}
main#content {
    max-width: 100% !important;
    margin-top: 0px;
}
h1 ,h2, h3, h4, h5, h6{
    font-family: 'superior-serif', serif !important;
    margin: 0 !important;
}
menu, ul, p {
    margin: 0 !important;
    padding: 0 !important;
}
a {
    text-decoration: none !important;
}
img {
    max-width: 100%;
}
ul,{padding: 0;}li {list-style: none;}

/*==============button==============*/
.default-button a.btn {
    background: #1A2318;
    font-size: 16px;
    line-height: 100%;
    font-weight: 500;
    color: #F7F5F0;
    border-radius: 2px;
    padding: 20px 32px;
    border: none;
}
.default-button a.btn:hover {
    color: #F7F5F0;
    background: #6F8F56;
}
.default-button a:focus{
    outline: none;
    box-shadow: none;
}
.default-button a img {
    padding-left: 18px;
}
.blog-box .default-button {
    margin-top: 10px;
}
.Not-found-page .desc .default-button{
    text-align: left;
}
/*==============Banner==============*/
.banner {
    min-height: 333px;
    display: flex;
    align-items: center;
    text-align: center;
    background: #1A2318;
    justify-content: center;
}
.banner h1 {
    color: #F7F5F0;
    background: none;
    font-size: 64px;
    line-height: 105%;
    letter-spacing: -1px;
    font-weight: 400;
}
.banner_images {
    display: flex;
    align-items: center;
    justify-content: center;
/*    min-height: 333px;*/
    background-size: cover;
    background-position: center center;
    background: #1A2318;
    padding: 230px 0 100px !important;
}
.banner_images:before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    z-index: 0;
}
.banner_images {
    position: relative;
}
.banner_images h1 {
    color: #F7F5F0;
    z-index: 1;
    background: none;
    font-size: 64px;
    line-height: 105%;
    letter-spacing: -1px;
    font-weight: 400;
}
.page_banner {
    min-height: 333px;
    display: flex;
    align-items: center;
    text-align: center;
    background: #1A2318;
}
.page_banner h1 {
    color: #F7F5F0;
    background: none;
    font-size: 64px;
    line-height: 105%;
    letter-spacing: -1px;
    font-weight: 400;
}
/*==============404-page==============*/
.Not-found-page {
    padding: 150px 0 64px;
    text-align: center;
}
.Not-found-page .heading h1 {
    color: #0F1610;
    font-size: 120px;
    font-style: normal;
    font-weight: bold;
    line-height: 150px;
    background: none;
}
.Not-found-page .heading h2{
    color: #0F1610;
    font-size: 64px;
    line-height: 105%;
    letter-spacing: -1px;
    font-weight: 400;
    margin: 0px;

    font-size: 60px;
    line-height: 66px;
    letter-spacing: -1.8px; 
}
.Not-found-page .desc p {
    color: #8A8370;
    margin: 25px 0 !important;
}
.search-section {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
}
form.search-form input {
    height: 48px;
    border: none !important;
}
input[type=search]:focus, input[type=search]:focus-visible{
    border: none !important;
    outline: none;
}
form.search-form {
    border: 1px solid #ccc;
    border-radius: 10px;
}
/*==============search==============*/
.search-banner h1 {
    color: #0F1610;
    font-size: 60px;
    line-height: 66px;
    letter-spacing: -1.8px;
    font-weight: 400;
    font-style: normal;
}
header.page-header {
    background-color: #F7F5F0;
    text-align: center;
}
header.page-header h1 {
    color: #0F1610;
    font-size: 60px;
    line-height: 66px;
    letter-spacing: -1.8px;
    font-weight: 400;
    font-style: normal;
}
.page-content {
    width: 100% !important;
    max-width: 100% !important;
}
.page-title {
    max-width: 100% !important;
    padding: 0 !important;
}
.search-box {
    min-height: 100% !important;
}
.sidebar .page-content {
    padding: 40px 0 !important;
}
/*==============blog==============*/
.blog-page {
    padding: 64px 0px;
}
.blog-box .post-content h3 {
    color: #0F1610;
    font-size: 24px !important;
    font-style: normal;
    font-weight: bold;
    line-height: 30px !important;
    margin: 0px; 
}
h3.post_title a {
    color: #0F1610;
}
.time-and-date {
    padding-bottom: 10px;
    display: flex;
    justify-content: space-between;
}
.time-and-date span {
    text-transform: capitalize;
    font-size: 14px;
    font-weight: 600;
    line-height: 14px;
}
.blog-box {
    position: relative;
    box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
    min-height: 450px;
    margin-bottom: 25px;
}
.blog-page .post-image img {
    height: 230px !important;
    width: 100%;
    object-fit: cover;
}
.blog-page .post-image {
    width: 100%;
    height: 230px;
    background: #f7f7f7;
}
.blog-box .post-image:before {
    content: "";
    min-height: 230px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    opacity: 0.4;
}
.short_contant {
    padding: 10px 0;
}
.post-content {
    padding: 30px;
}
.blog-page .col-12:last-child .blog-box {
    margin: 0;
}
.blog-page .page-content p {
    color: #8A8370;
}
/*==============category + author==============*/
.author_page h1 span.vcard a {
    color: #F7F5F0;
}
.author_page h1 span.vcard a:hover {
    opacity: 0.5;
    text-decoration: none;
}
/*==============page.php==============*/
.page-section {
    padding: 64px 0px;
}
.pages-content h2{
    color: #0F1610;
    font-size: 56px;
    font-weight: 400;
    margin: 16px 0 0 0 !important;
}
.pages-content h3{
    color: #0F1610;
    font-size: 40px;
    font-weight: 400;
    margin: 16px 0 0 0 !important;
}
.pages-content h4{
    color: #0F1610;
    font-size: 32px;
    font-weight: 400;
    margin: 16px 0 0 0 !important;
}
.pages-content h5{
    color: #0F1610;
    font-size: 28px;
    font-weight: 400;
    margin: 16px 0 0 0 !important;
}
.pages-content h6{
    color: #0F1610;
    font-size: 24px;
    font-weight: 400;
    margin: 16px 0 0 0 !important;
}
.pages-content p, .pages-content p a, 
.pages-content a, .pages-content span{
    color: inherit; 
    font-weight: bold; 
    cursor: pointer;
}
.page-section .pages-content p{
    padding-bottom: 16px !important;
}
/*==============single.php==============*/
.single-page {
    padding: 64px 0px;
}
/*==============sidebar==============*/
.blog-page-section .sidebar {
    background: #f7f7f7;
    padding: 64px 0;
    height: 100%;
    position: relative;
    left: -7px;
}
.sideBar-section {
    padding-left: 10px;
}
.sidebar-category-sec h3, .Recipes-post h3{
    color: #0F1610;
    text-transform: uppercase;
    font-size: 18px;
    margin: 40px 0 16px 0 !important;
}
.sidebar-category ul li a{
    font-size: 18px;
    color: #0F1610;
}
.sidebar-category ul{
    padding-left: 15px !important;
}
.sidebar-category ul li{
    margin-bottom: 8px;
}
.sideBar-section .wp-block-search__inside-wrapper {
    padding: 0 !important;
    height: 50px;
    border: none;
}
.sideBar-section input#wp-block-search__input-1 {
    background: #f7f7f7;
    color: #8A8370;
    padding: 15px;
    border-radius: 10px 0px 0px 10px;
}
.sideBar-section .wp-block-search__button {
    border: none;
    margin: 0;
    background: #f7f7f7;
    color: #0F1610;
    font-size: 28px;
    padding: 0px 10px 0 0;
    border-radius: 0px 10px 10px 0px;
}
.sideBar-section input::placeholder{
  color: #8A8370;
}
input:focus, textarea:focus{
    border: none !important;
}
.sidebar-post-content h3 {
    margin: 0 !important;
    width: 100%;
    padding-left: 12px;
}
.sidebar-box {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
    overflow: hidden;
}
.sidebar-post-image {
    flex: 0 0 35%; 
    max-width: 35%;
    overflow: hidden;
}
.sidebar-post-image img {
    width: 100%;
    height: 98px !important;
    display: block;
    border-radius: 20px;
}
/*==============custom-theme-css-end==============*/
/*============== Contact-Form ==============*/
.contact-form label{
    margin-bottom: 8px;
}
.contact-form input[type=text],.contact-form input[type=email], 
.contact-form textarea, .contact-form select {
    width: 100%;
    padding: 16px 24px;
    margin-bottom: 24px;
    font-size: 16px;
    line-height: 140%;
    background: rgba(196, 212, 169, 0.3);
    border: 1px solid rgba(111, 143, 86, 0.3);
    outline: none;
    height: 54px;
    border-radius: 2px;
}
.footer-contact .contact-form label, .footer-contact .contact-form input, 
.footer-contact .contact-form textarea::placeholder, .footer-contact .contact-form input::placeholder{
  color: #0F1610;
}
.contact-sec .contact-form label, .contact-sec .contact-form input, 
.contact-sec .contact-form textarea::placeholder, .contact-sec .contact-form input::placeholder {
    color: #F7F5F0;
}
.footer-contact textarea{
    color: #0F1610 !important;
}
.contact-sec  textarea{
    color: #F7F5F0 !important;
}
.contact-form textarea {
    height: 150px;
    margin-bottom: 24px;
}
.contact-form .submit-btn {
    display: block;
    width: 100%;
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    text-align: center;
    text-transform: uppercase;
    padding: 20px;
    border: none;
    border-radius: 2px;
    bottom: 0 !important;
}
.footer-contact .contact-form .submit-btn {
    color: #F7F5F0;
    background: #1A2318;
    position: absolute;
    padding: 20px 56px 20px 32px;
}
.contact-sec .contact-form .submit-btn{
    color: #1A2318;
    background: #F7F5F0;
    position: absolute;
    padding: 20px 56px 20px 32px;
}
.contact-form .submit {
    position: relative;
    min-height: 72px !important;
    padding-top: 16px !important;
}
.contact-form .submit-btn:hover, .contact-form [type=submit]:focus{
    color: #F7F5F0;
    background: #6F8F56 !important;

}
.contact-form .form-control:focus {
    border: 1px solid rgba(111, 143, 86, 0.3) !important;
    outline: 0;
    box-shadow: none;
    background: #e7ebda;
}
.contact-sec .contact-form .form-control:focus {
    background: #4d5843;
}
.contact-sec .wpcf7 form .wpcf7-response-output{
    border-color: #ffb900;
    color: #fff;
}
body .wpcf7 form .wpcf7-response-output{
    margin: 20px 0 0 0 !important;
}
.contact-form .wpcf7-spinner {
    margin: 13px 0 0;
    margin-left: 135px;
}
.contact-form .submit>p {
    display: flex;
    align-items: center;
    justify-content: center;
}
.wpcf7-not-valid-tip {
    color: #dc3232;
    font-size: 1em;
    padding-top: 10px;
    font-weight: normal;
    display: block;
    position: relative;
    bottom: 20px;
}
/*============== Header Fix ==============*/
.header{
    width: 100%;
    z-index: 99;
    position: fixed !important;
    top: 40px;
}
.header ul li.phone-link a {
    align-items: center;
    gap: 8px;
    justify-content: start;
}
.header ul li.phone-link a::before {
    content: "";
    display: inline-block;
    width: 20px;
    height: 19px;
    background: url("https://dev.webtechitsolutions.com/eastpine/wp-content/uploads/2026/03/phone.svg") no-repeat center;
    background-size: contain;
    background-color: #0000 !important;
    opacity: 1 !important;
    position: static !important;
}
/*============== Elementor section ==============*/
.list-space h3 {
    margin-bottom: 8px !important;
}
.address .elementor-icon-box-wrapper:hover a {
    color: #6F8F56;
}
.address a {
    color: inherit;
    width: 100%;
    height: 100%;
    display: inline-block;
}
.address .call:hover svg, .address .location:hover svg {
    fill: #0F1610;
}
.address .call:hover a{
    color: #0F1610;
}
.address a svg{
    margin: 0 auto;
}
.east-video .elementor-custom-embed-image-overlay img{
    height: 100% !important;
}
.e-n-tabs-heading {
    background: #0F1610;
    padding: 8px;
    max-width: max-content;
    border-radius: 2px;
}
/*============== Slider ==============*/
.floor-plan-sec .blog-box {
    background: #fff;
    padding: 40px 50px 32px 50px;
    box-shadow: 0px 8px 52px rgba(0, 0, 0, 0.1);
    min-height: 496px;
    margin-bottom: 56px;
    border-radius: 2px;
    max-width: calc(100% - 20px);
}
.floor-plan-sec .post-image {
    width: 100%;
    height: 316px;
    background: #0000;
}

.floor-plan-sec .post-image img{
    width: 100%;
    height: 100% !important;
}
.floor-plan-sec .post-content {
    padding: 0;
}
.floor-plan-sec .post-content h3{
    padding: 32px 0 16px 0;
    text-align: center;
    font-size: 32px !important;
    font-weight: 400 !important;
    line-height: 100% !important;
    letter-spacing: -1px;
}
button.slick-arrow:hover {
    background: #0000;
}
.floorplan-meta {
    padding: 0;
    justify-content: space-between;
    display: flex;
    align-items: center;
}
.floorplan-meta span{
    background: #C4D4A9;
    padding: 8px 12px;
    font-size: 12px;
    line-height: 100%;
    letter-spacing: 0.5px;
    font-weight: 600;
    text-transform: uppercase;
}
.floor-plan-sec .slick-list.draggable {
    margin: 0 88px;
}
.floor-plan-sec button.slick-arrow {
    height: 64px;
    width: 64px;
    font-size: 0px;
    padding: 20px !important;
    border-color: #0F1610;
    border-radius: 50px;
    z-index: 9;
    background: #0000;
}
.floor-plan-sec .slick-prev{
    left: 0 !important;
}
.floor-plan-sec .slick-next{
    right: 0 !important;
}
.floor-plan-sec .slick-arrow:before{
    font-size: 24px;
    line-height: 20px !important;
    color: #0F1610;
}


/*============== Responsive ==============*/

@media (min-width: 1400px) {
    .blog-page, .page-section, .single-page {
        padding: 64px;
    }
    .header .phone-link{
        margin-left: 175px !important;
    }
    .fix-header .phone-link{
        margin-left: 132px !important;
    }
    .east-video .elementor-custom-embed-image-overlay {
        height: 467px !important;
    }
    .full-text{
        display: block;
    }
}
@media(min-width: 1366px) and (max-width: 1440px){
    .header .phone-link{
        margin-left: 175px !important;
    }
    .fix-header .phone-link{
        margin-left: 110px !important;
    }
}
@media(min-width: 1201px) and (max-width: 1365px){
    .header .phone-link{
        margin-left: 132px !important;
    }
    .fix-header .phone-link{
        margin-left: 22px !important;
    }
    .floor-plan-sec .blog-box {
        margin-bottom: 40px;
    }
}
@media (min-width: 1201px) and (max-width: 1400px) {
    .blog-page, .page-section, .single-page {
        padding: 64px 27px;
    }
    .phone-link{
        margin-left: 64px !important;
    }
    .full-text{
        display: block;
    }
}
@media (min-width: 1024px) and (max-width: 1200px) {
    .blog-page, .page-section, .single-page {
        padding: 64px 25px;
    }
    .floor-plan-sec .blog-box {
        padding: 40px;
        min-height: 1px;
    } 
    .floor-plan-sec .post-content h3 {
        font-size: 40px !important;
    }
    .floorplan-meta span {
        padding: 8px 10px;
        font-weight: 500;
    }  
    .floor-plan-sec .slick-list.draggable {
        margin: 0px;
    }
}
@media(min-width: 1025px){
    .main-nav-bar nav {
        justify-content: flex-end;
        width: 100% !important;
    }
}
@media(max-width: 1024px){
    .contact-form textarea{
        height: 120px !important;
    }
    .contact-form .submit-btn {
        padding: 16px 56px 16px 32px !important;
    }
    .contact-form .submit {
        min-height: 64px !important;
    }
    .fix-header{
        top: 0 !important;
    }
    .header .main-nav-bar ul li.phone-link a::before {
        filter: brightness(0);
    }
    .floor-plan-sec .blog-box {
        margin-bottom: 20px;
    }
    .main-nav-bar .hfe-nav-menu-icon {
        padding: 0;
    }
}

@media (min-width: 768px) and (max-width: 1024px) {
    .blog-page, .page-section, .single-page {
        padding: 60px 20px;
    }
    .Not-found-page {
        padding: 135px 20px 60px 20px;
    }
    .page-section, .single-page {
        margin-bottom: 0;
        min-height: 0;
    }
    .banner_images, .banner {
        min-height: 300px;
    }
    .banner_images h1, .banner h1 {
        text-align: center;
        font-size: 50px;
        line-height: 62px;
        margin-bottom: 0;
    }
    .blog-page {
        margin-bottom: 0;
    }
    .Not-found-search-content {
        padding: 35px 10px 60px 10px;
    }
    .Not-found-page .heading h1{
        font-size: 50px;
        line-height: 62px;
    }
    .Not-found-page .heading h2{
        font-size: 35px;
        line-height: 43px
    }
    .search-banner h1, 
    header.page-header h1,  
    .category-page h1, 
    .author_page h1, 
    .page_banner h1 {
        font-size: 35px;
        line-height: 43px;
    }
    .floor-plan-sec .blog-box {
        padding: 40px;
        min-height: 1px;
    }
    .floor-plan-sec .post-image {
        height: 250px;
    } 
    .floor-plan-sec .post-content h3 {
        padding: 20px 0;
        font-size: 32px !important;
    }
    .floorplan-meta span {
        padding: 8px 10px;
        font-weight: 500;
    }  
    .floor-plan-sec button.slick-arrow {
        height: 50px;
        width: 50px;
        padding: 0px !important;
    }
    .floor-plan-sec .slick-list.draggable {
        margin: 0px;
    }
    .contact-form input[type=text], .contact-form input[type=email], .contact-form textarea, .contact-form select{
        margin-bottom: 15px;
        height: 45px;
        padding: 10px 15px;
    }
}

@media (min-width: 768px){
    .nav-bar nav {
        justify-content: flex-end;
        width: 100% !important;
    }
    .header ul li.phone-link a::before {
        opacity: 1 !important;
    }
    .east-pine-gallery #gallery-1, .east-pine-gallery #gallery-2, .east-pine-gallery #gallery-3{
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
    }
    .east-pine-gallery .gallery-item {
        width: 100% !important;
    }
    .east-pine-gallery .gallery-item:nth-child(3n) {
        grid-column: 1 / -1 !important;
    }
}

@media (max-width: 767px) {
    .blog-page, .page-section, .single-page {
        padding: 40px 20px;
    }
    .Not-found-page{
        padding: 100px 20px 40px 20px;
    }
    .page-section, .single-page {
        margin-bottom: 0;
        min-height: 0;
    }
    .banner_images, .banner {
        min-height: 175px;
    }
    .banner_images h1, .banner h1 {
        text-align: center;
        font-size: 25px;
        line-height: 35px;
        margin-bottom: 0;
    }
    .blog-page {
        margin-bottom: 0;
    }
    .Not-found-search-content {
        padding: 15px 10px 40px 10px;
    }
    .Not-found-page .heading h1{
        font-size: 45px;
        line-height: 55px
    }
    .Not-found-page .heading h2{
        font-size: 25px;
        line-height: 35px
    }
    .search-section {
        display: block;
    }
    .search-banner h1, 
    header.page-header h1,  
    .category-page h1, 
    .author_page h1, 
    .page_banner h1 {
        font-size: 25px;
        line-height: 35px;
    }
    .default-button{
        font-size: 16px;
        line-height: 16px;
        padding: 16px 32px;
        margin-top: 15px;
    }
    .default-button a img {
        padding-left: 10px;
    }
    .header{
        top: 0px;
    }
    .banner-sec {
        background-image: linear-gradient(180deg, #1A2318 50%, #F7F5F0 50%) !important;
    }
    .sec-bg-dark{
        background-image: linear-gradient(180deg, #1A2318 74%, #6F8F56 26%) !important
    }
    .sec-bg-green{
        background-image: linear-gradient(180deg, #EDEBE5 74%, #6F8F56 26%) !important;
    }
    .banner_images {
        padding: 180px 0 60px !important;
    }
    .contact-form input[type=text], .contact-form input[type=email], .contact-form textarea, .contact-form select{
        margin-bottom: 15px;
        height: 45px;
        padding: 10px 15px;
    }
    .contact-form textarea {
        height: 120px;
        margin-bottom: 15px;
    }
    .floor-plan-sec .blog-box {
        padding: 20px;
        min-height: 1px;
    }
    .floor-plan-sec .post-image {
        height: 311px;
    } 
    .floor-plan-sec .post-content h3 {
        padding: 20px 0;
        font-size: 24px !important;
    }
    .floorplan-meta span {
        padding: 8px 5px;
        font-weight: 500;
    } 
    .floorplan-meta {
        gap: 10px;
        justify-content: center;
    } 
    .floor-plan-sec button.slick-arrow {
        height: 40px;
        width: 40px;
        padding: 0px !important;
    }
    .floor-plan-sec .slick-list.draggable {
        margin: 0px;
    }
    .header .nav-bar ul li.phone-link a::before {
        filter: brightness(0);
    }
    .gallery-spacing-custom .elementor-image-gallery .gallery-icon img {
        width: 100%;
    }
    .default-button a.btn{
        padding: 16px 32px !important;
    }
    .nav-bar .hfe-nav-menu-icon {
        padding: 0;
    }
    .footer-nav nav {
        justify-content: center;
    }
}
@media(max-width: 600px){
    .floor-plan-sec .post-image {
        height: 241px;
    }
}
@media(min-width: 420px) and (max-width: 767px){
.floor-plan-sec .post-image img {
    object-fit: contain;
}
.footer-nav ul li a {
    font-size: 16px !important;
    line-height: 20px;
}
.copyright-text p {
    font-size: 16px;
}
.blog-box .default-button {
    margin-top: 10px;
    padding: 0;
}
.img-box .elementor-widget-image {
    width: 100%;
}
    .sec-bg-light-green {
        background-image: linear-gradient(180deg, #EDEBE5 0%, #C4D4A9 50%) !important;
    }
}
@media(max-width: 419px){
    .contact-form>p>span.wpcf7-spinner {
        right: 18px;
        left: auto;
    }
    .sec-bg-light-green{
        background-image: linear-gradient(180deg, #EDEBE5 33%, #C4D4A9 33%) !important;
    }
}