/* ============================================================
   v8-polish.css - CollegesInfo.org sitewide editorial unification
   Loads LAST in <head>. Rethemes legacy purple/blue/white inner
   pages to the v8 ivory/navy/sienna editorial system, tightens
   spacing rhythm, and applies a uniform image treatment.
   Palette: ivory #F9F5EC | warm-white #FCF9F2 | navy #0F1F38
            sienna #A8521C | gold #D8BD8F | teal #0F6E56
   ============================================================ */

:root {
  --pz-ivory:#F9F5EC; --pz-ivory-w:#FCF9F2; --pz-ivory-d:#F2EADC; --pz-ivory-t:#EDE5D2;
  --pz-navy:#0F1F38; --pz-navy-l:#1C3155; --pz-navy-d:#091428;
  --pz-sienna:#A8521C; --pz-sienna-l:#C66839;
  --pz-gold:#D8BD8F; --pz-teal:#0F6E56;
  --pz-warm:#7A6E5E; --pz-txt:#1C1814;
  --pz-bdr:#D9CDB7; --pz-bdr-f:#E8DEC8;
  --pz-serif:'Playfair Display',Georgia,serif;
  --pz-sans:'Inter',-apple-system,sans-serif;
}

/*  1. BASE  */
html { scroll-behavior:smooth; }
body { background:var(--pz-ivory) !important; color:var(--pz-txt); }
::selection { background:var(--pz-navy); color:var(--pz-gold); }
main { min-height:40vh; }

/*  2. GLOBAL IMAGE TREATMENT  */
main img {
  border-radius:2px;
  filter:saturate(.94) sepia(.04);
}
main .fc-bg img, main .jn-img img, main .brand-img img,
main .ci-blog-card img, main .ci-related-card img {
  transition:transform .45s cubic-bezier(.2,.6,.2,1);
}
main .fc-bg:hover img, main .jn-img:hover img,
main .ci-blog-card:hover img, main .ci-related-card:hover img {
  transform:scale(1.04);
}
.fc-bg, .jn-img, .brand-img { overflow:hidden; }

/*  3. NAV / FOOTER MICRO-POLISH  */
.v8-nav { padding:24px 0; }
.v8-nav-links a { position:relative; padding-bottom:3px; letter-spacing:.2px; }
.v8-nav-links a::after {
  content:''; position:absolute; left:0; bottom:0; width:0; height:1px;
  background:var(--pz-sienna); transition:width .25s;
}
.v8-nav-links a:hover::after { width:100%; }
.v8-foot { padding:88px 0 40px; }
.v8-foot-grid { padding-bottom:64px; }

/*  4. INNER-PAGE HEROES -> NAVY EDITORIAL  */
.ci-listing-hero, .ci-blogs-hero, .ci-course-hero, .ci-college-hero,
.ci-exam-hero, .ci-stream-hero {
  background:linear-gradient(150deg,var(--pz-navy-d) 0%,var(--pz-navy) 55%,var(--pz-navy-l) 100%) !important;
  padding:56px 0 !important;
  border-bottom:3px solid var(--pz-gold);
}
.ci-listing-hero::before, .ci-blogs-hero::before, .ci-course-hero::before,
.ci-college-hero::before, .ci-college-hero::after {
  background:radial-gradient(circle,rgba(216,189,143,.10) 0%,transparent 70%) !important;
}
.ci-listing-hero h1, .ci-blogs-hero h1, .ci-course-hero h1, .ci-college-hero h1 {
  font-family:var(--pz-serif) !important; font-weight:500 !important;
  letter-spacing:-.5px; color:#FCF9F2 !important;
}
.ci-blog-hero {
  background:linear-gradient(150deg,var(--pz-ivory-w) 0%,var(--pz-ivory) 60%,var(--pz-ivory-d) 100%) !important;
  border-bottom:1px solid var(--pz-bdr);
  padding:40px 0 44px !important;
}
.ci-blog-hero::before { background:radial-gradient(circle,rgba(168,82,28,.07) 0%,transparent 70%) !important; }
.ci-blog-hero h1 { font-family:var(--pz-serif) !important; font-weight:500 !important; color:var(--pz-navy) !important; letter-spacing:-.5px; }

