.fx-receta,.fx-recetas{--r:#E4032E;--b:#4A2B1F;--m:#8A7565;--cream:#FCF4EE;--line:#E8DDD2;font-family:Outfit,sans-serif;color:var(--b)}
.fx-receta *,.fx-recetas *{box-sizing:border-box}
.fx-receta a,.fx-recetas a{text-decoration:none;color:inherit}
.fx-receta h1,.fx-receta h2,.fx-receta h3,.fx-recetas h3{font-family:'Playfair Display',serif;font-weight:700;color:var(--b);margin:0}
.fx-wrap{max-width:1120px;margin:0 auto;padding:0 24px}
.fx-tag{margin:0;font-size:10.5px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--r)}
[hidden]{display:none!important}

/* Filtros */
.fx-filtros{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;max-width:1140px;margin:0 auto 40px;padding:0 24px}
.fx-pill{font:500 13px Outfit,sans-serif;color:var(--b);background:transparent;border:1px solid #CDBFB2;border-radius:40px;padding:10px 20px;cursor:pointer;transition:.15s}
.fx-pill:hover{border-color:var(--r);color:var(--r)}
.fx-pill.is-on{background:#fff;border-color:#fff;color:var(--r);box-shadow:0 6px 16px -10px rgba(74,43,31,.4)}
.fx-pill:focus-visible{outline:2px solid var(--b);outline-offset:2px}

/* Grilla y tarjetas */
.fx-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;max-width:1140px;margin:0 auto;padding:0 24px}
.fx-wrap .fx-grid{padding:0}
.fx-card{display:flex;flex-direction:column;background:#fff;box-shadow:0 24px 40px -26px rgba(74,43,31,.35)}
.fx-card__img{display:block;aspect-ratio:4/3;overflow:hidden;background:var(--cream)}
.fx-card__img img{width:100%;height:100%;object-fit:cover;display:block}
.fx-card__body{display:flex;flex-direction:column;flex:1;padding:24px}
.fx-card__title{font-size:28px!important;line-height:1.15;margin:8px 0 18px!important}
.fx-card__txt{flex:1;margin:0 0 20px;font-size:14px;font-weight:300;line-height:1.65}
.fx-meta{display:flex;gap:18px;padding-top:16px;border-top:1px solid var(--line);font-size:12px;color:var(--m)}
.fx-meta span{display:flex;align-items:center;gap:6px}.fx-meta svg{width:14px;height:14px;color:var(--r)}
.fx-more{margin-top:16px;font-size:13px;font-weight:500;color:var(--r)!important}
.fx-more:hover{text-decoration:underline!important}
.fx-card--mini .fx-card__title{font-size:22px!important;margin:6px 0 10px!important}
.fx-vacio{text-align:center;color:var(--m);margin:24px 0}

/* Receta individual */
.fx-receta{background:#FFFDF9;padding:20px 0 0}
.fx-bc{font-size:11.5px;color:var(--m);margin-bottom:12px}.fx-bc a:hover{text-decoration:underline}
.fx-hero{display:grid;grid-template-columns:1.3fr 1fr;background:var(--cream)}
.fx-hero__img img{display:block;width:100%;height:100%;min-height:480px;object-fit:cover}
.fx-hero__info{display:flex;flex-direction:column;padding:42px}
.fx-rule{display:flex;align-items:center;gap:12px;color:var(--r);margin-bottom:26px}
.fx-rule i{flex:1;height:2px;background:var(--r)}.fx-rule svg{width:24px;height:24px}
.fx-hero h1{font-size:clamp(34px,4vw,52px);line-height:1.05;margin:10px 0 18px!important}
.fx-hero__txt{margin:0 0 28px;font-size:16px;font-weight:300;line-height:1.65}
.fx-datos{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:auto 0 0;padding-top:24px;border-top:1px solid var(--line)}
.fx-datos svg{width:24px;height:24px;color:var(--r);margin-bottom:10px}
.fx-datos dt{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--m)}
.fx-datos dd{margin:2px 0 0;font-size:14px;font-weight:500}
.fx-body{display:grid;grid-template-columns:340px 1fr;gap:56px;padding:56px 0 64px;align-items:start}
.fx-ing{background:#fff;border:1px solid var(--line);padding:32px}
.fx-ing h2,.fx-pasos h2{font-size:28px!important;margin-bottom:12px!important}.fx-pasos h2{font-size:32px!important;margin-bottom:20px!important}
.fx-ing__list h4{margin:20px 0 6px;font:500 10.5px Outfit,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:var(--r)}
.fx-ing__list ul{list-style:none;margin:0;padding:0}
.fx-ing__list li{position:relative;padding:10px 0 10px 34px;border-bottom:1px solid var(--line);font-size:14px;cursor:pointer;margin:0}
.fx-ing__list li:before{content:"";position:absolute;left:0;top:11px;width:18px;height:18px;border:1.5px solid #B9AB9C;border-radius:3px;background:#fff}
.fx-ing__list li.is-done{color:var(--m);text-decoration:line-through}
.fx-ing__list li.is-done:before{content:"✓";background:var(--r);border-color:var(--r);color:#fff;font-size:12px;line-height:15px;text-align:center}
.fx-print{margin-top:22px;font:500 13px Outfit,sans-serif;color:var(--r);background:#fff;border:1px solid var(--r);border-radius:40px;padding:10px 20px;cursor:pointer}
.fx-print:hover{background:var(--r);color:#fff}
.fx-pasos ol{list-style:none;counter-reset:s;margin:0;padding:0}
.fx-pasos li{counter-increment:s;display:grid;grid-template-columns:72px 1fr;gap:0;padding:26px 0;border-bottom:1px solid var(--line);font-size:15px;font-weight:300;line-height:1.65;margin:0}
.fx-pasos li:before{content:counter(s,decimal-leading-zero);font:700 34px/1 'Playfair Display',serif;color:var(--b)}
.fx-tip{display:flex;gap:14px;margin-top:30px;padding:28px 32px;background:#4F2A1D;color:#fff}
.fx-tip svg{flex:none;width:24px;height:24px;color:var(--r)}
.fx-tip h3{color:#fff!important;font-size:22px;margin-bottom:6px!important}.fx-tip p{margin:0;font-size:14px;font-weight:300;line-height:1.6;color:#EBDDD3}
.fx-mas{background:var(--cream);padding:70px 0}
.fx-mas h2{text-align:center;color:var(--r)!important;font-size:40px!important;margin-bottom:36px!important}
.fx-center{text-align:center;margin:40px 0 0}
.fx-btn{display:inline-block;background:var(--r);color:#fff!important;font-weight:500;font-size:14px;padding:14px 32px;border-radius:40px;transition:.15s}.fx-btn:hover{background:#c40227}

/* Corazón: latido (se desactiva con "reducir movimiento") */
@keyframes fxbeat{0%{scale:1}14%{scale:1.3}28%{scale:1}42%{scale:1.22}70%,100%{scale:1}}
.fx-heart{animation:fxbeat 1.4s ease-in-out infinite}
@media(prefers-reduced-motion:reduce){.fx-heart{animation:none}}

@media(max-width:1000px){.fx-grid{grid-template-columns:repeat(2,1fr)}.fx-body{grid-template-columns:1fr;gap:36px}}
@media(max-width:820px){.fx-hero{grid-template-columns:1fr}.fx-hero__img img{min-height:0;aspect-ratio:4/3}.fx-hero__info{padding:28px 22px}}
@media(max-width:640px){.fx-grid{grid-template-columns:1fr}.fx-card__title{font-size:24px!important}.fx-pasos li{grid-template-columns:52px 1fr}.fx-pasos li:before{font-size:28px}.fx-datos{grid-template-columns:1fr 1fr}.fx-mas h2{font-size:32px!important}.fx-filtros{justify-content:flex-start}}
@media print{header,footer,#header,.ct-header,.ct-footer,.fx-bc,.fx-print,.fx-mas,.fx-hero__img{display:none!important}.fx-hero{grid-template-columns:1fr}.fx-body{grid-template-columns:1fr}.fx-tip{background:#fff;color:#000;border:1px solid #000}.fx-tip h3,.fx-tip p{color:#000!important}}
