:root{--pine:#123d32;--pine-deep:#0b2f27;--sage:#e8f0e7;--cream:#f8f6f0;--paper:#fffefa;--ink:#1d3029;--muted:#617168;--line:#e2e7de;--gold:#ddc381;--shadow:0 20px 50px rgba(18,61,50,.11)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:88px}
body{margin:0;color:var(--ink);background:var(--paper);font-family:"DM Sans",system-ui,sans-serif;line-height:1.55}
body.dialog-open{overflow:hidden}
button,input,select{font:inherit}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
svg{display:block;width:100%;height:100%}
img{display:block;max-width:100%}
[hidden]{display:none!important}
:focus-visible{outline:3px solid #cf9f3e;outline-offset:3px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;top:-60px;left:18px;z-index:100;padding:10px 16px;background:var(--pine);color:#fff;border-radius:8px}.skip-link:focus{top:12px}
.container{width:min(1180px,calc(100% - 48px));margin-inline:auto}
.announcement{background:var(--pine-deep);color:#eaf1e9;text-align:center;padding:7px 14px;font-size:.69rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.announcement span{color:var(--gold);padding:0 18px}
.site-header{position:sticky;top:0;z-index:30;background:rgba(255,254,250,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}
.header-inner{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{display:inline-flex;align-items:center;gap:10px;flex-shrink:0}.brand-mark{width:42px;height:42px;display:grid;place-items:center;background:var(--pine);border-radius:12px;color:var(--gold);padding:8px}.brand-mark svg{fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.brand-copy{display:flex;flex-direction:column;line-height:1.1}.brand-copy strong{font-size:1.02rem;letter-spacing:.07em}.brand-copy small{color:var(--muted);font-size:.67rem;letter-spacing:.11em;margin-top:4px}
.main-nav{display:flex;align-items:center;gap:28px;font-size:.84rem;font-weight:700}.main-nav a{transition:color .2s}.main-nav a:hover{color:#338461}
.cart-trigger{border:1px solid #cadbcf;background:#eef5ee;color:var(--pine);border-radius:999px;display:flex;align-items:center;gap:9px;padding:9px 11px 9px 14px;font-weight:700;font-size:.8rem;white-space:nowrap}.cart-trigger:hover{background:#e1efe3}.cart-trigger svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.cart-count{background:var(--pine);color:#fff;border-radius:999px;min-width:22px;height:22px;padding:0 5px;display:grid;place-items:center;font-size:.68rem}
.hero{background:linear-gradient(112deg,#f6f5ed 0%,#edf3e8 53%,#e1ecdc 100%);overflow:hidden}
.hero-inner{min-height:535px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:40px}
.hero-copy{padding:64px 0}.eyebrow,.section-kicker{display:inline-flex;align-items:center;gap:8px;font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#4e7e60}.eyebrow-dot{width:7px;height:7px;border-radius:50%;background:#72a975}
h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.15}h1,h2,.hero-art-card strong{font-family:Fraunces,Georgia,serif;font-weight:500}
h1{font-size:clamp(3.5rem,5vw,5.3rem);letter-spacing:-.055em;margin:20px 0 22px;max-width:600px}h1 em{font-style:normal;color:#668c65}
.hero-copy>p{font-size:1rem;line-height:1.8;color:#56685d;max-width:520px;margin-bottom:27px}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;border-radius:8px;padding:12px 20px;font-size:.88rem;font-weight:700;border:1px solid transparent;min-height:47px;transition:transform .2s,background .2s,box-shadow .2s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--pine);color:#fff;box-shadow:0 8px 18px rgba(18,61,50,.16)}.button-primary:hover{background:#1a5845}.button-primary:disabled{background:#aebbb1;box-shadow:none;cursor:not-allowed;transform:none}.button-outline{border-color:var(--pine);color:var(--pine);background:transparent}.button-light{background:#f5f6ed;color:var(--pine)}.text-link{font-size:.87rem;font-weight:700;border-bottom:1px solid #7b967a;padding-bottom:4px}.text-link:hover{color:#3a785c}
.hero-note{font-size:.74rem;color:#6a7f70;margin-top:47px}.hero-note span{color:#bd9d54;margin-right:7px}
.hero-art{height:500px;position:relative;display:grid;place-items:center}.hero-orbit{position:absolute;border:1px solid rgba(35,91,65,.17);border-radius:50%;width:420px;height:420px}.orbit-two{width:300px;height:300px}.hero-leaf{position:absolute;width:110px;height:210px;background:linear-gradient(135deg,#6d9d69,#316c56);border-radius:100% 0 100% 0;transform-origin:bottom center;filter:drop-shadow(0 14px 20px rgba(34,77,56,.16))}.leaf-one{top:9px;right:49px;transform:rotate(36deg)}.leaf-two{bottom:7px;left:26px;transform:rotate(-33deg);background:linear-gradient(135deg,#9dba80,#4d825f)}.leaf-three{bottom:60px;right:6px;width:85px;height:160px;transform:rotate(65deg);background:linear-gradient(135deg,#b5c592,#719963)}
.hero-art-card{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;width:285px;height:365px;padding:34px;border-radius:14px;background:#123d32;color:#f2efe1;box-shadow:0 30px 65px rgba(9,53,38,.25);transform:rotate(-5deg)}.hero-art-star{position:absolute;top:23px;right:28px;font-size:2.5rem;color:var(--gold)}.hero-art-small{font-size:.61rem;letter-spacing:.28em;color:#d5e7d5;margin-bottom:62px}.hero-art-card strong{font-size:2.5rem;line-height:1.1;letter-spacing:-.045em}.hero-art-rule{width:62px;height:1px;background:var(--gold);margin:24px 0}.hero-art-card small{font-size:.74rem;letter-spacing:.08em;color:#d5e7d5}.hero-seal{position:absolute;z-index:2;right:17px;bottom:74px;width:112px;height:112px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:#e5c983;color:var(--pine);font-size:.69rem;line-height:1.3;box-shadow:0 9px 26px rgba(31,75,45,.16);transform:rotate(12deg)}.hero-seal strong{font-size:.84rem}
.benefits{background:#fff;border-bottom:1px solid var(--line)}.benefits-inner{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;padding:25px 0}.benefits-inner>div{display:flex;align-items:center;gap:14px;padding:5px 20px}.benefits-inner>div+div{border-left:1px solid var(--line)}.benefit-icon{display:grid;place-items:center;flex:none;width:37px;height:37px;border-radius:50%;background:#edf3e9;color:#4d845f;font-size:1.25rem}.benefits p{margin:0;line-height:1.3}.benefits strong,.benefits small{display:block}.benefits strong{font-size:.83rem}.benefits small{font-size:.71rem;color:var(--muted);margin-top:4px}
.catalog-section{padding-top:88px;padding-bottom:90px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:32px}.section-heading h2,.faq-intro h2,.contact-inner h2{font-size:clamp(2.25rem,3.5vw,3.4rem);letter-spacing:-.045em;margin:10px 0 8px}.section-heading p,.faq-intro p{color:var(--muted);margin:0;font-size:.93rem}.catalog-total{font-size:.78rem;color:var(--muted);white-space:nowrap}
.catalog-tools{display:flex;gap:12px;justify-content:space-between;margin-bottom:18px}.search-wrap{position:relative;flex:1;max-width:470px}.search-wrap svg{position:absolute;left:16px;top:50%;transform:translateY(-50%);width:18px;height:18px;fill:none;stroke:#819186;stroke-width:1.8;stroke-linecap:round}.search-wrap input,.sort-wrap select,.checkout-fields input{width:100%;border:1px solid #d7e1d8;border-radius:8px;background:#fff;color:var(--ink);outline:none}.search-wrap input{height:47px;padding:0 16px 0 46px;font-size:.88rem}.search-wrap input:focus,.sort-wrap select:focus,.checkout-fields input:focus{border-color:#5c9571;box-shadow:0 0 0 3px #dcebdd}.sort-wrap{display:flex;align-items:center;gap:11px;color:var(--muted);font-size:.78rem}.sort-wrap select{height:47px;min-width:160px;padding:0 13px;font-size:.84rem}
.filters{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 24px}.filter-button{border:1px solid #dbe5db;background:#fff;color:#586e5f;border-radius:999px;padding:8px 15px;font-size:.76rem;font-weight:700;transition:background .2s,color .2s}.filter-button:hover{background:#eef4eb}.filter-button[aria-pressed=true]{background:var(--pine);border-color:var(--pine);color:#fff}
.results-line{font-size:.76rem;color:var(--muted);margin-bottom:15px}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:21px}
.product-card{border:1px solid var(--line);background:#fff;border-radius:12px;overflow:hidden;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}.product-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.product-visual{height:240px;position:relative;display:grid;place-items:center;overflow:hidden;background:linear-gradient(145deg,#ecf3e8,#f5f4e7)}.product-visual::before,.product-visual::after{content:"";position:absolute;border:1px solid rgba(54,108,72,.15);border-radius:50%;width:260px;height:260px;top:-105px;right:-92px}.product-visual::after{width:200px;height:200px;top:auto;right:auto;bottom:-105px;left:-40px}.product-visual[data-tone=rose]{background:linear-gradient(145deg,#f5ebe8,#f9f2e9)}.product-visual[data-tone=violet]{background:linear-gradient(145deg,#efedf5,#f7f4ec)}.product-visual[data-tone=amber]{background:linear-gradient(145deg,#f6f0df,#f8f6ed)}.product-visual[data-tone=blue]{background:linear-gradient(145deg,#e9f1ef,#f4f6ed)}
.product-visual img{width:100%;height:100%;object-fit:contain;padding:15px;position:relative;z-index:1}.product-visual:has(img){background:#fff}.product-visual:has(img)::before,.product-visual:has(img)::after{display:none}.product-art-symbol{font-family:Fraunces,Georgia,serif;font-size:6.7rem;line-height:1;color:#6d9274;opacity:.58;position:relative;z-index:1}.product-visual[data-tone=rose] .product-art-symbol{color:#bb8a77}.product-visual[data-tone=violet] .product-art-symbol{color:#8f83a7}.product-visual[data-tone=amber] .product-art-symbol{color:#baa66c}.product-visual[data-tone=blue] .product-art-symbol{color:#749e9e}.illustrative-tag{position:absolute;z-index:2;right:10px;bottom:10px;color:#65776a;background:rgba(255,255,255,.77);border-radius:999px;padding:3px 8px;font-size:.58rem}.product-card-body{padding:17px 17px 18px;display:flex;flex-direction:column;flex:1}.category-label{color:#5e916b;font-size:.62rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase}.product-title{font-size:.98rem;line-height:1.34;margin:8px 0 8px;min-height:2.7em}.product-presentation{font-size:.75rem;color:var(--muted);line-height:1.45;margin:0 0 17px;min-height:2.9em}.product-bottom{display:flex;align-items:end;justify-content:space-between;gap:8px;margin-top:auto;padding-top:13px;border-top:1px solid #edf0e9}.product-price small{display:block;color:#7d8e83;font-size:.61rem}.product-price strong{font-size:1.05rem;color:var(--pine)}.card-actions{display:flex;gap:6px}.icon-button{width:36px;height:36px;display:grid;place-items:center;border:1px solid #dce8dc;border-radius:8px;background:#f7faf5;color:var(--pine);font-size:1.2rem}.icon-button:hover{background:#e6f0e5}.add-button{background:var(--pine);color:#fff;border-color:var(--pine)}.add-button:hover{background:#245b47}
.card-facts{border-top:1px solid #edf0e9;padding:10px 0 6px;margin-top:auto}.card-facts summary{cursor:pointer;color:var(--pine);font-size:.77rem;font-weight:700}.card-facts p{font-size:.72rem;color:var(--muted);line-height:1.5;margin:9px 0}.card-facts button{border:0;background:none;color:var(--pine);font-size:.7rem;font-weight:700;padding:0;cursor:pointer}.product-price strong{font-size:.91rem;line-height:1.25;display:block}
.price-callout{display:block;align-self:flex-start;margin:9px 0 2px;padding:5px 9px;border-radius:999px;background:#fff3d8;color:#735314;font-size:.66rem;font-weight:700;line-height:1.25}.detail-content .detail-promo{display:inline-block;margin:0;padding:7px 10px;border-radius:8px;background:#fff3d8;color:#735314;font-size:.73rem;font-weight:700}
button.product-visual{border:0;padding:0;width:100%;font:inherit;flex-shrink:0}button.product-visual:focus-visible{outline-offset:-4px}
.contact-actions{display:flex;gap:10px;flex-wrap:wrap}.copy-request{width:100%;padding:10px;border:0;background:transparent;color:var(--pine);text-decoration:underline;font:inherit;font-size:.75rem}.copy-request:disabled{opacity:.5;cursor:not-allowed}.request-preview{margin-top:12px;font-size:.74rem}.request-preview textarea{display:block;width:100%;margin-top:5px;padding:8px;resize:vertical;border:1px solid var(--line);border-radius:6px;font:inherit}.cart-footer:has(.request-preview:not([hidden])){max-height:65dvh;overflow-y:auto}
.empty-state{text-align:center;padding:70px 20px;background:#f7faf5;border-radius:12px}.empty-state>span{font-size:3rem;color:#70947a}.empty-state h3{margin:5px 0}.empty-state p{color:var(--muted)}.catalog-disclaimer{font-size:.72rem;color:#78877c;line-height:1.7;margin:26px 0 0}
.how-section{background:#f1f5ec;padding:90px 0}.section-heading.centered{display:block;text-align:center}.section-heading.centered p{max-width:580px;margin:auto}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:40px}.steps article{background:#fff;border:1px solid #e0e9de;border-radius:12px;padding:27px 28px 31px}.steps article>span{font-family:Fraunces,Georgia,serif;color:#92ae90;font-size:2rem}.steps h3{font-size:1.15rem;margin:24px 0 8px}.steps p{color:var(--muted);font-size:.83rem;margin:0}
.faq-section{padding-top:96px;padding-bottom:99px;display:grid;grid-template-columns:.75fr 1.25fr;gap:70px}.faq-intro h2{max-width:340px}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{display:flex;justify-content:space-between;gap:20px;align-items:center;cursor:pointer;list-style:none;padding:22px 0;font-size:.94rem;font-weight:700}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{color:#71a17c;font-size:1.4rem;font-weight:400}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{color:var(--muted);font-size:.84rem;line-height:1.7;padding-right:40px;margin:-5px 0 22px}
.contact-section{background:var(--pine);color:#fff;padding:65px 0}.contact-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.contact-inner .section-kicker{color:#c5debd}.contact-inner h2{margin:11px 0}.contact-inner p{color:#c9dbd0;max-width:580px;margin:0;font-size:.91rem}.contact-inner .button{flex:none}
.footer{background:#102b24;color:#c2d1c7}.footer-main{display:grid;grid-template-columns:1.4fr .7fr 1fr;gap:75px;padding-top:60px;padding-bottom:55px}.footer-brand{font-weight:700;letter-spacing:.09em;color:#fff}.footer p{font-size:.76rem;line-height:1.75;margin:14px 0 0;max-width:350px}.footer nav,.footer-main>div:last-child{display:flex;flex-direction:column;align-items:flex-start;gap:9px}.footer strong{font-size:.79rem;color:#fff}.footer nav a{font-size:.76rem}.footer nav a:hover{text-decoration:underline}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #315047;padding:21px 0 25px;font-size:.7rem;color:#97aea0}
dialog{border:0;padding:0;box-shadow:0 30px 90px rgba(5,28,21,.28)}dialog::backdrop{background:rgba(7,30,22,.62)}.dialog-close{width:36px;height:36px;border:0;border-radius:50%;background:#eef3ee;color:var(--pine);font-size:1.5rem;display:grid;place-items:center}.dialog-close:hover{background:#dce9dc}.product-dialog{width:min(720px,calc(100% - 30px));max-height:calc(100vh - 32px);border-radius:16px;overflow:auto}.product-dialog>.dialog-close{position:absolute;right:17px;top:17px;z-index:3}.detail-layout{display:grid;grid-template-columns:43% 57%}.detail-layout .product-visual{height:100%;min-height:390px}.detail-content{padding:50px 35px 34px}.detail-content h2{font-size:2rem;letter-spacing:-.045em;margin:12px 0}.detail-content .detail-price{display:block;color:var(--pine);font-size:1.45rem;margin:20px 0 15px}.detail-content p{font-size:.87rem;color:var(--muted);line-height:1.7}.detail-info{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 0;margin:25px 0}.detail-info strong{display:block;font-size:.71rem;text-transform:uppercase;letter-spacing:.1em;color:#6d8975}.detail-info span{font-size:.88rem}.detail-content .button{width:100%}.detail-fine{font-size:.7rem!important;margin:12px 0 0}
.detail-facts{margin:17px 0 24px}.detail-facts details{border-bottom:1px solid var(--line);padding:10px 0}.detail-facts summary{cursor:pointer;color:var(--pine);font-size:.84rem;font-weight:700}.detail-facts details p{margin:9px 0 3px;font-size:.78rem}.detail-facts .label-note{font-size:.71rem;line-height:1.5}.source-links{font-size:.69rem;line-height:1.7;color:var(--muted)}.source-links strong{display:block;color:var(--pine)}.source-links a{text-decoration:underline;text-underline-offset:2px}.product-dialog{width:min(850px,calc(100% - 30px))}.detail-layout{grid-template-columns:39% 61%}
.cart-dialog{height:100dvh;max-height:100dvh;width:min(440px,100%);max-width:100%;margin:0 0 0 auto;display:flex;flex-direction:column}.cart-dialog:not([open]){display:none}.cart-header{display:flex;justify-content:space-between;align-items:center;padding:21px 24px;border-bottom:1px solid var(--line)}.cart-header h2{font-size:1.55rem;letter-spacing:-.04em;margin:5px 0 0}.cart-header h2 span{font:700 .8rem "DM Sans",sans-serif;color:var(--muted)}.cart-body{flex:1;min-height:0;overflow:auto;padding:20px 24px}.cart-empty{text-align:center;padding:60px 10px}.cart-empty>span{font-size:3.5rem;color:#80a689}.cart-empty h3{font-size:1.12rem;margin:8px 0}.cart-empty p{font-size:.83rem;color:var(--muted)}.cart-empty .button{margin-top:12px}.cart-item{display:grid;grid-template-columns:58px 1fr auto;gap:13px;padding:13px 0;border-bottom:1px solid var(--line)}.cart-thumb{width:58px;height:65px;border-radius:8px;display:grid;place-items:center;background:#eef3e9;color:#79a07a;font:500 2rem Fraunces,serif;overflow:hidden}.cart-thumb img{width:100%;height:100%;object-fit:contain;padding:3px;background:#fff}.cart-item h3{font-size:.79rem;line-height:1.35;margin:0 0 5px}.cart-item small{color:var(--muted);font-size:.7rem}.qty-control{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:6px;margin-top:8px}.qty-control button{width:25px;height:25px;border:0;background:transparent;color:var(--pine);font-weight:700}.qty-control span{font-size:.74rem}.cart-item-price{text-align:right;font-size:.78rem;font-weight:700;white-space:nowrap}.remove-item{display:block;margin-left:auto;margin-top:10px;border:0;background:none;color:#9a6a61;font-size:.68rem;text-decoration:underline}.cart-footer{border-top:1px solid var(--line);padding:19px 24px 22px;background:#fbfcf8}.cart-subtotal{display:flex;justify-content:space-between;align-items:center;font-size:.84rem}.cart-subtotal strong{font-size:1.25rem;color:var(--pine)}.cart-footer>p{font-size:.69rem;color:var(--muted);margin:3px 0 14px}.checkout-fields{display:grid;grid-template-columns:1fr 1fr;gap:5px 9px}.checkout-fields label{font-size:.71rem;font-weight:700}.checkout-fields label span{font-weight:400;color:var(--muted)}.checkout-fields input{padding:9px 10px;font-size:.76rem;min-width:0}.checkout-button{width:100%;margin-top:14px}.checkout-note{display:block;color:var(--muted);line-height:1.45;font-size:.64rem;margin-top:9px}.toast{position:fixed;z-index:80;left:50%;bottom:25px;transform:translate(-50%,20px);background:var(--pine-deep);color:#fff;padding:11px 17px;border-radius:8px;font-size:.8rem;box-shadow:var(--shadow);opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;max-width:min(420px,calc(100% - 30px));text-align:center}.toast.visible{opacity:1;transform:translate(-50%,0)}
@media(max-width:1050px){.main-nav{gap:15px}.main-nav a{font-size:.76rem}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hero-inner{gap:15px}.hero-art{transform:scale(.9)}}@media(max-width:760px){.container{width:min(100% - 34px,620px)}.announcement{font-size:.57rem;letter-spacing:.07em}.announcement span{padding:0 7px}.header-inner{min-height:66px}.brand-mark{width:36px;height:36px}.brand-copy strong{font-size:.82rem}.brand-copy small{font-size:.55rem}.main-nav{display:none}.cart-trigger-text{display:none}.cart-trigger{padding:8px}.hero-inner{display:block;min-height:0}.hero-copy{padding:65px 0 35px}.hero-copy h1{font-size:clamp(3.2rem,11vw,4.5rem)}.hero-note{margin-top:30px}.hero-art{height:345px;transform:scale(.72);margin:-35px auto -25px}.benefits-inner{grid-template-columns:1fr;gap:0;padding:11px 0}.benefits-inner>div{padding:11px 0}.benefits-inner>div+div{border-left:0;border-top:1px solid var(--line)}.catalog-section{padding-top:65px;padding-bottom:66px}.section-heading{display:block}.catalog-total{display:block;margin-top:10px}.catalog-tools{flex-wrap:wrap}.search-wrap{max-width:none;flex-basis:100%}.sort-wrap{margin-left:auto}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.product-visual{height:190px}.product-card-body{padding:13px}.product-title{font-size:.86rem}.product-presentation{font-size:.69rem}.product-price strong{font-size:.91rem}.icon-button{width:31px;height:31px}.how-section{padding:65px 0}.steps{grid-template-columns:1fr;gap:10px;margin-top:25px}.steps article{padding:21px}.steps h3{margin:10px 0 6px}.faq-section{grid-template-columns:1fr;gap:25px;padding-top:69px;padding-bottom:70px}.contact-inner{display:block}.contact-inner .button{margin-top:22px}.footer-main{grid-template-columns:1fr 1fr;gap:35px;padding-top:48px}.footer-main>div:first-child{grid-column:1/-1}.footer-bottom{display:block}.footer-bottom span{display:block;margin-bottom:6px}.detail-layout{grid-template-columns:1fr}.detail-layout .product-visual{height:250px;min-height:0}.detail-content{padding:28px 24px}.detail-content h2{font-size:1.7rem}}@media(max-width:430px){.product-grid{gap:9px}.product-visual{height:150px}.product-art-symbol{font-size:4.8rem}.product-title{font-size:.78rem}.product-presentation{font-size:.65rem}.product-bottom{align-items:start;flex-direction:column}.card-actions{align-self:flex-end}.sort-wrap{width:100%;justify-content:space-between}.sort-wrap select{flex:1}.filters{flex-wrap:nowrap;overflow:auto;padding-bottom:8px;scrollbar-width:thin}.filter-button{white-space:nowrap}.cart-dialog{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
@media(max-width:760px){html{scroll-padding-top:118px}.header-inner{flex-wrap:wrap;gap:0}.main-nav{display:flex;order:3;flex-basis:100%;width:100%;gap:19px;overflow-x:auto;white-space:nowrap;border-top:1px solid var(--line);padding:9px 0;scrollbar-width:none}.main-nav::-webkit-scrollbar{display:none}.main-nav a{font-size:.72rem}}
.cart-item{grid-template-columns:58px minmax(0,1fr) minmax(0,105px)}.cart-item-price{white-space:normal;overflow-wrap:anywhere}.cart-item h3{overflow-wrap:anywhere}.cart-subtotal{flex-wrap:wrap;gap:6px}.cart-subtotal strong{font-size:1.05rem}.cart-dialog{overflow-y:auto}.cart-header,.cart-footer{flex-shrink:0}.cart-body{min-height:110px}
.manual-payment{margin:12px 0;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#fff}.manual-payment summary{cursor:pointer;color:var(--pine);font-size:.8rem;font-weight:700}.manual-payment p{font-size:.72rem;color:var(--muted);line-height:1.5;margin:8px 0 0}

/* Keep each photograph inside a frame with definite dimensions, including tall catalog pages. */
.product-visual{min-width:0;min-height:0;isolation:isolate}
.product-card>.product-visual{height:300px;flex:none}
.product-visual img{position:absolute;inset:0;display:block;width:100%;height:100%;min-width:0;min-height:0;max-width:100%;max-height:100%;object-fit:contain;object-position:center;padding:10px}
.detail-layout{align-items:start}
.detail-layout .product-visual{height:480px;min-height:0;align-self:start;margin-top:32px}
.detail-layout .product-visual img{padding:18px 14px 54px}
.image-expand{position:absolute;z-index:2;left:50%;bottom:12px;transform:translateX(-50%);display:inline-flex;align-items:center;justify-content:center;gap:7px;white-space:nowrap;border:1px solid #d7e1d8;border-radius:999px;padding:8px 14px;background:#fff;color:var(--pine);font-size:.75rem;font-weight:700;box-shadow:0 3px 12px rgba(18,61,50,.08)}
.image-expand:hover{background:var(--sage)}
.cart-thumb{position:relative;min-width:0;min-height:0}
.cart-thumb img{position:absolute;inset:0;width:100%;height:100%;min-width:0;min-height:0;max-height:100%;object-fit:contain;object-position:center;padding:3px}
@media(max-width:760px){.product-card>.product-visual{height:250px}.detail-layout .product-visual{height:360px;margin-top:24px}.detail-layout .product-visual img{padding:12px 18px 54px}}
@media(max-width:430px){.product-card>.product-visual{height:220px}.product-visual img{padding:7px}.detail-layout .product-visual{height:340px}}
@media(pointer:coarse){.icon-button{min-width:44px;min-height:44px}.filter-button{min-height:44px}.search-wrap input,.sort-wrap select,.checkout-fields input{font-size:16px}.qty-control button{width:44px;height:44px}.dialog-close{width:44px;height:44px}.main-nav a{padding-block:7px}}

/* Formulario de pedido y atención actualizados con las respuestas del cliente. */
.checkout-fields{grid-template-columns:1fr;margin-top:12px;gap:5px}
.checkout-fields label:not(:first-child){margin-top:5px}
.checkout-fields select{width:100%;min-width:0;padding:10px;border:1px solid #d7e1d8;border-radius:8px;background:#fff;color:var(--ink);font-size:.78rem}
.checkout-fields select:focus{outline:none;border-color:#5c9571;box-shadow:0 0 0 3px #dcebdd}
.cart-footer{max-height:65dvh;overflow-y:auto;flex-shrink:0}
@media(pointer:coarse){.checkout-fields select{font-size:16px;min-height:44px}}
/* Cada presentación muestra su envase completo y tiene un precio propio. */
.presentation-link { display: block; padding: 9px 0; border: 0; background: none; color: var(--green, #225a48); font: inherit; font-size: .82rem; text-align: left; cursor: pointer; }
.commercial-note { padding: 9px 12px; border-radius: 8px; background: #fff4dc; color: #61410a; font-size: .82rem; line-height: 1.5; }
.variant-list { margin-top: 28px; border-top: 1px solid #deded5; padding-top: 18px; }
.variant-list > p { font-size: .85rem; }
.variant-option { display: grid; grid-template-columns: 100px minmax(0, 1fr); gap: 16px; margin: 18px 0; padding: 14px; background: #f7f7f1; border: 1px solid #deded5; border-radius: 12px; }
.variant-option img { width: 100%; height: 160px; object-fit: contain; }
.variant-option strong, .variant-option span { display: block; }
.variant-option p { font-size: .8rem; line-height: 1.5; }
.variant-option .button { font-size: .78rem; min-height: 42px; padding: 10px; white-space: normal; }
.product-price { min-width: 0; }
.product-price strong { overflow-wrap: anywhere; }
@media (max-width: 480px) { .product-bottom { flex-wrap: wrap; gap: 10px; } .product-price { flex: 1 1 90px; } .card-actions { margin-left: auto; } }
@media (max-width: 480px) { .variant-option { grid-template-columns: 72px minmax(0, 1fr); gap: 10px; padding: 10px; } .variant-option img { height: 130px; } }

/* Documentos de compra */
.legal-content{max-width:850px;margin:3rem auto;padding:0 1.25rem;line-height:1.75}
.legal-content h1{font-size:clamp(2rem,5vw,3rem);line-height:1.15;margin:1rem 0}
.legal-content h2{font-size:1.3rem;margin:2rem 0 .6rem}.legal-content a{color:#165e45;text-decoration:underline}
.legal-content ul{padding-left:1.4rem}.legal-content .legal-back{display:inline-block;margin-bottom:1rem}
.checkout-privacy{font-size:.78rem;line-height:1.5}.checkout-privacy a{text-decoration:underline}
.legal-note{padding:1rem;border:1px solid #d3ddd4;border-radius:12px;background:#f4f7f2}
@media print{.legal-back,.legal-actions{display:none}.legal-content{max-width:none;margin:0;color:#000}body{background:#fff}a{color:#000}}


/* Colección preferencial FuXion */
.fuxion-hero{background:linear-gradient(120deg,#f8f6ee,#edf3e7 60%,#dce8d6)}
.fuxion-hero h1{font-size:clamp(3.3rem,4.6vw,4.8rem);line-height:1.05}
.fuxion-hero .hero-inner{gap:30px;min-height:540px}.fuxion-hero .hero-note{margin-top:30px}
.fuxion-showcase{position:relative;isolation:isolate;background:#fffefa;border-radius:150px 150px 22px 22px;padding:32px 12px 24px;border:1px solid #dce4d4;box-shadow:0 22px 55px #123d3212;text-align:center;margin:30px 0}
.showcase-label{display:flex;flex-direction:column;color:var(--pine);gap:3px}.showcase-label span{font-size:.65rem;letter-spacing:.23em}.showcase-label strong{font-size:3.5rem;letter-spacing:-.07em;line-height:1.15}.showcase-label small{font-family:Georgia,serif;color:var(--muted);font-size:1rem}
.showcase-products{display:flex;align-items:center;justify-content:center;min-height:220px;margin:10px 0}.showcase-products img{object-fit:contain;width:31%;height:185px;mix-blend-mode:multiply}.showcase-products .showcase-center{width:38%;height:220px;transform:translateY(-5px)}
.showcase-seal{display:inline-block;background:#f1e7c8;color:#574720;padding:8px 16px;border-radius:999px;font-size:.74rem;font-weight:700}
.preferred-section{padding-top:65px;padding-bottom:35px}.preferred-section .section-heading{align-items:center}.preferred-section h2{max-width:700px;font-size:clamp(2.15rem,3vw,3rem)}.preferred-section .section-heading p{max-width:690px}.preferred-section .button{flex-shrink:0}
.preferred-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.preferred-card{border:1px solid #d9dfcd;border-radius:14px;overflow:hidden;background:#fff;display:flex;flex-direction:column;box-shadow:0 8px 24px #123d3206}.preferred-photo{border:0;background:#fff;display:block;width:100%;padding:20px;height:190px}.preferred-photo img{width:100%;height:100%;object-fit:contain}.preferred-copy{padding:18px;background:#f6f6ed;flex:1;display:flex;flex-direction:column}.preferred-copy h3{font-size:1.05rem;margin:8px 0}.preferred-copy p{font-size:.75rem;color:var(--muted);margin-bottom:18px}.recommendation-label{display:block;font-size:.59rem;color:#6c591f;font-weight:750;letter-spacing:.055em;text-transform:uppercase;margin-bottom:5px}.preferred-bottom{display:flex;gap:8px;align-items:center;justify-content:space-between;margin-top:auto}.preferred-bottom strong{color:var(--pine);font-size:1rem}.preferred-bottom button{border:1px solid var(--pine);border-radius:6px;background:var(--pine);color:#fff;font-size:.75rem;padding:8px 10px;font-weight:700}.preferred-note{font-size:.75rem;color:var(--muted);margin:18px 0 0;max-width:780px}
.preferred-badge{position:absolute;z-index:2;left:10px;top:10px;background:#ede1b8;color:#4f421d;padding:5px 9px;border-radius:999px;font-size:.62rem;font-weight:750;line-height:1.3}.product-card:has(.preferred-badge){border-color:#d4c8a0}.product-card:has(.preferred-badge) .product-visual img{padding-top:30px}.kit-photos{height:100%;width:100%;display:grid;grid-template-columns:1fr 1fr;align-items:center;background:#fff;z-index:1}.kit-photos img{max-height:220px;padding:4px}.main-nav{gap:18px}
@media(max-width:1000px){.preferred-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.preferred-section .section-heading{align-items:flex-start;flex-direction:column}.fuxion-hero .hero-inner{gap:20px}.fuxion-showcase{padding-top:24px}.showcase-products{min-height:170px}.showcase-products img{height:140px}.showcase-products .showcase-center{height:170px}}
@media(max-width:700px){.fuxion-hero .hero-inner{grid-template-columns:1fr;gap:0}.fuxion-hero .hero-copy{padding:38px 0 10px}.fuxion-hero h1{font-size:3.4rem;max-width:520px}.fuxion-showcase{margin:18px 0 30px;border-radius:100px 100px 18px 18px}.showcase-label strong{font-size:2.6rem}.showcase-products{min-height:150px;margin:0}.showcase-products img{height:120px}.showcase-products .showcase-center{height:155px}.preferred-section{padding-top:42px}.preferred-grid{gap:12px}.preferred-photo{height:155px;padding:12px}.preferred-copy{padding:12px}.preferred-copy h3{font-size:.95rem}.preferred-bottom{flex-wrap:wrap}.preferred-bottom button{min-height:40px}.preferred-copy .recommendation-label{font-size:.55rem}.preferred-section .section-heading{gap:18px}.preferred-section h2{font-size:2.2rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.product-card,.button{transition:none}}
