/* Final visual pass: compact phone composition, tactile surfaces and gallery. */
/* Feather the photo itself so its rectangular edge cannot show through the overlay. */
@media(min-width:701px){.hero-photo{-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 32%);mask-image:linear-gradient(90deg,transparent 0%,#000 32%)}}
.place-rotator{position:relative;overflow:hidden;width:100%}
.place-rotator .place-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 48%;opacity:0;transition:opacity .35s ease}
.place-rotator .place-slide.is-active{opacity:1}
.place-map{min-height:245px}.place-map>.map-link{position:absolute;inset:0;display:block;width:100%;height:100%}
.photo-pause{position:absolute;top:7px;right:7px;z-index:3;border:1px solid var(--gold);border-radius:4px;background:var(--green);color:var(--cream);padding:7px 10px;min-height:32px;font:600 12px var(--body);cursor:pointer}
.story-preview>img[src="img/lauro-portrait.webp"]{object-position:57% 63%;mask-image:none}
.split>img[src="img/lauro-portrait.webp"]{object-position:center 60%;height:520px}
@media(max-width:700px){.photo-pause{min-height:44px}.place-map{min-height:300px}.split>img[src="img/lauro-portrait.webp"]{height:440px}}
@media(prefers-reduced-motion:reduce){.place-rotator .place-slide{transition:none}}
.neighborhood-photo[src="img/interior-market.webp"]{object-position:center 48%}
.map-link img[src="img/interior-market.webp"]{object-position:center 48%}
/* Tonal presentation only: preserve the original storefront photograph. */
img[src="img/exterior-real.webp"]{filter:brightness(1.06) contrast(1.10) saturate(1.04)}
.hero h1{filter:drop-shadow(0 1px 0 #f9edcb);mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='130' height='130'%3E%3Cfilter id='grit'%3E%3CfeTurbulence baseFrequency='.7' numOctaves='3' seed='9'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3CfeComponentTransfer%3E%3CfeFuncA type='linear' slope='.2' intercept='.82'/%3E%3C/feComponentTransfer%3E%3C/filter%3E%3Cpath fill='white' filter='url(%23grit)' d='M0 0h130v130H0z'/%3E%3C/svg%3E")}
.panel{background-color:#fbf1dc33;box-shadow:inset 0 0 22px #fff9e55c,0 1px 2px #6a491c18}
.catering-photo{width:67%;right:-17%;bottom:8%;filter:drop-shadow(-8px 18px 10px #51331155)}
.catering-flat{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:18px;align-items:center}
.catering-flat .catering-copy{max-width:none}.catering-flat .catering-copy h2{white-space:normal}.catering-flat .catering-copy .button{padding:12px 14px;font-size:17px}
.catering-tray-photo{display:block;width:100%;height:330px;object-fit:cover;object-position:center 60%;border:3px solid var(--cream);outline:1px solid var(--gold);border-radius:6px;box-shadow:0 5px 14px #241b1122}
@media(min-width:701px) and (max-width:900px){.catering-flat{gap:12px}.catering-flat .catering-copy h2{font-size:25px}.catering-flat .catering-copy .button{font-size:13px;padding:10px}.catering-tray-photo{height:280px}}
@media(max-width:700px){.catering-flat{grid-template-columns:1fr}.catering-flat .catering-copy{max-width:none}.catering-flat .catering-copy p,.catering-flat .catering-copy .checks{max-width:none}.catering-tray-photo{height:300px;object-position:center 65%}}
.category-tiles a{padding:3px 0}.category-tiles a:focus-visible{border-radius:5px}
.full-gallery button{display:block;padding:0;border:0;background:none;width:100%;cursor:zoom-in;border-radius:7px;overflow:hidden}
.gallery-dialog{max-width:min(1000px,94vw);width:100%;max-height:94vh;padding:16px;border:2px solid var(--gold);border-radius:10px;background:var(--cream);color:var(--ink);box-shadow:0 25px 100px #0008}
.gallery-dialog::backdrop{background:#17130fdb;backdrop-filter:blur(6px)}
.gallery-dialog img{width:100%;height:min(72vh,760px);object-fit:contain}
.gallery-dialog .gallery-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}
.gallery-dialog .gallery-caption{font:700 25px var(--head);color:var(--green)}
.gallery-dialog button{min-width:44px;min-height:44px;border:1px solid var(--gold);border-radius:4px;background:var(--green);color:var(--cream);cursor:pointer;font-size:19px}
.gallery-close{position:absolute;right:22px;top:22px;z-index:1}
.gallery-dialog .gallery-arrows{display:flex;gap:7px}
@media(max-width:700px){
 .hero{min-height:0}.hero-inner{padding:42px 20px 240px}.hero h1{font-size:67px;letter-spacing:-1px;margin-bottom:15px}.hero-copy h2{font-size:19px;margin-bottom:12px}.hero-copy p{font-size:15px;margin-bottom:14px}.hero .actions{gap:6px}.hero .button{font-size:13px;padding:10px 11px;min-height:44px}.hero-photo{height:265px}.cash-note{font-size:15px;margin-top:10px}.hours-sign{width:166px;bottom:16px}.hours-sign h2{font-size:24px}.hours-sign strong{font-size:14px}
 .panel>.button{min-height:44px}.category-nav a{min-height:44px;display:flex;align-items:center}.footer-grid a{min-height:30px;padding:3px 0}.full-gallery img{height:175px}.gallery-dialog{padding:10px}.gallery-dialog img{height:65vh}.gallery-dialog .gallery-caption{font-size:21px}
}
@media(min-width:701px) and (max-width:900px){
 .utility{height:25px;padding:4px 25px;border-bottom-width:3px}.nav-wrap{min-height:60px}.hero{height:462px}.hero-inner{padding-top:102px}.hero h1{font-size:76px;margin-bottom:10px}.hero-copy h2{margin-bottom:10px}.hero-copy p{font-size:14px;line-height:1.25;margin-bottom:12px}.values{padding-top:9px;padding-bottom:9px}.values span{height:35px}.values h3{margin:5px 0}
 .two-columns{min-height:296px}.menu-preview{gap:4px}.category-tiles{gap:7px 6px;margin:3px 0 6px}.category-tiles a{padding:0}.category-tiles img{width:65px;height:65px;margin:auto}.category-tiles span{font-size:11px;margin-top:4px}.catering-preview{min-height:296px}
 .feature-row{min-height:0}.feature-row .panel{padding:12px;gap:5px}.feature-row h2{font-size:24px}.feature-row .script{font-size:18px!important}.feature-row .dish-photo{height:130px}.feature-row .panel p{font-size:11px;line-height:1.35}.feature-row .dish-price{font-size:28px}.feature-row .familia-photo{height:100px}.party-content{margin-top:4px;grid-template-columns:1fr 95px}.phone-card{gap:5px;padding:7px 5px}.phone-card img{height:55px}.phone-card strong{font-size:11px}.phone-card span{font-size:14px}.phone-card a{font-size:19px}.large-party .checks{font-size:11px;line-height:1.6;margin:10px 0}.large-party h2{font-size:22px}
 .story-row{min-height:237px}.story-row .panel{padding:12px;gap:6px}.story-row h2{font-size:23px}.story-row .photo-grid img{height:56px}.story-row .story-preview{padding-right:44%;min-height:237px}.story-preview h2{font-size:21px;margin-bottom:10px}.story-preview p{margin-bottom:10px;font-size:11px}.neighborhood-photo{height:90px}.neighborhood .script{font-size:17px!important}
 .visit-row{min-height:180px}.visit-row .panel{padding:10px;gap:5px}.visit-row h2{font-size:23px}.visit-row .map-link{padding:0;min-height:180px}.visit address{font-size:12px}.visit-details{font-size:10px;padding-top:5px}.phone-number{font-size:23px}.visit .actions{gap:6px}.visit .button{min-height:30px;padding:7px 9px}.follow .facebook{font-size:30px;width:33px;height:33px;line-height:39px}.follow .photo-grid img{height:57px}.follow>.button{min-height:27px;font-size:12px;padding:6px 14px}.map-address{padding:8px;font-size:20px;left:8px;right:8px;bottom:8px}.map-address small{font-size:10px}
 .story-row .story-preview h2{font-size:20px;line-height:1}.story-row .story-preview p{font-size:11px;line-height:1.3;margin-bottom:9px}.story-row .story-preview .button{font-size:13px;padding:8px 12px}
 .footer-brand img{width:90px}.footer-grid{grid-template-columns:95px 1.3fr .8fr 1fr 1fr}.footer{padding-top:7px;padding-bottom:6px}.copyright{margin-top:6px;padding-top:5px}
}
@media(prefers-reduced-motion:reduce){.catering-photo,.intro-cutout,.panel,.hero-copy,.hours-sign{animation:none!important}}
.menu-intro{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,1fr);align-items:center;gap:45px}
.menu-intro-photo{margin:0;padding:7px;background:var(--cream);border:1px solid var(--gold);border-radius:8px;box-shadow:0 10px 25px #49311324}
.menu-intro-photo img{display:block;width:100%;height:230px;object-fit:cover;object-position:center 43%;border-radius:4px}
.menu-intro-photo figcaption{padding:8px 4px 2px;text-align:center;font-size:12px;color:var(--green)}
.walkthrough{display:grid;grid-template-columns:minmax(0,1fr) 267px;align-items:center;gap:60px;padding:36px 8%;margin:14px 0}
.walkthrough-copy{max-width:580px}.walkthrough h2{font-size:48px;line-height:1.05}.walkthrough-copy>p{margin:18px 0}.walkthrough .script{font-size:29px}.walkthrough .video-help{font-size:12px;max-width:350px;line-height:1.5}
.walkthrough-player{width:267px;aspect-ratio:267/476;background:var(--green);border-radius:8px;overflow:hidden;box-shadow:0 12px 30px #241b1133;outline:2px solid var(--gold);outline-offset:5px}
.walkthrough-player iframe{display:block;width:100%;height:100%;border:0}
@media(max-width:700px){.menu-intro{grid-template-columns:1fr;gap:20px}.menu-intro-photo img{height:190px}.walkthrough{grid-template-columns:1fr;padding:28px 22px;gap:24px}.walkthrough h2{font-size:36px}.walkthrough .script{font-size:24px}.walkthrough-player{justify-self:center;width:min(267px,100%)}.walkthrough-copy>p{margin:14px 0}}
