:root{
    --pp-navy:#0d1b4c;
    --pp-navy-deep:#091438;
    --pp-blue:#2451c9;
    --pp-gold:#d8a13a;
    --pp-bg:#f5f7fc;
    --pp-ink:#1c2540;
    --pp-muted:#5b6478;
    --pp-card:#ffffff;
    --pp-line:#e8eaf3;
    --pp-tint-pad:14%;
 
    --pp-c01:#2f7d4f;
    --pp-c02:#3a4fc9;
    --pp-c03:#0e9488;
    --pp-c04:#7a3fb0;
    --pp-c05:#1f9d55;
    --pp-c06:#e0801c;
    --pp-c07:#d6336c;
    --pp-c08:#0e9488;
    --pp-c09:#3a4fc9;
    --pp-c10:#e0801c;
    --pp-c11:#7a3fb0;
    --pp-c12:#3a4fc9;
}
 
.pp-policy{
    color:var(--pp-ink);
    font-family:'Inter',system-ui,-apple-system,sans-serif;
    -webkit-font-smoothing:antialiased;
}
.pp-policy *{box-sizing:border-box;}
.pp-policy img, .pp-policy svg{display:block;}
.pp-policy ul{margin:0;padding:0;list-style:none;}
 
.pp-wrap{max-width:1320px;margin:0 auto;padding:0 40px;}
 
/* ===== HERO / BANNER ===== */
.pp-hero{position:relative;overflow:hidden;padding-top:10px;margin-top: 180px;}
.pp-hero-inner{
    position:relative;z-index:1;
    display:grid;grid-template-columns:1.05fr 0.95fr;
    align-items:center;gap:48px;
    padding:64px 0 50px;
}
.pp-hero-left h1{
    font-family:'Playfair Display',serif;
    font-weight:800;
    font-size:clamp(2.1rem,4.6vw,3.1rem);
    letter-spacing:0.5px;
    margin:0 0 14px;
    color:var(--pp-ink);
}
.pp-hero-left h1 span{color:var(--pp-blue);}
 
.pp-divider{
    display:flex;align-items:center;gap:8px;margin-bottom:22px;
}
.pp-divider .pp-bar{width:100px;height:3px;background:var(--pp-gold);border-radius:2px;}
.pp-divider .pp-dot{width:7px;height:7px;border-radius:50%;background:var(--pp-gold);}
 
.pp-eff-date{
    display:flex;align-items:center;gap:10px;
    font-size:0.97rem;margin:0 0 18px;color:var(--pp-ink);
}
.pp-eff-date .pp-ic-circle{
    width:30px;height:30px;border-radius:50%;background:rgba(36,81,201,0.1);
    display:flex;align-items:center;justify-content:center;flex-shrink:0;
}
.pp-eff-date .pp-ic-circle svg{width:16px;height:16px;stroke:var(--pp-blue);fill:none;stroke-width:2;}
.pp-eff-date b{color:var(--pp-blue);font-weight:700;}
.pp-eff-date .pp-date-val{color:var(--pp-ink);font-weight:600;}
 
.pp-intro{
    font-size:0.98rem;line-height:1.7;color:var(--pp-muted);
    max-width:520px;margin:0 0 26px;
}
.pp-intro strong{color:var(--pp-ink);}
 
