:root{--stone:#eee7d8;--paper:#f8f4e9;--ink:#24312f;--muted:#66726d;--green:#376861;--green-dark:#234c48;--bronze:#a96f3f;--rule:#cbbfa7;--shadow:0 18px 50px rgba(39,47,43,.12)}
*{box-sizing:border-box}
html{background:var(--stone);color:var(--ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.65;overflow-x:hidden}
body{margin:0;min-width:0;background:linear-gradient(90deg,rgba(80,91,82,.035) 1px,transparent 1px),linear-gradient(var(--paper),var(--stone));background-size:34px 34px}
a{color:var(--green-dark);text-underline-offset:.18em;text-decoration-thickness:.08em}
a:hover{color:#75451f}
header{border-top:7px solid var(--green-dark);background:rgba(248,244,233,.97);box-shadow:0 1px 0 var(--rule)}
.masthead{max-width:1220px;margin:auto;padding:1rem clamp(1rem,3vw,2.5rem) .75rem}
.brand{display:inline-flex;align-items:center;gap:.8rem;color:var(--ink);font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.35rem,3vw,2.1rem);line-height:1.05;text-decoration:none}
.brand small{display:block;margin-top:.3rem;color:var(--muted);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:.68rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}
.brand-mark{width:2.5rem;height:2.5rem;flex:none;border:2px solid var(--bronze);border-radius:50%;background:radial-gradient(circle at 36% 32%,#f6eddc 0 16%,#b78355 17% 22%,#4d756f 23% 36%,#e4d7c0 37% 54%,#92603a 55% 62%,#263b37 63%)}
.primary-nav{display:flex;flex-wrap:wrap;gap:.45rem;align-items:flex-start;margin-top:1rem;font-size:.77rem;font-weight:700;letter-spacing:.045em;text-transform:uppercase}
.primary-nav>a,.primary-nav summary{display:block;border:1px solid var(--rule);border-radius:2px;background:#fbf8f0;padding:.48rem .62rem;color:var(--ink);text-decoration:none;cursor:pointer;list-style:none}
.primary-nav summary::-webkit-details-marker{display:none}
.primary-nav details{position:relative}
.nav-panel{position:absolute;z-index:8;top:calc(100% + .3rem);left:0;min-width:13rem;padding:.45rem;background:var(--ink);box-shadow:var(--shadow)}
.nav-panel a{display:block;padding:.48rem .58rem;color:#fff;text-decoration:none;text-transform:none;letter-spacing:0;font-weight:600}
.nav-panel a:hover{background:var(--green);color:#fff}
.period-rail{display:grid;grid-template-columns:repeat(6,1fr);background:var(--green-dark);color:#fff;font-family:Georgia,"Times New Roman",serif;font-size:.75rem;letter-spacing:.08em;text-align:center;text-transform:uppercase}
.period-rail span{padding:.5rem .2rem;border-right:1px solid rgba(255,255,255,.18)}
main{max-width:1040px;margin:auto;padding:clamp(2rem,6vw,5.2rem) clamp(1rem,4vw,3rem)}
.page-heading{max-width:880px;margin:0 auto 2rem;border-left:5px solid var(--bronze);padding-left:clamp(1rem,3vw,2rem)}
.period{margin:0 0 .65rem;color:var(--green);font-size:.76rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.12;font-weight:500}
h1{max-width:900px;margin:0;font-size:clamp(2.15rem,6vw,4.6rem);letter-spacing:-.035em}
h2{margin:3.2rem 0 1rem;font-size:clamp(1.55rem,3vw,2.25rem)}
h3{font-size:1.25rem}
article{max-width:760px;margin:auto;font-size:clamp(1rem,1.3vw,1.08rem)}
article p{margin:0 0 1.2rem}
.lead{font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.18rem,2.2vw,1.47rem);line-height:1.55;color:#31423f}
.feature{max-width:920px;margin:0 auto 2.8rem;background:#ded2bb;padding:.55rem;box-shadow:var(--shadow)}
.feature img{display:block;width:100%;height:auto;aspect-ratio:5/3;object-fit:cover}
figcaption{padding:.6rem .3rem .2rem;color:#56605d;font-size:.78rem;letter-spacing:.03em}
.citation{font-weight:650}
.continue{margin-top:3.5rem;padding:1.2rem 1.3rem;border:1px solid var(--rule);border-left:5px solid var(--green);background:rgba(255,255,255,.46)}
.hub{max-width:1000px;margin:4rem auto 0}
.hub-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}
.hub-grid a{display:block;min-height:7.2rem;padding:1rem;border:1px solid var(--rule);background:rgba(255,255,255,.56);text-decoration:none;transition:transform .15s ease,background .15s ease}
.hub-grid a:hover{transform:translateY(-2px);background:#fff}
.hub-grid strong{display:block;font-family:Georgia,"Times New Roman",serif;font-size:1.12rem;line-height:1.2}
.hub-grid span{display:block;margin-top:.45rem;color:var(--muted);font-size:.86rem}
.symbol-figure{margin:2rem 0 2.5rem;padding:1rem;background:#e2d6bf;color:var(--green-dark);text-align:center}
.menorah-drawing{display:block;width:min(100%,520px);height:auto;margin:auto}
.map-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.35fr);gap:1rem;margin:2rem 0 3rem}
.map-card{margin:0;padding:.65rem;background:#ddd0b7;box-shadow:var(--shadow)}
.map-card svg{display:block;width:100%;height:auto;background:#eee7d8}
.timeline-card{align-self:start}
.source-list{padding-left:1.25rem}
.source-list li{margin-bottom:.85rem}
.body-notice,.medical-note{padding:1rem;border:1px solid var(--rule);background:#fffaf0}
footer{margin-top:4rem;background:var(--ink);color:#e8e1d3;border-top:8px solid var(--bronze)}
.footer-inner{max-width:1160px;margin:auto;padding:2.5rem clamp(1rem,4vw,3rem) 3rem}
footer h2{margin:0 0 1rem;color:#fff;font-size:1.25rem}
.footer-index{display:flex;flex-wrap:wrap;gap:.45rem 1rem;padding-bottom:2rem;border-bottom:1px solid rgba(255,255,255,.16)}
.footer-index a{color:#d8e6df;font-size:.82rem;text-decoration:none}
.notice{max-width:1000px;margin:1.5rem 0 0;color:#d8d2c8;font-size:.82rem}
.notice a{color:#fff}
img{max-width:100%;height:auto}
@media (max-width:760px){.primary-nav details{position:static}.nav-panel{position:static;min-width:0;margin-top:.25rem}.period-rail{grid-template-columns:repeat(3,1fr)}.hub-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.map-grid{grid-template-columns:1fr}.timeline-card{overflow-x:auto}.timeline-card svg{min-width:620px}}
@media (max-width:430px){.masthead{padding-inline:.75rem}.brand{font-size:1.32rem}.brand-mark{width:2.2rem;height:2.2rem}.primary-nav{gap:.35rem}.primary-nav>a,.primary-nav summary{padding:.42rem .5rem;font-size:.69rem}.period-rail{font-size:.59rem}.hub-grid{grid-template-columns:1fr}.hub-grid a{min-height:0}main{padding-inline:.9rem}.page-heading{padding-left:.85rem}h1{font-size:2.1rem}}