/*  5. CARD UNIFICATION  */
.ci-card, .ci-college-card, .ci-blog-card, .ci-related-card,
.ci-college-row, .ci-filter-box, .ci-blog-article, .ci-course-detail,
.ci-stat-card, .ci-sw {
  background:var(--pz-ivory-w) !important;
  border:1px solid var(--pz-bdr-f) !important;
  border-radius:3px !important;
  box-shadow:none !important;
  transition:transform .25s, box-shadow .25s, border-color .25s !important;
}
.ci-college-card:hover, .ci-blog-card:hover, .ci-related-card:hover,
.ci-college-row:hover, .ci-card:hover {
  transform:translateY(-3px);
  border-color:var(--pz-bdr) !important;
  box-shadow:0 10px 28px rgba(15,31,56,.09) !important;
}
.ci-card-body { padding:28px !important; }
.ci-info-item, .ci-college-logo, .ci-college-row .ci-logo {
  background:var(--pz-ivory-d) !important;
  border-radius:2px !important;
  color:var(--pz-navy) !important;
}
.ci-stat-num { font-family:var(--pz-serif) !important; color:var(--pz-navy) !important; font-weight:500 !important; }
.ci-stat-label { color:var(--pz-warm) !important; letter-spacing:.8px; text-transform:uppercase; font-size:10.5px !important; }

/* Section titles inside detail pages */
.ci-section-title {
  font-family:var(--pz-serif) !important; font-weight:500 !important;
  color:var(--pz-navy) !important; letter-spacing:-.3px;
  border-bottom:1px solid var(--pz-bdr-f); padding-bottom:12px; margin-bottom:20px;
}

/* Sticky tab bar (college detail) */
.ci-tabs-wrap {
  background:var(--pz-ivory-w) !important;
  border-bottom:1px solid var(--pz-bdr) !important;
  box-shadow:0 1px 0 rgba(15,31,56,.04) !important;
}
.ci-tabs a { color:var(--pz-warm) !important; font-weight:500 !important; }
.ci-tabs a:hover { color:var(--pz-sienna) !important; }
.ci-tabs a.active, .ci-tabs .active {
  color:var(--pz-navy) !important;
  border-bottom-color:var(--pz-sienna) !important;
}

/*  6. BUTTONS -> EDITORIAL  */
.ci-view-btn, .ci-college-btn, .ci-filter-btn {
  background:var(--pz-navy) !important; color:var(--pz-ivory-w) !important;
  border-radius:2px !important; text-transform:uppercase;
  letter-spacing:.9px; font-size:11px !important; font-weight:600 !important;
  padding:10px 18px !important;
}
.ci-view-btn:hover, .ci-college-btn:hover, .ci-filter-btn:hover {
  background:var(--pz-sienna) !important; color:var(--pz-ivory-w) !important;
}
.ci-blog-share-copy { border-radius:2px !important; background:var(--pz-ivory-d) !important; color:var(--pz-txt) !important; }
.ci-blog-share-copy:hover { background:var(--pz-bdr-f) !important; }
.ci-blog-share { background:var(--pz-ivory) !important; border-top:1px solid var(--pz-bdr-f) !important; border-radius:0 !important; }
.ci-blog-cta {
  background:var(--pz-ivory-d) !important;
  border:1px solid var(--pz-bdr) !important;
  border-radius:3px !important;
}

