:root{--bg:#f6fbff;--surface:#fff;--ink:#0f2b3c;--muted:#4c6b80;--brand:#bfe3ff;--brand-strong:#89c8ff;--link:#075c9c;--line:#dcebf5;--shadow:0 12px 35px rgba(15,43,60,.055);--radius:20px;--header-offset:110px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--header-offset)}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg);line-height:1.75;-webkit-font-smoothing:antialiased;isolation:isolate}::selection{background:var(--brand);color:var(--ink)}a{color:var(--link);text-underline-offset:.25em}a:hover{text-decoration-thickness:2px}button{font:inherit}img,svg{max-width:100%;display:block}img{height:auto}h1,h2,h3{line-height:1.2;letter-spacing:-.035em;text-wrap:balance}p{margin:0 0 1rem}h2{font-size:clamp(1.8rem,3vw,2.5rem);margin:.5rem 0 1.1rem}h3{font-size:1.25rem;margin:0 0 .7rem}a,button{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid #2378b7;outline-offset:5px}[hidden]{display:none!important}.container{width:min(100%,1220px);margin-inline:auto;padding-inline:2rem}.muted{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:1rem;left:1rem;z-index:100;transform:translateY(-180%);background:var(--ink);color:#fff;padding:.7rem 1rem;border-radius:8px}.skip-link:focus{transform:none}
.ambient-scene{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden;color:#89bee3;opacity:.3}.ambient-scene svg{width:140%;height:140%;max-width:none;transform:translate3d(-16%,-18%,0);animation:drift 18s ease-in-out -6s infinite;will-change:transform}.ambient-scene path{stroke-width:1.6;vector-effect:non-scaling-stroke}.ambient-flow{transform-box:fill-box;transform-origin:center;animation:wave 12s ease-in-out -4s infinite alternate}@keyframes drift{0%,100%{transform:translate3d(-16%,-18%,0) rotate(-4deg)}50%{transform:translate3d(-5%,-7%,0) rotate(5deg)}}@keyframes wave{from{transform:scaleY(.9) skewY(-3deg)}to{transform:scaleY(1.12) skewY(4deg)}}
.site-header{position:sticky;top:0;z-index:40;background:rgba(246,251,255,.95);border-bottom:1px solid var(--line);backdrop-filter:blur(18px)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:1.4rem;min-height:98px}.brand{display:flex;align-items:center;gap:.8rem;color:var(--ink);text-decoration:none;flex-shrink:0}.brand img{width:48px;height:48px;border-radius:50%;border:1px solid var(--line)}.brand strong{display:block;font-size:1rem;letter-spacing:-.025em}.brand-subtitle{display:block;color:var(--muted);font-size:.875rem;line-height:1.5}.nav{display:flex;align-items:center;gap:.25rem}.nav a{min-height:44px;display:inline-flex;align-items:center;gap:.6rem;padding:.5rem .8rem;border-radius:9px;color:var(--muted);text-decoration:none;font-size:.875rem;font-weight:600;white-space:nowrap}.nav a:hover,.nav a[aria-current="location"]{background:var(--brand);color:var(--ink)}.nav .nav-join{background:#e4f2fd;color:var(--ink);margin-left:.3rem}
.hero{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(230px,.8fr);gap:clamp(2rem,5vw,5rem);align-items:center;padding-block:5rem 4rem}.eyebrow{color:var(--link);text-transform:uppercase;letter-spacing:.13em;font-size:.8125rem;line-height:1.6;font-weight:800;margin:0 0 1.35rem}.hero h1{font-size:clamp(2.7rem,4.7vw,4.25rem);line-height:1.08;letter-spacing:-.058em;margin:0 0 1.55rem;max-width:16ch}.hero h1 span{color:#367092}.hero-lead{font-size:clamp(1.1rem,1.7vw,1.25rem);line-height:1.6;color:var(--ink);letter-spacing:-.02em}.hero-description{color:var(--muted);max-width:53ch}.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.75rem}.button{display:inline-flex;justify-content:center;align-items:center;gap:1rem;min-height:48px;padding:.75rem 1.2rem;background:var(--ink);border:1px solid var(--ink);border-radius:10px;color:#fff;font-size:.875rem;font-weight:600;text-decoration:none;line-height:1.5;transition:background .2s,transform .2s,box-shadow .2s}.button:hover{background:#19445b;color:#fff;transform:translateY(-2px);box-shadow:var(--shadow)}.button.ghost{background:#fff;border-color:#c5dce9;color:var(--ink)}.button.ghost:hover{background:var(--brand)}.hero-facts{display:flex;flex-wrap:wrap;gap:.5rem 1.3rem;margin-top:1.7rem;font-size:.875rem;color:var(--muted)}.hero-facts span{display:flex;align-items:center;gap:.5rem}.hero-facts span+span:before{content:"";width:3px;height:3px;flex:none;border-radius:50%;background:var(--muted)}.hero-aside{margin:0;transform:rotate(2deg)}.logo-frame{padding:1.1rem;background:#fff;border:1px solid #d4e7f5;border-radius:24px;box-shadow:14px 14px 0 #e1f1fc}.logo-frame img{border-radius:50%;width:100%}.hero-aside figcaption{margin:1.5rem 0 0;text-align:center;color:var(--muted);font-size:.875rem;transform:rotate(-2deg)}
.section{padding-block:4.25rem;border-top:1px solid var(--line)}.section-heading{max-width:720px;margin-bottom:2rem}.section-heading .eyebrow{margin-bottom:.6rem}.section-heading p:last-child{color:var(--muted);margin-bottom:0}.section-heading.compact{max-width:none;display:flex;align-items:end;justify-content:space-between;gap:2rem}.section-heading.compact h2{margin-bottom:0}.small-note{font-size:.875rem;color:var(--muted);line-height:1.7}.join-section{padding-bottom:4rem;scroll-margin-top:1rem}.link-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}.link-card{display:flex;flex-direction:column;min-width:0;padding:1.55rem;background:#fff;border:1px solid var(--line);border-radius:18px;color:var(--ink);text-decoration:none;transition:transform .2s,box-shadow .2s,border-color .2s}.link-card:not(.placeholder):hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#9ac8e7}.card-top{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin-bottom:1.5rem}.card-number{font-size:.75rem;letter-spacing:.065em;font-weight:600;color:var(--link)}.link-arrow{font-size:1.35rem;line-height:1;color:var(--link)}.link-card h3{font-size:1.45rem}.link-card p{font-size:1rem;color:var(--muted);margin-bottom:1.3rem}.card-action{display:flex;align-items:center;justify-content:space-between;margin-top:auto;font-size:.875rem;font-weight:600;color:var(--link)}.featured{background:#e7f4fe;border-color:#c5e2f5}.status-tag{font-size:.75rem;white-space:nowrap;color:#526575;background:#f0f4f7;padding:.15rem .55rem;border-radius:5px}.placeholder{background:rgba(255,255,255,.65)}.placeholder .card-action{color:var(--muted)}.membership-note{font-size:.875rem;color:var(--muted);margin:1rem 0 0}
.about-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:5rem;align-items:start}.about-layout .section-heading{margin:0}.about-details{padding-top:.2rem;color:var(--muted)}.about-details p{margin-bottom:1.15rem}.text-link{font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex;gap:.6rem;align-items:center;min-height:44px}.text-link:hover{text-decoration:underline}.values{display:flex;flex-wrap:wrap;gap:.65rem;list-style:none;padding:0;margin:2rem 0 0}.values li{background:#e9f5fd;color:#31556e;border:1px solid #d4e9f8;border-radius:7px;padding:.4rem .75rem;font-size:.875rem;font-weight:500}.activity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.4rem}.activity-card{padding:1.7rem;background:#fff;border:1px solid var(--line);border-top:3px solid var(--brand);border-radius:var(--radius);box-shadow:var(--shadow);display:flex;flex-direction:column}.activity-number{font-size:.875rem;font-weight:600;color:var(--link);margin-bottom:1.8rem}.activity-card h3{font-size:1.4rem}.activity-card p{color:var(--muted)}.activity-label{margin-top:auto;padding-top:.8rem;border-top:1px solid var(--line);font-size:.875rem;color:var(--link)}
.event-card{display:grid;grid-template-columns:190px 1fr;border:1px solid var(--line);border-radius:20px;overflow:hidden;background:#fff;box-shadow:var(--shadow)}.event-date{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.3rem;padding:2rem 1rem;background:#e6f3fd;color:var(--link)}.event-date strong{font-size:5.5rem;line-height:1.1;letter-spacing:-.06em;color:var(--ink);font-weight:600}.event-date span{font-size:.75rem;letter-spacing:.08em;font-weight:700}.event-body{padding:2rem 2.3rem}.event-status{display:block;font-size:.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--link);margin-bottom:.6rem}.event-body h3{font-size:1.8rem}.event-body p{color:var(--muted)}.event-body strong{color:var(--ink);font-weight:600}.event-body .event-note{font-size:.875rem;max-width:80ch}.event-body .button{margin-top:.5rem}.source-note{margin:1.2rem 0 0}.committee-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem}.person{display:flex;align-items:start;gap:1rem;background:#fff;border:1px solid var(--line);border-radius:18px;padding:1.4rem;min-width:0}.person>div{min-width:0}.initials{width:46px;height:46px;flex:none;display:grid;place-items:center;border-radius:12px;background:#e8f4fd;color:var(--link);font-size:.875rem;font-weight:700}.person h3{font-size:1.05rem;line-height:1.45;letter-spacing:-.025em;margin:0 0 .25rem;text-wrap:initial}.person p{font-size:.875rem;color:var(--muted);line-height:1.65;margin:0 0 .5rem}.person-type{display:block;font-size:.75rem;color:var(--muted)}
.contact-section{padding-bottom:4rem}.contact-panel{display:grid;grid-template-columns:1.4fr 1fr;gap:3rem;align-items:center;border:1px solid #c5e2f5;background:#e7f4fe;border-radius:22px;padding:2.75rem}.contact-panel .eyebrow{margin-bottom:.5rem}.contact-panel h2{margin-bottom:1rem}.contact-panel p{color:var(--muted);margin-bottom:0}.contact-actions{display:flex;flex-direction:column;align-items:start;gap:.9rem}.contact-email{font-size:1rem;overflow-wrap:anywhere;max-width:100%;text-decoration:none}.contact-email:hover{text-decoration:underline}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding-block:1.8rem 2.3rem;border-top:1px solid var(--line);font-size:.875rem}.site-footer strong{font-size:.95rem}.site-footer p{margin:.25rem 0 0;color:var(--muted)}.site-footer>a{white-space:nowrap;text-decoration:none;min-height:44px;display:inline-flex;align-items:center;gap:.7rem}

@media(max-width:1080px){.nav a{padding:.5rem .6rem}.header-inner{gap:.7rem}.hero{gap:2.5rem}.committee-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.card-top{align-items:start;flex-wrap:wrap}.about-layout{gap:3rem}.brand-subtitle{font-size:.8125rem}}
@media(max-width:850px){:root{--header-offset:90px}.container{padding-inline:1.5rem}.header-inner{flex-wrap:wrap;min-height:84px;padding-block:.8rem}.nav{width:100%;border-top:1px solid var(--line);padding-top:.5rem;flex-wrap:wrap}.nav a{flex:1;padding:.6rem}.nav .nav-join{margin:0}.hero{padding-block:3.5rem;grid-template-columns:minmax(0,1.5fr) minmax(160px,.7fr);gap:2rem}.hero h1{font-size:clamp(2.6rem,5.7vw,3.7rem)}.hero-aside figcaption{font-size:.8125rem}.hero-facts{gap:.5rem 1rem}.link-grid{gap:.8rem}.link-card{padding:1.2rem}.card-top{min-height:3.2rem;margin-bottom:.6rem}.section-heading.compact{align-items:start}.section-heading.compact>.small-note{display:none}.about-layout{grid-template-columns:1fr;gap:1.5rem}.about-layout .section-heading{max-width:600px}.about-details{max-width:75ch}.section{padding-block:3rem}.activity-grid{gap:.8rem}.activity-card{padding:1.3rem}.event-card{grid-template-columns:140px 1fr}.event-body{padding:1.6rem}.contact-panel{padding:2rem;gap:2rem;grid-template-columns:1fr 1fr}}
@media(max-width:620px){.container{padding-inline:1.25rem}.hero{grid-template-columns:1fr;padding-block:2.6rem 2.4rem;gap:2rem}.hero h1{font-size:clamp(2.7rem,10vw,3.7rem);max-width:17ch}.hero .eyebrow{font-size:.75rem}.hero-aside{max-width:235px;width:64%;margin:0 auto .7rem}.logo-frame{padding:.7rem;border-radius:20px;box-shadow:9px 9px 0 #e1f1fc}.hero-aside figcaption{margin-top:1rem}.hero-facts{font-size:.8125rem}.hero-facts span+span:before{display:none}.hero-facts span{padding-right:.8rem;border-right:1px solid #c5dce9}.hero-facts span:last-child{border:0;padding-right:0}.link-grid,.activity-grid,.committee-grid{grid-template-columns:1fr}.link-card{padding:1.4rem}.card-top{min-height:0;margin-bottom:1rem}.link-card p{margin-bottom:1rem}.join-section{padding-bottom:2.6rem}.section-heading.compact{flex-direction:column;gap:.5rem}.section-heading{margin-bottom:1.5rem}.activity-number{margin-bottom:1rem}.activity-card{padding:1.5rem}.event-card{grid-template-columns:1fr}.event-date{flex-direction:row;gap:1rem;justify-content:flex-start;padding:1rem 1.5rem}.event-date strong{font-size:2.5rem;order:-1}.event-date span:last-child{margin-left:auto;max-width:8ch;text-align:right}.event-body{padding:1.5rem}.event-body h3{font-size:1.55rem}.event-body .button{width:100%}.person{padding:1.25rem}.contact-panel{grid-template-columns:1fr;padding:1.7rem;gap:1.5rem}.contact-panel h2 br{display:none}.site-footer{flex-wrap:wrap;gap:.8rem}.values{margin-top:1.5rem}.brand img{width:42px;height:42px}.brand strong{font-size:.95rem}.brand-subtitle{font-size:.75rem}.nav a{flex:1 0 40%;justify-content:center}.nav a:last-child{flex-basis:100%}}
@media(max-width:360px){.brand{gap:.5rem}.brand img{width:32px;height:32px}.brand strong{font-size:.875rem}}
/* Keep the requested background motion on desktop as well as mobile. */
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.ambient-scene svg{animation:drift 18s ease-in-out -6s infinite!important}.ambient-flow{animation:wave 12s ease-in-out -4s infinite alternate!important}}
html.motion-paused .ambient-scene svg,html.motion-paused .ambient-flow{animation-play-state:paused!important}
.footer-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.7rem 1.5rem}.footer-actions a{display:inline-flex;align-items:center;gap:.7rem;min-height:44px;text-decoration:none}
.site-footer{flex-wrap:wrap}.site-footer .copyright{flex:0 0 100%;margin:0;text-align:center;font-size:.8rem}
.person.has-photo{display:block;padding:0;overflow:hidden}.person.has-photo>div{padding:1.3rem 1.4rem}.committee-photo{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:50% 35%;background:#e8f4fd}.supporting-committee{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:1.2rem}
@media(min-width:621px){.signatory-committee{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:620px){.supporting-committee{grid-template-columns:1fr}}

.icon-box{width:44px;height:44px;flex:none;display:grid;place-items:center;background:#eaf6fe;border:1px solid #dcebf5;border-radius:12px;color:var(--link)}.icon-box svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.icon-box .filled{fill:currentColor;stroke:none}.link-card>.card-number{margin-bottom:.6rem}.membership-callout{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-top:1.25rem;padding:1.6rem;border:1px solid #c5e2f5;border-radius:18px;background:#e7f4fe}.membership-callout h3{margin:0 0 .5rem;font-size:1.2rem}.membership-callout p{margin:0;color:var(--muted);font-size:.875rem;max-width:65ch}.membership-callout .button{flex-shrink:0}
@media(max-width:620px){.membership-callout{align-items:stretch;flex-direction:column;padding:1.4rem}.membership-callout .button{width:100%}}

/* Match Walking Society's section typography and persistent navigation. */
h2{font-weight:800;letter-spacing:-.05em}
.section-heading .eyebrow,.contact-panel .eyebrow{font-size:.66rem;letter-spacing:.15em;line-height:1.5}
.site-header{z-index:60}
.header-inner{display:grid;grid-template-columns:1fr auto;gap:.8rem;min-height:0;padding-block:.8rem .55rem}
.brand strong{font-weight:800;line-height:1.35;letter-spacing:-.03em}
.brand-subtitle{font-size:.7rem;margin-top:.15rem}
.nav{grid-column:1/-1;gap:.35rem;border-top:1px solid var(--line);padding-top:.5rem}
.nav a{font-size:.79rem;padding:.5rem .9rem;gap:.5rem;transition:background .2s,color .2s}
.nav .nav-join{margin-left:auto;background:transparent;color:var(--link)}
.nav .nav-join:hover{background:var(--brand);color:var(--ink)}
.reading-progress{height:2px;position:absolute;bottom:-1px;left:0;width:100%;transform:scaleX(0);transform-origin:left;background:#6daed9}
@media(max-width:1080px){.nav a{padding-inline:.7rem}}
@media(max-width:850px){.header-inner{gap:.7rem;padding-block:.7rem}.brand strong{font-size:.9rem}.brand-subtitle{font-size:.65rem}.brand img{width:38px;height:38px}.nav{gap:.2rem}.nav a,.nav a:last-child{flex:0 1 auto;font-size:.75rem;justify-content:flex-start}.nav .nav-join{margin-left:0}}
@media print{.reading-progress{display:none}}
