/* ===== SITE-WIDE BACKGROUND: rgb(15,2,45) ===== */
body, html {
  background-color: #0F022D !important;
}

/* Logo size control */
.site-header .custom-logo-link img.custom-logo,
.site-header img.custom-logo,
a.custom-logo-link img,
img.custom-logo {
  max-height: 65px !important;
  height: 65px !important;
  max-width: 220px !important;
  width: auto !important;
  object-fit: contain !important;
}

.custom-logo-link {
  display: flex !important;
  align-items: center !important;
}

/* Hero logo (above eyebrow) — larger logo */
.hero-logo-large .custom-logo-link img,
.hero-logo-large img.hero-logo-img {
  max-height: 150px !important;
  height: auto !important;
  max-width: 390px !important;
  width: auto !important;
  object-fit: contain !important;
}
@media (max-width: 768px) {
  .hero-logo-large {
    display: flex !important;
    justify-content: center !important;
    text-align: center !important;
  }
  .hero-logo-large .custom-logo-link {
    display: flex !important;
    justify-content: center !important;
  }
}

/* Super Lawyers badge — top-left photo overlay */
.photo-badge.tl {
  position: absolute !important;
  top: 16px !important;
  left: 16px !important;
  z-index: 10 !important;
  background: transparent !important;
  border-radius: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
}
.photo-badge.tl .slbadge,
.photo-badge.tl .slbadge-v4-embed {
  transform: scale(0.7) !important;
  transform-origin: left top !important;
  display: block !important;
}
/* Remove Super Lawyers badge white background */
.photo-badge.tl .slbadge-v4.atty-free.monochrome,
.photo-badge.tl a.slbadge-v4 {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}
.photo-badge.tl .slbadge-v4.atty-free.monochrome .name {
  background: transparent !important;
  color: #ffffff !important;
}
.photo-badge.tl .slbadge-v4 * {
  color: #ffffff !important;
  border-color: transparent !important;
}
/* Site-wide navy background matching logo */
body {
  background-color: #0F022D !important;
}
.section.bg-cream,
.section.bg-white,
.section.bg-light,
.trust-bar,
.awards-strip,
.page-section,
.page-content,
section.page-content {
  background-color: #0F022D !important;
}
/* Make text white in light sections that are now navy */
.section.bg-cream,
.section.bg-cream h1,
.section.bg-cream h2,
.section.bg-cream h3,
.section.bg-cream h4,
.section.bg-cream p,
.section.bg-cream li,
.section.bg-cream span,
.section.bg-white,
.section.bg-white h1,
.section.bg-white h2,
.section.bg-white h3,
.section.bg-white h4,
.section.bg-white p,
.section.bg-white li,
.section.bg-white span,
.trust-bar,
.trust-bar *,
.page-content,
.page-content h1,
.page-content h2,
.page-content h3,
.page-content h4,
.page-content p,
.page-content li,
.page-content a {
  color: #ffffff !important;
}

