/* Founded Colorado — ported from Chris Erickson's original Cloudflare Pages build; recolored
   2026-10-03 to the mountain logo's greens.
   Palette: mist #f6f8f6, pine #0f3d2e, forest #1f6349, meadow #78b396
   Colorado accents (State of Colorado brand primaries, dcs.colorado.gov/color-system):
   sky #d9e8f6 (hero), red #c3002f (eyebrows, active/hover links), gold #ffd100 (sun, on-pine CTA + icons)
   Logo facets: #0f3d2e #17503c #2f7a5a #1f6349 #78b396, wordmark accent #3e9e73 */

body{margin:0;background:#f6f8f6;color:#0f3d2e;font-family:'IBM Plex Sans',system-ui,sans-serif;-webkit-font-smoothing:antialiased}
a{color:#1f6349}a:hover{color:#c3002f}
.serif{font-family:Fraunces,Georgia,serif}

.fc-root{width:100%;min-height:100vh;box-sizing:border-box;display:flex;flex-direction:column;background:#f6f8f6}
.fc-wrap{position:relative;box-sizing:border-box;width:100%;max-width:1200px;margin:0 auto;padding-left:40px;padding-right:40px}

/* Header */
.fc-header{padding-top:32px;padding-bottom:32px;display:flex;justify-content:space-between;align-items:center;gap:24px}
.fc-logo{display:flex;align-items:center;gap:16px;text-decoration:none}

/* Logo: mark (partials/logo-mark.html) + wordmark. Facet colors are custom properties so the
   footer can reverse the mark onto pine. */
.fc-mark{--mk-a:#0f3d2e;--mk-b:#17503c;--mk-c:#2f7a5a;--mk-d:#1f6349;--mk-e:#78b396;--mk-line:#fff;--mk-node:#fff;--mk-ring:#0f3d2e;display:block;height:52px;width:auto;aspect-ratio:662/250;flex-shrink:0}
.fc-wordmark{display:flex;flex-direction:column;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-size:17px;font-weight:400;line-height:1.12;letter-spacing:0.15em;text-transform:uppercase;color:#0f3d2e}
.fc-wordmark b{font-weight:400;color:#3e9e73}
.fc-tagline{font-family:'Roboto Slab',Rockwell,Georgia,serif;font-weight:600;color:#2f7a5a}
.fc-nav{display:flex;align-items:center;gap:28px}
.fc-nav a.fc-navlink{color:#0f3d2e;text-decoration:none;font-size:15px;font-weight:500}
.fc-nav a.fc-navlink:hover{color:#c3002f}
.fc-nav a.fc-navlink.is-active{color:#c3002f}
.fc-header-cta{display:inline-flex;align-items:center;min-height:44px;padding:0 22px;border-radius:999px;background:#0f3d2e;color:#f6f8f6;font-size:15px;font-weight:500;text-decoration:none}
.fc-header-cta:hover{color:#f6f8f6;background:#1f6349}

/* Phone menu — hidden on desktop, replaces .fc-nav at <= 760px (see media query) */
.fc-menu{display:none;position:relative}
.fc-menu summary{list-style:none;cursor:pointer;width:44px;height:44px;box-sizing:border-box;display:flex;align-items:center;justify-content:center;border-radius:999px;border:1.5px solid #0f3d2e;color:#0f3d2e}
.fc-menu summary::-webkit-details-marker{display:none}
.fc-menu summary:focus-visible{outline:2px solid #1f6349;outline-offset:2px}
.fc-menu .fc-i-close{display:none}
.fc-menu[open] .fc-i-close{display:block}
.fc-menu[open] .fc-i-open{display:none}
.fc-menu-panel{position:absolute;right:0;top:54px;z-index:30;min-width:210px;box-sizing:border-box;background:#fff;border:1px solid #d5e2da;border-radius:16px;box-shadow:0 12px 32px rgba(22,35,29,0.16);padding:8px;display:flex;flex-direction:column;gap:2px}
.fc-menu-panel a{display:block;padding:12px 14px;border-radius:10px;color:#0f3d2e;text-decoration:none;font-size:16px;font-weight:500}
.fc-menu-panel a:hover{background:#f6f8f6;color:#0f3d2e}
.fc-menu-panel a.fc-current{color:#c3002f}
.fc-menu-panel a.fc-menu-cta{margin-top:6px;background:#0f3d2e;color:#f6f8f6;text-align:center;border-radius:999px}

/* Shared type */
.fc-eyebrow{font-size:14px;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;color:#c3002f}
.fc-lede{margin:0;max-width:640px;font-size:19px;line-height:1.6;color:#33413a}
.fc-h2{margin:0;font-family:Fraunces,Georgia,serif;font-weight:400;letter-spacing:-0.015em}
.fc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.fc-card{box-sizing:border-box;background:#fff;border:1px solid #d5e2da;border-radius:16px;display:flex;flex-direction:column}

/* Home hero */
.fc-hero{position:relative;width:100%;height:1040px;overflow:hidden;background:#d9e8f6}
.fc-hero-art{position:absolute;left:0;bottom:0;width:100%;height:540px;display:block}
.fc-hero-text{padding-top:40px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:24px}
.fc-h1{margin:0;max-width:960px;font-family:Fraunces,Georgia,serif;font-size:64px;line-height:1.05;font-weight:400;letter-spacing:-0.02em;color:#0f3d2e}
.fc-ctas{display:flex;gap:12px;margin-top:8px}
.fc-btn{display:inline-flex;align-items:center;min-height:48px;padding:0 26px;border-radius:999px;font-size:16px;font-weight:500;text-decoration:none}
.fc-btn--primary{background:#1f6349;color:#f6f8f6}
.fc-btn--primary:hover{color:#f6f8f6;background:#0f3d2e}
.fc-btn--outline{border:1.5px solid #0f3d2e;color:#0f3d2e}
.fc-btn--peach{background:#ffd100;color:#0f3d2e;font-weight:600;white-space:nowrap}
.fc-btn--peach:hover{color:#0f3d2e;background:#ffe14d}

/* Pillars */
.fc-dark{background:#0f3d2e;color:#f6f8f6}
.fc-pillars{padding-top:72px;padding-bottom:104px;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:80px;row-gap:56px}
.fc-pillar{display:flex;flex-direction:column;gap:16px}
.fc-pillar h2{margin:0;font-family:Fraunces,Georgia,serif;font-size:28px;font-weight:400;line-height:1.2}
.fc-pillar p{margin:0;font-size:17px;line-height:1.6;color:#c9d1cc}

/* Proof point */
.fc-proof{padding-top:104px;padding-bottom:112px;display:flex;flex-direction:column;gap:16px;align-items:flex-start}
.fc-proof .fc-h2{font-size:52px;line-height:1.1}
.fc-proof p{margin:0;max-width:760px;font-size:19px;line-height:1.6;color:#3d4a43}

/* Contact */
.fc-contact-section{position:relative;overflow:hidden}
.fc-topo{position:absolute;right:-120px;top:-40px;width:640px;height:640px}
.fc-contact{padding-top:104px;padding-bottom:112px;display:flex;flex-direction:column;gap:48px}
.fc-contact-head{display:flex;flex-direction:column;gap:16px;max-width:720px}
.fc-contact-head .fc-h2{font-size:52px;line-height:1.1}
.fc-contact-head p{margin:0;font-size:19px;line-height:1.6;color:#3d4a43}
.fc-cards{gap:24px}
.fc-cards .fc-card{padding:36px 32px;gap:16px}
.fc-card-icon{width:56px;height:56px;border-radius:999px;background:#e7efe9;display:flex;align-items:center;justify-content:center}
.fc-cards h3{margin:0;font-family:Fraunces,Georgia,serif;font-size:26px;font-weight:600}
.fc-cards p{margin:0;flex-grow:1;font-size:16px;line-height:1.6;color:#3d4a43}
.fc-email{font-size:17px;font-weight:600;text-underline-offset:4px;overflow-wrap:anywhere}
.fc-form{position:relative;display:flex;flex-direction:column;gap:20px;max-width:720px}
.fc-form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.fc-field{display:flex;flex-direction:column;gap:8px;font-size:15px;font-weight:600;color:#0f3d2e}
.fc-field em{font-style:normal;font-weight:400;color:#5b6660}
.fc-field input,.fc-field textarea{box-sizing:border-box;width:100%;padding:13px 16px;border:1px solid #bfd0c6;border-radius:12px;background:#fff;color:#0f3d2e;font:inherit;font-weight:400;font-size:17px;line-height:1.5}
.fc-field textarea{resize:vertical;min-height:160px}
.fc-field input:focus,.fc-field textarea:focus{outline:2px solid #1f6349;outline-offset:1px;border-color:#1f6349}
.fc-hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.fc-form-foot{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.fc-form-foot .fc-btn{border:0;cursor:pointer;font-family:inherit}
.fc-form-foot .fc-btn:disabled{opacity:.6;cursor:default}
.fc-form-status{margin:0;font-size:16px;color:#3d4a43}
.fc-form-status.is-ok{color:#1f6349;font-weight:600}
.fc-form-status.is-err{color:#b3401a;font-weight:600}

/* Inner-page hero */
.fc-page-hero-section{position:relative;width:100%;overflow:hidden;background:#d9e8f6}
.fc-page-hero-art{position:absolute;left:0;bottom:0;width:100%;height:160px;display:block}
.fc-page-hero{padding-top:40px;padding-bottom:200px;display:flex;flex-direction:column;gap:18px}
.fc-page-h1{margin:0;max-width:820px;font-family:Fraunces,Georgia,serif;font-size:60px;line-height:1.05;font-weight:400;letter-spacing:-0.02em;color:#0f3d2e}

.fc-section{display:flex;flex-direction:column;gap:32px}
.fc-section .fc-h2{font-size:40px}
.fc-section--first{padding-top:88px;padding-bottom:40px}
.fc-section--next{padding-top:56px;padding-bottom:112px}
.fc-section--members{padding-top:88px;padding-bottom:64px}

/* Leadership */
.fc-feature{box-sizing:border-box;padding:40px;background:#fff;border:1px solid #d5e2da;border-radius:16px;display:flex;align-items:flex-start;gap:36px}
.fc-avatar{width:128px;height:128px;flex-shrink:0;border-radius:999px;background:#e7efe9;border:1px solid #cfdcd3;display:flex;align-items:center;justify-content:center;font-family:Fraunces,Georgia,serif;font-size:42px;color:#1f6349;object-fit:cover}
.fc-feature-body{display:flex;flex-direction:column;gap:10px;max-width:720px}
.fc-feature-body h3{margin:0;font-family:Fraunces,Georgia,serif;font-size:30px;font-weight:600}
.fc-feature-body p{margin:0;font-size:17px;line-height:1.6;color:#3d4a43}
.fc-feature-body .fc-email{font-size:16px}
.fc-board{gap:24px}
.fc-board .fc-card{padding:32px 28px;gap:14px}
.fc-board img{width:96px;height:96px;border-radius:999px;object-fit:cover;display:block}
.fc-person{display:flex;flex-direction:column;gap:4px}
.fc-person h3{margin:0;font-family:Fraunces,Georgia,serif;font-size:24px;font-weight:600}
.fc-affiliation{font-size:15px;color:#3d4a43}

/* Members */
.fc-logos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.fc-logo-tile{box-sizing:border-box;height:120px;padding:24px 28px;background:#fff;border:1px solid #d5e2da;border-radius:16px;display:flex;align-items:center;justify-content:center;text-align:center;gap:12px}
.fc-logo-tile img.fc-wordmark{max-width:100%;width:auto;height:auto;object-fit:contain}
.fc-logo-icon{width:40px;height:40px;border-radius:8px;flex-shrink:0}
.fc-logo-text{font-size:22px;font-weight:600;letter-spacing:-0.01em;color:#111}
.fc-join-wrap{padding-bottom:112px}
.fc-join{box-sizing:border-box;padding:48px;background:#0f3d2e;border-radius:20px;color:#f6f8f6;display:flex;justify-content:space-between;align-items:center;gap:32px}
.fc-join-text{display:flex;flex-direction:column;gap:10px;max-width:640px}
.fc-join h2{margin:0;font-family:Fraunces,Georgia,serif;font-size:36px;font-weight:400}
.fc-join p{margin:0;font-size:17px;line-height:1.6;color:#c9d1cc}

/* 404 */
.fc-notfound{padding-top:88px;padding-bottom:112px;display:flex;flex-direction:column;gap:18px;align-items:flex-start}

/* Footer */
.fc-footer-bar{margin-top:auto;background:#0f3d2e;color:#c9d1cc}
.fc-footer{padding-top:40px;padding-bottom:40px;display:flex;justify-content:space-between;align-items:center;gap:24px;font-size:14px;line-height:1.5}
.fc-footer-brand{display:flex;align-items:center;gap:18px;text-decoration:none}
.fc-footer-brand .fc-mark{--mk-a:#2a7052;--mk-b:#348a64;--mk-c:#78b396;--mk-d:#4d9e78;--mk-e:#a8d3bf;--mk-line:#0f3d2e;--mk-node:#f6f8f6;--mk-ring:#0f3d2e;height:60px}
.fc-footer-brand .fc-wordmark{font-size:15px;color:#f6f8f6}
.fc-footer-brand .fc-wordmark b{color:#78b396}
.fc-footer-brand .fc-tagline{margin-top:7px;padding-top:6px;border-top:1px solid #3e9e73;font-size:13px;letter-spacing:0;text-transform:none;color:#9fceb9}
.fc-footer nav{display:flex;gap:20px;font-size:14px}
.fc-footer nav a{color:#f6f8f6;text-decoration:none}
.fc-footer nav a:hover{color:#ffd100}
.fc-legal{max-width:620px;text-align:right}

@media (max-width: 760px){
  .fc-form-row{grid-template-columns:1fr}
  .fc-wrap{padding-left:20px;padding-right:20px}
  .fc-header{padding-top:18px;padding-bottom:18px;gap:12px}
  .fc-logo{gap:12px}
  .fc-header .fc-mark{height:40px}
  .fc-header .fc-wordmark{font-size:14px}
  .fc-header{z-index:20}
  .fc-nav{display:none}
  .fc-menu{display:block}
  .fc-hero{height:auto;padding-bottom:290px}
  .fc-hero-art{height:300px}
  .fc-hero-text{padding-top:28px;gap:18px}
  .fc-eyebrow{font-size:12px;letter-spacing:0.1em;line-height:1.5}
  .fc-h1{font-size:40px;line-height:1.1}
  .fc-lede{font-size:17px}
  .fc-ctas{flex-direction:column;align-self:stretch}
  .fc-btn{justify-content:center}
  .fc-grid{grid-template-columns:minmax(0,1fr)}
  .fc-pillars{grid-template-columns:minmax(0,1fr);gap:40px;padding-top:48px;padding-bottom:64px}
  .fc-proof{padding-top:64px;padding-bottom:72px}
  .fc-proof .fc-h2{font-size:38px}
  .fc-contact{padding-top:64px;padding-bottom:72px;gap:32px}
  .fc-contact-head .fc-h2,.fc-section .fc-h2{font-size:38px}
  .fc-cards .fc-card,.fc-board .fc-card{padding:28px 24px}
  .fc-topo{width:420px;height:420px;right:-200px}
  .fc-page-hero{padding-top:24px;padding-bottom:180px}
  .fc-page-h1{font-size:40px}
  .fc-feature{flex-direction:column;align-items:flex-start;padding:28px 24px}
  .fc-logos{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fc-logo-tile{padding:16px 12px;gap:8px}
  .fc-logo-text{font-size:15px;line-height:1.2}
  .fc-logo-icon{width:28px;height:28px}
  .fc-join{flex-direction:column;align-items:flex-start}
  .fc-legal{text-align:left}
  .fc-footer{flex-direction:column;align-items:flex-start;padding-top:32px;padding-bottom:32px;gap:12px}
}
