/* Avícola Gaby · estilos compartidos (ver V2/DESIGN.md) */
:root{
  --bg:#FFFFFF; --surface:#FFFFFF; --surface-alt:#EDF5F4; --surface-hover:#F5FAF9; --ink-bg:#062F31;
  --border:#D9E6E4; --border-hover:#AFC8C5;
  --text:#062F31; --text-secondary:#36504F; --text-tertiary:#557071; --text-on-dark:#FFFFFF; --text-on-dark-2:#B9D3D1;
  --accent:#0B6B70; --accent-hover:#08585C; --maiz:#F2C230; --maiz-hover:#E2B11C; --crest:#D3261C; --ember:#E8791C;
  --sky:#E3F2F6; --leaf:#7DB84A; --sun-core:#FFE79A;
  --bg-rgb:255,255,255; --accent-rgb:11,107,112; --maiz-rgb:242,194,48; --ink-rgb:6,47,49; --white-rgb:255,255,255;
  --success:#1F8A5B; --error:#C8322A; --warning:#C96A12;

  --f-display:"Big Shoulders Display","Arial Narrow","Roboto Condensed",sans-serif;
  --f-body:"Hanken Grotesk","Segoe UI",system-ui,sans-serif;

  --gut:clamp(16px,4vw,40px); --max:1240px; --sec:clamp(80px,10vw,136px);
  --r-photo:22px; --r-band:32px;
  --ease:cubic-bezier(.2,.8,.2,1);
  --sh-raised:0 24px 48px -28px rgba(var(--ink-rgb),.4);
  color-scheme:light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:76px;background:var(--ink-bg)}
body{background:var(--bg);color:var(--text-secondary);font:400 1.0625rem/1.65 var(--f-body);-webkit-font-smoothing:antialiased;overflow-x:hidden}
h1,h2,h3{margin:0;color:var(--text);text-wrap:balance}
p{margin:0}
a{color:inherit}
img{display:block;max-width:100%}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--maiz);outline-offset:3px;border-radius:6px}
.wrap{max-width:var(--max);margin-inline:auto;padding-inline:var(--gut)}

.h2{font:800 clamp(2.6rem,5.4vw,4.5rem)/.92 var(--f-display);color:var(--text)}
.h3{font:700 1.25rem/1.25 var(--f-body);letter-spacing:-.01em}
.lead{font-size:clamp(1.125rem,1.5vw,1.3rem);font-weight:500;line-height:1.55;max-width:56ch}
.sec{padding-block:var(--sec)}
.sec-alt{background:var(--surface-alt)}
.head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px 64px;align-items:end;margin-bottom:clamp(36px,5vw,64px)}
@media (max-width:860px){.head{grid-template-columns:1fr}}

/* Buttons + links */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 1.5em;border-radius:999px;font:600 1rem/1 var(--f-body);text-decoration:none;border:2px solid transparent;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease,transform .3s var(--ease)}
.btn-primary{background:var(--accent);color:var(--text-on-dark)}
.btn-primary:hover{background:var(--accent-hover)}
.btn-maiz{background:var(--maiz);color:var(--ink-bg)}
.btn-maiz:hover{background:var(--maiz-hover)}
.btn-ink{background:var(--ink-bg);color:var(--text-on-dark)}
.btn-ink:hover{background:var(--accent)}
.btn-ghost{background:transparent;color:var(--text);border-color:var(--border-hover)}
.btn-ghost:hover{border-color:var(--accent);color:var(--accent)}
.btn:active{transform:scale(.97)}
.btn[disabled]{opacity:.45;cursor:not-allowed}
.link{text-decoration:none;background:linear-gradient(currentColor,currentColor) 0 100%/0 2px no-repeat;transition:background-size .3s ease,color .2s ease}
.link:hover,.link:focus-visible,.link[aria-current="true"]{background-size:100% 2px}

/* Photos */
.photo{position:relative;margin:0;overflow:hidden;border-radius:var(--r-photo);background:var(--surface-alt);min-width:0}
.photo img{width:100%;height:100%;object-fit:cover}
.ref{position:absolute;left:12px;bottom:12px;z-index:3;padding:6px 10px;border-radius:999px;background:rgba(var(--ink-rgb),.75);color:var(--text-on-dark);font:500 .75rem/1 var(--f-body);pointer-events:none}

/* NAV */
.nav{position:fixed;inset:0 0 auto 0;z-index:50;padding-top:env(safe-area-inset-top,0px);transition:background .3s ease,box-shadow .3s ease}
.nav.is-scrolled{background:rgba(var(--bg-rgb),.9);backdrop-filter:saturate(1.3) blur(12px);-webkit-backdrop-filter:saturate(1.3) blur(12px);box-shadow:0 1px 0 var(--border)}
.nav-inner{display:flex;align-items:center;gap:22px;height:76px;transition:height .3s ease}
.nav.is-scrolled .nav-inner{height:64px}
.brand{display:flex;align-items:center;gap:12px}
.brand a{text-decoration:none}
.brand b{display:block;font:800 1.45rem/1 var(--f-display);color:var(--text)}
.brand small{display:block;margin-top:2px;font:500 .8rem/1.2 var(--f-body);color:var(--text-tertiary)}
.rooster{position:relative;flex:none;width:48px;height:48px;padding:0;border:0;border-radius:50%;background:var(--surface);box-shadow:0 0 0 1px var(--border);cursor:pointer;transition:transform .3s var(--ease)}
.rooster:hover{transform:rotate(-10deg) scale(1.06)}
.rooster img{width:100%;height:100%;border-radius:50%;object-fit:contain}
.nav-links{display:flex;gap:26px;margin-left:auto}
.nav-links a{font-weight:600;font-size:.98rem;color:var(--text);padding:.5em 0}
.nav .btn{min-height:44px}
.menu-btn{display:none;margin-left:auto;width:44px;height:44px;border-radius:12px;border:1px solid var(--border-hover);background:var(--surface);color:var(--text);cursor:pointer;place-items:center}
.bubble{position:absolute;left:54px;top:-4px;white-space:nowrap;padding:8px 12px;border-radius:14px 14px 14px 4px;background:var(--maiz);color:var(--ink-bg);font:800 1rem/1 var(--f-display);pointer-events:none;animation:bubble 1.4s var(--ease) forwards}
@keyframes bubble{0%{opacity:0;transform:translateY(6px) scale(.8)}15%,80%{opacity:1;transform:none}100%{opacity:0;transform:translateY(-8px)}}
.spark{position:absolute;left:50%;top:50%;width:7px;height:7px;border-radius:50%;background:var(--maiz);pointer-events:none;animation:spark .8s var(--ease) forwards}
.spark:nth-child(3n){background:var(--crest)}
@keyframes spark{from{transform:translate(-50%,-50%)}to{transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y))) scale(.2);opacity:0}}
@media (max-width:1080px){
  .nav-links{display:none;position:absolute;left:var(--gut);right:var(--gut);top:calc(100% + 8px);flex-direction:column;gap:0;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:8px;box-shadow:var(--sh-raised)}
  .nav-links.open{display:flex}
  .nav-links a{padding:.85em .75em}
  .menu-btn{display:grid}
  .nav .btn{display:none}
}

