/* ==========================================================================
   Cathy Bruce - shared-refinements.css (LOCAL DESIGN CANDIDATE, not deployed)
   Loads AFTER the byte-frozen upgrade-2026.css (sha256 a810e848...0dad0). It only adds
   what the frozen layer does not cover for the non-home routes; it does not restate it.
   Every rule is scoped to body.cb-upgrade2026, so /lp and /book-online (no class) are
   untouched. Hero, article, aside and FAQ rules add :not(.home), so the reviewed home
   candidate does not change. Palette is the existing white / green / orange; no new
   colors, no new shadows, no dark panels, no new assets or fonts.
   ========================================================================== */

/* ---- 1. one heading face on every route: inherited --cb-head is Georgia, not Oswald ---- */
body.cb-upgrade2026{
  --cb-head:Georgia,"Times New Roman",Times,serif;
  --wp--preset--font-family--heading:Georgia,"Times New Roman",Times,serif;
  --u-h1:clamp(2.125rem,1.4rem + 2.4vw,3.25rem);   /* 34px mobile .. 52px desktop */
}
body.cb-upgrade2026 :is(h1,h2,h3,h4,.cb-h2){font-family:var(--cb-head);font-weight:400;text-transform:none}

/* ---- 2. page hero: legible H1 on white, crumbs first, no photo overlap ---- */
body.cb-upgrade2026:not(.home) .cb-crumbs{grid-area:crumbs}
body.cb-upgrade2026:not(.home) .cb-hero .cb-crumbs ol{margin:0 0 1.1rem;padding:0;background:none;font-size:.88rem;line-height:1.5;color:var(--u-muted)}
body.cb-upgrade2026:not(.home) .cb-hero .cb-crumbs a{color:var(--u-green-dark);text-decoration:underline;text-underline-offset:.2em}
body.cb-upgrade2026:not(.home) .cb-hero__kicker{grid-area:kicker}
body.cb-upgrade2026:not(.home) .cb-hero__title--page{
  grid-area:title;font-size:var(--u-h1);line-height:1.12;letter-spacing:-.015em;color:var(--u-ink);
  text-wrap:balance;overflow-wrap:break-word;max-width:22ch;margin:0}
body.cb-upgrade2026:not(.home) .cb-hero__brokerage{grid-area:brokerage;font-size:max(1.2rem,calc(var(--u-h1) * .5));margin:.8rem 0 0}
body.cb-upgrade2026:not(.home) .cb-hero__tag{grid-area:tag;margin:1.1rem 0 0;font-size:1.08rem;color:#33393d}
body.cb-upgrade2026:not(.home) .cb-hero .cb-btns{grid-area:actions}
@media (min-width:960px){
  body.cb-upgrade2026:not(.home) .cb-hero__inner{
    grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);
    grid-template-areas:"crumbs crumbs" "kicker kicker" "title tag" "brokerage actions";
    column-gap:clamp(2.5rem,5vw,5rem)}
  body.cb-upgrade2026:not(.home) .cb-hero__tag{align-self:end;margin:0 0 .35rem}
  body.cb-upgrade2026:not(.home) .cb-hero .cb-btns{align-self:start;margin-top:1.25rem}
}
@media (max-width:599px){
  body.cb-upgrade2026:not(.home) .cb-hero__title--page{max-width:none}
}

