:root{--green:#123d30;--dark:#10271e;--red:#df503b;--cream:#f9f5eb;--paper:#fffefa;--line:#e8e4da;--muted:#5c6a61;--shadow:0 18px 60px rgba(18,61,48,.11)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--dark);font:16px/1.55 system-ui,-apple-system,Segoe UI,Arial,sans-serif}a{color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,serif;line-height:1.08}h1{font-size:clamp(3.8rem,7vw,7.5rem);letter-spacing:-.065em}h2{font-size:clamp(2.5rem,4.8vw,4.7rem);letter-spacing:-.045em}h3{line-height:1.2}.eyebrow{display:block;color:var(--red);font-size:.77rem;font-weight:850;letter-spacing:.19em;margin-bottom:1rem}.small,small{font-size:.78rem;color:var(--muted)}.alert{border:1px solid #e3a99e;border-radius:9px;color:#942c1c;background:#fff1ed;padding:12px}.announcement{background:var(--green);color:#fff;display:flex;justify-content:space-between;gap:12px;padding:9px max(4vw,20px);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.announcement a{text-decoration:none;font-weight:700}.header{position:sticky;top:0;z-index:20;background:rgba(255,254,250,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.header-inner{max-width:1460px;margin:auto;min-height:82px;padding:10px 4vw;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand img{width:162px;height:41px;object-fit:cover}.header nav{display:flex;gap:32px;font-weight:700;font-size:.9rem}.header nav a{text-decoration:none}.header nav a:hover,.text-link:hover{color:var(--red)}.button{display:inline-flex;justify-content:center;align-items:center;gap:12px;border:0;border-radius:5px;background:var(--green);color:#fff;text-decoration:none;padding:13px 21px;font-weight:750;transition:transform .16s,background .16s}.button:hover{transform:translateY(-2px);background:#225f4a}.button:disabled{opacity:.5;cursor:not-allowed;transform:none}.button-red{background:var(--red)}.button-red:hover{background:#c93928}.cart-toggle span{margin-left:8px;border-radius:100%;background:#fff;color:var(--green);padding:2px 8px}.hero{max-width:1600px;margin:auto;display:grid;grid-template-columns:1fr 1fr;min-height:655px}.hero-copy{padding:8vw 5vw 5vw 9vw;display:flex;flex-direction:column;justify-content:center}.hero h1{margin-bottom:24px}.hero h1 em{color:var(--red);font-weight:normal}.hero-copy>p{font-size:1.12rem;max-width:490px;color:var(--muted)}.hero-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin:22px 0 45px}.text-link{text-decoration:none;font-weight:700}.hero-meta{display:flex;flex-wrap:wrap;gap:12px;font-size:.8rem;color:var(--green);font-weight:700}.hero-meta span{border:1px solid #d8dfd6;border-radius:30px;padding:8px 12px}.hero-photo{position:relative;overflow:hidden;background:var(--green)}.hero-photo>img{width:100%;height:100%;object-fit:cover;filter:saturate(1.1)}.hero-stamp{position:absolute;bottom:38px;left:36px;background:var(--red);color:#fff;line-height:1.1;font-size:1.3rem;font-weight:900;letter-spacing:.1em;padding:18px;border-radius:100%;width:120px;height:120px;display:grid;place-items:center;text-align:center;transform:rotate(-14deg)}.feature-band{background:var(--green);color:#fff;display:grid;grid-template-columns:repeat(3,1fr);gap:0;padding:26px 5vw;text-align:center}.feature-band>div{display:grid;gap:2px;border-right:1px solid #ffffff45}.feature-band>div:last-child{border:0}.feature-band strong{font-family:Georgia,serif;font-size:1.24rem}.feature-band span{font-size:.79rem;color:#daecdf}.menu-section{max-width:1460px;margin:auto;padding:105px 4vw 80px}.section-head{text-align:center;max-width:690px;margin:0 auto 48px}.section-head p{color:var(--muted)}.menu-tools{position:sticky;top:82px;z-index:10;background:var(--cream);padding:14px 0 18px;border-bottom:1px solid var(--line)}.menu-tools input{width:100%;max-width:460px;border:1px solid var(--line);background:#fff;border-radius:5px;padding:12px 16px;outline-color:var(--green)}.categories{display:flex;gap:8px;overflow:auto;padding:13px 0 0;scrollbar-width:thin}.categories button{white-space:nowrap;border:1px solid #d5ded5;border-radius:22px;background:#fff;padding:8px 14px;color:var(--green);font-size:.76rem;font-weight:850;letter-spacing:.04em}.categories button:hover,.categories button.active{color:#fff;background:var(--green)}.menu-category{margin:52px 0 70px}.category-title{display:flex;justify-content:space-between;align-items:baseline;gap:20px;border-bottom:2px solid var(--green);padding-bottom:12px;margin-bottom:24px}.category-title span{font-size:clamp(1.7rem,3vw,2.4rem);font-weight:800;letter-spacing:-.03em}.item-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:19px}.menu-card{background:var(--paper);border:1px solid var(--line);border-radius:8px;overflow:hidden;display:flex;flex-direction:column;transition:transform .15s,box-shadow .15s}.menu-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.menu-card>img,.image-fallback{height:184px;width:100%;object-fit:cover}.image-fallback{display:grid;place-items:center;font-size:3rem;color:#acd6b7;background:linear-gradient(120deg,#d9eddd,#fff0da)}.item-body{padding:19px;display:flex;flex-direction:column;flex:1}.item-price{color:var(--red);font-size:.78rem;text-transform:uppercase;font-weight:900;letter-spacing:.09em}.item-body h3{font-size:1.13rem;margin:6px 0 8px}.item-body p{color:var(--muted);font-size:.85rem;flex:1;max-height:85px;overflow:hidden}.add-button{border:0;background:none;padding:8px 0 0;display:flex;justify-content:space-between;align-items:center;color:var(--green);font-weight:850;border-top:1px solid var(--line);text-align:left}.add-button span{color:var(--red);font-size:1.5rem}.story{background:#f1eadd;display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center;padding:90px max(4vw,calc((100vw - 1335px)/2))}.story-images{display:flex;align-items:center;gap:16px}.story-images img{width:50%;height:370px;object-fit:cover;border-radius:6px}.story-images img:last-child{margin-top:62px}.story p{color:var(--muted);max-width:470px;font-size:1.1rem}.visit{max-width:1300px;margin:auto;padding:100px 4vw;display:grid;grid-template-columns:1fr 1fr;gap:5vw}.visit a{color:var(--green);font-weight:800}.card{background:#fff;border:1px solid var(--line);border-radius:9px;box-shadow:var(--shadow);padding:28px}.hours h3{margin-top:0;margin-bottom:10px}.hours h3:not(:first-child){margin-top:24px}.hours div div{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:5px 0;font-size:.88rem}.hours small{display:block;margin-top:22px}footer{background:var(--dark);color:#e8f0e8;display:flex;align-items:center;gap:25px;flex-wrap:wrap;padding:34px 5vw}footer img{width:130px}footer p{margin:0;flex:1}footer a{font-size:.8rem}footer span{font-size:.8rem}dialog{border:0;border-radius:12px;box-shadow:0 30px 100px #061b1770;background:var(--paper);color:var(--dark);width:min(95vw,650px);max-height:92vh;padding:28px 30px;overflow:auto}dialog::backdrop{background:#0a261cca}.close{border:0;background:none;font-size:2rem;line-height:1;padding:0 4px;color:var(--green);float:right}#customize h2,#cart-dialog h2{font-size:2.5rem;margin:0 0 14px}.option-group{border:1px solid var(--line);border-radius:6px;margin:21px 0;padding:16px}.option-group legend{font-weight:800;padding:0 5px}.option-group legend small{font-weight:400}.radio{display:inline-flex;align-items:center;gap:7px;margin:5px 15px 5px 0;font-size:.89rem}.radio input{accent-color:var(--red)}.topping-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding:8px 0}.topping-row .radio{flex:1;min-width:195px}.topping-row select{max-width:120px}.extra{font-size:.82rem}.modal-footer{position:sticky;bottom:-28px;background:var(--paper);border-top:1px solid var(--line);padding:15px 0;display:flex;align-items:end;justify-content:space-between;gap:16px}.modal-footer input{width:76px}.modal-footer label{max-width:100px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid fieldset,.form-grid>label:last-child,#delivery-fields{grid-column:1/-1}.form-grid fieldset{border:1px solid var(--line);border-radius:6px}.form-grid label,.install label{display:grid;gap:5px;font-size:.84rem;font-weight:750}.form-grid .radio{display:inline-flex}.form-grid input,.form-grid select,.form-grid textarea,.install input,#item-fields textarea,.modal-footer input,.topping-row select{border:1px solid #cfd9ce;padding:10px;border-radius:5px;background:#fff;width:100%;color:var(--dark)}.form-grid textarea{resize:vertical}#delivery-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}#delivery-fields[hidden],#later-field[hidden],#delivery-choice[hidden]{display:none}.cart-header{display:flex;justify-content:space-between}.cart-line{border-bottom:1px solid var(--line);padding:14px 0;display:flex;justify-content:space-between;align-items:start;gap:14px}.cart-line div{flex:1}.cart-line small{display:block}.cart-line button{background:none;border:0;color:var(--red);font-size:1.5rem}.cart-line span{font-weight:800}#checkout-form{margin-top:22px}#checkout-total{margin:25px 0 12px;padding:14px;background:#f3f3eb}#checkout-total>div{display:flex;justify-content:space-between;gap:15px;padding:3px 0}#checkout-total .total{border-top:1px solid #d1d9d1;margin-top:8px;padding-top:12px;font-size:1.25rem}.checkout-button{width:100%}.status{text-align:center;padding:30px 10px}.status .close{position:absolute;right:25px;top:20px}.status h2{font-size:2.6rem}.install{max-width:550px;margin:9vh auto}.install form{display:grid;gap:16px}.install h1{font-size:2.5rem}code{background:#e9eee7;padding:2px 5px}
@media(max-width:1050px){.item-grid{grid-template-columns:repeat(3,1fr)}.hero-copy{padding-left:5vw}.header nav{gap:18px}}@media(max-width:740px){.announcement{font-size:.65rem}.header-inner{min-height:70px}.header nav{display:none}.brand img{width:125px;height:32px}.hero{grid-template-columns:1fr}.hero-copy{padding:65px 6vw}.hero h1{font-size:clamp(3.6rem,12vw,5.5rem)}.hero-photo{height:310px}.hero-stamp{bottom:18px;left:20px;transform:rotate(-9deg) scale(.75);transform-origin:bottom left}.feature-band{grid-template-columns:1fr;gap:16px}.feature-band>div{border:0;border-bottom:1px solid #ffffff45;padding-bottom:13px}.feature-band>div:last-child{border:0}.menu-section{padding:65px 5vw}.menu-tools{top:70px}.item-grid{grid-template-columns:repeat(2,1fr)}.story,.visit{grid-template-columns:1fr;padding:65px 5vw}.story-images img{height:240px}.visit{gap:30px}footer{display:grid;gap:10px}}@media(max-width:480px){.item-grid{gap:10px}.menu-card>img,.image-fallback{height:130px}.item-body{padding:11px}.item-body h3{font-size:.96rem}.item-body p{font-size:.73rem}.add-button{font-size:.75rem}.form-grid{grid-template-columns:1fr}.form-grid fieldset,.form-grid>label:last-child,#delivery-fields{grid-column:1}#delivery-fields{grid-template-columns:1fr}dialog{padding:20px}.modal-footer{bottom:-20px}.cart-toggle{font-size:.76rem;padding:10px}.hero-actions{gap:15px}}
dialog[open]{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);margin:0;z-index:100}
