/* ============================================================
   AGRICULTOR OWARI · sistema de diseño (versión pulida)
   Verde profundo + crema · finca familiar, acabado de producción
   ============================================================ */

:root{
	--owari-paper:#f3eee1;
	--owari-card:#fbf7ec;
	--owari-ink:#2b352c;
	--owari-ink-soft:#5d655a;
	--owari-green:#2f5d3a;
	--owari-green-soft:#cfe0cf;
	--owari-wheat:#caa45a;
	--owari-brand:#16b6d4;
	--owari-radius:14px;
	--owari-font-head:"Fraunces",Georgia,serif;
	--owari-font-body:"Inter",system-ui,-apple-system,sans-serif;
	--owari-maxw:1200px;
	--owari-gap:24px;
	--owari-shadow:0 10px 30px rgba(43,53,44,.08);
	--owari-shadow-sm:0 4px 14px rgba(43,53,44,.07);
	--owari-line:rgba(43,53,44,.12);
}

/* ---------- Base ---------- */
*{box-sizing:border-box;}
body{
	margin:0;
	font-family:var(--owari-font-body);
	color:var(--owari-ink);
	background:var(--owari-paper);
	line-height:1.6;
	font-size:17px;
	-webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4,h5{font-family:var(--owari-font-head);line-height:1.1;color:var(--owari-ink);margin:0 0 .5em;font-weight:600;}
h1{font-size:clamp(2.2rem,5vw,3.6rem);}
h2{font-size:clamp(1.8rem,3.5vw,2.6rem);}
h3{font-size:1.4rem;}
p{margin:0 0 1em;}
a{color:var(--owari-green);text-decoration:none;}
a:hover{color:var(--owari-ink);}
img{max-width:100%;height:auto;display:block;}
ul,ol{margin:0 0 1em;padding-left:1.2em;}

.owari-container{max-width:var(--owari-maxw);margin:0 auto;padding:0 24px;}
html{overflow-x:clip;}
body{max-width:100%;overflow-x:clip;}
.owari-main,.owari-footer{overflow-x:clip;}
.owari-section{padding:64px 0;position:relative;}
/* el hero va a sangre (sin padding); las demás secciones conservan su separación
   vertical (64px) para que el contenido no quede pegado al borde superior.
   Antes 'catalogo' tenía padding-top:0 y quedaba pegado al hero. */
.owari-section--hero{padding-top:0;}
.owari-eyebrow{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--owari-green);font-weight:700;display:block;margin-bottom:.6em;}
.owari-section__head{margin-bottom:36px;}
.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden;}

