/*
Theme Name: Mesa Clara Recetas
Theme URI: https://mesa-clara-recetas.pabloegvoficial.chatgpt.site/
Author: Mesa Clara
Description: Diseño editorial para recetas detalladas, galerías WebP y fuentes verificadas.
Version: 1.1.4
Requires at least: 6.2
Requires PHP: 7.4
Text Domain: mesa-clara
*/

:root{--paper:#fffaf1;--surface:#ffffff;--ink:#172523;--muted:#52635d;--line:#e2ddd0;--red:#b9412b;--red-dark:#922c1d;--gold:#edcb76;--soft:#f3ead9}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:1rem;line-height:1.55}
img{max-width:100%;height:auto}
a{color:inherit;text-underline-offset:.2em}
button,a{transition:color .16s ease,background-color .16s ease,border-color .16s ease,transform .16s ease}
a:focus-visible,button:focus-visible{outline:3px solid var(--red);outline-offset:4px}
.shell{width:min(100% - 3rem,1180px);margin-inline:auto}
.skip-link{position:absolute;top:-100px;left:1rem;z-index:100;background:var(--ink);color:#fff;padding:.7rem 1rem}
.skip-link:focus{top:1rem}
.site-header{background:var(--paper);border-bottom:1px solid var(--line)}
.header-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:1.5rem}
.brand{display:inline-flex;align-items:center;gap:.72rem;font:700 1.48rem Georgia,"Times New Roman",serif;letter-spacing:-.035em;text-decoration:none;white-space:nowrap}
.brand img{display:block;border-radius:10px}
.main-nav{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:.25rem 1.45rem}
.main-nav a{font-size:.88rem;font-weight:650;color:var(--muted);text-decoration:none;padding:.5rem 0;border-bottom:2px solid transparent}
.main-nav a:hover,.main-nav a[aria-current="page"]{color:var(--red);border-color:var(--red)}
.eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:.72rem;font-weight:800;color:var(--red)}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.13;letter-spacing:-.035em}
.home-lead{padding-block:3.1rem 3.7rem;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.06fr);align-items:stretch;gap:2rem}
.home-lead__text{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:1.8rem 1rem 1.8rem 0}
.home-lead__text .eyebrow{margin:0 0 1.15rem}
.home-lead h1{font-size:clamp(2.8rem,5.2vw,5.3rem);max-width:9ch;margin:0 0 1.15rem}
.lead-copy{font-size:1.15rem;line-height:1.6;color:var(--muted);max-width:43ch;margin:0 0 1.7rem}
.lead-link{display:inline-flex;align-items:center;gap:.75rem;background:var(--red);color:white;padding:.85rem 1.1rem;text-decoration:none;font-weight:750;border-radius:5px}
.lead-link:hover{background:var(--red-dark);transform:translateY(-2px)}
.lead-feature{position:relative;min-height:410px;overflow:hidden;border-radius:5px;background:var(--soft);display:block}
.lead-feature img{display:block;width:100%;height:100%;min-height:410px;object-fit:cover}
.lead-feature::after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(9,20,18,.76))}
.lead-feature__caption{position:absolute;z-index:1;bottom:1.6rem;left:1.7rem;right:1.7rem;color:#fff;display:grid;gap:.45rem}
.lead-feature__caption span{text-transform:uppercase;letter-spacing:.13em;font-size:.72rem;font-weight:800;color:var(--gold)}
.lead-feature__caption strong{font:700 clamp(1.45rem,2.4vw,2.25rem)/1.15 Georgia,"Times New Roman",serif;max-width:27ch}
.recipe-section{padding-block:0 5.4rem}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--line);padding-bottom:1.15rem;margin-bottom:1.5rem}
.section-heading .eyebrow{margin:0 0 .35rem}
.section-heading h2,.archive-heading h1{font-size:clamp(2.1rem,3vw,3.2rem);margin:0}
.section-heading>span{font-size:.85rem;color:var(--muted);padding-bottom:.3rem}
.recipe-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem 1.55rem}
.recipe-card{min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:5px;overflow:hidden;display:flex;flex-direction:column}
.recipe-card__image{display:block;aspect-ratio:4/3;background:var(--soft);overflow:hidden}
.recipe-card__image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease}
.recipe-card:hover img{transform:scale(1.035)}
.recipe-card__body{padding:1.3rem 1.4rem 1.45rem;display:flex;flex-direction:column;flex:1}
.recipe-card .eyebrow{margin-bottom:.58rem}
.recipe-card__category{align-self:flex-start;text-decoration:none}
.recipe-card__category:hover{color:var(--red)}
.recipe-card__details{display:flex;flex:1;flex-direction:column;color:inherit;text-decoration:none}
.recipe-card__details:hover h3{color:var(--red)}
.recipe-card__details:focus-visible,.recipe-card__category:focus-visible{outline:3px solid var(--red);outline-offset:3px}
.recipe-card h3{font-size:1.46rem;margin:0 0 .68rem}
.recipe-card p{font-size:.94rem;color:var(--muted);line-height:1.57;margin:0 0 1.3rem}
.recipe-card__read{font-size:.86rem;color:var(--red);font-weight:800;margin-top:auto}
.archive-page{padding-block:3.8rem 5rem;min-height:60vh}
.archive-heading{max-width:650px;margin-bottom:2rem}
.archive-heading .eyebrow{margin:0 0 .55rem}
.archive-heading>p:not(.eyebrow){color:var(--muted);font-size:1.08rem}
.pagination{margin-top:2rem}.pagination .nav-links{display:flex;justify-content:center;gap:.8rem}.page-numbers{padding:.45rem .7rem}
.article-layout{padding-block:3.2rem 5.3rem}
.recipe-article{max-width:790px;margin-inline:auto}
.breadcrumb{display:flex;gap:.55rem;align-items:center;color:var(--muted);font-size:.84rem;margin-bottom:1.25rem}
.breadcrumb a{text-decoration:none}.breadcrumb a:hover{color:var(--red)}
.recipe-article h1{font-size:clamp(2.65rem,5vw,4.45rem);margin:0 0 1.55rem}
.recipe-content{font-size:1.06rem;line-height:1.76}
.recipe-content>p:first-child{font-size:1.17rem;color:#30423c;line-height:1.65}
.recipe-content p{margin:0 0 1.33rem}
.recipe-content a:not(.mesa-gallery a){color:var(--red-dark);text-decoration-thickness:1px}
.recipe-content a:hover{color:var(--red)}
.recipe-content h2{font-size:clamp(1.85rem,3vw,2.6rem);line-height:1.18;margin:3.15rem 0 1.1rem;scroll-margin-top:2rem}
.recipe-content h2::before{content:"";display:block;width:38px;height:4px;background:var(--red);margin-bottom:.75rem}
.recipe-content ul,.recipe-content ol{margin:1.3rem 0 1.6rem;padding-left:1.4rem}
.recipe-content li{padding-left:.3rem;margin:.56rem 0}
.recipe-content li::marker{color:var(--red);font-weight:700}
.mesa-gallery{margin:2.3rem 0 .8rem}
.mesa-gallery__images{display:grid;grid-template-columns:1.45fr 1fr;gap:.7rem}
.mesa-gallery__images>div{display:block;overflow:hidden;background:var(--soft);border-radius:4px;aspect-ratio:4/3}
.mesa-gallery__images img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .2s ease}
.mesa-gallery figcaption{font-size:.81rem;line-height:1.45;color:var(--muted);margin-top:.65rem}
.recipe-facts{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.4rem 0 2.2rem;padding:1rem 1.2rem;background:#f2e9d8;border-left:4px solid var(--red)}
.recipe-facts span{display:inline-flex;gap:.45rem;padding-right:1.2rem;font-size:.86rem;color:var(--muted)}
.recipe-facts strong{color:var(--ink)}
.site-footer{background:#182a26;color:#f6f3e9;padding:2.5rem 0}
.footer-inner{display:flex;justify-content:space-between;gap:2rem;align-items:flex-start}
.footer-inner strong{font:700 1.35rem Georgia,"Times New Roman",serif}
.footer-inner p{font-size:.89rem;color:#ccd3ca;margin:.5rem 0 0}
.footer-links{display:flex;gap:1.3rem;font-size:.87rem}.footer-links a{text-decoration:none}.footer-links a:hover{text-decoration:underline}
.empty-recipes{padding-block:7rem;min-height:65vh}.empty-recipes h1{font-size:clamp(2.7rem,5vw,4rem);margin:0 0 1rem}.empty-recipes p{font-size:1.1rem;color:var(--muted);margin-bottom:1.7rem}
@media(max-width:900px){.header-inner{align-items:flex-start;flex-direction:column;padding-block:1rem;gap:.6rem}.main-nav{justify-content:flex-start;gap:.15rem 1.1rem}.home-lead{grid-template-columns:1fr 1fr;gap:1.2rem}.home-lead h1{font-size:clamp(2.5rem,5vw,4rem)}.recipe-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.shell{width:min(100% - 2rem,1180px)}.main-nav{width:100%;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;white-space:nowrap;padding-bottom:.3rem}.main-nav a{font-size:.82rem}.home-lead{padding-block:1.6rem 2.4rem;grid-template-columns:1fr}.home-lead__text{padding:.3rem 0}.home-lead h1{max-width:none;font-size:2.85rem}.lead-copy{font-size:1rem}.lead-feature,.lead-feature img{min-height:300px}.recipe-grid{grid-template-columns:1fr;gap:1.1rem}.recipe-section{padding-bottom:3.4rem}.recipe-card__image{aspect-ratio:16/10}.article-layout{padding-block:1.8rem 3.4rem}.recipe-article h1{font-size:2.55rem}.recipe-content{font-size:1rem;line-height:1.7}.recipe-content>p:first-child{font-size:1.08rem}.recipe-content h2{margin-top:2.5rem}.mesa-gallery__images{grid-template-columns:1fr 1fr}.mesa-gallery__images>div{aspect-ratio:1/1}.footer-inner{flex-direction:column}.recipe-facts{display:grid;grid-template-columns:1fr 1fr}.recipe-facts span{padding:0}}
@media print{body{background:white;color:black}.site-header,.site-footer,.breadcrumb,.mesa-gallery,.lead-link{display:none!important}.shell{width:100%}.article-layout{padding:0}.recipe-article{max-width:none}.recipe-article h1{font-size:2rem}.recipe-content{font-size:10pt;line-height:1.35}.recipe-content h2{font-size:16pt;margin:1rem 0 .4rem;break-after:avoid}.recipe-content p{margin-bottom:.55rem}.recipe-content ul,.recipe-content ol{margin:.4rem 0}.recipe-content li{margin:.2rem 0}.recipe-facts{border:1px solid #aaa;background:white}}
/* Expanded editorial catalogue */
.category-section{padding-bottom:4.4rem;scroll-margin-top:1rem}
.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem}
.category-tile{display:flex;flex-direction:column;justify-content:space-between;min-height:132px;padding:1.3rem 1.4rem;background:#f4ecdd;border:1px solid var(--line);border-radius:5px;text-decoration:none}
.category-tile:hover{border-color:var(--red);background:#fff7e9}
.category-tile strong{font:700 1.36rem/1.2 Georgia,"Times New Roman",serif}
.category-tile span{color:var(--red-dark);font-size:.86rem;font-weight:700}
.section-more{font-size:.9rem;font-weight:750;color:var(--red-dark);text-decoration:none;white-space:nowrap;padding-bottom:.4rem}
.section-more:hover{text-decoration:underline}
.footer-inner{display:grid;grid-template-columns:2fr 1fr 1fr;gap:3rem}
.footer-brand{font:700 1.6rem Georgia,"Times New Roman",serif;text-decoration:none}
.footer-about p{max-width:34ch;line-height:1.65}
.footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:.55rem;font-size:.9rem}
.footer-links strong{font:700 1.05rem Georgia,"Times New Roman",serif;margin-bottom:.45rem}
.footer-links a{color:#e9ece5}
.footer-bottom{display:flex;justify-content:space-between;gap:1.5rem;border-top:1px solid #42524b;margin-top:2.4rem;padding-top:1.1rem;font-size:.76rem;color:#bfcac2}
.site-footer{padding:3.1rem 0 1.5rem}
.credit-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1.5rem}
.credit-list article{border:1px solid var(--line);padding:1rem;background:white;border-radius:4px;font-size:.9rem}
.credit-list h2{font-size:1.1rem;margin:.2rem 0 .5rem}
.credit-list p{margin:.3rem 0}
@media(max-width:900px){.footer-inner{grid-template-columns:1.6fr 1fr 1fr;gap:1.4rem}}
@media(max-width:650px){.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.category-tile{min-height:112px;padding:1rem}.category-tile strong{font-size:1.18rem}.category-section{padding-bottom:3rem}.footer-inner{grid-template-columns:1fr 1fr}.footer-about{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:.3rem}.credit-list{grid-template-columns:1fr}.section-more{font-size:.8rem}}

/* Catálogo de 100 recetas */
@media(min-width:901px){.recipe-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem 1.1rem}.recipe-card__body{padding:1.1rem 1.1rem 1.3rem}.recipe-card h3{font-size:1.28rem}}
.catalogue-cta{margin:1.4rem 0 0}.catalogue-cta .lead-link{padding:.75rem 1rem}.catalogue-tools{margin:2rem 0 1.6rem;padding:1.25rem;background:#f3ead9;border:1px solid var(--line);border-radius:5px}.catalogue-tools label{display:block;font-weight:750;margin-bottom:.5rem}.catalogue-tools input{width:100%;max-width:520px;border:1px solid #a4aaa0;border-radius:4px;background:white;color:var(--ink);font:inherit;padding:.8rem .9rem}.catalogue-tools input:focus-visible{outline:3px solid var(--red);outline-offset:2px}.filter-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}.filter-chip{font:650 .86rem system-ui,sans-serif;border:1px solid #c7c2b6;border-radius:99px;padding:.5rem .75rem;color:var(--ink);background:white;cursor:pointer}.filter-chip:hover,.filter-chip.is-active{background:var(--red);border-color:var(--red);color:white}.catalogue-count{margin:.6rem 0 0;color:var(--muted);font-size:.9rem}.catalogue-empty{padding:2rem;background:white;border:1px solid var(--line)}.recipe-card[hidden]{display:none!important}.mesa-gallery__images--single{grid-template-columns:1fr}.mesa-gallery__images--single>div{aspect-ratio:16/10}@media(max-width:650px){.catalogue-tools{margin-top:1.2rem;padding:1rem}.filter-chips{gap:.4rem}.filter-chip{font-size:.8rem}.catalogue-cta .lead-link{font-size:.9rem}}

/* WordPress */
.home-lead--empty{grid-template-columns:1fr}.recipe-card__placeholder{display:grid;place-items:center;width:100%;height:100%;background:#e6d6b6;color:#922c1d;font:700 1.5rem Georgia,serif}.recipe-article .recipe-content{margin:0}.admin-bar .site-header{position:relative}.screen-reader-text{position:absolute;left:-9999px}.screen-reader-text:focus{left:1rem;top:1rem;z-index:1000;background:#fff;padding:.5rem}.nav-links{display:flex;gap:.75rem;justify-content:center;margin-top:2rem}@media(max-width:650px){.home-lead--empty{grid-template-columns:1fr}}
/* Los espacios se imprimen solo al tener un widget; reserva la altura de cada unidad en su propio bloque GPT. */
.mesa-ad-zone{width:min(100% - 3rem,1180px);margin:1.4rem auto 2.4rem;text-align:center;min-height:1px}
.mesa-ad-zone .mesa-ad-widget{max-width:100%;overflow:visible}
.article-layout .mesa-ad-zone{width:100%;margin:1.5rem auto 2rem}
.mesa-home-content{margin-bottom:2.8rem}
.mesa-home-content>*:first-child{margin-top:0}
