/* 
Theme Name: Dornica Child
Theme URI: https://dornica.plus/
Description: Official child theme for Dornica. Designed to safely customize your website without modifying the parent theme. Add custom PHP, CSS, JavaScript, templates, and functionality while preserving compatibility with future Dornica updates. Fully compatible with Elementor Pro and WooCommerce.
Author:  Mehdi Nezamzadeh
Template: dornica
Version: 1.0.0
*/



.home-contact-form{
    width: 60%;
}
.home-contact-form input[type="text"],
.home-contact-form input[type="tel"]{
    font-family: "IranYekan" !important;
    text-align: center;
    direction: rtl;
    outline: unset !important;
    padding: 24px 16px !important;
    border-radius: 10px !important;
    background-color: #fff !important;
    color: #006831 !important;
}
.home-contact-form .gform_button[type="submit"]{
    font-family: 'IranYekan' !important;
    width: 100% !important;
    background-color: #001c0d !important;
    color: #fff !important;
    border-radius: 10px !important;
    padding: 17px 0 !important;
    font-weight: 600 !important;
    margin: -16px 0 0 0 !important;
    transition: all .4s ease;
}
.home-contact-form .gform_button[type="submit"]:hover{
    background-color: #000c06 !important;
}
.home-contact-form .gform_confirmation_message{
    font-family: 'IranYekan' !important;
    color: #ff5959 !important;
    background-color: #fff !important;
    border-radius: 10px !important;
    padding: 25px 14px !important;
    text-align: center !important;
    font-size: 15px !important;
    width: 130% !important;
    margin: 53px -61px 26px 0 !important;
}
.home-contact-form .gform_validation_errors,
.home-contact-form .gform_validation_errors .gform_submission_error,
.home-contact-form .gfield_validation_message{
    color: #ff7070 !important;
    font-family: 'IranYekan' !important;
    border-color: #ff7070 !important;
}

.service-card{
    position: relative;
    overflow: hidden;
    transition: all .35s ease;
    border-radius: 18px;
    background: #fff;
    border: 1px solid rgba(0,0,0,.06);
}
.service-card:hover{
    transform: translateY(-10px);
    box-shadow: 0 20px 45px rgba(0,0,0,.12);
    border-color: #414042;
}
.service-card::after{
    content: "";
    position: absolute;
    bottom: 0;
    right: -100%;
    width: 100%;
    height: 7px;
    background: #4140422e;
    transition: all .4s ease;
}
.service-card:hover::after{
    right: 0;
}
.service-card .elementor-icon{
    transition: all .35s ease;
}
.service-card:hover .elementor-icon{
    transform: scale(1.15) rotate(-5deg);
}
.service-card .elementor-heading-title{
    transition: all .3s ease;
}
.service-card:hover .elementor-heading-title{
    color: #414042;
}
#gform_fields_2{
    font-family: 'IranYekan';
    gap: 17px;
}
#gform_fields_2 textarea,
#gform_fields_2 input[type='text'],
#gform_fields_2 input[type='tel']{
    border-radius: 8px;
    border: 1px solid #dbdbdb;
    padding: 22px 11px;
    outline: unset;
    transition: all .4s ease;
}
#gform_submit_button_2{
    font-family: 'IranYekan' !important;
    width: 100% !important;
    background-color: #006831 !important;
    padding: 16px 0 !important;
    border-radius: 8px !important;
    outline: unset !important;
}
#gform_submit_button_2:hover{
    background-color: #005d2c !important;
}
#gform_confirmation_message_2{
    text-align: center !important;
    font-family: 'IranYekan' !important;
    border: 1px dashed #c3c3c3 !important;
    border-radius: 8px !important;
    padding: 24px 15px !important;
}
.elementor-pagination{
    display: flex;
    justify-content: center;
    gap: 10px;
    margin: 22px 0 0 0;
}
.elementor-pagination .page-numbers{
    color: #006831;
    border: 1px solid #006831;
    padding: 4px 13px;
    border-radius: 3px;
    font-family: 'IranYekan';
    margin: 0 !important;
    transition: all 0.3s ease;
}
.elementor-pagination .page-numbers:hover{
    box-shadow: 0 0 5px 0 #d4a72c;
}
.elementor-pagination .page-numbers.current{
    color: #ffffff;
    border: 1px solid #006831;
    background-color: #006831;
}
.social-share-box{
    margin: 0 0 -7px 0;
}
.social-share-box svg{
    width: 20px;
    height: 20px;
    margin-right: 4px;
    transition: all .3s;
}
.social-share-box svg{
    fill: #505050;
    transition: all .3s;
}
.social-share-box a.linkedin svg:hover{
    fill: #0e76a8;
}
.social-share-box a.whatsapp svg:hover{
    fill: #25D366;
}
.social-share-box a.telegram svg:hover{
    fill: #0088cc;
}
.social-share-box a.facebook svg:hover{
    fill: #4267B2;
}
.custom-product-price{
    display: flex;
    align-items: center;
    justify-content: end;
    gap: 10px;
    flex-wrap: wrap;
    font-family: 'IranYekan';
}
.e-loop-item .custom-product-price {
    justify-content: flex-start;
    width: fit-content;
    display: grid;
}

