/* Symmetry introduction: preserve the approved illustration and reading layout. */
.symmetry-page { --copper:#ac1e16; --rule:#ddd8cf; --muted:#5c5c59; color:var(--ink); font-family:Georgia,"Times New Roman",serif; }
.symmetry-page a { color:var(--copper); text-decoration-color:currentColor; text-underline-offset:.2em; text-decoration-thickness:1px; }
.symmetry-page a:hover { text-decoration-thickness:2px; }
.symmetry-page a:focus-visible { outline:2px solid var(--copper); outline-offset:5px; }
.symmetry-page .skip { position:absolute; left:1rem; top:-5rem; z-index:3; padding:.8rem 1rem; background:var(--paper); }
.symmetry-page .skip:focus { top:1rem; }
.symmetry-page .masthead { max-width:1240px; margin:auto; padding:2.25rem 3.25rem 0; }
.symmetry-page .eyebrow { margin:0; font:600 .72rem/1.4 Arial,sans-serif; letter-spacing:.19em; text-transform:uppercase; color:var(--copper); }
.symmetry-page .hero { max-width:1240px; margin:0 auto; padding:1.5rem 3.25rem 4.25rem; display:grid; grid-template-columns:1.05fr 1fr; gap:2rem; align-items:center; }
.symmetry-page h1 { font-weight:400; font-size:clamp(3rem,6.2vw,5.3rem); line-height:1.02; letter-spacing:-.055em; margin:0 0 1.6rem; max-width:8em; text-wrap:balance; }
.symmetry-page .tagline { max-width:19em; font-size:clamp(1.3rem,2.15vw,1.75rem); line-height:1.45; margin:0; color:var(--copper); font-style:italic; }
.symmetry-page .hero img { width:auto; height:480px; max-width:100%; object-fit:contain; display:block; mix-blend-mode:multiply; }
.symmetry-page .hero figure { margin:0; display:flex; align-items:center; justify-content:center; }
.symmetry-page .read-link { display:inline-block; margin-top:2.25rem; font:500 .8rem/1.4 Arial,sans-serif; letter-spacing:.025em; }
.symmetry-page .reading { max-width:1240px; padding:0 3.25rem; margin:0 auto; display:grid; grid-template-columns:220px minmax(0,1fr); gap:5rem; border-top:1px solid var(--rule); }
.symmetry-page aside { padding-top:3rem; }
.symmetry-page .contents { position:sticky; top:2rem; }
.symmetry-page .contents h2 { font:600 .67rem/1.4 Arial,sans-serif; letter-spacing:.15em; text-transform:uppercase; color:var(--muted); margin:0 0 1.2rem; }
.symmetry-page .contents ol { margin:0; padding-left:1.3rem; }
.symmetry-page .contents li { color:var(--copper); padding-left:.15rem; margin-bottom:1rem; font:400 .8rem/1.55 Arial,sans-serif; }
.symmetry-page .contents li::marker { font-size:.68rem; }
.symmetry-page .contents a { color:var(--muted); text-decoration:none; }
.symmetry-page .contents a:hover { color:var(--copper); text-decoration:underline; }
.symmetry-page article { max-width:69ch; min-width:0; padding:2.7rem 0 3.75rem; font-size:1.17rem; line-height:1.78; }
.symmetry-page article section { margin:0 0 3.2rem; scroll-margin-top:2.5rem; }
.symmetry-page article section:last-child { margin-bottom:0; }
.symmetry-page article p { margin:0 0 1.1em; }
.symmetry-page article p:last-child { margin-bottom:0; }
.symmetry-page article h2 { font-size:1.8rem; line-height:1.25; font-weight:400; letter-spacing:-.025em; margin:0 0 1.15rem; text-wrap:balance; }
.symmetry-page #introduction { font-size:1.25rem; line-height:1.72; padding-bottom:2.5rem; border-bottom:1px solid var(--rule); }
.symmetry-page strong { font-weight:700; }
.symmetry-page footer { max-width:1136px; margin:0 auto; padding:1.5rem 0 2.75rem; border-top:1px solid var(--rule); display:flex; gap:2rem; justify-content:space-between; font:.75rem/1.7 Arial,sans-serif; color:var(--muted); }
.symmetry-page footer p { margin:0; }
.symmetry-page footer nav { display:flex; gap:1.5rem; }
@media (max-width:1000px) {
  .symmetry-page .reading { grid-template-columns:175px minmax(0,1fr); gap:2.5rem; }
  .symmetry-page footer { margin:0 3.25rem; }
  .symmetry-page article { font-size:1.1rem; }
}
@media (max-width:740px) {
  .symmetry-page .masthead { padding:1.6rem 1.5rem 0; }
  .symmetry-page .hero { padding:2.5rem 1.5rem 2rem; gap:1.5rem; grid-template-columns:1fr; }
  .symmetry-page h1 { font-size:clamp(3.25rem,11.8vw,5.3rem); max-width:9em; margin-bottom:1.25rem; }
  .symmetry-page .tagline { font-size:1.4rem; max-width:22em; }
  .symmetry-page .hero figure { width:min(100%,410px); margin:0 auto; }
  .symmetry-page .hero img { height:420px; }
  .symmetry-page .read-link { margin-top:1.4rem; }
  .symmetry-page .reading { display:block; padding:0 1.5rem; }
  .symmetry-page aside { display:none; }
  .symmetry-page article { padding:2rem 0 2.5rem; font-size:1.08rem; line-height:1.75; }
  .symmetry-page #introduction { font-size:1.14rem; padding-bottom:2rem; }
  .symmetry-page article h2 { font-size:1.65rem; }
  .symmetry-page article section { margin-bottom:2.6rem; }
  .symmetry-page footer { margin:0 1.5rem; padding:1.3rem 0 2rem; flex-direction:column; gap:.65rem; }
}
@media print {
  .symmetry-page .skip, .symmetry-page .read-link, .symmetry-page aside, .symmetry-page footer nav { display:none; }
  .symmetry-page .masthead { padding:0; }
  .symmetry-page .hero { padding:1rem 0 1.5rem; grid-template-columns:1.15fr .8fr; gap:1rem; }
  .symmetry-page h1 { font-size:34pt; }
  .symmetry-page .tagline { font-size:15pt; }
  .symmetry-page .hero img { height:210px; object-fit:contain; }
  .symmetry-page .reading { display:block; padding:0; }
  .symmetry-page article { max-width:none; padding:1.3rem 0; font-size:10.5pt; line-height:1.5; }
  .symmetry-page #introduction { font-size:11pt; padding-bottom:1rem; }
  .symmetry-page article section { margin-bottom:1.5rem; }
  .symmetry-page article h2 { font-size:15pt; break-after:avoid; }
  .symmetry-page p { orphans:3; widows:3; }
  .symmetry-page footer { margin:0; padding:1rem 0 0; }
  .symmetry-page a { color:inherit; }
}
.symmetry-page .contents { top:125px; }
.symmetry-page .hero .eyebrow { margin-bottom:1rem; font:600 .72rem/1.4 Arial,sans-serif; }
.symmetry-page .hero .eyebrow a { text-decoration:none; }
.symmetry-page .further-reading { padding-left:1.2em; }
.symmetry-page .further-reading li + li { margin-top:1em; }
