/* =========================================================
   Groundwork Coffee House — Main Stylesheet
   Google Fonts are enqueued via functions.php, not imported here.
   ========================================================= */

:root {
  --forest:#2C4A2E;--moss:#4E7C52;--leaf:#7BAE7F;--gold:#C89A2E;
  --amber:#E8B84B;--rust:#A0522D;--terra:#C67D4B;
  --cream:#F6F1E9;--warm:#EDE4D4;--dark:#1A2B1B;
  --text:#1E1E1E;--muted:#555;--white:#FEFCF8;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:'IBM Plex Sans',sans-serif;background:var(--white);color:var(--text);overflow-x:hidden;}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:1rem 2.5rem;background:rgba(26,43,27,0.97);backdrop-filter:blur(8px);}
.nav-logo{display:flex;flex-direction:column;}
.nav-logo-name{font-family:'Playfair Display',serif;font-size:1.1rem;color:var(--amber);line-height:1.2;}
.nav-logo-tag{font-family:'IBM Plex Sans',sans-serif;font-size:0.58rem;letter-spacing:0.13em;text-transform:uppercase;color:rgba(246,241,233,0.38);font-weight:300;}
.nav-links{display:flex;gap:1.6rem;align-items:center;}
.nav-links a{color:rgba(246,241,233,0.72);text-decoration:none;font-size:0.73rem;letter-spacing:0.08em;text-transform:uppercase;transition:color 0.2s;}
.nav-links a:hover{color:var(--amber);}
.nav-cta{background:var(--amber);color:var(--dark)!important;padding:0.48rem 1.1rem;border-radius:3px;font-weight:500!important;}
.nav-cta:hover{background:#f5cb5c!important;}

/* HAMBURGER */
.nav-hamburger{display:none;background:none;border:none;cursor:pointer;padding:0.4rem;color:var(--cream);}
.nav-hamburger svg{display:block;}

/* HERO */
.hero{min-height:100vh;background:var(--dark);display:flex;flex-direction:column;justify-content:center;padding:8rem 2.5rem 5rem;position:relative;overflow:hidden;}
.hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 80% 20%,rgba(78,124,82,0.25) 0%,transparent 55%),radial-gradient(ellipse at 5% 85%,rgba(160,82,45,0.18) 0%,transparent 50%);}
.hero-eyebrow{display:inline-flex;align-items:center;gap:0.6rem;font-size:0.65rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--amber);margin-bottom:1.4rem;animation:fadeUp 0.6s ease both;}
.hero-eyebrow::before{content:'';width:24px;height:1px;background:var(--amber);}
.hero h1{font-family:'Playfair Display',serif;font-size:clamp(2.8rem,6.5vw,6rem);font-weight:400;color:var(--cream);line-height:1.06;max-width:820px;animation:fadeUp 0.6s 0.1s ease both;}
.hero h1 em{font-style:italic;color:var(--amber);}
.hero-tag{font-family:'Playfair Display',serif;font-size:clamp(1rem,1.6vw,1.3rem);font-style:italic;color:rgba(246,241,233,0.55);margin-top:1.4rem;animation:fadeUp 0.6s 0.18s ease both;font-weight:400;}
.hero-sub{font-size:clamp(0.9rem,1.2vw,1.05rem);color:rgba(246,241,233,0.65);max-width:520px;line-height:1.85;margin-top:1.2rem;font-weight:300;animation:fadeUp 0.6s 0.25s ease both;}
.hero-actions{display:flex;gap:1rem;flex-wrap:wrap;margin-top:2.5rem;animation:fadeUp 0.6s 0.32s ease both;}
.btn-amber{background:var(--amber);color:var(--dark);padding:0.85rem 2rem;border:none;border-radius:3px;font-family:'IBM Plex Sans',sans-serif;font-size:0.75rem;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:all 0.2s;display:inline-block;}
.btn-amber:hover{background:#f5cb5c;transform:translateY(-1px);}
.btn-ghost{background:transparent;color:var(--cream);padding:0.85rem 2rem;border:1px solid rgba(246,241,233,0.25);border-radius:3px;font-family:'IBM Plex Sans',sans-serif;font-size:0.75rem;font-weight:400;letter-spacing:0.1em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:all 0.2s;display:inline-block;}
.btn-ghost:hover{border-color:var(--amber);color:var(--amber);}
.hero-location{display:inline-flex;align-items:center;gap:0.5rem;font-size:0.72rem;color:rgba(246,241,233,0.35);letter-spacing:0.08em;margin-top:2.5rem;animation:fadeUp 0.6s 0.38s ease both;}
.hero-location::before{content:'📍';font-size:0.75rem;}

/* FREE COFFEE BANNER */
.free-banner{background:var(--amber);padding:1.1rem 2.5rem;text-align:center;}
.free-banner p{font-size:0.88rem;color:var(--dark);font-weight:400;line-height:1.6;}
.free-banner p strong{font-weight:600;}
.free-banner p em{font-style:italic;}

/* SECTION SHARED */
section{padding:6rem 2.5rem;}
.inner{max-width:1100px;margin:0 auto;}
.inner-sm{max-width:820px;margin:0 auto;}
.eyebrow{font-size:0.65rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--moss);margin-bottom:0.9rem;display:flex;align-items:center;gap:0.6rem;}
.eyebrow::before{content:'';width:20px;height:1px;background:var(--moss);}
.eyebrow-light{color:rgba(123,174,127,0.7);}
.eyebrow-light::before{background:rgba(123,174,127,0.7);}
.eyebrow-amber{color:rgba(232,184,75,0.6);}
.eyebrow-amber::before{background:rgba(232,184,75,0.6);}
.h2{font-family:'Playfair Display',serif;font-size:clamp(1.8rem,3.5vw,2.85rem);font-weight:400;line-height:1.2;color:var(--forest);}
.h2 em{font-style:italic;color:var(--rust);}
.h2w{color:var(--cream);}
.h2w em{color:var(--amber);}

