
:root{--cream:#f5f0e6;--paper:#fffaf0;--ink:#18221d;--muted:#66746b;--green:#146b46;--green2:#0d4a32;--lime:#c7e95a;--gold:#dfad36;--line:rgba(24,34,29,.14);--shadow:0 24px 70px rgba(12,34,24,.14);--radius:8px;--max:1260px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Arial,sans-serif;color:var(--ink);background:var(--cream);line-height:1.55;overflow-x:hidden}body.page-enter{animation:pageIn .55s ease both}@keyframes pageIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}img{max-width:100%;display:block}a{color:inherit}.container{width:min(var(--max),calc(100% - 42px));margin-inline:auto}.narrow{max-width:920px}.skip-link{position:absolute;left:-999px;top:1rem;background:#fff;padding:.75rem;z-index:20}.skip-link:focus{left:1rem}.site-header{position:sticky;top:0;z-index:50;background:rgba(245,240,230,.86);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);transition:.3s}.site-header.is-scrolled{box-shadow:0 10px 30px rgba(0,0,0,.06)}.nav-wrap{height:86px;display:flex;align-items:center;justify-content:space-between;gap:26px}.brand{display:flex;align-items:center;gap:14px;text-decoration:none;font-weight:800;letter-spacing:-.02em}.brand img{width:66px;height:66px;object-fit:contain;background:transparent;border:0}.brand span{font-size:1.08rem;line-height:1.05}.brand small{display:block;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:.76rem}.nav-links{display:flex;align-items:center;gap:28px;font-weight:750}.nav-links a{text-decoration:none;position:relative;padding:28px 0}.nav-links a:after{content:"";position:absolute;left:0;bottom:21px;width:0;height:2px;background:var(--green);transition:.25s}.nav-links a:hover:after,.nav-links a.active:after{width:100%}.header-actions{display:flex;align-items:center;gap:12px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 22px;border:1px solid transparent;text-decoration:none;font-weight:850;border-radius:0;cursor:pointer;transition:.24s ease;font-size:1rem}.btn-primary{background:var(--green);color:white;box-shadow:0 14px 35px rgba(20,107,70,.24)}.btn-primary:hover{background:var(--green2);transform:translateY(-2px)}.btn-light{background:var(--paper);color:var(--green2);border-color:rgba(255,255,255,.45)}.btn-light:hover{background:white;transform:translateY(-2px)}.btn-secondary{background:var(--lime);color:#17321f}.btn-secondary:hover{transform:translateY(-2px);filter:saturate(1.2)}.menu-btn{display:none;background:transparent;border:1px solid var(--line);padding:12px 15px;font-weight:800}.mobile-nav{display:none}.hero{min-height:760px;position:relative;display:flex;align-items:center;color:white;overflow:hidden}.hero-media{position:absolute;inset:0}.hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,27,18,.82),rgba(6,27,18,.48) 52%,rgba(6,27,18,.2)),linear-gradient(0deg,rgba(0,0,0,.18),rgba(0,0,0,.08))}.hero-media img{width:100%;height:100%;object-fit:cover;transform:scale(1.03);animation:slowZoom 22s ease-in-out infinite alternate}@keyframes slowZoom{from{transform:scale(1.02)}to{transform:scale(1.1)}}.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.15fr) 440px;gap:72px;align-items:center;padding:95px 0}.eyebrow{display:flex;align-items:center;gap:12px;font-size:.84rem;font-weight:900;text-transform:uppercase;letter-spacing:.12em;color:var(--lime);margin:0 0 18px}.eyebrow:before{content:"";width:35px;height:2px;background:currentColor}.hero h1{font-size:clamp(3.2rem,6vw,5.6rem);line-height:.92;letter-spacing:-.07em;margin:0 0 28px;max-width:900px}.lead{font-size:clamp(1.08rem,1.6vw,1.35rem);max-width:780px;color:rgba(255,255,255,.88);margin:0 0 28px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.hero-panel{background:rgba(255,250,240,.94);color:var(--ink);padding:38px;border:1px solid rgba(255,255,255,.55);box-shadow:var(--shadow);position:relative}.hero-panel:before{content:"";position:absolute;inset:14px;border:1px solid rgba(20,107,70,.14);pointer-events:none}.hero-panel h2{font-size:1.7rem;line-height:1.12;margin:0 0 16px;letter-spacing:-.03em}.check-list{display:grid;gap:16px;padding:0;margin:20px 0 0;list-style:none}.check-list li{display:flex;gap:12px;align-items:flex-start}.check-list span:first-child,.tick{display:inline-grid;place-items:center;flex:0 0 26px;width:26px;height:26px;background:var(--green);color:#fff;font-weight:900}.section{padding:105px 0;position:relative}.compact-section{padding:80px 0}.alt{background:#fbf6eb}.dark{background:radial-gradient(circle at 15% 20%,rgba(199,233,90,.13),transparent 34%),linear-gradient(135deg,#0c2d20,#071b13);color:white;overflow:hidden}.section-head{max-width:780px;margin:0 auto 50px;text-align:center}.section-head h2,.xl-title{font-size:clamp(2.15rem,4.3vw,4.4rem);line-height:1;letter-spacing:-.055em;margin:0 0 18px}.section-head p,.body-large{font-size:1.16rem;color:var(--muted);margin:0}.dark .section-head p,.dark .body-large,.light p{color:rgba(255,255,255,.72)}.split-head{max-width:none;display:grid;grid-template-columns:1fr 420px;gap:35px;text-align:left;align-items:end}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px}.align-center{align-items:center}.align-start{align-items:start}.stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.stats-row div{background:var(--paper);padding:30px}.stats-row strong{display:block;font-size:2rem;color:var(--green);line-height:1}.stats-row span{display:block;margin-top:8px;color:var(--muted);font-weight:650}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.card,.deep-card,.form-panel{background:var(--paper);border:1px solid var(--line);box-shadow:0 18px 48px rgba(0,0,0,.06);padding:32px;transition:.3s}.card:hover,.outlet-card:hover,.action-card:hover{transform:translateY(-7px);box-shadow:var(--shadow)}.card h3,.deep-card h3{font-size:1.38rem;letter-spacing:-.03em;margin:0 0 12px}.card p,.deep-card p{color:var(--muted);margin:0}.content-list{display:grid;gap:22px;margin-top:34px}.content-row{display:grid;grid-template-columns:55px 1fr;gap:18px}.num{width:55px;height:55px;display:grid;place-items:center;background:var(--green);color:#fff;font-weight:900}.content-row h3{margin:0 0 6px}.content-row p{margin:0;color:var(--muted)}.image-feature{position:relative}.image-feature img{height:650px;width:100%;object-fit:cover;box-shadow:var(--shadow)}.image-note{position:absolute;left:-35px;bottom:35px;max-width:330px;background:var(--paper);padding:28px;box-shadow:var(--shadow);border-left:5px solid var(--lime)}.image-note span{display:block;color:var(--muted);margin-top:6px}.impact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.impact-grid article,.dark-card,.timeline article,.idea-stack article{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);padding:28px;backdrop-filter:blur(8px)}.impact-grid strong{display:block;font-size:1.45rem;margin-bottom:8px}.impact-grid span,.dark-card p,.timeline p,.idea-stack p{color:rgba(255,255,255,.72)}.floating-orbit{position:absolute;width:156px;height:156px;border:1px solid rgba(199,233,90,.38);border-radius:50%;display:grid;place-items:center;color:var(--lime);font-weight:900;text-transform:uppercase;font-size:.75rem;letter-spacing:.1em;animation:floatY 7s ease-in-out infinite;opacity:.78;pointer-events:none}.floating-orbit:before{content:"";position:absolute;inset:18px;border-radius:50%;background:rgba(199,233,90,.08)}.floating-orbit.one{right:7%;top:16%}.floating-orbit.two{left:5%;bottom:16%;animation-delay:-2.5s}.floating-orbit.three{right:28%;bottom:7%;animation-delay:-4s}.floating-orbit.small{width:110px;height:110px}@keyframes floatY{0%,100%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-22px) rotate(4deg)}}.action-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.action-card{background:var(--paper);border:1px solid var(--line);padding:28px;text-align:left;cursor:pointer;color:var(--ink);transition:.3s}.action-card strong{display:block;font-size:1.22rem;margin-bottom:8px}.action-card span{color:var(--muted)}.logo-slider-section{overflow:hidden}.logo-marquee{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}.logo-track{display:flex;gap:16px;width:max-content;animation:marquee 42s linear infinite}.logo-marquee:hover .logo-track{animation-play-state:paused}.shop-logo{min-width:220px;background:#fff;border:1px solid var(--line);padding:22px 24px;text-decoration:none;display:grid;gap:4px;box-shadow:0 10px 30px rgba(0,0,0,.05);transition:.25s}.shop-logo:hover{transform:translateY(-4px);border-color:rgba(20,107,70,.4)}.shop-logo span{font-weight:900}.shop-logo small{color:var(--muted);text-transform:uppercase;letter-spacing:.08em}@keyframes marquee{to{transform:translateX(-50%)}}.gallery-controls,.pill-filters{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-bottom:28px}.filter-btn,.pill-filters button{border:1px solid var(--line);background:#fff;padding:12px 18px;font-weight:850;cursor:pointer}.filter-btn.active,.pill-filters button.active{background:var(--green);color:white}.gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:280px;gap:18px}.gallery-item{position:relative;overflow:hidden;margin:0;background:#000}.gallery-item.wide{grid-column:span 2}.gallery-item img{height:100%;width:100%;object-fit:cover;transition:.55s}.gallery-item:hover img{transform:scale(1.08)}.gallery-item figcaption{position:absolute;left:0;right:0;bottom:0;padding:26px;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.78));display:grid;gap:4px}.review-slider{position:relative}.review-track{display:flex;overflow:hidden;scroll-behavior:smooth;gap:20px}.review-card{min-width:calc(33.333% - 14px);background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.16);padding:32px}.stars{color:var(--lime);letter-spacing:.08em}.review-card p{font-size:1.08rem;color:rgba(255,255,255,.82)}.slider-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:44px;height:44px;border:0;background:var(--lime);font-size:2rem;cursor:pointer}.slider-btn.prev{left:-22px}.slider-btn.next{right:-22px}.contact-form{display:grid;gap:18px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{font-weight:850;display:grid;gap:8px}input,select,textarea{width:100%;border:1px solid var(--line);background:#fff;padding:15px 14px;font:inherit;color:var(--ink);border-radius:0}textarea{resize:vertical}.form-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.form-note{color:var(--muted);font-size:.94rem}.page-hero{padding:145px 0 110px;color:white;background:linear-gradient(135deg,rgba(7,27,19,.85),rgba(7,27,19,.62)),url('https://images.unsplash.com/photo-1542838132-92c53300491e?auto=format&fit=crop&w=2200&q=80') center/cover;position:relative;overflow:hidden}.dark-sub{background:radial-gradient(circle at 12% 20%,rgba(199,233,90,.15),transparent 32%),linear-gradient(135deg,#0b2a1d,#06140f)}.outlets-hero{background:linear-gradient(135deg,rgba(7,27,19,.84),rgba(7,27,19,.5)),url('https://images.unsplash.com/photo-1528698827591-e19ccd7bc23d?auto=format&fit=crop&w=2200&q=80') center/cover}.fairtrade-hero{background:linear-gradient(135deg,rgba(7,27,19,.86),rgba(7,27,19,.52)),url('https://images.unsplash.com/photo-1514432324607-a09d9b4aefdd?auto=format&fit=crop&w=2200&q=80') center/cover}.involved-hero{background:linear-gradient(135deg,rgba(7,27,19,.86),rgba(7,27,19,.52)),url('https://images.unsplash.com/photo-1529333166437-7750a6dd5a70?auto=format&fit=crop&w=2200&q=80') center/cover}.contact-hero{background:linear-gradient(135deg,rgba(7,27,19,.86),rgba(7,27,19,.52)),url('https://images.unsplash.com/photo-1487611459768-bd414656ea10?auto=format&fit=crop&w=2200&q=80') center/cover}.page-hero h1{font-size:clamp(3rem,6vw,6rem);line-height:.95;letter-spacing:-.06em;margin:0 0 24px}.page-hero p:not(.eyebrow){font-size:1.25rem;color:rgba(255,255,255,.82);max-width:760px}.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.timeline span{display:inline-grid;place-items:center;width:44px;height:44px;background:var(--lime);color:#17321f;font-weight:900;margin-bottom:24px}.tag-cloud{display:flex;flex-wrap:wrap;gap:10px}.tag-cloud span{background:#eef4df;border:1px solid var(--line);padding:10px 13px;font-weight:800}.faq-list{max-width:850px;margin:auto;display:grid;gap:12px}.faq-list details{background:var(--paper);border:1px solid var(--line);padding:20px}.faq-list summary{font-weight:900;cursor:pointer}.directory-tools{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:30px}.directory-tools label{min-width:320px}.outlet-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.outlet-card{background:var(--paper);border:1px solid var(--line);padding:26px;transition:.3s}.outlet-card h3{margin:0 0 8px}.outlet-card p{color:var(--muted);margin:0 0 16px}.outlet-card span{display:inline-block;background:#eef4df;padding:7px 11px;font-size:.82rem;text-transform:uppercase;font-weight:900;color:var(--green)}.idea-stack{display:grid;gap:16px}.contact-cards{display:grid;gap:14px;margin-top:28px}.contact-cards a{display:block;background:var(--paper);border:1px solid var(--line);padding:20px;text-decoration:none}.contact-cards span{display:block;color:var(--muted);margin-top:5px}.site-footer{background:#071b13;color:white;padding:70px 0 0}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:40px}.footer-brand img{width:70px;height:70px;object-fit:contain;margin-bottom:16px}.site-footer h3{margin:0 0 16px}.site-footer p,.footer-links a{color:rgba(255,255,255,.72)}.footer-links{display:grid;gap:10px}.footer-links a,.footer-cta{text-decoration:none}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.14);padding:24px 0;margin-top:48px;color:rgba(255,255,255,.6)}.sticky-mobile-cta{display:none}.reveal,.reveal-left,.reveal-right,.stagger>*{opacity:0;transform:translateY(35px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.75,.2,1)}.reveal-left{transform:translateX(-42px)}.reveal-right{transform:translateX(42px)}.is-visible,.stagger.is-visible>*{opacity:1;transform:none}.stagger.is-visible>*:nth-child(2){transition-delay:.09s}.stagger.is-visible>*:nth-child(3){transition-delay:.18s}.stagger.is-visible>*:nth-child(4){transition-delay:.27s}.is-hidden{display:none!important}@media(max-width:1100px){.nav-links{display:none}.menu-btn{display:block}.mobile-nav{display:grid;position:fixed;z-index:45;top:86px;left:0;right:0;background:var(--paper);padding:18px 22px;border-bottom:1px solid var(--line);transform:translateY(-130%);transition:.3s}.mobile-nav.open{transform:translateY(0)}.mobile-nav a{padding:14px 0;text-decoration:none;font-weight:850;border-bottom:1px solid var(--line)}.hero-grid,.split,.split-head{grid-template-columns:1fr;gap:44px}.hero{min-height:auto}.hero h1{font-size:clamp(3rem,10vw,4.9rem)}.hero-panel{max-width:650px}.grid-4,.action-grid,.timeline{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.gallery{grid-template-columns:repeat(2,1fr)}.review-card{min-width:calc(50% - 10px)}}@media(max-width:760px){.container{width:min(100% - 28px,var(--max))}.nav-wrap{height:76px}.brand img{width:56px;height:56px}.brand span{font-size:.98rem}.mobile-nav{top:76px}.header-actions .btn{display:none}.hero-grid{padding:82px 0}.hero h1,.page-hero h1{font-size:clamp(2.8rem,15vw,4rem)}.lead,.page-hero p:not(.eyebrow){font-size:1.05rem}.section{padding:72px 0}.hero-actions,.form-actions{align-items:stretch}.hero-actions .btn,.form-actions .btn{width:100%}.hero-panel,.card,.deep-card,.form-panel{padding:24px}.stats-row,.grid-3,.grid-4,.action-grid,.impact-grid,.timeline,.outlet-grid,.footer-grid,.form-grid{grid-template-columns:1fr}.gallery{grid-template-columns:1fr;grid-auto-rows:260px}.gallery-item.wide{grid-column:auto}.image-feature img{height:430px}.image-note{position:static;max-width:none}.directory-tools{display:grid}.directory-tools label{min-width:0}.review-card{min-width:100%}.slider-btn.prev{left:0}.slider-btn.next{right:0}.floating-orbit{display:none}.sticky-mobile-cta{display:grid;grid-template-columns:1fr 1fr;position:fixed;left:0;right:0;bottom:0;z-index:60}.sticky-mobile-cta a{background:var(--green);color:white;text-align:center;padding:14px;text-decoration:none;font-weight:900}.sticky-mobile-cta a+ a{background:var(--green2)}body{padding-bottom:52px}.footer-bottom{display:grid}.shop-logo{min-width:190px}}

/* v5 polish: smoother motion, protected floating elements, stronger FAQ, reliable layout */
.dark,.dark-sub,.wow-section,.reviews-section,.page-hero{position:relative;overflow:hidden;isolation:isolate}
.dark>.container,.dark-sub>.container,.wow-section>.container,.reviews-section>.container,.page-hero>.container{position:relative;z-index:2}
.floating-orbit{z-index:1;opacity:.34;filter:drop-shadow(0 22px 45px rgba(199,233,90,.18));mix-blend-mode:screen}
.floating-orbit.one{right:2.5%;top:9%}
.floating-orbit.two{left:2.5%;bottom:8%}
.floating-orbit.three{right:10%;bottom:6%}
.wow-section .floating-orbit.one{right:4%;top:12%}
.wow-section .floating-orbit.two{left:4%;bottom:9%}
.wow-section .floating-orbit.three{right:18%;bottom:5%}
.reviews-section .floating-orbit{right:3%;top:10%;left:auto;bottom:auto}
.logo-track{animation-duration:88s!important;will-change:transform}
.logo-marquee:hover .logo-track{animation-play-state:running!important}
.shop-logo{transition:transform .35s cubic-bezier(.2,.8,.2,1),border-color .35s ease,box-shadow .35s ease;background:linear-gradient(180deg,#fff,#fffaf1)}
.shop-logo:hover{transform:translateY(-2px);box-shadow:0 22px 55px rgba(15,45,32,.12)}
img{background:#e8e1d4}
.gallery-item img,.hero-media img,.image-feature img{object-fit:cover;object-position:center}
.faq-showcase{background:linear-gradient(180deg,var(--cream),#fbf7ed);position:relative;overflow:hidden}
.faq-showcase:before{content:"";position:absolute;width:560px;height:560px;border-radius:50%;background:radial-gradient(circle,rgba(199,233,90,.18),transparent 68%);right:-220px;top:40px;animation:softPulse 8s ease-in-out infinite;pointer-events:none}
@keyframes softPulse{0%,100%{transform:scale(1);opacity:.55}50%{transform:scale(1.08);opacity:.9}}
.sticky-copy{position:sticky;top:120px;align-self:start}
.rich-faq{gap:14px;max-width:none;margin:0}
.faq-list details,.faq-item{position:relative;overflow:hidden;transition:border-color .35s ease,box-shadow .35s ease,background .35s ease,transform .35s ease}
.faq-list details:hover{transform:translateY(-2px);box-shadow:0 18px 46px rgba(16,39,29,.08)}
.faq-list details[open]{border-color:rgba(20,107,70,.35);background:#fffdf6;box-shadow:0 24px 60px rgba(16,39,29,.1)}
.faq-list summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:22px;font-size:1.05rem}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary:after{content:"+";display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;background:var(--green);color:#fff;font-weight:900;transition:transform .3s ease,background .3s ease}
.faq-list details[open] summary:after{content:"−";background:var(--lime);color:#18321f;transform:rotate(180deg)}
.faq-list details>div{display:grid;grid-template-rows:0fr;transition:grid-template-rows .42s cubic-bezier(.2,.8,.2,1)}
.faq-list details[open]>div{grid-template-rows:1fr}
.faq-list details>div>p{overflow:hidden;margin:12px 0 0;color:var(--muted)}
.reveal,.reveal-left,.reveal-right,.stagger>*{transition-duration:.9s;transition-timing-function:cubic-bezier(.16,.84,.24,1)}
.reveal-left{transform:translateX(-58px) translateY(18px)}
.reveal-right{transform:translateX(58px) translateY(18px)}
.gallery-item{box-shadow:0 18px 50px rgba(9,32,23,.12)}
.review-track{scroll-snap-type:x mandatory}
.review-card{scroll-snap-align:start;transition:transform .35s ease,background .35s ease,border-color .35s ease}
.review-card:hover{transform:translateY(-4px);background:rgba(255,255,255,.12);border-color:rgba(199,233,90,.32)}
@media(max-width:1100px){.sticky-copy{position:static}.floating-orbit{opacity:.22}.faq-showcase:before{display:none}}
@media(max-width:760px){.logo-track{animation-duration:62s!important}.faq-list summary{font-size:1rem}.faq-list summary:after{width:30px;height:30px;flex-basis:30px}.floating-orbit{display:none!important}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.logo-track{animation:none!important}}
