/* ========================================
   Malle Theme - Custom Styles
   ======================================== */
:root{--sage:#8B9D83;--sage-light:#A8B8A0;--sage-dark:#6B7D63;--cream:#F5F0EB;--cream-dark:#EDE5DD;--sand:#D4C5B5;--charcoal:#2C2C2C;--warm-gray:#6B6560;--muted-gray:#A09A94;--forest:#4A5D42;--linen:#FAF8F5}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Inter',sans-serif;color:var(--charcoal);background-color:var(--linen);-webkit-font-smoothing:antialiased;line-height:1.6}
h1,h2,h3,h4,h5,h6{font-family:'Cormorant Garamond',serif;font-weight:300;line-height:1.1}
a{text-decoration:none;color:inherit;transition:all .3s ease}
img{max-width:100%;height:auto;display:block}
::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--linen)}::-webkit-scrollbar-thumb{background:var(--sand);border-radius:3px}
::selection{background-color:var(--sage-light);color:white}

.malle-container{max-width:1280px;margin:0 auto;padding:0 1.5rem}
.malle-container-narrow{max-width:1024px;margin:0 auto;padding:0 1.5rem}
.malle-container-xs{max-width:768px;margin:0 auto;padding:0 1.5rem}
.malle-eyebrow{font-family:'Inter',sans-serif;font-size:.625rem;letter-spacing:.3em;text-transform:uppercase;font-weight:500;color:var(--sage);display:block;margin-bottom:1rem}
.malle-section{padding:5rem 1.5rem}

/* Buttons */
.malle-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem 2rem;font-size:.875rem;letter-spacing:.05em;font-weight:500;border-radius:9999px;transition:all .3s ease;border:none;cursor:pointer;font-family:'Inter',sans-serif}
.malle-btn-primary{background-color:var(--sage);color:white}
.malle-btn-primary:hover{box-shadow:0 10px 25px rgba(139,157,131,.3);transform:scale(1.02)}
.malle-btn-outline{background:transparent;color:var(--charcoal);border:1px solid var(--sand)}
.malle-btn-outline:hover{box-shadow:0 5px 15px rgba(0,0,0,.08)}
.malle-btn-white{background-color:white;color:var(--forest)}
.malle-btn-white:hover{box-shadow:0 10px 25px rgba(0,0,0,.1);transform:scale(1.02)}

