/* ==========================================================================
   UNIFIED RAIL SIDEBAR + FULL-WIDTH RESULTS BAND

   Loaded site-wide. Styles the single rail sidebar (.rail-sidebar) in both
   placements — right on content-shell pages, left on the professional layout —
   its widgets, the in-article TOC, and the top-of-page Verdicts & Settlements
   band.
   ========================================================================== */

/* ---- Professional layout: content on the LEFT (65%); rail sits on the RIGHT
   (35%) with a divider between. Gutter on the rail's left edge toward the
   divider. (Decluttered: matches the content-shell pages' sidebar-on-the-right.) ---- */
.professional-columns > .rail-sidebar {
  width: 35%;
  flex: 0 0 35%;
  order: 2;
  align-self: stretch;
  box-sizing: border-box;
  padding-left: 30px;
}

/* Vertical divider between content (left) and the sidebar (right). Stretch the
   row so the rule spans full height even when the content column is shorter than
   the sidebar, then hang a 1px line off the content column's right edge. */
.professional-columns {
  align-items: stretch;
}

.professional-columns > .professional-main-content {
  border-right: 1px solid var(--color-border);
}

@media (max-width: 991px) {
  /* Content-first stacking on mobile. The base .professional-main-content rule
     (order: 1, no media wrapper) otherwise out-cascades main.css's mobile reset
     (order: 0). The child-combinator selector (0,2,0) outranks the bare class so
     content stacks first. */
  .professional-columns > .professional-main-content {
    order: 0;
    border-right: 0;
  }

  .professional-columns > .rail-sidebar {
    width: 100%;
    flex: none;
    order: 1;
    margin-top: 28px;
    padding-left: 0;
  }
}

/* ==========================================================================
   FULL-WIDTH VERDICTS & SETTLEMENTS BAND  (nybirthinjury-style)
   ========================================================================== */