/* Nav sobre la foto del hero */
.nav:not(.is-scrolled) .brand b{color:var(--text-on-dark)}
.nav:not(.is-scrolled) .brand small{color:var(--text-on-dark-2)}
.nav:not(.is-scrolled) .menu-btn{background:transparent;color:var(--text-on-dark);border-color:rgba(var(--white-rgb),.4)}
@media (min-width:1081px){.nav:not(.is-scrolled) .nav-links a{color:var(--text-on-dark)}.nav:not(.is-scrolled) .btn-primary{background:var(--maiz);color:var(--ink-bg)}}

/* HERO · foto con sombra de marca */
.hero{position:relative;isolation:isolate;overflow:hidden;background:var(--ink-bg);min-height:min(86vh,780px);display:flex;align-items:center;padding-block:calc(76px + clamp(40px,6vw,72px)) clamp(120px,14vw,170px)}
.hero-bg{position:absolute;inset:0;z-index:-2;margin:0}
.hero-bg img{width:100%;height:100%;object-fit:cover;object-position:60% 50%;animation:heroZoom 2.4s var(--ease) both}
@keyframes heroZoom{from{transform:scale(1.1)}to{transform:scale(1.02)}}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(var(--ink-rgb),.94) 0%,rgba(var(--ink-rgb),.82) 38%,rgba(var(--ink-rgb),.35) 72%,rgba(var(--ink-rgb),.15) 100%),linear-gradient(0deg,rgba(var(--ink-rgb),.7) 0%,rgba(var(--ink-rgb),0) 40%)}
.hero > .ref{left:auto;right:var(--gut);bottom:clamp(96px,12vw,140px)}
.hero-inner{width:100%;position:relative}
.hero-head{max-width:780px}
.mini-seal{position:absolute;right:var(--gut);top:50%;width:clamp(170px,17vw,230px);aspect-ratio:1;margin-top:calc(clamp(170px,17vw,230px) / -2);animation:logoPop .9s cubic-bezier(.34,1.56,.64,1) .6s both}
.mini-seal::before{content:"";position:absolute;inset:-6%;border-radius:50%;background:rgba(var(--ink-rgb),.35);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);box-shadow:inset 0 0 0 1px rgba(var(--white-rgb),.18)}
.mini-seal svg{position:absolute;inset:0;width:100%;height:100%;animation:ringSpin 40s linear infinite}
.mini-seal text{font:700 9.4px var(--f-body);letter-spacing:.16em;fill:var(--maiz)}
.mini-seal button{position:absolute;inset:16%;padding:0;border:0;border-radius:50%;background:var(--surface);cursor:pointer;box-shadow:0 12px 30px -10px rgba(var(--ink-rgb),.8)}
.mini-seal img{width:100%;height:100%;border-radius:50%;object-fit:contain}
.mini-seal .bubble{left:auto;right:70%;top:-14px}
@keyframes logoPop{from{opacity:0;transform:scale(.4) rotate(-25deg)}}
@keyframes ringSpin{to{transform:rotate(-360deg)}}
.h1{font:800 clamp(3.4rem,8vw,7.5rem)/.88 var(--f-display);letter-spacing:-.005em;color:var(--text-on-dark)}
.h1 .ln{display:block;overflow:hidden;padding-bottom:.04em}
.h1 .ln > span{display:inline-block;animation:lineUp .9s var(--ease) both;animation-delay:calc(var(--i)*110ms + 150ms)}
@keyframes lineUp{from{transform:translateY(102%)}to{transform:none}}
.hero-copy{max-width:780px}
.hero .lead{color:var(--text-on-dark-2);max-width:46ch;margin-top:clamp(20px,2.6vw,30px);animation:fadeUp .8s var(--ease) .55s both}
.hero-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px;animation:fadeUp .8s var(--ease) .7s both}
.btn-ghost-light{background:transparent;color:var(--text-on-dark);border-color:rgba(var(--white-rgb),.5)}
.btn-ghost-light:hover{border-color:var(--maiz);color:var(--maiz)}
@keyframes fadeUp{from{opacity:0;transform:translateY(16px)}}
@media (max-width:1080px){.hero-head,.hero-copy{max-width:none;padding-right:clamp(150px,19vw,200px)}.mini-seal{top:0;margin-top:-10px;width:clamp(120px,16vw,170px)}}
@media (max-width:720px){.hero-head,.hero-copy{padding-right:0}.mini-seal{position:relative;right:auto;top:auto;margin:0 0 18px;width:104px}.hero::before{background:linear-gradient(180deg,rgba(var(--ink-rgb),.88) 0%,rgba(var(--ink-rgb),.8) 60%,rgba(var(--ink-rgb),.6) 100%)}}

/* HOY · tarjeta del día */
.today-wrap{position:relative;z-index:5;margin-top:calc(clamp(80px,10vw,120px) * -1)}
.today{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(0,.9fr);gap:clamp(18px,3vw,40px);align-items:center;background:var(--surface);border-radius:var(--r-photo);padding:clamp(18px,2.6vw,30px);box-shadow:0 30px 60px -30px rgba(var(--ink-rgb),.45),0 0 0 1px var(--border)}
.datepage{width:96px;border-radius:16px;overflow:hidden;text-align:center;box-shadow:0 0 0 1px var(--border);background:var(--surface)}
.datepage span{display:block;background:var(--crest);color:var(--text-on-dark);font:700 .85rem/1 var(--f-body);padding:7px 0}
.datepage b{display:block;font:900 3.2rem/1 var(--f-display);color:var(--text);padding:8px 0 2px}
.datepage small{display:block;font:600 .85rem/1 var(--f-body);color:var(--text-tertiary);padding-bottom:10px}
.today h2{font:800 clamp(1.7rem,2.8vw,2.4rem)/1 var(--f-display);color:var(--text)}
.today p{margin-top:8px;font-size:.98rem}
.yearbar{min-width:0}
.yearbar .track{position:relative;height:10px;border-radius:999px;background:var(--surface-alt);box-shadow:inset 0 0 0 1px var(--border)}
.yearbar .fill{position:absolute;left:0;top:0;bottom:0;border-radius:999px;background:var(--accent);width:var(--pct,0%);animation:fillIn 1.4s var(--ease) .9s both}
.yearbar .dot{position:absolute;top:50%;left:var(--pct,0%);width:20px;height:20px;border-radius:50%;background:var(--maiz);box-shadow:0 0 0 3px var(--surface),0 0 0 4px var(--ink-bg);transform:translate(-50%,-50%);animation:dotIn .5s var(--ease) 2.1s both}
@keyframes fillIn{from{width:0}}
@keyframes dotIn{from{transform:translate(-50%,-50%) scale(0)}}
.yearbar .labels{display:flex;justify-content:space-between;gap:8px;margin-top:10px;font-size:.85rem;color:var(--text-tertiary)}
.yearbar .labels strong{color:var(--text)}
@media (max-width:900px){.today{grid-template-columns:auto minmax(0,1fr)}.yearbar{grid-column:1/-1}}
@media (max-width:420px){.datepage{width:78px}.datepage b{font-size:2.6rem}}
.after-today{height:clamp(24px,4vw,48px)}

