:root{--gn-paper:#f6f3ee;--gn-ink:#252d29;--gn-muted:#69716b;--gn-green:#516348;--gn-line:#dddcd3;--gn-body:Arial,Helvetica,sans-serif;--gn-display:Georgia,'Times New Roman',serif}
body{background:var(--gn-paper);color:var(--gn-ink)}
.gn-header,.gn-hero,.gn-section,.gn-story,.gn-footer,.gn-catalog-heading,.gn-contact{font-family:var(--gn-body);color:var(--gn-ink);box-sizing:border-box}
[class^="gn-"],[class*=" gn-"]{box-sizing:border-box}
.gn-header a,.gn-hero a,.gn-section a,.gn-story a,.gn-footer a,.gn-contact a{color:inherit;text-decoration:none}
.gn-shell{width:calc(100% - 112px);max-width:1440px;margin-inline:auto}
.gn-header{background:var(--gn-paper);border-bottom:1px solid var(--gn-line)}
.gn-header-inner{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;min-height:88px;gap:24px}
.gn-wordmark{font:36px/1 var(--gn-display);letter-spacing:.035em;font-weight:400}
.gn-nav{display:flex;align-items:center;gap:38px;font-size:14px;line-height:1.5}
.gn-nav a{padding:15px 0}.gn-nav a:hover,.gn-footer a:hover{text-decoration:underline;text-underline-offset:5px}
.gn-tools{justify-self:end;display:flex;gap:20px}.gn-tools a{display:grid;place-items:center;min-width:40px;min-height:44px}
.gn-hero{display:grid;grid-template-columns:46% 54%;max-width:1680px;margin:auto;background:var(--gn-paper)}
.gn-hero-copy{padding:64px clamp(30px,4vw,70px);display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.gn-hero h1{font:400 clamp(40px,4.35vw,70px)/1.05 var(--gn-display);letter-spacing:-.045em;margin:0 0 28px;max-width:650px;text-wrap:balance}
.gn-hero-copy p{font-size:18px;line-height:1.65;max-width:385px;margin:0 0 32px}
.gn-button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:52px;padding:14px 28px;border:1px solid var(--gn-green);border-radius:0;background:var(--gn-green);color:white!important;font:15px/1.4 var(--gn-body);cursor:pointer;text-decoration:none}
.gn-button:hover{background:#4e3f33;border-color:#4e3f33}
.gn-hero-image{min-width:0;aspect-ratio:1.05}.gn-hero-image img{width:100%;height:100%;object-fit:cover;display:block}
.gn-section{padding-block:84px 20px}.gn-section h2,.gn-story h2{font:400 clamp(32px,3.3vw,50px)/1.15 var(--gn-display);letter-spacing:-.035em;margin:0 0 38px}
.gn-categories{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.gn-category-image{overflow:hidden;aspect-ratio:1}.gn-category-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.gn-category:hover img{transform:scale(1.025)}.gn-category span{font:16px/1.5 var(--gn-body);display:flex;align-items:center;justify-content:space-between;padding-top:18px;gap:8px}
.gn-category span svg{flex-shrink:0}
.gn-featured{padding-bottom:90px}.gn-section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:20px}.gn-section-heading h2{margin-bottom:38px}
.gn-text-link{display:inline-flex;align-items:center;gap:18px;padding-bottom:6px;border-bottom:1px solid currentColor;font:15px/1.5 var(--gn-body);white-space:nowrap}
.gn-products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.gn-product{min-width:0}.gn-product-image{background:#eeeee8;aspect-ratio:1;overflow:hidden}
.gn-product-image img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .35s ease}
.gn-product:hover img{transform:scale(1.025)}.gn-product h3{font:400 15px/1.55 var(--gn-body);margin:18px 0 7px;letter-spacing:0}.gn-price{font:14px/1.5 var(--gn-body);margin:0;color:var(--gn-muted)}
.gn-story{background:var(--gn-green);color:var(--gn-paper);padding:68px 0 72px}.gn-story h2{margin-bottom:20px}.gn-story p{font-size:17px;line-height:1.7;max-width:670px;margin:0 0 24px}
.gn-footer{padding:70px 0 0;background:var(--gn-paper)}.gn-footer-grid{display:grid;grid-template-columns:1.35fr .65fr 1fr;gap:60px}.gn-footer h2{font:600 18px/1.4 var(--gn-body);margin:0 0 28px;letter-spacing:0}
.gn-company{margin:0;font-size:14px;line-height:1.7}.gn-company dt{font-weight:600;margin-top:18px}.gn-company dt:first-child{margin-top:0}.gn-company dd{margin:2px 0 0;overflow-wrap:anywhere;max-width:430px}
.gn-footer-nav{display:flex;flex-direction:column;gap:16px;font:14px/1.5 var(--gn-body)}.gn-footer p{font-size:14px;line-height:1.75;margin:0 0 24px;color:var(--gn-muted)}
.gn-label{display:block;font-size:13px;margin-bottom:8px}.gn-input{width:100%;padding:15px 14px;min-height:52px;border:1px solid #b8beb6;border-radius:0;background:transparent;color:var(--gn-ink);font:14px/1.5 var(--gn-body)}
.gn-subscribe{width:100%;margin-top:12px}.gn-footer-bottom{border-top:1px solid var(--gn-line);margin-top:60px;padding:28px 0;display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--gn-muted)}.gn-footer-bottom .gn-wordmark{font-size:28px;color:var(--gn-ink)}
.gn-catalog-heading,.gn-contact{padding-top:65px;padding-bottom:35px}.gn-catalog-heading h1,.gn-contact h1{font:400 clamp(32px,4vw,56px)/1.15 var(--gn-display);letter-spacing:-.03em;margin:0 0 32px}
.gn-category-buttons{display:flex;flex-wrap:wrap;gap:8px}.gn-category-buttons button{font:14px/1.5 var(--gn-body);border:1px solid var(--gn-line);background:transparent;padding:11px 18px;color:var(--gn-ink);cursor:pointer;min-height:44px}.gn-category-buttons button[aria-pressed=true]{background:var(--gn-green);color:white;border-color:var(--gn-green)}
.gn-filter-count,.gn-filter-empty{font-size:14px;margin-top:18px}.gn-filter-empty[hidden],[data-gn-hidden=true]{display:none!important}
.gn-contact{padding-bottom:45px}.gn-contact p{font-size:17px;line-height:1.7}.gn-contact>div{display:flex;gap:25px;flex-wrap:wrap;margin-top:25px}.gn-contact a{border-bottom:1px solid currentColor;padding-bottom:5px}
.gn-nav a:focus-visible,.gn-tools a:focus-visible,.gn-category:focus-visible,.gn-product a:focus-visible,.gn-button:focus-visible,.gn-footer a:focus-visible,.gn-input:focus-visible,.gn-category-buttons button:focus-visible{outline:2px solid #8b7866;outline-offset:5px}
@media(max-width:1050px){.gn-shell{width:calc(100% - 64px)}.gn-header-inner{min-height:78px}.gn-hero-copy{padding:40px 32px}.gn-hero h1{font-size:46px}.gn-hero-copy p{font-size:16px}.gn-footer-grid{gap:30px}.gn-categories,.gn-products{gap:20px}}
@media(max-width:700px){.gn-shell{width:calc(100% - 40px)}.gn-header-inner{grid-template-columns:1fr auto;gap:0;min-height:100px;padding-top:18px}.gn-wordmark{font-size:30px}.gn-tools{grid-column:2;grid-row:1;gap:10px}.gn-nav{grid-column:1/-1;grid-row:2;justify-content:center;gap:32px;font-size:13px;padding-top:7px}.gn-nav a{padding:13px 0}.gn-hero{grid-template-columns:1fr}.gn-hero-copy{padding:40px 24px 36px}.gn-hero h1{font-size:45px;max-width:410px;margin-bottom:19px;line-height:1.06}.gn-hero-copy p{font-size:16px;max-width:330px;margin-bottom:25px}.gn-hero-image{aspect-ratio:1.17}.gn-button{min-height:49px;font-size:14px;padding:13px 24px}.gn-section{padding-block:48px 10px}.gn-section h2,.gn-story h2{font-size:33px;margin-bottom:26px}.gn-categories,.gn-products{grid-template-columns:repeat(2,minmax(0,1fr));gap:27px 16px}.gn-category span{padding-top:12px;font-size:13px;gap:3px}.gn-category span svg{width:16px}.gn-section-heading h2{margin-bottom:26px;max-width:210px}.gn-section-heading .gn-text-link{font-size:13px;gap:8px}.gn-product h3{font-size:13px;margin-top:13px}.gn-price{font-size:13px}.gn-featured{padding-bottom:48px}.gn-story{padding:43px 0}.gn-story p{font-size:15px}.gn-footer{padding-top:45px}.gn-footer-grid{grid-template-columns:1fr;gap:38px}.gn-footer h2{font-size:18px;margin-bottom:20px}.gn-company{font-size:14px}.gn-company dd{max-width:100%}.gn-footer-nav{gap:12px}.gn-footer-bottom{margin-top:40px}.gn-catalog-heading,.gn-contact{padding-top:40px}.gn-category-buttons{gap:7px}.gn-category-buttons button{font-size:12px;padding:10px 12px}.gn-contact>div{gap:18px}}
@media(prefers-reduced-motion:reduce){.gn-category-image img,.gn-product-image img{transition:none}}

.gn-hero h1{white-space:pre-line}

.gn-header-inner{position:relative;display:flex;flex-direction:column;justify-content:center;gap:9px;padding:24px 0 15px;min-height:132px}
.gn-header-inner>.gn-wordmark{font-size:42px;letter-spacing:.025em}
.gn-nav{gap:36px}.gn-nav a{padding:8px 0}.gn-tools{position:absolute;right:0;top:32px}
.gn-hero{grid-template-columns:50% 50%}.gn-hero-image{aspect-ratio:1}
.gn-hero h1{font-size:clamp(38px,4.3vw,67px);letter-spacing:-.045em;white-space:pre-line;text-wrap:initial}
.gn-hero-copy p{max-width:420px}.gn-section{padding-top:76px}.gn-category-caption{font:16px/1.6 var(--gn-body);margin:-20px 0 32px;color:var(--gn-muted)}
.gn-category span{font:20px/1.4 var(--gn-display)}.gn-product h3{font:17px/1.5 var(--gn-display)}
.gn-story{text-align:center}.gn-story p{margin-inline:auto}.gn-story .gn-text-link{border:1px solid currentColor;padding:13px 28px}
.gn-footer h2{font:400 22px/1.35 var(--gn-display)}.gn-footer-grid{grid-template-columns:1.25fr .6fr 1fr;gap:60px}
.gn-product-image:empty{display:grid;place-items:center}.gn-product-image:empty:after{content:'Image coming soon';font:13px var(--gn-body);color:var(--gn-muted)}
@media(max-width:1050px){.gn-hero h1{font-size:43px}.gn-footer-grid{gap:28px}}
@media(max-width:700px){.gn-header-inner{min-height:116px;padding:20px 0 12px;gap:7px}.gn-header-inner>.gn-wordmark{font-size:33px}.gn-tools{top:15px;gap:2px}.gn-tools a{min-width:32px}.gn-tools svg{width:19px}.gn-nav{padding-top:0;gap:32px}.gn-hero{grid-template-columns:1fr}.gn-hero-copy{padding:38px 24px}.gn-hero h1{font-size:42px;line-height:1.08}.gn-hero-image{aspect-ratio:1}.gn-category span{font-size:16px}.gn-section{padding-top:46px}.gn-category-caption{margin:-10px 0 25px;font-size:14px}.gn-section-heading h2{max-width:240px;font-size:30px}.gn-product h3{font-size:15px}.gn-footer-grid{grid-template-columns:1fr;gap:36px}.gn-footer h2{font-size:22px}}

/* mirogrove editorial layout */
.gn-header-inner{min-height:140px;padding:26px 0 12px;gap:13px}
.gn-header-inner>.gn-wordmark{font-size:43px;letter-spacing:.045em}
.gn-nav{gap:40px;font-size:13px}.gn-nav a{padding:12px 0;min-height:44px}
.gn-tools{top:30px;gap:12px}.gn-tools a{min-width:44px;min-height:44px}
.gn-hero-copy{padding:60px clamp(30px,5vw,82px)}
.gn-eyebrow{font:11px/1.6 var(--gn-body);letter-spacing:.2em;color:var(--gn-muted);margin:0 0 26px}
.gn-hero h1{font-size:clamp(42px,5.1vw,78px);line-height:1.055;margin-bottom:26px}
.gn-hero-copy p{font-size:16px;line-height:1.8;color:var(--gn-muted);max-width:355px;margin-bottom:31px}
.gn-button{font-size:13px;gap:25px}.gn-button:hover{background:#3f5038;border-color:#3f5038}
.gn-section h2{font-size:clamp(30px,3vw,45px);line-height:1.2;margin-bottom:21px}
.gn-section-intro{text-align:center;margin-bottom:39px}
.gn-category-caption{font-size:14px;line-height:1.7;margin:0}
.gn-categories{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.gn-category span{font-size:21px;padding-top:19px}
.gn-section-heading{margin-bottom:14px}.gn-text-link{font-size:13px;min-height:36px}
.gn-product h3{font-size:16px}.gn-price{font-size:13px}
.gn-story{padding:72px 0 76px}.gn-story h2{font-size:46px;margin-bottom:22px}
.gn-story p{font-size:15px;line-height:1.9;max-width:590px;margin:0 auto 28px;color:#eeeee5}
.gn-story .gn-text-link{border-color:#b7beac;min-height:48px;padding:12px 24px}
.gn-footer-grid{grid-template-columns:1.35fr .85fr 1fr;gap:56px}
.gn-footer h2{font-size:23px;letter-spacing:-.02em;margin-bottom:25px}
.gn-company{font-size:13px;line-height:1.75}.gn-company dt{margin-top:15px}
.gn-footer-nav{font-size:13px;gap:6px}.gn-footer-nav a{padding:7px 0;min-height:34px}
.gn-footer p{font-size:13px;line-height:1.8}.gn-label{font-size:12px}
.main-page{max-width:880px;margin:auto}.main-page__content{line-height:1.85}.main-page__title{font-family:var(--gn-display)}
@media(max-width:1050px){.gn-hero-copy{padding:38px 30px}.gn-hero h1{font-size:48px}.gn-hero-copy p{font-size:15px}.gn-eyebrow{margin-bottom:18px}.gn-footer-grid{gap:28px}.gn-category span{font-size:19px}}
@media(max-width:700px){.gn-header-inner{min-height:119px;padding:20px 0 7px;gap:9px}.gn-header-inner>.gn-wordmark{font-size:35px}.gn-tools{top:13px;right:-5px;gap:0}.gn-tools a{min-width:33px;min-height:44px}.gn-tools svg{width:18px}.gn-nav{gap:32px;font-size:13px}.gn-nav a{padding:10px 0}.gn-hero-copy{padding:39px 25px 42px}.gn-eyebrow{font-size:10px;margin-bottom:21px}.gn-hero h1{font-size:49px;margin-bottom:23px}.gn-hero-copy p{font-size:15px;max-width:340px;margin-bottom:26px}.gn-button{font-size:13px;min-height:49px;padding:13px 22px}.gn-hero-image{aspect-ratio:1.12}.gn-section{padding-top:49px}.gn-section-intro{margin-bottom:28px}.gn-section h2{font-size:31px}.gn-category-caption{font-size:13px;margin:0}.gn-categories{grid-template-columns:1fr;gap:27px}.gn-category-image{aspect-ratio:1.25}.gn-category span{padding-top:13px;font-size:22px}.gn-section-heading h2{max-width:230px;font-size:30px}.gn-section-heading .gn-text-link{gap:7px;font-size:12px}.gn-product h3{font-size:14px}.gn-price{font-size:12px}.gn-story{padding:49px 0}.gn-story h2{font-size:34px}.gn-story p{font-size:14px}.gn-footer-grid{grid-template-columns:1fr;gap:36px}.gn-footer h2{font-size:24px;margin-bottom:18px}.gn-company{font-size:13px}.gn-footer-nav{gap:1px}.gn-footer-nav a{padding:10px 0;min-height:44px;font-size:14px}}

@media(max-width:700px){.gn-hero h1{font-size:42px;letter-spacing:-.045em}.gn-story h2{white-space:pre-line}}
