:root{--ink:#1d1a17;--ivory:#f3ead8;--paper:#fffaf0;--garnet:#7b2331;--teal:#164e52;--brass:#a47c3c;--muted:#6e6255;--line:#cdbb96;--shadow:0 18px 50px rgba(40,28,19,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:1rem;line-height:1.75;background-image:linear-gradient(rgba(255,255,255,.34),rgba(255,255,255,.34)),repeating-linear-gradient(90deg,transparent 0,transparent 3px,rgba(86,59,35,.025) 4px)}a{color:var(--teal);text-decoration-thickness:.08em;text-underline-offset:.18em}a:hover,a:focus-visible{color:var(--garnet)}img{display:block;max-width:100%;height:auto}.skip-link{position:absolute;left:1rem;top:-8rem;background:var(--ink);color:white;padding:.65rem 1rem;z-index:10}.skip-link:focus{top:1rem}.masthead{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1rem clamp(1rem,4vw,4rem);border-bottom:1px solid var(--brass);background:var(--paper)}.wordmark{display:flex;flex-direction:column;color:var(--ink);text-decoration:none;font-family:Baskerville,Georgia,"Times New Roman",serif;line-height:1;text-transform:uppercase;letter-spacing:.08em}.wordmark span{font-size:.72rem}.wordmark strong{font-size:1.55rem;letter-spacing:.16em;color:var(--garnet)}.nav-links{display:flex;justify-content:flex-end;gap:.45rem 1.15rem;flex-wrap:wrap}.nav-links a{color:var(--ink);font-size:.79rem;font-weight:750;letter-spacing:.07em;text-decoration:none;text-transform:uppercase}.nav-links a:hover,.nav-links a:focus-visible{color:var(--garnet)}main{width:min(100% - 2rem,74rem);margin:0 auto;padding:1.25rem 0 5rem}.proscenium-mark{color:var(--brass);margin:.5rem auto 0;max-width:62rem}.proscenium-mark svg{display:block;width:100%;height:auto;fill:none;stroke:currentColor;stroke-width:2}.page-head{max-width:58rem;margin:-.25rem auto 2.25rem;text-align:center;padding:0 1rem}.eyebrow,.section-kicker{margin:0 0 .6rem;color:var(--garnet);font-size:.74rem;font-weight:800;letter-spacing:.19em;text-transform:uppercase}.page-head h1{margin:0;font-family:Baskerville,Georgia,"Times New Roman",serif;font-size:clamp(2.45rem,7vw,5.4rem);font-weight:600;letter-spacing:-.03em;line-height:.97;text-wrap:balance}.page-head .dek{max-width:48rem;margin:1.25rem auto 0;color:var(--muted);font-family:Baskerville,Georgia,"Times New Roman",serif;font-size:clamp(1.12rem,2.3vw,1.45rem);line-height:1.45}.feature-image{max-width:66rem;margin:0 auto 3.75rem;background:var(--ink);box-shadow:var(--shadow);border:1px solid var(--brass);padding:.45rem}.feature-image img{width:100%;aspect-ratio:3/2;object-fit:cover}.feature-image figcaption{padding:.6rem .35rem .15rem;color:var(--ivory);font-size:.74rem;letter-spacing:.06em}.article{counter-reset:section;max-width:48rem;margin:0 auto}.article section{position:relative;padding:2.5rem 0 2rem;border-top:1px solid var(--line)}.article section:before{counter-increment:section;content:counter(section,decimal-leading-zero);position:absolute;left:-4.25rem;top:2.35rem;color:var(--brass);font-family:Baskerville,Georgia,"Times New Roman",serif;font-size:1.35rem}.article h2,.guide-index h2{margin:0 0 1rem;font-family:Baskerville,Georgia,"Times New Roman",serif;font-size:clamp(1.7rem,4vw,2.6rem);font-weight:600;line-height:1.08;text-wrap:balance}.article p{margin:.9rem 0}.article p:first-of-type:first-letter{float:left;margin:.08em .08em 0 0;color:var(--garnet);font-family:Baskerville,Georgia,"Times New Roman",serif;font-size:3.4rem;line-height:.78}.article.compact{max-width:42rem}.guide-index{max-width:68rem;margin:4.5rem auto 0;padding:3rem;border:1px solid var(--brass);background:var(--paper);box-shadow:var(--shadow)}.hub-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2.4rem}.hub-grid h3{margin:.5rem 0 1rem;color:var(--garnet);font-family:Baskerville,Georgia,"Times New Roman",serif;font-size:1.35rem}.hub-grid ul{list-style:none;margin:0;padding:0}.hub-grid li{padding:.85rem 0;border-top:1px solid var(--line)}.hub-grid a{display:block;color:var(--ink);font-family:Baskerville,Georgia,"Times New Roman",serif;font-size:1.08rem;font-weight:700}.hub-grid span{display:block;color:var(--muted);font-size:.82rem;line-height:1.5}.body-notice{max-width:58rem;margin:4rem auto 0;padding:1.5rem 1.75rem;border:1px double var(--brass);background:rgba(255,250,240,.66);font-family:Baskerville,Georgia,"Times New Roman",serif}.body-notice p{margin:0}footer{padding:3.5rem clamp(1rem,4vw,4rem) 2.5rem;background:var(--ink);color:var(--ivory);border-top:.45rem solid var(--garnet)}.footer-index{display:grid;grid-template-columns:1.35fr repeat(5,1fr);gap:2rem;max-width:80rem;margin:0 auto}.footer-brand{align-self:start;color:var(--ivory);font-family:Baskerville,Georgia,"Times New Roman",serif;font-size:1.5rem;text-decoration:none}.footer-index h2{margin:0 0 .75rem;color:#d2b06d;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase}.footer-index ul{list-style:none;margin:0;padding:0}.footer-index li{margin:.38rem 0}.footer-index a{color:var(--ivory);font-size:.8rem}.notice{max-width:80rem;margin:2.5rem auto 0;padding-top:1.5rem;border-top:1px solid #645849;color:#d7ccbb;font-size:.78rem;line-height:1.65}.notice a{color:#f2d895}.not-found{max-width:40rem;margin:0 auto;padding:2rem;border:1px solid var(--line);background:var(--paper);text-align:center}.not-found h2{font-family:Baskerville,Georgia,"Times New Roman",serif;font-size:2rem}@media(max-width:900px){.masthead{align-items:flex-start;flex-direction:column}.nav-links{justify-content:flex-start}.footer-index{grid-template-columns:repeat(3,1fr)}.footer-brand{grid-column:1/-1}.article section:before{position:static;display:block;margin-bottom:.5rem}}@media(max-width:620px){body{font-size:.96rem}.masthead{padding:1rem}.nav-links{gap:.55rem 1rem}.nav-links a{font-size:.72rem}main{width:min(100% - 1.25rem,74rem);padding-top:.7rem}.page-head{margin-bottom:1.5rem}.feature-image{margin-bottom:2.6rem;padding:.28rem}.article section{padding:2rem 0 1.5rem}.guide-index{padding:1.4rem;margin-top:3rem}.hub-grid,.footer-index{grid-template-columns:1fr}.footer-brand{grid-column:auto}footer{padding:2.5rem 1rem}.body-notice{padding:1.15rem}}