.custom-product-price .old-price{
    text-decoration: line-through;
    opacity: .6;
    font-size: 14px;
    margin: 0 0 -7px 0;
}

.custom-product-price .sale-price{
    font-size: 17px;
    font-weight: 900;
}

.custom-product-price .normal-price{
    font-size: 17px;
    font-weight: 900;
}
.product-form .gform_button{
    font-family: 'IranYekan' !important;
    width: 100% !important;
    background-color: #006831 !important;
    color: #fff !important;
    border-radius: 7px !important;
    padding: 17px 0 !important;
    font-weight: 600 !important;
    margin: -16px 0 0 0 !important;
    transition: all .4s ease;
    outline: unset !important;
}
.product-form .gform_button:hover{
    background-color: #004822 !important;
}
.product-form input[type="tel"]{
    box-shadow: 0 0 5px #d3d3d3 !important;
    font-family: "IranYekan" !important;
    text-align: center;
    direction: rtl;
    padding: 24px 16px !important;
    border-radius: 7px !important;
    background-color: #fff !important;
    color: #818283 !important;
    font-weight: 500 !important;
    border: none !important;
    outline: unset !important;
}
.product-form .gform_confirmation_message{
    font-family: 'IranYekan' !important;
    margin: 25px 0 20px 0 !important;
    font-size: 15px !important;
    text-align: center !important;
}
.custom-product-gallery{
    width:100%;
}
.gallery-main-wrapper{
    position:relative;
    margin-bottom:15px;
}
.gallery-main-image{
    border-radius:12px;
    overflow:hidden;
}
.gallery-main-image img{
    width:100%;
    display:block;
    transition: opacity .35s ease;
    opacity:1;
}
.gallery-main-image img.fade{
    opacity:0;
}
.gallery-nav{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 40px;
    height: 40px;
    border: none;
    background: #141414;
    cursor: pointer;
    border-radius: 50%;
    z-index: 2;
    font-size: 35px;
    line-height: 1;
    box-shadow: 0 2px 10px rgba(0,0,0,.15);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    color: #fff;
}
.gallery-nav:hover{
    background: #000000 !important;
}
.gallery-nav.prev{
    right:10px;
    padding: 0 0 11px 0;
}
.gallery-nav.next{
    left:10px;
    padding: 0 3px 10px 0;
}
.gallery-thumbnails{
    display: flex;
    gap: 10px;
    flex-wrap: nowrap;
}
.gallery-thumb{
    width: 80px;
    height: 80px;
    border: 3px solid transparent;
    border-radius: 10px;
    overflow: hidden;
    cursor: pointer;
    transition: .2s;
}
.gallery-thumb.active{
    border-color: #006831;
}
.gallery-thumb img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}
.plate-type-list{
    display: inline-flex;
    gap: 8px;
    font-family: 'IranYekan';
    font-size: 14px;
    font-weight: 300;
}

