@font-face{font-family:Alfa;src:url('assets/fonts/AlfaSlabOne-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Klinic;src:url('assets/fonts/KlinicSlabBook.otf') format('opentype');font-weight:400;font-display:swap}
@font-face{font-family:Klinic;src:url('assets/fonts/KlinicSlabBold.otf') format('opentype');font-weight:700;font-display:swap}
:root{--red:#EC1F27;--blue:#2A50A1;--white:#fff;--ink:#17242c;--stone:#152126;--muted:#58646b;--line:#dde1e5;--serif:Alfa,Rockwell,Georgia,serif;--sans:Klinic,Georgia,serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:142px}body{margin:0;background:var(--stone) url('assets/piedra.webp') center top/900px auto repeat;color:white;font:18px/1.4 var(--sans);padding-bottom:100px}button,input,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer;transition:background .18s,transform .18s}button:active{transform:translateY(1px)}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #77bfff;outline-offset:4px}[hidden]{display:none!important}.wrap{width:min(1160px,calc(100% - 64px));margin-inline:auto}.skip{position:fixed;top:-100px;left:12px;padding:12px;background:white;color:var(--blue);z-index:10}.skip:focus{top:12px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:112px}.logo{display:block;width:184px;height:100px;object-fit:contain}.top-meta{display:flex;gap:32px;align-items:center;font-size:16px}.top-meta p{margin:0}.top-meta strong{font-weight:700}.address{display:flex;align-items:center;gap:10px}.pin{fill:none;stroke:white;stroke-width:1.8;width:22px;height:22px}.text-link{display:flex;align-items:center;gap:14px;background:var(--red);border:1px solid #ffffff20;padding:12px 20px;border-radius:5px;font-weight:700}.text-link:hover{background:#ba0907}
.hero{position:relative;isolation:isolate;min-height:425px;display:flex;align-items:center;width:100%;margin:0;padding:44px max(32px,calc((100% - 1160px)/2)) 82px;overflow:hidden;background:#151b1d url('assets/header-foto-real.webp') center 53%/cover no-repeat}.hero:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#071218e8 0%,#071218b5 36%,#07121814 72%),linear-gradient(0deg,#111b2270,transparent 50%)}.hero-copy{max-width:570px}.eyebrow{font:700 13px/1.4 var(--sans);text-transform:uppercase;letter-spacing:2px;display:flex;align-items:center;gap:10px}.eyebrow:before{content:'★';font-size:15px;color:white}.hero h1{font:400 clamp(38px,4.4vw,62px)/1.1 var(--serif);letter-spacing:-1px;margin:18px 0 16px;text-shadow:0 3px 20px #0005}.hero h1 em{display:inline-block;font-style:normal;color:white;position:relative}.hero h1 em:after{content:'';display:block;position:absolute;left:0;right:0;bottom:-6px;height:5px;background:var(--red)}.hero p{font-size:20px;line-height:1.35;max-width:390px;margin:22px 0 0;color:#f3f3f3}.hero-art{display:none}.hero-caption{position:absolute;right:max(32px,calc((100% - 1160px)/2));bottom:72px;font-weight:700;font-size:13px;text-shadow:0 2px 5px #000;letter-spacing:.5px}.ribbon{display:none}
.menu-nav{position:sticky;top:0;z-index:4;margin:-38px auto 0;width:min(1160px,calc(100% - 64px));background:var(--blue);border-radius:9px;box-shadow:0 10px 25px #0004;border:1px solid #ffffff28}.nav-inner{width:auto;margin:0;padding:13px 20px;display:flex;align-items:center;justify-content:space-between;gap:25px}.categories{display:flex;gap:5px;align-items:center;overflow:auto;scrollbar-width:none}.category{border:0;white-space:nowrap;background:transparent;color:white;padding:13px 19px;font:700 18px var(--sans);min-height:48px;border-radius:5px}.category span{font:400 12px var(--sans);opacity:.8;padding-left:6px}.category[aria-pressed=true]{background:var(--red);box-shadow:0 3px 0 #a40907}.category:hover:not([aria-pressed=true]){background:#ffffff18}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;padding:43px 0 27px}.section-head h2{font:400 31px/1.2 var(--serif);margin:0 0 10px;letter-spacing:-.5px}.section-head p{margin:0;color:#d6dee2;font-size:18px}.count{font-size:13px;text-transform:uppercase;letter-spacing:1px;white-space:nowrap;border-bottom:3px solid var(--red);padding-bottom:7px}.product-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.product{position:relative;display:grid;grid-template-columns:145px 1fr;align-items:center;gap:14px;min-width:0;min-height:203px;background:white;color:var(--ink);border-radius:10px;box-shadow:0 8px 18px #0003;padding:23px 22px 19px 10px;border-top:5px solid var(--blue);overflow:visible}.product:nth-child(4n+2),.product:nth-child(4n+3){border-top-color:var(--red)}.food{display:block;aspect-ratio:1;background-repeat:no-repeat;mix-blend-mode:multiply;mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);flex:none}.product .food{width:150px;margin-left:-7px;transform:rotate(-3deg);transition:transform .2s}.product:hover .food{transform:translateY(-4px) rotate(-3deg)}.pizza-art{background-image:url('assets/pizzas.webp');background-size:500% 200%}.sushi-art{background-image:url('assets/sushi.webp');background-size:400% 200%;mask-image:radial-gradient(ellipse at center,#000 54%,transparent 73%)}.extras-art{background-image:url('assets/extras.webp');background-size:400% 200%}.p0{background-position:0 0}.p1{background-position:25% 0}.p2{background-position:50% 0}.p3{background-position:75% 0}.p4{background-position:100% 0}.p5{background-position:0 100%}.p6{background-position:25% 100%}.p7{background-position:50% 100%}.p8{background-position:75% 100%}.p9{background-position:100% 100%}.s0{background-position:0 0}.s1{background-position:33.333% 0}.s2{background-position:66.666% 0}.s3{background-position:100% 0}.s4{background-position:0 100%}.s5{background-position:33.333% 100%}.s6{background-position:66.666% 100%}.s7{background-position:100% 100%}.product-info{min-width:0}.product-tag{display:inline-block;font:700 12px var(--sans);text-transform:uppercase;letter-spacing:1px;color:var(--red);margin-bottom:4px}.product h3{font:400 20px/1.22 var(--serif);margin:0 0 8px;color:var(--blue);letter-spacing:-.2px}.ingredients{font-size:17px;line-height:1.3;color:var(--muted);margin:0 0 15px}.product-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px}.price{display:inline-block;background:var(--blue);color:white;border-radius:4px;padding:7px 12px;font:400 19px var(--serif);font-variant-numeric:tabular-nums;white-space:nowrap}.product:nth-child(4n+2) .price,.product:nth-child(4n+3) .price{background:var(--red)}.price small{font:400 13px var(--sans);margin-left:5px}.details{font-size:16px;color:var(--muted);margin:6px 0 10px}.details summary{min-height:40px;cursor:pointer;font-weight:700;color:var(--blue);padding-top:6px}.details ul{padding-left:18px;margin:2px 0 12px}.details li{margin:6px 0}
.visit{display:flex;justify-content:space-between;gap:30px;margin-top:48px;border-top:1px solid #ffffff40;padding-top:30px}.visit h2{font:400 26px var(--serif);margin:10px 0 15px}.visit p{margin:5px 0;color:#e2e8eb;font-size:17px}.visit a:hover{text-decoration:underline}.social{display:flex;align-items:start;gap:22px;font-size:17px}.footnote{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff30;margin-top:30px;padding-top:15px;font-size:13px;color:#d4dbe0}.nojs{background:white;color:var(--ink);padding:25px}
@media(max-width:950px){.top-meta{gap:20px}.hours{display:none}.nav-inner{gap:12px;padding:12px}.category{padding:12px 15px}.product{grid-template-columns:115px 1fr;padding-right:16px;gap:10px}.product .food{width:125px}.product h3{font-size:18px}.price{font-size:17px}.ingredients{font-size:16px}}
@media(max-width:700px){.wrap{width:calc(100% - 32px)}.topbar{min-height:84px;gap:12px}.logo{width:145px;height:77px}.top-meta .address{display:none}.text-link{padding:9px 13px;font-size:15px;gap:8px}.hero{min-height:325px;padding:30px 24px 72px;background-position:64% 50%}.hero:before{background:linear-gradient(90deg,#081119df,#08111968 70%,#08111924),linear-gradient(0deg,#08111980,transparent)}.hero h1{font-size:37px;line-height:1.14;letter-spacing:-.5px;max-width:310px}.hero p{font-size:18px;max-width:225px;margin-top:20px}.hero .eyebrow{font-size:11px;letter-spacing:1.2px}.hero-caption{display:none}.menu-nav{width:calc(100% - 24px);margin-top:-34px;border-radius:8px}.nav-inner{display:block;padding:8px 10px}.categories{gap:2px;justify-content:space-between}.category{padding:10px 11px;font-size:17px;min-height:44px}.category span{display:none}.section-head{padding:29px 2px 22px;gap:12px}.section-head h2{font-size:25px;line-height:1.25;margin-bottom:7px}.section-head p{font-size:16px;max-width:265px}.count{font-size:11px;letter-spacing:.5px}.product-grid{grid-template-columns:1fr;gap:16px}.product{grid-template-columns:105px 1fr;gap:10px;padding:18px 14px 16px 8px;min-height:182px;border-radius:8px}.product .food{width:112px;margin-left:-4px}.product h3{font-size:19px}.product-tag{font-size:11px}.ingredients{font-size:17px;margin-bottom:12px}.price{font-size:18px;padding:8px 10px}.price small{font-size:12px;margin-left:3px}.product-bottom{gap:8px}.details{font-size:16px}.visit{display:block;margin-top:35px;padding-top:23px}.visit h2{font-size:24px}.social{margin-top:20px}.footnote{display:block;font-size:13px}.footnote span{display:block;margin-bottom:8px}}
@media(max-width:370px){.hero{padding-left:18px;min-height:310px}.hero h1{font-size:32px}.hero p{font-size:17px}.category{font-size:15px;padding:10px 8px}.product{grid-template-columns:87px 1fr;gap:8px}.product .food{width:95px}.product h3{font-size:17px}.price{font-size:16px}.price small{font-size:11px}.ingredients{font-size:16px}.section-head h2{font-size:23px}.count{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

@media(max-width:700px){.hero{min-height:285px;padding-top:24px;padding-bottom:60px}.hero h1{margin-top:13px;margin-bottom:12px}.hero p{margin-top:16px}.category{font-size:16px;padding-inline:7px}.categories{gap:2px}.section-head{padding-top:27px}.section-head h2{font-size:23px}}@media(max-width:370px){.category{font-size:14px;padding-inline:6px}.hero{min-height:275px}.hero h1{font-size:32px}}
body{position:relative;isolation:isolate;background:#152126}body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:url("assets/piedra.webp") center/cover no-repeat}
.menu-nav .nav-inner{width:100%;margin:0}

/* Carta de consulta: categorías sin búsqueda ni pedido. */
body{padding-bottom:32px}
.menu-nav .nav-inner{padding:12px 16px}
.categories{overflow:visible;gap:8px;padding:3px;flex-wrap:wrap}
.category{appearance:none;border-radius:12px;box-shadow:none;min-height:48px;border:1px solid transparent;line-height:1.2}
.category[aria-pressed=true]{box-shadow:none;border-color:#ffffff25;border-radius:12px}
@media(max-width:700px){.menu-nav .nav-inner{padding:8px}.categories{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;width:100%;padding:2px}.category{padding:10px 4px;font-size:15px;min-width:0;border-radius:10px}.category[aria-pressed=true]{border-radius:10px}}

/* La franja opaca evita que las tarjetas claras asomen por las esquinas del menú fijo. */
.menu-nav{width:100%;margin:-38px 0 0;padding-inline:max(32px,calc((100% - 1160px)/2));background:transparent;border:0;border-radius:0;box-shadow:none}
.menu-nav.is-stuck{background-color:#152126;background-image:url("assets/piedra.webp");background-position:center;background-size:cover;background-repeat:no-repeat;background-attachment:fixed;box-shadow:0 8px 18px #0004}
.menu-nav .nav-inner{max-width:1160px;margin:auto;background:var(--blue);border:1px solid #ffffff28;border-radius:9px;box-shadow:0 10px 25px #0004}
@media(max-width:700px){.menu-nav{margin-top:-34px;padding-inline:12px}}
@media(max-width:370px){.category{font-size:13px;padding-inline:2px}}
.hero-corner-original{position:absolute;top:0;right:0;width:220px;height:auto;pointer-events:none}@media(max-width:700px){.hero-corner-original{width:125px}}
.social a{display:inline-flex;align-items:center;gap:10px;min-height:44px}.social .fa-brands{font-size:23px;inline-size:26px;text-align:center;flex:none}