/* Header */
.malle-header{position:fixed;top:0;left:0;right:0;z-index:50;transition:all .5s ease;padding:1.25rem 0;background:rgba(255,255,255,.9);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.malle-header--transparent{background:transparent;backdrop-filter:none;padding:1.5rem 0}
.malle-header--scrolled{background:rgba(255,255,255,.9);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 1px 3px rgba(0,0,0,.05);padding:.75rem 0}
.malle-header__inner{display:flex;align-items:center;justify-content:space-between}
.malle-logo{display:flex;flex-direction:column;align-items:flex-start}
.malle-logo__name{font-family:'Cormorant Garamond',serif;font-size:1.875rem;font-weight:600;letter-spacing:.05em;color:var(--charcoal)}
.malle-logo__tagline{font-size:.625rem;letter-spacing:.25em;text-transform:uppercase;font-weight:300;color:var(--sage)}
.malle-nav{display:none;align-items:center;gap:2rem}
.malle-nav a{font-size:.875rem;letter-spacing:.05em;color:var(--warm-gray);font-weight:300;transition:color .3s}
.malle-nav a:hover{opacity:.7}
.malle-nav .current-menu-item>a,.malle-nav .current_page_item>a{color:var(--forest);font-weight:500}
.malle-menu-toggle{display:flex;padding:.5rem;background:none;border:none;cursor:pointer;color:var(--charcoal)}
.malle-menu-toggle svg{width:1.25rem;height:1.25rem}
.malle-mobile-nav{display:none;background:rgba(255,255,255,.95);backdrop-filter:blur(12px);border-top:1px solid var(--cream-dark);padding:1rem 1.5rem}
.malle-mobile-nav.is-open{display:block}
.malle-mobile-nav a{display:flex;align-items:center;justify-content:space-between;padding:.75rem 0;font-size:.875rem;letter-spacing:.05em;color:var(--warm-gray);font-weight:300;border-bottom:1px solid var(--cream)}
.malle-mobile-nav .current-menu-item>a{color:var(--forest);font-weight:500}

/* Hero */
.malle-hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden;background-color:var(--cream)}
.malle-hero__bg-orb{position:absolute;border-radius:50%;pointer-events:none}
.malle-hero__bg-orb--1{width:600px;height:600px;top:25%;right:-8rem;background:radial-gradient(circle,var(--sage) 0%,transparent 70%);opacity:.2}
.malle-hero__bg-orb--2{width:500px;height:500px;bottom:-8rem;left:-8rem;background:radial-gradient(circle,var(--sand) 0%,transparent 70%);opacity:.15}
.malle-hero__grid{position:relative;display:grid;grid-template-columns:1fr;gap:3rem;align-items:center;padding:8rem 0 4rem;width:100%}
.malle-hero__eyebrow{font-size:.75rem;letter-spacing:.3em;text-transform:uppercase;font-weight:500;color:var(--sage);margin-bottom:1.5rem;display:block}
.malle-hero__title{font-size:clamp(3rem,6vw,4.5rem);font-weight:300;line-height:1.1;color:var(--charcoal);margin-bottom:1.5rem}
.malle-hero__title span{color:var(--sage)}
.malle-hero__desc{font-size:1rem;font-weight:300;line-height:1.7;color:var(--warm-gray);margin-bottom:2.5rem;max-width:28rem}
.malle-hero__buttons{display:flex;flex-direction:column;gap:1rem}
.malle-hero__badges{display:flex;align-items:center;gap:2rem;margin-top:3rem;padding-top:2rem;border-top:1px solid var(--cream-dark)}
.malle-hero__badges span{font-size:.625rem;letter-spacing:.15em;text-transform:uppercase;font-weight:500;color:var(--muted-gray)}
.malle-hero__image{position:relative}
.malle-hero__image-frame{position:relative;aspect-ratio:4/5;border-radius:1.5rem;overflow:hidden;background-color:var(--cream-dark)}
.malle-hero__image-frame img{width:100%;height:100%;object-fit:cover}
.malle-hero__image-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(139,157,131,.15),transparent)}
.malle-hero__float-card{position:absolute;bottom:-1.5rem;left:-1.5rem;background:white;border-radius:1rem;padding:1.25rem;box-shadow:0 20px 40px rgba(0,0,0,.1);display:flex;align-items:center;gap:.75rem;z-index:2}
.malle-hero__float-card__icon{width:2.5rem;height:2.5rem;border-radius:50%;background-color:var(--cream);display:flex;align-items:center;justify-content:center;color:var(--sage);font-size:1.125rem}
.malle-hero__float-card__title{font-size:.75rem;font-weight:500;color:var(--charcoal);font-family:'Inter',sans-serif}
.malle-hero__float-card__sub{font-size:.625rem;font-weight:300;color:var(--warm-gray);font-family:'Inter',sans-serif}

/* Section Header */
.malle-section-header{max-width:42rem;margin:0 auto 3rem;text-align:center}
.malle-section-header--light .malle-eyebrow{color:rgba(255,255,255,.6)}
.malle-section-header--light h2{color:white}
.malle-section-header--light p{color:rgba(255,255,255,.7)}
.malle-section-header h2{font-size:clamp(1.875rem,4vw,3rem);margin-bottom:1rem}
.malle-section-header p{font-size:.875rem;font-weight:300;line-height:1.7;color:var(--warm-gray)}