/* NOSOTROS */
.about{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(32px,6vw,88px);align-items:start}
.about .photo{aspect-ratio:4/5;position:sticky;top:96px}
.about .lead{margin:24px 0 16px}
.history{list-style:none;margin:40px 0 0;padding:0}
.history li{display:grid;grid-template-columns:150px minmax(0,1fr);gap:24px;padding-block:22px;border-top:1px solid var(--border-hover)}
.history li:last-child{border-bottom:1px solid var(--border-hover)}
.history .yr{font:800 2.25rem/1 var(--f-display);color:var(--accent)}
.history p{margin-top:6px;font-size:.98rem}
@media (max-width:900px){.about{grid-template-columns:1fr}.about .photo{position:relative;top:0;aspect-ratio:16/11}.history li{grid-template-columns:1fr;gap:6px}}

/* MISIÓN / VISIÓN */
.ink{background:var(--ink-bg);color:var(--text-on-dark-2)}
.mv{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(32px,6vw,96px)}
.mv h3{color:var(--maiz);font:800 1.6rem/1 var(--f-display)}
.mv p{margin-top:18px;font:500 clamp(1.3rem,2.2vw,1.75rem)/1.4 var(--f-body);color:var(--text-on-dark);letter-spacing:-.01em;max-width:30ch}
.values{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:clamp(48px,7vw,88px);padding-top:28px;border-top:1px solid rgba(var(--white-rgb),.16)}
.values h4{margin:0;color:var(--text-on-dark);font:700 1.05rem/1.3 var(--f-body)}
.values p{margin-top:6px;font-size:.95rem}
@media (max-width:860px){.mv{grid-template-columns:1fr}.values{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:440px){.values{grid-template-columns:1fr}}

/* PRODUCTOS */
.bento{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:clamp(210px,20vw,270px);gap:14px}
.bento .xl{grid-column:span 2;grid-row:span 2}
.bento .wide{grid-column:span 2}
.tile{position:relative;overflow:hidden;border-radius:var(--r-photo);background:var(--ink-bg);display:flex;flex-direction:column;justify-content:flex-end;min-width:0}
.tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.tile::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(var(--ink-rgb),0) 35%,rgba(var(--ink-rgb),.9) 100%)}
.tile::before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;opacity:0;transition:opacity .3s ease;background:radial-gradient(380px circle at var(--mx,50%) var(--my,50%),rgba(var(--maiz-rgb),.28),transparent 60%)}
.tile:hover::before{opacity:1}
.tile:hover img{transform:scale(1.05)}
.tile .body{position:relative;z-index:3;padding:clamp(20px,2.4vw,30px)}
.tile h3{color:var(--text-on-dark);font:800 clamp(1.9rem,2.8vw,2.6rem)/.95 var(--f-display)}
.tile.xl h3{font-size:clamp(2.6rem,4.4vw,4rem)}
.tile p{color:var(--text-on-dark-2);margin-top:8px;max-width:40ch;font-size:.98rem}
.tile .spec{display:inline-block;margin-bottom:12px;padding:6px 11px;border-radius:999px;background:var(--maiz);color:var(--ink-bg);font:600 .8rem/1 var(--f-body)}
.tile .ref{left:auto;right:12px;top:12px;bottom:auto}
@media (max-width:1080px){.bento{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.bento{grid-template-columns:1fr;grid-auto-rows:auto}.bento .xl,.bento .wide{grid-column:auto;grid-row:auto}.tile{min-height:300px}.tile.xl{min-height:380px}}

/* CALIDAD */
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px;position:relative;--p:0}
.steps::before,.steps::after{content:"";position:absolute;left:0;right:0;top:64px;height:3px;border-radius:3px}
.steps::before{background:var(--border-hover)}
.steps::after{background:var(--accent);transform-origin:left;transform:scaleX(var(--p))}
.step{min-width:0;position:relative}
.step .n{display:block;font:900 3.5rem/1 var(--f-display);color:var(--border-hover);transition:color .4s ease;height:56px}
.step::after{content:"";position:absolute;left:0;top:58px;width:15px;height:15px;border-radius:50%;background:var(--surface);box-shadow:inset 0 0 0 3px var(--border-hover);transition:background .4s ease,box-shadow .4s ease;z-index:1}
.step.on .n{color:var(--accent)}
.step.on::after{background:var(--accent);box-shadow:inset 0 0 0 3px var(--accent)}
.step h3{margin-top:40px}
.step p{margin-top:8px;font-size:.97rem}
@media (max-width:900px){
  .steps{grid-template-columns:1fr;gap:28px;padding-left:36px}
  .steps::before,.steps::after{left:6px;right:auto;top:8px;bottom:8px;width:3px;height:auto}
  .steps::after{transform-origin:top;transform:scaleY(var(--p))}
  .step::after{left:-36px;top:20px}
  .step .n{font-size:2.6rem;height:auto}
  .step h3{margin-top:6px}
}
.gallery-h{margin:clamp(64px,8vw,104px) 0 24px;font:800 clamp(2rem,3.4vw,2.8rem)/1 var(--f-display)}
.gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:clamp(180px,17vw,230px);gap:14px}
.gallery .xl{grid-column:span 2;grid-row:span 2}
.gallery .wide{grid-column:span 2}
.gallery figcaption{position:absolute;left:12px;top:12px;z-index:3;padding:7px 12px;border-radius:999px;background:rgba(var(--white-rgb),.94);color:var(--text);font:600 .85rem/1 var(--f-body)}
@media (max-width:860px){.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.gallery{grid-template-columns:1fr;grid-auto-rows:220px}.gallery .xl,.gallery .wide{grid-column:auto;grid-row:auto}}

/* CLIENTES */
.clients{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.client{padding:4px 28px 8px;border-left:1px solid var(--border-hover);min-width:0}
.client:first-child{padding-left:0;border-left:0}
.client svg{color:var(--accent)}
.client h3{margin:22px 0 8px}
.client p{font-size:.97rem}
@media (max-width:1000px){.clients{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:36px}.client:nth-child(3){padding-left:0;border-left:0}}
@media (max-width:540px){.clients{grid-template-columns:1fr}.client{padding:24px 0 0;border-left:0;border-top:1px solid var(--border-hover)}.client:first-child{border-top:0;padding-top:0}}

/* SOSTENIBILIDAD */
.sus{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,88px);align-items:center}
.sus .photo{aspect-ratio:4/5;max-height:640px}
.sus .lead{margin-top:22px}
.pillars{list-style:none;margin:32px 0 0;padding:0}
.pillars li{display:grid;grid-template-columns:44px minmax(0,1fr);gap:18px;padding-block:20px;border-top:1px solid var(--border-hover)}
.pillars .dot{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--surface);color:var(--accent)}
.pillars p{margin-top:2px;font-size:.97rem}
@media (max-width:900px){.sus{grid-template-columns:1fr}.sus .photo{aspect-ratio:16/11}}

