/* ============================================= */
/* == PREMIUM LEGAL PAGES (PRIVACY, DISCLAIMER) == */
/* ============================================= */

/* ---------- HERO SECTION ---------- */

.legal-hero {
    margin-top: 70px;
    padding: 110px 20px 90px;
    background: linear-gradient(135deg,#f0f9ff 0%,#ecfdf5 100%);
    text-align: center;
    border-bottom: 1px solid #e5e7eb;
}

.legal-hero .hero-icon{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    width:70px;
    height:70px;

    border-radius:50%;

    background:#ffffff;
    color:#10b981;

    font-size:1.9rem;

    margin-bottom:22px;

    box-shadow:
    0 8px 20px rgba(0,0,0,.08),
    0 2px 6px rgba(0,0,0,.05);
}

.legal-hero h1{
    font-family:'Poppins',sans-serif;
    font-size:2.9rem;
    font-weight:700;
    color:#111827;
    margin-bottom:12px;
}

.legal-hero p{
    font-size:1.05rem;
    color:#4b5563;
    max-width:620px;
    margin:auto;
    line-height:1.7;
}

.last-updated{
    display:block;
    margin-top:18px;
    font-size:.9rem;
    color:#6b7280;
}


/* ---------- CONTENT AREA ---------- */

.legal-content-section{
    padding:90px 20px;
    background:#f8fafc;
}


/* ---------- LEGAL CARD ---------- */

.legal-card{

    background:#ffffff;

    max-width:900px;
    margin:0 auto 30px;

    padding:45px;

    border-radius:18px;

    border:1px solid #eef0f3;

    box-shadow:
    0 12px 35px rgba(0,0,0,.05);

    position:relative;

}


/* Decorative left border */

.legal-card::before{
    content:'';
    position:absolute;
    top:0;
    left:0;
    width:6px;
    height:100%;
    background:linear-gradient(
        180deg,
        var(--color-primary),
        #38bdf8
    );
    border-radius:6px 0 0 6px;
}


/* ---------- TYPOGRAPHY ---------- */

.legal-card h2{
    font-family:'Poppins',sans-serif;
    font-size:1.7rem;
    font-weight:700;
    color:#111827;
    margin-bottom:18px;
}

.legal-card h3{
    font-size:1.15rem;
    font-weight:600;
    color:#1f2937;
    margin-top:26px;
    margin-bottom:12px;
}

.legal-card p{
    font-size:.98rem;
    line-height:1.8;
    color:#4b5563;
    margin-bottom:14px;
}

.legal-card li{
    font-size:.97rem;
    line-height:1.8;
    color:#4b5563;
    margin-bottom:8px;
}


/* ---------- LIST STYLE ---------- */

.legal-card ul{
    list-style:none;
    padding-left:0;
    margin-top:10px;
}

.legal-card ul li{
    position:relative;
    padding-left:22px;
}

.legal-card ul li::before{
    content:"✓";
    position:absolute;
    left:0;
    color:#10b981;
    font-weight:600;
}


/* ---------- LINKS ---------- */

.legal-card a{
    color:var(--color-primary);
    font-weight:600;
    text-decoration:none;
}

.legal-card a:hover{
    text-decoration:underline;
}


/* ---------- CONTACT CARD ---------- */

.contact-card{
    background:#ecfdf5;
    text-align:center;
}

.contact-card::before{
    display:none;
}

.contact-links{
    margin-top:18px;

    display:flex;
    flex-direction:column;
    align-items:center;
    gap:12px;
}

.contact-links a{
    display:inline-flex;
    align-items:center;
    gap:8px;

    padding:8px 14px;

    border-radius:6px;

    font-weight:600;
    color:#111827;
}

.contact-links a:hover{
    background:#ffffff;
}

.contact-links i{
    color:var(--color-primary);
}


/* ---------- MOBILE ---------- */

@media (max-width:768px){

    .legal-hero{
        margin-top:65px;
        padding:80px 20px 70px;
    }

    .legal-hero h1{
        font-size:2.1rem;
    }

    .legal-content-section{
        padding:60px 20px;
    }

    .legal-card{
        padding:30px 25px;
    }

    .legal-card h2{
        font-size:1.45rem;
    }

}


/* ============================================= */
/* NOTICE CARDS (DISCLAIMER SPECIAL BLOCKS) */
/* ============================================= */

.notice-card{
display:flex;
gap:20px;
align-items:flex-start;
}

/* icon area */

.notice-icon{

flex-shrink:0;

width:50px;
height:50px;

display:flex;
align-items:center;
justify-content:center;

border-radius:12px;

font-size:1.4rem;

}

/* text area */

.notice-content{
flex:1;
}


/* ============================================= */
/* NOTICE COLORS */
/* ============================================= */

.notice-warning .notice-icon{
background:#fff3cd;
color:#856404;
}

.notice-danger .notice-icon{
background:#f8d7da;
color:#721c24;
}

.notice-success .notice-icon{
background:#d1fae5;
color:#065f46;
}

.notice-info .notice-icon{
background:#e0f2fe;
color:#075985;
}


/* ============================================= */
/* NOTICE BOXES (INNER ALERTS) */
/* ============================================= */

.notice-box{

margin-top:18px;

padding:14px 16px;

border-radius:10px;

font-size:0.95rem;

line-height:1.6;

border:1px solid transparent;

}

.notice-box strong{
display:block;
margin-bottom:5px;
}


/* warning */

.notice-warning .notice-box{
background:#fff3cd;
border-color:#ffeeba;
}

/* danger */

.notice-danger .notice-box{
background:#f8d7da;
border-color:#f5c6cb;
}

/* success */

.notice-success .notice-box{
background:#d1fae5;
border-color:#a7f3d0;
}

/* info */

.notice-info .notice-box{
background:#e0f2fe;
border-color:#bae6fd;
}


/* ============================================= */
/* MOBILE FIX */
/* ============================================= */

@media (max-width:768px){

.notice-card{
flex-direction:column;
align-items:flex-start;
}

.notice-icon{
margin-bottom:10px;
}

}