/* The reference library extends the Observatoriet type, colour and spacing. */
[hidden]{display:none!important}
.knowledge-gateway{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding-top:85px;padding-bottom:80px;border-bottom:1px solid #b9bdb2}
.knowledge-gateway h2{font-size:clamp(42px,4.4vw,66px);margin:20px 0 24px;max-width:14ch}
.knowledge-gateway p{font-size:16px;line-height:1.85;max-width:48ch}
.knowledge-gateway nav{align-self:center}
.knowledge-gateway nav a{display:grid;grid-template-columns:1fr auto;gap:10px;padding:26px 0;border-top:1px solid #a9b3a5}
.knowledge-gateway nav a:last-child{border-bottom:1px solid #a9b3a5}
.knowledge-gateway nav span{font:11px/1.5 var(--sans);letter-spacing:.13em;color:#4d5d50}
.knowledge-gateway nav strong{grid-row:2;font:500 clamp(27px,2.8vw,40px)/1.15 var(--serif);letter-spacing:-.025em}
.knowledge-gateway nav i{grid-column:2;grid-row:1/3;align-self:center;font-size:28px}
.observatory .masthead-reference{min-height:620px;padding-top:max(160px,var(--header-clearance,0px));padding-bottom:75px}
.observatory .masthead-reference .masthead-image{left:30%;width:70%}
.observatory .masthead-reference .masthead-shade{background:linear-gradient(90deg,#10232b 0%,#10232bfa 26%,#10232b6b 65%,transparent)}
.observatory .masthead-reference .masthead-copy{max-width:850px}
.observatory .masthead-reference h1{font-size:clamp(48px,5.7vw,88px);line-height:1.04;max-width:15ch}
.observatory .masthead-reference .knowledge-deck{font-size:17px;max-width:48ch;line-height:1.75;margin-top:28px;color:#e4e8df}
.masthead-reference .breadcrumb{display:flex;flex-wrap:wrap;gap:9px;font:12px/1.8 var(--sans);margin-bottom:45px;color:#dae1d9}
.masthead-reference .breadcrumb a{text-decoration:underline;text-underline-offset:4px}
.masthead-reference .eyebrow{margin-bottom:18px;color:#d4c19d}
.masthead-reference .article-byline{font:12px/1.7 var(--sans);margin-top:27px;color:#c6d0c9}
.masthead-reference .article-byline a{text-decoration:underline;text-underline-offset:4px}
.reference-layout{display:grid;grid-template-columns:230px minmax(0,780px);gap:8vw;padding-top:70px;padding-bottom:75px;justify-content:space-between}
.reference-sidebar{align-self:start;position:sticky;top:35px}
.reference-sidebar>.eyebrow{color:#4d5d50;margin-bottom:20px}
.reference-sidebar nav{display:grid}
.reference-sidebar a{font:13px/1.5 var(--sans);padding:13px 0;border-top:1px solid #bcc4b5;max-width:100%}
.reference-body{min-width:0}
.reference-body p,.reference-body li{font:17px/1.9 var(--sans);max-width:66ch}
.reference-body p+p{margin-top:16px}
.reference-body a:not(.text-link){text-decoration:underline;text-underline-offset:4px;text-decoration-color:#82907c}
.reference-body h2{font-size:clamp(31px,3.4vw,46px);line-height:1.1;margin-bottom:22px;letter-spacing:-.03em}
.reference-body>section{margin-bottom:47px;scroll-margin-top:35px}
.reference-facts{display:flex;flex-wrap:wrap;justify-content:space-between;gap:15px;font:12px/1.6 var(--sans);padding-bottom:22px;margin-bottom:34px;border-bottom:1px solid #abb5a3;color:#4d5d50}
.reference-body>.concept-rulers{font-size:14px;margin:-15px 0 30px;color:#4d5d50}
.reference-body #reflection{padding:30px;background:#e0e4d7;border-left:2px solid #819278}
.reference-body #reflection p{font:27px/1.45 var(--serif)}
.reference-body #reflection h2{font:11px/1.6 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:#4d5d50}
.reference-sources{border-top:1px solid #b8c2af;padding-top:35px}
.reference-sources ul{padding-left:18px}
.reference-sources li{margin-bottom:24px;font-size:14px}
.reference-sources li p{font-size:13px;line-height:1.8;color:#4d5d50;margin-top:9px}
.reference-related{padding-top:55px;padding-bottom:75px;border-top:1px solid #b8c2af}
.reference-related h2{font-size:55px;margin:20px 0 25px}
.reference-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin-top:40px}
.reference-related-grid>a{border-top:1px solid #9eab96;padding:25px 0}
.reference-related-grid .eyebrow{color:#4d5d50}
.reference-related-grid h3{font-size:34px;margin:18px 0}
.reference-related-grid a>span:last-child{font-size:13px}
.reference-directory,.glossary-directory{padding-top:70px;padding-bottom:90px}
.directory-intro{max-width:850px;margin-bottom:55px}
.directory-intro .eyebrow{color:#4d5d50;margin-bottom:20px}
.directory-intro h2{font-size:clamp(42px,5vw,66px);margin-bottom:26px}
.directory-intro>p:not(.eyebrow){font:17px/1.85 var(--sans);max-width:68ch}
.directory-intro>.text-link{display:inline-block;margin-top:25px}
.reference-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 42px}
.reference-card{min-width:0;border-top:1px solid #9dab96;padding:32px 0 38px}
.reference-card>a{display:flex;flex-direction:column;height:100%}
.reference-card .eyebrow{color:#4d5d50;font-size:11px}
.reference-card h3{font-size:38px;margin:15px 0 22px}
.reference-card p{font:15px/1.8 var(--sans);margin-bottom:24px}
.reference-card-link{font:13px/1.7 var(--sans);display:flex;justify-content:space-between;margin-top:auto}
.reference-card a:hover h3,.reference-related a:hover h3{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:7px}
.knowledge-search{max-width:800px;margin:0 0 35px}
.knowledge-search label{font:500 14px/1.6 var(--sans);display:block;margin-bottom:10px}
.search-field{display:flex;border:1px solid #83967b;background:#f7f2e9;gap:10px;padding:5px}
.search-field input{font:17px/1.5 var(--sans);min-width:0;width:100%;border:0;background:transparent;color:#10232b;padding:14px 16px;border-radius:0}
.search-field input:focus-visible{outline:2px solid #355548;outline-offset:1px}
.search-field button{font:13px/1.5 var(--sans);border:0;background:transparent;color:#314e41;padding:10px 15px}
.knowledge-search [role=status]{font:12px/1.6 var(--sans);margin-top:10px;color:#4d5d50}
.search-empty{padding:35px 0;font:16px/1.8 var(--sans)}
.glossary-alphabet{display:flex;flex-wrap:wrap;gap:8px;border-top:1px solid #aebba5;border-bottom:1px solid #aebba5;padding:20px 0;margin:30px 0 55px}
.glossary-alphabet a{display:grid;place-items:center;min-width:42px;min-height:42px;font:24px/1 var(--serif)}
.glossary-alphabet a:hover{background:#dce2d2}
.glossary-letter{display:grid;grid-template-columns:100px minmax(0,1fr);gap:60px;scroll-margin-top:35px}
.glossary-letter>h2{font:90px/1 var(--serif);color:#52654b;padding-top:26px}
.glossary-letter dl{margin:0}
.glossary-entry{display:grid;grid-template-columns:minmax(160px,240px) minmax(0,1fr);gap:38px;padding:32px 0 38px;border-top:1px solid #adb9a4;scroll-margin-top:35px}
.glossary-entry dt{font:31px/1.15 var(--serif);letter-spacing:-.02em;overflow-wrap:anywhere}
.glossary-entry dd{margin:0;min-width:0}
.glossary-entry dd>.eyebrow{color:#4d5d50;font-size:10px}
.glossary-entry dd>p{font:16px/1.85 var(--sans);margin-top:13px;max-width:68ch}
.glossary-entry dd>.term-aliases{font-size:12px;color:#4d5d50}
.glossary-entry .text-link{display:inline-block;font-size:13px;margin-top:19px}
.reference-callout{padding:25px 28px;margin:0 0 42px;border:1px solid #a7b99a;background:#e4e8da}
.reference-callout .eyebrow{color:#4d5d50}
.reference-callout p{font-size:15px!important;margin:12px 0}
.reference-callout a{font:14px/1.6 var(--sans);text-decoration:underline;text-underline-offset:4px}
.concept-card>.text-link{display:inline-block;margin-top:22px;font-size:13px}
.concept-card h4>a:hover{text-decoration:underline;text-underline-offset:5px}
@media(max-width:1000px){.reference-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reference-layout{grid-template-columns:190px minmax(0,1fr);gap:5vw}.glossary-letter{grid-template-columns:70px minmax(0,1fr);gap:30px}.glossary-entry{grid-template-columns:170px minmax(0,1fr);gap:25px}}
@media(max-width:760px){
 .knowledge-gateway{display:block;padding-top:45px;padding-bottom:45px}.knowledge-gateway nav{margin-top:35px}.knowledge-gateway h2{font-size:42px}.knowledge-gateway p{font-size:15px}
 .observatory .masthead-reference{min-height:560px;padding-top:max(130px,var(--header-clearance,0px));padding-bottom:50px}.observatory .masthead-reference .masthead-image{left:0;width:100%}.observatory .masthead-reference .masthead-image img{object-position:72% center;opacity:.5}.observatory .masthead-reference .masthead-shade{background:linear-gradient(90deg,#10232be8,#10232b70)}.observatory .masthead-reference h1{font-size:clamp(40px,10.8vw,65px);max-width:16ch}.observatory .masthead-reference .knowledge-deck{font-size:15px}.masthead-reference .breadcrumb{font-size:11px;margin-bottom:30px}
 .reference-layout{display:block;padding-top:35px;padding-bottom:25px}.reference-sidebar{position:static;margin-bottom:40px}.reference-sidebar nav{grid-template-columns:1fr 1fr;gap:0 22px}.reference-sidebar a{font-size:12px}.reference-body p,.reference-body li{font-size:16px;line-height:1.85}.reference-body h2{font-size:34px}.reference-body #reflection{padding:25px 20px}.reference-body #reflection p{font-size:25px}
 .reference-related h2{font-size:42px}.reference-related-grid{grid-template-columns:1fr;gap:0}.reference-related-grid h3{font-size:34px}.reference-directory,.glossary-directory{padding-top:45px;padding-bottom:55px}.directory-intro h2{font-size:42px}.directory-intro>p:not(.eyebrow){font-size:15px}.reference-grid{grid-template-columns:1fr}.reference-card h3{font-size:36px}
 .glossary-letter{display:block}.glossary-letter>h2{font-size:65px;padding:20px 0 25px}.glossary-entry{display:block;padding:28px 0 32px}.glossary-entry dt{font-size:32px;margin-bottom:15px}.glossary-entry dd>p{font-size:15px}.glossary-alphabet{gap:3px;margin-bottom:25px}.glossary-alphabet a{min-width:40px;min-height:44px}.search-field input{font-size:16px;padding:12px 10px}.search-field button{padding:10px}.reference-sources li p{font-size:13px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
[class].aspect-example{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:center;margin:30px 0;padding:24px;border:1px solid #cfcabb;background:#eeece3}
.aspect-example svg{display:block;width:100%;height:auto;overflow:visible}
.aspect-ring{fill:none;stroke:#83958b;stroke-width:1}
.aspect-ticks{fill:none;stroke:#83958b;stroke-width:1}
.aspect-rays{fill:#294b4c;stroke:#294b4c;stroke-width:1.5}
.aspect-measured-arc{fill:none;stroke:#a47b3c;stroke-width:3}
.aspect-point-labels{text-anchor:middle;font:16px Arial,sans-serif;fill:#294b4c}
.aspect-centre{fill:#eeece3;stroke:none}
.aspect-measure{text-anchor:middle;font:25px Georgia,serif;fill:#294b4c}
.aspect-example figcaption{margin:0;max-width:none;text-align:left}
.aspect-example figcaption p{font-size:14px;line-height:1.65}
.aspect-example dl{margin:20px 0;font-size:14px;line-height:1.5}
.aspect-example dl div{display:grid;grid-template-columns:100px minmax(0,1fr);gap:12px;border-bottom:1px solid #d5d0c2;padding:7px 0}
.aspect-example dt{font-weight:600}.aspect-example dd{margin:0}
.aspect-formula{padding:18px 24px;background:#eeece3;border-left:2px solid #a47b3c;overflow-wrap:anywhere}
.reference-body .aspect-formula p{margin:6px 0;font-size:16px}
.aspect-table-wrap{max-width:100%;overflow-x:auto}
.aspect-table{width:100%;border-collapse:collapse;text-align:left;font-size:16px}
.aspect-table th,.aspect-table td{padding:16px 12px;border-bottom:1px solid #d5d0c2;vertical-align:top}
.aspect-table thead th{font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.aspect-reflection{padding:28px;background:#e7ebe2;border-top:1px solid #a9b2a1}
.aspect-reflection p:last-child{font-size:14px}
@media(max-width:680px){[class].aspect-example{grid-template-columns:1fr;padding:18px;gap:12px}.aspect-example svg{max-width:340px;justify-self:center}.aspect-table th,.aspect-table td{padding:12px 8px;font-size:14px}.aspect-reflection{padding:20px}}
.quality-members{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;margin:25px 0}
.quality-members>div{border-top:1px solid #b8c2af;padding:22px 0}
.quality-members h3{font:32px/1.15 var(--serif);margin:0 0 10px}
.reference-body .quality-members p{font-size:14px;margin:0}
.quality-matrix{min-width:520px}
.aspect-table caption{text-align:left;font:14px/1.6 var(--sans);padding:0 0 16px;color:#4d5d50}
.reference-body .quality-scroll-hint{font-size:13px;color:#4d5d50;margin-bottom:18px}
.quality-totals{padding:20px 24px;background:#e0e4d7;margin:24px 0}
.quality-totals>div+div{margin-top:20px}
.quality-totals dt{font:500 15px/1.6 var(--sans)}
.quality-totals dd{font:18px/1.7 var(--sans);margin:6px 0 0}
@media(max-width:480px){.quality-members{grid-template-columns:1fr}.quality-totals{padding:18px}.quality-totals dd{font-size:16px}}
.angle-figure{margin:2rem 0;padding:1.25rem;background:#142e35;border:1px solid #526365;color:#eee8db;border-radius:4px}
.angle-figure svg{display:block;width:100%;max-width:440px;height:auto;margin:auto;color:#dac8a6}
.angle-figure svg text{fill:#eee8db;text-anchor:middle;font-family:Arial,sans-serif;font-size:22px}
.angle-figure .angle-ring{fill:none;stroke:#92a4a6;stroke-width:1.5}
.angle-ray{stroke:#b9a47b;stroke-width:2.5}
.angle-ray.angle-selected{stroke:#f4dfb8;stroke-width:4}
.angle-points circle,.angle-meridian>circle:not(.angle-ring){fill:#dac8a6}
.angle-figure .angle-centre{fill:#142e35}
.angle-figure svg .angle-centre-label,.angle-figure svg .angle-caption{font-size:19px}
.angle-guideline{fill:none;stroke:#92a4a6;stroke-width:1.5;stroke-dasharray:5 5}
.angle-figure figcaption{max-width:52ch;margin:1rem auto 0;color:#eee8db;font-size:.94rem;line-height:1.7}
.angle-figure a{color:#f4dfb8}
.angle-coordinates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem 1.25rem;padding-left:1.25rem}
@media(max-width:400px){.angle-figure{padding:.5rem}.angle-coordinates{display:block}}

/* Physical facts and a precisely scaled orbit comparison. */
.planet-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:1.8rem 0;padding:1.4rem 0;border-top:1px solid #d7cfbe;border-bottom:1px solid #d7cfbe}
.planet-facts dt{font-size:.76rem;letter-spacing:.07em;text-transform:uppercase;color:#605b51}
.planet-facts dd{margin:.4rem 0 0;font-size:1.15rem;color:#152d34}
.planet-fact-note{font-size:.9rem}
.planet-orbit-figure{margin:2rem 0;padding:1.4rem;background:#152d34;color:#efe9dc}
.planet-orbit-comparison{display:block;width:100%;height:auto;overflow:visible}
.planet-orbit-comparison text{fill:#efe9dc;font-family:inherit;font-size:22px}
.planet-orbit-comparison rect{fill:#c6b087}
.planet-orbit-comparison path{stroke:#b8c3c1;stroke-width:1;fill:none}
.planet-orbit-figure figcaption{color:#e2ded3;font-size:.87rem;line-height:1.6;margin-top:1rem}
@media(max-width:520px){.planet-facts{grid-template-columns:1fr;gap:1.1rem}.planet-orbit-figure{padding:1rem .75rem}.planet-orbit-comparison text{font-size:24px}}

/* Lunar-node teaching figures use plotted coordinates, not decorative geometry. */
.node-figure{margin:2rem 0;padding:1.4rem;background:#152d34;color:#efe9dc}
.node-diagram{display:block;width:100%;max-width:560px;height:auto;margin:auto}
.node-diagram text{fill:#efe9dc;font:22px var(--sans)}
.node-diagram .node-grid{fill:none;stroke:#9caaa5;stroke-opacity:.4;stroke-width:1}
.node-diagram .node-zero{stroke:#d2c5ac;stroke-width:1.7;fill:none}
.node-diagram .node-curve,.node-diagram .node-axis-line{stroke:#d4b985;stroke-width:3;fill:none}
.node-diagram .node-direction{stroke:#c1c9bf;stroke-width:2;fill:none}
.node-latitude circle,.node-centre{fill:#efe9dc}
.node-point{fill:#152d34;stroke:#d4b985;stroke-width:3}
.node-point.node-active{fill:#d4b985}
.node-figure figcaption{font-size:.88rem;line-height:1.7;margin-top:1.1rem;color:#e1e4da}
.node-model{padding:1.1rem;border:1px solid #a5b19f;margin-bottom:2rem}
.node-model summary{cursor:pointer;font-size:.9rem;line-height:1.6}
.node-model p{font-size:.9rem;margin-top:1rem}
@media(max-width:520px){.node-figure{padding:1rem .6rem}.node-diagram text{font-size:24px}}

/* Transit models keep angular and time scales explicit. */
.transit-figure{margin:2rem 0;padding:1.4rem;background:#152d34;color:#efe9dc}
.transit-diagram{display:block;width:100%;max-width:560px;height:auto;margin:auto}
.transit-diagram text{fill:#efe9dc;font:21px var(--sans)}
.transit-diagram circle,.transit-diagram rect:not(.transit-band){fill:#dac8a6}
.transit-diagram .transit-grid{fill:none;stroke:#9caaa5;stroke-opacity:.45;stroke-width:1}
.transit-diagram .transit-ray,.transit-diagram .transit-zero{fill:none;stroke:#c5b595;stroke-width:1.6}
.transit-diagram .transit-curve{fill:none;stroke:#ead2a4;stroke-width:3}
.transit-diagram .transit-band{fill:#aecac2;fill-opacity:.25}
.transit-figure figcaption{font-size:.88rem;line-height:1.7;margin-top:1.1rem;color:#e1e4da}
.transit-questions dt{font-weight:600;margin-top:1.4rem}
.transit-questions dd{margin:.6rem 0 1.4rem;line-height:1.8}
@media(max-width:520px){.transit-figure{padding:1rem .5rem}.transit-diagram text{font-size:23px}}

@media(max-width:480px){.transit-samples{table-layout:fixed}.transit-samples th,.transit-samples td{font-size:12px;padding:12px 5px;overflow-wrap:anywhere}.transit-samples thead th{font-size:10px;letter-spacing:.03em}.transit-samples th:nth-child(1){width:23%}.transit-samples th:nth-child(2),.transit-samples th:nth-child(3){width:22%}.transit-samples th:nth-child(4){width:33%}}

/* House-system figures: shared coordinates, readable independent labels. */
.house-system-figure{margin:2rem 0;padding:1.2rem;background:#f0ede5;border:1px solid #d6d1c5}
.house-system-diagram{display:block;width:100%;height:auto;max-width:600px;margin:auto;color:#18363b;fill:currentColor}
.house-system-diagram text{font:19px system-ui,sans-serif;fill:#18363b;stroke:none}
.house-system-diagram .hs-boundary{fill:none;stroke:#576e6d;stroke-width:1.4}
.house-system-diagram .hs-highlight{fill:#b9a47b;fill-opacity:.25;stroke:#8b795a;stroke-width:1}
.house-system-diagram .hs-dashed{fill:none;stroke:#546c6b;stroke-width:1.4;stroke-dasharray:4 4}
.house-system-diagram .hs-time{fill:none;stroke:#8b795a;stroke-width:4}
.house-method-cards{display:grid;gap:1rem;margin:1.4rem 0}
.house-method-cards section{border:1px solid #d6d1c5;padding:1.2rem;margin:0!important}
.house-method-cards h3{margin-top:0}
.house-method-cards p{margin:.5rem 0}
.house-worksheet li{padding-bottom:.8rem}
.house-cusps{width:100%;table-layout:fixed;min-width:0!important}
.house-cusps th,.house-cusps td{width:33.333%;overflow-wrap:anywhere}
@media(max-width:600px){.house-system-figure{padding:.5rem}.house-cusps th,.house-cusps td{padding:.65rem .4rem;font-size:14px}.house-cusps thead th{font-size:11px;letter-spacing:.03em}.house-method-cards section{padding:1rem}}

/* Historical evidence cards and original comparative teaching figures. */
.history-timeline{list-style:none;padding:0!important;margin:2rem 0!important;border-left:1px solid #b9a47b}
.history-timeline li{position:relative;padding:0 0 2rem 1.6rem;margin:0!important}
.history-timeline li::before{content:"";position:absolute;left:-5px;top:10px;width:9px;height:9px;border-radius:50%;background:#8b795a}
.history-timeline .history-date{font-family:Georgia,serif;font-size:1.45rem;margin:0 0 .35rem}
.history-timeline .eyebrow{margin:.3rem 0}.history-timeline h3{margin:.5rem 0}
.tradition-figure{margin:2rem 0;padding:1.2rem;border:1px solid #d6d1c5;background:#f0ede5}
.tradition-diagram{display:block;width:100%;height:auto;max-width:500px;margin:auto;fill:#18363b}
.tradition-diagram text{font:19px system-ui,sans-serif}
.tradition-cycle{border-collapse:collapse;table-layout:fixed;width:100%;color:#18363b;font-size:16px}
.tradition-cycle caption{font:1.25rem Georgia,serif;text-align:left;padding:0 0 1rem}
.tradition-cycle th,.tradition-cycle td{text-align:center;padding:.7rem .3rem;border-bottom:1px solid #c9c6bb;overflow-wrap:anywhere}
.tradition-cycle thead th{font-weight:600;font-size:14px}
.tradition-pillars{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem}
.tradition-pillars>div{border:1px solid #b9a47b;text-align:center;padding:.5rem}
.tradition-pillars h3{font-size:1rem;margin:.3rem 0 .8rem}.tradition-pillars p{margin:.4rem 0;padding:.3rem 0;background:#e0d8c7;font-size:15px}
@media(max-width:520px){.tradition-figure{padding:.7rem}.tradition-pillars{grid-template-columns:repeat(2,minmax(0,1fr))}.history-timeline li{padding-left:1.1rem}.tradition-cycle{font-size:15px}}

/* Relationship figures use exact coordinates and separate chart identities. */
.relationship-figure{margin:2rem 0;padding:1.2rem;background:#f0ede5;border:1px solid #d6d1c5}
.relationship-diagram{display:block;width:100%;height:auto;max-width:500px;margin:auto;color:#18363b}
.relationship-diagram text{font:18px system-ui,sans-serif;fill:#18363b}
.relationship-diagram .rel-grid{fill:none;stroke:#687e7b;stroke-width:1;stroke-opacity:.5}
.relationship-diagram .rel-ray{stroke:#526c68;stroke-width:1.4}
.relationship-diagram .rel-arc{fill:none;stroke:#9b6839;stroke-width:3}
.relationship-diagram .rel-point,.relationship-diagram .rel-midpoint{fill:#18363b;stroke:#18363b;stroke-width:1.5}
.relationship-diagram .rel-B,.relationship-diagram .rel-chosen{fill:#9b6839;stroke:#9b6839}
.relationship-diagram .rel-far{fill:#f0ede5;stroke:#526c68}
.relationship-diagram .rel-house{fill:#e0d8c7;stroke:#617775;stroke-width:1.2}
.relationship-diagram .rel-overlay-marker{stroke:#9b6839;stroke-width:3}
.relationship-figure figcaption{font-size:.9rem;line-height:1.7;margin-top:1.1rem}
@media(max-width:520px){.relationship-figure{padding:.65rem}.relationship-diagram text{font-size:19px}}

/* Original chart-reading diagrams and their HTML comparisons. */
.reading-figure{margin:2rem 0;padding:1.2rem;background:#f0ede5;border:1px solid #d6d1c5}
.reading-diagram{display:block;width:100%;height:auto;max-width:420px;margin:auto;color:#18363b}
.reading-diagram text{font:22px system-ui,sans-serif;fill:#18363b}
.reading-diagram .reading-emphasis{font-weight:650}
.reading-diagram .reading-step{font-size:17px;letter-spacing:.04em}
.reading-box,.reading-sign-strip{fill:#e5e7dd;stroke:#657a70;stroke-width:1}
.reading-line,.reading-arrow{fill:none;stroke:#617775;stroke-width:2}
.reading-position{stroke:#18363b;stroke-width:3}.reading-set-B{stroke:#9b6839}
.reading-empty{fill:#f7f3ec;stroke:#758678;stroke-width:1}.reading-occupied{fill:#dfd3bb;stroke:#758678;stroke-width:1}
.reading-figure figcaption{font-size:.9rem;line-height:1.7;margin-top:1rem}
.reading-table-scroll{overflow-x:auto;margin:1.8rem 0;max-width:100%}
.reading-table-scroll table{width:100%;border-collapse:collapse;font:15px/1.6 var(--sans)}
.reading-table-scroll caption{text-align:left;font-weight:600;padding-bottom:1rem}
.reading-table-scroll th,.reading-table-scroll td{padding:12px 14px;text-align:left;border-bottom:1px solid #b9c1b0}
.reading-table-scroll th{font-weight:600}.reading-table-scroll a{text-decoration:underline;text-underline-offset:3px}
.reading-table-scroll thead{background:#e4e8da}.reading-table-scroll a:focus-visible{outline:2px solid #355548;outline-offset:3px}
@media(max-width:520px){.reading-figure{padding:.65rem}.reading-diagram text{font-size:24px}.reading-diagram .reading-step{font-size:17px}.reading-table-scroll th,.reading-table-scroll td{padding:10px 7px;font-size:13px}}

/* The seven-body comparison retains readable columns inside its scroll region. */
.dignity-table{min-width:620px}

/* Phase comparison remains readable in an independently scrollable region. */
.lunar-phase-table{min-width:560px}

/* Curated reading paths through existing public content. */
.reading-paths{padding-top:4rem;padding-bottom:4rem;border-top:1px solid #bfc1b3}
.reading-paths>p:not(.eyebrow){max-width:48rem;line-height:1.8}
.reading-paths h2,.reading-sequence h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(1.8rem,3vw,2.8rem);line-height:1.2}
.reading-path-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem;margin-top:2.5rem}
.reading-path-card{border-top:1px solid #9aa99c;padding:1.7rem 1.5rem;background:#e7e5da;scroll-margin-top:6rem}
.reading-path-card h3{font-family:Georgia,serif;font-weight:400;font-size:1.65rem;margin:0 0 .8rem}
.reading-path-card p{font-size:.95rem;line-height:1.7}
.reading-path-card ol{padding-left:1.3rem;margin-top:1.5rem}
.reading-path-card li{padding:.6rem 0 .5rem .4rem}
.reading-path-card li a{font-weight:600;text-underline-offset:.22em}
.reading-path-card li p{margin:.4rem 0}
.reading-sequence{padding-top:2.5rem;padding-bottom:2.5rem;display:grid;grid-template-columns:1fr 1.3fr;gap:2rem;border-top:1px solid #a5b19f}
.reading-sequence h2{font-size:1.7rem;margin:.6rem 0}
.reading-sequence-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;align-content:center}
.reading-sequence-links a{display:block;padding:1rem;border:1px solid #a5b19f;text-decoration:none;line-height:1.6}
.reading-sequence-links span{display:block;font-size:.8rem;margin-bottom:.5rem}
.reading-sequence a:focus-visible,.reading-paths a:focus-visible{outline:2px solid currentColor;outline-offset:4px}
@media(max-width:700px){.reading-path-grid,.reading-sequence{grid-template-columns:1fr}.reading-path-card{padding:1.3rem 1rem}.reading-sequence-links{grid-template-columns:1fr}.reading-paths{padding-top:2.5rem;padding-bottom:2.5rem}}
