/*
Theme Name: RENGRA
Template: twentytwentyfive
Description: Tema hijo de Twenty Twenty-Five para Rendimientos Grasos.
Version: 1.0.0
Text Domain: rengra
*/

/* Sin espacio entre encabezado, contenido y pie; el pie siempre abajo */
.wp-site-blocks > *{margin-block-start:0}
.wp-site-blocks{min-height:100vh;display:flex;flex-direction:column}
.wp-site-blocks > main{flex:1 0 auto}
main > .entry-content > .alignfull:first-child{margin-top:0}

/* ===== Encabezado ===== */
.rg-header{position:relative;isolation:isolate;border-bottom:1px solid transparent;transition:border-color .3s ease}
.rg-header-in{min-height:74px}
.rg-header .wp-block-site-logo img{height:40px;width:auto}
.rg-nav{font-size:14px;font-weight:500;letter-spacing:-.005em;gap:24px}
.rg-nav .wp-block-navigation-item__content{color:var(--wp--preset--color--tinta);text-decoration:none}
.rg-nav > .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content,
.rg-nav .wp-block-page-list > .wp-block-navigation-item > .wp-block-navigation-item__content{padding:26px 0}
@media (min-width:600px){
.rg-nav .wp-block-navigation__submenu-container{border:0!important;border-top:2px solid var(--wp--preset--color--vino)!important;border-radius:0 0 10px 10px;overflow:hidden;box-shadow:0 12px 32px rgba(0,0,0,.12);min-width:230px!important;font-weight:400;font-size:14px;letter-spacing:0}
.rg-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content{padding:11px 16px!important}
.rg-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover{background:var(--wp--preset--color--gris);color:var(--wp--preset--color--vino)}
}
.rg-nav .lang-item img{width:22px!important;height:22px!important;border-radius:50%;object-fit:cover}
.rg-nav .lang-item:not(.current-lang) img{opacity:.45}
.rg-nav .lang-item a{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}
.rg-nav .lang-item + .lang-item{margin-left:-18px}
.rg-nav .lang-item a:hover img{opacity:1}
.rg-nav .lang-item img{transition:opacity .2s ease,transform .2s ease}
.rg-nav .lang-item a:active img{transform:scale(.92)}