/* Product Card */
.malle-product-card{display:block}
.malle-product-card:hover .malle-product-card__image img{transform:scale(1.05)}
.malle-product-card:hover .malle-product-card__cta{opacity:1}
.malle-product-card__image{position:relative;aspect-ratio:4/5;border-radius:1rem;overflow:hidden;background-color:var(--cream-dark);margin-bottom:1.25rem}
.malle-product-card__image img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}
.malle-product-card__badge{position:absolute;top:1rem;left:1rem;padding:.25rem .75rem;font-size:.625rem;letter-spacing:.15em;text-transform:uppercase;font-weight:500;border-radius:9999px;background-color:var(--sage);color:white}
.malle-product-card__placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center}
.malle-product-card__placeholder span{font-family:'Cormorant Garamond',serif;font-size:3.75rem;font-weight:300;color:var(--sand)}
.malle-product-card__category{font-size:.625rem;letter-spacing:.2em;text-transform:uppercase;font-weight:500;color:var(--sage);display:block;margin-bottom:.25rem}
.malle-product-card__name{font-family:'Cormorant Garamond',serif;font-size:1.25rem;font-weight:300;color:var(--charcoal);margin-bottom:.25rem}
.malle-product-card__tagline{font-size:.875rem;font-weight:300;color:var(--warm-gray)}
.malle-product-card__footer{display:flex;align-items:center;justify-content:space-between;margin-top:.5rem}
.malle-product-card__price{font-size:1rem;font-weight:500;color:var(--charcoal);font-family:'Inter',sans-serif}
.malle-product-card__cta{display:flex;align-items:center;gap:.25rem;font-size:.75rem;font-weight:500;color:var(--sage);opacity:0;transition:opacity .3s}
.malle-products-grid{display:grid;grid-template-columns:1fr;gap:2rem}

/* Benefits Banner */
.malle-benefits-banner{background-color:var(--charcoal);color:white}
.malle-benefits-grid{display:grid;grid-template-columns:1fr;gap:2rem;text-align:center}
.malle-benefit-item__icon{width:3.5rem;height:3.5rem;border-radius:1rem;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;background-color:rgba(139,157,131,.15)}
.malle-benefit-item__icon svg{width:1.5rem;height:1.5rem;color:var(--sage)}
.malle-benefit-item h3{font-size:1.25rem;font-weight:400;color:white;margin-bottom:.75rem}
.malle-benefit-item p{font-size:.875rem;font-weight:300;line-height:1.7;color:var(--muted-gray)}

