.jh-announce{background: #030303;
  color: #ffffff;
  text-align: center;
  padding: 9px 16px;
  font-size: 12px;
  letter-spacing: .08em;
  text-transform: uppercase;}
.jh-announce__text{color: #ffffff;}
.jh-header{position: sticky;
  top: 0;
  z-index: 9999;
  background: #ffffff;
  border-bottom: 1px solid rgba(3,3,3,.12);}
.jh-header__bar{display: flex;
  align-items: center;
  gap: 28px;
  max-width: 1232px;
  margin: 0 auto;
  padding: 14px 24px;}
.jh-header__logo{display: block; flex: 0 0 auto; line-height: 0;}
.jh-header__logo img{display: block; width: 118px; height: auto;}
.jh-nav{display: flex; flex-wrap: wrap; gap: 20px;}
.jh-nav__link{color: #030303;
  text-decoration: none;
  font-size: 14px;
  letter-spacing: .01em;}
.jh-nav__link:hover{text-decoration: underline;}
.jh-footer{background: #ffffff;
  color: #030303;
  border-top: 1px solid rgba(3,3,3,.12);
  margin-top: 64px;}
.jh-foot__inner{display: flex;
  flex-wrap: wrap;
  gap: 48px;
  max-width: 1232px;
  margin: 0 auto;
  padding: 56px 24px 32px;}
.jh-foot__brand{flex: 1 1 260px; min-width: 220px;}
.jh-foot__logo{display: block; width: 150px; height: auto; margin-bottom: 14px;}
.jh-foot__mission{color: rgba(3,3,3,.72); font-size: 14px; line-height: 1.5; max-width: 300px;}
.jh-foot__cols{display: flex; flex-wrap: wrap; gap: 48px; flex: 2 1 520px;}
.jh-foot__col{min-width: 130px;}
.jh-foot__head{font-size: 11px; letter-spacing: .12em; text-transform: uppercase;
  color: #030303; font-weight: 600; margin-bottom: 12px;}
.jh-foot__list{list-style: none; margin: 0; padding: 0;}
.jh-foot__list li{margin-bottom: 8px;}
.jh-foot__link, .jh-foot__legal-link{color: rgba(3,3,3,.78);
  text-decoration: none;
  font-size: 14px;}
.jh-foot__link:hover, .jh-foot__legal-link:hover{color: #030303; text-decoration: underline;}
.jh-foot__legal{display: flex; flex-wrap: wrap; gap: 18px; justify-content: space-between;
  max-width: 1232px; margin: 0 auto;
  padding: 18px 24px 40px;
  border-top: 1px solid rgba(3,3,3,.1);}
.jh-foot__copy{color: rgba(3,3,3,.6); font-size: 13px;}
.jh-foot__legal-links{display: flex; flex-wrap: wrap; gap: 18px;}
.jh-card-was.jh-card-was{text-decoration: line-through;
  
  color: rgba(0, 0, 0, 0.56);        
  margin-right: 0.45em;
  font-weight: 400;}
@media (max-width: 760px) { .jh-nav { display: none; } .jh-header__bar { padding: 12px 16px; justify-content: center; } .jh-foot__cols { grid-template-columns: 1fr 1fr; gap: 20px; } .jh-foot__inner { flex-direction: column; gap: 24px; } }
/* review wall — paper cards, hairline rules (Kalp #4: reviews) */
.jh-rv { padding: 48px 0; } .jh-rv__inner { max-width: 1232px; margin: 0 auto; padding: 0 24px; } .jh-rv__heading { font-size: 28px; font-weight: 600; margin: 0 0 6px; color: #030303; } .jh-rv__agg { margin: 0 0 24px; color: rgba(3,3,3,.72); }
.jh-rv__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; } .jh-rv__card { border: 1px solid #030303; background: #fff; padding: 18px; display: flex; flex-direction: column; gap: 10px; }
.jh-rv__head { display: flex; justify-content: space-between; align-items: center; } .jh-rv__stars { color: #030303; display: inline-flex; gap: 2px; } .jh-rv__verified { font-size: 11px; letter-spacing: .06em; text-transform: uppercase; color: rgba(3,3,3,.6); }
.jh-rv__body { margin: 0; font-size: 15px; line-height: 1.55; color: #030303; } .jh-rv__who { margin: auto 0 0; font-size: 13px; color: rgba(3,3,3,.6); }
@media (max-width: 960px) { .jh-rv__grid { grid-template-columns: repeat(2, 1fr); } } @media (max-width: 560px) { .jh-rv__grid { grid-template-columns: 1fr; } .jh-rv__heading { font-size: 22px; } }
/* Judge.me — the client's own app, re-skinned to ink (Kalp 2026-09-10) */
.jh-jdgm{padding:48px 0}.jh-jdgm__inner{max-width:1232px;margin:0 auto;padding:0 24px}
.jh-jdgm__heading{font-size:28px;font-weight:600;margin:0 0 18px;color:#030303}
.jdgm-widget,.jdgm-widget *{--jdgm-primary-color:#030303;--jdgm-secondary-color:#030303;--jdgm-star-color:#030303}
.jdgm-widget .jdgm-star{color:#030303}
@media (max-width:560px){.jh-jdgm__heading{font-size:22px}}
/* Judge.me SEO fallback blocks (ai summary, rating distribution) are unstyled by their CSS and get replaced
   by their JS where it runs; keep the styled review list only (Kalp 2026-09-10 #6) */
.jdgm-ssr-ai-content,.jdgm-ssr-ai-summary,.jdgm-ssr-rating-distribution{display:none}
/* footer stand-in on phones: the brand block inherited flex-basis 260px in a COLUMN, which reads as a 170px hole
   between the wordmark and the link columns; their real footer (theme.liquid on publish) stacks tight */
@media (max-width: 760px) { .jh-foot__brand { flex: 0 0 auto; } .jh-foot__inner { gap: 20px; } }
