:root{--green:#075344;--green-dark:#063c33;--ink:#183d34;--muted:#66736b;--cream:#f6f4ed;--line:#dcded3;--gold:#b28d4e;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.65 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;max-width:100%;height:auto}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:400}h1,h2{font-family:var(--serif);letter-spacing:-.045em;line-height:1.04}h2{font-size:clamp(40px,4.3vw,66px)}h3{line-height:1.22}em{font-weight:400}p+p{margin-top:18px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:6px}::selection{background:#d7e2b8;color:var(--green)}[hidden]{display:none!important}.skip{position:fixed;top:-80px;left:20px;background:white;padding:12px;z-index:100}.skip:focus{top:10px}
.header{height:104px;padding:12px 5%;display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid var(--line);position:relative;z-index:20;background:var(--cream)}.brand{flex-shrink:0;display:block;width:73px}.brand img{width:100%;mix-blend-mode:multiply}.desktop-nav{display:flex;gap:30px;font-size:13px}.desktop-nav a,.socials a,.footer-bottom a{transition:color .2s}.desktop-nav a:hover,.socials a:hover{color:var(--gold)}.header-contact{font-size:13px;display:flex;gap:26px;align-items:center;border-bottom:1px solid var(--green);padding:9px 0}.header-contact span{font-size:23px;line-height:1}.menu-button{display:none}.mobile-nav{display:none}
.hero{display:grid;grid-template-columns:1fr 1fr;min-height:660px;max-width:1800px;margin:auto}.hero-copy{padding:70px 7% 45px 10%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:10px;font-weight:600;line-height:1.5}.hero .eyebrow{display:flex;align-items:center;gap:12px}.small-star{font-size:23px;color:var(--gold);font-weight:400}.hero h1{font-size:clamp(50px,4.75vw,79px);margin:28px 0 25px}.hero-description{max-width:410px;color:var(--muted);font-size:15px;line-height:1.8}.actions{display:flex;gap:26px;align-items:center;flex-wrap:wrap;margin-top:32px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-height:53px;background:var(--green);color:white;padding:14px 24px;font-size:13px;border:1px solid var(--green);transition:background .2s,transform .2s}.button:hover{background:var(--green-dark);transform:translateY(-2px)}.button span{font-size:22px;line-height:1}.text-link{display:inline-flex;align-items:center;gap:18px;font-size:13px;border-bottom:1px solid currentColor;padding:5px 0}.text-link:hover{color:var(--gold)}.hero-note{display:flex;align-items:center;gap:18px;margin-top:48px;font-size:11px;line-height:1.5;color:var(--muted)}.organic-mark{letter-spacing:.14em;font-size:11px;padding:9px 12px;border:1px solid #aab8a9;color:var(--green)}.hero-photo{position:relative;overflow:hidden;min-height:660px}.hero-photo>img{height:100%;width:100%;object-fit:cover}.photo-label{position:absolute;bottom:22px;left:24px;right:24px;font-size:10px;letter-spacing:.06em;color:white;text-shadow:0 1px 8px #0009}.brand-line{background:var(--green);color:#eceddd;display:flex;justify-content:space-between;gap:20px;padding:20px 5%;align-items:center;font-size:10px;text-transform:uppercase;letter-spacing:.12em}.brand-line span:nth-child(even){color:#d5b573;font-size:17px}
.section{padding:100px max(5%,calc((100vw - 1400px)/2));scroll-margin-top:0}.section-heading{display:grid;grid-template-columns:1fr 2fr 1.2fr;gap:35px;align-items:start;margin-bottom:50px}.section-heading .eyebrow{padding-top:9px}.section-intro{font-size:14px;color:var(--muted);padding-top:8px}.origin-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:9%;align-items:center}.landscape img{aspect-ratio:1.38;object-fit:cover;width:100%}.landscape figcaption{font-size:10px;color:var(--muted);margin-top:13px}.location-label{font-size:10px;letter-spacing:.08em;color:var(--gold)}.origin-copy h3{font:40px/1.12 var(--serif);letter-spacing:-.025em;margin:23px 0}.origin-copy>p{font-size:14px;color:var(--muted)}.origin-copy .text-link{margin-top:25px}
.collection{background:#eeeee5}.collection-heading{display:flex;justify-content:space-between;gap:45px;align-items:flex-end;margin-bottom:40px}.collection-heading .eyebrow{margin-bottom:22px}.collection-heading>p{max-width:330px;font-size:14px;color:var(--muted)}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:32px}.filters button{border:1px solid #c7cfc3;padding:9px 19px;background:transparent;color:var(--green);font-size:12px;border-radius:30px}.filters button.active,.filters button:hover{background:var(--green);color:white;border-color:var(--green)}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px 24px}.product-image{position:relative;background:white;height:320px;display:grid;place-items:center;overflow:hidden}.product-image img{width:78%;height:78%;object-fit:contain;transition:transform .5s}.product:hover .product-image img{transform:scale(1.035)}.product-index{position:absolute;top:16px;left:18px;font-size:11px;color:#7b887d;z-index:1}.product-image.cream-image img{width:100%;height:100%;object-fit:cover}.wide-product img{width:90%;height:90%}.product-info{padding:21px 2px 0}.product-info .eyebrow{font-size:9px;color:var(--gold);margin-bottom:10px}.product h3{font-family:var(--serif);font-size:25px;letter-spacing:-.02em;margin-bottom:13px}.product-info>p:not(.eyebrow){font-size:12px;line-height:1.8;color:var(--muted);margin:0}.product-link{display:flex;justify-content:space-between;align-items:center;font-size:12px;border-bottom:1px solid #bdc8b8;padding:15px 0 8px;margin-top:8px}.product-link span{font-size:24px}.product-link:hover{color:var(--gold)}.catalogue-download{display:flex;justify-content:space-between;gap:20px;align-items:center;padding-top:30px;border-top:1px solid #c9d0c4;margin-top:50px;font-size:14px}.file-size{font-size:10px;color:var(--muted);white-space:nowrap}
.people{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.people-photo{position:relative;align-self:stretch;display:flex;flex-direction:column}.people-photo img{width:100%;object-fit:cover;flex:1;min-height:330px}.photo-caption{font-size:10px;margin-top:13px;color:var(--muted)}.people-copy h2{margin:24px 0 28px}.people-copy>p:not(.eyebrow){font-size:14px;color:var(--muted)}.anniversary{display:flex;align-items:center;gap:24px;margin-top:32px;border-top:1px solid var(--line);padding-top:18px}.anniversary strong{font:74px/1 var(--serif);color:var(--green)}.anniversary span{font-size:12px;color:var(--muted)}
.quality{background:var(--green);color:var(--cream);display:grid;grid-template-columns:1fr 1fr;gap:10%}.quality-intro h2{margin:24px 0}.quality-intro>p:not(.eyebrow){font-size:14px;max-width:400px;color:#c9d5c9}.button-outline{background:transparent;border-color:#6b9384;margin-top:30px;color:white}.quality-item{display:flex;gap:22px;padding:25px 0;border-top:1px solid #5a7b68}.quality-item>span{font-size:10px;color:#b4c3a2;padding-top:4px}.quality-item h3{font:26px var(--serif);margin-bottom:12px}.quality-item p{font-size:12px;color:#c9d5c9}.quality-footnote{font-size:10px;line-height:1.7;color:#b6c9bb;margin-top:20px!important}
.corporate{display:grid;grid-template-columns:1fr 1.2fr;gap:6%;align-items:center;background:#eeeee5}.corporate-copy h2{margin:24px 0 27px}.corporate-copy>p:not(.eyebrow){font-size:14px;color:var(--muted);max-width:370px}.corporate-copy .button{margin-top:30px}.corporate-photo{background:white;padding:35px 20px}.corporate-photo img{width:100%;mix-blend-mode:multiply}.faq{display:grid;grid-template-columns:.9fr 1.1fr;gap:8%}.faq h2{margin-top:22px}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;font-size:14px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0}summary::-webkit-details-marker{display:none}summary span{font-size:25px;font-weight:300;line-height:1;transition:transform .2s}details[open] summary span{transform:rotate(45deg)}details p{font-size:13px;color:var(--muted);padding:0 35px 23px 0}
.contact{text-align:center;background:var(--green-dark);color:var(--cream);position:relative;overflow:hidden}.contact:before,.contact:after{content:'';position:absolute;pointer-events:none;width:420px;height:420px;border:1px solid #678c672e;border-radius:50%;top:90px;left:-250px;box-shadow:0 0 0 40px #678c6710,0 0 0 80px #678c6710,0 0 0 120px #678c6710}.contact:after{left:auto;right:-250px;top:-100px}.contact h2{margin:27px 0;font-size:clamp(40px,5vw,74px)}.contact>p:not(.eyebrow){color:#cad4c3;font-size:14px}.button-light{background:var(--cream);color:var(--green);border-color:var(--cream);margin-top:30px}.button-light:hover{background:#dfdfc9;color:var(--green)}.phone{display:block;width:fit-content;margin:20px auto 0;font-size:13px}.footer{padding:45px 5% 20px}.footer-main{display:flex;gap:50px;align-items:center;justify-content:space-between;padding-bottom:40px}.footer-main>p{font-size:12px;color:var(--muted);margin-right:auto}.socials{display:grid;gap:6px;font-size:11px}.footer-bottom{border-top:1px solid var(--line);padding-top:18px;display:flex;gap:30px;justify-content:space-between;font-size:10px;color:var(--muted)}.footer-bottom a:last-child{margin-left:auto}
body.dialog-open{overflow:hidden}dialog{padding:0;width:min(950px,94vw);max-height:90svh;border:0;background:var(--cream);color:var(--ink);overflow:auto}dialog::backdrop{background:#092b24b0;backdrop-filter:blur(5px)}.dialog-close{position:absolute;right:12px;top:12px;border:1px solid var(--line);background:var(--cream);border-radius:50%;width:38px;height:38px;font-size:27px;line-height:1;z-index:2;color:var(--green)}.dialog-layout{display:grid;grid-template-columns:1fr 1fr}.dialog-image{background:white;display:flex;align-items:center;justify-content:center;padding:35px;min-height:460px}.dialog-image img{width:100%;max-height:430px;object-fit:contain}.dialog-copy{padding:55px 35px 40px}.dialog-copy h2{font-size:37px;line-height:1.13;margin:15px 0 22px}.dialog-copy>p:not(.eyebrow){font-size:13px;color:var(--muted)}.variant-field{border:0;padding:0;margin:25px 0}.variant-field legend{font-size:11px;margin-bottom:12px}.variant-field>div{display:flex;flex-wrap:wrap;gap:8px}.variant-label{position:relative;font-size:12px;cursor:pointer}.variant-label input{position:absolute;width:1px;height:1px;opacity:0}.variant-label span{display:block;border:1px solid #bfccbc;padding:8px 13px}.variant-label input:checked+span{background:var(--green);color:white;border-color:var(--green)}.variant-label input:focus-visible+span{outline:3px solid var(--gold);outline-offset:3px}.availability{font-size:11px!important;margin-bottom:18px}.dialog-copy .button{font-size:12px;gap:16px}
@media(min-width:1600px){.hero{min-height:740px}.hero-photo{min-height:740px}.hero-copy{padding-left:12%}.hero h1{font-size:84px}}
@media(max-width:1100px){.desktop-nav{gap:16px;font-size:11px}.header-contact{font-size:11px;gap:15px}.header{height:90px}.brand{width:62px}.hero,.hero-photo{min-height:600px}.hero-copy{padding:48px 7% 36px 10%}.hero h1{font-size:56px}.hero-description{font-size:13px}.actions{gap:16px}.actions .text-link{font-size:11px}.section{padding:75px 5%}.section-heading{grid-template-columns:1fr 2.6fr}.section-intro{grid-column:2}.product-image{height:270px}.product h3{font-size:22px}.people{gap:5%}.quality{gap:6%}.corporate{grid-template-columns:1fr 1fr}.collection-heading>p{max-width:270px}}
@media(max-width:760px){html{scroll-padding-top:25px}.header{height:83px;padding:10px 6%;gap:18px}.brand{width:56px}.desktop-nav{display:none}.header-contact{margin-left:auto;font-size:11px;gap:13px}.menu-button{display:grid;place-content:center;gap:6px;width:36px;height:36px;background:none;border:0;padding:5px}.menu-button span{height:1px;width:23px;background:var(--green)}.mobile-nav{display:grid;position:absolute;top:83px;left:0;right:0;background:var(--cream);padding:20px 6% 30px;box-shadow:0 15px 20px #153d3412;gap:16px;font-size:16px}.hero{grid-template-columns:1fr;min-height:auto}.hero-copy{padding:45px 6% 35px;order:0}.hero h1{font-size:clamp(44px,9vw,66px);margin:22px 0}.hero-description{font-size:14px;max-width:470px}.hero .eyebrow{font-size:9px}.actions{gap:24px;margin-top:26px}.hero-note{margin-top:28px}.hero-photo{min-height:0;aspect-ratio:1.25;max-height:500px}.hero-photo>img{object-position:center 58%}.photo-label{font-size:9px;bottom:15px;left:20px}.brand-line{padding:17px 6%;justify-content:center;gap:18px;font-size:8px;flex-wrap:wrap}.brand-line span:nth-child(n+5){display:none}.section{padding:65px 6%}h2{font-size:42px}.section-heading{display:block;margin-bottom:32px}.section-heading h2{margin-top:22px}.section-intro{max-width:380px;padding-top:23px}.origin-layout{grid-template-columns:1fr;gap:35px}.origin-copy h3{font-size:35px;margin:17px 0}.origin-copy>p{font-size:14px}.landscape img{aspect-ratio:1.4}.collection-heading{display:block;margin-bottom:28px}.collection-heading>p{max-width:440px;margin-top:25px}.filters{gap:8px}.filters button{font-size:11px;padding:8px 14px}.product-grid{grid-template-columns:repeat(2,1fr);gap:35px 16px}.product-image{height:250px}.product h3{font-size:23px}.product-info>p:not(.eyebrow){font-size:11px}.product-info{padding-top:18px}.product-link{font-size:11px}.catalogue-download{display:block;margin-top:35px;padding-top:25px}.catalogue-download .text-link{margin-top:15px;font-size:12px}.people{grid-template-columns:1fr;gap:35px}.people-photo img{min-height:0;aspect-ratio:1.4}.people-copy h2{margin:20px 0 24px}.anniversary{margin-top:25px}.quality{grid-template-columns:1fr;gap:38px}.quality-intro>p:not(.eyebrow){max-width:none}.quality-item{padding:23px 0}.corporate{grid-template-columns:1fr;gap:35px}.corporate-copy>p:not(.eyebrow){max-width:none}.corporate-photo{padding:28px 18px}.faq{grid-template-columns:1fr;gap:30px}.contact h2{font-size:43px}.contact>p:not(.eyebrow){font-size:13px}.contact:before,.contact:after{opacity:.5}.footer{padding:35px 6% 23px}.footer-main{flex-wrap:wrap;gap:25px}.footer-main>p{font-size:11px}.socials{width:100%;border-top:1px solid var(--line);padding-top:22px}.footer-bottom{flex-wrap:wrap;gap:15px;font-size:9px}.footer-bottom>span{width:100%}.footer-bottom a:last-child{margin-left:auto}.dialog-layout{grid-template-columns:1fr}.dialog-image{min-height:0;height:260px;padding:25px}.dialog-image img{height:100%;width:100%;object-fit:contain}.dialog-copy{padding:26px 24px 32px}.dialog-copy h2{font-size:31px;margin:12px 0 16px}.variant-field{margin:20px 0}.dialog-copy .button{width:100%}}
@media(max-width:440px){.product-grid{grid-template-columns:1fr}.product-image{height:330px}.product-info>p:not(.eyebrow){font-size:12px}.product h3{font-size:28px}.product-link{font-size:12px}.header-contact{font-size:10px}.hero-copy{padding-top:33px}.hero h1{font-size:46px}.button{font-size:12px;padding:13px 20px}.hero .text-link{font-size:11px}.actions{gap:20px}.hero-photo{aspect-ratio:1.12}.section h2{font-size:39px}.contact h2{font-size:37px}.quality-intro .button{font-size:11px}.file-size{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* Keep product images inside their frame regardless of intrinsic image size. */
.product-image>img{position:absolute;inset:0;margin:auto}
