/*
Theme Name: Earth Greens
Theme URI: https://earthgreens.local
Author: Earth Greens
Author URI: https://earthgreens.local
Description: Elegant organic wellness WordPress theme for Earth Greens.
Version: 1.0.0
License: GPL-2.0-or-later
Text Domain: earth-greens
*/

:root{
    --primary:#23432B;
    --primary-2:#234A34;
    --primary-dark:#163324;
    --secondary:#4F6F4F;
    --sage:#AFC5A8;
    --light-sage:#DDE8D8;
    --mint:#EEF5EE;
    --beige:#DCCFB2;
    --cream:#F8F7F2;
    --warm-cream:#F4F1EA;
    --white:#FAF9F5;
    --text:#2F2F2F;
    --muted:#6D6D6D;
    --line:rgba(35,67,43,.16);
    --shadow:0 12px 34px rgba(22,51,36,.10);
    --soft-shadow:0 4px 16px rgba(0,0,0,.06);
    --radius:12px;
    --radius-lg:16px;
    --container:1280px;
}

*{box-sizing:border-box}

html{scroll-behavior:smooth}

body{
    margin:0;
    background:var(--cream);
    color:var(--text);
    font-family:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    font-size:16px;
    line-height:1.55;
}

img{max-width:100%;display:block}

a{color:inherit;text-decoration:none}

button,input,select,textarea{font:inherit}

.eg-container{
    width:min(var(--container),calc(100% - 48px));
    margin-inline:auto;
}

.eg-section{padding:80px 0}

.eg-eyebrow{
    color:var(--secondary);
    font-size:12px;
    font-weight:700;
    letter-spacing:.14em;
    text-transform:uppercase;
}

.eg-title,
h1,h2,h3{
    color:var(--primary);
    font-family:"Playfair Display",Georgia,serif;
    font-weight:600;
    line-height:1.05;
    margin:0;
}

.eg-title{font-size:clamp(34px,5vw,64px)}

.eg-section-title{
    font-size:clamp(30px,3vw,44px);
    text-align:center;
    margin-bottom:16px;
}

.eg-lead{
    color:var(--muted);
    max-width:680px;
    margin:16px 0 0;
}

.eg-center{text-align:center}
.eg-center .eg-lead{margin-inline:auto}

.eg-btn{
    align-items:center;
    background:var(--primary);
    border:1px solid var(--primary);
    border-radius:8px;
    color:#fff;
    cursor:pointer;
    display:inline-flex;
    font-weight:700;
    gap:8px;
    justify-content:center;
    line-height:1.2;
    min-height:46px;
    padding:12px 22px;
    text-align:center;
    transition:transform .22s ease,background .22s ease,box-shadow .22s ease;
    white-space:normal;
}

.eg-btn:hover{
    background:var(--primary-dark);
    box-shadow:0 10px 22px rgba(22,51,36,.18);
    transform:translateY(-1px);
}

.eg-btn.secondary{
    background:rgba(250,249,245,.74);
    border-color:var(--line);
    color:var(--primary);
}

.eg-btn.secondary:hover{
    background:#fff;
    border-color:var(--primary);
}

.eg-top-strip{
    background:#050505;
    color:#fff;
    min-height:34px;
    overflow:hidden;
    position:relative;
    z-index:60;
}

.eg-top-strip-track{
    align-items:center;
    animation:egTopStripMarquee 58s linear infinite;
    display:flex;
    width:max-content;
    will-change:transform;
}

.eg-top-strip-group{
    align-items:center;
    display:flex;
    gap:42px;
    min-height:34px;
    padding-right:42px;
}

.eg-top-strip span{
    align-items:center;
    color:#f8f7f2;
    display:inline-flex;
    font-size:12px;
    font-weight:800;
    gap:9px;
    letter-spacing:.12em;
    text-transform:uppercase;
    white-space:nowrap;
}

.eg-top-strip svg{
    color:var(--sage);
    height:17px;
    width:17px;
}

@keyframes egTopStripMarquee{
    from{transform:translate3d(0,0,0)}
    to{transform:translate3d(-50%,0,0)}
}

.eg-site-header{
    background:rgba(248,247,242,.88);
    border-bottom:1px solid var(--line);
    position:sticky;
    top:0;
    z-index:50;
    backdrop-filter:blur(18px);
}

.eg-nav{
    align-items:center;
    display:grid;
    gap:24px;
    grid-template-columns:auto 1fr auto;
    min-height:82px;
}

.eg-brand{
    align-items:center;
    color:var(--primary);
    display:flex;
    font-family:"Playfair Display",Georgia,serif;
    font-size:27px;
    gap:10px;
    min-width:0;
    white-space:nowrap;
}

.eg-brand img{height:38px;width:auto}

.eg-menu{
    align-items:center;
    display:flex;
    gap:30px;
    justify-content:center;
    list-style:none;
    margin:0;
    padding:0;
}

.eg-menu a{
    color:#111;
    font-size:15px;
    transition:color .2s ease;
}

.eg-menu a:hover{color:var(--secondary)}

.eg-actions{
    align-items:center;
    display:flex;
    gap:14px;
    justify-content:flex-end;
    min-width:0;
}

.eg-icon-btn{
    align-items:center;
    background:transparent;
    border:0;
    color:#111;
    cursor:pointer;
    display:inline-flex;
    height:38px;
    justify-content:center;
    padding:0;
    position:relative;
    width:38px;
}

.eg-cart-count{
    align-items:center;
    background:var(--primary);
    border-radius:999px;
    color:#fff;
    display:flex;
    font-size:10px;
    height:17px;
    justify-content:center;
    position:absolute;
    right:1px;
    top:2px;
    width:17px;
}

.eg-mobile-toggle{display:none}

.eg-hero{
    min-height:calc(100vh - 82px);
    padding:54px 0 72px;
    position:relative;
}

.eg-hero-grid{
    align-items:center;
    display:grid;
    gap:56px;
    grid-template-columns:minmax(0,1fr) minmax(420px,.9fr);
}

.eg-hero-copy{max-width:640px}

.eg-hero h1{font-size:clamp(46px,6vw,82px)}

.eg-hero-actions{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
    margin-top:30px;
}

.eg-hero-media{
    display:grid;
    gap:16px;
    grid-template-columns:1fr;
}

.eg-hero-media .eg-thumbs{
    display:none;
}