/* ABOUT / WHO WE ARE */
.about{background:var(--white);}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center;margin-top:3.5rem;}
.about-body p{font-size:0.97rem;line-height:1.9;color:var(--muted);font-weight:300;margin-bottom:1.3rem;}
.about-body p strong{color:var(--text);font-weight:500;}
.about-pull{background:var(--forest);padding:3rem;border-radius:4px;position:relative;}
.about-pull::before{content:'"';font-family:'Playfair Display',serif;font-size:8rem;line-height:0.6;color:var(--amber);opacity:0.15;position:absolute;top:2rem;left:1.5rem;}
.about-pull blockquote{font-family:'Playfair Display',serif;font-size:1.4rem;font-style:italic;color:var(--cream);line-height:1.6;position:relative;z-index:1;}
.about-pull cite{display:block;margin-top:1.5rem;font-family:'IBM Plex Sans',sans-serif;font-size:0.68rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--amber);font-style:normal;}

/* MENU */
.menu{background:var(--forest);padding:6rem 2.5rem;}
.menu-intro{max-width:640px;margin-bottom:3.5rem;}
.menu-intro p{font-size:0.97rem;line-height:1.82;color:rgba(246,241,233,0.65);font-weight:300;margin-top:1.2rem;}
.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:2.5rem;}
.mc{background:rgba(255,255,255,0.05);border:1px solid rgba(246,241,233,0.1);border-radius:4px;padding:2rem 1.8rem;transition:background 0.2s;}
.mc:hover{background:rgba(255,255,255,0.09);}
.mc .mi{font-size:2rem;margin-bottom:1rem;}
.mc h4{font-family:'Playfair Display',serif;font-size:1.15rem;color:var(--amber);margin-bottom:0.6rem;font-weight:400;}
.mc p{font-size:0.86rem;line-height:1.72;color:rgba(246,241,233,0.58);font-weight:300;}
.mc .price-note{margin-top:1rem;font-size:0.72rem;letter-spacing:0.08em;color:rgba(232,184,75,0.7);text-transform:uppercase;}
.food-note{background:rgba(255,255,255,0.04);border:1px solid rgba(246,241,233,0.1);border-radius:4px;padding:1.8rem 2rem;display:flex;gap:1.5rem;align-items:start;}
.food-note .fn-icon{font-size:1.8rem;flex-shrink:0;}
.food-note-text h5{font-family:'Playfair Display',serif;font-size:1.05rem;color:var(--amber);margin-bottom:0.5rem;font-weight:400;}
.food-note-text p{font-size:0.86rem;line-height:1.72;color:rgba(246,241,233,0.58);font-weight:300;}
.food-note-text p strong{color:rgba(246,241,233,0.8);font-weight:500;}

