/* Paleta unificada: marfil, salvia y bosque. Las secciones comparten sus bordes. */
:root{--green:#244733;--forest:#244733;--mid:#59714f;--cream:#f8f8f2;--muted:#626e60;--line:#d9e1d4;--page:#f8f8f2;--sage-soft:#e8eee2;--sage-border:#d2ddc9}
body{background:var(--page);color:#283d2d}
header{background:var(--page);box-shadow:0 3px 16px #213d2908}
.announcement{background:var(--forest);color:#f1f5e9}
.admin-shortcut{background:#eef2e8;border-color:var(--sage-border)}
.hero{margin-top:0;padding-top:34px;padding-bottom:46px;background:var(--page)}
.hero-copy .eyebrow{color:#5c7351}
.hero-copy .eyebrow>span{background:#7f9969}
h1 em{color:#627c51}
.hero-copy>p{color:var(--muted)}
.hero-footnote{padding-top:23px;border-top:1px solid #dbe3d4}
.hero-footnote small{color:var(--muted)}
.hero-visual{border:5px solid #fffef7;box-shadow:0 20px 42px #2f4b2820}
.round-badge{background:#f8faf0ee;color:#395331;box-shadow:0 7px 22px #24473320}
.button,.add-button{background:var(--forest);border-color:var(--forest);color:#fff}
.button:hover,.add-button:hover{background:#365c3c;border-color:#365c3c}
.button.outline{background:transparent;color:var(--forest);border-color:#b3c2a8}
.button.outline:hover{background:#e4eddc;color:#244733}
.benefits{margin:0 5%;padding:27px 30px;max-width:none;border:1px solid var(--sage-border);border-radius:16px;background:#eaf0e3;box-shadow:none;color:#344d31}
.benefits>div{border-color:#cbd8c2}
.benefits span{color:#778e65}
.benefits p{font-weight:600}
.benefits small{color:#65775a}
.catalog{max-width:none;position:relative;isolation:isolate;padding-top:72px;padding-bottom:84px;background:linear-gradient(180deg,var(--page) 0%,#edf2e7 20%,#e8eee2 55%,#edf2e7 80%,var(--page) 100%)}
.catalog .eyebrow{color:#60764f}
.catalog .section-top>p{color:#5b6e51}
.catalog .section-top>p span{color:#6b795f}
.filters button{background:#f9fbf4;border-color:#c7d5bc;color:#405b35;box-shadow:none}
.filters button.active{background:var(--forest);color:#fff;border-color:var(--forest)}
.search-sort input,.search-sort select{border-color:#c7d5bc;background:#fdfef8;box-shadow:none}
.product-card,.product-card:nth-child(2),.product-card:nth-child(3){background:#fffef8;border:1px solid #dce5d4;box-shadow:0 12px 28px #29482813}
.product-card:hover{box-shadow:0 19px 37px #29482822}
.product-photo{background:#e6eddd}
.product-meta h3,.price{color:#2d4c32}
.tag{background:#f7faefee;color:#435c37}
.pack-label{background:var(--forest)}
.add-button,.product-card:nth-child(2) .add-button,.product-card:nth-child(3) .add-button{background:var(--forest);border-color:var(--forest)}
.add-button:hover,.product-card:nth-child(2) .add-button:hover,.product-card:nth-child(3) .add-button:hover{background:#365c3c;border-color:#365c3c}
.catalog-note{color:#67775c;margin-top:27px;padding-top:20px;border-top:1px solid #d0dcc5}
.essence{margin:0 5%;max-width:none;border:1px solid #31563b;border-radius:24px;overflow:hidden;grid-template-columns:1.05fr 1fr;background:var(--forest);color:#f8faef;box-shadow:0 17px 36px #28472b16}
.essence-art{height:580px}
.essence-art img{filter:brightness(.94)}
.essence-art:after{background:linear-gradient(transparent,#1b362b80)}
.essence-copy{padding:46px 10%}
.essence-copy .eyebrow{color:#c2d4ac}
.essence-copy h2{font-size:clamp(33px,2.8vw,43px);font-weight:500;letter-spacing:-1.1px}
.essence-copy p{color:#d8e4ce;line-height:1.85}
.essence-copy .text-link{color:#f2f8e5;border-color:#8da67a}
.shopping-guide{display:grid;grid-template-columns:1fr 1.1fr;gap:60px;align-items:center;margin:0;padding:84px 6%;background:linear-gradient(180deg,var(--page) 0%,#eef3e8 30%,#eef3e8 70%,var(--page) 100%)}
.guide-intro .eyebrow{color:#6b805c}
.guide-intro h2{font-family:Georgia,serif;font-size:43px;font-weight:400;letter-spacing:-.9px;line-height:1.22;max-width:465px;margin-top:20px;color:#314c35}
.guide-intro p{font-size:16px;line-height:1.85;color:#66745d;max-width:440px;margin:22px 0}
.guide-intro .text-link{color:#416039;border-color:#a6bb95}
.guide-steps{background:#fbfcf7;border:1px solid #d6e2cb;border-radius:16px;padding:8px 29px;box-shadow:0 13px 28px #2d4e2710}
.guide-step{display:grid;grid-template-columns:44px 1fr;gap:19px;padding:24px 0;align-items:start}
.guide-step+.guide-step{border-top:1px solid #e0e8d8}
.guide-number{font:italic 29px Georgia;color:#7b9669;line-height:1.25}
.guide-step h3{font:600 18px Manrope,Arial,sans-serif;letter-spacing:-.4px;margin:0 0 7px;color:#345237}
.guide-step p{font-size:14px;line-height:1.75;margin:0;color:#66745d}
.faq{max-width:none;background:var(--page);padding-top:30px;padding-bottom:72px}
.questions details,.questions details:first-child{background:#fdfef9;border:1px solid #d8e2cf;box-shadow:0 4px 10px #28462905}
.questions details[open]{background:#edf3e7;border-color:#b4c9a3;box-shadow:none}
.questions p{color:#63775a}
.closing{margin:0 5%;max-width:none;border:1px solid #335b3d;border-radius:21px;padding:49px 5%;display:grid;grid-template-columns:1fr auto;align-items:center;text-align:left;gap:15px 30px;background:var(--forest);box-shadow:0 13px 30px #29482d13}
.closing>span{grid-column:1;font-size:12px;color:#c6d9b1}
.closing h2{grid-column:1;grid-row:2;font-size:43px;margin:0;color:#f8fbed}
.closing .button{grid-column:2;grid-row:1/3;align-self:center;white-space:nowrap;background:#eef5e4;color:#2e4e31;border-color:#eef5e4}
.closing .button:hover{background:#fffef3;border-color:#fffef3;color:#244733}
footer{padding-top:65px;background:linear-gradient(180deg,var(--page) 0%,#eaf0e2 100%);border:0}
.footer-top>p,.footer-bottom{color:#65765a}
.footer-bottom{border-color:#ccdabe}
.demo-bar{background:#f8faf2f2;border-color:#d3dfc7;box-shadow:0 -4px 17px #29452b08}
nav a{position:relative}
nav a:after{content:'';position:absolute;left:0;right:0;bottom:-5px;height:2px;background:#829e6b;transform:scaleX(0);transform-origin:left;transition:transform .25s}
nav a:hover:after,nav a:focus-visible:after{transform:scaleX(1)}
.button>span,.text-link>span,.add-button>span{transition:transform .25s}
.button:hover>span,.text-link:hover>span{transform:translate(3px,-2px)}
.add-button:hover>span{transform:rotate(90deg)}
.round-badge{transform:rotate(8deg)}
@media(prefers-reduced-motion:no-preference){
 .hero-copy>.eyebrow{animation:heroArrive .6s both}
 .hero-copy h1{animation:heroArrive .75s .08s both}
 .hero-copy>p{animation:heroArrive .75s .17s both}
 .hero-copy>.button{animation:heroArrive .75s .24s both}
 .hero-visual{animation:heroPicture .95s .1s both}
 .round-badge{animation:badgeFloat 6s 1.2s ease-in-out infinite}
 @keyframes heroArrive{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
 @keyframes heroPicture{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
 @keyframes badgeFloat{0%,100%{transform:translateY(0) rotate(8deg)}50%{transform:translateY(-4px) rotate(6deg)}}
}
@media(min-width:1600px){.benefits{max-width:1440px;margin-left:auto;margin-right:auto}.catalog,.faq{padding-left:calc((100vw - 1440px)/2);padding-right:calc((100vw - 1440px)/2)}.essence,.closing{max-width:1440px;margin-left:auto;margin-right:auto}.shopping-guide{padding-left:calc((100vw - 1400px)/2);padding-right:calc((100vw - 1400px)/2)}}
@media(max-width:1150px){.benefits{padding:25px 22px}.essence-art{height:600px}.essence-copy{padding:40px 8%}.shopping-guide{gap:32px;padding:70px 5%}.guide-intro h2{font-size:38px}.guide-steps{padding:7px 22px}.guide-step{grid-template-columns:36px 1fr;gap:12px}.closing h2{font-size:37px}.closing .button{font-size:14px;padding:14px 18px}}
@media(max-width:760px){.hero{padding-top:22px;padding-bottom:32px}.hero-footnote{padding-top:21px}.benefits{margin:0 5%;border-radius:14px;padding:24px 18px;gap:24px 14px}.catalog{padding-top:50px;padding-bottom:55px}.essence{margin:0 5%;border-radius:18px;grid-template-columns:1fr}.essence-art{height:340px}.essence-copy{padding:32px 7% 37px}.essence-copy h2{font-size:33px}.shopping-guide{grid-template-columns:1fr;gap:27px;padding:58px 6%}.guide-intro h2{font-size:36px}.guide-intro p{margin:20px 0 12px}.guide-steps{padding:5px 23px}.guide-step{grid-template-columns:35px 1fr;gap:16px;padding:22px 0}.guide-step h3{font-size:18px}.guide-step p{font-size:14px}.faq{padding-top:18px;padding-bottom:52px}.closing{margin:0 5%;padding:37px 7%;border-radius:18px;grid-template-columns:1fr;text-align:center;gap:16px}.closing>span,.closing h2,.closing .button{grid-column:1;grid-row:auto}.closing h2{font-size:37px;line-height:1.2}.closing .button{justify-self:center;margin-top:5px}footer{padding-top:48px}}
@media(max-width:430px){.benefits{padding:22px 15px}.guide-intro h2{font-size:33px}.guide-steps{padding:4px 17px}.guide-step{gap:12px;grid-template-columns:31px 1fr}.guide-number{font-size:27px}.closing h2{font-size:32px}.essence-copy h2{font-size:30px}}
@media(prefers-reduced-motion:reduce){.round-badge,.hero-copy>*,.hero-visual{animation:none!important}.button>span,.text-link>span,.add-button>span,nav a:after{transition:none}.button:hover>span,.text-link:hover>span,.add-button:hover>span{transform:none}}
