@charset "UTF-8";
:root{--green:#4f584b;--sage:#b4b69a;--coral:#c9563c;--cream:#fcf7f3;--ink:#323e32;--line:#dedfd4;--muted:#687165;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--cream);color:var(--green);font-family:var(--sans);font-size:16px;line-height:1.65}a{color:inherit}button,input{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--coral);outline-offset:5px}img{max-width:100%;height:auto}h1,h2,h3,p{margin-top:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.home-hero{min-height:100svh;position:relative;background:var(--cream) url('background.webp') center/100% 100% no-repeat;display:flex;justify-content:center;align-items:center;padding:100px 24px 110px}.hero-content{width:min(100%,885px);text-align:center;transform:translateY(72px)}.brand-title{margin:0;line-height:0}.hero-logo{display:block;width:100%;height:auto}.hero-location{font-family:var(--serif);font-weight:700;font-style:italic;font-size:clamp(42px,5.8vw,94px);line-height:1.1;margin:14px 0 48px;letter-spacing:-3px}.coupon-action{display:inline-block;position:relative}.coupon-button{display:flex;flex-direction:column;justify-content:center;min-width:345px;min-height:150px;padding:15px 28px 17px;background:var(--coral);border:5px solid var(--green);border-radius:5px;color:#fff9f1;font-size:55px;font-weight:800;line-height:.98;letter-spacing:.5px;text-transform:uppercase;text-decoration:none;box-shadow:0 2px 0 #4f584b1a;transition:transform .2s,background .2s}.coupon-button span:first-child{letter-spacing:3px}.coupon-button:hover{background:#b94b33;transform:translateY(-3px)}.pointing-hand{position:absolute;z-index:1;pointer-events:none;width:146px;max-width:none;height:auto;right:-48px;bottom:-103px;transform:rotate(-20deg);filter:drop-shadow(0 2px 0 #00000008)}.hero-caption{font-size:13px;margin:23px 0 0;letter-spacing:.1px}.hero-scroll{position:absolute;bottom:28px;left:calc(50% - 20px);width:40px;height:40px;display:grid;place-items:center}.hero-scroll span{width:9px;height:9px;border:solid var(--green);border-width:0 1px 1px 0;transform:rotate(45deg)}
.home-details{max-width:1180px;margin:auto;padding:105px 48px 100px;display:grid;grid-template-columns:1fr 1fr;gap:100px}.eyebrow{display:block;color:var(--muted);font-size:11px;letter-spacing:2.5px;text-transform:uppercase;font-weight:700;margin-bottom:21px}.details-heading h2{font-family:var(--serif);font-size:clamp(34px,3.5vw,50px);font-weight:400;line-height:1.13;letter-spacing:-1.4px;margin-bottom:24px}.details-heading p{max-width:340px;font-size:15px;color:var(--muted)}.details-copy{padding-top:3px}.offer-pill{display:inline-block;border:1px solid #c9d1be;border-radius:30px;font-size:10px;letter-spacing:1px;text-transform:uppercase;padding:4px 12px;margin-bottom:18px}.details-copy h3{font-family:var(--serif);font-size:30px;font-weight:400;line-height:1.25;margin-bottom:14px}.details-copy p{font-size:14px;color:var(--muted)}.details-copy .offer-discount{font-size:26px;color:var(--coral);font-weight:700;margin-bottom:12px}.validity{font-size:12px!important}.coupon-steps{list-style:none;padding:20px 0 0;margin:25px 0 0;border-top:1px solid var(--line)}.coupon-steps li{font-size:13px;margin:12px 0;display:flex;align-items:center;gap:16px}.coupon-steps li span{font-family:var(--serif);font-style:italic;font-size:18px;color:#879078}.site-footer{border-top:1px solid var(--line);padding:36px max(36px,calc((100% - 1084px)/2));display:flex;align-items:center;justify-content:space-between;gap:30px;background:#f3f2e9}.footer-brand{font-family:var(--serif);font-size:27px;line-height:1;text-decoration:none;letter-spacing:-1px;display:block}.footer-brand span{font-size:11px;display:block;letter-spacing:0;line-height:2.2}.site-footer p{font-size:11px;margin:10px 0 0;color:var(--muted)}.footer-links{display:flex;gap:24px;align-items:center;font-size:11px}.footer-links a{text-decoration:none}.footer-links a:hover{text-decoration:underline}.footer-links span{color:var(--muted)}
.inner-page{min-height:100vh;background:#faf8f3}.public-header{height:105px;display:flex;align-items:center;justify-content:space-between;max-width:1140px;padding:24px 36px;margin:auto}.public-header img{display:block;width:180px}.back-link{font-size:12px;text-decoration:none;display:inline-flex;align-items:center;gap:10px}.back-link::before{content:'←';font-size:19px}.public-main{max-width:1070px;margin:42px auto 90px;padding:0 36px}.page-intro{max-width:680px;margin:0 auto 40px;text-align:center}.page-intro h1{font-family:var(--serif);font-weight:400;font-size:clamp(36px,5vw,55px);letter-spacing:-1.4px;line-height:1.15;margin-bottom:18px}.page-intro p{font-size:14px;color:var(--muted);max-width:510px;margin:auto}.download-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:start;margin-top:45px}.offer-preview{border-radius:6px;background:#eeeee3;padding:25px;position:relative}.offer-preview img{display:block;width:100%;max-height:500px;object-fit:contain;box-shadow:0 8px 22px #313d3214}.preview-label{font-size:10px;letter-spacing:1.6px;text-transform:uppercase;display:block;margin-bottom:16px}.offer-form{padding:12px 0}.offer-form h2{font-family:var(--serif);font-size:29px;font-weight:400;line-height:1.2;margin-bottom:10px}.offer-form .discount{font-size:26px;color:var(--coral);font-weight:700;margin-bottom:10px}.offer-description{font-size:14px;color:var(--muted);white-space:pre-line}.form-validity{font-size:12px;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:24px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:17px}.field label{font-size:12px;font-weight:700}.field input{width:100%;border:1px solid #cdd1c4;border-radius:4px;background:#fffdf9;padding:12px 14px;color:var(--ink);font-size:14px}.field input:focus{border-color:var(--green)}.form-note{font-size:11px;line-height:1.7;color:var(--muted)}.privacy-check{display:flex;align-items:flex-start;gap:10px;font-size:11px;color:var(--muted);margin:19px 0}.privacy-check input{margin:5px 0 0;width:16px;height:16px;flex:0 0 16px;accent-color:var(--green)}.primary-button{background:var(--green);color:#fff;border:1px solid var(--green);border-radius:4px;padding:13px 21px;display:inline-flex;gap:12px;align-items:center;justify-content:center;font-size:13px;font-weight:700;cursor:pointer;text-decoration:none;transition:background .15s}.primary-button:hover{background:#384433}.offer-form .primary-button{width:100%}.primary-button svg{width:17px;height:17px}.submit-hint{font-size:11px;text-align:center;margin:13px 0;color:var(--muted)}.error-box{padding:15px 18px;border:1px solid #e5b7a9;border-radius:4px;background:#fff1eb;font-size:13px;color:#8b3426;margin-bottom:22px}.empty-state{max-width:650px;margin:60px auto 100px;text-align:center;padding:55px 38px;border:1px solid var(--line);background:#fffdf8;border-radius:6px}.empty-symbol{font-family:var(--serif);font-size:60px;font-style:italic;line-height:1.3;color:var(--sage);margin-bottom:10px}.empty-state h1{font-family:var(--serif);font-weight:400;font-size:36px;line-height:1.2}.empty-state p{font-size:14px;color:var(--muted);margin-bottom:25px}.status-tag{display:inline-flex;align-items:center;gap:7px;padding:5px 12px;font-size:11px;font-weight:700;background:#e8efdf;color:#4c633d;border-radius:30px;margin-bottom:22px}.status-tag::before{content:'';width:6px;height:6px;background:currentColor;border-radius:50%}.status-tag.expired,.status-tag.paused{background:#f8e5db;color:#9f4b33}.status-tag.scheduled{background:#f9eed4;color:#8c6b25}.status-card{max-width:680px;margin:35px auto 70px;background:#fffdf8;border:1px solid var(--line);border-radius:7px;overflow:hidden}.status-content{padding:40px}.status-content h1{font-family:var(--serif);font-size:38px;font-weight:400;letter-spacing:-1px;line-height:1.2;margin-bottom:15px}.status-content .discount{font-size:29px;font-weight:700;color:var(--coral);margin-bottom:15px}.status-content p{font-size:14px}.status-dates{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:20px 0;border-block:1px solid var(--line);margin:26px 0}.status-dates dt{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--muted);margin-bottom:5px}.status-dates dd{margin:0;font-size:15px}.status-notice{background:#f0f1e7;padding:20px 40px;font-size:12px;margin:0}.prose{max-width:760px;margin:35px auto 70px}.prose h1{font-family:var(--serif);font-weight:400;font-size:42px;line-height:1.2}.prose h2{font-family:var(--serif);font-weight:400;font-size:25px;margin-top:33px;margin-bottom:12px}.prose p,.prose li{font-size:14px;color:#5e685a}.honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.success-note{display:none;margin:18px 0;padding:15px;background:#edf1e3;font-size:13px;border-radius:4px}.success-note.visible{display:block}
@media(min-width:1700px){.hero-content{transform:translateY(105px)}.coupon-button{min-width:440px;min-height:190px;font-size:70px}.pointing-hand{width:175px;right:-60px;bottom:-120px}.hero-location{margin-bottom:55px}}
@media(max-width:900px){.hero-content{width:min(78%,680px);transform:translateY(35px)}.hero-location{font-size:64px;margin:14px 0 36px}.coupon-button{font-size:41px;min-width:280px;min-height:125px}.pointing-hand{width:120px;right:-40px;bottom:-85px}.home-details{padding:75px 35px;gap:45px}.footer-links{flex-wrap:wrap;justify-content:flex-end;gap:13px}.download-grid{gap:30px}}
@media(max-width:600px){.home-hero{min-height:92svh;padding:80px 24px 100px;background-size:100% 100%}.hero-content{width:100%;max-width:410px;transform:translateY(18px)}.hero-logo{width:95%;margin:auto}.hero-location{font-size:45px;letter-spacing:-1.5px;margin:17px 0 37px}.coupon-button{font-size:35px;min-width:245px;min-height:114px;padding:15px 18px;border-width:4px}.pointing-hand{width:105px;right:-26px;bottom:-75px}.hero-caption{font-size:10px;margin-top:21px;max-width:240px;margin-inline:auto}.hero-scroll{bottom:15px}.home-details{grid-template-columns:1fr;padding:58px 27px;gap:24px}.details-heading h2{font-size:38px}.details-heading p{max-width:none}.details-copy h3{font-size:27px}.site-footer{padding:30px 27px;align-items:flex-start;flex-direction:column;gap:25px}.footer-links{justify-content:flex-start;gap:20px}.public-header{height:85px;padding:20px 23px}.public-header img{width:145px}.back-link{font-size:11px}.public-main{padding:0 23px;margin:28px auto 55px}.page-intro{margin-bottom:25px}.page-intro h1{font-size:38px}.download-grid{grid-template-columns:1fr;gap:22px;margin-top:25px}.offer-preview{padding:20px;max-width:450px;width:100%;margin:auto}.offer-preview img{max-height:320px}.offer-form{padding:5px 0}.empty-state{padding:38px 23px;margin:25px auto 60px}.empty-state h1{font-size:30px}.status-card{margin:24px auto}.status-content{padding:29px 24px}.status-content h1{font-size:32px}.status-notice{padding:20px 24px}.prose h1{font-size:35px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media(min-width:901px){.hero-content{width:min(46vw,70vh,885px);transform:translateY(9vh)}.hero-location{font-size:clamp(42px,min(5.8vw,7vh),94px);margin:14px 0 clamp(22px,3.5vh,48px)}.coupon-button{min-width:clamp(245px,23vw,440px);min-height:0;font-size:clamp(35px,min(4.4vw,5.2vh),70px);padding:16px 24px}.pointing-hand{width:clamp(105px,13vh,175px);right:-35px;bottom:-7.5vh}}
@media(min-width:601px) and (max-width:900px){.hero-content{width:min(75%,64vh)}.hero-location{font-size:clamp(42px,7vh,64px)}}
@media(max-width:360px){.coupon-button{min-width:230px;font-size:32px}.pointing-hand{width:85px;right:0;bottom:-60px}}
.coupon-button span{white-space:nowrap}
.empty-state-logo{display:block;width:min(240px,100%);height:auto;margin:0 auto 28px}
.specialties-section{background-color:#4f584b}
.visit-socials{display:flex;flex-wrap:wrap;gap:12px}.visit-socials a{display:inline-flex;align-items:center;gap:8px;padding:10px 13px;border:1px solid #fffaf180;border-radius:4px;color:#fffaf1;font-size:13px;font-weight:700;text-decoration:none;transition:background .2s,color .2s}.visit-socials a:hover{background:#fffaf1;color:#4f584b}.visit-socials a svg{display:block;width:18px;height:18px;flex:none}
.coupon-use{font-size:12px;font-weight:700;color:var(--green);padding:13px 15px;background:#edf0e5;border-left:2px solid var(--sage);margin:0 0 22px}.coupon-use span{display:block;font-size:11px;font-weight:400;color:var(--muted);margin-top:3px}
.location-box{margin:23px 0;padding:18px;border:1px solid #d8ddcd;background:#f1f3e9;border-radius:5px}.location-box h2{font-family:var(--sans);font-weight:700;font-size:14px;line-height:1.4;margin:0 0 9px}.location-box h2 span{display:inline-block;font-size:10px;font-weight:400;margin-left:7px;color:var(--muted)}.location-box p{font-size:11px;line-height:1.7;margin:0 0 12px;color:var(--muted)}.location-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.location-button{font-size:11px;background:#fffdf8;color:var(--green);border:1px solid #b6c1ab;padding:9px 12px;border-radius:4px;cursor:pointer}.location-button:disabled{cursor:wait;opacity:.65}.location-clear{font-size:11px;border:0;background:none;color:var(--green);padding:5px 0;text-decoration:underline;cursor:pointer}.location-box .location-feedback{font-size:10px;margin:11px 0 0}.location-box[hidden],.location-clear[hidden]{display:none}
.download-main{max-width:712px}.download-offer{padding-top:0}.download-offer h1{font-family:var(--serif);font-size:32px;font-weight:400;line-height:1.2;letter-spacing:-.6px;margin-bottom:10px}

/* Public palette: clear separation between content, offers and actions. */
.public-mobile-shell{--green:#4f584b;--ink:#263d30;--muted:#4d5b4c;--coral:#b94b33;--line:#bdcbb4;--public-paper:#fffdf8;--public-sage:#e4eadf;--public-light:#fffaf1}
.public-mobile-shell.inner-page{background:var(--public-sage)}
.public-mobile-shell .public-header{max-width:none;background:var(--public-paper);border-bottom:1px solid #b8c6af;padding-inline:max(36px,calc((100% - 1068px)/2))}
.public-mobile-shell .home-details{display:block;max-width:none;margin:0;padding:88px max(48px,calc((100% - 1084px)/2));background:var(--green);color:var(--public-light);border-top:6px solid var(--coral)}
.home-details-inner{max-width:1084px;margin:auto;display:grid;grid-template-columns:.9fr 1.1fr;gap:72px;align-items:start}
.details-heading .eyebrow{color:#f4cbb6}
.details-heading p{color:#e7ebdf}
.details-copy{padding:34px;background:var(--public-paper);color:var(--green);border:1px solid #c7d1be;border-radius:12px;box-shadow:0 18px 40px #182d231f}
.offer-pill{background:var(--public-sage);border-color:#aebfa3;color:var(--green)}
.details-copy h3,.download-summary h1,.status-content h1{overflow-wrap:anywhere}
.details-copy p{color:var(--muted)}
.details-copy .offer-discount{color:#a8412c}
.offers-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.offers-scroll-hint{font-size:11px;color:var(--muted);font-weight:700;animation:offersHint 1.8s ease-in-out infinite}.offers-carousel{display:flex;gap:16px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;padding:2px 2px 14px;scrollbar-width:thin;scrollbar-color:#b94b33 #eef2e8}.offer-choice{scroll-snap-align:start;flex:0 0 min(82%,360px);padding:22px;border:1px solid #b8c7ae;border-radius:9px;background:#fffaf1;box-shadow:0 8px 18px #263d3012}.offer-choice h3{font-family:var(--serif);font-weight:400;font-size:25px;line-height:1.15;margin:0 0 8px}.offer-choice p{font-size:13px;line-height:1.55;margin:8px 0}.offer-choice .validity{font-size:11px;border-top:1px solid #d5dfcd;padding-top:11px}.offer-choice-link{display:inline-flex;align-items:center;gap:8px;margin-top:8px;color:#873f2f;font-size:12px;font-weight:700;text-decoration:none}.offer-choice-link span{font-size:18px;transition:transform .2s}.offer-choice-link:hover span{transform:translateX(4px)}@keyframes offersHint{50%{transform:translateX(5px);opacity:.58}}
.coupon-gallery{max-width:920px;margin:0 auto}.coupon-gallery-intro{margin-bottom:26px}.coupon-gallery .offers-carousel{padding-bottom:20px}.coupon-gallery .offer-choice{flex-basis:min(86%,400px)}.offer-choice h2{font-family:var(--serif);font-size:27px;font-weight:400;line-height:1.15;margin:9px 0}.offer-choice-status{display:inline-block;padding:4px 9px;border-radius:999px;background:#dcead2;color:#2d5329;font-size:10px;font-weight:700;letter-spacing:.6px;text-transform:uppercase}.offer-choice-status.scheduled{background:#f3e1b3;color:#674b18}
.coupon-steps{border-color:#bdcbb4}
.coupon-steps li span{color:#96402b}
.public-mobile-shell .site-footer{background:#873f2f;color:var(--public-light);border-top:1px solid #ad654b}
.public-mobile-shell .site-footer p,.public-mobile-shell .footer-links span{color:#f9e4d3}
.site-footer a:focus-visible{outline-color:var(--public-light)}
.download-offer{padding:0;background:var(--public-paper);border:1px solid #b4c3ac;border-radius:12px;overflow:hidden;box-shadow:0 12px 28px #263d3012}
.download-summary{padding:32px;background:var(--green);color:var(--public-light)}
.download-summary .discount{color:#ffd1a8}
.download-summary .offer-description{color:#e7ebdf;overflow-wrap:anywhere}
.download-summary .form-validity{color:#f1e5d5;border-color:#71816d}
.download-summary .coupon-use{margin-bottom:0}
.download-fields{padding:30px 32px 32px;background:var(--public-paper)}
.coupon-use{background:#eff2e5;color:var(--green);border-left:4px solid #b94b33;border-radius:4px}
.coupon-use span{font-size:12px;color:var(--muted)}
.field label{font-size:13px;color:var(--ink)}
.field input{background:#fff;border-color:#7b8873}
.field input:focus{border-color:var(--green);box-shadow:0 0 0 3px #d7e1ce}
.form-note,.privacy-check{font-size:12px;color:var(--muted)}
.form-note a,.privacy-check a,.prose a{color:#873f2f;font-weight:700;text-decoration-thickness:1px;text-underline-offset:3px}
.location-box{background:var(--public-sage);border-color:#9aac8e;border-left:4px solid #58714c}
.location-box h2 span{font-size:11px}
.location-box p,.location-box .location-feedback{font-size:12px;color:var(--muted)}
.location-button{background:var(--public-paper);border-color:#7b8873;color:var(--green);font-size:12px}
.location-open{width:max-content;margin:2px 0;font-weight:700}.location-open span{font-weight:700;color:var(--coral);margin-left:4px}.optional-label{color:var(--coral);font-weight:700}
.download-info-trigger,.download-info-popover{display:none}
.location-clear{font-size:12px}
.public-mobile-shell .primary-button{background:var(--coral);border-color:var(--coral)}
.public-mobile-shell .primary-button:hover{background:#9d3e2b;border-color:#9d3e2b}
.status-card,.empty-state,.prose{background:var(--public-paper);border:1px solid #b4c3ac;border-top:6px solid var(--green);box-shadow:0 12px 28px #263d3012}
.status-content .discount{color:#a8412c}
.status-dates{background:var(--public-sage);border-color:#aebfa3;padding:20px 18px;border-radius:5px}
.status-tag{background:#dcead2;color:#2d5329}
.status-tag.expired,.status-tag.paused{background:#f7dfd1;color:#833821}
.status-tag.scheduled{background:#f3e1b3;color:#674b18}
.status-notice{background:var(--green);color:#e7ebdf;border-top:1px solid #71816d}
.prose{padding:40px;border-radius:8px}
.prose h2{border-top:1px solid var(--line);padding-top:24px}
.prose p,.prose li{color:var(--muted)}
@media(max-width:900px){
    .public-mobile-shell .home-details{padding:70px 35px}
    .home-details-inner{gap:38px}
}
@media(max-width:600px){
    .public-mobile-shell .home-details{padding-block:54px}
    .home-details-inner{grid-template-columns:1fr;gap:30px}
    .details-copy{padding:27px 23px}
    .download-summary{padding:27px 23px}
    .download-fields{padding:25px 23px 28px}
    .offers-heading{align-items:flex-start}.offers-scroll-hint{font-size:10px;white-space:nowrap}.offer-choice{flex-basis:88%}
    .prose{padding:28px 22px}
}

/* The public sample is watermarked in its pixels; the original requires the form. */
.download-summary.coupon-preview-summary{padding:0;background:var(--public-paper);color:var(--ink)}
.coupon-preview{margin:0;background:#eef0e6}
.coupon-preview img{display:block;width:100%;max-width:520px;height:auto;margin:0 auto}
.coupon-preview figcaption{padding:17px 24px;background:#f5e7da;border-block:1px solid #d7bda6;color:#763c2b;font-size:12px;line-height:1.6}
.coupon-preview figcaption strong,.coupon-preview figcaption span{display:block}
.coupon-preview-summary .coupon-use{margin:20px 24px}
.coupon-preview-summary .coupon-use:last-child{margin-bottom:0;padding-bottom:18px}
@media(max-width:600px){.coupon-preview figcaption{padding:15px 20px}.coupon-preview-summary .coupon-use{margin-inline:20px}}

/* One-page showcase homepage. */
.skip-link{position:fixed;z-index:999;top:10px;left:10px;transform:translateY(-160%);padding:9px 14px;background:var(--green);color:#fff;text-decoration:none;border-radius:4px;font-size:13px}.skip-link:focus{transform:translateY(0)}
.home-site-header{position:absolute;z-index:10;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:28px;max-width:1240px;margin:auto;padding:28px 44px}.home-header-brand{display:block;width:172px;line-height:0}.home-header-brand img{display:block;width:100%;height:auto}.home-site-header nav{display:flex;gap:23px}.home-site-header nav a{font-size:11px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;text-decoration:none}.home-site-header nav a:hover{color:var(--coral)}.home-hero{background-size:cover;background-position:center}.hero-kicker{margin:0 auto 24px;max-width:360px;font-size:14px;line-height:1.55;color:var(--muted)}.home-page .hero-caption{margin-top:22px}.section-eyebrow{display:block;margin-bottom:17px;color:var(--coral);font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase}.showcase-intro{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:70px;align-items:center;max-width:1120px;margin:auto;padding:110px 42px}.showcase-intro-copy h2,.section-heading h2,.home-offers h2,.visit-copy h2{font-family:var(--serif);font-size:clamp(39px,4.6vw,65px);font-weight:400;letter-spacing:-1.8px;line-height:1.04}.showcase-intro-copy p,.section-heading p,.home-offers p,.visit-copy p{max-width:620px;color:var(--muted);font-size:16px;line-height:1.75}.showcase-note{position:relative;padding:33px 28px;background:#eff0e4;border:1px solid #d5dac8;border-radius:90px 8px 90px 8px;min-height:240px;overflow:hidden}.showcase-note::after{content:'';position:absolute;width:180px;height:180px;right:-78px;bottom:-82px;border:1px solid #9baa8e;border-radius:50%}.showcase-note span{display:block;font-family:var(--serif);font-size:66px;line-height:1;color:var(--coral)}.showcase-note p{position:relative;z-index:1;margin:26px 0 0;font-family:var(--serif);font-size:23px;line-height:1.28}.specialties-section{padding:105px max(42px,calc((100% - 1084px)/2));background:#4f584b;color:#fffaf1}.section-heading{max-width:710px;margin-bottom:42px}.specialties-section .section-eyebrow{color:#ffd1a8}.specialties-section .section-heading p{color:#e6eee1}.specialty-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.specialty-card{position:relative;min-height:265px;padding:27px 24px;border:1px solid #789075;border-radius:10px;background:#fffaf1;color:#263d30;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}.specialty-card:hover{transform:translateY(-7px);box-shadow:0 14px 26px #15261c70}.specialty-card::after{content:'';position:absolute;width:156px;height:156px;right:-71px;bottom:-72px;border:24px solid currentColor;border-radius:50%;opacity:.13}.specialty-card--gelato{background:#efe8dc}.specialty-card--brioche{background:#f3d6bf}.specialty-card--casa{background:#dce7d4}.specialty-card--mignon{background:#f2e6bd}.specialty-number{display:block;margin-bottom:54px;font-size:11px;letter-spacing:1.5px;font-weight:700;color:#a8412c}.specialty-card h3{position:relative;z-index:1;margin-bottom:10px;font-family:var(--serif);font-size:29px;font-weight:400;line-height:1.05}.specialty-card p{position:relative;z-index:1;margin:0;font-size:13px;line-height:1.65}.home-offers{display:grid;grid-template-columns:1fr .83fr;gap:75px;align-items:center;max-width:1120px;margin:auto;padding:110px 42px}.home-offers-card{padding:34px;background:#fcf7f3;border:1px solid #cdd8c4;border-radius:10px;box-shadow:0 18px 38px #263d3018}.offer-card-label{font-size:11px;font-weight:700;letter-spacing:1.7px;text-transform:uppercase;color:var(--coral)}.home-offers-card ol{display:grid;gap:20px;padding:0;margin:28px 0 0;list-style:none}.home-offers-card li{display:grid;grid-template-columns:37px 1fr;gap:13px;align-items:center;font-size:14px;color:var(--muted)}.home-offers-card strong{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#4f584b;color:#fff;font-family:var(--serif);font-size:19px;font-weight:400}.showcase-button{display:inline-flex;align-items:center;gap:20px;margin-top:11px;padding:14px 19px;border-radius:4px;background:var(--coral);color:#fff;text-decoration:none;font-size:13px;font-weight:700;box-shadow:0 5px 14px #84382425;transition:transform .2s,background .2s}.showcase-button:hover{background:#a8412c;transform:translateY(-2px)}.showcase-button span{font-size:20px;line-height:1}.visit-section{overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;background:#a8412c;color:#fffaf1}.visit-copy{padding:105px max(42px,calc((100vw - 1084px)/2)) 105px max(42px,calc((100vw - 1084px)/2));padding-right:52px}.visit-copy .section-eyebrow{color:#f7ceae}.visit-copy p{color:#ffeade}.visit-copy address{margin:29px 0 18px;font-family:var(--serif);font-size:25px;font-style:normal;line-height:1.35}.visit-actions{display:flex;flex-direction:column;align-items:flex-start;gap:17px;margin-top:30px}.showcase-button--light{margin:0;background:#fffaf1;color:#873f2f}.showcase-button--light:hover{background:#f5e7da}.visit-email{font-size:14px;color:#fffaf1;font-weight:700}.visit-photo{min-width:0;align-self:center;margin:0;padding:40px 40px 40px 0}.visit-photo img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:10px}.faq-section{max-width:960px;margin:auto;padding:110px 42px}.faq-list{border-top:1px solid #bdcbb4}.faq-item{border-bottom:1px solid #bdcbb4}.faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 0;cursor:pointer;list-style:none;font-family:var(--serif);font-size:23px;line-height:1.2}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary span{flex:0 0 auto;font-family:var(--sans);font-size:29px;font-weight:300;color:var(--coral);transition:transform .2s}.faq-item[open] summary span{transform:rotate(45deg)}.faq-item p{max-width:720px;margin:0 0 24px;color:var(--muted);font-size:15px;line-height:1.7}.reveal-on-scroll{will-change:transform,opacity}
@media(max-width:900px){.home-site-header{padding:21px 25px}.home-header-brand{width:145px}.home-site-header nav{gap:13px}.home-site-header nav a{font-size:9px;letter-spacing:.8px}.showcase-intro,.home-offers{gap:38px;padding-inline:35px}.specialty-grid{grid-template-columns:repeat(2,1fr)}.specialty-card{min-height:215px}.specialty-number{margin-bottom:35px}.visit-copy{padding:78px 35px}.visit-photo{padding:26px 26px 26px 0}.faq-section{padding-inline:35px}}
@media(max-width:600px){.home-site-header{position:absolute;padding:17px 20px}.home-header-brand{width:126px}.home-site-header nav{display:none}.public-mobile-shell.home-page .home-hero{padding-top:82px;padding-bottom:95px}.public-mobile-shell.home-page .hero-content{width:min(100%,390px)}.home-page .hero-logo{width:88%}.public-mobile-shell.home-page .hero-location{margin-top:13px;font-size:clamp(38px,10.5vw,48px)}.hero-kicker{margin-top:14px;margin-bottom:15px;font-size:12px}.public-mobile-shell.home-page .coupon-action{margin-top:16px;transform:scale(.79)}.home-page .hero-caption{margin-top:13px!important}.showcase-intro,.home-offers{grid-template-columns:1fr;padding:70px 27px;gap:28px}.showcase-intro-copy h2,.section-heading h2,.home-offers h2,.visit-copy h2{font-size:42px;letter-spacing:-1.2px}.showcase-intro-copy p,.section-heading p,.home-offers p,.visit-copy p{font-size:15px;line-height:1.65}.showcase-note{min-height:185px;padding:26px}.showcase-note span{font-size:55px}.showcase-note p{margin-top:18px;font-size:20px}.specialties-section{padding:70px 27px}.section-heading{margin-bottom:28px}.specialty-grid{grid-template-columns:1fr;gap:12px}.specialty-card{min-height:0;padding:23px}.specialty-number{margin-bottom:23px}.specialty-card h3{font-size:27px}.specialty-list li{font-size:13px;padding:7px 10px}.home-offers-card{padding:26px 22px}.visit-section{grid-template-columns:1fr}.visit-copy{padding:70px 27px}.visit-copy address{font-size:23px}.visit-photo{padding:0}.visit-photo img{border-radius:0}.faq-section{padding:70px 27px}.faq-item summary{padding:20px 0;font-size:22px}.faq-item p{font-size:15px}.home-page .site-footer{padding-bottom:calc(30px + var(--mobile-action-space))}}
html.motion-ready .reveal-on-scroll{opacity:0;transform:translateY(22px);transition:opacity .72s cubic-bezier(.18,.72,.25,1),transform .72s cubic-bezier(.18,.72,.25,1)}
html.motion-ready .reveal-on-scroll.is-revealed{opacity:1;transform:translateY(0)}
html.motion-boot .reveal-on-scroll{opacity:0;transform:translateY(22px)}
html.home-hero-entrance-pending .brand-title,html.home-hero-entrance-pending .hero-location,html.home-hero-entrance-pending .hero-kicker,html.home-hero-entrance-pending .coupon-action,html.home-hero-entrance-pending .hero-caption{opacity:0;transform:translateY(18px)}
html.motion-boot .reveal-on-scroll.reveal-from-left,html.motion-ready .reveal-on-scroll.reveal-from-left:not(.is-revealed){transform:translateX(-30px)}
html.motion-boot .reveal-on-scroll.reveal-from-right,html.motion-ready .reveal-on-scroll.reveal-from-right:not(.is-revealed){transform:translateX(30px)}
html.motion-ready .reveal-on-scroll.reveal-from-left.is-revealed,html.motion-ready .reveal-on-scroll.reveal-from-right.is-revealed{transform:translateX(0)}
html.motion-ready .specialty-card.reveal-on-scroll.is-revealed:hover{transform:translateY(-7px)}
@media(max-width:600px){html.motion-boot .reveal-on-scroll.reveal-from-left,html.motion-ready .reveal-on-scroll.reveal-from-left:not(.is-revealed){transform:translateX(-18px)}html.motion-boot .reveal-on-scroll.reveal-from-right,html.motion-ready .reveal-on-scroll.reveal-from-right:not(.is-revealed){transform:translateX(18px)}}
.specialty-card:nth-child(2),.faq-item:nth-child(2){transition-delay:.08s}.specialty-card:nth-child(3),.faq-item:nth-child(3){transition-delay:.16s}.specialty-card:nth-child(4){transition-delay:.24s}
@media(prefers-reduced-motion:reduce){.specialty-card,.showcase-button,.reveal-on-scroll{transition:none!important}.reveal-on-scroll{will-change:auto;opacity:1!important;transform:none!important}}
.specialty-list{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:7px;padding:0;margin:14px 0 0;list-style:none}.specialty-list li{padding:6px 9px;border:1px solid #4f584b35;border-radius:999px;background:#fffaf180;font-size:11px;font-weight:600;line-height:1.2;color:#263d30}.specialty-card p{margin-top:13px}
.story-section{grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:40px;max-width:1240px}.story-section .showcase-intro-copy p{max-width:680px;margin:0 0 16px;color:var(--muted);font-size:15px;line-height:1.78}.story-photo{position:relative;width:100%;max-width:740px;justify-self:end;margin:0;padding:12px;border:1px solid #d5dac8;border-radius:15px;background:#fffaf1;box-shadow:0 22px 54px #263d3020;transform:rotate(1deg)}.story-photo::before{position:absolute;inset:12px;content:"";border:1px solid #fffaf180;border-radius:9px;pointer-events:none;z-index:1}.story-photo img{display:block;width:100%;height:auto;border-radius:9px}.story-photo figcaption{padding:13px 7px 3px;font-family:var(--serif);font-size:17px;color:#4f584b}
@media(max-width:900px){.story-section{grid-template-columns:1fr;gap:34px}.story-photo{width:min(100%,720px);margin-inline:auto;transform:none}}
.specialty-card{padding:0;min-height:0;background:#fffaf1}.specialty-photo-slot{position:relative;display:grid;place-items:center;aspect-ratio:16/9;overflow:hidden;border-bottom:1px solid #4f584b20;background-color:#e9e6dc}.specialty-photo-slot::before,.specialty-photo-slot::after{position:absolute;content:"";border:1px solid #4f584b25;border-radius:50%;pointer-events:none}.specialty-photo-slot::before{width:70%;aspect-ratio:1;left:-12%;bottom:-64%}.specialty-photo-slot::after{width:50%;aspect-ratio:1;right:-8%;top:-46%}.specialty-photo-slot span{position:relative;z-index:1;padding:8px 13px;border:1px solid #4f584b35;border-radius:999px;background:#fffaf1c9;color:#4f584b;font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase}.specialty-photo-slot--gelato{background-image:linear-gradient(135deg,#f3dfd7,#e9cfbf 48%,#dce7d4)}.specialty-photo-slot--dessert{background-image:linear-gradient(135deg,#f3d6bf,#f2e6bd 48%,#e8d7c9)}.specialty-photo-slot--takeaway{background-image:linear-gradient(135deg,#dce7d4,#c9dedb 48%,#efe8dc)}.specialty-photo-slot--special{background-image:linear-gradient(135deg,#f2e6bd,#efd4c1 48%,#dce7d4)}.specialty-content{position:relative;z-index:1;padding:23px 22px 25px}.specialty-number{margin:0 0 12px;font-size:10px;letter-spacing:1.35px}.specialty-card h3{margin:0;font-size:25px;line-height:1.12}.specialty-list{display:grid;gap:0;margin:15px 0 0;padding:0;border-top:1px solid #4f584b25;list-style:none}.specialty-list li{display:flex;align-items:center;gap:9px;padding:8px 0;border-bottom:1px solid #4f584b20;font-size:13px;font-weight:600;line-height:1.35;color:#263d30}.specialty-list li::before{flex:0 0 6px;width:6px;height:6px;border-radius:50%;background:#b84a34;content:""}.specialty-card p{margin:13px 0 0;font-size:13px;line-height:1.6}
@media(max-width:600px){.specialty-content{padding:22px}.specialty-card h3{font-size:27px}.specialty-list li{font-size:15px;padding:10px 0}.specialty-photo-slot span{font-size:11px}}
html.motion-entrance .brand-title,html.motion-entrance .hero-location,html.motion-entrance .hero-kicker,html.motion-entrance .coupon-action,html.motion-entrance .hero-caption{animation:public-home-enter .78s cubic-bezier(.18,.72,.25,1) both}
html.motion-entrance .hero-location{animation-delay:.09s}html.motion-entrance .hero-kicker{animation-delay:.18s}html.motion-entrance .coupon-action{animation-delay:.27s}html.motion-entrance .hero-caption{animation-delay:.36s}
@keyframes public-home-enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){html.motion-entrance .brand-title,html.motion-entrance .hero-location,html.motion-entrance .hero-kicker,html.motion-entrance .coupon-action,html.motion-entrance .hero-caption{animation:none!important;opacity:1!important;transform:none!important}.home-site-header nav a,.faq-item summary span{transition:none!important}}

/* Temporary product photography and accessible category-item dialogs. */
.special-promo-section{padding:76px 24px;background:#f8f6ed}
.special-promo-figure{width:min(100%,560px);margin:0 auto}
.special-promo-figure img{display:block;width:100%;height:auto;border:1px solid #4f584b20;border-radius:12px;box-shadow:0 18px 48px #263d3020}
@media(max-width:600px){.special-promo-section{padding:52px 20px}}
.specialty-card--specialita{background:#dce7d4}
.specialty-photo-slot--specialita{background-image:linear-gradient(135deg,#f2e6bd,#efd4c1 48%,#dce7d4)}
.specialty-photo-slot{isolation:isolate}
.specialty-photo-slot::before,.specialty-photo-slot::after{display:none}
.specialty-photo-slot img{position:absolute;inset:0;z-index:-1;display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.specialty-photo-slot{aspect-ratio:5/4}
.specialty-photo-slot span{position:absolute;top:13px;right:13px;z-index:1;padding:7px 10px;border:1px solid #fffaf180;border-radius:999px;background:#263d30bf;color:#fffaf1;font-size:9px;letter-spacing:1px}
.specialty-product{display:block;width:100%;margin:0;padding:0;border:0;background:transparent;color:inherit;font:inherit;font-weight:inherit;line-height:inherit;text-align:left;cursor:pointer}
.specialty-product:hover{color:#a8412c}
.specialty-product:focus-visible{outline:2px solid #a8412c;outline-offset:3px;border-radius:3px}
.product-dialog{width:min(760px,calc(100vw - 32px));max-width:none;max-height:min(86dvh,760px);padding:0;overflow:auto;border:1px solid #d5dac8;border-radius:16px;background:#fffaf1;color:#263d30;box-shadow:0 28px 80px #15261c55}
.product-dialog[open]{opacity:1;transform:translateY(0) scale(1);transition:opacity .24s ease,transform .24s cubic-bezier(.2,.7,.3,1),overlay .24s allow-discrete,display .24s allow-discrete}
.product-dialog:not([open]){opacity:0;transform:translateY(14px) scale(.98);transition:opacity .2s ease,transform .2s ease,overlay .2s allow-discrete,display .2s allow-discrete}
@starting-style{.product-dialog[open]{opacity:0;transform:translateY(14px) scale(.98)}}
.product-dialog::backdrop{background:#18281fd9;backdrop-filter:blur(3px)}
.product-dialog[open]::backdrop{background:#18281fd9;backdrop-filter:blur(3px);transition:background .24s ease,backdrop-filter .24s ease,overlay .24s allow-discrete,display .24s allow-discrete}
.product-dialog:not([open])::backdrop{background:transparent;backdrop-filter:blur(0)}
@starting-style{.product-dialog[open]::backdrop{background:transparent;backdrop-filter:blur(0)}}
.product-dialog-card{position:relative;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(230px,.9fr);min-height:350px}
.product-dialog-close{position:absolute;top:13px;right:13px;z-index:2;display:grid;width:42px;height:42px;place-items:center;border:1px solid #fffaf1a6;border-radius:50%;background:#263d30d9;color:#fffaf1;font-size:28px;line-height:1;cursor:pointer}
.product-dialog-close:hover{background:#a8412c}
.product-dialog-close:focus-visible{outline:3px solid #e8b49b;outline-offset:3px}
.product-dialog-figure{position:relative;height:350px;min-height:350px;margin:0;overflow:hidden;background:#e9e6dc}
.product-dialog-figure img{position:absolute;inset:18px;width:calc(100% - 36px);height:calc(100% - 36px);object-fit:contain}
.product-dialog-figure img.is-pending{visibility:hidden}
.product-dialog-figure img.is-switching{animation:product-photo-in .3s ease both}
@keyframes product-photo-in{from{opacity:.55}to{opacity:1}}
.product-dialog-arrow{position:absolute;z-index:1;top:50%;display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid #fffaf1b3;border-radius:50%;background:#263d30d9;color:#fffaf1;font-size:36px;line-height:1;cursor:pointer;transform:translateY(-50%)}
.product-dialog-arrow:hover{background:#a8412c}
.product-dialog-arrow:focus-visible{outline:3px solid #e8b49b;outline-offset:3px}
.product-dialog-arrow--prev{left:12px}.product-dialog-arrow--next{right:12px}
.product-dialog-arrow[hidden],.product-dialog-figure figcaption[hidden]{display:none}
.product-dialog-figure figcaption{position:absolute;right:15px;bottom:15px;padding:7px 11px;border-radius:999px;background:#263d30d9;color:#fffaf1;font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase}
.product-dialog-copy{align-self:center;padding:46px 35px 35px}
.product-dialog-copy .section-eyebrow{margin-bottom:13px}
.product-dialog-copy h2{margin:0 0 16px;font-family:var(--serif);font-size:clamp(30px,4vw,42px);font-weight:400;line-height:1.08}
.product-dialog-copy p{margin:0;color:var(--muted);font-size:15px;line-height:1.7}
@media(max-width:600px){.product-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);border-radius:13px}.product-dialog-card{grid-template-columns:1fr;min-height:0}.product-dialog-figure{height:auto;min-height:0;aspect-ratio:5/4}.product-dialog-figure img{inset:14px;width:calc(100% - 28px);height:calc(100% - 28px)}.product-dialog-copy{padding:25px 23px 29px}.product-dialog-copy h2{font-size:32px}.product-dialog-copy p{font-size:16px}}
@media(prefers-reduced-motion:reduce){.specialty-product,.product-dialog,.product-dialog::backdrop{transition:none!important}.product-dialog{transform:none!important}.product-dialog-figure img.is-switching{animation:none}}

/* Movimento continuo, leggero e uniforme della vegetazione nell'hero. */
.home-hero{isolation:isolate;overflow:hidden;background:var(--cream) url('background.webp') center/cover no-repeat}
.home-hero::before{content:"";position:absolute;inset:-2.5%;z-index:-1;pointer-events:none;background-image:inherit;background-size:cover;background-position:center;background-repeat:no-repeat;transform:scale(1.025) translate3d(-.5%,.35%,0);transform-origin:center;will-change:transform;animation:hero-foliage-drift 8s ease-in-out infinite alternate}
@keyframes hero-foliage-drift{0%{transform:scale(1.025) translate3d(-.5%,.35%,0)}100%{transform:scale(1.055) translate3d(.5%,-.35%,0)}}
@media(prefers-reduced-motion:reduce){.home-hero::before{animation:none;transform:none;will-change:auto}}

/* Official Facebook Page Plugin, sized to its responsive container. */
.facebook-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,500px);align-items:center;gap:70px;max-width:1120px;margin:auto;padding:105px 42px}
.facebook-section-copy h2{font-family:var(--serif);font-size:clamp(39px,4.6vw,65px);font-weight:400;letter-spacing:-1.8px;line-height:1.04}
.facebook-section-copy p{max-width:470px;color:var(--muted);font-size:16px;line-height:1.75}
.facebook-section-embed{width:100%;max-width:500px;min-width:0;height:600px;margin:auto;border:1px solid #d5dac8;border-radius:10px;background:#fffaf1;box-shadow:0 18px 38px #263d3018;overflow:hidden}
.facebook-section-embed .fb-page,.facebook-section-embed .fb_iframe_widget{display:block;width:100%}
.facebook-section-embed iframe{display:block;width:100%;height:600px;border:0;overflow:hidden}
@media(max-width:900px){.facebook-section{gap:38px;padding-inline:35px}}
@media(max-width:700px){.facebook-section{grid-template-columns:1fr;padding:70px 27px;gap:32px}.facebook-section-copy h2{font-size:42px;letter-spacing:-1.2px}.facebook-section-copy p{font-size:15px;line-height:1.65}}

