:root{
  --forest:#123421;
  --forest-2:#173f29;
  --forest-3:#244f35;
  --forest-soft:#3f6747;
  --moss:#9fc95f;
  --moss-light:#dce9ad;
  --cream:#f4f0df;
  --cream-2:#ece7d3;
  --paper:#fbf8ec;
  --ink:#1d3225;
  --muted:#66756b;
  --line:#d9ddcb;
  --white:#fff;
  --shadow:0 20px 55px rgba(15,45,28,.12);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",Arial,sans-serif;line-height:1.62}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input,textarea,select{font:inherit}
.container{width:min(1220px,calc(100% - 56px));margin:0 auto}
.section{padding:92px 0}
.section-tight{padding:78px 0}
.centered{text-align:center}
.eyebrow{display:inline-block;font-size:.74rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#65824b;margin-bottom:13px}
.eyebrow.script{font-family:"Caveat",cursive;text-transform:none;letter-spacing:0;font-size:2.4rem;line-height:1;color:#2a583b;font-weight:700}
.eyebrow.light{color:#dceaa8}
h1,h2,h3,p{margin-top:0}
h2{font-family:"Caveat",cursive;font-size:clamp(2.7rem,4vw,4.5rem);line-height:1.02;color:#173c2a;margin-bottom:20px}
h3{color:#193c29}
.section-heading{max-width:820px;margin:0 auto 52px}
.section-heading p{color:var(--muted);font-size:1.04rem}
.wide-heading{max-width:940px}
.text-link{display:inline-flex;align-items:center;gap:8px;color:#315f40;font-weight:800;margin-top:8px}
.text-link:hover{color:#163f29}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;border-radius:999px;border:0;font-weight:800;font-size:.92rem;cursor:pointer;transition:.2s ease}
.btn:hover{transform:translateY(-1px)}
.btn-primary{background:var(--moss);color:#173421;box-shadow:0 7px 20px rgba(9,32,18,.15)}
.btn-primary:hover{background:#b1d675}
.btn-outline{border:2px solid rgba(255,255,255,.9);color:#fff;background:rgba(6,27,16,.18)}
.btn-outline-dark{border:2px solid #254d35;color:#254d35;background:transparent}
.btn-forest{background:#1d5134;color:#fff}
.btn-forest:hover{background:#286841}
.btn-muted{background:#ffffff19;color:#d7e3d8;border:1px solid #ffffff32;cursor:default}

/* HEADER + LOGO */
.site-header{height:104px;position:relative;z-index:50;background:#102f20;color:#fff;border-bottom:1px solid rgba(255,255,255,.08)}
.nav-shell{height:104px;display:flex;align-items:center;justify-content:space-between;gap:28px;position:relative;z-index:2}
.brand{display:flex;align-items:center;gap:13px;min-width:270px}
.brand-photo{width:72px;height:72px;flex:0 0 72px;border-radius:50%;overflow:hidden;border:3px solid #d9e6a4;box-shadow:0 0 0 3px rgba(255,255,255,.06)}
.brand-photo img{width:100%;height:100%;object-fit:cover;object-position:center}
.brand-copy{display:flex;flex-direction:column;justify-content:center;line-height:.86}
.brand-copy strong{font-family:"Caveat",cursive;font-size:2rem;color:#fff;letter-spacing:.01em}
.main-nav{display:flex;align-items:center;gap:30px;font-size:.9rem;font-weight:700;white-space:nowrap}
.main-nav>a{position:relative;padding:40px 0 36px}
.main-nav>a:not(.nav-cta):hover,.main-nav>a.active{color:#d9e98f}
.main-nav>a.active:after{content:"";position:absolute;left:0;right:0;bottom:27px;height:2px;background:#c9de70;border-radius:99px}
.main-nav .nav-cta{padding:12px 20px;border-radius:999px;background:#a8cf66;color:#143321;box-shadow:inset 0 1px 0 rgba(255,255,255,.4)}
.main-nav .nav-cta span{margin-right:6px}
.menu-toggle{display:none;background:transparent;border:0;color:#fff;font-size:28px;cursor:pointer}

/* HOME HERO */
.hero{position:relative;overflow:hidden;color:#fff;background:#0e2d1e}
.home-hero{height:680px;min-height:680px}
.hero-bg{position:absolute;inset:0;background:url('/static/images/real/pigs-group.jpg') 60% 54%/cover no-repeat;transform:scale(1.01)}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,28,18,.94) 0%,rgba(9,30,19,.84) 15%,rgba(10,33,21,.68) 31%,rgba(13,37,23,.42) 47%,rgba(16,42,27,.18) 62%,rgba(16,42,27,0) 79%),linear-gradient(180deg,rgba(8,29,18,.06),rgba(8,29,18,.22))}
.hero-content{height:100%;position:relative;z-index:2;display:flex;align-items:flex-start;padding-bottom:100px}
.hero-copy{width:610px;padding-top:92px}
.hero-kicker{font-size:.83rem;font-weight:800;letter-spacing:.16em;line-height:1.4;color:#f0f3e8;margin-bottom:26px;text-shadow:0 2px 12px #06170c}
.leaf-mark{font-size:1.5rem;color:#aad06b;vertical-align:-3px;margin-right:7px}
.hero h1{font-family:"Caveat",cursive;font-size:5.2rem;line-height:.88;letter-spacing:-.02em;margin:0 0 22px;color:#fff;text-shadow:0 2px 16px rgba(6,20,11,.26)}
.hero h1 span{display:inline-block;margin-top:8px}
.hero-subtitle{font-size:.92rem;font-weight:700;letter-spacing:.18em;color:#e7edd3;margin-bottom:26px}
.hero-lead{font-size:1.08rem;line-height:1.68;color:#f4f6ef;max-width:560px;text-shadow:0 1px 10px #07170e}
.hero-actions{display:flex;gap:18px;margin-top:34px;flex-wrap:wrap}
.hero-wave{position:absolute;z-index:3;left:-4%;bottom:-42px;width:108%;height:84px;background:var(--cream);border-radius:50% 52% 0 0/55% 70% 0 0;transform:rotate(-.2deg)}

/* HOME INTRO */
.intro-section{background:var(--cream)}
.intro-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:74px;align-items:center}
.photo-stack{position:relative;min-height:520px}
.photo-main{width:88%;height:500px;object-fit:cover;border-radius:32px;box-shadow:var(--shadow)}
.photo-small{position:absolute;right:0;bottom:-10px;width:48%;height:225px;object-fit:cover;border:10px solid var(--cream);border-radius:26px;box-shadow:0 18px 40px rgba(16,49,29,.16)}
.intro-copy h2{margin-bottom:24px}
.intro-copy p{font-size:1.02rem;color:#52645a}
.mission-band{background:#1c4931;color:#fff;padding:28px 0}
.mission-band-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;text-align:center}
.mission-band-grid>div{padding:8px 24px;border-right:1px solid rgba(255,255,255,.16)}
.mission-band-grid>div:last-child{border-right:0}
.mission-band strong{display:block;font-family:"Caveat",cursive;font-size:2.25rem;font-weight:700;color:#e3edb6;line-height:1;text-decoration:none;margin-bottom:6px}
.mission-band span{display:block;font-size:.82rem;letter-spacing:.04em;color:#d2ddd4}

/* PROGRAMS */
.programs-section{background:#f7f3e5}
.program-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.program-card{background:#fffdf4;border:1px solid #e0e2d1;border-radius:22px;padding:28px;min-height:240px;display:flex;flex-direction:column;transition:.2s ease;box-shadow:0 10px 30px rgba(18,55,34,.05)}
.program-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#cbd5ac}
.program-card.featured{grid-column:span 2;background:#1d4b33;color:#fff;border-color:#1d4b33}
.program-card.featured h3,.program-card.featured p,.program-card.featured b{color:#fff}
.program-icon{font-size:2rem;margin-bottom:16px}
.program-card h3{font-family:"Caveat",cursive;font-size:2rem;line-height:1;margin-bottom:12px}
.program-card p{color:#68766e;font-size:.92rem;flex:1}
.program-card b{font-size:.82rem;color:#3d6846}

/* ECOLOGY */
.ecology-section{position:relative;overflow:hidden;background:#e9ead7}
.ecology-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;position:relative;z-index:2}
.ecology-copy p{color:#57675e}
.topic-list{display:grid;gap:12px;margin-top:28px}
.topic-list>div{display:grid;grid-template-columns:185px 1fr;gap:16px;padding:14px 0;border-bottom:1px solid #cdd4bd}
.topic-list strong{color:#234831}.topic-list span{color:#677269}
.ecology-gallery{display:grid;grid-template-columns:1.15fr .85fr;grid-template-rows:230px 230px;gap:14px}
.ecology-gallery img{width:100%;height:100%;object-fit:cover;border-radius:22px;box-shadow:0 14px 35px rgba(18,55,34,.12)}
.ecology-gallery img:first-child{grid-row:1/3}
.foliage{position:absolute;width:190px;bottom:-10px;opacity:.75;pointer-events:none}
.foliage-left{left:-20px}.foliage-right{right:-20px;transform:scaleX(-1)}

/* HELP */
.help-section{background:var(--cream)}
.help-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.help-card{background:#fffdf4;border:1px solid #dfe1d1;border-radius:22px;padding:28px;box-shadow:0 10px 30px rgba(18,55,34,.04)}
.help-card>span{font-size:1.9rem}.help-card h3{font-family:"Caveat",cursive;font-size:2rem;margin:10px 0 12px}.help-card p{color:#65736a;font-size:.92rem;min-height:105px}.help-card a{font-weight:800;color:#386544;font-size:.88rem}
.home-contact-cta{background:#173d29;color:#fff;padding:62px 0}
.home-contact-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}
.home-contact-inner h2{color:#fff;font-size:3.2rem;margin:0;max-width:760px}.cta-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}

/* SUBHERO */
.subhero{height:430px;position:relative;overflow:hidden;color:#fff;background:#123421}
.subhero-bg{position:absolute;inset:0;background:url('/static/images/hero-clean.png') center/cover no-repeat}
.about-hero .subhero-bg{background-image:url('/static/images/real/goats-three.jpg');background-position:center 45%}
.animals-subhero-bg{background-image:url('/static/images/real/pigs-group.jpg');background-position:center 52%}
.news-subhero-bg{background-image:url('/static/images/real/geese.jpg');background-position:center 54%}
.contact-subhero-bg{background-image:url('/static/images/real/dogs-field.jpg');background-position:center 55%}
.subhero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,35,22,.91),rgba(9,35,22,.64) 48%,rgba(9,35,22,.20)),linear-gradient(180deg,rgba(8,26,17,.05),rgba(8,26,17,.22))}
.subhero-content{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;position:relative;z-index:2;max-width:1180px}
.subhero h1{font-family:"Caveat",cursive;font-size:clamp(3.8rem,6vw,6rem);line-height:.95;max-width:850px;margin:0 0 20px;color:#fff}
.subhero p{font-size:1.1rem;max-width:730px;color:#edf1e8;margin:0}

/* ABOUT */
.about-story{background:var(--cream)}
.story-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:start}
.story-copy p{color:#53655b;font-size:1rem}
.story-aside{position:sticky;top:128px}
.story-aside img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:30px;box-shadow:var(--shadow)}
.story-aside blockquote{margin:-36px 24px 0;position:relative;background:#173f2a;color:#fff;padding:30px;border-radius:24px;font-family:"Caveat",cursive;font-size:1.8rem;line-height:1.15;box-shadow:0 16px 35px rgba(15,45,28,.22)}
.vision-section{background:#e9ead7}
.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.values-grid article{background:#f9f7eb;border:1px solid #d9dec9;border-radius:24px;padding:30px}.values-grid span{font-size:2rem}.values-grid h3{font-family:"Caveat",cursive;font-size:2rem;line-height:1.05;margin:12px 0}.values-grid p{color:#647268}
.activity-section{background:#f8f5e8}
.activity-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.activity-photos{display:grid;grid-template-columns:1fr .72fr;gap:16px;align-items:end}.activity-photos img{width:100%;object-fit:cover;border-radius:26px;box-shadow:var(--shadow)}.activity-photo-big{height:500px}.activity-photo-small{height:320px;margin-bottom:-30px}
.activity-copy p{color:#58685f}
.team-section{background:var(--cream)}
.founder-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-bottom:58px}.founder-card{display:grid;grid-template-columns:90px 1fr;gap:24px;background:#fffdf4;border:1px solid #dde0d0;border-radius:24px;padding:30px}.founder-initial{width:90px;height:90px;border-radius:50%;background:#1e5034;color:#e4efb6;display:grid;place-items:center;font-family:"Caveat",cursive;font-size:3rem;font-weight:700}.founder-card h3{font-family:"Caveat",cursive;font-size:2.5rem;margin-bottom:0}.founder-role{font-weight:800;color:#60804a;font-size:.87rem}.founder-card p:last-child{color:#65736a}
.founders-showcase-section{padding-bottom:36px}.founders-showcase{display:grid;grid-template-columns:1.05fr .95fr;gap:34px;align-items:stretch}.founders-showcase-photo img{width:100%;height:100%;min-height:520px;object-fit:cover;border-radius:30px;box-shadow:var(--shadow)}.founders-showcase-copy{display:flex;align-items:stretch}.founder-grid-stacked{grid-template-columns:1fr;gap:18px;margin-bottom:0}.founders-showcase .founder-card{height:100%;align-content:start}.founders-showcase .founder-role{margin:4px 0 10px}.volunteer-section-wrap{padding-top:10px}
.volunteer-block{display:grid;grid-template-columns:.8fr 1.2fr;gap:55px;align-items:center;background:#e8ead7;padding:38px;border-radius:30px}.volunteer-photo img{width:100%;height:440px;object-fit:cover;border-radius:24px}.volunteer-copy p{color:#59695f}
.statute-section{padding:70px 0;background:#1a442e;color:#fff}.statute-card{display:flex;align-items:center;justify-content:space-between;gap:40px}.statute-card h2{color:#fff;margin-bottom:10px}.statute-card p{color:#cbd7ce;max-width:760px;margin-bottom:0}

/* RESIDENTS / ANIMALS */
.residents-section{background:#f7f3e5}
.resident-list{display:grid;gap:62px}
.resident-row{display:grid;grid-template-columns:.72fr 1.28fr;gap:46px;align-items:center;padding-bottom:62px;border-bottom:1px solid #daddcb}.resident-row.reverse{grid-template-columns:1.28fr .72fr}.resident-row.reverse .resident-copy{order:2}.resident-row.reverse .resident-gallery{order:1}
.resident-type{display:inline-block;padding:6px 10px;border-radius:99px;background:#e0eab8;color:#33583e;font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.resident-copy h3{font-family:"Caveat",cursive;font-size:3.4rem;margin:12px 0 10px}.resident-copy p{color:#617067}
.resident-gallery{display:grid;grid-template-columns:1.25fr .75fr;grid-template-rows:180px 180px;gap:12px}.resident-photo{margin:0;overflow:hidden;border-radius:22px;box-shadow:0 14px 34px rgba(17,53,32,.12)}.resident-photo img{width:100%;height:100%;object-fit:cover}.resident-photo-main{grid-row:1/3}.resident-gallery-2{grid-template-columns:1fr 1fr;grid-template-rows:360px}.resident-gallery-2 .resident-photo-main{grid-row:auto}
.animal-programs{background:#e9ead7}.split-cards{display:grid;grid-template-columns:1fr 1fr;gap:24px}.info-panel{background:#fffdf4;border-radius:26px;padding:36px;border:1px solid #d7dcc8}.panel-icon{font-size:2.2rem}.info-panel h2{font-size:3rem;margin:12px 0}.info-panel p{color:#627068}.info-panel a{font-weight:800;color:#376344}
.rainbow-section{background:#f7f3e5}.rainbow-inner{display:grid;grid-template-columns:1fr 180px;gap:50px;align-items:center}.rainbow-inner p{color:#607068;max-width:780px}.rainbow-symbol{font-size:7rem;text-align:center;filter:saturate(.65)}
.therapy-section{background:#eef0df}.therapy-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.therapy-copy p{color:#617067}.therapy-photo img{width:100%;height:470px;object-fit:cover;border-radius:28px;box-shadow:var(--shadow)}
.check-list{list-style:none;padding:0;margin:24px 0 0;display:grid;gap:8px}.check-list li:before{content:"✓";color:#4b7a4d;font-weight:900;margin-right:10px}
.human-therapy-section{background:#f7f3e5}.two-column-text{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px}.two-column-text p{color:#607068}
.music-section{background:#163c29;color:#fff}.music-inner{display:grid;grid-template-columns:180px 1fr;gap:55px;align-items:center}.music-symbol{width:160px;height:160px;border-radius:50%;display:grid;place-items:center;background:#dce8a8;color:#173c29;font-size:5.5rem}.music-inner h2{color:#fff}.music-inner p{color:#ccd8cf;max-width:760px}

/* NEWS */
.news-intro{background:var(--cream)}
.news-social-card{background:#fffdf4;border:1px solid #dfe1d1;border-radius:28px;padding:42px;display:flex;align-items:center;justify-content:space-between;gap:44px;box-shadow:0 14px 38px rgba(18,55,34,.06)}.news-social-card h2{font-size:3.2rem;max-width:720px}.news-social-card p{color:#65736a;max-width:760px}.social-buttons{display:flex;flex-direction:column;gap:12px;min-width:210px}
.news-gallery-section{background:#e9ead7}.news-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.news-card{background:#fffdf4;border-radius:24px;overflow:hidden;border:1px solid #d9decb}.news-card img{width:100%;height:250px;object-fit:cover}.news-card>div{padding:26px}.news-card span{font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:#60804a}.news-card h3{font-family:"Caveat",cursive;font-size:2rem;line-height:1.05;margin:8px 0 12px}.news-card p{color:#66746b}.news-card a{font-weight:800;color:#386344;font-size:.87rem}

/* CONTACT */
.contact-section{background:var(--cream)}
.contact-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start}
.contact-details h2,.contact-form-card h2{font-size:3.5rem}.contact-item{display:grid;grid-template-columns:44px 1fr;gap:14px;padding:20px 0;border-bottom:1px solid #d8dccb}.contact-item>span{width:42px;height:42px;border-radius:50%;background:#dfe9b9;display:grid;place-items:center;color:#214a32}.contact-item strong{display:block}.contact-item p{margin:5px 0;color:#58685f}.contact-item a{color:#315f40;font-weight:700}
.contact-form-card{background:#fffdf4;border-radius:28px;padding:36px;border:1px solid #dfe2d1;box-shadow:var(--shadow)}.contact-form-card form{display:grid;gap:16px}.contact-form-card label{display:grid;gap:7px;font-weight:800;font-size:.88rem}.contact-form-card input,.contact-form-card textarea,.contact-form-card select{width:100%;border:1px solid #cfd5c9;border-radius:12px;padding:13px 14px;background:#fff;font:inherit;color:#26382e}.contact-form-card textarea{resize:vertical}.contact-form-card small{color:#7a867e}
.contact-photo-strip{display:grid;grid-template-columns:repeat(4,1fr);height:260px}.contact-photo-strip img{width:100%;height:100%;object-fit:cover}

/* FOOTER */
.footer{background:#0e2a1d;color:#cbd9cf;padding:58px 0 24px}
.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr .8fr;gap:36px}.brand-footer{min-width:0;margin-bottom:18px}.brand-footer .brand-photo{width:62px;height:62px;flex-basis:62px}.brand-footer .brand-copy strong{font-size:1.7rem}.footer-identity p{max-width:380px;color:#aebfb2}.footer h4{color:#dceaa8;margin:8px 0 14px}.footer p{font-size:.88rem;color:#aebfb2}.footer a:hover{color:#fff}.copyright{border-top:1px solid rgba(255,255,255,.13);margin-top:42px;padding-top:20px;font-size:.78rem;color:#91a598}

@media(max-width:1100px){
  .main-nav{gap:20px;font-size:.82rem}.brand{min-width:235px}.brand-photo{width:64px;height:64px;flex-basis:64px}.brand-copy strong{font-size:1.75rem}
  .program-grid{grid-template-columns:repeat(3,1fr)}.program-card.featured{grid-column:span 2}.help-grid{grid-template-columns:repeat(2,1fr)}
  .footer-grid{grid-template-columns:1.4fr 1fr 1fr}.footer-grid>div:last-child{grid-column:2/4}
}
@media(max-width:920px){
  .container{width:min(100% - 36px,820px)}.site-header,.nav-shell{height:88px}.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:88px;left:0;right:0;background:#102f20;flex-direction:column;align-items:stretch;gap:0;padding:14px 24px 22px;box-shadow:0 18px 35px rgba(6,28,17,.35)}.main-nav.open{display:flex}.main-nav>a{padding:13px 0!important}.main-nav>a.active:after{display:none}.main-nav .nav-cta{text-align:center;margin-top:10px}.brand-photo{width:58px;height:58px;flex-basis:58px}.brand-copy strong{font-size:1.65rem}
  .home-hero{height:700px;min-height:700px}.hero-bg{background-position:62% 54%}.hero-overlay{background:linear-gradient(90deg,rgba(7,28,18,.94),rgba(9,30,19,.78) 50%,rgba(10,32,20,.25))}.hero-copy{width:560px;padding-top:90px}.hero h1{font-size:4.8rem}
  .intro-grid,.ecology-grid,.story-layout,.activity-grid,.volunteer-block,.therapy-layout,.two-column-text,.contact-layout,.founders-showcase{grid-template-columns:1fr}.photo-stack{min-height:490px}.intro-grid{gap:50px}.story-aside{position:static;max-width:620px}.activity-photo-small{margin-bottom:0}.program-grid{grid-template-columns:repeat(2,1fr)}.help-grid{grid-template-columns:repeat(2,1fr)}.home-contact-inner{flex-direction:column;align-items:flex-start}.cta-actions{justify-content:flex-start}.founders-showcase-photo img{min-height:420px}
  .founder-grid{grid-template-columns:1fr}.volunteer-photo img{height:400px}.resident-row,.resident-row.reverse{grid-template-columns:1fr}.resident-row.reverse .resident-copy,.resident-row.reverse .resident-gallery{order:initial}.resident-gallery{min-height:360px}.split-cards{grid-template-columns:1fr}.news-cards{grid-template-columns:1fr}.news-card{display:grid;grid-template-columns:.75fr 1.25fr}.news-card img{height:100%;min-height:270px}.news-social-card{flex-direction:column;align-items:flex-start}.social-buttons{flex-direction:row;min-width:0}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:last-child{grid-column:auto}
}
@media(max-width:640px){
  .container{width:calc(100% - 28px)}.section{padding:70px 0}.section-tight{padding:64px 0}.brand{gap:9px;min-width:0}.brand-photo{width:50px;height:50px;flex-basis:50px}.brand-copy strong{font-size:1.42rem}/* removed legacy small subtitle */.site-header,.nav-shell{height:76px}.main-nav{top:76px}
  .home-hero{height:760px;min-height:760px}.hero-bg{background-position:68% 54%}.hero-overlay{background:linear-gradient(90deg,rgba(6,26,16,.96) 0%,rgba(7,28,17,.88) 48%,rgba(9,30,19,.56) 75%,rgba(10,32,20,.28) 100%)}.hero-copy{width:100%;padding-top:72px}.hero-kicker{font-size:.66rem;letter-spacing:.12em}.hero h1{font-size:4rem}.hero-subtitle{font-size:.72rem;letter-spacing:.13em}.hero-lead{font-size:.95rem;max-width:95%}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .btn{width:100%}.hero-wave{height:66px;bottom:-34px}
  .photo-stack{min-height:390px}.photo-main{height:390px;width:92%}.photo-small{height:160px;width:52%;border-width:7px}.mission-band-grid{grid-template-columns:1fr}.mission-band-grid>div{padding:16px 12px;border-right:0;border-bottom:1px solid rgba(255,255,255,.14)}.mission-band-grid>div:last-child{border-bottom:0}.mission-band strong{font-size:2rem}.mission-band span{font-size:.86rem}
  .program-grid{grid-template-columns:1fr}.program-card.featured{grid-column:auto}.topic-list>div{grid-template-columns:1fr;gap:2px}.ecology-gallery{grid-template-columns:1fr 1fr;grid-template-rows:190px 150px}.help-grid{grid-template-columns:1fr}.help-card p{min-height:0}.home-contact-inner h2{font-size:2.7rem}.cta-actions{width:100%}.cta-actions .btn{width:100%}
  .subhero{height:470px}.subhero h1{font-size:3.7rem}.subhero p{font-size:1rem}.story-aside blockquote{margin:-24px 14px 0;padding:22px;font-size:1.55rem}.values-grid{grid-template-columns:1fr}.activity-photos{grid-template-columns:1fr 1fr}.activity-photo-big{height:360px}.activity-photo-small{height:260px}.founder-card{grid-template-columns:1fr}.founder-initial{width:70px;height:70px}.founders-showcase-photo img{min-height:300px}.volunteer-block{padding:22px}.volunteer-photo img{height:330px}.statute-card{flex-direction:column;align-items:flex-start}
  .resident-row{gap:24px;padding-bottom:44px}.resident-gallery{grid-template-columns:1fr 1fr;grid-template-rows:180px 140px;min-height:0}.resident-gallery-2{grid-template-columns:1fr 1fr;grid-template-rows:240px}.resident-copy h3{font-size:3rem}.rainbow-inner{grid-template-columns:1fr}.rainbow-symbol{text-align:left;font-size:5rem}.music-inner{grid-template-columns:1fr}.music-symbol{width:110px;height:110px;font-size:4rem}.two-column-text{gap:20px}
  .news-social-card{padding:26px}.news-social-card h2{font-size:2.7rem}.social-buttons{flex-direction:column;width:100%}.social-buttons .btn{width:100%}.news-card{display:block}.news-card img{height:240px;min-height:0}.contact-form-card{padding:24px}.contact-photo-strip{grid-template-columns:1fr 1fr;height:420px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:last-child{grid-column:auto}
}


/* SIMPLE PROGRAM SUBPAGES */
.programs-overview{background:#f7f3e5}
.programs-overview .program-card b{margin-top:14px;color:#386344}
.programs-overview .program-card.featured b{color:#fff}
.simple-program-hero{background:#e9ead7;padding:72px 0}
.simple-program-hero-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:center}
.simple-program-copy h1{font-family:"Caveat",cursive;font-size:clamp(3.7rem,6vw,6rem);line-height:.95;color:#173c2a;margin:5px 0 22px}
.simple-program-copy>p{font-size:1.08rem;color:#5d6d63;max-width:620px}
.simple-program-icon{font-size:2.6rem;margin:8px 0 4px}
.simple-program-image img{width:100%;height:420px;object-fit:cover;border-radius:30px;box-shadow:var(--shadow)}
.simple-program-body{background:var(--cream)}
.simple-program-content{display:grid;grid-template-columns:1.25fr .75fr;gap:68px;align-items:start}
.simple-program-content>div p{font-size:1.05rem;color:#56665d;margin-bottom:20px}
.simple-program-card{background:#fffdf4;border:1px solid #d9decb;border-radius:26px;padding:32px;box-shadow:0 14px 38px rgba(18,55,34,.06)}
.simple-program-card h2{font-size:2.6rem;margin-bottom:14px}
.simple-program-card p{color:#65736a}
.simple-back{margin-top:42px}
@media(max-width:920px){.simple-program-hero-grid,.simple-program-content{grid-template-columns:1fr}.simple-program-hero-grid{gap:34px}.simple-program-image img{height:360px}.simple-program-content{gap:36px}}
@media(max-width:640px){.simple-program-hero{padding:54px 0}.simple-program-copy h1{font-size:3.6rem}.simple-program-image img{height:280px}.simple-program-card{padding:24px}}


/* CONTACT — split hero keeps both dogs visible */
.contact-hero-split{display:grid;grid-template-columns:minmax(420px,44%) 1fr;min-height:470px;background:#123421;color:#fff;overflow:hidden}
.contact-hero-copy{display:flex;align-items:center;background:linear-gradient(135deg,#0e2d1e 0%,#163f29 100%)}
.contact-hero-copy-inner{width:min(610px,calc(100% - 56px));margin-left:max(28px,calc((100vw - 1220px)/2));padding:54px 0}
.contact-hero-copy h1{font-family:"Caveat",cursive;font-size:clamp(3.5rem,5.2vw,5.6rem);line-height:.95;margin:0 0 22px;color:#fff}
.contact-hero-copy p{max-width:590px;margin:0;color:#edf1e8;font-size:1.05rem}
.contact-hero-photo{min-width:0;overflow:hidden;background:#d9ddcb}
.contact-hero-photo img{width:100%;height:100%;min-height:470px;object-fit:cover;object-position:center 53%;display:block}
.contact-closing{background:#173d29;color:#fff;padding:48px 0;border-top:1px solid rgba(255,255,255,.08)}
.contact-closing-inner{display:flex;align-items:center;justify-content:space-between;gap:32px}
.contact-closing h2{color:#fff;font-size:clamp(2.4rem,3.7vw,3.8rem);margin:0}
.contact-closing .btn{white-space:nowrap}

/* ANIMALS — real content page, not only navigation cards */
.animals-intro-section{background:var(--cream);padding-bottom:58px}
.animals-intro-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}
.animals-intro-grid h2{margin-bottom:0}
.animals-intro-grid p{color:#5e6e64;font-size:1.02rem}
.animals-residents-section{padding-top:66px}
.animal-actions-section{background:#e9ead7}
.animal-program-grid{grid-template-columns:repeat(4,1fr)}
.animal-program-grid .program-card{min-height:220px}

/* Keep footer text on an opaque, readable background */
.footer{position:relative;z-index:3;background:#0e2a1d!important;isolation:isolate}
.footer:before{content:"";position:absolute;inset:0;background:#0e2a1d;z-index:-1}
.footer h4,.footer .brand-copy strong{color:#fff}
.footer p,.footer a{color:#c6d4ca}

@media(max-width:920px){
  .contact-hero-split{grid-template-columns:1fr;min-height:0}
  .contact-hero-photo{order:1;height:360px}
  .contact-hero-photo img{min-height:360px;object-position:center 54%}
  .contact-hero-copy{order:2}
  .contact-hero-copy-inner{width:min(100% - 36px,820px);margin:0 auto;padding:52px 0}
  .animals-intro-grid{grid-template-columns:1fr;gap:24px}
  .animal-program-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:640px){
  .contact-hero-photo{height:285px}
  .contact-hero-photo img{min-height:285px;object-position:center 54%}
  .contact-hero-copy-inner{width:calc(100% - 28px);padding:42px 0 48px}
  .contact-hero-copy h1{font-size:3.55rem}
  .contact-closing-inner{flex-direction:column;align-items:flex-start}
  .contact-closing .btn{width:100%;white-space:normal;text-align:center}
  .animal-program-grid{grid-template-columns:1fr}
}

/* CONTACT HERO — full-width landscape photo, both foreground dogs visible */
.contact-photo-hero{position:relative;width:100%;overflow:hidden;background:#d9ddcb;aspect-ratio:2.6/1;min-height:360px;max-height:590px}
.contact-photo-hero>img{width:100%;height:100%;object-fit:cover;object-position:center 55%;display:block}

@media(max-width:920px){.contact-photo-hero{aspect-ratio:2/1;min-height:330px}.contact-photo-hero>img{object-position:center 55%}}
@media(max-width:640px){.contact-photo-hero{aspect-ratio:1.45/1;min-height:300px}.contact-photo-hero>img{object-position:center 56%}}
