/* Yosemite Rivers Alliance — extracted from the live homepage on 2026-09-16. */
@font-face{font-family:"John Muir Sans Local";src:url("fonts/john-muir-sans.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Libre Franklin Local";src:url("fonts/libre-franklin.woff2") format("woff2");font-weight:100 700;font-display:swap}
@font-face{font-family:"Libre Franklin Local";src:url("fonts/libre-franklin-italic.woff2") format("woff2");font-style:italic;font-weight:100 700;font-display:swap}
@font-face{font-family:"Libre Baskerville Local";src:url("fonts/libre-baskerville-regular.ttf") format("truetype");font-weight:400;font-display:swap}
@font-face{font-family:"Libre Baskerville Local";src:url("fonts/libre-baskerville-bold.ttf") format("truetype");font-weight:700;font-display:swap}

:root{
  color-scheme:light;
  --color-background:#fafafa;
  --color-surface:#ffffff;
  --color-text:#1e3751;
  --color-muted:#b4a850;
  --color-accent:#e38020;
  --color-on-accent:#ffffff;
  --color-inverse:#1e3751;
  --color-on-inverse:#ffffff;
  --color-border:#1e3751;
  --color-lime:#f3fe6f;
  --color-teal:#51a396;
  --font-body:"Libre Franklin Local",Arial,sans-serif;
  --font-heading:"John Muir Sans Local",Arial,sans-serif;
  --font-button:var(--font-body);
  --font-weight-body:400;
  --font-weight-heading:400;
  --text-sm:16px;
  --text-base:16px;
  --text-lg:24px;
  --text-h1:87.8px;
  --text-h2:44.8px;
  --text-h3:31.5px;
  --text-h4:25.6px;
  --line-height-body:1.5;
  --line-height-heading:1;
  --letter-spacing-body:0;
  --letter-spacing-heading:-.02em;
  --button-font-size:16px;
  --button-padding-x:22.4px;
  --button-padding-y:11.2px;
  --button-radius:6.4px;
  --button-border-width:0;
  --content-max:1280px;
  --page-gutter:3vw;
  /* Recurring visible homepage values; the source uses a fluid Squarespace layout. */
  --space-1:4px;
  --space-2:8px;
  --space-3:11px;
  --space-4:16px;
  --space-5:22.4px;
  --space-6:32px;
  --space-7:59.9844px;
  --space-8:125.438px;
  --radius:6.4px;
  --shadow:0 0 0 1px rgba(0,0,0,0);
  --transition-duration:170ms;
  --motion-image:600ms ease;
  --focus-color:#f3fe6f;
  --link-color:#e38020;
  --link-hover-color:#51a396;
  --link-active-color:#1e3751;
  --field-background:transparent;
  --field-color:#000;
  --field-border-color:transparent;
  --field-hover-border-color:#1e3751;
  --field-radius:0;
  --field-padding-x:10px;
  --field-padding-y:5px;
  --field-disabled-background:rgba(255,255,255,.35);
  --disabled-opacity:.45;
}

*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--color-background);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--line-height-body)}
:where(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4){margin:0 0 var(--space-5);font-family:var(--font-heading);font-weight:400;line-height:var(--line-height-heading);letter-spacing:var(--letter-spacing-heading);overflow-wrap:break-word}
h1,.h1{font-size:clamp(48px,6.1vw,var(--text-h1))}
h2,.h2{font-size:clamp(32px,3.11vw,var(--text-h2));line-height:1.114}
h3,.h3{font-size:var(--text-h3)}
h4,.h4{font-family:"Libre Baskerville Local",Georgia,serif;font-size:var(--text-h4);font-weight:700;line-height:1.171;text-transform:none}
p{margin:0 0 var(--space-4)}.text-sm{font-size:var(--text-sm)}.text-lg{font-size:var(--text-lg)}.text-muted{color:var(--color-muted)}
a{color:var(--surface-link,var(--link-color));text-underline-offset:.2em}a:hover{color:var(--surface-link-hover,var(--link-hover-color))}a:active{color:var(--surface-link-active,var(--link-active-color))}
:focus-visible{outline:3px solid var(--focus-color);outline-offset:4px}