/* Testimonials */
.malle-testimonials-section{background-color:var(--cream)}
.malle-testimonials-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}
.malle-testimonial-card{background:white;border-radius:1rem;padding:2rem;box-shadow:0 1px 3px rgba(0,0,0,.05)}
.malle-testimonial-card__stars{display:flex;gap:2px;margin-bottom:1rem}
.malle-testimonial-card__stars svg{width:.875rem;height:.875rem;color:var(--sand);fill:var(--sand)}
.malle-testimonial-card__content{font-size:.875rem;font-weight:300;line-height:1.7;color:var(--warm-gray);margin-bottom:1.5rem}
.malle-testimonial-card__author{display:flex;align-items:center;gap:.75rem}
.malle-testimonial-card__avatar{width:2.5rem;height:2.5rem;border-radius:50%;overflow:hidden;background-color:var(--cream);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.malle-testimonial-card__avatar img{width:100%;height:100%;object-fit:cover}
.malle-testimonial-card__avatar span{font-family:'Cormorant Garamond',serif;font-size:.875rem;color:var(--sage)}
.malle-testimonial-card__name{font-size:.875rem;font-weight:500;color:var(--charcoal);font-family:'Inter',sans-serif}
.malle-testimonial-card__role{font-size:.75rem;font-weight:300;color:var(--muted-gray);font-family:'Inter',sans-serif}
.malle-testimonial-card__product{display:inline-block;font-size:.625rem;letter-spacing:.1em;text-transform:uppercase;font-weight:500;padding:.25rem .625rem;border-radius:9999px;background-color:rgba(139,157,131,.1);color:var(--sage);margin-bottom:1rem}
.malle-testimonials-masonry{columns:1;gap:1.5rem}
.malle-testimonials-masonry .malle-testimonial-card{break-inside:avoid;margin-bottom:1.5rem}

/* CTA */
.malle-cta{position:relative;border-radius:1.5rem;overflow:hidden;padding:3rem;text-align:center;background-color:var(--sage)}
.malle-cta__orb{position:absolute;border-radius:50%;opacity:.1;background:radial-gradient(circle,white,transparent)}
.malle-cta__orb--1{width:400px;height:400px;top:-8rem;right:-8rem}
.malle-cta__orb--2{width:300px;height:300px;bottom:-8rem;left:-8rem}
.malle-cta__content{position:relative}
.malle-cta h2{color:white;font-size:clamp(1.875rem,4vw,3rem);margin-bottom:1rem}
.malle-cta p{font-size:.875rem;font-weight:300;color:rgba(255,255,255,.8);max-width:32rem;margin:0 auto 2.5rem;line-height:1.7}

/* Page Hero */
.malle-page-hero{padding-top:7rem;padding-bottom:5rem;background-color:var(--cream)}
.malle-page-hero .malle-eyebrow{margin-bottom:1.5rem}
.malle-page-hero h1{font-size:clamp(2rem,5vw,3.75rem);color:var(--charcoal);margin-bottom:1.5rem}
.malle-page-hero h1 span{color:var(--sage)}
.malle-page-hero p{font-size:.875rem;font-weight:300;color:var(--warm-gray);max-width:42rem;line-height:1.7}
.malle-page-hero--center{text-align:center}
.malle-page-hero--center p{margin:0 auto}

/* Steps */
.malle-steps-grid{display:grid;grid-template-columns:1fr;gap:2rem}
.malle-step__number{font-family:'Cormorant Garamond',serif;font-size:3.75rem;font-weight:300;color:rgba(139,157,131,.2);margin-bottom:1rem;display:block}
.malle-step h3{font-size:1.5rem;font-weight:400;color:var(--charcoal);margin-bottom:.75rem}
.malle-step p{font-size:.875rem;font-weight:300;line-height:1.7;color:var(--warm-gray)}

/* Ingredients */
.malle-ingredients-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}
.malle-ingredient-card{border-radius:1rem;padding:1.75rem;background-color:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08)}
.malle-ingredient-card svg{width:1.5rem;height:1.5rem;color:var(--sage);margin-bottom:1rem}
.malle-ingredient-card h3{font-size:1.125rem;color:white;margin-bottom:.5rem}
.malle-ingredient-card p{font-size:.875rem;font-weight:300;color:var(--muted-gray);line-height:1.7}

/* Quality */
.malle-quality-grid{display:grid;grid-template-columns:1fr;gap:3rem;align-items:center}
.malle-quality-image{aspect-ratio:1;border-radius:1.5rem;overflow:hidden;background-color:var(--cream-dark)}
.malle-quality-image img{width:100%;height:100%;object-fit:cover}
.malle-quality-list{list-style:none;display:flex;flex-direction:column;gap:1rem}
.malle-quality-list li{display:flex;align-items:flex-start;gap:.75rem}
.malle-quality-list__dot{width:1.25rem;height:1.25rem;border-radius:50%;background-color:rgba(139,157,131,.15);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:.125rem}
.malle-quality-list__dot::after{content:'';width:.375rem;height:.375rem;border-radius:50%;background-color:var(--sage)}
.malle-quality-list li span{font-size:.875rem;font-weight:300;color:var(--warm-gray)}

/* Values */
.malle-values-grid{display:grid;grid-template-columns:1fr;gap:2rem}
.malle-value-card{background:white;border-radius:1rem;padding:2rem;box-shadow:0 1px 3px rgba(0,0,0,.05)}
.malle-value-card__icon{width:3rem;height:3rem;border-radius:.75rem;display:flex;align-items:center;justify-content:center;background-color:rgba(139,157,131,.1);margin-bottom:1.25rem}
.malle-value-card__icon svg{width:1.25rem;height:1.25rem;color:var(--sage)}
.malle-value-card h3{font-size:1.25rem;font-weight:400;color:var(--charcoal);margin-bottom:.5rem}
.malle-value-card p{font-size:.875rem;font-weight:300;color:var(--warm-gray);line-height:1.7}

