/* ITALIA MEDITERRÁNEA · Sistema visual CNI
   Hereda estructura móvil aprobada de El Rincón y sustituye solo identidad y módulos. */
:root{
--bg-core:#0f1315;--bg-surface:#181b1c;--bg-surface-card:#222322;
--bg-surface-elevated:#2b2a27;--gold-primary:#d9b579;--gold-light:#f1d6a6;
--text-muted:#b8b4aa;--text-dim:#928b7f;--border-subtle:#4a4339;
--ita-terracotta:#9c563d;--ita-cream:#f5e8d6;--ita-olive:#697358;
}
html,body{height:100%;background:#090e11}
body{color:#f5eee6}
.lab-topbar{background:rgba(20,22,23,.94)}
.lab-status{font-size:10px;letter-spacing:.11em;color:#bcb4a9}
.phone-mockup{position:relative;background:#111616;border-color:#3b322b}
.mobile-header.master-header-fase1{
 background:linear-gradient(118deg,#813a2e 0%,#a75e40 52%,#6b3025 100%)!important;
 border-bottom:1px solid #cc9464;color:var(--ita-cream)
}
.mobile-header.master-header-fase1 .brand-title{font-family:'DM Serif Display',Georgia,serif!important;font-size:clamp(21px,6.1vw,30px)!important;line-height:1.02!important;font-weight:400!important;letter-spacing:-.045em!important;text-transform:none!important}
.mobile-header.master-header-fase1 .brand-subtitle{font-family:'Plus Jakarta Sans',sans-serif!important;font-size:8px!important;letter-spacing:.10em!important;color:#ffdda7!important;font-weight:800!important}
.mobile-header.master-header-fase1 .mesa-pill,.mobile-header.master-header-fase1 .header-btn{
 color:#ffe1b1!important;border-color:rgba(249,212,148,.45)!important;
}
.mobile-header.master-header-fase1 .lang-flag-btn.active{box-shadow:0 0 0 2px #ffdba3}
.app-stage{background:#121718}
.mobile-bottom-nav{background:#161b1b!important;border-top:1px solid #514036!important;z-index:30}
.nav-tab-btn.active{color:#ecc68d!important}
.nav-tab-btn svg{color:inherit}
.view-section{min-height:100%;padding-bottom:28px}
.ita-hero{height:clamp(285px,48vh,385px)!important;margin:0 0 20px!important;border-radius:0 0 15px 15px!important}
.ita-hero .hero-slide img{object-fit:cover;object-position:center 50%}
.ita-hero .hero-caption{bottom:21px!important;left:20px!important;right:13px!important}
.ita-hero .hero-title{font-family:'DM Serif Display',Georgia,serif!important;font-weight:400!important;font-size:clamp(32px,8.3vw,48px)!important;line-height:1.04!important;letter-spacing:-.045em!important;text-shadow:0 3px 13px #111}
.ita-hero .hero-kicker{letter-spacing:.17em!important;font-size:10px!important;font-weight:800!important;color:#fff4d9!important}
.ita-hero .hero-sub{color:#fff1db!important;line-height:1.45;font-weight:500!important}
.ita-intro{padding:0 18px 17px}
.ita-intro h2,.ita-story h3{font-family:'DM Serif Display',Georgia,serif;font-size:25px;font-weight:400;line-height:1.12;margin:7px 0;color:#f9e5c7}
.ita-intro p,.ita-story p{font-size:12px;color:#c4bdb2;line-height:1.65}
.eyebrow{color:#ecc58c;font-size:10px;font-weight:850;letter-spacing:.145em}
.ita-highlight{cursor:pointer;margin:0 16px 18px!important;background:#222421!important;border-color:#61503e!important}
.ita-highlight .highlight-badge{background:var(--ita-terracotta)!important;color:#fff8ea!important}
.ita-highlight .highlight-info h4{font-family:'DM Serif Display',Georgia,serif;font-size:19px!important;font-weight:400!important}
.ita-highlight .highlight-img{object-fit:cover!important;border-radius:8px!important}
.ita-highlight .highlight-action{color:#f0cd9c!important}
.bento-section{margin-top:10px}
.section-head h3{font-family:'DM Serif Display',Georgia,serif;font-size:24px!important;color:#f5dec3}
.section-head .head-subtitle{color:#b68f68}
.bento-card{border-color:#4a3e35!important}
.bento-card .bento-img-wrap img{object-fit:cover!important;object-position:center center}
.bento-card .bento-title{font-family:'DM Serif Display',Georgia,serif;font-weight:400!important;font-size:20px!important;color:#fae9d2}
.bento-card .bento-tag{color:#f0c28d!important}
.bento-card .bento-desc{color:#c9bcae!important}
.ita-home-footer{padding:18px;text-align:center;letter-spacing:.12em;font-size:9px;color:#af9886}
.ita-section-banner{position:relative;height:188px;margin:9px 13px 19px;overflow:hidden;border-radius:15px;border:1px solid #6b4c36;background:#32251f}
.ita-section-banner>img{width:100%;height:100%;object-fit:cover;object-position:center 42%}
.ita-section-banner:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(8,11,13,.91),rgba(8,11,13,.04) 92%);pointer-events:none}
.ita-section-copy{position:absolute;left:17px;bottom:12px;right:15px;z-index:1}
.ita-section-copy h2{font:400 29px/1.07 'DM Serif Display',Georgia,serif;color:#fff0d8;margin:4px 0}
.ita-section-copy p{font-size:11px;line-height:1.4;margin:5px 0 0;color:#ead6bd}
.ita-categories{display:flex;gap:7px;padding:0 14px 14px;overflow-x:auto;scrollbar-width:thin}
.ita-chip{border:1px solid #64503f;border-radius:50px;background:#222522;padding:8px 13px;font-size:11px;color:#d6c3b0;white-space:nowrap;cursor:pointer;font-weight:750}
.ita-chip.active{background:#98533d;border-color:#c48762;color:#fff6df}
.ita-catalogue{padding:0 14px;display:grid;gap:12px}
.ita-product-card{display:flex;min-height:130px;border:1px solid #524438;border-radius:15px;background:#1c2120;overflow:hidden;cursor:pointer;transition:border-color .18s}
.ita-product-card:focus-visible{outline:2px solid #ffc884}
.ita-product-photo{flex:0 0 38%;width:38%;min-width:0;background:#30291f}
.ita-product-photo img{width:100%;height:100%;max-height:210px;object-fit:contain;object-position:center center;padding:3px;background:radial-gradient(circle at center,#45362b,#251f1c 75%)}
.ita-product-text{min-width:0;flex:1;padding:11px 11px 9px;display:flex;flex-direction:column;gap:5px}
.ita-product-id{font-size:9px;color:#d7a87c;letter-spacing:.1em;font-weight:850}
.ita-product-text h3{font:400 21px/1.04 'DM Serif Display',Georgia,serif;color:#f5dec3;margin:0}
.ita-product-text p{font-size:10px;color:#c4baae;line-height:1.38;margin:1px 0 4px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.ita-product-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;margin-top:auto}
.ita-product-footer small{font-size:9px;color:#bd9e83}
.ita-product-footer>span{color:#f1c389;font-size:10px;font-weight:800;white-space:nowrap}
.ita-selection-trigger{display:flex;align-items:center;justify-content:center;gap:12px;background:#97543f;border:1px solid #cf916c;border-radius:12px;color:#fff4db;font-weight:850;padding:13px;width:calc(100% - 28px);margin:17px auto;cursor:pointer}
#selectionCount{min-width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#492822}
.ita-legal{font-size:10px;color:#a7a4a0;line-height:1.55;margin:14px 18px 25px}
.ita-story{padding:7px 22px 5px}
.ita-story p{font-size:13px}
.ita-story blockquote{margin:20px 0;padding:11px 17px;border-left:3px solid #e4aa70;font:italic 18px 'DM Serif Display',serif;color:#f0dac0}
.ita-story .ita-legal{padding:0;margin:8px 0;color:#9fa3a1}
.ita-local-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:10px 17px}
.ita-local-gallery figure{margin:0;border:1px solid #544537;overflow:hidden;border-radius:10px;background:#202522}
.ita-local-gallery figure img{width:100%;height:160px;object-fit:cover}
.ita-local-gallery figcaption{padding:8px;color:#d0c0b0;font-size:10px}
.ita-local-gallery figure:first-child{grid-column:span 2}
.ita-local-gallery figure:first-child img{height:200px}
.ita-modal-overlay{position:absolute;inset:0;background:rgba(7,10,12,.61);backdrop-filter:blur(3px);z-index:90;display:flex;flex-direction:column;justify-content:flex-end;opacity:0;pointer-events:none;visibility:hidden;transition:opacity .2s}
.ita-modal-overlay.active{opacity:1;pointer-events:auto;visibility:visible}
.ita-modal-sheet{border:1px solid #997556;border-bottom:0;border-radius:24px 24px 0 0;max-height:87%;display:flex;flex-direction:column;background:#151c1c;box-shadow:0 -15px 30px #0009;transform:translateY(100%);transition:transform .22s}
.ita-modal-overlay.active .ita-modal-sheet{transform:translateY(0)}
.ita-modal-handle{width:40px;height:4px;border-radius:5px;background:#73665c;margin:10px auto 6px}
.ita-modal-head{padding:10px 15px 13px 19px;display:flex;justify-content:space-between;gap:12px;align-items:center;border-bottom:1px solid #514437}
.ita-modal-head h2{margin:0;font:400 24px/1.05 'DM Serif Display',Georgia,serif;color:#ffe3c2}
.ita-close{border:1px solid #77604b;border-radius:50%;width:33px;height:33px;flex:0 0 33px;background:#242a28;color:#eedac2;font-size:23px;line-height:23px;cursor:pointer}
.ita-modal-scroll{min-height:0;overflow-y:auto}
.ita-modal-photo{position:relative;margin:15px 17px 9px;border:1px solid #715a43;border-radius:14px;background:#2c281f;height:clamp(175px,34vh,295px);overflow:hidden}
.ita-modal-photo img{display:block;height:100%;width:100%;object-fit:contain;padding:5px}
.ita-price-tag{position:absolute;right:9px;bottom:9px;background:#1b2323ee;border:1px solid #a9865b;border-radius:18px;color:#f2d1a2;padding:6px 10px;font-size:10px;font-weight:800}
.ita-modal-content{padding:10px 19px 20px}
.ita-modal-content>p{font-size:12px;color:#ddd0bf;line-height:1.6;margin:0 0 13px}
.ita-ingredient{background:#202827;border:1px solid #514538;border-radius:9px;padding:12px;margin-bottom:12px}
.ita-ingredient strong,.ita-allergens h4{font-size:11px;color:#e9bf90;letter-spacing:.02em}
.ita-ingredient p{font-size:11px;color:#c8c2b8;line-height:1.5;margin:6px 0 0}
.ita-allergens{padding:5px 0 10px}
.ita-allergen-icons{display:flex;gap:12px;align-items:flex-start;flex-wrap:wrap;margin-top:8px}
.ita-allergen-icons>span{width:65px;display:flex;align-items:center;flex-direction:column;gap:6px}
.ita-allergen-icons img{width:35px;height:35px;object-fit:contain}
.ita-allergen-icons small{text-align:center;color:#ddcbbb;font-size:9px}
.ita-ingredient-note{font-size:10px;color:#aab1a8}
.ita-explain{border-left:2px solid #e4b47d;padding:4px 10px!important;color:#e7d3be!important}
.ita-add-btn{width:100%;padding:12px;border-radius:10px;background:#94503b;color:#fff8e9;border:1px solid #c98962;font-weight:850;cursor:pointer}
.ita-short .ita-modal-content{overflow-y:auto}
.ita-waiter-reasons{display:grid;gap:7px;margin:15px 0}
.ita-reason{background:#202927;border:1px solid #534a3f;padding:11px 12px;border-radius:9px;text-align:left;color:#d7cdc0;cursor:pointer}
.ita-reason.active{background:#57372e;border-color:#db936b}
.ita-feedback{font-size:11px!important;color:#d3ad84!important;margin:12px 0 0!important}
.ita-field{display:flex;justify-content:space-between;align-items:center;gap:9px;margin:13px 0;color:#d3c7b8;font-size:12px}
.ita-field input{width:110px;background:#252d2a;border:1px solid #665647;padding:10px;color:#fff0d6;border-radius:8px;text-align:right;font:700 14px inherit}
.ita-bill-result{background:#2b322e;border:1px solid #8a6750;padding:17px;border-radius:12px;display:flex;justify-content:space-between;align-items:center}
.ita-bill-result>span{font-size:12px;color:#d8c8ad}
.ita-bill-result strong{font-size:22px;color:#efc88a}
.ita-selection-item{display:flex;justify-content:space-between;align-items:center;gap:10px;background:#26302b;border:1px solid #4e4b3c;border-radius:7px;padding:8px 12px;margin:7px 0;color:#e9d9c6}
.ita-selection-item button{background:none;border:0;color:#f2c9a1;font-size:25px;cursor:pointer}
.ita-empty{color:#c7b9a9}
.ita-clear{border:1px solid #725944;background:none;color:#e6bd91;border-radius:8px;padding:10px;cursor:pointer}
@media(min-width:601px){.ita-hero{height:345px!important}.ita-modal-photo{height:290px}}
@media(max-width:340px){
.mobile-header.master-header-fase1 .brand-title{font-size:21px!important}
.ita-hero{height:285px!important}
.ita-section-banner{height:155px}
.ita-product-text h3{font-size:18px}
.ita-product-text p{-webkit-line-clamp:2}
.ita-modal-photo{height:190px}
.ita-modal-head h2{font-size:20px}
.ita-modal-content{padding:8px 14px 16px}
}
@media(prefers-reduced-motion:reduce){.ita-modal-sheet,.ita-modal-overlay,.ita-product-card{transition:none!important}}