/* EMPLEO */
.careers{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(24px,4vw,56px);align-items:center;background:var(--maiz);border-radius:var(--r-band);padding:clamp(28px,5vw,64px)}
.careers h2{color:var(--ink-bg)}
.careers p{color:var(--ink-bg);margin-top:16px;max-width:46ch;font-size:1.1rem}
.careers .btn{margin-top:28px}
.careers .photo{aspect-ratio:16/11}
@media (max-width:860px){.careers{grid-template-columns:1fr}}

/* CONTACTO */
.contact{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(32px,6vw,72px)}
.contact .lead{margin-top:22px}
.info{list-style:none;margin:32px 0 0;padding:0}
.info li{display:grid;grid-template-columns:44px minmax(0,1fr);gap:16px;align-items:center;padding-block:16px;border-top:1px solid var(--border)}
.info li:last-child{border-bottom:1px solid var(--border)}
.info .ico{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--surface-alt);color:var(--accent)}
.info small{display:block;font-size:.85rem;color:var(--text-tertiary)}
.info span{display:block;font-weight:700;color:var(--text);overflow-wrap:anywhere}
form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-self:start;background:var(--surface-alt);border-radius:var(--r-photo);padding:clamp(22px,3.5vw,40px)}
.field{display:grid;gap:6px;min-width:0}
.field.full{grid-column:1/-1}
.field label{font:600 .9rem/1.2 var(--f-body);color:var(--text)}
.field input,.field select,.field textarea{width:100%;min-height:48px;padding:.75em 1em;border-radius:12px;border:1px solid var(--border);background:var(--surface);color:var(--text);font:400 1rem var(--f-body);transition:border-color .2s,box-shadow .2s}
.field input:hover,.field select:hover,.field textarea:hover{border-color:var(--border-hover)}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px rgba(var(--accent-rgb),.18)}
.field [aria-invalid="true"]{border-color:var(--error)}
.field textarea{min-height:120px;resize:vertical}
.err{font-size:.85rem;color:var(--error);min-height:1.1em}
.form-foot{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between}
.form-foot small{color:var(--text-tertiary);font-size:.9rem}
.ok{grid-column:1/-1;padding:14px 16px;border-radius:12px;background:var(--surface);color:var(--text)}
@media (max-width:900px){.contact{grid-template-columns:1fr}}
@media (max-width:540px){form{grid-template-columns:1fr}}

/* FOOTER */
footer{background:var(--ink-bg);color:var(--text-on-dark-2);padding-block:72px 28px;margin-top:var(--sec)}
.f-cols{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:32px}
.f-cols > *{min-width:0}
footer h4{margin:0 0 14px;font:800 1.3rem/1 var(--f-display);color:var(--maiz)}
footer ul{list-style:none;margin:0;padding:0;display:grid;gap:10px;font-size:.97rem}
footer a{text-decoration:none}
footer a:hover{color:var(--text-on-dark);text-decoration:underline}
footer .brand b{color:var(--text-on-dark)}
footer .brand small{color:var(--text-on-dark-2)}
.f-about{margin-top:18px;max-width:34ch;font-size:.97rem}
.thanks{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:56px;padding:20px;border-radius:16px;border:1px dashed rgba(var(--white-rgb),.25);color:var(--text-on-dark);text-align:center;font-weight:600}
.thanks img{width:40px;height:40px;flex:none;border-radius:50%;background:var(--surface);object-fit:contain}
.thanks.hop img{animation:hop .8s var(--ease) 2}
@keyframes hop{40%{transform:translateY(-10px) rotate(-8deg)}}
.legal{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 24px;margin-top:28px;padding-top:20px;border-top:1px solid rgba(var(--white-rgb),.12);font-size:.85rem}
@media (max-width:900px){.f-cols{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.f-cols{grid-template-columns:1fr}}

.magnet{transition:transform .35s var(--ease)}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  html{scroll-behavior:auto}
}

/* ===== V5 · estructura tipo portal corporativo ===== */
html,body{margin:0;padding:0}
body{min-height:100%}
.menu-extra{display:none}
.nav-links a[aria-current="page"]{background-size:100% 2px}
@media (max-width:1080px){
  .menu-extra{display:block;border-top:1px solid var(--border);margin-top:6px;padding-top:6px}
  .menu-extra a{display:block}
  .nav-links{max-height:calc(100vh - 100px);overflow-y:auto}
}

/* Pollo vivo destacado */
.feature{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(40px,7vw,104px);align-items:center}
.feature-media{position:relative;padding:0 clamp(20px,5%,48px) clamp(28px,6%,56px) 0}
.feature-media .main{aspect-ratio:4/5}
.feature-media .inset{position:absolute;right:0;bottom:0;width:44%;aspect-ratio:1;box-shadow:0 0 0 6px var(--bg),var(--sh-raised)}
.feature .lead{margin-top:22px}
.specs{list-style:none;margin:30px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px}
.specs li{padding-block:16px;border-top:1px solid var(--border-hover)}
.specs small{display:block;font-size:.85rem;color:var(--text-tertiary)}
.specs b{display:block;margin-top:2px;font-weight:700;font-size:1.05rem;color:var(--text)}
.feature .hero-ctas{animation:none;margin-top:32px}
@media (max-width:900px){.feature{grid-template-columns:1fr}.feature-media .main{aspect-ratio:5/4}}
@media (max-width:420px){.specs{grid-template-columns:1fr}}

/* Certificaciones */
.certs{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:16px}
.cert{border-radius:var(--r-photo);padding:clamp(22px,3vw,34px);background:rgba(var(--white-rgb),.06);box-shadow:inset 0 0 0 1px rgba(var(--white-rgb),.14);min-width:0}
.cert h3{margin-top:18px;color:var(--text-on-dark);font:700 1.2rem/1.25 var(--f-body)}
.cert p{margin-top:8px;font-size:.97rem}
.cert .ico{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;background:rgba(var(--white-rgb),.1);color:var(--maiz)}
.cert.main{grid-row:span 2;background:var(--surface);box-shadow:none;color:var(--text-secondary);display:flex;flex-direction:column}
.cert.main .ico{width:84px;height:84px;border-radius:50%;background:var(--maiz);color:var(--ink-bg)}
.cert.main h3{font:800 clamp(2.2rem,3.6vw,3.2rem)/.95 var(--f-display);color:var(--text);margin-top:26px}
.cert.main p{font-size:1.05rem;max-width:44ch}
.cert-meta{list-style:none;margin:auto 0 0;padding:24px 0 0}
.cert-meta li{display:flex;justify-content:space-between;gap:16px;padding-block:12px;border-top:1px solid var(--border);font-size:.95rem}
.cert-meta b{color:var(--text);text-align:right}
.pending{display:inline-block;margin-top:14px;padding:6px 10px;border-radius:999px;background:rgba(var(--maiz-rgb),.16);color:var(--maiz);font:600 .78rem/1 var(--f-body)}
.cert.main .pending{background:var(--surface-alt);color:var(--accent)}
.ink .h2{color:var(--text-on-dark)}
.ink .lead{color:var(--text-on-dark-2)}
@media (max-width:860px){.certs{grid-template-columns:1fr}.cert.main{grid-row:auto}}