/* DONATION MODEL */
.donation{background:var(--warm);padding:5rem 2.5rem;}
.donation-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center;margin-top:3rem;}
.donation-body p{font-size:0.97rem;line-height:1.88;color:var(--muted);font-weight:300;margin-bottom:1.2rem;}
.donation-body p strong{color:var(--text);font-weight:500;}
.donation-card{background:var(--forest);border-radius:4px;padding:2.5rem;}
.donation-card h4{font-family:'Playfair Display',serif;font-size:1.2rem;color:var(--amber);margin-bottom:1.5rem;font-weight:400;}
.drow{display:flex;gap:1rem;padding:1rem 0;border-bottom:1px solid rgba(246,241,233,0.08);align-items:start;}
.drow:last-child{border-bottom:none;}
.drow-icon{font-size:1.4rem;flex-shrink:0;line-height:1;}
.drow-text strong{display:block;font-size:0.8rem;color:var(--amber);letter-spacing:0.06em;text-transform:uppercase;margin-bottom:0.25rem;font-weight:500;}
.drow-text p{font-size:0.83rem;color:rgba(246,241,233,0.58);line-height:1.65;font-weight:300;}

/* COMMUNITY CREDITS */
.credits{background:var(--dark);padding:6rem 2.5rem;}
.credits-intro{max-width:680px;margin-bottom:3.5rem;}
.credits-intro p{font-size:0.97rem;line-height:1.82;color:rgba(246,241,233,0.65);font-weight:300;margin-top:1.2rem;}
.credits-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:3rem;}
.credits-col h4{font-family:'Playfair Display',serif;font-size:1.18rem;color:var(--amber);margin-bottom:1.2rem;font-weight:400;display:flex;align-items:center;gap:0.6rem;}
.credits-col h4 span{font-size:1.4rem;}
.credit-item{display:flex;justify-content:space-between;align-items:start;padding:0.9rem 1rem;border-bottom:1px solid rgba(246,241,233,0.07);gap:1rem;}
.credit-item:last-child{border-bottom:none;}
.ci-label{font-size:0.86rem;color:rgba(246,241,233,0.65);font-weight:300;line-height:1.5;}
.ci-label small{display:block;font-size:0.74rem;color:rgba(246,241,233,0.35);margin-top:0.2rem;}
.ci-value{font-family:'Playfair Display',serif;font-size:1.15rem;color:var(--amber);white-space:nowrap;flex-shrink:0;}
.credits-box{background:rgba(255,255,255,0.04);border:1px solid rgba(246,241,233,0.1);border-radius:4px;padding:1.5rem;}
.credits-note{background:rgba(232,184,75,0.08);border:1px solid rgba(232,184,75,0.2);border-radius:4px;padding:1.5rem 2rem;margin-top:2rem;}
.credits-note p{font-size:0.88rem;color:rgba(246,241,233,0.6);line-height:1.72;font-weight:300;}
.credits-note p strong{color:var(--amber);font-weight:500;}
.punch-note{display:flex;gap:1.2rem;align-items:start;background:rgba(255,255,255,0.04);border:1px solid rgba(246,241,233,0.1);border-radius:4px;padding:1.5rem;margin-top:1.2rem;}
.punch-note .pn-icon{font-size:1.8rem;flex-shrink:0;}
.punch-note p{font-size:0.84rem;color:rgba(246,241,233,0.55);line-height:1.7;font-weight:300;}
.punch-note p strong{color:rgba(246,241,233,0.8);font-weight:500;}

/* FOUNDATION PROGRAMS */
.foundation{background:var(--white);padding:6rem 2.5rem;}
.foundation-intro{max-width:680px;margin-bottom:3.5rem;}
.foundation-intro p{font-size:0.97rem;line-height:1.82;color:var(--muted);font-weight:300;margin-top:1.2rem;}
.prog-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.8rem;}
.pc{background:var(--cream);border-radius:4px;padding:2.5rem;border-left:4px solid transparent;transition:transform 0.22s;}
.pc:hover{transform:translateY(-3px);}
.pc.g{border-color:var(--moss);}
.pc.a{border-color:var(--amber);}
.pc.r{border-color:var(--rust);}
.pc.d{border-color:var(--leaf);}
.pc .pi{font-size:1.85rem;margin-bottom:1.2rem;}
.pc h4{font-family:'Playfair Display',serif;font-size:1.28rem;font-weight:500;color:var(--forest);margin-bottom:0.7rem;}
.pc p{font-size:0.87rem;line-height:1.8;color:var(--muted);font-weight:300;}
.ptag{display:inline-block;margin-top:1rem;font-size:0.62rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--moss);border:1px solid var(--leaf);padding:0.28rem 0.7rem;border-radius:2px;}