.pp-agree-box{
    display:flex;align-items:center;gap:14px;
    background:linear-gradient(135deg,var(--pp-navy),var(--pp-navy-deep));
    color:#fff;border-radius:12px;padding:18px 22px;
    box-shadow:0 12px 26px rgba(13,27,76,0.25);
    max-width:480px;
}
.pp-agree-box .pp-badge{
    width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,0.14);
    display:flex;align-items:center;justify-content:center;flex-shrink:0;
}
.pp-agree-box .pp-badge svg{width:18px;height:18px;stroke:#fff;fill:none;stroke-width:2;}
.pp-agree-box p{margin:0;font-size:0.93rem;font-weight:600;line-height:1.5;}
 
.pp-hero-right{display:flex;justify-content:center;align-items:center;}
.pp-hero-right img{width:100%;max-width:380px;height:auto;}
 
/* ===== SECTIONS ===== */
.pp-main{padding:10px 0 50px;}
.pp-panel{
    background:var(--pp-card);
    border:1px solid var(--pp-line);
    border-radius:18px;
    box-shadow:0 10px 30px rgba(13,27,76,0.05);
    margin-bottom:26px;
    overflow:hidden;
}
.pp-row{
    display:grid;grid-template-columns:1fr 1fr;
}
.pp-row + .pp-row{border-top:1px solid var(--pp-line);}
.pp-cell{
    padding:30px 34px;
    display:flex;gap:18px;
}
.pp-cell + .pp-cell{border-left:1px solid var(--pp-line);}
 
.pp-icon-circle{
    width:54px;height:54px;border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    flex-shrink:0;
}
.pp-icon-circle svg{width:24px;height:24px;stroke-width:1.8;fill:none;}
 
.pp-content h3{
    margin:0 0 10px;font-size:1.05rem;font-weight:700;color:var(--pp-ink);
    display:flex;align-items:center;gap:10px;
}
.pp-num{
    display:inline-flex;align-items:center;justify-content:center;
    width:26px;height:26px;border-radius:7px;color:#fff;
    font-size:0.76rem;font-weight:800;flex-shrink:0;
}
.pp-content .pp-sub{
    font-weight:700;font-size:0.86rem;margin:14px 0 6px;
}
.pp-content .pp-sub:first-of-type{margin-top:2px;}
.pp-content p{margin:0 0 10px;font-size:0.9rem;line-height:1.65;color:var(--pp-muted);}
.pp-content p:last-child{margin-bottom:0;}
.pp-content ul{margin-bottom:10px;}
.pp-content ul:last-child{margin-bottom:0;}
.pp-content ul li{
    font-size:0.9rem;line-height:1.7;color:var(--pp-muted);
}
.pp-content a{color:var(--pp-blue);text-decoration:none;font-weight:600;}
.pp-content a:hover{text-decoration:underline;}
 
.pp-contact-box{
    background:#eef1fb;border-radius:10px;padding:16px 18px;margin-top:6px;
    font-size:0.9rem;color:var(--pp-ink);
}
.pp-contact-box div{display:flex;align-items:center;gap:9px;margin-bottom:7px;}
.pp-contact-box div:last-child{margin-bottom:0;}
.pp-contact-box svg{width:15px;height:15px;stroke:var(--pp-blue);fill:none;stroke-width:2;flex-shrink:0;}
 
/* ===== FOOTER STRIP ===== */
.pp-footer-strip{
    background:#eaeefb;border-radius:18px;
    padding:34px 30px;
    display:grid;grid-template-columns:repeat(4,1fr);gap:24px;
}
.pp-foot-item{display:flex;align-items:flex-start;gap:12px;}
.pp-foot-ic{
    width:42px;height:42px;border-radius:50%;background:var(--pp-navy);
    display:flex;align-items:center;justify-content:center;flex-shrink:0;
}
.pp-foot-ic svg{width:19px;height:19px;stroke:#fff;fill:none;stroke-width:2;}
.pp-foot-item h4{margin:0 0 4px;font-size:0.9rem;font-weight:700;color:var(--pp-ink);}
.pp-foot-item p{margin:0;font-size:0.8rem;line-height:1.5;color:var(--pp-muted);}
 
/* focus visibility for accessibility */
.pp-policy a:focus-visible{outline:2px solid var(--pp-blue);outline-offset:2px;border-radius:3px;}
 
/* =====================================================
   RESPONSIVE BREAKPOINTS
   Mobile Small   : 320px  – 480px
   Mobile Large   : 481px  – 767px
   Tablet         : 768px  – 991px
   Small Laptop   : 992px  – 1199px
   Desktop        : 1200px – 1439px
   Large Desktop  : 1440px and above (default styles above need no override)
   ===================================================== */
 
/* ---------- Desktop : max-width 1439px ---------- */
@media (max-width:1439px){
    .pp-wrap{padding:0 32px;}
     .pp-hero{margin-top: 150px;}
}
 
/* ---------- Small Laptop : max-width 1199px ---------- */
@media (max-width:1199px){
    .pp-hero-right img{max-width:340px;}
     .pp-hero{margin-top: 150px;}
}
 
/* ---------- Tablet : max-width 991px ---------- */
@media (max-width:991px){
    .pp-wrap{padding:0 24px;}
    .pp-hero-inner{grid-template-columns:1fr;gap:32px;padding:48px 0 40px;text-align:left;}
    .pp-hero-right{order:-1;}
    .pp-hero-right img{max-width:300px;}
    .pp-intro{max-width:none;}
    .pp-agree-box{max-width:none;}
    .pp-footer-strip{grid-template-columns:repeat(2,1fr);}
     .pp-hero{margin-top: 90px;}
}
 
/* ---------- Mobile Large : max-width 767px ---------- */
@media (max-width:767px){
    .pp-row{grid-template-columns:1fr;}
    .pp-cell + .pp-cell{border-left:none;border-top:1px solid var(--pp-line);}
    .pp-cell{padding:26px 24px;}
    .pp-hero-left h1{font-size:2rem;}
    .pp-agree-box{flex-direction:row;align-items:flex-start;}
     .pp-hero{margin-top: 90px;}
}
 
/* ---------- Mobile Small : max-width 480px ---------- */
@media (max-width:480px){
    .pp-wrap{padding:0 18px;}
    .pp-footer-strip{grid-template-columns:1fr;padding:26px 22px;}
    .pp-agree-box{padding:16px 18px;}
    .pp-hero-inner{padding:40px 0 32px;}
    .pp-cell{flex-direction:column;}
    .pp-icon-circle{margin-bottom:4px;}
    .pp-hero{margin-top: 90px;}
}