/* Comida de Abuela — dynamic front page */
.comida-home { --cda-ink:#27231f; --cda-olive:#77744f; --cda-cream:#f5f0e8; --cda-blush:#e8d6ca; --cda-paper:#fffdf9; color:var(--cda-ink); overflow:hidden; }
.comida-home *, .comida-home *::before, .comida-home *::after { box-sizing:border-box; }
.comida-shell { width:min(1240px, calc(100% - 48px)); margin-inline:auto; }
.comida-section { padding:clamp(72px, 9vw, 128px) 0; }
.comida-eyebrow { margin:0 0 14px; color:var(--cda-olive); font-size:12px; font-weight:700; letter-spacing:.16em; line-height:1.4; text-transform:uppercase; }
.comida-home h1,.comida-home h2,.comida-home h3,.comida-home p { margin-top:0; }
.comida-home h1 { max-width:760px; margin-bottom:22px; font-size:clamp(48px, 6.2vw, 88px); line-height:.98; letter-spacing:-.025em; }
.comida-home h2 { margin-bottom:0; font-size:clamp(38px, 4.3vw, 60px); line-height:1.04; }
.comida-hero { position:relative; padding:clamp(36px,5vw,72px) 0 0; background:var(--cda-paper); }
.comida-hero::before { content:""; position:absolute; inset:0 0 auto; height:72%; background:var(--cda-cream); }
.comida-hero__stage { position:relative; min-height:clamp(590px,65vw,720px); }
.comida-hero__photo { position:absolute; inset:0 0 0 30%; overflow:hidden; background:#cbb7a9; }
.comida-hero__photo::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(35,30,26,.12),transparent 45%); pointer-events:none; }
.comida-hero__photo img,.comida-hero__photo .comida-image-placeholder { width:100%; height:100%; object-fit:cover; }
.comida-hero__copy { position:absolute; z-index:2; top:50%; left:0; width:min(55%,650px); padding:clamp(38px,5vw,72px); background:rgba(255,253,249,.96); box-shadow:0 30px 80px rgba(52,42,34,.13); transform:translateY(-50%); }
.comida-hero__copy::before { content:""; position:absolute; top:22px; bottom:22px; left:22px; width:1px; background:var(--cda-blush); }
.comida-hero__intro { max-width:560px; margin-bottom:30px; font-size:clamp(16px,1.35vw,19px); line-height:1.75; }
.comida-actions { display:flex; flex-wrap:wrap; align-items:center; gap:24px; }
.comida-button { display:inline-flex; align-items:center; justify-content:center; min-height:52px; padding:14px 28px; background:var(--cda-ink); color:#fff!important; font-size:12px; font-weight:700; letter-spacing:.12em; text-decoration:none!important; text-transform:uppercase; }
.comida-button:hover { background:var(--cda-olive); }
.comida-text-link,.comida-card-arrow { color:var(--cda-ink)!important; font-size:13px; font-weight:700; letter-spacing:.08em; text-decoration:none!important; text-transform:uppercase; }
.comida-text-link span,.comida-card-arrow span { display:inline-block; margin-left:6px; transition:transform .2s ease; }
.comida-text-link:hover span,.comida-card-arrow:hover span { transform:translateX(4px); }
.comida-hero__recipe { position:absolute; z-index:3; right:28px; bottom:-28px; display:grid; width:min(420px,45%); padding:22px 24px; background:var(--cda-ink); color:#fff!important; text-decoration:none!important; box-shadow:0 18px 42px rgba(30,25,21,.2); }
.comida-hero__recipe .comida-card-label { color:#d8c6aa; }
.comida-hero__recipe strong { margin:5px 0 11px; font-family:var(--global-heading-font-family); font-size:clamp(23px,2.2vw,31px); font-weight:400; line-height:1.05; }
.comida-hero__recipe>span:last-child { font-size:11px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.comida-hero__recipe b { display:inline-block; margin-left:6px; transition:transform .2s ease; }
.comida-hero__recipe:hover b { transform:translateX(5px); }
.comida-trust { position:relative; z-index:2; display:grid; grid-template-columns:repeat(3,1fr); gap:0; width:calc(100% - 34%); margin:0; padding:28px 0 32px; background:var(--cda-paper); list-style:none; font-size:13px; }
.comida-trust li { display:flex; align-items:center; gap:12px; padding-right:24px; }
.comida-trust strong { color:var(--cda-olive); font-size:10px; letter-spacing:.12em; }
.comida-card-label { color:var(--cda-olive); font-size:10px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.comida-image-placeholder { display:grid; width:100%; height:100%; place-items:center; background:linear-gradient(135deg,#d9c3b5,#9a976b); color:rgba(255,255,255,.78); font-family:var(--global-heading-font-family); font-size:72px; }
.comida-section-heading { display:flex; align-items:end; justify-content:space-between; gap:30px; margin-bottom:42px; }
.comida-section-heading--center { justify-content:center; text-align:center; }
.comida-recipe-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:46px 28px; }
.comida-recipe-card { margin:0; }
.comida-recipe-card__image { display:block; aspect-ratio:4/3; margin-bottom:22px; overflow:hidden; background:var(--cda-cream); }
.comida-recipe-card__image img { width:100%; height:100%; object-fit:cover; transition:transform .45s ease; }
.comida-recipe-card:hover .comida-recipe-card__image img { transform:scale(1.035); }
.comida-recipe-card__body h3 { margin:8px 0 12px; font-size:clamp(25px,2.1vw,32px); line-height:1.08; }
.comida-recipe-card__body h3 a { color:inherit; text-decoration:none; }
.comida-recipe-card__body p { margin-bottom:16px; font-size:15px; line-height:1.65; }
.comida-empty-state { grid-column:1/-1; padding:60px; background:var(--cda-cream); text-align:center; }
.comida-categories { background:var(--cda-ink); color:#fff; }
.comida-categories .comida-eyebrow { color:#d6c5a4; }
.comida-category-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; margin-top:44px; }
.comida-category-card { display:block; position:relative; min-height:390px; overflow:hidden; background:#4c493a; color:#fff!important; text-decoration:none!important; }
.comida-category-card img,.comida-category-card__placeholder { display:block; width:100%; height:100%; position:absolute; inset:0; object-fit:cover; transition:transform .5s ease; }
.comida-category-card__placeholder { background:linear-gradient(155deg,#9b9870,#514d3c); }
.comida-category-card:nth-child(even) .comida-category-card__placeholder { background:linear-gradient(155deg,#c7a998,#6e5548); }
.comida-category-card::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(20,18,16,.76),transparent 65%); }
.comida-category-card:hover img { transform:scale(1.045); }
.comida-category-card__overlay { position:absolute; z-index:1; inset:auto 26px 26px; }
.comida-category-card__overlay strong { display:block; font-family:var(--global-heading-font-family); font-size:32px; font-weight:400; line-height:1.05; }
.comida-category-card__overlay small { display:block; margin-top:7px; font-size:11px; letter-spacing:.12em; text-transform:uppercase; }
.comida-story { background:var(--cda-paper); }
.comida-story__grid { display:grid; grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr); align-items:center; gap:clamp(50px,9vw,140px); }
.comida-story__mark { display:grid; min-height:480px; padding:50px; align-content:center; background:var(--cda-blush); text-align:center; transform:rotate(-2deg); }
.comida-story__mark span { font-size:13px; letter-spacing:.18em; text-transform:uppercase; }
.comida-story__mark strong { margin-top:20px; font-family:var(--global-heading-font-family); font-size:clamp(52px,6vw,78px); font-weight:400; line-height:.9; }
.comida-story__copy>p:not(.comida-eyebrow) { max-width:690px; margin:25px 0 34px; font-size:18px; line-height:1.8; }
.comida-values { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid #ddd3c9; }
.comida-values div { padding:22px 14px 0 0; }
.comida-values strong { display:block; color:var(--cda-olive); font-size:12px; }
.comida-values span { display:block; margin-top:5px; font-size:14px; line-height:1.4; }
.comida-discover { padding:clamp(60px,7vw,90px) 0; background:var(--cda-olive); color:#fff; }
.comida-discover .comida-eyebrow { color:#eee8d7; }
.comida-discover__inner { display:grid; grid-template-columns:1fr minmax(320px,.75fr); align-items:center; gap:60px; }
.comida-discover h2 { font-size:clamp(36px,4vw,55px); }
.comida-discover p:last-child { margin:18px 0 0; }
.comida-discover .search-form { display:flex; width:100%; }
.comida-discover .search-field { width:100%; min-height:58px; padding:14px 18px; border:0; border-radius:0; background:#fff; color:var(--cda-ink); }
.comida-discover .search-submit { min-height:58px; padding:14px 24px; border:0; border-radius:0; background:var(--cda-ink); color:#fff; }
@media (max-width:960px) {
 .comida-hero { background:var(--cda-cream); }
 .comida-hero__stage { min-height:650px; }
 .comida-hero__photo { left:18%; }
 .comida-hero__copy { width:68%; }
 .comida-hero__recipe { right:18px; width:48%; }
 .comida-trust { width:82%; }
 .comida-story__grid,.comida-discover__inner { grid-template-columns:1fr; }
 .comida-recipe-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .comida-category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .comida-category-card { min-height:340px; }
 .comida-story__mark { min-height:350px; }
}
@media (max-width:620px) {
 .comida-shell { width:min(100% - 30px,1240px); }
 .comida-section { padding:66px 0; }
 .comida-home h1 { font-size:47px; }
 .comida-hero { padding:22px 0 0; }
 .comida-hero__stage { display:flex; min-height:0; flex-direction:column; }
 .comida-hero__photo { position:relative; inset:auto; order:1; aspect-ratio:4/3; }
 .comida-hero__copy { position:relative; top:auto; left:auto; order:2; width:calc(100% - 24px); margin:-42px auto 0; padding:36px 30px 38px; transform:none; }
 .comida-hero__copy::before { top:16px; bottom:16px; left:14px; }
 .comida-hero__intro { font-size:16px; }
 .comida-actions { align-items:flex-start; flex-direction:column; gap:18px; }
 .comida-hero__recipe { position:relative; right:auto; bottom:auto; order:3; width:calc(100% - 54px); margin:-1px 0 0 auto; padding:20px; }
 .comida-trust { grid-template-columns:1fr; width:100%; padding:26px 12px; gap:14px; }
 .comida-section-heading { align-items:start; }
 .comida-recipe-grid { grid-template-columns:1fr; }
 .comida-category-grid { gap:12px; }
 .comida-category-card { min-height:250px; }
 .comida-category-card__overlay { inset:auto 18px 18px; }
 .comida-category-card__overlay strong { font-size:25px; }
 .comida-story__mark { min-height:300px; padding:30px; }
 .comida-values { grid-template-columns:1fr; }
 .comida-values div { display:grid; grid-template-columns:35px 1fr; align-items:start; }
 .comida-values span { margin-top:0; }
 .comida-discover__inner { gap:28px; }
 .comida-discover .search-submit { padding-inline:16px; }
}
@media (prefers-reduced-motion:reduce) { .comida-home * { scroll-behavior:auto!important; transition:none!important; } }