.results-band {
  width: 100%;
  background: var(--color-darker, #51230d);
  border-top: 3px solid var(--color-cta-orange, #c66335);
}

.results-band__track {
  display: flex;
  align-items: stretch;
}

.results-band__item {
  flex: 1 1 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 3px;
  padding: 15px 8px;
  text-align: center;
  text-decoration: none;
  border-left: 1px solid rgba(255, 255, 255, 0.13);
  transition: background-color 0.15s ease;
}

.results-band__item:first-child {
  border-left: 0;
}

.results-band__item:hover {
  background: rgba(255, 255, 255, 0.07);
}

.results-band__amount {
  color: #fff;
  font-size: 22px;
  font-weight: 900;
  line-height: 1.05;
}

.results-band__label {
  color: var(--color-gold, #d2b05e);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}

@media (max-width: 900px) {
  .results-band__track {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .results-band__item {
    flex: 0 0 auto;
    min-width: 96px;
  }
}

/* ==========================================================================
   OPTION 1 — content-shell layout (sidebar on the RIGHT) + the Rail
   Only loads on the shell preview template, so these reach no production page.
   ========================================================================== */
.porter-content-shell__main {
  width: 66%;
  /* Divider between content (left) and the sidebar gutter (right). The content
     column is the tall one, so the rule spans the full row height. */
  border-right: 1px solid var(--color-border);
}

.porter-content-shell__sidebar {
  width: 34%;
}

.porter-content-shell__sidebar .rail-sidebar {
  padding: 0;
}

/* Nudge the H1 a touch below the breadcrumb trail (was sitting tight under it). */
.porter-content-shell__breadcrumbs {
  margin-bottom: 18px;
}

@media (max-width: 991px) {
  .porter-content-shell__main {
    width: 100%;
    border-right: 0;
  }

  .porter-content-shell__sidebar {
    width: 100%;
  }
}

/* ==========================================================================
   RAIL SIDEBAR — the Conversion-Rail look applied to the REAL canonical widgets
   (template-parts/sidebar-rail.php). Same links/menus, restyled. Scoped to
   .rail-sidebar so the plain canonical sidebar elsewhere is untouched.
   ========================================================================== */
.rail-sidebar {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

/* Shared card chrome for every widget except the CTA. */
.rail-sidebar .sidebar-widget {
  margin: 0;
  padding: 22px;
  background: #fff;
  border: 1px solid #ece4dd;
  border-radius: 16px;
  box-shadow: 0 6px 18px rgba(81, 35, 13, 0.06);
}

.rail-sidebar .sidebar-rail-toc__heading,
.rail-sidebar .sidebar-results__heading,
.rail-sidebar .sidebar-why__heading,
.rail-sidebar .sidebar-practice-menu__heading,
.rail-sidebar .sidebar-helpful__heading,
.rail-sidebar .sidebar-testimonials__heading {
  margin: 0 0 14px;
  padding-bottom: 10px;
  border-bottom: 2px solid #f0e7e0;
  color: var(--color-darker, #51230d);
  font-size: 18px;
  font-weight: 800;
}

/* ---- In-article TOC (blog posts) ---- */
/* The TOC reads smaller than the other widgets — it's a quiet nav aid, not a
   feature card. Override the shared 18px widget heading just for the TOC. */
.rail-sidebar .sidebar-rail-toc__heading {
  font-size: 15px;
  margin-bottom: 12px;
  padding-bottom: 8px;
}

.rail-sidebar .sidebar-rail-toc ol {
  margin: 0;
  padding-left: 18px;
}

.rail-sidebar .sidebar-rail-toc li {
  margin-bottom: 5px;
}

.rail-sidebar .sidebar-rail-toc__item--level-3 {
  margin-left: 14px;
  list-style-type: circle;
}

.rail-sidebar .sidebar-rail-toc a {
  color: var(--color-link, #9b4242);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
  text-decoration: none;
}

.rail-sidebar .sidebar-rail-toc a:hover {
  color: var(--color-main, #893002);
  text-decoration: underline;
}

/* ---- LuckyWP TOC fallback (professional / location pages) ----
   The [lwptoc] plugin ships its own boxed "lwptoc-light" skin, which nested a
   grey bordered panel inside the white sidebar card (the "two colours" / extra
   borders). Strip that chrome so the plugin TOC sits flat in the card and reads
   like the in-article TOC above. Scoped to .rail-sidebar so the plugin's own
   styling elsewhere is untouched. */
.rail-sidebar .sidebar-rail-toc .lwptoc {
  width: auto;
  margin: 0;
  padding: 0;
  background: none;
  border: 0;
  border-radius: 0;
  font-size: inherit;
}

.rail-sidebar .sidebar-rail-toc .lwptoc_header {
  margin: 0 0 14px;
  padding-bottom: 10px;
  border-bottom: 2px solid #f0e7e0;
}

.rail-sidebar .sidebar-rail-toc .lwptoc_title {
  color: var(--color-darker, #51230d);
  font-size: 18px;
  font-weight: 800;
}

.rail-sidebar .sidebar-rail-toc .lwptoc_items {
  margin: 0;
  padding: 0;
}

.rail-sidebar .sidebar-rail-toc .lwptoc_item {
  margin-bottom: 7px;
}

.rail-sidebar .sidebar-rail-toc .lwptoc_item_label,
.rail-sidebar .sidebar-rail-toc .lwptoc_i a {
  color: var(--color-link, #9b4242);
  font-weight: 600;
  text-decoration: none;
}

.rail-sidebar .sidebar-rail-toc .lwptoc_i a:hover {
  color: var(--color-main, #893002);
  text-decoration: underline;
}

/* ---- CTA + form (gradient lead card) ---- */
.rail-sidebar .sidebar-cta {
  padding: 26px 24px 24px;
  background: linear-gradient(165deg, #7a2a02 0%, #51230d 100%);
  border: 0;
  border-radius: 16px;
  box-shadow: 0 14px 30px rgba(81, 35, 13, 0.28);
}

.rail-sidebar .sidebar-cta__heading {
  margin: 0 0 12px;
  color: #fff;
  font-size: 22px;
  font-weight: 800;
  line-height: 1.2;
}

/* Phone renders as a white "call" pill with the number in brand brown. */
.rail-sidebar .sidebar-cta__phone {
  display: block;
  margin: 0;
  padding: 15px 18px;
  background: #fff;
  border-radius: 10px;
  color: var(--color-main, #893002);
  font-size: 26px;
  font-weight: 900;
  text-align: center;
  text-decoration: none;
  transition: background-color 0.15s ease;
}

.rail-sidebar .sidebar-cta__phone:hover {
  background: #f3e9e0;
}

.rail-sidebar .sidebar-cta__form {
  margin-top: 16px;
  background: #fff;
  border-radius: 12px;
  padding: 16px;
}

/* ---- Verdicts & Settlements ---- */
.rail-sidebar .sidebar-results .result-item {
  display: flex;
  flex-direction: column;
  gap: 2px;
  margin-bottom: 8px;
  padding: 10px 12px;
  border-radius: 10px;
  background: #faf6f2;
  text-decoration: none;
  transition: background-color 0.15s ease;
}

.rail-sidebar .sidebar-results .result-item:hover {
  background: #f3e9e0;
}

.rail-sidebar .sidebar-results .result-amount {
  font-size: 21px;
  font-weight: 900;
  color: var(--color-main, #893002);
}

.rail-sidebar .sidebar-results .result-category {
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--color-medium-text, #666);
}

/* ---- "View All" link shared by verdicts + practice menu ---- */
.rail-sidebar .sidebar-view-all {
  display: inline-block;
  margin-top: 12px;
  font-size: 14px;
  font-weight: 800;
  color: var(--color-cta-orange, #c66335);
  text-decoration: none;
}

.rail-sidebar .sidebar-view-all:hover {
  text-decoration: underline;
}

/* ---- Practice areas (real menu) + cancer menu: arrow rows ---- */
.rail-sidebar .sidebar-nav,
.rail-sidebar .information-menu {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.rail-sidebar .sidebar-nav li,
.rail-sidebar .information-menu li {
  list-style: none;
}

.rail-sidebar .sidebar-nav a,
.rail-sidebar .information-menu a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 11px 14px;
  border-radius: 10px;
  background: #faf6f2;
  color: var(--color-darker, #51230d);
  font-weight: 700;
  text-decoration: none;
  transition: background-color 0.15s ease, color 0.15s ease;
}

.rail-sidebar .sidebar-nav a::after,
.rail-sidebar .information-menu a::after {
  content: "\2192";
  color: var(--color-cta-orange, #c66335);
  font-weight: 900;
}

.rail-sidebar .sidebar-nav a:hover,
.rail-sidebar .information-menu a:hover {
  background: var(--color-main, #893002);
  color: #fff;
}

.rail-sidebar .sidebar-nav a:hover::after,
.rail-sidebar .information-menu a:hover::after {
  color: #fff;
}

/* ---- Why Choose (checklist) ---- */
.rail-sidebar .sidebar-why__nav {
  display: flex;
  flex-direction: column;
}

.rail-sidebar .sidebar-why__nav a {
  position: relative;
  padding: 9px 0 9px 26px;
  border-bottom: 1px solid #f1ece7;
  color: var(--color-text, #404040);
  font-weight: 700;
  text-decoration: none;
}

.rail-sidebar .sidebar-why__nav a:last-child {
  border-bottom: 0;
}

.rail-sidebar .sidebar-why__nav a::before {
  content: "\2713";
  position: absolute;
  left: 0;
  top: 9px;
  color: #2f8f4e;
  font-weight: 900;
}

.rail-sidebar .sidebar-why__nav a:hover {
  color: var(--color-main, #893002);
}

/* ---- Helpful Links (page-specific) ---- */
.rail-sidebar .sidebar-helpful__nav {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.rail-sidebar .sidebar-helpful__nav a {
  padding: 11px 14px;
  border-radius: 10px;
  background: #faf6f2;
  color: var(--color-darker, #51230d);
  font-weight: 700;
  text-decoration: none;
  transition: background-color 0.15s ease, color 0.15s ease;
}

.rail-sidebar .sidebar-helpful__nav a:hover {
  background: var(--color-main, #893002);
  color: #fff;
}

/* ---- Testimonials ---- */
.rail-sidebar .sidebar-testimonials {
  background: #fff8ee;
  border-color: rgba(137, 48, 2, 0.16);
}

.rail-sidebar .testimonial-quote {
  margin: 0 0 16px;
  padding: 0 0 16px;
  border-bottom: 1px solid rgba(137, 48, 2, 0.16);
  font-style: italic;
  color: var(--color-dark-text, #333);
  line-height: 1.55;
}

.rail-sidebar .testimonial-quote:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: 0;
}

.rail-sidebar .testimonial-quote__icon {
  display: block;
  font-family: Georgia, serif;
  font-size: 34px;
  line-height: 0.6;
  color: rgba(137, 48, 2, 0.3);
}

.rail-sidebar .testimonial-quote strong {
  display: block;
  margin: 6px 0 4px;
  font-style: normal;
  color: var(--color-darker, #51230d);
}

.rail-sidebar .testimonial-quote cite {
  display: block;
  margin-top: 8px;
  font-style: normal;
  font-weight: 800;
  color: var(--color-main, #893002);
}
