
/* BBB Criminal editorial unification v7 — 2026-08-21 */
:root{--editorial-blue:#E4EDF4;--editorial-navy:#112D4B;--editorial-navy2:#1D4266;--editorial-cream:#FBFAF7;--editorial-stone:#EFEDE7;--editorial-gold:#D9A441;}

/* Tighter, more deliberate vertical rhythm across substantive pages */
body.page-article section.content-section,body.page-court section.content-section,body.page-town section.content-section,body.page-hub section.content-section{padding:clamp(48px,5vw,70px) 0;}
body.page-article section.content-section h2,body.page-court section.content-section h2,body.page-town section.content-section h2,body.page-hub section.content-section h2{margin-bottom:16px;}
body.page-article section.content-section p:last-child,body.page-court section.content-section p:last-child,body.page-town section.content-section p:last-child,body.page-hub section.content-section p:last-child{margin-bottom:0;}

/* Explicit alternating section tones. JS/source classes make this reliable even when sections are wrapped. */
section.tone-cream{background:var(--editorial-cream)!important;}
section.tone-blue{background:var(--editorial-blue)!important;border-color:#C7D6E2!important;}
section.tone-blue .eyebrow{color:#35638A!important;}

/* Editorial split sections — fills the unused half of wide screens with purposeful photography */
section.editorial-split{padding:0!important;overflow:hidden;}
section.editorial-split>.article-wrap,section.editorial-split>.wrap.article-wrap{max-width:1240px!important;display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,42%);gap:58px;align-items:stretch;padding-top:clamp(52px,5vw,72px);padding-bottom:clamp(52px,5vw,72px);}
.editorial-copy{align-self:center;min-width:0;}
.editorial-visual{min-height:330px;border-top:4px solid var(--editorial-gold);background-size:cover;background-position:center;box-shadow:0 16px 34px rgba(17,45,75,.08);}
.editorial-visual.ev-court-1{background-image:linear-gradient(rgba(17,45,75,.08),rgba(17,45,75,.08)),url('hero-courthouse.webp');}
.editorial-visual.ev-court-2{background-image:linear-gradient(rgba(17,45,75,.08),rgba(17,45,75,.08)),url('embedded-aa1c6c321ed11d.jpg');}
.editorial-visual.ev-court-3{background-image:linear-gradient(rgba(17,45,75,.08),rgba(17,45,75,.08)),url('embedded-8b267d2d36fc2b.jpg');}
.editorial-visual.ev-evidence{background-image:url('embedded-2c27223a79a3a8.jpg');}
.editorial-visual.ev-desk{background-image:url('billings-desk.webp');background-position:center 38%;}
.editorial-visual.ev-phone{background-image:url('billings-phone.webp');background-position:center 42%;}
.editorial-visual.ev-office{background-image:url('embedded-18834b44b8a807.webp');background-position:center 38%;}

/* Special homepage treatment requested: How We Win is a distinct blue band; next section remains tan. */
body.page-home .howwewin{position:relative;background:linear-gradient(100deg,rgba(17,45,75,.97),rgba(29,66,102,.91)),url('/assets/hero-courthouse.webp') center 44%/cover no-repeat!important;color:#fff;}
body.page-home .howwewin .sec-head .eyebrow{color:var(--editorial-gold)!important;}
body.page-home .howwewin h2{color:#fff!important;}
body.page-home .howwewin .hww-lead,body.page-home .howwewin .sec-head p{color:#D6DFE8!important;}
body.page-home .howwewin .hww-lead a{color:#fff!important;}
body.page-home .howwewin .tq{background:rgba(255,255,255,.98);border-color:rgba(255,255,255,.55);}
body.page-home .situations{background:var(--editorial-stone)!important;}

/* Courthouse cards: keep clean cards at rest, reveal courthouse photography on hover/focus. Images are provisional pending courthouse-photo confirmation. */
a.docket-cell,a.card[href*="criminal-court"]{position:relative;overflow:hidden;isolation:isolate;background:#fff;}
a.docket-cell::before,a.card[href*="criminal-court"]::before{content:"";position:absolute;inset:0;z-index:-2;background-size:cover;background-position:center;opacity:0;transform:scale(1.035);transition:opacity .22s ease,transform .28s ease;}
a.docket-cell::after,a.card[href*="criminal-court"]::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(9,30,51,.92),rgba(17,45,75,.72));opacity:0;transition:opacity .22s ease;}
a.docket-cell:hover::before,a.docket-cell:focus-visible::before,a.card[href*="criminal-court"]:hover::before,a.card[href*="criminal-court"]:focus-visible::before{opacity:1;transform:scale(1);}
a.docket-cell:hover::after,a.docket-cell:focus-visible::after,a.card[href*="criminal-court"]:hover::after,a.card[href*="criminal-court"]:focus-visible::after{opacity:1;}
a.docket-cell:hover,a.docket-cell:focus-visible,a.card[href*="criminal-court"]:hover,a.card[href*="criminal-court"]:focus-visible{color:#fff!important;border-top-color:var(--editorial-gold)!important;}
a.docket-cell:hover h3,a.docket-cell:hover p,a.docket-cell:hover .ga,a.docket-cell:hover .go,a.docket-cell:focus-visible h3,a.docket-cell:focus-visible p,a.docket-cell:focus-visible .ga,a.docket-cell:focus-visible .go,a.card[href*="criminal-court"]:hover h3,a.card[href*="criminal-court"]:hover p,a.card[href*="criminal-court"]:hover .k,a.card[href*="criminal-court"]:hover .go,a.card[href*="criminal-court"]:focus-visible h3,a.card[href*="criminal-court"]:focus-visible p,a.card[href*="criminal-court"]:focus-visible .k,a.card[href*="criminal-court"]:focus-visible .go{color:#fff!important;}
/* Courthouse image mapping — exact client-verified photographs only. */
a[href$="bridgeport-ga2-criminal-court.html"]::before{background-image:url('courthouse-bridgeport-ga2.jpg');background-position:center 48%;}
a[href$="new-haven-ga23-criminal-court.html"]::before{background-image:url('courthouse-new-haven-ga23.jpg');background-position:center 48%;}
a[href$="meriden-ga7-criminal-court.html"]::before{background-image:url('courthouse-meriden-ga7.jpg');background-position:center 48%;}
a[href$="new-britain-ga15-criminal-court.html"]::before{background-image:url('courthouse-new-britain-ga15.jpg');background-position:center 50%;}
a[href$="hartford-ga14-criminal-court.html"]::before{background-image:url('courthouse-hartford-ga14.jpg');background-position:center 54%;}
a[href$="waterbury-ga4-criminal-court.html"]::before{background-image:url('courthouse-waterbury-ga4.jpg');background-position:center 50%;}
a[href$="derby-ga5-criminal-court.html"]::before{background-image:url('courthouse-derby-ga5.jpg');background-position:center 68%;}
a[href$="milford-ga22-criminal-court.html"]::before{background-image:url('courthouse-milford-ga22.jpg');background-position:center 48%;}
a[href$="bridgeport-fairfield-jd-criminal-court.html"]::before{background-image:url('courthouse-bridgeport-fairfield-jd.jpg');background-position:center 76%;}
a[href$="new-haven-jd-criminal-court.html"]::before{background-image:url('courthouse-new-haven-jd.jpg');background-position:center 54%;}
a[href$="ansonia-milford-jd-criminal-court.html"]::before{background-image:url('courthouse-milford-ga22.jpg');background-position:center 48%;}

/* Individual court pages use the same verified image in the hero. */
body.court-bridgeport-ga2 .hero-int{background:linear-gradient(90deg,rgba(9,30,51,.94),rgba(17,45,75,.76)),url('courthouse-bridgeport-ga2.jpg') center 48%/cover no-repeat!important;}
body.court-new-haven-ga23 .hero-int{background:linear-gradient(90deg,rgba(9,30,51,.94),rgba(17,45,75,.76)),url('courthouse-new-haven-ga23.jpg') center 48%/cover no-repeat!important;}
body.court-meriden-ga7 .hero-int{background:linear-gradient(90deg,rgba(9,30,51,.94),rgba(17,45,75,.76)),url('courthouse-meriden-ga7.jpg') center 48%/cover no-repeat!important;}
body.court-new-britain-ga15 .hero-int{background:linear-gradient(90deg,rgba(9,30,51,.94),rgba(17,45,75,.76)),url('courthouse-new-britain-ga15.jpg') center 50%/cover no-repeat!important;}
body.court-hartford-ga14 .hero-int{background:linear-gradient(90deg,rgba(9,30,51,.94),rgba(17,45,75,.76)),url('courthouse-hartford-ga14.jpg') center 54%/cover no-repeat!important;}
body.court-waterbury-ga4 .hero-int{background:linear-gradient(90deg,rgba(9,30,51,.94),rgba(17,45,75,.76)),url('courthouse-waterbury-ga4.jpg') center 50%/cover no-repeat!important;}
body.court-derby-ga5 .hero-int{background:linear-gradient(90deg,rgba(9,30,51,.94),rgba(17,45,75,.76)),url('courthouse-derby-ga5.jpg') center 68%/cover no-repeat!important;}
body.court-milford-ga22 .hero-int,body.court-ansonia-milford-jd .hero-int{background:linear-gradient(90deg,rgba(9,30,51,.94),rgba(17,45,75,.76)),url('courthouse-milford-ga22.jpg') center 48%/cover no-repeat!important;}
body.court-bridgeport-fairfield-jd .hero-int{background:linear-gradient(90deg,rgba(9,30,51,.94),rgba(17,45,75,.76)),url('courthouse-bridgeport-fairfield-jd.jpg') center 76%/cover no-repeat!important;}
body.court-new-haven-jd .hero-int{background:linear-gradient(90deg,rgba(9,30,51,.94),rgba(17,45,75,.76)),url('courthouse-new-haven-jd.jpg') center 54%/cover no-repeat!important;}

/* Hub/card systems gain the same controlled rhythm as the homepage. */
body.page-hub .cardgrid,body.page-court-hub .cardgrid{gap:18px!important;}
body.page-hub .card,body.page-court-hub .card{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;}
body.page-hub .card:hover,body.page-court-hub .card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(17,45,75,.12);}

/* How We Win page: eliminate the "three islands in a sea of empty cream" feeling. */
body.page-how-we-win .hero-int{background-position:center 36%;}
body.page-how-we-win section.content-section{min-height:0;}
body.page-how-we-win section.content-section:nth-of-type(2){background:var(--editorial-blue)!important;}

/* Attorney/profile pages: keep photography supportive, not full-height. */
body.page-attorney .profile-grid,body.page-attorney .bio-grid{align-items:start!important;}
body.page-attorney figure img,body.page-attorney .profile-photo img{max-height:520px;object-fit:cover;object-position:center 24%;}

/* Mobile: visual split becomes a deliberate stacked image rather than a crop-heavy column. */
@media(max-width:860px){
  section.editorial-split>.article-wrap,section.editorial-split>.wrap.article-wrap{display:flex!important;flex-direction:column;gap:28px;padding-top:46px;padding-bottom:46px;}
  .editorial-visual{min-height:230px;aspect-ratio:16/9;width:100%;}
  a.docket-cell::before,a.docket-cell::after,a.card[href*="criminal-court"]::before,a.card[href*="criminal-court"]::after{display:none;}
}

/* Verified JD courthouse image mappings */
a[href$="hartford-jd-criminal-court.html"]::before{background-image:url('courthouse-hartford-ga14.jpg');background-position:center 54%;}
a[href$="waterbury-jd-criminal-court.html"]::before{background-image:url('courthouse-waterbury-ga4.jpg');background-position:center 50%;}
body.court-hartford-jd .hero-int{background:linear-gradient(90deg,rgba(9,30,51,.94),rgba(17,45,75,.76)),url('courthouse-hartford-ga14.jpg') center 54%/cover no-repeat!important;}
body.court-waterbury-jd .hero-int{background:linear-gradient(90deg,rgba(9,30,51,.94),rgba(17,45,75,.76)),url('courthouse-waterbury-ga4.jpg') center 50%/cover no-repeat!important;}

/* --- three-question cards ------------------------------------- */
/* .howwewin sets color:#fff for the dark section; .tq h3 had no
   colour of its own, so the card headings were rendering white on
   a near-white card. */
.howwewin .tq h3{color:var(--ink)}
.howwewin .tq .tq-label{
  margin-left:10px;
  padding-left:10px;
  border-left:1px solid rgba(17,45,75,.22);
  color:var(--slate);
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
@media(max-width:600px){
  .howwewin .tq .tq-label{display:block;margin:6px 0 0;padding:0;border-left:0}
}
