/*
Theme Name: Cartín Hogar
Theme URI: https://saborcartin.com
Author: Equipo Cartín
Description: Tema original para Productos Cartín, WooCommerce, recetas y ferias.
Version: 2.1.0
Requires at least: 6.3
Requires PHP: 8.0
Text Domain: cartin-hogar
*/
:root{--vino:#70251a;--vino2:#4e1b16;--crema:#fff7e9;--miel:#c88635;--tinta:#34231d;--verde:#586445;--borde:#e5d6bf}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fffcf6;color:var(--tinta);font-family:system-ui,-apple-system,'Segoe UI',sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}button,input{font:inherit}.container{max-width:1200px;margin:auto;padding:0 24px}.topbar{background:var(--vino2);color:#fff;padding:11px 0;text-align:center;font-size:13px}.site-header{position:sticky;top:0;z-index:50;background:var(--vino);box-shadow:0 3px 15px #32120f20}.nav-shell{display:flex;align-items:center;justify-content:space-between;min-height:92px;gap:20px}.brand img{width:225px;max-height:75px;object-fit:contain}.nav{display:flex;gap:22px;align-items:center;color:#fff;font-size:14px;font-weight:700}.nav a:hover,.nav a:focus{color:#f6c37c}.cart-link{background:#ffffff20;border:1px solid #ffffff55;padding:10px 14px;border-radius:25px}.mobile-toggle{display:none}.btn{display:inline-block;background:var(--vino);color:#fff;padding:14px 25px;border-radius:40px;font-weight:700;border:2px solid var(--vino);transition:.2s}.btn:hover{background:#4f1c15;color:#fff}.btn-light{background:#fff8e8;color:var(--vino)}.btn-light:hover{color:#fff}.hero{background:radial-gradient(circle at 80% 20%,#ffeac2,#fff5df 56%,#ebd3a9);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.12fr .88fr;align-items:center;gap:38px;min-height:520px;padding-top:65px;padding-bottom:65px}.eyebrow{text-transform:uppercase;color:var(--vino);font-size:12px;letter-spacing:2px;font-weight:800}.hero h1{font-family:Georgia,serif;color:var(--vino);font-size:clamp(38px,5vw,66px);line-height:1.04;margin:16px 0}.hero p{font-size:19px;max-width:555px}.hero-actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:30px}.hero-art{display:flex;justify-content:center;align-items:flex-end;position:relative;min-height:380px}.hero-art img{max-height:390px;max-width:74%;filter:drop-shadow(0 18px 15px #46211925)}.art-note{position:absolute;right:0;bottom:18px;background:#fffef9;border:1px solid var(--borde);padding:15px;max-width:190px;border-radius:12px;font-size:13px;box-shadow:0 10px 25px #39221219}.section{padding:76px 0}.section-alt{background:var(--crema)}.section-head{text-align:center;max-width:760px;margin:0 auto 33px}.section h2{font-family:Georgia,serif;font-size:clamp(29px,3.5vw,43px);line-height:1.15;color:var(--vino);margin:8px 0}.section-head p{color:#64564e}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.tile{background:white;border:1px solid var(--borde);border-radius:18px;overflow:hidden;box-shadow:0 10px 24px #5f3d2310}.tile-content{padding:21px}.tile h3{font-family:Georgia,serif;color:var(--vino);margin:0 0 9px;font-size:21px}.tile p{margin:0 0 12px;color:#554940;font-size:14px}.photo-placeholder{height:220px;display:flex;align-items:center;justify-content:center;text-align:center;padding:25px;background:linear-gradient(140deg,#f1e4cf,#ddc49f);color:#73553a;font-weight:700;font-size:14px}.tile .wp-post-image{width:100%;height:220px;object-fit:cover;display:block}.tag{display:inline-block;background:#f2e7d6;border-radius:20px;padding:4px 10px;font-size:11px;color:var(--vino);font-weight:800;letter-spacing:.5px}.product-price{font-weight:800;color:var(--vino);font-size:18px}.featured{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.featured-image{border-radius:26px;background:#f2e4ce;min-height:340px;display:flex;align-items:center;justify-content:center;overflow:hidden}.featured-image img{max-height:440px;object-fit:contain}.featured-copy h2{text-align:left}.featured-copy p{font-size:17px}.featured .tag{margin-bottom:12px}.fair-date{display:block;font-weight:800;color:var(--vino);margin:7px 0}.link-arrow{display:inline-block;color:var(--vino);font-weight:800;border-bottom:2px solid var(--miel);padding-bottom:3px}.newsletter{background:var(--vino);color:white}.newsletter h2{color:white}.newsletter-box{display:flex;align-items:center;gap:50px;justify-content:space-between}.newsletter-copy{max-width:600px}.newsletter form{min-width:280px}.newsletter input{padding:13px;border-radius:8px;border:1px solid #fff;width:100%;max-width:380px}.site-footer{background:var(--vino2);color:#fff;padding:48px 0 24px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:35px}.footer-logo{max-width:240px}.site-footer a{text-decoration:underline;text-decoration-color:#ffffff66}.footer-bottom{border-top:1px solid #ffffff35;margin-top:35px;padding-top:20px;font-size:12px;color:#e9d6c8}.content-page{min-height:55vh;padding:60px 0}.content-page h1{font-family:Georgia,serif;color:var(--vino);font-size:44px}.content-page article{max-width:800px}.woocommerce ul.products li.product{background:white;border:1px solid var(--borde);padding:12px;border-radius:14px}.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit{background:var(--vino);color:white;border-radius:25px}.woocommerce a.button:hover,.woocommerce button.button:hover{background:var(--vino2);color:white}.placeholder-info{background:#fff5df;border-left:4px solid var(--miel);padding:16px 20px;border-radius:8px}@media(max-width:850px){.nav{display:none;position:absolute;top:92px;left:0;right:0;background:var(--vino);padding:20px 25px;flex-direction:column;align-items:flex-start}.nav.open{display:flex}.mobile-toggle{display:block;border:1px solid #ffffff55;background:transparent;border-radius:8px;color:#fff;padding:8px 12px}.hero-grid,.featured{grid-template-columns:1fr}.hero-grid{padding-top:40px;padding-bottom:30px}.hero-art{min-height:280px}.hero-art img{max-height:300px}.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}.newsletter-box{display:block}.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:550px){.container{padding:0 17px}.nav-shell{min-height:76px}.nav{top:76px}.brand img{max-width:190px}.hero h1{font-size:39px}.hero p{font-size:16px}.section{padding:51px 0}.grid-3,.grid-4,.footer-grid{grid-template-columns:1fr}.hero-art{min-height:230px}.hero-art img{max-height:290px}.art-note{font-size:11px;max-width:138px}.btn{font-size:14px;padding:12px 19px}}

/* v0.2: portada siguiendo la jerarquía visual aprobada */
:root{--vino:#70251a;--crema:#fff7e9}
.topbar{padding:6px 0;font-size:11px}.nav-shell{min-height:77px}.brand img{width:218px;max-height:65px}
.hero-v2{position:relative;background:linear-gradient(180deg,#fff0d6 0%,#f8e8ca 76%,#b67c4f 76.4%,#7e4b2f 100%);isolation:isolate}
.hero-v2:before{content:"";position:absolute;inset:0;background-image:var(--hero-photo,none);background-size:cover;background-position:center;opacity:.22;z-index:-1}
.hero-v2-inner{padding-top:35px;padding-bottom:0;max-width:1250px}.hero-v2-copy{max-width:810px;text-align:center;margin:0 auto;position:relative;z-index:3}
.hero-kicker{display:inline-block;color:var(--vino);font-size:12px;text-transform:uppercase;letter-spacing:.19em;font-weight:800}
.hero-v2 h1{font-size:clamp(36px,5.5vw,70px);line-height:1.05;margin:10px auto 16px;max-width:780px;font-family:Georgia,serif;text-wrap:balance}
.hero-v2 p{max-width:640px;margin:0 auto;font-size:18px}.hero-v2 .hero-actions{justify-content:center;margin-top:20px}
.hero-v2-scene{position:relative;min-height:310px;margin-top:12px;display:flex;align-items:end;justify-content:center}
.hero-v2-bear{position:absolute;left:0;bottom:14px;max-height:335px;width:auto;max-width:30%;filter:drop-shadow(0 12px 8px #32130d44);z-index:1}
.hero-v2-products{position:relative;z-index:2;display:flex;align-items:end;justify-content:center;gap:clamp(5px,1vw,18px);width:75%;margin:30px 0 0 auto;min-height:230px}
.hero-product{display:flex;align-items:end;justify-content:center;width:19%;transition:transform .2s}.hero-product:hover{transform:translateY(-7px)}
.hero-product img{max-height:275px;max-width:100%;width:auto;object-fit:contain;filter:drop-shadow(0 9px 8px #2b1d1766)}
.hero-no-products{background:#fff9e9ef;border:1px solid #c39d76;color:#70251a;border-radius:16px;text-align:center;padding:25px;max-width:390px;margin:0 auto 48px;display:grid;gap:6px;box-shadow:0 12px 30px #3c1d121b}
.hero-no-products span{font-size:13px;color:#625044}.section-featured{background:#fff5e6;padding:55px 0}.featured-v2{grid-template-columns:.9fr 1.1fr;gap:55px}
.featured-v2 .featured-image{background:radial-gradient(ellipse at center,#f7e4c7,#edcfaa);min-height:315px}.featured-v2 .featured-image img{max-height:340px}
.featured-empty{display:grid;gap:10px;text-align:center;padding:30px;color:#6d3c28}.featured-empty span{font-size:24px;font-family:Georgia,serif}.featured-empty small{font-size:13px}
.featured-copy h2{font-size:clamp(30px,3.4vw,43px)}.featured-copy h3{font-family:Georgia,serif;color:var(--vino);font-size:25px;margin:8px 0}
.section-fairs{background:#fffbf5;padding:50px 0}.section-recipes{background:#fff8ed;padding:50px 0}.section-products{background:#fffcf7;padding:55px 0}
.section-head{margin-bottom:24px}.section-head h2{margin:5px 0}.section-head p{margin:9px auto}.section-more{text-align:center;margin:25px 0 0}
.cartin-fairs .tile,.recipe-tile{box-shadow:0 6px 14px #5f3d2310}.cartin-fairs .tile-content{padding:15px}.cartin-fairs .tile h3{font-size:18px}
.newsletter{padding:45px 0}.newsletter .eyebrow{color:#ffd99f}.newsletter-box{gap:30px}
@media(max-width:850px){.hero-v2-inner{padding-top:40px}.hero-v2-scene{min-height:240px}.hero-v2-bear{max-height:245px}.hero-product img{max-height:220px}.hero-v2-products{min-height:190px}.featured-v2{grid-template-columns:1fr 1fr;gap:26px}}
@media(max-width:600px){.hero-v2-inner{padding-top:28px}.hero-v2 h1{font-size:clamp(31px,8vw,44px)}.hero-v2 p{font-size:15px}.hero-v2 .hero-actions{gap:8px}.hero-v2-scene{min-height:180px}.hero-v2-bear{max-height:175px;max-width:32%}.hero-v2-products{width:78%;min-height:150px;margin-top:12px;gap:3px}.hero-product img{max-height:158px}.hero-no-products{margin-bottom:22px;padding:12px;font-size:12px}.hero-no-products span{font-size:11px}.featured-v2{grid-template-columns:1fr}.section-featured,.section-fairs,.section-recipes,.section-products{padding:43px 0}.featured-v2 .featured-image{min-height:240px}.section h2{font-size:30px}.grid-3{grid-template-columns:1fr}.newsletter-box{display:block}}

/* v0.3: tipografia de titulares Cartin. La fuente comercial se instala por separado.
   Colocar el archivo con licencia en assets/fonts/kathen.otf en el servidor.
   Sin archivo autorizado, la web usa la tipografia de respaldo. */
/* La fuente Kathen se registra dinámicamente en functions.php desde la carpeta permanente de uploads o el tema. */
:root{--cartin-display:'Cartin Kathen',Georgia,serif}
.hero h1,.hero-v2 h1,.section h2,.featured-copy h2,.featured-copy h3,.section-head h2{font-family:var(--cartin-display)}
/* Evitar el efecto de texto comprimido en titulos manuscritos */
.hero-v2 h1{line-height:1.18;letter-spacing:0;font-weight:400;max-width:890px}
.section h2,.featured-copy h2,.featured-copy h3{line-height:1.23;font-weight:400;letter-spacing:0}
/* Los nombres de producto, tarjetas, menus y llamadas a la accion conservan su legibilidad. */
@media(max-width:600px){.hero-v2 h1{line-height:1.16}.section h2{line-height:1.2}}

/* Cartín Hogar 0.4: editor visual de contenido en Personalizar; sin alterar la distribución pública. */

/* v0.5: si se selecciona una foto de cabecera, mostrarla SIN lavado ni elementos duplicados. */
.hero-v2-with-photo{background:#f7e6c9;min-height:clamp(560px,56.25vw,920px);display:flex;align-items:flex-start}
.hero-v2-with-photo::before{background-image:var(--hero-photo);background-position:center center;background-size:cover;opacity:1;z-index:-1}
.hero-v2-with-photo .hero-v2-inner{width:100%;max-width:1250px;padding-top:38px;padding-bottom:35px}
.hero-v2-with-photo .hero-v2-copy{max-width:900px}
.hero-v2-with-photo .hero-v2-copy h1{margin-top:9px;margin-bottom:8px}
.hero-v2-with-photo .hero-v2-copy p{margin-top:0}
.hero-v2-with-photo .hero-actions{margin-top:12px}
@media(max-width:850px){.hero-v2-with-photo{min-height:620px}.hero-v2-with-photo::before{background-position:67% center}.hero-v2-with-photo .hero-v2-inner{padding-top:26px}}
@media(max-width:600px){.hero-v2-with-photo{min-height:580px}.hero-v2-with-photo::before{background-position:75% center}.hero-v2-with-photo .hero-v2-inner{padding-top:20px}.hero-v2-with-photo .hero-v2-copy h1{font-size:clamp(31px,8vw,43px)}}


/* v0.6: cajón central semitransparente para preservar la legibilidad del texto sobre la fotografía. */
.hero-v2-with-photo .hero-v2-copy{
  background:rgba(255,255,255,.74);
  border:1px solid rgba(255,255,255,.58);
  border-radius:30px;
  padding:26px 34px 28px;
  box-shadow:0 18px 42px rgba(61,30,18,.18);
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
}
.hero-v2-with-photo .hero-kicker,
.hero-v2-with-photo .hero-v2-copy h1,
.hero-v2-with-photo .hero-v2-copy p{
  text-shadow:none;
}
@media(max-width:850px){
  .hero-v2-with-photo .hero-v2-copy{padding:22px 24px 24px;border-radius:24px;max-width:760px}
}
@media(max-width:600px){
  .hero-v2-with-photo .hero-v2-copy{padding:18px 18px 20px;border-radius:20px}
}


/* v0.7: únicamente radios del panel y controles de identidad visual de cabecera. */
.hero-v2-with-photo .hero-v2-copy{border-radius:48px}
@media(max-width:850px){.hero-v2-with-photo .hero-v2-copy{border-radius:38px}}
@media(max-width:600px){.hero-v2-with-photo .hero-v2-copy{border-radius:30px}}
.site-header{background:var(--cartin-header-color,var(--vino))}
.brand .custom-logo-link{display:inline-flex;align-items:center}
.brand img.custom-logo{width:218px;max-height:65px;object-fit:contain}
@media(max-width:550px){.brand img.custom-logo{max-width:190px}}

/* v0.8: fotografía destacada editable */
.featured-v2 .featured-image{position:relative;overflow:hidden}.featured-v2 .featured-image img{display:block;width:100%;height:100%;min-height:315px;max-height:none;object-fit:cover;object-position:center center}

@media(max-width:600px){.featured-v2 .featured-image img{min-height:240px}}

/* v1.0: misma tipografía Kathen para el titular en escritorio y móvil.
   La fuente se carga desde una carpeta persistente fuera del tema. */
.hero-v2 h1,
.hero-v2-with-photo .hero-v2-copy h1,
.section h2,
.featured-copy h2,
.featured-copy h3,
.section-head h2 {
  font-family:var(--cartin-display);
  font-weight:400;
  font-style:normal;
}


/* Cartín Hogar v1.4: vitrina de producto destacado en PNG, sin alterar el hero. */
.section-featured.cartin-featured-showcase{
  position:relative;
  isolation:isolate;
  padding:var(--cartin-featured-spacing,85px) 0;
  background:var(--cartin-featured-bg,#fff5e6);
  overflow:hidden;
}
.section-featured.cartin-featured-showcase::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background-image:var(--cartin-featured-background,none);
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
  opacity:.15;
  pointer-events:none;
}
.featured-v2.cartin-featured-cutout{
  grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);
  gap:clamp(24px,5vw,80px);
  align-items:center;
}
.featured-v2.cartin-featured-cutout .featured-image{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:460px;
  overflow:visible;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.featured-v2.cartin-featured-cutout .featured-image img.cartin-featured-cutout-img{
  display:block;
  width:auto;
  height:auto;
  max-width:100%;
  max-height:var(--cartin-featured-product-size,460px);
  min-height:0;
  object-fit:contain;
  object-position:center;
  filter:drop-shadow(0 18px 14px rgba(57,28,17,.22));
}
.featured-v2.cartin-featured-cutout .featured-copy{
  min-width:0;
}
.featured-v2.cartin-featured-cutout .featured-copy h2{
  font-size:clamp(34px,4.2vw,60px);
}
.featured-v2.cartin-featured-cutout .featured-copy p{
  font-size:clamp(16px,1.35vw,19px);
  line-height:1.65;
}
.featured-v2.cartin-featured-cutout .featured-copy .btn{
  margin-top:7px;
}
.featured-v2.cartin-featured-cutout.cartin-featured-product-right .featured-image{order:2}
.featured-v2.cartin-featured-cutout.cartin-featured-product-right .featured-copy{order:1}
.cartin-featured-badge{display:flex;align-items:center;margin-bottom:14px}
.cartin-featured-badge-mobile{display:none}
.cartin-featured-badge.cartin-badge-left{justify-content:flex-start}
.cartin-featured-badge.cartin-badge-center{justify-content:center}
.cartin-featured-badge.cartin-badge-right{justify-content:flex-end}
.cartin-featured-badge img{
  display:block;
  width:auto;
  max-width:min(100%,var(--cartin-featured-badge-size,290px));
  max-height:160px;
  height:auto;
  object-fit:contain;
}
/* Incluso sin PNG del producto, el rótulo subido puede mostrarse con la fotografía tradicional. */
.featured-v2:not(.cartin-featured-cutout) .cartin-featured-badge img{
  max-width:min(100%,var(--cartin-featured-badge-size,290px));
}
@media(max-width:850px){
  .featured-v2.cartin-featured-cutout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px}
  .featured-v2.cartin-featured-cutout .featured-image{min-height:350px}
  .featured-v2.cartin-featured-cutout .featured-image img.cartin-featured-cutout-img{max-height:min(420px,var(--cartin-featured-product-size,460px))}
}
@media(max-width:600px){
  .section-featured.cartin-featured-showcase{padding:clamp(40px,calc(var(--cartin-featured-spacing,85px) * .7),90px) 0}
  .featured-v2.cartin-featured-cutout{display:flex;flex-direction:column;gap:8px}
  .featured-v2.cartin-featured-cutout .featured-image,
  .featured-v2.cartin-featured-cutout.cartin-featured-product-right .featured-image{
    order:1;
    width:100%;
    min-height:0;
    margin:0;
  }
  .featured-v2.cartin-featured-cutout .featured-copy,
  .featured-v2.cartin-featured-cutout.cartin-featured-product-right .featured-copy{
    order:2;
    width:100%;
  }
  .featured-v2.cartin-featured-cutout .featured-image{flex-direction:column;align-items:center}
  .featured-v2.cartin-featured-cutout .featured-image .cartin-featured-badge-mobile{
    display:flex;width:100%;margin-bottom:14px;
  }
  .cartin-featured-badge-mobile.cartin-badge-left{justify-content:flex-start}
  .cartin-featured-badge-mobile.cartin-badge-center{justify-content:center}
  .cartin-featured-badge-mobile.cartin-badge-right{justify-content:flex-end}
  .cartin-featured-badge-mobile img{
    display:block;width:auto;height:auto;
    max-width:min(100%,var(--cartin-featured-badge-size,290px));max-height:135px;object-fit:contain;
  }
  .featured-v2.cartin-featured-cutout .featured-copy .cartin-featured-badge{display:none}
  .featured-v2.cartin-featured-cutout .featured-image img.cartin-featured-cutout-img{
    max-height:min(360px,var(--cartin-featured-product-size,460px));
  }
  .featured-v2.cartin-featured-cutout .featured-copy h2{font-size:clamp(32px,9vw,46px)}
  .cartin-featured-badge{margin-bottom:10px}
}


/* v1.5: corregir el tope visual del producto destacado en escritorios.
   El PNG ocupa una columna más ancha y el usuario puede ajustar el ancho
   reservado para la imagen sin alterar el hero ni las demás secciones. */
@media (min-width:1100px){
 .section-featured.cartin-featured-showcase > .container.featured-v2.cartin-featured-cutout{
   width:100%;
   max-width:1580px;
   padding-left:clamp(20px,3vw,48px);
   padding-right:clamp(20px,3vw,48px);
   grid-template-columns:minmax(0,var(--cartin-featured-image-share,60%)) minmax(0,1fr);
   gap:clamp(16px,2vw,36px);
 }
 .section-featured.cartin-featured-showcase .featured-v2.cartin-featured-cutout .featured-image{
   width:100%;
 }
 .section-featured.cartin-featured-showcase .featured-v2.cartin-featured-cutout .featured-image img.cartin-featured-cutout-img{
   max-width:100%;
   max-height:var(--cartin-featured-product-size,460px);
 }
}

/* v1.6: solo el botón de Producto de la semana: icono carrito, centrado, color original. */
.section-featured .featured-v2 .featured-copy .cartin-featured-buy-wrap{
  display:flex;
  justify-content:center;
  width:100%;
  margin-top:22px;
}
.section-featured .featured-v2 .featured-copy .cartin-featured-buy-btn{
  display:inline-flex;
  justify-content:center;
  align-items:center;
  gap:14px;
  box-sizing:border-box;
  width:282px;
  max-width:100%;
  min-height:57px;
  padding:10px 20px;
  border-radius:18px;
  background:var(--vino);
  border-color:var(--vino);
  color:#fff;
  font-size:17px;
  line-height:1.25;
  font-weight:700;
  text-align:center;
  margin-top:0;
}
.section-featured .featured-v2 .featured-copy .cartin-featured-buy-btn:hover{
  background:var(--vino2);
  color:#fff;
}
.section-featured .featured-v2 .featured-copy .cartin-featured-buy-icon{
  width:29px;
  height:29px;
  flex:0 0 29px;
  stroke:currentColor;
}
@media(max-width:550px){
  .section-featured .featured-v2 .featured-copy .cartin-featured-buy-btn{min-height:54px;font-size:16px}
}


/* v1.7: corrección acotada al producto destacado y su rótulo en pantallas pequeñas.
   Evita heredar min-height:315px y object-fit:cover de las fotos rectangulares. */
@media (max-width: 767px) {
  .section-featured.cartin-featured-showcase > .container.featured-v2.cartin-featured-cutout {
    display: flex;
    flex-direction: column;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    gap: 14px;
  }
  .section-featured.cartin-featured-showcase .featured-v2.cartin-featured-cutout .featured-image,
  .section-featured.cartin-featured-showcase .featured-v2.cartin-featured-cutout.cartin-featured-product-right .featured-image {
    order: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 100%;
    min-height: 0;
    overflow: visible;
    margin: 0;
    padding: 0;
  }
  .section-featured.cartin-featured-showcase .featured-v2.cartin-featured-cutout .featured-copy,
  .section-featured.cartin-featured-showcase .featured-v2.cartin-featured-cutout.cartin-featured-product-right .featured-copy {
    order: 2;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    text-align: center;
  }
  .section-featured.cartin-featured-showcase .featured-v2.cartin-featured-cutout .featured-copy h2,
  .section-featured.cartin-featured-showcase .featured-v2.cartin-featured-cutout .featured-copy h3 {
    text-align: center;
    overflow-wrap: anywhere;
  }
  .section-featured.cartin-featured-showcase .featured-v2.cartin-featured-cutout .featured-image img.cartin-featured-cutout-img {
    display: block;
    width: var(--cartin-featured-mobile-product-width, 100%);
    max-width: 100%;
    height: auto;
    min-height: 0;
    max-height: var(--cartin-featured-mobile-product-size, 340px);
    object-fit: contain;
    object-position: center center;
    margin-inline: auto;
  }
  .section-featured.cartin-featured-showcase .featured-v2.cartin-featured-cutout .featured-image .cartin-featured-badge-mobile {
    display: flex;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    justify-content: center;
    margin: 0 auto 12px;
    overflow: visible;
  }
  .section-featured.cartin-featured-showcase .featured-v2.cartin-featured-cutout .featured-image .cartin-featured-badge-mobile img {
    display: block;
    width: min(100%, var(--cartin-featured-badge-mobile-size, 290px));
    max-width: 100%;
    height: auto;
    min-height: 0;
    max-height: none;
    object-fit: contain;
    object-position: center;
    margin-inline: auto;
  }
  .section-featured.cartin-featured-showcase .featured-v2.cartin-featured-cutout .featured-copy .cartin-featured-badge {
    display: none;
  }
}

/* v1.7: imagen opcional en lugar del título «Próximas ferias».
   La imagen y el texto alternativo se mantienen dentro del ancho disponible. */
.section-fairs .section-head h2.cartin-fairs-heading-graphic {
  display: block;
  width: 100%;
  max-width: 100%;
  line-height: 1;
  margin: 10px auto 16px;
  text-align: center;
}
.section-fairs .section-head h2.cartin-fairs-heading-graphic .cartin-fairs-heading-img {
  display: block;
  width: min(100%, var(--cartin-fairs-heading-width, 520px));
  max-width: 100%;
  height: auto;
  min-height: 0;
  max-height: none;
  margin: 0 auto;
  object-fit: contain;
}
@media (max-width: 767px) {
  .section-fairs .section-head h2.cartin-fairs-heading-graphic .cartin-fairs-heading-img {
    width: min(100%, var(--cartin-fairs-heading-mobile-width, 300px));
  }
}


/* v1.8 — Exclusivo de "Próximas ferias": Kathen y compactación del rótulo.
   El PNG aprobado (2172x724) contiene aproximadamente 25% de área vacía
   arriba y abajo: mostramos únicamente la banda central, sin alterar el
   archivo de medios ni las imágenes o estilos de otras secciones. */
.section-fairs .section-head .cartin-fairs-kicker{
  display:block;
  font-family:var(--cartin-display,'Cartin Kathen',Georgia,serif);
  font-size:clamp(24px,2.2vw,32px);
  font-weight:400;
  font-style:normal;
  text-transform:none;
  letter-spacing:0;
  line-height:1.16;
  margin:0 auto 3px;
}
.section-fairs .section-head h2.cartin-fairs-heading-graphic{
  display:block;
  position:relative;
  width:min(100%,var(--cartin-fairs-heading-width,520px));
  max-width:100%;
  aspect-ratio:6 / 1;
  height:auto;
  overflow:hidden;
  padding:0;
  margin:0 auto 8px;
  line-height:1;
}
.section-fairs .section-head h2.cartin-fairs-heading-graphic .cartin-fairs-heading-img{
  display:block;
  position:absolute;
  inset:auto 0 auto 0;
  top:50%;
  transform:translateY(-50%);
  width:100%;
  max-width:100%;
  height:auto;
  min-height:0;
  max-height:none;
  margin:0;
  object-fit:contain;
}
.section-fairs .section-head h2.cartin-fairs-heading-graphic .screen-reader-text{
  position:absolute;
  width:1px;
  height:1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
}
.section-fairs .section-head h2:not(.cartin-fairs-heading-graphic){
  margin:2px auto 8px;
}
.section-fairs .section-head > p{
  margin:0 auto;
}
@media (max-width:767px){
  .section-fairs .section-head .cartin-fairs-kicker{font-size:clamp(23px,6.1vw,29px)}
  .section-fairs .section-head h2.cartin-fairs-heading-graphic{
    width:min(100%,var(--cartin-fairs-heading-mobile-width,300px));
  }
  .section-fairs .section-head h2.cartin-fairs-heading-graphic .cartin-fairs-heading-img{
    width:100%;
  }
}

/* v1.9 — Alinear el ritmo vertical entre los rótulos de
   “Producto de la semana” y “Próximas ferias”.
   Se busca una separación similar a “Nos vemos esta semana”,
   pero un poco más abierta y consistente entre ambas secciones. */
.section-featured .featured-copy .cartin-featured-badge{
  margin-bottom:8px;
}
.section-featured .featured-copy h2{
  margin:0 0 10px;
}
.section-featured .featured-copy h3{
  margin:0 0 14px;
}
.section-fairs .section-head .cartin-fairs-kicker{
  margin:0 auto 8px;
  line-height:1.18;
}
.section-fairs .section-head h2.cartin-fairs-heading-graphic{
  margin:0 auto 12px;
}
.section-fairs .section-head h2:not(.cartin-fairs-heading-graphic){
  margin:0 auto 12px;
}
.section-fairs .section-head > p{
  margin:0 auto 2px;
}
@media (max-width:767px){
  .section-featured .featured-copy .cartin-featured-badge{
    margin-bottom:9px;
  }
  .section-featured .featured-copy h2{
    margin:0 0 10px;
  }
  .section-fairs .section-head .cartin-fairs-kicker{
    margin:0 auto 9px;
  }
  .section-fairs .section-head h2.cartin-fairs-heading-graphic,
  .section-fairs .section-head h2:not(.cartin-fairs-heading-graphic){
    margin:0 auto 12px;
  }
}

/* v2.0 — Igualar de forma VISIBLE la separación vertical entre
   el rótulo superior y el título principal en:
   1) Producto de la semana
   2) Próximas ferias
   Se toma como base el ritmo de “Nos vemos esta semana”,
   pero con un poco más de aire. */
.section-featured .featured-copy .cartin-featured-badge{
  margin:0 0 14px;
}
.section-featured .featured-copy h2{
  margin:0 0 16px;
  line-height:1.18;
}
.section-featured .featured-copy h3{
  margin:0 0 16px;
  line-height:1.18;
}
.section-fairs .section-head .cartin-fairs-kicker{
  margin:0 auto 14px;
  line-height:1.18;
}
.section-fairs .section-head h2.cartin-fairs-heading-graphic,
.section-fairs .section-head h2:not(.cartin-fairs-heading-graphic){
  margin:0 auto 16px;
}
.section-fairs .section-head > p{
  margin:0 auto 6px;
}
@media (max-width:767px){
  .section-featured .featured-copy .cartin-featured-badge{
    margin:0 0 12px;
  }
  .section-featured .featured-copy h2,
  .section-featured .featured-copy h3{
    margin:0 0 14px;
    line-height:1.16;
  }
  .section-fairs .section-head .cartin-fairs-kicker{
    margin:0 auto 12px;
    line-height:1.16;
  }
  .section-fairs .section-head h2.cartin-fairs-heading-graphic,
  .section-fairs .section-head h2:not(.cartin-fairs-heading-graphic){
    margin:0 auto 14px;
  }
  .section-fairs .section-head > p{
    margin:0 auto 4px;
  }
}


/* 2.1.0 — Ritmo visible: la banda del producto tiene relleno transparente
   aproximado de 28% arriba y abajo. No basta con cambiar márgenes: 
   este marco muestra solo la parte central, igual que el rótulo de ferias.
   Ambas imágenes siguen siendo configurables en Personalizar. */
.section-featured .cartin-featured-badge-frame,
.section-featured .cartin-featured-badge-mobile .cartin-featured-badge-frame {
  position: relative;
  display: block;
  flex: 0 1 auto;
  width: min(100%, var(--cartin-featured-badge-size,290px));
  aspect-ratio: 6.1 / 1;
  height: auto;
  overflow: hidden;
}
.section-featured .cartin-featured-badge-frame > img,
.section-featured .cartin-featured-badge-mobile .cartin-featured-badge-frame > img {
  position: absolute;
  display: block;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 100%;
  max-width: none;
  max-height: none;
  min-height: 0;
  height: auto;
  margin: 0;
  object-fit: contain;
}
/* Rótulo visible -> título: separación equivalente a la sección de ferias. */
.section-featured .featured-v2 .featured-copy .cartin-featured-badge {
  margin: 0 0 16px;
}
.section-featured .featured-v2 .featured-copy h2 {
  margin: 0 0 16px;
}
.section-featured .featured-v2 .featured-copy h2 + p {
  margin-top: 0;
}
/* Kicker Kathen -> rótulo de ferias, ligeramente más aireado. */
.section-fairs .section-head .cartin-fairs-kicker {
  margin: 0 auto 18px;
}
.section-fairs .section-head h2.cartin-fairs-heading-graphic,
.section-fairs .section-head h2:not(.cartin-fairs-heading-graphic) {
  margin: 0 auto 16px;
}
.section-fairs .section-head > p {
  margin: 0 auto;
}
@media(max-width:767px) {
  .section-featured .cartin-featured-badge-mobile .cartin-featured-badge-frame {
    width: min(100%, var(--cartin-featured-badge-mobile-size,290px));
  }
  .section-featured.cartin-featured-showcase .featured-v2.cartin-featured-cutout .featured-image .cartin-featured-badge-mobile {
    margin: 0 auto 16px;
  }
  .section-featured .featured-v2 .featured-copy h2 {
    margin: 0 0 14px;
  }
  .section-fairs .section-head .cartin-fairs-kicker {
    margin: 0 auto 16px;
  }
  .section-fairs .section-head h2.cartin-fairs-heading-graphic,
  .section-fairs .section-head h2:not(.cartin-fairs-heading-graphic) {
    margin: 0 auto 14px;
  }
}
