
:root {
  --c-espresso:   #0E0906;
  --c-chocolate:  #2A1508;
  --c-amber:      #C87C28;
  --c-gold:       #E4A83C;
  --c-saffron:    #F0B830;
  --c-cream:      #FAF5EC;
  --c-ground:     #FAF5EC;
  --c-ground-alt: #F0E8D8;
  --c-surface:    #FFFFFF;
  --c-text:       #1E1208;
  --c-text-2:     #5A4030;
  --c-text-3:     #8A7060;
  --c-accent:     #C87C28;
  --c-accent-l:   #E4A83C;
  --c-rule:       rgba(30,18,8,0.1);
  --f-display: Georgia, 'Times New Roman', serif;
  --f-body:    system-ui, -apple-system, 'Helvetica Neue', Arial, sans-serif;
  --ease: cubic-bezier(0.16,1,0.3,1);
}
@media(prefers-color-scheme:dark){
  :root{
    --c-ground:#120A04;--c-ground-alt:#1E1008;--c-surface:#2A1A0C;
    --c-text:#FAF0E0;--c-text-2:#C8A880;--c-text-3:#907060;
    --c-accent:#D48A38;--c-accent-l:#EAB848;--c-rule:rgba(250,240,224,0.1);
  }
}
:root[data-theme="light"]{--c-ground:#FAF5EC;--c-ground-alt:#F0E8D8;--c-surface:#FFFFFF;--c-text:#1E1208;--c-text-2:#5A4030;--c-text-3:#8A7060;--c-accent:#C87C28;--c-accent-l:#E4A83C;--c-rule:rgba(30,18,8,0.1);}
:root[data-theme="dark"]{--c-ground:#120A04;--c-ground-alt:#1E1008;--c-surface:#2A1A0C;--c-text:#FAF0E0;--c-text-2:#C8A880;--c-text-3:#907060;--c-accent:#D48A38;--c-accent-l:#EAB848;--c-rule:rgba(250,240,224,0.1);}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{background:var(--c-ground);color:var(--c-text);font-family:var(--f-body);font-size:1.0625rem;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
:focus-visible{outline:2px solid var(--c-accent);outline-offset:3px;}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;}}

.label{font-size:0.6875rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:var(--c-accent);}
.eyebrow{display:flex;align-items:center;gap:0.75rem;margin-bottom:1.5rem;}
.eyebrow::after{content:'';display:block;width:2.5rem;height:1px;background:var(--c-accent);}
.reveal{opacity:0;transform:translateY(20px);transition:opacity .65s var(--ease),transform .65s var(--ease);}
.reveal.in{opacity:1;transform:none;}
.d1{transition-delay:.1s;}.d2{transition-delay:.2s;}.d3{transition-delay:.3s;}

