/* ── Tipografía autoalojada · Archivo + Inter + IBM Plex Mono (latin) ────────
   Sin dependencia de fonts.googleapis.com: menos latencia, sin terceros. */
@font-face{font-family:'Archivo';src:url('fonts/archivo-400.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap;}
@font-face{font-family:'Archivo';src:url('fonts/archivo-500.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap;}
@font-face{font-family:'Archivo';src:url('fonts/archivo-600.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap;}
@font-face{font-family:'Archivo';src:url('fonts/archivo-700.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap;}
@font-face{font-family:'Inter';src:url('fonts/inter-400.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap;}
@font-face{font-family:'Inter';src:url('fonts/inter-500.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap;}
@font-face{font-family:'Inter';src:url('fonts/inter-600.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap;}
@font-face{font-family:'IBM Plex Mono';src:url('fonts/plexmono-400.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap;}
@font-face{font-family:'IBM Plex Mono';src:url('fonts/plexmono-500.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap;}

/* ====== Food Broker — Sistema visual v2 (estilo Newark & Notts) ====== */
:root{
  --navy:#20406B; --navy-dark:#16305A; --navy-deep:#0E2244; --navy-050:#EDF1F7;
  --gold:#E0A82D; --gold-soft:#EEC15A; --gold-deep:#B9861E;
  --green:#2E6B30; --green-dark:#1F4A20; --green-deep:#14320F; --green-pale:#E9F0DE; --green-pale2:#CFE0AE;
  --wine:#7C2231; --wine-dark:#5A1723; --wine-deep:#3E1220; --wine-pale:#F3E1E4; --wine-pale2:#E4BEC5;
  --sage:#EEF1EA; --cream:#F6F2E9; --sand:#FBFAF5;
  --ink:#1C2A3F; --mid:#5E6B7E; --border:#E6E3DA; --white:#fff;
  --sh-sm:0 2px 6px rgba(14,34,68,.05), 0 10px 24px -10px rgba(14,34,68,.14);
  --sh-md:0 4px 10px rgba(14,34,68,.06), 0 26px 50px -18px rgba(14,34,68,.22);
  --sh-lg:0 8px 16px rgba(14,34,68,.07), 0 40px 70px -24px rgba(14,34,68,.30);
  --r:24px; --r-lg:34px;
  /* acento por defecto = navy (casa madre) */
  --acc:var(--navy); --acc-dark:var(--navy-dark); --acc-deep:var(--navy-deep); --acc-pale:var(--navy-050); --acc-pale2:#D7E0EE;
}
body.u-ind{--acc:var(--green);--acc-dark:var(--green-dark);--acc-deep:var(--green-deep);--acc-pale:var(--green-pale);--acc-pale2:var(--green-pale2);}
body.u-inst{--acc:var(--wine);--acc-dark:var(--wine-dark);--acc-deep:var(--wine-deep);--acc-pale:var(--wine-pale);--acc-pale2:var(--wine-pale2);}

*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:'Inter','Helvetica Neue',Arial,sans-serif;background:var(--sand);color:var(--mid);-webkit-font-smoothing:antialiased;line-height:1.65;overflow-x:hidden;}
a{text-decoration:none;color:inherit;}
img{max-width:100%;display:block;}
h1,h2,h3,h4{font-family:'Archivo','Helvetica Neue',Arial,sans-serif;color:var(--ink);line-height:1.05;letter-spacing:-.02em;font-weight:600;}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px;}
@media(min-width:768px){.wrap{padding:0 44px;}}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-weight:600;font-size:14px;padding:15px 28px;border-radius:999px;border:2px solid transparent;cursor:pointer;transition:.22s;line-height:1;}
.btn .arw{transition:transform .22s;}.btn:hover .arw{transform:translateX(4px);}
.btn-gold{background:var(--gold);color:var(--navy-deep);}
.btn-gold:hover{background:var(--gold-deep);color:#fff;transform:translateY(-2px);}
.btn-navy{background:var(--navy);color:#fff;}
.btn-navy:hover{background:var(--navy-deep);transform:translateY(-2px);}
.btn-acc{background:var(--acc);color:#fff;}
.btn-acc:hover{background:var(--acc-deep);transform:translateY(-2px);}
.btn-ghost{border-color:rgba(255,255,255,.5);color:#fff;}
.btn-ghost:hover{background:rgba(255,255,255,.1);}
.btn-outline{border-color:var(--acc);color:var(--acc);}
.btn-outline:hover{background:var(--acc);color:#fff;}

/* HEADER */
header{position:sticky;top:0;z-index:200;background:rgba(251,250,245,.9);backdrop-filter:saturate(140%) blur(12px);border-bottom:1px solid var(--border);}
.nav{display:flex;align-items:center;justify-content:space-between;padding:14px 0;}
.brand img{height:42px;width:auto;display:block;}
.nav-links{display:none;gap:30px;align-items:center;}
.nav-links a{font-family:'Archivo','Helvetica Neue',Arial,sans-serif;color:var(--ink);font-size:13.5px;font-weight:500;transition:color .15s;position:relative;padding:6px 0;}
.nav-links a::after{content:'';position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--gold);transition:.25s;}
.nav-links a:hover::after,.nav-links a.active::after{width:100%;}
.nav-right{display:flex;align-items:center;gap:14px;}
.nav-cta{display:none;}
.burger{display:flex;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:6px;}
.burger span{width:24px;height:2px;background:var(--navy);}
.mobile-menu{display:none;flex-direction:column;background:#fff;padding:8px 24px 22px;border-top:1px solid var(--border);}
.mobile-menu.open{display:flex;}
.mobile-menu a{font-family:'Archivo','Helvetica Neue',Arial,sans-serif;color:var(--ink);font-size:15px;font-weight:500;padding:13px 0;border-bottom:1px solid var(--border);}
.mobile-menu .btn{margin-top:14px;}
@media(min-width:1000px){.nav-links{display:flex;}.nav-cta{display:inline-flex;}.burger{display:none;}}

/* SUB-NAV de unidad (sticky) */
.subnav{position:sticky;top:63px;z-index:150;background:var(--acc);border-bottom:1px solid rgba(255,255,255,.14);}
.subnav .wrap{display:flex;gap:24px;align-items:center;flex-wrap:wrap;padding:11px 44px;}
.subnav .ul{display:flex;align-items:center;gap:9px;font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-weight:600;color:#fff;font-size:14px;margin-right:6px;}
.subnav .ul img{height:24px;}
.subnav a{font-family:'Archivo','Helvetica Neue',Arial,sans-serif;color:rgba(255,255,255,.72);font-size:11.5px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;transition:.15s;}
.subnav a:hover,.subnav a.active{color:#fff;}

/* HERO (imagen + texto). Modificadores: .hero.rev = imagen derecha */
.hero{position:relative;background:var(--sage);overflow:hidden;}
.hero .wrap{position:relative;z-index:3;display:grid;grid-template-columns:1fr;gap:44px;align-items:center;padding:56px 44px 76px;}
@media(min-width:960px){.hero .wrap{grid-template-columns:1.02fr .98fr;gap:60px;padding:72px 44px 96px;}}
.hero-visual{position:relative;order:-1;}
.hero-visual .blob{position:absolute;z-index:0;border-radius:44% 56% 60% 40%/50% 46% 54% 50%;}
.hero-visual .blob.b1{width:230px;height:230px;background:var(--acc-pale);left:-120px;top:70px;}
.hero-visual .blob.b2{width:190px;height:190px;background:var(--cream);left:-64px;bottom:-40px;}
.hero-img{position:relative;z-index:2;aspect-ratio:11/10;max-height:520px;background-size:cover;background-position:center;box-shadow:var(--sh-lg);clip-path:polygon(4% 0, 100% 0, 84% 100%, 0 100%);}
@media(min-width:960px){.hero-visual{order:0;}}
.hero.rev .hero-visual{order:-1;}
.hero.rev .hero-img{clip-path:polygon(0 0, 96% 0, 100% 100%, 16% 100%);}
.hero.rev .hero-visual .blob.b1{left:auto;right:-120px;}
.hero.rev .hero-visual .blob.b2{left:auto;right:-64px;}
@media(min-width:960px){.hero.rev .hero-visual{order:2;}.hero.rev .hero-copy{order:1;}}
.hero-copy{position:relative;z-index:3;}
.hero .eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-weight:600;font-size:12px;letter-spacing:.5px;text-transform:uppercase;color:var(--acc);margin-bottom:14px;}
.hero .eyebrow img{height:22px;}
.hero h1{font-size:clamp(30px,4.2vw,50px);color:var(--ink);margin-bottom:22px;letter-spacing:-.03em;}
.hero h1 .g{color:var(--gold-deep);}
.hero p.lead{font-size:clamp(16px,1.7vw,19px);color:var(--mid);max-width:44ch;margin-bottom:30px;}
.hero .cta-row{display:flex;flex-wrap:wrap;gap:14px;}

/* STAT CARD flotante */
.statwrap{background:var(--sage);}
.statcard{max-width:1140px;margin:0 auto;transform:translateY(-44px);position:relative;z-index:5;background:var(--acc);border-radius:var(--r-lg);box-shadow:var(--sh-lg);display:grid;grid-template-columns:repeat(2,1fr);overflow:hidden;}
@media(min-width:820px){.statcard{grid-template-columns:repeat(4,1fr);}}
.statcard .st{padding:34px 28px;text-align:center;position:relative;}
.statcard .st+.st::before{content:'';position:absolute;left:0;top:26%;height:48%;width:1px;background:rgba(255,255,255,.14);}
@media(max-width:819px){.statcard .st:nth-child(3)::before{display:none;}}
.statcard .n{font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-weight:700;font-size:34px;color:var(--gold-soft);line-height:1;}
.statcard .l{font-size:13px;color:rgba(255,255,255,.72);margin-top:8px;}

/* SECTIONS */
.section{padding:76px 0;position:relative;}
@media(min-width:768px){.section{padding:110px 0;}}
.section.sand{background:var(--sand);}
.section.sage{background:var(--sage);}
.section.cream{background:var(--cream);}
.section.navy{background:var(--navy-dark);}
.section.acc{background:var(--acc-dark);}
.sec-head{max-width:660px;margin-bottom:52px;}
.sec-head.center{margin:0 auto 52px;text-align:center;}
.sec-head h2{font-size:clamp(30px,4.2vw,46px);margin-bottom:16px;}
.section.navy .sec-head h2,.section.acc .sec-head h2{color:#fff;}
.sec-head p{font-size:16.5px;color:var(--mid);}
.section.navy .sec-head p,.section.acc .sec-head p{color:rgba(255,255,255,.72);}

/* SPLIT texto + imagen */
.split{display:grid;gap:48px;align-items:center;}
@media(min-width:900px){.split{grid-template-columns:1fr 1fr;gap:70px;}}
.split.rev .pic{order:-1;}
@media(min-width:900px){.split.rev .pic{order:2;}}
.split .pic{position:relative;aspect-ratio:5/4;background-size:cover;background-position:center;box-shadow:var(--sh-lg);clip-path:polygon(0 0, 100% 5%, 100% 100%, 0 95%);}
.split .pic .badge{position:absolute;right:-16px;bottom:28px;background:var(--gold);color:var(--navy-deep);border-radius:18px;padding:16px 20px;box-shadow:var(--sh-md);font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-weight:700;line-height:1;}
.split .pic .badge b{font-size:30px;display:block;}
.split .pic .badge small{font-weight:500;font-size:11px;}
.split .txt .lede{font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-weight:500;font-size:clamp(20px,2.3vw,26px);color:var(--ink);line-height:1.4;margin-bottom:16px;letter-spacing:-.01em;}
.split .txt p{margin-bottom:14px;font-size:15.5px;}
.split ul{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0 26px;}
.split li{display:flex;gap:9px;align-items:center;font-size:14.5px;font-weight:500;color:var(--ink);font-family:'Archivo','Helvetica Neue',Arial,sans-serif;}
.split li i{width:22px;height:22px;border-radius:50%;background:var(--acc-pale);color:var(--acc);display:flex;align-items:center;justify-content:center;font-size:12px;font-style:normal;flex:none;}

/* CARDS con watermark (beneficios / pilares) */
.cards{display:grid;gap:22px;grid-template-columns:1fr;}
@media(min-width:640px){.cards{grid-template-columns:1fr 1fr;}}
@media(min-width:1000px){.cards{grid-template-columns:repeat(3,1fr);}}
.cards.four{grid-template-columns:1fr;}
@media(min-width:640px){.cards.four{grid-template-columns:1fr 1fr;}}
@media(min-width:1000px){.cards.four{grid-template-columns:repeat(4,1fr);}}
.bcard{position:relative;overflow:hidden;border-radius:var(--r-lg);padding:36px 30px;background:linear-gradient(160deg,var(--acc-pale) 0%,var(--acc-pale2) 100%);transition:.25s;}
.bcard:hover{transform:translateY(-6px);box-shadow:var(--sh-md);}
.bcard .leaf{position:absolute;right:-30px;top:-30px;width:150px;height:150px;opacity:.35;color:var(--acc);}
.bcard .ic{position:relative;z-index:2;width:52px;height:52px;border-radius:50%;background:rgba(255,255,255,.6);display:flex;align-items:center;justify-content:center;margin-bottom:16px;font-size:24px;}
.bcard .num{position:relative;z-index:2;font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-weight:700;font-size:15px;color:var(--gold-deep);}
.bcard h3{position:relative;z-index:2;font-size:22px;margin:8px 0 8px;}
.bcard p{position:relative;z-index:2;font-size:14.5px;color:var(--ink);opacity:.82;}
.bcard .more{position:relative;z-index:2;font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-weight:600;font-size:13px;color:var(--acc);display:inline-flex;gap:6px;align-items:center;margin-top:12px;}
.bcard .more .arw{transition:transform .2s;}.bcard:hover .more .arw{transform:translateX(4px);}

/* UNIDADES / cards imagen grande */
.units{display:grid;gap:26px;}
@media(min-width:820px){.units{grid-template-columns:1fr 1fr;}}
.unit{position:relative;border-radius:var(--r-lg);overflow:hidden;min-height:500px;display:flex;flex-direction:column;justify-content:flex-end;color:#fff;box-shadow:var(--sh-md);isolation:isolate;}
.unit .bg{position:absolute;inset:0;z-index:0;background-size:cover;background-position:center;transition:transform .6s cubic-bezier(.2,.7,.2,1);}
.unit:hover .bg{transform:scale(1.06);}
.unit::after{content:'';position:absolute;inset:0;z-index:1;}
.unit.ind::after{background:linear-gradient(165deg,rgba(46,107,48,.16) 0%,rgba(20,50,20,.92) 78%);}
.unit.inst::after{background:linear-gradient(165deg,rgba(124,34,49,.16) 0%,rgba(60,16,26,.92) 78%);}
.unit .c{position:relative;z-index:2;padding:40px 38px;}
.unit .ulogo{height:40px;margin-bottom:16px;}
.unit h3{font-size:30px;color:#fff;margin-bottom:8px;}
.unit p{font-size:15px;color:rgba(255,255,255,.85);max-width:40ch;margin-bottom:22px;}
.unit .chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px;}
.unit .chip{font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-size:11.5px;font-weight:600;padding:6px 13px;border-radius:100px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.24);}
.unit .more{font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-weight:600;font-size:13px;display:inline-flex;gap:8px;align-items:center;color:#fff;}
.unit .more .arw{transition:transform .22s;}.unit:hover .more .arw{transform:translateX(5px);}

/* AUDIENCIA / industrias (icon cards) */
.iconcards{display:grid;gap:18px;grid-template-columns:repeat(2,1fr);}
@media(min-width:920px){.iconcards{grid-template-columns:repeat(4,1fr);}}
.icard{background:#fff;border:1px solid var(--border);border-radius:var(--r);padding:30px 22px;text-align:center;box-shadow:var(--sh-sm);transition:.22s;}
.icard:hover{transform:translateY(-5px);box-shadow:var(--sh-md);border-color:transparent;}
.icard .ico{width:58px;height:58px;border-radius:50%;background:var(--acc-pale);color:var(--acc);margin:0 auto 14px;display:flex;align-items:center;justify-content:center;font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-weight:600;font-size:22px;}
.icard h3{font-size:17px;margin-bottom:4px;}
.icard p{font-size:13px;color:var(--mid);}

/* PASOS (proceso) */
.steps{display:grid;gap:0;}
.step{display:grid;grid-template-columns:auto 1fr;gap:22px;padding:26px 0;border-bottom:1px solid rgba(255,255,255,.14);}
.step:last-child{border-bottom:none;}
.step .num{width:56px;height:56px;border-radius:50%;border:1.5px solid var(--gold);color:var(--gold);display:flex;align-items:center;justify-content:center;font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-weight:600;font-size:22px;flex-shrink:0;}
.step h3{color:#fff;font-size:22px;margin-bottom:6px;}
.step p{color:rgba(255,255,255,.75);font-size:15px;max-width:60ch;}

/* COMPARATIVO */
.compare{display:grid;gap:22px;grid-template-columns:1fr;}
@media(min-width:820px){.compare{grid-template-columns:1fr 1fr;}}
.col{border-radius:var(--r-lg);padding:34px 30px;border:1px solid var(--border);}
.col.a{background:#fff;}
.col.b{background:linear-gradient(160deg,var(--navy) 0%,var(--navy-deep) 100%);color:#fff;border:none;box-shadow:var(--sh-lg);position:relative;overflow:hidden;}
.col.b::before{content:'';position:absolute;top:-70px;right:-50px;width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,var(--gold),transparent 66%);opacity:.24;}
.col .ct{font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;margin-bottom:6px;}
.col.a .ct{color:var(--mid);}.col.b .ct{color:var(--gold);position:relative;z-index:2;}
.col h3{font-size:26px;margin-bottom:20px;position:relative;z-index:2;}
.col.b h3{color:#fff;}
.col ul{list-style:none;position:relative;z-index:2;}
.col li{display:flex;gap:11px;align-items:flex-start;padding:11px 0;font-size:14.5px;border-bottom:1px solid var(--border);}
.col.b li{border-bottom:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.9);}
.col.a li{color:var(--ink);}
.col li:last-child{border-bottom:none;}
.col .mk{flex-shrink:0;font-weight:700;}
.col.a .mk{color:#B84C4C;}.col.b .mk{color:var(--gold);}

/* TRUST carrousel */
.trust{background:var(--sand);border-top:1px solid var(--border);border-bottom:1px solid var(--border);}
.trust .wrap{padding:34px 44px 38px;}
.trust .lab{display:block;text-align:center;font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-size:12.5px;font-weight:600;letter-spacing:.4px;color:var(--mid);text-transform:uppercase;margin-bottom:24px;}
.marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);}
.marquee .track{display:flex;align-items:center;gap:44px;width:max-content;animation:fb-scroll 68s linear infinite;}
.marquee:hover .track{animation-play-state:paused;}
.marquee .lg{flex:0 0 auto;height:76px;display:flex;align-items:center;filter:grayscale(1) brightness(.9) contrast(1.12);opacity:.78;transition:.25s;}
.marquee .lg img{max-height:60px;max-width:180px;object-fit:contain;}
.marquee .lg:hover{filter:none;opacity:1;}
@keyframes fb-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.marquee .track{animation:none;}}

/* CTA band */
.millers{position:relative;overflow:hidden;background:linear-gradient(150deg,var(--acc) 0%,var(--acc-deep) 100%);color:#fff;border-radius:var(--r-lg);padding:60px 52px;box-shadow:var(--sh-lg);}
.millers::before{content:'';position:absolute;top:-90px;right:-60px;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,var(--gold),transparent 66%);opacity:.3;}
.millers .in{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap;}
.millers h2{color:#fff;font-size:clamp(26px,3vw,40px);max-width:20ch;}
.millers p{color:rgba(255,255,255,.8);margin-top:12px;max-width:44ch;font-size:15.5px;}

/* FOOTER */
footer{background:var(--navy-deep);color:rgba(255,255,255,.62);padding:66px 0 30px;}
.foot-grid{display:grid;gap:34px;grid-template-columns:1fr;}
@media(min-width:760px){.foot-grid{grid-template-columns:1.8fr 1fr 1fr 1.4fr;}}
.foot-brand img{height:44px;margin-bottom:14px;}
.foot-brand p{font-size:13.5px;max-width:280px;line-height:1.65;}
.foot-col h4{font-family:'Archivo','Helvetica Neue',Arial,sans-serif;color:#fff;font-size:11px;letter-spacing:2px;text-transform:uppercase;margin-bottom:16px;font-weight:600;}
.foot-col a{display:block;font-size:13.5px;padding:5px 0;}.foot-col a:hover{color:var(--gold);}
.foot-bottom{margin-top:46px;padding-top:24px;border-top:1px solid rgba(255,255,255,.12);display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;font-size:12px;}

/* TO-TOP */
.totop{position:fixed;right:18px;bottom:18px;z-index:300;width:48px;height:48px;border-radius:50%;background:var(--gold);color:var(--navy-deep);border:none;cursor:pointer;font-size:20px;box-shadow:var(--sh-md);opacity:0;visibility:hidden;transform:translateY(10px);transition:.25s;}
.totop.show{opacity:1;visibility:visible;transform:none;}
.totop:hover{background:var(--gold-deep);color:#fff;}

/* ====== CATÁLOGO ====== */
.phero{position:relative;overflow:hidden;background:var(--acc-dark);color:#fff;padding:52px 0 46px;}
.phero::before{content:'';position:absolute;inset:0;background:linear-gradient(115deg,rgba(0,0,0,.28),transparent 60%);}
.phero.img::after{content:'';position:absolute;inset:0;background-size:cover;background-position:center;opacity:.16;mix-blend-mode:overlay;}
.phero .wrap{position:relative;z-index:2;max-width:820px;}
.phero .eyebrow{font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-weight:600;font-size:12px;letter-spacing:.6px;text-transform:uppercase;color:var(--gold-soft);}
.phero h1{color:#fff;font-size:clamp(32px,4.6vw,54px);margin:12px 0 14px;}
.phero p{color:rgba(255,255,255,.82);font-size:16.5px;max-width:56ch;}

.toolbar{position:sticky;top:110px;z-index:140;background:rgba(251,250,245,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);}
.toolbar .wrap{display:flex;gap:14px;align-items:center;justify-content:space-between;padding:15px 44px;flex-wrap:wrap;}
.chips{display:flex;gap:9px;flex-wrap:wrap;}
.chip{font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-size:13px;font-weight:600;padding:9px 16px;border-radius:999px;border:1.5px solid var(--border);background:#fff;color:var(--ink);cursor:pointer;transition:.18s;}
.chip:hover{border-color:var(--acc);}
.chip.active{background:var(--acc);color:#fff;border-color:var(--acc);}
.search{position:relative;}
.search input{border:1.5px solid var(--border);background:#fff;border-radius:999px;padding:10px 16px 10px 38px;font-size:13.5px;font-family:'Inter','Helvetica Neue',Arial,sans-serif;outline:none;width:220px;transition:.18s;}
.search input:focus{border-color:var(--acc);}
.search svg{position:absolute;left:13px;top:50%;transform:translateY(-50%);width:16px;height:16px;stroke:var(--mid);fill:none;stroke-width:2;}
.catgroup{padding:52px 0 0;}
.catgroup .chead{display:flex;align-items:center;gap:14px;margin-bottom:24px;}
.catgroup .chead .dot{width:14px;height:14px;border-radius:50%;}
.catgroup .chead h2{font-size:28px;}
.catgroup .chead .ct{font-size:13px;color:var(--mid);margin-left:auto;}
.pgrid{display:grid;gap:20px;grid-template-columns:1fr;}
@media(min-width:560px){.pgrid{grid-template-columns:1fr 1fr;}}
@media(min-width:900px){.pgrid{grid-template-columns:repeat(3,1fr);}}
@media(min-width:1140px){.pgrid{grid-template-columns:repeat(4,1fr);}}
.pcard{background:#fff;border:1px solid var(--border);border-radius:var(--r);overflow:hidden;box-shadow:var(--sh-sm);transition:.24s;cursor:pointer;display:flex;flex-direction:column;}
.pcard:hover{transform:translateY(-5px);box-shadow:var(--sh-md);}
.pcard .top{height:110px;position:relative;display:flex;align-items:flex-end;padding:14px 16px;color:#fff;overflow:hidden;}
.pcard .top .cat{position:relative;z-index:1;font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;opacity:.95;}
.pcard .body{padding:18px 20px 20px;flex:1;display:flex;flex-direction:column;}
.pcard h3{font-size:19px;margin-bottom:6px;}
.pcard .desc{font-size:13px;color:var(--mid);margin-bottom:12px;flex:1;}
.pcard .fmts{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:14px;}
.pcard .fmt{font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-size:10.5px;font-weight:600;padding:3px 9px;border-radius:100px;background:var(--acc-pale);color:var(--acc-dark);}
.pcard .more{font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-size:12px;font-weight:600;color:var(--acc);display:inline-flex;gap:6px;align-items:center;}
.pcard .more .arw{transition:transform .2s;}.pcard:hover .more .arw{transform:translateX(3px);}
.modal{position:fixed;inset:0;z-index:400;display:none;align-items:center;justify-content:center;padding:20px;}
.modal.open{display:flex;}
.modal .ov{position:absolute;inset:0;background:rgba(14,34,68,.55);backdrop-filter:blur(4px);}
.modal .box{position:relative;z-index:2;background:#fff;border-radius:var(--r-lg);max-width:640px;width:100%;max-height:90vh;overflow:auto;box-shadow:var(--sh-lg);}
.modal .mhead{position:relative;height:160px;display:flex;align-items:flex-end;padding:22px 26px;color:#fff;overflow:hidden;background-size:cover;background-position:center;}
.modal .mhead .x{position:absolute;top:16px;right:16px;z-index:3;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.22);border:none;color:#fff;font-size:20px;cursor:pointer;line-height:1;}
.modal .mhead .x:hover{background:rgba(255,255,255,.36);}
.modal .mhead .mc{position:relative;z-index:1;}
.modal .mhead .cat{font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;opacity:.95;}
.modal .mhead h3{color:#fff;font-size:30px;margin-top:4px;}
.modal .mbody{padding:26px;}
.modal .mbody .lead{font-size:15px;color:var(--ink);margin-bottom:20px;}
.modal .grp-t{font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--gold-deep);margin:22px 0 12px;}
.modal .fmts{display:flex;flex-wrap:wrap;gap:8px;}
.modal .fmt{font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-size:12px;font-weight:600;padding:6px 14px;border-radius:100px;background:var(--acc-pale);color:var(--acc-dark);}
.spec{width:100%;border-collapse:collapse;margin-top:6px;}
.spec tr{border-bottom:1px solid var(--border);}
.spec td{padding:11px 4px;font-size:13.5px;vertical-align:top;}
.spec td.k{color:var(--mid);width:46%;}
.spec td.v{color:var(--ink);font-weight:600;}
.modal .note{margin-top:18px;font-size:12px;color:var(--mid);background:var(--acc-pale);border-radius:10px;padding:12px 14px;}
.modal .mfoot{margin-top:24px;display:flex;gap:12px;flex-wrap:wrap;}

/* ====== Logo de unidad GRANDE en el hero (solo ahí) ====== */
.hero .unitlogo{height:64px;width:auto;max-width:100%;display:block;margin-bottom:22px;filter:drop-shadow(0 8px 20px rgba(14,34,68,.18));}
@media(min-width:768px){.hero .unitlogo{height:84px;}}
.subnav .ul{letter-spacing:.2px;}

/* ====== Contexto: grano + glows + texturas (detrás del texto) ====== */
body::after{content:'';position:fixed;inset:0;pointer-events:none;z-index:900;opacity:.02;mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='150' height='150'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");}
.section > .wrap{position:relative;z-index:2;}
.section.sage::before,.section.cream::before,.section.sand::before{content:'';position:absolute;inset:0;z-index:0;pointer-events:none;
  background:radial-gradient(620px 420px at 94% 6%,rgba(224,168,45,.07),transparent 62%),radial-gradient(520px 420px at -6% 102%,rgba(46,107,48,.05),transparent 62%);}
body.u-inst .section.sage::before,body.u-inst .section.cream::before,body.u-inst .section.sand::before{
  background:radial-gradient(620px 420px at 94% 6%,rgba(224,168,45,.07),transparent 62%),radial-gradient(520px 420px at -6% 102%,rgba(124,34,49,.05),transparent 62%);}
.section.navy::before,.section.acc::before{content:'';position:absolute;inset:0;z-index:0;pointer-events:none;
  background:url('textura-navy.jpg') center/cover;opacity:.06;mix-blend-mode:overlay;}
.section.navy .steps,.section.acc .steps,.section.navy .sec-head,.section.acc .sec-head{position:relative;z-index:2;}
/* franja de contexto con foto y overlay fuerte (legible) */
.section.ctx{background-size:cover;background-position:center;position:relative;}
.section.ctx::before{content:'';position:absolute;inset:0;background:linear-gradient(rgba(246,242,233,.945),rgba(246,242,233,.965))!important;z-index:0;}
.section.ctx > .wrap{position:relative;z-index:2;}
/* watermark de trigo decorativo para encabezados */
.sec-head .wm{position:absolute;right:0;top:-30px;width:130px;height:130px;color:var(--acc);opacity:.06;pointer-events:none;}
.sec-head{position:relative;}


/* ============ v3 · definiciones de marca ============ */
:root{ --ang:-6.5deg; }
/* Dato: toda cifra en mono con tabular-nums */
.statcard .n,.bcard .num,.split .pic .badge b,.step .num,.icard .ico{
  font-family:'IBM Plex Mono',ui-monospace,'SF Mono',Menlo,monospace;font-variant-numeric:tabular-nums;letter-spacing:-.01em;
}
/* Surco: subrayado dorado sobre el eje, en cada titulo de seccion */
.sec-head h2{position:relative;display:inline-block;padding-bottom:14px;}
.sec-head h2::after{content:'';position:absolute;left:0;bottom:0;width:52px;height:3px;background:var(--gold);
  transform:rotate(var(--ang));transform-origin:left center;border-radius:2px;}
/* Lockup de marca: isotipo + wordmark, sin bajada */
.brand{display:flex;align-items:center;gap:11px;text-decoration:none;}
.brand img{height:38px;width:38px;display:block;}
.brand .wm{font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-weight:600;font-size:21px;letter-spacing:-.03em;color:var(--navy);line-height:1;}
footer .brand .wm{color:#fff;}
@media (prefers-reduced-motion:reduce){.hero .hero-copy,.hero .hero-img{transition:none}}

/* v3 · correcciones de verificacion */
.bcard .leaf{opacity:.13 !important;width:78px !important;height:78px !important;top:auto !important;bottom:-10px !important;right:-6px !important;}


/* ============ v3 · tramas y movimiento ============ */
:root{ --ease:cubic-bezier(.22,.61,.36,1); }
html{scroll-behavior:smooth;}

/* Tramas de fondo · 6-12% de opacidad, nunca compiten con el texto */
.section{position:relative;}
.section > .wrap{position:relative;z-index:2;}
.section.sand::after,.section.cream::after{content:'';position:absolute;inset:0;z-index:0;pointer-events:none;}
.section.sand::after{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2772%27%20height%3D%2730%27%3E%3Cpath%20d%3D%27M-6%2023C18%2017%2054%2017%2078%2023%27%20fill%3D%27none%27%20stroke%3D%27%2320406B%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%2F%3E%3C%2Fsvg%3E");background-size:216px 90px;opacity:.045;}
.section.cream::after{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2720%27%20height%3D%2720%27%3E%3Ccircle%20cx%3D%274%27%20cy%3D%274%27%20r%3D%271.6%27%20fill%3D%27%2320406B%27%2F%3E%3Ccircle%20cx%3D%2714%27%20cy%3D%2714%27%20r%3D%271.6%27%20fill%3D%27%2320406B%27%2F%3E%3C%2Fsvg%3E");background-size:38px 38px;transform:rotate(var(--ang));transform-origin:center;opacity:.04;}
.millers{position:relative;overflow:hidden;}
.millers::after{content:'';position:absolute;inset:-20%;z-index:0;pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2718%27%20height%3D%2718%27%3E%3Cline%20x1%3D%270%27%20y1%3D%270%27%20x2%3D%270%27%20y2%3D%2718%27%20stroke%3D%27%23FBFAF5%27%20stroke-width%3D%272%27%2F%3E%3C%2Fsvg%3E");background-size:34px 34px;transform:rotate(var(--ang));opacity:.035;}

/* Aparición · un solo patrón para toda la página */
.rv{opacity:0;transform:translateY(18px);transition:opacity .78s var(--ease),transform .78s var(--ease);}
.rv.is-in{opacity:1;transform:none;}
.cards .bcard:nth-child(2),.units .unit:nth-child(2){transition-delay:.09s;}
.cards .bcard:nth-child(3){transition-delay:.18s;}
.cards .bcard:nth-child(4){transition-delay:.05s;}
.cards .bcard:nth-child(5){transition-delay:.14s;}
.cards .bcard:nth-child(6){transition-delay:.23s;}

/* Deriva del hero · casi imperceptible, no es un efecto */
@keyframes fb-drift{from{transform:scale(1.005)}to{transform:scale(1.035)}}
.hero .hero-img{animation:fb-drift 9s var(--ease) infinite alternate;}

/* Curva única en todo lo que ya se movía */
.btn,.nav-links a::after,.bcard,.unit,.icard{transition-timing-function:var(--ease);}
.bcard,.unit{transition:transform .5s var(--ease),box-shadow .5s var(--ease);}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  .rv{opacity:1;transform:none;transition:none;}
  .hero .hero-img{animation:none;}
}


/* v3 · video de fondo · movimiento, no protagonismo */
.vidbg{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;}
.vidbg video{width:100%;height:100%;object-fit:cover;display:block;filter:grayscale(.22) contrast(1.06);opacity:.58;}
.vidbg::after{content:'';position:absolute;inset:0;
  background:linear-gradient(102deg,rgba(20,44,80,.88) 0%,rgba(20,44,80,.72) 38%,rgba(20,44,80,.40) 72%,rgba(20,44,80,.26) 100%);}
.millers{position:relative;overflow:hidden;}
.millers .in{position:relative;z-index:2;}
.section.hasvid > .wrap{position:relative;z-index:2;}
@media (prefers-reduced-motion:reduce){.vidbg video{display:none;}
  .vidbg{background:var(--poster) center/cover;opacity:.30;}}


/* v3 · lockup de unidad y iconos de categoria */
.unitlock{display:flex;align-items:center;gap:12px;margin-bottom:18px;}
.unitlock img{height:46px;width:46px;}
.unitlock .wmu{display:block;font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-weight:600;font-size:22px;letter-spacing:-.03em;color:var(--navy);line-height:1;}
.unitlock .endo{display:block;font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-weight:700;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--acc);margin-top:6px;padding-top:6px;border-top:1.5px solid var(--acc);}
.bcard .ic{width:52px;height:52px;border-radius:50%;background:var(--acc-pale);color:var(--acc);display:flex;align-items:center;justify-content:center;margin-bottom:14px;position:relative;z-index:2;}

.hero h1{max-width:15ch;}

/* ── v3 · catálogo: íconos de categoría + lockup de footer ───────────── */
.foot-brand img{height:34px;width:34px;margin:0;vertical-align:middle;display:inline-block;}
.foot-brand .wm{font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-weight:600;font-size:20px;letter-spacing:-.03em;color:#fff;margin-left:10px;vertical-align:middle;}
.foot-brand p{margin-top:16px;}
.catgroup .chead .cico{width:26px;height:26px;flex:none;color:var(--acc);}
.pcard .top .tico{position:absolute;right:13px;top:13px;width:26px;height:26px;color:#fff;opacity:.34;z-index:1;}
.modal .mhead .hico{position:absolute;left:26px;top:22px;width:30px;height:30px;color:#fff;opacity:.40;z-index:2;}
.catgroup{scroll-margin-top:120px;}
.pcard .top{background:var(--acc-dark);}
.pcard .top::before{content:'';position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2772%27%20height%3D%2730%27%3E%3Cpath%20d%3D%27M-6%2023C18%2017%2054%2017%2078%2023%27%20fill%3D%27none%27%20stroke%3D%27%23ffffff%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%2F%3E%3C%2Fsvg%3E");background-size:132px 55px;opacity:.13;}
.pcard .top .tico{right:16px;top:50%;transform:translateY(-50%);width:46px;height:46px;opacity:.22;}

/* ── Accesibilidad: salto al contenido y foco visible ────────────────────── */
.skip{position:absolute;left:-9999px;top:0;z-index:999;background:var(--navy);color:#fff;
  font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-weight:600;font-size:14px;
  padding:12px 20px;border-radius:0 0 8px 0;text-decoration:none;}
.skip:focus{left:0;}
a:focus-visible,button:focus-visible,input:focus-visible,[tabindex]:focus-visible{
  outline:3px solid var(--gold);outline-offset:3px;border-radius:4px;}
#contenido{display:block;height:0;}

/* v3 · íconos en tarjetas de audiencia (productores) */
.icard .ico svg{width:30px;height:30px;display:block;}

/* ── Calificador de leads → WhatsApp ─────────────────────────────────────── */
.fbchat-launch{position:fixed;right:18px;bottom:18px;z-index:420;display:flex;align-items:center;gap:10px;
  padding:13px 20px 13px 16px;border:none;border-radius:999px;cursor:pointer;
  background:var(--gold);color:var(--navy-deep);box-shadow:var(--sh-lg);
  font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-weight:600;font-size:14px;line-height:1;
  transition:background .2s var(--ease),transform .2s var(--ease);}
.fbchat-launch:hover{background:var(--gold-deep);color:#fff;transform:translateY(-2px);}
.fbchat-launch svg{flex:none;}
.totop{bottom:82px;}

.fbchat-panel[hidden],.fbchat-ov[hidden]{display:none!important;}
/* el atributo hidden pierde contra un display de autor: hay que forzarlo,
   si no el panel queda invisible pero tapando el botón. */
.fbchat-ov{position:fixed;inset:0;z-index:430;background:rgba(14,34,68,.55);backdrop-filter:blur(4px);}
.fbchat-panel{position:fixed;right:18px;bottom:18px;z-index:440;width:min(420px,calc(100vw - 36px));
  max-height:min(660px,calc(100vh - 36px));display:flex;flex-direction:column;overflow:hidden;
  background:#fff;border-radius:var(--r-lg);box-shadow:var(--sh-lg);}
.fbchat-panel header{display:flex;align-items:flex-start;gap:12px;padding:22px 22px 16px;background:var(--acc);color:#fff;}
.fbchat-panel header .eyebrow{display:block;font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-size:10.5px;
  font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-soft);margin-bottom:6px;}
.fbchat-panel header h2{font-size:20px;color:#fff;margin:0;letter-spacing:-.02em;}
.fbchat-x{margin-left:auto;flex:none;width:32px;height:32px;border-radius:50%;border:none;cursor:pointer;
  background:rgba(255,255,255,.18);color:#fff;display:flex;align-items:center;justify-content:center;}
.fbchat-x:hover{background:rgba(255,255,255,.32);}

.fbchat-prog{height:3px;background:var(--border);flex:none;}
.fbchat-prog i{display:block;height:100%;background:var(--gold);transition:width .3s var(--ease);}

.fbchat-body{padding:22px;overflow-y:auto;}
.fbchat-q{font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-weight:600;font-size:16.5px;
  color:var(--ink);margin:0 0 4px;letter-spacing:-.01em;}
.fbchat-hint{font-size:12.5px;color:var(--mid);margin:0 0 14px;}
.fbchat-q + .fbchat-opts{margin-top:14px;}

.fbchat-opts{display:grid;gap:8px;}
.fbchat-opt{text-align:left;padding:13px 15px;border:1.5px solid var(--border);border-radius:10px;background:#fff;
  cursor:pointer;transition:border-color .16s,background .16s;}
.fbchat-opt b{display:block;font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-weight:600;
  font-size:14.5px;color:var(--ink);}
.fbchat-opt span{display:block;font-size:12.5px;color:var(--mid);margin-top:2px;}
.fbchat-opt:hover{border-color:var(--acc);}
.fbchat-opt.on{border-color:var(--acc);background:var(--acc-pale);}
.fbchat-opts.multi .fbchat-opt.on b::after{content:' ·';color:var(--acc);}

.fbchat-aviso{margin:14px 0 0;padding:12px 14px;border-radius:10px;background:var(--acc-pale);
  font-size:13px;color:var(--ink);line-height:1.55;}

.fbchat-campos{display:grid;gap:12px;margin:16px 0 18px;}
.fbchat-campos label{display:block;font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-weight:600;
  font-size:12px;color:var(--mid);letter-spacing:.02em;}
.fbchat-campos input{width:100%;margin-top:6px;padding:12px 14px;border:1.5px solid var(--border);border-radius:9px;
  font-family:'Inter','Helvetica Neue',Arial,sans-serif;font-size:14.5px;color:var(--ink);background:#fff;}
.fbchat-campos input:focus{border-color:var(--acc);outline:none;}

.fbchat-prev{margin-bottom:16px;}
.fbchat-prev span{display:block;font-size:12px;color:var(--mid);margin-bottom:6px;}
.fbchat-prev pre{margin:0;padding:13px 15px;border-radius:10px;background:var(--cream);border:1px solid var(--border);
  font-family:'IBM Plex Mono',ui-monospace,'SF Mono',Menlo,monospace;font-size:12px;line-height:1.65;
  color:var(--ink);white-space:pre-wrap;word-break:break-word;max-height:150px;overflow-y:auto;}

.fbchat-go{display:flex;align-items:center;justify-content:center;gap:9px;padding:14px 20px;border-radius:999px;
  background:var(--gold);color:var(--navy-deep);text-decoration:none;
  font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-weight:600;font-size:15px;transition:.2s var(--ease);}
.fbchat-go:hover{background:var(--gold-deep);color:#fff;}

.fbchat-nav{display:flex;align-items:center;gap:10px;margin-top:16px;}
.fbchat-back,.fbchat-next{border:none;background:none;cursor:pointer;padding:8px 2px;
  font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-weight:600;font-size:13px;color:var(--mid);}
.fbchat-back:hover{color:var(--ink);}
.fbchat-next{margin-left:auto;color:var(--acc);}
.fbchat-next .arw{transition:transform .2s;display:inline-block;}
.fbchat-next:hover .arw{transform:translateX(3px);}

@media(max-width:560px){
  .fbchat-launch .lbl{display:none;}
  .fbchat-launch{padding:15px;}
  .fbchat-panel{right:0;bottom:0;left:0;width:100%;max-height:88vh;border-radius:var(--r-lg) var(--r-lg) 0 0;}
}
@media (prefers-reduced-motion:reduce){
  .fbchat-launch,.fbchat-go,.fbchat-prog i,.fbchat-next .arw{transition:none;}
  .fbchat-launch:hover,.fbchat-go:hover{transform:none;}
}

/* v3 · presentaciones dentro de las tarjetas de materia prima */
.bcard .fmts{position:relative;z-index:2;display:flex;flex-wrap:wrap;gap:6px;margin-top:14px;}
.bcard .fmt{font-family:'IBM Plex Mono',ui-monospace,'SF Mono',Menlo,monospace;font-variant-numeric:tabular-nums;
  font-size:11px;font-weight:500;padding:4px 10px;border-radius:100px;
  background:rgba(255,255,255,.62);color:var(--acc-deep);border:1px solid rgba(255,255,255,.9);}
.bcard.bcard-cta{display:flex;flex-direction:column;justify-content:center;gap:18px;}
.bcard.bcard-cta .txt{position:relative;z-index:2;}
.bcard.bcard-cta h3{margin-bottom:8px;}
.bcard.bcard-cta .btn{position:relative;z-index:2;align-self:flex-start;}
/* A partir de tres columnas la pastilla toma el ancho de dos y se acuesta:
   texto a la izquierda, acción a la derecha. Así no queda hueco en la grilla. */
@media(min-width:1000px){
  .bcard.bcard-cta{grid-column:span 2;flex-direction:row;align-items:center;gap:44px;padding:42px 46px;}
  .bcard.bcard-cta .txt{flex:1;}
  .bcard.bcard-cta h3{font-size:clamp(24px,2.2vw,30px);line-height:1.1;max-width:17ch;margin-bottom:10px;}
  .bcard.bcard-cta p{font-size:15.5px;max-width:48ch;}
  .bcard.bcard-cta .btn{flex:none;align-self:center;padding:15px 26px;font-size:14.5px;}
  .bcard.bcard-cta .leaf{width:150px!important;height:150px!important;opacity:.16!important;
    right:-18px!important;bottom:-34px!important;}
}

/* Las anclas de la subotonera quedaban tapadas por el header + subnav fijos. */
section[id],[id="contenido"]{scroll-margin-top:112px;}

/* ── Pastillas planas: color en vez de profundidad ────────────────────────
   Las tarjetas de módulo no se despegan del fondo. Se distinguen por relleno
   y borde tomados del acento de la sección, y el hover cambia de color en
   lugar de levantar la pieza. Sin box-shadow y sin translate.
   Se conservan las sombras SOLO donde algo flota de verdad sobre el
   contenido: modal, panel del calificador, menú mobile, botones fijos y la
   chapa dorada sobre foto. */

.icard{background:var(--acc-pale);border:1.5px solid var(--acc-pale2);box-shadow:none;
  transition:background .22s var(--ease),border-color .22s var(--ease);}
.icard:hover{transform:none;box-shadow:none;background:var(--acc-pale2);border-color:var(--acc);}

.bcard{border:1.5px solid var(--acc-pale2);box-shadow:none;
  transition:background .3s var(--ease),border-color .3s var(--ease);}
.bcard:hover{transform:none;box-shadow:none;border-color:var(--acc);
  background:linear-gradient(160deg,var(--acc-pale2) 0%,var(--acc-pale) 100%);}
a.bcard:hover,.bcard.bcard-cta:hover{border-color:var(--acc);}

.unit{box-shadow:none;}
.statcard{box-shadow:none;}
.millers{box-shadow:none;}
.col.b{box-shadow:none;}
.pcard{box-shadow:none;border:1.5px solid var(--border);
  transition:background .22s var(--ease),border-color .22s var(--ease);}
.pcard:hover{transform:none;box-shadow:none;border-color:var(--acc);background:var(--acc-pale);}
/* El círculo del ícono usaba el mismo tono que la tarjeta: al aplanar el
   relleno desaparecía. Va en blanco sobre cualquier tinte de la unidad. */
.icard .ico,.bcard .ic{background:#fff;}

/* Rotación de la imagen del hero: dos capas que se cruzan en el mismo lugar. */
.hero-img .lyr{position:absolute;inset:0;background-size:cover;background-position:center;
  opacity:0;transition:opacity 1.4s var(--ease);}
.hero-img .lyr.on{opacity:1;}
@media (prefers-reduced-motion:reduce){.hero-img .lyr{display:none;}}

/* v3.1 · Logo definitivo FoodBroker (opción A) */
.brand img.lockup{height:42px;width:auto;}
footer .brand img.lockup,.foot-brand img.lockup{height:44px;width:auto;margin:0;display:block;}
.unitlock{display:inline-flex;flex-direction:column;align-items:stretch;gap:0;}
.unitlock img.lockup{height:50px;width:auto;display:block;}
.unitlock .endo{margin-top:10px;padding-top:8px;margin-left:30.1%;}
@media (max-width:760px){
  .brand img.lockup{height:32px;}
  .foot-brand img.lockup{height:38px;}
  .unitlock img.lockup{height:42px;}
}

/* ═══ v3.2 · El isotipo como sistema gráfico ═══════════════════════════════
   Solo decoración: no cambia estructura ni contenido.
   Siluetas por mask-image → toman el color de acento de cada unidad
   (navy en casa madre, verde en Industrial, vino en Institucional). */
:root{--iso-mask:url('brand/fb-iso-mask.svg');--sol-mask:url('brand/fb-sol-mask.svg');--iso-line:url('brand/fb-iso-line.svg');}
html{overflow-x:clip;}
.section,footer{overflow:clip;}
.section.sand{--sec-bg:var(--sand);} .section.cream{--sec-bg:var(--cream);} .section.sage{--sec-bg:var(--sage);}

/* 1 · Marca de agua en secciones claras: isotipo grande, recortado, alternando lado */
.section.sand > .wrap::before,.section.cream > .wrap::before{
  content:'';position:absolute;z-index:-1;pointer-events:none;width:560px;height:560px;top:-40px;right:-300px;
  background:var(--acc);opacity:.045;
  -webkit-mask:var(--iso-mask) center/contain no-repeat;mask:var(--iso-mask) center/contain no-repeat;}
.section:nth-of-type(even) > .wrap::before{right:auto;left:-320px;top:auto;bottom:-120px;}

/* 2 · Secciones oscuras: isotipo en línea, como un sello en relieve */
.section.navy::after,.section.acc::after{
  content:'';position:absolute;z-index:0;pointer-events:none;width:680px;height:680px;right:-240px;top:50%;margin-top:-340px;
  background:var(--iso-line) center/contain no-repeat;opacity:.09;}

/* 3 · Hero: el sol detrás de la foto y la medialuna verde que la corta */
.hero-visual .blob.b1{border-radius:0;width:300px;height:300px;left:-150px;top:30px;background:var(--gold-soft);opacity:.42;
  -webkit-mask:var(--sol-mask) center/contain no-repeat;mask:var(--sol-mask) center/contain no-repeat;}
.hero-visual .blob.b2{border-radius:50%;width:210px;height:210px;left:-80px;bottom:-56px;background:transparent;border:1.5px solid var(--acc);opacity:.22;}
.hero.rev .hero-visual .blob.b1{left:auto;right:-150px;}
.hero.rev .hero-visual .blob.b2{left:auto;right:-80px;}
.hero-visual::after{content:'';position:absolute;z-index:3;pointer-events:none;width:44%;aspect-ratio:1;left:-6%;bottom:-4%;
  background:url('brand/fb-arco.svg') center/contain no-repeat;filter:drop-shadow(0 10px 18px rgba(14,34,68,.18));
  animation:fb-arco-in 1.1s cubic-bezier(.2,.7,.2,1) .25s both;}
.hero.rev .hero-visual::after{left:auto;right:-4%;transform:scaleX(-1);animation-name:fb-arco-in-rev;}
@keyframes fb-arco-in-rev{from{opacity:0;transform:scaleX(-1) translate(-18px,14px) rotate(-6deg);}to{opacity:1;transform:scaleX(-1);}}
@keyframes fb-arco-in{from{opacity:0;transform:translate(-18px,14px) rotate(-6deg);}to{opacity:1;transform:none;}}

/* 4 · Badge de las fotos (+20 / <24h): círculo de sol con corte circular sobre la imagen */
.split .pic .badge{right:24px;bottom:24px;width:128px;height:128px;padding:0 12px;border-radius:50%;
  display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;line-height:1.15;
  box-shadow:0 0 0 9px var(--sec-bg,var(--sand)),var(--sh-md);}
.split .pic .badge b{line-height:1;margin-bottom:4px;}

/* 5 · Tarjetas de unidad: isotipo calado en la esquina, gira al pasar el mouse */
.unit::before{content:'';position:absolute;z-index:2;pointer-events:none;width:300px;height:300px;top:-90px;right:-90px;
  background:#fff;opacity:.17;transition:transform .8s cubic-bezier(.2,.7,.2,1),opacity .4s;
  -webkit-mask:var(--iso-mask) center/contain no-repeat;mask:var(--iso-mask) center/contain no-repeat;}
.unit:hover::before{transform:rotate(-14deg) scale(1.08);opacity:.2;}

/* 6 · Banda de cifras: isotipo en línea asomando a la derecha */
.statcard::after{content:'';position:absolute;z-index:0;pointer-events:none;width:320px;height:320px;right:-80px;top:-120px;
  background:var(--iso-line) center/contain no-repeat;opacity:.16;}
.statcard .st{z-index:1;}

/* 7 · Bandas de llamado (¿Producís…?, ¿Trabajamos juntos?…): el brillo dorado pasa a ser el sol del isotipo */
.millers::before{border-radius:0;width:460px;height:460px;top:-150px;right:-110px;opacity:.5;
  background:var(--iso-line) center/contain no-repeat,radial-gradient(circle at 50% 46%,rgba(224,168,45,.55) 0,transparent 44%);}

/* 8 · Pie: isotipo en línea, grande, recortado abajo a la derecha */
footer{position:relative;}
footer > .wrap{position:relative;z-index:1;}
footer::before{content:'';position:absolute;z-index:0;pointer-events:none;width:560px;height:560px;right:-170px;bottom:-250px;
  background:var(--iso-line) center/contain no-repeat;opacity:.07;}

/* Interacción con el scroll (donde el navegador lo soporta): las marcas de agua giran levemente al pasar */
@supports (animation-timeline:view()){
  .section.sand > .wrap::before,.section.cream > .wrap::before,.section.navy::after,.section.acc::after{
    animation:fb-iso-giro linear both;animation-timeline:view();animation-range:entry 0% exit 100%;}
  @keyframes fb-iso-giro{from{transform:rotate(-10deg) translateY(30px);}to{transform:rotate(8deg) translateY(-30px);}}
}
@media (max-width:760px){
  .section.sand > .wrap::before,.section.cream > .wrap::before{width:360px;height:360px;right:-200px;}
  .section:nth-of-type(even) > .wrap::before{left:-200px;}
  .section.navy::after,.section.acc::after{width:420px;height:420px;right:-200px;margin-top:-210px;}
  .hero-visual .blob.b1{width:200px;height:200px;left:-90px;}
  .split .pic .badge{width:108px;height:108px;right:16px;bottom:16px;}
  footer::before{width:380px;height:380px;right:-140px;bottom:-170px;}
}
@media (prefers-reduced-motion:reduce){
  .hero-visual::after{animation:none;}
  .section.sand > .wrap::before,.section.cream > .wrap::before,.section.navy::after,.section.acc::after{animation:none;}
  .unit::before{transition:none;}
}

/* v3.2.1 · Chips de las tarjetas de unidad: legibles sobre la foto, con y sin hover.
   Antes heredaban color:var(--ink) del .chip genérico (texto navy sobre fondo oscuro)
   y el hover pintaba el borde del mismo color de la tarjeta. */
.unit .chip{color:#fff;background:rgba(0,0,0,.28);border:1px solid rgba(255,255,255,.38);
  -webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);text-shadow:0 1px 2px rgba(0,0,0,.25);cursor:default;transition:background .25s,border-color .25s,color .25s;}
.unit .chip:hover{border-color:rgba(255,255,255,.38);}
.unit:hover .chip{background:rgba(255,255,255,.94);border-color:#fff;color:var(--ink);text-shadow:none;}
.unit.ind:hover .chip{color:var(--green-deep);}
.unit.inst:hover .chip{color:var(--wine-deep);}

/* v3.2.2 · Unidad sin logo repetido (el header ya lo muestra) y medialuna en el color de la sección */
.unitlock{display:block;margin-bottom:22px;}
.unitlock .endo{display:inline-block;margin:0;padding:8px 0 0;border-top:2px solid var(--acc);font-size:11px;letter-spacing:.24em;}
.hero-visual::after{background:var(--acc);
  -webkit-mask:url('brand/fb-arco.svg') center/contain no-repeat;mask:url('brand/fb-arco.svg') center/contain no-repeat;}

/* ═══ v3.3 · Header y botonera con la geometría del isotipo ═════════════════
   Sol (dorado), medialuna (acento de la sección) y franjas con hueco, como el logo. */
header{border-bottom:0;
  background:radial-gradient(circle at 4% -60%,rgba(255,194,0,.16) 0,transparent 22%),rgba(251,250,245,.9);}
/* Franja inferior: sol · hueco · medialuna verde · hueco · acento de sección */
header::after{content:'';position:absolute;left:0;right:0;bottom:0;height:3px;pointer-events:none;
  background:linear-gradient(90deg,#FFC200 0 16%,transparent 16% calc(16% + 6px),#39B54A calc(16% + 6px) 21%,transparent 21% calc(21% + 6px),var(--acc) calc(21% + 6px) 100%);}
header{position:sticky;}
/* Links: subrayado en medialuna que se dibuja; activo en el color de la sección */
.nav-links a{transition:color .2s;}
.nav-links a::after{left:-6%;width:112%;bottom:-3px;height:7px;background:var(--gold);
  -webkit-mask:url('brand/fb-swoosh.svg') center/100% 100% no-repeat;mask:url('brand/fb-swoosh.svg') center/100% 100% no-repeat;
  transform:scaleX(0);transform-origin:left center;transition:transform .35s cubic-bezier(.2,.7,.2,1);}
.nav-links a:hover::after,.nav-links a.active::after{width:112%;transform:scaleX(1);}
.nav-links a.active{color:var(--acc);font-weight:600;}
.nav-links a.active::after{background:var(--acc);}
.nav-links a.active:hover::after{background:var(--gold);}
/* CTA del header: un sol que amanece y llena el botón al pasar el mouse */
.nav-cta{position:relative;overflow:hidden;isolation:isolate;padding-left:40px;transition:color .35s,transform .22s;}
.nav-cta::before{content:'';position:absolute;z-index:-1;left:17px;top:50%;width:12px;height:12px;margin-top:-6px;border-radius:50%;
  background:var(--gold);transition:transform .55s cubic-bezier(.2,.7,.2,1);}
.nav-cta:hover::before{transform:scale(42);}
.nav-cta:hover{color:var(--navy-deep);}
/* Burger: la línea del medio es el sol */
.burger span:nth-child(2){background:var(--gold);width:16px;}
/* Subbotonera de unidad: sol junto al nombre, medialuna en el activo, isotipo en línea al costado */
.subnav{overflow:hidden;top:76px;}
.subnav::after{content:'';position:absolute;right:-30px;top:50%;width:150px;height:150px;margin-top:-75px;pointer-events:none;
  background:var(--iso-line) center/contain no-repeat;opacity:.22;}
.subnav .ul::before{content:'';width:10px;height:10px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 3px rgba(255,194,0,.22);}
.subnav a{position:relative;}
.subnav a::after{content:'';position:absolute;left:-4%;right:-4%;bottom:-7px;height:5px;background:var(--gold);transform:scaleX(0);transform-origin:left;
  -webkit-mask:url('brand/fb-swoosh.svg') center/100% 100% no-repeat;mask:url('brand/fb-swoosh.svg') center/100% 100% no-repeat;transition:transform .3s cubic-bezier(.2,.7,.2,1);}
.subnav a:hover::after,.subnav a.active::after{transform:scaleX(1);}
@media (max-width:999px){.subnav{top:60px;}}
@media (prefers-reduced-motion:reduce){.nav-links a::after,.nav-cta::before,.subnav a::after{transition:none;}}

/* ═══ v3.4 · Pie sin botonera repetida: isotipo grande + texto + contacto ═══ */
footer::before{display:none;}
.foot-grid{align-items:start;}
@media(min-width:760px){.foot-grid{grid-template-columns:auto minmax(0,1.3fr) minmax(0,1fr);gap:56px;}}
.foot-iso img{width:132px;height:132px;display:block;filter:drop-shadow(0 18px 40px rgba(0,0,0,.28));}
.foot-brand p.foot-claim{font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-weight:500;font-size:clamp(19px,1.9vw,24px);line-height:1.38;
  letter-spacing:-.01em;color:#fff;max-width:30ch;margin:4px 0 0;}
.foot-brand p.foot-claim{margin-top:4px;}
.foot-contact a{font-size:15px;}
.foot-contact a:first-of-type{font-family:'Archivo','Helvetica Neue',Arial,sans-serif;font-weight:600;font-size:17px;color:#fff;
  padding-bottom:10px;margin-bottom:6px;border-bottom:1px solid rgba(255,255,255,.14);}
.foot-contact a:first-of-type:hover{color:var(--gold);}
@media(max-width:759px){.foot-iso img{width:96px;height:96px;}}
/* Volver arriba: flecha con trazo firme */
.totop{display:flex;align-items:center;justify-content:center;}
.totop svg{display:block;}