/* Keep header with its original dark navy (don't let body bg bleed through) */
.site-header {
  background-color: var(--navy-dark, #0F022D) !important;
}
.site-header .nav-link,
.site-header .menu-item a {
  color: #ffffff !important;
}


/* ============================================
   CARD & WHITE-BG TEXT READABILITY FIXES
   ============================================ */

/* Step cards ("How It Works") — white bg, need dark text */
.step-card { color: #0F022D !important; }
.step-card .step-eyebrow, .step-card .step-title, .step-card .step-desc {
  color: #0F022D !important;
}
/* Step number circle — gold on navy */
.step-num { color: #C9A24B !important; }

/* Pichon feature/credential cards (4 icon boxes in bio) — white bg */
.pcard,
.pcard * {
  color: #0F022D !important;
}

/* Testimonial cards — cream/parchment bg (#F8F4EC) */
.testimonial,
.testimonial .stars,
.testimonial .quote,
.testimonial .name,
.testimonial [class] {
  color: #0F022D !important;
}

/* Awards strip items — keep white text on dark bg */
.awards-strip,
.awards-strip *,
.awards-grid,
.awards-grid * {
  color: #ffffff !important;
}

/* Award chips — cream background, need dark text */
.award-chip,
.award-chip * {
  color: #0F022D !important;
}

/* Resource box heading */
.resource-box h3,
.resource-box h4,
.resource-box .eyebrow,
.resource-box strong,
[class*="resource"] h3,
[class*="resource"] .eyebrow {
  color: #0F022D !important;
}

/* Contact form card — white/cream bg */
.cform-hd,
.cform-hd * {
  color: #0F022D !important;
}

/* Links on navy background — make gold */
.section-about a:not(.btn):not(.button),
.about-section a:not(.btn):not(.button),
body a:not(.btn):not(.button):not(.nav-link):not(.menu-item a) {
  color: #C9A84C;
}
body a:not(.btn):not(.button):not(.nav-link):not(.menu-item a):hover {
  color: #ffffff;
}

/* Links INSIDE white/cream cards — keep dark */
.step-card a,
.pcard a,
.testimonial a,
.award-chip a,
.cform a {
  color: #0F022D !important;
}


/* ==========================================
   EXTRA SPECIFICITY FIXES — override broad p/li rules
   ========================================== */

/* Testimonial quote text — override broad p rule */
.testimonial p.quote,
.testimonial p,
.testimonials-grid .testimonial p,
.testimonials-grid p {
  color: #0F022D !important;
}

/* Step card title/desc — override broad p/h rules */
.step-card h3,
.step-card h4,
.step-card p,
.process-grid .step-card h3,
.process-grid .step-card p {
  color: #0F022D !important;
}

/* Pcard (bio feature boxes) — override broad rules */
.pcard h3,
.pcard h4,
.pcard p,
.pcard span,
.pcard li {
  color: #0F022D !important;
}

/* Award chips */
.award-chip p,
.award-chip span,
.award-chip li {
  color: #0F022D !important;
}

/* Testimonial name + case type */
.testimonial .name,
.testimonial .case {
  color: #0F022D !important;
}


/* ============================================
   DROPDOWN MENU FIX
   White bg dropdowns need dark navy text
   ============================================ */

/* Sub-menu container */
.sub-menu {
  background-color: #ffffff !important;
}

/* Sub-menu links — dark navy on white */
.sub-menu a,
.sub-menu .menu-item a,
.sub-menu li a,
.nav-menu .sub-menu a,
.site-header .sub-menu a,
.site-header .sub-menu li a {
  color: #0F022D !important;
}

/* Sub-menu link hover state */
.sub-menu a:hover,
.sub-menu li a:hover,
.site-header .sub-menu a:hover {
  color: #C9A84C !important;
  background-color: #f5f0e8 !important;
}


/* Transparent hero logo */
.hero-logo-large img.hero-logo-img {
  max-height: 150px !important;
  max-width: 390px !important;
  height: auto !important;
  width: auto !important;
  background: transparent !important;
  filter: none !important;
  display: block;
}
@media (max-width: 768px) {
  .hero-logo-large img.hero-logo-img {
    max-height: 110px !important;
    max-width: 280px !important;
  }
}

/* Hero logo background */
.hero-logo-large {
  background-color: transparent !important;
}

/* ========== COLOR CONTRAST FIXES ========== */

/* 1. Full Bio button — white text on gold bg */
.btn-gold {
  color: #ffffff !important;
}
.btn-gold:hover {
  color: #ffffff !important;
}

/* 2. Avatar initials in testimonials — gold text on navy bg */
.avatar,
.testimonial .avatar {
  color: #C9A24B !important;
}

/* 3. FAQ items — dark text on white bg */
.faq-item {
  color: #0F022D !important;
}
.faq-q {
  color: #0F022D !important;
}
.faq-answer, .faq-item p {
  color: #0F022D !important;
}

/* 4. Pillar boxes — dark text on light bg (inside bg-white section) */
.section.bg-white .pillar h3,
.section.bg-white .pillar h4,
.section.bg-cream .pillar h3,
.section.bg-cream .pillar h4,
.pillar h3,
.pillar h4,
.pillar strong {
  color: #0F022D !important;
}
.section.bg-white .pillar p,
.section.bg-cream .pillar p,
.pillar p {
  color: #3E4756 !important;
}

/* 5. Helpful Government Resources section — dark text on light bg */
.outbound-box {
  color: #0F022D !important;
}
.outbound-box h4,
.section.bg-white .outbound-box h4,
.section.bg-cream .outbound-box h4,
.page-content .outbound-box h4,
section.bg-white .outbound-box h4 {
  color: #0F022D !important;
  font-size: 0.7rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  margin-bottom: 10px !important;
}
.outbound-box a,
.page-content .outbound-box a {
  color: #0F022D !important;
  text-decoration: underline;
}
.outbound-box a:hover {
  color: #C9A24B !important;
}

/* 6. Super Lawyers Profile button — ensure legible */
.btn-navy {
  color: #C9A24B !important;
}


/* 7. Bottom CTA section — ghost button "Submit Case Review Online" on gold bg */
.cta-section .btn-ghost {
  color: #0F022D !important;
  border-color: #0F022D !important;
}
.cta-section .btn-ghost:hover {
  color: #ffffff !important;
  background-color: #0F022D !important;
}

/* 8. CTA section text color */
.cta-section h2, .cta-section h3, .cta-section p {
  color: #0F022D !important;
}

/* Clear cache helper */


/* === CONTACT FORM FONT FIX ===
   Ensure the contact form uses Inter (the site's body font)
   instead of the default system font stack */
#case-review,
#case-review label,
#case-review input,
#case-review select,
#case-review textarea,
#case-review .wpforms-field-label,
#case-review .wpforms-field-sublabel,
#case-review .wpforms-field-description,
#case-review button,
.plf-c-form-wrap,
.plf-c-form-wrap label,
.plf-c-form-wrap input,
.plf-c-form-wrap select,
.plf-c-form-wrap textarea,
.plf-c-form-wrap button {
  font-family: Inter, -apple-system, "system-ui", "Segoe UI", Roboto, sans-serif !important;
}

/* === CONTACT PAGE SECTION OVERRIDES ===
   Prevent global navy background & white text rules from overriding
   the contact page's own section backgrounds and text colors */
.plf-c-section,
.plf-c-expect,
.plf-c-steps {
  background-color: revert !important;
}
.plf-c-step-card {
  background: #fff !important;
}
.plf-c-step-card h3,
.plf-c-step-card p,
.plf-c-step-num,
.plf-c-stat-num,
.plf-c-info-card h4,
.plf-c-info-card p,
.plf-c-info-card address {
  color: revert !important;
}
.plf-c-step-card h3 {
  color: #0a1628 !important;
}
.plf-c-step-card p {
  color: #555 !important;
}
.plf-c-stat-num {
  color: #c9a961 !important;
}
.plf-c-info-card h4 {
  color: #0a1628 !important;
}

/* Hero logo  larger size + centered above eyebrow */
.hero-logo-large {
	  text-align: center !important;
	  display: flex !important;
	  justify-content: center !important;
	  margin-bottom: 18px;
}
.hero-logo-large .custom-logo-link img,
.hero-logo-large img.hero-logo-img {
	  max-height: 220px !important;
	  height: auto !important;
	  max-width: 500px !important;
	  width: auto !important;
	  object-fit: contain !important;
}

/* ==========================================================================
   Referring Attorneys — referral inquiry form
   pichonlawfirm.com/referring-attorneys/

   The form's markup uses .rf-* class names, but no stylesheet on the site
   ever defined them, so every field rendered with raw browser defaults.
   This supplies the missing styles, matching the case-review form on the
   Contact page (white card, navy labels, gold submit button).

   Fields are targeted by element as well as by class, because both
   <textarea> fields are missing their .rf-input class in the form markup.

   The theme sets `.page-content p / a / h1-h4 / li { color:#fff !important }`,
   so colour declarations inside the white card must also be !important.
   Nothing else here uses it.
   ========================================================================== */

.rf-box{
  --rf-navy:#0A1628;
  --rf-gold:#C9A961;
  --rf-line:#E5E3DD;
  --rf-field-line:#D4D2CC;
  --rf-muted:#5A6472;

  max-width:820px;
  margin:0 auto;
  background:#FFFFFF;
  border:1px solid var(--rf-line);
  border-radius:8px;
  overflow:hidden;
  box-shadow:0 18px 40px -28px rgba(10,22,40,.55);
}

/* ---------- header band ---------- */
.rf-box .rf-header{
  background:var(--rf-navy);
  padding:26px 28px 22px;
  border-bottom:3px solid var(--rf-gold);
}
.rf-box .rf-header h3{
  margin:0 0 8px;
  color:#FFFFFF!important;
  font-family:"Playfair Display",Georgia,serif;
  font-size:1.6rem;
  line-height:1.2;
}
.rf-box .rf-header p{
  margin:0;
  color:rgba(255,255,255,.78)!important;
  font-size:.92rem;
  line-height:1.55;
}
.rf-box .rf-header a{color:var(--rf-gold)!important}

/* ---------- body ---------- */
.rf-box .rf-body{padding:28px 28px 30px}

/* section headings: "Attorney Information", "Case Information", … */
.rf-box .rf-section{
  margin:30px 0 16px;
  padding-bottom:8px;
  border-bottom:1px solid var(--rf-line);
  color:var(--rf-navy)!important;
  font-size:.76rem;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.rf-box .rf-body > .rf-section:first-child{margin-top:0}

/* ---------- field grid ---------- */
.rf-box .rf-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px 20px;
  margin-bottom:16px;
}
/* .rf-full marks a column that should span the whole row (the two textareas) */
.rf-box .rf-row > .rf-full{grid-column:1 / -1}
.rf-box .rf-row.rf-full{grid-template-columns:1fr}
.rf-box .rf-col{min-width:0}
.rf-box .rf-col > p,
.rf-box .rf-full > p{margin:0}

/* CF7 wraps each control in spans and leaves stray <br> tags — neutralise them */
.rf-box .wpcf7-form-control-wrap{display:block}
.rf-box .rf-col br,
.rf-box .rf-full br{display:none}

/* ---------- labels ---------- */
.rf-box .rf-label{
  display:block;
  margin-bottom:6px;
  color:var(--rf-navy)!important;
  font-family:Inter,-apple-system,"Segoe UI",Roboto,sans-serif;
  font-size:14px;
  font-weight:700;
  line-height:1.35;
}

/* ---------- controls ---------- */
.rf-box .rf-input,
.rf-box .rf-select,
.rf-box input[type="text"],
.rf-box input[type="tel"],
.rf-box input[type="email"],
.rf-box input[type="url"],
.rf-box input[type="number"],
.rf-box select,
.rf-box textarea{
  display:block;
  width:100%;
  box-sizing:border-box;
  background:#FFFFFF;
  color:#12161D!important;
  font-family:Inter,-apple-system,"Segoe UI",Roboto,sans-serif;
  font-size:16px;          /* 16px keeps iOS from zooming on focus */
  line-height:1.4;
  border:1px solid var(--rf-field-line);
  border-radius:4px;
  padding:0 14px;
  height:46px;
  transition:border-color .15s ease, box-shadow .15s ease;
}
.rf-box select{
  height:48px;
  padding-right:12px;
  cursor:pointer;
}
.rf-box textarea{
  height:auto;
  min-height:150px;
  padding:12px 14px;
  resize:vertical;
}
.rf-box input::placeholder,
.rf-box textarea::placeholder{color:#8C939E;opacity:1}

.rf-box input:focus,
.rf-box select:focus,
.rf-box textarea:focus{
  outline:none;
  border-color:var(--rf-gold);
  box-shadow:0 0 0 3px rgba(201,169,97,.28);
}

/* keep the spam honeypot hidden */
.rf-box .akismet-fields-container,
.rf-box .hidden-fields-container{display:none!important}

/* ---------- submit ---------- */
.rf-box .rf-submit,
.rf-box input[type="submit"]{
  display:block;
  width:100%;
  margin-top:26px;
  height:52px;
  background:var(--rf-gold);
  color:var(--rf-navy)!important;
  font-family:Inter,-apple-system,"Segoe UI",Roboto,sans-serif;
  font-size:17px;
  font-weight:700;
  border:0;
  border-radius:4px;
  padding:0 20px;
  cursor:pointer;
  transition:background-color .15s ease, transform .05s ease;
}
.rf-box .rf-submit:hover{background:#D8BB77}
.rf-box .rf-submit:active{transform:translateY(1px)}
.rf-box .rf-submit:focus-visible{outline:3px solid var(--rf-navy);outline-offset:2px}
.rf-box .wpcf7-spinner{display:block;margin:14px auto 0}

/* ---------- links inside the white card ---------- */
/* the theme forces every .page-content link to white, invisible on this card */
.rf-box .rf-body a,
.rf-box .rf-notice a,
.rf-box .rf-contact-line a{color:#8A6410!important;text-decoration:none;border-bottom:1px solid rgba(138,100,16,.35)}
.rf-box .rf-body a:hover,
.rf-box .rf-notice a:hover,
.rf-box .rf-contact-line a:hover{border-bottom-color:#8A6410}
.rf-box .rf-header a{border-bottom:1px solid rgba(201,169,97,.5);text-decoration:none}

/* ---------- confidentiality notice + contact line ---------- */
.rf-box .rf-notice{
  margin-top:22px;
  padding-top:18px;
  border-top:1px solid var(--rf-line);
  color:var(--rf-muted)!important;
  font-size:.82rem;
  line-height:1.6;
}
.rf-box .rf-notice p{margin:0;color:inherit!important}

.rf-box .rf-contact-line{
  margin:18px 0 0;
  text-align:center;
  color:var(--rf-muted)!important;
  font-size:.9rem;
  line-height:2;
}
.rf-box .rf-contact-line br{display:none}
.rf-box .rf-contact-line a{display:inline-block;margin:0 10px;font-weight:600}
.rf-box .rf-contact-line strong{color:var(--rf-navy)!important}

/* ---------- Contact Form 7 validation states ---------- */
.rf-box .wpcf7-not-valid{border-color:#B91C2C;box-shadow:0 0 0 3px rgba(185,28,44,.14)}
.rf-box .wpcf7-not-valid-tip{
  display:block;
  margin-top:6px;
  color:#B91C2C!important;
  font-size:.8rem;
  font-weight:600;
}
.wpcf7 form .wpcf7-response-output{
  max-width:820px;
  margin:18px auto 0;
  padding:14px 16px;
  border-width:1px;
  border-radius:6px;
  font-size:.92rem;
  line-height:1.5;
  color:#12161D!important;
  background:#FFFFFF;
}
.wpcf7 form.sent .wpcf7-response-output{border-color:#2E7D5B;background:#EAF5EF}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output{border-color:#B91C2C;background:#FBECEA}

/* ---------- responsive ---------- */
@media (max-width:640px){
  .rf-box .rf-header{padding:22px 18px 18px}
  .rf-box .rf-header h3{font-size:1.35rem}
  .rf-box .rf-body{padding:22px 18px 24px}
  .rf-box .rf-row{grid-template-columns:1fr;gap:14px}
  .rf-box .rf-contact-line a{display:block;margin:6px 0}
}


/* ===========================================================
   PLF CONTRAST FIX — home page lead sentence.
   The theme styles ".about-prose p strong" with the navy brand
   colour, which assumes a light section background. The rule
   "body,html{background-color:#0f022d !important}" above makes
   that section dark, so the opening line of the About block
   rendered navy-on-navy and was invisible.
   Re-coloured to the brand gold so it still reads as emphasis.
   =========================================================== */
.about-prose p strong { color: #c9a961 !important; }


/* ===========================================================
   PLF CONTRAST FIX — Jetpack share buttons on blog posts.
   The ".page-content a{color:#fff !important}" rule above was
   also hitting Jetpack's "Share this:" buttons, whose own
   background is white — so the X / Facebook labels and their
   icons rendered white-on-white and were invisible.
   =========================================================== */
.sharedaddy .sd-content ul li a.sd-button,
.sharedaddy .sd-content ul li a.sd-button span,
.sharedaddy .sd-content ul li a.sd-button::before,
.sharedaddy .sd-content ul li a.share-icon,
.sharedaddy .sd-content ul li a.share-icon span,
.sharedaddy .sd-content ul li a.share-icon::before { color: #0a1628 !important; }
