@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/font-0.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/font-1.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/font-2.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/font-3.ttf) format('truetype');
}
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(assets/font-4.ttf) format('truetype');
}
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 600;
  font-display: swap;
  src: url(assets/font-5.ttf) format('truetype');
}
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/font-6.ttf) format('truetype');
}
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/font-7.ttf) format('truetype');
}
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/font-8.ttf) format('truetype');
}

:root{--paper:#faf8f0;--cream:#f0ecd9;--ink:#273c2c;--green:#29462f;--lime:#c9dd89;--olive:#5b693c;--muted:#6c7064;--line:#dadfcd;--white:#fffef9;--serif:'Playfair Display',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:15px/1.65 var(--sans)}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #9daf47;outline-offset:4px}img{display:block;max-width:100%}button{color:inherit}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:500;letter-spacing:-.045em;line-height:1.12}h1 em,h2 em,h3 em{font-weight:500;color:var(--olive)}h2{font-size:clamp(36px,4.4vw,58px);margin-bottom:0}h3{font-size:38px}p{margin-bottom:18px}.wrap{max-width:1260px;margin:auto;padding-left:42px;padding-right:42px}.section{padding-top:94px;padding-bottom:88px}.topline{font-size:11px;text-transform:uppercase;letter-spacing:.16em;text-align:center;padding:9px 20px;background:var(--green);color:var(--paper)}.topline span{padding:0 18px;color:var(--lime)}.header{position:sticky;top:0;z-index:20;background:rgba(250,248,240,.96);backdrop-filter:blur(12px);max-width:100%;padding:17px max(42px,calc((100vw - 1176px)/2));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e3e5d7;gap:20px}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.brand img{border-radius:50%;width:59px;height:59px;object-fit:cover}.brand>span{font-family:var(--serif);font-size:20px;font-weight:600;line-height:1.05;letter-spacing:-.02em}.brand em{display:block;font-size:22px}.header nav{display:flex;gap:30px;font-size:13px;font-weight:500}.header nav a:hover{color:var(--olive)}.button{display:inline-flex;justify-content:center;align-items:center;gap:25px;background:var(--green);color:var(--paper);padding:16px 24px;border:1px solid var(--green);border-radius:7px;font-weight:600;font-size:14px;line-height:1.45;transition:background .2s,transform .2s}.button:hover{background:#405c31;transform:translateY(-1px)}.button.small{padding:11px 18px;gap:14px;font-size:12px}.button.small [data-cart-count]{background:#d0e096;color:var(--green);border-radius:20px;min-width:20px;text-align:center;padding:1px 4px}.button.light{background:var(--lime);color:var(--ink);border-color:var(--lime);white-space:nowrap}.button.full{width:100%}.text-link{display:inline-flex;gap:16px;align-items:center;font-size:13px;font-weight:600;border-bottom:1px solid #93a183;padding-bottom:4px}.text-link:hover{color:var(--olive)}.eyebrow{font-family:var(--sans);font-size:10px;font-weight:700;letter-spacing:.17em;margin-bottom:22px}.hero{display:grid;grid-template-columns:1fr 1fr;gap:42px;padding-top:48px;padding-bottom:55px;align-items:center}.hero-copy{padding:20px 0}.hero h1{font-size:clamp(48px,5.5vw,72px);margin:0 0 26px;line-height:1.075}.hero .eyebrow{font-size:9px;display:flex;align-items:center;gap:9px}.small-sun{font-size:23px;color:#82933d}.hero-intro{max-width:355px;font-size:15px;color:var(--muted);line-height:1.8}.hero-actions{display:flex;align-items:center;gap:22px;margin-top:28px}.hero-foot{display:flex;align-items:center;gap:12px;margin-top:36px}.hero-foot p{margin:0;font-size:11px;color:var(--muted);line-height:1.6}.hero-foot strong{font-weight:500;color:var(--ink)}.leaf{font-size:34px;color:#7c8c4b}.hero-visual{position:relative;align-self:stretch;min-height:520px;padding-top:8px}.photo-frame{height:100%;min-height:500px;border-radius:180px 180px 12px 12px;overflow:hidden;position:relative;background:#cbb275}.photo-frame img{height:100%;width:100%;object-fit:cover;position:absolute;object-position:53% 50%}.photo-shade{position:absolute;inset:0;background:linear-gradient(transparent 55%,#172718a6)}.photo-caption{position:absolute;bottom:38px;left:34px;color:white}.photo-caption span{display:block;font-size:9px;letter-spacing:.18em;margin-bottom:8px}.photo-caption strong{font-family:var(--serif);font-size:30px;font-weight:500}.round-stamp{position:absolute;right:-24px;top:36px;width:125px;height:125px;background:var(--lime);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(12deg);outline:1px solid var(--green);outline-offset:-8px;box-shadow:0 8px 25px #20352210}.round-stamp span{font-size:8px;letter-spacing:.12em}.round-stamp strong{font-family:var(--serif);font-size:17px;font-style:italic;padding:5px 0}.photo-note{display:flex;justify-content:space-between;margin-top:10px;font-size:10px;color:var(--muted)}.flavor-strip{display:flex;gap:35px;justify-content:center;align-items:center;background:#e9edda;border-top:1px solid #d9dfc8;border-bottom:1px solid #d9dfc8;padding:18px 25px;font-family:var(--serif);font-size:17px}.flavor-strip b{font-size:24px;color:#809049;font-weight:400}.section-top{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:38px}.section-top>p{max-width:335px;font-size:13px;color:var(--muted);margin-bottom:3px}.section-top .eyebrow{margin-bottom:12px}.menu-tools{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:20px;gap:16px}.filter-group{display:flex;gap:7px;flex-wrap:wrap}.filter{border:1px solid var(--line);background:transparent;border-radius:30px;padding:9px 21px;font-size:13px;font-weight:500}.filter.active{background:var(--green);border-color:var(--green);color:white}.filter:hover:not(.active){background:var(--cream)}.menu-cart{font-size:12px;font-weight:600;white-space:nowrap}.menu-cart [data-cart-count]{margin-left:8px;background:#e4ebcc;border-radius:20px;padding:2px 7px}.menu-intro{display:flex;justify-content:space-between;color:var(--muted);font-size:12px;padding:20px 0 6px}.menu-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:42px}.menu-item{display:flex;align-items:center;gap:14px;padding:25px 0;border-bottom:1px solid var(--line)}.item-mark{flex:none;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#e9eddb;font-family:var(--serif);font-size:20px;color:#6b7946}.item-info{flex:1;min-width:0}.item-info h3{font-family:var(--sans);font-size:15px;font-weight:600;letter-spacing:0;margin:0 0 4px}.item-info p{font-size:11px;color:var(--muted);margin:0}.item-price{font-weight:600;font-size:14px;white-space:nowrap}.quantity{display:flex;align-items:center;gap:8px}.quantity button{width:33px;height:33px;border:1px solid #c5cdb5;background:transparent;border-radius:50%;font-size:21px;line-height:1}.quantity button:hover{background:var(--green);color:white}.quantity output{font-size:13px;min-width:13px;text-align:center}.menu-item .quantity .minus,.menu-item .quantity output{display:none}.menu-item.has-quantity .quantity .minus,.menu-item.has-quantity .quantity output{display:inline-grid;place-items:center}.small-note{font-size:11px;color:var(--muted);line-height:1.65;margin-top:22px}.delivery-band{background:var(--green);color:var(--paper);padding:48px 0}.delivery-layout{display:flex;gap:30px;align-items:center}.delivery-layout>div:nth-child(2){flex:1}.delivery-icon{border:1px solid #6f825b;width:78px;height:78px;flex:none;border-radius:50%;display:grid;place-items:center;font-size:37px;color:var(--lime)}.delivery-layout h2{font-size:37px}.delivery-layout h2 em{color:var(--lime)}.delivery-layout .eyebrow{color:var(--lime);margin-bottom:10px;font-size:9px}.delivery-layout p:last-child{max-width:560px;font-size:12px;color:#d0d9c9;margin:17px 0 0}.package-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:38px}.package-card{background:#f0f1e6;border:1px solid #dce2cb;border-radius:10px;padding:28px 22px;display:flex;flex-direction:column}.package-card:nth-child(2){background:var(--green);color:var(--paper);border-color:var(--green)}.package-card:nth-child(2) .package-details,.package-card:nth-child(2) .package-price small{color:#d8e2cf}.package-number{font-family:var(--serif);font-size:14px;color:var(--olive);margin-bottom:30px;display:flex;justify-content:space-between}.package-card:nth-child(2) .package-number{color:var(--lime)}.package-number i{font-size:26px;font-style:normal;line-height:1}.package-card h3{font-size:29px;margin-bottom:15px;letter-spacing:-.04em}.package-details{font-size:12px;color:var(--muted);margin-bottom:22px;flex:1}.package-price{font-family:var(--serif);font-size:27px;white-space:nowrap;line-height:1.1;margin-bottom:22px}.package-price small{font-family:var(--sans);font-size:10px;display:block;margin-top:8px;color:var(--muted)}.package-card button{display:flex;justify-content:space-between;border:0;border-top:1px solid #a7b28c;padding:14px 0 0;color:inherit;background:transparent;font-size:12px;font-weight:600}.package-card button:hover{text-decoration:underline}.quote-note{display:flex;align-items:center;gap:18px;border-bottom:1px solid var(--line);padding:24px 0 36px}.quote-note>span{font-size:24px;color:var(--olive)}.quote-note p{font-size:11px;color:var(--muted);margin:0}.quote-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;padding-top:56px;align-items:start}.quote-intro{padding-top:25px}.quote-intro h3{font-size:45px}.quote-intro>p:not(.eyebrow){font-size:14px;max-width:340px;color:var(--muted)}.event-drawing{padding:25px 0;color:var(--olive);font-family:var(--serif);max-width:300px;text-align:center;transform:rotate(-4deg)}.event-drawing span{font-size:60px}.event-drawing i{font-size:26px;padding:0 20px;font-style:normal}.event-drawing small{display:block;font-size:17px;font-style:italic;border-top:1px solid #bec7ad;padding-top:12px}.form-card{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:30px}.form-card label{display:flex;flex-direction:column;gap:7px;font-size:11px;font-weight:600;margin-bottom:17px}.optional{font-size:10px;color:var(--muted);font-weight:400;display:contents}.form-card input:not([type=radio]),.form-card select,.form-card textarea{width:100%;min-width:0;padding:11px 12px;border:1px solid #cfd5c4;border-radius:5px;background:var(--white);color:var(--ink);font-size:12px;font-weight:400;min-height:44px}.form-card textarea{resize:vertical}.form-card input::placeholder,.form-card textarea::placeholder{color:#808575}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.estimate{display:flex;justify-content:space-between;align-items:center;margin:0 0 24px;padding:14px 16px;border-radius:5px;background:#edf0df;font-size:11px}.estimate strong{font-family:var(--serif);font-size:22px}.form-disclaimer{font-size:10px;line-height:1.7;color:var(--muted);margin:12px 0 0}.order-section{background:#edeeda;padding:80px 0}.order-layout{display:grid;grid-template-columns:1fr 1.05fr;gap:70px;align-items:start}.order-overview h2{margin-bottom:36px}.cart-lines{border-top:1px solid #cdd5ba}.empty-cart{padding:24px 0;font-size:14px;color:var(--muted)}.empty-cart a{text-decoration:underline}.cart-line{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid #cdd5ba;padding:19px 0;align-items:center}.cart-line h3{font-family:var(--sans);font-size:13px;letter-spacing:0;font-weight:600;margin:0 0 4px}.cart-line p{font-size:11px;color:var(--muted);margin:0}.cart-line-controls{display:flex;gap:18px;align-items:center}.cart-line-controls>span{font-size:13px;font-weight:600;min-width:65px;text-align:right}.cart-total{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:25px;font-size:12px}.cart-total strong{font-family:var(--serif);font-size:31px}.order-overview .small-note{margin-top:12px}.order-overview .text-link{margin-top:14px}.form-title{font-weight:600;font-size:16px;margin-bottom:15px}.delivery-options{display:flex;gap:18px;flex-wrap:wrap;margin-bottom:10px}.delivery-options label{display:flex;flex-direction:row;gap:7px;align-items:center;font-size:12px}.delivery-options input{accent-color:var(--green);width:16px;height:16px}.pickup-note{background:#edf0df;padding:12px 15px;font-size:12px}.form-error{font-size:12px;color:#a03022;background:#fff0e6;border-radius:5px;padding:10px}.visit-section{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.visit-section h2{font-size:41px}.visit-details{display:grid;grid-template-columns:1fr 1fr;gap:25px}.visit-details>div>span{font-size:9px;letter-spacing:.12em;font-weight:700;display:block;margin-bottom:16px}.visit-details p{font-size:12px;margin-bottom:12px;color:var(--muted)}.visit-details a{font-size:11px;text-decoration:underline;text-underline-offset:4px}.visit-details .contact-number{font-size:16px;white-space:nowrap;text-decoration:none;display:block;margin-bottom:7px}footer{background:var(--green);color:var(--paper);padding:30px 0}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:25px}.footer-inner .brand{transform:scale(.88);transform-origin:left}.footer-inner p{font-size:12px;margin:0;color:#c4d0ba}.privacy-button{font-size:11px;border:0;background:none;color:#d0dabf;text-decoration:underline}.floating-cart{position:fixed;bottom:22px;right:25px;background:var(--green);color:var(--paper);box-shadow:0 5px 30px #19352235;border-radius:9px;display:flex;gap:25px;align-items:center;font-size:12px;padding:16px 22px;z-index:25;border:1px solid #92aa70}.floating-cart strong{color:var(--lime)}[hidden]{display:none!important}.toast{position:fixed;bottom:95px;right:25px;background:var(--white);border:1px solid var(--line);color:var(--ink);padding:10px 17px;border-radius:7px;box-shadow:0 5px 20px #19352215;font-size:12px;opacity:0;pointer-events:none;transform:translateY(5px);transition:.2s;z-index:30}.toast.visible{opacity:1;transform:translateY(0)}.skip-link{position:fixed;left:12px;top:-100px;padding:10px 20px;background:var(--lime);z-index:100}.skip-link:focus{top:10px}dialog{border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink);max-width:560px;padding:38px;max-height:80vh}dialog::backdrop{background:#182b1ac0}dialog p{font-size:13px}dialog h3{font-size:32px}.dialog-close{position:absolute;right:15px;top:10px;border:0;background:none;font-size:28px}
@media(min-width:1450px){.hero{padding-top:65px;padding-bottom:65px;min-height:670px}}@media(max-width:1050px){.header{padding:15px 28px}.header nav{gap:20px;font-size:12px}.wrap{padding-left:28px;padding-right:28px}.hero{gap:25px}.hero h1{font-size:57px}.hero-actions{gap:15px}.hero-actions .button{padding:14px 17px;gap:12px}.hero-visual{min-height:485px}.round-stamp{right:-10px}.flavor-strip{gap:18px;font-size:14px}.package-grid{grid-template-columns:repeat(2,1fr)}.package-card h3{font-size:31px}.package-number{margin-bottom:22px}.quote-layout{gap:40px}.order-layout{gap:35px}.menu-grid{column-gap:26px}.item-mark{display:none}.visit-section{gap:25px}.visit-section h2{font-size:35px}}
@media(max-width:720px){html{scroll-padding-top:84px}.topline{font-size:8px;padding:7px 10px}.header{padding:12px 20px}.brand img{width:44px;height:44px}.brand>span{font-size:16px}.brand em{font-size:18px}.header nav{display:none}.button.small{padding:10px 11px;gap:8px}.wrap{padding-left:23px;padding-right:23px}.hero{grid-template-columns:1fr;padding-top:25px;padding-bottom:42px;gap:25px}.hero-copy{padding:8px 0 0}.hero h1{font-size:57px;line-height:1.06;margin-bottom:24px}.hero .eyebrow{margin-bottom:20px}.hero-intro{font-size:14px;max-width:320px}.hero-actions{gap:22px;margin-top:23px}.hero-foot{margin-top:23px}.hero-visual{height:390px;min-height:390px;margin:0 8px 0 0}.photo-frame{min-height:0;border-radius:140px 140px 9px 9px}.photo-caption{bottom:25px;left:26px}.photo-caption strong{font-size:27px}.round-stamp{width:104px;height:104px;top:18px;right:-13px}.round-stamp strong{font-size:15px}.round-stamp span{font-size:7px}.photo-note{font-size:9px}.flavor-strip{flex-wrap:wrap;column-gap:15px;row-gap:5px;padding:17px 15px;font-size:13px}.flavor-strip b{font-size:18px}.flavor-strip span:last-child,.flavor-strip b:nth-last-child(2){display:none}.section{padding-top:58px;padding-bottom:54px}.section-top{display:block;margin-bottom:27px}.section-top>p{margin-top:18px;font-size:12px;max-width:100%}.section-top h2{font-size:41px}.eyebrow{font-size:9px}.menu-tools{padding-bottom:15px}.filter-group{gap:5px}.filter{font-size:11px;padding:8px 13px}.menu-cart{display:none}.menu-intro{font-size:10px;gap:15px}.menu-grid{grid-template-columns:1fr}.menu-item{padding:22px 0;gap:12px}.item-mark{display:grid;width:38px;height:38px}.item-info h3{font-size:14px}.item-info p{font-size:10px}.item-price{font-size:13px}.quantity{gap:5px}.quantity button{width:31px;height:31px}.delivery-band{padding:37px 0}.delivery-layout{display:block}.delivery-icon{display:none}.delivery-layout h2{font-size:34px}.delivery-layout p:last-child{font-size:12px}.delivery-layout .button{margin-top:23px;width:100%;justify-content:space-between}.package-grid{gap:10px;margin-top:28px}.package-card{padding:21px 16px}.package-card h3{font-size:26px}.package-number{margin-bottom:20px}.package-details{font-size:11px;margin-bottom:20px}.package-price{font-size:24px}.package-card button{font-size:10px}.quote-note{padding-bottom:27px;gap:12px}.quote-note p{font-size:10px}.quote-layout{grid-template-columns:1fr;gap:25px;padding-top:26px}.quote-intro{padding-top:0}.quote-intro h3{font-size:38px;margin-bottom:18px}.quote-intro h3 br{display:none}.quote-intro>p:not(.eyebrow){font-size:12px;max-width:100%;margin-bottom:0}.event-drawing{display:none}.form-card{padding:22px 18px}.field-row{gap:10px}.form-card input:not([type=radio]),.form-card select,.form-card textarea{font-size:16px;padding:10px;min-height:44px}.form-card label{font-size:11px}.form-disclaimer{font-size:10px}.estimate strong{font-size:23px}.order-section{padding:55px 0}.order-layout{grid-template-columns:1fr;gap:28px}.order-overview h2{font-size:43px;margin-bottom:28px}.cart-line-controls{gap:10px}.cart-line-controls>span{min-width:60px;font-size:12px}.visit-section{grid-template-columns:1fr;gap:32px}.visit-section h2{font-size:38px}.visit-details{gap:15px}.visit-details .contact-number{font-size:14px}.visit-details>div>span{font-size:8px}.footer-inner{flex-wrap:wrap;gap:15px}.footer-inner p{order:3;width:100%;font-size:11px}.footer-inner .brand{transform:none}.floating-cart{left:15px;right:15px;bottom:14px;justify-content:space-between;padding:14px 18px}.toast{bottom:82px;right:15px;left:15px;text-align:center}body.has-cart footer{padding-bottom:90px}dialog{margin:20px;max-width:calc(100vw - 40px);padding:30px 24px}}
@media(max-width:360px){.hero h1{font-size:49px}.hero-actions{gap:12px}.hero-actions .button{font-size:12px}.text-link{font-size:11px}.item-mark{display:none}.package-card h3{font-size:23px}.filter{padding:8px 10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

.payment-note{border-left:3px solid #8b9f58;padding:10px 13px;margin:0 0 20px;background:#f0f3e6;font-size:11px}.payment-note strong{font-size:12px}.payment-note p{font-size:11px;color:var(--muted);margin:5px 0 0}