/* GARDEN TIERS */
.tiers{background:var(--warm);padding:6rem 2.5rem;}
.tiers-intro{max-width:680px;margin-bottom:3.5rem;}
.tiers-intro p{font-size:0.97rem;line-height:1.82;color:var(--muted);font-weight:300;margin-top:1.2rem;}
.tiers-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:2rem;}
.tier-card{border-radius:4px;padding:2.2rem 1.8rem;}
.tier-card.t1{background:var(--forest);border:1px solid rgba(78,124,82,0.3);}
.tier-card.t2{background:var(--moss);border:1px solid rgba(78,124,82,0.5);}
.tier-card.t3{background:var(--dark);border:1px solid rgba(232,184,75,0.3);}
.tier-badge{font-size:0.6rem;letter-spacing:0.15em;text-transform:uppercase;padding:0.28rem 0.8rem;border-radius:100px;display:inline-block;margin-bottom:1.2rem;font-weight:500;}
.t1 .tier-badge{background:rgba(246,241,233,0.1);color:rgba(246,241,233,0.55);}
.t2 .tier-badge{background:rgba(255,255,255,0.15);color:#fff;}
.t3 .tier-badge{background:rgba(232,184,75,0.15);color:var(--amber);}
.tier-card .tier-icon{font-size:1.9rem;margin-bottom:0.8rem;display:block;}
.tier-card h4{font-family:'Playfair Display',serif;font-size:1.22rem;font-weight:500;margin-bottom:0.45rem;}
.t1 h4,.t2 h4{color:var(--cream);}
.t3 h4{color:var(--amber);}
.tier-card .tier-sub{font-size:0.7rem;letter-spacing:0.09em;text-transform:uppercase;margin-bottom:0.9rem;}
.t1 .tier-sub,.t2 .tier-sub{color:rgba(246,241,233,0.42);}
.t3 .tier-sub{color:rgba(232,184,75,0.5);}
.tier-card ul{list-style:none;}
.tier-card ul li{font-size:0.82rem;padding:0.3rem 0;border-bottom:1px solid rgba(246,241,233,0.07);display:flex;gap:0.6rem;font-weight:300;}
.t1 ul li,.t2 ul li{color:rgba(246,241,233,0.6);}
.t3 ul li{color:rgba(246,241,233,0.58);}
.t1 ul li::before{content:'›';color:var(--leaf);}
.t2 ul li::before{content:'›';color:rgba(255,255,255,0.5);}
.t3 ul li::before{content:'›';color:var(--amber);}
.tiers-cta{background:var(--forest);border-radius:4px;padding:2rem;text-align:center;}
.tiers-cta p{font-size:0.92rem;color:rgba(246,241,233,0.62);line-height:1.7;margin-bottom:1.2rem;font-weight:300;}
.tiers-cta p strong{color:var(--amber);}

/* GARDEN INTEREST */
.garden-interest{background:var(--forest);padding:5.5rem 2.5rem;}
.gi-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start;margin-top:3rem;}
.gi-info p{font-size:0.95rem;line-height:1.85;color:rgba(246,241,233,0.65);font-weight:300;margin-bottom:1rem;}
.gi-note{background:rgba(232,184,75,0.1);border:1px solid rgba(232,184,75,0.25);border-radius:4px;padding:1.2rem 1.5rem;font-size:0.83rem;color:rgba(246,241,233,0.6);line-height:1.7;}
.gi-note strong{color:var(--amber);}

/* VOLUNTEER */
.volunteer{background:var(--dark);padding:6rem 2.5rem;}
.vol-intro{max-width:680px;margin-bottom:3rem;}
.vol-intro p{font-size:0.97rem;line-height:1.82;color:rgba(246,241,233,0.65);font-weight:300;margin-top:1.2rem;}
.vol-roles{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:3rem;}
.vr{background:rgba(255,255,255,0.05);border:1px solid rgba(246,241,233,0.1);border-radius:4px;padding:1.5rem 1.2rem;text-align:center;}
.vr .vi{font-size:1.8rem;margin-bottom:0.7rem;}
.vr h5{font-family:'Playfair Display',serif;font-size:0.97rem;color:var(--amber);margin-bottom:0.5rem;font-weight:400;}
.vr p{font-size:0.8rem;color:rgba(246,241,233,0.5);line-height:1.6;font-weight:300;}
.vol-form-wrap{background:rgba(255,255,255,0.04);border:1px solid rgba(246,241,233,0.1);border-radius:4px;padding:2.5rem;}
.vol-form-wrap h3{font-family:'Playfair Display',serif;font-size:1.4rem;color:var(--amber);margin-bottom:0.5rem;font-weight:400;}
.vol-note{font-size:0.84rem;color:rgba(246,241,233,0.48);line-height:1.65;margin-bottom:1.8rem;font-weight:300;}
.vol-note strong{color:rgba(232,184,75,0.75);}