/* Nosotros compacto + carrusel de instalaciones */
.about-mini{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px 64px;align-items:end}
.about-mini .lead{margin-bottom:6px}
.facts{display:flex;flex-wrap:wrap;gap:14px 40px;margin-top:26px}
.facts b{display:block;font:800 2.4rem/1 var(--f-display);color:var(--accent)}
.facts small{display:block;margin-top:4px;font-size:.9rem;color:var(--text-tertiary)}
.text-link{display:inline-block;margin-top:24px;font-weight:700;color:var(--accent)}
@media (max-width:860px){.about-mini{grid-template-columns:1fr}}
.carousel{margin-top:clamp(36px,5vw,56px)}
.car-track{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;margin-inline:calc(var(--gut) * -1);padding-inline:var(--gut);scroll-padding-inline:var(--gut)}
.car-track::-webkit-scrollbar{display:none}
.car-item{flex:0 0 clamp(270px,36vw,460px);aspect-ratio:4/3;scroll-snap-align:start}
/* También ofrecemos */
.offer{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.offer .tile{min-height:clamp(340px,36vw,460px);text-decoration:none}
.offer .tile .go{display:inline-block;margin-top:16px;color:var(--maiz);font-weight:700;border-bottom:2px solid currentColor;padding-bottom:2px}
.offer-note{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 24px;margin-top:16px;padding:22px 26px;border-radius:var(--r-photo);background:var(--surface-alt)}
.offer-note p{color:var(--text);font-weight:600;font-size:1.05rem}
@media (max-width:760px){.offer{grid-template-columns:1fr}}

/* Más de Avícola Gaby (antes del footer) */
.more{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.more a{display:flex;flex-direction:column;border-radius:var(--r-photo);background:var(--surface);box-shadow:0 0 0 1px var(--border);color:var(--text);text-decoration:none;overflow:hidden;transition:box-shadow .3s ease,transform .35s var(--ease)}
.more a:hover{transform:translateY(-4px);box-shadow:0 0 0 1px var(--border-hover),var(--sh-raised)}
.more-img{position:relative;margin:0;aspect-ratio:16/10;overflow:hidden}
.more-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.more a:hover .more-img img{transform:scale(1.05)}
.more-ico{position:absolute;left:22px;top:-24px;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--maiz);color:var(--ink-bg);box-shadow:0 0 0 5px var(--surface);z-index:2;transition:transform .35s var(--ease)}
.more a:hover .more-ico{transform:rotate(-8deg) scale(1.06)}
.more-body{position:relative;padding:38px 24px 24px;display:flex;flex-direction:column;gap:8px;flex:1}
.more h3{font:800 1.9rem/.95 var(--f-display)}
.more p{font-size:.95rem;color:var(--text-secondary);flex:1}
.more-go{align-self:flex-start;margin-top:10px;font-weight:700;color:var(--accent);background:linear-gradient(currentColor,currentColor) 0 100%/0 2px no-repeat;transition:background-size .3s ease}
.more a:hover .more-go,.more a:focus-visible .more-go{background-size:100% 2px}
@media (max-width:860px){.more{grid-template-columns:1fr}.more-img{aspect-ratio:16/8}}

/* Misión, visión y valores enriquecidos */
.mvx{position:relative;overflow:hidden}
.mvx .wrap{position:relative;z-index:1}
.mvx-ring{position:absolute;right:-140px;top:-140px;width:520px;height:520px;opacity:.09;animation:ringSpin 90s linear infinite;pointer-events:none}
.mvx-ring text{font:700 16px var(--f-body);letter-spacing:.2em;fill:var(--maiz)}
.mv2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.mv-card{position:relative;overflow:hidden;border-radius:var(--r-photo);background:rgba(var(--white-rgb),.05);box-shadow:inset 0 0 0 1px rgba(var(--white-rgb),.14);display:flex;flex-direction:column}
.mv-img{position:relative;margin:0;aspect-ratio:16/8;overflow:hidden}
.mv-img img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}
.mv-card:hover .mv-img img{transform:scale(1.05)}
.mv-img::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(var(--ink-rgb),.1) 0%,rgba(var(--ink-rgb),.85) 100%)}
.mv-body{position:relative;padding:0 clamp(22px,3vw,36px) clamp(26px,3.4vw,40px);margin-top:-26px}
.mv-tag{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:999px;background:var(--maiz);color:var(--ink-bg);font:700 .95rem/1 var(--f-body)}
.mv-body p{margin-top:20px;font:800 clamp(1.7rem,2.6vw,2.35rem)/1.02 var(--f-display);color:var(--text-on-dark);max-width:24ch}
.values-h{margin:clamp(56px,7vw,88px) 0 24px;font:800 clamp(1.9rem,3vw,2.6rem)/1 var(--f-display);color:var(--text-on-dark)}
.values2{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.values2 li{padding:24px;border-radius:var(--r-photo);background:rgba(var(--white-rgb),.05);box-shadow:inset 0 0 0 1px rgba(var(--white-rgb),.12);transition:background .3s ease,transform .35s var(--ease)}
.values2 li:hover{background:rgba(var(--white-rgb),.09);transform:translateY(-3px)}
.v-ico{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:rgba(var(--maiz-rgb),.16);color:var(--maiz)}
.values2 h4{margin:18px 0 6px;color:var(--text-on-dark);font:700 1.1rem/1.25 var(--f-body)}
.values2 p{font-size:.95rem}
@media (max-width:960px){.values2{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.mv2{grid-template-columns:1fr}}
@media (max-width:440px){.values2{grid-template-columns:1fr}}
@keyframes ringSpin{to{transform:rotate(-360deg)}}

/* Páginas internas */
.page-hero{position:relative;background:var(--ink-bg);color:var(--text-on-dark-2);padding-block:calc(76px + clamp(48px,7vw,96px)) clamp(48px,6vw,88px);overflow:hidden}
.page-hero h1{font:800 clamp(3.2rem,7.5vw,6.5rem)/.9 var(--f-display);color:var(--text-on-dark)}
.page-hero p{margin-top:20px;max-width:52ch;font-size:clamp(1.05rem,1.5vw,1.25rem)}
.crumbs{margin-bottom:18px;font-size:.92rem}
.crumbs a{color:var(--maiz);font-weight:600}
.page-hero::after{content:"";position:absolute;right:-80px;top:-80px;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(var(--maiz-rgb),.22),transparent 65%);pointer-events:none}
.cap{position:absolute;left:12px;top:12px;z-index:3;padding:7px 12px;border-radius:999px;background:rgba(var(--white-rgb),.94);color:var(--text);font:600 .85rem/1 var(--f-body)}
a.tile{color:var(--text-on-dark)}
a.tile:focus-visible{outline:3px solid var(--maiz);outline-offset:3px}

/* ===== V7 ===== */
/* Carrusel con pestañas y barra de progreso */
.car-item{position:relative;flex:0 0 clamp(272px,40vw,540px)}
.car-item::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(var(--ink-rgb),0) 50%,rgba(var(--ink-rgb),.75) 100%);pointer-events:none}
.car-item .cap{top:auto;left:20px;bottom:18px;z-index:2;padding:0;background:none;color:var(--text-on-dark);font:800 clamp(1.6rem,2.4vw,2.2rem)/1 var(--f-display)}
.car-item .ref{left:auto;right:12px;top:12px;bottom:auto}
.car-tabs{display:flex;align-items:flex-end;gap:14px;margin-top:20px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.car-tabs::-webkit-scrollbar{display:none}
.car-tab{flex:1 0 110px;display:flex;flex-direction:column;gap:10px;min-height:44px;padding:8px 0 6px;border:0;background:none;text-align:left;font:600 .92rem/1.2 var(--f-body);color:var(--text-tertiary);cursor:pointer;transition:color .2s}
.car-tab:hover{color:var(--text)}
.car-tab[aria-current="true"]{color:var(--text)}
.car-tab .bar{display:block;height:3px;border-radius:3px;background:var(--border-hover);overflow:hidden}
.car-tab .bar i{display:block;width:0;height:100%;border-radius:3px;background:var(--accent)}
.car-tab.run .bar i{animation:barFill 4.8s linear forwards}
.carousel.is-paused .car-tab.run .bar i{animation-play-state:paused}
@keyframes barFill{to{width:100%}}
.car-toggle{flex:0 0 44px;width:44px;height:44px;margin-left:4px;border:1px solid var(--border-hover);border-radius:50%;background:var(--surface);color:var(--text-secondary);display:grid;place-items:center;cursor:pointer;transition:color .2s,border-color .2s}
.car-toggle:hover{color:var(--accent);border-color:var(--accent)}
.car-toggle .i-play{display:none}
.car-toggle[aria-pressed="true"] .i-play{display:block}
.car-toggle[aria-pressed="true"] .i-pause{display:none}
@media (prefers-reduced-motion:reduce){.car-tab.run .bar i{width:100%}}

/* Certificaciones: ficha breve */
.tagline{display:inline-block;margin-top:14px;padding:6px 10px;border-radius:999px;background:rgba(var(--maiz-rgb),.16);color:var(--maiz);font:600 .78rem/1 var(--f-body)}

/* También ofrecemos: pollo beneficiado protagonista, pavos en pequeño */
.offer{grid-template-columns:minmax(0,1.65fr) minmax(0,1fr)}
.offer-mini{display:flex;flex-direction:column;border-radius:var(--r-photo);overflow:hidden;background:var(--surface-alt);color:var(--text);text-decoration:none;transition:transform .35s var(--ease),box-shadow .3s ease}
.offer-mini:hover{transform:translateY(-4px);box-shadow:var(--sh-raised)}
.offer-mini figure{margin:0;flex:1;min-height:200px;overflow:hidden}
.offer-mini img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.offer-mini:hover img{transform:scale(1.05)}
.offer-mini .txt{padding:22px 24px 24px}
.offer-mini h3{font:800 2rem/1 var(--f-display);color:var(--text)}
.offer-mini p{margin-top:6px;font-size:.95rem}
.offer-mini .go{display:inline-block;margin-top:12px;font-weight:700;color:var(--accent);border-bottom:2px solid currentColor}
.map-link{display:inline-block;margin-top:4px;font-size:.9rem;font-weight:700;color:var(--accent)}
.values2{grid-template-columns:repeat(3,minmax(0,1fr))}

/* ===== Celular: orden compacto, filas que se deslizan en vez de pilas largas ===== */
@media (max-width:860px){
  .certs{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .cert.main{grid-column:1/-1}
  .cert.main{padding:22px}
  .cert.main .ico{width:56px;height:56px}
  .cert.main .ico svg{width:28px;height:28px}
  .cert.main h3{font-size:2rem;margin-top:16px}
  .cert.main p{font-size:.95rem}
  .cert-meta{padding-top:14px}
  .cert-meta li{padding-block:9px;font-size:.88rem}
  .cert:not(.main){padding:18px}
  .cert:not(.main) .ico{width:44px;height:44px}
  .cert:not(.main) h3{font-size:1rem;margin-top:14px}
  .cert:not(.main) p{font-size:.86rem}
  .tagline{font-size:.72rem}
}
@media (max-width:760px){
  .offer{grid-template-columns:1fr}
  .offer-mini{flex-direction:row;align-items:stretch}
  .offer-mini figure{flex:0 0 40%;min-height:140px}
  .offer-mini .txt{padding:16px 18px}
  .offer-mini h3{font-size:1.7rem}
}
@media (max-width:640px){
  .sec{padding-block:clamp(64px,16vw,88px)}
  .head{margin-bottom:28px}
  .facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px}
  .facts b{font-size:2rem}
  .specs{grid-template-columns:repeat(2,minmax(0,1fr))}
  .clients{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 16px}
  .client,.client:first-child,.client:nth-child(3){padding:0 0 0 14px;border-top:0;border-left:3px solid var(--maiz)}
  .client h3{margin:14px 0 6px;font-size:1.05rem}
  .client p{font-size:.88rem}
  .snap-row{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;margin-inline:calc(var(--gut) * -1);padding-inline:var(--gut);scroll-padding-inline:var(--gut)}
  .snap-row::-webkit-scrollbar{display:none}
  .snap-row > *{flex:0 0 80%;scroll-snap-align:start}
  .car-item{flex-basis:84%}
  .car-tab{flex-basis:96px;font-size:.85rem}
  .f-cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 20px}
  .f-brand{grid-column:1/-1}
  .about .photo{aspect-ratio:4/3}
  .mv-img{aspect-ratio:16/7}
  .mv-body p{font-size:1.5rem}
}