/*  7. LEGACY ACCENT REPLACEMENT (purple/blue/red -> v8)  */
/* Inline-styled badges: purple pill -> ivory/navy, green pill -> teal */
main [style*="#534AB7"], main [style*="#F0EFFA"] {
  background:var(--pz-ivory-d) !important; color:var(--pz-navy) !important;
}
main [style*="#ECFDF5"] { background:#EAF3EF !important; color:var(--pz-teal) !important; }
.ci-fee-tag { background:#EAF3EF !important; color:var(--pz-teal) !important; border-radius:2px !important; }
.ci-admission-tag { background:var(--pz-ivory-d) !important; color:var(--pz-navy) !important; border-radius:2px !important; }
.ci-badge-sm { border-radius:2px !important; }
.ci-filter-box select { background:var(--pz-ivory) !important; border-color:var(--pz-bdr) !important; border-radius:2px !important; }
.ci-filter-box select:focus { border-color:var(--pz-sienna) !important; }

/*  8. ARTICLE CONTENT (.ac) -> EDITORIAL TYPOGRAPHY  */
.ac { font-size:16px; line-height:1.75; color:var(--pz-txt); }
.ac h2, .ac h3, .ac h4 {
  font-family:var(--pz-serif) !important; font-weight:500 !important;
  color:var(--pz-navy) !important; letter-spacing:-.3px; line-height:1.25;
}
.ac h2 { font-size:30px; margin:2.2em 0 .7em; padding-bottom:.35em; border-bottom:1px solid var(--pz-bdr-f); }
.ac h3 { font-size:22px; margin:1.8em 0 .6em; }
.ac p { margin:0 0 1.15em; }
.ac a { color:var(--pz-sienna) !important; text-decoration:underline; text-decoration-color:rgba(168,82,28,.35); text-underline-offset:3px; }
.ac a:hover { text-decoration-color:var(--pz-sienna); }
.ac blockquote {
  border-left:3px solid var(--pz-gold) !important;
  background:var(--pz-ivory-d) !important;
  border-radius:0 !important;
  font-family:var(--pz-serif); font-style:italic; font-size:17.5px; color:var(--pz-navy);
}
.ac img { border-radius:2px !important; box-shadow:0 6px 24px rgba(15,31,56,.08); }
.ac table { border:1px solid var(--pz-bdr) !important; border-radius:0 !important; }
.ac thead, .ac th {
  background:var(--pz-navy) !important; color:var(--pz-ivory-w) !important;
  border-bottom:2px solid var(--pz-gold) !important;
  font-size:12px; letter-spacing:.6px; text-transform:uppercase; font-weight:600 !important;
}
.ac td { border-bottom:1px solid var(--pz-bdr-f) !important; }
.ac tr:nth-child(even) { background:var(--pz-ivory) !important; }
.ac tr:hover { background:var(--pz-ivory-d) !important; }
.ac .table-scroll::after {
  background:var(--pz-ivory-d) !important; color:var(--pz-sienna) !important;
  border-bottom:1px solid var(--pz-bdr) !important;
}
.faq-wrap summary:hover { background:var(--pz-ivory) !important; }

/*  9. TAILWIND PAGE OVERRIDES (exams, streams, pages)  */
main .bg-white { background:var(--pz-ivory-w) !important; }
main .bg-gray-50, main .bg-gray-100 { background:var(--pz-ivory) !important; }
main .bg-blue-50 { background:var(--pz-ivory-d) !important; }
main .shadow-sm, main .shadow { box-shadow:none !important; }
main .rounded-xl, main .rounded-lg, main .rounded-md { border-radius:3px !important; }
main .border-gray-100, main .border-gray-200, main .border { border-color:var(--pz-bdr-f) !important; }
main .text-gray-900, main .text-gray-800 { color:var(--pz-txt) !important; }
main .text-gray-700, main .text-gray-600 { color:#4A4238 !important; }
main .text-gray-500, main .text-gray-400 { color:var(--pz-warm) !important; }
main .text-blue-600, main .text-blue-700, main .hover\:text-blue-600:hover { color:var(--pz-sienna) !important; }
main .bg-blue-600, main .bg-blue-700 { background:var(--pz-navy) !important; }
main .hover\:bg-blue-700:hover, main .hover\:bg-blue-600:hover { background:var(--pz-sienna) !important; }
main h1.font-bold, main h2.font-bold, main .text-2xl.font-bold, main .text-3xl.font-bold {
  font-family:var(--pz-serif) !important; font-weight:500 !important; color:var(--pz-navy) !important;
}
main .prose { color:var(--pz-txt); max-width:68ch; }
main .prose h2, main .prose h3 { font-family:var(--pz-serif) !important; font-weight:500 !important; color:var(--pz-navy) !important; }
main .prose a { color:var(--pz-sienna) !important; }
main .prose table thead th { background:var(--pz-navy) !important; color:var(--pz-ivory-w) !important; }

/*  10. SIDEBAR WIDGETS (blog)  */
.ci-sw-title {
  font-family:var(--pz-serif) !important; font-weight:500 !important;
  color:var(--pz-navy) !important; border-bottom:1px solid var(--pz-bdr-f);
  padding-bottom:10px; letter-spacing:-.2px;
}
.ci-sp-t { color:var(--pz-txt) !important; }
.ci-sp:hover .ci-sp-t { color:var(--pz-sienna) !important; }
.ci-sp-noimg { background:var(--pz-ivory-d) !important; border-radius:2px !important; }
.ci-ql-icon { color:var(--pz-sienna) !important; }

/*  11. SPACING RHYTHM  */
.v8 .cisec { padding:120px 0; }
.ci-blog-wrap, .ci-listing-layout { padding-top:8px; }
main > section:first-child { margin-top:0; }

/*  12. FORMS / FOCUS  */
main input:focus, main select:focus, main textarea:focus {
  border-color:var(--pz-sienna) !important;
  box-shadow:0 0 0 3px rgba(168,82,28,.12) !important;
  outline:none;
}

/*  13. RESPONSIVE  */
@media (max-width:768px) {
  .v8 .cisec { padding:64px 0; }
  .ci-listing-hero, .ci-blogs-hero, .ci-course-hero, .ci-college-hero { padding:36px 0 !important; }
  .ci-card-body { padding:20px !important; }
  .ac h2 { font-size:24px; }
  .ac h3 { font-size:19px; }
  .v8-foot { padding:56px 0 32px; }
}