/* DIGNITY / PHILOSOPHY */
.dignity{background:var(--forest);padding:6rem 2.5rem;}
.dignity-inner{max-width:860px;margin:0 auto;}
.dignity-body{font-size:1.02rem;line-height:1.92;color:rgba(246,241,233,0.68);font-weight:300;margin-top:1.8rem;}
.dignity-body strong{color:var(--amber);font-weight:500;}
.pills{display:flex;flex-wrap:wrap;gap:0.8rem;margin-top:2.5rem;}
.pill{background:rgba(255,255,255,0.05);border:1px solid rgba(232,184,75,0.22);padding:0.5rem 1.2rem;border-radius:100px;font-size:0.75rem;letter-spacing:0.06em;color:var(--amber);}

/* TECH / EDUCATION */
.tech{background:var(--cream);padding:6rem 2.5rem;}
.tech-intro{max-width:680px;margin-bottom:3.5rem;}
.tech-intro p{font-size:0.97rem;line-height:1.82;color:var(--muted);font-weight:300;margin-top:1.2rem;}
.tech-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;}
.tc{background:var(--white);padding:2rem 1.8rem;border-radius:4px;border-bottom:3px solid transparent;box-shadow:0 2px 12px rgba(44,74,46,0.06);transition:transform 0.2s;}
.tc:hover{transform:translateY(-3px);}
.tc.t1b{border-color:var(--moss);}
.tc.t2b{border-color:var(--amber);}
.tc.t3b{border-color:var(--rust);}
.tc .ti{font-size:1.75rem;margin-bottom:1rem;}
.tc h4{font-family:'Playfair Display',serif;font-size:1.1rem;color:var(--forest);margin-bottom:0.6rem;}
.tc p{font-size:0.85rem;line-height:1.75;color:var(--muted);font-weight:300;}

/* YOU-PICK */
.pickup{background:var(--moss);padding:4.5rem 2.5rem;text-align:center;}
.pickup-inner{max-width:680px;margin:0 auto;}
.badge{display:inline-block;background:var(--amber);color:var(--dark);padding:0.35rem 1rem;border-radius:100px;font-size:0.66rem;letter-spacing:0.14em;text-transform:uppercase;font-weight:500;margin-bottom:1.5rem;}
.pickup h2{font-family:'Playfair Display',serif;font-size:clamp(1.7rem,3.5vw,2.6rem);color:#fff;font-weight:400;line-height:1.2;margin-bottom:1rem;}
.pickup h2 em{font-style:italic;}
.pickup p{color:rgba(255,255,255,0.75);font-size:0.97rem;line-height:1.75;font-weight:300;margin-bottom:2rem;}
.pd-row{display:flex;justify-content:center;gap:1.5rem;flex-wrap:wrap;margin-bottom:2.2rem;}
.pd{background:rgba(255,255,255,0.15);padding:0.7rem 1.3rem;border-radius:3px;color:#fff;font-size:0.85rem;}
.pd strong{display:block;font-size:0.6rem;letter-spacing:0.12em;text-transform:uppercase;opacity:0.6;margin-bottom:0.18rem;font-weight:400;}

/* DONATE */
.donate{background:var(--amber);padding:5rem 2.5rem;}
.donate-inner{max-width:900px;margin:0 auto;}
.donate-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start;margin-top:2.5rem;}
.donate-text p{font-size:0.97rem;line-height:1.85;color:rgba(26,43,27,0.72);font-weight:300;margin-bottom:1rem;}
.donate-text p strong{color:var(--dark);font-weight:500;}
.donate-tiers{display:flex;flex-direction:column;gap:0.8rem;}
.dt{background:rgba(26,43,27,0.08);border:1px solid rgba(26,43,27,0.14);border-radius:4px;padding:1.1rem 1.4rem;display:flex;align-items:center;gap:1.2rem;}
.dt-amount{font-family:'Playfair Display',serif;font-size:1.45rem;color:var(--dark);min-width:65px;font-weight:400;}
.dt-label{font-size:0.83rem;color:rgba(26,43,27,0.68);line-height:1.5;font-weight:300;}
.dt-label strong{color:var(--dark);display:block;font-size:0.76rem;font-weight:500;}
.donate-notice{font-size:0.76rem;color:rgba(26,43,27,0.5);margin-top:1rem;line-height:1.6;}
.donate .eyebrow{color:rgba(26,43,27,0.45);}
.donate .eyebrow::before{background:rgba(26,43,27,0.4);}
.donate .h2{color:var(--dark);}
.donate .h2 em{color:var(--forest);}
.btn-dark{background:var(--dark);color:var(--amber);padding:0.88rem 2.2rem;border:none;border-radius:3px;font-family:'IBM Plex Sans',sans-serif;font-size:0.75rem;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:all 0.2s;display:inline-block;margin-top:1.5rem;}
.btn-dark:hover{background:#0d1a0e;}
.planned-giving{font-size:0.78rem;color:rgba(26,43,27,0.42);margin-top:0.5rem;}
.planned-giving a{color:rgba(26,43,27,0.55);text-decoration:none;border-bottom:1px solid rgba(26,43,27,0.2);}

/* IMPACT */
.impact{background:var(--white);padding:6rem 2.5rem;}
.impact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-top:3rem;}
.impact-stat{background:var(--cream);border-radius:4px;padding:2rem 1.5rem;text-align:center;border-bottom:3px solid var(--moss);}
.impact-stat .isn{font-family:'Playfair Display',serif;font-size:2.1rem;color:var(--forest);display:block;margin-bottom:0.4rem;}
.impact-stat .isl{font-size:0.7rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--muted);}
.impact-coming{background:var(--cream);border-radius:4px;padding:2rem;margin-top:2rem;text-align:center;border:2px dashed rgba(78,124,82,0.28);}
.impact-coming p{font-size:0.9rem;color:var(--muted);line-height:1.7;font-weight:300;}
.impact-coming p strong{color:var(--forest);}

