html{font-size:16px}
.skip-link{position:fixed;top:.5rem;left:1rem;z-index:100;transform:translateY(-200%);padding:.75rem 1rem;background:#fff;color:#06443d;border:2px solid #06443d;border-radius:.5rem}
.skip-link:focus{transform:none}
:focus-visible{outline:3px solid #bd4d24;outline-offset:4px}
.cacao-faq{background:#fffaf2}
.faq-inner{max-width:70rem;margin-inline:auto}
.cacao-faq h2{font-size:2.25rem}
.cacao-faq details{padding:1.125rem 0;border-bottom:1px solid #e8d1b8}
.cacao-faq summary{font-size:1rem;font-weight:700;cursor:pointer;min-height:2.75rem;display:list-item;align-content:center}
.cacao-faq p{max-width:60ch;line-height:1.7;color:#4d625c}
.cacao-faq a{text-decoration:underline;text-underline-offset:.15em;color:#a13b18}
.company-contact{font-style:normal;line-height:1.6;margin-top:1rem;font-size:.8125rem}
.company-contact a{display:inline}
/* Fluid scaling: above 1200px the whole layout grows proportionally, like browser zoom */
@media(min-width:1201px){html{font-size:min(calc(100vw / 75),2.25rem)}}
:root{--ink:#082e2a;--green:#06443d;--deep:#04312e;--rust:#bd4d24;--cream:#fff8ed;--sand:#f4dfc5;--gold:#d89a58;--muted:#68706b;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fffaf2;font-family:var(--sans);font-size:1rem;overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.sr-only{position:absolute;width:0.0625rem;height:0.0625rem;padding:0;margin:-0.0625rem;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{height:4.875rem;background:rgba(255,250,243,.97);display:flex;align-items:center;padding:0 clamp(1.375rem,5vw,5rem);gap:2rem;position:sticky;top:0;z-index:50;box-shadow:0 0.0625rem 0 rgba(13,55,49,.08)}.brand{display:flex;align-items:center;gap:0.5625rem;white-space:nowrap;font:700 1.1875rem var(--serif);letter-spacing:.02em}.brand-mark{width:2.8125rem;height:3.1875rem;color:var(--rust);display:grid;place-items:center;font-size:2.125rem;border-bottom:0.125rem solid var(--rust)}.brand b{font-size:1.0625rem}.nav{display:flex;align-items:center;justify-content:center;gap:1.75rem;font-size:0.8125rem;font-weight:700;margin-left:auto}.nav a{padding:1.875rem 0 1.375rem;position:relative}.nav a:after{content:'';position:absolute;left:0;right:100%;bottom:1.0625rem;height:0.125rem;background:var(--rust);transition:.25s}.nav a:hover:after,.nav a.active:after{right:0}.header-actions{display:flex;align-items:center;gap:0.625rem;font-size:0.75rem}.icon-button{background:none;border:0;font-size:1.3125rem;cursor:pointer;color:var(--ink);position:relative}.cart i{position:absolute;background:var(--green);color:#fff;width:1rem;height:1rem;border-radius:50%;font:0.625rem/1rem var(--sans);right:-0.125rem;top:-0.25rem}.menu-toggle{display:none;background:none;border:0;padding:0.625rem}.menu-toggle span{display:block;width:1.625rem;height:0.125rem;background:var(--ink);margin:0.3125rem}
.button{display:inline-flex;align-items:center;justify-content:center;gap:0.75rem;border:0;border-radius:6.25rem;padding:0.9375rem 1.4375rem;background:var(--rust);color:#fff;font-weight:700;font-size:0.875rem;box-shadow:0 0.4375rem 1.125rem rgba(132,49,20,.15);transition:transform .2s,background .2s}.button:hover{background:#a43f1c;transform:translateY(-0.125rem)}.button.small{padding:0.8125rem 1.125rem;font-size:0.75rem}.button.outline{color:var(--rust);background:rgba(255,247,234,.86);border:0.0625rem solid var(--rust);box-shadow:none}.play{font-size:0.625rem}.eyebrow{color:var(--rust)!important;font-size:0.75rem!important;font-weight:800!important;letter-spacing:.25em;margin:0 0 0.75rem!important}.lead{font-size:1.1875rem;line-height:1.5;max-width:38.125rem}.actions{display:flex;gap:0.875rem;margin-top:1.6875rem;flex-wrap:wrap}
.hero{height:min(39.6875rem,calc(100vh - 4.875rem));min-height:33.4375rem;position:relative;display:flex;align-items:center;background:url('assets/images/hero-cacao.webp') center/cover no-repeat;isolation:isolate}.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,249,237,.96) 0%,rgba(255,249,237,.78) 38%,rgba(0,40,34,.03) 65%);z-index:-1}.hero-content{width:min(76.25rem,90vw);margin:auto;padding-right:46%;position:relative}.hero h1,.section h2,.story h2,.wide-heading h2{font:700 clamp(2.375rem,4.4vw,4.25rem)/.98 var(--serif);letter-spacing:-.035em;margin:0 0 1.0625rem}.seal{position:absolute;right:5vw;top:50%;transform:translateY(-50%) rotate(-7deg);width:9.375rem;height:9.375rem;border-radius:50%;background:#f9efdb;border:0.25rem double #54745f;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#436551;box-shadow:0 0.5rem 1.875rem rgba(0,0,0,.12);gap:0.3125rem}.seal span{font-size:2.125rem}.seal b{font-size:0.75rem}.seal small{font-size:0.5625rem;letter-spacing:.11em}
.promise-strip{display:grid;grid-template-columns:repeat(4,1fr);padding:1.25rem max(5vw,1.5625rem);background:#fff8ed;border-bottom:0.0625rem solid #ecd8c0;gap:0.5rem}.promise-strip article{display:flex;align-items:center;justify-content:center;gap:0.8125rem;padding:0.3125rem 1.375rem;border-right:0.0625rem solid #ead7c1}.promise-strip article:last-child{border-right:0}.promise-strip i{font-style:normal;width:3.375rem;height:3.375rem;border-radius:50%;display:grid;place-items:center;background:#f5dec2;color:#057157;font-size:1.5rem}.promise-strip b,.promise-strip span{display:block}.promise-strip b{font-size:0.8125rem;line-height:1.25}.promise-strip span{font-size:0.6875rem;color:#777;margin-top:0.1875rem}
.section{padding:4.0625rem max(4.5vw,1.5rem);position:relative}.products{display:grid;grid-template-columns:15.625rem 1fr;gap:2rem;background:linear-gradient(90deg,#fff3e2,#fffaf1 60%,#ffefdc)}.section-intro h2,.story h2,.wide-heading h2{font-size:2.4375rem}.section-intro>p:not(.eyebrow),.story-copy>p:not(.eyebrow){color:var(--muted);line-height:1.55;margin:0 0 1.375rem}.section-intro .button{margin-top:0.3125rem}.product-grid{display:grid;grid-template-columns:repeat(6,1fr);align-items:end;gap:0.75rem}.product-card{text-align:center;min-width:0}.product-card img{height:14.5rem;width:100%;object-fit:contain;filter:drop-shadow(0 0.75rem 0.5rem rgba(69,37,18,.2));transition:transform .25s}.product-card:hover img{transform:translateY(-0.5625rem) rotate(-1deg)}.product-card h3{font-size:0.8125rem;margin:0.625rem 0 0.1875rem}.product-card p{font-size:0.6875rem;color:#777;margin:0}
.process{background:#fffdf8;display:grid;grid-template-columns:15rem 1fr;gap:2.25rem}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.125rem}.step{position:relative}.step:not(:last-child):after{content:'→';position:absolute;right:-0.9375rem;top:4.875rem;font-size:1.5625rem}.step-image{height:9.6875rem;border-radius:0.75rem;background-size:cover;background-position:center;background-repeat:no-repeat;position:relative;transition:transform .35s ease}.step-image b{position:absolute;left:0.5625rem;bottom:-1.0625rem;background:#fff1dc;border:0.1875rem solid #fff;width:2.75rem;height:2.75rem;border-radius:50%;display:grid;place-items:center;color:var(--rust);box-shadow:0 0.25rem 0.75rem #8d5e3020;z-index:2}.p1{background-image:url('assets/images/proceso-cultivo.webp')}.p2{background-image:url('assets/images/proceso-cosecha.webp')}.p3{background-image:url('assets/images/proceso-fermentacion.webp')}.p4{background-image:url('assets/images/proceso-secado.webp');background-position:center 60%}.step h3{font-size:0.9375rem;margin:1.5625rem 0.3125rem 0.25rem}.step p{font-size:0.75rem;line-height:1.4;color:#777;margin:0 0.3125rem}
.story{display:grid;grid-template-columns:42% 58%;min-height:20.9375rem;background:#fff7eb}.story-image{background:url('assets/images/proceso-cacao.webp') left center/400% 100% no-repeat;position:relative}.story-image:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 70%,#fff7eb)}.story-copy{padding:2.9375rem 7% 2.6875rem 4%;position:relative;background:radial-gradient(circle at 80% 30%,rgba(109,161,108,.18),transparent 35%)}.story-copy em{position:absolute;right:5%;bottom:1.6875rem;color:#955033;font:italic 1.0625rem var(--serif);transform:rotate(-5deg)}.story-copy>p{max-width:41.875rem}.story-copy .button{margin-top:0.125rem}
.gift{display:grid;grid-template-columns:17.5rem 1fr;gap:2.375rem;background-color:#fffaf1;background-image:radial-gradient(#c8915e22 0.0625rem,transparent 0.0625rem);background-size:1.125rem 1.125rem}.gift-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.gift-grid article{background:#fff;border-radius:0.4375rem;box-shadow:0 0.5rem 1.5625rem rgba(66,42,21,.07);overflow:hidden;padding-bottom:1rem;position:relative}.gift-img{height:7.1875rem;background-image:url('assets/images/hero-cacao.webp');background-size:400% 100%}.gi1{background-position:0}.gi2{background-position:33.33%}.gi3{background-position:66.66%}.gi4{background-image:url('assets/images/proceso-cacao.webp');background-size:400% 100%;background-position:100%}.gift-grid article>b{position:absolute;top:5.875rem;left:0.75rem;width:2.25rem;height:2.25rem;border:0.1875rem solid #fff;background:#fae8cf;border-radius:50%;display:grid;place-items:center;color:var(--rust)}.gift-grid h3,.gift-grid p{margin-left:0.875rem;margin-right:0.625rem}.gift-grid h3{font-size:0.8125rem;margin-top:0.875rem;margin-bottom:0.25rem}.gift-grid p{font-size:0.6875rem;line-height:1.4;color:#777;margin-top:0;margin-bottom:0}
.blog{background:linear-gradient(100deg,#ffe6d0,#fff5e7);display:grid;grid-template-columns:20.625rem 1fr;gap:3.125rem}.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.125rem}.post{background:#fff;border-radius:0.375rem;overflow:hidden;box-shadow:0 0.5rem 1.5rem rgba(104,44,20,.08)}.post-img{height:8.125rem;background-image:url('assets/images/hero-cacao.webp');background-size:300% 100%}.hot{background-position:0}.brownie{background-position:50%}.land{background-image:url('assets/images/proceso-cacao.webp');background-size:400% 100%;background-position:100%}.post>div:last-child{padding:0.8125rem;position:relative}.post small{color:var(--rust);font-size:0.5625rem;font-weight:800;letter-spacing:.14em}.post h3{font-size:0.875rem;margin:0.375rem 1.75rem 0.25rem 0}.post p{font-size:0.6875rem;color:#777;margin:0 1.5625rem 0 0}.post a{position:absolute;right:0.75rem;top:1.6875rem;background:#fde6ca;color:var(--rust);width:1.75rem;height:1.75rem;border-radius:50%;display:grid;place-items:center}
.newsletter{padding:1.5625rem max(5vw,1.5625rem);background:var(--green);color:#fff;display:grid;grid-template-columns:1fr minmax(21.875rem,32.5rem) auto;align-items:center;gap:2.5rem;border-bottom:0.0625rem solid rgba(255,255,255,.24)}.newsletter h2{font:700 1.5rem var(--serif);margin:0 0 0.3125rem}.newsletter p{font-size:0.75rem;line-height:1.4;margin:0;color:#e9f1eb}.newsletter form{display:flex}.newsletter input{border:0;border-radius:0.375rem 0 0 0.375rem;padding:0.875rem 1.125rem;flex:1;min-width:0}.newsletter .button{border-radius:0 0.375rem 0.375rem 0;box-shadow:none}.newsletter-note{display:flex;align-items:center;gap:0.8125rem!important}.newsletter-note:first-letter{font-size:2.1875rem}
footer{background:var(--deep);color:#e9f3ef;padding:2.25rem max(5vw,1.5625rem) 1.25rem}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:3.75rem}.footer-grid>div{display:flex;flex-direction:column;gap:0.5rem}.footer-grid b{font-size:0.75rem;margin-bottom:0.375rem}.footer-grid a,.footer-grid p{font-size:0.6875rem;color:#c6d6d1;margin:0}.footer-brand{color:#fff!important;font-size:1.0625rem!important}.footer-brand .brand-mark{color:#d78d48;border-color:#d78d48}.socials{font-size:1.25rem!important;letter-spacing:.35em}.copyright{display:flex;justify-content:flex-end;gap:1.5625rem;border-top:0.0625rem solid rgba(255,255,255,.1);margin-top:1.5625rem;padding-top:1rem;font-size:0.5625rem;color:#aebfba}.toast{position:fixed;right:1.5rem;bottom:1.5rem;background:#fff;color:var(--green);padding:0.9375rem 1.25rem;border-radius:0.5rem;box-shadow:0 0.625rem 2.5rem #0004;transform:translateY(6.25rem);opacity:0;transition:.3s;z-index:100}.toast.show{transform:none;opacity:1}.reveal{opacity:0;transform:translateY(1.125rem);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:none}
@media(max-width:1100px){.nav{gap:0.875rem}.nav a{font-size:0.6875rem}.header-actions .lang,.header-actions .icon-button{display:none}.product-grid{grid-template-columns:repeat(3,1fr);row-gap:2.1875rem}.product-card img{height:12.5rem}.process-grid{grid-template-columns:repeat(2,1fr)}.step:nth-child(2):after{display:none}.gift-grid{grid-template-columns:repeat(2,1fr)}.newsletter{grid-template-columns:1fr 1fr}.newsletter-note{display:none}.seal{display:none}}
@media(max-width:820px){.site-header{height:4.25rem;padding:0 1.125rem}.brand{font-size:1rem}.brand-mark{width:2.3125rem;height:2.625rem;font-size:1.6875rem}.header-actions{margin-left:auto}.header-actions .button{display:none}.menu-toggle{display:block;order:3}.nav{position:fixed;top:4.25rem;left:0;right:0;background:#fffaf2;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0.9375rem 1.5625rem 1.5625rem;transform:translateY(-130%);transition:.3s;box-shadow:0 1.25rem 2.1875rem #0002;z-index:-1}.nav.open{transform:none}.nav a{padding:0.875rem 0;font-size:0.875rem}.nav a:after{bottom:0.4375rem}.hero{height:43.125rem;min-height:0;align-items:flex-start;background-position:62% center}.hero:before{background:linear-gradient(180deg,rgba(255,249,237,.97) 0,rgba(255,249,237,.88) 48%,rgba(0,40,34,.05) 75%)}.hero-content{padding:4.125rem 0 0;width:88vw}.hero h1{font-size:2.875rem}.hero .lead{font-size:1rem;max-width:31.25rem}.promise-strip{grid-template-columns:repeat(2,1fr)}.promise-strip article{justify-content:flex-start;border-bottom:0.0625rem solid #ead7c1}.products,.process,.gift,.blog{grid-template-columns:1fr}.section-intro{max-width:40.625rem}.product-grid{grid-template-columns:repeat(3,1fr)}.story{grid-template-columns:1fr}.story-image{height:18.75rem}.story-copy{padding:2.375rem 7% 4.375rem}.blog-grid{grid-template-columns:repeat(3,1fr)}.newsletter{grid-template-columns:1fr}.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.hero{height:38.75rem;background-position:70% center}.hero-content{padding-top:3rem}.hero h1{font-size:2.375rem}.hero .actions{display:grid;width:max-content}.promise-strip{grid-template-columns:1fr}.promise-strip article{border-right:0}.section{padding:3.125rem 1.25rem}.section-intro h2,.story h2,.wide-heading h2{font-size:2.1875rem}.product-grid{grid-template-columns:repeat(2,1fr);gap:1.125rem 0.5rem}.product-card img{height:11.875rem}.process-grid{grid-template-columns:1fr}.step:not(:last-child):after{display:none}.step-image{height:11.875rem}.gift-grid,.blog-grid{grid-template-columns:1fr}.gift-img,.post-img{height:10.625rem}.story-copy em{bottom:1.5rem}.newsletter form{display:grid;gap:0.5rem}.newsletter input,.newsletter .button{border-radius:0.375rem}.footer-grid{grid-template-columns:1fr;gap:1.75rem}.copyright{flex-direction:column;gap:0.4375rem}.lang{display:none}.brand b{display:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.reveal{opacity:1;transform:none;transition:none}}

/* Visual rebuild matched to the approved vertical reference */
.reveal{opacity:1;transform:none;transition:transform .35s ease,box-shadow .35s ease}.brand-logo{width:3rem;height:3.3125rem;object-fit:contain}.flag{width:1.6875rem;height:1.125rem;object-fit:contain}.site-header{height:4.125rem;padding:0 max(4.5vw,1.75rem);gap:1.5625rem}.brand{font-size:1.125rem}.nav{gap:1.5rem}.nav a{padding:1.5rem 0 1.1875rem}.nav a:after{bottom:0.8125rem}.hero{height:26.875rem;min-height:26.875rem;background-image:url('assets/images/hero-tropical-v2.webp');background-position:center 55%}.hero:before{background:linear-gradient(90deg,rgba(255,249,237,.94) 0%,rgba(255,249,237,.80) 34%,rgba(255,249,237,.16) 57%,transparent 74%)}.hero-content{max-width:76.25rem;padding-right:52%}.hero h1{font-size:3.1875rem;line-height:1.01;max-width:38.75rem}.hero .lead{font-size:1rem;max-width:36.25rem}.seal{width:7.75rem;height:7.75rem;right:6vw}.promise-strip{padding-top:0.875rem;padding-bottom:0.875rem}.promise-strip i{width:3rem;height:3rem}.section{padding-top:2.375rem;padding-bottom:2.375rem}.section-intro h2,.story h2,.wide-heading h2{font-size:2.3125rem}.products{grid-template-columns:15.3125rem minmax(0,1fr);gap:1.375rem;min-height:18.75rem;overflow:hidden}.products:before,.products:after{content:'';position:absolute;z-index:0;width:5rem;height:10.625rem;background:url('assets/images/hero-tropical-v2.webp') 3% 100%/43.75rem auto no-repeat;opacity:.68;pointer-events:none}.products:before{left:-1.25rem;bottom:-0.625rem}.products:after{right:-1.5625rem;top:0;transform:scaleX(-1)}.products>*{position:relative;z-index:1}.product-reference{width:100%;aspect-ratio:3.86/1;position:relative;overflow:hidden;align-self:center}.product-reference img{position:absolute;max-width:none;width:138.8%;left:-34.2%;top:-221%}.product-grid{display:none}.process{grid-template-columns:13.75rem 1fr;gap:1.75rem}.process-grid{gap:0.875rem}.step-image{height:9rem;background-size:cover;background-position:center}.step:not(:last-child):after{top:3.8125rem}.step h3{margin-top:1.375rem}.story{min-height:16.875rem;background:url('assets/images/historia-v2.webp') center/cover no-repeat}.story-image{background:none}.story-image:after{display:none}.story-copy{padding:2.25rem 7% 2rem 4%;background:linear-gradient(90deg,rgba(255,247,235,.94),rgba(255,247,235,.78) 78%,rgba(255,247,235,.35))}.story-copy>p{max-width:40.625rem}.gift{grid-template-columns:17.5rem 1fr;padding-top:1.75rem;padding-bottom:1.75rem}.gift-img{height:7.25rem;background-size:cover;background-position:center;background-repeat:no-repeat}.gi1{background-image:url('assets/images/cultura-beneficios.webp')}.gi2{background-image:url('assets/images/cultura-recetas.webp')}.gi3{background-image:url('assets/images/cultura-dominicano.webp')}.gi4{background-image:url('assets/images/cultura-sostenibilidad.webp');background-position:center 60%}.gift-grid article>b{top:6.125rem}.blog{grid-template-columns:19.6875rem 1fr;padding-top:1.875rem;padding-bottom:1.875rem}.blog-grid{align-items:start}.post-img{height:7rem;background-image:url('assets/images/sabores-v2.webp');background-size:300% 100%}.hot{background-position:0}.brownie{background-position:100%}.land{background-image:url('assets/images/proceso-cacao.webp');background-size:400% auto;background-position:100% center}.newsletter{padding-top:1.25rem;padding-bottom:1.25rem}footer{padding-top:1.75rem}.footer-brand .brand-logo{filter:brightness(1.25)}

@media(max-width:1100px){.nav{gap:0.8125rem}.product-reference{display:none}.product-grid{display:grid}.hero-content{padding-right:43%}.products{grid-template-columns:14.375rem 1fr}.product-card img{height:11.25rem}}
@media(max-width:820px){.site-header{height:4.25rem}.brand-logo{width:2.5rem;height:2.75rem}.hero{height:36.875rem;min-height:36.875rem;background-position:62% center}.hero:before{background:linear-gradient(180deg,rgba(255,249,237,.97),rgba(255,249,237,.83) 53%,rgba(255,249,237,.05) 84%)}.hero-content{padding:3rem 0 0}.hero h1{font-size:2.75rem}.products,.process,.gift,.blog{grid-template-columns:1fr}.products{min-height:0}.story{grid-template-columns:1fr;min-height:31.875rem;background-position:30% center}.story-image{height:15.625rem}.story-copy{background:rgba(255,247,235,.92);padding:2rem 7% 4.0625rem}.product-grid{grid-template-columns:repeat(3,1fr)}.gift-grid,.blog-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.hero{height:35rem;min-height:35rem}.hero h1{font-size:2.3125rem}.hero .lead{font-size:0.9375rem}.product-grid{grid-template-columns:repeat(2,1fr)}.product-card img{height:11.25rem}.process-grid,.gift-grid,.blog-grid{grid-template-columns:1fr}.story{background-position:25% center}.story-copy em{font-size:0.9375rem}.post-img{height:9.6875rem}}

/* Responsive asset system: transparent packshots and foliage */
.hero-content{padding-right:0}.hero-content>.eyebrow,.hero-content>h1,.hero-content>.lead,.hero-content>.actions{max-width:38.75rem}.products{isolation:isolate}.products:before,.products:after{width:14.375rem;height:16.875rem;background-image:url('assets/images/follaje-transparente-v3.webp');background-size:contain;background-position:left bottom;background-repeat:no-repeat;opacity:.82}.products:before{left:-4.375rem;bottom:-1.75rem}.products:after{right:-4.6875rem;top:-2.1875rem;transform:scaleX(-1)}.product-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0.5rem;align-items:end}.product-sprite{width:clamp(6rem,8.2vw,8rem);aspect-ratio:1/2;margin:0 auto;background-image:url('assets/products/coleccion-transparente-v3.webp');background-size:600% 100%;background-repeat:no-repeat;filter:drop-shadow(0 0.75rem 0.5625rem rgba(65,35,18,.2));transition:transform .3s ease}.product-card:hover .product-sprite{transform:translateY(-0.5rem)}.ps1{background-position:0 0}.ps2{background-position:20% 0}.ps3{background-position:40% 0}.ps4{background-position:60% 0}.ps5{background-position:80% 0}.ps6{background-position:100% 0}.product-card h3{margin-top:0.25rem}.newsletter{position:relative;overflow:hidden;isolation:isolate}.newsletter:before{content:'';position:absolute;z-index:-1;left:-3.75rem;bottom:-6.5625rem;width:15.625rem;height:15.625rem;background:url('assets/images/follaje-transparente-v3.webp') left bottom/contain no-repeat;opacity:.32}.footer-grid,.copyright{position:relative;z-index:1}

@media(max-width:1100px){.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.625rem 0.875rem}.product-sprite{width:7.875rem}.product-reference{display:none}}
@media(max-width:940px){.site-header{height:4.25rem;padding:0 1.125rem}.header-actions .button{display:none}.menu-toggle{display:block;order:3}.nav{position:fixed;top:4.25rem;left:0;right:0;background:#fffaf2;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0.9375rem 1.5625rem 1.5625rem;transform:translateY(-130%);transition:.3s;box-shadow:0 1.25rem 2.1875rem #0002;z-index:-1}.nav.open{transform:none}.nav a{padding:0.875rem 0;font-size:0.875rem}.nav a:after{bottom:0.4375rem}}
@media(max-width:820px){.hero-content>.eyebrow,.hero-content>h1,.hero-content>.lead,.hero-content>.actions{max-width:36.875rem}.products:before,.products:after{width:11.25rem;height:13.75rem;opacity:.55}.product-sprite{width:7.5rem}}
@media(max-width:560px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem 0.5rem}.product-sprite{width:min(8.125rem,36vw)}.products:after{display:none}.products:before{left:-5.625rem;bottom:0}.hero-content>.eyebrow,.hero-content>h1,.hero-content>.lead,.hero-content>.actions{max-width:100%}.newsletter:before{opacity:.22}}

/* Slight sprite zoom prevents neighboring transparent cutouts from leaking into each card. */
.product-sprite{background-size:690% 100%}.ps1{background-position:1.27% 0}.ps2{background-position:20.76% 0}.ps3{background-position:40.25% 0}.ps4{background-position:59.75% 0}.ps5{background-position:79.24% 0}.ps6{background-position:98.73% 0}

/* Block 3: generated responsive botanical background. */
.process{background-color:#fffaf1;background-image:url('assets/images/fondo-bloque-3-proceso.webp');background-size:cover;background-position:center;background-repeat:no-repeat}
@media(max-width:820px){.process{background-size:auto 100%;background-position:center top}}

/* Hero seal: circular badge with rotating text ring */
.seal{width:10.5rem;height:10.5rem;right:max(5vw,2rem);top:auto;bottom:2.125rem;transform:none;background:none;border:0;box-shadow:none;padding:0;display:block;color:var(--green);filter:drop-shadow(0 0.875rem 1.625rem rgba(30,20,8,.28));transition:transform .4s ease}.seal:hover{transform:scale(1.05) rotate(-4deg)}
.seal svg{width:100%;height:100%;display:block;overflow:visible}.seal-disc{fill:rgba(255,248,236,.94)}.seal-line{fill:none;stroke:var(--green);stroke-width:2.5}.seal-line.thin{stroke-width:1.2;stroke-dasharray:2 4;stroke:var(--gold)}
.seal-ring{transform-box:view-box;transform-origin:50% 50%;animation:seal-spin 40s linear infinite}.seal text{font:800 15px/1 var(--sans);letter-spacing:.06em;fill:var(--green)}.seal tspan{fill:var(--rust)}
.seal-core{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0.25rem}.seal-core img{width:2.75rem;height:3rem}.seal-core small{font:800 0.5rem/1 var(--sans);letter-spacing:.14em;color:var(--rust)}
@keyframes seal-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.seal-ring{animation:none}}
/* Below 68.75rem the hero copy spans the width, so the seal would cover it */
@media(max-width:1100px){.seal{display:none}}
.section-intro .button{white-space:nowrap}

/* Process: horizontal header above the steps */
.process{grid-template-columns:1fr;gap:1.875rem}
.process-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:1.5rem 4rem;align-items:end;max-width:none;padding-bottom:1.625rem;border-bottom:0.0625rem solid #ecd8c0}
.process-intro h2{font-size:clamp(2.125rem,3.6vw,2.875rem);line-height:1.04;margin:0}.process-intro h2 em{display:block;font-style:italic;font-weight:400;color:var(--rust)}
.process-copy>p{margin:0 0 1.125rem;font-size:1rem;line-height:1.6;color:var(--muted);max-width:35rem}
.process-copy{display:flex;flex-wrap:wrap;align-items:center;gap:0.875rem 1.625rem}.process-copy>p{flex-basis:100%}
.process-facts{display:flex;gap:1.375rem;list-style:none;margin:0;padding:0;font-size:0.75rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-weight:700}.process-facts li{display:flex;align-items:baseline;gap:0.4375rem}.process-facts b{font:700 1.625rem/1 var(--serif);color:var(--green);letter-spacing:0;text-transform:none}
.process-copy .button{margin-left:auto}
@media(max-width:820px){.process-intro{grid-template-columns:1fr;align-items:start}.process-copy .button{margin-left:0}}
@media(max-width:560px){.process-intro h2{font-size:2.125rem}.process-facts{gap:1rem}.process-copy .button{width:100%}}

/* Block 4 continues the ivory botanical canvas from block 3 into the heritage scene. */
.story{background-color:#fff8ed;background-image:url('assets/images/fondo-bloque-4-historia.webp');background-size:cover;background-position:center;background-repeat:no-repeat}
.story-copy{background:linear-gradient(90deg,rgba(255,248,237,.90),rgba(255,248,237,.72) 72%,rgba(255,248,237,.38))}
@media(max-width:820px){.story{background:#fff8ed}.story-image{height:17.5rem;background-image:url('assets/images/fondo-bloque-4-historia.webp');background-size:auto 31.25rem;background-position:left bottom;background-repeat:no-repeat}.story-copy{background:linear-gradient(180deg,rgba(255,248,237,.97),rgba(255,248,237,.90))}}

/* Products: individual pouch images, normalized to one canvas so every pouch renders at the same size */
.product-card .product-img{display:block;width:100%;max-width:10.3125rem;height:auto;margin:0 auto;object-fit:contain;filter:drop-shadow(0 0.75rem 0.5625rem rgba(65,35,18,.2));transition:transform .3s ease}.product-card:hover .product-img{transform:translateY(-0.5rem)}
.product-grid{align-items:start}
@media(max-width:560px){.product-card .product-img{max-width:min(9.375rem,40vw)}}

/* Header: keep nav on one line between tablet and full desktop */
.nav a,.header-actions .button{white-space:nowrap}
@media(min-width:941px){.nav{gap:1rem}.nav a{font-size:0.75rem}.header-actions .lang{display:none}.site-header{gap:1.125rem}}
@media(max-width:1280px) and (min-width:941px){.header-actions .icon-button:not(.cart){display:none}}
@media(max-width:1060px) and (min-width:941px){.header-actions .button{display:none}}
@media(max-width:940px){.menu-toggle{margin-left:auto}}
input,button,select,textarea{font-family:inherit}.newsletter input{font-size:0.875rem}

/* Products: horizontal header + full-width row of cards */
.products{grid-template-columns:1fr;gap:2rem;padding-top:2.75rem;padding-bottom:3rem}
.products-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:1.5rem 4rem;align-items:end;max-width:none}
.products-intro h2{font-size:clamp(2.125rem,3.6vw,2.875rem);line-height:1.04;margin:0}.products-intro h2 em{display:block;font-style:italic;font-weight:400;color:var(--rust)}
.products-copy{display:flex;align-items:center;gap:1.75rem}.products-copy>p{margin:0!important;font-size:1rem;line-height:1.6;max-width:28rem}.products-copy .button{margin:0 0 0 auto;flex-shrink:0}
.product-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:1rem;align-items:stretch}
.product-card{background:rgba(255,255,255,.62);border:1px solid #f0dcc4;border-radius:1rem;padding:1.25rem .75rem 1.125rem;display:flex;flex-direction:column;align-items:center;transition:box-shadow .3s ease,transform .3s ease}.product-card:hover{box-shadow:0 1rem 2rem rgba(104,44,20,.1);transform:translateY(-.25rem)}
.product-card .product-img{max-width:9.5rem}
.product-card h3{font-size:.875rem;line-height:1.25;margin:.875rem 0 .25rem}.product-card p{font-size:.75rem}
.products:after{right:-7.5rem;top:-4.5rem;width:11rem;height:13rem;opacity:.45}
@media(max-width:1100px){.product-grid{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:1rem}.products-intro{grid-template-columns:1fr;align-items:start}.products-copy>p{max-width:36rem}}
@media(max-width:820px){.products-intro{grid-template-columns:1fr;align-items:start}.products-copy{flex-direction:column;align-items:flex-start;gap:1.25rem}.products-copy .button{margin:0}}
@media(max-width:560px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.product-card{padding:1rem .5rem}.products-intro h2{font-size:2.125rem}}

/* Seal center: logo + two-line label kept well inside the dashed inner ring */
.seal-core{gap:0}.seal-core img{width:2.25rem;height:2.5rem;margin-bottom:.125rem}
.seal-core b{font:700 .9375rem/1 var(--serif);color:var(--green)}
.seal-core small{font:800 .4375rem/1 var(--sans);letter-spacing:.16em;color:var(--rust);margin-top:.1875rem;padding-left:.16em}

/* Products: illustrated cacao background */
.products{background:#fbf1e3 url('assets/images/fondo-productos.webp') center/cover no-repeat}
.products:before,.products:after{display:none}
.product-card{background:rgba(255,252,247,.78);backdrop-filter:blur(2px)}
@media(max-width:820px){.products{background-image:linear-gradient(rgba(251,241,227,.72),rgba(251,241,227,.72)),url('assets/images/fondo-productos.webp');background-position:left center}}
main section[id]{scroll-margin-top:4.25rem}

/* Products: text column left, 3x2 pouch grid right */
.products{grid-template-columns:minmax(0,.82fr) minmax(0,2fr);gap:3.5rem;align-items:center}
.products-intro{display:flex;flex-direction:column;align-items:flex-start;gap:0}
.products-intro h2{font-size:clamp(2.125rem,3.4vw,2.75rem)}
.products-copy{flex-direction:column;align-items:flex-start;gap:1.5rem;margin-top:1.25rem}.products-copy>p{max-width:22rem}.products-copy .button{margin:0}
.product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.product-card{padding:1.125rem .75rem 1rem}.product-card .product-img{max-width:8.25rem}
@media(max-width:1100px){.products{grid-template-columns:1fr;gap:2rem}.products-copy>p{max-width:36rem}}
@media(max-width:560px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Products + process: one continuous botanical composition. */
.origin-flow{position:relative;isolation:isolate;overflow:hidden;background-color:#fbf1e3;background-image:url('assets/images/fondo-productos.webp'),url('assets/images/fondo-bloque-3-proceso.webp');background-position:center top,center bottom;background-size:100% 52%,100% 52%;background-repeat:no-repeat}
.origin-flow>.products,.origin-flow>.process{position:relative;z-index:1;background:transparent}
.origin-flow>.process{isolation:isolate}
.origin-flow>.products{padding-bottom:4.25rem;overflow:visible}
.origin-flow>.process{padding-top:4.25rem}
.origin-flow:before,.origin-flow:after{content:'';position:absolute;z-index:0;top:calc(50% - 10rem);width:22rem;height:24rem;background:url('assets/images/follaje-transparente-v3.webp') left bottom/contain no-repeat;pointer-events:none;filter:drop-shadow(0 .75rem 1rem rgba(49,66,36,.12))}
.origin-flow:before{left:-11.5rem}
.origin-flow:after{display:none}
.origin-flow>.products:after{display:block;content:'';position:absolute;z-index:0;right:-8rem;bottom:-15rem;width:27rem;height:30rem;background:url('assets/images/follaje-transparente-v3.webp') left bottom/contain no-repeat;transform:scaleX(-1);pointer-events:none;filter:drop-shadow(0 .75rem 1rem rgba(49,66,36,.12))}
.origin-flow>.process:after{content:'';position:absolute;z-index:-1;top:-7.5rem;right:-1rem;width:min(42rem,48vw);height:24rem;background:url('assets/images/fondo-bloque-3-proceso.webp') right bottom/auto 24rem no-repeat;transform:scaleY(-1);transform-origin:center;pointer-events:none;-webkit-mask-image:linear-gradient(to left,#000 54%,transparent 100%);mask-image:linear-gradient(to left,#000 54%,transparent 100%)}
.origin-flow .process-intro{border-top:.0625rem solid rgba(189,77,36,.16);padding-top:2.5rem}
@media(max-width:1100px){.origin-flow:before{top:calc(50% - 8rem);width:18rem;height:20rem;opacity:.78;left:-10rem}.origin-flow>.products:after{right:-7rem;bottom:-12rem;width:22rem;height:24rem;opacity:.8}.origin-flow>.process:after{top:-6rem;width:30rem;height:20rem;background-size:auto 20rem}}
@media(max-width:820px){.origin-flow{background-size:auto 52%,auto 52%;background-position:left top,right bottom}.origin-flow>.products{padding-bottom:3.5rem}.origin-flow>.process{padding-top:3.5rem}.origin-flow:before{top:calc(50% - 5rem);width:14rem;height:16rem;opacity:.52;left:-8rem}.origin-flow>.products:after{right:-5rem;bottom:-9rem;width:17rem;height:19rem;opacity:.62}.origin-flow>.process:after{top:-4.5rem;right:-5rem;width:24rem;height:16rem;background-size:auto 16rem}}
@media(max-width:560px){.origin-flow{background-size:auto 50%,auto 50%}.origin-flow>.products:after{display:none}.origin-flow:before{top:calc(50% - 2rem);left:-7rem;width:12rem;height:14rem;opacity:.42}.origin-flow>.process:after{top:-3rem;right:-7rem;width:18rem;height:12rem;background-size:auto 12rem;opacity:.55}.origin-flow>.products{padding-bottom:3rem}.origin-flow>.process{padding-top:3rem}.origin-flow .process-intro{padding-top:2rem}}

/* Final commercial call to action: sales-oriented without ecommerce controls. */
.final-cta{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:2.5rem;padding:1.75rem max(5vw,1.5625rem);background:linear-gradient(105deg,var(--green),var(--deep));color:#fff;border-bottom:0.0625rem solid rgba(255,255,255,.18)}
.final-cta:before{content:'';position:absolute;z-index:-1;left:-4.5rem;bottom:-7.25rem;width:17rem;height:17rem;background:url('assets/images/follaje-transparente-v3.webp') left bottom/contain no-repeat;opacity:.28;pointer-events:none}
.final-cta-copy{padding-left:clamp(0rem,9vw,8rem)}
.final-cta-kicker{margin:0 0 .375rem!important;color:#e8b277!important;font-size:.625rem!important;font-weight:800;letter-spacing:.2em}
.final-cta h2{font:700 clamp(1.5rem,2.3vw,2.125rem)/1.1 var(--serif);margin:0 0 .4375rem}
.final-cta-copy>p:last-child{max-width:none;margin:0;color:#e8f1ed;font-size:.8125rem;line-height:1.5;white-space:nowrap}
.final-cta-button{white-space:nowrap;background:#c6562c;box-shadow:0 .5rem 1.25rem rgba(0,0,0,.16)}
.final-cta-note{display:flex;align-items:center;gap:.75rem;margin:0;color:#e8f1ed;font-size:.75rem;line-height:1.45;white-space:nowrap}
.final-cta-note:first-letter{font-size:2.25rem;color:#e8b277}

/* One real social network: Instagram. */
.instagram-link{display:inline-flex!important;align-items:center;gap:.625rem;width:max-content;min-height:2.75rem;padding:.375rem .125rem;color:#fff!important;font-size:.75rem!important;font-weight:700;transition:color .2s ease,transform .2s ease}
.instagram-link svg{width:1.5rem;height:1.5rem;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.instagram-link .instagram-dot{fill:currentColor;stroke:none}
.instagram-link:hover{color:#e8b277!important;transform:translateY(-.125rem)}
.instagram-link:focus-visible,.final-cta .button:focus-visible{outline:.1875rem solid #fff;outline-offset:.1875rem}

@media(max-width:1100px){.final-cta{grid-template-columns:1fr;justify-items:start;gap:1.125rem}.final-cta-note{display:none}.final-cta-copy{padding-left:0}}
@media(max-width:700px){.final-cta{padding-top:2.25rem;padding-bottom:2.25rem}.final-cta-copy>p:last-child{white-space:normal}.final-cta-button{width:100%}.final-cta:before{left:auto;right:-6rem;opacity:.18}}

/* Hero supporting copy: protected from the detailed landscape behind it. */
.hero .lead{width:fit-content;color:var(--ink);font-weight:600;padding:.75rem 1rem .8125rem;border-left:.1875rem solid var(--rust);border-radius:0 .625rem .625rem 0;background:linear-gradient(90deg,rgba(255,248,237,.94),rgba(255,248,237,.76));box-shadow:0 .5rem 1.5rem rgba(34,50,35,.1);backdrop-filter:blur(.1875rem);text-shadow:0 .0625rem 0 rgba(255,255,255,.8)}
@media(max-width:560px){.hero .lead{width:100%;padding:.6875rem .8125rem;background:rgba(255,248,237,.9)}}

/* Commitments: elevated trust cards with a consistent botanical icon system. */
.promise-strip{position:relative;z-index:2;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;padding:1rem max(4.5vw,1.25rem);background:linear-gradient(180deg,#fffaf2,#f9eddd);border-bottom:.0625rem solid #e8d1b8}
.promise-strip article{position:relative;justify-content:flex-start;gap:.875rem;min-width:0;min-height:5.625rem;padding:1rem 1.125rem;border:.0625rem solid rgba(189,77,36,.14)!important;border-radius:.875rem;background:rgba(255,255,255,.7);box-shadow:0 .5rem 1.25rem rgba(69,45,24,.06)}
.promise-strip article:before{content:'';position:absolute;left:1rem;right:1rem;top:0;height:.125rem;border-radius:0 0 1rem 1rem;background:linear-gradient(90deg,var(--rust),var(--gold));opacity:.7}
.promise-icon{display:grid!important;place-items:center;flex:0 0 3.25rem;width:3.25rem;height:3.25rem;margin:0!important;border:.0625rem solid rgba(189,77,36,.16);border-radius:50%;background:linear-gradient(145deg,#fae7cd,#f3d7b5);color:var(--green)!important}
.promise-icon svg{width:1.65rem;height:1.65rem;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.promise-strip article>div{min-width:0}.promise-strip b{font-size:.875rem;line-height:1.2;color:var(--ink)}.promise-strip article>div>span{margin-top:.3125rem;font-size:.75rem;line-height:1.35;color:#65716c}
@media(max-width:1000px){.promise-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.promise-strip{grid-template-columns:1fr;gap:.75rem;padding-top:.875rem;padding-bottom:.875rem}.promise-strip article{min-height:5rem;padding:.875rem 1rem}.promise-icon{flex-basis:3rem;width:3rem;height:3rem}.promise-strip b{font-size:.9375rem}.promise-strip article>div>span{font-size:.8125rem}}

/* AI-restored brand lockups: high-resolution transparent masters for each surface. */
.brand-lockup{display:block;width:auto;object-fit:contain;object-position:left center}
.brand-lockup-header{height:3.1rem;max-width:12rem}
.brand-lockup-footer{height:3.25rem;max-width:13rem;filter:brightness(0) invert(1);opacity:.96}
.footer-brand{gap:.75rem}
@media(max-width:560px){.brand-lockup-header{height:2.625rem;max-width:9.25rem}.brand-lockup-footer{height:3rem;max-width:11.5rem}.site-header .flag{width:1.375rem}}

/* Blog: editorial hierarchy, larger imagery and descriptive calls to action. */
.blog{display:grid;grid-template-columns:1fr;gap:2rem;padding-top:3rem;padding-bottom:3.25rem;overflow:hidden;background:radial-gradient(circle at 92% 8%,rgba(216,154,88,.16),transparent 26%),linear-gradient(110deg,#ffead8,#fff7ec)}
.blog-header{display:grid;grid-template-columns:minmax(0,1fr) minmax(24rem,.9fr);align-items:end;gap:3.5rem;padding-bottom:1.75rem;border-bottom:.0625rem solid rgba(189,77,36,.2)}
.blog-header h2{max-width:38rem;margin:0;font:700 clamp(2.25rem,3.5vw,3.125rem)/1.02 var(--serif);letter-spacing:-.035em}.blog-header h2 em{display:block;color:var(--rust);font-weight:400}
.blog-intro{display:flex;align-items:center;gap:1.5rem}.blog-intro p{max-width:31rem;margin:0;color:var(--muted);font-size:1rem;line-height:1.6}.blog-intro .button{flex:0 0 auto;white-space:nowrap}
.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:1.5rem}
.post{display:flex;min-width:0;flex-direction:column;overflow:hidden;border:.0625rem solid rgba(189,77,36,.14);border-radius:1rem;background:rgba(255,253,249,.94);box-shadow:0 .875rem 2rem rgba(104,44,20,.09);transition:transform .25s ease,box-shadow .25s ease}
.post:hover{transform:translateY(-.3125rem);box-shadow:0 1.125rem 2.5rem rgba(104,44,20,.14)}
.post-img{position:relative;width:100%;height:auto;aspect-ratio:16/9;overflow:hidden;background:#ead7c1}.post-img img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.post:hover .post-img img{transform:scale(1.025)}.post-img:after{content:'';position:absolute;inset:auto 0 0;height:45%;background:linear-gradient(transparent,rgba(4,49,46,.28));pointer-events:none}.hot img{object-position:center 54%}.brownie img{object-position:center 58%}.land img{object-position:center 52%}
.post-type{position:absolute;z-index:1;left:1rem;bottom:1rem;padding:.4375rem .6875rem;border-radius:100vw;background:rgba(255,248,237,.94);color:var(--rust);font-size:.625rem;font-weight:800;letter-spacing:.14em;box-shadow:0 .25rem .75rem rgba(0,0,0,.1)}
.post .post-body{display:flex;flex:1;flex-direction:column;padding:1.25rem 1.25rem 1.125rem;position:static}.post h3{margin:0 0 .625rem;font:700 1.25rem/1.15 var(--serif);color:var(--ink)}.post .post-body>p{margin:0 0 1.25rem;color:var(--muted);font-size:.8125rem;line-height:1.55}
.post .post-link{position:static;display:flex;align-items:center;justify-content:space-between;width:100%;height:auto;margin-top:auto;padding-top:.9375rem;border-top:.0625rem solid #eddac4;border-radius:0;background:none;color:var(--rust);font-size:.75rem;font-weight:800;letter-spacing:.04em}.post-link span{display:grid;place-items:center;width:2rem;height:2rem;border-radius:50%;background:#f9e2c8;font-size:1rem;transition:transform .2s ease}.post-link:hover span{transform:translateX(.1875rem)}
.post .post-link:focus-visible{outline:.1875rem solid var(--rust);outline-offset:.25rem}
.post .post-body>p:last-child{margin-bottom:0}
.post-card-link{position:static!important;right:auto!important;top:auto!important;display:flex!important;flex:1;min-width:0;width:auto!important;height:auto!important;flex-direction:column;border-radius:0!important;background:none!important;color:inherit;cursor:pointer}.post-card-link:focus-visible{outline:.1875rem solid var(--rust);outline-offset:-.1875rem;border-radius:1rem!important}.post-card-link:hover .post-link span{transform:translateX(.1875rem)}
@media(max-width:1000px){.blog-header{grid-template-columns:1fr;gap:1.25rem}.blog-intro{justify-content:space-between}.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.post:last-child{grid-column:1/-1}.post:last-child{display:grid;grid-template-columns:minmax(16rem,.8fr) 1fr}.post:last-child .post-img{height:100%;min-height:13rem}}
@media(max-width:650px){.blog{gap:1.5rem;padding-top:2.5rem;padding-bottom:2.5rem}.blog-header h2{font-size:2.25rem}.blog-intro{align-items:flex-start;flex-direction:column}.blog-intro .button{width:100%}.blog-grid{grid-template-columns:1fr}.post:last-child{display:flex;grid-column:auto}.post:last-child .post-img,.post-img{height:auto;min-height:0;aspect-ratio:16/9}.post h3{font-size:1.1875rem}}

/* Mobile navigation remains fully hidden until explicitly opened. */
@media(max-width:940px){.nav{visibility:hidden;opacity:0;pointer-events:none;transition:transform .3s,opacity .2s}.nav.open{visibility:visible;opacity:1;pointer-events:auto}}

/* Viewport tuning: 13-inch laptops through 5K desktop displays. */
@media(min-width:941px) and (max-width:1366px){
  .site-header{padding-inline:1.5rem;gap:.75rem}
  .brand-lockup-header{height:2.75rem;max-width:10.5rem}
  .site-header .flag{width:1.375rem}
  .nav{gap:.7rem}.nav a{font-size:.6875rem}
  .header-actions .button{padding:.75rem .875rem}
  .hero-content{width:91vw}
  .section{padding-inline:3.25vw}
  .promise-strip{gap:.65rem;padding-inline:3.25vw}
  .promise-strip article{padding-inline:.75rem}
  .footer-grid{gap:2.5rem}
}

@media(min-width:1101px) and (max-width:1449px){
  .products{grid-template-columns:minmax(15rem,18rem) minmax(0,58rem);justify-content:center;gap:2.25rem}
  .product-grid{width:100%;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;padding-right:clamp(1.5rem,2.5vw,4rem)}
  .product-card .product-img{width:auto;height:clamp(13rem,15vw,16rem);max-width:100%}
}

@media(min-width:1450px) and (max-width:2199px){
  .products{grid-template-columns:minmax(17rem,20rem) minmax(0,60rem);justify-content:center;gap:3rem}
  .product-grid{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;max-width:none;gap:1rem;padding-right:clamp(1.5rem,2.5vw,4rem)}
  .product-card{padding:1.25rem .75rem 1.125rem}
  .product-card .product-img{width:auto;height:clamp(13rem,15vw,16rem);max-width:100%}
}

@media(min-width:1367px) and (max-width:2199px){
  .hero{height:clamp(29rem,31vw,36rem)}
  .hero-content{width:min(90vw,92rem);max-width:none}
}

@media(min-width:2200px){
  html{font-size:clamp(18px,.625vw,28px)}
  .site-header{padding-inline:max(5vw,calc((100vw - 120rem)/2))}
  .hero{height:clamp(34rem,33vw,46rem);min-height:34rem}
  .hero-content{width:min(120rem,88vw);max-width:none}
  .seal{right:max(6vw,calc((100vw - 120rem)/2))}
  .promise-strip,.section,.final-cta,footer{padding-left:max(5vw,calc((100vw - 120rem)/2));padding-right:max(5vw,calc((100vw - 120rem)/2))}
  .story-copy{padding-right:max(7vw,calc((100vw - 120rem)/2))}
  .products{grid-template-columns:22rem minmax(0,66rem);justify-content:center;gap:5rem}
  .product-grid{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;max-width:none;gap:1.25rem;padding-right:clamp(1.5rem,2.5vw,4rem)}
  .product-card .product-img{width:auto;height:clamp(13rem,15vw,16rem);max-width:100%}
  .process-grid{gap:1.25rem}
  .blog-grid{gap:1.75rem}
  .footer-grid{gap:5rem}
}

/* Story: preserve the full 2170x725 artwork instead of cropping it with cover. */
@media(min-width:821px){
  .story{min-height:0;aspect-ratio:2170/725;background-size:100% 100%;background-position:center}
  .story-copy{display:flex;flex-direction:column;justify-content:center;padding-top:3rem;padding-bottom:3rem}
  .story-copy .button{align-self:flex-start}
}

/* Culture cards: keep a readable editorial width on laptops and ultra-wide screens. */
@media(min-width:1101px){
  .gift{grid-template-columns:17.5rem minmax(0,78rem);justify-content:center;gap:2.75rem;padding-top:3rem;padding-bottom:3rem}
  .gift-grid{width:100%;gap:1.125rem}
  .gift-img{height:clamp(7.5rem,8vw,9.5rem)}
  .gift-grid article>b{top:calc(clamp(7.5rem,8vw,9.5rem) - 1.125rem)}
}

/* Process: full-bleed botanical canvas with a centered, bounded content area. */
@media(min-width:1101px){
  .origin-flow>.process{padding-top:3.75rem;padding-bottom:4rem;gap:2.25rem}
  .process-intro,.process-grid{width:min(100%,94rem);margin-inline:auto}
  .origin-flow .process-intro{grid-template-columns:minmax(18rem,25rem) minmax(0,1fr);gap:clamp(2.5rem,5vw,5rem);align-items:center;padding-top:1rem;padding-bottom:2rem}
  .process-copy>p{max-width:42rem}
  .process-grid{gap:1.25rem}
  .step-image{height:clamp(9.5rem,9.5vw,12rem);background-size:cover;background-position:center;border-radius:.75rem}
  .step:not(:last-child):after{top:clamp(4.25rem,4vw,5rem);right:-1.0625rem}
  .step h3{font-size:1rem;margin-top:1.75rem}
  .step p{font-size:.8125rem;line-height:1.5}
}

/* Keep the process transition artwork behind the complete product grid. */
.origin-flow>.products{z-index:2}
.origin-flow>.process{z-index:1}
.origin-flow .product-grid,.origin-flow .product-card{position:relative;z-index:2}

/* Wide desktop: scale the complete layout like 125% browser zoom. */
/* Mobile process: a quiet ivory canvas and distinct photographic cards. */
@media(max-width:820px){
  .origin-flow>.process{background:linear-gradient(180deg,rgba(255,248,237,.92),#fff8ed 12%,#fff8ed 92%,rgba(255,248,237,.97));padding-bottom:3rem;gap:1.75rem}
  .origin-flow>.process:after{opacity:.08;top:0;right:-7rem}
  .origin-flow .process-intro{padding-top:1.25rem;border-top:0;border-bottom:1px solid #e8d1b8;padding-bottom:1.75rem;gap:1rem}
  .process-copy>p{color:#38564e;font-size:1rem;line-height:1.7}
  .process-facts{flex-wrap:wrap;gap:.75rem 1.5rem;color:#38564e}
  .process-facts li{gap:.5rem}
  .process-grid{gap:1.25rem;align-items:stretch}
  .process .step{padding:.75rem .75rem 1.25rem;background:#fff;border:1px solid #ead6bd;border-radius:1rem;box-shadow:0 .5rem 1.25rem rgba(64,43,22,.07);overflow:hidden;position:relative}
  .process .step-image{height:clamp(11rem,48vw,14.5rem);border-radius:.75rem;background-size:cover;background-position:center}
  .process .step-image b{bottom:-1.125rem;left:.875rem;box-shadow:0 .25rem .625rem rgba(0,0,0,.15)}
  .process .step h3{margin:1.4rem .5rem .35rem;font-size:1.125rem;color:#082e2a}
  .process .step p{margin:0 .5rem .5rem;font-size:1rem;line-height:1.55;color:#475f57}
  .process .step:not(:last-child):after{display:none}
}
@media(min-width:2200px){
  html{font-size:clamp(16px,calc(100vw / 93.75),28px)}
  body{zoom:1.25}
  .hero{height:29rem;min-height:29rem;background-position:center 52%}
  .hero-content{width:88%;max-width:92rem}
  .hero h1{font-size:3.1875rem;max-width:36rem}
  .hero .lead{max-width:35rem}
  .seal{width:7.25rem;height:7.25rem}
  .promise-strip{padding:.75rem 6%;gap:.875rem}
  .promise-strip article{min-height:4.75rem;padding:.75rem 1rem}
  .promise-icon,.promise-strip i{width:2.75rem;height:2.75rem;flex-basis:2.75rem}
  .promise-strip b{font-size:.8125rem}
  .promise-strip article>div>span{font-size:.6875rem}
  .site-header{padding-inline:6%}
  .section,.final-cta,footer{padding-left:6%;padding-right:6%}
  .seal{right:6%}
  .story-copy{padding-right:7%}
  .products{grid-template-columns:minmax(14rem,20rem) minmax(0,60rem);gap:3rem}
  .product-grid{padding-right:0}
}


/* =========================================================
   PROCESO & CULTURA: PROPORTIONAL RESPONSIVE CARDS
   ========================================================= */
.step-image {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  transition: transform .35s ease;
}
.step:hover .step-image {
  transform: scale(1.03);
}
.p1 { background-image: url('assets/images/proceso-cultivo.webp'); }
.p2 { background-image: url('assets/images/proceso-cosecha.webp'); }
.p3 { background-image: url('assets/images/proceso-fermentacion.webp'); }
.p4 { background-image: url('assets/images/proceso-secado.webp'); background-position: center 60%; }

.gift-img {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  transition: transform .35s ease;
}
.gift-grid article:hover .gift-img {
  transform: scale(1.03);
}
.gi1 { background-image: url('assets/images/cultura-beneficios.webp'); }
.gi2 { background-image: url('assets/images/cultura-recetas.webp'); }
.gi3 { background-image: url('assets/images/cultura-dominicano.webp'); }
.gi4 { background-image: url('assets/images/cultura-sostenibilidad.webp'); background-position: center 60%; }

@media (min-width: 1101px) {
  .step-image {
    height: clamp(9.5rem, 9.5vw, 12rem);
  }
  .gift {
    grid-template-columns: 17.5rem minmax(0, 78rem);
    justify-content: center;
    gap: 2.75rem;
  }
  .gift-grid {
    grid-template-columns: repeat(4, 1fr);
    gap: 1.125rem;
  }
  .gift-img {
    height: clamp(7.5rem, 8vw, 9.5rem);
  }
  .gift-grid article > b {
    top: calc(clamp(7.5rem, 8vw, 9.5rem) - 1.125rem);
  }
}

@media (max-width: 820px) {
  .process-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.25rem;
  }
  .process .step {
    padding: 0.75rem 0.75rem 1.25rem;
    background: #fff;
    border: 1px solid #ead6bd;
    border-radius: 1rem;
    box-shadow: 0 0.5rem 1.25rem rgba(64, 43, 22, 0.07);
    overflow: hidden;
  }
  .process .step-image {
    height: clamp(10rem, 26vw, 12.5rem);
  }
  .process .step-image b {
    bottom: -1.125rem;
    left: 0.75rem;
  }
  .process .step h3 {
    margin: 1.35rem 0.375rem 0.35rem;
    font-size: 1.125rem;
    color: #082e2a;
  }
  .process .step p {
    margin: 0 0.375rem;
    font-size: 0.9375rem;
    line-height: 1.5;
    color: #475f57;
  }
  .gift-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.25rem;
  }
  .gift-img {
    height: clamp(9rem, 24vw, 11.5rem);
  }
  .gift-grid article > b {
    top: calc(clamp(9rem, 24vw, 11.5rem) - 1.125rem);
  }
}

@media (max-width: 560px) {
  .process-grid {
    grid-template-columns: 1fr;
    gap: 1.25rem;
  }
  .process .step {
    padding: 0.75rem 0.75rem 1.25rem;
    background: #fff;
    border: 1px solid #ead6bd;
    border-radius: 1rem;
    box-shadow: 0 0.5rem 1.25rem rgba(64, 43, 22, 0.07);
    overflow: hidden;
  }
  .process .step-image {
    height: clamp(11.5rem, 48vw, 14.5rem);
    border-radius: 0.75rem;
  }
  .process .step-image b {
    bottom: -1.125rem;
    left: 0.875rem;
    width: 2.5rem;
    height: 2.5rem;
  }
  .process .step h3 {
    margin: 1.45rem 0.5rem 0.35rem;
    font-size: 1.125rem;
    color: #082e2a;
  }
  .process .step p {
    margin: 0 0.5rem 0.25rem;
    font-size: 0.9375rem;
    line-height: 1.55;
    color: #475f57;
  }
  .gift-grid {
    grid-template-columns: 1fr;
    gap: 1.25rem;
  }
  .gift-grid article {
    border-radius: 1rem;
    border: 1px solid #ead6bd;
    box-shadow: 0 0.5rem 1.25rem rgba(64, 43, 22, 0.07);
    overflow: hidden;
  }
  .gift-img {
    height: clamp(11.5rem, 48vw, 14.5rem);
    border-radius: 0.75rem 0.75rem 0 0;
  }
  .gift-grid article > b {
    top: calc(clamp(11.5rem, 48vw, 14.5rem) - 1.1875rem);
    left: 0.875rem;
    width: 2.375rem;
    height: 2.375rem;
    font-size: 1.0625rem;
  }
  .gift-grid h3 {
    font-size: 1.125rem;
    margin: 1.5rem 0.875rem 0.375rem;
  }
  .gift-grid p {
    font-size: 0.875rem;
    line-height: 1.55;
    margin: 0 0.875rem 1.25rem;
  }
}

/* Floating WhatsApp Widget */
.whatsapp-float {
  position: fixed;
  bottom: 1.5rem;
  right: 1.5rem;
  z-index: 99;
  display: inline-flex;
  align-items: center;
  gap: 0.625rem;
  padding: 0.375rem 1.125rem 0.375rem 0.375rem;
  border-radius: 9999px;
  background: #25d366;
  color: #fff !important;
  text-decoration: none;
  box-shadow: 0 0.5rem 1.5rem rgba(37, 211, 102, 0.4), 0 0.25rem 0.5rem rgba(0, 0, 0, 0.15);
  transition: transform 0.25s ease, box-shadow 0.25s ease, background-color 0.25s ease;
  isolation: isolate;
  user-select: none;
}
.whatsapp-float:hover {
  background: #20ba5a;
  transform: translateY(-0.1875rem) scale(1.02);
  box-shadow: 0 0.75rem 2rem rgba(37, 211, 102, 0.5), 0 0.375rem 0.75rem rgba(0, 0, 0, 0.2);
}
.whatsapp-float:focus-visible {
  outline: 3px solid #06443d;
  outline-offset: 3px;
}
.whatsapp-icon-wrap {
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 50%;
  background: #fff;
  color: #25d366;
  display: grid;
  place-items: center;
  flex-shrink: 0;
  box-shadow: 0 0.125rem 0.375rem rgba(0, 0, 0, 0.12);
  position: relative;
}
.whatsapp-icon-wrap svg {
  width: 1.625rem;
  height: 1.625rem;
  fill: #25d366;
}
.whatsapp-label {
  display: flex;
  flex-direction: column;
  line-height: 1.15;
  color: #fff;
}
.whatsapp-label-sub {
  font-size: 0.625rem;
  font-weight: 600;
  opacity: 0.92;
  letter-spacing: 0.02em;
}
.whatsapp-label-title {
  font-size: 0.875rem;
  font-weight: 800;
  letter-spacing: 0.01em;
}

/* Subtle gentle pulse ring to invite action */
.whatsapp-icon-wrap:before {
  content: '';
  position: absolute;
  inset: -0.25rem;
  border-radius: 50%;
  border: 2px solid rgba(255, 255, 255, 0.6);
  animation: wa-pulse 2.5s infinite ease-out;
  pointer-events: none;
}
@keyframes wa-pulse {
  0% { transform: scale(0.95); opacity: 0.8; }
  70% { transform: scale(1.35); opacity: 0; }
  100% { transform: scale(1.35); opacity: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .whatsapp-icon-wrap:before { animation: none; display: none; }
}

@media (max-width: 600px) {
  .whatsapp-float {
    bottom: 1.125rem;
    right: 1.125rem;
    padding: 0;
    width: 3.25rem;
    height: 3.25rem;
    border-radius: 50%;
    justify-content: center;
  }
  .whatsapp-icon-wrap {
    width: 100%;
    height: 100%;
    background: transparent;
    box-shadow: none;
  }
  .whatsapp-icon-wrap svg {
    width: 2rem;
    height: 2rem;
    fill: #fff;
  }
  .whatsapp-icon-wrap:before {
    border-color: rgba(37, 211, 102, 0.6);
  }
  .whatsapp-label {
    display: none;
  }
}

/* Selector de idioma ES / EN */
.header-actions .lang-switch{display:inline-flex;border:1px solid rgba(13,55,49,.25);border-radius:999px;overflow:hidden;flex:none}
.lang-switch button{font:inherit;font-size:.75rem;font-weight:700;letter-spacing:.04em;padding:.4rem .7rem;border:0;background:transparent;color:#0d3731;cursor:pointer;line-height:1}
.lang-switch button[aria-pressed="true"]{background:#06443d;color:#fff}
.lang-switch button:focus-visible{outline:2px solid #c8923a;outline-offset:-2px}
@media(max-width:940px){.header-actions .lang-switch{margin-right:.5rem}}
