/* The Bean Sprout – offline-safe, responsive local stylesheet */
:root{--green:#82b838;--dark:#243822;--olive:#3c582d;--cream:#fff9ee;--paper:#fff;--muted:#657061;--line:#e3e9db;--soft:#edf5e4;--shadow:0 22px 60px rgba(35,56,34,.09);--r:20px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--dark);background:#fdfcf8;line-height:1.65;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}a{color:inherit}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid #8ec63f;outline-offset:4px}
.wrap{width:min(1150px,calc(100% - 44px));margin-inline:auto}
.skip{position:absolute;left:-9999px;top:10px;background:var(--dark);color:#fff;padding:8px 14px;z-index:60}.skip:focus{left:10px}
.topline{background:var(--dark);color:#f1f6ec;font-size:.81rem}.topline .wrap{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:8px 0}.topline a{text-decoration:none}.topline a:hover{text-decoration:underline}.topline-side{opacity:.85}
.header{background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50;backdrop-filter:blur(14px)}
.navrow{height:83px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{display:flex;align-items:center;gap:13px;text-decoration:none;min-width:0}.brand img{width:69px;height:61px;object-fit:contain;mix-blend-mode:multiply}.brand-text{font-weight:850;letter-spacing:-.035em;font-size:1.32rem;line-height:1.12}.brand-small{display:block;font-weight:650;font-size:.69rem;letter-spacing:.15em;color:#648741;text-transform:uppercase;margin-top:3px}
.nav{display:flex;align-items:center;gap:5px}.nav a{font-size:.87rem;font-weight:650;text-decoration:none;padding:12px 12px;border-radius:12px}.nav a:hover,.nav a[aria-current="page"]{color:var(--olive);background:#eef5e7}.nav-cta{margin-left:8px!important;background:var(--dark);color:white!important}.nav-cta:hover{background:var(--olive)!important;color:white!important}
.menu-toggle{display:none;border:1px solid var(--line);border-radius:12px;color:var(--dark);background:#fff;padding:10px 13px;font-size:1.4rem;cursor:pointer;line-height:1}
.badge{display:inline-flex;gap:7px;align-items:center;background:var(--soft);color:var(--olive);padding:8px 12px;font-size:.73rem;text-transform:uppercase;font-weight:850;letter-spacing:.11em;border-radius:100px}.badge:before{content:'';width:7px;height:7px;border-radius:50%;background:var(--green)}
h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.15;letter-spacing:-.04em}h1{font-size:clamp(2.5rem,5.6vw,5rem);max-width:800px}h2{font-size:clamp(2rem,3.4vw,3.1rem);max-width:800px}h3{font-size:1.25rem}p{color:#51604d}strong{color:var(--dark)}
.hero{position:relative;overflow:hidden;background:linear-gradient(110deg,#f4f8e9,#fffaf0 65%)}.hero:after{content:'';position:absolute;width:470px;height:470px;border-radius:50%;background:rgba(155,201,86,.12);left:-180px;top:-210px;pointer-events:none}
.hero-grid{min-height:565px;display:grid;grid-template-columns:1.05fr .95fr;gap:54px;align-items:center;padding-block:66px}.hero-copy{position:relative;z-index:1}.hero h1{margin:20px 0 21px}.hero h1 em{font-style:normal;color:#699b36}.hero-copy p{font-size:1.07rem;max-width:580px}.action-row{display:flex;gap:11px;align-items:center;flex-wrap:wrap;margin-top:30px}.btn{display:inline-flex;justify-content:center;align-items:center;gap:14px;text-decoration:none;background:var(--green);color:#182919;border-radius:11px;padding:14px 23px;font-weight:800;font-size:.95rem;border:1px solid transparent;transition:transform .15s,background .15s}.btn:hover{transform:translateY(-2px);background:#97cf4f}.btn.dark{background:var(--dark);color:#fff}.btn.dark:hover{background:var(--olive)}.btn.outline{background:#fff;border:1px solid #b7c5aa;color:var(--dark)}.btn.outline:hover{background:var(--soft)}
.hero-art{position:relative}.hero-art .photo{width:100%;height:465px;object-fit:cover;border-radius:125px 20px 20px 20px;box-shadow:var(--shadow)}.photo-note{position:absolute;bottom:23px;left:-30px;background:#fff;padding:16px 22px;box-shadow:var(--shadow);border-radius:15px;font-size:.91rem;max-width:235px}.photo-note strong{display:block;font-size:1.05rem}.photo-note span{color:var(--muted)}
.section{padding:90px 0}.section.sm{padding:63px 0}.section.tint{background:#f4f8ef}.section.dark-section{background:var(--dark);color:#fff}.section.dark-section p{color:#d5dfd0}.section-top{max-width:750px;margin-bottom:31px}.section-top h2{margin:16px 0}.section-top p{font-size:1.05rem}.eyebrow{font-size:.77rem;font-weight:850;letter-spacing:.15em;color:#6b9c37;text-transform:uppercase}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:27px 26px;box-shadow:0 6px 25px rgba(23,50,22,.025)}.card-icon{display:inline-flex;width:46px;height:46px;align-items:center;justify-content:center;border-radius:14px;background:var(--soft);color:var(--olive);font-size:1.45rem;margin-bottom:20px}.card p{font-size:.95rem;margin-bottom:0}
.split{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.split img.cover{width:100%;height:430px;object-fit:cover;border-radius:24px}.check-list{list-style:none;padding:0;margin:23px 0;display:grid;gap:13px}.check-list li{padding-left:30px;position:relative}.check-list li:before{content:'✓';position:absolute;left:0;top:1px;color:#638f2c;font-weight:900}
.photo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.photo-grid img{width:100%;height:230px;object-fit:cover;border-radius:15px}.photo-grid img:nth-child(3n+1){object-position:center 38%}.photo-grid a{display:block;overflow:hidden;border-radius:15px}.photo-grid a img{transition:transform .23s}.photo-grid a:hover img{transform:scale(1.035)}
.callout{display:grid;grid-template-columns:1fr auto;gap:26px;align-items:center;background:#e8f3da;padding:40px 48px;border-radius:24px}.callout h2{font-size:clamp(1.9rem,3vw,2.75rem);margin-bottom:10px}.callout p{margin-bottom:0}
.pagehero{padding:70px 0 64px;background:linear-gradient(120deg,#f0f6e8,#fff9eb)}.pagehero h1{font-size:clamp(2.4rem,5vw,4.2rem);margin:17px 0 13px}.pagehero p{font-size:1.1rem;max-width:710px;margin-bottom:0}.crumbs{color:#66825b;font-size:.85rem}.crumbs a{text-decoration:none}.crumbs a:hover{text-decoration:underline}
.textcols{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}.info-panel{padding:29px;background:#fff;border:1px solid var(--line);border-radius:18px}.info-panel p:last-child{margin:0}.hours{width:100%;border-collapse:collapse}.hours td{padding:12px 4px;border-bottom:1px solid var(--line);font-size:.94rem}.hours tr:last-child td{border-bottom:0}.hours td:last-child{text-align:right;font-weight:750;color:var(--dark)}
.faqs{max-width:840px;display:grid;gap:13px}.faqs details{padding:20px 23px;border-radius:15px;background:#fff;border:1px solid var(--line)}.faqs summary{cursor:pointer;font-weight:800;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:10px}.faqs summary::-webkit-details-marker{display:none}.faqs summary:after{content:'+';font-size:1.7rem;color:#608831;font-weight:400;line-height:1}.faqs details[open] summary:after{content:'−'}.faqs details p{margin:12px 0 0}
.note{background:#f6f6ed;border-left:3px solid #7caa4c;padding:15px 19px;font-size:.85rem;color:#657064;border-radius:0 8px 8px 0;margin-top:24px}.section-link{margin-top:25px;display:inline-flex;font-weight:850;color:#547e31;text-underline-offset:4px}
.footer{background:#21331f;color:#e4ecd9;padding:64px 0 22px}.footer a{text-decoration:none}.footer a:hover{text-decoration:underline}.footer p{color:#bac9b5}.foot-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:44px}.foot-grid h3{color:#fff;font-size:1rem;letter-spacing:0}.footer-logo{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none;font-weight:900;font-size:1.35rem}.footer-logo img{width:70px;height:65px;object-fit:contain;border-radius:7px;background:white}.foot-links{display:grid;gap:8px;font-size:.92rem}.foot-bottom{border-top:1px solid rgba(255,255,255,.14);display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;padding-top:20px;margin-top:45px;color:#b5c2ac;font-size:.79rem}
@media(max-width:980px){.nav a{font-size:.79rem;padding:10px 8px}.brand-text{font-size:1.15rem}.hero-grid{gap:30px}.split{gap:35px}}
@media(max-width:760px){.wrap{width:min(100% - 30px,1150px)}.topline-side{display:none}.topline .wrap{justify-content:center}.navrow{height:72px}.brand img{width:58px;height:55px}.brand-text{font-size:1.17rem}.menu-toggle{display:block}.nav{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 16px 30px rgba(0,0,0,.08);padding:12px 17px 21px;flex-direction:column;align-items:stretch;gap:2px}.nav.open{display:flex}.nav a{font-size:1rem;padding:12px 16px}.nav-cta{margin-left:0!important;text-align:center}.hero-grid,.split,.textcols{grid-template-columns:1fr}.hero-grid{padding:54px 0 64px;gap:40px}.hero-art .photo{height:340px;border-radius:70px 16px 16px 16px}.photo-note{left:10px;bottom:12px;padding:12px 15px}.hero h1{font-size:clamp(2.45rem,10vw,3.6rem)}.section{padding:63px 0}.section.sm{padding:52px 0}.cards{grid-template-columns:1fr}.photo-grid{grid-template-columns:repeat(2,1fr)}.photo-grid img{height:215px}.callout{grid-template-columns:1fr;padding:30px 24px}.foot-grid{grid-template-columns:1fr 1fr;gap:30px}.foot-grid>div:first-child{grid-column:span 2}.pagehero{padding:46px 0 40px}.split img.cover{height:310px}}
@media(max-width:430px){.photo-grid img{height:175px}.brand-text{font-size:1.05rem}.brand-small{font-size:.58rem}.card{padding:23px}.action-row>.btn{width:100%}.footer-logo img{width:54px;height:50px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.textcols img.cover{width:100%;height:250px;object-fit:cover;border-radius:18px;margin-top:18px}