/* ---------- Botones ---------- */
.owari-btn{
	display:inline-flex;align-items:center;gap:8px;
	font-family:var(--owari-font-body);font-weight:600;font-size:.95rem;
	padding:11px 22px;border-radius:calc(var(--owari-radius) + 4px);
	border:2px solid var(--owari-green);background:var(--owari-green);color:#fff;
	cursor:pointer;transition:.18s;line-height:1;white-space:nowrap;text-decoration:none;
}
.owari-btn:hover{background:var(--owari-ink);border-color:var(--owari-ink);color:#fff;transform:translateY(-1px);}
.owari-btn svg{width:18px;height:18px;}
.owari-btn--outline{background:transparent;color:var(--owari-green);}
.owari-btn--outline:hover{background:var(--owari-green);color:#fff;}
.owari-btn--ghost{background:transparent;border-color:rgba(255,255,255,.6);color:#fff;}
.owari-btn--wheat{background:var(--owari-wheat);border-color:var(--owari-wheat);color:#2b250f;}
.owari-btn--wheat:hover{background:#b8923f;border-color:#b8923f;color:#2b250f;}
.owari-btn--sm{padding:7px 14px;font-size:.85rem;}
.owari-btn.is-disabled{opacity:.6;pointer-events:none;}

/* ---------- Precio ---------- */
.owari-price{font-family:var(--owari-font-head);font-weight:600;color:var(--owari-green);font-size:1.5rem;display:inline-flex;align-items:baseline;gap:.3em;}
.owari-price__unit{font-family:var(--owari-font-body);font-size:.8rem;color:var(--owari-ink-soft);font-weight:500;}
.owari-price--tag .owari-price__amount{background:var(--owari-wheat);color:#2b250f;padding:3px 12px;border-radius:8px;display:inline-block;}
.owari-price__old{text-decoration:line-through;color:var(--owari-ink-soft);font-size:.85rem;margin-left:.4em;}

/* ---------- Chips / badges ---------- */
.owari-chip{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;font-weight:600;padding:4px 12px;border-radius:40px;border:1.5px solid var(--owari-line);color:var(--owari-ink-soft);background:transparent;}
.owari-chip.is-active,.owari-chip:hover{background:var(--owari-green);color:#fff;border-color:var(--owari-green);}
.owari-seal{width:60px;height:60px;border-radius:50%;border:2px solid var(--owari-green);display:flex;align-items:center;justify-content:center;color:var(--owari-green);font-size:.7rem;font-weight:700;text-align:center;background:var(--owari-card);flex:none;}

/* ============================================================
   HEADER
   ============================================================ */
.owari-header{background:var(--owari-paper);border-bottom:1px solid var(--owari-line);position:relative;z-index:50;}
.owari-header.is-sticky{position:sticky;top:0;transition:box-shadow .2s,background .2s;}
.owari-header.is-sticky.is-scrolled{box-shadow:var(--owari-shadow-sm);background:var(--owari-card);}
.owari-header__inner{display:flex;align-items:center;gap:24px;padding:16px 0;}
.owari-header__nav{display:flex;align-items:center;gap:26px;margin-left:auto;}
.owari-header__nav ul{display:flex;gap:26px;list-style:none;margin:0;padding:0;}
.owari-header__nav a{font-weight:600;color:var(--owari-ink);font-size:.98rem;}
.owari-header__nav .current-menu-item>a,.owari-header__nav a:hover{color:var(--owari-green);}
.owari-header__tools{display:flex;align-items:center;gap:16px;flex-shrink:0;}
.owari-header__editorial-tools{display:flex;align-items:center;gap:14px;flex-shrink:0;}
.owari-icon-btn{background:none;border:none;cursor:pointer;color:var(--owari-ink);display:flex;padding:4px;flex:none;}
.owari-icon-btn svg{width:22px;height:22px;}
/* el logo puede encoger para que los iconos NUNCA se corten en móvil */
.owari-brand{min-width:0;}
.owari-brand__logo{max-width:100%;height:auto;}
@media(max-width:600px){
	.owari-brand__logo{max-height:40px;}
	.owari-header__inner{gap:10px;}
	.owari-header__tools,.owari-header__editorial-tools{gap:7px;}
	.owari-icon-btn{padding:2px;}
}
.owari-cart-count{background:var(--owari-green);color:#fff;border-radius:40px;font-size:.7rem;padding:1px 7px;margin-left:4px;}

/* marca */
.owari-brand{display:flex;align-items:center;gap:10px;color:var(--owari-ink);}
.owari-brand__mark{width:36px;height:36px;color:var(--owari-brand);flex:none;}
.owari-brand__mark svg{width:100%;height:100%;}
.owari-brand__name{font-family:var(--owari-font-head);font-weight:700;font-size:1.4rem;line-height:1;display:block;}
.owari-brand__tag{display:block;font-size:.6rem;letter-spacing:.22em;text-transform:uppercase;color:var(--owari-ink-soft);margin-top:2px;}
.owari-brand.is-lg .owari-brand__name{font-size:2rem;}
.owari-brand__logo{max-height:64px;width:auto;}

/* idioma */
.owari-lang{display:inline-flex;gap:6px;align-items:center;font-size:.8rem;color:var(--owari-ink-soft);font-weight:600;}
.owari-lang__item.is-active{color:var(--owari-green);}
.owari-lang__sep{opacity:.4;}

/* buscador */
.owari-header__search{display:none;}
.owari-header__search.is-open{display:block;position:absolute;top:100%;right:0;left:0;background:var(--owari-card);padding:16px 0;box-shadow:var(--owari-shadow-sm);}
.owari-header--tienda .owari-header__search{display:block;position:static;background:none;box-shadow:none;padding:0;flex:1;max-width:480px;}

/* nav toggle (móvil) */
.owari-nav-toggle{display:none;}
.owari-header{position:relative;}
/* Menú adaptable (escritorio): los ítems NO se parten; si no caben, el JS añade
   .owari-nav-collapsed y el menú pasa a desplegable con el icono ☰. */
@media(min-width:769px){
	.owari-header__nav:not(.owari-header__nav--vertical),
	.owari-header__subnav{flex-shrink:0;}
	.owari-header__nav:not(.owari-header__nav--vertical) ul,
	.owari-header__subnav ul{flex-wrap:nowrap;}
	.owari-header__nav:not(.owari-header__nav--vertical) li,
	.owari-header__subnav li{flex:0 0 auto;}
	.owari-header__nav:not(.owari-header__nav--vertical) a,
	.owari-header__subnav a{white-space:nowrap;}
	/* menú colapsado: pasa a desplegable bajo el header (cubre nav y subnav) */
	.owari-header.owari-nav-collapsed .owari-header__nav,
	.owari-header.owari-nav-collapsed .owari-header__subnav{
		position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:flex-start;
		background:var(--owari-card);padding:18px 28px;box-shadow:var(--owari-shadow);
		display:none;z-index:60;margin:0;border-top:1px solid var(--owari-line);
	}
	.owari-header.owari-nav-collapsed .owari-header__nav ul,
	.owari-header.owari-nav-collapsed .owari-header__subnav ul{flex-direction:column;gap:14px;width:100%;}
	body.owari-nav-open .owari-header.owari-nav-collapsed .owari-header__nav,
	body.owari-nav-open .owari-header.owari-nav-collapsed .owari-header__subnav{display:flex;}
	.owari-header.owari-nav-collapsed .owari-nav-toggle{display:flex;}
	/* al colapsar, el menú sale del flujo → empujar los iconos a la DERECHA */
	.owari-header.owari-nav-collapsed .owari-header__inner,
	.owari-header.owari-nav-collapsed .owari-header__editorial{justify-content:space-between;}
	.owari-header.owari-nav-collapsed .owari-header__tools,
	.owari-header.owari-nav-collapsed .owari-header__editorial-tools{margin-left:auto;}
	/* MINIMAL: siempre va con ☰ (oculta el menú por diseño) → iconos a la derecha */
	.owari-header--minimal .owari-header__tools{margin-left:auto;}
}

/* ============================================================
   SUBMENÚS / DROPDOWNS del menú principal (faltaban por completo).
   Sin esto, los <ul.sub-menu> se renderizaban en línea y deformaban el menú.
   ============================================================ */
.owari-header__nav:not(.owari-header__nav--vertical) .menu-item-has-children,
.owari-header__subnav .menu-item-has-children{position:relative;}
.owari-header__nav:not(.owari-header__nav--vertical) .menu-item-has-children > a::after,
.owari-header__subnav .menu-item-has-children > a::after{content:"▾";font-size:.72em;margin-left:5px;opacity:.65;}
/* el dropdown: oculto, vertical, flotante */
.owari-header__nav:not(.owari-header__nav--vertical) .sub-menu,
.owari-header__subnav .sub-menu{
	position:absolute;top:100%;left:0;min-width:210px;list-style:none;margin:0;
	display:flex;flex-direction:column;gap:2px;padding:8px;
	background:var(--owari-card);border:1px solid var(--owari-line);border-radius:12px;
	box-shadow:var(--owari-shadow);opacity:0;visibility:hidden;transform:translateY(6px);
	transition:opacity .16s,transform .16s,visibility .16s;z-index:70;
}
.owari-header__nav:not(.owari-header__nav--vertical) li:hover > .sub-menu,
.owari-header__nav:not(.owari-header__nav--vertical) li:focus-within > .sub-menu,
.owari-header__subnav li:hover > .sub-menu,
.owari-header__subnav li:focus-within > .sub-menu{opacity:1;visibility:visible;transform:translateY(0);}
.owari-header__nav .sub-menu li,
.owari-header__subnav .sub-menu li{width:100%;flex:none;}
.owari-header__nav .sub-menu a,
.owari-header__subnav .sub-menu a{display:block;padding:8px 12px;border-radius:8px;white-space:nowrap;font-weight:500;color:var(--owari-ink);}
.owari-header__nav .sub-menu a:hover,
.owari-header__subnav .sub-menu a:hover{background:var(--owari-green-soft);color:var(--owari-green);}
/* sub-sub-menú (nivel 3) hacia el lado */
.owari-header__nav .sub-menu .sub-menu,
.owari-header__subnav .sub-menu .sub-menu{top:0;left:100%;}
/* ACORDEÓN: en modo desplegable (☰/minimal/sidebar/móvil) los submenús quedan
   COLAPSADOS y se abren al tocar el padre (clase .is-open vía JS). */
.owari-header.owari-nav-collapsed .menu-item-has-children > .sub-menu,
.owari-header--minimal .menu-item-has-children > .sub-menu,
.owari-header--sidebar .menu-item-has-children > .sub-menu{
	position:static;opacity:1;visibility:visible;transform:none;
	box-shadow:none;border:0;background:transparent;padding:2px 0 2px 16px;min-width:0;
	display:none;
}
.owari-header.owari-nav-collapsed .menu-item-has-children.is-open > .sub-menu,
.owari-header--minimal .menu-item-has-children.is-open > .sub-menu,
.owari-header--sidebar .menu-item-has-children.is-open > .sub-menu{display:flex;}
/* el ▾ gira cuando está abierto */
.owari-header .menu-item-has-children.is-open > a::after{transform:rotate(180deg);display:inline-block;}
@media(max-width:768px){
	.owari-header__nav .menu-item-has-children > .sub-menu,
	.owari-header__subnav .menu-item-has-children > .sub-menu{
		position:static;opacity:1;visibility:visible;transform:none;
		box-shadow:none;border:0;background:transparent;padding:2px 0 2px 16px;min-width:0;display:none;
	}
	.owari-header__nav .menu-item-has-children.is-open > .sub-menu,
	.owari-header__subnav .menu-item-has-children.is-open > .sub-menu{display:flex;}
}

/* ---- variante TIENDA (verde) ---- */
.owari-header--tienda{background:var(--owari-green);}
/* tienda al hacer scroll: mantener verde (más específico que .is-sticky.is-scrolled) */
.owari-header--tienda.is-sticky.is-scrolled{background:var(--owari-green);}
/* minimal al hacer scroll: pasa a fondo claro → texto/iconos oscuros para que se vean */
.owari-header--minimal.is-sticky.is-scrolled{background:var(--owari-card);}
.owari-header--minimal.is-sticky.is-scrolled .owari-brand,
.owari-header--minimal.is-sticky.is-scrolled .owari-brand__name,
.owari-header--minimal.is-sticky.is-scrolled .owari-brand__mark,
.owari-header--minimal.is-sticky.is-scrolled .owari-header__nav a,
.owari-header--minimal.is-sticky.is-scrolled .owari-lang,
.owari-header--minimal.is-sticky.is-scrolled .owari-icon-btn{color:var(--owari-ink);}
.owari-header--tienda .owari-brand,.owari-header--tienda .owari-brand__name,.owari-header--tienda .owari-brand__mark,.owari-header--tienda .owari-header__account,.owari-header--tienda .owari-lang,.owari-header--tienda .owari-lang__item.is-active{color:#fff;}
.owari-header--tienda .owari-brand__tag{color:rgba(255,255,255,.6);}
.owari-header--tienda .owari-header__search{display:block;position:static;background:none;box-shadow:none;padding:0;flex:1;max-width:520px;}
.owari-header--tienda .owari-header__search input{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.3);color:#fff;}
.owari-header--tienda .owari-header__search input::placeholder{color:rgba(255,255,255,.7);}
.owari-header--tienda .owari-header__account{font-weight:600;}
/* SOLO la fila horizontal del menú (hijo directo), NO los submenús desplegables anidados */
.owari-header--tienda .owari-header__subnav > ul{display:flex;gap:24px;list-style:none;margin:0;padding:6px 0 4px;}
.owari-header--tienda .owari-header__subnav a{color:rgba(255,255,255,.92);font-weight:600;font-size:.95rem;}
.owari-header--tienda .owari-header__subnav a:hover{color:#fff;}
/* el submenú FLOTANTE de tienda tiene fondo claro → texto oscuro (los enlaces del
   subnav son blancos para la barra verde, pero dentro del dropdown NO deben heredarlo) */
.owari-header--tienda .owari-header__subnav .sub-menu a{color:var(--owari-ink);}
.owari-header--tienda .owari-header__subnav .sub-menu a:hover{color:var(--owari-green);}

/* ---- variante EDITORIAL ---- */
.owari-header__topbar{background:var(--owari-card);border-bottom:1px solid var(--owari-line);}
.owari-header__topbar-inner{display:flex;justify-content:space-between;align-items:center;padding:8px 0;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--owari-ink-soft);}
.owari-header__editorial{display:flex;flex-direction:column;align-items:center;gap:8px;padding:20px 0;text-align:center;}
.owari-header__editorial .owari-header__nav{margin:0;}
.owari-header__editorial .owari-header__nav ul{justify-content:center;}

/* ---- variante MINIMAL (sobre hero) ---- */
.owari-header--minimal{background:transparent;border:none;position:absolute;left:0;right:0;z-index:50;}
.owari-header--minimal .owari-brand,.owari-header--minimal .owari-brand__name,.owari-header--minimal .owari-brand__mark,.owari-header--minimal .owari-header__nav a,.owari-header--minimal .owari-lang,.owari-header--minimal .owari-lang__item.is-active{color:#fff;}
.owari-header--minimal .owari-icon-btn{color:#fff;}
@media(min-width:769px){
	.owari-header--minimal .owari-header__nav{display:none;
		position:absolute;top:100%;left:0;right:0;background:var(--owari-card);
		flex-direction:column;align-items:flex-start;padding:18px 28px;margin:0;
		box-shadow:var(--owari-shadow);border-top:1px solid var(--owari-line);
		max-height:80vh;overflow-y:auto;z-index:60;}
	.owari-header--minimal .owari-nav-toggle{display:flex;}
	/* el JS pone owari-nav-open en el BODY → así abre de verdad */
	body.owari-nav-open .owari-header--minimal .owari-header__nav,
	.owari-header--minimal .owari-header__nav.is-open{display:flex;}
	.owari-header--minimal .owari-header__nav ul{flex-direction:column;gap:14px;width:100%;}
	.owari-header--minimal .owari-header__nav a{color:var(--owari-ink) !important;}
	/* ☰ colapsado: panel claro → texto oscuro + scroll */
	.owari-header.owari-nav-collapsed .owari-header__nav,
	.owari-header.owari-nav-collapsed .owari-header__subnav{max-height:82vh;overflow-y:auto;}
	.owari-header.owari-nav-collapsed .owari-header__nav a,
	.owari-header.owari-nav-collapsed .owari-header__subnav a{color:var(--owari-ink) !important;}
}
/* Móvil: todos los desplegables con texto oscuro (fondo claro) + SCROLL */
@media(max-width:768px){
	.owari-header__nav,.owari-header__subnav{max-height:calc(100vh - 64px);overflow-y:auto;}
	.owari-header__nav a,.owari-header__subnav a{color:var(--owari-ink) !important;}
	.owari-header__nav .menu-item-has-children > a::after,
	.owari-header__subnav .menu-item-has-children > a::after{color:var(--owari-ink-soft);}
}
/* Sidebar en móvil: el desplegable es claro → texto oscuro + scroll */
@media(max-width:960px){
	.owari-header--sidebar .owari-header__nav--vertical{max-height:calc(100vh - 70px);overflow-y:auto;}
	.owari-header--sidebar .owari-header__nav--vertical a{color:var(--owari-ink) !important;}
	.owari-header--sidebar .owari-header__nav--vertical .current-menu-item > a{background:var(--owari-green-soft) !important;color:var(--owari-green) !important;}
	.owari-header--sidebar .owari-header__nav--vertical a:hover{color:var(--owari-green) !important;}
}

/* ---- variante SIDEBAR (vertical) ---- */
.owari-nav-toggle--sidebar{display:none;}
.owari-header--sidebar{background:var(--owari-green);}
.owari-header--sidebar .owari-brand,.owari-header--sidebar .owari-brand__name{color:#fff;}
.owari-header--sidebar .owari-brand__mark{color:var(--owari-brand);}
.owari-header--sidebar .owari-header__nav--vertical a{color:rgba(255,255,255,.85);}
.owari-header--sidebar .owari-header__nav--vertical .current-menu-item>a,.owari-header--sidebar .owari-header__nav--vertical a:hover{color:#fff;}
.owari-header--sidebar .owari-lang{color:rgba(255,255,255,.7);}
.owari-header__wa-status{display:flex;align-items:center;gap:8px;font-size:.82rem;color:rgba(255,255,255,.8);}
.owari-header__wa-status .owari-dot{background:#7ed957;}
.owari-account--labeled{display:flex;align-items:center;justify-content:center;gap:8px;padding:9px 16px;border:1px solid rgba(255,255,255,.28);border-radius:40px 10px 40px 10px;color:rgba(255,255,255,.9);font-weight:600;font-size:.92rem;transition:background .2s,border-color .2s,color .2s;}
.owari-account--labeled:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.55);color:#fff;}
.owari-account--labeled svg{width:18px;height:18px;flex:0 0 auto;}
@media(min-width:961px){
	body.owari-header-sidebar{padding-left:264px;}
	.owari-header--sidebar{position:fixed;top:0;left:0;bottom:0;width:264px;z-index:60;border-bottom:none;}
	.owari-header__sidebar-inner{display:flex;flex-direction:column;height:100%;padding:30px 26px;gap:22px;}
	.owari-header__sidebar-inner > .owari-brand{flex:0 0 auto;}
	/* el menú queda arriba con su altura natural; SOLO scroll vertical si sobran ítems */
	.owari-header--sidebar .owari-header__nav--vertical{flex:0 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.35) transparent;}
	.owari-header--sidebar .owari-header__nav--vertical::-webkit-scrollbar{width:6px;}
	.owari-header--sidebar .owari-header__nav--vertical::-webkit-scrollbar-thumb{background:rgba(255,255,255,.28);border-radius:3px;}
	.owari-header--sidebar .owari-header__nav--vertical::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.45);}
	.owari-header__nav--vertical ul{flex-direction:column;gap:4px;align-items:stretch;}
	/* texto largo: baja de línea en vez de cortarse o crear scroll horizontal */
	.owari-header__nav--vertical a{display:block;padding:9px 14px;font-size:1.02rem;border-radius:40px 10px 40px 10px;white-space:normal;overflow-wrap:break-word;line-height:1.3;}
	.owari-header__nav--vertical .current-menu-item>a{background:rgba(255,255,255,.14);}
	.owari-header__sidebar-foot{flex:0 0 auto;margin-top:auto;display:flex;flex-direction:column;gap:14px;align-items:stretch;}
	.owari-header--sidebar .owari-btn--sm,.owari-header--sidebar .owari-cart{justify-content:center;}
}
@media(max-width:960px){
	.owari-header--sidebar .owari-header__sidebar-inner{display:flex;align-items:center;gap:16px;padding:14px 24px;}
	.owari-header--sidebar .owari-header__nav--vertical{position:fixed;inset:60px 0 auto 0;background:var(--owari-card);padding:20px 24px;box-shadow:var(--owari-shadow);transform:translateY(-150%);transition:transform .25s;}
	body.owari-nav-open .owari-header--sidebar .owari-header__nav--vertical{transform:translateY(0);}
	.owari-header--sidebar .owari-header__nav--vertical ul{flex-direction:column;gap:12px;}
	.owari-header--sidebar .owari-header__sidebar-foot{margin-left:auto;flex-direction:row;}
	.owari-nav-toggle--sidebar{display:flex;position:absolute;right:24px;top:14px;}
}

/* ============================================================
   FORM (search + contacto)
   ============================================================ */
.owari-field,input[type=text],input[type=email],input[type=search],input[type=tel],input[type=password],input[type=number],input[type=url],textarea,select{
	width:100%;font-family:inherit;font-size:1rem;color:var(--owari-ink);
	background:var(--owari-card);border:1.5px solid var(--owari-line);border-radius:12px;
	padding:11px 14px;
	-webkit-appearance:none;-moz-appearance:none;appearance:none;
}
/* quita la lupa/cancelar nativa del input[type=search] que cuadraba las esquinas */
input[type=search]::-webkit-search-decoration,
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-results-button{-webkit-appearance:none;}
textarea{min-height:120px;resize:vertical;}
input:focus,textarea:focus,select:focus{outline:none;border-color:var(--owari-green);}
.owari-search{display:flex;gap:8px;}
.owari-search .owari-field{flex:1;}
/* CUALQUIER buscador (formulario del tema, bloque o widget de WordPress) redondeado.
   Con !important para ganar al CSS por defecto de los bloques de WP. */
form[role="search"] input[type="search"],
.wp-block-search input[type="search"],
.wp-block-search__input,
.widget_search input[type="search"],
.owari-widget-search input[type="search"],
.search-field{
	box-sizing:border-box;font:inherit;color:var(--owari-ink);
	background:var(--owari-card) !important;
	border:1.5px solid var(--owari-line) !important;
	border-radius:12px !important;
	padding:11px 14px !important;
	-webkit-appearance:none !important;-moz-appearance:none !important;appearance:none !important;
}
form[role="search"] button[type="submit"],
.wp-block-search__button,
.search-submit{
	border:0 !important;border-radius:12px !important;
	background:var(--owari-green) !important;color:#fff !important;
	padding:11px 16px !important;cursor:pointer;
	-webkit-appearance:none !important;appearance:none !important;
}
/* búsqueda con el botón DENTRO del campo (wp-block-search__button-inside) */
.wp-block-search__inside-wrapper{border-radius:12px !important;overflow:hidden;border:1.5px solid var(--owari-line) !important;}
.wp-block-search.wp-block-search__button-inside .wp-block-search__input{border:0 !important;border-radius:0 !important;}
.wp-block-search.wp-block-search__button-inside .wp-block-search__input{border:0;border-radius:0;}

/* ============================================================
   ELEMENTOS COMUNES
   ============================================================ */
.owari-photo{background-size:cover;background-position:center;background-color:var(--owari-green-soft);border-radius:var(--owari-radius);}
.owari-photo--empty{background:
	repeating-linear-gradient(135deg,rgba(47,93,58,.07) 0 2px,transparent 2px 12px),var(--owari-card);
	border:1.5px dashed var(--owari-ink-soft);}
.owari-center{text-align:center;}
.owari-eyebrow--light{color:rgba(255,255,255,.72);}
.owari-link-arrow{display:inline-flex;align-items:center;gap:6px;color:var(--owari-green);font-weight:600;}
.owari-link-arrow svg{width:16px;height:16px;}

/* ============================================================
   HERO
   ============================================================ */
.owari-section--hero{padding:0;}
.owari-hero__title{font-size:clamp(2.3rem,5vw,3.7rem);margin:.05em 0 .35em;}
.owari-hero__lead{font-size:1.1rem;color:var(--owari-ink-soft);max-width:48ch;}
.owari-hero__actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px;}

/* overlay: foto + panel crema tras el título */
.owari-hero--overlay{min-height:540px;display:flex;align-items:center;}
.owari-hero__overlay-inner{padding:60px 0;max-width:640px;}
.owari-hero__title--panel{display:inline;background:rgba(251,247,236,.88);box-shadow:16px 0 0 rgba(251,247,236,.88),-10px 0 0 rgba(251,247,236,.88);box-decoration-break:clone;-webkit-box-decoration-break:clone;padding:2px 0;line-height:1.35;}
.owari-hero--overlay .owari-hero__lead{background:rgba(251,247,236,.7);display:inline-block;padding:6px 10px;border-radius:8px;}
/* al saltar a un ancla (#contacto…), deja espacio para la cabecera fija + scroll suave */
html{scroll-behavior:smooth;}
.owari-section,[id]{scroll-margin-top:88px;}
/* eyebrow legible sobre la foto del hero (fondo crema) */
.owari-hero--overlay .owari-eyebrow,
.owari-hero--full .owari-eyebrow{background:rgba(251,247,236,.92);color:var(--owari-green);padding:4px 12px;border-radius:6px;display:table;margin:0 0 16px;box-shadow:0 4px 14px rgba(20,14,8,.18);}
/* Sobre la imagen del hero, el botón de borde no se ve (texto verde sobre foto):
   le damos fondo crema sólido para que resalte, igual que el título. */
.owari-hero--overlay .owari-btn--outline,
.owari-hero--full .owari-btn--outline{
	background:rgba(251,247,236,.95);
	border-color:rgba(251,247,236,.95);
	color:var(--owari-ink);
	box-shadow:0 6px 18px rgba(20,14,8,.25);
}
.owari-hero--overlay .owari-btn--outline:hover,
.owari-hero--full .owari-btn--outline:hover{
	background:var(--owari-green);
	border-color:var(--owari-green);
	color:#fff;
}
/* refuerza el botón sólido sobre la foto (sombra para separarlo del fondo) */
.owari-hero--overlay .owari-btn,
.owari-hero--full .owari-btn{box-shadow:0 6px 18px rgba(20,14,8,.28);}

/* split: contenido izq + foto a sangre der + tarjeta flotante */
.owari-hero--split{display:grid;grid-template-columns:1fr 1fr;min-height:520px;}
.owari-hero__split-text{display:flex;align-items:center;padding:60px 0 60px 24px;}
.owari-hero__split-inner{max-width:560px;margin-left:auto;padding-right:48px;}
.owari-hero__split-media{position:relative;border-radius:0;}
.owari-hero__floatcard{position:absolute;left:-70px;bottom:48px;background:var(--owari-card);border:1px solid var(--owari-line);border-radius:var(--owari-radius);box-shadow:var(--owari-shadow);padding:14px;width:220px;display:flex;flex-direction:column;gap:8px;color:var(--owari-ink);}
.owari-hero__floatcard-img{height:118px;border-radius:8px;background-size:cover;background-position:center;}
.owari-hero__floatcard strong{font-family:var(--owari-font-head);font-size:1.05rem;}
.owari-hero__floatcard small{color:var(--owari-ink-soft);font-size:.72rem;}

/* relato: narrativa centrada */
.owari-hero--relato{padding:90px 0;text-align:center;}
.owari-hero__relato-inner{max-width:840px;margin:0 auto;}
.owari-hero__quote{font-family:var(--owari-font-head);font-size:clamp(2rem,4.6vw,3.4rem);line-height:1.15;margin:.2em 0;}
.owari-hero__scroll{display:block;margin-top:30px;letter-spacing:.14em;text-transform:uppercase;font-size:.72rem;color:var(--owari-ink-soft);}

/* full: foto a pantalla + wordmark centrado */
.owari-hero--full{min-height:82vh;display:flex;align-items:center;justify-content:center;position:relative;}
.owari-hero--full::after{content:"";position:absolute;inset:0;background:rgba(43,53,44,.35);}
.owari-hero__full-inner{position:relative;z-index:2;text-align:center;}
.owari-hero__wordmark{font-family:var(--owari-font-head);font-size:clamp(2.8rem,7vw,5rem);color:#fff;margin:0;}
.owari-hero__tagline{display:block;letter-spacing:.14em;text-transform:uppercase;font-size:.8rem;color:rgba(255,255,255,.9);margin:10px 0 26px;}

/* panel: tarjeta crema izq + foto der */
.owari-hero--panel{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;min-height:460px;}
.owari-hero__panel-card{align-self:center;background:var(--owari-card);border:1px solid var(--owari-line);border-radius:var(--owari-radius);box-shadow:var(--owari-shadow);padding:42px;margin:40px 0 40px 24px;max-width:560px;}
.owari-hero__panel-media{margin:24px 24px 24px 0;min-height:420px;}

@media(max-width:768px){
	.owari-hero--split,.owari-hero--panel{grid-template-columns:1fr;}
	.owari-hero__split-text{padding:48px 24px;}
	.owari-hero__split-media{min-height:320px;}
	.owari-hero__floatcard{left:auto;right:24px;bottom:24px;}
	.owari-hero__panel-card,.owari-hero__panel-media{margin:0;}
	.owari-hero__panel-media{min-height:260px;border-radius:0;}
}

/* ============================================================
   FINCA / CIFRAS
   ============================================================ */
.owari-finca__grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;}
.owari-finca__media{aspect-ratio:4/3;}
.owari-finca__lead{color:var(--owari-ink-soft);font-size:1.05rem;margin:0 0 20px;}
.owari-stats{display:flex;gap:36px;margin-top:20px;flex-wrap:wrap;}
.owari-stat__num{font-family:var(--owari-font-head);font-size:2.4rem;color:var(--owari-green);line-height:1;}
.owari-stat__label{font-size:.85rem;color:var(--owari-ink-soft);}
/* offset: texto izq + dos fotos der */
.owari-finca--offset{display:grid;grid-template-columns:.85fr 1.15fr;gap:48px;align-items:start;}
.owari-finca__offset-text h2{font-size:clamp(1.8rem,3vw,2.6rem);margin-top:.3em;}
.owari-finca__offset-lead{color:var(--owari-ink-soft);margin:0 0 18px;}
.owari-finca__offset-imgs{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.owari-finca__offset-img{aspect-ratio:4/3;}
/* tarjetas: fila de cifras */
.owari-stat-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.owari-stat-card{background:var(--owari-card);border:1px solid var(--owari-line);border-radius:var(--owari-radius);padding:24px;box-shadow:var(--owari-shadow-sm);}
.owari-stat-card .owari-stat__num{font-size:2.2rem;}
@media(max-width:768px){.owari-finca__grid,.owari-finca--offset{grid-template-columns:1fr;}.owari-stat-cards{grid-template-columns:1fr 1fr;}}

/* ============================================================
   HISTORIA
   ============================================================ */
.owari-section--historia.is-banda,.owari-section--historia.is-split,.owari-section--historia.is-cita{padding:0;}
/* banda: verde claro, texto + foto */
.owari-historia--banda{background:var(--owari-green-soft);padding:64px 0;}
.owari-historia__banda-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;}
.owari-historia__banda-media{aspect-ratio:4/3;}
/* cita: banda verde */
.owari-historia--cita{background:var(--owari-green);padding:60px 0;text-align:center;}
.owari-historia__quote{font-family:var(--owari-font-head);font-size:clamp(1.7rem,3vw,2.5rem);max-width:900px;margin:0 auto;color:#fff;}
/* split: foto izq + panel verde der */
.owari-historia--split{display:grid;grid-template-columns:1fr 1fr;min-height:440px;}
.owari-historia__split-media{min-height:440px;border-radius:0;}
.owari-historia__split-panel{background:var(--owari-green);color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:14px;padding:56px;}
.owari-historia__split-panel h2{color:#fff;margin:0;}
/* timeline: línea central alternada */
.owari-timeline{position:relative;max-width:980px;margin:0 auto;}
.owari-timeline::before{content:"";position:absolute;left:50%;top:0;bottom:0;width:2px;background:var(--owari-line);transform:translateX(-50%);}
.owari-tl-item{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;margin-bottom:36px;position:relative;}
.owari-tl-item::before{content:"";position:absolute;left:50%;top:50%;width:14px;height:14px;border-radius:50%;background:var(--owari-green);transform:translate(-50%,-50%);border:3px solid var(--owari-paper);}
.owari-tl-photo{aspect-ratio:16/10;}
.owari-tl-year{font-family:var(--owari-font-head);font-size:1.6rem;color:var(--owari-green);}
.owari-tl-item.is-left .owari-tl-photo{order:2;}
.owari-tl-item.is-left .owari-tl-content{order:1;text-align:right;}
@media(max-width:768px){
	.owari-historia__banda-grid,.owari-historia--split{grid-template-columns:1fr;}
	.owari-historia__split-media{min-height:240px;}
	.owari-timeline::before{left:8px;}
	.owari-tl-item{grid-template-columns:1fr;gap:12px;padding-left:34px;}
	.owari-tl-item::before{left:8px;}
	.owari-tl-item.is-left .owari-tl-photo,.owari-tl-item.is-left .owari-tl-content{order:0;text-align:left;}
}

/* ============================================================
   CATÁLOGO + TARJETAS DE PRODUCTO
   ============================================================ */
.owari-products{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--owari-gap);}
.owari-products--4{grid-template-columns:repeat(4,1fr);}

.owari-pcard{background:var(--owari-card);border:1px solid var(--owari-line);border-radius:var(--owari-radius);overflow:hidden;box-shadow:var(--owari-shadow-sm);display:flex;flex-direction:column;transition:transform .18s,box-shadow .18s;}
.owari-pcard:hover{transform:translateY(-4px);box-shadow:var(--owari-shadow);}
.owari-pcard__media{aspect-ratio:4/3;background:#fff;background-size:cover;background-position:center;display:block;border-bottom:1px solid var(--owari-line);}
.owari-pcard__media--empty{display:flex;align-items:center;justify-content:center;background:
	repeating-linear-gradient(135deg,rgba(47,93,58,.05) 0 2px,transparent 2px 12px),var(--owari-card);}
.owari-ph-mark{width:46px;height:46px;color:var(--owari-green);opacity:.28;}
.owari-ph-mark svg{width:100%;height:100%;}
.owari-pcard__body{padding:16px 16px 18px;display:flex;flex-direction:column;gap:6px;flex:1;}
.owari-pcard__title{font-size:1.18rem;margin:0;line-height:1.15;}
.owari-pcard__title a{color:var(--owari-ink);}
.owari-pcard__title a:hover{color:var(--owari-green);}
.owari-pcard__unit{font-size:.78rem;color:var(--owari-ink-soft);}
.owari-pcard__foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:12px;}
.owari-pcard__price{display:inline-flex;align-items:center;gap:6px;}
.owari-pcard__action{display:inline-flex;}

/* Píldora de precio (el tag dorado del diseño) */
.owari-pricepill{display:inline-flex;align-items:center;background:var(--owari-wheat);color:#3a2e10;
	font-family:var(--owari-font-head);font-weight:600;font-size:1.05rem;line-height:1;
	padding:7px 14px;border-radius:40px 10px 40px 10px;white-space:nowrap;}
.owari-pricepill__old{color:var(--owari-ink-soft);text-decoration:line-through;font-size:.8rem;font-family:var(--owari-font-body);}

/* vitrina: solo precio, sin botón */
.owari-pcard--showcase .owari-pcard__foot{justify-content:flex-start;}
/* horizontal: imagen cuadrada a la izquierda */
.owari-pcard--horizontal{flex-direction:row;align-items:stretch;}
.owari-pcard--horizontal .owari-pcard__media{width:128px;aspect-ratio:1;flex:none;border-bottom:none;border-right:1px solid var(--owari-line);}
.owari-pcard--horizontal .owari-pcard__body{padding:14px 16px;}
.owari-pcard--horizontal .owari-pcard__foot{flex-direction:column;align-items:flex-start;gap:8px;}
/* compacta: grid denso, botón "+" */
.owari-pcard--compact .owari-pcard__body{padding:12px;gap:4px;}
.owari-pcard--compact .owari-pcard__title{font-size:1rem;}
.owari-pcard--compact .owari-pricepill{font-size:.95rem;padding:6px 12px;}
.owari-pcard--compact .owari-pcard__action .owari-btn{min-width:38px;padding:8px 10px;justify-content:center;}

/* tienda (con filtros) */
.owari-shop{display:grid;grid-template-columns:220px 1fr;gap:36px;}
.owari-shop__filters{font-size:.92rem;}
.owari-shop__filters h4{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--owari-ink-soft);margin:18px 0 8px;}
.owari-shop__filters label{display:flex;gap:8px;align-items:center;margin-bottom:6px;color:var(--owari-ink-soft);}

/* cabecera del catálogo */
.owari-cat-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;}
.owari-cat-head h2{margin:0;}
.owari-cat-head .owari-btn svg{width:16px;height:16px;}
/* chips de filtro */
.owari-cat-filters{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 28px;}

/* destacado */
.owari-featured-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:var(--owari-gap);align-items:stretch;}
.owari-featured-grid__side{display:grid;gap:var(--owari-gap);align-content:stretch;}
.owari-pcard--featured{flex-direction:row;}
.owari-pcard--featured .owari-pcard__media{width:46%;aspect-ratio:auto;flex:none;border-bottom:none;border-right:1px solid var(--owari-line);}
.owari-pcard--featured .owari-pcard__body{padding:32px;justify-content:center;}
@media(max-width:768px){.owari-pcard--featured{flex-direction:column;}.owari-pcard--featured .owari-pcard__media{width:100%;aspect-ratio:16/9;border-right:none;border-bottom:1px solid var(--owari-line);}}

/* carrusel */
.owari-carousel{position:relative;}
.owari-carousel__track{display:flex;gap:var(--owari-gap);overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px;scrollbar-width:thin;}
.owari-carousel__track>*{flex:0 0 300px;scroll-snap-align:start;}
.owari-carousel__nav{position:absolute;top:-56px;right:0;display:flex;gap:8px;}
.owari-carousel__nav button{width:40px;height:40px;border-radius:50%;border:1.5px solid var(--owari-line);background:var(--owari-card);cursor:pointer;display:flex;align-items:center;justify-content:center;}

/* ============================================================
   GALERÍA
   ============================================================ */
.owari-gal-head{margin-bottom:20px;}
.owari-gal-head h2{margin:0;}
.owari-gal-head--row{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;}
.owari-gtile{min-height:150px;}
/* lazy-load: marcador neutro mientras carga + fundido suave al aparecer */
.owari-gtile.owari-lazy{background-color:var(--owari-line);}
.owari-gtile.owari-lazy.is-loaded{animation:owari-fade-in .45s ease;}
@keyframes owari-fade-in{from{opacity:.15;}to{opacity:1;}}
.owari-gallery--tira{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;}
.owari-gallery--tira .owari-gtile{aspect-ratio:1;}
.owari-gallery--grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;max-width:660px;}
.owari-gallery--grid .owari-gtile{aspect-ratio:16/10;}
.owari-gallery--mosaico{display:grid;grid-template-columns:2fr 1.3fr 1.3fr;grid-template-rows:175px 175px;gap:14px;}
.owari-gallery--mosaico .g-big{grid-column:1;grid-row:1/3;}
.owari-gallery--mosaico .g-sm{grid-column:2;grid-row:1;}
.owari-gallery--mosaico .g-wide{grid-column:2;grid-row:2;}
.owari-gallery--mosaico .g-tall{grid-column:3;grid-row:1/3;}
/* bloque espejo: el grande pasa a la derecha (alterna izquierda/derecha) */
.owari-gallery--mosaico.is-mirror .g-big{grid-column:3;grid-row:1/3;}
.owari-gallery--mosaico.is-mirror .g-tall{grid-column:1;grid-row:1/3;}
/* separación entre bloques que se repiten */
.owari-gallery--mosaico + .owari-gallery--mosaico,
.owari-gallery--mosaico + .owari-gallery--wall{margin-top:14px;}
/* FULLBLEED: a sangre completa, foto destacada grande (2×2) + 4 pequeñas,
   alternando el lado en cada bloque. Distinto del mosaico (que va en contenedor). */
.owari-gallery--fullbleed{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:188px;gap:8px;}
.owari-gallery--fullbleed .owari-gtile{border-radius:0;min-height:0;}
.owari-gallery--fullbleed .fb-big{grid-column:1/3;grid-row:span 2;}
.owari-gallery--fullbleed .fb-a{grid-column:3;grid-row:1;}
.owari-gallery--fullbleed .fb-b{grid-column:4;grid-row:1;}
.owari-gallery--fullbleed .fb-c{grid-column:3;grid-row:2;}
.owari-gallery--fullbleed .fb-d{grid-column:4;grid-row:2;}
.owari-gallery--fullbleed.is-mirror .fb-big{grid-column:3/5;}
.owari-gallery--fullbleed.is-mirror .fb-a{grid-column:1;}
.owari-gallery--fullbleed.is-mirror .fb-b{grid-column:2;}
.owari-gallery--fullbleed.is-mirror .fb-c{grid-column:1;}
.owari-gallery--fullbleed.is-mirror .fb-d{grid-column:2;}
.owari-gallery--fullbleed + .owari-gallery--fullbleed,
.owari-gallery--fullbleed + .owari-gallery--wall{margin-top:8px;}
/* muro responsive: muestra muchas imágenes en cuadrícula auto-ajustable */
.owari-gallery--wall{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px;margin-top:18px;}
.owari-gallery--wall .owari-gtile{aspect-ratio:1;}
/* Paginación de galería */
.owari-gallery-pages{display:flex;flex-direction:column;gap:14px;}
.owari-gpager{display:flex;align-items:center;justify-content:center;gap:16px;margin:26px 0 4px;}
.owari-gpager__btn{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;border:1px solid var(--owari-line);background:var(--owari-card);color:var(--owari-ink);font-size:1.4rem;line-height:1;cursor:pointer;transition:background .15s,border-color .15s,opacity .15s;}
.owari-gpager__btn:hover:not(:disabled){background:var(--owari-green-soft);border-color:var(--owari-green);color:var(--owari-green);}
.owari-gpager__btn:disabled{opacity:.4;cursor:default;}
.owari-gpager__label{font-weight:600;color:var(--owari-ink-soft);min-width:54px;text-align:center;}
/* nunca desbordar el contenedor y permitir que las celdas encojan */
.owari-gallery--mosaico,.owari-gallery--wall,.owari-gallery--tira,.owari-gallery--grid,.owari-gallery--fullbleed{max-width:100%;}
.owari-gallery--mosaico > *,.owari-gallery--wall > *,.owari-gallery--tira > *,.owari-gallery--grid > *,.owari-gallery--fullbleed > *{min-width:0;}
/* las celdas con aspect-ratio NO deben heredar el min-height:150 (haría que su
   ancho mínimo supere la columna y se salgan de la celda) */
.owari-gallery--tira .owari-gtile,
.owari-gallery--grid .owari-gtile,
.owari-gallery--wall .owari-gtile,
.owari-gallery--fullbleed .owari-gtile{min-height:0;}
/* imágenes ampliables: cursor de lupa y leve zoom al pasar */
.owari-gtile--zoom{cursor:zoom-in;transition:transform .18s,box-shadow .18s,filter .18s;}
.owari-gtile--zoom:hover{transform:scale(1.02);filter:brightness(1.05);box-shadow:var(--owari-shadow);}
.owari-gtile--zoom:focus-visible{outline:3px solid var(--owari-green);outline-offset:2px;}

/* Lightbox (ampliar imagen de galería) */
.owari-lb{position:fixed;inset:0;z-index:99999;background:rgba(20,26,20,.92);display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .2s;}
.owari-lb.is-open{opacity:1;visibility:visible;}
.owari-lb__img{max-width:92vw;max-height:86vh;object-fit:contain;border-radius:8px;box-shadow:0 20px 60px rgba(0,0,0,.5);background:#0c0f0c;}
.owari-lb__btn{position:absolute;width:52px;height:52px;border-radius:50%;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.12);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.15s;backdrop-filter:blur(4px);}
.owari-lb__btn:hover{background:rgba(255,255,255,.25);}
.owari-lb__btn svg{width:22px;height:22px;}
.owari-lb__prev{left:20px;top:50%;transform:translateY(-50%);}
.owari-lb__prev svg{transform:rotate(180deg);}
.owari-lb__next{right:20px;top:50%;transform:translateY(-50%);}
.owari-lb__close{top:20px;right:20px;font-size:26px;line-height:1;}
.owari-lb__count{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);color:#fff;font-size:.9rem;letter-spacing:.04em;background:rgba(0,0,0,.4);padding:5px 14px;border-radius:999px;}
/* tablet: conserva el FORMATO mosaico (3 columnas) pero con filas más bajas */
@media(max-width:980px){
	.owari-gallery--mosaico{grid-template-rows:150px 150px;gap:12px;}
	.owari-gallery--mosaico .owari-gtile{min-height:0;}
	.owari-gallery--wall{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));}
}
@media(max-width:768px){
	.owari-gallery--tira{grid-template-columns:repeat(3,1fr);}
	/* fullbleed móvil/tablet: foto destacada a todo el ancho + 4 pequeñas en 2×2 */
	.owari-gallery--fullbleed{grid-template-columns:repeat(2,1fr);grid-auto-rows:135px;}
	.owari-gallery--fullbleed .fb-big,
	.owari-gallery--fullbleed.is-mirror .fb-big{grid-column:1/3;grid-row:span 1;}
	.owari-gallery--fullbleed .fb-a,.owari-gallery--fullbleed .fb-b,.owari-gallery--fullbleed .fb-c,.owari-gallery--fullbleed .fb-d,
	.owari-gallery--fullbleed.is-mirror .fb-a,.owari-gallery--fullbleed.is-mirror .fb-b,.owari-gallery--fullbleed.is-mirror .fb-c,.owari-gallery--fullbleed.is-mirror .fb-d{grid-column:auto;grid-row:auto;}
	.owari-gallery--wall{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;}
	.owari-lb__btn{width:44px;height:44px;}
	.owari-lb__prev{left:10px;}
	.owari-lb__next{right:10px;}
}
/* móvil: mismo FORMATO mosaico, sólo más compacto (filas bajas + poco espacio) */
@media(max-width:600px){
	.owari-gallery--mosaico{grid-template-rows:108px 108px;gap:6px;}
	.owari-gallery--mosaico .owari-gtile{min-height:0;border-radius:8px;}
	.owari-gallery--mosaico + .owari-gallery--mosaico,
	.owari-gallery--mosaico + .owari-gallery--wall{margin-top:6px;}
	.owari-gallery--wall{grid-template-columns:repeat(3,1fr);gap:6px;}
	.owari-gallery--wall .owari-gtile{border-radius:8px;}
	.owari-gallery--tira{grid-template-columns:repeat(3,1fr);gap:6px;}
	.owari-gallery--grid{grid-template-columns:repeat(3,1fr);gap:6px;}
	.owari-gallery--fullbleed{grid-auto-rows:118px;gap:6px;}
	.owari-gallery--fullbleed + .owari-gallery--fullbleed,
	.owari-gallery--fullbleed + .owari-gallery--wall{margin-top:6px;}
}

/* ============================================================
   CERTIFICACIONES
   ============================================================ */
.owari-certs-sec .owari-eyebrow{margin-bottom:18px;}
.owari-certs-row{display:flex;gap:18px 40px;flex-wrap:wrap;}
.owari-certs-row.is-centered{justify-content:center;}
.owari-cert-item{display:flex;align-items:center;gap:12px;}
.owari-cert-circle{width:54px;height:54px;border-radius:50%;border:2px solid var(--owari-green);display:flex;align-items:center;justify-content:center;color:var(--owari-green);font-weight:700;font-size:.78rem;flex:none;background:var(--owari-card);}
.owari-cert-text strong{display:block;font-size:.95rem;}
.owari-cert-text small{color:var(--owari-ink-soft);font-size:.8rem;}

/* ============================================================
   BLOG
   ============================================================ */
.owari-blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--owari-gap);}
.owari-bcard__media{aspect-ratio:16/10;background:var(--owari-green-soft);border-radius:var(--owari-radius);background-size:cover;background-position:center;margin-bottom:14px;display:block;}
.owari-bcard__title{font-size:1.25rem;margin:.2em 0;}
.owari-bcard__title a{color:var(--owari-ink);}
.owari-bcard__meta{font-size:.78rem;color:var(--owari-ink-soft);}
.owari-bcard__media{aspect-ratio:16/10;}
/* blog banda: fondo verde claro */
.owari-section--blog.is-banda{background:var(--owari-green-soft);}
/* blog editorial: reportaje grande izq + lista der */
.owari-blog-editorial{display:grid;grid-template-columns:1.5fr 1fr;gap:48px;align-items:start;}
.owari-blog-editorial__media{aspect-ratio:16/10;display:block;margin-bottom:16px;}
.owari-blog-editorial__lead h2{margin:.15em 0 .3em;font-size:clamp(1.6rem,3vw,2.4rem);}
.owari-blog-editorial__lead h2 a{color:var(--owari-ink);}
.owari-blog-editorial__lead p{color:var(--owari-ink-soft);}
.owari-blog-editorial__list{display:flex;flex-direction:column;}
.owari-mlitem{display:block;padding:16px 0;border-bottom:1px dashed var(--owari-line);}
.owari-mlitem:first-of-type{border-top:1px dashed var(--owari-line);}
.owari-mlitem strong{display:block;font-family:var(--owari-font-head);font-size:1.2rem;font-weight:600;color:var(--owari-ink);margin-top:2px;}
.owari-mlitem:hover strong{color:var(--owari-green);}
@media(max-width:768px){.owari-blog-editorial{grid-template-columns:1fr;}}
.owari-blog-more{margin-top:30px;text-align:center;}

/* layout blog (archive/single) */
.owari-blog-layout{display:grid;grid-template-columns:1fr 320px;gap:48px;}
.owari-blog-layout--full{grid-template-columns:1fr;}
.owari-sidebar .widget{background:var(--owari-card);border:1px solid var(--owari-line);border-radius:var(--owari-radius);padding:22px;margin-bottom:24px;}
.owari-sidebar .widget-title{font-size:1.05rem;margin-bottom:14px;}
.owari-widget-search{background:transparent!important;border:none!important;padding:0!important;}

/* cabecera del blog con subrayado */
.owari-underline{display:inline-block;position:relative;padding-bottom:.18em;}
.owari-underline::after{content:"";position:absolute;left:0;bottom:0;width:64%;height:5px;border-radius:4px;background:var(--owari-wheat);}

/* post destacado del listado */
.owari-blog-featured{display:grid;grid-template-columns:1.2fr 1fr;gap:0;background:var(--owari-card);border:1px solid var(--owari-line);border-radius:var(--owari-radius);overflow:hidden;margin-bottom:32px;}
.owari-blog-featured__media{min-height:320px;background:var(--owari-green-soft);background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;}
.owari-blog-featured__body{padding:36px;align-self:center;}
.owari-blog-featured__body h2{margin:.1em 0 .3em;}
.owari-blog-grid--2{grid-template-columns:repeat(2,1fr);}
.owari-blog-grid--3{grid-template-columns:repeat(3,1fr);}
@media(max-width:768px){.owari-blog-grid--3{grid-template-columns:1fr 1fr;}}

/* lista de categorías con conteo */
.owari-cat-list{list-style:none;margin:0;padding:0;}
.owari-cat-list li{display:flex;align-items:center;justify-content:space-between;padding:7px 0;border-bottom:1px dashed var(--owari-line);}
.owari-cat-list li:last-child{border-bottom:none;}
.owari-count{background:var(--owari-green-soft);color:var(--owari-green);border-radius:40px;font-size:.72rem;padding:1px 9px;font-weight:700;}

/* mini posts (más leídos) */
.owari-mini-posts{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px;}
.owari-mini-posts li{display:flex;gap:12px;align-items:center;}
.owari-mini-posts__thumb{width:56px;height:56px;flex:none;border-radius:8px;background:var(--owari-green-soft);background-size:cover;background-position:center;}
.owari-mini-posts__title{font-weight:600;font-size:.9rem;color:var(--owari-ink);line-height:1.25;}

/* caja suscripción */
.owari-subscribe{background:var(--owari-green)!important;color:#eaf1ea;border-color:var(--owari-green)!important;}
.owari-subscribe .widget-title{color:#fff;}
.owari-subscribe input{margin-bottom:10px;}
.owari-subscribe .owari-btn{background:var(--owari-wheat);border-color:var(--owari-wheat);color:#3a2e10;width:100%;justify-content:center;}

/* artículo: tags, autor, cita */
.owari-article__tags{margin-top:28px;display:flex;gap:8px;flex-wrap:wrap;}
.owari-author{display:flex;gap:18px;align-items:flex-start;background:var(--owari-card);border:1px solid var(--owari-line);border-radius:var(--owari-radius);padding:24px;margin-top:28px;}
.owari-author__avatar{border-radius:50%;flex:none;}
.owari-author__name{margin:.1em 0 .2em;}
.owari-entry-content blockquote,.owari-article__body blockquote{background:var(--owari-green-soft);border-left:4px solid var(--owari-green);border-radius:0 var(--owari-radius) var(--owari-radius) 0;margin:1.6em 0;padding:20px 26px;font-family:var(--owari-font-head);font-size:1.3rem;color:var(--owari-ink);}
.owari-entry-content blockquote p{margin:0;}
@media(max-width:768px){.owari-blog-featured,.owari-blog-grid--2{grid-template-columns:1fr;}}

/* artículo */
.owari-article__header{text-align:center;max-width:760px;margin:0 auto 36px;}
.owari-article__cover{aspect-ratio:16/8;background:var(--owari-green-soft);border-radius:var(--owari-radius);margin-bottom:36px;background-size:cover;background-position:center;}
.owari-article__body{max-width:740px;margin:0 auto;font-size:1.08rem;}
.owari-article__body img{border-radius:var(--owari-radius);margin:1.5em 0;}

/* ============================================================
   CONTACTO
   ============================================================ */
.owari-contact__form{display:flex;flex-direction:column;gap:12px;margin-top:18px;max-width:460px;}
.owari-contact__form .owari-btn{align-self:flex-start;}
.owari-contact__map{min-height:300px;border-radius:var(--owari-radius);overflow:hidden;}
.owari-contact__map iframe{width:100%;height:100%;border:0;min-height:300px;display:block;}
/* mapa placeholder tipo cuadrícula */
.owari-mapgrid{position:relative;background:
	linear-gradient(0deg,rgba(47,93,58,.05),rgba(47,93,58,.05)),
	repeating-linear-gradient(0deg,rgba(45,53,44,.08) 0 1px,transparent 1px 28px),
	repeating-linear-gradient(90deg,rgba(45,53,44,.08) 0 1px,transparent 1px 28px),var(--owari-card);
	border:1px solid var(--owari-line);display:flex;align-items:center;justify-content:center;}
.owari-mappin{color:var(--owari-green);}
.owari-mappin svg{width:30px;height:30px;}
/* split */
.owari-contact--split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start;}
.owari-contact--split .owari-contact__col:last-child{display:flex;flex-direction:column;gap:16px;}
.owari-contact--split .owari-contact__map{flex:1;}
/* panel */
.owari-contact--panel{display:grid;grid-template-columns:1.1fr 1fr;gap:32px;align-items:start;}
.owari-contact__card{background:var(--owari-card);border:1px solid var(--owari-line);border-radius:var(--owari-radius);box-shadow:var(--owari-shadow-sm);padding:36px;}
.owari-contact__side{display:flex;flex-direction:column;gap:16px;}
/* mapafondo */
.owari-section--contacto.is-mapafondo{padding:0;}
.owari-contact--mapafondo{position:relative;padding:64px 0;}
.owari-contact__bg{position:absolute;inset:0;overflow:hidden;}
.owari-contact__bg iframe{width:100%;height:100%;border:0;filter:grayscale(.2);}
.owari-contact__floatcard{position:relative;z-index:2;background:var(--owari-card);border:1px solid var(--owari-line);border-radius:var(--owari-radius);box-shadow:var(--owari-shadow);padding:36px;max-width:460px;}
.owari-contact__floatcard .owari-btn--wheat{margin-top:12px;}
@media(max-width:768px){.owari-contact--split,.owari-contact--panel{grid-template-columns:1fr;}}

/* ============================================================
   PRODUCTO (single)
   ============================================================ */
.owari-product__top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;margin-bottom:48px;}
/* disposición "galería arriba": una sola columna a ancho completo */
.owari-product__top--stacked{grid-template-columns:minmax(0,1fr);}
.owari-product__top--stacked .owari-gal__main{aspect-ratio:16/9;}
/* las columnas y la galería deben poder encoger (si no, la tira de miniaturas
   fuerza el ancho y desborda toda la ficha) */
.owari-product__gallery,.owari-product__summary{min-width:0;}
/* WooCommerce aplica float:right;width:48% a .summary y float:left;width:48% a .images.
   En nuestra rejilla (grid) eso encoge la columna derecha y aprieta el texto: anulamos
   esos floats/anchos para que cada columna llene su celda del grid. */
.owari-product .owari-product__summary,
.owari-product .owari-product__gallery{float:none !important;width:auto !important;}
.owari-gal,.owari-gal__stage,.owari-gal__thumbs{min-width:0;max-width:100%;}
.owari-product__gallery-main{aspect-ratio:1;background:#fff;border:1px solid var(--owari-line);border-radius:var(--owari-radius);background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;}
.owari-product__thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:12px;}
.owari-product__thumbs .t{aspect-ratio:1;background:#fff;border:1px solid var(--owari-line);border-radius:8px;background-size:cover;background-position:center;cursor:pointer;}
.owari-product__summary h1{margin:.1em 0 .2em;}
.owari-product__lead{color:var(--owari-ink-soft);font-size:1.05rem;}
.owari-product__price{margin:18px 0;font-size:2rem;}
.owari-product__price .owari-price{font-size:2.2rem;}
.owari-product__pricebar{display:inline-block;background:var(--owari-wheat);color:#3a2e10;font-family:var(--owari-font-head);font-weight:600;font-size:1.7rem;padding:10px 22px;border-radius:40px 12px 40px 12px;margin:16px 0 6px;}
.owari-product__pricebar small{font-size:1rem;font-family:var(--owari-font-body);}
.owari-product__note{font-size:.82rem;color:var(--owari-ink-soft);margin:0 0 16px;}
.owari-rating{display:flex;align-items:center;gap:8px;color:var(--owari-ink-soft);font-size:.9rem;}
.owari-stars{display:inline-flex;gap:2px;}
.owari-star{width:16px;height:16px;color:rgba(45,53,44,.2);}
.owari-star.is-on{color:var(--owari-wheat);}
.owari-star svg{width:100%;height:100%;}
.owari-presentations{margin:18px 0;}
.owari-presentations__chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px;}
.owari-product__buy{display:flex;gap:12px;flex-wrap:wrap;align-items:stretch;margin:24px 0 12px;}
.owari-product__buy-action{display:flex;flex:1;min-width:200px;}
.owari-product__buy-action .owari-btn,.owari-product__buy-action .button{flex:1;justify-content:center;}
.owari-product__wa{width:100%;justify-content:center;margin-bottom:16px;}
.owari-product__stockline{display:flex;align-items:center;gap:8px;font-size:.85rem;color:var(--owari-ink-soft);margin:8px 0 16px;}
.owari-dot{width:9px;height:9px;border-radius:50%;background:var(--owari-green);display:inline-block;}
.owari-dot.is-outofstock{background:#c0392b;}
.owari-dot.is-onbackorder{background:var(--owari-wheat);}
.owari-product__certs{display:flex;gap:14px;flex-wrap:wrap;}
.owari-seal--sm{width:46px;height:46px;font-size:.6rem;}
.owari-product__info{display:grid;grid-template-columns:1fr 320px;gap:48px;margin-top:16px;}
.owari-specs__dl{display:grid;grid-template-columns:auto 1fr;gap:8px 16px;margin:0;}
.owari-specs__dl dt{font-weight:600;color:var(--owari-ink-soft);}
@media(max-width:768px){.owari-product__info{grid-template-columns:1fr;}}
.owari-qty{display:flex;align-items:center;border:1.5px solid var(--owari-line);border-radius:10px;overflow:hidden;}
.owari-qty button{width:40px;height:44px;border:none;background:var(--owari-card);cursor:pointer;font-size:1.1rem;}
.owari-qty input{width:50px;border:none;text-align:center;background:transparent;}
.owari-specs{background:var(--owari-card);border-radius:var(--owari-radius);padding:24px;}
.owari-specs dl{display:grid;grid-template-columns:auto 1fr;gap:8px 16px;margin:0;}
.owari-specs dt{font-weight:600;color:var(--owari-ink-soft);}
.owari-tabs__nav{display:flex;gap:24px;border-bottom:1.5px solid var(--owari-line);margin-bottom:24px;flex-wrap:wrap;}
.owari-tabs__nav button{background:none;border:none;padding:10px 0;font-weight:600;color:var(--owari-ink-soft);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1.5px;}
.owari-tabs__nav button.is-active{color:var(--owari-green);border-color:var(--owari-green);}
.owari-tabs__panel{display:none;}
.owari-tabs__panel.is-active{display:block;}

/* ============================================================
   PÁGINA LEGAL
   ============================================================ */
.owari-legal{display:grid;grid-template-columns:240px 1fr;gap:48px;}
.owari-legal__nav{position:sticky;top:90px;align-self:start;}
.owari-legal__nav a{display:block;padding:6px 0;color:var(--owari-ink-soft);}
.owari-legal__nav a:hover{color:var(--owari-green);}

/* ============================================================
   FOOTER
   ============================================================ */
.owari-footer{background:var(--owari-green);color:rgba(255,255,255,.78);margin-top:64px;}
.owari-footer a{color:rgba(255,255,255,.78);}
.owari-footer a:hover{color:#fff;}
.owari-footer .owari-brand,.owari-footer .owari-brand__name{color:#fff;}
.owari-footer .owari-brand__mark{color:var(--owari-brand);}
.owari-footer .owari-brand__tag{color:rgba(255,255,255,.55);}
.owari-footer__cols{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:40px;padding:56px 0;}
.owari-footer__about{margin-top:16px;font-size:.92rem;line-height:1.6;max-width:34ch;}
.owari-footer__title{color:#fff;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;margin:0 0 16px;}
.owari-footer__menu,.owari-footer__contact{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px;font-size:.92rem;}
.owari-footer__contact li{line-height:1.5;}
.owari-footer__col .owari-btn--wheat{margin-top:16px;}
.owari-footer__bottom{border-top:1px solid rgba(255,255,255,.16);padding:18px 0;font-size:.85rem;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:center;}
.owari-footer__legal{list-style:none;display:flex;gap:18px;margin:0;padding:0;}
/* simple */
.owari-footer--simple .owari-footer__simple{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:28px 0;flex-wrap:wrap;}
.owari-footer__copy{font-size:.85rem;}
.owari-footer--simple .owari-lang__item{color:rgba(255,255,255,.78);}
.owari-footer--simple .owari-lang__item.is-active{color:#fff;}
@media(max-width:768px){.owari-footer__cols{grid-template-columns:1fr 1fr;}}

/* ============================================================
   WHATSAPP FLOTANTE
   ============================================================ */
.owari-wa-wrap{position:fixed;right:22px;bottom:22px;z-index:80;display:flex;align-items:center;gap:10px;}
.owari-wa-bubble{background:var(--owari-card);border:1px solid var(--owari-line);box-shadow:var(--owari-shadow-sm);border-radius:14px;padding:10px 14px;font-size:.85rem;max-width:200px;line-height:1.3;color:var(--owari-ink);}
.owari-wa-float{width:56px;height:56px;border-radius:50%;background:#25d366;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 20px rgba(0,0,0,.2);transition:.18s;flex:none;}
.owari-wa-float:hover{transform:scale(1.08);color:#fff;}
.owari-wa-float svg{width:30px;height:30px;}
@media(max-width:560px){.owari-wa-bubble{display:none;}}

/* ============================================================
   BREADCRUMBS / paginación
   ============================================================ */
.owari-breadcrumbs{background:var(--owari-card);font-size:.85rem;padding:12px 0;border-bottom:1px solid var(--owari-line);}
.owari-breadcrumbs .sep{margin:0 8px;color:var(--owari-ink-soft);}
.owari-breadcrumbs .current{color:var(--owari-ink-soft);}
.owari-pagination{display:flex;gap:8px;justify-content:center;margin-top:40px;}
.owari-pagination .page-numbers{display:inline-flex;min-width:40px;height:40px;align-items:center;justify-content:center;border-radius:50%;border:1.5px solid var(--owari-line);color:var(--owari-ink);padding:0 12px;}
.owari-pagination .page-numbers.current{background:var(--owari-green);color:#fff;border-color:var(--owari-green);}

/* ============================================================
   PÁGINA / contenido genérico
   ============================================================ */
.owari-page{padding:56px 0;}
.owari-page__header{margin-bottom:32px;}
.owari-entry-content{max-width:780px;}
.owari-entry-content h2{margin-top:1.6em;}

/* ============================================================
   EDITOR INTERACTIVO (Customizer) · botón + modal
   ============================================================ */
/* ocultar el lápiz nativo de WP (quedaba fuera de marco) */
.customize-partial-edit-shortcut{display:none!important;}

/* botón de edición propio, dentro de cada sección */
/* grupo de controles (editar + mover + quitar) */
.owari-edit-controls{position:absolute;top:14px;right:14px;z-index:40;display:flex;gap:6px;align-items:center;opacity:.95;transition:opacity .16s;}
.owari-section:hover>.owari-edit-controls,.owari-footer:hover>.owari-edit-controls,.owari-header:hover>.owari-edit-controls,.owari-wa-wrap:hover>.owari-edit-controls{opacity:1;}
.owari-edit-btn{
	display:inline-flex;align-items:center;gap:6px;
	background:var(--owari-green);color:#fff;border:2px solid #fff;
	border-radius:40px;padding:8px 14px 8px 12px;cursor:pointer;
	font:700 13px/1 var(--owari-font-body);box-shadow:0 4px 14px rgba(0,0,0,.28);
}
.owari-edit-btn:hover{background:var(--owari-wheat);color:#2b250f;}
.owari-ctl{width:32px;height:32px;border-radius:50%;border:2px solid #fff;background:var(--owari-green);color:#fff;cursor:pointer;font-size:14px;line-height:1;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 4px 14px rgba(0,0,0,.28);}
.owari-ctl:hover{background:var(--owari-wheat);color:#2b250f;}
/* líneas de inserción "+" entre secciones (estilo WordPress) */
.owari-insert{position:relative;height:24px;margin:-12px 0;display:flex;align-items:center;justify-content:center;z-index:38;}
.owari-insert::before{content:"";position:absolute;left:8%;right:8%;top:50%;height:2px;background:var(--owari-green);opacity:0;transition:opacity .15s;}
.owari-insert:hover::before,.owari-insert.is-open::before{opacity:.45;}
.owari-insert__btn{position:relative;width:30px;height:30px;border-radius:50%;border:2px solid #fff;background:var(--owari-green);color:#fff;font-size:18px;line-height:1;cursor:pointer;opacity:0;transition:opacity .15s;box-shadow:0 2px 10px rgba(0,0,0,.25);display:flex;align-items:center;justify-content:center;}
.owari-insert:hover .owari-insert__btn,.owari-insert.is-open .owari-insert__btn{opacity:1;}
.owari-insert__menu{display:none;position:absolute;top:calc(50% + 24px);left:50%;transform:translateX(-50%);background:var(--owari-card);border:1px solid var(--owari-line);border-radius:10px;box-shadow:var(--owari-shadow);padding:6px;z-index:60;min-width:170px;flex-direction:column;gap:2px;max-height:300px;overflow:auto;}
.owari-insert.is-open .owari-insert__menu{display:flex;}
.owari-insert__item{text-align:left;background:none;border:none;padding:9px 10px;border-radius:6px;cursor:pointer;font:600 13px var(--owari-font-body);color:var(--owari-ink);}
.owari-insert__item:hover{background:var(--owari-green-soft);color:var(--owari-green);}
.owari-edit-btn svg{width:15px;height:15px;}
.owari-customize-preview .owari-section,.owari-customize-preview .owari-footer{position:relative;}
.owari-customize-preview .owari-header:not(.owari-header--sidebar):not(.owari-header--minimal){position:relative;}
.owari-customize-preview .owari-section:hover,.owari-customize-preview .owari-footer:hover,.owari-customize-preview .owari-header:hover{outline:2px dashed var(--owari-green);outline-offset:-6px;}
/* controles del header: centrados en el borde inferior para no tapar menú/carrito */
.owari-customize-preview .owari-header .owari-edit-controls{top:auto;bottom:-16px;left:50%;right:auto;transform:translateX(-50%);}
/* controles del WhatsApp flotante: encima del botón */
.owari-customize-preview .owari-wa-wrap:hover{outline:2px dashed var(--owari-green);outline-offset:6px;border-radius:8px;}
.owari-customize-preview .owari-wa-wrap .owari-edit-controls{top:auto;bottom:100%;right:0;left:auto;margin-bottom:10px;}
.owari-customize-preview .owari-wa-wrap.is-off{opacity:.5;}
.owari-wa-hint{position:absolute;bottom:100%;right:70px;margin-bottom:10px;background:#b32d2e;color:#fff;font-size:.72rem;padding:5px 9px;border-radius:8px;white-space:nowrap;}

/* modal de edición */
.owari-edit-modal{position:fixed;inset:0;z-index:99999;display:none;align-items:stretch;justify-content:flex-end;background:rgba(43,53,44,.06);}
.owari-edit-modal.is-open{display:flex;}
.owari-edit-modal__card{width:340px;max-width:88vw;height:100%;background:rgba(243,238,225,.58);-webkit-backdrop-filter:blur(5px) saturate(1.1);backdrop-filter:blur(5px) saturate(1.1);box-shadow:-12px 0 44px rgba(0,0,0,.16);display:flex;flex-direction:column;animation:owariSlide .2s ease;}
.owari-edit-modal__head{background:rgba(47,93,58,.92);}
.owari-edit-field input,.owari-edit-field textarea,.owari-edit-field select{background:rgba(255,255,255,.92);}
@keyframes owariSlide{from{transform:translateX(30px);opacity:.6;}to{transform:none;opacity:1;}}
.owari-edit-modal__head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;background:var(--owari-green);color:#fff;}
.owari-edit-modal__title{font:600 15px/1.2 var(--owari-font-body);}
.owari-edit-modal__close{background:none;border:none;color:#fff;font-size:24px;line-height:1;cursor:pointer;}
.owari-edit-modal__body{flex:1;overflow-y:auto;padding:18px;display:flex;flex-direction:column;gap:16px;}
.owari-edit-field{display:flex;flex-direction:column;gap:6px;}
.owari-edit-field__label{font:600 12px/1 var(--owari-font-body);letter-spacing:.04em;text-transform:uppercase;color:var(--owari-ink-soft);}
.owari-edit-field input:not([type=checkbox]),.owari-edit-field textarea,.owari-edit-field select{width:100%;font:15px/1.4 var(--owari-font-body);color:var(--owari-ink);background:#fff;border:1.5px solid var(--owari-line);border-radius:8px;padding:9px 11px;}
.owari-edit-check{display:flex;flex-direction:row;align-items:center;gap:10px;cursor:pointer;}
.owari-edit-check input[type=checkbox]{width:20px;height:20px;flex:none;margin:0;accent-color:var(--owari-green);}
.owari-edit-check .owari-edit-field__label{text-transform:none;letter-spacing:0;font-size:.95rem;margin:0;color:var(--owari-ink);}
.owari-edit-field textarea{min-height:90px;resize:vertical;}
.owari-edit-imgbtn{background:var(--owari-green-soft);color:var(--owari-green);border:1.5px solid var(--owari-green);border-radius:8px;padding:9px;cursor:pointer;font:600 13px var(--owari-font-body);}
.owari-edit-imgbtn:hover{background:var(--owari-green);color:#fff;}
.owari-edit-sep{margin-top:8px;padding-top:14px;border-top:1px dashed var(--owari-line);font:700 11px/1 var(--owari-font-body);letter-spacing:.12em;text-transform:uppercase;color:var(--owari-green);}
.owari-edit-color{display:flex;align-items:center;gap:8px;}
.owari-edit-color input[type=color]{width:46px;height:38px;padding:2px;border:1.5px solid var(--owari-line);border-radius:8px;background:#fff;cursor:pointer;flex:none;}
.owari-edit-color__hex{flex:1;font-family:var(--owari-mono,monospace)!important;text-transform:uppercase;}
.owari-edit-color__reset{width:34px;height:34px;border:1.5px solid var(--owari-line);background:#fff;border-radius:8px;cursor:pointer;font-size:16px;color:var(--owari-ink-soft);}
.owari-edit-color__reset:hover{background:var(--owari-green-soft);color:var(--owari-green);}
.owari-edit-modal__foot{display:flex;gap:10px;padding:14px 18px;border-top:1px solid var(--owari-line);}
.owari-edit-modal__done{flex:1;background:var(--owari-green);color:#fff;border:none;border-radius:40px;padding:11px;font:600 14px var(--owari-font-body);cursor:pointer;}
.owari-edit-modal__adv{background:none;border:1.5px solid var(--owari-line);color:var(--owari-ink-soft);border-radius:40px;padding:11px 16px;cursor:pointer;font:600 13px var(--owari-font-body);}

/* ============================================================
   BIBLIOTECA DE SECCIONES
   ============================================================ */
.owari-lib-block{border-top:2px dashed var(--owari-line);padding:8px 0 24px;}
.owari-lib-label{margin:24px 0 8px;}
.owari-lib-label span{display:inline-block;background:var(--owari-green);color:#fff;font-weight:700;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;padding:5px 14px;border-radius:40px;}
.owari-lib-variant{font-family:var(--owari-font-head);color:var(--owari-ink-soft);font-size:1rem;margin:18px 0 4px;display:block;}
.owari-lib-variant-wrap{margin-bottom:8px;}
.owari-lib-variant-wrap .owari-section{padding:24px 0;}

/* ============================================================
   WOOCOMMERCE (armonización con el tema)
   ============================================================ */
.woocommerce a.button,.woocommerce button.button,.woocommerce .button,
.woocommerce #respond input#submit,.woocommerce a.button.alt,
.woocommerce button.button.alt,.woocommerce input.button.alt,
.owari-pcard .button,.owari-products .button{
	background:var(--owari-green)!important;color:#fff!important;
	border-radius:calc(var(--owari-radius) + 4px)!important;
	font-family:var(--owari-font-body)!important;font-weight:600!important;
	padding:10px 18px!important;border:2px solid var(--owari-green)!important;
	text-transform:none!important;
}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce .button:hover,
.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover{
	background:var(--owari-ink)!important;border-color:var(--owari-ink)!important;color:#fff!important;
}
.woocommerce span.price,.woocommerce div.product p.price,.woocommerce ul.products li.product .price{
	color:var(--owari-green)!important;font-family:var(--owari-font-head)!important;font-weight:600;
}
.woocommerce .woocommerce-message,.woocommerce .woocommerce-info{border-top-color:var(--owari-green);}
.woocommerce .woocommerce-message::before,.woocommerce .woocommerce-info::before{color:var(--owari-green);}
.woocommerce-store-notice,p.demo_store{background:var(--owari-green)!important;}
.woocommerce .star-rating span,.woocommerce p.stars a{color:var(--owari-wheat);}

/* Tienda con barra lateral de categorías */
.owari-shop-layout{display:grid;grid-template-columns:248px minmax(0,1fr);gap:40px;align-items:start;}
.owari-shop-main{min-width:0;}
.owari-shop-aside{position:sticky;top:96px;}
.owari-shop-filter{background:var(--owari-cream,#f6f1e7);border:1px solid rgba(43,58,42,.10);border-radius:18px;padding:22px 22px 12px;}
.owari-shop-filter__title{margin:0 0 12px;font-size:1.05rem;letter-spacing:.02em;color:var(--owari-ink,#2b3a2a);}
.owari-cat-list{list-style:none;margin:0;padding:0;}
.owari-cat-list li{margin:0;border-top:1px solid rgba(43,58,42,.08);}
.owari-cat-list li:first-child{border-top:0;}
.owari-cat-list a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 4px;color:var(--owari-ink,#2b3a2a);text-decoration:none;font-weight:500;transition:color .15s,padding-left .15s;}
.owari-cat-list a:hover{color:var(--owari-green,#3c6e47);padding-left:8px;}
.owari-cat-list li.is-current a{color:var(--owari-green,#3c6e47);font-weight:700;}
.owari-cat-list .owari-count{font-size:.78rem;font-weight:600;color:#6b7a68;background:rgba(60,110,71,.12);border-radius:999px;padding:2px 9px;min-width:22px;text-align:center;}
.owari-cat-list li.is-current .owari-count{background:var(--owari-green,#3c6e47);color:#fff;}
@media(max-width:860px){
	.owari-shop-layout{grid-template-columns:1fr;gap:24px;}
	.owari-shop-aside{position:static;}
	.owari-shop-filter{padding:16px 18px 6px;}
	.owari-cat-list{display:flex;flex-wrap:wrap;gap:8px;}
	.owari-cat-list li{border-top:0;}
	.owari-cat-list a{border:1px solid rgba(43,58,42,.14);border-radius:999px;padding:7px 14px;}
	.owari-cat-list a:hover{padding-left:14px;}
}

/* Rejilla de productos WooCommerce: reemplaza el layout flotante por CSS grid responsive */
.woocommerce ul.products,
.woocommerce-page ul.products{
	display:grid!important;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:var(--owari-gap,24px);
	margin:0!important;padding:0!important;list-style:none;
}
.woocommerce ul.products.columns-1{grid-template-columns:1fr;}
.woocommerce ul.products.columns-2{grid-template-columns:repeat(2,minmax(0,1fr));}
.woocommerce ul.products.columns-3{grid-template-columns:repeat(3,minmax(0,1fr));}
.woocommerce ul.products.columns-4{grid-template-columns:repeat(4,minmax(0,1fr));}
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
	width:auto!important;margin:0!important;float:none!important;clear:none!important;min-width:0;
	display:flex;
}
/* tarjetas de igual altura: la tarjeta llena la celda y el precio/botón se alinea abajo
   aunque el contenido (unidad, título de 1 o 2 líneas) varíe */
.woocommerce ul.products li.product > .owari-pcard{width:100%;height:100%;}
.owari-products{align-items:stretch;}
.owari-products > .owari-pcard{height:100%;}
.woocommerce ul.products::before,
.woocommerce ul.products::after{content:none!important;display:none!important;}
@media(max-width:900px){
	.woocommerce ul.products.columns-3,
	.woocommerce ul.products.columns-4{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:560px){
	.woocommerce ul.products,
	.woocommerce ul.products.columns-2,
	.woocommerce ul.products.columns-3,
	.woocommerce ul.products.columns-4{grid-template-columns:1fr;}
}
/* la fila precio + botón nunca debe desbordar: salta de línea si no cabe */
.owari-pcard__foot{flex-wrap:wrap;}
.owari-pcard__action{flex:0 0 auto;}
.owari-pcard__action .owari-btn,
.owari-pcard__action .button{white-space:nowrap;}

/* Mi cuenta: menú lateral con iconos (estilo OceanWP) + contenido.
   Página a ancho completo y layout flex con auto-wrap (nunca encoge el contenido). */
.woocommerce-account .owari-entry-content{max-width:none;width:100%;}
.woocommerce-account .woocommerce{display:flex;flex-wrap:wrap;gap:32px;align-items:flex-start;}
.woocommerce-account .woocommerce > .owari-account-nav{flex:0 0 240px;max-width:100%;}
.woocommerce-account .woocommerce > .woocommerce-MyAccount-content{flex:1 1 340px;min-width:0;}
.woocommerce-account .woocommerce > .woocommerce-notices-wrapper{flex:1 1 100%;}
/* login/registro (sin sesión): columnas a ancho completo, no afectadas por el menú */
.woocommerce-account .woocommerce > .u-columns,
.woocommerce-account .woocommerce > form{flex:1 1 100%;}
.owari-account-nav ul{list-style:none;margin:0;padding:0;border:1px solid var(--owari-line);border-radius:var(--owari-radius);overflow:hidden;background:var(--owari-card);box-shadow:var(--owari-shadow-sm);}
.owari-account-nav li{margin:0;border-top:1px solid var(--owari-line);}
.owari-account-nav li:first-child{border-top:0;}
.owari-account-nav li a{display:flex;align-items:center;gap:12px;padding:13px 18px;color:var(--owari-ink);text-decoration:none;font-weight:500;transition:background .15s,color .15s;}
.owari-account-nav li a:hover{background:var(--owari-green-soft);color:var(--owari-green);}
.owari-account-nav li.is-active a{background:var(--owari-green);color:#fff;}
.owari-acc-ico{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex:none;opacity:.95;}
.owari-acc-ico svg{width:100%;height:100%;display:block;}
.owari-acc-label{flex:1;}
/* el formulario de la cuenta no debe quedar estrecho */
.woocommerce-MyAccount-content form,
.woocommerce-MyAccount-content .woocommerce-Addresses,
.woocommerce-MyAccount-content table{width:100%;}
.woocommerce-EditAccountForm .woocommerce-form-row--first,
.woocommerce-EditAccountForm .woocommerce-form-row--last{width:48%;display:inline-block;}
.woocommerce-MyAccount-content .woocommerce-Input,
.woocommerce-MyAccount-content input.input-text{width:100%;max-width:420px;}

/* --- Login / Registro: panel de bienvenida (izq) + tarjeta única (der) --- */
.woocommerce-account .woocommerce > .owari-auth-wrap{flex:1 1 100%;}
.owari-auth-wrap{display:grid;grid-template-columns:1fr minmax(360px,460px);gap:48px;align-items:center;}
.owari-auth{width:100%;}
/* panel de bienvenida */
.owari-auth-intro{padding:20px 6px;}
.owari-auth-intro__logo{max-height:70px;width:auto;margin-bottom:22px;display:block;}
.owari-auth-intro__title{font-size:clamp(1.8rem,3vw,2.6rem);margin:0 0 14px;color:var(--owari-ink);line-height:1.15;}
.owari-auth-intro__text{font-size:1.05rem;line-height:1.7;color:var(--owari-ink-soft);max-width:42ch;}
.owari-auth-intro.has-bg{position:relative;border-radius:var(--owari-radius);overflow:hidden;background-size:cover;background-position:center;min-height:440px;display:flex;align-items:flex-end;padding:0;box-shadow:var(--owari-shadow);}
.owari-auth-intro.has-bg::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,14,8,.10),rgba(20,14,8,.78));}
.owari-auth-intro.has-bg .owari-auth-intro__inner{position:relative;padding:34px;}
.owari-auth-intro.has-bg .owari-auth-intro__title{color:#fff;}
.owari-auth-intro.has-bg .owari-auth-intro__text{color:rgba(255,255,255,.92);}
@media(max-width:880px){
	.owari-auth-wrap{grid-template-columns:1fr;gap:24px;}
	.owari-auth-intro{padding:0 4px;text-align:center;}
	.owari-auth-intro__logo,.owari-auth-intro__text{margin-left:auto;margin-right:auto;}
	.owari-auth-intro.has-bg{min-height:200px;text-align:left;}
}
.owari-auth__card{background:var(--owari-card);border:1px solid var(--owari-line);border-radius:var(--owari-radius);box-shadow:var(--owari-shadow-sm);padding:30px 30px 26px;}
.owari-auth__card h2{margin:0 0 20px;font-size:1.6rem;}
.owari-auth__register{display:none;}
.owari-auth__switch:checked ~ .owari-auth__login{display:none;}
.owari-auth__switch:checked ~ .owari-auth__register{display:block;}
.owari-auth__links{margin-top:18px;padding-top:16px;border-top:1px solid var(--owari-line);display:flex;flex-direction:column;gap:10px;}
.owari-auth__links a,.owari-auth__switch-link{color:var(--owari-green);font-size:.95rem;cursor:pointer;text-decoration:none;}
.owari-auth__links a:hover,.owari-auth__switch-link:hover{text-decoration:underline;}
.owari-auth__switch-link strong{text-decoration:underline;}
/* campos y formularios */
.woocommerce-account .woocommerce form.login,
.woocommerce-account .woocommerce form.register{border:0;padding:0;margin:0;}
.woocommerce-account .woocommerce form .form-row{margin:0 0 16px;}
.woocommerce-account .woocommerce form label{display:block;margin:0 0 6px;color:var(--owari-ink-soft);font-weight:600;font-size:.92rem;}
.woocommerce-account .woocommerce form .input-text,
.woocommerce-account .woocommerce form input[type="text"],
.woocommerce-account .woocommerce form input[type="email"],
.woocommerce-account .woocommerce form input[type="password"]{
	width:100%;max-width:none;box-sizing:border-box;padding:12px 14px;
	border:1px solid var(--owari-line);border-radius:10px;
	background:var(--owari-paper);color:var(--owari-ink);font:inherit;font-size:1rem;
}
.woocommerce-account .woocommerce form .input-text:focus{
	border-color:var(--owari-green);outline:none;box-shadow:0 0 0 3px var(--owari-green-soft);
}
.woocommerce-account .password-input{display:block;position:relative;}
.woocommerce-account .show-password-input{position:absolute;right:14px;top:50%;transform:translateY(-50%);cursor:pointer;}
.woocommerce-account .woocommerce form label.woocommerce-form-login__rememberme{display:inline-flex;align-items:center;gap:7px;font-weight:400;color:var(--owari-ink-soft);margin:0 0 0 6px;}
.owari-auth .button,.owari-auth .owari-btn{margin-top:4px;}
.woocommerce-account .woocommerce-privacy-policy-text{color:var(--owari-ink-soft);font-size:.86rem;line-height:1.55;margin:6px 0 14px;}
.woocommerce-account .woocommerce-privacy-policy-text a{color:var(--owari-green);text-decoration:underline;}
@media(max-width:600px){.woocommerce-account .woocommerce > .owari-auth{flex-basis:100%;}}

/* Carrito y checkout (bloques de WooCommerce) */
.owari-woo{padding-top:8px;}
/* páginas de carrito/checkout/cuenta a ancho completo (no el max-width de contenido) */
.owari-entry-content--wide{max-width:none!important;width:100%;}
.owari-entry-content--wide .wp-block-woocommerce-cart,
.owari-entry-content--wide .wp-block-woocommerce-checkout,
.owari-entry-content--wide > *{max-width:none!important;}
/* botón principal */
.wc-block-components-button:not(.is-link),.wp-element-button,
.wc-block-cart__submit-button,.wc-block-components-checkout-place-order-button{
	background:var(--owari-green)!important;color:#fff!important;border:none!important;
	border-radius:calc(var(--owari-radius) + 4px)!important;font-family:var(--owari-font-body)!important;font-weight:600!important;
	box-shadow:none!important;padding:13px 22px!important;min-height:0!important;
}
.wc-block-components-button:not(.is-link):hover,.wp-element-button:hover,
.wc-block-cart__submit-button:hover,.wc-block-components-checkout-place-order-button:hover{background:var(--owari-ink)!important;}
.wc-block-cart__submit-container{padding:0!important;}
/* precios en verde */
.wc-block-cart-item__total-price,.wc-block-components-totals-item__value,.wc-block-formatted-money-amount{color:var(--owari-green)!important;font-family:var(--owari-font-head);font-weight:600;}
.wc-block-components-product-name{color:var(--owari-ink)!important;font-weight:600;}
.wc-block-cart-item__image img,.wc-block-components-order-summary-item__image img{border-radius:10px;}
/* layout del carrito: productos a la izquierda (ancho), totales a la derecha */
.wc-block-cart{align-items:flex-start;}
@media(min-width:783px){
	.wc-block-cart{display:flex!important;flex-wrap:nowrap!important;gap:40px!important;}
	.wc-block-cart__main{flex:1 1 auto!important;width:auto!important;max-width:none!important;min-width:0!important;padding:0!important;}
	.wc-block-cart__sidebar{flex:0 0 320px!important;width:320px!important;max-width:340px!important;padding:0!important;margin:0!important;}
}
@media(max-width:782px){
	.wc-block-cart{display:block!important;}
	.wc-block-cart__main,.wc-block-cart__sidebar{width:100%!important;max-width:none!important;float:none!important;}
	.wc-block-cart__sidebar{margin-top:28px!important;}
}
.wc-block-cart .wc-block-cart-items{width:100%;}
/* carrito clásico (shortcode) */
@media(min-width:783px){
	.woocommerce-cart .woocommerce{display:flex;gap:40px;align-items:flex-start;flex-wrap:wrap;}
	.woocommerce-cart-form{flex:1 1 auto;min-width:0;margin:0!important;}
	.woocommerce-cart .cart-collaterals{flex:0 0 320px;width:320px!important;}
	.woocommerce-cart .cart-collaterals .cart_totals{width:100%!important;float:none!important;}
}
/* lista de productos: una tarjeta */
.wc-block-cart .wc-block-cart-items{border:1px solid var(--owari-line);border-radius:var(--owari-radius);overflow:hidden;background:var(--owari-card);}
/* padding interno de la tarjeta de productos (cubre tabla y divs) */
.wc-block-cart-items{padding:0!important;}
.wc-block-cart-items__header{padding:16px 22px!important;}
.wc-block-cart-item:not(td){padding:16px 22px!important;}
.wc-block-cart-items th,.wc-block-cart-items td{padding-top:18px!important;padding-bottom:18px!important;}
.wc-block-cart-items th:first-child,.wc-block-cart-items td:first-child{padding-left:22px!important;}
.wc-block-cart-items th:last-child,.wc-block-cart-items td:last-child{padding-right:22px!important;}
/* barra lateral de totales: UNA tarjeta limpia con padding, sin cajas anidadas */
.wc-block-components-sidebar,.wp-block-woocommerce-cart-totals-block{background:var(--owari-card)!important;border:1px solid var(--owari-line)!important;border-radius:var(--owari-radius)!important;padding:8px 22px 20px!important;}
.wc-block-components-totals-wrapper{background:transparent!important;border:none!important;border-radius:0!important;padding:14px 0!important;margin:0!important;}
.wc-block-components-totals-wrapper:not(:last-child){border-bottom:1px solid var(--owari-line)!important;}
.wc-block-components-panel,.wc-block-components-totals-coupon{border:none!important;background:transparent!important;}
/* carrito/checkout clásicos (si no usan bloques) */
.woocommerce-cart-form table.cart,.woocommerce table.shop_table{border:1px solid var(--owari-line);border-radius:var(--owari-radius);overflow:hidden;background:var(--owari-card);}
.woocommerce table.shop_table th{background:var(--owari-green-soft);}
.woocommerce .cart-collaterals .cart_totals,.woocommerce-checkout #order_review{background:var(--owari-card);border:1px solid var(--owari-line);border-radius:var(--owari-radius);padding:18px;}
.woocommerce #payment,.woocommerce-checkout #payment{background:transparent;}
.woocommerce-message,.woocommerce-info,.woocommerce-error{border-top-color:var(--owari-green)!important;border-radius:8px;}
/* selector de cantidad de WooCommerce con botones − / + */
.woocommerce div.quantity.owari-qty{display:inline-flex;align-items:center;border:1.5px solid var(--owari-line);border-radius:10px;overflow:hidden;background:#fff;}
.owari-qty__btn{width:40px;height:44px;border:none;background:var(--owari-card);cursor:pointer;font-size:1.15rem;line-height:1;color:var(--owari-ink);display:flex;align-items:center;justify-content:center;}
.owari-qty__btn:hover{background:var(--owari-green-soft);color:var(--owari-green);}
.owari-qty input.qty{width:54px;border:none!important;text-align:center;background:transparent!important;box-shadow:none!important;-moz-appearance:textfield;}
.owari-qty input.qty::-webkit-outer-spin-button,.owari-qty input.qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}
/* ocultar el spinner nativo aunque el JS no cargue */
.woocommerce div.quantity input.qty{-moz-appearance:textfield;}
.woocommerce div.quantity input.qty::-webkit-inner-spin-button,.woocommerce div.quantity input.qty::-webkit-outer-spin-button{-webkit-appearance:none;margin:0;}
/* ===== ficha de producto WC con el diseño del tema ===== */
.owari-product.product{display:block;}
/* ===== galería propia del producto (imagen + flechas + miniaturas en fila) ===== */
.owari-gal__stage{position:relative;border-radius:var(--owari-radius);overflow:hidden;background:var(--owari-green-soft);}
.owari-gal__main{display:block;width:100%;aspect-ratio:1;object-fit:cover;}
.owari-gal__nav{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;background:rgba(251,247,236,.94);border:1px solid var(--owari-line);color:var(--owari-green);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:3;box-shadow:var(--owari-shadow-sm);opacity:0;transition:.15s;}
.owari-gal__stage:hover .owari-gal__nav{opacity:1;}
.owari-gal__nav:hover{background:var(--owari-green);color:#fff;}
.owari-gal__nav svg{width:20px;height:20px;}
.owari-gal__prev{left:12px;}
.owari-gal__prev svg{transform:rotate(180deg);}
.owari-gal__next{right:12px;}
.owari-gal__thumbs{display:flex;gap:12px;margin-top:18px;overflow-x:auto;padding:2px 2px 10px;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:var(--owari-green) transparent;}
.owari-gal__thumbs::-webkit-scrollbar{height:6px;}
.owari-gal__thumbs::-webkit-scrollbar-thumb{background:var(--owari-green);border-radius:6px;}
.owari-gal__thumb{flex:0 0 84px;width:84px;height:84px;border-radius:10px;border:2px solid var(--owari-line);background-size:cover;background-position:center;cursor:pointer;opacity:.6;transition:.15s;scroll-snap-align:start;padding:0;}
.owari-gal__thumb:hover{opacity:1;}
.owari-gal__thumb.is-active{opacity:1;border-color:var(--owari-green);box-shadow:0 0 0 2px var(--owari-green-soft);}
@media(max-width:560px){.owari-gal__nav{opacity:1;}}
.owari-product .owari-product__title{font-size:clamp(2rem,4vw,3rem);margin:.1em 0 .2em;}
.owari-product .owari-product__price .price{color:var(--owari-green)!important;font-family:var(--owari-font-head)!important;font-size:2rem!important;font-weight:600;}
.owari-product .owari-product__price del{color:var(--owari-ink-soft);font-size:1.1rem;opacity:.7;}
.owari-product .owari-product__excerpt{color:var(--owari-ink-soft);margin:6px 0 4px;}
/* visibilidad de partes de la ficha controlada por el editor (toggles en vivo) */
.owari-product.is-hide-rating .owari-product__rating,
.owari-product.is-hide-wa .owari-product__wa,
.owari-product.is-hide-meta .owari-product__stockline,
.owari-product.is-hide-meta .product_meta,
.owari-product.is-hide-tabs .owari-product__info,
.owari-product.is-hide-related .related.products,
.owari-product.is-hide-related .upsells.products{display:none!important;}
.owari-product__rating{display:flex;align-items:center;gap:8px;margin:4px 0 2px;}
.owari-product__rating .owari-stars{display:inline-flex;gap:2px;}
.owari-product__rating-val{font-weight:600;color:var(--owari-ink);}
.owari-product__rating-count{color:var(--owari-ink-soft);font-size:.9rem;}
.owari-product .owari-product__buy{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:20px 0 8px;}
.owari-product .owari-product__buy form.cart{display:flex;gap:12px;align-items:center;margin:0;flex-wrap:wrap;}
.owari-product .owari-product__wa{width:100%;justify-content:center;max-width:340px;}
.owari-product .product_meta{font-size:.85rem;color:var(--owari-ink-soft);margin-top:14px;}
.owari-product .product_meta a{color:var(--owari-green);}
/* pestañas WC al estilo del tema */
.owari-product .woocommerce-tabs{margin-top:40px;}
.owari-product .woocommerce-tabs ul.tabs{display:flex;gap:26px;flex-wrap:wrap;border-bottom:1.5px solid var(--owari-line);padding:0!important;margin:0 0 24px;list-style:none;}
.owari-product .woocommerce-tabs ul.tabs::before{display:none;}
.owari-product .woocommerce-tabs ul.tabs li{background:none!important;border:none!important;border-radius:0!important;padding:0!important;margin:0!important;}
.owari-product .woocommerce-tabs ul.tabs li::before,.owari-product .woocommerce-tabs ul.tabs li::after{display:none!important;}
.owari-product .woocommerce-tabs ul.tabs li a{display:inline-block;padding:10px 0!important;font-weight:600;color:var(--owari-ink-soft)!important;border-bottom:2px solid transparent;margin-bottom:-2px;}
.owari-product .woocommerce-tabs ul.tabs li.active a{color:var(--owari-green)!important;border-color:var(--owari-green);}
.owari-product .woocommerce-tabs .panel{padding:0;max-width:820px;}
.owari-product .woocommerce-tabs h2{font-size:1.5rem;}
/* relacionados */
.owari-product .related.products>h2,.owari-product .upsells>h2{font-size:1.6rem;margin-bottom:24px;}
@media(max-width:768px){.owari-product .owari-product__top{grid-template-columns:minmax(0,1fr);}}
.owari-pcard .added_to_cart{display:inline-block;margin-top:6px;font-size:.8rem;}
.owari-pcard .button{font-size:.82rem!important;padding:7px 14px!important;}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media(max-width:1024px){
	.owari-products,.owari-blog-grid,.owari-products--4{grid-template-columns:repeat(2,1fr);}
	.owari-footer__cols{grid-template-columns:1fr 1fr;}
	.owari-shop{grid-template-columns:1fr;}
}
@media(max-width:768px){
	body{font-size:16px;}
	/* Cabeceras CORTAS (clásico/split/minimal): desplegable fijo bajo la barra (~64px). */
	.owari-header__nav{position:fixed;inset:64px 0 auto 0;background:var(--owari-card);flex-direction:column;align-items:flex-start;padding:20px 24px;box-shadow:var(--owari-shadow);transform:translateY(-150%);transition:transform .25s;margin:0;z-index:60;}
	.owari-header__nav ul{flex-direction:column;gap:14px;width:100%;padding:0;}
	body.owari-nav-open .owari-header__nav{transform:translateY(0);}
	/* Cabeceras ALTAS (editorial con topbar, tienda con buscador a todo el ancho):
	   el desplegable va DEBAJO de TODA la cabecera (top:100%), no a 64px fijo, para
	   no solaparse con la marca/buscador. */
	.owari-header--editorial .owari-header__nav,
	.owari-header--tienda .owari-header__subnav{position:absolute;inset:auto;top:100%;left:0;right:0;transform:none;display:none;background:var(--owari-card);flex-direction:column;align-items:flex-start;padding:20px 24px;box-shadow:var(--owari-shadow);margin:0;z-index:60;max-height:78vh;overflow-y:auto;}
	.owari-header--editorial .owari-header__nav ul,
	.owari-header--tienda .owari-header__subnav ul{flex-direction:column;gap:14px;width:100%;padding:0;}
	body.owari-nav-open .owari-header--editorial .owari-header__nav,
	body.owari-nav-open .owari-header--tienda .owari-header__subnav{display:flex;transform:none;}
	/* en tienda el buscador ocupa toda la fila; en móvil va debajo de la marca */
	.owari-header--tienda .owari-header__inner{flex-wrap:wrap;}
	.owari-header--tienda .owari-header__search{order:3;flex-basis:100%;max-width:none;margin-top:8px;}
	.owari-nav-toggle{display:flex;margin-left:auto;}
	.is-split .owari-hero__grid,.owari-finca__grid,.is-banda .owari-historia__grid,.owari-product__top,.owari-contact--split .owari-contact__grid,.owari-featured-grid,.owari-blog-layout,.owari-legal,.owari-blog--editorial .owari-bcard--lead{grid-template-columns:1fr;}
	.owari-products,.owari-blog-grid,.owari-products--4,.is-tarjetas .owari-finca__cards{grid-template-columns:1fr 1fr;}
	.is-banda .owari-historia__text{padding:40px 24px;}
}
@media(max-width:480px){
	.owari-products,.owari-blog-grid,.owari-products--4,.is-tarjetas .owari-finca__cards{grid-template-columns:1fr;}
	.owari-pcard--horizontal{flex-direction:row;}
}

/* ============================================================
   RESPONSIVE · separación lateral y anti-desbordamiento (GLOBAL,
   aplica a todas las plantillas, no solo al carrito)
   ============================================================ */
/* evita cualquier scroll horizontal accidental en todo el sitio */
html{overflow-x:hidden;}
/* ningún medio debe exceder el ancho de su contenedor */
img,svg,video,iframe{max-width:100%;}
.owari-gal,.owari-gal__stage,.owari-gal__main{max-width:100%;}

@media(max-width:600px){
	/* separación lateral mínima garantizada en móvil (todas las páginas) */
	.owari-container{padding-left:16px;padding-right:16px;}
	.owari-page{padding-top:32px;padding-bottom:36px;}

	/* compra del producto: cantidad arriba y botón a ancho completo (nunca se corta) */
	.owari-product .owari-product__buy{gap:10px;}
	.owari-product .owari-product__buy form.cart{flex-direction:column;align-items:stretch;width:100%;}
	.owari-product .owari-product__buy form.cart .quantity{align-self:flex-start;}
	.owari-product .owari-product__buy .single_add_to_cart_button,
	.owari-product .owari-product__buy .button,
	.owari-product .owari-product__buy-action,
	.owari-product .owari-product__buy-action .owari-btn,
	.owari-product .owari-product__buy-action .button{width:100%;min-width:0;flex:1 1 100%;justify-content:center;}
	.owari-product .owari-product__wa{max-width:none;width:100%;}

	/* tarjeta de producto: en pantallas estrechas precio y botón se apilan a ancho completo */
	.owari-pcard__foot{flex-wrap:wrap;gap:10px 12px;}
	.owari-pcard:not(.owari-pcard--horizontal) .owari-pcard__action{flex:1 1 100%;}
	.owari-pcard:not(.owari-pcard--horizontal) .owari-pcard__action .button,
	.owari-pcard:not(.owari-pcard--horizontal) .owari-pcard__action .owari-btn{width:100%;justify-content:center;}

	/* contador y orden de WooCommerce en bloque, sin recortes */
	.woocommerce .woocommerce-result-count,
	.woocommerce .woocommerce-ordering{float:none;width:100%;margin:0 0 12px;}
	.woocommerce .woocommerce-ordering select{max-width:100%;}

	/* galería: miniaturas algo más pequeñas para que respiren */
	.owari-gal__thumb{flex-basis:72px;width:72px;height:72px;}

	/* botón flotante de WhatsApp: tamaño y separación cómodos en móvil */
	.owari-wa-float,.owari-floating-whatsapp{right:16px;bottom:16px;}
}