/* ===== Pie ===== */
.rg-footer{background:var(--wp--preset--color--vino);color:#f1dfe1;font-size:13px;padding-top:18px;padding-bottom:18px}
.rg-footer p{margin:0}
.rg-footer a{color:inherit;text-decoration:none}

/* ===== Hero del inicio ===== */
.rg-hero.wp-block-cover{padding-top:40px;padding-bottom:40px;min-height:360px}
.rg-hero .wp-block-cover__inner-container{max-width:var(--wp--style--global--content-size);margin-left:auto;margin-right:auto}
.rg-hero .wp-block-cover__inner-container > *{margin-left:0!important;margin-right:0!important}
.rg-hero h1{color:#fff;font-size:clamp(28px,4vw,40px);line-height:1.15;letter-spacing:-.015em;max-width:620px;margin:0 0 16px}
.rg-hero h1::before{content:"";display:block;width:56px;height:3px;background:#c0394d;margin-bottom:20px}
.rg-hero p{color:#e9dfe0;font-weight:300;font-size:17px;max-width:540px;margin:0 0 26px}

/* ===== Íconos ===== */
.rg-ventajas{padding-top:56px;padding-bottom:52px;border-bottom:1px solid var(--wp--preset--color--linea)}
.rg-ventajas .wp-block-column{text-align:center}
.rg-icono img{width:92px;height:92px;margin:0 auto 18px;display:block}
.rg-ventajas :is(h2,h3){font-size:16.5px;color:var(--wp--preset--color--vino);margin:0 0 8px}
.rg-ventajas p{font-size:14px;color:#666;line-height:1.55;max-width:230px;margin:0 auto}

/* ===== Tarjetas ===== */
.rg-tarjetas{padding-top:44px;padding-bottom:54px}
.rg-tarjetas .wp-block-column{display:flex;flex-direction:column;gap:0}
.rg-tarjetas .wp-block-image{margin:0}
.rg-tarjetas .wp-block-image img{border-radius:10px 10px 0 0;width:100%;aspect-ratio:655/378;object-fit:cover;display:block}
.rg-cap{background:var(--wp--preset--color--tinta);text-align:center;font-size:14px!important;font-weight:500;margin:0!important;border-radius:0 0 10px 10px;transition:background .2s}
.rg-cap a{display:block;color:#fff;padding:11px 8px;text-decoration:none}
.rg-tarjetas .wp-block-column:hover .rg-cap{background:var(--wp--preset--color--vino)}
.rg-tarjetas p{font-size:14px;text-align:center;color:#666;margin:16px 6px 0}

/* ===== Socio estratégico ===== */
.rg-socio{background:var(--wp--preset--color--gris);padding-top:50px;padding-bottom:50px}
.rg-socio .rg-wrap{border-left:6px solid var(--wp--preset--color--vino);padding-left:28px}
.rg-socio p{font-size:19px;line-height:1.55;color:var(--wp--preset--color--tinta);max-width:780px;margin:0 0 18px}

@media (max-width:781px){.rg-hero h1{font-size:28px}}

/* ===== Barra de título y migas ===== */
.rg-titlebar{background:var(--wp--preset--color--gris)}
.rg-titlebar-in{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;min-height:84px}
.rg-titlebar-in > *{margin:0!important}
.rg-titlebar h1,.rg-banner h1{font-size:24px;margin:0}
.rg-crumbs{font-size:12.5px;color:#6b6b6b}
.rg-crumbs a{color:inherit;text-decoration:none}
.rg-crumbs a:hover{color:var(--wp--preset--color--vino)}
.rg-seccion{padding-top:54px;padding-bottom:54px}

/* ===== Banner de servicios ===== */
.rg-banner.wp-block-cover{min-height:210px;text-align:center}
.rg-banner h1{color:#fff;font-size:38px}
.rg-banner .rg-crumbs{color:#ddd;margin-top:4px}
.rg-lead p{font-size:16px;color:#4d4d4d;max-width:760px;margin:0 0 16px}
.rg-lead .wp-block-buttons{margin-top:24px}

/* ===== Servicios: 4 tarjetas iguales ===== */
.rg-tarjetas-4 .wp-block-image img{aspect-ratio:16/11}

/* ===== Nosotros: línea del tiempo ===== */
.rg-timeline{position:relative;padding-top:46px;padding-bottom:10px;gap:0!important}
.rg-timeline::before,.rg-timeline::after{content:"";position:absolute;left:12.5%;right:12.5%;top:91px;height:3px;background:var(--wp--preset--color--linea)}
.rg-timeline::after{background:var(--wp--preset--color--vino);transform-origin:left}
html:not(.rg-js) .rg-timeline::after,.rg-timeline.is-visible::after{animation:rgCrece 1.2s cubic-bezier(.22,1,.36,1) .15s both}
html.rg-js .rg-timeline:not(.is-visible)::after{transform:scaleX(0)}
@keyframes rgCrece{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes rgCreceY{from{transform:scaleY(0)}to{transform:scaleY(1)}}
.rg-timeline > .wp-block-column{text-align:center;padding:0 14px;position:relative;z-index:1}
.rg-timeline .rg-yr{font-size:22px;font-weight:700;color:var(--wp--preset--color--tinta);line-height:34px;white-space:nowrap;margin:0}
.rg-timeline .rg-yr::after{content:"";display:block;box-sizing:border-box;width:22px;height:22px;border-radius:50%;background:#fff;border:4px solid var(--wp--preset--color--vino);margin:2px auto 16px}
.rg-timeline .rg-hoy .rg-yr::after{background:var(--wp--preset--color--vino)}
.rg-timeline :is(h2,h3){font-size:15px;font-weight:500;color:var(--wp--preset--color--vino);margin:0 0 6px}
.rg-timeline p:not(.rg-yr){font-size:13.5px;color:#666;line-height:1.5;max-width:220px;margin:0 auto}
@media (prefers-reduced-motion:reduce){.rg-timeline::after{animation:none}}
@media (max-width:781px){
  .rg-timeline{padding-left:34px;gap:26px!important}
  .rg-timeline::before,.rg-timeline::after{left:10px;right:auto;top:52px;bottom:16px;width:3px;height:auto}
  .rg-timeline::after{transform-origin:top}
  html.rg-js .rg-timeline:not(.is-visible)::after{transform:scaleY(0)}
  html:not(.rg-js) .rg-timeline::after,.rg-timeline.is-visible::after{animation-name:rgCreceY}
  .rg-timeline > .wp-block-column{text-align:left;padding:0}
  .rg-timeline .rg-yr{line-height:1.2;margin-bottom:4px}
  .rg-timeline .rg-yr::after{position:absolute;left:-34px;top:2px;margin:0}
  .rg-timeline p:not(.rg-yr){margin:0;max-width:none}
}
.rg-nos{gap:48px!important}
.rg-nos > .wp-block-column:first-child{flex:1.25}
.rg-nos p{font-size:16px;color:#4d4d4d}
.rg-foto img{border-radius:10px;width:100%;aspect-ratio:4/5;object-fit:cover}
.rg-senasica{border:1px solid var(--wp--preset--color--linea);border-left:4px solid var(--wp--preset--color--vino);padding:18px 22px;margin-top:26px}
.rg-senasica p{color:var(--wp--preset--color--tinta);margin:0}

/* ===== Mercados ===== */
.rg-mercados{max-width:670px;margin:0 auto;gap:70px!important}
.rg-mercados .wp-block-column{text-align:center}
.rg-circulo img{width:210px;height:210px;margin:0 auto 18px;display:block;transition:filter .2s}
.rg-circulo a:hover img{filter:brightness(.95)}
.rg-mercados :is(h2,h3){font-size:18px;font-weight:500;margin:0}
.rg-mercados :is(h2,h3) a{color:var(--wp--preset--color--tinta);text-decoration:none}

/* ===== Productos ===== */
.rg-prod-grid{gap:34px!important}
.rg-prod-uno .rg-prod{max-width:560px}
.rg-prod{border:1px solid var(--wp--preset--color--linea);border-radius:10px;padding:28px 28px 30px;height:100%;box-sizing:border-box}
.rg-prod h2{font-size:26px;font-weight:500;color:var(--wp--preset--color--vino);margin:0 0 14px}
.rg-prod .rg-etiqueta{font-size:13.5px;font-weight:500;color:#6b6b6b;margin:0 0 12px;letter-spacing:0}
ul.rg-lista{list-style:none;padding:0;margin:0 0 24px}
ul.rg-lista li{position:relative;padding:7px 0 7px 20px;border-bottom:1px solid var(--wp--preset--color--linea);color:var(--wp--preset--color--tinta);font-weight:500;font-size:15.5px}
ul.rg-lista li:last-child{border-bottom:0}
ul.rg-lista li::before{content:"";position:absolute;left:0;top:50%;width:8px;height:8px;background:var(--wp--preset--color--vino);transform:translateY(-50%)}
.rg-pres{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:16px;margin-bottom:24px}
.rg-pres .wp-block-image{margin:0}
.rg-pres .wp-block-image img{height:118px;width:100%;object-fit:contain;background:#f7f7f7;border-radius:8px;padding:10px;box-sizing:border-box}
.rg-pres figcaption{font-size:13px;color:var(--wp--preset--color--tinta);text-align:center;margin-top:7px}

/* ===== Contacto ===== */
.rg-contacto{gap:50px!important}
.rg-contacto > .wp-block-column:last-child{flex:1.4}
.rg-contacto h2{font-size:20px;margin:0 0 8px}
.rg-mail a{font-weight:500;font-size:17px;text-decoration:none}
.rg-hint{font-size:13.5px;color:#6b6b6b;margin:0}
.wpcf7 label{display:block;font-size:13.5px;color:var(--wp--preset--color--tinta);margin:16px 0 5px}
.wpcf7 .rg-req{color:var(--wp--preset--color--vino);font-weight:700}
.wpcf7 input[type=text],.wpcf7 input[type=email],.wpcf7 textarea{width:100%;border:1px solid var(--wp--preset--color--linea);background:#fafafa;padding:10px 12px;font:inherit;margin-top:5px;box-sizing:border-box}
.wpcf7 textarea{min-height:120px;resize:vertical;height:auto}
.wpcf7 input[type=submit]{background:var(--wp--preset--color--tinta);color:#fff;border:0;border-radius:0;font:500 13.5px 'Rubik',sans-serif;padding:11px 22px;margin-top:20px;cursor:pointer}
.wpcf7 input[type=submit]:hover{background:var(--wp--preset--color--vino)}

/* ===== Aviso de privacidad ===== */
.rg-legal{max-width:820px;margin-left:auto!important;margin-right:auto!important}
.rg-legal h2{font-size:18px;margin:34px 0 10px}
.rg-legal p{color:#4d4d4d}
.rg-legal ul.rg-lista li{font-weight:400;font-size:15px}
ul.rg-opciones{list-style:none;padding:0}
ul.rg-opciones li::before{content:"○ ";color:var(--wp--preset--color--vino)}
.rg-tabla{margin:18px 0}
.rg-tabla table{font-size:14px}
.rg-tabla th{background:var(--wp--preset--color--gris);text-align:left}
.rg-tabla th,.rg-tabla td{border:1px solid var(--wp--preset--color--linea);padding:10px 12px;vertical-align:top}
.rg-descarga{margin-top:30px}


/* =====================================================================
   Movimiento y microinteracciones
   - Breves (150–700 ms) y con curva suave; nunca bloquean la interacción.
   - Solo en dispositivos con puntero para los hover.
   - Todo se apaga con "Reducir movimiento" del sistema.
   ===================================================================== */
:root{--rg-ease:cubic-bezier(.22,1,.36,1);--rg-rapido:.2s;--rg-medio:.45s;--rg-lento:.7s}

/* Encabezado fijo con material translúcido */
.wp-site-blocks > header{position:sticky;top:var(--wp-admin--admin-bar--height,0px);z-index:100}
.rg-header::before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(255,255,255,.82);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px)}
.rg-header.is-scrolled{border-bottom-color:var(--wp--preset--color--linea)}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.rg-header::before{background:#fff}}
@media (prefers-reduced-transparency:reduce){.rg-header::before{background:#fff;backdrop-filter:none;-webkit-backdrop-filter:none}}

/* Menú en celular: panel sólido que entra con un fundido */
.rg-nav .wp-block-navigation__responsive-container.is-menu-open{background:#fff!important;animation:rgFunde var(--rg-rapido) ease both}
@keyframes rgFunde{from{opacity:0}to{opacity:1}}
.rg-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{align-items:flex-start!important;padding-top:24px}
.rg-nav .is-menu-open .wp-block-navigation__container,.rg-nav .is-menu-open .wp-block-page-list{align-items:flex-start!important;gap:4px!important;width:100%}
.rg-nav .is-menu-open .wp-block-navigation-item{align-items:flex-start!important;width:100%}
.rg-nav .is-menu-open .wp-block-page-list > .wp-block-navigation-item > .wp-block-navigation-item__content{font-size:22px;font-weight:600;letter-spacing:-.01em;padding:8px 0!important}
.rg-nav .is-menu-open .wp-block-navigation__submenu-container{padding:0 0 8px 14px!important;gap:0!important;border-left:2px solid var(--wp--preset--color--linea)!important}
.rg-nav .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content{font-size:16px;font-weight:400;color:var(--wp--preset--color--texto);padding:8px 0!important}
.rg-nav .is-menu-open .current-menu-item > .wp-block-navigation-item__content{color:var(--wp--preset--color--vino)}
.rg-nav .is-menu-open .lang-item{width:auto!important;margin-left:-11px!important}

/* Menú de escritorio: subrayado que crece desde el centro */
@media (min-width:600px){
.rg-nav .wp-block-page-list > .wp-block-navigation-item > .wp-block-navigation-item__content{position:relative}
.rg-nav .wp-block-page-list > .wp-block-navigation-item > .wp-block-navigation-item__content::after{content:"";position:absolute;left:0;right:0;bottom:18px;height:2px;background:var(--wp--preset--color--vino);transform:scaleX(0);transition:transform var(--rg-medio) var(--rg-ease)}
.rg-nav .wp-block-page-list > .wp-block-navigation-item:hover > .wp-block-navigation-item__content::after,
.rg-nav .wp-block-page-list > .wp-block-navigation-item > .wp-block-navigation-item__content:focus-visible::after,
.rg-nav .wp-block-page-list > .current-menu-item > .wp-block-navigation-item__content::after,
.rg-nav .wp-block-page-list > .current-menu-ancestor > .wp-block-navigation-item__content::after{transform:scaleX(1)}
/* Submenú: aparece deslizándose */
.rg-nav .wp-block-navigation__submenu-container{transform:translateY(6px);transition:opacity var(--rg-rapido) ease,transform var(--rg-medio) var(--rg-ease)!important}
.rg-nav .has-child:hover > .wp-block-navigation__submenu-container,.rg-nav .has-child:focus-within > .wp-block-navigation__submenu-container{transform:none}
.rg-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content{transition:background var(--rg-rapido) ease,color var(--rg-rapido) ease}
}
/* Área de toque de 44px para abrir/cerrar el menú (sin cambiar cuándo se muestra) */
.rg-nav .wp-block-navigation__responsive-container-open,.rg-nav .wp-block-navigation__responsive-container-close{min-width:44px;min-height:44px;align-items:center;justify-content:center}

/* Botones: respuesta al presionar */
.wp-element-button,.wp-block-button__link,.wpcf7 input[type=submit]{transition:background-color var(--rg-rapido) ease,transform .15s ease,box-shadow var(--rg-rapido) ease}
.wp-element-button:active,.wp-block-button__link:active,.wpcf7 input[type=submit]:active{transform:scale(.97)}
@media (hover:hover){.wp-block-button__link:hover,.wpcf7 input[type=submit]:hover{box-shadow:0 6px 16px rgba(122,33,46,.22)}}

/* Foco visible para teclado */
:where(a,button,input,textarea,select,.wp-block-button__link):focus-visible{outline:2px solid var(--wp--preset--color--vino);outline-offset:3px;border-radius:2px}

/* Tarjetas: la foto se acerca, la barra cambia de color */
.rg-tarjetas .wp-block-image{overflow:hidden;border-radius:10px 10px 0 0}
.rg-tarjetas .wp-block-image img{transition:transform var(--rg-lento) var(--rg-ease)}
.rg-tarjetas .wp-block-column:focus-within .rg-cap{background:var(--wp--preset--color--vino)}
@media (hover:hover){
  .rg-tarjetas .wp-block-column:hover .wp-block-image img{transform:scale(1.05)}
  .rg-icono img,.rg-circulo img{transition:transform var(--rg-medio) var(--rg-ease)}
  .rg-ventajas .wp-block-column:hover .rg-icono img{transform:translateY(-4px) scale(1.04)}
  .rg-mercados .wp-block-column:hover .rg-circulo img{transform:scale(1.04)}
  .rg-mercados .wp-block-column:hover h3 a{color:var(--wp--preset--color--vino)}
  .rg-pres .wp-block-image img{transition:transform var(--rg-medio) var(--rg-ease)}
  .rg-pres .wp-block-image:hover img{transform:scale(1.04)}
}
.rg-mercados :is(h2,h3) a{transition:color var(--rg-rapido) ease}
.rg-mail a,.rg-footer a,.rg-crumbs a{transition:color var(--rg-rapido) ease,opacity var(--rg-rapido) ease}
.rg-footer a:hover{opacity:.75}

/* Formulario: foco claro */
.wpcf7 input[type=text],.wpcf7 input[type=email],.wpcf7 textarea{transition:border-color var(--rg-rapido) ease,box-shadow var(--rg-rapido) ease,background-color var(--rg-rapido) ease;border-radius:6px}
.wpcf7 input[type=text]:focus,.wpcf7 input[type=email]:focus,.wpcf7 textarea:focus{outline:none;background:#fff;border-color:var(--wp--preset--color--vino);box-shadow:0 0 0 3px rgba(122,33,46,.15)}

/* Entrada del hero y de los títulos al cargar */
@keyframes rgSube{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes rgRaya{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.rg-hero .wp-block-cover__inner-container > *{animation:rgSube var(--rg-lento) var(--rg-ease) both}
.rg-hero .wp-block-cover__inner-container > :nth-child(2){animation-delay:.08s}
.rg-hero .wp-block-cover__inner-container > :nth-child(3){animation-delay:.16s}
.rg-hero h1::before{transform-origin:left;animation:rgRaya var(--rg-lento) var(--rg-ease) .25s both}
.rg-banner .wp-block-cover__inner-container > *,.rg-titlebar-in > *{animation:rgSube var(--rg-medio) var(--rg-ease) both}
.rg-banner .wp-block-cover__inner-container > :nth-child(2),.rg-titlebar-in > :nth-child(2){animation-delay:.06s}

/* Entrada al hacer scroll (la activa rengra.js; sin JS todo se ve normal) */
html.rg-js .rg-reveal{opacity:0;transform:translateY(24px);transition:opacity var(--rg-lento) var(--rg-ease),transform var(--rg-lento) var(--rg-ease);transition-delay:calc(var(--rg-i,0) * 80ms)}
html.rg-js .rg-reveal.is-visible,html.rg-listo .rg-reveal{opacity:1;transform:none}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition-duration:.01ms!important;transition-delay:0s!important;scroll-behavior:auto!important}
  html.rg-js .rg-reveal{opacity:1;transform:none}
  .rg-timeline::after{transform:none!important}
}
