/* =========================================================
   ABHIRUCHI HOME — HUMANIZED REFINEMENT
   Add this AFTER style.css.
   Scoped to .home-page so Products/About pages are untouched.
   ========================================================= */

.home-page{
    overflow:hidden;
}

.home-page a,
.home-page a:hover,
.home-page a:focus{
    text-decoration:none;
}

/* HERO — home banner image */
.home-page .hero-section{
    min-height:660px;

    background:
        linear-gradient(
            90deg,
            rgba(45,8,8,.82) 0%,
            rgba(70,10,10,.60) 35%,
            rgba(70,10,10,.20) 70%,
            rgba(0,0,0,.05) 100%
        ),
        url("/assets/images/home/abhiruchi-home-bn-img.webp")
        center center / cover no-repeat;
}

.home-page .hero-overlay{
    background:transparent;
}

.home-page .hero-container{
    min-height:660px;
    display:flex;
    align-items:center;
    gap:0;
}
.home-page .hero-content{
    max-width:620px;
}
.home-page .hero-eyebrow{
    margin-bottom:15px;
    font-size:10px;
    letter-spacing:2.2px;
}
.home-page .hero-content h1{
    max-width:600px;
    margin-bottom:20px;
    font-size:clamp(45px,5.3vw,68px);
    line-height:1.03;
    letter-spacing:-1.8px;
}
.home-page .hero-content>p{
    max-width:540px;
    margin-bottom:27px;
    font-size:15px;
    line-height:1.75;
}
.home-page .hero-buttons .btn{
    min-height:46px;
    padding:11px 21px;
    border-radius:4px;
}
.home-page .hero-brand-circle{
    width:350px;
    height:350px;
    padding:27px;
    border-width:2px;
    box-shadow:0 22px 55px rgba(34,6,3,.25),0 0 0 12px rgba(242,178,27,.08);
}
.home-page .hero-brand-caption{
    margin-top:18px;
    font-size:9px;
    letter-spacing:2.2px;
}

/* BRAND PROMISE — keep it simple and editorial */
.home-page .brand-intro{
    padding-top:82px;
    padding-bottom:82px;
}
.home-page .brand-intro .section-heading p{
    max-width:650px;
}
.home-page .intro-highlight{
    margin-top:8px;
}
.home-page .intro-item{
    padding:27px 25px;
}
.home-page .intro-item h3{
    font-size:15px;
}
.home-page .intro-item p{
    font-size:12px;
    line-height:1.65;
}

/* WHY — remove the repeated floating-card treatment */
.home-page .why-section{
    padding-top:88px;
    padding-bottom:88px;
    background:#fff;
}
.home-page .why-section .section-heading{
    max-width:650px;
    margin-bottom:42px;
}
.home-page .feature-grid{
    grid-template-columns:repeat(4,1fr);
    gap:0;
    border-top:1px solid var(--border);
    border-bottom:1px solid var(--border);
}
.home-page .feature-card{
    min-height:220px;
    padding:27px 27px 28px 24px;
    background:transparent;
    border:0;
    border-right:1px solid var(--border);
    border-radius:0;
    box-shadow:none;
    transform:none;
}
.home-page .feature-card:last-child{
    border-right:0;
}
.home-page .feature-card:hover{
    transform:none;
    box-shadow:none;
    border-color:var(--border);
    background:#fffaf3;
}
.home-page .feature-icon{
    width:auto;
    height:auto;
    margin-bottom:24px;
    justify-content:flex-start;
    background:none;
    color:var(--primary);
    border-radius:0;
    font-size:10px;
    letter-spacing:1px;
}
.home-page .feature-card h3{
    margin-bottom:9px;
    font-size:16px;
}
.home-page .feature-card p{
    max-width:220px;
    font-size:12px;
    line-height:1.7;
}

/* PRODUCTS — retain the strong existing product presentation */
.home-page .products-section{
    padding-top:88px;
    padding-bottom:88px;
}
.home-page .product-card{
    border-radius:8px;
    box-shadow:0 7px 22px rgba(43,23,16,.06);
}
.home-page .product-card:hover{
    transform:translateY(-4px);
    box-shadow:0 14px 35px rgba(43,23,16,.10);
}
.home-page .product-image{
    height:235px;
}
.home-page .product-content{
    padding:20px;
}
.home-page .section-action{
    margin-top:34px;
}

