/* Circles in the Square — prototype design system (2026-06-30)
   Humanity Centres look: earthy natural-dyed palette, literary serif + quiet sans,
   generous whitespace, circular motifs, soft rounded edges. */

:root{
  --cream:#FBF6EC;
  --oat:#EEE3CE;
  --sand:#E3D6BE;
  --mushroom:#CBBEA6;
  --stone:#B7AE9D;
  --sage:#9DB0D6;
  --sage-soft:#C9D3EA;
  --moss:#5468A0;
  --moss-deep:#33477A;
  --clay:#BE7A4E;
  --terracotta:#AE5F3E;
  --brown:#4A3A2B;
  --brown-deep:#382B1E;
  --ink:#362B20;
  --ink-soft:#5B4F3F;
  --line:#E1D5BF;
  --shadow:0 18px 50px -28px rgba(59,49,39,.45);
  --radius:26px;
  --radius-lg:40px;
  --serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;
  --sans:"Nunito Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:var(--sans);
  color:var(--ink);
  background:var(--cream);
  line-height:1.7;
  font-size:18px;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3{font-family:var(--serif);font-weight:600;color:var(--ink);line-height:1.1;margin:0 0 .4em}
h1{font-size:clamp(3rem,7vw,5.4rem);letter-spacing:-.01em}
h2{font-size:clamp(2.1rem,4vw,3.1rem)}
h3{font-size:1.55rem}
p{margin:0 0 1.1em;max-width:62ch}
a{color:var(--moss-deep);text-decoration:none}
.eyebrow{font-family:var(--sans);text-transform:uppercase;letter-spacing:.22em;font-size:1.08rem;font-weight:800;color:#4E6137}
.wrap{max-width:1140px;margin:0 auto;padding:0 28px}
.muted{color:var(--ink-soft)}
.center{text-align:center}

/* buttons */
.btn{display:inline-block;font-family:var(--sans);font-weight:700;font-size:.95rem;
  padding:14px 30px;border-radius:999px;border:1.5px solid transparent;cursor:pointer;transition:.2s}
.btn-primary{background:var(--brown);color:#fff}
.btn-primary:hover{background:var(--brown-deep)}
.btn-ghost{background:transparent;border-color:var(--moss);color:var(--moss-deep)}
.btn-ghost:hover{background:var(--sage-soft)}
.btn-clay{background:var(--clay);color:#fff}
.btn-clay:hover{background:var(--terracotta)}
.btn-sm{padding:10px 22px;font-size:.85rem}

/* header */
header.site{position:sticky;top:0;z-index:40;background:rgba(251,247,239,.86);
  backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
header.site .bar{display:flex;align-items:center;justify-content:space-between;padding:16px 28px;max-width:1240px;margin:0 auto}
.brand{display:flex;align-items:center;gap:12px;font-family:var(--serif);font-size:1.5rem;font-weight:600}
.brand .mark{width:34px;height:34px;flex:none}
nav.main{display:flex;align-items:center;gap:26px}
nav.main a{font-family:var(--sans);font-size:.95rem;font-weight:600;color:var(--ink-soft)}
nav.main a:hover{color:var(--moss-deep)}
nav.main .btn{color:#fff}
.hamburger{display:none;font-size:26px;line-height:1;background:none;border:none;color:var(--moss-deep);cursor:pointer;padding:4px 10px}
.nav-toggle{display:none}

/* sections */
section{padding:92px 0}
.section-sand{background:var(--oat)}
.section-sage{background:linear-gradient(180deg,var(--sage-soft),#AEBD9C)}
/* soft light-green wash — pairs with the beige (--oat) bands for gentle alternation */
.section-sage-soft{background:#EAF0E1}
.lead{font-size:1.35rem;font-family:var(--serif);color:var(--ink-soft);max-width:34ch}

/* hero */
.hero{position:relative;overflow:hidden;background:
  radial-gradient(120% 90% at 85% 10%,rgba(192,127,86,.16),transparent 60%),
  radial-gradient(100% 80% at 10% 90%,rgba(157,174,136,.28),transparent 55%),
  var(--cream);
  padding:120px 0 110px}
.hero .grid{display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:center}
.hero h1{margin-top:.2em}
.hero .sub{font-size:1.25rem;color:var(--ink-soft);max-width:46ch}
.hero .cta{display:flex;gap:14px;margin-top:14px;flex-wrap:wrap}
.hero-art{position:relative;aspect-ratio:1/1;border-radius:50%;
  background:conic-gradient(from 200deg,#5468A0,#33477A,#4A66AC,#5468A0);
  box-shadow:var(--shadow);display:grid;place-items:center}
.hero-art .inner{width:74%;height:74%;border-radius:50%;background:var(--cream);
  display:grid;place-items:center;text-align:center;padding:24px}
.hero-art .inner span{font-family:var(--serif);font-size:1.4rem;color:var(--moss-deep)}

/* photo placeholders (stand in for warm documentary photography) */
.photo{border-radius:var(--radius);position:relative;overflow:hidden;min-height:240px;
  background:linear-gradient(135deg,var(--sand),var(--mushroom));box-shadow:var(--shadow)}
.photo.tall{min-height:340px}
.photo .cap{position:absolute;left:16px;bottom:14px;right:16px;font-size:.82rem;font-style:italic;color:rgba(59,49,39,.72)}
.photo.warm{background:linear-gradient(135deg,#E7CBB0,#C8A98C)}
.photo.green{background:linear-gradient(135deg,var(--sage-soft),var(--sage))}
.photo.dusk{background:linear-gradient(135deg,#D9C7B0,#A9B49A)}
/* real photography (2026-07-13) — .has-img renders a documentary photo in place of the gradient */
.photo.has-img{background-size:cover;background-position:center;background-repeat:no-repeat}
.hero-art .inner.has-img{overflow:hidden;padding:0;background-size:cover;background-position:center;background-repeat:no-repeat}

/* program tiers */
.tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:42px}
.tier{background:var(--cream);border:1px solid var(--line);border-radius:var(--radius);
  padding:34px 30px;box-shadow:var(--shadow)}
.tier .dot{width:58px;height:58px;border-radius:12px;overflow:hidden;display:grid;place-items:center;margin-bottom:18px}
.tier.me .dot{background:var(--sage-soft)}
.tier.us .dot{background:var(--sand)}
.tier.all .dot{background:#E7CBB0}
.tier .dot svg{width:24px;height:24px}
.tier h3{margin-bottom:.2em}
.tier .kicker{display:inline-block;font-size:.9rem;color:var(--moss-deep);font-weight:800;letter-spacing:.14em;text-transform:uppercase;background:var(--sage-soft);padding:5px 15px;border-radius:999px;margin-bottom:12px}
.tier ul{list-style:none;margin:14px 0 0;padding:0}
.tier ul li{padding:7px 0;border-top:1px solid var(--line);font-size:.98rem;color:var(--ink-soft)}
a.tier{display:block;color:var(--ink);transition:.15s}
a.tier:hover{border-color:var(--sage);transform:translateY(-3px)}
.tier-more{display:inline-block;margin-top:16px;font-weight:700;font-size:.9rem;color:var(--clay)}

/* events */
.events-head{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:30px}
.month-nav{display:flex;align-items:center;gap:14px;font-family:var(--serif);font-size:1.5rem}
.month-nav button{width:42px;height:42px;border-radius:50%;border:1.5px solid var(--line);
  background:var(--cream);cursor:pointer;font-size:1.1rem;color:var(--moss-deep)}
.events{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.event{background:var(--cream);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.event .date{background:var(--brown);color:#fff;padding:14px 20px;display:flex;align-items:baseline;gap:10px}
.event .date b{font-family:var(--serif);font-size:1.8rem;line-height:1}
.event .body{padding:18px 22px}
.event .tag{display:inline-block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;
  padding:4px 12px;border-radius:999px;background:var(--sage-soft);color:var(--moss-deep);margin-bottom:10px}
.event h3{font-size:1.25rem}
.event .meta{font-size:.9rem;color:var(--ink-soft);margin-bottom:14px}

/* band / cta */
.band{background:#26304E url(img/band-bg.png) center/cover;color:#fff;border-radius:var(--radius-lg);
  padding:64px 56px;display:grid;grid-template-columns:1.3fr .7fr;gap:30px;align-items:center;box-shadow:var(--shadow)}
.band h2,.band p{color:#fff}
.band p{opacity:.92;margin-bottom:0}
.band .right{justify-self:end}

/* triad */
.triad{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:42px}
.path{text-align:center;padding:18px}
.path .ring{width:64px;height:64px;border-radius:14px;border:2px solid var(--moss-deep);margin:0 auto 18px;display:grid;place-items:center}
.path .ring svg{width:28px;height:28px}

/* signup */
.signup{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center;
  background:var(--cream);border:1px solid var(--line);border-radius:var(--radius-lg);padding:48px 50px;box-shadow:var(--shadow)}
.field{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.field input{flex:1;min-width:200px;padding:14px 18px;border-radius:999px;border:1.5px solid var(--line);
  font-family:var(--sans);font-size:1rem;background:var(--cream)}

/* footer */
footer.site{background:var(--ink);color:#E9E0D0;padding:70px 0 40px;margin-top:10px}
footer.site a{color:#CBBEA6}
.fcols{display:grid;grid-template-columns:1.4fr 1fr 1.2fr;gap:40px}
footer .brand{color:#F3ECDD}
footer h4{font-family:var(--sans);text-transform:uppercase;letter-spacing:.16em;font-size:.78rem;color:#B7AE9D;margin:0 0 14px}
footer ul{list-style:none;margin:0;padding:0}
footer ul li{padding:5px 0}
.fbar{border-top:1px solid rgba(255,255,255,.12);margin-top:44px;padding-top:22px;font-size:.85rem;color:#9C9384;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}

.note{font-size:.8rem;color:var(--ink-soft);font-style:italic;text-align:center;padding:14px;background:var(--oat)}

@media(max-width:880px){
  .hero .grid,.band,.signup{grid-template-columns:1fr}
  .tiers,.events,.triad,.fcols{grid-template-columns:1fr}
  .hero-art{max-width:360px;margin:0 auto}
  .band .right{justify-self:start}
  .brand{font-size:1.15rem}
  .brand .mark{width:28px;height:28px}
  .hamburger{display:block}
  nav.main{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:var(--cream);border-bottom:1px solid var(--line);box-shadow:0 18px 40px -20px rgba(59,49,39,.4);padding:6px 0}
  .nav-toggle:checked ~ nav.main{display:flex}
  nav.main a{padding:13px 28px}
  nav.main a:not(.btn){border-top:1px solid var(--line)}
  nav.main .btn{margin:10px 28px;text-align:center;color:#fff}
}

/* ============ interior-page components (2026-06-30) ============ */
.page-hero{padding:90px 0 26px;background:radial-gradient(90% 80% at 90% 0%,rgba(157,174,136,.28),transparent 60%),var(--cream)}
.page-hero h1{font-size:clamp(2.6rem,5vw,4rem)}

/* filter chips */
.chips{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0 30px}
.chip{font-family:var(--sans);font-weight:700;font-size:.82rem;padding:8px 18px;border-radius:999px;border:1.5px solid var(--line);background:var(--cream);color:var(--ink-soft)}
.chip.active{background:var(--moss);color:#fff;border-color:var(--moss)}

/* calendar */
.cal{background:var(--cream);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.cal .dow{display:grid;grid-template-columns:repeat(7,1fr);background:var(--oat);font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-soft)}
.cal .dow div{padding:12px;text-align:center}
.cal .days{display:grid;grid-template-columns:repeat(7,1fr)}
.cal .day{min-height:108px;border-top:1px solid var(--line);border-left:1px solid var(--line);padding:8px 9px}
.cal .day:nth-child(7n+1){border-left:none}
.cal .day .n{font-size:.85rem;color:var(--ink-soft)}
.cal .day.out{background:var(--oat);opacity:.45}
.cal .day.today{background:rgba(157,174,136,.16)}
.cal .day.today .n{font-weight:800;color:var(--moss-deep)}
.evchip{display:block;margin-top:5px;font-size:.7rem;font-weight:700;padding:3px 7px;border-radius:7px;color:#fff;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.evchip.me{background:var(--moss)}
.evchip.us{background:var(--clay)}
.evchip.all{background:#9a8f79}
.legend{display:flex;gap:18px;flex-wrap:wrap;margin-top:18px;font-size:.85rem;color:var(--ink-soft)}
.legend span{display:inline-flex;align-items:center;gap:8px}
.legend i{width:14px;height:14px;border-radius:4px;display:inline-block}

/* forms */
.form{background:var(--cream);border:1px solid var(--line);border-radius:var(--radius-lg);padding:42px 46px;box-shadow:var(--shadow)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.fg{display:flex;flex-direction:column;gap:6px;margin-bottom:4px}
.fg.full{grid-column:1/-1}
.fg label{font-size:.78rem;font-weight:700;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.08em}
.fg input,.fg textarea,.fg select{padding:12px 16px;border-radius:14px;border:1.5px solid var(--line);font-family:var(--sans);font-size:1rem;background:var(--cream);color:var(--ink)}
.fg textarea{min-height:92px;resize:vertical}
.check{display:flex;gap:10px;align-items:flex-start;font-size:.95rem;color:var(--ink-soft);margin:8px 0}
.assist{background:var(--oat);border-radius:14px;padding:14px 18px;font-size:.9rem;color:var(--ink-soft);font-style:italic}

/* steps */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:36px}
.step .num{width:48px;height:48px;border-radius:50%;background:var(--sage-soft);color:var(--moss-deep);display:grid;place-items:center;font-family:var(--serif);font-size:1.5rem;font-weight:600;margin-bottom:14px}

/* map */
.map{border-radius:var(--radius);min-height:320px;background:linear-gradient(135deg,var(--sage-soft),var(--sand));position:relative;box-shadow:var(--shadow)}
.map .pin{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);text-align:center;font-family:var(--serif);font-size:1.15rem;color:var(--moss-deep)}
.map .pin svg{width:34px;height:34px;display:block;margin:0 auto 6px}

/* articles */
.articles{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-top:32px}
.article{background:var(--cream);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.article .ph{min-height:170px;background:linear-gradient(135deg,var(--sand),var(--mushroom))}
.article .ab{padding:22px 24px}
.article .ad{font-size:.76rem;text-transform:uppercase;letter-spacing:.12em;color:var(--clay);font-weight:700}
.article h3{margin:.3em 0 .2em}

/* generic two-col */
.two{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:center}
.people{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:30px}
.person{text-align:center}
.person .av{width:84px;height:84px;border-radius:50%;margin:0 auto 12px;background:linear-gradient(135deg,var(--sage-soft),var(--clay))}
.dates{list-style:none;margin:14px 0;padding:0}
.dates li{display:flex;gap:14px;align-items:center;padding:10px 0;border-top:1px solid var(--line);font-size:.96rem}
.dates b{font-family:var(--serif);font-size:1.2rem;color:var(--moss-deep);min-width:80px}

@media(max-width:880px){
  .form-grid,.steps,.articles,.two{grid-template-columns:1fr}
  .people{grid-template-columns:1fr 1fr}
  .cal .day{min-height:64px}
  .cal .evchip{font-size:.6rem}
}


/* ===== Brevo newsletter form (styled to match) ===== */
.sib-form{padding:0;background:none;text-align:left}
#sib-container,#sib-form-container,.sib-form-container,.sib-form form{background:transparent!important;border:none!important;box-shadow:none!important;padding:0!important;max-width:none!important;margin:0}
.sib-form #sib-form{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:14px}
.sib-form .sib-form-block{padding:0;margin:0}
.sib-form .sib-input.sib-form-block{flex:1;min-width:220px}
.sib-form .form__entry,.sib-form .entry_block,.sib-form .form__label-row{margin:0}
.sib-form .entry__label,.sib-form .entry__specification,.sib-form .entry__error{display:none!important}
.sib-form .entry__field{border:none!important;background:none!important;margin:0;border-radius:999px;box-shadow:none!important}
.sib-form .entry__field input,.sib-form input.input{width:100%!important;padding:14px 18px!important;border-radius:999px!important;border:1.5px solid var(--line)!important;font-family:var(--sans)!important;font-size:1rem!important;background:var(--cream)!important;color:var(--ink)!important;box-shadow:none!important;height:auto!important}
.sib-form .sib-form-block__button{background:var(--brown)!important;color:#fff!important;border:none!important;border-radius:999px!important;padding:14px 32px!important;font-family:var(--sans)!important;font-weight:700!important;font-size:.95rem!important;cursor:pointer;white-space:nowrap}
.sib-form .sib-form-block__button:hover{background:var(--brown-deep)!important}
.sib-form .sib-form-block__button svg{display:none!important}
.sib-form .input--hidden{display:none!important}
.sib-form .sib-text-form-block{display:none!important}
.sib-form-message-panel{display:none!important;border-radius:12px!important;padding:12px 16px!important;font-size:.92rem!important;border:none!important;max-width:none!important}
.sib-form-message-panel--active{display:block!important}
.sib-form-message-panel .sib-notification__icon{display:none!important}
#success-message.sib-form-message-panel{background:var(--sage-soft)!important;color:#2F4173!important}
#error-message.sib-form-message-panel{background:#F3E0D6!important;color:#8a3b2e!important}

/* ===== Programs page (CPT) ===== */
.phero{padding:96px 0 40px;background:radial-gradient(90% 80% at 90% 0%,rgba(157,174,136,.30),transparent 60%),var(--cream)}
.phero .wrap{display:grid;grid-template-columns:.85fr 1.4fr;gap:30px;align-items:center}
.phero-art svg{width:100%;max-width:300px;height:auto;display:block;margin:0 auto}
.pgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:30px}
.pcard{background:var(--cream);border:1px solid var(--line);border-radius:22px;padding:22px 24px;box-shadow:var(--shadow)}
.pcard h3{font-size:1.2rem;margin-bottom:.15em}
.pcard p{font-size:.92rem;color:var(--ink-soft);margin:0}
a.pcard{display:block;text-decoration:none;color:var(--ink);transition:.15s}
a.pcard:hover{border-color:var(--sage);transform:translateY(-2px)}
.tier-head{display:flex;align-items:center;gap:16px;margin-bottom:6px}
.tier-head .pill{font-family:var(--sans);font-weight:700;font-size:.8rem;text-transform:uppercase;letter-spacing:.14em;padding:6px 16px;border-radius:999px}
.pill.me{background:var(--sage-soft);color:var(--moss-deep)}
.pill.us{background:var(--sand);color:#7a5a3a}
.pill.all{background:#E7CBB0;color:#8a4a2e}
@media(max-width:880px){.pgrid{grid-template-columns:1fr}.phero .wrap{grid-template-columns:1fr}.phero-art{display:none}}

/* Production default palette: lrv33 (approved green) — baked so the site is green without the preview switcher */
:root{
  --oat:#E8EEE1; --sand:#DBE4D2; --mushroom:#C3CDE6; --stone:#A6B2D0; --line:#DCE0EE;
  --sage:#9DB0D6; --sage-soft:#CFE0D1; --moss:#5468A0; --moss-deep:#33477A;
  --clay:#6E8CC8; --terracotta:#4A66AC; --ink:#26304E; --ink-soft:#4A557A;
  --brown:#3A4E86; --brown-deep:#26304E;
}

/* Modern navbar (2026-07-22) */
header.site{background:rgba(251,247,239,.8);backdrop-filter:blur(12px) saturate(1.08);-webkit-backdrop-filter:blur(12px) saturate(1.08);border-bottom:1px solid rgba(74,90,52,.14)}
header.site .bar{padding:14px 30px}
nav.main .btn{border-radius:999px;padding:9px 20px}
@media(min-width:881px){
 nav.main{gap:30px}
 nav.main a:not(.btn){position:relative;padding:6px 1px;color:var(--ink-soft);transition:color .2s ease}
 nav.main a:not(.btn)::after{content:"";position:absolute;left:0;right:0;bottom:-3px;height:2px;background:var(--moss-deep);border-radius:2px;transform:scaleX(0);transform-origin:left center;transition:transform .24s ease}
 nav.main a:not(.btn):hover,nav.main a[aria-current]:not(.btn){color:var(--moss-deep)}
 nav.main a:not(.btn):hover::after,nav.main a[aria-current]:not(.btn)::after{transform:scaleX(1)}
}

/* Masthead band (2026-07-27, Susan #1): header sits in the blue/rose/green band
   with the white logo mark, menu alone on the right. Band stops sampled from the
   Circular masthead (The Circular/circular-banner.png) so email + site match. */
:root{
  --masthead:linear-gradient(180deg,
    #3D5987 0%,  #405885 20%,
    #58466E 20%, #59506F 56%,
    #4F6684 56%, #516786 79%,
    #455E8D 79%, #415990 100%);
}
header.site{background:var(--masthead);backdrop-filter:none;-webkit-backdrop-filter:none;
  border-bottom:0;box-shadow:0 10px 28px -20px rgba(38,48,78,.65)}
header.site .bar{padding:16px 30px}
.brand{color:#fff}
.brand .mark{width:38px;height:38px}
.hamburger{color:#fff}
/* wp_nav_menu now emits a real <ul>, so kill the stray default list markers */
nav.main ul.menu{display:flex;align-items:center;gap:30px;list-style:none;margin:0;padding:0}
nav.main ul.menu li{margin:0;padding:0;list-style:none}
@media(min-width:881px){
  nav.main a:not(.btn){color:rgba(255,255,255,.88)}
  nav.main a:not(.btn)::after{background:#fff}
  nav.main a:not(.btn):hover,nav.main a[aria-current]:not(.btn){color:#fff}
}
@media(max-width:880px){
  nav.main ul.menu{flex-direction:column;align-items:stretch;gap:0;width:100%}
  nav.main ul.menu li a{display:block;padding:13px 28px;border-top:1px solid var(--line)}
}

/* About section menu (2026-07-27, Susan #5): the page runs long, so the first
   screen carries a jump-list of what's ahead, sitting to the right of the copy. */
html{scroll-behavior:smooth}
section[id]{scroll-margin-top:96px}
.about-hero .wrap{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);
  gap:54px;align-items:start}
.about-hero-copy{min-width:0}
.page-toc{background:rgba(255,255,255,.62);border:1px solid var(--line);border-radius:var(--radius);
  padding:24px 26px;box-shadow:var(--shadow);position:sticky;top:96px}
.page-toc-label{display:block;font-family:var(--sans);text-transform:uppercase;
  letter-spacing:.18em;font-size:.72rem;font-weight:800;color:var(--ink-soft);margin-bottom:12px}
.page-toc ul{list-style:none;margin:0;padding:0}
.page-toc li+li{border-top:1px solid var(--line)}
.page-toc a{display:block;padding:9px 0;font-family:var(--sans);font-size:.95rem;
  font-weight:600;color:var(--ink);transition:color .18s ease,padding-left .18s ease}
.page-toc a:hover{color:var(--moss-deep);padding-left:6px}
@media(max-width:880px){
  .about-hero .wrap{grid-template-columns:1fr;gap:30px}
  .page-toc{position:static;padding:20px 22px}
}

/* Paired CTA (2026-07-27, Susan #10): linking band + Get Involved side by side,
   so the band no longer runs the full width above the footer. */
.cta-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:38px;align-items:stretch}
.band-stack{grid-template-columns:1fr;align-content:space-between;padding:44px 40px;gap:26px}
.band-stack h2{font-size:1.9rem}
.band-stack .btn{margin-top:4px}
.ways{display:flex;flex-direction:column;justify-content:center}
.waylist{list-style:none;margin:18px 0 0;padding:0}
.waylist li+li{margin-top:10px}
.waylist a{display:flex;align-items:center;gap:16px;padding:14px 18px;border-radius:var(--radius);
  border:1px solid var(--line);background:rgba(255,255,255,.55);transition:.18s}
.waylist a:hover{border-color:var(--moss);background:#fff;transform:translateY(-2px)}
.waylist .ring{width:48px;height:48px;flex:none;border-radius:12px;border:2px solid var(--moss-deep);
  display:grid;place-items:center}
.waylist .ring img{width:26px;height:26px;object-fit:contain}
.waylist .way-txt{display:flex;flex-direction:column;gap:2px;min-width:0}
.waylist strong{font-family:var(--serif);font-size:1.15rem;font-weight:600;color:var(--ink)}
.waylist .muted{font-size:.92rem}
@media(max-width:880px){
  .cta-split{grid-template-columns:1fr;gap:30px}
  .band-stack{padding:36px 28px}
}

/* Humanity Centres background green (2026-07-27, Susan #2).
   Sampled from the humanitycentres.com footer — FOOTER.section-footer.theme-green
   computes to rgb(214,235,197) — so the two sites read as one family. Susan's note
   that "the wheat colour is very much the same already" holds, so the cream
   (--cream) is left alone and only the green wash moves. */
:root{
  --hc-green:#D6EBC5;
  --oat:var(--hc-green);
}
.section-sage-soft{background:var(--hc-green)}

/* Headings (2026-07-27, Susan #3): LRV 22, bolded, so they stand out.
   PROVISIONAL — the actual LRV22 paint chip is still to be confirmed by Susan.
   This is a computed stand-in: the brand/HC green hue darkened to a measured
   LRV of 22.1. Note the bolding is load-bearing, not decorative — at LRV 22 this
   only clears WCAG AA (3:1) as large/bold text: 3.6:1 on cream, 3.05:1 on the
   HC green. If Susan's real chip is darker, contrast only improves.
   .band headings stay white via the higher-specificity rule above. */
:root{ --heading:#668C46; }
h1,h2,h3{color:var(--heading);font-weight:700}

/* Brevo signup embed in centered sections (Writing, Contact): the restyled
   flex row spans the full wrap width, so the input+button pair sat left.
   Cap and center the row itself. */
.center .sib-form #sib-form{max-width:520px;margin-left:auto;margin-right:auto;justify-content:center}
.center .sib-form .sib-form-message-panel{margin-left:auto !important;margin-right:auto !important}

/* Book-the-Space pre-form (step 1 outside Amelia) */
.intent-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);
  padding:28px 32px;margin:18px 0 26px;box-shadow:var(--shadow)}
.intent-step{font-family:var(--sans);font-size:.72rem;font-weight:800;letter-spacing:.18em;
  text-transform:uppercase;color:var(--moss-deep);margin-bottom:12px}
.intent-card label{display:block;margin:14px 0 6px;font-family:var(--sans);font-size:.95rem}
.intent-card input,.intent-card textarea{width:100%;box-sizing:border-box;font-family:var(--sans);
  font-size:1rem;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:10px;
  padding:11px 14px}
.intent-card input:focus,.intent-card textarea:focus{outline:none;border-color:var(--moss);
  box-shadow:0 0 0 2px rgba(84,104,160,.15)}
.intent-row{display:flex;align-items:center;justify-content:flex-end;gap:16px;margin-top:18px}
.intent-err{color:#A33B2E;font-family:var(--sans);font-size:.9rem}
.intent-done{opacity:.55}
#space-widget{position:relative}
#space-widget.intent-locked .intent-blocker{position:absolute;inset:0;z-index:5;
  display:flex;align-items:center;justify-content:center;border-radius:var(--radius);
  background:rgba(251,246,236,.72);backdrop-filter:blur(2px)}
#space-widget .intent-blocker{display:none}
#space-widget.intent-locked .intent-blocker{display:flex}
#space-widget.intent-locked .intent-blocker span{font-family:var(--sans);font-weight:700;
  color:var(--moss-deep);background:#fff;border:1px solid var(--line);border-radius:999px;
  padding:10px 22px;box-shadow:var(--shadow)}

/* Me / Us / All of Us pills (2026-08-07): one consistent look — cream fill,
   dark blue type. Replaces the three different tier colourings and matches
   the label boxes in the programs diagram. Also closes Susan's #6a
   ("uniform tier icons"). */
.tier-head .pill,.pill.me,.pill.us,.pill.all{
  background:#FBF6EC;color:#26304E;border:1px solid var(--line)}

/* Photo avatars in the people grid */
.person .av.av-photo{background-size:cover;background-position:center top}
/* Icon + question-mark avatars */
.person .av.av-icon,.person .av.av-q{display:grid;place-items:center}
/* Inner Circle avatar: white mark on the blue/mauve/green masthead band,
   echoing the site header and the Circular banner. */
.person .av.av-icon{background:var(--masthead)}
.person .av.av-icon img{width:44px;height:48px;object-fit:contain}
.person .av.av-q{font-family:var(--serif);font-size:2.4rem;font-weight:700;color:#fff;background:var(--masthead)}
/* Full-width founder bio card above the facilitator grid */
.fbio-wide{margin:36px auto 0;max-width:760px;text-align:left}

/* Facilitator bios on the About page (Inner Circle section) */
.fbios{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:26px;text-align:left}
.fbio{background:rgba(255,255,255,.6);border:1px solid var(--line);border-radius:var(--radius);padding:24px 26px}
.fbio h4{font-family:var(--serif);font-size:1.25rem;font-weight:700;color:var(--heading);margin:0 0 2px}
.fbio .frole{font-family:var(--sans);font-size:.78rem;font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;color:var(--moss-deep);margin-bottom:10px}
.fbio p{font-size:.95rem;color:var(--ink-soft);margin:0}
@media(max-width:880px){.fbios{grid-template-columns:1fr}}

/* Program cards: schedule + facilitator lines (Fall 2026 Current listing) */
.pcard .pwhen{font-family:var(--sans);font-size:.78rem;font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;color:var(--moss-deep);margin:0 0 6px}
.pcard .pfac{font-size:.85rem;color:var(--ink-soft);font-style:italic;margin:6px 0 0}
