/* OLIVES TORRES — Scope limitado a .torres; instalar en CSS adicional o child theme. */
:root{--torres-olive:#81852a;--torres-yellow:#ffffad;--torres-cream:#fffdf0;--torres-pink:#e8dede}
.torres{margin:0!important;padding:0!important}.torres>.vc_column_container{padding:0!important}.torres .vc_column-inner{padding:0!important}.torres .wpb_wrapper{margin:0!important}.torres .wpb_content_element{margin-bottom:0!important}.torres *{box-sizing:border-box}.torres a{text-decoration:none}.torres h1,.torres h2,.torres h3,.torres h4,.torres p{margin:0}.torres h1,.torres h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.045em;line-height:.88}.torres-btn{display:inline-block;background:var(--torres-yellow);color:#333!important;padding:8px 26px;border-radius:100px;font:600 12px/1.2 Arial,sans-serif;text-align:center;transition:transform .2s}.torres-btn:hover{transform:translateY(-2px)}
.torres-hero{background:var(--torres-pink) url('/wp-content/uploads/torres/hero.png') right center/auto 100% no-repeat;min-height:690px;position:relative;color:var(--torres-olive)}.torres-announcement{background:var(--torres-yellow);display:flex;justify-content:space-between;gap:15px;padding:7px 3%;font:10px Arial,sans-serif;color:var(--torres-olive)}.torres-header{display:flex;align-items:center;justify-content:space-between;padding:12px 4%;min-height:85px}.torres-logo{width:175px;max-height:85px;object-fit:contain}.torres-nav{display:flex;gap:28px}.torres-nav a,.torres-header-right{color:var(--torres-olive);font:14px Arial,sans-serif}.torres-header-right{display:flex;gap:20px}.torres-menu-toggle{display:none}.torres-hero-content{padding:60px 4% 90px;max-width:740px}.torres-hero h1{font-size:clamp(62px,7.6vw,140px);margin:0 0 35px}
.torres-eyebrow{font:12px Arial,sans-serif;margin-bottom:15px!important}.torres-categories-section{padding:45px 5%!important;background:var(--torres-yellow)}.torres-categories{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.torres-category{display:block;color:var(--torres-olive);background:var(--torres-cream);border-radius:4px;overflow:hidden}.torres-category:nth-child(2){background:var(--torres-olive);color:var(--torres-yellow)}.torres-category-visual{height:225px;display:grid;place-items:center}.torres-category-visual img{max-width:42%;height:80%;object-fit:contain}.torres-category:nth-child(2) .torres-category-visual img{filter:brightness(0) saturate(100%) invert(90%) sepia(33%) saturate(478%) hue-rotate(3deg)}.torres-category-copy{padding:16px;border-top:1px solid currentColor;position:relative}.torres-category h3{font:400 clamp(21px,2.3vw,37px)/.95 Georgia,serif;max-width:85%}.torres-category-copy>span{position:absolute;right:16px;top:12px}.torres-category p{font:12px/1.5 Arial,sans-serif;margin-top:14px}
.torres-history{min-height:420px;background:linear-gradient(#18181170,#18181170),url('/wp-content/uploads/torres/history.png') center/cover;color:var(--torres-yellow);text-align:center;display:flex;align-items:center;justify-content:center}.torres-history-inner{padding:75px 15px}.torres-history p{font:17px Georgia,serif}.torres-history h2{font-size:clamp(36px,5.6vw,86px);margin:12px auto 25px}
.torres-products{padding:50px 5%!important;background:#fff}.torres-products-head{display:flex;justify-content:space-between;margin-bottom:22px}.torres-products h2{font-size:32px;color:var(--torres-olive)}.torres-products .products{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.torres-products .products:before,.torres-products .products:after{display:none!important}.torres-products .products li{float:none!important;width:auto!important;margin:0!important}.torres-products .products img{background:var(--torres-cream);border-radius:4px}
.torres-delivery{background:var(--torres-olive);color:var(--torres-yellow);text-align:center}.torres-delivery-inner{padding:75px 15px}.torres-delivery h2{font-size:clamp(40px,6vw,88px);margin-bottom:30px}
.torres-featured{padding:45px 5%!important}.torres-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.torres-feature{height:390px;position:relative;display:block;overflow:hidden;border-radius:7px;background:var(--torres-olive)}.torres-feature>img{width:100%;height:100%;object-fit:cover}.torres-feature-overlay{position:absolute;inset:0;background:linear-gradient(#0005,#0000 70%,#0005);padding:22px;display:flex;flex-direction:column;align-items:flex-start;color:var(--torres-yellow)}.torres-feature h3{font:45px/.9 Georgia,serif}.torres-feature p{font:13px/1.4 Arial,sans-serif;margin-top:14px;max-width:240px}.torres-feature .torres-btn{margin-top:auto;width:100%}
.torres-combos-section{padding:50px 5%!important;background:var(--torres-yellow)}.torres-combos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.torres-combo{color:#222;display:flex;flex-direction:column;gap:7px}.torres-combo-art{height:255px;background:var(--torres-cream);border-radius:5px;display:grid;place-items:center;overflow:hidden}.torres-combo-art img{height:85%;width:85%;object-fit:contain}.torres-combo>span:not(.torres-btn){font:12px Arial,sans-serif}.torres-combo h3{font:40px/.9 Georgia,serif;margin-top:-8px}.torres-combo p{font:13px/1.4 Arial,sans-serif}.torres-combo .torres-btn{background:var(--torres-cream);margin-top:6px}
.torres-instagram{padding:40px 5%!important;background:var(--torres-cream)}.torres-instagram-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.torres-instagram h2{font-size:36px}.torres-instagram-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:15px}.torres-instagram-grid>div{aspect-ratio:1;background:#dedee0;border-radius:5px}
.torres-footer-wrap{background:var(--torres-olive);color:var(--torres-yellow)}.torres-footer{padding:55px 5% 25px;display:grid;grid-template-columns:2fr 1fr 1fr 1.6fr;gap:35px}.torres-footer h3{font:26px Georgia,serif}.torres-footer h4{font:14px Arial,sans-serif;margin-bottom:15px}.torres-footer p,.torres-footer a{font:12px/1.7 Arial,sans-serif;color:var(--torres-yellow);display:block}.torres-newsletter-placeholder{margin-top:18px;padding:14px;border-bottom:1px solid var(--torres-yellow);font:11px Arial,sans-serif}.torres-footer-bottom{grid-column:1/-1;display:flex;align-items:end;justify-content:space-between;margin-top:55px}.torres-footer-bottom img{width:135px;filter:brightness(0) invert(1)}.torres-footer-bottom span{font:11px Arial,sans-serif}
@media(max-width:900px){.torres-announcement span:nth-child(2){display:none}.torres-hero{min-height:590px;background-size:auto 78%;background-position:right bottom}.torres-categories{grid-template-columns:repeat(2,1fr)}.torres-products .products{grid-template-columns:repeat(3,1fr)}.torres-features{grid-template-columns:repeat(2,1fr)}.torres-features .torres-feature:last-child{display:none}.torres-footer{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.torres-announcement{justify-content:center;text-align:center}.torres-announcement span:first-child{display:none}.torres-header{padding:10px 5%;min-height:70px}.torres-logo{width:115px}.torres-menu-toggle{display:block;border:0;background:transparent;color:var(--torres-olive);font-size:26px;cursor:pointer}.torres-nav{display:none;position:absolute;top:115px;left:0;right:0;z-index:10;background:var(--torres-yellow);padding:25px;flex-direction:column}.torres-nav.is-open{display:flex}.torres-header-right{font-size:11px}.torres-hero{min-height:680px;background-size:auto 53%;background-position:center bottom}.torres-hero-content{padding:38px 5%}.torres-hero h1{font-size:clamp(55px,14vw,83px)}.torres-categories-section,.torres-products,.torres-featured,.torres-combos-section,.torres-instagram{padding:30px 4%!important}.torres-categories{gap:8px}.torres-category-visual{height:145px}.torres-category-copy{padding:10px}.torres-category h3{font-size:22px}.torres-category p{font-size:10px}.torres-history{min-height:330px}.torres-history h2{font-size:40px}.torres-products .products{grid-template-columns:repeat(2,1fr)}.torres-delivery-inner{padding:65px 15px}.torres-features{grid-template-columns:1fr}.torres-features .torres-feature:last-child{display:block}.torres-feature{height:350px}.torres-combos{grid-template-columns:1fr}.torres-combo-art{height:280px}.torres-instagram-grid{grid-template-columns:repeat(3,1fr)}.torres-instagram-grid>div:nth-child(n+4){display:none}.torres-footer{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px;padding:40px 5%}.torres-footer>div:first-child{grid-column:1/-1}.torres-footer-bottom{margin-top:20px}}

/* V2: corrige el ancho impuesto por Goya y los cambios observados en el PDF de pruebas. */
body .torres.vc_row,body .torres.vc_row-fluid{width:100vw!important;max-width:none!important;position:relative!important;left:50%!important;right:auto!important;transform:translateX(-50%)!important;margin-left:0!important;margin-right:0!important;display:block!important;clear:both!important}
body .torres>.vc_column_container{float:none!important;width:100%!important;max-width:none!important}
body .torres>.vc_column_container>.vc_column-inner{padding-left:0!important;padding-right:0!important}
body .torres .wpb_wrapper{width:100%!important}
/* Las cuatro categorías deben ocupar una única fila en escritorio. */
body .torres-categories{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important}
body .torres-category{min-width:0}
body .torres-category-visual{height:clamp(165px,15.8vw,270px)}
body .torres-category-visual img{object-fit:contain;max-height:85%}
/* Foto de cabecera sin solapar el titular: fondo a pantalla completa y texto sobre zona izquierda. */
body .torres-hero{background-image:url('/wp-content/uploads/torres/hero.png');background-size:cover;background-position:center center;min-height:min(63vw,780px)}
body .torres-hero-content{position:relative;z-index:1;padding:2.5vw 4.2% 6vw;max-width:58%}
body .torres-hero h1{font-size:clamp(58px,6.3vw,108px);line-height:.88;color:#81852a;letter-spacing:-.045em}
body .torres-header{background:rgba(245,237,237,.84);position:relative;z-index:3}
/* El fondo histórico necesita letras claras; Goya impone h2 oscuro. */
body .torres-history h2,body .torres-history p,body .torres-delivery h2{color:#ffffad!important}
body .torres-history{min-height:clamp(310px,30vw,520px)}
/* WooCommerce real: el shortcode es hermano del bloque de texto, no texto dentro de HTML. */
body .torres-products ul.products{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:15px!important;margin:0!important;padding:0!important}
body .torres-products ul.products li.product{width:100%!important;float:none!important;min-width:0!important;margin:0!important;clear:none!important}
body .torres-products ul.products li.product img{width:100%!important;aspect-ratio:1.2;object-fit:contain;background:#fffdf0}
/* Destacados: carrusel horizontal como Figma, no cuadrícula de 2 columnas. */
body .torres-features{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;gap:16px;padding-bottom:12px;scrollbar-width:thin}
body .torres-feature{flex:0 0 min(44vw,680px);height:clamp(310px,31vw,510px);scroll-snap-align:start}
body .torres-feature-overlay h3{color:#ffffad!important}
body .torres-feature-overlay{background:linear-gradient(180deg,rgba(0,0,0,.38),transparent 68%,rgba(0,0,0,.2))}
body .torres-combo h3{color:#29271c!important}
body .torres-footer h3{color:#ffffad!important}
@media(max-width:900px){body .torres-categories{grid-template-columns:repeat(2,minmax(0,1fr))!important}body .torres-products ul.products{grid-template-columns:repeat(3,minmax(0,1fr))!important}body .torres-hero-content{max-width:70%}body .torres-feature{flex-basis:65vw}}
@media(max-width:600px){body .torres-hero{min-height:660px;background-size:auto 60%;background-position:58% bottom;background-color:#f2eaea}body .torres-hero-content{max-width:100%;padding:30px 5%}body .torres-hero h1{font-size:clamp(48px,12vw,72px)}body .torres-categories{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}body .torres-products ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}body .torres-feature{flex-basis:82vw;height:340px}body .torres-features .torres-feature:last-child{display:block!important}body .torres-header{min-height:70px}}