/* Page-local orientation layout; shared site navigation is unchanged. */
.sh-page { --sh-teal:#2d5a5a; --sh-muted:#525e5c; --sh-paper:#f2f4f3; }
.sh-wrap { width:min(100% - 3rem, 70rem); margin-inline:auto; }
.sh-page [id] { scroll-margin-top:7.5rem; }
.sh-page a { color:var(--sh-teal); text-decoration:underline; text-underline-offset:.2em; }
.sh-page a:hover { color:#191919; }
.sh-page a:focus-visible,.sh-page summary:focus-visible { outline:3px solid #9a681d; outline-offset:5px; }
.sh-page p,.sh-page li { font-size:1.0625rem; line-height:1.75; }
.sh-page h1,.sh-page h2,.sh-page h3 { font-family:'Fraunces','Noto Serif',Georgia,serif; font-weight:500; color:#233e3b; line-height:1.17; }
.sh-page h2 { font-size:clamp(1.75rem,3.2vw,2.4rem); }
.sh-page h3 { font-size:1.3rem; }
.sh-page .sh-eyebrow { font:600 .7rem/1.6 'Inter',sans-serif; letter-spacing:.15em; text-transform:uppercase; color:var(--sh-muted); margin:0 0 1rem; }
.sh-breadcrumb { background:var(--sh-paper); padding:1rem 0; font:500 .75rem/1.6 'Inter',sans-serif; }
.sh-breadcrumb a { text-decoration:none; }
.sh-hero { padding:clamp(2.5rem,6vw,5rem) 0 2rem; }
.sh-hero-grid { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); gap:3rem; align-items:center; }
.sh-hero h1 { font-size:clamp(2.7rem,5.7vw,4.6rem); letter-spacing:-.035em; margin:0 0 1.4rem; }
.sh-intro { max-width:38rem; margin:0 0 1rem; }
.sh-page .sh-jump { display:inline-flex; gap:.8rem; align-items:center; padding:.85rem 1.1rem; margin-top:.4rem; background:var(--sh-teal); color:#fff; border-radius:.375rem; text-decoration:none; font:600 .85rem/1.5 'Inter',sans-serif; }
.sh-page .sh-jump:hover { background:#234744; }
.sh-definitions { background:#e8efeb; padding:1.6rem 1.8rem; border-radius:.375rem; }
.sh-definitions dl { margin:0; }
.sh-definitions dt { font:600 .95rem/1.5 'Inter',sans-serif; color:#244b46; }
.sh-definitions dd { margin:.3rem 0 1.1rem; font-size:1rem; line-height:1.6; }
.sh-definitions dd:last-child { margin-bottom:0; }
.sh-meta { display:flex; flex-wrap:wrap; gap:.6rem 1.5rem; margin:2rem 0 .75rem; font:.75rem/1.6 'Inter',sans-serif; color:var(--sh-muted); }
.sh-page .sh-correction { font-size:.85rem; line-height:1.6; color:var(--sh-muted); max-width:58rem; margin:0; }
.sh-picker { padding:2rem 0 3.5rem; }
.sh-picker h2 { margin:0 0 1.5rem; }
.sh-choices { list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.sh-choice { display:flex; flex-direction:column; height:100%; min-height:10.5rem; gap:.6rem; padding:1.4rem; background:var(--sh-paper); border-radius:.375rem; transition:background-color .2s; }
.sh-page .sh-choice { text-decoration:none; }
.sh-choice:hover { background:#e5ece7; }
.sh-choice strong { font:500 1.35rem/1.25 'Fraunces',Georgia,serif; }
.sh-choice span { font-size:.95rem; line-height:1.5; color:var(--sh-muted); }
.sh-choice .sh-go { margin-top:auto; font:600 .75rem/1.5 'Inter',sans-serif; color:var(--sh-teal); }
.sh-page .sh-scope { font-size:.85rem; line-height:1.6; color:var(--sh-muted); margin:1rem 0 0; }
.sh-route { padding:2.7rem 0; }
.sh-route:nth-child(2n) { background:var(--sh-paper); }
.sh-route-grid { display:grid; grid-template-columns:16rem minmax(0,1fr); gap:3rem; }
.sh-route h2 { margin:0; }
.sh-route .sh-eyebrow { margin-bottom:.7rem; }
.sh-copy { max-width:46rem; }
.sh-copy p { margin:0 0 1rem; }
.sh-first { background:#fff; padding:1.2rem 1.4rem; border-radius:.375rem; margin-bottom:1.25rem; }
.sh-route:nth-child(2n+1) .sh-first { background:var(--sh-paper); }
.sh-page .sh-first-label { display:block; font:600 .7rem/1.5 'Inter',sans-serif; text-transform:uppercase; letter-spacing:.1em; color:var(--sh-muted); margin-bottom:.4rem; }
.sh-first > a { font-size:1.16rem; font-weight:600; }
.sh-first p { margin:.5rem 0 0; font-size:1rem; }
.sh-more { margin-top:1.2rem; }
.sh-more summary { cursor:pointer; color:var(--sh-teal); font:600 .9rem/1.6 'Inter',sans-serif; padding:.65rem 0; }
.sh-more ul,.sh-special { padding-left:1.25rem; margin:.7rem 0 0; }
.sh-more li,.sh-special li { padding-left:.25rem; margin:0 0 .8rem; font-size:1rem; }
.sh-page .sh-watch { font-size:1rem; }
.sh-support { padding:3rem 0 1rem; }
.sh-support-grid { display:grid; grid-template-columns:1fr 1fr; gap:2rem; background:#e8efeb; padding:2rem; border-radius:.375rem; }
.sh-support h2 { margin:0 0 1rem; }
.sh-support p { margin:0 0 1rem; }
.sh-support p:last-child { margin-bottom:0; }
.sh-sources { max-width:48rem; padding:2rem 0 4rem; }
.sh-sources h2 { font-size:1.5rem; }
.sh-sources p,.sh-sources li { font-size:.92rem; }
.sh-sources ul { padding-left:1.25rem; }
.sh-history { margin-top:2rem; }
.sh-history summary { font:500 1.3rem/1.5 'Fraunces',Georgia,serif; cursor:pointer; }
.sh-history p { margin:1rem 0; }
@media (max-width:900px) { .sh-hero-grid { gap:2rem; } .sh-route-grid { grid-template-columns:12rem minmax(0,1fr); gap:2rem; } }
@media (max-width:700px) { .sh-hero-grid,.sh-route-grid,.sh-support-grid { grid-template-columns:1fr; } .sh-hero-grid { gap:1.5rem; } .sh-definitions { padding:1.2rem; } .sh-choices { grid-template-columns:repeat(2,minmax(0,1fr)); } .sh-route-grid { gap:1.2rem; } .sh-route { padding:2.2rem 0; } .sh-support-grid { padding:1.4rem; gap:1.5rem; } .sh-picker { padding-top:1.5rem; } }
@media (max-width:420px) { .sh-wrap { width:calc(100% - 2rem); } .sh-choices { grid-template-columns:1fr; gap:.75rem; } .sh-choice { min-height:0; padding:1.1rem 1.2rem; } .sh-choice .sh-go { margin-top:.3rem; } .sh-page p,.sh-page li { font-size:1rem; } .sh-first { padding:1rem; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto!important; } .sh-choice { transition:none; } }