.eg-product-stage{
    align-items:center;
    background:linear-gradient(145deg,#e8dfcc,#f7f4ea);
    border:1px solid var(--line);
    border-radius:var(--radius-lg);
    display:flex;
    justify-content:center;
    min-height:540px;
    overflow:hidden;
    position:relative;
    box-shadow:var(--shadow);
}

.eg-product-stage:before{
    background:radial-gradient(circle at 50% 70%,rgba(79,111,79,.18),transparent 58%);
    content:"";
    inset:0;
    position:absolute;
}

.eg-product-stage img{
    max-height:450px;
    object-fit:contain;
    position:relative;
    transition:opacity .28s ease,transform .28s ease;
    transform:translateY(12px);
}

.eg-product-stage.is-changing img{
    opacity:0;
    transform:translateY(20px) scale(.96);
}

.eg-thumbs{
    display:grid;
    gap:12px;
}

.eg-thumb{
    background:#e6dccb;
    border:1px solid var(--line);
    border-radius:8px;
    cursor:pointer;
    height:104px;
    overflow:hidden;
    padding:0;
}

.eg-thumb.is-active{border:2px solid var(--primary)}
.eg-thumb img{height:100%;object-fit:cover;width:100%}

.eg-hero-badges{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:26px;
}

.eg-mini-badge{
    align-items:center;
    background:rgba(255,255,255,.58);
    border:1px solid var(--line);
    border-radius:999px;
    color:var(--primary);
    display:flex;
    font-size:13px;
    font-weight:700;
    gap:8px;
    padding:8px 12px;
}

.eg-products{
    background:linear-gradient(180deg,var(--cream),var(--white));
}

.eg-product-grid{
    display:grid;
    gap:24px;
    grid-template-columns:repeat(3,minmax(0,1fr));
    margin-top:38px;
}

.eg-card{
    background:rgba(250,249,245,.88);
    border:1px solid var(--line);
    border-radius:var(--radius);
    box-shadow:0 2px 10px rgba(0,0,0,.04);
    overflow:hidden;
}

.eg-product-card{
    display:flex;
    flex-direction:column;
    position:relative;
    transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}

.eg-product-card[data-detail-url]{
    cursor:pointer;
}

.eg-product-card:hover{
    border-color:rgba(35,67,43,.38);
    box-shadow:var(--shadow);
    transform:translateY(-4px);
}

.eg-card-media{
    align-items:center;
    aspect-ratio:1/1;
    background:#ddd2c2;
    display:flex;
    justify-content:center;
    overflow:hidden;
}

.eg-card-media img{height:100%;object-fit:cover;width:100%}

.eg-card-body{
    display:flex;
    flex:1;
    flex-direction:column;
    padding:18px;
}

.eg-card h3{
    color:#111;
    font-family:"Inter",system-ui,sans-serif;
    font-size:18px;
    line-height:1.25;
}

.eg-card p{
    color:var(--muted);
    font-size:14px;
    margin:7px 0 10px;
}

.eg-price{
    color:#111;
    display:block;
    font-size:17px;
    font-weight:800;
    margin-bottom:8px;
}

.eg-rating{color:#d9a72e;font-size:15px;letter-spacing:1px}

.eg-product-badge{
    background:var(--beige);
    border-radius:999px;
    color:var(--primary);
    font-size:12px;
    font-weight:800;
    left:14px;
    padding:7px 11px;
    position:absolute;
    top:14px;
    z-index:2;
}

.eg-card-actions{
    align-items:center;
    display:grid;
    gap:10px;
    grid-template-columns:1fr 1fr;
    margin-top:auto;
    padding-top:14px;
}

.eg-card-actions .eg-btn{
    min-height:40px;
    padding:9px 12px;
    width:100%;
}

.eg-quick{
    display:none;
}

.eg-product-card:hover .eg-quick{
    display:none;
}

.eg-featured-footer{
    display:flex;
    justify-content:center;
    margin-top:32px;
}

[data-loop-clone]{
    display:none;
}

@keyframes egFeaturedProductLoop{
    from{transform:translate3d(0,0,0)}
    to{transform:translate3d(calc(-50% - 7px),0,0)}
}

@keyframes egReviewLoop{
    from{transform:translate3d(0,0,0)}
    to{transform:translate3d(calc(-50% - 7px),0,0)}
}

@keyframes egBenefitLoop{
    from{transform:translate3d(0,0,0)}
    to{transform:translate3d(calc(-50% - 7px),0,0)}
}

.eg-category-grid{
    display:grid;
    gap:24px;
    grid-template-columns:repeat(3,minmax(0,1fr));
}

.eg-category-card{
    background:rgba(250,249,245,.9);
    border:1px solid var(--line);
    border-radius:var(--radius);
    box-shadow:0 2px 10px rgba(0,0,0,.04);
    display:flex;
    flex-direction:column;
    overflow:hidden;
    position:relative;
    transition:border-color .22s ease,box-shadow .22s ease,transform .22s ease;
}

.eg-category-card:hover{
    border-color:rgba(35,67,43,.38);
    box-shadow:var(--shadow);
    transform:translateY(-4px);
}

.eg-category-media{
    align-items:center;
    aspect-ratio:1.05/1;
    background:#ddd2c2;
    display:flex;
    justify-content:center;
    overflow:hidden;
}

.eg-category-media img{
    height:100%;
    object-fit:cover;
    width:100%;
}

.eg-category-body{
    display:flex;
    flex:1;
    flex-direction:column;
    padding:22px;
}

.eg-category-body .eg-product-badge{
    align-self:flex-start;
    left:auto;
    margin-bottom:14px;
    position:static;
    top:auto;
}

.eg-category-body h2{
    font-size:30px;
    margin-bottom:10px;
}

.eg-category-body p{
    color:var(--muted);
    margin:0 0 18px;
}

.eg-category-list{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin:0 0 20px;
}

.eg-category-list span{
    background:var(--mint);
    border:1px solid var(--line);
    border-radius:999px;
    color:var(--primary);
    font-size:12px;
    font-weight:800;
    padding:7px 10px;
}

.eg-category-body .eg-btn{
    margin-top:auto;
}

.eg-slider-section{
    background:var(--white);
    overflow:hidden;
}

.eg-slider-head{
    align-items:end;
    display:flex;
    gap:20px;
    justify-content:space-between;
    margin-bottom:28px;
}

.eg-slider-controls{
    display:flex;
    gap:10px;
}

.eg-slider-control{
    align-items:center;
    background:#fff;
    border:1px solid var(--line);
    border-radius:999px;
    color:var(--primary);
    cursor:pointer;
    display:flex;
    height:42px;
    justify-content:center;
    width:42px;
}

.eg-product-slider{
    overflow:hidden;
}

.eg-slider-track{
    display:flex;
    gap:22px;
    transition:transform .35s ease;
    will-change:transform;
}

.eg-slide{
    background:var(--mint);
    border:1px solid var(--line);
    border-radius:var(--radius-lg);
    display:grid;
    flex:0 0 min(860px,86vw);
    grid-template-columns:.9fr 1fr;
    min-height:390px;
    overflow:hidden;
}

.eg-slide-media{
    align-items:center;
    background:#ded4c5;
    display:flex;
    justify-content:center;
}

.eg-slide-media img{
    height:100%;
    object-fit:cover;
    width:100%;
}

.eg-slide-content{
    align-self:center;
    padding:34px;
}

.eg-slide-content h3{
    font-size:clamp(30px,3vw,46px);
    margin-bottom:14px;
}

.eg-video-section{
    background:linear-gradient(180deg,var(--cream),var(--white));
}

.eg-video-grid{
    align-items:center;
    display:grid;
    gap:42px;
    grid-template-columns:1fr 1fr;
}

.eg-video-frame{
    background:#101a14;
    border-radius:var(--radius-lg);
    box-shadow:var(--shadow);
    min-height:420px;
    overflow:hidden;
    position:relative;
}

.eg-video-frame video,
.eg-video-frame img{
    height:100%;
    object-fit:cover;
    width:100%;
}

.eg-video-showcase{
    display:grid;
    gap:16px;
    grid-template-columns:repeat(2,minmax(0,1fr));
}

.eg-video-showcase.is-single{
    grid-template-columns:minmax(0,360px);
    justify-content:center;
}

.eg-video-card{
    aspect-ratio:720/1136;
    background:#101a14;
    border:1px solid rgba(35,67,43,.18);
    border-radius:var(--radius-lg);
    box-shadow:var(--shadow);
    margin:0;
    overflow:hidden;
    position:relative;
}

.eg-video-card.is-offset{
    transform:translateY(28px);
}

.eg-video-card::after{
    background:linear-gradient(180deg,transparent 52%,rgba(8,24,15,.82) 100%);
    content:"";
    inset:0;
    pointer-events:none;
    position:absolute;
}

.eg-video-card video{
    height:100%;
    object-fit:cover;
    width:100%;
}

.eg-video-card figcaption{
    bottom:0;
    color:#fff;
    display:grid;
    gap:2px;
    left:0;
    padding:18px;
    position:absolute;
    right:0;
    z-index:1;
}

.eg-video-card figcaption strong{
    font-size:15px;
}

.eg-video-card figcaption span{
    color:rgba(255,255,255,.76);
    font-size:12px;
}

.eg-video-play{
    align-items:center;
    background:rgba(250,249,245,.92);
    border-radius:999px;
    color:var(--primary);
    display:flex;
    font-weight:800;
    gap:10px;
    left:50%;
    padding:14px 20px;
    position:absolute;
    top:50%;
    transform:translate(-50%,-50%);
}

.eg-video-points{
    display:grid;
    gap:14px;
    margin-top:24px;
}

.eg-video-points span{
    background:var(--mint);
    border:1px solid var(--line);
    border-radius:8px;
    color:var(--primary);
    font-weight:700;
    padding:12px 14px;
}

#benefits{
    background:linear-gradient(180deg,#f8f7f2 0%,#eef4ea 100%);
    border-bottom:1px solid rgba(35,67,43,.1);
    border-top:1px solid rgba(35,67,43,.1);
    overflow:hidden;
    position:relative;
}

#benefits::before{
    background:radial-gradient(circle,rgba(79,111,79,.12) 0%,rgba(79,111,79,0) 68%);
    content:"";
    height:420px;
    left:-180px;
    position:absolute;
    top:-180px;
    width:420px;
}

#benefits .eg-container{
    position:relative;
    z-index:1;
}

#benefits .eg-lead{
    margin-inline:auto;
    max-width:660px;
}

.eg-benefits-grid{
    display:grid;
    gap:22px;
    grid-template-columns:repeat(3,minmax(0,1fr));
    margin-top:44px;
    width:100%;
}

.eg-benefits-grid [data-loop-clone]{
    display:none;
}

.eg-benefits-grid .eg-benefit{
    width:100%;
}

.eg-benefits-grid:not([data-benefit-loop]){
    animation:none;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    width:100%;
}

.eg-benefits-grid:not([data-benefit-loop]) .eg-benefit{
    width:auto;
}

.eg-benefit{
    background:#fffdf8;
    border:1px solid rgba(35,67,43,.16);
    border-top:4px solid var(--sage);
    border-radius:var(--radius);
    box-shadow:0 18px 44px rgba(22,51,36,.11);
    display:flex;
    flex-direction:column;
    min-height:300px;
    overflow:hidden;
    padding:32px;
    position:relative;
    text-align:left;
    transition:border-color .25s ease, box-shadow .25s ease, transform .25s ease;
}

.eg-benefit::before{
    color:rgba(35,67,43,.07);
    content:attr(data-benefit-number);
    font-family:Georgia,serif;
    font-size:112px;
    font-weight:700;
    line-height:1;
    position:absolute;
    right:18px;
    top:12px;
}

.eg-benefit:hover{
    border-color:rgba(35,67,43,.32);
    box-shadow:0 18px 42px rgba(22,51,36,.13);
    transform:translateY(-6px);
}

.eg-benefit:nth-child(2){
    border-top-color:#78986f;
}

.eg-benefit:nth-child(3){
    border-top-color:#9aaa78;
}

.eg-benefit .eg-symbol{
    align-items:center;
    background:var(--primary);
    border:1px solid rgba(35,67,43,.18);
    border-radius:999px;
    box-shadow:0 8px 20px rgba(35,67,43,.16);
    color:var(--white);
    display:inline-flex;
    height:56px;
    justify-content:center;
    margin-bottom:24px;
    position:relative;
    transition:background .25s ease, box-shadow .25s ease, transform .25s ease;
    width:56px;
    z-index:1;
}

.eg-benefit:hover .eg-symbol{
    background:var(--secondary);
    box-shadow:0 12px 26px rgba(35,67,43,.2);
    transform:scale(1.06);
}

.eg-benefit h3{
    color:var(--primary);
    font-size:23px;
    margin-bottom:12px;
    position:relative;
    z-index:1;
}

.eg-benefit p{
    color:var(--muted);
    line-height:1.75;
    margin:0;
    position:relative;
    z-index:1;
}

.eg-symbol svg,
.eg-detail span svg{
    height:24px;
    width:24px;
}

.eg-quality-section{
    background:linear-gradient(180deg,var(--white),var(--cream));
    overflow:hidden;
}

.eg-quality-marquee{
    margin-top:34px;
    overflow:hidden;
    position:relative;
}

.eg-quality-track{
    animation:egQualityMarquee 24s linear infinite;
    display:flex;
    flex-wrap:nowrap;
    width:max-content;
    will-change:transform;
}

.eg-quality-group{
    display:flex;
    flex:0 0 auto;
    gap:42px;
    padding-right:42px;
    width:max-content;
}

.eg-quality-logo{
    align-items:center;
    background:transparent;
    border:0;
    border-radius:0;
    box-shadow:none;
    display:inline-flex;
    flex:0 0 138px;
    justify-content:center;
    min-height:128px;
    padding:0;
}

.eg-quality-logo img{
    height:118px;
    object-fit:contain;
    opacity:1;
    width:138px;
}

.eg-quality-logo[aria-label="Kosher Certified"] img{
    transform:scale(.84);
}

.eg-quality-logo strong{
    display:none;
}

@keyframes egQualityMarquee{
    from{transform:translate3d(0,0,0)}
    to{transform:translate3d(-50%,0,0)}
}

.eg-split{
    align-items:center;
    display:grid;
    gap:46px;
    grid-template-columns:1fr 1fr;
}

.eg-proof{
    background:var(--beige);
}

.eg-chart{
    align-items:end;
    background:rgba(255,255,255,.68);
    border:1px solid rgba(35,67,43,.16);
    border-radius:var(--radius);
    display:flex;
    gap:14px;
    height:240px;
    padding:24px;
}

