:root{--ink:#0d0d0d;--ink2:#1a1816;--gold:#c8913a;--gold2:#e0ac55;--cream:#f6f1e7;--paper:#fffdf8;--mut:#5c574f;--r:14px;--w:1160px;font-family:"Inter",system-ui,-apple-system,Segoe UI,Roboto,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);line-height:1.65;font-size:17px;padding-bottom:64px}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.15;margin:.2em 0 .5em;letter-spacing:-.01em}h1{font-size:clamp(2.2rem,6vw,4.2rem)}h2{font-size:clamp(1.45rem,3vw,2.1rem)}h3{font-size:1.25rem;margin:0}
a{color:#8a5b14}img{max-width:100%;height:auto;display:block}.wrap{max-width:var(--w);margin:0 auto;padding:0 20px}section{margin:56px auto}
.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;background:#fff;padding:8px;z-index:99}
:focus-visible{outline:3px solid var(--gold2);outline-offset:2px}
.hdr{position:sticky;top:0;z-index:50;background:rgba(13,13,13,.94);backdrop-filter:blur(8px)}.hrow{display:flex;align-items:center;gap:16px;height:70px}
.brand img{width:128px;height:auto}.menu{margin-left:auto;background:none;border:1px solid #555;color:#fff;border-radius:8px;padding:8px 14px;font:inherit}
#nav{display:none;position:absolute;top:70px;left:0;right:0;background:var(--ink);flex-direction:column;padding:8px 20px 20px}#nav.open{display:flex}
#nav a{color:#eee;text-decoration:none;padding:10px 0;border-bottom:1px solid #222}#nav a[aria-current]{color:var(--gold2)}
.btn{display:inline-block;padding:13px 24px;border-radius:999px;text-decoration:none;font-weight:600;border:2px solid transparent;margin:4px 8px 4px 0}
.btn.gold{background:var(--gold);color:#111}.btn.gold:hover{background:var(--gold2)}.btn.ghost{border-color:#fff;color:#fff}.btn.dark{background:var(--ink);color:#fff}.btn.line{border-color:var(--ink);color:var(--ink)}.btn.sm{padding:8px 16px}.hide-m{display:none}
.hero{position:relative;margin:0;min-height:78vh;display:flex;align-items:flex-end;color:#fff;background:var(--ink);overflow:hidden}.hero.small{min-height:46vh}
.hero picture img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.5}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.1),rgba(0,0,0,.75))}
.hero-in{position:relative;z-index:2;padding:80px 20px 56px;width:100%}.lede{font-size:1.2rem;max-width:720px;opacity:.95}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;font-weight:700;color:var(--gold);margin:0 0 6px}
.hero .eyebrow{color:var(--gold2)}.center{text-align:center}.center .lede{margin:0 auto}
.cards3,.cards2{display:grid;gap:20px}.card{display:block;background:#fff;border:1px solid #ece4d4;border-radius:var(--r);padding:28px;text-decoration:none;color:inherit;box-shadow:0 10px 30px -18px rgba(0,0,0,.3);transition:transform .2s}.card:hover{transform:translateY(-3px)}
.cards3{margin-top:-48px;position:relative;z-index:5}.more{color:#8a5b14;font-weight:600}.ref{color:var(--mut);margin-top:-6px}
.grid2{display:grid;gap:32px;align-items:center}.band{margin:0;padding:64px 0}.dark{background:var(--ink2);color:#f2ede4}.dark a{color:var(--gold2)}.dark .btn.ghost{color:#fff}
.times{list-style:none;padding:0;margin:0 0 18px}.times li{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 0;border-bottom:1px solid #333}.times span{color:var(--gold2)}
address{font-style:normal;margin-bottom:12px}.map iframe{width:100%;height:340px;border:0;border-radius:var(--r)}
.slot{display:grid;place-items:center;text-align:center;border:2px dashed var(--gold);border-radius:var(--r);background:repeating-linear-gradient(45deg,#faf5ea,#faf5ea 12px,#f3ead6 12px,#f3ead6 24px);color:#7a5a22;font-weight:700;padding:16px}
.todo{background:#fff6dd;border-left:4px solid var(--gold);padding:10px 14px;border-radius:6px;font-size:.92rem;color:#5a4317}
.steps{display:grid;gap:18px}.step{background:var(--cream);border-radius:var(--r);padding:24px}.step span{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--ink);color:var(--gold2);font-weight:700}
.mrow{display:grid;gap:24px;align-items:center;margin:0 0 48px}.mimg{border-radius:var(--r);aspect-ratio:4/3;object-fit:cover;width:100%}
.ages{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}.ages li{background:var(--cream);border-radius:10px;padding:10px 12px;font-weight:600}.ages small{display:block;font-weight:400;color:var(--mut)}
.round{border-radius:50%;width:180px;height:180px;object-fit:cover;margin:0 auto 12px}.staff{text-align:center}.bio .round{width:260px;height:260px}
.toc{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}.toc a{font-size:.85rem;background:var(--cream);padding:6px 12px;border-radius:999px;text-decoration:none;color:var(--ink)}
details{border-bottom:1px solid #e7dfcf;padding:14px 0}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}summary h3:after{content:" +";color:var(--gold)}details[open] summary h3:after{content:" –"}
.refs{font-size:.88rem;color:var(--mut);font-style:italic}.grouph{margin-top:40px;color:#8a5b14}
.chips{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:8px}.chips li{border:1px solid var(--gold);border-radius:999px;padding:6px 14px}
.infobox{background:var(--cream);border-radius:var(--r);padding:24px}.cal{width:100%;height:min(1100px,85vh);min-height:620px;border:0;border-radius:var(--r);background:#fff}
.ftr{background:var(--ink);color:#cfc8bb;padding:48px 0 24px}.ftr a{color:#f0d9ae}.ftr h2{font-size:1rem;color:#fff;font-family:inherit;text-transform:uppercase;letter-spacing:.1em}.fgrid{display:grid;gap:24px}.tag{color:var(--gold2);font-family:Georgia,serif}.copy{font-size:.85rem;opacity:.7;margin-top:24px}
.mbar{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(3,1fr);background:var(--ink);z-index:60;border-top:1px solid #333}.mbar a{color:#fff;text-align:center;padding:16px 4px;text-decoration:none;font-weight:600}.mbar a:last-child{background:var(--gold);color:#111}
@media(min-width:760px){.cards3{grid-template-columns:repeat(3,1fr)}.cards2{grid-template-columns:repeat(2,1fr)}.grid2{grid-template-columns:1fr 1fr}.steps{grid-template-columns:repeat(2,1fr)}.mrow{grid-template-columns:1fr 1.2fr}.mrow:nth-child(even) img{order:2}.fgrid{grid-template-columns:1.2fr 1fr 1fr 1fr}.beliefs{display:grid;grid-template-columns:240px 1fr;gap:40px}.toc{flex-direction:column;position:sticky;top:90px;align-self:start}}
@media(min-width:1080px){body{padding-bottom:0}.mbar,.menu{display:none}#nav{display:flex;position:static;flex-direction:row;background:none;padding:0;margin-left:auto;gap:18px}#nav a{border:0;font-size:.93rem}.hide-m{display:inline-block}.brand img{width:150px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.cal.mini{height:520px;min-height:0}.hrow .btn.sm{margin:0}.hrow .menu{margin-left:auto}@media(min-width:1080px){.hrow #nav{margin-right:8px}}
.appband{background:var(--cream);border-radius:var(--r);padding:32px 24px;text-align:center}.appband p{max-width:640px;margin-left:auto;margin-right:auto}.appb{background:var(--ink);color:#fff;border-radius:12px;line-height:1.1;text-align:left;padding:10px 20px}.appb small{display:block;font-weight:400;font-size:.7rem;opacity:.8}
.initials{display:grid;place-items:center;background:radial-gradient(circle at 30% 30%,#2a2620,var(--ink));border:3px solid var(--gold);color:var(--gold2);font-family:Georgia,serif;font-size:3.2rem;letter-spacing:.04em}.initials.big{font-size:4.5rem}@media(min-width:1080px){.cards2:has(.staff){grid-template-columns:repeat(4,1fr)}}