/* ---- 3. article: readable measure and hierarchy ---- */
body.cb-upgrade2026:not(.home) .cb-page-grid{padding-block:clamp(2.5rem,5vw,4.5rem)}
body.cb-upgrade2026:not(.home) .cb-prose{max-width:46rem}
body.cb-upgrade2026:not(.home) .cb-prose p,
body.cb-upgrade2026:not(.home) .cb-prose li{font-size:1.0625rem;line-height:1.75;color:#2f3539}
body.cb-upgrade2026:not(.home) .cb-prose h2{font-size:clamp(1.55rem,1.2rem + 1.1vw,2.05rem);line-height:1.2;letter-spacing:-.01em;margin:2.75rem 0 .85rem}
body.cb-upgrade2026:not(.home) .cb-prose h3{font-size:1.35rem;line-height:1.3;letter-spacing:0;margin:2rem 0 .6rem}
body.cb-upgrade2026:not(.home) .cb-prose .entry-content>:first-child,
body.cb-upgrade2026:not(.home) .cb-prose>:first-child{margin-top:0}
body.cb-upgrade2026:not(.home) .cb-prose .entry-content>p:first-child{font-size:1.18rem;line-height:1.7;color:var(--u-ink)}
body.cb-upgrade2026:not(.home) .cb-prose ul,
body.cb-upgrade2026:not(.home) .cb-prose ol{padding-left:1.35rem}
body.cb-upgrade2026:not(.home) .cb-prose li{margin:.45rem 0}
body.cb-upgrade2026:not(.home) .cb-prose li::marker{color:var(--u-green)}
body.cb-upgrade2026:not(.home) .cb-prose p a,
body.cb-upgrade2026:not(.home) .cb-prose li a{text-decoration-thickness:1px;text-underline-offset:.2em}
body.cb-upgrade2026:not(.home) .cb-prose .cb-sources{font-size:.92rem;line-height:1.6;margin-top:3rem}
body.cb-upgrade2026:not(.home) .cb-prose .cb-sources li{font-size:.92rem;line-height:1.6;margin:.3rem 0}
body.cb-upgrade2026:not(.home) .cb-prose .cb-note{background:var(--u-mist);border-radius:0;box-shadow:none;border-left:3px solid var(--u-orange)}
body.cb-upgrade2026:not(.home) .cb-article-meta{font-size:.9rem;color:var(--u-muted);margin:0 0 1.5rem}
body.cb-upgrade2026:not(.home) .cb-editorial-card{margin-block:0;padding:1.75rem 0 2rem}
body.cb-upgrade2026:not(.home) .cb-editorial-card h2{font-size:clamp(1.45rem,1.15rem + 1vw,1.85rem);letter-spacing:-.01em}
body.cb-upgrade2026:not(.home) .cb-editorial-card h2 a{color:var(--u-ink)}
body.cb-upgrade2026:not(.home) .cb-editorial-card h2 a:hover{color:var(--u-green-dark)}

/* ---- 4. FAQ: hairline rows, same pattern as the home FAQ ---- */
body.cb-upgrade2026:not(.home) .cb-prose details{margin:0;padding:0;background:none;border:0;border-top:1px solid var(--u-line);border-radius:0}
body.cb-upgrade2026:not(.home) .cb-prose details:not(:has(+ details)){border-bottom:1px solid var(--u-line)}
body.cb-upgrade2026:not(.home) .cb-prose summary{position:relative;list-style:none;padding:1.05rem 2.5rem 1.05rem 0;min-height:48px;font-family:var(--u-sans);font-size:1.02rem;font-weight:700;line-height:1.5;color:var(--u-ink)}
body.cb-upgrade2026:not(.home) .cb-prose summary::-webkit-details-marker{display:none}
body.cb-upgrade2026:not(.home) .cb-prose summary::after{content:"";position:absolute;right:.2rem;top:1.35rem;width:.55rem;height:.55rem;border:solid var(--u-green-dark);border-width:0 2px 2px 0;transform:rotate(45deg);transition:transform .15s}
body.cb-upgrade2026:not(.home) .cb-prose details[open]>summary::after{top:1.6rem;transform:rotate(-135deg)}
body.cb-upgrade2026:not(.home) .cb-prose details>p{margin:0;padding:0 2.5rem 1.2rem 0;max-width:62ch}

/* ---- 5. forms: calmer card, clear hierarchy ---- */
body.cb-upgrade2026:not(.home) .cb-prose .cb-form{margin:2.5rem 0 0;max-width:none}
body.cb-upgrade2026:not(.home) .cb-prose .cb-form h2{margin-top:0}
body.cb-upgrade2026:not(.home) .cb-form__intro{font-size:1rem;line-height:1.65;margin:0 0 1.25rem}
body.cb-upgrade2026:not(.home) .cb-form__grid{gap:.35rem 1.25rem}
body.cb-upgrade2026:not(.home) .cb-form__grid p{margin:.4rem 0}
body.cb-upgrade2026:not(.home) .cb-form label{display:block;margin-bottom:.3rem;color:var(--u-ink)}
body.cb-upgrade2026:not(.home) .cb-form__consent{margin-top:.5rem}
body.cb-upgrade2026:not(.home) .cb-form__consent input[type=checkbox]{margin-top:.25rem}
@media (max-width:519px){
  body.cb-upgrade2026:not(.home) .cb-form__grid{grid-template-columns:minmax(0,1fr)}
  body.cb-upgrade2026:not(.home) .wp-site-blocks .cb-form button.cb-btn{width:100%;justify-content:center}
}

/* ---- 6. aside, neighborhood cards and testimonials: flat, one border, no stacked shadow ---- */
body.cb-upgrade2026:not(.home) .cb-card{border-radius:4px;box-shadow:none;border:1px solid var(--u-line)}
body.cb-upgrade2026:not(.home) .cb-agent-card__role{font-size:1rem;line-height:1.5;color:#3a4044}
body.cb-upgrade2026:not(.home) .cb-agent-card__lic{font-size:.92rem;color:var(--u-muted)}
body.cb-upgrade2026:not(.home) .cb-agent-card__name{font-size:1.55rem}
body.cb-upgrade2026:not(.home) .cb-quicklinks__title{font-size:1.3rem;font-weight:400}
body.cb-upgrade2026:not(.home) .cb-quicklinks a{font-size:.97rem;line-height:1.45;color:var(--u-green-dark)}
body.cb-upgrade2026:not(.home) .cb-quicklinks a:hover{text-decoration:underline}
body.cb-upgrade2026:not(.home) .cb-hood{border-radius:4px}
body.cb-upgrade2026:not(.home) .cb-hood:hover,
body.cb-upgrade2026:not(.home) .cb-hood:focus-visible{box-shadow:none;transform:none;border-color:var(--u-green)}
body.cb-upgrade2026:not(.home) .cb-hood__title{font-size:1.25rem;line-height:1.3;letter-spacing:0}
body.cb-upgrade2026:not(.home) .cb-hood__body{font-size:.97rem;color:#3a4044}
body.cb-upgrade2026:not(.home) .cb-hood__more{color:var(--u-green-dark)}
body.cb-upgrade2026:not(.home) .cb-testi--full{background:none;padding-block:0}
body.cb-upgrade2026:not(.home) .cb-testi--full .cb-testi__grid{align-items:start;margin:1.5rem 0 0}
body.cb-upgrade2026:not(.home) .cb-quote{border-radius:0;box-shadow:none}
body.cb-upgrade2026:not(.home) .cb-quote figcaption{flex-wrap:wrap;gap:.25rem 1rem}
body.cb-upgrade2026:not(.home) .cb-about-photo img{height:auto;max-width:100%}
@media (max-width:599px){
  body.cb-upgrade2026:not(.home) .cb-about-photo{float:none!important;max-width:100%!important;margin:0 0 1.25rem!important}
}

/* ---- 7. footer legibility on the inner routes (brokerage line stays full size; home footer is already reviewed) ---- */
body.cb-upgrade2026:not(.home) .cb-footer__id p:not(.cb-footer__name){font-size:.97rem;line-height:1.6;color:#3a4044}
body.cb-upgrade2026:not(.home) .cb-footer__legal{font-size:.9rem;line-height:1.65}
body.cb-upgrade2026:not(.home) .cb-footer a{text-underline-offset:.2em}

/* ---- 8. keyboard and motion ---- */
body.cb-upgrade2026 .cb-prose summary:focus-visible,
body.cb-upgrade2026 .cb-hood:focus-visible,
body.cb-upgrade2026 .cb-quicklinks a:focus-visible{outline:3px solid var(--u-green-dark);outline-offset:3px}
@media (prefers-reduced-motion:reduce){
  body.cb-upgrade2026 .cb-prose summary::after{transition:none}
}