.plate-type-list .plate-type-item{
    background-color: #009747;
    color: #fff;
    padding: 4px 10px;
    border-radius: 5px;
}
.e-loop-item .plate-type-list {
    font-size: 12px;
}
.custom-faq-accordion .faq-item{
    margin: 0 0 13px 0;
    font-family: 'IranYekan';
    padding: 0px 25px;
    background-color: #ffffff0f;
    border-radius: 10px;
    color: #838383;
    box-shadow: 0 0 3px #0000003b;
}
.custom-faq-accordion .faq-question{
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    border: none;
    background: none;
    padding: 18px 0;
    text-align: right;
    gap: 20px;
    font-size: 16px;
    color: #0a0a0a;
    font-weight: 600;
	line-height:26px;
}
.custom-faq-accordion .faq-question-text{
	 font-family: 'IranYekan';
    flex: 1;
    min-width: 0;
    text-align: right;
    white-space: normal;
    word-break: break-word;
    line-height:26px;
}
.custom-faq-accordion .faq-icon{
    display:flex;
    align-items:center;
    justify-content:center;
    transition:transform .3s ease;
}
.custom-faq-accordion .faq-item.active .faq-icon{
    transform:rotate(180deg);
}
.custom-faq-accordion .faq-answer{
    max-height:0;
    overflow:hidden;
    transition:max-height .35s ease,padding .35s ease;
    padding:0;
	line-height:26px;
}
.custom-faq-accordion .faq-item.active .faq-answer{
    max-height:500px;
    padding:0 0 18px;
}
.stories-slider{
    position:relative;
}
.stories-slider .swiper-button-prev,
.stories-slider .swiper-button-next{
    width:42px;
    height:42px;
    border-radius:50%;
    background:#0a0a0a;
    box-shadow:0 3px 10px rgba(0,0,0,.15);
}
.stories-slider .swiper-button-prev:after,
.stories-slider .swiper-button-next:after{
    font-size: 18px;
    font-weight: 700;
    color: #fff;
}
.story-video{
    width:100%;
    aspect-ratio:9/16;
    border-radius:18px;
    object-fit:cover;
    display:block;
    background:#000;
}

/* ========= Glass Card ========= */

.glass-card-copper{

    position:relative;
    overflow:hidden;
    isolation:isolate;

    background:rgba(255,255,255,.04);

    border:1px solid rgba(255,255,255,.08);

    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);

    border-radius:22px;

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.05),
        0 12px 30px rgba(0,0,0,.18);

    transition:.35s ease;

}

/* ---------- Bottom Line ---------- */

.glass-card-copper::before{

    content:"";

    position:absolute;

    left:0;
    right:0;

    top:auto !important;
    bottom:0 !important;

    width:100%;
    height:2px;

    background:linear-gradient(
        90deg,
        transparent,
        #E59A63,
        #CF7434,
        #E59A63,
        transparent
    );

    box-shadow:
        0 0 10px rgba(207,116,52,.45),
        0 0 18px rgba(207,116,52,.28);

    opacity:0;

    transition:.35s ease;

    z-index:20;

}

/* ---------- Bottom Glow ---------- */

.glass-card-copper::after{

    content:"";

    position:absolute;

    left:0;
    right:0;
    bottom:0;

    height:80px;

    background:radial-gradient(

        ellipse at bottom,

        rgba(229,154,99,.18) 0%,

        rgba(207,116,52,.08) 35%,

        transparent 75%

    );

    opacity:0;

    transition:.35s ease;

    z-index:1;

}

/* ---------- Hover ---------- */

.glass-card-copper:hover{

    transform:translateY(-8px);

    border-color:rgba(207,116,52,.28);

    box-shadow:

        inset 0 1px 0 rgba(255,255,255,.08),

        0 22px 45px rgba(0,0,0,.22),

        0 0 35px rgba(207,116,52,.08);

}

.glass-card-copper:hover::before{

    opacity:1;

}

.glass-card-copper:hover::after{

    opacity:1;

}

/* ---------- Layer ---------- */

.glass-card-copper>*{

    position:relative;

    z-index:10;

}