/* Shared editorial presentation. Natural photo proportions preserve the full action. */
.page-guides,:is(.page-c01,.page-c03,.page-c04) { background:var(--cream,#f5f3ed); }
:is(.page-c01,.page-c03,.page-c04) .guide-hero { display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);gap:clamp(28px,5vw,80px);max-width:none;align-items:center;padding:clamp(32px,6vw,88px) 7%; }
.guide-heading { max-width:780px; }
:is(.page-c01,.page-c03,.page-c04) .guide-heading h1 { font-size:clamp(2.5rem,4.7vw,4.8rem);line-height:1.07;letter-spacing:-.045em; }
.guide-heading .intro { max-width:38em; }
.guide-hero-photo { margin:0;max-width:440px;justify-self:end; }
.guide-hero-photo img,.guide-card-photo img { display:block;width:100%;height:auto;border-radius:4px; }
.guide-reading { max-width:760px;margin:auto;padding:32px 24px 88px;font-size:1.075rem;line-height:1.8;color:#27322f;overflow-wrap:break-word; }
:is(.page-c01,.page-c03,.page-c04) .guide-reading h2 { font-size:clamp(1.8rem,3vw,2.5rem);line-height:1.2;letter-spacing:-.03em;margin:2.1em 0 .75em;color:#183a31; }
.guide-reading h3 { font-size:1.35rem;line-height:1.35;margin:1.7em 0 .7em;color:#183a31; }
.guide-reading p { margin:0 0 1.15em; }
.guide-reading ul { padding-left:1.5em;margin:0 0 1.5em; }
.guide-reading li { padding-left:.25em; }
.guide-reading li p { margin:0 0 .4em; }
.guide-reading .guide-note { border-left:4px solid #9dbb32;background:#e8eddf;padding:20px 24px;margin:2em 0;font-size:.95rem;color:#26372d; }
.guide-back { margin-top:32px; }
.guide-reading .page-actions { margin-top:32px; }
.guide-hub-hero { min-height:0;padding-bottom:40px; }
.guide-card-grid { display:grid;gap:32px; }
.guide-card { display:grid;grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);gap:clamp(24px,4vw,64px);background:#fff;align-items:center;padding:clamp(20px,3vw,40px);max-width:1100px; }
.guide-card-photo { max-width:340px; }
.guide-card-copy h3 { font-size:clamp(1.65rem,3vw,2.5rem);line-height:1.2;margin:.5em 0;letter-spacing:-.025em; }
.guide-card-copy p { max-width:40em; }
.guide-card .text-link { margin-top:20px; }
:is(.page-c01,.page-c03,.page-c04) .breadcrumbs { flex-wrap:wrap; }
@media(max-width:700px) {
 :is(.page-c01,.page-c03,.page-c04) .guide-hero { grid-template-columns:1fr;gap:28px;padding:32px 7%; }
 :is(.page-c01,.page-c03,.page-c04) .guide-heading h1 { font-size:clamp(2.2rem,9vw,3.6rem); }
 .guide-hero-photo { width:100%;max-width:440px;justify-self:center; }
 .guide-reading { padding:20px 7% 64px;font-size:1rem; }
 .guide-card { grid-template-columns:1fr;gap:24px; }
 .guide-card-photo { max-width:100%; }
 .guide-reading .page-actions { align-items:flex-start; }
}

/* C04 game summaries and activity blocks; preserve earlier article layouts. */
.page-c04 .guide-heading h1 { font-size:clamp(2.35rem,4.2vw,4.3rem);overflow-wrap:break-word; }
.page-c04 .game-overview { margin:2.5rem 0; }
.page-c04 .game-overview-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px; }
.page-c04 .game-jump { display:flex;flex-direction:column;gap:10px;padding:20px;background:#fff;border:1px solid #c3cbbf;border-radius:4px;color:#27322f;text-decoration:none;line-height:1.4;min-width:0; }
.page-c04 .game-jump:hover { border-color:#496334;background:#f1f4e9; }
.page-c04 .game-jump strong { font-size:1.15rem; }
.page-c04 .game-jump > span:not(.game-number) { font-size:.95rem; }
.page-c04 .game-number { display:grid;place-items:center;background:#c9df24;color:#27322f;width:36px;height:36px;font-weight:700;border-radius:50%; }
.page-c04 .game-time { margin-top:auto;font-weight:600; }
.page-c04 .tennis-game { background:#fff;border-top:4px solid #a7bf39;border-radius:4px;padding:clamp(20px,3vw,32px);margin:2.5rem 0;scroll-margin-top:180px; }
.page-c04 .tennis-game h2 { margin-top:0; }
.page-c04 .game-meta { background:#f5f3ed;padding:16px;border-radius:3px;font-size:.95rem; }
.page-c04 ol { padding-left:1.6em;margin:0 0 1.5em; }
.page-c04 ol li { padding-left:.35em;margin-bottom:.7em; }
.page-c04 ol li::marker { font-weight:700;color:#183a31; }
.page-c04 .game-safety { border-left:3px solid #496334;padding-left:16px;font-size:.95rem; }
.page-c04 .page-actions { gap:20px;align-items:center;margin-bottom:24px; }
.page-c04 .page-actions p { margin:0; }
@media(max-width:700px) {
 .page-c04 .game-overview-grid { grid-template-columns:1fr; }
 .page-c04 .game-jump { gap:8px; }
 .page-c04 .guide-heading h1 { font-size:clamp(2.1rem,8vw,3.6rem); }
}
