:root{--black:#000;--white:#fff;--ink:#1b1b1b;--gold:#c9b18d;--gold-deep:#7a6238;--verde:#008c45;--rosso:#cd212a;--mist:#f4f4f3;--line:#dededc;--line-dark:#2b2b2b;--smoke:#d4d4d1;--stone:#5c5c59;--display:"Lora",Georgia,"Times New Roman",serif;--text:"Source Sans 3","Segoe UI",system-ui,-apple-system,Arial,sans-serif;--pad:clamp(20px,5vw,48px);--band:clamp(64px,9vw,118px);--head-h:78px;color-scheme:light;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}*,:before,:after{box-sizing:inherit}html{background:var(--black);scroll-padding-top:calc(env(safe-area-inset-top,0px) + var(--head-h));-webkit-text-size-adjust:100%}body{background:var(--white);color:var(--ink);font-family:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-size:1.125rem;line-height:1.6}img{max-width:100%;height:auto;display:block}a{color:inherit}h1,h2,h3,p,ul,ol,dl,dd,figure,blockquote,fieldset{margin:0;padding:0}ul,ol{list-style:none}fieldset{border:0;min-width:0}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.on-white :focus-visible,.on-mist :focus-visible{outline-color:var(--black)}h1,h2,h3{font-family:var(--display);letter-spacing:-.012em;color:inherit;font-weight:500;line-height:1.08}h1{font-size:clamp(2.45rem,5.2vw,4.2rem)}h2{font-size:clamp(2rem,3.9vw,3.1rem)}h3{letter-spacing:0;font-size:1.32rem;line-height:1.2}.wrap{width:100%;max-width:1160px;padding-inline:var(--pad);margin-inline:auto}.band{padding-block:var(--band)}.on-black{background:var(--black);color:var(--white)}.on-white{background:var(--white);color:var(--ink)}.on-mist{background:var(--mist);color:var(--ink)}.skip{background:var(--gold);color:#000;z-index:100;padding:12px 18px;position:absolute;top:0;left:-9999px}.skip:focus{top:12px;left:12px}.swoosh{width:148px;height:14px;color:var(--gold);margin-top:16px;display:block}.on-white .swoosh,.on-mist .swoosh{color:#b79a6c}.lede{max-width:38em;font-size:1.16rem;line-height:1.55}.section-head{margin-bottom:clamp(32px,5vw,56px)}.section-head .lede{margin-top:22px}.on-black .lede{color:var(--smoke)}.on-white .lede,.on-mist .lede{color:var(--stone)}.tricolore{background:linear-gradient(90deg,var(--verde) 0 33.333%,#fff 33.333% 66.666%,var(--rosso) 66.666% 100%);height:4px}.btn{min-height:50px;font-family:var(--text);cursor:pointer;white-space:nowrap;border:1.5px solid #0000;border-radius:999px;justify-content:center;align-items:center;padding:0 28px;font-size:1.0625rem;font-weight:600;line-height:1;text-decoration:none;transition:background-color .18s,color .18s,border-color .18s;display:inline-flex}.btn-gold{background:var(--gold);color:#000}.btn-gold:hover{color:#000;background:#fff}.btn-line{color:#fff;background:0 0;border-color:#ffffffb3}.btn-line:hover{color:#000;background:#fff;border-color:#fff}.btn-black{color:#fff;background:#000}.btn-black:hover{background:var(--gold-deep);color:#fff}.btn-outline{color:#000;background:0 0;border-color:#000}.btn-outline:hover{color:#fff;background:#000}.site-head{top:env(safe-area-inset-top,0px);z-index:50;background:var(--black);color:#fff;position:sticky}.head-row{height:calc(var(--head-h) - 4px);justify-content:space-between;align-items:center;gap:24px;display:flex}.brand{flex:none;display:block}.brand img{width:auto;height:46px}.site-nav{align-items:center;gap:clamp(14px,2.1vw,30px);display:flex}.site-nav a:not(.btn){border-bottom:1.5px solid #0000;padding:10px 0;font-size:1.0625rem;font-weight:500;text-decoration:none;transition:border-color .18s,color .18s}.site-nav a:not(.btn):hover,.site-nav a[aria-current]{border-bottom-color:var(--gold);color:var(--gold)}.site-nav .btn{min-height:44px;padding:0 22px}.menu-btn{color:#fff;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;min-height:44px;padding:0 4px 0 12px;font-weight:500;display:none}.menu-btn .bars{width:24px;height:14px;display:block;position:relative}.menu-btn .bars:before,.menu-btn .bars:after{content:"";background:currentColor;height:1.5px;transition:transform .2s,top .2s;position:absolute;left:0;right:0}.menu-btn .bars:before{top:2px}.menu-btn .bars:after{top:11px}.menu-btn[aria-expanded=true] .bars:before{top:6px;transform:rotate(45deg)}.menu-btn[aria-expanded=true] .bars:after{top:6px;transform:rotate(-45deg)}@media (width<=960px){.menu-btn{display:inline-flex}.site-nav{background:var(--black);border-top:1px solid var(--line-dark);padding:8px var(--pad) 24px;max-height:calc(100vh - var(--head-h));flex-direction:column;align-items:stretch;gap:0;display:none;position:absolute;top:100%;left:0;right:0;overflow:auto}.site-nav.open{display:flex}.site-nav a:not(.btn){border-bottom:1px solid var(--line-dark);padding:15px 0;font-size:1.1rem}.site-nav a:not(.btn):hover,.site-nav a[aria-current]{border-bottom-color:var(--line-dark)}.site-nav .btn{min-height:52px;margin-top:20px}}@media (width<=420px){.brand img{height:40px}}h1:focus,main:focus{outline:none}.page-head{background:var(--black);color:#fff;padding-block:clamp(44px,7vw,84px) clamp(40px,6vw,72px)}.page-head h1{font-size:clamp(2.3rem,4.8vw,3.7rem)}.page-head .lede{color:var(--smoke);margin-top:22px}.page-head+.band{padding-top:clamp(40px,5.5vw,68px)}.cta{padding-block:clamp(48px,7vw,84px)}.cta-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:28px 48px;display:flex}.cta h2{font-size:clamp(1.7rem,3vw,2.4rem)}.cta p{color:var(--stone);max-width:30em;margin-top:10px}.cta .actions{margin-top:0}.hero{background:var(--black);color:#fff;align-items:flex-end;min-height:clamp(540px,84svh,780px);display:flex;position:relative;overflow:hidden}.hero-media{position:absolute;inset:0}.hero-video{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.reel{position:absolute;inset:0;overflow:hidden}.reel-track{gap:6px;width:max-content;height:100%;padding-right:6px;animation:90s linear infinite reel;display:flex}.reel-track span{background-position:50%;background-size:cover;flex:none;width:clamp(230px,27vw,400px);height:100%}:root{--reel-1:url(/images/cannoli.jpg);--reel-2:url(/images/cakes.jpg);--reel-3:url(/images/fathers-day-cake.jpg);--reel-4:url(/images/lemon-caprese.jpg)}@keyframes reel{to{transform:translate(-33.3333%)}}.hero-shade{background:linear-gradient(90deg,#000000f2 0%,#000000e0 42%,#00000073 70%,#0000002e 100%);position:absolute;inset:0}.hero-copy{padding-block:clamp(48px,8vw,104px);position:relative}.hero-copy h1{max-width:10.5em}.hero-copy p{color:#ededed;max-width:33em;margin-top:26px;font-size:1.2rem;line-height:1.5}.actions{flex-wrap:wrap;gap:14px;margin-top:36px;display:flex}@media (width<=720px){.hero-shade{background:linear-gradient(#00000080 0%,#000000b8 40%,#000000ed 100%)}.hero-copy p{font-size:1.1rem}.actions .btn{flex:220px}}.facts{background:var(--black);color:#fff;border-top:1px solid var(--line-dark)}.facts ul{grid-template-columns:repeat(3,1fr);display:grid}.facts li{color:#e4e4e2;padding:24px 28px 26px 0;font-size:1.02rem;line-height:1.4}.facts li+li{border-left:1px solid var(--line-dark);padding-left:28px}.facts strong{font-family:var(--display);color:var(--gold);margin-bottom:4px;font-size:1.3rem;font-weight:500;display:block}@media (width<=760px){.facts ul{grid-template-columns:1fr}.facts li{padding:18px 0}.facts li+li{border-left:0;border-top:1px solid var(--line-dark);padding-left:0}}.about-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:clamp(36px,6vw,88px);display:grid}.about-copy p{max-width:34em;margin-top:20px}.about-copy .lede{color:var(--ink);margin-top:26px}.specialties{grid-template-columns:1fr 1fr;column-gap:32px;max-width:34em;margin-top:34px;display:grid}.specialties li{border-top:1px solid var(--line);padding:12px 0;font-weight:500}.about-photo{justify-self:end;width:100%;max-width:540px;padding:0 16px 16px 0}.about-photo img{width:100%;box-shadow:16px 16px 0 -1.5px var(--white),16px 16px 0 0 var(--gold)}.about-photo figcaption{color:var(--stone);margin-top:30px;font-size:.95rem}.about-copy .actions{margin-top:34px}.about-grid--top{align-items:start}.about-photos{justify-self:end;width:100%;max-width:540px}.duo{grid-template-columns:1fr 1fr;gap:16px;margin-top:16px;padding-right:16px;display:grid}.duo img{aspect-ratio:4/5;object-fit:cover;width:100%}@media (width<=860px){.about-grid{grid-template-columns:1fr}.about-photo,.about-photos{justify-self:start}}@media (width<=420px){.specialties{grid-template-columns:1fr}}.tabs{border-bottom:1px solid var(--line);scrollbar-width:none;gap:clamp(20px,3vw,40px);display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tabs[hidden]{display:none}.tab{cursor:pointer;min-height:48px;font-family:var(--display);color:var(--stone);background:0 0;border:0;border-bottom:3px solid #0000;flex:none;margin-bottom:-1px;padding:14px 0;font-size:1.3rem}.tab:hover{color:#000}.tab[aria-selected=true]{color:#000;border-bottom-color:#b79a6c}.panel{padding-top:clamp(28px,4vw,44px)}.panel+.panel{margin-top:48px}.js .panel+.panel{margin-top:0}.panel-title{margin-bottom:24px;font-size:1.8rem}.js .panel-title{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.js .panel[hidden]{display:none}.panel-intro{color:var(--stone);max-width:36em;margin-bottom:28px}.items{grid-template-columns:repeat(auto-fill,minmax(225px,1fr));gap:40px 26px;display:grid}.items h3{font-size:1.25rem}.items p{color:var(--stone);margin-top:6px;font-size:1.0625rem;line-height:1.5}.item-head{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.price{color:var(--gold-deep);white-space:nowrap;font-weight:600}.tag{color:var(--gold-deep);border:1px solid #b79a6c;border-radius:999px;margin-top:10px;padding:3px 10px;font-size:.88rem;display:inline-block}.ph{aspect-ratio:4/3;background:var(--mist);margin-bottom:16px;position:relative;overflow:hidden}.ph img{object-fit:cover;width:100%;height:100%}.ph--empty:after{content:"";background:var(--logo-mark) center/54% auto no-repeat;opacity:.13;position:absolute;inset:0}.panel-photo{margin-bottom:40px}.panel-photo img{aspect-ratio:21/9;object-fit:cover;object-position:center 20%;width:100%}@media (width<=640px){.panel-photo img{aspect-ratio:3/2}}.range-note{border-top:1px solid var(--line);color:var(--stone);max-width:44em;margin-top:44px;padding-top:24px}.range-note a{color:#000;font-weight:500}@media (width<=640px){.tabs{border-bottom:0;flex-wrap:wrap;gap:0 24px;overflow:visible}.tab{margin-bottom:0;font-size:1.22rem}}@media (width<=540px){.items{grid-template-columns:1fr 1fr;gap:30px 16px}.items h3{font-size:1.12rem}.items p{font-size:1rem}}:root{--logo-mark:url(/images/logo-black.png)}.gallery{columns:3;column-gap:16px}.gallery figure{break-inside:avoid;margin-bottom:16px;position:relative}.gallery img{width:100%}.gallery figcaption{color:var(--stone);padding:10px 2px 6px;font-size:.95rem}.gallery-more{margin-top:28px}.gallery-more a{color:var(--gold-deep);text-underline-offset:4px;font-weight:500}.gallery-more a:hover{color:#000}@media (width<=760px){.gallery{columns:2;column-gap:12px}.gallery figure{margin-bottom:12px}}.lead-review{max-width:22em;font-family:var(--display);font-size:clamp(1.7rem,3.5vw,2.75rem);font-style:italic;font-weight:400;line-height:1.2}.lead-review+.who{margin-top:20px}.who{color:var(--smoke);font-size:.98rem}.who b{color:var(--gold);font-weight:500}.reviews{columns:3;column-gap:clamp(28px,4vw,52px);margin-top:clamp(44px,6vw,72px)}.reviews li{break-inside:avoid;border-top:1px solid var(--line-dark);padding:22px 0 26px}.reviews blockquote{color:#ededeb}.reviews .who{margin-top:14px}@media (width<=900px){.reviews{columns:2}}@media (width<=600px){.reviews{columns:1}}.order-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start;gap:clamp(36px,6vw,84px);display:grid}.order-side{top:calc(var(--head-h) + 32px);position:sticky}.order-side h2{font-size:clamp(1.7rem,2.8vw,2.2rem)}.steps{counter-reset:step;margin-top:26px}.steps li{counter-increment:step;border-top:1px solid var(--line);grid-template-columns:44px 1fr;gap:6px;padding:16px 0;display:grid}.steps li:before{content:counter(step);font-family:var(--display);color:var(--gold-deep);font-size:1.7rem;line-height:1}.order-call{color:var(--stone);margin-top:30px}.order-call a{color:#000;white-space:nowrap;font-weight:500}.form-card{background:var(--white);border:1px solid #000;scroll-margin-top:20px}.form-body{padding:clamp(22px,4vw,44px)}.form-body fieldset+fieldset{border-top:1px solid var(--line);margin-top:38px;padding-top:34px}legend{float:left;width:100%;font-family:var(--display);margin-bottom:20px;padding:0;font-size:1.5rem;line-height:1.2}legend+*{clear:both}.fields{grid-template-columns:1fr 1fr;gap:20px;display:grid}.field{min-width:0}.field.wide{grid-column:1/-1}label,.label{margin-bottom:8px;font-weight:500;display:block}.opt{color:var(--stone);margin-left:6px;font-size:.95rem;font-weight:400}input[type=text],input[type=tel],input[type=email],input[type=number],input[type=date],input[type=time],select,textarea{-webkit-appearance:none;appearance:none;background:#fff;border:1px solid #9a9a97;border-radius:4px;width:100%;min-height:52px;padding:12px 14px;font-size:1.0625rem;line-height:1.3;display:block}select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='M1 1l6 6 6-6' fill='none' stroke='%23000' stroke-width='1.6'/%3E%3C/svg%3E");background-position:right 15px center;background-repeat:no-repeat;padding-right:42px}textarea{resize:vertical;min-height:140px;line-height:1.5}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--gold);outline-offset:1px;border-color:#000}[aria-invalid=true]{box-shadow:inset 0 0 0 1px var(--rosso);border-color:var(--rosso)!important}.hint{color:var(--stone);margin-top:8px;font-size:.95rem}.err{color:#b01820;margin-top:8px;font-size:.97rem;font-weight:500}.err:empty{display:none}.choice{grid-template-columns:1fr 1fr;gap:12px;display:grid}.choice label{cursor:pointer;border:1px solid #9a9a97;border-radius:4px;min-height:76px;margin:0;padding:16px 16px 16px 48px;font-weight:500;position:relative}.choice label span{color:var(--stone);margin-top:2px;font-size:.95rem;font-weight:400;display:block}.choice input{opacity:0;width:1px;height:1px;position:absolute}.choice label:before{content:"";background:#fff;border:1.5px solid #000;border-radius:50%;width:20px;height:20px;position:absolute;top:18px;left:16px}.choice label:has(input:checked){border-color:#000;box-shadow:inset 0 0 0 1px #000}.choice label:has(input:checked):before{background:radial-gradient(circle,#000 0 5px,#fff 5.5px)}.choice label:has(input:focus-visible){outline:2px solid var(--gold);outline-offset:2px}.address{grid-column:1/-1;grid-template-columns:1fr 1fr;gap:20px;display:grid}.address[hidden]{display:none}.hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.form-foot{flex-wrap:wrap;align-items:center;gap:18px 24px;margin-top:36px;display:flex}.form-foot .btn{min-height:54px;padding:0 34px}.form-foot p{color:var(--stone);flex:240px;font-size:.97rem;line-height:1.45}.form-alert{border-left:3px solid var(--rosso);background:#fbedee;margin-bottom:26px;padding:14px 16px;font-weight:500}.form-alert[hidden]{display:none}.done h3{font-size:2rem}.done>p{max-width:34em;margin-top:14px}.summary{border-top:1px solid var(--line);margin-top:28px}.summary div{border-bottom:1px solid var(--line);grid-template-columns:150px 1fr;gap:16px;padding:12px 0;display:grid}.summary dt{color:var(--stone)}.summary dd{overflow-wrap:anywhere;white-space:pre-line;font-weight:500}.preview-note{background:var(--mist);margin-top:24px;padding:12px 16px;font-size:.97rem}.done .btn{margin-top:28px}@media (width<=900px){.order-grid{grid-template-columns:1fr}.order-side{position:static}}@media (width<=560px){.fields,.address,.choice{grid-template-columns:1fr}.summary div{grid-template-columns:1fr;gap:2px}}.faq-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start;gap:clamp(36px,6vw,84px);display:grid}.faq-side p{color:var(--stone);max-width:24em;margin-top:24px}.faq-side a{color:#000;white-space:nowrap;font-weight:500}.faq details{border-top:1px solid #c9c9c6}.faq details:last-child{border-bottom:1px solid #c9c9c6}.faq summary{cursor:pointer;font-family:var(--display);justify-content:space-between;align-items:center;gap:20px;padding:20px 0;font-size:1.32rem;line-height:1.25;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"";background:linear-gradient(#000,#000) 50%/16px 1.5px no-repeat,linear-gradient(#000,#000) 50%/1.5px 16px no-repeat;flex:none;width:16px;height:16px;transition:transform .2s}.faq details[open] summary:after{transform:rotate(45deg)}.faq details p{max-width:38em;padding:0 44px 24px 0}.faq{max-width:860px}.faq-more{color:var(--stone);margin-top:30px}.faq-more a{color:#000;white-space:nowrap;font-weight:500}.contact-grid{grid-template-columns:1.2fr 1fr 1fr;gap:clamp(28px,5vw,64px);display:grid}.contact-grid h3{margin-bottom:14px}.contact-grid p,.contact-grid address{font-style:normal}.contact-grid .btn{margin-top:22px}.phone{font-family:var(--display);white-space:nowrap;font-size:clamp(1.7rem,3vw,2.2rem);line-height:1.1;text-decoration:none}.phone:hover{color:var(--gold-deep)}.contact-grid .placeholder{color:var(--stone)}.socials{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.socials a{align-items:center;gap:12px;min-height:44px;font-weight:500;text-decoration:none;display:inline-flex}.socials a:hover{color:var(--gold-deep)}.socials svg{flex:none;width:22px;height:22px}.areas{border-top:1px solid var(--line);color:var(--stone);max-width:60em;margin-top:clamp(40px,6vw,64px);padding-top:28px}.areas strong{color:#000;font-weight:600}@media (width<=860px){.contact-grid{grid-template-columns:1fr}}.site-foot{background:var(--black);color:#fff}.foot-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px 40px;padding-block:34px;display:flex}.foot-row img{width:auto;height:50px}.foot-nav{flex-wrap:wrap;gap:6px 26px;display:flex}.foot-nav a{color:#e4e4e2;padding:10px 0;text-decoration:none}.foot-nav a:hover{color:var(--gold)}.foot-base{border-top:1px solid var(--line-dark);color:var(--smoke);flex-wrap:wrap;justify-content:space-between;gap:10px 24px;padding-block:20px 26px;font-size:.94rem;display:flex}.powered{color:#fff;align-items:center;gap:8px;text-decoration:none;transition:color .18s;display:inline-flex}.powered:hover{color:#9dd2eb}.powered img{width:auto;height:18px}@media (prefers-reduced-motion:reduce){.reel-track{animation:none}*{scroll-behavior:auto!important;transition:none!important}}
