/* =========================================================
   PR INFOTECH SOLUTIONS — PRIVACY POLICY PAGE
   Premium page-specific design.
   Header, navigation and footer continue to use style.css.
   ========================================================= */

:root{
    --legal-primary:#0057d9;
    --legal-primary-dark:#003f9e;
    --legal-accent:#ff6b00;
    --legal-ink:#142033;
    --legal-text:#556070;
    --legal-muted:#7b8493;
    --legal-line:#e5ebf3;
    --legal-soft:#f4f8fd;
    --legal-white:#ffffff;
    --legal-shadow:0 18px 50px rgba(15,35,65,.09);
}

html{
    scroll-behavior:smooth;
}

body.privacy-page{
    background:#f6f8fc;
    color:var(--legal-ink);
}

/* Keep desktop hamburger hidden */
body.privacy-page .menu-toggle{
    display:none;
}

/* =========================
   HERO
   ========================= */

.legal-hero{
    position:relative;
    overflow:hidden;
    padding:82px 0 76px;
    color:#fff;
    background:
        radial-gradient(circle at 82% 18%,rgba(255,255,255,.16),transparent 26%),
        radial-gradient(circle at 12% 88%,rgba(255,107,0,.24),transparent 24%),
        linear-gradient(135deg,#003d99 0%,#0057d9 52%,#0a78ef 100%);
}

.legal-hero::before,
.legal-hero::after{
    content:"";
    position:absolute;
    border-radius:50%;
    pointer-events:none;
}

.legal-hero::before{
    width:260px;
    height:260px;
    right:-90px;
    top:-110px;
    border:1px solid rgba(255,255,255,.18);
}

.legal-hero::after{
    width:170px;
    height:170px;
    right:90px;
    bottom:-110px;
    border:30px solid rgba(255,255,255,.06);
}

.legal-hero .container{
    position:relative;
    z-index:2;
}

.legal-kicker{
    display:inline-flex;
    align-items:center;
    gap:10px;
    margin-bottom:18px;
    padding:9px 15px;
    border:1px solid rgba(255,255,255,.24);
    border-radius:999px;
    background:rgba(255,255,255,.11);
    backdrop-filter:blur(8px);
    font-size:14px;
    font-weight:700;
    letter-spacing:.02em;
}

.legal-hero h1{
    max-width:850px;
    margin:0 0 18px;
    color:#fff;
    font-family:"Poppins",sans-serif;
    font-size:clamp(38px,5vw,62px);
    line-height:1.08;
    letter-spacing:-.025em;
}

.legal-hero > .container > p{
    max-width:920px;
    margin:0;
    color:rgba(255,255,255,.88);
    font-size:18px;
    line-height:1.8;
}

.legal-meta{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
    margin-top:28px;
}

.legal-meta span{
    display:inline-flex;
    align-items:center;
    gap:9px;
    padding:11px 15px;
    border:1px solid rgba(255,255,255,.19);
    border-radius:10px;
    background:rgba(255,255,255,.1);
    color:#fff;
    font-size:14px;
    font-weight:600;
}

/* =========================
   MAIN LAYOUT
   ========================= */

.legal-content-section{
    position:relative;
    padding:72px 0 90px;
}

.legal-layout{
    display:grid;
    grid-template-columns:290px minmax(0,1fr);
    gap:34px;
    align-items:start;
}

.legal-sidebar{
    position:sticky;
    top:24px;
}

.sidebar-card{
    overflow:hidden;
    border:1px solid var(--legal-line);
    border-radius:18px;
    background:#fff;
    box-shadow:0 14px 38px rgba(15,35,65,.07);
}

.sidebar-card h2{
    margin:0;
    padding:22px 22px 18px;
    border-bottom:1px solid var(--legal-line);
    color:var(--legal-ink);
    font-family:"Poppins",sans-serif;
    font-size:20px;
}

.sidebar-card nav{
    max-height:66vh;
    padding:12px;
    overflow:auto;
    scrollbar-width:thin;
}

.sidebar-card nav a{
    display:flex;
    align-items:center;
    min-height:42px;
    margin:2px 0;
    padding:10px 12px;
    border-radius:10px;
    color:#556070;
    font-size:14px;
    font-weight:600;
    line-height:1.35;
    text-decoration:none;
    transition:background .22s ease,color .22s ease,transform .22s ease;
}

.sidebar-card nav a:hover,
.sidebar-card nav a.active{
    color:var(--legal-primary);
    background:#edf5ff;
    transform:translateX(3px);
}

/* =========================
   ARTICLE
   ========================= */

.legal-article{
    overflow:hidden;
    border:1px solid var(--legal-line);
    border-radius:22px;
    background:#fff;
    box-shadow:var(--legal-shadow);
}

.legal-article > section{
    position:relative;
    padding:38px 42px;
    scroll-margin-top:28px;
}

.legal-article > section + section{
    border-top:1px solid var(--legal-line);
}

.legal-article > section::before{
    content:"";
    position:absolute;
    left:0;
    top:38px;
    width:4px;
    height:46px;
    border-radius:0 5px 5px 0;
    background:linear-gradient(var(--legal-primary),#4da0ff);
    opacity:.92;
}

.section-number{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:42px;
    height:30px;
    margin-bottom:12px;
    padding:0 10px;
    border-radius:8px;
    background:#edf5ff;
    color:var(--legal-primary);
    font-size:13px;
    font-weight:800;
    letter-spacing:.08em;
}

.legal-article h2{
    margin:0 0 16px;
    color:var(--legal-ink);
    font-family:"Poppins",sans-serif;
    font-size:28px;
    line-height:1.25;
}

.legal-article h3{
    color:var(--legal-ink);
    font-family:"Poppins",sans-serif;
}

.legal-article p{
    margin:0 0 14px;
    color:var(--legal-text);
    font-size:16px;
    line-height:1.85;
}

.legal-article ul{
    margin:14px 0 18px;
    padding:0;
    list-style:none;
}

.legal-article li{
    position:relative;
    margin:10px 0;
    padding-left:28px;
    color:var(--legal-text);
    font-size:16px;
    line-height:1.75;
}

.legal-article li::before{
    content:"\f00c";
    position:absolute;
    left:0;
    top:5px;
    color:var(--legal-primary);
    font-family:"Font Awesome 6 Free";
    font-size:13px;
    font-weight:900;
}

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

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

.legal-note{
    display:flex;
    gap:16px;
    margin-top:24px;
    padding:20px 22px;
    border:1px solid #cfe2ff;
    border-left:4px solid var(--legal-primary);
    border-radius:14px;
    background:#f1f7ff;
}

.legal-note i{
    margin-top:4px;
    color:var(--legal-primary);
    font-size:21px;
}

.legal-note p{
    margin:0;
}

/* =========================
   CONTACT CARD
   ========================= */

.contact-policy-card{
    margin-top:22px;
    padding:26px;
    border:1px solid #dfe8f4;
    border-radius:16px;
    background:
        linear-gradient(135deg,#f8fbff,#eef6ff);
}

.contact-policy-card h3{
    margin:0 0 16px;
    font-size:22px;
}

.contact-policy-card p{
    display:flex;
    align-items:flex-start;
    gap:11px;
    margin:10px 0;
}

.contact-policy-card i{
    width:20px;
    margin-top:5px;
    color:var(--legal-primary);
}

/* =========================
   FOOTER SPACING
   ========================= */

body.privacy-page .footer{
    margin-top:0;
}

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

@media(max-width:1050px){
    body.privacy-page .menu-toggle{
        display:inline-flex;
        align-items:center;
        justify-content:center;
    }

    .legal-layout{
        grid-template-columns:1fr;
    }

    .legal-sidebar{
        position:relative;
        top:auto;
    }

    .sidebar-card nav{
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        max-height:none;
    }
}

@media(max-width:760px){
    .legal-hero{
        padding:58px 0 54px;
    }

    .legal-hero > .container > p{
        font-size:16px;
    }

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

    .sidebar-card nav{
        grid-template-columns:1fr;
    }

    .legal-article{
        border-radius:16px;
    }

    .legal-article > section{
        padding:30px 24px;
    }

    .legal-article > section::before{
        top:30px;
    }

    .legal-article h2{
        font-size:24px;
    }

    .legal-meta{
        flex-direction:column;
        align-items:flex-start;
    }
}

@media(max-width:480px){
    .legal-hero h1{
        font-size:36px;
    }

    .legal-article > section{
        padding:26px 19px;
    }

    .legal-note{
        flex-direction:column;
    }
}
