:root{--cream:#faf7ef;--ink:#352d26;--sage:#53634b;--rust:#985c43;--line:#ddd6c8;--soft:#e9ecdf}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.65 system-ui,sans-serif}a{color:inherit}button,input,textarea,select{font:inherit}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--rust);outline-offset:4px}.announcement{background:var(--sage);color:#fff;text-align:center;font-size:12px;letter-spacing:.05em;padding:9px 20px}.announcement span{margin-left:40px;opacity:.85}header{max-width:1280px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:25px 50px;border-bottom:1px solid var(--line);gap:25px}.brand{font:italic 30px/1.2 Georgia,serif;text-decoration:none}.brand span{font:9px/2.6 system-ui;letter-spacing:.2em;display:block}nav{display:flex;gap:28px;align-items:center;font-size:13px}nav a{text-decoration:none}.owner{border:1px solid var(--line);padding:9px 13px;border-radius:4px}.hero{max-width:1280px;margin:auto;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;padding:50px 60px 30px;gap:20px}.eyebrow{font-size:10px;letter-spacing:.18em;font-weight:700;color:var(--sage);margin-bottom:20px}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.12}h1{font-size:clamp(44px,5vw,72px);letter-spacing:-.04em;margin:20px 0 25px}h1 em,h2 em{font-weight:400;color:var(--rust)}h2{font-size:clamp(32px,3.6vw,46px);letter-spacing:-.035em;margin:12px 0 22px}h3{font-size:24px;margin:10px 0}.hero-copy>p:not(.eyebrow){max-width:410px;color:#6a6158;font-size:16px}.button{display:inline-block;background:var(--sage);color:white;border:0;padding:15px 23px;text-decoration:none;border-radius:4px;font-size:14px}.button span{margin-left:24px}.hero-copy .button{margin-top:15px}.text-link{display:block;font-size:12px;text-underline-offset:5px;margin:20px 0}.signature{font-size:12px;color:#756859;margin-top:25px}.signature i{font:italic 34px Georgia;margin-left:12px;color:var(--rust)}.hero-art{position:relative;min-height:500px;display:flex;align-items:center;justify-content:center}.arch{position:absolute;inset:22px 18px 45px;border-radius:240px 240px 20px 20px;background:#e6e8db;border:1px solid #d7dac8}.hero-art img{position:relative;width:100%;height:530px;object-fit:contain}.art-label{position:absolute;bottom:10px;right:0;background:#f3eadb;transform:rotate(-5deg);padding:15px 22px;font:italic 17px/1.5 Georgia;box-shadow:0 5px 15px #352d2610}.ribbon{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px;display:flex;justify-content:center;gap:38px;font-size:11px;letter-spacing:.13em;color:var(--sage);flex-wrap:wrap}.section{max-width:1160px;margin:auto;padding:75px 30px}.section-heading{display:flex;justify-content:space-between;gap:30px;align-items:center}.section-heading>p{font-size:13px;color:#766b5e}.filters{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0 30px}.filters button,.secondary{border:1px solid var(--line);background:transparent;color:var(--ink);border-radius:30px;padding:9px 20px;font-size:12px}.filters button.active{background:var(--sage);border-color:var(--sage);color:white}.craft-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.empty{grid-column:1/-1;text-align:center;padding:55px 20px;border:1px dashed #c5c8b5;border-radius:8px;background:#f2f1e8}.empty>span{font-size:40px;color:var(--rust)}.empty p{color:#766b5e;font-size:14px}.craft-card{border-bottom:1px solid var(--line);padding-bottom:20px}.craft-card img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px;background:#e9e7de}.craft-card .meta{display:flex;justify-content:space-between;font-size:10px;color:var(--sage);letter-spacing:.1em;margin-top:10px}.craft-card h3{font-size:25px}.craft-card p{font-size:13px;white-space:pre-line}.price{font:24px Georgia}.craft-card .button{padding:10px 17px}.how{background:var(--soft);max-width:none;padding-left:max(30px,calc((100% - 1100px)/2));padding-right:max(30px,calc((100% - 1100px)/2))}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:35px}.steps b{font:italic 36px Georgia;color:#8a9677}.steps p{font-size:14px;color:#626a58}.story{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:center}.story-image img{width:100%;height:500px;object-fit:cover;object-position:50% 42%;border-radius:200px 200px 5px 5px}.story-image p{text-align:center;font:italic 22px Georgia;color:var(--rust)}.story p:not(.eyebrow){font-size:14px;line-height:1.9}.events{border-top:1px solid var(--line)}.event-list{margin-top:35px}.event-list article{border-top:1px solid var(--line);display:flex;align-items:center;gap:30px;padding:25px 0}.date{color:var(--rust);text-align:center;font-size:11px;letter-spacing:.12em;min-width:75px}.date strong{font:36px Georgia;display:block}.event-list p{font-size:14px;margin:5px 0}.event-list small{font-size:12px;color:#776d61}footer{background:#354330;color:#f3f0e8;padding:45px;text-align:center}footer p{font-size:12px;opacity:.8}dialog{background:var(--cream);border:1px solid var(--line);border-radius:12px;padding:40px;width:min(95%,530px);color:var(--ink)}dialog::backdrop{background:#1d241bb3}dialog h2{font-size:32px}.close{position:absolute;right:15px;top:10px;background:transparent;border:0;font-size:26px}label{display:block;font-size:13px;margin:18px 0}input,textarea,select{display:block;width:100%;padding:11px;border:1px solid #a8ad9b;border-radius:4px;background:#fff;color:var(--ink);margin-top:6px}textarea{min-height:100px}.fine{font-size:12px;color:#746a5e}.admin-wrap{max-width:960px;margin:auto;padding:40px 25px}.admin-wrap h1{font-size:44px}.panel{background:white;padding:30px;border:1px solid var(--line);border-radius:8px;margin:25px 0}.admin-row{display:flex;gap:15px;align-items:center;border-bottom:1px solid var(--line);padding:18px 0;flex-wrap:wrap}.admin-row img{height:70px;width:70px;object-fit:cover}.admin-row .detail{flex:1;min-width:180px}.admin-row select{width:auto}.error{color:#9d3024}[hidden]{display:none!important}@media(max-width:760px){header{padding:20px;flex-wrap:wrap;justify-content:center}nav{gap:17px;flex-wrap:wrap;justify-content:center;font-size:12px}.brand{text-align:center}.announcement span{display:none}.hero{grid-template-columns:1fr;padding:35px 25px 30px}.hero-copy{text-align:center}.hero-copy>p:not(.eyebrow){margin-left:auto;margin-right:auto}.hero-art{min-height:360px}.hero-art img{height:420px}.arch{inset:15px 25px 30px}.art-label{font-size:14px;bottom:0;right:10px}h1{font-size:49px}.ribbon{gap:15px;font-size:9px}.ribbon span:nth-child(even){display:none}.section{padding:50px 22px}.section-heading{display:block}.craft-grid{grid-template-columns:repeat(2,1fr);gap:15px}.craft-card h3{font-size:21px}.steps{grid-template-columns:1fr;gap:20px}.story{grid-template-columns:1fr;gap:30px}.story-image{max-width:330px;margin:auto}.story-image img{height:380px}.event-list article{gap:15px}.event-list h3{font-size:23px}.panel{padding:20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.event-list .event-card{align-items:flex-start;gap:28px}.event-image{width:210px;height:210px;object-fit:contain;background:#fff;border:1px solid var(--line);border-radius:8px;padding:8px}.event-content{flex:1;min-width:0}.event-when{color:var(--sage);font-weight:600}.event-details{white-space:pre-line}.event-link{display:inline-block;font-size:13px;margin:8px 18px 8px 0;text-underline-offset:4px}.check-label{display:flex;align-items:center;gap:10px}.check-label input{width:auto;margin:0}#event-form{scroll-margin-top:30px}#event-inventory p{margin:4px 0;font-size:12px}@media(max-width:600px){.event-list .event-card{flex-direction:column;gap:16px}.event-image{width:100%;height:240px}}

.message-card{border-top:1px solid #d8d3c7;padding:1.5rem 0}.message-card button,.message-card a{margin:.4rem .5rem .4rem 0;display:inline-block}.message-body{white-space:pre-wrap;overflow-wrap:anywhere}.admin-row{flex-wrap:wrap}.admin-row label{min-width:12rem;flex:1}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}dialog{max-height:90dvh;overflow-y:auto}#inquiry-form{margin-top:2rem;border-top:1px solid #d8d3c7;padding-top:1rem}
