/* ===== Liva · Café Inclusión — LIVA 3.0 (premium) ===== */
/* ---- Tipografía propia (autohospedada, subconjunto Latino) ---- */
@font-face{font-family:'Manrope';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/manrope-400.woff2') format('woff2')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/manrope-500.woff2') format('woff2')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/manrope-700.woff2') format('woff2')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:800;font-display:swap;src:url('fonts/manrope-800.woff2') format('woff2')}
@font-face{font-family:'Fraunces';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/fraunces-400.woff2') format('woff2')}
@font-face{font-family:'Fraunces';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/fraunces-600.woff2') format('woff2')}
@font-face{font-family:'Fraunces';font-style:normal;font-weight:900;font-display:swap;src:url('fonts/fraunces-900.woff2') format('woff2')}
@font-face{font-family:'Fraunces';font-style:italic;font-weight:400;font-display:swap;src:url('fonts/fraunces-400-italic.woff2') format('woff2')}
:root{
  --petrol:#12313D; --petrol2:#1B4557; --petrol3:#0E2731;
  --ff-display:'Fraunces',Georgia,'Times New Roman',serif;
  --ff-sans:'Manrope',system-ui,-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  --amarillo:#F6C52B; --amarillo2:#FFD65A;
  --crema:#FFF7E8; --crema2:#F6ECD6;
  --coral:#E9654B; --verde:#78B94A; --azul:#2C6C93; --cielo:#72C8E5; --morado:#7651A8; --rojo:#E1493B; --cafe:#5A382A;
  --texto:#26201A; --marron:#7A4A2C; --marron-osc:#3E2A20;
  --sombra:0 16px 44px rgba(10,25,35,.16);
  --sombra-sm:0 6px 20px rgba(10,25,35,.10);
  --sombra-lg:0 24px 64px rgba(10,25,35,.24);
  --radio:20px; --radio-sm:14px; --maxw:1160px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:80px}
body{font-family:var(--ff-sans);color:var(--texto);background:var(--crema);line-height:1.68;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-feature-settings:"kern" 1,"liga" 1;overflow-x:hidden}
h1,h2,h3,h4{font-family:var(--ff-display);line-height:1.08;letter-spacing:-.015em;font-weight:600}
.serif{font-family:var(--ff-display)}
em,.it{font-family:var(--ff-display);font-style:italic}
img{max-width:100%;display:block}
a{color:var(--azul)}
:focus-visible{outline:3px solid var(--azul);outline-offset:3px;border-radius:6px}
.wrap{width:min(var(--maxw),92%);margin-inline:auto}
.narrow{max-width:760px;margin-inline:auto}
.center{text-align:center}
.skip{position:absolute;left:-999px;top:0;background:var(--petrol);color:#fff;padding:10px 16px;border-radius:0 0 10px 0;z-index:300}
.skip:focus{left:0}
.reveal{opacity:1}
html.js .reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}
html.js .reveal.in{opacity:1;transform:none}

.eyebrow{display:block;letter-spacing:3px;text-transform:uppercase;font-size:.78rem;font-weight:800;color:var(--coral)}
.section-title{font-size:clamp(1.7rem,3.6vw,2.5rem);color:var(--petrol);text-align:center;margin-bottom:12px}
.section-title::after{content:"";display:block;width:70px;height:11px;margin:14px auto 0;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 70 11'><path d='M2 7 Q 11 1 20 6 T 38 6 T 56 6 T 68 5' fill='none' stroke='%23E9654B' stroke-width='2.6' stroke-linecap='round'/></svg>") no-repeat center/contain}
.section-title .deco-spark{display:inline-block;width:30px;height:30px;vertical-align:top;margin-left:8px;transform:translateY(-4px)}
.section-title .deco-spark svg{width:100%;height:100%}
.section-intro{text-align:center;max-width:660px;margin:0 auto 42px;font-size:1.08rem;color:#5f5142}

/* ---------- Buttons ---------- */
.btn{display:inline-block;font-weight:800;padding:14px 30px;border-radius:999px;text-decoration:none;font-size:1rem;border:2px solid transparent;transition:.2s;cursor:pointer;text-align:center}
.btn:hover{transform:translateY(-2px);text-decoration:none}
.btn-primary{background:var(--amarillo);color:var(--petrol);box-shadow:0 6px 18px rgba(246,197,43,.35)}
.btn-primary:hover{background:var(--amarillo2);color:var(--petrol)}
.btn-dark{background:var(--petrol);color:#fff}
.btn-dark:hover{background:var(--petrol2);color:#fff}
.btn-ghost{background:transparent;color:var(--petrol);border-color:var(--petrol)}
.btn-ghost:hover{background:var(--petrol);color:#fff}
.btn-o{background:transparent;color:#fff;border-color:rgba(255,255,255,.55)}
.btn-o:hover{background:#fff;color:var(--petrol)}
.btn-wa{background:#25D366;color:#fff}
.btn-wa:hover{background:#1eb457;color:#fff}
.btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

/* ---------- Cinta divider (grafismo propio) ---------- */
.cintas-band{line-height:0;background:var(--petrol)}
.cintas-band.on-cream{background:var(--crema)}
.cintas-band svg{width:100%;height:22px;display:block}

/* ---------- Header ---------- */
header.site{position:sticky;top:0;z-index:100;background:var(--petrol)}
.topline{height:5px;background:linear-gradient(90deg,var(--amarillo) 0 22%,transparent 22% 26%,var(--coral) 26% 48%,transparent 48% 52%,var(--cielo) 52% 74%,transparent 74% 78%,var(--verde) 78% 100%)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px 0}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none}
.brand img{height:62px;width:auto}
nav.main ul{list-style:none;display:flex;gap:14px;align-items:center}
nav.main a{color:#EAF2F6;font-weight:600;font-size:1.02rem;padding:8px 4px;text-decoration:none;transition:.15s;position:relative}
nav.main a:hover{color:var(--amarillo)}
nav.main a.active{color:var(--amarillo)}
nav.main a.active::after{content:"";position:absolute;left:2px;right:2px;bottom:-4px;height:3px;border-radius:3px;background:var(--amarillo)}
.nav-right{display:flex;align-items:center;gap:12px}
.lang-btn{border:2px solid rgba(255,255,255,.5);background:transparent;color:#fff;font-weight:800;border-radius:999px;padding:6px 14px;cursor:pointer;font-size:.82rem;letter-spacing:.5px}
.lang-btn:hover{background:#fff;color:var(--petrol)}
.btn-visit{background:var(--amarillo);color:var(--petrol);font-weight:800;border-radius:999px;padding:9px 20px;text-decoration:none;font-size:.9rem}
.btn-visit:hover{background:var(--amarillo2);color:var(--petrol)}
.menu-toggle{display:none;background:none;border:0;cursor:pointer;padding:6px}
.menu-toggle span{display:block;width:26px;height:3px;background:#fff;border-radius:3px;margin:5px 0}

/* ---------- Home hero (dark) ---------- */
.hero{background:var(--petrol);color:#fff;position:relative;overflow:hidden;padding:16px 0 34px}
.hero .inner{display:grid;grid-template-columns:1.05fr 1fr;gap:44px;align-items:start;padding:10px 0 6px}
.hero h1{font-size:clamp(2.8rem,7.5vw,5.6rem);font-weight:900;letter-spacing:-1px;text-transform:uppercase}
.hero h1 .y{color:var(--amarillo)}
.hero .sub{font-size:clamp(1.05rem,1.7vw,1.3rem);color:#CFE0E8;max-width:440px;margin:18px 0 20px}
.hero-accent{width:56px;height:4px;border-radius:4px;background:var(--amarillo);margin:0 0 24px}
.hero .trust{margin-top:22px;font-size:.86rem;color:#9FB6C2}
.hero .trust b{color:#EAF2F6}
.hero-photo{position:relative;max-width:600px;margin-left:auto;margin-top:-48px;width:100%}
.hero-photo .frame{border-radius:200px 200px 40px 40px;overflow:hidden;box-shadow:var(--sombra-lg);border:6px solid rgba(255,255,255,.08);aspect-ratio:4/4.2;width:100%;position:relative;z-index:2}
.hero-photo .frame img{width:100%;height:100%;object-fit:cover}
.hero-ribbons{position:absolute;inset:-40px -26px;z-index:1}
.hero-ribbons svg{width:100%;height:100%;overflow:visible}
.hero-quote{position:absolute;left:-120px;bottom:-26px;z-index:3;width:170px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px;padding:26px 16px 28px;border-radius:20px;background:rgba(19,37,52,.94);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);border:1px solid rgba(255,255,255,.12);box-shadow:0 16px 40px rgba(0,0,0,.42)}
.hero-quote .hq-ic{flex:none;width:34px;height:34px;display:flex;align-items:center;justify-content:center}
.hero-quote .hq-ic svg{width:34px;height:34px}
.hero-quote p{margin:0;color:#fff;font-size:.82rem;line-height:1.55;font-weight:500}
.hero-wave{position:absolute;left:0;right:0;bottom:-1px;z-index:1;line-height:0;pointer-events:none}
.hero-wave svg{display:block;width:100%;height:clamp(96px,12vw,158px)}

/* ---------- Page hero (interior, cream) ---------- */
.page-hero{padding:56px 0 40px;text-align:center;background:var(--crema2)}
.page-hero .ico{font-size:2.1rem;margin-bottom:8px;line-height:0}
.page-hero .ico svg.phicon{width:46px;height:46px;display:inline-block}
.page-hero h1{font-size:clamp(2rem,4.6vw,3rem);color:var(--petrol);margin-bottom:8px}
.page-hero p{max-width:640px;margin:0 auto;color:#5f5142;font-size:1.12rem}

/* ---------- Sections ---------- */
main{min-height:60vh}
section{padding:64px 0}
.sec-cream{background:var(--crema)}
.sec-cream2{background:var(--crema2)}
.sec-petrol{background:var(--petrol);color:#fff}
.sec-petrol .section-title,.sec-petrol h2{color:#fff}
.sec-petrol .section-intro{color:#9FB6C2}
.sec-sky{background:linear-gradient(180deg,#EAF6FF,#F4FBFF)}

/* ---------- Concepts ---------- */
.cgrid{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;text-align:center}
.cgrid-4{grid-template-columns:repeat(4,1fr);gap:26px;max-width:960px;margin-inline:auto}
.concept .ic{width:66px;height:66px;margin:0 auto 14px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#fff;box-shadow:var(--sombra-sm);font-size:1.5rem}
.concept .ic svg.licon{width:34px;height:34px}
.btn.has-ic{display:inline-flex;align-items:center;justify-content:center;gap:9px}
.btn .bic,.btn-visit .bic{width:1.05em;height:1.05em;flex:none}
.btn-visit{display:inline-flex;align-items:center;gap:7px}
.concept h3{font-size:1.05rem;color:var(--petrol);margin-bottom:4px}
.concept p{font-size:.88rem;color:#6b5a4a}

/* ---------- Banner ---------- */
.banner{background:var(--amarillo);color:var(--petrol);text-align:center;padding:56px 0}
.banner p{font-family:var(--ff-display);font-style:italic;font-size:clamp(1.35rem,3vw,2rem);max-width:880px;margin:0 auto}
.banner small{display:block;margin-top:14px;font-family:system-ui,sans-serif;font-style:normal;font-size:.9rem;letter-spacing:.6px;opacity:.75}

/* ---------- Verbs ---------- */
.verbs .head{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:16px;margin-bottom:34px}
.verbs h2{font-size:clamp(1.8rem,3.6vw,2.6rem);font-weight:900;text-transform:uppercase;color:#fff}
.verbs h2 .y{color:var(--amarillo)}
.verbs .head p{color:#9FB6C2;max-width:420px}
.vgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.vcard{background:var(--petrol2);border-radius:20px;overflow:hidden;box-shadow:var(--sombra)}
.vcard .ph{aspect-ratio:4/3.4;overflow:hidden}
.vcard .ph img{width:100%;height:100%;object-fit:cover}
.vcard .tx{padding:16px 20px 20px;position:relative}
.vbadge{width:46px;height:46px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 6px 14px rgba(0,0,0,.28);margin-top:-40px;margin-bottom:10px;position:relative;border:3px solid var(--petrol2)}
.vbadge svg{width:25px;height:25px}
.b-amarillo{background:var(--amarillo)} .b-amarillo svg{stroke:var(--petrol)}
.b-azul{background:var(--azul)}
.b-coral{background:var(--coral)}
.b-verde{background:var(--verde)}
.vcard .verb{font-size:1.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.5px}
.vcard:nth-child(1) .verb{color:var(--amarillo)}
.vcard:nth-child(2) .verb{color:var(--cielo)}
.vcard:nth-child(3) .verb{color:var(--coral)}
.vcard:nth-child(4) .verb{color:var(--verde)}
.vcard p{color:#CFE0E8;font-size:.92rem;margin-top:2px}
.verbs .close{text-align:center;margin-top:38px}
.verbs .close .big{font-size:clamp(2rem,5vw,3.2rem);font-weight:900;text-transform:uppercase;color:#fff}
.verbs .close .big .y{color:var(--amarillo)}
/* ----- Fidelidad a la propuesta (Q1) ----- */
.verbs h2 .c-cielo{color:var(--cielo)}
.section-title.has-spark::after{display:none}
/* Eyebrow con destellos flanqueantes */
.eyebrow.flank::before,.eyebrow.flank::after{content:"";display:inline-block;width:15px;height:12px;vertical-align:middle;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 12'><g stroke='%23E9654B' stroke-width='1.8' stroke-linecap='round' fill='none'><path d='M8 11V7.5'/><path d='M3 10l2-3.2'/><path d='M13 10l-2-3.2'/></g></svg>") no-repeat center/contain}
.eyebrow.flank::before{margin-right:11px}
.eyebrow.flank::after{margin-left:11px}
/* Contenedores con decoración */
.deco-host{position:relative;overflow:hidden}
.deco-host>.wrap{position:relative;z-index:1}
.deco-arc,.deco-confetti{position:absolute;z-index:0;pointer-events:none}
.arc-blue{left:2.5%;top:46%;width:32px;height:70px}
.arc-yellow{right:3%;bottom:15%;width:74px;height:34px}
.deco-confetti{top:20px;right:3%;width:210px;height:72px}
/* Líneas cortas bajo el texto de cada tarjeta de verbo */
.vcard .tx p::after{content:"";display:block;width:34px;height:3px;border-radius:3px;margin-top:12px}
.vcard:nth-child(1) .tx p::after{background:var(--amarillo)}
.vcard:nth-child(2) .tx p::after{background:var(--cielo)}
.vcard:nth-child(3) .tx p::after{background:var(--coral)}
.vcard:nth-child(4) .tx p::after{background:var(--verde)}
/* Destellos que flanquean "Yo soy capaz" */
.verbs .close{display:flex;align-items:center;justify-content:center;gap:22px}
.deco-rayito{flex:none}
.deco-rayito svg{width:26px;height:34px;display:block}
/* ----- Resaltados de color reutilizables ----- */
.c-coral{color:var(--coral)} .c-morado{color:var(--morado)}
/* ----- Sección "La vida en Liva" (galería) ----- */
.title-script em{font-family:var(--ff-display);font-style:italic;color:var(--coral);font-weight:400;font-size:1.12em;line-height:1}
.gallery-cap{text-align:center;max-width:640px;margin:26px auto 0;color:#5f5142;font-size:1.04rem}
.deco-under{position:relative;padding-bottom:20px}
.deco-under::after{content:"";position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:70px;height:10px;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 70 10'><path d='M2 6 Q 11 1 20 6 T 38 6 T 56 6 T 68 5' fill='none' stroke='%237651A8' stroke-width='2.6' stroke-linecap='round'/></svg>") no-repeat center/contain}
.gal-sec .deco-paren{position:absolute;z-index:0;top:60px;height:120px;width:34px}
.gal-sec .paren-l{left:5%} .gal-sec .paren-r{right:5%}
.gal-sec .deco-star,.gal-sec .deco-heart-p,.gal-sec .deco-rayito-y{position:absolute;z-index:0;width:30px;height:30px}
.gal-sec .deco-heart-p{top:96px;right:9%} .gal-sec .deco-star{bottom:120px;left:7%} .gal-sec .deco-rayito-y{top:150px;left:12%}
/* ----- Sección "Nuestro sello" (fondo amarillo) ----- */
.sec-yellow{background:var(--amarillo);color:var(--petrol)}
.sec-yellow h2,.ribbon-sec.sec-yellow h2{color:var(--petrol)}
.ribbon-sec.sec-yellow p{color:#4a3d1f}
.eyebrow.underline-green{color:var(--petrol);position:relative;padding-bottom:9px}
.eyebrow.underline-green::after{content:"";position:absolute;left:0;bottom:0;width:34px;height:3px;border-radius:3px;background:var(--verde)}
.ribbon-sec.sec-yellow .ribbon-art path[stroke="#72C8E5"]{stroke:#2C6C93}
.deco-dots{position:absolute;top:22px;right:26px;width:120px;height:76px;z-index:0;background-image:radial-gradient(rgba(18,49,61,.22) 2px, transparent 2px);background-size:15px 15px}
/* ----- El origen + CTA (última parte, propuesta S1) ----- */
.eyebrow.underline-blue{color:var(--azul);position:relative;padding-bottom:10px}
.eyebrow.underline-blue::after{content:"";position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:32px;height:3px;border-radius:3px;background:var(--azul)}
.deco-under-blue,.deco-under-coral{position:relative;padding-bottom:22px}
.deco-under-blue::after{content:"";position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:74px;height:10px;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 74 10'><path d='M2 6 Q 11 1 20 6 T 38 6 T 56 6 T 72 5' fill='none' stroke='%232C6C93' stroke-width='2.6' stroke-linecap='round'/></svg>") no-repeat center/contain}
.deco-under-coral::after{content:"";position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:74px;height:10px;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 74 10'><path d='M2 6 Q 11 1 20 6 T 38 6 T 56 6 T 72 5' fill='none' stroke='%23E9654B' stroke-width='2.6' stroke-linecap='round'/></svg>") no-repeat center/contain}
.deco-cloud{position:absolute;z-index:0;width:150px;height:auto;opacity:.9;pointer-events:none}
.cxa-sec .cloud-peach{left:3%;bottom:16%} .cxa-sec .cloud-blue{right:3%;bottom:22%}
.cxa-sec .deco-paren{position:absolute;z-index:0;top:64px;height:120px;width:34px}
.cxa-sec .paren-l{left:6%} .cxa-sec .paren-r{right:6%}
.cxa-sec .deco-rayito-y{position:absolute;z-index:0;width:28px;height:28px;top:120px;left:12%}
.cta .deco-heartspark{position:absolute;z-index:0;left:8%;top:26%;width:42px;height:42px}
.cta .deco-heartspark svg{width:100%;height:100%}
.cta .deco-paren{position:absolute;z-index:0;right:6%;top:24%;height:92px;width:30px}
.cta .deco-dots{top:auto;right:4%;bottom:14%}
/* ----- Banda "Nuestra misión" (3 columnas, propuesta P2) ----- */
.mision-grid{display:grid;grid-template-columns:.85fr 1.35fr;gap:48px;align-items:center}
.eyebrow.dash-left{display:inline-flex;align-items:center;gap:10px;color:var(--coral)}
.eyebrow.dash-left::before{content:"";width:26px;height:2px;background:var(--coral);border-radius:2px}
.mision-head h2{font-size:clamp(1.7rem,3.2vw,2.3rem);color:var(--petrol);font-weight:800;line-height:1.16;margin-top:12px}
.mision-head h2 em{color:var(--coral);font-style:italic}
.mision-feats{display:grid;grid-template-columns:repeat(3,1fr)}
.mfeat{padding:0 20px;border-left:1px solid rgba(18,49,61,.14)}
.mfeat:first-child{border-left:0;padding-left:0}
.mfeat .mfic{display:block;margin-bottom:10px}
.mfeat .mfic .licon{width:38px;height:38px}
.mfeat h3{font-size:1rem;color:var(--petrol);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;font-weight:800}
.mfeat p{font-size:.9rem;color:#6b5a4a;line-height:1.45}
@media(max-width:820px){.mision-grid{grid-template-columns:1fr;gap:26px}.mision-feats{grid-template-columns:1fr;gap:16px}.mfeat{border-left:0;border-top:1px solid rgba(18,49,61,.12);padding:15px 0 0}.mfeat:first-child{border-top:0;padding-top:0}}

/* ---------- Split ---------- */
.split{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.split .ph{border-radius:var(--radio);overflow:hidden;box-shadow:var(--sombra);border:6px solid #fff;aspect-ratio:4/3}
.split .ph img{width:100%;height:100%;object-fit:cover}
.split h2{color:var(--petrol);font-size:clamp(1.5rem,3vw,2rem);margin-bottom:14px}
.split p{margin-bottom:14px;color:#4a3f34}
.split .btns{justify-content:flex-start}
.split.reverse .txt{order:2}

/* ---------- Pull quote ---------- */
.pullquote{display:grid;grid-template-columns:220px 1fr;gap:34px;align-items:center;max-width:900px;margin:0 auto;background:#fff;border-radius:var(--radio);padding:30px 34px;box-shadow:var(--sombra)}
.pullquote .face{width:200px;height:200px;border-radius:50%;overflow:hidden;box-shadow:var(--sombra);border:6px solid var(--crema2);flex-shrink:0}
.pullquote .face img{width:100%;height:100%;object-fit:cover}
.pullquote blockquote{font-family:var(--ff-display);font-style:italic;font-size:clamp(1.3rem,2.6vw,1.7rem);color:var(--petrol);line-height:1.35}
.pullquote cite{display:block;margin-top:14px;font-style:normal;font-size:.95rem;color:#6b5a4a}

/* ---------- Historia prose ---------- */
.prose p{max-width:720px;margin:0 auto 18px;font-size:1.1rem;color:#43392e}
.prose h2{color:var(--petrol);text-align:center;margin:38px auto 14px;font-size:1.7rem}
.cita{max-width:700px;margin:30px auto 0;text-align:center;font-family:var(--ff-display);font-style:italic;font-size:1.3rem;color:var(--petrol);border-top:2px solid rgba(18,49,61,.16);padding-top:22px}
.cita small{display:block;font-style:normal;font-family:system-ui,sans-serif;font-size:.9rem;color:#6b5a4a;margin-top:8px}

/* ---------- Cintas destacado ---------- */
.cintas-box{background:#fff;border-radius:var(--radio);padding:28px 26px;box-shadow:var(--sombra);max-width:820px;margin:0 auto;display:flex;gap:22px;align-items:center;flex-wrap:wrap;justify-content:center}
.cintas-box .dots{display:flex;gap:8px;flex-shrink:0}
.cintas-box .dots i{width:24px;height:24px;border-radius:50%;display:block}
.cintas-box p{flex:1;min-width:240px;font-size:1.06rem;margin:0}
.cintas-box strong{color:var(--petrol)}

/* ---------- Cintas section (yellow) ---------- */
.ribbon-sec{background:var(--amarillo);color:var(--petrol);padding:64px 0;overflow:hidden}
.ribbon-sec .grid{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center}
.ribbon-sec h2{font-size:clamp(1.8rem,3.8vw,2.8rem);font-weight:900;line-height:1.05;color:var(--petrol)}
.ribbon-sec p{margin-top:16px;font-size:1.05rem;max-width:460px}
.ribbon-art{position:relative;min-height:220px}
.ribbon-art svg{width:100%;height:100%;position:absolute;inset:0}
.ribbon-sec .dots{display:flex;gap:12px;margin-top:24px}
.ribbon-sec .dots i{width:26px;height:26px;border-radius:50%;display:block;box-shadow:0 3px 8px rgba(0,0,0,.15)}

/* ---------- Cielos Abiertos ---------- */
.cxa-sec{text-align:center}
.cxa-sec img{height:120px;margin:0 auto 18px}
.cxa-sec .eyebrow{color:var(--azul)}
.cxa-sec h2{font-size:clamp(1.6rem,3.2vw,2.2rem);color:var(--petrol);margin:8px 0 12px}
.cxa-sec p{max-width:620px;margin:0 auto;color:#3a5060;font-size:1.06rem}
.cxa-sec .lema{font-family:var(--ff-display);font-style:italic;font-size:1.3rem;color:var(--azul);margin-top:18px}

/* ---------- Timeline ---------- */
.timeline{max-width:640px;margin:30px auto 0;border-left:3px solid var(--amarillo);padding-left:26px}
.timeline .tl{position:relative;margin-bottom:26px}
.timeline .tl:last-child{margin-bottom:0}
.timeline .tl::before{content:"";position:absolute;left:-35px;top:4px;width:14px;height:14px;border-radius:50%;background:var(--amarillo);border:3px solid var(--crema)}
.timeline .fecha{font-weight:800;color:var(--petrol)}
.timeline p{margin:2px 0 0;color:#4a3f34}

/* ---------- Team ---------- */
.team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:20px}
.team-card{background:#fff;border-radius:var(--radio);padding:26px 20px 22px;text-align:center;box-shadow:var(--sombra-sm);transition:.2s}
.team-card:hover{transform:translateY(-4px);box-shadow:var(--sombra)}
.team-card .ribbon{height:8px;border-radius:999px;width:52px;margin:0 auto 16px}
.team-card h3{font-size:1.35rem;color:var(--petrol);margin-bottom:2px}
.team-card .edad{font-size:.85rem;color:#6b5a4a;opacity:.8;margin-bottom:12px}
.team-card p{font-style:italic;color:#43392e;font-size:1rem}
.support{background:var(--amarillo);border-radius:var(--radio);padding:28px 30px;max-width:820px;margin:44px auto 0;text-align:center;box-shadow:var(--sombra)}
.support h3{color:var(--petrol);margin-bottom:8px;font-size:1.35rem}
.support p{color:var(--marron-osc)}
.note-soft{max-width:700px;margin:26px auto 0;text-align:center;font-size:.95rem;color:#6b5a4a}

/* ---------- Cards con foto ---------- */
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:26px}
.card{text-align:center}
.card .ph{width:190px;height:190px;border-radius:50%;overflow:hidden;margin:0 auto 16px;box-shadow:var(--sombra);border:5px solid #fff}
.card .ph img{width:100%;height:100%;object-fit:cover}
.card h3{color:var(--petrol);font-size:1.25rem;margin-bottom:6px}
.card p{font-size:.95rem;color:#4a3f34;max-width:280px;margin:0 auto}

/* ---------- Menú ---------- */
.menu-flag{max-width:760px;margin:0 auto 34px;background:#fff;border-left:6px solid var(--coral);border-radius:12px;padding:16px 20px;font-size:.95rem;color:var(--marron-osc);box-shadow:var(--sombra-sm)}
.menu-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:26px;margin-top:10px}
.menu-cat{background:#fff;border-radius:var(--radio);padding:26px 28px;box-shadow:var(--sombra-sm);border-top:6px solid var(--amarillo)}
.menu-cat h3{color:var(--petrol);font-size:1.4rem;margin-bottom:16px;display:flex;align-items:center;gap:10px}
.menu-cat ul{list-style:none}
.menu-cat li{display:flex;justify-content:space-between;gap:14px;padding:9px 0;border-bottom:1px dashed rgba(122,74,44,.18)}
.menu-cat li:last-child{border-bottom:0}
.menu-cat .plato{font-weight:600;color:var(--marron-osc)}
.menu-cat .desc{display:block;font-weight:400;font-size:.86rem;color:#6b5a4a;opacity:.85}

/* ---------- Galería ---------- */
.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.gallery a{display:block;border-radius:var(--radio-sm);overflow:hidden;box-shadow:var(--sombra-sm);aspect-ratio:1;position:relative}
.gallery img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.gallery a:hover img{transform:scale(1.06)}

/* ---------- Feature ---------- */
.feature{position:relative;border-radius:var(--radio);overflow:hidden;box-shadow:var(--sombra-lg);min-height:360px;display:flex;align-items:flex-end}
.feature img.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.feature .veil{position:absolute;inset:0;background:linear-gradient(0deg,rgba(18,49,61,.92) 0%,rgba(18,49,61,.4) 55%,rgba(18,49,61,.05) 100%)}
.feature .content{position:relative;padding:36px;color:#fff;max-width:640px}
.feature .content h2{color:#fff;font-size:clamp(1.5rem,3vw,2rem);margin-bottom:10px}
.feature .content p{color:#fff;opacity:.95}

/* ---------- Prueba social ---------- */
.visitas{display:grid;grid-template-columns:1.1fr 1fr;gap:30px;align-items:center}
.visitas .ph{border-radius:var(--radio);overflow:hidden;box-shadow:var(--sombra);border:6px solid #fff;aspect-ratio:16/10}
.visitas .ph img{width:100%;height:100%;object-fit:cover}
.visitas ul{list-style:none}
.visitas li{padding:10px 0;border-bottom:1px dashed rgba(18,49,61,.18);font-size:1.02rem;color:#43392e}
.visitas li:last-child{border-bottom:0}
.visitas li strong{color:var(--petrol)}

/* ---------- Prensa ---------- */
.press-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}
.press-card{display:block;background:#fff;border-radius:var(--radio);padding:22px;box-shadow:var(--sombra-sm);border-left:6px solid var(--amarillo);transition:.2s;color:#43392e;text-decoration:none}
.press-card:hover{transform:translateY(-3px);box-shadow:var(--sombra);color:#43392e}
.press-card .medio{font-family:var(--ff-display);font-weight:700;color:var(--petrol);font-size:1.15rem;margin-bottom:6px}
.press-card .titular{font-size:.95rem;color:#5f5142;line-height:1.4}
.press-card .leer{display:inline-block;margin-top:12px;font-weight:700;font-size:.85rem;color:var(--azul)}
.yt-box{background:var(--petrol);color:#fff;border-radius:var(--radio);padding:34px;text-align:center;max-width:760px;margin:40px auto 0}
.yt-box h3{color:#fff;font-size:1.5rem;margin-bottom:10px}
.yt-box p{opacity:.9;margin-bottom:18px;color:#CFE0E8}

/* ---------- Testimonios ---------- */
.test-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px}
.test-card{background:var(--azul);color:#fff;border-radius:var(--radio);padding:28px 24px;box-shadow:var(--sombra)}
.test-card h3{font-family:var(--ff-display);font-style:italic;font-size:1.3rem;margin-bottom:14px;color:#fff}
.test-card .line{height:2px;background:rgba(255,255,255,.4);width:60px;margin-bottom:14px}
.test-card p{font-size:1rem;color:#fff;opacity:.97}

/* ---------- Visítanos ---------- */
.visit{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:stretch}
.info-box{background:#fff;border-radius:var(--radio);padding:30px;box-shadow:var(--sombra)}
.info-box .row{display:flex;gap:14px;align-items:flex-start;margin-bottom:20px}
.info-box .row:last-child{margin-bottom:0}
.info-box .ic{font-size:1.5rem;flex-shrink:0;width:34px;text-align:center}
.info-box .row strong{display:block;color:var(--petrol);font-size:1.02rem;margin-bottom:2px}
.info-box .row span{color:#43392e;font-size:.98rem}
.visit .ph{border-radius:var(--radio);overflow:hidden;box-shadow:var(--sombra);border:6px solid #fff;min-height:260px}
.visit .ph img{width:100%;height:100%;object-fit:cover}
.map-btns{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-top:26px}

/* ---------- Social ---------- */
.social-icons{display:flex;gap:18px;justify-content:center;flex-wrap:wrap;margin-top:8px}
.social-icons a{display:flex;align-items:center;gap:10px;background:#fff;border-radius:999px;padding:12px 24px;box-shadow:var(--sombra-sm);color:var(--petrol);font-weight:700;transition:.2s;text-decoration:none}
.social-icons a:hover{transform:translateY(-3px);background:var(--amarillo);color:var(--petrol)}
.social-icons svg{width:22px;height:22px}

/* ---------- CTA ---------- */
.cta{background:var(--amarillo);text-align:center;padding:58px 0}
.cta h2{color:var(--petrol);font-size:clamp(1.5rem,3vw,2rem);margin-bottom:12px}
.cta p{color:var(--petrol);max-width:600px;margin:0 auto 22px}

/* ---------- Footer ---------- */
footer.site{background:var(--petrol3);color:#CFE0E8;padding:50px 0 0}
footer.site .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:30px;text-align:left}
footer.site img.f-logo{height:70px;margin-bottom:12px}
footer.site img.f-cxa{height:50px;margin-top:10px;opacity:.92}
footer.site .f-head{display:flex;align-items:center;gap:8px;font-size:.9rem;letter-spacing:1px;text-transform:uppercase;font-weight:800;margin-bottom:14px}
footer.site .f-head .fh-ic{width:18px;height:18px;flex:none}
footer.site .fcol-visit .f-head{color:var(--amarillo)}
footer.site .fcol-follow .f-head{color:var(--verde)}
footer.site a{color:#CFE0E8;text-decoration:none}
footer.site a:hover{color:var(--amarillo)}
footer.site p.about{font-size:.95rem;opacity:.85;max-width:320px}
footer.site ul.f-list{list-style:none}
footer.site .f-list li{display:flex;align-items:flex-start;gap:10px;margin-bottom:11px;font-size:.95rem}
footer.site .f-list .fic{width:17px;height:17px;flex:none;margin-top:2px;color:#7f97a3}
footer.site .fcol-visit .f-list .fic{color:var(--amarillo)}
footer.site .fcol-follow .f-list .fic{color:var(--verde)}
footer.site .claim{display:flex;align-items:center;justify-content:center;gap:18px;font-weight:900;text-transform:uppercase;font-size:1.3rem;color:#fff;margin-top:34px;border-top:1px solid rgba(255,255,255,.14);padding-top:24px}
footer.site .claim .y{color:var(--amarillo)}
footer.site .claim .rayf svg{width:24px;height:32px;display:block}
footer.site .fine{text-align:center;font-size:.8rem;opacity:.6;margin-top:14px}
.foot-bar{height:8px;margin-top:26px;background:linear-gradient(90deg,var(--rojo) 0 20%,var(--azul) 20% 40%,var(--verde) 40% 60%,var(--amarillo) 60% 80%,var(--morado) 80% 100%)}

/* ---------- Adornos y iconos de páginas interiores ---------- */
/* Page-hero decorado */
.page-hero .ico svg.phicon{width:50px;height:50px}
.page-hero .deco-confetti{top:auto;bottom:10px;right:4%;width:180px;height:60px;opacity:.85}
.page-hero .arc-yellow{right:4%;top:30px;bottom:auto;width:66px;height:30px}
.page-hero .arc-blue{left:3%;top:38%;width:30px;height:64px}
.page-hero .deco-dots{top:auto;bottom:14px;left:4%;right:auto;width:96px;height:56px}
/* Iconos de categoría del menú */
.menu-cat h3 .mcat-wrap{display:inline-flex;flex:none;line-height:0}
.menu-cat h3 svg.mcat-ic{width:30px;height:30px;display:block}
.cat-cafe{border-top-color:var(--coral)!important}
.cat-juice{border-top-color:var(--azul)!important}
.cat-food{border-top-color:var(--verde)!important}
.cat-sweet{border-top-color:var(--morado)!important}
/* Aviso de menú con icono */
.menu-flag{display:flex;align-items:flex-start;gap:12px}
.menu-flag .mf-ic{flex:none;line-height:0}
.menu-flag .mf-ic svg{width:24px;height:24px;display:block}
/* Iconos de contacto (Visítanos) */
.info-box .ic{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--crema2);border-radius:50%;box-shadow:var(--sombra-sm)}
.info-box .ic svg{width:24px;height:24px;display:block}
/* Redes sociales con icono */
.social-icons a svg{width:22px;height:22px;flex:none}
/* Flecha "Leer artículo" */
.leer-arrow{width:18px;height:18px;vertical-align:middle;margin-left:6px;display:inline-block}

/* ---------- Responsive ---------- */
@media(max-width:900px){
  .cgrid{grid-template-columns:repeat(2,1fr)}
  .vgrid{grid-template-columns:repeat(2,1fr)}
  .gallery{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:820px){
  .hero .inner{grid-template-columns:1fr;padding:34px 0 48px}
  .hero-photo{max-width:420px;margin:0 auto}
  .hero-quote{left:50%;right:auto;transform:translateX(-50%);top:auto;bottom:-22px;width:300px;max-width:88%;flex-direction:row;text-align:left;align-items:center}
  .deco-arc,.deco-confetti,.deco-cloud,.deco-paren,.deco-heartspark,.deco-star,.deco-heart-p,.deco-rayito-y,.deco-dots{display:none}
  .split{grid-template-columns:1fr}
  .split.reverse .txt{order:0}
  .split .btns{justify-content:center}
  .split .ph{aspect-ratio:16/10}
  .visit,.visitas{grid-template-columns:1fr}
  .ribbon-sec .grid{grid-template-columns:1fr}
  .pullquote{grid-template-columns:1fr;text-align:center;justify-items:center}
  .pullquote .face{width:160px;height:160px}
  footer.site .cols{grid-template-columns:1fr;text-align:center}
  footer.site img.f-logo,footer.site p.about{margin-inline:auto}
}
@media(max-width:760px){
  nav.main ul{position:fixed;top:63px;right:0;height:calc(100vh - 63px);width:78%;max-width:310px;background:var(--petrol2);flex-direction:column;align-items:flex-start;gap:0;padding:18px 22px;box-shadow:-8px 0 30px rgba(0,0,0,.3);transform:translateX(100%);transition:transform .28s ease;overflow-y:auto}
  nav.main ul.open{transform:translateX(0)}
  nav.main li{width:100%}
  nav.main li a{display:block;padding:13px 6px;font-size:1.05rem}
  .menu-toggle{display:block;z-index:110}
  .nav-right .btn-visit{display:none}
  .gallery{grid-template-columns:repeat(2,1fr)}
}
@media (prefers-reduced-motion:reduce){
  *{scroll-behavior:auto!important;transition:none!important;animation:none!important}
  html.js .reveal{opacity:1!important;transform:none!important}
}

/* ================= LIVA 3.0 — Capa premium ================= */
/* Ritmo tipográfico afinado para Fraunces + Manrope */
p{text-wrap:pretty}
h1,h2,h3{text-wrap:balance}
.eyebrow{font-family:var(--ff-sans);font-weight:800;letter-spacing:.22em;font-size:.72rem}
/* Botones: Manrope 800, tracking leve, sombra más suave */
.btn,.btn-visit{font-family:var(--ff-sans);font-weight:800;letter-spacing:.01em}
.btn{padding:15px 32px;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.btn:hover{box-shadow:0 10px 26px rgba(10,25,35,.16)}
/* Navegación en Manrope */
nav.main a,.lang-btn{font-family:var(--ff-sans)}
nav.main a{font-weight:600;letter-spacing:.005em}
/* Hero: negra editorial, tracking cerrado, sub más legible */
.hero h1{font-weight:900;letter-spacing:-.03em;line-height:.96}
.hero .sub{font-family:var(--ff-sans);font-weight:400;color:#D3E2EA}
.hero .trust{font-family:var(--ff-sans);letter-spacing:.01em}
.hero-quote p{font-family:var(--ff-display);font-style:italic;font-weight:400;font-size:.92rem;line-height:1.4}
/* Titulares de sección: peso 600 editorial salvo los que piden impacto */
.mision-head h2{font-weight:600;letter-spacing:-.02em}
.ribbon-sec h2{font-weight:900;letter-spacing:-.025em}
.section-title{font-weight:600;letter-spacing:-.02em}
/* Verbos: mantener energía (negra) pero con Fraunces */
.verbs h2,.verbs .close .big{font-weight:900;letter-spacing:-.02em;text-transform:none}
.vcard .verb{font-family:var(--ff-display);font-weight:900;text-transform:none;letter-spacing:-.01em}
/* "Yo soy capaz" del hero sin caja: más aire entre líneas */
.hero h1 .y{font-weight:900}
/* Cuerpo de párrafos: medida y color más finos */
.mfeat p,.vcard p,.gallery-cap,.cxa-sec p,.ribbon-sec p{font-family:var(--ff-sans)}
/* Cita/lema/blockquote: Fraunces italic ya aplicado; afinar interlínea */
.banner p,.pullquote blockquote,.cita,.cxa-sec .lema{font-weight:400;line-height:1.28}
/* Footer claim en Fraunces black para cerrar con firma */
footer.site .claim{font-family:var(--ff-display);font-weight:900;letter-spacing:-.01em;text-transform:none;font-size:1.5rem}
/* Sombras premium (un pelín más profundas y suaves) */
:root{--sombra:0 18px 50px rgba(10,25,35,.14);--sombra-lg:0 30px 70px rgba(10,25,35,.22)}
/* Enlaces de cuerpo con subrayado elegante */
.prose p a,.press-card .leer{text-underline-offset:3px}

/* ---------- Apóyanos ---------- */
.support-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:14px}
.sup-card{background:#fff;border-radius:var(--radio);padding:28px 24px 24px;box-shadow:var(--sombra-sm);border-top:5px solid var(--amarillo);display:flex;flex-direction:column;transition:transform .2s ease,box-shadow .2s ease}
.sup-card:hover{transform:translateY(-4px);box-shadow:var(--sombra)}
.sup-card:nth-child(2){border-top-color:var(--azul)}
.sup-card:nth-child(3){border-top-color:var(--verde)}
.sup-card:nth-child(4){border-top-color:var(--coral)}
.sup-ic{width:56px;height:56px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 6px 16px rgba(10,25,35,.16);margin-bottom:16px}
.sup-ic svg{width:30px;height:30px}
.sup-card h3{font-size:1.2rem;color:var(--petrol);margin-bottom:8px}
.sup-card p{font-size:.94rem;color:#5f5142;line-height:1.5;flex:1}
.sup-link{margin-top:16px;font-family:var(--ff-sans);font-weight:800;font-size:.9rem;color:var(--azul);text-decoration:none;letter-spacing:.01em}
.sup-link:hover{color:var(--coral)}
@media(max-width:900px){.support-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.support-grid{grid-template-columns:1fr}}

/* --- Menú: precios en CUP, especialidad y soporte futuro de imágenes por plato --- */
.cat-pizza{border-top-color:var(--amarillo)!important}
.menu-cat li{align-items:flex-start}
.menu-cat .mitem{flex:1 1 auto;min-width:0}
.menu-cat .precio{flex:none;font-weight:800;color:var(--petrol);white-space:nowrap;font-variant-numeric:tabular-nums;letter-spacing:.2px;font-size:1.02rem;padding-top:1px}
.menu-cat .star{color:var(--coral);font-size:.95em}
.menu-legend{max-width:1100px;margin:20px auto 0;text-align:center;font-size:.86rem;color:#6b5a4a}
.menu-legend .star{margin-right:4px}
/* Futuro: miniatura por plato — añade class="has-thumb" al <li> y un <img class="mthumb"> como primer hijo */
.menu-cat li.has-thumb .mthumb{flex:none;width:56px;height:56px;border-radius:12px;object-fit:cover;margin-right:12px;box-shadow:var(--sombra-sm)}

/* ====== Carta de Liva — diseño editorial con cintas de colores ====== */
.carta-note{max-width:720px;margin:0 auto 6px;text-align:center;font-size:.98rem;color:var(--marron-osc)}
.carta-note strong{color:var(--petrol)}
.cintas-cap{display:flex;flex-direction:column;align-items:center;gap:9px;margin:16px auto 36px}
.cintas-row{display:flex;gap:7px}
.cinta-dot{width:30px;height:10px;border-radius:6px;box-shadow:var(--sombra-sm)}
.cintas-cap small{color:var(--marron);font-style:italic;font-family:var(--ff-display);font-size:.93rem}
.especial{position:relative;overflow:hidden;max-width:840px;margin:0 auto 48px;background:linear-gradient(135deg,var(--petrol),var(--petrol2));color:#fff;border-radius:var(--radio);padding:30px 34px;display:flex;align-items:center;gap:26px;box-shadow:var(--sombra)}
.especial::before{content:"";position:absolute;left:0;top:0;bottom:0;width:9px;background:linear-gradient(var(--amarillo),var(--coral) 55%,var(--morado))}
.especial .e-ic{flex:none;width:66px;height:66px;border-radius:50%;background:rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center}
.especial .e-ic svg{width:36px;height:36px}
.especial .e-body{flex:1 1 auto;min-width:0}
.especial .e-eyebrow{display:block;letter-spacing:3px;text-transform:uppercase;font-size:.72rem;font-weight:800;color:var(--amarillo);margin-bottom:5px}
.especial h3{color:#fff;font-size:clamp(1.5rem,3vw,2.05rem);font-style:italic;margin:0 0 5px;line-height:1.1}
.especial p{color:rgba(255,255,255,.82);font-size:.96rem;margin:0}
.especial .e-price{flex:none;text-align:center;align-self:center}
.especial .e-price .num{font-family:var(--ff-display);font-weight:900;font-size:2.1rem;color:var(--amarillo);line-height:1}
.especial .e-price .cup{display:block;font-size:.64rem;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.65);margin-top:3px}
.carta{columns:2;column-gap:54px;max-width:1000px;margin:0 auto}
.carta-cat{break-inside:avoid;-webkit-column-break-inside:avoid;margin:0 0 34px;padding-top:2px}
.cat-cinta{display:inline-flex;align-items:center;gap:10px;font-family:var(--ff-display);font-weight:600;font-size:1.3rem;color:var(--petrol);background:#fff;padding:8px 18px 8px 13px;border-left:8px solid var(--cinta,var(--amarillo));border-radius:0 12px 12px 0;box-shadow:var(--sombra-sm);margin-bottom:16px}
.cat-cinta svg{width:25px;height:25px;flex:none}
.carta-item{padding:11px 2px;border-bottom:1px solid rgba(122,74,44,.1)}
.carta-cat .carta-item:last-child{border-bottom:0}
.ci-row{display:flex;align-items:flex-end;gap:7px}
.ci-name{font-family:var(--ff-display);font-weight:600;font-size:1.14rem;color:var(--petrol);flex:0 1 auto}
.ci-name .star{color:var(--coral);font-size:.82em;margin-left:3px}
.ci-lead{flex:1 1 auto;border-bottom:2px dotted rgba(122,74,44,.3);transform:translateY(-6px);min-width:16px}
.ci-price{flex:none;font-family:var(--ff-sans);font-weight:800;font-size:1.06rem;color:var(--petrol);font-variant-numeric:tabular-nums;white-space:nowrap}
.ci-desc{margin:3px 0 0;font-family:var(--ff-display);font-style:italic;font-size:.93rem;color:var(--marron);max-width:46ch;line-height:1.4}
/* Futuro: miniatura por plato — añade class="has-thumb" al .carta-item y un <img class="ci-thumb"> antes del .ci-row */
.carta-item.has-thumb{display:grid;grid-template-columns:58px 1fr;gap:14px;align-items:start}
.carta-item.has-thumb .ci-thumb{grid-row:span 2;width:58px;height:58px;border-radius:12px;object-fit:cover;box-shadow:var(--sombra-sm)}
@media(max-width:720px){.carta{columns:1}.especial{flex-wrap:wrap;gap:16px;text-align:center;justify-content:center}.especial .e-body{text-align:center}.especial .e-ic{margin:0 auto}}