/* NAV */
.nav{position:fixed;top:0;left:0;right:0;z-index:200;height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1.5rem,5vw,4rem);transition:background .4s var(--ease),border-color .4s;border-bottom:1px solid transparent;background:rgba(0,0,0,0.5);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);}
.nav.on{background:rgba(14,9,6,0.94);border-bottom-color:rgba(228,168,60,0.15);backdrop-filter:blur(14px);}
.logo{display:flex;align-items:center;}
.logo img{height:28px;width:auto;filter:brightness(0) invert(1);opacity:0.92;transition:opacity .2s;}
.logo img:hover{opacity:1;}
.nav-links{display:flex;align-items:center;gap:clamp(.85rem,1.65vw,1.75rem);list-style:none;min-width:0;}
.nav-links a{font-size:clamp(.72rem,.78vw,.8125rem);font-weight:500;letter-spacing:0.02em;color:#FFFFFF;transition:color .2s;white-space:nowrap;}
.nav-links a:hover{color:var(--c-gold);}
.nav-btn{font-size:clamp(.68rem,.72vw,.75rem);font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--c-espresso);background:var(--c-gold);padding:.5rem clamp(.75rem,1.2vw,1.1rem);border:none;cursor:pointer;border-radius:2px;transition:background .2s;white-space:nowrap;}
.nav-btn:hover{background:var(--c-saffron);}
.theme-btn{background:none;border:none;cursor:pointer;color:rgba(250,245,236,0.4);font-size:1rem;padding:.25rem;margin-left:.5rem;transition:color .2s;}
.theme-btn:hover{color:#FAF5EC;}

/* HERO */
.hero{position:relative;min-height:100vh;display:flex;flex-direction:column;overflow:hidden;background:#0E0906;}
.hero-bg{position:absolute;inset:0;background-image:url('../images/hero-background.jpg');background-size:cover;background-position:center 80%;opacity:1;}
.hero-bg-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(14,9,6,0.0) 0%,rgba(14,9,6,0.05) 40%,rgba(14,9,6,0.45) 62%,rgba(14,9,6,0.75) 80%,rgba(14,9,6,0.88) 100%);}
.hero-content{position:absolute;bottom:3rem;left:0;right:0;display:flex;flex-direction:column;align-items:center;text-align:center;padding:0 clamp(1.5rem,5vw,4rem);max-width:1200px;margin:0 auto;z-index:2;}
.hero-logo{margin-bottom:2.5rem;}
.hero-logo img{height:44px;width:auto;filter:brightness(0) invert(1);opacity:0.95;}
.hero-kicker{font-size:0.75rem;font-weight:700;letter-spacing:0.18em;text-transform:uppercase;color:var(--c-gold);display:flex;align-items:center;gap:1rem;margin-bottom:1.75rem;justify-content:center;}
.hero-kicker::before{content:'';width:2rem;height:1px;background:var(--c-gold);}.hero-kicker::after{content:'';width:2rem;height:1px;background:var(--c-gold);}
.hero-h1{font-family:var(--f-display);font-style:italic;font-size:clamp(1.375rem,3vw,2.5rem);line-height:1.15;letter-spacing:-0.02em;color:#FAF5EC;text-wrap:balance;margin-bottom:1rem;max-width:580px;}
.hero-h1 em{font-style:normal;color:var(--c-gold);}
.hero-sub{font-size:0.8125rem;color:rgba(250,245,236,0.5);max-width:400px;line-height:1.6;margin-bottom:2rem;margin-left:auto;margin-right:auto;}
.hero-actions{display:flex;gap:1rem;flex-wrap:wrap;}
.btn-gold{background:var(--c-amber);color:#FAF5EC;font-size:0.8125rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;padding:.9rem 2rem;border:none;cursor:pointer;border-radius:2px;transition:background .2s,transform .15s;display:inline-flex;align-items:center;gap:.5rem;}
.btn-gold:hover{background:var(--c-gold);transform:translateY(-1px);}
.hero-brands{position:relative;border-top:1px solid rgba(228,168,60,0.2);padding:2rem clamp(1.5rem,5vw,4rem);display:flex;gap:2.5rem;align-items:center;flex-wrap:wrap;max-width:1200px;width:100%;margin:0 auto;}
.hero-brand-label{font-size:0.6875rem;letter-spacing:0.14em;text-transform:uppercase;color:rgba(250,245,236,0.3);font-weight:600;white-space:nowrap;}
.brand-pills{display:flex;gap:1.5rem;align-items:center;flex-wrap:wrap;}
.brand-pill{font-size:0.8125rem;font-weight:600;color:rgba(250,245,236,0.5);padding:.35rem .875rem;border:1px solid rgba(228,168,60,0.18);border-radius:2px;transition:color .2s,border-color .2s;cursor:default;letter-spacing:.04em;}
.brand-pill:hover{color:#FAF5EC;border-color:rgba(228,168,60,0.45);}

/* SHARED */
.container{max-width:1200px;margin:0 auto;}
.section-pad{padding:clamp(5rem,10vw,9rem) clamp(1.5rem,5vw,4rem);}
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,6vw,7rem);align-items:center;}
.split-img{border-radius:3px;overflow:hidden;aspect-ratio:3/4;position:relative;}
.split-img img{width:100%;height:100%;object-fit:cover;transition:transform 5s var(--ease);}
.split-img:hover img{transform:scale(1.04);}
.split-img-caption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(14,9,6,0.7));padding:2rem 1.5rem 1.25rem;font-family:var(--f-display);font-style:italic;font-size:1rem;color:#FAF5EC;line-height:1.4;}
.section-heading{font-family:var(--f-display);font-size:clamp(1.75rem,3.5vw,3rem);line-height:1.1;letter-spacing:-0.02em;color:var(--c-text);text-wrap:balance;margin-bottom:1.5rem;}
.section-p{color:var(--c-text-2);line-height:1.8;margin-bottom:1rem;max-width:52ch;}
.text-link{display:inline-flex;align-items:center;gap:.5rem;color:var(--c-accent);font-weight:700;font-size:0.8125rem;letter-spacing:.06em;text-transform:uppercase;margin-top:.75rem;padding-bottom:1px;border-bottom:1px solid transparent;transition:border-color .2s;}
.text-link:hover{border-bottom-color:var(--c-accent);}
.text-link::after{content:'?';}
.product-tags{display:flex;flex-wrap:wrap;gap:.625rem;margin-top:1.75rem;}
.tag{font-size:0.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:.375rem .875rem;border:1px solid var(--c-rule);border-radius:2px;color:var(--c-text-2);transition:border-color .2s,color .2s;cursor:default;}
.tag:hover{border-color:var(--c-accent);color:var(--c-accent);}
.stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:2.5rem;padding-top:2.5rem;border-top:1px solid var(--c-rule);}
.stat-n{font-family:var(--f-display);font-size:2.5rem;color:var(--c-text);line-height:1;margin-bottom:.25rem;}
.stat-n span{color:var(--c-accent);}
.stat-l{font-size:0.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--c-text-3);font-weight:500;}

