/* Novin Product Hero for Elementor */
.nph-hero{
    position:relative;
    display:flex;
    width:100%;
    overflow:hidden;
    background-repeat:no-repeat;
    background-position:center center;
    background-size:cover;
    isolation:isolate;
    box-sizing:border-box;
}

.nph-hero *,
.nph-hero *::before,
.nph-hero *::after{
    box-sizing:border-box;
}

.nph-hero__overlay{
    position:absolute;
    right:0;
    bottom:0;
    left:0;
    z-index:0;
    pointer-events:none;
}

.nph-hero__inner{
    position:relative;
    z-index:1;
    width:100%;
    margin-inline:auto;
    display:flex;
}

.nph-hero__content{
    display:flex;
    flex-direction:column;
    width:100%;
}

.nph-hero__eyebrow{
    margin:0;
    font-family:Manrope,Vazirmatn,sans-serif;
    font-size:11px;
    line-height:1.5;
    font-weight:800;
    letter-spacing:.16em;
}

.nph-hero__title{
    margin:0;
    font-family:Vazirmatn,Manrope,sans-serif;
    font-size:clamp(24px,3vw,34px);
    line-height:1.45;
    font-weight:800;
}

.nph-hero__subtitle{
    margin:0;
    font-family:Manrope,Vazirmatn,sans-serif;
    font-size:12px;
    line-height:1.6;
    font-weight:400;
}

.nph-hero__actions{
    display:flex;
    flex-wrap:wrap;
    align-items:stretch;
}

.nph-hero__btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-decoration:none!important;
    font-family:Vazirmatn,Manrope,sans-serif;
    font-size:14px;
    line-height:1.2;
    font-weight:700;
    border-style:solid;
    cursor:pointer;
    transition-property:background-color,color,border-color,box-shadow,transform;
    transition-timing-function:ease;
    white-space:nowrap;
}

.nph-hero__btn:hover,
.nph-hero__btn:focus{
    text-decoration:none!important;
}

.nph-hero__btn-icon{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    line-height:1;
}

.nph-hero__btn-icon svg{
    display:block;
    fill:currentColor;
}

@media (max-width:767px){
    .nph-hero__title{
        font-size:clamp(24px,7vw,30px);
    }

    .nph-hero__btn{
        font-size:13px;
    }
}


/* Attached technical specification strip */
.nph-widget,
.nph-widget *{
    box-sizing:border-box;
}

.nph-spec-strip{
    width:100%;
    display:flex;
    flex-direction:row;
    background:#121212;
    overflow:hidden;
}

.nph-spec-item{
    flex:1 1 0;
    min-width:0;
    min-height:88px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:14px;
    padding:18px;
    color:inherit;
    text-decoration:none!important;
    border-inline-start:1px solid rgba(255,255,255,.10);
}

.nph-spec-item:first-child{
    border-inline-start:none;
}

.nph-spec-item:hover,
.nph-spec-item:focus{
    color:inherit;
    text-decoration:none!important;
}

.nph-spec-icon{
    flex:0 0 auto;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    color:#C9AD7C;
    font-size:22px;
    line-height:1;
}

.nph-spec-icon svg{
    display:block;
    width:22px;
    height:22px;
    fill:currentColor;
}

.nph-spec-text{
    display:flex;
    flex-direction:column;
    min-width:0;
}

.nph-spec-value{
    display:block;
    font-family:Manrope,Vazirmatn,sans-serif;
    font-size:17px;
    font-weight:800;
    line-height:1.25;
    color:#fff;
    white-space:nowrap;
}

.nph-spec-label{
    display:block;
    margin-top:3px;
    font-family:Vazirmatn,Manrope,sans-serif;
    font-size:11.5px;
    line-height:1.45;
    color:rgba(255,255,255,.55);
    white-space:nowrap;
}

@media(max-width:1024px){
    .nph-spec-value{font-size:15px;}
    .nph-spec-item{padding-inline:14px;}
}

@media(max-width:767px){
    /* Default mobile treatment: compact 2x2 grid, no horizontal scrolling. */
    .nph-spec-mobile-grid .nph-spec-strip{
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        overflow:visible;
    }

    .nph-spec-mobile-grid .nph-spec-item{
        width:auto;
        min-width:0;
        min-height:76px;
        padding:12px 10px;
        gap:10px;
        justify-content:center;
        border-inline-start:0;
        border-top:0;
    }

    .nph-spec-mobile-grid .nph-spec-item:nth-child(even){
        border-inline-start-width:1px;
        border-inline-start-style:solid;
    }

    .nph-spec-mobile-grid .nph-spec-item:nth-child(n+3){
        border-top-width:1px;
        border-top-style:solid;
    }

    /* Optional one-item-per-row mobile mode. */
    .nph-spec-mobile-single .nph-spec-strip{
        display:flex;
        flex-direction:column;
        overflow:visible;
    }

    .nph-spec-mobile-single .nph-spec-item{
        width:100%;
        min-width:0;
        min-height:68px;
        flex:0 0 auto;
        justify-content:flex-start;
        border-inline-start:0;
        border-top:1px solid rgba(255,255,255,.10);
    }

    .nph-spec-mobile-single .nph-spec-item:first-child{
        border-top:0;
    }

    /* Legacy/source-style horizontal scrolling remains available as an option. */
    .nph-spec-mobile-scroll .nph-spec-strip{
        display:flex;
        flex-wrap:nowrap;
        overflow-x:auto;
        overflow-y:hidden;
        -webkit-overflow-scrolling:touch;
        scrollbar-width:thin;
        scroll-snap-type:x proximity;
    }

    .nph-spec-mobile-scroll .nph-spec-item{
        flex:0 0 auto;
        min-width:160px;
        scroll-snap-align:start;
    }

    /* Layout inside each spec item. */
    .nph-spec-mobile-item-horizontal .nph-spec-item{
        flex-direction:row;
    }

    .nph-spec-mobile-item-vertical .nph-spec-item{
        flex-direction:column;
        text-align:center;
        gap:7px;
    }

    .nph-spec-mobile-item-vertical .nph-spec-text{
        text-align:center !important;
        align-items:center;
    }

    .nph-spec-value{
        font-size:14px;
        line-height:1.25;
        white-space:nowrap;
    }

    .nph-spec-label{
        margin-top:2px;
        font-size:10.5px;
        line-height:1.35;
        white-space:normal;
    }

    .nph-spec-icon{
        flex:0 0 auto;
    }
}
