.ec-menu-page{--mu:calc(100vw / 853);font-family:EventfulMenu,Arial,sans-serif;font-size:calc(13 * var(--mu));color:#174b38;background:#fff3e9;line-height:1.4;display:flow-root}.ec-menu-page h1,.ec-menu-page h3{font-family:EventfulSerif,Georgia,serif}.ec-menu-page h1{font-size:calc(102 * var(--mu));line-height:.95;margin:calc(12 * var(--mu)) 0 0;letter-spacing:calc(-3 * var(--mu));white-space:nowrap}.ec-menu-page em{font-style:normal;color:#dd6982}.ec-menu-page p{margin:0}.ec-menu-hero{position:relative;min-height:calc(506 * var(--mu));isolation:isolate}.ec-menu-hero-image.ecx-hero-picture{position:absolute;inset:0 0 0 44%;border-radius:0;aspect-ratio:auto;margin:0;z-index:-2}.ec-menu-hero-image img{width:100%;height:100%;object-fit:cover;object-position:53% center}.ec-menu-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#fff3e9 0%,#fff3e9f0 39%,#fff3e95a 54%,transparent 69%);pointer-events:none}.ec-menu-intro{padding:calc(15 * var(--mu)) 0 calc(38 * var(--mu)) calc(38 * var(--mu));width:58%}.ec-menu-logo{width:calc(295 * var(--mu));height:calc(215 * var(--mu));margin-left:calc(53 * var(--mu))}.ec-menu-logo img{width:100%;height:100%;object-fit:contain}.ec-menu-page .ec-menu-script{font-family:EventfulScript,cursive;font-size:calc(36 * var(--mu));line-height:1.1;margin:calc(6 * var(--mu)) 0 calc(14 * var(--mu));white-space:nowrap}.ec-menu-intro>p:not(.ec-menu-script){max-width:calc(400 * var(--mu));font-size:calc(14 * var(--mu));line-height:1.43}.ec-menu-panel{position:relative;margin:0 calc(21 * var(--mu)) calc(26 * var(--mu));border:1px solid #d9ba87;border-radius:calc(20 * var(--mu));background:#fcece2}.ec-menu-ribbon{display:flex;align-items:center;justify-content:center;gap:calc(3 * var(--mu));font-family:EventfulMenu,Arial,sans-serif!important;font-weight:400!important;font-size:calc(17 * var(--mu))!important;letter-spacing:calc(1.5 * var(--mu));margin:calc(-22 * var(--mu)) 0 calc(12 * var(--mu));line-height:1.4}.ec-menu-ribbon>span{background:#004c32;color:#fff5e8;border-radius:calc(30 * var(--mu));padding:calc(7 * var(--mu)) calc(28 * var(--mu));text-align:center}.ec-menu-ribbon .ecxa-sprig{width:calc(47 * var(--mu));height:calc(36 * var(--mu));top:0}.ec-menu-ribbon .ecxa-sprig:first-child{rotate:160deg}.ec-menu-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:0 calc(20 * var(--mu)) calc(15 * var(--mu));gap:calc(14 * var(--mu)) calc(16 * var(--mu))}.ec-menu-item.ecx-card{display:flex;align-items:center;gap:calc(14 * var(--mu));border:0;border-radius:0;box-shadow:none;background:none;overflow:visible;min-width:0}.ec-menu-photo.ecx-card-photo{width:calc(88 * var(--mu));height:calc(88 * var(--mu));aspect-ratio:1;flex-shrink:0;border-radius:50%;overflow:hidden;cursor:default}.ec-menu-photo img{width:100%;height:100%;object-fit:cover}.ec-menu-item .ecx-card-copy{padding:0;min-width:0}.ec-menu-page .ec-menu-item h3{font-size:calc(19 * var(--mu));font-weight:600;line-height:1.1;margin:0 0 calc(6 * var(--mu));letter-spacing:calc(-.6 * var(--mu))}.ec-menu-item p{font-size:calc(11.6 * var(--mu));line-height:1.38}.ec-menu-more{background:#eeead7;padding:calc(12 * var(--mu)) calc(20 * var(--mu));font-size:calc(12 * var(--mu));border-radius:0 0 calc(19 * var(--mu)) calc(19 * var(--mu))}.ec-menu-pricing{border-inline:0;border-radius:0;background:transparent;margin-inline:0;margin-bottom:0;padding-top:calc(4 * var(--mu))}.ec-menu-pricing .ec-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:0;gap:0}.ec-menu-pricing .ec-menu-item{position:relative;min-height:calc(200 * var(--mu));padding:calc(12 * var(--mu)) calc(20 * var(--mu));align-items:center}.ec-menu-pricing .ec-menu-item+.ec-menu-item{border-left:1px solid #c8a169}.ec-menu-pricing .ec-menu-photo{width:calc(125 * var(--mu));height:calc(180 * var(--mu));border-radius:calc(9 * var(--mu));flex-shrink:0}.ec-menu-pricing .ec-menu-item:last-child .ec-menu-photo{order:2}.ec-menu-pricing .ec-menu-item h3{font-family:EventfulMenu,Arial,sans-serif;font-size:calc(14 * var(--mu));color:#d96983;letter-spacing:0}.ec-menu-type-icon{display:block;color:#d96983}.ec-menu-type-icon svg{width:calc(33 * var(--mu));height:calc(33 * var(--mu))}.ec-menu-cost{border-top:1px solid #d9c39a;margin-top:calc(10 * var(--mu));padding-top:calc(10 * var(--mu))}.ec-menu-cost strong{display:block;font-family:EventfulMenu,Arial,sans-serif;font-size:calc(22 * var(--mu));line-height:1.25;letter-spacing:calc(-1 * var(--mu));margin:calc(3 * var(--mu)) 0}.ec-menu-benefits{padding:calc(20 * var(--mu)) calc(25 * var(--mu));width:70%;float:left}.ec-menu-benefit-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}.ec-menu-benefit.ecx-card{text-align:center;background:none;border:0;border-radius:0;box-shadow:none;padding:0 calc(5 * var(--mu));overflow:visible}.ec-menu-benefit+.ec-menu-benefit{border-left:1px solid #e5cfa6!important}.ec-menu-benefit-icon{width:calc(56 * var(--mu));height:calc(56 * var(--mu));border:1px solid #c5a267;border-radius:50%;display:grid;place-items:center;margin:0 auto calc(6 * var(--mu))}.ec-menu-benefit-icon svg,.ec-menu-benefit-icon img{width:75%;height:75%;object-fit:contain}.ec-menu-page .ec-menu-benefit h3{font-family:EventfulMenu,Arial,sans-serif;font-size:calc(11 * var(--mu));line-height:1.25;font-weight:400;margin:0}.ec-menu-action{float:right;width:30%;padding:calc(38 * var(--mu)) calc(18 * var(--mu)) calc(20 * var(--mu)) 0}.ec-menu-action .ecx-button{background:#f7c2ca;color:#143f2e;border:0;padding:calc(16 * var(--mu)) calc(25 * var(--mu));font-size:calc(17 * var(--mu))!important;gap:calc(12 * var(--mu));border-radius:calc(50 * var(--mu));white-space:nowrap}.ec-menu-action svg{width:calc(24 * var(--mu));height:calc(24 * var(--mu))}
@media(max-width:767px){.ec-menu-page{--mu:1px;font-size:14px}.ec-menu-hero{min-height:0;display:flex;flex-direction:column}.ec-menu-intro{padding:20px 6% 27px;width:100%}.ec-menu-logo{width:220px;height:160px;margin:0 auto}.ec-menu-page h1{font-size:clamp(52px,13vw,82px);letter-spacing:-2px;text-align:center;white-space:normal}.ec-menu-page .ec-menu-script{font-size:clamp(24px,5.7vw,34px);text-align:center;white-space:normal}.ec-menu-hero-image.ecx-hero-picture{position:relative;inset:auto;order:2;aspect-ratio:1.5;z-index:0}.ec-menu-hero:after{display:none}.ec-menu-panel{margin:30px 4%}.ec-menu-ribbon{font-size:13px!important;letter-spacing:.8px;margin-top:-19px}.ec-menu-ribbon>span{padding:9px 14px}.ec-menu-ribbon .ecxa-sprig{width:26px;height:25px;margin:0}.ec-menu-grid{grid-template-columns:1fr;padding:4px 17px 20px;gap:18px}.ec-menu-photo.ecx-card-photo{width:92px;height:92px}.ec-menu-page .ec-menu-item h3{font-size:23px;letter-spacing:-.5px}.ec-menu-item p{font-size:13px}.ec-menu-more{font-size:12px;padding:13px 16px;line-height:1.7}.ec-menu-pricing{margin:32px 0 0}.ec-menu-pricing .ec-menu-grid{grid-template-columns:1fr}.ec-menu-pricing .ec-menu-item{padding:18px 6%;min-height:210px;gap:18px}.ec-menu-pricing .ec-menu-item+.ec-menu-item{border-left:0;border-top:1px solid #d9c39a}.ec-menu-pricing .ec-menu-photo{width:100px;height:155px}.ec-menu-page .ec-menu-pricing .ec-menu-item h3{font-size:14px;line-height:1.35}.ec-menu-cost strong{font-size:22px}.ec-menu-benefits{float:none;width:100%;padding:23px 5%}.ec-menu-benefit-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 0}.ec-menu-benefit:nth-child(4){border-left:0!important}.ec-menu-page .ec-menu-benefit h3{font-size:11px}.ec-menu-action{float:none;width:100%;padding:0 6% 27px;text-align:center}.ec-menu-action .ecx-button{min-height:48px;font-size:16px!important;padding:15px 28px}.ec-menu-intro>p:not(.ec-menu-script){font-size:14px;max-width:none}}
.ec-menu-type-icon img{width:calc(33 * var(--mu));height:calc(33 * var(--mu));object-fit:contain}.ec-menu-page:not(:has(.ec-menu-action)) .ec-menu-benefits{width:100%}.ec-menu-page:not(:has(.ec-menu-benefits)) .ec-menu-action{float:none;width:100%;text-align:center}
.ec-menu-page .ecxa-sprig{display:inline-block;color:#b98734;vertical-align:middle;flex-shrink:0}.ec-menu-script .ecxa-sprig{width:calc(48 * var(--mu));height:calc(30 * var(--mu))}.ec-menu-page .ec-menu-script{color:#354d2c}@media(max-width:767px){.ec-menu-script .ecxa-sprig{width:34px;height:25px}}
@media(min-width:768px){.ec-menu-hero-image.ecx-hero-picture{left:33%}.ec-menu-hero:after{background:linear-gradient(90deg,#fff3e9 0%,#fff3e9 33%,#fff3e9de 42%,#fff3e94d 55%,transparent 68%)}.ec-menu-flavours .ec-menu-ribbon>span{min-width:calc(340 * var(--mu))}.ec-menu-pricing .ec-menu-ribbon>span{min-width:calc(298 * var(--mu))}}
.ec-menu-more em{font-family:EventfulScript,cursive;color:#35543a;font-size:calc(23 * var(--mu));font-style:normal;display:inline-block;margin-right:calc(15 * var(--mu))}
/* Cap the reference canvas so desktop typography/artwork stop growing indefinitely. */
@media(min-width:768px){.ec-menu-page{--mu:calc(min(100vw,1200px) / 853);max-width:1200px;margin-inline:auto}.ec-menu-hero-image.ecx-hero-picture{left:0;right:0}.ec-menu-hero-image img{object-position:center;object-fit:cover}.ec-menu-hero:after{background:linear-gradient(90deg,#fff3e930,transparent 65%)}.ec-menu-intro{position:relative;z-index:1}}
@media(max-width:767px){.ec-menu-hero-image.ecx-hero-picture{aspect-ratio:1.15}.ec-menu-hero-image img{object-position:right center}}
/* v2.1.4: photo regions from supplied reference, with separate editable HTML text. */
.ec-menu-photo{position:relative}.ec-menu-photo img.ec-menu-source-crop{position:absolute!important;max-width:none!important;object-fit:fill!important;transform:none!important;animation:none!important}
@media(min-width:768px){.ec-menu-page{--mu:calc(min(100vw,1100px) / 853);max-width:1100px}.ec-menu-hero{height:calc(506 * var(--mu));min-height:0}.ec-menu-intro{padding-bottom:calc(10 * var(--mu))}.ec-menu-hero-image img{object-fit:cover;object-position:center}.ec-menu-flavours{margin-bottom:calc(40 * var(--mu))}.ec-menu-ribbon{position:absolute;inset:calc(-22 * var(--mu)) 0 auto;margin:0;width:100%}.ec-menu-flavours .ec-menu-grid{padding-top:calc(28 * var(--mu));padding-bottom:calc(14 * var(--mu));gap:calc(14 * var(--mu)) calc(16 * var(--mu))}.ec-menu-more{height:calc(49 * var(--mu));padding-block:calc(8 * var(--mu));display:flex;align-items:center;font-size:calc(11.5 * var(--mu));gap:calc(8 * var(--mu))}.ec-menu-more em{white-space:nowrap;margin-right:0}.ec-menu-pricing{padding:0}.ec-menu-pricing .ec-menu-ribbon{top:calc(-29 * var(--mu))}.ec-menu-pricing .ec-menu-item{min-height:calc(205 * var(--mu));padding:calc(20 * var(--mu));display:block}.ec-menu-pricing .ec-menu-photo{position:absolute;left:0;top:0;width:calc(180 * var(--mu));height:calc(205 * var(--mu));border-radius:0;overflow:hidden}.ec-menu-pricing .ec-menu-item:last-child .ec-menu-photo{left:auto;right:0;top:calc(-31 * var(--mu));width:calc(167 * var(--mu));height:calc(236 * var(--mu))}.ec-menu-pricing .ec-menu-item:first-child .ecx-card-copy{margin-left:calc(196 * var(--mu))}.ec-menu-pricing .ec-menu-item:last-child .ecx-card-copy{margin-left:calc(60 * var(--mu));margin-right:calc(100 * var(--mu));position:relative;z-index:1}.ec-menu-type-icon{position:absolute;left:calc(164 * var(--mu));top:calc(30 * var(--mu))}.ec-menu-pricing .ec-menu-item:last-child .ec-menu-type-icon{left:calc(-53 * var(--mu));top:calc(9 * var(--mu))}.ec-menu-cost strong{white-space:nowrap;font-size:calc(22 * var(--mu))}.ec-menu-page .ec-menu-item h3{font-weight:600}.ec-menu-benefits{width:71%;padding-inline:calc(22 * var(--mu));padding-top:calc(23 * var(--mu))}.ec-menu-action{width:29%;padding-top:calc(38 * var(--mu))}.ec-menu-page .ec-menu-benefit h3{font-size:calc(11 * var(--mu))}.ec-menu-benefit:nth-child(3){min-width:calc(150 * var(--mu))}.ec-menu-benefit-grid{grid-template-columns:1fr 1fr 1.6fr 1fr 1fr}.ec-menu-action .ecx-button{padding-inline:calc(25 * var(--mu))}}
@media(max-width:767px){.ec-menu-pricing .ec-menu-photo{width:100px;height:114px;border-radius:0}.ec-menu-pricing .ec-menu-item:last-child .ec-menu-photo{height:141px}.ec-menu-cost strong{white-space:normal}.ec-menu-hero{height:auto}.ec-menu-ribbon{position:static}.ec-menu-more{height:auto;display:block}}
.ec-menu-page .ec-menu-ribbon{font-family:EventfulMenu,Arial,sans-serif!important;letter-spacing:1.5px;font-weight:400!important}.ec-menu-page h1{font-weight:600}.ec-menu-page .ec-menu-flavours h3{font-weight:700}
@media(min-width:768px){.ec-menu-hero{height:calc(504 * var(--mu))}.ec-menu-flavours .ec-menu-grid{padding-top:calc(26 * var(--mu));padding-bottom:calc(12 * var(--mu));column-gap:calc(38 * var(--mu))}.ec-menu-flavours h3{white-space:nowrap}.ec-menu-flavours .ec-menu-item p{font-size:calc(12 * var(--mu))}.ec-menu-pricing .ec-menu-item{min-height:calc(202 * var(--mu))}.ec-menu-pricing .ec-menu-photo{width:calc(160 * var(--mu))}.ec-menu-pricing .ec-menu-item:last-child .ec-menu-photo{width:calc(133 * var(--mu))}.ec-menu-pricing .ec-menu-item:first-child .ec-menu-cost strong{font-size:calc(25 * var(--mu))}.ec-menu-pricing .ec-menu-item:last-child .ec-menu-cost strong{font-size:calc(19 * var(--mu));letter-spacing:calc(-1.2 * var(--mu))}.ec-menu-benefits{padding-bottom:calc(35 * var(--mu))}}
@media(max-width:767px){.ec-menu-pricing .ec-menu-photo{width:90px;height:115px}.ec-menu-pricing .ec-menu-item:last-child .ec-menu-photo{width:80px;height:142px}}
@media(min-width:768px){.ec-menu-flavours .ecx-card-copy{width:calc(144 * var(--mu));flex:0 0 calc(144 * var(--mu))}.ec-menu-pricing .ec-menu-item:first-child .ecx-card-copy{width:calc(210 * var(--mu))}}
@media(min-width:768px){.ec-menu-page .ec-menu-script{margin-top:calc(-14 * var(--mu))!important}.ec-menu-benefits{width:calc(606 * var(--mu));padding-left:calc(12 * var(--mu));padding-right:calc(10 * var(--mu))}.ec-menu-benefit-grid{grid-template-columns:calc(98 * var(--mu)) calc(102 * var(--mu)) calc(158 * var(--mu)) calc(116 * var(--mu)) calc(110 * var(--mu))}}
.ec-menu-page+.brands{position:relative}
@media(min-width:768px){.ec-menu-action{width:calc(100% - 606 * var(--mu))}}
/* v2.1.5: match Home's full viewport section width; remove the boxed poster limit. */
.ec-menu-page{width:100%;max-width:none;margin-inline:0}
@media(min-width:768px){.ec-menu-page{--mu:calc(100vw / 853);width:100%;max-width:none;margin-inline:0}}

/* v2.1.6: mobile cake frame keeps the full stand and flower edges in view. */
@media(max-width:767px){
 .ec-menu-hero-image.ecx-hero-picture{width:92%;margin:0 auto 8px;aspect-ratio:1.12;border-radius:12px;overflow:hidden;background:#fff3e9}
 .ec-menu-hero-image.ecx-hero-picture img{width:100%;height:100%;object-fit:cover;object-position:100% 50%;transform:none!important;animation:none!important}
}

/* v2.3.1: exact gold artwork and orientation from the supplied reference. */
.ec-menu-page .ec-menu-reference-sprig{position:relative;display:inline-block;overflow:hidden;vertical-align:middle;flex-shrink:0;rotate:0deg;transform:none;top:0;background:none;border:0;padding:0;margin:0;line-height:0}
.ec-menu-page .ec-menu-reference-sprig img{position:absolute;max-width:none;object-fit:fill;display:block;transform:none!important;animation:none!important}
.ec-menu-page .ec-menu-ribbon .ec-menu-sprig-left{width:calc(46 * var(--mu));height:calc(31 * var(--mu));rotate:0deg;top:0}
.ec-menu-page .ec-menu-ribbon .ec-menu-sprig-right{width:calc(45 * var(--mu));height:calc(31 * var(--mu));rotate:0deg;top:0}
.ec-menu-page .ec-menu-more .ec-menu-sprig-more{width:calc(29 * var(--mu));height:calc(25 * var(--mu));margin-left:calc(3 * var(--mu));vertical-align:middle}
.ec-menu-page .ec-menu-ribbon .ec-menu-custom-sprig{rotate:0deg;object-fit:contain}
.ec-menu-page .ec-menu-ribbon .ec-menu-custom-sprig.ec-menu-sprig-left{transform:scaleX(-1)}
.ec-menu-page .ec-menu-more .ec-menu-custom-sprig{width:calc(29 * var(--mu));height:calc(25 * var(--mu));object-fit:contain;vertical-align:middle}
@media(max-width:767px){.ec-menu-page .ec-menu-ribbon .ec-menu-reference-sprig{width:30px;height:20.44px}.ec-menu-page .ec-menu-ribbon .ec-menu-sprig-right{width:29.68px}.ec-menu-page .ec-menu-more .ec-menu-sprig-more{width:25px;height:21.55px}}

.ec-menu-art-filters{position:absolute;pointer-events:none}.ec-menu-page .ec-menu-reference-sprig img{filter:url(#ec-menu-gold-only)}

/* v2.6.9: clean mobile portrait; desktop photo remains editable. */
.ec-menu-hero-image picture{display:contents}
@media(max-width:767px){
 .ec-menu-hero-image.ecx-hero-picture:has(source){aspect-ratio:5/6;background:transparent}
 .ec-menu-hero-image.ecx-hero-picture:has(source) img{object-position:center;transform-origin:center}
 .ec-menu-hero-image:before,.ec-menu-hero-image:after{display:none}
}

/* v3.4.38: begin the contact section below both legacy floated menu columns.
   Otherwise its inner grid wraps into the thin space beside the benefits row. */
.ec-menu-page>#menu-contact.ec-home-contact{clear:both;float:none;display:flow-root;width:100%;max-width:none}

/* v3.4.39: keep the pricing divider below the heading, and separate the contact block. */
.ec-menu-page .ec-menu-pricing>.ec-menu-ribbon{z-index:2}
@media(min-width:768px){
 .ec-menu-page .ec-menu-pricing .ec-menu-item+.ec-menu-item{border-left:0;position:relative}
 .ec-menu-page .ec-menu-pricing .ec-menu-item+.ec-menu-item::before{content:'';position:absolute;left:0;top:calc(18 * var(--mu));bottom:0;width:1px;background:#c8a169;pointer-events:none}
}
.ec-menu-page>#menu-contact.ec-home-contact{border-top:1px solid #dfbd91;border-radius:0}

/* v1.0.2: individual photos replace the old screenshot crops. */
.ec-menu-photo img:not(.ec-menu-source-crop){position:static;display:block;width:100%;height:100%;object-fit:cover;object-position:center;transform:none!important;animation:none!important}
.ec-menu-pricing .ec-menu-photo img:not(.ec-menu-source-crop){object-fit:contain;background:#fff3e9}
@media(min-width:768px){
 .ec-menu-hero-image.ecx-hero-picture{left:44%;right:0}
 .ec-menu-hero-image img{object-fit:cover;object-position:center}
 .ec-menu-hero:after{background:linear-gradient(90deg,#fff3e9 0%,#fff3e9 42%,#fff3e9aa 49%,transparent 62%)}
 .ec-menu-intro{width:58%}
}
@media(max-width:767px){
 .ec-menu-hero-image.ecx-hero-picture{aspect-ratio:3/2;background:#fff3e9}
 .ec-menu-hero-image.ecx-hero-picture img{object-fit:contain;object-position:center}
}

/* v1.0.5: blend the hero photo itself and fill both pricing photo frames. */
.ec-menu-page .ec-menu-pricing .ec-menu-photo img:not(.ec-menu-source-crop){object-fit:cover;object-position:center;background:transparent}
@media(min-width:768px){
 .ec-menu-page .ec-menu-hero-image.ecx-hero-picture{left:38%;right:0;top:0;bottom:0;z-index:0;background:transparent;-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 28%,#000 100%);mask-image:linear-gradient(90deg,transparent 0%,#000 28%,#000 100%)}
 .ec-menu-page .ec-menu-hero-image img{object-fit:cover;object-position:left center}
 .ec-menu-page .ec-menu-hero:after{display:none}
 .ec-menu-page .ec-menu-intro{position:relative;z-index:1}
 /* The shared circular-photo rule sets aspect-ratio:1. Reset it here so
    top/bottom stretch this frame instead of its width forcing a square. */
 .ec-menu-page .ec-menu-pricing .ec-menu-item:first-child .ec-menu-photo{position:absolute;left:0;top:0;bottom:0;height:auto;aspect-ratio:auto}
 .ec-menu-page .ec-menu-pricing .ec-menu-item:first-child .ec-menu-photo img:not(.ec-menu-source-crop){position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
}
@media(max-width:767px){
 .ec-menu-page .ec-menu-hero-image.ecx-hero-picture{-webkit-mask-image:none;mask-image:none}
 .ec-menu-page .ec-menu-hero-image.ecx-hero-picture img{object-fit:contain;object-position:center}
}