/* Dark section helper */
.dark-section{background:var(--c-espresso);}
.dark-section .label{color:var(--c-gold);}
.dark-section .eyebrow::after{background:var(--c-gold);}
.dark-section .section-heading{color:#FAF5EC;}
.dark-section .section-p{color:rgba(250,245,236,0.5);}
.dark-section .text-link{color:var(--c-gold);}
.dark-section .tag{border-color:rgba(228,168,60,0.18);color:rgba(250,245,236,0.45);}
.dark-section .tag:hover{border-color:var(--c-gold);color:var(--c-gold);}
.dark-section .stat-row{border-top-color:rgba(228,168,60,0.15);}
.dark-section .stat-n{color:#FAF5EC;}
.dark-section .stat-l{color:rgba(250,245,236,0.35);}

/* Full-bleed image section */
.fullbleed-section{position:relative;overflow:hidden;min-height:80vh;display:flex;align-items:center;}
.fullbleed-bg{position:absolute;inset:0;background-size:cover;background-position:center;}
.fullbleed-overlay-left{position:absolute;inset:0;background:linear-gradient(to right,rgba(14,9,6,0.88) 0%,rgba(14,9,6,0.6) 55%,rgba(14,9,6,0.08) 100%);}
.fullbleed-content{position:relative;padding:5rem clamp(1.5rem,5vw,4rem);max-width:1200px;margin:0 auto;width:100%;}

/* Grupo */
.grupo-media{width:100%;background:#0E0906;overflow:hidden;}
.grupo-video{display:block;width:100%;height:auto;max-height:78vh;object-fit:cover;background:#0E0906;}
.grupo-intro{max-width:1180px;margin:0 auto 3rem;text-align:center;padding:0 clamp(1.5rem,5vw,4rem);}
.grupo-intro .eyebrow{justify-content:center;}
.grupo-intro .eyebrow::before{content:'';display:block;width:2.5rem;height:1px;background:var(--c-accent);}
.grupo-intro .section-heading{margin-left:auto;margin-right:auto;}
.grupo-intro .section-p{max-width:94ch;margin-left:auto;margin-right:auto;}
.grupo-quality{max-width:1040px;margin:2.75rem auto 0;padding:2.25rem 0 0;border-top:1px solid var(--c-rule);text-align:left;}
.grupo-quality-title{font-family:var(--f-display);font-size:clamp(1.65rem,3vw,2.5rem);line-height:1.08;color:var(--c-text);margin-bottom:1rem;text-align:center;}
.grupo-quality .section-p{max-width:94ch;text-align:center;}
.grupo-quality-logos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;align-items:center;max-width:720px;margin:2rem auto 0;}
.grupo-quality-logo{background:#fff;border:1px solid var(--c-rule);border-radius:3px;padding:1.1rem;display:flex;align-items:center;justify-content:center;min-height:128px;}
.grupo-quality-logo img{max-width:100%;max-height:100px;width:auto;height:auto;object-fit:contain;}
.grupo-intro .stat-row{max-width:720px;margin-left:auto;margin-right:auto;}

/* Spanish Cheese */
.cheese-section{position:relative;overflow:hidden;background-image:linear-gradient(90deg,rgba(13,9,5,0.18) 0%,rgba(13,9,5,0.18) 42%,rgba(13,9,5,0.72) 67%,rgba(13,9,5,0.92) 100%),url('../images/fondo-spanish-cheese.jpg');background-size:cover;background-position:center;min-height:760px;}
.cheese-section .cheese-logo-wrap{position:relative;z-index:1;}
.cheese-section .cheese-layout{position:relative;z-index:1;display:flex!important;justify-content:flex-end;align-items:center;min-height:520px;}
.cheese-section .cheese-content{width:min(520px,100%);margin-left:auto;}
.cheese-section .split-img{display:none;}
.cheese-section .cheese-copy{width:100%;background:rgba(13,9,5,0.78);padding:4rem 3.5rem;display:flex;flex-direction:column;justify-content:center;backdrop-filter:blur(2px);}
.cheese-section .cheese-copy-logo{width:min(280px,100%);height:auto;margin:0 0 1.5rem auto;}
.cheese-eyebrow::before{content:'';display:block;width:2.5rem;height:1px;background:var(--c-gold);}

/* Avello */
.avello-section{position:relative;overflow:hidden;background-image:linear-gradient(90deg,rgba(13,9,5,0.16) 0%,rgba(13,9,5,0.26) 42%,rgba(13,9,5,0.72) 67%,rgba(13,9,5,0.92) 100%),url('../images/fondo-avello-web.jpg');background-size:cover;background-position:center;min-height:760px;}
.avello-section .avello-layout{position:relative;z-index:1;display:flex!important;justify-content:flex-end;align-items:center;min-height:520px;}
.avello-section .avello-content{width:min(520px,100%);margin-left:auto;margin-right:clamp(-4rem,-5vw,-1rem);}
.avello-section .avello-copy{width:100%;background:rgba(13,9,5,0.78);padding:4rem 3.5rem;display:flex;flex-direction:column;justify-content:center;backdrop-filter:blur(2px);}
.avello-section .avello-copy-logo{width:min(280px,100%);height:auto;margin:0 0 1.5rem 0;}

/* Fridul */
.fridul-section{display:grid;grid-template-columns:1fr 1fr;min-height:720px;background:var(--c-ground);}
.fridul-image{min-height:720px;background-image:url('../images/fondo-fridul-web.jpg');background-size:cover;background-position:center;}
.fridul-content{display:flex;align-items:center;padding:clamp(3rem,6vw,6rem) clamp(1.5rem,5vw,5rem);}
.fridul-content-inner{max-width:560px;}

/* WORLD */
.world-section{background:var(--c-ground);border-top:1px solid var(--c-rule);}`r`n.world-section .container{max-width:1560px;}
.world-layout{display:flex;flex-direction:column;gap:clamp(2rem,5vw,4rem);align-items:center;}
.world-copy{width:100%;max-width:1040px;text-align:center;}
.world-copy .eyebrow{justify-content:center;}
.world-copy .section-heading{max-width:980px;margin-left:auto;margin-right:auto;text-align:center;}
.world-copy .section-p{max-width:820px;margin-left:auto;margin-right:auto;}
.world-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:2rem auto 0;max-width:760px;}
.world-stats div{border-left:0;border-top:1px solid var(--c-rule);padding:1rem .75rem 0;min-width:0;}
.world-stats span{display:block;font-family:var(--f-display);font-size:clamp(1.7rem,3vw,2.6rem);line-height:1;color:var(--c-accent);}
.world-stats small{display:block;margin-top:.45rem;font-size:.75rem;line-height:1.35;color:var(--c-text-2);text-transform:uppercase;letter-spacing:.08em;}
.world-map-card{position:relative;width:100%;}
.world-map{position:relative;overflow:hidden;border:1px solid var(--c-rule);border-radius:3px;background:var(--c-surface);box-shadow:0 22px 70px rgba(30,18,8,.08);width:100%;}
.world-map img{width:100%;height:auto;opacity:1;filter:none;}
.world-pin{position:absolute;left:var(--x);top:var(--y);width:14px;height:14px;border-radius:50%;border:2px solid #FAF5EC;background:var(--c-accent);box-shadow:0 0 0 5px rgba(200,124,40,.16),0 10px 24px rgba(30,18,8,.18);transform:translate(-50%,-50%);cursor:pointer;transition:transform .18s var(--ease),background .18s,box-shadow .18s;z-index:2;}
.world-pin::after{content:'';position:absolute;inset:-12px;border-radius:50%;}
.world-pin:hover,.world-pin:focus-visible,.world-pin.is-active{background:var(--c-gold);transform:translate(-50%,-50%) scale(1.28);box-shadow:0 0 0 9px rgba(228,168,60,.18),0 14px 30px rgba(30,18,8,.22);}
.world-popover{position:absolute;left:50%;top:50%;width:min(260px,calc(100% - 2rem));padding:1rem 1.1rem;border:1px solid rgba(228,168,60,.28);border-radius:3px;background:rgba(14,9,6,.94);color:#FAF5EC;box-shadow:0 18px 44px rgba(14,9,6,.32);opacity:0;pointer-events:none;transform:translate(-50%,-120%);transition:opacity .16s var(--ease),transform .16s var(--ease);z-index:4;}
.world-popover.is-visible{opacity:1;transform:translate(-50%,-108%);}
.world-popover-region{display:block;font-size:.65rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--c-gold);margin-bottom:.35rem;}
.world-popover-country{display:block;font-family:var(--f-display);font-size:1.45rem;line-height:1.1;margin-bottom:.45rem;}
.world-popover small{display:block;color:rgba(250,245,236,.62);line-height:1.5;}
.world-hint{font-size:.75rem;color:var(--c-text-3);margin-top:.75rem;text-align:right;}
/* MARCAS */
.marcas-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;}
.marcas-header{text-align:center;margin-bottom:3rem;}
.marcas-header .eyebrow{justify-content:center;}
.marcas-header .eyebrow::before{content:'';display:block;width:2.5rem;height:1px;background:var(--c-accent);}
.marcas-header .section-heading{margin-left:auto;margin-right:auto;}
.marca-card{background:var(--c-surface);border:1px solid var(--c-rule);border-radius:3px;padding:2rem 1.75rem;transition:border-color .25s,transform .25s var(--ease),box-shadow .25s;cursor:pointer;}
.marca-card:hover{border-color:var(--c-accent);transform:translateY(-3px);box-shadow:0 12px 40px rgba(200,124,40,0.1);}
.marca-logo{height:82px;background:#fff;border:1px solid var(--c-rule);border-radius:3px;display:flex;align-items:center;justify-content:center;padding:.9rem 1rem;margin-bottom:1.35rem;}
.marca-logo img{max-width:100%;max-height:58px;width:auto;height:auto;object-fit:contain;display:block;}
.marca-cat-tag{font-size:0.6875rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--c-accent);margin-bottom:1.25rem;}
.marca-name{font-family:var(--f-display);font-size:1.375rem;color:var(--c-text);margin-bottom:.625rem;line-height:1.2;}
.marca-desc{font-size:0.8125rem;color:var(--c-text-3);line-height:1.55;}
.marca-since{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--c-rule);font-size:0.6875rem;letter-spacing:.08em;text-transform:uppercase;color:var(--c-text-3);}
.brand-logo-card{display:inline-flex;align-items:center;justify-content:center;background:#fff;border-radius:3px;padding:1rem 1.25rem;margin-bottom:1.5rem;max-width:min(360px,100%);}
.brand-logo-card img{display:block;width:100%;height:auto;max-height:86px;object-fit:contain;}
.brand-logo-img{display:inline-block;width:auto;max-width:min(360px,80vw);height:auto;object-fit:contain;}
.brand-logo-img-cheese{background:#fff;border-radius:3px;padding:.75rem 1rem;max-height:96px;}

/* CATÁLOGOS */
.catalogos-header{display:none;}
.catalogos-heading{font-family:var(--f-display);font-size:clamp(1.75rem,3.5vw,3rem);line-height:1.1;letter-spacing:-0.02em;color:var(--c-text);text-wrap:balance;}
.catalogos-sub{color:var(--c-text-2);line-height:1.75;align-self:end;}
.catalogos-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-bottom:3rem;align-items:stretch;}
.catalogos-intro-tile{background:transparent;border:0;border-radius:3px;padding:clamp(1.25rem,2.4vw,2rem);display:flex;flex-direction:column;justify-content:flex-end;aspect-ratio:3/4;min-height:0;}
.catalogos-intro-tile .eyebrow{margin-bottom:1rem;}
.catalogos-intro-title{font-family:var(--f-display);font-size:clamp(1.9rem,3.2vw,3rem);line-height:1.06;letter-spacing:-0.02em;color:var(--c-text);text-wrap:balance;margin-bottom:1rem;}
.catalogos-intro-copy{color:var(--c-text-2);font-size:.9375rem;line-height:1.7;max-width:34rem;}
.cat-card{position:relative;border-radius:3px;overflow:hidden;cursor:pointer;background:var(--c-espresso);}
.cat-card{aspect-ratio:3/4;}
.cat-card-img{width:100%;height:100%;min-height:0;object-fit:cover;display:block;transition:transform .6s var(--ease),filter .4s;filter:brightness(0.85);}
.cat-card-logo{background:#fff;}
.cat-card-logo .cat-card-img{object-fit:contain;padding:1.25rem;filter:brightness(1);}
.cat-card-logo .cat-card-overlay{background:linear-gradient(to top,rgba(14,9,6,0.58) 0%,transparent 44%);}
.cat-card:hover .cat-card-img{transform:scale(1.04);filter:brightness(0.65);}
.cat-card-logo:hover .cat-card-img{filter:brightness(1);}
.cat-card-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(14,9,6,0.8) 0%,transparent 55%);pointer-events:none;}
.cat-card-label{position:absolute;bottom:1.25rem;left:1.25rem;right:1.25rem;}
.cat-card-label .label{color:var(--c-gold);margin-bottom:.25rem;display:block;}
.cat-card-title{font-family:var(--f-display);font-style:italic;font-size:1.125rem;color:#FAF5EC;line-height:1.2;}
.catalog-featured .cat-card-title{font-size:1.125rem;}
.catalog-cta-strip{display:flex;align-items:center;justify-content:space-between;gap:2rem;background:var(--c-surface);border:1px solid var(--c-rule);border-radius:3px;padding:2rem 2.5rem;flex-wrap:wrap;}
.catalog-cta-title{font-family:var(--f-display);font-size:1.375rem;color:var(--c-text);margin-bottom:.3rem;}
.catalog-cta-desc{font-size:0.875rem;color:var(--c-text-2);}
.catalog-cta-actions{display:flex;gap:1rem;align-items:center;flex-shrink:0;flex-wrap:wrap;}
.btn-outline-dark{background:transparent;color:var(--c-accent);font-size:0.8125rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;padding:.875rem 1.75rem;border:1px solid var(--c-accent);cursor:pointer;border-radius:2px;transition:background .2s,color .2s;}
.btn-outline-dark:hover{background:var(--c-accent);color:#FAF5EC;}

/* CONTACTO */
.cta-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr auto;gap:4rem;align-items:center;}
.cta-h{font-family:var(--f-display);font-style:italic;font-size:clamp(2rem,4vw,3.25rem);line-height:1.1;color:#FAF5EC;text-wrap:balance;margin-bottom:.875rem;}
.cta-sub{color:rgba(250,245,236,0.5);font-size:1.125rem;max-width:52ch;}
.cta-right{display:flex;flex-direction:column;gap:1rem;align-items:flex-start;flex-shrink:0;}
.cta-detail{font-size:0.8125rem;color:rgba(250,245,236,0.35);display:flex;align-items:center;gap:.5rem;}
.contact-eyebrow::before{content:'';display:block;width:2.5rem;height:1px;background:var(--c-gold);}

/* NEWS */
.news-page{background:var(--c-ground);min-height:100vh;padding-top:72px;}
.news-hero{background:#0E0906;color:#FAF5EC;padding:clamp(5rem,10vw,8rem) clamp(1.5rem,5vw,4rem) clamp(3.5rem,7vw,6rem);position:relative;overflow:hidden;}
.news-hero::after{content:'';position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent,rgba(228,168,60,.45),transparent);}
.news-title{font-family:var(--f-display);font-size:clamp(2.25rem,5vw,5rem);line-height:1.02;color:#FAF5EC;max-width:880px;text-wrap:balance;margin-bottom:1.25rem;}
.news-lead{font-size:clamp(1rem,1.4vw,1.2rem);line-height:1.75;color:rgba(250,245,236,.62);max-width:720px;}
.news-list-section{background:var(--c-ground);}
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;}
.news-card{background:var(--c-surface);border:1px solid var(--c-rule);border-radius:3px;overflow:hidden;transition:transform .2s var(--ease),border-color .2s,box-shadow .2s;}
.news-card:hover{transform:translateY(-2px);border-color:rgba(200,124,40,.35);box-shadow:0 18px 44px rgba(30,18,8,.08);}
.news-card-link{display:flex;flex-direction:column;height:100%;}
.news-card-media{aspect-ratio:16/10;background:var(--c-ground-alt);overflow:hidden;}
.news-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .4s var(--ease);}
.news-card:hover .news-card-media img{transform:scale(1.035);}
.news-card-body{padding:1.5rem;display:flex;flex-direction:column;gap:.75rem;min-height:16rem;}
.news-date{font-size:.6875rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--c-accent);}
.news-card-title{font-family:var(--f-display);font-size:clamp(1.35rem,2vw,1.75rem);line-height:1.15;color:var(--c-text);text-wrap:balance;}
.news-excerpt{font-size:.9375rem;line-height:1.7;color:var(--c-text-2);}
.news-more{margin-top:auto;font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--c-accent);}
.news-empty{border:1px solid var(--c-rule);background:var(--c-surface);border-radius:3px;padding:clamp(2rem,5vw,4rem);max-width:760px;}
.news-empty h2{font-family:var(--f-display);font-size:clamp(1.7rem,3vw,2.6rem);line-height:1.1;color:var(--c-text);margin-bottom:1rem;}
.news-empty p{color:var(--c-text-2);line-height:1.75;margin-bottom:1.75rem;max-width:620px;}
/* FOOTER */
footer{background:#070503;padding:4rem clamp(1.5rem,5vw,4rem) 2rem;color:rgba(250,245,236,0.3);}
.footer-inner{max-width:1200px;margin:0 auto;}
.footer-logo img{height:22px;width:auto;filter:brightness(0) invert(1);opacity:0.4;margin-bottom:1rem;}
.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:3rem;padding-bottom:3rem;border-bottom:1px solid rgba(228,168,60,0.1);margin-bottom:2rem;}
.footer-tagline{font-family:var(--f-display);font-style:italic;font-size:1rem;color:rgba(250,245,236,0.25);margin-bottom:1rem;line-height:1.5;}
.footer-col-title{font-size:0.6875rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(250,245,236,0.28);margin-bottom:1.25rem;}
.footer-links{list-style:none;display:flex;flex-direction:column;gap:.625rem;}
.footer-links a{font-size:0.875rem;color:rgba(250,245,236,0.42);transition:color .2s;}
.footer-links a:hover{color:#FAF5EC;}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;font-size:0.6875rem;color:rgba(250,245,236,0.2);flex-wrap:wrap;gap:1rem;}
.footer-legal{display:flex;gap:1.5rem;}
.footer-legal a{color:inherit;transition:color .2s;}
.footer-legal a:hover{color:rgba(250,245,236,0.4);}

/* RESPONSIVE */
@media(max-width:1024px){
  .split{grid-template-columns:1fr;}
  .marcas-grid{grid-template-columns:repeat(2,1fr);}
  .cta-inner{grid-template-columns:1fr;}
  .footer-top{grid-template-columns:1fr 1fr;}
  .catalogos-header{grid-template-columns:1fr;}
  .fullbleed-section{min-height:65vh;}
  .cheese-section{background-image:linear-gradient(90deg,rgba(13,9,5,0.2) 0%,rgba(13,9,5,0.55) 48%,rgba(13,9,5,0.9) 100%),url('../images/fondo-spanish-cheese.jpg');}
  .cheese-section .cheese-content{width:min(500px,calc(100% - 3rem));}
  .avello-section{background-image:linear-gradient(90deg,rgba(13,9,5,0.2) 0%,rgba(13,9,5,0.55) 48%,rgba(13,9,5,0.9) 100%),url('../images/fondo-avello-web.jpg');}
  .avello-section .avello-content{width:min(500px,calc(100% - 3rem));margin-right:0;}
  .fridul-section{grid-template-columns:1fr;}
  .fridul-image{min-height:420px;}
  .fridul-content{padding:3rem clamp(1.5rem,5vw,4rem);}
  .fridul-content-inner{max-width:760px;}
  .news-grid{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:768px){
  .nav-links{display:none;}
  .world-pin{width:12px;height:12px;}
  .world-popover{position:fixed;left:1rem!important;right:1rem;top:auto!important;bottom:1rem;width:auto;transform:none;}
  .world-popover.is-visible{transform:none;}
  .world-hint{text-align:left;}
  .marcas-grid{grid-template-columns:1fr;}
  .footer-top{grid-template-columns:1fr;}
  .catalogos-grid{grid-template-columns:1fr 1fr;}
  .news-grid{grid-template-columns:1fr;}
  .news-card-body{min-height:auto;}
  .catalog-featured{grid-row:span 1;}
  .stat-row{grid-template-columns:repeat(3,1fr);}
  .grupo-quality-logos{grid-template-columns:1fr;max-width:420px;}
  .cheese-section{min-height:auto;background-position:center;background-image:linear-gradient(180deg,rgba(13,9,5,0.42) 0%,rgba(13,9,5,0.82) 54%,rgba(13,9,5,0.96) 100%),url('../images/fondo-spanish-cheese.jpg');}
  .cheese-section .cheese-layout{min-height:460px;align-items:flex-end;padding:0 1.5rem 3rem;}
  .cheese-section .cheese-content{width:100%;}
  .cheese-section .cheese-copy{padding:2.25rem 1.5rem;}
  .avello-section{min-height:auto;background-position:center;background-image:linear-gradient(180deg,rgba(13,9,5,0.42) 0%,rgba(13,9,5,0.82) 54%,rgba(13,9,5,0.96) 100%),url('../images/fondo-avello-web.jpg');}
  .avello-section .avello-layout{min-height:460px;align-items:flex-end;padding:0 1.5rem 3rem;}
  .avello-section .avello-content{width:100%;margin-right:0;}
  .avello-section .avello-copy{padding:2.25rem 1.5rem;}
  .fridul-section{min-height:auto;}
  .fridul-image{min-height:360px;}
  .fridul-content{padding:2.75rem 1.5rem;}
}
