@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Baskerville:ital,wght@0,400;0,700;1,400&display=swap');
:root{--paper:#f7f5ed;--ink:#233c31;--muted:#686f64;--line:#d9ddd1;--soft:#e9eddf;--serif:"Libre Baskerville",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--sans)}a{color:inherit}button,input,textarea,select{font:inherit}button,a,input,textarea,select{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #ad6b35;outline-offset:4px}.wrap{max-width:1280px;margin:auto;padding:0 48px}.announcement{background:var(--ink);color:var(--paper);text-align:center;padding:9px 16px;font-size:12px;letter-spacing:.07em}header{height:100px;padding:16px 48px;max-width:1440px;margin:auto;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;text-decoration:none}.brand img{width:64px;height:64px;border-radius:50%;mix-blend-mode:multiply}.brand span{font-family:var(--serif);font-size:25px;font-weight:700;letter-spacing:.07em;line-height:1.3}.brand small{display:block;font-family:var(--sans);font-size:10px;letter-spacing:.25em}nav{display:flex;align-items:center;gap:28px}nav a{font-size:14px;text-decoration:none}.cart-button{padding:11px 17px;border:1px solid var(--ink);background:transparent;color:var(--ink);font-size:14px;border-radius:3px}.cart-button span{margin-left:8px;background:var(--ink);color:var(--paper);border-radius:50%;display:inline-block;min-width:23px;font-size:12px}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:64px;padding-top:64px;padding-bottom:64px;align-items:center}.eyebrow{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;margin:0 0 22px}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.16;letter-spacing:-.035em;margin:0 0 25px}h1{font-size:clamp(42px,4.8vw,68px)}h2{font-size:clamp(32px,3.2vw,46px)}h3{font-size:22px}.lead{font-size:19px;line-height:1.7;max-width:520px}.actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin:30px 0 18px}.button{display:inline-flex;gap:20px;justify-content:center;align-items:center;background:var(--ink);border:1px solid var(--ink);color:var(--paper);padding:14px 21px;font-size:14px;text-decoration:none;border-radius:3px;line-height:1.5}.button:hover{background:#385747}.button:disabled{opacity:.5;cursor:default}.text-link{font-size:13px;text-decoration:underline;text-underline-offset:5px;border:0;background:transparent;color:inherit;padding:0}.quiet{font-size:13px;color:var(--muted)}.hero-image{position:relative;background:#d7cdb9;border-radius:2px;overflow:hidden}.hero-image>img{display:block;width:100%;height:480px;object-fit:cover}.photo-caption{position:absolute;bottom:0;left:0;right:0;padding:23px 25px;display:flex;align-items:end;justify-content:space-between;background:linear-gradient(transparent,rgba(20,28,20,.88));color:white}.photo-caption span{font-family:var(--serif);font-size:22px;line-height:1.4}.photo-caption a{font-size:12px;text-underline-offset:5px}.values{display:flex;justify-content:center;gap:70px;flex-wrap:wrap;padding:22px 20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:12px;letter-spacing:.03em}.collection{padding-top:85px;padding-bottom:85px}.section-top{display:flex;justify-content:space-between;align-items:end;gap:50px}.section-top>p{max-width:360px;font-size:14px;color:var(--muted);margin-bottom:29px}.catalog-controls{display:flex;justify-content:space-between;gap:20px;padding:24px 0 8px;border-top:1px solid var(--line)}.filters{display:flex;gap:8px;flex-wrap:wrap}.filters button{border:1px solid var(--line);background:transparent;color:var(--ink);padding:8px 13px;font-size:12px;border-radius:2px}.filters button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}input,textarea,select{width:100%;background:#fffdf7;border:1px solid var(--line);border-radius:3px;color:var(--ink);padding:11px 12px}input[type=search]{width:220px;font-size:13px}.products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 22px;margin-top:24px}.product-card{min-width:0}.product-photo{border:0;padding:0;background:#e6e2d6;width:100%;display:block;overflow:hidden;aspect-ratio:1}.product-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s}.product-photo:hover img{transform:scale(1.035)}.category{font-size:10px;text-transform:uppercase;letter-spacing:.11em;margin:15px 0 8px;color:var(--muted)}.product-card h3{font-size:18px;letter-spacing:-.02em;line-height:1.45;margin:0 0 10px;min-height:52px}.product-card h3 button{font:inherit;color:inherit;border:0;background:none;text-align:left;padding:0}.price{font-size:13px;margin:0}.price strong{font-size:17px;font-weight:500}.card-actions{display:flex;gap:8px;margin-top:13px}.card-actions input{width:62px;padding:8px;font-size:13px}.card-actions button{flex:1;background:transparent;border:1px solid var(--ink);color:var(--ink);font-size:12px;border-radius:2px}.card-actions button:hover{background:var(--soft)}.parish-section{background:var(--ink);color:var(--paper);padding:80px 0}.parish-section .eyebrow{color:#bdcdb7}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:55px;margin-top:45px}.steps span{font-size:12px;border:1px solid #65786b;border-radius:50%;width:32px;height:32px;display:grid;place-items:center;margin-bottom:24px}.steps h3{font-size:23px}.steps p{font-size:15px;color:#d8e0d4}.parish-note{border-top:1px solid #53685b;margin-top:32px;padding-top:25px;display:flex;gap:40px;align-items:baseline;font-size:14px}.parish-note p{margin:0;color:#d8e0d4}.custom{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding-top:80px;padding-bottom:80px}.custom p:not(.eyebrow){color:var(--muted)}.secondary{background:transparent;color:var(--ink);margin-top:15px}.secondary:hover{color:white}.story-section{background:var(--soft);padding:80px 0}.story{display:grid;grid-template-columns:.8fr 1fr;gap:90px;align-items:center}.emblem img{display:block;width:100%;max-width:360px;margin:auto;mix-blend-mode:multiply}.story p:not(.eyebrow){font-size:15px}.story .signature{font-family:var(--serif);font-style:italic;margin-top:28px}.faq{display:grid;grid-template-columns:1fr 1.5fr;gap:80px;padding-top:80px;padding-bottom:60px}details{border-top:1px solid var(--line);padding:20px 0}details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;font-weight:500;font-size:15px}details p{color:var(--muted);font-size:14px}details a{font-size:13px}.contact{display:grid;grid-template-columns:1fr 1fr;gap:100px;padding-top:50px;padding-bottom:90px}.contact p{max-width:360px;color:var(--muted)}label{display:block;font-size:13px;font-weight:500;margin-bottom:16px}label span{font-weight:400;color:var(--muted)}label input,label textarea,label select{display:block;margin-top:6px;font-weight:400}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.checkbox{display:flex;align-items:start;gap:10px;font-weight:400}.checkbox input{width:18px;flex-shrink:0;margin-top:5px}.form-status{font-size:14px;line-height:1.5}.form-status.error{color:#9b312c}footer{border-top:1px solid var(--line);padding:35px 0;background:#f0eee5}footer .wrap{display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;align-items:start}footer p{font-size:12px;color:var(--muted)}footer .brand img{width:50px;height:50px}footer .brand span{font-size:20px}footer a,footer button{display:block;margin-bottom:8px;font-size:12px}footer .copyright{grid-column:1/-1;margin:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.trap{position:absolute;left:-10000px}.close{position:absolute;right:18px;top:13px;border:0;background:none;color:var(--ink);font-size:30px;line-height:1}.close:hover{background:var(--soft)}dialog{background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:5px;width:min(900px,calc(100% - 32px));max-height:90vh;padding:42px;overflow:auto}dialog::backdrop{background:rgba(13,27,19,.55)}#cart-dialog{max-width:760px}#privacy-dialog{max-width:650px}#product-detail{display:grid;grid-template-columns:1fr 1fr;gap:32px}#product-detail img{width:100%;object-fit:contain;background:#e7e3d7}#product-detail h2{font-size:32px}#product-detail p{font-size:14px}.cart-row{display:grid;grid-template-columns:65px 1fr 70px 26px;gap:15px;align-items:center;border-bottom:1px solid var(--line);padding:15px 0}.cart-row img{width:65px;height:65px;object-fit:cover}.cart-row strong{font-size:14px;font-weight:500}.cart-row .quiet{margin:3px 0}.cart-row input{padding:8px}.cart-row button{background:none;border:0;color:var(--ink);font-size:23px}.cart-summary{padding:12px;background:var(--soft);font-size:13px;margin:18px 0 28px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;padding:12px 22px;border-radius:3px;font-size:14px;opacity:0;pointer-events:none;transition:opacity .2s;z-index:10;max-width:90vw;width:max-content}#toast.visible{opacity:1}body:has(dialog[open]){overflow:hidden}
@media(max-width:1050px){.wrap{padding-left:30px;padding-right:30px}.hero{gap:35px}.hero-image>img{height:430px}.products{grid-template-columns:repeat(3,1fr)}nav{gap:17px}.values{gap:25px}.story,.contact{gap:50px}}
@media(max-width:760px){header{height:auto;padding:16px 20px;gap:15px}.brand img{width:44px;height:44px}.brand span{font-size:20px}nav a{display:none}.cart-button{padding:8px 10px;font-size:12px}.wrap{padding-left:22px;padding-right:22px}.hero{grid-template-columns:1fr;padding-top:40px;padding-bottom:35px;gap:30px}h1{font-size:46px}.hero-image>img{height:350px}.lead{font-size:17px}.values{display:block;text-align:center;padding:15px}.values span{display:block;margin:5px}.collection{padding-top:50px;padding-bottom:50px}.section-top{display:block}.section-top>p{max-width:none}.catalog-controls{display:block}.search-label{margin:15px 0 0}input[type=search]{width:100%}.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 14px}.product-card h3{font-size:16px;min-height:65px}.price{font-size:11px}.price strong{font-size:15px}.card-actions input{width:49px}.card-actions button{font-size:11px;padding:6px}.steps{grid-template-columns:1fr;gap:25px}.steps h3{margin-bottom:10px}.steps span{margin-bottom:15px}.parish-section,.story-section{padding:50px 0}.parish-note{display:block}.parish-note p{margin-top:8px}.custom,.story,.faq,.contact{grid-template-columns:1fr;gap:25px;padding-top:50px;padding-bottom:50px}.emblem img{max-width:190px;margin:0 auto 10px}.story{padding-top:0;padding-bottom:0}.faq h2{margin-bottom:0}.contact{padding-top:20px}.contact p{max-width:none}footer .wrap{grid-template-columns:1fr 1fr;gap:15px}footer .brand{grid-column:1/-1}.form-grid{grid-template-columns:1fr;gap:0}dialog{padding:38px 20px 24px}#product-detail{grid-template-columns:1fr;gap:22px}#product-detail img{max-height:280px}.cart-row{grid-template-columns:45px 1fr 55px 20px;gap:9px}.cart-row img{width:45px;height:45px}.cart-row strong{font-size:12px}.cart-row .quiet{font-size:11px}.announcement{font-size:10px}.eyebrow{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.testimonials{padding-top:75px;padding-bottom:55px}.testimonials .section-top{align-items:center;margin-bottom:22px}.review-controls{display:flex;justify-content:flex-end;gap:8px;margin-bottom:16px}.review-controls[hidden]{display:none}.review-controls button{border:1px solid var(--line);background:transparent;color:var(--ink);border-radius:3px;padding:8px 14px;font-size:12px}.review-controls button:hover{background:var(--soft)}.review-rail{display:flex;gap:20px;overflow-x:auto;align-items:flex-start;padding:6px 3px 20px;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--ink) var(--soft);overflow-anchor:none}.review-card{flex:0 0 350px;min-width:0;min-height:310px;margin:0;padding:28px;background:#fffdf7;border:1px solid var(--line);border-radius:4px;display:flex;flex-direction:column}.review-stars{letter-spacing:.12em;font-size:14px;margin:0 0 18px}.review-card blockquote{font-family:var(--serif);font-size:16px;line-height:1.8;margin:0 0 22px;white-space:pre-line;overflow-wrap:anywhere}.review-card figcaption{font-size:13px;margin-top:auto;padding-top:12px}.review-card figcaption span{display:block;color:var(--muted);font-size:11px;margin-top:3px}.review-full{border:0!important;padding:0;margin-bottom:20px}.review-full summary{font-size:12px;text-decoration:underline;text-underline-offset:4px}.review-full blockquote{margin:18px 0 0}.review-card:has(.review-full[open]) .review-excerpt{display:none}@media(max-width:760px){.testimonials{padding-top:50px}.testimonials .section-top .text-link{display:inline-block;margin-bottom:12px}.review-card{flex-basis:min(320px,calc(100vw - 68px));padding:23px}.review-controls{justify-content:flex-start}.review-rail{gap:14px}}

#product-detail{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}#product-detail>div{min-width:0}#product-detail img{display:block;max-width:100%}#product-detail .gallery>img{height:440px;object-fit:contain}.gallery-thumbs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin-top:12px}.gallery-thumbs button{position:relative;min-width:0;min-height:0;overflow:hidden;border:1px solid var(--line);padding:0;background:none;aspect-ratio:1}.gallery-thumbs img{position:absolute;inset:0;height:100%;width:100%;max-height:none!important;object-fit:cover!important}.variant-list{margin:18px 0;max-height:460px;overflow:auto}.variant-row{display:flex;gap:12px;align-items:center;padding:12px 0;border-top:1px solid var(--line);margin:0}.variant-row img{width:65px!important;height:65px;object-fit:cover!important;flex-shrink:0}.variant-row span{flex:1;min-width:0;overflow-wrap:anywhere;color:var(--ink);font-size:13px}.variant-row small{display:block;font-size:10px;color:var(--muted)}.variant-row input{width:65px;margin:0;flex-shrink:0}.card-actions{min-height:38px}@media(max-width:760px){#product-detail{grid-template-columns:minmax(0,1fr)}#product-detail .gallery>img{height:280px}.variant-row img{width:50px!important;height:50px}}
