/* ==========================================================
   FAQ PAGE
   Rents in Nepal
========================================================== */

/* ==========================
   Variables
========================== */

:root{
    --faq-primary:#2f6b3d;
    --faq-secondary:#11B77C;
    --faq-accent:#11b77c;

    --faq-text:#24324A;
    --faq-light:#6B7280;

    --faq-bg:#F8FAFC;
    --faq-card:#ffffff;

    --faq-radius:18px;

    --faq-shadow:
        0 10px 30px rgba(15,76,129,.08);

    --faq-transition:.30s ease;
}

/* ==========================
   Base
========================== */

body{
    background:var(--faq-bg);
}

.faq-section{
    padding:70px 0;
}

.faq-wrapper{
    max-width:900px;
    margin:auto;
}

/* ==========================
   Hero
========================== */

.faq-hero{

    position:relative;

    overflow:hidden;
    height: 100vh;

    padding:90px 0 90px;

    background:
        linear-gradient(135deg, #2f6b3d, #245530);
    color:#fff;

}

.faq-hero .container{

    display:grid;

    grid-template-columns:
        2fr
        1fr;

    gap:60px;

    align-items:center;

}

.faq-badge{

    display:inline-flex;

    align-items:center;

    gap:8px;

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

    padding:8px 18px;

    border-radius:999px;

    font-weight:600;

    margin-bottom:25px;

    backdrop-filter:blur(10px);

}

.faq-hero h1{

    font-size:56px;

    line-height:1.1;

    margin-bottom:25px;

    color:#fff;

}

.faq-hero h1 span{

    color:var(--faq-accent);

}

.faq-hero p{

    max-width:640px;

    font-size:18px;

    line-height:1.8;

    color:rgba(255,255,255,.90);

    margin-bottom:35px;

}

/* ==========================
   Search
========================== */

.faq-search{

    display:flex;

    align-items:center;

    gap:14px;

    background:#fff;

    padding:18px 24px;

    border-radius:999px;

    box-shadow:var(--faq-shadow);

    margin-bottom:28px;

}

.faq-search svg{

    color:var(--faq-primary);

    flex-shrink:0;

}

.faq-search input{

    width:100%;

    border:none;

    outline:none;

    background:none;

    font-size:16px;

    color:var(--faq-text);

}

.faq-search input::placeholder{

    color:#94A3B8;

}

/* ==========================
   Hero Cards
========================== */

.faq-hero__cards{

    display:flex;

    flex-direction:column;

    gap:20px;

}

.hero-card{

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

    backdrop-filter:blur(15px);

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

    border-radius:20px;

    padding:28px;

    text-align:center;

}

.hero-card h3{

    font-size:40px;

    margin-bottom:8px;

    color:#fff;

}

.hero-card p{

    margin:0;

    color:rgba(255,255,255,.85);

}

/* ==========================
   Floating Shapes
========================== */

.faq-circle{

    position:absolute;

    border-radius:50%;

    filter:blur(20px);

    opacity:.18;

}

.faq-circle--1{

    width:280px;

    height:280px;

    background:#11B77C;

    top:-80px;

    left:-80px;

}

.faq-circle--2{

    width:220px;

    height:220px;

    background:#FFD166;

    right:-70px;

    top:80px;

}

.faq-circle--3{

    width:160px;

    height:160px;

    background:#ffffff;

    bottom:-60px;

    left:45%;

}

/* ==========================================================
   FAQ CATEGORY FILTERS
========================================================== */

.faq-tags{

    display:flex;

    flex-wrap:wrap;

    gap:12px;

}

.faq-tag{

    appearance:none;

    border:none;

    cursor:pointer;

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

    color:#fff;

    padding:12px 22px;

    border-radius:999px;

    font-size:14px;

    font-weight:600;

    transition:all .3s ease;

    backdrop-filter:blur(12px);

}

.faq-tag:hover{

    background:#ffffff;

    color:var(--faq-primary);

    transform:translateY(-2px);

}

.faq-tag.active{

    background:var(--faq-secondary);

    color:#fff;

    box-shadow:0 10px 25px rgba(17,183,124,.35);

}

/* ==========================================================
   FAQ SECTION
========================================================== */

.faq-section{

    padding:80px 0;

}

.faq-wrapper{

    max-width:900px;

    margin:auto;

}

/* ==========================================================
   FAQ CARD
========================================================== */

.faq-item{

    background:#fff;

    border-radius:18px;

    margin-bottom:20px;

    overflow:hidden;

    box-shadow:0 8px 25px rgba(15,76,129,.08);

    transition:all .3s ease;

    border:1px solid rgba(15,76,129,.05);

}

.faq-item:hover{

    transform:translateY(-4px);

    box-shadow:0 18px 40px rgba(15,76,129,.12);

}

.faq-item.active{

    border-color:var(--faq-secondary);

}

/* ==========================================================
   QUESTION
========================================================== */

.faq-question{

    width:100%;

    background:none;

    border:none;

    cursor:pointer;

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:24px 30px;

    text-align:left;

    font-size:18px;

    font-weight:700;

    color:var(--faq-text);

}

.faq-question span{

    flex:1;

    padding-right:20px;

}

/* ==========================================================
   ICON
========================================================== */

.faq-icon{

    width:40px;

    height:40px;

    border-radius:50%;

    background:#EEF5FB;

    display:flex;

    align-items:center;

    justify-content:center;

    color:var(--faq-primary);

    font-size:22px;

    font-style:normal;

    transition:all .35s ease;

    flex-shrink:0;

}

.faq-item.active .faq-icon{

    background:var(--faq-secondary);

    color:#fff;

    transform:rotate(45deg);

}

/* ==========================================================
   ANSWER
========================================================== */

.faq-answer{

    max-height:0;

    overflow:hidden;

    transition:max-height .4s ease;

    /* background:#fff; */

}

.faq-item.active .faq-answer{

    max-height:600px;

}

.faq-answer p{

    padding:0 30px 30px;

    margin:0;

    color:var(--faq-light);

    line-height:1.8;

    font-size:16px;

}

/* ==========================================================
   DIVIDER
========================================================== */

.faq-item.active .faq-question{

    border-bottom:1px solid rgba(15,76,129,.08);

}

/* ==========================================================
   FAQ CTA
========================================================== */

.faq-cta{

    padding:90px 0;

    background:linear-gradient(
        135deg,
        #F8FBFF 0%,
        #EEF6FF 100%
    );

}

.faq-cta__card{

    max-width:900px;

    margin:auto;

    text-align:center;

    padding:70px 50px;

    border-radius:24px;

    background:linear-gradient(135deg, #2f6b3d, #245530);

    color:#fff;

    position:relative;

    overflow:hidden;

    box-shadow:0 25px 60px rgba(15,76,129,.18);

}

.faq-cta__card::before{

    content:"";

    position:absolute;

    width:280px;

    height:280px;

    border-radius:50%;

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

    top:-120px;

    right:-100px;

}

.faq-cta__badge{

    display:inline-block;

    padding:10px 18px;

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

    border-radius:999px;

    font-size:14px;

    font-weight:600;

    margin-bottom:20px;

}

.faq-cta__card h2{

    color:#fff;

    font-size:42px;

    margin-bottom:18px;

}

.faq-cta__card p{

    max-width:620px;

    margin:0 auto 35px;

    color:rgba(255,255,255,.9);

    line-height:1.8;

}

.faq-cta__buttons{

    display:flex;

    justify-content:center;

    gap:18px;

    flex-wrap:wrap;

}

.faq-cta__buttons .button{

    min-width:180px;

    border-radius:999px;

    padding:15px 28px;

    transition:all .3s ease;

}

.faq-cta__buttons .button:hover{

    transform:translateY(-3px);

}

/* ==========================================================
   SIMPLE SCROLL ANIMATION
========================================================== */

.faq-item{

    opacity:0;

    transform:translateY(20px);

    animation:faqFade .5s ease forwards;

}

.faq-item:nth-child(2){animation-delay:.05s;}
.faq-item:nth-child(3){animation-delay:.10s;}
.faq-item:nth-child(4){animation-delay:.15s;}
.faq-item:nth-child(5){animation-delay:.20s;}
.faq-item:nth-child(6){animation-delay:.25s;}

@keyframes faqFade{

    from{

        opacity:0;

        transform:translateY(20px);

    }

    to{

        opacity:1;

        transform:translateY(0);

    }

}

/* ==========================================================
   RESPONSIVE
========================================================== */

@media (max-width:992px){

    .faq-hero .container{

        grid-template-columns:1fr;

        text-align:center;

        gap:40px;

    }

    .faq-hero p{

        margin-left:auto;

        margin-right:auto;

    }

    .faq-search{

        max-width:700px;

        margin:0 auto 30px;

    }

    .faq-tags{

        justify-content:center;

    }

    .faq-hero__cards{

        flex-direction:row;

        justify-content:center;

        flex-wrap:wrap;

    }

}

@media (max-width:768px){

    .faq-hero{

        padding:70px 0;

    }

    .faq-hero h1{

        font-size:38px;

    }

    .faq-question{

        padding:20px;

        font-size:17px;

    }

    .faq-answer p{

        padding:0 20px 24px;

    }

    .faq-search{

        padding:16px 18px;

    }

    .hero-card{

        width:100%;

    }

    .faq-cta__card{

        padding:45px 28px;

    }

    .faq-cta__card h2{

        font-size:32px;

    }

}

@media (max-width:480px){

    .faq-hero h1{

        font-size:30px;

    }

    .faq-tag{

        width:100%;

        justify-content:center;

    }

    .faq-question{

        font-size:16px;

    }

    .faq-icon{

        width:34px;

        height:34px;

        font-size:18px;
        transition: .3s;

    }

    .faq-cta__buttons{

        flex-direction:column;

    }

    .faq-cta__buttons .button{

        width:100%;

    }

}

/* ==========================================================
   FAQ.CSS
   PART 4D
   Final Polish
==========================================================*/

/* ==========================================
   Accessibility
========================================== */

.faq-question:focus-visible,
.faq-tag:focus-visible,
.faq-search input:focus-visible,
.button:focus-visible{

    outline:3px solid rgba(17,183,124,.35);

    outline-offset:4px;

}

/* ==========================================
   Selection
========================================== */

::selection{

    background:rgba(17,183,124,.20);

    color:var(--faq-primary);

}

/* ==========================================
   Smooth Scrolling
========================================== */

html{

    scroll-behavior:smooth;

}

/* ==========================================
   Custom Scrollbar
========================================== */

::-webkit-scrollbar{

    width:10px;

}

::-webkit-scrollbar-track{

    background:#EEF2F7;

}

::-webkit-scrollbar-thumb{

    background:linear-gradient(
        var(--faq-primary),
        var(--faq-secondary)
    );

    border-radius:20px;

}

::-webkit-scrollbar-thumb:hover{

    background:var(--faq-secondary);

}

/* Firefox */

*{

    scrollbar-width:thin;

    scrollbar-color:var(--faq-secondary) #EEF2F7;

}

/* ==========================================
   Utility
========================================== */

.hidden{

    display:none !important;

}

.text-center{

    text-align:center;

}

.mt-2{

    margin-top:20px;

}

.mt-3{

    margin-top:30px;

}

.mb-2{

    margin-bottom:20px;

}

.mb-3{

    margin-bottom:30px;

}

/* ==========================================
   Better Accordion Animation
========================================== */

.faq-answer{

    opacity:0;

    transition:
        max-height .45s ease,
        opacity .35s ease;

}

.faq-item.active .faq-answer{

    opacity:1;

}

/* ==========================================
   Hero Decorative Glow
========================================== */

.faq-hero::before{

    content:"";

    position:absolute;

    inset:0;

    background:
        radial-gradient(
            circle at top left,
            rgba(255,255,255,.12),
            transparent 45%
        ),
        radial-gradient(
            circle at bottom right,
            rgba(17,183,124,.18),
            transparent 40%
        );

    pointer-events:none;

}

/* ==========================================
   Card Hover Glow
========================================== */

.faq-item::after{

    content:"";

    position:absolute;

    inset:0;

    border-radius:inherit;

    pointer-events:none;

    opacity:0;

    transition:.35s;

    box-shadow:
        inset 0 0 0 1px rgba(17,183,124,.12);

}

.faq-item:hover::after{

    opacity:1;

}

/* ==========================================
   Print Styles
========================================== */

@media print{

    .header,
    .footer,
    .faq-search,
    .faq-tags,
    .faq-cta{

        display:none !important;

    }

    .faq-item{

        page-break-inside:avoid;

        box-shadow:none;

        border:1px solid #ddd;

    }

    .faq-answer{

        max-height:none !important;

        opacity:1 !important;

        display:block;

    }

}

/* ==========================================
   Reduced Motion
========================================== */

@media (prefers-reduced-motion:reduce){

    *{

        animation:none !important;

        transition:none !important;

        scroll-behavior:auto !important;

    }

}

/* ==========================================
   End of File
========================================== */