/* ==========================================================================
   PUBLIC SITE — GOVT PORTAL OVERRIDE  v1.0
   Loads after each page's inline styles / services.css and re-themes the
   public website to the official navy–saffron–green identity.
   Pure presentation: no layout mechanics are altered.
   ========================================================================== */

/* ---- 1. Identity tokens (override page variables) ------------------------ */
:root{
  --primary-color:  #14355F !important;
  --primary-dark:   #0C2545 !important;
  --primary-light:  #2E5A96 !important;
  --secondary-color:#E8760E !important;
  --accent-color:   #C96A15 !important;
  --success-color:  #1B7A3D !important;
  --warning-color:  #E8760E !important;
  --error-color:    #B02A30 !important;
  --text-color:     #1C2B3A !important;
  --text-light:     #45566B !important;
  --text-muted:     #6B7C92 !important;
  --background-color:#F4F6FA !important;

  --gpp-navy:#14355F; --gpp-deep:#0C2545; --gpp-saffron:#E8760E;
  --gpp-green:#1B7A3D; --gpp-border:#D9E0EC; --gpp-soft:#EFF3F9;
}

/* ---- 2. Signature tricolor strip over the fixed header -------------------- */
body::after{
  content:""; position:fixed; top:0; left:0; right:0; height:4px; z-index:2000;
  background:linear-gradient(90deg,#F0862B 0 33.4%,#FFFFFF 33.4% 66.7%,#1B7A3D 66.7% 100%);
  pointer-events:none;
}

/* ---- 3. Global texture ----------------------------------------------------- */
body{ background:var(--background-color); }
::selection{ background:rgba(232,118,14,.28); }
:focus-visible{ outline:2px solid var(--gpp-saffron); outline-offset:2px; }

/* ---- 4. Header / navigation ------------------------------------------------ */
header, #header, #site-header{
  background:rgba(255,255,255,.97) !important;
  border-bottom:1px solid var(--gpp-border);
  box-shadow:0 2px 12px rgba(12,37,69,.08) !important;
}
.logo span{ color:var(--gpp-deep) !important; font-weight:800; }
.logo .highlight{ color:var(--gpp-saffron) !important; }
.nav-links li a{ color:#33465C !important; font-weight:600; }
.nav-links li a:hover, .nav-links li a.active{ color:var(--gpp-navy) !important; }
.nav-links li a::after, .nav-links li a.active::after{ background:var(--gpp-saffron) !important; }
.nav-dropdown-menu{ border:1px solid var(--gpp-border); box-shadow:0 14px 34px rgba(12,37,69,.16) !important; border-radius:12px; overflow:hidden; }
.nav-dropdown-menu a:hover{ background:var(--gpp-soft) !important; color:var(--gpp-navy) !important; }
.nav-dropdown-menu a i{ color:var(--gpp-saffron) !important; }

/* ---- 5. Hero -------------------------------------------------------------- */
.hero-section{
  background:
    radial-gradient(1000px 460px at 90% -10%, rgba(232,118,14,.09), transparent 55%),
    radial-gradient(900px 480px at -10% 115%, rgba(27,122,61,.09), transparent 55%),
    linear-gradient(180deg,#FDFEFF 0%, #F1F5FB 100%) !important;
}
.hero-content h1{ color:var(--gpp-deep) !important; }
.hero-content .highlight{
  color:var(--gpp-saffron) !important;
  background:none !important; -webkit-text-fill-color:currentColor;
}
.hero-content p{ color:#45566B !important; }
.trust-item{ border:1px solid var(--gpp-border); background:#fff; }
.trust-item i{ color:var(--gpp-green) !important; }

/* ---- 6. Buttons ------------------------------------------------------------ */
.primary-btn, .btn.primary-btn, .large-btn.primary-btn{
  background:var(--gpp-navy) !important;
  box-shadow:0 6px 16px rgba(12,37,69,.22) !important;
  border:none !important; color:#fff !important;
}
.primary-btn:hover{ background:#1B4478 !important; box-shadow:0 10px 22px rgba(12,37,69,.28) !important; }
.secondary-btn{
  background:#fff !important; color:var(--gpp-navy) !important;
  border:2px solid var(--gpp-navy) !important; box-shadow:none !important;
}
.secondary-btn:hover{ background:var(--gpp-navy) !important; color:#fff !important; }

/* ---- 7. Section headings --------------------------------------------------- */
.section-title{ color:var(--gpp-deep) !important; }
.section-title .highlight{ color:var(--gpp-saffron) !important; }
.section-title::after{
  background:linear-gradient(90deg,var(--gpp-saffron),var(--gpp-green)) !important;
  height:4px !important; border-radius:4px;
}
.section-subtitle{ color:#5B6C82 !important; }

/* ---- 8. Cards: services / process / stats ---------------------------------- */
.svc-card, .card, .process-step, .stat-item, .news-card, .policy-block, .toc-box{
  border:1px solid var(--gpp-border) !important;
  border-radius:12px !important;
  box-shadow:0 2px 8px rgba(16,35,60,.06) !important;
  transition:transform .2s cubic-bezier(.4,0,.2,1), box-shadow .2s cubic-bezier(.4,0,.2,1) !important;
}
.svc-card:hover, .process-step:hover, .stat-item:hover, .news-card:hover{
  transform:translateY(-5px);
  box-shadow:0 14px 30px rgba(12,37,69,.14) !important;
  border-color:#C4D0E2 !important;
}
.svc-icon, .step-icon{
  background:rgba(20,53,95,.08) !important;
  color:var(--gpp-navy) !important;
}
.step-number, .process-step-num{
  background:var(--gpp-saffron) !important; color:#fff !important;
}
.stat-number{ color:var(--gpp-navy) !important; }
.stat-label{ color:#5B6C82 !important; }

/* ---- 9. Policy / legal pages ---------------------------------------------- */
.policy-block-num, .toc-num{ background:var(--gpp-navy) !important; color:#fff !important; }
.policy-block-icon{ color:var(--gpp-saffron) !important; }
.policy-list .fa-dot-circle, .policy-list i{ color:var(--gpp-green) !important; }

/* ---- 10. Contact & forms ---------------------------------------------------- */
.contact-info h3::after{ background:var(--gpp-saffron) !important; }
.contact-info i{ color:var(--gpp-saffron) !important; }
.form-group input:focus, .form-group select:focus, .form-group textarea:focus{
  border-color:var(--gpp-navy) !important;
  box-shadow:0 0 0 3px rgba(20,53,95,.15) !important;
}
.social-icon{ background:rgba(20,53,95,.08) !important; color:var(--gpp-navy) !important; }
.social-icon:hover{ background:var(--gpp-navy) !important; color:#fff !important; }

/* ---- 11. Footer ------------------------------------------------------------- */
.footer{ background:var(--gpp-deep) !important; }
.footer::before{ background:linear-gradient(90deg,var(--gpp-saffron),#fff,var(--gpp-green)) !important; height:4px !important; }
.footer-column h3::after{ background:var(--gpp-saffron) !important; }
.footer-links a:hover{ color:#F5B87B !important; }
.footer-logo .highlight{ color:var(--gpp-saffron) !important; }
.footer-social .social-icon{ background:rgba(255,255,255,.1) !important; color:#fff !important; }
.footer-social .social-icon:hover{ background:var(--gpp-saffron) !important; }
.footer-bottom-links a:hover{ color:#F5B87B !important; }

/* WhatsApp stays brand-green */
.floating-whatsapp, .footer-whatsapp{ background:#25d366 !important; }
.floating-whatsapp:hover{ background:#1EBE5B !important; }

#back-to-top{ background:var(--gpp-navy) !important; }
#back-to-top:hover{ background:var(--gpp-saffron) !important; }

/* ---- 12. Services sub-site (services/*.php) --------------------------------- */
.page-hero, .service-hero{
  background:linear-gradient(140deg,var(--gpp-navy) 0%,var(--gpp-deep) 90%) !important;
}
.breadcrumb a{ color:#F5B87B !important; }
.pricing-badge, .price-tag{ background:var(--gpp-saffron) !important; color:#fff !important; }
.feature-list i, .check-list i{ color:var(--gpp-green) !important; }
.cta-section{ background:linear-gradient(140deg,var(--gpp-navy),var(--gpp-deep)) !important; }

/* ---- 13. Motion & accessibility -------------------------------------------- */
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{ animation-duration:.01ms !important; transition-duration:.01ms !important; }
}
@media print{ body::after{ display:none !important; } }