/* TEAM */
.team{background:var(--warm);padding:6rem 2.5rem;}
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.8rem;margin-top:3rem;}
.team-coming{background:var(--white);border-radius:4px;padding:2rem;border:2px dashed rgba(78,124,82,0.25);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:180px;}
.team-coming p{font-size:0.84rem;color:var(--muted);line-height:1.6;font-weight:300;}
.team-coming p strong{color:var(--forest);}
.team-card{background:var(--white);border-radius:4px;padding:2rem;text-align:center;}
.team-card img{width:100px;height:100px;border-radius:50%;object-fit:cover;margin:0 auto 1rem;}
.team-card h4{font-family:'Playfair Display',serif;font-size:1.1rem;color:var(--forest);margin-bottom:0.3rem;}
.team-card .team-role{font-size:0.72rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--moss);margin-bottom:0.8rem;}
.team-card p{font-size:0.84rem;color:var(--muted);line-height:1.6;font-weight:300;}

/* PARTNERS */
.partners{background:var(--dark);padding:5rem 2.5rem;}
.partners-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;margin-top:2.5rem;}
.partner-slot{background:rgba(255,255,255,0.04);border:1px dashed rgba(246,241,233,0.1);border-radius:4px;height:88px;display:flex;align-items:center;justify-content:center;}
.partner-slot span{font-size:0.68rem;letter-spacing:0.1em;text-transform:uppercase;color:rgba(246,241,233,0.18);}
.partner-live{background:rgba(255,255,255,0.06);border:1px solid rgba(246,241,233,0.15);border-radius:4px;height:88px;display:flex;align-items:center;justify-content:center;padding:1rem;}
.partner-live img{max-height:60px;max-width:100%;object-fit:contain;filter:brightness(0) invert(1);opacity:0.7;}
.partners-note{margin-top:2rem;font-size:0.84rem;color:rgba(246,241,233,0.38);line-height:1.7;text-align:center;}
.partners-note a{color:var(--amber);text-decoration:none;}

/* FAQ */
.faq{background:var(--cream);padding:6rem 2.5rem;}
.faq-inner{max-width:780px;margin:0 auto;}
.faq-list{margin-top:2.5rem;}
.faq-item{border-bottom:1px solid rgba(44,74,46,0.1);}
.faq-q{width:100%;background:none;border:none;text-align:left;padding:1.4rem 0;font-family:'Playfair Display',serif;font-size:1.03rem;color:var(--forest);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1rem;}
.faq-q:hover{color:var(--rust);}
.faq-q:focus{outline:2px solid var(--moss);outline-offset:2px;}
.faq-q .faq-arrow{font-size:1.2rem;transition:transform 0.25s;color:var(--moss);flex-shrink:0;}
.faq-item.open .faq-arrow{transform:rotate(45deg);}
.faq-a{max-height:0;overflow:hidden;transition:max-height 0.3s ease;}
.faq-item.open .faq-a{max-height:500px;}
.faq-a-inner{padding:0 0 1.4rem;font-size:0.91rem;line-height:1.82;color:var(--muted);font-weight:300;}
.faq-a-inner strong{color:var(--text);font-weight:500;}