/* Flechas ligeras sobre las fotos del carrusel */
.car-stage{position:relative}
.car-arrow{position:absolute;top:50%;z-index:4;width:52px;height:52px;margin-top:-26px;border-radius:50%;border:1px solid rgba(var(--white-rgb),.35);background:rgba(var(--ink-rgb),.32);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--text-on-dark);display:grid;place-items:center;cursor:pointer;opacity:.8;transition:opacity .25s ease,background .25s ease,transform .3s var(--ease)}
.car-arrow.prev{left:12px}
.car-arrow.next{right:12px}
.car-arrow:hover{opacity:1;background:rgba(var(--ink-rgb),.6)}
.car-arrow.prev:hover{transform:translateX(-2px)}
.car-arrow.next:hover{transform:translateX(2px)}
.car-arrow:focus-visible{opacity:1;outline:3px solid var(--maiz);outline-offset:3px}


/* V9 · Así trabajamos (pedidos de día, despacho de madrugada) */
.hero-sub{margin-top:14px;max-width:52ch;font-size:.98rem;color:var(--text-on-dark-2);opacity:.85;animation:fadeUp .8s var(--ease) .6s both}
.flow{margin-top:clamp(56px,7vw,88px);padding:clamp(22px,3vw,34px);border-radius:var(--r-photo);background:var(--surface-alt)}
.flow h3{font:800 clamp(1.6rem,2.4vw,2.1rem)/1 var(--f-display);color:var(--text);margin-bottom:22px}
.flow-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;position:relative}
.flow-steps li{display:grid;grid-template-columns:48px minmax(0,1fr);gap:14px;align-items:start;position:relative}
.flow-steps li:not(:last-child)::after{content:"";position:absolute;left:58px;right:-8px;top:24px;height:2px;background:repeating-linear-gradient(90deg,var(--border-hover) 0 6px,transparent 6px 12px);z-index:0}
.f-ico{position:relative;z-index:1;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--surface);color:var(--accent);box-shadow:0 0 0 1px var(--border)}
.flow-steps li:nth-child(2) .f-ico{background:var(--ink-bg);color:var(--maiz);box-shadow:none}
.flow-steps b{position:relative;z-index:1;display:inline-block;padding-right:8px;background:var(--surface-alt);font:700 1.05rem/1.3 var(--f-body);color:var(--text);margin-top:12px}
.flow-steps p{margin-top:4px;font-size:.93rem}
@media (max-width:760px){
  .flow-steps{grid-template-columns:1fr;gap:18px}
  .flow-steps li:not(:last-child)::after{left:23px;right:auto;top:52px;bottom:-14px;width:2px;height:auto;background:repeating-linear-gradient(180deg,var(--border-hover) 0 6px,transparent 6px 12px)}
  .flow-steps b{margin-top:2px}
}

