/* Warm restaurant direction, based on the supplied reference and real Levaggi photography. */
:root{--paper:#f5ead9;--light:#fff8ed;--wine:#781a27;--olive:#681c28;--sand:#ead8bf;--line:#6d392632}
body{background:var(--paper)}
.utility{background:#501019;color:#fff4e4;padding:9px max(48px,calc((100vw - 1320px)/2));font-family:var(--serif);font-size:12px;line-height:1.4;letter-spacing:.13em}
.utility>span{display:flex;align-items:center;gap:15px}
.utility>span:before,.utility>span:after{content:'';display:block;width:30px;height:1px;background:#dec7aa99}
.utility>div{display:flex;align-items:center;gap:24px;letter-spacing:0;font-size:13px}
.utility a{display:flex;align-items:center;gap:7px}.utility .icon{width:15px;height:15px}
.header{background:#f5ead9fa;border-bottom-color:#73432324}
.header-inner{height:102px;gap:28px}
.brand img{width:190px;height:65px}.brand span{font-size:7.5px;letter-spacing:.22em}
.header nav{gap:23px}.header nav a{font:500 18px/1.2 var(--serif)}
.button{background:var(--wine);border-color:#a73b49;color:#fff8ed;border-radius:32px;font:600 18px/1.3 var(--serif);min-height:51px;padding:14px 26px;gap:21px}
.button:hover{background:#5f1420}.button-small{font-size:18px;min-height:48px;padding:12px 23px;gap:16px}
.button-cream{background:var(--paper);border-color:var(--paper);color:var(--wine)}.button-cream:hover{background:white}
.nav-toggle{border-radius:6px}.text-link{font-size:12px}
.restaurant-hero{display:block;position:relative;isolation:isolate;width:100%;min-height:660px;padding:0;overflow:hidden;color:#fff5e4;background:#25130e}
.hero-scene{position:absolute;inset:0;z-index:-2;overflow:hidden}
.hero-scene img{position:absolute;right:0;top:0;width:74%;height:100%;object-fit:cover;object-position:center 66%}
.restaurant-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#21100cfb 0%,#21100cf5 24%,#21100cc4 37%,#21100c30 57%,#21100c00 76%),linear-gradient(0deg,#25130e55,transparent 27%)}
.hero-inner{padding-top:48px;padding-bottom:115px;position:relative}
.restaurant-hero .hero-copy{padding:0;max-width:590px}
.italian-mark{width:76px;height:7px;margin-bottom:21px;border-radius:2px;overflow:hidden}.italian-mark svg{display:block;width:100%;height:100%}
.restaurant-hero h1{font-size:clamp(66px,6.2vw,94px);line-height:.92;letter-spacing:-.035em;margin:0 0 27px;max-width:650px;color:#fff5e4}
.restaurant-hero h1 em{display:inline-block;color:#fff5e4;position:relative;white-space:nowrap}
.restaurant-hero h1 em:after{content:'';position:absolute;left:0;right:0;bottom:-12px;height:7px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 12' preserveAspectRatio='none'%3E%3Cpath d='M2 8 Q110 10 190 5 T398 7' stroke='%23b63d47' stroke-width='2.4' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") center/100% 100% no-repeat}
.restaurant-hero .hero-description{color:#fff3e3;font:500 22px/1.4 var(--serif);max-width:455px;margin:0 0 28px;text-shadow:0 1px 5px #0005}
.restaurant-hero .actions{gap:19px;flex-direction:row;align-items:center}
.restaurant-hero .hero-secondary{background:#24120e35;border-color:#f5ead9b3;color:#fff5e4;min-width:177px}.restaurant-hero .hero-secondary:hover{background:#fff3e31a}
.restaurant-worlds{position:relative;z-index:2;margin-top:-72px;padding:19px 19px 0;background:var(--paper);border-radius:18px 18px 0 0;width:min(1410px,calc(100% - 72px))}
.restaurant-worlds .world-grid{gap:18px}
.restaurant-worlds .world{position:relative;min-height:173px;border-radius:12px;isolation:isolate;overflow:hidden;background:#eadac4;display:flex;align-items:center;padding:0}
.restaurant-worlds .world:nth-child(n){padding:0}
.restaurant-worlds .world>div:first-child{position:absolute;inset:0;z-index:-2;height:100%;overflow:hidden}
.restaurant-worlds .world img{position:absolute;right:0;top:0;width:73%;height:100%;object-fit:cover;object-position:center 56%}
.restaurant-worlds .world:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#efe0cb 10%,#efe0cbf0 37%,#efe0cba3 55%,#efe0cb00 86%)}
.restaurant-worlds .world-content{padding:20px 20px;position:relative;overflow:visible;width:100%;height:auto}
.restaurant-worlds .world-content>.icon{width:30px;height:30px;color:var(--wine);margin-bottom:7px}
.restaurant-worlds .world h3{font-weight:600;font-size:31px;letter-spacing:-.035em;color:#5b1821;display:block;margin:0 0 5px;line-height:1.05}
.restaurant-worlds .world p{font:500 17px/1.25 var(--serif);max-width:190px;color:#3d2a20}
.world-more{position:absolute;left:175px;bottom:24px;width:18px;height:18px;display:grid;place-items:center;border:1px solid #8d26354a;border-radius:50%;color:var(--wine)}.world-more .icon{width:10px;height:10px}
.restaurant-welcome{text-align:center;padding-top:80px;padding-bottom:85px}
.restaurant-welcome h2{font-size:clamp(55px,5.5vw,80px)}.restaurant-welcome>p:not(.eyebrow){max-width:620px;margin:25px auto 15px;color:var(--muted);font-size:13px;line-height:1.9}
.history{background:#5a1822}.history-year{border-color:#5a1822;color:var(--wine)}
.product-image{border-radius:9px}.image-action{border-radius:50%}.product-consult{font-size:11px}.product-copy>p:not(.product-category){font-size:12px}.product-category{font-size:9px}
.categories button{border-radius:22px}.categories button[aria-pressed=true]{background:var(--wine);border-color:var(--wine)}
.order-panel{border-radius:12px;background:#eee0cb}.gallery-section{background:#eee1ce}.farewell{background:#e9d8bd}.footer{background:#fff6e8}
.mobile-contact{background:#681c28}.product-dialog{border-radius:13px}.dialog-close{border-radius:50%}
@media(min-width:1700px){.restaurant-hero{min-height:700px}.hero-inner{padding-top:55px;padding-bottom:130px}.restaurant-hero h1{font-size:100px}.restaurant-hero .hero-description{font-size:24px;max-width:500px}.restaurant-hero .hero-copy{max-width:670px}}
@media(max-width:1250px){.header-inner{gap:22px}.header nav{gap:17px}.header nav a{font-size:16px}.brand img{width:165px;height:56px}.brand span{font-size:6.5px}.button-small{font-size:16px;padding:12px 19px}.restaurant-hero h1{font-size:80px}.restaurant-hero .hero-copy{max-width:520px}.restaurant-hero .hero-description{font-size:20px;max-width:420px}.restaurant-worlds .world-content{padding:18px 16px}.restaurant-worlds .world h3{font-size:28px}.restaurant-worlds .world p{font-size:15px}.world-more{left:154px;bottom:21px}.restaurant-worlds .world{min-height:160px}.restaurant-worlds .world-grid{gap:14px}}
@media(max-width:1100px){.header nav{display:none;position:absolute;top:94px;left:0;right:0;padding:18px 36px 30px;background:var(--paper);border-bottom:1px solid var(--line)}.header nav.open{display:flex;flex-direction:column;gap:0;align-items:stretch}.header nav a{padding:12px 0;font-size:20px;border-bottom:1px solid var(--line)}.nav-toggle{display:grid}.header-inner{height:94px}.header .button-small{margin-left:auto}.brand{margin-right:auto}.utility>span:before,.utility>span:after{width:18px}.utility{padding-left:36px;padding-right:36px;font-size:10px}.utility>div{font-size:11px}.utility-address{display:none!important}.restaurant-hero{min-height:620px}.hero-inner{padding-top:45px;padding-bottom:115px}.restaurant-hero h1{font-size:76px}.restaurant-hero .hero-description{font-size:20px;max-width:390px}.restaurant-hero .hero-copy{max-width:480px}.hero-scene img{width:79%;object-position:55% 65%}.restaurant-worlds{width:calc(100% - 48px);padding:15px 15px 0}.restaurant-worlds .world-grid{gap:12px}.restaurant-worlds .world-content{padding:18px 13px}.restaurant-worlds .world h3{font-size:25px}.restaurant-worlds .world p{font-size:14px}.restaurant-worlds .world-content>.icon{width:27px;height:27px}.world-more{display:none}.restaurant-worlds .world{min-height:155px}.restaurant-welcome{padding-top:65px;padding-bottom:70px}}
@media(max-width:850px){.restaurant-worlds .world-grid{grid-template-columns:repeat(2,1fr);gap:14px}.restaurant-worlds .world{min-height:155px}.restaurant-worlds .world h3{font-size:30px}.restaurant-worlds .world p{font-size:17px}.restaurant-worlds .world-content{padding:19px 21px}.restaurant-worlds .world img{width:69%}.restaurant-worlds{margin-top:-64px}.restaurant-hero h1{font-size:72px}.restaurant-hero .hero-description{font-size:20px;max-width:360px}.restaurant-hero .button{font-size:16px;padding:13px 22px;gap:18px}.restaurant-hero .hero-secondary{min-width:145px}.hero-scene img{width:90%;object-position:64% 67%}.restaurant-hero:after{background:linear-gradient(90deg,#21100cfb 0%,#21100cef 28%,#21100ca6 48%,#21100c24 80%),linear-gradient(0deg,#25130e44,transparent 30%)}.restaurant-hero .hero-copy{max-width:450px}.product-copy>p:not(.product-category){font-size:11px}.product-consult{font-size:10px}}
@media(max-width:650px){html{scroll-padding-top:88px}.utility{padding:8px 20px;font-size:8px;letter-spacing:.1em}.utility>span{gap:0}.utility>span:before,.utility>span:after{display:none}.utility>div{font-size:10px}.utility .icon{width:12px;height:12px}.header-inner{height:83px;gap:12px}.brand img{width:135px;height:47px}.brand span{font-size:5.3px}.header .button-small{font-size:14px;padding:11px 14px;gap:9px;min-height:43px}.header .button-small .icon{width:15px;height:15px}.header nav{top:83px;padding:15px 20px 25px}.header nav a{font-size:22px}.nav-toggle{border-radius:6px;min-width:41px;min-height:41px}.restaurant-hero{min-height:750px;display:block;padding:0;margin:0;width:100%;gap:0}.hero-inner{padding-top:35px;padding-bottom:245px;width:calc(100% - 40px)}.restaurant-hero .hero-copy{max-width:100%;align-self:auto;padding:0}.italian-mark{width:65px;height:6px;margin-bottom:20px}.restaurant-hero h1{font-size:clamp(56px,14.7vw,82px);line-height:.95;margin-bottom:27px;max-width:100%;letter-spacing:-.035em}.restaurant-hero h1 em{white-space:nowrap}.restaurant-hero .hero-description{font-size:18px;line-height:1.4;max-width:340px;margin-bottom:25px}.restaurant-hero .actions{flex-direction:row;gap:12px;align-items:center;flex-wrap:wrap}.restaurant-hero .button{font-size:15px;min-height:46px;padding:12px 18px;gap:15px}.restaurant-hero .hero-secondary{min-width:134px}.hero-scene img{width:100%;height:100%;object-position:50% 76%;object-fit:cover}.restaurant-hero:after{background:linear-gradient(180deg,#1e100cf5 0%,#1e100cec 27%,#1e100cb0 48%,#1e100c13 75%,#1e100c30 100%),linear-gradient(90deg,#1e100c77,transparent 80%)}.restaurant-worlds{margin-top:-44px;width:calc(100% - 24px);padding:12px 12px 0;border-radius:14px 14px 0 0}.restaurant-worlds .world-grid{gap:11px}.restaurant-worlds .world{min-height:153px;border-radius:9px}.restaurant-worlds .world-content{padding:16px 12px}.restaurant-worlds .world-content>.icon{width:24px;height:24px;margin-bottom:8px}.restaurant-worlds .world h3{font-size:25px;margin-bottom:6px}.restaurant-worlds .world p{font-size:13px;line-height:1.25;max-width:145px}.restaurant-worlds .world img{width:75%}.restaurant-worlds .world:after{background:linear-gradient(90deg,#efe0cb 7%,#efe0cbef 34%,#efe0cb9c 55%,#efe0cb00 94%)}.restaurant-welcome{padding-top:55px;padding-bottom:60px}.restaurant-welcome h2{font-size:55px}.restaurant-welcome>p:not(.eyebrow){font-size:12px;line-height:1.9;margin-top:23px}.button{font-size:16px}.product-copy>p:not(.product-category){font-size:10px}.product-consult{font-size:9px}.product-category{font-size:8px}.catalog .section-heading h2,.orders-copy h2{font-size:65px}.mobile-contact>a{font-size:11px}.product-dialog-copy .button{font-size:16px}.footer-top nav a{font-size:11px}}
@media(max-width:360px){.utility{padding-left:16px;padding-right:16px;font-size:7px}.utility>div{font-size:9px}.header-inner{gap:8px}.brand img{width:118px;height:42px}.brand span{font-size:4.6px}.header .button-small{font-size:12px;padding:10px;gap:6px}.restaurant-hero h1{font-size:53px}.restaurant-hero .hero-description{font-size:17px}.restaurant-hero .button{font-size:14px;padding:11px 14px;gap:10px}.restaurant-hero .hero-secondary{min-width:121px}.restaurant-hero{min-height:730px}.restaurant-worlds .world-content{padding:15px 10px}.restaurant-worlds .world h3{font-size:23px}.restaurant-worlds .world p{font-size:12px}.restaurant-worlds .world{min-height:146px}.restaurant-welcome h2{font-size:50px}}
@media(prefers-reduced-motion:reduce){.button:hover{transform:none}}

@media(min-width:651px){.hero-scene img{mask-image:linear-gradient(90deg,transparent,black 22%)}}
