/* Brand expansion: retain the existing black / ivory / gold palette and type. */
[hidden]{display:none!important}
.renewal-home h1{font-size:clamp(2rem,4.25vw,4rem)}.renewal-home .home-primary-links{margin-top:22px}
.renewal-title-chunk{white-space:nowrap}.renewal-case-jumps{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0}.renewal-case-jumps a{min-height:44px;padding:10px 0;color:var(--gold2);text-decoration:underline;text-underline-offset:5px}
.light .btn{color:#543c1c;border-color:#8a6b3e}.light .btn.fill{background:var(--gold);color:var(--ink)}.light .price-table th{color:#73542e}
.renewal-home .home-intro-lead{font-size:1.06rem;max-width:780px}
.renewal-concerns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:30px}
.renewal-concerns a{display:grid;grid-template-columns:1fr auto;align-items:center;gap:6px 18px;border:1px solid var(--line);padding:24px;min-height:110px}
.renewal-concerns strong{font-family:var(--serif);font-size:1.3rem}.renewal-concerns span:first-of-type{grid-column:1;color:#d7d0c5}.renewal-concerns span:last-child{grid-column:2;grid-row:1/3;color:var(--gold2)}
.renewal-case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:34px}
.renewal-case-card{min-width:0;border:1px solid var(--line);background:var(--ink2);display:flex;flex-direction:column}
.renewal-case-card>img{width:100%;height:auto;aspect-ratio:4/5;object-fit:contain;background:#11110f}
.renewal-case-copy{padding:26px;display:flex;flex:1;flex-direction:column}.renewal-case-copy h3{font-family:var(--serif);font-size:1.5rem;line-height:1.5;margin:8px 0 14px}.renewal-case-copy p{font-size:1rem;margin:6px 0 20px}
.renewal-case-copy .case-tags{color:var(--gold2);font-size:.94rem}.case-reason-link{display:block;margin-top:auto;padding:14px 0 2px;min-height:48px;border-top:1px solid var(--line);font-weight:700;color:var(--gold2)}
.renewal-process{list-style:none;padding:0;counter-reset:steps;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:40px}.renewal-process li{counter-increment:steps;border-top:1px solid #b3a48f;padding-top:22px}.renewal-process li:before{content:'0' counter(steps);color:#73542e}.renewal-process h3{font-family:var(--serif);font-size:1.35rem;line-height:1.5}
.renewal-related{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.renewal-related .btn{white-space:normal;text-align:left}
.case-filter-buttons{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.case-filter-buttons button{cursor:pointer;background:transparent;border:1px solid var(--gold);color:var(--paper);padding:12px 20px;min-height:48px}
.case-filter-buttons button[aria-pressed="true"]{background:var(--gold);color:var(--ink);font-weight:700}.case-filter-buttons button[aria-pressed="true"]:before{content:'✓ ';}
#case-count{color:var(--gold2)}.case-empty{padding:24px;border:1px solid var(--line)}.renewal-technical-note{border:1px solid #b3a48f;padding:18px;margin-top:20px}.renewal-technical-note summary{cursor:pointer;min-height:44px}
.gg-renewal-links{max-width:760px;margin:0 auto;padding:24px 20px 50px;display:grid;gap:14px}.gg-renewal-links .text-contact{color:var(--gold2);font-size:1rem}.gg-renewal-result{max-width:760px;margin:28px auto;color:#d7d0c5}
.nav.open{max-height:calc(100svh - 90px);overflow:auto}.footer p a{text-decoration:underline;text-underline-offset:4px}
@media(max-width:640px){
 .renewal-home h1{font-size:1.9rem;line-height:1.35}.renewal-home .home-intro-lead{font-size:1rem;line-height:1.7}.renewal-home .home-primary-links{margin-top:18px}
 .renewal-cases-hero{padding:44px 0 34px}.renewal-cases-hero .display{font-size:2.15rem;line-height:1.3}.renewal-cases-hero .lead{font-size:1rem}.renewal-title-chunk{max-width:100%;white-space:normal;display:inline-block}
 .renewal-concerns,.renewal-case-grid,.renewal-process{grid-template-columns:minmax(0,1fr)}
 .renewal-concerns a{padding:20px;min-height:108px}.renewal-concerns span:first-of-type{font-size:1rem}.renewal-case-copy{padding:22px}.renewal-case-copy h3{font-size:1.4rem}
 .renewal-related{display:grid}.renewal-related .btn{width:100%;justify-content:flex-start}.renewal-case-consultation .actions{display:grid}.renewal-case-consultation .btn{width:100%;text-align:center}
 .case-filter-buttons{gap:8px}.case-filter-buttons button{padding:12px 14px}.renewal-education-summary{font-size:1rem}.gg-renewal-result{padding:0 14px}
}
/* The guide is a separate page from case details: keep its proof photos in natural ratio. */
@media(max-width:980px){
 .going-gray-guide .comparison{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .going-gray-guide .comparison figure{width:min(100%,270px);margin:0 auto}
 .going-gray-guide .comparison img{width:100%;height:auto;min-height:0;aspect-ratio:auto;object-fit:contain;transform:none}
}
/* Only measured problematic GG detail photos at the tablet breakpoint; phone rules stay as published. */
@media(min-width:641px) and (max-width:980px){
 .customer-case main img[data-gg-tablet-fit]{width:auto;max-width:100%;height:auto;min-height:0;max-height:360px;aspect-ratio:auto;object-fit:contain;margin-inline:auto}
}
/* Mobile case photos: override intrinsic HTML heights, keep the complete photo visible. */
@media(max-width:640px){
 .customer-case main img{width:100%;height:auto;min-height:0;max-height:min(55svh,360px);object-fit:contain}
 .customer-case main img.photo{height:auto;min-height:0;aspect-ratio:auto}
 .customer-case .comparison,.customer-case .year-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .customer-case .comparison img,.customer-case .year-photo-grid img{height:auto;max-height:min(34svh,240px);object-fit:contain}
 .customer-case .year-photo-grid figcaption{flex-wrap:wrap;gap:4px}
 .renewal-case-card>img{height:clamp(200px,38svh,300px);aspect-ratio:auto;object-fit:contain}
}