/* NEWSLETTER */
.newsletter{background:var(--moss);padding:4rem 2.5rem;text-align:center;}
.newsletter-inner{max-width:540px;margin:0 auto;}
.newsletter h3{font-family:'Playfair Display',serif;font-size:1.75rem;color:#fff;font-weight:400;margin-bottom:0.8rem;}
.newsletter p{color:rgba(255,255,255,0.72);font-size:0.93rem;line-height:1.7;font-weight:300;margin-bottom:1.8rem;}
.nl-form{display:flex;gap:0.6rem;max-width:420px;margin:0 auto;}
.nl-form input{flex:1;background:rgba(255,255,255,0.15);border:1px solid rgba(255,255,255,0.28);padding:0.72rem 1rem;border-radius:3px;font-family:'IBM Plex Sans',sans-serif;font-size:0.87rem;color:#fff;}
.nl-form input::placeholder{color:rgba(255,255,255,0.45);}
.nl-form input:focus{outline:none;border-color:#fff;}
.nl-form button{background:var(--amber);color:var(--dark);border:none;padding:0.72rem 1.3rem;border-radius:3px;font-family:'IBM Plex Sans',sans-serif;font-size:0.73rem;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;cursor:pointer;white-space:nowrap;}
.nl-form button:hover{background:#f5cb5c;}

/* CONTACT */
.contact{background:var(--white);padding:6rem 2.5rem;}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;margin-top:3.5rem;align-items:start;}
.contact-info p{font-size:0.95rem;line-height:1.82;color:var(--muted);font-weight:300;margin-bottom:1.8rem;}
.info-rows{display:flex;flex-direction:column;gap:0.8rem;}
.ir{display:flex;gap:1rem;align-items:baseline;}
.ir-l{font-size:0.65rem;letter-spacing:0.13em;text-transform:uppercase;color:var(--forest);font-weight:500;width:78px;flex-shrink:0;}
.ir-v{font-size:0.87rem;color:var(--muted);}

/* FORMS SHARED */
.cform,.vform{display:flex;flex-direction:column;gap:1rem;}
.frow,.vfrow{display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
.fg,.vfg{display:flex;flex-direction:column;gap:0.3rem;}
.fg label,.vfg label{font-size:0.64rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--forest);font-weight:500;}
.fg input,.fg select,.fg textarea{background:var(--cream);border:1px solid #ddd;padding:0.67rem 0.9rem;border-radius:3px;font-family:'IBM Plex Sans',sans-serif;font-size:0.87rem;color:var(--text);transition:border-color 0.2s;-webkit-appearance:none;}
.fg input:focus,.fg select:focus,.fg textarea:focus{outline:none;border-color:var(--moss);}
.fg textarea{resize:vertical;min-height:105px;}
.vfg input,.vfg select,.vfg textarea{background:rgba(255,255,255,0.06);border:1px solid rgba(246,241,233,0.15);padding:0.67rem 0.9rem;border-radius:3px;font-family:'IBM Plex Sans',sans-serif;font-size:0.87rem;color:var(--cream);transition:border-color 0.2s;}
.vfg label{color:rgba(246,241,233,0.48);}
.vfg input:focus,.vfg select:focus,.vfg textarea:focus{outline:none;border-color:var(--amber);}
.vfg input::placeholder,.vfg textarea::placeholder{color:rgba(246,241,233,0.22);}
.vfg select{-webkit-appearance:none;background-color:rgba(255,255,255,0.06);}
.vfg select option{background:var(--dark);color:var(--cream);}
.vfg textarea{resize:vertical;min-height:90px;}
.bg-notice{background:rgba(232,184,75,0.1);border:1px solid rgba(232,184,75,0.28);border-radius:3px;padding:1rem 1.2rem;font-size:0.81rem;color:rgba(246,241,233,0.62);line-height:1.65;}
.bg-notice strong{color:var(--amber);}

/* CF7 form overrides — preserve visual styling */
.wpcf7 .wpcf7-form{display:flex;flex-direction:column;gap:1rem;}
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 select,
.wpcf7 textarea{width:100%;}
.wpcf7-submit{background:var(--amber);color:var(--dark);padding:0.85rem 2rem;border:none;border-radius:3px;font-family:'IBM Plex Sans',sans-serif;font-size:0.75rem;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;cursor:pointer;transition:all 0.2s;align-self:flex-start;}
.wpcf7-submit:hover{background:#f5cb5c;}
.wpcf7-response-output{margin-top:1rem;padding:0.8rem 1rem;border-radius:3px;font-size:0.85rem;}
.wpcf7 .wpcf7-not-valid-tip{font-size:0.75rem;color:var(--rust);}
.garden-interest .wpcf7-submit,.volunteer .wpcf7-submit{background:var(--amber);color:var(--dark);}

/* NOMINEE CONDITIONAL */
#nominee-fields{display:none;background:rgba(246,241,233,0.04);border:1px solid rgba(246,241,233,0.12);border-radius:4px;padding:1.4rem;flex-direction:column;gap:1rem;}
#nominee-fields.show{display:flex;}
#neighbor-notice{display:none;background:rgba(232,184,75,0.1);border:1px solid rgba(232,184,75,0.3);border-radius:3px;padding:0.9rem 1.1rem;font-size:0.81rem;color:rgba(246,241,233,0.7);line-height:1.65;}
#neighbor-notice strong{color:var(--amber);}

/* LEGAL BAR */
.legal-bar{background:var(--dark);padding:2rem 2.5rem;border-bottom:1px solid rgba(246,241,233,0.05);}
.legal-bar-inner{max-width:1100px;margin:0 auto;display:flex;gap:3rem;flex-wrap:wrap;}
.legal-item{flex:1;min-width:210px;}
.legal-item h6{font-size:0.63rem;letter-spacing:0.15em;text-transform:uppercase;color:var(--amber);margin-bottom:0.5rem;font-weight:500;}
.legal-item p{font-size:0.77rem;color:rgba(246,241,233,0.35);line-height:1.65;font-weight:300;}
.legal-item a{color:rgba(246,241,233,0.42);text-decoration:none;border-bottom:1px solid rgba(246,241,233,0.12);}
.legal-item a:hover{color:var(--amber);}

/* FOOTER */
footer{background:var(--dark);color:rgba(246,241,233,0.35);padding:2.5rem;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;}
.fl{font-family:'Playfair Display',serif;font-size:1rem;color:var(--amber);}
.fl span{display:block;font-family:'IBM Plex Sans',sans-serif;font-size:0.6rem;letter-spacing:0.12em;text-transform:uppercase;color:rgba(246,241,233,0.25);margin-top:0.2rem;}
.footer-links{display:flex;gap:1.4rem;flex-wrap:wrap;}
.footer-links a{font-size:0.7rem;color:rgba(246,241,233,0.32);text-decoration:none;letter-spacing:0.05em;}
.footer-links a:hover{color:var(--amber);}
footer p{font-size:0.71rem;}
.footer-pg{font-size:0.75rem;color:rgba(246,241,233,0.25);margin-top:0.3rem;}
.footer-pg a{color:rgba(232,184,75,0.45);text-decoration:none;}
.footer-pg a:hover{color:var(--amber);}

/* ANIMATIONS */
@keyframes fadeUp{from{opacity:0;transform:translateY(18px);}to{opacity:1;transform:translateY(0);}}

/* RESPONSIVE */
@media(max-width:860px){
  nav{padding:1rem 1.5rem;}
  .nav-links{display:none;position:absolute;top:100%;left:0;right:0;background:rgba(26,43,27,0.98);flex-direction:column;gap:0;padding:1rem 1.5rem 1.5rem;}
  .nav-links.open{display:flex;}
  .nav-links a{padding:0.6rem 0;border-bottom:1px solid rgba(246,241,233,0.07);}
  .nav-hamburger{display:block;}
  section,.menu,.credits,.foundation,.tiers,.garden-interest,.volunteer,.dignity,.tech,.pickup,.donate,.impact,.team,.partners,.faq,.newsletter,.contact,.legal-bar{padding:4rem 1.5rem;}
  .about-grid,.donation-grid,.credits-grid,.gi-grid,.contact-grid,.donate-grid,.prog-grid,.tech-grid,.tiers-grid,.vol-roles{grid-template-columns:1fr;gap:2.5rem;}
  .menu-grid{grid-template-columns:1fr 1fr;gap:1rem;}
  .impact-grid,.team-grid,.partners-grid{grid-template-columns:1fr 1fr;gap:1rem;}
  .frow,.vfrow{grid-template-columns:1fr;}
  .hero{padding:7rem 1.5rem 4rem;}
  .nl-form{flex-direction:column;}
  .legal-bar-inner{gap:1.5rem;}
}

/* FOCUS / ACCESSIBILITY */
a:focus,button:focus,input:focus,select:focus,textarea:focus{outline:2px solid var(--moss);outline-offset:2px;}