/* Mission Quote */
.malle-mission-quote{text-align:center}
.malle-mission-quote h2{font-size:clamp(1.5rem,3vw,2.25rem);font-weight:300;color:var(--charcoal);line-height:1.6;margin-bottom:2rem}
.malle-mission-quote__line{width:4rem;height:1px;background-color:var(--sage);margin:0 auto 1.5rem}
.malle-mission-quote__author{font-size:.875rem;font-weight:300;color:var(--muted-gray)}

/* FAQ */
.malle-faq-filters{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;margin-bottom:3rem}
.malle-faq-filter{padding:.5rem 1rem;font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;border-radius:9999px;border:1px solid var(--sand);background:transparent;color:var(--warm-gray);cursor:pointer;font-family:'Inter',sans-serif;transition:all .3s}
.malle-faq-filter.is-active,.malle-faq-filter:hover{background-color:var(--sage);border-color:var(--sage);color:white}
.malle-faq-item{border-bottom:1px solid var(--cream-dark)}
.malle-faq-item__question{width:100%;display:flex;align-items:center;justify-content:space-between;padding:1.5rem 0;background:none;border:none;cursor:pointer;text-align:left;font-family:'Inter',sans-serif;font-size:1rem;font-weight:300;color:var(--charcoal)}
.malle-faq-item__question:hover{opacity:.8}
.malle-faq-item__question svg{width:1.25rem;height:1.25rem;color:var(--sage);flex-shrink:0;transition:transform .3s}
.malle-faq-item.is-open .malle-faq-item__question svg{transform:rotate(180deg)}
.malle-faq-item__answer{display:none;font-size:.875rem;font-weight:300;color:var(--warm-gray);line-height:1.7;padding-bottom:1.5rem}
.malle-faq-item.is-open .malle-faq-item__answer{display:block}
.malle-faq-cta{text-align:center;border-radius:1rem;padding:2.5rem;background-color:var(--cream);margin-top:4rem}
.malle-faq-cta h3{font-size:1.5rem;font-weight:400;color:var(--charcoal);margin-bottom:.75rem}
.malle-faq-cta p{font-size:.875rem;font-weight:300;color:var(--warm-gray);margin-bottom:1.5rem}