.button{display:inline-flex;align-items:center;justify-content:center;min-height:41.375px;max-width:100%;padding:var(--button-padding-y) var(--button-padding-x);border:0;border-radius:var(--button-radius);background:var(--color-accent);color:var(--color-on-accent);font:700 var(--button-font-size)/1 var(--font-button);text-align:center;text-decoration:none;text-transform:uppercase;cursor:pointer;transition:opacity var(--transition-duration) ease}
.button--secondary{background:var(--color-lime);color:var(--color-text)}
.button--light{background:#fff;color:var(--color-teal)}
.button:hover:not(:disabled){opacity:.8}.button:active:not(:disabled){opacity:.68}.button:disabled{opacity:var(--disabled-opacity);cursor:not-allowed}

.container{width:min(var(--content-max),calc(100% - 2 * var(--page-gutter)));margin-inline:auto}
.surface{background:#fff;color:#1e3751}.surface--inverse{background:#1e3751;color:#fff;--surface-link:#f3fe6f;--surface-link-hover:#e38020;--surface-link-active:#fff}

.hero{position:relative;isolation:isolate;min-height:760px;display:flex;align-items:end;padding:var(--space-8) var(--space-7);overflow:hidden;color:#fff;background:#1e3751}
.hero::before{content:"";position:absolute;inset:0;z-index:-2;background:url("assets/hero.webp") center/cover no-repeat}
.hero::after{content:"";position:absolute;inset:0;z-index:-1;background:rgba(5,5,5,.43)}
.hero__content{max-width:1000px}.hero__title span{display:block}.hero__copy{font-family:var(--font-heading);font-size:clamp(28px,3.11vw,44.8px);line-height:1.114;letter-spacing:-.02em}

/* Four solution pillars verified on the homepage. */
.pillar-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17.3594px}
.pillar-card{display:flex;min-width:0;flex-direction:column;background:var(--color-lime);color:#1e3751;padding:var(--space-5)}
.pillar-card__image{display:block;width:100%;height:232.171875px;object-fit:contain;margin-bottom:var(--space-5)}
.pillar-card__title{font-size:31.5px;line-height:1}.pillar-card__lead{font-weight:700}.pillar-card__copy{font-size:16px;line-height:1.5}.pillar-card__link{margin-top:auto;color:#1e3751;font-weight:700}

/* Riverbank story cards verified on the homepage summary grid. */
.story-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-5)}
.story-card{display:flex;min-width:0;flex-direction:column;background:#fff;color:#1e3751}
.story-card__image{display:block;width:100%;aspect-ratio:1.5;object-fit:cover}
.story-card__body{display:flex;flex:1;flex-direction:column;padding:var(--space-5)}
.story-card__date{font-size:14px;color:#b4a850}.story-card__title{font-family:var(--font-body);font-size:18px;font-weight:700;line-height:1.25;letter-spacing:0}.story-card__link{margin-top:auto;color:#e38020;font-size:15px;font-weight:700;text-transform:uppercase}

/* Visible newsletter form treatment from the homepage. */
.newsletter{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:var(--space-7);padding:var(--space-7);background:var(--color-teal);color:#fff}
.newsletter__form{display:grid;grid-template-columns:1fr auto;align-items:end;gap:var(--space-3)}
.field__label{display:block;margin-bottom:12px;font-weight:700;color:#1e3751}
.input{display:block;width:100%;min-width:0;height:43.171875px;padding:5px 10px;border:1px solid transparent;border-radius:0;background:rgba(255,255,255,.9);color:#000;font:400 16px/24px var(--font-body)}
.input:hover{border-color:#1e3751}.input:disabled{background:var(--field-disabled-background);opacity:var(--disabled-opacity)}

@media(max-width:900px){.pillar-grid,.story-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.newsletter{grid-template-columns:1fr}.hero{min-height:620px}}
@media(max-width:560px){:root{--page-gutter:20px}.hero{min-height:560px;padding:var(--space-7) var(--space-5)}.pillar-grid,.story-grid{grid-template-columns:1fr}.newsletter{padding:var(--space-5)}.newsletter__form{grid-template-columns:1fr}.button{width:100%}}

/* Internal-page patterns captured from Our Impact and Get Involved. */
.impact-board{background:#f3f7d4;color:#1e3751}.impact-board__intro{max-width:650px;margin-bottom:36px}.impact-board__intro h2 span{display:block;color:#b4a850}.impact-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:900px;background:#fff}.impact-stat{container-type:inline-size;display:grid;grid-template-columns:minmax(0,1fr);min-width:0;min-height:180px;align-content:end;padding:20px;color:#fff}.impact-stat strong{display:block;font-family:var(--font-heading);font-weight:400;font-size:32px;font-size:min(64px,19cqi);line-height:1.15;letter-spacing:-.02em;white-space:nowrap}.impact-stat span{min-width:0;overflow-wrap:anywhere;margin-top:12px;font:700 13px/1.25 var(--font-body)}.impact-stat--river{background:#1e3751}.impact-stat--teal{background:#51a396}.impact-stat--gold{background:#b4a850}.impact-stat--navy{background:#778796}.impact-stat--peach{background:#edbd95}.impact-stat--sand{background:#d9cf91;color:#1e3751}
.volunteer{background:#fff}.volunteer__intro{display:grid;grid-template-columns:.8fr 1.2fr;gap:var(--space-6);align-items:end;margin-bottom:36px}.volunteer__intro h2{color:#b4a850}.volunteer__intro p{max-width:490px;font:700 24px/1.2 var(--font-body)}.volunteer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.volunteer-card{display:flex;min-height:245px;flex-direction:column;padding:24px;color:#fff}.volunteer-card h3{font-size:clamp(26px,2.6vw,40px);line-height:.94}.volunteer-card p{margin-top:18px;font-size:14px}.volunteer-card a{margin-top:auto;align-self:start;padding:8px 12px;background:#fff;color:#1e3751;font-size:12px;font-weight:700;text-decoration:none;text-transform:uppercase}.volunteer-card--orange{background:#edb263}.volunteer-card--navy{background:#778796}.volunteer-card--teal{background:#8ac3b7}
.events{background:#e98014;color:#fff}.events__intro{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6);align-items:end;margin-bottom:40px}.events__intro h2{font-size:clamp(64px,7vw,108px);line-height:.85}.events__intro p{max-width:380px;font:700 24px/1.1 var(--font-body)}.events-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px}.events h3{font-family:var(--font-body);font-size:22px;font-weight:700;letter-spacing:0;text-transform:uppercase}.event-calendar,.event-list{padding:22px;background:#fff;color:#1e3751}.event-calendar__month{margin:12px 0;font-weight:700;text-transform:uppercase}.event-calendar__days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.event-calendar__days span{display:grid;min-height:32px;place-items:center;background:#f5f5f1;font-size:12px}.event-calendar__days span:nth-child(12),.event-calendar__days span:nth-child(19){background:#f3fe6f;font-weight:700}.event-list{display:grid;align-content:start;gap:0}.event-list h3{margin-bottom:12px}.event-list a{display:grid;grid-template-columns:72px 1fr;gap:12px;padding:15px 0;border-top:1px solid #d5d9d1;color:#1e3751;font-size:15px;font-weight:700;text-decoration:none}.event-list a span{color:#e38020;text-transform:uppercase}
@media(max-width:900px){.impact-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.volunteer__intro,.events__intro,.events-grid{grid-template-columns:1fr}.impact-stat{min-height:150px}}
@media(max-width:560px){.impact-board .container{width:calc(100% - 40px)}.impact-stat{min-height:142px;padding:14px}.impact-stat span{margin-top:8px;font-size:11px}.volunteer-grid{grid-template-columns:1fr}.volunteer__intro p,.events__intro p{font-size:20px}.events-grid{gap:20px}}