/* QUALITY — turn the 4 cards into a real brand story */
.home-page .quality-promise-section{
    padding:92px 0;
    background:
        radial-gradient(circle at 85% 15%,rgba(242,178,27,.12),transparent 24%),
        linear-gradient(125deg,#741017 0%,#a61920 62%,#8d151b 100%);
}
.home-page .quality-promise-grid{
    grid-template-columns:.85fr 1.15fr;
    gap:78px;
}
.home-page .quality-promise-content h2{
    font-size:clamp(38px,4vw,54px);
}
.home-page .quality-promise-list{
    grid-template-columns:1fr 1fr;
    gap:0 34px;
    border-top:1px solid rgba(255,255,255,.18);
}
.home-page .quality-promise-item{
    min-height:0;
    display:grid;
    grid-template-columns:35px 1fr;
    gap:14px;
    padding:23px 0;
    border:0;
    border-bottom:1px solid rgba(255,255,255,.18);
    border-radius:0;
    background:transparent;
    transition:none;
}
.home-page .quality-promise-item:hover{
    transform:none;
    background:transparent;
    border-color:rgba(255,255,255,.18);
}
.home-page .quality-promise-number{
    width:auto;
    height:auto;
    display:block;
    padding-top:2px;
    background:none;
    border-radius:0;
    color:var(--secondary);
    font-size:10px;
}
.home-page .quality-promise-item h3{
    font-size:15px;
}
.home-page .quality-promise-item p{
    font-size:12px;
    line-height:1.65;
}

/* PROCESS — subtle refinement only */
.home-page .process-preview{
    padding-top:88px;
    padding-bottom:88px;
}
.home-page .process-preview-grid{
    gap:82px;
}
.home-page .process-step{
    padding:21px 0;
}
.home-page .process-step h3{
    font-size:15px;
}
.home-page .process-step p{
    font-size:12px;
}

/* FAQ — tighter and quieter */
.home-page .faq-section{
    padding:82px 0;
}
.home-page .faq-wrapper{
    max-width:820px;
}
.home-page .faq-item{
    border-radius:5px;
    margin-bottom:8px;
}
.home-page .faq-item summary{
    padding:18px 50px 18px 20px;
    font-size:13px;
}
.home-page .faq-answer p{
    font-size:12.5px;
}

/* FINAL CTA — brand card, not a generic red banner */
.home-page .cta-section{
    padding:82px 0;
    background:#fff;
}
.home-page .cta-box{
    position:relative;
    display:grid;
    grid-template-columns:minmax(0,1fr) 360px;
    align-items:center;
    min-height:350px;
    overflow:hidden;
    padding:54px 58px;
    border:1px solid #ead7bd;
    border-radius:20px;
    background:
        radial-gradient(circle at 82% 18%,rgba(242,178,27,.08),transparent 24%),
        linear-gradient(120deg,#fffaf3 0%,#f7ead8 100%);
    box-shadow:0 18px 50px rgba(55,30,12,.08);
}
.home-page .cta-box::before{
    content:"";
    position:absolute;
    width:420px;
    height:420px;
    right:95px;
    top:-275px;
    border:1px solid rgba(181,30,35,.07);
    border-radius:50%;
}
.home-page .cta-box::after{
    content:"";
    position:absolute;
    width:280px;
    height:280px;
    left:-175px;
    bottom:-195px;
    border:1px solid rgba(242,178,27,.14);
    border-radius:50%;
}
.home-page .cta-content{
    position:relative;
    z-index:3;
    max-width:610px;
    margin:0;
    text-align:left;
}
.home-page .cta-content .section-kicker{
    margin-bottom:12px;
    color:var(--primary);
}
.home-page .cta-content h2{
    margin-bottom:15px;
    color:var(--dark);
    font-size:clamp(38px,4.3vw,56px);
    line-height:1.07;
}
.home-page .cta-content h2 span{
    color:var(--primary);
}
.home-page .cta-content p{
    max-width:560px;
    margin-bottom:24px;
    color:var(--text-light);
    font-size:14px;
    line-height:1.75;
}
.home-page .cta-buttons{
    justify-content:flex-start;
}
.home-page .cta-product-btn{
    background:var(--primary);
    border-color:var(--primary);
    color:#fff;
}
.home-page .cta-product-btn:hover{
    background:var(--primary-dark);
    border-color:var(--primary-dark);
}
.home-page .cta-enquiry-btn{
    background:transparent;
    border-color:#cdbca7;
    color:var(--dark);
}
.home-page .cta-enquiry-btn:hover{
    background:var(--dark);
    border-color:var(--dark);
    color:#fff;
}
.home-page .cta-visual{
    position:relative;
    z-index:2;
    width:330px;
    height:330px;
    display:flex;
    align-items:center;
    justify-content:center;
    justify-self:end;
}
.home-page .cta-logo-ring{
    position:absolute;
    width:300px;
    height:300px;
    border-radius:50%;
    background:rgba(181,30,35,.055);
    box-shadow:0 16px 40px rgba(80,45,15,.07);
}
.home-page .cta-logo-circle{
    position:relative;
    z-index:2;
    width:255px;
    height:255px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:16px;
    border-radius:50%;
    background:#fff;
    border:2px solid var(--secondary);
    box-shadow:0 12px 30px rgba(70,35,15,.10);
}
.home-page .cta-logo-circle img{
    width:100%;
    height:100%;
    object-fit:contain;
    border-radius:50%;
}

/* MOBILE */
@media (max-width:900px){
    .home-page .hero-section,
    .home-page .hero-container{
        min-height:auto;
    }
    .home-page .hero-container{
        grid-template-columns:1fr;
        padding-top:68px;
        padding-bottom:68px;
        text-align:center;
    }
    .home-page .hero-content{
        margin:0 auto;
    }
    .home-page .hero-content>p{
        margin-left:auto;
        margin-right:auto;
    }
    .home-page .hero-buttons{
        justify-content:center;
    }
    .home-page .hero-brand{
        order:-1;
    }
    .home-page .hero-brand-circle{
        width:280px;
        height:280px;
        padding:21px;
    }
    .home-page .feature-grid{
        grid-template-columns:repeat(2,1fr);
    }
    .home-page .feature-card:nth-child(2){
        border-right:0;
    }
    .home-page .feature-card:nth-child(-n+2){
        border-bottom:1px solid var(--border);
    }
    .home-page .quality-promise-grid{
        grid-template-columns:1fr;
        gap:45px;
    }
    .home-page .cta-box{
        grid-template-columns:1fr;
        min-height:auto;
        padding:45px 38px 28px;
    }
    .home-page .cta-content{
        max-width:700px;
    }
    .home-page .cta-visual{
        justify-self:center;
        margin-top:20px;
    }
}

@media (max-width:600px){
    .home-page .hero-container{
        padding-top:55px;
        padding-bottom:60px;
    }
    .home-page .hero-content h1{
        font-size:42px;
        letter-spacing:-1px;
    }
    .home-page .hero-content>p{
        font-size:14px;
    }
    .home-page .hero-brand-circle{
        width:230px;
        height:230px;
        padding:18px;
    }
    .home-page .brand-intro,
    .home-page .why-section,
    .home-page .products-section,
    .home-page .quality-promise-section,
    .home-page .process-preview,
    .home-page .faq-section{
        padding-top:62px;
        padding-bottom:62px;
    }
    .home-page .feature-grid{
        grid-template-columns:1fr;
    }
    .home-page .feature-card,
    .home-page .feature-card:nth-child(-n+2){
        min-height:auto;
        border-right:0;
        border-bottom:1px solid var(--border);
    }
    .home-page .feature-card:last-child{
        border-bottom:0;
    }
    .home-page .feature-card p{
        max-width:100%;
    }
    .home-page .quality-promise-list{
        grid-template-columns:1fr;
    }
    .home-page .cta-section{
        padding:58px 0;
    }
    .home-page .cta-box{
        padding:36px 23px 24px;
        border-radius:16px;
    }
    .home-page .cta-content h2{
        font-size:35px;
    }
    .home-page .cta-content p{
        font-size:13px;
    }
    .home-page .cta-buttons{
        flex-direction:column;
        align-items:stretch;
    }
    .home-page .cta-buttons .btn{
        width:100%;
    }
    .home-page .cta-visual{
        width:270px;
        height:270px;
    }
    .home-page .cta-logo-ring{
        width:245px;
        height:245px;
    }
    .home-page .cta-logo-circle{
        width:210px;
        height:210px;
        padding:14px;
    }
}