.eg-bar{
    background:linear-gradient(180deg,var(--secondary),var(--primary));
    border-radius:8px 8px 0 0;
    flex:1;
    min-height:56px;
}

.eg-proof-list{
    display:grid;
    gap:16px;
    margin-top:24px;
}

.eg-proof-item{
    align-items:flex-start;
    display:flex;
    gap:14px;
}

.eg-proof-item strong{color:var(--primary)}

.eg-reviews-section{
    background:linear-gradient(135deg,#163324 0%,#23432B 58%,#4F6F4F 100%);
    border-bottom:1px solid rgba(255,255,255,.12);
    border-top:1px solid rgba(255,255,255,.12);
    color:var(--white);
    overflow:hidden;
    position:relative;
}

.eg-reviews-section::before{
    background:url("assets/images/logo-white.png") center/contain no-repeat;
    content:"";
    height:360px;
    opacity:.08;
    position:absolute;
    right:-70px;
    top:32px;
    width:460px;
}

.eg-reviews-section .eg-container{
    position:relative;
    z-index:1;
}

.eg-reviews-section .eg-eyebrow{
    color:var(--sage);
}

.eg-reviews-section .eg-section-title{
    color:var(--white);
}

.eg-reviews-section .eg-lead{
    color:rgba(250,249,245,.76);
    margin-inline:auto;
    max-width:660px;
}

.eg-reviews-grid{
    display:grid;
    gap:22px;
    grid-template-columns:repeat(3,minmax(0,1fr));
    margin-top:44px;
    width:100%;
}

.eg-reviews-grid [data-loop-clone]{
    display:none;
}

.eg-reviews-grid .eg-review-card{
    width:100%;
}

.eg-review-card{
    background:#fffdf8;
    border:1px solid rgba(221,207,178,.7);
    border-top:4px solid var(--sage);
    border-radius:var(--radius);
    box-shadow:0 18px 46px rgba(4,15,10,.24);
    display:flex;
    flex-direction:column;
    min-height:310px;
    overflow:hidden;
    padding:30px;
    position:relative;
    transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease;
}

.eg-review-card::before{
    color:rgba(35,67,43,.1);
    content:"\201C";
    font-family:Georgia,serif;
    font-size:92px;
    line-height:1;
    position:absolute;
    right:20px;
    top:8px;
}

.eg-review-card:hover{
    border-color:var(--beige);
    box-shadow:0 24px 58px rgba(4,15,10,.3);
    transform:translateY(-6px);
}

.eg-review-stars{
    color:#d9a72e;
    font-size:16px;
    letter-spacing:2px;
    margin-bottom:16px;
}

.eg-review-card p{
    color:#49584d;
    font-size:16px;
    line-height:1.8;
    margin:0;
    position:relative;
    z-index:1;
}

.eg-review-author{
    align-items:center;
    border-top:1px solid rgba(35,67,43,.12);
    display:grid;
    gap:2px 12px;
    grid-template-columns:46px 1fr;
    margin-top:auto;
    padding-top:22px;
}

.eg-review-author span{
    align-items:center;
    background:var(--primary);
    border-radius:999px;
    color:#fff;
    display:flex;
    font-weight:800;
    grid-row:span 2;
    height:46px;
    justify-content:center;
    width:46px;
}

.eg-review-author strong{
    color:var(--primary);
}

.eg-review-author small{
    color:var(--muted);
}

.eg-about-hero{
    background:
        linear-gradient(90deg,rgba(250,249,245,.96) 0%,rgba(250,249,245,.9) 48%,rgba(221,232,216,.78) 100%),
        url("assets/images/product-leaf-logo-full.png") center right/contain no-repeat;
    border-bottom:1px solid var(--line);
    overflow:hidden;
    padding:72px 0 86px;
}

.eg-about-hero-grid{
    align-items:center;
    display:grid;
    gap:56px;
    grid-template-columns:1.04fr .96fr;
}

.eg-about-hero-copy .eg-title{
    font-size:clamp(42px,6.2vw,82px);
    letter-spacing:0;
    line-height:.98;
    max-width:820px;
}

.eg-about-hero-actions,
.eg-about-hero-pills{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
    margin-top:28px;
}

.eg-about-hero-pills span{
    background:rgba(255,255,255,.72);
    border:1px solid rgba(35,67,43,.16);
    border-radius:999px;
    color:var(--primary);
    font-size:13px;
    font-weight:800;
    padding:10px 14px;
}

.eg-about-hero-media{
    min-height:520px;
    position:relative;
}

.eg-about-hero-card{
    align-items:center;
    background:linear-gradient(145deg,#efe6d3 0%,#faf9f5 52%,#dfe9d9 100%);
    border:1px solid rgba(35,67,43,.16);
    border-radius:18px;
    box-shadow:0 26px 70px rgba(22,51,36,.16);
    display:flex;
    inset:0 48px 0 0;
    justify-content:center;
    overflow:hidden;
    padding:36px;
    position:absolute;
}

.eg-about-hero-card img{
    filter:drop-shadow(0 22px 34px rgba(22,51,36,.2));
    max-height:460px;
    object-fit:contain;
    transition:opacity .28s ease,transform .28s ease;
    width:100%;
}

.eg-about-hero-card.is-changing img{
    opacity:0;
    transform:translateY(20px) scale(.96);
}

.eg-about-float{
    background:var(--primary);
    border-radius:999px;
    bottom:26px;
    box-shadow:0 16px 36px rgba(22,51,36,.2);
    color:var(--white);
    font-size:13px;
    font-weight:800;
    left:28px;
    letter-spacing:.08em;
    padding:12px 18px;
    position:absolute;
    text-transform:uppercase;
}

.eg-about-leaf-mark{
    align-items:center;
    background:rgba(250,249,245,.88);
    border:1px solid rgba(35,67,43,.16);
    border-radius:16px;
    box-shadow:0 18px 44px rgba(22,51,36,.14);
    display:flex;
    height:160px;
    justify-content:center;
    padding:18px;
    position:absolute;
    right:0;
    top:44px;
    width:160px;
}

.eg-about-leaf-mark img{
    height:100%;
    object-fit:contain;
    width:100%;
}

.eg-about-strip{
    background:linear-gradient(180deg,var(--white) 0%,#eef5ee 100%);
}

.eg-about-intro-grid{
    align-items:end;
    display:grid;
    gap:42px;
    grid-template-columns:1.1fr .9fr;
}

.eg-about-intro-grid .eg-section-title{
    text-align:left;
}

.eg-about-stats{
    display:grid;
    gap:14px;
}

.eg-about-stats div{
    align-items:center;
    background:#fffdf8;
    border:1px solid rgba(35,67,43,.14);
    border-radius:14px;
    box-shadow:0 10px 28px rgba(22,51,36,.07);
    display:flex;
    gap:16px;
    padding:18px;
}

.eg-about-stats strong{
    color:var(--secondary);
    font-family:"Playfair Display",Georgia,serif;
    font-size:32px;
    line-height:1;
}

.eg-about-stats span{
    color:var(--primary);
    font-weight:800;
}

.eg-about-values{
    display:grid;
    gap:20px;
    grid-template-columns:repeat(3,1fr);
    margin-top:44px;
}

.eg-about-values article{
    background:linear-gradient(180deg,#fffdf8 0%,#f5f8f1 100%);
    border:1px solid rgba(35,67,43,.16);
    border-radius:16px;
    box-shadow:0 12px 34px rgba(22,51,36,.08);
    padding:26px;
    transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease;
}

.eg-about-values article:hover{
    border-color:rgba(35,67,43,.34);
    box-shadow:0 18px 44px rgba(22,51,36,.13);
    transform:translateY(-5px);
}

.eg-about-values article > span{
    align-items:center;
    background:var(--primary);
    border-radius:999px;
    color:var(--white);
    display:inline-flex;
    height:54px;
    justify-content:center;
    margin-bottom:18px;
    width:54px;
}

.eg-about-values svg{
    height:25px;
    width:25px;
}

.eg-about-values h3,
.eg-process-grid h3{
    color:var(--primary);
    font-size:22px;
    margin-bottom:10px;
}

.eg-about-values p,
.eg-process-grid p{
    color:var(--muted);
}

.eg-about-story{
    display:grid;
    gap:26px;
    margin-top:46px;
}

.eg-about-panel{
    align-items:center;
    background:rgba(255,253,248,.92);
    border:1px solid rgba(35,67,43,.15);
    border-radius:18px;
    box-shadow:0 16px 44px rgba(22,51,36,.09);
    display:grid;
    gap:34px;
    grid-template-columns:.9fr 1.1fr;
    overflow:hidden;
    padding:24px;
}

.eg-about-panel.is-reversed{
    grid-template-columns:1.1fr .9fr;
}

.eg-about-panel.is-reversed .eg-about-image{
    order:2;
}

.eg-about-image{
    align-items:center;
    background:linear-gradient(145deg,#e4dcc9 0%,#fbfaf6 56%,#dbe8d5 100%);
    border:1px solid rgba(35,67,43,.12);
    border-radius:14px;
    display:flex;
    justify-content:center;
    min-height:360px;
    overflow:hidden;
}

.eg-about-image img{
    height:100%;
    max-height:370px;
    object-fit:contain;
    padding:24px;
    transition:transform .35s ease;
    width:100%;
}

.eg-about-panel:hover .eg-about-image img{
    transform:scale(1.04);
}

.eg-about-content{
    padding:10px 12px;
}

.eg-about-content h3{
    color:var(--primary);
    font-size:clamp(30px,3vw,46px);
    margin-bottom:14px;
}

.eg-about-content p{
    color:var(--muted);
    margin:0 0 14px;
}

.eg-about-process{
    background:linear-gradient(180deg,#eef5ee 0%,var(--cream) 100%);
}

.eg-process-grid{
    display:grid;
    gap:18px;
    grid-template-columns:repeat(4,1fr);
    margin-top:40px;
}

.eg-process-grid article{
    background:#fffdf8;
    border:1px solid rgba(35,67,43,.15);
    border-radius:16px;
    box-shadow:0 10px 30px rgba(22,51,36,.07);
    padding:24px;
}

.eg-process-grid strong{
    color:var(--sage);
    display:block;
    font-family:"Playfair Display",Georgia,serif;
    font-size:40px;
    line-height:1;
    margin-bottom:18px;
}

.eg-about-cta{
    background:var(--primary);
    color:var(--white);
    overflow:hidden;
    position:relative;
}

.eg-about-cta::after{
    background:url("assets/images/logo-white.png") center/contain no-repeat;
    content:"";
    height:260px;
    opacity:.1;
    position:absolute;
    right:4%;
    top:50%;
    transform:translateY(-50%);
    width:360px;
}

.eg-about-cta-grid{
    align-items:center;
    display:grid;
    gap:34px;
    grid-template-columns:1fr auto;
    position:relative;
    z-index:1;
}

.eg-about-cta .eg-eyebrow,
.eg-about-cta .eg-section-title,
.eg-about-cta .eg-lead{
    color:var(--white);
    text-align:left;
}

.eg-about-cta .eg-lead{
    color:rgba(255,255,255,.76);
}

.eg-about-cta .eg-btn{
    background:var(--white);
    border-color:var(--white);
    color:var(--primary);
}

.eg-story-grid{
    display:grid;
    gap:16px;
    grid-template-columns:1.05fr .95fr 1.05fr;
    margin-top:34px;
}

.eg-story-card{
    border-radius:var(--radius);
    min-height:250px;
    overflow:hidden;
    position:relative;
}

.eg-story-card img{
    height:100%;
    object-fit:cover;
    width:100%;
}

.eg-story-card .eg-overlay{
    background:linear-gradient(0deg,rgba(22,51,36,.78),transparent);
    bottom:0;
    color:#fff;
    left:0;
    padding:18px;
    position:absolute;
    right:0;
}

.eg-newsletter{
    background:var(--primary);
    color:#fff;
    overflow:hidden;
    position:relative;
}

.eg-newsletter .eg-section-title,
.eg-newsletter h2{color:#fff;text-align:left}

.eg-newsletter .eg-lead{color:rgba(255,255,255,.72)}

.eg-newsletter-grid{
    align-items:center;
    display:grid;
    gap:40px;
    grid-template-columns:1fr 1fr;
}

.eg-form-row{
    background:rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.28);
    border-radius:10px;
    display:flex;
    gap:10px;
    padding:8px;
}

.eg-form-row input{
    background:transparent;
    border:0;
    color:#fff;
    flex:1;
    min-height:44px;
    outline:0;
    padding:0 12px;
}

.eg-form-row input::placeholder{color:rgba(255,255,255,.66)}

.eg-form-row .eg-btn{
    background:var(--white);
    border-color:var(--white);
    color:var(--primary);
}

.eg-main-footer{
    background:
        url("assets/images/logo-leaf.png") right -42px center/480px auto no-repeat,
        linear-gradient(90deg,rgba(22,51,36,.95),rgba(35,67,43,.88)),
        var(--primary);
    color:#fff;
    overflow:hidden;
    padding:54px 0;
    position:relative;
}

.eg-main-footer:before{
    background:url("assets/images/logo-leaf.png") left top/100% auto no-repeat;
    content:"";
    height:180px;
    left:clamp(18px,6vw,90px);
    opacity:.12;
    position:absolute;
    top:24px;
    transform:rotate(-18deg);
    width:180px;
}

.eg-main-footer:after{
    background:url("assets/images/logo-leaf.png") center/100% auto no-repeat;
    bottom:-78px;
    content:"";
    height:390px;
    opacity:.22;
    position:absolute;
    right:clamp(-20px,4vw,70px);
    transform:rotate(17deg);
    width:390px;
}

.eg-main-footer-grid{
    align-items:center;
    display:grid;
    gap:42px;
    grid-template-columns:minmax(260px,1fr) minmax(360px,1.2fr);
    position:relative;
    z-index:1;
}

.eg-main-footer-brand .eg-brand{
    color:#fff;
    margin-bottom:14px;
}

.eg-main-footer-brand .eg-brand img{
    max-height:70px;
}

.eg-main-footer-brand p{
    color:rgba(255,255,255,.74);
    margin:0;
    max-width:440px;
}

.eg-main-footer-links{
    display:grid;
    gap:12px 20px;
    grid-template-columns:repeat(2,minmax(0,1fr));
}

.eg-main-footer-links a{
    background:transparent;
    border:1px solid rgba(250,249,245,.34);
    border-radius:8px;
    color:#fff;
    font-weight:700;
    padding:12px 14px;
    transition:background .2s ease,border-color .2s ease,transform .2s ease;
}

.eg-main-footer-links a:hover{
    background:rgba(250,249,245,.12);
    border-color:rgba(250,249,245,.58);
    transform:translateY(-1px);
}

.eg-footer{
    background:#101a14;
    color:rgba(255,255,255,.72);
    padding:8px 0;
}

.eg-footer-grid{
    align-items:center;
    display:grid;
    gap:20px;
    grid-template-columns:1fr auto 1fr;
    min-height:32px;
}

.eg-footer-logo{
    align-items:center;
    display:inline-flex;
    justify-self:start;
}

.eg-footer-logo img{
    height:42px;
    width:auto;
}

.eg-footer-copy{
    margin:0;
    text-align:center;
}

.eg-footer-links{
    align-items:center;
    display:flex;
    gap:16px;
    justify-content:flex-end;
}

.eg-footer-links a{
    color:rgba(255,255,255,.78);
    font-size:14px;
    transition:color .2s ease;
}

.eg-footer-links a:hover{
    color:#fff;
}

.eg-page-hero{
    padding:58px 0 26px;
}

.eg-about-simple-hero{
    background:linear-gradient(180deg,var(--white) 0%,var(--cream) 100%);
    border-bottom:1px solid var(--line);
    padding:68px 0 48px;
}

.eg-about-simple-hero .eg-title{
    font-size:clamp(42px,5vw,72px);
    margin-inline:auto;
    max-width:860px;
}

.eg-about-simple-hero .eg-lead{
    max-width:760px;
}

.eg-shop-layout{
    padding:34px 0 80px;
}

.eg-shop-main{
    width:100%;
}

.eg-product-search{
    align-items:center;
    background:rgba(250,249,245,.9);
    border:1px solid var(--line);
    border-radius:12px;
    box-shadow:0 4px 16px rgba(0,0,0,.04);
    color:var(--primary);
    display:flex;
    gap:12px;
    margin:0 0 26px;
    max-width:620px;
    padding:12px 16px;
}

.eg-product-search svg{
    flex:0 0 auto;
    height:22px;
    width:22px;
}

.eg-product-search input{
    background:transparent;
    border:0;
    color:var(--text);
    min-height:34px;
    outline:0;
    width:100%;
}

.eg-product-search input::placeholder{
    color:var(--muted);
}

.eg-search-empty{
    background:var(--mint);
    border:1px solid var(--line);
    border-radius:8px;
    color:var(--primary);
    display:none;
    font-weight:800;
    margin:24px 0 0;
    padding:16px;
    text-align:center;
}

.eg-search-empty.is-visible{
    display:block;
}

.eg-shop-grid{
    display:grid;
    gap:22px;
    grid-template-columns:repeat(3,minmax(0,1fr));
}

.eg-product-page{
    display:grid;
    gap:56px;
    grid-template-columns:1.04fr .96fr;
    padding:54px 0 90px;
}

.eg-gallery{
    display:grid;
    gap:14px;
    grid-template-columns:96px 1fr;
}

.eg-gallery-main{
    align-items:center;
    background:#ded4c5;
    border:1px solid var(--line);
    border-radius:var(--radius-lg);
    display:flex;
    justify-content:center;
    min-height:620px;
    overflow:hidden;
}

.eg-gallery-main img{
    height:100%;
    object-fit:cover;
    width:100%;
}

.eg-product-info h1{font-size:clamp(42px,4vw,64px)}

.eg-product-meta{
    align-items:center;
    border-bottom:1px solid var(--line);
    display:flex;
    gap:24px;
    margin:20px 0 26px;
    padding-bottom:22px;
}

.eg-detail-grid{
    border-bottom:1px solid var(--line);
    display:grid;
    gap:24px;
    grid-template-columns:repeat(3,1fr);
    margin:26px 0;
    padding-bottom:28px;
}

.eg-detail{
    text-align:center;
}

.eg-detail span{
    align-items:center;
    border:1px solid var(--primary);
    border-radius:999px;
    color:var(--primary);
    display:inline-flex;
    height:46px;
    justify-content:center;
    margin-bottom:10px;
    width:46px;
}

.eg-product-quantity{
    align-items:center;
    border-bottom:1px solid var(--line);
    border-top:1px solid var(--line);
    display:flex;
    gap:18px;
    justify-content:space-between;
    margin:26px 0 22px;
    padding:18px 0;
}

.eg-product-quantity label{
    color:var(--primary);
    font-weight:800;
}

.eg-quantity-stepper{
    align-items:center;
    background:var(--white);
    border:1px solid rgba(35,67,43,.18);
    border-radius:999px;
    box-shadow:0 8px 22px rgba(22,51,36,.06);
    display:inline-flex;
    overflow:hidden;
}

.eg-quantity-stepper button{
    align-items:center;
    background:transparent;
    border:0;
    color:var(--primary);
    cursor:pointer;
    display:flex;
    font-size:22px;
    font-weight:800;
    height:46px;
    justify-content:center;
    transition:background .2s ease,color .2s ease;
    width:48px;
}

.eg-quantity-stepper button:hover{
    background:var(--primary);
    color:var(--white);
}

.eg-quantity-stepper input{
    appearance:textfield;
    background:transparent;
    border:0;
    border-left:1px solid var(--line);
    border-right:1px solid var(--line);
    color:var(--primary);
    font:800 16px/1 Inter,sans-serif;
    height:46px;
    outline:0;
    text-align:center;
    width:62px;
}

.eg-quantity-stepper input::-webkit-inner-spin-button,
.eg-quantity-stepper input::-webkit-outer-spin-button{
    appearance:none;
    margin:0;
}

.eg-quick-quantity{
    align-items:center;
    background:#fffdf8;
    border:1px solid rgba(35,67,43,.16);
    border-radius:12px;
    box-shadow:0 12px 30px rgba(22,51,36,.09);
    display:none;
    gap:12px;
    justify-content:space-between;
    margin-top:12px;
    padding:12px;
}

.eg-quick-quantity.is-open{
    display:flex;
}

.eg-quick-quantity > span{
    color:var(--primary);
    font-size:13px;
    font-weight:800;
}

.eg-quick-quantity .eg-quantity-stepper{
    box-shadow:none;
}

.eg-quick-quantity .eg-quantity-stepper button{
    height:38px;
    width:40px;
}

.eg-quick-quantity .eg-quantity-stepper input{
    height:38px;
    width:50px;
}

.eg-quick-quantity .eg-btn{
    min-height:38px;
    padding:8px 14px;
}

.eg-popup-open{
    overflow:hidden;
}

.eg-cart-popup{
    align-items:center;
    background:rgba(16,26,20,.54);
    backdrop-filter:blur(10px);
    display:flex;
    inset:0;
    justify-content:center;
    opacity:0;
    padding:24px;
    pointer-events:none;
    position:fixed;
    transition:opacity .22s ease;
    z-index:1000;
}

.eg-cart-popup.is-open{
    opacity:1;
    pointer-events:auto;
}

.eg-cart-popup-panel{
    background:linear-gradient(180deg,#fffdf8 0%,#f4f8f0 100%);
    border:1px solid rgba(35,67,43,.18);
    border-radius:16px;
    box-shadow:0 28px 70px rgba(16,26,20,.28);
    max-width:460px;
    padding:34px;
    position:relative;
    text-align:center;
    transform:translateY(14px) scale(.98);
    transition:transform .22s ease;
    width:min(100%,460px);
}

.eg-cart-popup.is-open .eg-cart-popup-panel{
    transform:translateY(0) scale(1);
}

.eg-cart-popup-close{
    align-items:center;
    background:rgba(35,67,43,.08);
    border:1px solid rgba(35,67,43,.12);
    border-radius:999px;
    color:var(--primary);
    cursor:pointer;
    display:inline-flex;
    font-size:24px;
    height:36px;
    justify-content:center;
    line-height:1;
    position:absolute;
    right:16px;
    top:16px;
    width:36px;
}

.eg-cart-popup-close:hover{
    background:var(--primary);
    color:#fff;
}

.eg-cart-popup-icon{
    align-items:center;
    background:var(--primary);
    border-radius:999px;
    box-shadow:0 10px 22px rgba(35,67,43,.18);
    color:#fff;
    display:inline-flex;
    height:50px;
    justify-content:center;
    margin-bottom:14px;
    width:50px;
}

.eg-cart-popup-icon svg{
    height:24px;
    width:24px;
}

.eg-cart-popup h2{
    font-size:clamp(30px,3vw,42px);
    margin:8px 0 12px;
}

.eg-cart-popup p{
    color:var(--muted);
    margin:0 auto 24px;
    max-width:350px;
}

.eg-cart-popup-actions{
    display:grid;
    gap:10px;
    grid-template-columns:1fr 1fr;
}

.eg-cart-popup-actions .eg-btn:first-child{
    grid-column:1/-1;
}

.eg-sticky-summary{
    align-items:center;
    background:rgba(250,249,245,.94);
    border:1px solid var(--line);
    border-radius:var(--radius);
    bottom:24px;
    box-shadow:var(--shadow);
    display:flex;
    gap:20px;
    justify-content:space-between;
    padding:14px 16px 14px 20px;
    position:sticky;
}

.eg-product-experience{
    background:linear-gradient(180deg,var(--white) 0%,#eef5ee 100%);
    border-top:1px solid var(--line);
}

.eg-product-tabs{
    background:#fffdf8;
    border:1px solid rgba(35,67,43,.15);
    border-radius:18px;
    box-shadow:0 18px 46px rgba(22,51,36,.1);
    margin:38px auto 0;
    max-width:920px;
    overflow:hidden;
    padding:18px;
}

.eg-tab-buttons{
    background:var(--mint);
    border:1px solid rgba(35,67,43,.12);
    border-radius:14px;
    display:grid;
    gap:8px;
    grid-template-columns:repeat(3,1fr);
    padding:8px;
}

.eg-tab-buttons button{
    background:transparent;
    border:0;
    border-radius:10px;
    color:var(--primary);
    cursor:pointer;
    font-weight:800;
    min-height:46px;
    padding:10px 14px;
    transition:background .22s ease,box-shadow .22s ease,color .22s ease;
}

.eg-tab-buttons button.is-active,
.eg-tab-buttons button:hover{
    background:var(--primary);
    box-shadow:0 10px 24px rgba(22,51,36,.16);
    color:var(--white);
}

.eg-tab-panels{
    min-height:230px;
    position:relative;
}

.eg-tab-panel{
    display:none;
    padding:34px 18px 18px;
    text-align:center;
}

.eg-tab-panel.is-active{
    animation:egPanelIn .28s ease both;
    display:block;
}

.eg-tab-panel > span{
    align-items:center;
    background:var(--primary);
    border-radius:999px;
    color:var(--white);
    display:inline-flex;
    height:58px;
    justify-content:center;
    margin-bottom:18px;
    width:58px;
}

.eg-tab-panel svg{
    height:26px;
    width:26px;
}

.eg-tab-panel h3{
    color:var(--primary);
    font-size:clamp(24px,2.5vw,34px);
    margin-bottom:10px;
}

.eg-tab-panel p{
    color:var(--muted);
    margin-inline:auto;
    max-width:660px;
}

.eg-product-orbit{
    background:radial-gradient(circle at center,#fffdf8 0%,#f5f8f1 45%,#dde8d8 100%);
    aspect-ratio:1/1;
    border-radius:50%;
    display:grid;
    min-height:0;
    overflow:visible;
    padding:0;
    place-items:center;
    position:relative;
    width:min(100%,560px);
}

.eg-product-orbit::before{
    border:1px dashed rgba(35,67,43,.24);
    border-radius:50%;
    content:"";
    inset:40px;
    position:absolute;
    transform:rotate(0deg);
    transform-origin:center;
}

.eg-product-orbit.is-spinning::before{
    animation:egOrbitSpin .85s ease both;
}

.eg-product-orbit .eg-orbit-center{
    align-items:center;
    background:#fffdf8;
    border:1px solid rgba(35,67,43,.16);
    border-radius:50%;
    box-shadow:0 22px 58px rgba(22,51,36,.14);
    display:flex;
    height:min(38vw,270px);
    justify-content:center;
    min-height:0;
    padding:26px;
    transition:box-shadow .25s ease,transform .25s ease;
    width:min(38vw,270px);
    z-index:2;
}

.eg-product-orbit.is-spinning .eg-orbit-center{
    animation:egOrbitPulse .55s ease both;
    box-shadow:0 28px 70px rgba(22,51,36,.2);
}

.eg-product-orbit .eg-tab-panel{
    padding:0;
}

.eg-product-orbit .eg-tab-panel h3{
    font-size:clamp(18px,1.8vw,24px);
}

.eg-product-orbit .eg-tab-panel p{
    font-size:13px;
    line-height:1.5;
    max-width:220px;
}

.eg-product-orbit .eg-tab-buttons{
    background:transparent;
    border:0;
    display:block;
    inset:0;
    padding:0;
    position:absolute;
    z-index:3;
}

.eg-product-orbit .eg-tab-buttons button{
    align-items:center;
    background:#fffdf8;
    border:1px solid rgba(35,67,43,.18);
    border-radius:999px;
    box-shadow:0 14px 34px rgba(22,51,36,.12);
    display:flex;
    height:106px;
    justify-content:center;
    min-height:0;
    padding:14px;
    position:absolute;
    text-align:center;
    width:106px;
}

.eg-product-orbit .eg-tab-buttons button:nth-child(1){
    left:50%;
    top:18px;
    transform:translateX(-50%);
}

.eg-product-orbit .eg-tab-buttons button:nth-child(2){
    bottom:58px;
    left:28px;
}

.eg-product-orbit .eg-tab-buttons button:nth-child(3){
    bottom:58px;
    right:28px;
}

.eg-product-orbit .eg-tab-buttons button.is-active,
.eg-product-orbit .eg-tab-buttons button:hover{
    background:var(--primary);
    border-color:var(--primary);
    color:var(--white);
}

.eg-product-upsell{
    background:linear-gradient(180deg,#eef5ee 0%,var(--cream) 100%);
}

.eg-upsell-head{
    align-items:end;
    display:flex;
    gap:24px;
    justify-content:space-between;
    margin-bottom:30px;
}

.eg-upsell-head .eg-section-title{
    margin-bottom:0;
    text-align:left;
}

.eg-upsell-grid .eg-product-card{
    box-shadow:0 16px 42px rgba(22,51,36,.1);
}

@keyframes egPanelIn{
    from{opacity:0;transform:translateY(10px)}
    to{opacity:1;transform:translateY(0)}
}

@keyframes egOrbitSpin{
    from{transform:rotate(0deg)}
    to{transform:rotate(360deg)}
}

@keyframes egOrbitPulse{
    0%{transform:scale(1)}
    45%{transform:scale(1.035)}
    100%{transform:scale(1)}
}

.eg-cart-layout,
.eg-checkout-layout,
.eg-contact-grid{
    display:grid;
    gap:34px;
    grid-template-columns:1fr 380px;
    padding:36px 0 80px;
}

.eg-cart-upsell{
    background:linear-gradient(180deg,var(--white) 0%,var(--cream) 100%);
    overflow:hidden;
}

.eg-cart-upsell-window{
    margin-top:10px;
    overflow:hidden;
    padding:8px 0 18px;
    position:relative;
}

.eg-cart-upsell-window::before,
.eg-cart-upsell-window::after{
    content:"";
    height:100%;
    pointer-events:none;
    position:absolute;
    top:0;
    width:min(140px,18vw);
    z-index:2;
}

.eg-cart-upsell-window::before{
    background:linear-gradient(90deg,var(--cream),transparent);
    left:0;
}

.eg-cart-upsell-window::after{
    background:linear-gradient(270deg,var(--cream),transparent);
    right:0;
}

.eg-cart-upsell-track{
    animation:egCartUpsellMarquee 34s linear infinite;
    display:flex;
    gap:22px;
    width:max-content;
    will-change:transform;
}

.eg-cart-upsell-window:hover .eg-cart-upsell-track{
    animation-play-state:paused;
}

.eg-cart-upsell-group{
    display:grid;
    flex:0 0 auto;
    gap:22px;
    grid-template-columns:repeat(3,minmax(0,1fr));
    padding-right:22px;
    width:min(1180px,calc(100vw - 48px));
}

.eg-cart-upsell-card{
    min-width:0;
}

.eg-cart-upsell-card .eg-card-media{
    aspect-ratio:1.18/1;
}

@keyframes egCartUpsellMarquee{
    from{transform:translate3d(0,0,0)}
    to{transform:translate3d(-50%,0,0)}
}

.eg-table-row{
    align-items:center;
    border-bottom:1px solid var(--line);
    display:grid;
    gap:18px;
    grid-template-columns:90px minmax(0,1fr) auto;
    padding:18px;
}

.eg-table-row img{
    aspect-ratio:1/1;
    border-radius:8px;
    height:90px;
    object-fit:cover;
    width:90px;
}

.eg-cart-item-image{
    border-radius:8px;
    display:block;
    overflow:hidden;
}

.eg-table-row > div{
    min-width:0;
}

.eg-cart-item-title{
    color:#111;
    display:inline-block;
    transition:color .2s ease;
}

.eg-cart-item-title:hover{
    color:var(--primary);
}

.eg-table-row strong{
    display:block;
    line-height:1.3;
    overflow-wrap:anywhere;
}

.eg-table-row span{
    color:var(--muted);
}

.eg-cart-row-actions{
    align-items:center;
    display:flex;
    gap:10px;
    justify-content:flex-end;
}

.eg-cart-quantity{
    box-shadow:none;
}

.eg-cart-quantity button{
    height:40px;
    width:40px;
}

.eg-cart-quantity input{
    height:40px;
    width:50px;
}

.eg-cart-trash{
    align-items:center;
    background:#fffdf8;
    border:1px solid rgba(35,67,43,.18);
    border-radius:999px;
    color:var(--primary);
    cursor:pointer;
    display:inline-flex;
    flex:0 0 auto;
    height:42px;
    justify-content:center;
    transition:background .2s ease,color .2s ease,transform .2s ease;
    width:42px;
}

.eg-cart-trash svg{
    height:20px;
    width:20px;
}

.eg-cart-trash:hover{
    background:var(--primary);
    color:#fff;
    transform:translateY(-1px);
}

.eg-summary-box,
.eg-form-box{
    background:var(--white);
    border:1px solid var(--line);
    border-radius:var(--radius);
    box-shadow:var(--soft-shadow);
    padding:22px;
}

.eg-legal-content{
    display:grid;
    gap:24px;
}

.eg-legal-video-section{
    background:linear-gradient(180deg,var(--cream),var(--white));
}

.eg-legal-video-grid{
    align-items:center;
    display:grid;
    gap:48px;
    grid-template-columns:minmax(240px,360px) minmax(0,1fr);
}

.eg-legal-content .eg-summary-box h2{
    margin-bottom:12px;
}

.eg-legal-content .eg-summary-box p:last-child{
    margin-bottom:0;
}

.eg-certification-page-logo{
    height:120px;
    margin:0 auto 18px;
    object-fit:contain;
    width:150px;
}

.eg-cart-policy-note,
.eg-checkout-policy{
    color:var(--muted);
    font-size:13px;
    line-height:1.6;
}

.eg-payment-methods{
    display:grid;
    gap:12px;
    margin:20px 0;
    padding:0;
    border:0;
}

.eg-payment-methods legend{
    margin-bottom:4px;
    color:var(--primary);
    font-weight:800;
}

.eg-payment-option{
    display:flex;
    align-items:flex-start;
    gap:12px;
    padding:15px;
    border:1px solid var(--line);
    border-radius:12px;
    background:#fff;
    cursor:pointer;
}

.eg-payment-option:has(input:checked){
    border-color:var(--primary);
    background:var(--mint);
}

.eg-payment-option input{
    margin-top:4px;
}

.eg-payment-option span,
.eg-nayapay-details{
    display:grid;
    gap:4px;
}

.eg-payment-option small{
    color:var(--muted);
}

.eg-nayapay-details{
    padding:16px;
    border:1px solid rgba(35,67,43,.2);
    border-radius:12px;
    background:var(--mint);
}

.eg-nayapay-details[hidden]{
    display:none;
}

.eg-payment-warning{
    color:#9d2b20;
    font-weight:700;
}

.eg-cookie-consent{
    position:fixed;
    z-index:10000;
    right:20px;
    bottom:20px;
    left:20px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:22px;
    max-width:1040px;
    margin:auto;
    padding:18px;
    border:1px solid rgba(35,67,43,.2);
    border-radius:16px;
    background:#fffdf8;
    box-shadow:0 18px 55px rgba(22,51,36,.2);
    color:var(--text);
}

.eg-cookie-consent[hidden]{
    display:none;
}

.eg-cookie-consent strong{
    color:var(--primary);
    font-size:17px;
}

.eg-cookie-consent p{
    margin:5px 0 0;
    color:var(--muted);
    font-size:13px;
    line-height:1.55;
}

.eg-cookie-consent a{
    color:var(--primary);
    font-weight:700;
}

.eg-cookie-actions{
    display:flex;
    flex:0 0 auto;
    gap:10px;
}

.eg-cookie-settings-link{
    padding:0;
    border:0;
    background:transparent;
    color:inherit;
    cursor:pointer;
    font:inherit;
}

@media (max-width:720px){
    .eg-cookie-consent{
        align-items:stretch;
        flex-direction:column;
        right:10px;
        bottom:10px;
        left:10px;
    }
    .eg-cookie-actions{
        display:grid;
        grid-template-columns:1fr;
    }
    .eg-cookie-actions .eg-btn{
        width:100%;
    }
}

.eg-place-order:disabled{
    cursor:not-allowed;
    opacity:.55;
}

.eg-cart-policy-note a,
.eg-checkout-policy a{
    color:var(--primary);
    font-weight:700;
    text-decoration:underline;
    text-underline-offset:3px;
}

.eg-checkout-layout{
    align-items:start;
}

.eg-checkout-layout .eg-summary-box{
    position:sticky;
    top:24px;
}

.eg-checkout-heading{
    border-bottom:1px solid var(--line);
    margin-bottom:20px;
    padding-bottom:18px;
}

.eg-checkout-heading h2,
.eg-summary-box h2{
    margin-bottom:8px;
}

.eg-checkout-heading p{
    color:var(--muted);
    margin:0;
}

.eg-optional{
    color:var(--muted);
    font-weight:500;
}

.eg-required{
    color:#b3261e;
    font-weight:900;
}

.eg-checkout-total{
    align-items:center;
    border-bottom:1px solid var(--line);
    border-top:1px solid var(--line);
    display:flex;
    font-size:16px;
    justify-content:space-between;
    margin:18px 0;
    padding:16px 0;
}

.eg-checkout-total strong{
    color:var(--primary);
    font-size:20px;
}

.eg-checkout-trust{
    display:grid;
    gap:10px;
    list-style:none;
    margin:18px 0 0;
    padding:0;
}

.eg-checkout-trust li{
    align-items:center;
    color:var(--muted);
    display:flex;
    font-size:14px;
    gap:9px;
}

.eg-checkout-trust span,
.eg-checkout-assurance span{
    align-items:center;
    background:var(--mint);
    border-radius:999px;
    color:var(--primary);
    display:inline-flex;
    flex:0 0 auto;
    font-size:11px;
    font-weight:900;
    height:20px;
    justify-content:center;
    width:20px;
}

.eg-place-order{
    font-size:16px;
    min-height:50px;
    width:100%;
}

.eg-checkout-assurance{
    align-items:center;
    color:var(--muted);
    display:flex;
    font-size:12px;
    gap:8px;
    justify-content:center;
    margin:10px 0 0;
    text-align:center;
}

.eg-delivery-note{
    background:var(--mint);
    border:1px solid rgba(35,67,43,.14);
    border-radius:10px;
    color:var(--primary);
    font-size:14px;
    line-height:1.45;
    padding:12px 14px;
}

.eg-input-grid{
    display:grid;
    gap:14px;
    grid-template-columns:1fr 1fr;
}

.eg-field{margin-bottom:14px}

.eg-field label{
    display:block;
    font-size:13px;
    font-weight:700;
    margin-bottom:6px;
}

.eg-field input,
.eg-field select,
.eg-field textarea{
    background:#fff;
    border:1px solid var(--line);
    border-radius:8px;
    min-height:44px;
    outline:0;
    padding:10px 12px;
    width:100%;
}

.eg-field input:focus,
.eg-field select:focus,
.eg-field textarea:focus{
    border-color:rgba(35,67,43,.55);
    box-shadow:0 0 0 3px rgba(35,67,43,.08);
}

.eg-field.is-error label{
    color:#b3261e;
}

.eg-field.is-error input,
.eg-field.is-error select,
.eg-field.is-error textarea,
.eg-field input[aria-invalid="true"],
.eg-field select[aria-invalid="true"],
.eg-field textarea[aria-invalid="true"]{
    background:#fffafa;
    border-color:#c43d32;
    box-shadow:0 0 0 3px rgba(196,61,50,.12);
}

.eg-field textarea{min-height:136px;resize:vertical}

.eg-map{
    align-items:center;
    background:
        linear-gradient(90deg,rgba(35,67,43,.12) 1px,transparent 1px),
        linear-gradient(rgba(35,67,43,.12) 1px,transparent 1px),
        var(--mint);
    background-size:38px 38px;
    border-radius:var(--radius);
    display:flex;
    min-height:260px;
    justify-content:center;
}

.eg-map-pin{
    background:var(--primary);
    border-radius:999px;
    color:#fff;
    font-weight:800;
    padding:12px 16px;
}

.eg-template-note{
    background:var(--light-sage);
    border:1px solid var(--line);
    border-radius:var(--radius);
    color:var(--primary);
    margin:18px 0;
    padding:14px 16px;
}

.eg-editable{
    background:var(--white);
}

.eg-editable:empty{display:none}

.eg-editable .wp-block-heading,
.eg-editable h2,
.eg-editable h3{
    margin-bottom:14px;
}

.eg-editable p{
    color:var(--muted);
    max-width:780px;
}

.eg-editable .wp-block-image img{
    border-radius:var(--radius);
    box-shadow:var(--soft-shadow);
}

.eg-editable .wp-block-columns{
    gap:24px;
}

.eg-editable .wp-block-button__link{
    background:var(--primary);
    border-radius:8px;
    color:#fff;
    font-weight:700;
    padding:12px 22px;
}

.eg-form-message{
    color:var(--primary);
    font-weight:700;
    margin-top:12px;
}

.eg-form-message.is-success{
    color:#1d5b2c;
}

.eg-form-message.is-error{
    color:#9d2b20;
}

.eg-contact-honeypot{
    position:absolute !important;
    left:-10000px !important;
    width:1px !important;
    height:1px !important;
    overflow:hidden !important;
}

.eg-hidden-email-field{
    display:none;
}

.eg-order-confirmation{
    background:linear-gradient(180deg,#f4f8f0 0%,#fffdf8 100%);
    border:1px solid rgba(35,67,43,.18);
    border-radius:12px;
    box-shadow:0 10px 28px rgba(22,51,36,.08);
    color:var(--primary);
    display:grid;
    gap:6px;
    margin-top:16px;
    padding:16px;
}

.eg-order-confirmation[hidden]{
    display:none;
}

.eg-order-confirmation strong{
    font-size:17px;
}

.eg-order-confirmation span{
    color:var(--muted);
}

.eg-payment-confirmation-action{
    align-items:start;
    background:rgba(35,67,43,.06);
    border:1px solid rgba(35,67,43,.16);
    border-radius:10px;
    display:grid;
    gap:12px;
    margin-top:10px;
    padding:14px;
}

.eg-payment-confirmation-action .eg-btn{
    justify-self:start;
}

.eg-woocommerce-payment-confirmation{
    margin:24px 0;
}

.eg-order-number-confirmation{
    background:linear-gradient(180deg,#f4f8f0 0%,#fffdf8 100%);
    border:1px solid rgba(35,67,43,.18);
    border-radius:12px;
    display:grid;
    gap:8px;
    margin:24px 0;
    padding:20px;
}

.eg-order-number-confirmation span,
.eg-order-number-confirmation small{
    color:var(--muted);
}

.eg-order-number-confirmation strong{
    color:var(--primary);
    font-size:clamp(24px,4vw,38px);
    letter-spacing:.08em;
}

.eg-order-confirmation.is-error{
    background:#fff8f2;
    border-color:rgba(130,68,28,.2);
    color:#7a3f1c;
}

.eg-empty-cart{
    color:var(--muted);
    padding:24px;
}

.eg-elementor-content{
    min-height:40vh;
    width:100%;
}

.earth-greens-elementor-page #main{
    overflow:hidden;
}

/* Native WooCommerce integration */
.eg-woocommerce-section{background:var(--cream)}
.eg-woocommerce-section .woocommerce{color:var(--text)}
.woocommerce .woocommerce-breadcrumb{color:var(--muted);font-size:13px;margin-bottom:24px}
.woocommerce .woocommerce-breadcrumb a,.woocommerce a{color:var(--primary)}
.woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering{margin-bottom:28px}
.woocommerce .woocommerce-ordering select,
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.select2-container--default .select2-selection--single{
    background:#fffdf8;
    border:1px solid var(--line);
    border-radius:8px;
    min-height:46px;
    padding:10px 12px;
}
.woocommerce ul.products{
    display:grid;
    gap:24px;
    grid-template-columns:repeat(3,minmax(0,1fr));
    margin:0;
}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none}
.woocommerce ul.products li.product,.woocommerce-page ul.products li.product,
.woocommerce ul.products[class*="columns-"] li.product,.woocommerce-page ul.products[class*="columns-"] li.product{
    background:#fffdf8;
    border:1px solid var(--line);
    border-radius:var(--radius);
    box-shadow:var(--soft-shadow);
    float:none;
    margin:0;
    overflow:hidden;
    padding:18px;
    width:auto;
}
.woocommerce ul.products li.product a img{
    background:var(--mint);
    border-radius:10px;
    height:300px;
    margin:0 0 18px;
    object-fit:contain;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
    color:var(--primary);
    font-family:"Playfair Display",Georgia,serif;
    font-size:22px;
    padding:0;
}
.woocommerce ul.products li.product .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price{
    color:var(--primary);
    font-size:18px;
    font-weight:800;
}
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,
.woocommerce #respond input#submit,.woocommerce a.button.alt,
.woocommerce button.button.alt,.woocommerce input.button.alt{
    background:var(--primary);
    border-radius:8px;
    color:#fff;
    font-weight:800;
    padding:13px 18px;
}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,.woocommerce input.button.alt:hover{
    background:var(--secondary);
    color:#fff;
}
.woocommerce span.onsale{background:var(--primary);min-height:auto;min-width:auto;padding:4px 12px}
.woocommerce div.product{
    background:#fffdf8;
    border:1px solid var(--line);
    border-radius:var(--radius-lg);
    box-shadow:var(--shadow);
    padding:28px;
}
.woocommerce div.product .product_title{color:var(--primary);font-family:"Playfair Display",Georgia,serif}
.woocommerce div.product div.images img{background:var(--mint);border-radius:var(--radius)}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0}
.woocommerce div.product .woocommerce-tabs ul.tabs li{border-color:var(--line);border-radius:8px 8px 0 0}
.woocommerce table.shop_table,.woocommerce-checkout-review-order,
.woocommerce form.checkout_coupon,.woocommerce form.login,.woocommerce form.register,
.woocommerce-account .woocommerce-MyAccount-navigation,.woocommerce-account .woocommerce-MyAccount-content{
    background:#fffdf8;
    border:1px solid var(--line);
    border-radius:var(--radius);
    box-shadow:var(--soft-shadow);
    padding:22px;
}
.woocommerce table.shop_table{border-collapse:separate}
.woocommerce .cart-collaterals .cart_totals,.woocommerce-page .cart-collaterals .cart_totals{width:min(100%,520px)}
.woocommerce-info,.woocommerce-message,.woocommerce-error{background:#fffdf8;border-radius:8px;box-shadow:var(--soft-shadow)}
.woocommerce-info,.woocommerce-message{border-top-color:var(--primary)}
.woocommerce-message::before,.woocommerce-info::before{color:var(--primary)}
.woocommerce-checkout #payment{background:var(--mint);border:1px solid var(--line);border-radius:var(--radius)}
.woocommerce-account .woocommerce-MyAccount-navigation{float:left;width:28%}
.woocommerce-account .woocommerce-MyAccount-content{float:right;width:69%}

@media (max-width:1100px){
    .eg-product-grid,
    .eg-category-grid,
    .eg-reviews-grid,
    .eg-shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .eg-hero-grid,
    .eg-about-hero-grid,
    .eg-about-intro-grid,
    .eg-about-cta-grid,
    .eg-product-page,
    .eg-split,
    .eg-about-panel,
    .eg-about-panel.is-reversed,
    .eg-newsletter-grid,
    .eg-main-footer-grid,
    .eg-video-grid,
    .eg-legal-video-grid,
    .eg-cart-layout,
    .eg-checkout-layout,
    .eg-contact-grid{grid-template-columns:1fr}
    .eg-about-values,
    .eg-process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .eg-about-panel.is-reversed .eg-about-image{order:0}
    .eg-about-hero-media{min-height:460px}
    .eg-about-hero-card{inset:0}
    .eg-home-hero .eg-about-hero-grid{
        gap:22px;
    }
    .eg-home-hero .eg-about-hero-media{
        min-height:460px;
        order:1;
    }
    .eg-home-hero .eg-about-hero-copy{
        max-width:none;
        order:2;
    }
    .eg-home-hero .eg-about-hero-copy > .eg-eyebrow,
    .eg-home-hero .eg-about-hero-copy > .eg-title,
    .eg-home-hero .eg-about-hero-copy > .eg-lead,
    .eg-home-hero .eg-about-hero-pills{
        display:none;
    }
    .eg-home-hero .eg-about-hero-actions{
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        margin-top:0;
        width:100%;
    }
    .eg-home-hero .eg-about-hero-actions .eg-btn{
        width:100%;
    }
    .eg-hero-media{grid-template-columns:1fr}
    .eg-thumbs{grid-template-columns:repeat(4,1fr)}
    .eg-product-stage{min-height:420px}
    .eg-cart-layout{gap:24px;padding-bottom:64px}
    .eg-checkout-layout .eg-summary-box{
        order:-1;
        position:static;
    }
    .eg-cart-upsell-window{
        padding-inline:24px;
    }
    .eg-cart-upsell-window::before,
    .eg-cart-upsell-window::after{
        width:64px;
    }
    .eg-cart-upsell-group{
        display:flex;
        gap:18px;
        padding-right:18px;
        width:max-content;
    }
    .eg-cart-upsell-card{
        flex:0 0 clamp(240px,30vw,320px);
    }
    .woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}
    .woocommerce-account .woocommerce-MyAccount-navigation,
    .woocommerce-account .woocommerce-MyAccount-content{float:none;margin-bottom:20px;width:100%}
    .eg-benefits-grid:not([data-benefit-loop]){
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .eg-benefits-grid[data-benefit-loop]{
        animation:egBenefitLoop 9s steps(3,end) infinite;
        display:flex;
        gap:14px;
        margin-top:38px;
        width:max-content;
        will-change:transform;
    }
    .eg-benefits-grid[data-benefit-loop] [data-loop-clone]{
        display:block;
    }
    .eg-benefits-grid[data-benefit-loop] .eg-benefit{
        flex:0 0 min(var(--container),calc(100vw - 48px));
        min-height:290px;
        width:min(var(--container),calc(100vw - 48px));
    }
    .eg-reviews-grid{
        animation:egReviewLoop 9s steps(3,end) infinite;
        display:flex;
        gap:14px;
        margin-top:38px;
        width:max-content;
        will-change:transform;
    }
    .eg-reviews-grid [data-loop-clone]{
        display:flex;
    }
    .eg-reviews-grid .eg-review-card{
        flex:0 0 min(var(--container),calc(100vw - 48px));
        min-height:290px;
        width:min(var(--container),calc(100vw - 48px));
    }
}

@media (max-width:1040px){
    .eg-nav{
        gap:14px;
        grid-template-columns:minmax(0,1fr) auto;
        min-height:72px;
    }

    .eg-nav nav{
        grid-column:1/-1;
        order:3;
        width:100%;
    }

    .eg-mobile-toggle{display:inline-flex}

    .eg-menu{
        background:var(--white);
        border:1px solid var(--line);
        border-radius:12px;
        box-shadow:var(--shadow);
        display:none;
        flex-direction:column;
        gap:12px;
        justify-content:flex-start;
        padding:18px;
        width:100%;
    }

    .eg-menu.is-open{display:flex}

    .eg-menu a{
        display:block;
        font-size:16px;
        padding:8px 4px;
    }

    .eg-actions{
        gap:8px;
    }

    .eg-actions .eg-btn{
        display:none;
    }

    .eg-product-grid,
    .eg-category-grid,
    .eg-shop-grid,
    .eg-upsell-grid{
        gap:20px;
    }
}

@media (max-width:760px){
    .eg-container{width:min(100% - 28px,var(--container))}
    .eg-section{padding:56px 0}
    .woocommerce ul.products{grid-template-columns:1fr}
    .woocommerce ul.products li.product a img{height:260px}
    .woocommerce div.product{padding:16px}
    .woocommerce table.shop_table_responsive tr td,
    .woocommerce-page table.shop_table_responsive tr td{padding:12px}
    .eg-slider-section{display:none}
    .eg-nav{grid-template-columns:minmax(0,1fr) auto}
    .eg-hero{min-height:auto;padding-top:36px}
    .eg-product-grid,
    .eg-category-grid,
    .eg-reviews-grid,
    .eg-benefits-grid,
    .eg-about-values,
    .eg-process-grid,
    .eg-story-grid,
    .eg-shop-grid,
    .eg-detail-grid,
    .eg-slide{grid-template-columns:1fr}
    .eg-products:has(.eg-featured-grid){
        overflow:hidden;
    }
    .eg-featured-grid{
        animation:egFeaturedProductLoop 42s linear infinite;
        display:flex;
        gap:14px;
        width:max-content;
        will-change:transform;
    }
    .eg-featured-grid .eg-product-card{
        flex:0 0 min(78vw,300px);
    }
    .eg-featured-grid [data-loop-clone]{
        display:flex;
    }
    .eg-featured-grid .eg-card-actions{
        grid-template-columns:1fr 1fr;
    }
    .eg-reviews-grid{animation-duration:9s;gap:14px}
    .eg-reviews-grid .eg-review-card{
        flex:0 0 calc(100vw - 28px);
        width:calc(100vw - 28px);
    }
    .eg-reviews-grid [data-loop-clone]{
        display:flex;
    }
    #benefits{
        overflow:hidden;
    }
    .eg-benefits-grid[data-benefit-loop]{animation-duration:9s;gap:14px}
    .eg-benefits-grid[data-benefit-loop] .eg-benefit{
        flex:0 0 calc(100vw - 28px);
        width:calc(100vw - 28px);
    }
    .eg-benefits-grid [data-loop-clone]{
        display:block;
    }
    .eg-benefits-grid:not([data-benefit-loop]){
        display:grid;
        grid-template-columns:1fr;
        width:100%;
    }
    .eg-benefits-grid:not([data-benefit-loop]) .eg-benefit{
        width:auto;
    }
    .eg-gallery{grid-template-columns:1fr}
    .eg-gallery .eg-gallery-main{order:1}
    .eg-gallery .eg-thumbs{
        grid-template-columns:repeat(3,minmax(0,1fr));
        order:2;
    }
    .eg-thumb{height:86px}
    .eg-gallery-main{
        aspect-ratio:1/1;
        min-height:0;
    }
    .eg-form-row{align-items:stretch;flex-direction:column}
    .eg-video-showcase{
        gap:10px;
    }
    .eg-video-card.is-offset{
        transform:translateY(16px);
    }
    .eg-video-card figcaption{
        padding:12px;
    }
    .eg-video-card figcaption strong{
        font-size:12px;
    }
    .eg-video-card figcaption span{
        display:none;
    }
    .eg-main-footer{padding:40px 0}
    .eg-main-footer-links{grid-template-columns:1fr}
    .eg-slider-head{align-items:flex-start;flex-direction:column}
    .eg-card-actions{grid-template-columns:1fr}
    .eg-about-hero{padding:48px 0 58px}
    .eg-home-hero{
        padding:24px 0 42px;
    }
    .eg-home-hero .eg-about-hero-grid{
        gap:16px;
    }
    .eg-home-hero .eg-about-hero-media{
        min-height:360px;
    }
    .eg-home-hero .eg-about-hero-actions{
        gap:10px;
    }
    .eg-home-hero .eg-about-hero-actions .eg-btn{
        padding-inline:10px;
    }
    .eg-about-hero-copy .eg-title{font-size:clamp(38px,11vw,56px)}
    .eg-about-hero-media{min-height:360px}
    .eg-about-hero-card{padding:24px}
    .eg-about-leaf-mark{display:none}
    .eg-about-float{bottom:18px;left:18px}
    .eg-about-stats div{align-items:flex-start;flex-direction:column}
    .eg-about-image{min-height:280px}
    .eg-about-cta::after{display:none}
    .eg-product-quantity{align-items:flex-start;flex-direction:column}
    .eg-sticky-summary{
        align-items:stretch;
        flex-direction:column;
        margin-top:18px;
        position:static;
    }
    .eg-quick-quantity{align-items:stretch;flex-direction:column}
    .eg-cart-layout{
        gap:18px;
        padding:20px 0 56px;
    }
    .eg-table-row{
        align-items:start;
        gap:12px 14px;
        grid-template-areas:
            "image details"
            "image action";
        grid-template-columns:82px minmax(0,1fr);
        padding:14px;
    }
    .eg-cart-item-image{
        grid-area:image;
    }
    .eg-table-row img{
        height:82px;
        width:82px;
    }
    .eg-table-row > div{
        grid-area:details;
    }
    .eg-table-row strong{
        font-size:16px;
    }
    .eg-cart-row-actions{
        grid-area:action;
        justify-content:stretch;
        width:100%;
    }
    .eg-cart-quantity{
        flex:1;
        justify-content:space-between;
    }
    .eg-cart-trash{
        height:42px;
        width:42px;
    }
    .eg-summary-box .eg-btn{
        width:100%;
    }
    .eg-cart-popup{padding:16px}
    .eg-cart-popup-panel{padding:30px 18px 20px}
    .eg-cart-popup-actions{grid-template-columns:1fr}
    .eg-cart-upsell{
        overflow:hidden;
    }
    .eg-cart-upsell-window{
        margin-top:0;
        padding:4px 14px 18px;
    }
    .eg-cart-upsell-window::before,
    .eg-cart-upsell-window::after{
        display:none;
    }
    .eg-cart-upsell-track{
        animation-duration:42s;
        gap:14px;
    }
    .eg-cart-upsell-group{
        display:flex;
        gap:14px;
        padding-right:14px;
        width:max-content;
    }
    .eg-cart-upsell-card{
        flex:0 0 min(78vw,300px);
    }
    .eg-cart-upsell-card .eg-card-media{
        aspect-ratio:1.08/1;
    }
    .eg-tab-buttons{grid-template-columns:1fr}
    .eg-product-orbit{
        aspect-ratio:auto;
        background:linear-gradient(180deg,#f7faf4 0%,#eef5ee 100%);
        border:1px solid rgba(35,67,43,.14);
        border-radius:20px;
        box-shadow:0 16px 38px rgba(22,51,36,.08);
        display:flex;
        flex-direction:column;
        gap:14px;
        min-height:auto;
        padding:14px;
        width:100%;
    }
    .eg-product-orbit::before{display:none}
    .eg-product-orbit .eg-orbit-center{
        border-radius:16px;
        height:auto;
        min-height:0;
        order:2;
        padding:24px 18px;
        width:100%;
    }
    .eg-product-orbit .eg-tab-panel h3{
        font-size:clamp(22px,7vw,28px);
    }
    .eg-product-orbit .eg-tab-panel p{
        font-size:14px;
        max-width:100%;
    }
    .eg-product-orbit .eg-tab-panel > span{
        height:48px;
        margin-bottom:14px;
        width:48px;
    }
    .eg-product-orbit .eg-tab-buttons{
        background:rgba(250,249,245,.88);
        border:1px solid rgba(35,67,43,.12);
        border-radius:14px;
        display:grid;
        gap:8px;
        grid-template-columns:repeat(3,minmax(0,1fr));
        order:1;
        padding:8px;
        position:static;
    }
    .eg-product-orbit .eg-tab-buttons button{
        box-shadow:none;
        font-size:13px;
        height:auto;
        inset:auto;
        min-height:44px;
        padding:9px 8px;
        position:static;
        transform:none;
        width:100%;
    }
    .eg-product-orbit .eg-tab-buttons button:nth-child(1),
    .eg-product-orbit .eg-tab-buttons button:nth-child(2),
    .eg-product-orbit .eg-tab-buttons button:nth-child(3){
        inset:auto;
        transform:none;
    }
    .eg-upsell-head{align-items:flex-start;flex-direction:column}
    .eg-footer-grid{
        gap:8px 14px;
        grid-template-columns:auto 1fr;
        text-align:left;
    }
    .eg-footer-logo{justify-self:start}
    .eg-footer-copy{text-align:left}
    .eg-footer-links{
        grid-column:1/-1;
        justify-content:flex-start;
    }
    .eg-input-grid{grid-template-columns:1fr}
    .eg-checkout-layout{
        gap:18px;
        padding:20px 0 56px;
    }
    .eg-checkout-layout .eg-form-box,
    .eg-checkout-layout .eg-summary-box{
        padding:18px;
    }
}

@media (max-width:760px) and (prefers-reduced-motion:reduce){
    .eg-featured-grid{
        animation:none;
        overflow-x:auto;
        padding-bottom:12px;
        scroll-snap-type:x mandatory;
        transform:none;
        width:100%;
    }

    .eg-featured-grid .eg-product-card{
        scroll-snap-align:start;
    }

    .eg-featured-grid [data-loop-clone]{
        display:none;
    }
}

@media (prefers-reduced-motion:reduce){
    .eg-reviews-grid,
    .eg-benefits-grid[data-benefit-loop]{
        animation:none;
        overflow-x:auto;
        padding-bottom:12px;
        scroll-snap-type:x mandatory;
        transform:none;
        width:100%;
    }

    .eg-reviews-grid .eg-review-card,
    .eg-benefits-grid .eg-benefit{
        scroll-snap-align:start;
    }

    .eg-reviews-grid [data-loop-clone],
    .eg-benefits-grid[data-benefit-loop] [data-loop-clone]{
        display:none;
    }
}

@media (max-width:520px){
    .eg-brand{
        font-size:23px;
        gap:8px;
    }

    .eg-brand img{
        height:32px;
    }

    .eg-actions{
        gap:4px;
    }

    .eg-icon-btn{
        height:34px;
        width:34px;
    }

    .eg-footer-grid{
        grid-template-columns:1fr;
    }

    .eg-footer-copy{
        text-align:left;
    }

    .eg-footer-links{
        gap:10px 14px;
        justify-content:flex-start;
    }
}

@media (max-width:420px){
    .eg-checkout-layout .eg-form-box,
    .eg-checkout-layout .eg-summary-box{
        padding:16px;
    }

    .eg-table-row{
        gap:10px 12px;
        grid-template-columns:72px minmax(0,1fr);
        padding:12px;
    }

    .eg-table-row img{
        height:72px;
        width:72px;
    }

    .eg-cart-row-actions{
        gap:8px;
    }

    .eg-cart-quantity button{
        height:38px;
        width:38px;
    }

    .eg-cart-quantity input{
        height:38px;
        width:46px;
    }

    .eg-cart-trash{
        height:40px;
        width:40px;
    }

    .eg-gallery .eg-thumbs{
        gap:8px;
    }

    .eg-thumb{
        height:76px;
    }

    .eg-gallery-main{min-height:0}
}
