/* FundrayzerGlobal Bank — policy pages shared CSS */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
:root{
  --primary:#0a2e6e;--primary-light:#1a55c8;--accent:#f5a623;
  --text:#1a1e2e;--text-muted:#5a6480;--border:#d4daea;
  --off-white:#f4f7fc;--white:#ffffff;--font:'Poppins',sans-serif;
}
html{scroll-behavior:smooth;}
body{font-family:var(--font);background:var(--off-white);color:var(--text);line-height:1.75;}

/* ── Top bar ── */
.policy-topbar{background:var(--primary);padding:1rem 2rem;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100;box-shadow:0 2px 12px rgba(0,0,0,0.15);}
.policy-logo{display:flex;align-items:center;gap:0.6rem;text-decoration:none;}
.policy-logo-mark{width:36px;height:36px;background:linear-gradient(135deg,var(--primary-light),#1a7fd4);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0;}
.policy-logo-name{font-size:1rem;font-weight:700;color:#fff;letter-spacing:-0.01em;}
.policy-logo-name span{color:var(--accent);}
.policy-back{color:rgba(255,255,255,0.75);font-size:0.82rem;font-weight:600;text-decoration:none;display:flex;align-items:center;gap:0.35rem;transition:color 0.2s;}
.policy-back:hover{color:#fff;}

/* ── Hero ── */
.policy-hero{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-light) 100%);padding:3.5rem 2rem 3rem;text-align:center;}
.policy-badge{display:inline-block;font-size:0.68rem;font-weight:700;letter-spacing:0.15em;text-transform:uppercase;color:rgba(255,255,255,0.7);background:rgba(255,255,255,0.12);border:1px solid rgba(255,255,255,0.2);padding:0.25rem 0.85rem;border-radius:20px;margin-bottom:1rem;}
.policy-hero h1{font-size:clamp(1.5rem,4vw,2.2rem);font-weight:700;color:#fff;margin-bottom:0.5rem;}
.policy-hero p{font-size:0.9rem;color:rgba(255,255,255,0.72);max-width:520px;margin:0 auto;}
.policy-meta{font-size:0.78rem;color:rgba(255,255,255,0.5);margin-top:1rem;}

/* ── Layout ── */
.policy-wrap{max-width:820px;margin:0 auto;padding:3rem 2rem 5rem;}

/* ── TOC ── */
.toc{background:var(--white);border:1px solid var(--border);border-radius:12px;padding:1.5rem 1.8rem;margin-bottom:2.5rem;box-shadow:0 2px 12px rgba(10,46,110,0.06);}
.toc h3{font-size:0.82rem;font-weight:700;text-transform:uppercase;letter-spacing:0.12em;color:var(--text-muted);margin-bottom:0.9rem;}
.toc ol{padding-left:1.2rem;}
.toc li{margin-bottom:0.4rem;}
.toc a{font-size:0.87rem;color:var(--primary-light);text-decoration:none;font-weight:500;transition:color 0.2s;}
.toc a:hover{color:var(--accent);text-decoration:underline;}

/* ── Sections ── */
.policy-section{margin-bottom:2.8rem;scroll-margin-top:4rem;}
.policy-section h2{font-size:1.15rem;font-weight:700;color:var(--primary);margin-bottom:1rem;padding-bottom:0.6rem;border-bottom:2px solid var(--border);display:flex;align-items:center;gap:0.6rem;}
.policy-section h2 .sec-num{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:var(--primary);color:#fff;border-radius:50%;font-size:0.75rem;font-weight:700;flex-shrink:0;}
.policy-section h3{font-size:0.97rem;font-weight:700;color:var(--text);margin:1.4rem 0 0.55rem;}
.policy-section p{font-size:0.88rem;color:var(--text-muted);margin-bottom:0.9rem;line-height:1.8;}
.policy-section ul,.policy-section ol{padding-left:1.4rem;margin-bottom:0.9rem;}
.policy-section li{font-size:0.87rem;color:var(--text-muted);margin-bottom:0.45rem;line-height:1.75;}
.policy-section strong{color:var(--text);font-weight:600;}

/* ── Callout boxes ── */
.callout{border-radius:10px;padding:1rem 1.2rem;margin:1.2rem 0;font-size:0.86rem;line-height:1.7;display:flex;gap:0.75rem;align-items:flex-start;}
.callout-icon{font-size:1.1rem;flex-shrink:0;margin-top:1px;}
.callout-body{flex:1;}
.callout-info   {background:rgba(26,85,200,0.06);border:1px solid rgba(26,85,200,0.18);color:var(--primary);}
.callout-warning{background:#fff8e6;border:1px solid rgba(184,122,10,0.25);color:#7a5200;}
.callout-success{background:#edfaf3;border:1px solid rgba(26,122,69,0.25);color:#1a7a45;}

/* ── Contact card ── */
.contact-card{background:var(--white);border:1px solid var(--border);border-radius:12px;padding:1.5rem;margin-top:2rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;}
.contact-item{display:flex;flex-direction:column;gap:0.2rem;}
.contact-label{font-size:0.72rem;font-weight:700;text-transform:uppercase;letter-spacing:0.1em;color:var(--text-muted);}
.contact-value{font-size:0.87rem;font-weight:600;color:var(--primary);}
.contact-value a{color:var(--primary-light);text-decoration:none;}
.contact-value a:hover{text-decoration:underline;}

/* ── Footer ── */
.policy-footer{background:var(--primary);color:rgba(255,255,255,0.55);text-align:center;padding:1.5rem;font-size:0.78rem;}
.policy-footer a{color:rgba(255,255,255,0.75);text-decoration:underline;margin:0 0.4rem;}
.policy-footer a:hover{color:#fff;}

/* ── Responsive ── */
@media(max-width:600px){
  .policy-wrap{padding:2rem 1.2rem 4rem;}
  .policy-topbar{padding:0.9rem 1.2rem;}
  .policy-hero{padding:2.5rem 1.2rem 2rem;}
  .toc{padding:1.2rem;}
  .policy-section h2{font-size:1rem;}
}
