/* Home page only (loaded by index.html). Every rule is scoped to main.home so other pages are unaffected. */
.home{--tex:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .42 0 0 0 0 .3 0 0 0 0 .1 0 0 0 .1 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");--frame:#b8892a;--frame-lt:#d9b866;--parch:#f4e3b8;--parch-lt:#fbf0d4;--gold-ink:#6f4c0b}
.home section{padding:56px 0}
.home h2{color:var(--navy)}

/* Inspired Revelation: Text -> Story -> Message -> Meaning (live text; pictures cropped by add_image.py home mode) */
.home .ir{background-color:var(--parch);background-image:radial-gradient(ellipse at 50% 0,rgba(255,250,232,.9),transparent 60%),radial-gradient(ellipse at 100% 100%,rgba(166,118,40,.2),transparent 55%),var(--tex);border-bottom:2px solid var(--frame);padding:44px 0 46px}
.home .ir h1{margin:0;text-align:center;color:var(--navy);font-size:clamp(2.4rem,5.4vw,4.4rem);font-variant:small-caps;letter-spacing:.02em;line-height:1.05}
.home .ir h1::after{content:"";display:block;width:min(420px,70%);height:2px;margin:12px auto 0;background:linear-gradient(90deg,transparent,var(--frame) 20%,var(--frame) 80%,transparent)}
.home .ir-lede{text-wrap:balance;max-width:820px;margin:16px auto 30px;text-align:center;font:600 1.12rem/1.5 'Playfair Display',Georgia,serif;color:#2f2a22}
.home .ir-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:28px;row-gap:0}
.home .ir-step{position:relative;display:grid;grid-template-rows:auto auto auto 1fr;grid-row:span 4;grid-template-rows:subgrid;row-gap:0;background:var(--paper);border:2px solid var(--frame);box-shadow:inset 0 0 0 1px var(--frame-lt),0 12px 24px rgba(47,34,11,.16)}
.home .ir-step:not(:last-child)::after{content:"";position:absolute;top:calc(50% - 14px);right:-24px;width:0;height:0;border-top:14px solid transparent;border-bottom:14px solid transparent;border-left:18px solid var(--frame);z-index:1}
.home .ir-head{position:relative;display:flex;flex-direction:column;justify-content:center;background:var(--navy);text-align:center;padding:16px 12px;border-bottom:2px solid var(--frame)}
.home .ir-head h2{margin:0;color:#fff7df;font-size:clamp(1.12rem,1.55vw,1.4rem);line-height:1.2;font-variant:small-caps;letter-spacing:.02em}
.home .ir-head h2 a{color:inherit;text-decoration:none}
.home .ir-head h2 a:hover,.home .ir-head h2 a:focus-visible{color:var(--gold);text-decoration:underline}
.home .ir-sub{margin:6px 0 0;color:var(--gold);font:italic 400 1rem/1.3 'Playfair Display',Georgia,serif}
.home .ir-step img{display:block;width:100%;height:auto;aspect-ratio:2/1;object-fit:cover;object-position:50% 25%;border-bottom:2px solid var(--frame)}
.home .ir-body{display:contents;text-align:center}
.home .ir-body>p{margin:0;padding:16px 16px 14px;text-align:center;font-size:1rem;line-height:1.5;color:#2f2a22}
.home .ir-body blockquote{margin:0 16px;padding:12px 0 18px;border-top:1px solid var(--frame-lt);text-align:center}
.home .ir-body blockquote p{margin:0 0 6px;font:italic 400 .98rem/1.45 'Playfair Display',Georgia,serif;color:var(--navy)}
.home .ir-body blockquote footer{font:700 .82rem/1.2 'Source Sans 3',Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase;color:var(--gold-ink)}
.home .ir-body blockquote footer a{color:inherit}
.home .ir-banner{text-wrap:balance;margin:30px auto 0;max-width:1000px;padding:14px 22px;background:var(--navy);border:2px solid var(--frame);box-shadow:inset 0 0 0 1px rgba(217,184,102,.45);text-align:center;color:#fff7df;font:600 clamp(1.05rem,1.7vw,1.35rem)/1.4 'Playfair Display',Georgia,serif}
.home .ir-banner strong{color:var(--gold)}
.home .ir-cta{margin:24px 0 0;text-align:center}
.home .ir-cta .btn{border-radius:3px;border:1px solid var(--frame-lt);box-shadow:0 0 0 2px var(--navy);padding-inline:22px}
@media(max-width:1050px){.home .ir-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.home .ir-step{margin-bottom:28px}.home .ir-step::after{display:none}}
@media(max-width:620px){.home .ir-steps{grid-template-columns:minmax(0,1fr)}.home .ir{padding:34px 0 38px}}

/* Four-step method band: parchment with darkened edges (stand-in for scroll and cave pictures) */
.home .method-band{color:var(--body);background-color:var(--parch);background-image:radial-gradient(ellipse 72% 95% at 50% 45%,rgba(255,248,226,.85) 35%,rgba(214,180,118,.35) 75%,rgba(92,64,28,.55) 100%),var(--tex);border-block:2px solid var(--frame)}
.home .method-band h2,.home .method-band h3{color:var(--navy)}
.home .method-band .section-intro{color:#3a342b;margin-bottom:10px}
.home .method-grid{margin:34px 0 30px;gap:34px}
.home .method-grid picture{border-color:var(--frame);box-shadow:0 0 0 3px var(--parch),0 0 0 4px var(--frame-lt),0 8px 18px rgba(47,34,11,.25)}
.home .method-grid li:not(:last-child)::after{color:var(--frame)}
.home .method-grid strong{color:var(--navy)}
.home .method-grid p{color:#3a342b;font-size:1rem}

/* Three full-width bands: Timeline, Geography, People & Groups (image alternates left/right on desktop) */
.home .pband{background-color:var(--parch-lt);background-image:var(--tex);border-bottom:2px solid var(--frame)}
.home .pband-where{background-color:var(--parch);background-image:radial-gradient(ellipse at 80% 30%,rgba(255,250,232,.7),transparent 60%),var(--tex)}
.home .pband-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:40px 48px;align-items:center}
.home .pband-flip .pband-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr)}
.home .pband-flip .pband-media{order:2}
.home .pband-media{margin:0}
.home .pband-media img{display:block;width:100%;height:auto;border:2px solid var(--frame);box-shadow:0 0 0 3px var(--parch-lt),0 0 0 4px var(--frame-lt),0 12px 26px rgba(47,34,11,.2);background:var(--paper)}
.home .pband-media figcaption{margin-top:10px;font-size:.9rem;color:#5a5040;font-style:italic}
.home .pband-map{justify-self:center;width:100%;max-width:470px}
.home .pband-copy{max-width:560px}
.home .pband-title{display:block;margin:0 0 20px;padding:12px 20px 14px;color:#fff7df;font-size:clamp(1.7rem,2.8vw,2.4rem);line-height:1.12;border:2px solid var(--frame);box-shadow:inset 0 0 0 1px rgba(217,184,102,.45)}
.home .pband-kicker{display:block;margin-bottom:4px;color:var(--gold);font:700 .8rem/1 'Source Sans 3',Arial,sans-serif;letter-spacing:.18em;text-transform:uppercase}
.home .pband-navy{background:#01172f}
.home .pband-green{background:#1a2914}
.home .pband-maroon{background:var(--burgundy)}
.home .pband-copy p,.home .pband-points{font-size:1.08rem;line-height:1.55;color:#3a342b;margin:0 0 24px}
.home .pband-points{padding-left:1.2em}
.home .pband-points li{margin-bottom:8px}
.home .pband-points li::marker{color:var(--frame)}
.home .pband-copy .btn{border-radius:3px;border:1px solid var(--frame-lt);box-shadow:0 0 0 2px var(--navy);padding-inline:22px}

/* Timeline band: compact heading, overview strip cut from chart T00-I001, then 12 era cards (6 + 6).
   Card pictures are cropped from the chart by _source-v2/crop_timeline_home.py; names and passages are live text. */
.home .pband-head{margin-bottom:18px}
.home .pband-title-compact{display:inline-block;margin:0;padding:8px 18px 10px;font-size:clamp(1.35rem,2.2vw,1.75rem)}
.home .pband-title-compact .pband-kicker{font-size:.72rem;margin-bottom:2px}
.home .pband-overview{margin:0}
.home .pband-overview img{display:block;width:100%;height:auto;border:2px solid var(--frame);box-shadow:0 0 0 3px var(--parch-lt),0 0 0 4px var(--frame-lt),0 10px 22px rgba(47,34,11,.18);background:var(--paper)}
.home .pband-overview figcaption{margin-top:8px;font-size:.9rem;color:#5a5040;font-style:italic}
.home .pband-overview figcaption a{color:var(--gold-ink);font-weight:700;font-style:normal}
.home .pband-instruct{margin:22px 0 14px;text-align:center;font:700 1.15rem/1.3 'Playfair Display',Georgia,serif;color:var(--navy)}
.home .pband-cards{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}
.home .pband-cards a{display:flex;flex-direction:column;height:100%;min-height:44px;text-decoration:none;color:var(--ink);background:var(--paper);border:2px solid var(--frame);box-shadow:0 6px 14px rgba(47,34,11,.14);transition:box-shadow .15s ease,transform .15s ease}
.home .pband-cards img{display:block;width:100%;aspect-ratio:1/.92;object-fit:cover;border-bottom:2px solid var(--frame)}
.home .pband-card-end img{object-position:50% 40%}
.home .pband-card-name{display:block;padding:9px 10px 2px;font:700 1rem/1.2 'Playfair Display',Georgia,serif;color:var(--navy)}
.home .pband-card-num{display:inline-block;margin-right:6px;color:var(--gold-ink);font-family:Georgia,serif}
.home .pband-card-pass{display:block;padding:0 10px 11px;font-size:.88rem;line-height:1.3;color:#5a5040}
.home .pband-cards a:hover{transform:translateY(-3px);box-shadow:0 0 0 3px var(--gold),0 10px 20px rgba(47,34,11,.2)}
.home .pband-cards a:focus-visible{outline:3px solid var(--gold);outline-offset:3px;box-shadow:0 0 0 3px var(--gold)}
.home .pband-cards a:hover .pband-card-name,.home .pband-cards a:focus-visible .pband-card-name{color:var(--gold-ink);text-decoration:underline}

/* People & Groups tiles (same portraits as the old card) */
.home .pband-tiles{background:var(--paper);border:2px solid var(--frame);box-shadow:0 0 0 3px var(--parch-lt),0 0 0 4px var(--frame-lt),0 12px 26px rgba(47,34,11,.2);padding:14px 18px 18px}
.home .pband-tiles h3{margin:6px 0 10px;text-align:center;font-size:.85rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-dark)}
.home .pband-row{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:12px}
.home .pband-row-people{grid-template-columns:repeat(4,minmax(0,1fr))}
.home .pband-row-groups{grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:0}
.home .pband-row a{display:block;text-decoration:none;border:1px solid rgba(138,102,24,.45);background:var(--burgundy);overflow:hidden}
.home .pband-row img{display:block;width:100%;aspect-ratio:1/.72;object-fit:cover;transition:transform .3s ease}
.home .pband-row-groups img{aspect-ratio:1/.9;object-position:50% 20%}
.home .pband-row span{display:block;background:var(--burgundy);color:#fff7df;text-align:center;font:700 .95rem/1.1 'Source Sans 3',Arial,sans-serif;padding:8px 2px 9px}
.home .pband-row-groups span{font-size:.85rem}
.home .pband-row a:hover img{transform:scale(1.05)}
.home .pband-row a:hover span,.home .pband-row a:focus-visible span{color:var(--gold)}

/* Small buttons (used by the closing blocks) */
.home .btn-small{min-height:42px;padding:9px 18px;font-size:.8rem;border:1px solid var(--frame)}
.home .btn-gold{color:var(--navy)}

/* Four closing blocks */
.home .home-bands{background:var(--navy);padding:0}
.home .band-grid{display:grid;grid-template-columns:minmax(0,1.15fr) repeat(3,minmax(0,1fr));width:100%;max-width:none;gap:0}
.home .band{display:flex;flex-direction:column;padding:34px 28px 32px;background-color:var(--parch);background-image:var(--tex);border-left:2px solid var(--frame)}
.home .band h2{font-size:1.45rem;line-height:1.2;margin:0 0 12px}
.home .band p{font-size:1rem;margin:0 0 18px;color:#3a342b}
.home .band-navy{background:var(--navy);border-left:0;color:var(--parchment)}
.home .band-navy h2{color:var(--parchment)}
.home .band-navy p{color:#ecdfba}
.home .band-foot{margin-top:auto;display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.home .band-icons{list-style:none;margin:auto 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.home .band-icons-light{margin:0 0 20px}
.home .band-icons a{display:flex;flex-direction:column;align-items:center;gap:6px;text-decoration:none;text-align:center;font:700 .8rem/1.15 'Source Sans 3',Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase;color:var(--gold)}
.home .band-icons-light a{color:var(--gold-ink)}
.home .band-icons svg,.home .band-cap{width:44px;height:44px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.home .band-cap{color:var(--navy);width:52px;height:52px}
.home .band-icons a:hover span{text-decoration:underline}

@media(max-width:1200px){.home .band-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home .band:nth-child(3){border-left:0}.home .band:nth-child(n+3){border-top:2px solid var(--frame)}}
@media(max-width:1050px){.home .pband-cards{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:820px){.home .pband-grid,.home .pband-flip .pband-grid{grid-template-columns:minmax(0,1fr);gap:28px}.home .pband-flip .pband-media{order:0}.home .pband-copy{order:-1}.home .pband-copy{max-width:none}.home .pband-map{max-width:440px}}
@media(max-width:820px){.home .method-band{background-image:radial-gradient(ellipse 90% 100% at 50% 45%,rgba(255,248,226,.85) 50%,rgba(92,64,28,.35) 100%),var(--tex)}}
@media(max-width:560px){.home .pband-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.home .pband-card-name{font-size:.95rem}.home .pband-tiles{padding:10px 10px 14px}.home .pband-row{gap:8px}.home .pband-row-people{grid-template-columns:repeat(2,minmax(0,1fr))}.home .pband-row-groups{grid-template-columns:repeat(3,minmax(0,1fr))}.home .pband-copy .btn{width:100%}.home section{padding:44px 0}.home .band-grid{grid-template-columns:minmax(0,1fr)}.home .band-icons{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:18px}.home .band{border-left:0;border-top:2px solid var(--frame);padding:30px 20px}.home .band-navy{border-top:0}}
@media(prefers-reduced-motion:reduce){.home .pband-row img,.home .pband-cards a{transition:none}.home .pband-row a:hover img,.home .pband-cards a:hover{transform:none}}
.home .btn-small{text-align:center}
@media(min-width:1201px){.home .band-navy .band-icons{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:16px;margin-top:6px}.home .band-navy .band-icons a{flex-direction:row;justify-content:flex-start;gap:12px;text-align:left}.home .band-navy .band-icons svg{width:38px;height:38px;flex:none}}