/* ===== V10 · pulido final para celular ===== */
/* Menú por grupos */
.m-menu{position:absolute;left:0;right:0;top:100%;background:var(--surface);border-top:1px solid var(--border);box-shadow:0 30px 40px -24px rgba(var(--ink-rgb),.45);max-height:calc(100vh - 64px);overflow-y:auto}
.m-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 28px;padding-block:22px 26px}
.m-label{margin:0 0 6px;font:600 .82rem/1.2 var(--f-body);color:var(--text-tertiary)}
.m-group a{display:flex;align-items:center;min-height:44px;font:700 1.05rem/1.2 var(--f-body);color:var(--text);text-decoration:none;border-bottom:1px solid var(--border)}
.m-group a:last-child{border-bottom:0}
.m-group a:hover,.m-group a[aria-current="page"]{color:var(--accent)}
.m-foot{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding-top:16px;border-top:1px solid var(--border)}
.m-foot p{margin:0;font-size:.9rem;color:var(--text-secondary)}
.nav.menu-open{background:var(--surface);box-shadow:0 1px 0 var(--border)}
.nav.menu-open .brand b{color:var(--text)}
.nav.menu-open .brand small{color:var(--text-tertiary)}
.nav.menu-open .menu-btn{background:var(--surface);color:var(--text);border-color:var(--border-hover)}
@media (min-width:1081px){.m-menu{display:none!important}}
@media (max-width:1080px){.nav-links{display:none!important}}
@media (max-width:600px){.m-grid{grid-template-columns:1fr;gap:16px}}

/* Carrusel en celular: sin bordes de la foto vecina, pestañas como barras de historia */
.car-track::after{content:"";flex:0 0 1px}

/* Conoce más y valores en celular: lista compacta, nada cortado */
@media (max-width:640px){
  .more{display:grid;grid-template-columns:1fr;gap:12px}
  .more a{flex-direction:row;align-items:stretch;min-height:0}
  .more-img{flex:0 0 36%;aspect-ratio:auto;min-height:132px}
  .more-body{padding:16px 16px 16px 18px;gap:4px}
  .more-ico{display:none}
  .more h3{font-size:1.55rem}
  .more p{font-size:.88rem}
  .more-go{margin-top:6px;background-size:100% 2px}
  .values2{display:grid;grid-template-columns:1fr;gap:10px}
  .values2 li{display:grid;grid-template-columns:44px minmax(0,1fr);column-gap:14px;padding:18px}
  .values2 .v-ico{width:44px;height:44px;grid-row:span 2}
  .values2 h4{margin:2px 0 4px}
}
.nav .m-foot .btn{display:inline-flex}

/* V11 · carrusel en celular igual de limpio que en computadora */
.car-mob{display:none}
@media (max-width:640px){
  .car-track{gap:calc(var(--gut) + 6px)}
  .car-item{flex-basis:calc(100% - 2 * var(--gut) - 28px);aspect-ratio:5/4}
  .car-arrow{width:40px;height:40px;margin-top:-20px;opacity:.9}
  .car-arrow svg{width:18px;height:18px}
  .car-arrow.prev{left:8px}
  .car-arrow.next{right:calc(28px + 8px)}
  .car-tabs{display:flex;align-items:center;gap:14px;margin-top:16px;overflow:visible}
  .car-tab{display:none}
  .car-mob{display:block;flex:1 1 auto;min-width:0}
  .car-mob-top{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px}
  .car-mob-top b{font:800 1.5rem/1 var(--f-display);color:var(--text)}
  .car-mob-top span{font:600 .85rem/1 var(--f-body);color:var(--text-tertiary);font-variant-numeric:tabular-nums}
  .car-segs{display:flex;gap:6px}
  .seg{display:block;flex:1 1 0%;height:4px;border-radius:4px;background:var(--border-hover);overflow:hidden}
  .seg i{display:block;width:0;height:100%;background:var(--accent);border-radius:4px}
  .seg.done i{width:100%}
  .seg.run i{animation:barFill 4.8s linear forwards}
  .carousel.is-paused .seg.run i{animation-play-state:paused}
  .car-toggle{flex:0 0 44px;margin-left:0}
}
@media (prefers-reduced-motion:reduce){.seg.run i{width:100%}}

/* V15 · tres formas de abastecerte: beneficiado, granja y pavos en pequeño */
.offer{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,.72fr)}
.offer .tile{min-height:clamp(380px,38vw,500px)}
@media (max-width:1080px){.offer{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.offer .offer-mini{grid-column:1/-1;flex-direction:row}.offer .offer-mini figure{flex:0 0 36%;min-height:160px}}
@media (max-width:760px){.offer{grid-template-columns:1fr}.offer .tile{min-height:340px}}

/* V19 · videos reales */
.photo video,.bg-video{width:100%;height:100%;object-fit:cover;display:block}
.flow-media{position:relative;margin:0 0 24px;border-radius:calc(var(--r-photo) - 6px);overflow:hidden;aspect-ratio:21/8;background:var(--ink-bg)}
.flow-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(var(--ink-rgb),0) 45%,rgba(var(--ink-rgb),.75) 100%);pointer-events:none}
.flow-media figcaption{position:absolute;left:18px;bottom:14px;z-index:1;color:var(--text-on-dark);font:800 clamp(1.3rem,2.2vw,1.9rem)/1 var(--f-display)}
@media (max-width:640px){.flow-media{aspect-ratio:16/10}}

/* V21 · una sola foto en Pollo vivo y fotos de clientes */
.feature-media.single{padding:0}
.feature-media.single .main{aspect-ratio:1/1}
@media (max-width:900px){.feature-media.single .main{aspect-ratio:4/3}}
.client-photos{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:16px}
.client-photos .photo{aspect-ratio:auto;height:clamp(300px,34vw,440px)}
.client-photos .photo:first-child img{object-position:center 30%}
@media (max-width:640px){.client-photos{grid-template-columns:1fr}.client-photos .photo{height:300px}}

