/* Studio Cafe reference. All presentation rules are page-scoped. */
.ec-cafe{--cu:calc(100vw / 726);font-family:EventfulMenu,Arial,sans-serif;color:#174b38;background:#fff6ed;font-size:calc(10.5 * var(--cu));line-height:1.45;width:100%;max-width:none;display:flow-root;overflow-wrap:normal}.ec-cafe p{margin:0}.ec-cafe h1,.ec-cafe h2,.ec-cafe h3{color:#174b38;font-family:EventfulSerif,Georgia,serif;font-weight:600;letter-spacing:calc(-.7 * var(--cu));line-height:1.05;margin:0}.ec-cafe h1{font-size:calc(50 * var(--cu));line-height:.92;white-space:nowrap}.ec-cafe em{font-style:normal;color:#df6b87}.ec-cafe-title-second{display:block;font-size:calc(40 * var(--cu));margin-top:calc(2 * var(--cu))}.ec-cafe-title-second b{color:#9d692c;font-weight:600}.ec-cafe h2{font-size:calc(30 * var(--cu))}.ec-cafe-sprig{display:inline-block;color:#b78539;width:calc(36 * var(--cu));height:calc(26 * var(--cu));vertical-align:middle;object-fit:contain}.ec-cafe .ecx-button{font-size:calc(11 * var(--cu));background:#004d35;color:#fff9ef;min-height:0;border:0;border-radius:100px;padding:calc(8 * var(--cu)) calc(17 * var(--cu));line-height:1.3;margin-top:calc(12 * var(--cu));gap:calc(9 * var(--cu));transition:background .25s}.ec-cafe .ecx-button:after{content:'→';font-size:1.5em;line-height:1}.ec-cafe .ecx-button:hover{background:#d86985}.ec-cafe .ecx-button:focus-visible{outline:2px solid #a77330;outline-offset:4px}
.ec-cafe-hero{position:relative;isolation:isolate;min-height:calc(335 * var(--cu));padding:calc(65 * var(--cu)) calc(40 * var(--cu)) calc(12 * var(--cu));background:#fff6ed}.ec-cafe-hero-photo.ecx-hero-picture{position:absolute;inset:0 0 0 35%;aspect-ratio:auto;border-radius:0;margin:0;overflow:hidden;z-index:-2}.ec-cafe-hero-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.ec-cafe-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#fff6ed 0%,#fff6ed 33%,#fff6eddd 38%,#fff6ed44 45%,transparent 54%);pointer-events:none}.ec-cafe-hero-copy{position:relative;width:39%;min-width:0}.ec-cafe-script.ecx-script{font-family:EventfulScript,cursive;font-size:calc(24 * var(--cu));line-height:1.2;color:#355a43;white-space:nowrap;margin:calc(6 * var(--cu)) 0 calc(10 * var(--cu))}.ec-cafe-lead{font-size:calc(10.5 * var(--cu));line-height:1.43;max-width:calc(250 * var(--cu))}.ec-cafe-benefits{padding:calc(10 * var(--cu)) calc(22 * var(--cu)) calc(17 * var(--cu));background:#fde9e3;text-align:center}.ec-cafe-benefit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr))}.ec-cafe-benefit.ecx-card{background:none;border:0;border-radius:0;box-shadow:none;padding:0 calc(9 * var(--cu));overflow:visible;min-width:0;position:relative}.ec-cafe-benefit+.ec-cafe-benefit:before{content:'';position:absolute;top:calc(20 * var(--cu));bottom:calc(3 * var(--cu));left:0;width:1px;background:#e7cdb8}.ec-cafe-icon{width:calc(46 * var(--cu));height:calc(46 * var(--cu));display:grid;place-items:center;margin:0 auto calc(6 * var(--cu));border:1px solid #c8a36b;border-radius:50%;color:#9d7338}.ec-cafe-icon svg,.ec-cafe-icon img{width:68%;height:68%;object-fit:contain}.ec-cafe .ec-cafe-benefit h3{font:500 calc(10 * var(--cu))/1.3 EventfulMenu,Arial,sans-serif;letter-spacing:0}.ec-cafe-benefit p{font-size:calc(9 * var(--cu))}
.ec-cafe-desserts{text-align:center;padding:calc(13 * var(--cu)) calc(20 * var(--cu)) 0}.ec-cafe-intro{font-size:calc(9.7 * var(--cu));line-height:1.5;margin:calc(5 * var(--cu)) 0 calc(11 * var(--cu))!important}.ec-cafe-dessert-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:calc(8 * var(--cu))}.ec-cafe-dessert.ecx-card{grid-column:span 2;position:relative;isolation:isolate;min-width:0;height:calc(199 * var(--cu));border-radius:calc(5 * var(--cu));border:0;background:#fcece3;box-shadow:none;overflow:hidden;text-align:left;padding:calc(9 * var(--cu)) calc(12 * var(--cu))}.ec-cafe-dessert:nth-child(n+4){grid-column:span 3;height:calc(140 * var(--cu))}.ec-cafe-dessert-photo.ecx-card-photo{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;border-radius:0;z-index:-2}.ec-cafe-dessert-photo img{width:100%;height:100%;object-fit:cover;object-position:center bottom;display:block}.ec-cafe-dessert:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(140deg,#fcece3 0%,#fcece3ed 24%,#fcece355 43%,transparent 62%);pointer-events:none}.ec-cafe-dessert-copy{position:relative;width:65%}.ec-cafe .ec-cafe-dessert h3{color:#dc6884;font-size:calc(24 * var(--cu));white-space:nowrap;margin:0 0 calc(5 * var(--cu))}.ec-cafe .ec-cafe-dessert.is-green h3{color:#174b38}.ec-cafe-dessert-copy p{font-size:calc(9.5 * var(--cu));line-height:1.35}.ec-cafe-price{position:absolute;left:calc(12 * var(--cu));bottom:calc(10 * var(--cu));display:block;background:#00513b;color:#fffaf0;border-radius:100px;font-size:calc(10 * var(--cu));padding:calc(4 * var(--cu)) calc(19 * var(--cu));line-height:1.45;max-width:90%;text-align:center}.ec-cafe-dessert:nth-child(n+4) .ec-cafe-dessert-photo{left:23%;width:77%}.ec-cafe-dessert:nth-child(n+4):after{background:linear-gradient(90deg,#fcece3 0%,#fcece3 24%,#fcece3dd 36%,transparent 60%)}.ec-cafe-dessert:nth-child(n+4) .ec-cafe-dessert-copy{width:48%}.ec-cafe-dessert>.ecx-button{position:relative;margin-top:calc(7 * var(--cu))}
.ec-cafe-flavours{text-align:center;padding:calc(13 * var(--cu)) calc(30 * var(--cu)) calc(16 * var(--cu))}.ec-cafe-flavours .ec-cafe-intro{margin-bottom:calc(5 * var(--cu))!important}.ec-cafe-flavour-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:calc(10 * var(--cu))}.ec-cafe-flavour.ecx-card{background:transparent;border:0;border-radius:0;box-shadow:none;padding:0;overflow:visible;min-width:0}.ec-cafe-flavour-photo.ecx-card-photo{width:calc(73 * var(--cu));height:calc(73 * var(--cu));aspect-ratio:1;border:1px solid #e4b996;border-radius:50%;margin:0 auto calc(5 * var(--cu));overflow:hidden;background:#f9ded3}.ec-cafe-flavour-photo img{width:100%;height:100%;object-fit:cover;object-position:center}.ec-cafe .ec-cafe-flavour h3{font:500 calc(10 * var(--cu))/1.3 EventfulMenu,Arial,sans-serif;letter-spacing:0}.ec-cafe-flavour p{font-size:calc(9 * var(--cu))}
.ec-cafe-visit{position:relative;isolation:isolate;min-height:calc(194 * var(--cu));padding:calc(16 * var(--cu)) calc(13 * var(--cu)) calc(18 * var(--cu)) calc(44 * var(--cu));background:#fde9e4;display:flex;align-items:center;justify-content:space-between;gap:calc(20 * var(--cu));scroll-margin-top:160px}.ec-cafe-visit-photo.ecx-story-picture{position:absolute;inset:0 0 0 32%;aspect-ratio:auto;border-radius:0;margin:0;z-index:-2;overflow:hidden}.ec-cafe-visit-photo img{width:100%;height:100%;object-fit:cover;object-position:center 65%;display:block}.ec-cafe-visit:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#fde9e4 0%,#fde9e4 29%,#fde9e444 43%,transparent 56%);pointer-events:none}.ec-cafe-visit-copy{width:39%;position:relative}.ec-cafe-visit-copy h2{font-size:calc(33 * var(--cu));line-height:1.05}.ec-cafe-visit-copy>p{font-size:calc(10 * var(--cu));margin-top:calc(9 * var(--cu));line-height:1.4}.ec-cafe-info{position:relative;width:calc(218 * var(--cu));border-radius:calc(13 * var(--cu));padding:calc(16 * var(--cu)) calc(14 * var(--cu));background:#fbd9cf}.ec-cafe-info-row{display:grid;grid-template-columns:calc(32 * var(--cu)) minmax(0,1fr);gap:calc(9 * var(--cu));align-items:start;margin-bottom:calc(15 * var(--cu))}.ec-cafe-info-row:last-child{margin-bottom:0}.ec-cafe-info-icon{color:#a17437}.ec-cafe-info-icon svg,.ec-cafe-info-icon img{width:calc(25 * var(--cu));height:calc(29 * var(--cu));object-fit:contain}.ec-cafe .ec-cafe-info h3{font:500 calc(8.5 * var(--cu))/1.3 EventfulMenu,Arial,sans-serif;letter-spacing:0;margin:0 0 calc(3 * var(--cu))}.ec-cafe-info p{font-size:calc(8.2 * var(--cu));line-height:1.45}.ec-cafe-ornaments .ec-cafe-hero-copy:before,.ec-cafe-ornaments .ec-cafe-visit-copy:before{content:'';position:absolute;left:calc(-44 * var(--cu));top:0;width:calc(37 * var(--cu));height:calc(120 * var(--cu));background:var(--cafe-botanical,url(images/about-botanical.svg)) left center/contain no-repeat;pointer-events:none;opacity:.85}.ec-cafe-ornaments .ec-cafe-info:after{content:'';position:absolute;right:0;bottom:calc(-9 * var(--cu));width:calc(60 * var(--cu));height:calc(70 * var(--cu));background:var(--cafe-botanical,url(images/about-botanical.svg)) center/contain no-repeat;rotate:-65deg;pointer-events:none;opacity:.7}
@media(max-width:767px){
 .ec-cafe{--cu:1px;font-size:14px}.ec-cafe h1{font-size:clamp(44px,12vw,68px);white-space:normal;letter-spacing:-1px}.ec-cafe-title-second{font-size:.82em;margin-top:3px}.ec-cafe h2{font-size:clamp(29px,7.6vw,42px);letter-spacing:-.6px}.ec-cafe-sprig{width:30px;height:24px}.ec-cafe-hero{padding:0;min-height:0;display:flex;flex-direction:column}.ec-cafe-hero-copy{width:100%;padding:30px 6% 24px;order:0}.ec-cafe-script.ecx-script{font-size:clamp(23px,6vw,34px);white-space:normal;margin:10px 0 13px}.ec-cafe-lead{font-size:14px;line-height:1.65;max-width:none}.ec-cafe .ecx-button{font-size:14px;padding:12px 20px;min-height:44px;margin-top:16px}.ec-cafe-hero-photo.ecx-hero-picture{position:relative;inset:auto;order:1;width:100%;aspect-ratio:1.35;z-index:0}.ec-cafe-hero-photo img{object-position:center}.ec-cafe-hero:after{display:none}.ec-cafe-benefits{padding:24px 5%}.ec-cafe-benefit-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 0}.ec-cafe-benefit.ecx-card{padding:0 8px}.ec-cafe-benefit+.ec-cafe-benefit:before{top:12px;bottom:0}.ec-cafe-benefit:nth-child(3n+1):before{display:none}.ec-cafe-icon{width:54px;height:54px;margin-bottom:10px}.ec-cafe .ec-cafe-benefit h3{font-size:11px;line-height:1.45}.ec-cafe-desserts{padding:27px 5% 0}.ec-cafe-intro{font-size:13px;margin:10px 0 20px!important;line-height:1.6}.ec-cafe-dessert-grid{grid-template-columns:minmax(0,1fr);gap:16px}.ec-cafe-dessert.ecx-card,.ec-cafe-dessert:nth-child(n+4){grid-column:auto;min-height:270px;height:auto;aspect-ratio:1.2;padding:18px}.ec-cafe .ec-cafe-dessert h3{font-size:32px;margin-bottom:9px}.ec-cafe-dessert-copy{width:65%}.ec-cafe-dessert-copy p{font-size:13px;line-height:1.5}.ec-cafe-price{left:18px;bottom:16px;font-size:13px;padding:7px 20px}.ec-cafe-dessert:nth-child(n+4) .ec-cafe-dessert-photo{left:0;width:100%}.ec-cafe-dessert:nth-child(n+4) .ec-cafe-dessert-copy{width:65%}.ec-cafe-dessert:nth-child(n+4):after{background:linear-gradient(140deg,#fcece3 0%,#fcece3ed 24%,#fcece355 43%,transparent 62%)}.ec-cafe-flavours{padding:29px 5%}.ec-cafe-flavour-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:23px 10px}.ec-cafe-flavours .ec-cafe-intro{margin-bottom:20px!important}.ec-cafe-flavour-photo.ecx-card-photo{width:80px;height:80px;margin-bottom:9px}.ec-cafe .ec-cafe-flavour h3{font-size:12px}.ec-cafe-visit{display:flex;flex-direction:column;align-items:stretch;padding:28px 5%;gap:22px;min-height:0;scroll-margin-top:85px}.ec-cafe-visit-copy{width:100%;order:0}.ec-cafe-visit-copy h2{font-size:36px}.ec-cafe-visit-copy>p{font-size:14px;line-height:1.6;margin-top:13px}.ec-cafe-visit-copy>p br{display:none}.ec-cafe-visit-photo.ecx-story-picture{position:relative;inset:auto;order:1;z-index:0;width:111.12%;margin:0 -5.56%;aspect-ratio:1.5}.ec-cafe-visit-photo img{object-position:center 65%}.ec-cafe-visit:after{display:none}.ec-cafe-info{width:100%;padding:24px 20px;order:2;border-radius:14px}.ec-cafe-info-row{grid-template-columns:32px minmax(0,1fr);gap:14px;margin-bottom:24px}.ec-cafe-info-icon svg,.ec-cafe-info-icon img{width:27px;height:31px}.ec-cafe .ec-cafe-info h3{font-size:13px;line-height:1.4;margin-bottom:5px}.ec-cafe-info p{font-size:12px;line-height:1.6}.ec-cafe-ornaments .ec-cafe-hero-copy:before,.ec-cafe-ornaments .ec-cafe-visit-copy:before{display:none}.ec-cafe-ornaments .ec-cafe-info:after{width:65px;height:70px;bottom:-8px}
}
@media(min-width:480px) and (max-width:767px){.ec-cafe-dessert-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ec-cafe-dessert.ecx-card,.ec-cafe-dessert:nth-child(n+4){aspect-ratio:auto;min-height:280px}.ec-cafe-dessert:last-child:nth-child(odd){grid-column:1/-1;min-height:240px}.ec-cafe .ec-cafe-dessert h3{font-size:27px}.ec-cafe-dessert-copy p{font-size:12px}.ec-cafe-dessert-copy p br{display:none}.ec-cafe-dessert-copy{width:85%}.ec-cafe-price{font-size:12px;padding-inline:13px}.ec-cafe-benefit-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.ec-cafe-flavour-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.ec-cafe-flavour-photo.ecx-card-photo{width:70px;height:70px}}
.ec-cafe-hero:not(:has(.ec-cafe-hero-photo)):after,.ec-cafe-visit:not(:has(.ec-cafe-visit-photo)):after{display:none}
/* Explicit grid item width prevents aspect-ratio/min-height from widening narrow cards. */
.ec-cafe-dessert.ecx-card{width:100%;max-width:100%}
/* Keep the rotated botanical art inside its contact panel's side padding. */
.ec-cafe-ornaments .ec-cafe-info:after{right:calc(12 * var(--cu))}
/* Frame the cup between the copy and contact panel rather than underneath the panel. */
@media(min-width:768px){.ec-cafe-visit-photo.ecx-story-picture{left:25%;right:15%}}

/* v2.6.7: use the same mobile icon row flow as the cake pages. */
@media(max-width:767px){
 .ec-cafe-benefit-grid{grid-template-columns:minmax(0,1fr);gap:30px}
 .ec-cafe-benefit.ecx-card{display:grid;grid-template-columns:64px minmax(0,1fr);gap:0 20px;align-items:center;padding:0;text-align:left}
 .ec-cafe-benefit:before{display:none!important}
 .ec-cafe-benefit .ec-cafe-icon{grid-row:1/3;width:64px;height:64px;margin:0;color:#174b38}
 .ec-cafe .ec-cafe-benefit h3{font:500 18px/1.35 EventfulSerif,Georgia,serif}
 .ec-cafe-benefit h3 br{display:none}
 .ec-cafe-benefit p{font-size:13px;line-height:1.5}
}