/* Contact */
.malle-contact-grid{display:grid;grid-template-columns:1fr;gap:3rem}
.malle-contact-info-item{display:flex;align-items:flex-start;gap:1rem}
.malle-contact-info-item__icon{width:2.5rem;height:2.5rem;border-radius:.75rem;display:flex;align-items:center;justify-content:center;background-color:rgba(139,157,131,.1);flex-shrink:0}
.malle-contact-info-item__icon svg{width:1rem;height:1rem;color:var(--sage)}
.malle-contact-info-item__label{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;font-weight:500;color:var(--muted-gray);margin-bottom:.25rem}
.malle-contact-info-item__value{font-size:.875rem;font-weight:300;color:var(--charcoal)}
.malle-contact-note{padding:1.5rem;border-radius:1rem;background-color:var(--cream);margin-top:3rem}
.malle-contact-note p{font-size:.875rem;font-weight:300;color:var(--warm-gray);line-height:1.7}
.malle-contact-form{background:white;border-radius:1rem;padding:2rem;box-shadow:0 1px 3px rgba(0,0,0,.05)}
.malle-form-row{display:grid;grid-template-columns:1fr;gap:1.5rem;margin-bottom:1.5rem}
.malle-form-group label{display:block;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;font-weight:500;color:var(--charcoal);margin-bottom:.5rem;font-family:'Inter',sans-serif}
.malle-form-group input,.malle-form-group textarea{width:100%;padding:.75rem 1rem;font-size:.875rem;font-family:'Inter',sans-serif;border:1px solid #e5e5e5;border-radius:.5rem;background:white;color:var(--charcoal);transition:border-color .3s}
.malle-form-group input:focus,.malle-form-group textarea:focus{outline:none;border-color:var(--sage);box-shadow:0 0 0 3px rgba(139,157,131,.15)}
.malle-form-group textarea{min-height:140px;resize:vertical}
.malle-form-group input::placeholder,.malle-form-group textarea::placeholder{color:#ccc}
.malle-form-success{text-align:center;padding:3rem}
.malle-form-success__icon{width:4rem;height:4rem;border-radius:50%;display:flex;align-items:center;justify-content:center;background-color:rgba(139,157,131,.1);margin:0 auto 1.5rem}
.malle-form-success__icon svg{width:2rem;height:2rem;color:var(--sage)}
.malle-form-success h3{font-size:1.5rem;font-weight:400;color:var(--charcoal);margin-bottom:.75rem}
.malle-form-success p{font-size:.875rem;font-weight:300;color:var(--warm-gray)}

/* Shop Filters */
.malle-shop-filters{display:flex;justify-content:center;flex-wrap:wrap;gap:.5rem;margin-bottom:3rem}
.malle-shop-filter{padding:.5rem 1.25rem;font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;border-radius:9999px;border:1px solid var(--sand);background:transparent;color:var(--warm-gray);font-family:'Inter',sans-serif;transition:all .3s;text-decoration:none}
.malle-shop-filter:hover,.malle-shop-filter.is-active{background-color:var(--sage);border-color:var(--sage);color:white}

/* About */
.malle-about-hero-grid{display:grid;grid-template-columns:1fr;gap:3rem;align-items:center}
.malle-about-image{aspect-ratio:4/5;border-radius:1.5rem;overflow:hidden;background-color:var(--cream-dark)}
.malle-about-image img{width:100%;height:100%;object-fit:cover}

/* Link */
.malle-link-sage{display:inline-flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:500;letter-spacing:.05em;color:var(--sage);transition:opacity .3s}
.malle-link-sage:hover{opacity:.7}
.malle-link-sage svg{width:1rem;height:1rem}

/* Footer */
.malle-footer{background-color:var(--charcoal);color:white}
.malle-footer__inner{padding:4rem 0 2rem}
.malle-footer__grid{display:grid;grid-template-columns:1fr;gap:3rem;margin-bottom:4rem}
.malle-footer__brand h3{font-size:1.5rem;font-weight:600;margin-bottom:.5rem}
.malle-footer__brand-tagline{font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:var(--sage);margin-bottom:1rem;display:block}
.malle-footer__brand-desc{font-size:.875rem;font-weight:300;color:var(--muted-gray);line-height:1.7}
.malle-footer__col h4{font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;font-weight:500;font-family:'Inter',sans-serif;color:var(--sage);margin-bottom:1.5rem}
.malle-footer__col ul{list-style:none;display:flex;flex-direction:column;gap:.75rem}
.malle-footer__col a{font-size:.875rem;font-weight:300;color:var(--muted-gray);transition:color .3s}
.malle-footer__col a:hover{color:white}
.malle-newsletter{display:flex}
.malle-newsletter input{flex:1;padding:.625rem 1rem;font-size:.875rem;font-family:'Inter',sans-serif;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.1);border-radius:.5rem 0 0 .5rem;color:white;outline:none}
.malle-newsletter input::placeholder{color:rgba(255,255,255,.3)}
.malle-newsletter input:focus{border-color:rgba(255,255,255,.3)}
.malle-newsletter button{padding:.625rem 1.25rem;font-size:.875rem;font-weight:500;font-family:'Inter',sans-serif;background-color:var(--sage);color:white;border:none;border-radius:0 .5rem .5rem 0;cursor:pointer;transition:opacity .3s}
.malle-newsletter button:hover{opacity:.9}
.malle-footer__bottom{padding-top:2rem;border-top:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;align-items:center;gap:1rem}
.malle-footer__copyright{font-size:.75rem;font-weight:300;color:var(--warm-gray)}
.malle-footer__legal{display:flex;gap:1.5rem}
.malle-footer__legal a{font-size:.75rem;font-weight:300;color:var(--warm-gray);transition:color .3s}
.malle-footer__legal a:hover{color:white}

/* WooCommerce */
.woocommerce ul.products{display:grid!important;grid-template-columns:1fr;gap:2rem}
.woocommerce ul.products li.product{width:100%!important;margin:0!important}
.woocommerce ul.products li.product a img{border-radius:1rem;aspect-ratio:4/5;object-fit:cover}
.woocommerce ul.products li.product .button,.woocommerce a.button,.woocommerce button.button{background-color:var(--sage)!important;color:white!important;border-radius:9999px!important;font-family:'Inter',sans-serif!important;font-size:.875rem!important;padding:.75rem 2rem!important;border:none!important;transition:all .3s!important}
.woocommerce a.button:hover,.woocommerce button.button:hover{background-color:var(--sage-dark)!important;box-shadow:0 5px 15px rgba(139,157,131,.3)!important}

/* Responsive */
@media(min-width:640px){
.malle-products-grid{grid-template-columns:repeat(2,1fr)}
.malle-testimonials-grid{grid-template-columns:repeat(2,1fr)}
.malle-testimonials-masonry{columns:2}
.malle-ingredients-grid{grid-template-columns:repeat(2,1fr)}
.malle-values-grid{grid-template-columns:repeat(2,1fr)}
.malle-form-row{grid-template-columns:repeat(2,1fr)}
.malle-hero__buttons{flex-direction:row}
.woocommerce ul.products{grid-template-columns:repeat(2,1fr)!important}
}
@media(min-width:768px){
.malle-nav{display:flex}
.malle-menu-toggle{display:none}
.malle-hero__grid{grid-template-columns:1fr 1fr;gap:5rem;padding:0}
.malle-hero__desc{font-size:1.125rem}
.malle-section{padding:7rem 1.5rem}
.malle-page-hero{padding-top:10rem;padding-bottom:7rem}
.malle-logo__name{font-size:1.875rem}
.malle-steps-grid{grid-template-columns:repeat(3,1fr);gap:3rem}
.malle-benefits-grid{grid-template-columns:repeat(3,1fr);gap:3rem}
.malle-testimonials-grid{grid-template-columns:repeat(3,1fr)}
.malle-quality-grid{grid-template-columns:1fr 1fr}
.malle-about-hero-grid{grid-template-columns:1fr 1fr;gap:5rem}
.malle-contact-grid{grid-template-columns:2fr 3fr;gap:4rem}
.malle-hero__float-card{left:-3rem}
.malle-cta{padding:5rem}
.malle-contact-form{padding:2.5rem}
.malle-footer__grid{grid-template-columns:1.2fr 1fr 1fr 1.2fr;gap:2rem}
.malle-footer__bottom{flex-direction:row;justify-content:space-between}
}
@media(min-width:1024px){
.malle-products-grid{grid-template-columns:repeat(3,1fr)}
.malle-testimonials-masonry{columns:3}
.malle-ingredients-grid{grid-template-columns:repeat(3,1fr)}
.malle-values-grid{grid-template-columns:repeat(4,1fr)}
.woocommerce ul.products{grid-template-columns:repeat(3,1fr)!important}
}

/* Single Product Detail */
.malle-product-detail__back{display:inline-flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:300;color:var(--warm-gray);margin-bottom:2.5rem;transition:opacity .3s}
.malle-product-detail__back:hover{opacity:.7}
.malle-product-detail__back svg{width:1rem;height:1rem}
.malle-product-detail{display:grid;grid-template-columns:1fr;gap:3rem}
.malle-product-detail__image-col{position:relative}
.malle-product-detail__image-frame{position:relative;aspect-ratio:4/5;border-radius:1.5rem;overflow:hidden;background-color:var(--cream-dark)}
.malle-product-detail__image-frame img{width:100%;height:100%;object-fit:cover}
.malle-product-detail__placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center}
.malle-product-detail__placeholder span{font-family:'Cormorant Garamond',serif;font-size:6rem;font-weight:300;color:var(--sand)}
.malle-product-detail__badge{position:absolute;top:1.5rem;left:1.5rem;padding:.375rem 1rem;font-size:.625rem;letter-spacing:.15em;text-transform:uppercase;font-weight:500;border-radius:9999px;background-color:var(--sage);color:white}
.malle-product-detail__info{padding-top:1rem}
.malle-product-detail__category{font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;font-weight:500;color:var(--sage);display:block;margin-bottom:.75rem}
.malle-product-detail__title{font-family:'Cormorant Garamond',serif;font-size:clamp(2rem,4vw,3.25rem);font-weight:300;color:var(--charcoal);margin-bottom:.5rem}
.malle-product-detail__tagline{font-size:1rem;font-weight:300;color:var(--warm-gray);margin-bottom:1.5rem}
.malle-product-detail__price-row{display:flex;align-items:baseline;gap:.75rem;margin-bottom:2rem}
.malle-product-detail__price{font-size:1.875rem;font-weight:300;color:var(--charcoal)}
.malle-product-detail__price del{color:var(--muted-gray);font-size:1.25rem}
.malle-product-detail__price ins{text-decoration:none}
.malle-product-detail__servings{font-size:.875rem;font-weight:300;color:var(--muted-gray)}
.malle-product-detail__desc{font-size:.875rem;font-weight:300;line-height:1.7;color:var(--warm-gray);margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid var(--cream-dark)}
.malle-product-detail__cart{margin-bottom:1rem}
.malle-product-detail__qty{margin-bottom:2rem}
.malle-product-detail__qty-label{display:block;font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;font-weight:500;color:var(--charcoal);margin-bottom:.75rem}
.malle-product-detail__qty-control{display:inline-flex;align-items:center;border:1px solid var(--sand);border-radius:9999px}
.malle-product-detail__qty-control button{padding:.75rem 1rem;background:none;border:none;cursor:pointer;color:var(--warm-gray);transition:background .2s;display:flex;align-items:center}
.malle-product-detail__qty-control button:first-child{border-radius:9999px 0 0 9999px}
.malle-product-detail__qty-control button:last-child{border-radius:0 9999px 9999px 0}
.malle-product-detail__qty-control button:hover{background-color:rgba(0,0,0,.03)}
.malle-product-detail__qty-control button svg{width:.875rem;height:.875rem}
.malle-product-detail__qty-input{width:3.5rem;text-align:center;font-size:.875rem;font-weight:500;color:var(--charcoal);border:none;background:none;outline:none;font-family:'Inter',sans-serif;-moz-appearance:textfield}
.malle-product-detail__qty-input::-webkit-inner-spin-button,.malle-product-detail__qty-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.malle-product-detail__add-btn{width:100%;padding:1rem;font-size:.875rem}
.malle-product-detail__trust{display:flex;flex-direction:column;gap:.75rem;margin-top:2rem;padding-top:2rem;border-top:1px solid var(--cream-dark)}
.malle-product-detail__trust-item{display:flex;align-items:center;gap:.75rem}
.malle-product-detail__trust-item svg{width:1rem;height:1rem;color:var(--sage);flex-shrink:0}
.malle-product-detail__trust-item span{font-size:.75rem;font-weight:300;color:var(--warm-gray)}
.malle-product-detail__section{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--cream-dark)}
.malle-product-detail__section-title{font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;font-weight:500;color:var(--charcoal);margin-bottom:.75rem;font-family:'Inter',sans-serif}
.malle-product-detail__section-text{font-size:.875rem;font-weight:300;line-height:1.7;color:var(--warm-gray)}

@media(min-width:768px){
.malle-product-detail{grid-template-columns:1fr 1fr;gap:5rem}
.malle-product-detail__image-frame{position:sticky;top:8rem}
.malle-product-detail__badge{top:1.5rem;left:1.5rem}
}

/* Contact form column ratio fix */
@media(min-width:768px){
.malle-contact-grid{grid-template-columns:2fr 3fr}
}

/* Steps connector line from source */
.malle-step{position:relative}
.malle-step__connector{display:none;position:absolute;top:2rem;right:-1.5rem;width:3rem;height:1px;background-color:var(--sand)}
@media(min-width:768px){.malle-step__connector{display:block}}