/* ===== V22 · experiencia en celular ===== */
html{-webkit-tap-highlight-color:transparent}
footer{margin-top:0}
.info-val{display:block;font-weight:700;color:var(--text);text-decoration:none;overflow-wrap:anywhere}
.m-foot a[href^="tel:"]{text-decoration:none;font-weight:600;color:var(--text)}

/* Barra fija: llamar + pedido (solo celular) */
.m-bar{display:none}
@media (max-width:760px){
  .m-bar{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:45;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:6px;padding:6px;border-radius:999px;background:rgba(var(--ink-rgb),.94);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 18px 40px -16px rgba(var(--ink-rgb),.7),inset 0 0 0 1px rgba(var(--white-rgb),.08);transform:translateY(calc(100% + 24px));opacity:0;pointer-events:none;transition:transform .45s var(--ease),opacity .3s ease}
  .m-bar.show{transform:none;opacity:1;pointer-events:auto}
  .m-bar a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:46px;border-radius:999px;font:700 .98rem/1 var(--f-body);text-decoration:none}
  .m-bar-call{color:var(--text-on-dark)}
  .m-bar-call svg{color:var(--maiz)}
  .m-bar-order{background:var(--maiz);color:var(--ink-bg)}
}

@media (max-width:640px){
  /* Ritmo vertical más compacto y parejo */
  :root{--sec:56px}
  .sec{padding-block:56px}
  .head{margin-bottom:24px}
  .h2{font-size:clamp(2.35rem,10.5vw,2.8rem)}
  .lead{font-size:1.06rem}

  /* Hero: cabe en una pantalla, mensaje directo */
  .hero{min-height:0;padding-block:calc(76px + 28px) 116px}
  .hero-sub{display:none}
  .hero .lead{margin-top:18px}
  .hero-ctas{display:grid;grid-template-columns:1fr;gap:10px;margin-top:26px}
  .hero-ctas .btn{width:100%;min-height:52px}
  .mini-seal{width:92px;margin-bottom:16px}
  .today-wrap{margin-top:-84px}
  .today{padding:16px;gap:14px 16px}
  .today h2{font-size:1.6rem}
  .today p{font-size:.92rem}
  #pollo-vivo{padding-top:36px}

  /* Pollo vivo */
  .feature{gap:26px}
  .specs{margin-top:22px}
  .specs li{padding-block:13px}
  .specs b{font-size:1rem;line-height:1.3}
  .feature .hero-ctas{margin-top:24px}

  /* Así trabajamos */
  .flow{margin-top:36px;padding:14px 14px 20px}
  .flow-media{margin-bottom:18px;aspect-ratio:4/3}
  .flow-media figcaption{left:16px;right:16px;bottom:14px;font-size:1.35rem;line-height:1.05}
  .flow h3{font-size:1.55rem;margin:0 6px 16px}
  .flow-steps{padding-inline:6px}

  /* Certificaciones: tarjetas en lista, nada apretado */
  .certs{grid-template-columns:1fr;gap:10px}
  .cert:not(.main){display:grid;grid-template-columns:44px minmax(0,1fr);column-gap:14px;align-items:start;padding:18px}
  .cert:not(.main) .ico{grid-row:span 3}
  .cert:not(.main) > :not(.ico){grid-column:2}
  .cert:not(.main) h3{margin-top:2px;font-size:1.05rem}
  .cert:not(.main) p{font-size:.9rem}
  .cert:not(.main) .tagline{justify-self:start;margin-top:10px}

  /* Nosotros + carrusel: el nombre va una sola vez, debajo */
  .facts{margin-top:20px;padding-block:18px;border-block:1px solid var(--border-hover)}
  .text-link{margin-top:18px}
  .carousel{margin-top:28px}
  .car-item .cap{display:none}
  .car-item::after{background:linear-gradient(180deg,rgba(var(--ink-rgb),0) 70%,rgba(var(--ink-rgb),.35) 100%)}

  /* Productos: texto legible sobre cualquier foto */
  .offer{gap:12px}
  .offer .tile{min-height:360px}
  .offer .tile::after{background:linear-gradient(180deg,rgba(var(--ink-rgb),.05) 0%,rgba(var(--ink-rgb),.55) 42%,rgba(var(--ink-rgb),.94) 100%)}
  .tile .body{padding:22px}
  .tile h3{font-size:2.3rem}
  .offer-note{margin-top:12px;padding:20px}
  .offer-note .btn{width:100%}

  /* Misión y visión: lectura cómoda */
  .mv-body p{font:600 1.12rem/1.5 var(--f-body);letter-spacing:0;max-width:none}
  .mvx-ring{width:360px;height:360px;right:-120px;top:-120px}

  /* Contacto */
  .info li{padding-block:13px}
  .form-foot .btn{width:100%}
  .form-foot{flex-direction:column-reverse;align-items:stretch;text-align:center}
  .careers{padding:26px 22px 22px}

  /* Footer más compacto */
  footer{padding-block:56px calc(28px + env(safe-area-inset-bottom,0px))}
  .thanks{margin-top:36px}
}

/* V23 · textos breves y ficha SENASA completa */
.cert-id{margin-top:20px;padding:14px 16px;border-radius:14px;background:var(--surface-alt);border-left:4px solid var(--maiz)}
.cert-id small{display:block;font:600 .8rem/1.2 var(--f-body);color:var(--text-tertiary)}
.cert-id b{display:block;margin-top:4px;font:700 1.05rem/1.3 var(--f-body);color:var(--text);letter-spacing:.01em;overflow-wrap:anywhere}
.cert-meta{padding-top:6px}
.cert:not(.main) p{max-width:34ch}
@media (max-width:640px){
  .cert:not(.main){align-items:center}
  .cert:not(.main) .ico{grid-row:span 2}
  .cert:not(.main) p{margin-top:4px}
  .cert-id{margin-top:16px;padding:12px 14px}
  .cert-id b{font-size:.95rem}
  .cert-meta li{align-items:baseline}
  .legal{flex-direction:column;gap:4px}
}

/* V24 · foto del cofundador en Nuestra historia */
.about .founder{margin-top:32px;aspect-ratio:5/4;position:relative;top:0}
.founder::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(var(--ink-rgb),0) 55%,rgba(var(--ink-rgb),.85) 100%);pointer-events:none}
.founder figcaption{position:absolute;left:20px;right:20px;bottom:18px;z-index:1;color:var(--text-on-dark-2);font-size:.92rem;line-height:1.4}
.founder figcaption b{display:block;font:800 1.6rem/1 var(--f-display);color:var(--text-on-dark);margin-bottom:4px}
@media (max-width:640px){.about .founder{margin-top:26px;aspect-ratio:auto;background:var(--ink-bg)}.founder img{aspect-ratio:5/4;height:auto}.founder::after{display:none}.founder figcaption{position:static;padding:14px 16px 16px;font-size:.88rem}.founder figcaption b{font-size:1.4rem}}
