:root{
  --green:#009b4e;
  --green-light:#00b96d;
  --text:#757575;
  --line:#e6e6e6;
  --soft:#f7f7f7;
  --blue:#0d5d84;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;font-family:Arial, Helvetica, sans-serif;color:var(--text);font-size:14px;line-height:1.7}
.site-header{background:#fff;padding:18px 0 17px}
.header-inner{width:94%;max-width:1375px;margin:0 auto;display:flex;align-items:center;justify-content:space-between}
.logo img{width:255px;display:block}.main-nav{display:flex;gap:25px;align-items:center;font-size:14px;font-weight:700;letter-spacing:.3px}.main-nav a{color:var(--green);text-decoration:none}.separator{height:30px;width:1px;background:#111;opacity:.8}
.hero-slider{width:94%;max-width:1375px;height:417px;margin:0 auto 74px;position:relative;overflow:visible}.slides,.slide{height:100%;position:relative}.slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity .65s ease}.slide.active{opacity:1;z-index:1}.slider-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:42px;height:72px;border:0;background:rgba(255,255,255,.35);font-size:45px;color:#fff;cursor:pointer;opacity:0;transition:.25s}.hero-slider:hover .slider-btn{opacity:1}.prev{left:0}.next{right:0}.dots{position:absolute;z-index:4;bottom:-29px;left:50%;transform:translateX(-50%);display:flex;gap:9px}.dot{width:17px;height:3px;border:0;background:#e0e0e0;padding:0}.dot.active{background:var(--green-light)}
section{width:94%;max-width:1375px;margin-left:auto;margin-right:auto}.section-heading{border-top:1px solid var(--line);text-align:center;margin-bottom:50px}.section-heading h1,.section-heading h2{display:inline-block;background:#fff;margin:-24px 0 0;padding:0 28px;color:var(--green-light);font-size:33px;font-weight:500}.brand-grid{width:78%;margin:0 auto 75px;display:grid;grid-template-columns:1fr 1px 1fr;gap:85px;align-items:stretch}.brand-divider{background:var(--line)}.brand-card{text-align:center;padding-top:3px;border-bottom:3px solid var(--green)}.brand-card.vitamin{border-bottom-color:var(--blue)}.brand-photo{height:104px;background-size:cover;background-position:center;margin-bottom:23px}.brand-logo{font-weight:700;margin-bottom:18px;font-size:22px;color:#098c4b}.brand-logo small{display:block;font-size:8px;letter-spacing:.8px}.vitamin-logo{color:#075984;font-size:26px;line-height:1}
.company{background:#f8f8f8;display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:64px 75px 58px;margin-bottom:60px}.company-img{background:url('../img/company-placeholder.jpg') center/cover no-repeat;min-height:315px}.company-text h2{color:var(--green-light);font-weight:500;font-size:34px;margin:0 0 24px;border-bottom:1px solid var(--line);padding-bottom:8px}.company-text p{margin:0 0 7px;font-size:13px;line-height:1.75}.sustainability-report{background:var(--green);margin-bottom:60px;padding:42px 75px}.sustainability-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.sustainability-report h2{margin:0;color:#fff;font-size:32px;line-height:1.2;font-weight:500}.sustainability-download{display:inline-flex;align-items:center;justify-content:center;min-width:170px;padding:12px 24px;border:2px solid #fff;color:#fff;text-decoration:none;text-transform:uppercase;font-size:12px;line-height:1;font-weight:700;letter-spacing:.4px;transition:background .2s ease,color .2s ease}.sustainability-download:hover,.sustainability-download:focus-visible{background:#fff;color:var(--green)}
.location{margin-bottom:54px}.section-heading.small{margin-bottom:55px}.map-embed{height:265px;position:relative;overflow:hidden;border:1px solid #d4efe0;background:#f2f2f2}.map-embed iframe{width:100%;height:100%;border:0;display:block}.map-link{display:inline-block;margin-top:16px;background:var(--green);color:#fff;text-decoration:none;font-weight:700;padding:10px 24px;border-radius:2px;letter-spacing:.2px}.map-link:hover{background:#008344}
.site-footer{width:94%;max-width:1375px;margin:0 auto 30px;background:var(--green);min-height:138px;color:#fff;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;padding:0 185px;font-size:11px;font-weight:700}.site-footer img{width:185px;justify-self:center}.to-top{color:white;text-decoration:none;font-size:22px;justify-self:end;opacity:.8}
@media (max-width:900px){.site-header{padding:16px 0}.header-inner{align-items:center;gap:16px}.logo img{width:210px}.main-nav{font-size:12px;gap:14px}.hero-slider{width:100%;height:58vw;min-height:300px;margin-bottom:68px}.brand-grid{width:92%;grid-template-columns:1fr;gap:35px}.brand-divider{display:none}.company{grid-template-columns:1fr;padding:35px 22px;gap:25px}.company-img{min-height:220px}.sustainability-report{padding:34px 28px}.sustainability-report h2{font-size:28px}.site-footer{grid-template-columns:1fr;gap:15px;text-align:center;padding:30px}.to-top{justify-self:center}.section-heading h1,.section-heading h2{font-size:29px}}
@media (max-width:560px){body{font-size:13px}.header-inner{flex-direction:column}.separator{display:none}.main-nav{width:100%;justify-content:center;gap:18px}.hero-slider{min-height:345px;background:#eee}.slide{background-position:center}.slider-btn{opacity:1;background:rgba(0,0,0,.12);width:34px}.section-heading{margin-top:18px}.section-heading h1,.section-heading h2{font-size:27px;padding:0 16px}.brand-photo{height:95px}.company-text h2{font-size:30px}.sustainability-report{padding:30px 22px}.sustainability-inner{flex-direction:column;text-align:center}.sustainability-report h2{font-size:27px}.sustainability-download{width:100%;max-width:230px}.map-embed{height:250px}.site-footer img{width:170px}}

/* Página La Compañía */
.main-nav .active-link{color:var(--green-light)}
.inner-page .section-heading{margin-bottom:55px}
.hero-static{width:94%;max-width:1375px;margin:0 auto 70px;position:relative}.hero-static-image{height:417px;background-size:cover;background-position:center;position:relative}.hero-copy{position:absolute;left:31px;top:162px;background:rgba(0,155,78,.86);color:#fff;width:450px;padding:24px 24px;font-size:13px;line-height:1.75}.static-dots{bottom:-30px}.static-dots span{display:block;width:17px;height:3px;background:#e0e0e0}.static-dots span.active{background:var(--green-light)}
.text-section{width:84%;max-width:1180px;margin:0 auto 68px}.text-section p{font-size:13px;line-height:1.82;margin:0 0 22px}.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:95px}.values-section{margin-top:10px}.accordion{border-top:1px solid var(--line)}.accordion-item{border-bottom:1px solid var(--line)}.accordion-trigger{width:100%;border:0;background:#fff;display:flex;align-items:center;justify-content:space-between;text-align:left;padding:17px 0;color:#333;font-weight:700;cursor:pointer;font-size:13px}.accordion-trigger span{font-size:18px;font-weight:300;color:#777}.accordion-item.open .accordion-trigger span{transform:rotate(45deg)}.accordion-content{display:none;padding:0 0 24px;color:var(--text);font-size:13px;line-height:1.8}.accordion-item.open .accordion-content{display:block}.accordion-content ul{margin:0;padding-left:18px}.accordion-content li{margin-bottom:10px}.accordion-content a{color:var(--green);text-decoration:none}.facilities-section{margin-bottom:74px}.right-text{min-height:250px}.private-label-section{margin-bottom:60px}.with-divider{gap:0}.with-divider>div:first-child{padding-right:90px}.with-divider>div:last-child{border-left:1px solid var(--line)}
@media (max-width:900px){.hero-static{width:100%;margin-bottom:65px}.hero-static-image{height:58vw;min-height:300px}.hero-copy{left:22px;top:auto;bottom:35px;width:calc(100% - 44px);font-size:12px}.text-section{width:88%;margin-bottom:55px}.two-columns{grid-template-columns:1fr;gap:20px}.right-text{min-height:0}.with-divider>div:first-child{padding-right:0}.with-divider>div:last-child{display:none;border:0}}
@media (max-width:560px){.hero-static-image{min-height:345px}.hero-copy{left:18px;bottom:28px;width:calc(100% - 36px);padding:17px 18px}.accordion-trigger{font-size:12px}.text-section p{font-size:12.5px}}

/* Placeholders e imágenes internas */
.media-text{align-items:center}
.section-image img{width:100%;display:block;height:auto;object-fit:cover;border:1px solid #ededed;background:#f5f5f5}
.placeholder-image{min-height:230px;display:flex;align-items:center;justify-content:center}
.placeholder-image img{aspect-ratio:16/9;object-fit:cover}
.policies-page .policies-intro{margin-bottom:72px}
.policies-page .hero-static{margin-bottom:72px}

@media (max-width:900px){
  .placeholder-image{min-height:0}
  .with-divider>div:last-child{display:block;border-left:0;margin-top:18px}
}

.policies-empty{min-height:330px;display:flex;align-items:flex-start;justify-content:center;}
.policies-empty .section-heading{width:100%;}

/* Imágenes reales de marcas del home */
.brand-link{display:block;text-decoration:none;padding:0;border-bottom:3px solid var(--green);transition:opacity .2s ease, transform .2s ease}
.brand-link:hover{opacity:.92;transform:translateY(-1px)}
.brand-link img{display:block;width:100%;height:auto;object-fit:cover}
.brand-card.vitamin.brand-link{border-bottom-color:var(--blue)}
.site-footer img{width:198px;}
.logo img{width:255px;}

/* Página Nosotros */
.about-page{background:#f3f6f8;color:#18344f}
.about-page .site-header,.about-page .site-footer{background:#fff}
.about-page .site-footer{background:var(--green)}
.about-page .hero-slider{margin-bottom:54px}
.about-main{padding-bottom:28px}
.about-shell{width:94%;max-width:1375px;margin:0 auto;background:#fff;box-shadow:0 8px 28px rgba(18,48,72,.05)}
.about-shell .about-section{width:100%;max-width:none;margin:0;padding:48px 44px}
.about-shell .about-soft{background:#f7f9fb}
.about-inner{max-width:1260px;margin:0 auto}
.about-label{margin:0 0 22px;color:#7d8790;font-size:10px;line-height:1.2;font-weight:700;letter-spacing:2px;text-transform:uppercase}
.about-kicker{display:inline-flex;align-items:center;background:#f1f4f6;border-radius:16px;padding:5px 12px;color:#68747e;font-size:9px;line-height:1;font-weight:700;letter-spacing:1.1px}
.about-intro{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.75fr);gap:42px;align-items:start;padding-top:42px!important;padding-bottom:52px!important}
.about-intro h1{margin:17px 0 12px;color:#173b60;font-size:38px;line-height:1.08;font-weight:700;letter-spacing:-.5px}
.about-intro-copy>p{max-width:790px;margin:0;color:#4f5e69;font-size:14px;line-height:1.7}
.about-intro-image{margin:0;align-self:start}
.about-intro-image img{display:block;width:100%;aspect-ratio:1.55/1;object-fit:cover;border-radius:12px;box-shadow:0 14px 26px rgba(26,54,77,.16)}
.about-history{display:grid;grid-template-columns:repeat(4,1fr);max-width:690px;margin-top:32px;padding-top:25px;border-top:1px solid #e5e9ec}
.about-history div{padding:0 16px;border-right:1px solid #e7eaed}
.about-history div:first-child{padding-left:0}.about-history div:last-child{border-right:0}
.about-history strong{display:block;color:#173b60;font-size:25px;line-height:1;font-weight:700}
.about-history span{display:block;margin-top:7px;color:#7b858d;font-size:10px;line-height:1.25}
.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.metric-card,.mission-card,.cert-card,.report-card,.international-map,.plant-card,.plant-map{border:1px solid #dfe5e9;border-radius:10px;background:#fff;box-shadow:0 4px 10px rgba(32,58,79,.03)}
.metric-card{min-height:142px;padding:23px 24px;display:flex;flex-direction:column;justify-content:flex-end}
.line-icon{width:27px;height:27px;display:inline-flex;align-items:center;justify-content:center;color:#173f67}
.line-icon svg,.report-icon svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.metric-card strong{display:block;margin-top:15px;color:#173b60;font-size:24px;line-height:1;font-weight:700}
.metric-card>span:last-child{display:block;margin-top:7px;color:#7a858d;font-size:10px;line-height:1.25}
.mission-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.mission-card{padding:24px 25px 22px;border-top:3px solid #1a4b73;box-shadow:none}
.mission-card h2{margin:10px 0 7px;color:#183b5e;font-size:14px;line-height:1.2}
.mission-card p{margin:0;color:#53616c;font-size:11px;line-height:1.55}
.values-label{margin-top:34px}
.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.value-card{min-height:125px;padding:20px 18px;background:#f5f7f9;border-radius:8px}
.value-card .line-icon{width:25px;height:25px}
.value-card h3{margin:9px 0 3px;color:#203c56;font-size:12px;line-height:1.25}
.value-card p{margin:0;color:#71808a;font-size:10px;line-height:1.35}
.cert-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.cert-card{min-height:150px;padding:23px 18px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:none}
.cert-card p{max-width:270px;margin:14px 0 0;color:#6f7a83;font-size:9px;line-height:1.35}
.cert-logo{color:#1f3d58;font-weight:800;line-height:1;letter-spacing:-1px}
.cert-logo.fssc{color:#26794e;font-size:27px}.cert-logo.fssc small{color:#7a858c;font-size:22px;font-weight:400}.cert-logo.fssc span{font-size:18px}
.cert-logo.sgs{position:relative;color:#777;font-family:Georgia,serif;font-size:32px}.cert-logo.sgs span{color:#e48b45;font-family:Arial;font-size:25px;font-weight:400}
.cert-logo.renal{color:#111;font-size:28px;letter-spacing:-1.5px}
.cert-symbol{display:flex;align-items:center;justify-content:center;border:2px solid currentColor;border-radius:50%;font-weight:800;text-align:center;line-height:1}
.cert-symbol.gluten{width:58px;height:58px;color:#111;font-size:11px}.cert-symbol.vegan{width:50px;height:50px;color:#65a74d;font-size:10px}.cert-symbol.kosher{width:52px;height:52px;color:#111;font-family:Georgia,serif;font-size:28px}
.sustainability-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.sustainability-grid article{min-height:116px;padding:20px 22px;background:#eaf6ef;border-radius:8px;color:#177044}
.sustainability-grid .line-icon{width:25px;height:25px;color:#198451}
.sustainability-grid strong{display:block;margin-top:6px;font-size:25px;line-height:1;font-weight:700}
.sustainability-grid p{margin:7px 0 0;color:#59766a;font-size:10px;line-height:1.25}
.report-label{margin-top:34px}
.report-card{min-height:126px;padding:23px 25px;display:grid;grid-template-columns:44px 1fr auto;gap:18px;align-items:center;box-shadow:none}
.report-icon{width:44px;height:44px;padding:11px;border-radius:8px;background:#eaf6ef;color:#1a8554}
.report-card h2{margin:0;color:#226a45;font-size:22px;line-height:1.15}
.report-card p{margin:5px 0 0;color:#7b878f;font-size:10px;line-height:1.35}
.report-card a{display:inline-flex;align-items:center;justify-content:center;min-width:155px;padding:14px 20px;border-radius:6px;background:#286746;color:#fff;text-decoration:none;font-size:11px;font-weight:700;box-shadow:0 6px 12px rgba(28,89,59,.2);transition:transform .2s ease,background .2s ease}
.report-card a:hover,.report-card a:focus-visible{background:#1c573b;transform:translateY(-1px)}
.international-grid{display:grid;grid-template-columns:42% 1fr;gap:60px;align-items:center}
.international-map{margin:0;padding:24px;background:#f7f9fa;box-shadow:none}
.international-map img{display:block;width:100%;height:410px;object-fit:contain;background:#fff}
.international-copy{max-width:530px}
.international-copy p{margin:0 0 15px;color:#4f5c67;font-size:12px;line-height:1.55}
.international-copy p strong{color:#263e54}
.country-count{display:block;color:#143d64;font-size:23px;line-height:1.1}
.international-copy>span{display:block;margin-top:5px;color:#7c8790;font-size:9px;letter-spacing:1px}
.plant-section{padding-bottom:54px!important}
.plant-grid{display:grid;grid-template-columns:1fr 1.08fr;gap:20px}
.plant-card{padding:25px 27px;background:#f7f9fb;box-shadow:none}
.plant-pin{width:28px;height:28px}
.plant-card h2{margin:7px 0 4px;color:#173b60;font-size:25px;line-height:1.15}
.plant-card .plant-address{margin:0 0 23px;color:#73808a;font-size:10px;line-height:1.4}
.plant-card p:last-child{margin:0;color:#53616b;font-size:11px;line-height:1.55}
.plant-map{min-height:285px;overflow:hidden;box-shadow:none}
.plant-map iframe{display:block;width:100%;height:100%;min-height:285px;border:0}

@media (max-width:1000px){
  .about-intro{grid-template-columns:1fr .7fr;gap:28px}
  .about-intro h1{font-size:34px}
  .about-shell .about-section{padding:42px 30px}
  .values-grid{grid-template-columns:repeat(2,1fr)}
  .international-grid{grid-template-columns:46% 1fr;gap:35px}
  .international-map img{height:350px}
}
@media (max-width:760px){
  .about-shell{width:100%;box-shadow:none}
  .about-page .hero-slider{margin-bottom:42px}
  .about-intro{grid-template-columns:1fr;padding-top:34px!important}
  .about-intro-image{order:-1}
  .about-intro-image img{aspect-ratio:16/8.8}
  .about-history{grid-template-columns:repeat(2,1fr);gap:22px 0}
  .about-history div:nth-child(2){border-right:0}.about-history div:nth-child(3){padding-left:0}
  .metric-grid,.cert-grid,.sustainability-grid{grid-template-columns:1fr}
  .mission-grid,.plant-grid{grid-template-columns:1fr}
  .international-grid{grid-template-columns:1fr}
  .international-map{max-width:460px}
  .international-map img{height:auto;max-height:420px}
  .report-card{grid-template-columns:44px 1fr}
  .report-card a{grid-column:1/-1;width:100%}
}
@media (max-width:520px){
  .about-shell .about-section{padding:34px 20px}
  .about-intro h1{font-size:31px}
  .about-intro-copy>p{font-size:13px}
  .about-history strong{font-size:22px}
  .values-grid{grid-template-columns:1fr}
  .value-card{min-height:110px}
  .mission-card{padding:21px 20px}
  .report-card h2{font-size:18px}
  .plant-card h2{font-size:21px}
}

/* Ajustes finos sección Nosotros - actualización */
.about-page{font-size:15px}
.about-shell .about-section{padding:50px 44px}
.about-label{font-size:11px}
.about-kicker{font-size:10px}
.about-intro h1{font-size:58px;max-width:680px}
.about-intro-copy>p{max-width:820px;font-size:15.5px;line-height:1.78}
.about-history strong{font-size:27px}
.about-history span{font-size:11px}
.metrics-five{grid-template-columns:repeat(5,1fr)}
.metric-card{min-height:120px;padding:20px 16px 18px}
.metric-card strong{font-size:25px;margin-top:13px}
.metric-card>span:last-child{font-size:11px;line-height:1.35}
.mission-card h2{font-size:15px}
.mission-card p{font-size:12px;line-height:1.65}
.value-card h3{font-size:13px}
.value-card p{font-size:11px;line-height:1.4}
.cert-card{min-height:145px;padding:18px 16px 16px}
.cert-logo-image{display:block;max-width:100%;height:auto;object-fit:contain}
.cert-fssc{width:150px}
.cert-sgs{width:79px}
.cert-renaloa{width:136px}
.cert-gluten{width:70px}
.cert-vegan{width:76px}
.cert-kosher{width:86px}
.cert-card p{max-width:280px;margin:12px 0 0;color:#6f7a83;font-size:10px;line-height:1.35}
.sustainability-grid p{font-size:11px;line-height:1.35}
.report-card h2{font-size:21px}
.report-card p{font-size:11px;line-height:1.4}
.report-card a{font-size:12px}
.international-copy p{font-size:13px}
.international-copy>span{font-size:10px}
.plant-card .plant-address{font-size:11px}
.plant-card p:last-child{font-size:12px;line-height:1.6}

@media (max-width:1320px){
  .metrics-five{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:1000px){
  .about-shell .about-section{padding:42px 30px}
  .about-intro h1{font-size:46px}
  .about-intro-copy>p{font-size:15px}
  .metrics-five{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:760px){
  .metrics-five,.cert-grid,.sustainability-grid{grid-template-columns:1fr}
  .about-intro h1{font-size:39px}
}
@media (max-width:520px){
  .about-shell .about-section{padding:34px 20px}
  .about-intro h1{font-size:34px}
  .about-intro-copy>p{font-size:14px}
  .metric-card strong{font-size:23px}
  .report-card h2{font-size:18px}
}


/* Sincronización tipográfica Home + Nosotros */
.home-page{
  font-size:16px;
  line-height:1.65;
}
.home-page .main-nav{
  font-size:14px;
}
.home-page .section-heading h1,
.home-page .section-heading h2{
  font-size:40px;
  line-height:1.15;
}
.home-page .company-text h2{
  font-size:40px;
  line-height:1.15;
}
.home-page .company-text p{
  font-size:16px;
  line-height:1.72;
  margin-bottom:12px;
}
.home-page .sustainability-report h2{
  font-size:40px;
  line-height:1.15;
}
.home-page .sustainability-download{
  font-size:14px;
}
.home-page .site-footer{
  font-size:12px;
}

.about-page{
  font-size:16px;
  line-height:1.65;
}
.about-page .about-label{
  font-size:12px;
  line-height:1.25;
}
.about-page .about-kicker{
  font-size:12px;
  line-height:1;
}
.about-page .about-intro h1{
  font-size:40px;
  line-height:1.12;
}
.about-page .about-intro-copy>p{
  font-size:16px;
  line-height:1.72;
}
.about-page .about-history strong{
  font-size:28px;
}
.about-page .about-history span{
  font-size:13px;
  line-height:1.35;
}
.about-page .metric-card strong{
  font-size:28px;
}
.about-page .metric-card>span:last-child{
  font-size:13px;
  line-height:1.4;
}
.about-page .mission-card h2,
.about-page .value-card h3{
  font-size:16px;
  line-height:1.3;
}
.about-page .mission-card p,
.about-page .value-card p{
  font-size:14px;
  line-height:1.55;
}
.about-page .cert-card p{
  font-size:13px;
  line-height:1.45;
}
.about-page .sustainability-grid strong{
  font-size:28px;
}
.about-page .sustainability-grid p{
  font-size:13px;
  line-height:1.45;
}
.about-page .report-card h2{
  font-size:20px;
  line-height:1.25;
}
.about-page .report-card p{
  font-size:13px;
  line-height:1.45;
}
.about-page .report-card a{
  font-size:14px;
}
.about-page .international-copy p{
  font-size:16px;
  line-height:1.6;
}
.about-page .country-count{
  font-size:27px;
}
.about-page .international-copy>span{
  font-size:13px;
}
.about-page .plant-card h2{
  font-size:26px;
  line-height:1.2;
}
.about-page .plant-card .plant-address{
  font-size:13px;
  line-height:1.45;
}
.about-page .plant-card p:last-child{
  font-size:14px;
  line-height:1.6;
}
.about-page .site-footer{
  font-size:12px;
}

@media (max-width:900px){
  .home-page .section-heading h1,
  .home-page .section-heading h2,
  .home-page .company-text h2,
  .home-page .sustainability-report h2{
    font-size:34px;
  }
  .home-page .company-text p{
    font-size:15px;
  }
  .about-page .about-intro h1{
    font-size:38px;
  }
}

@media (max-width:560px){
  .home-page{
    font-size:15px;
  }
  .home-page .section-heading h1,
  .home-page .section-heading h2,
  .home-page .company-text h2,
  .home-page .sustainability-report h2{
    font-size:30px;
  }
  .home-page .company-text p{
    font-size:15px;
  }
  .home-page .sustainability-download{
    font-size:13px;
  }
  .about-page .about-label,
  .about-page .about-kicker{
    font-size:11px;
  }
  .about-page .about-intro h1{
    font-size:34px;
  }
  .about-page .about-intro-copy>p{
    font-size:15px;
  }
  .about-page .mission-card p,
  .about-page .value-card p,
  .about-page .plant-card p:last-child{
    font-size:14px;
  }
  .about-page .international-copy p{
    font-size:15px;
  }
}


/* Iconos de Nosotros como archivos de imagen reemplazables */
.line-icon img,.report-icon img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
}

/* Certificaciones — nueva composición institucional */
.certifications-section{
  background:#f2f8f5!important;
  overflow:hidden;
}
.certifications-layout{
  --cert-green:#008f45;
  --cert-line:#71b58d;
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) 370px minmax(0,1fr);
  grid-template-rows:minmax(270px,auto) minmax(270px,auto);
  grid-template-areas:
    "fssc center kosher"
    "gluten center vegan";
  align-items:stretch;
  max-width:1220px;
  margin:0 auto;
}
.certifications-layout::before,
.certifications-layout::after{
  content:"";
  position:absolute;
  z-index:0;
  background:var(--cert-line);
  opacity:.9;
}
.certifications-layout::before{
  top:0;
  bottom:0;
  left:50%;
  width:1px;
  transform:translateX(-.5px);
}
.certifications-layout::after{
  top:50%;
  left:0;
  right:0;
  height:1px;
  transform:translateY(-.5px);
}
.certification-item,
.certifications-center{
  position:relative;
  z-index:1;
}
.certification-item{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding-left:42px;
  padding-right:42px;
  color:#111;
}
.certification-fssc{grid-area:fssc;padding-bottom:48px}
.certification-kosher{grid-area:kosher;padding-bottom:48px}
.certification-gluten{grid-area:gluten;padding-top:48px}
.certification-vegan{grid-area:vegan;padding-top:48px}
.certification-logo{
  display:block;
  max-width:100%;
  height:auto;
  object-fit:contain;
  margin:0 auto 20px;
}
.certification-logo-fssc{width:160px}
.certification-logo-kosher{width:70px;max-height:92px}
.certification-logo-gluten{width:80px;max-height:112px}
.certification-logo-vegan{width:80px;max-height:116px}
.certification-item h3{
  max-width:430px;
  margin:0 0 8px;
  color:#111;
  font-size:16px;
  line-height:1.3;
  font-weight:800;
  letter-spacing:-.15px;
}
.certification-item p{
  max-width:440px;
  margin:0;
  color:#111;
  font-size:14px;
  line-height:1.38;
  font-weight:500;
}
.certification-item p strong{font-weight:800}
.certifications-center{
  grid-area:center;
  align-self:center;
  justify-self:center;
  width:345px;
  aspect-ratio:1;
  border-radius:50%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:44px;
  text-align:center;
  color:#fff;
  background:var(--cert-green);
  box-shadow:0 8px 22px rgba(0,111,55,.08);
}
.certifications-center h2{
  margin:0 0 12px;
  color:#fff;
  font-size:29px;
  line-height:1.05;
  font-weight:800;
  letter-spacing:-.8px;
}
.certifications-center p{
  margin:0;
  color:#fff;
  font-size:15px;
  line-height:1.25;
  font-weight:normal;
}

@media (max-width:1120px){
  .certifications-layout{
    grid-template-columns:minmax(0,1fr) 315px minmax(0,1fr);
    grid-template-rows:minmax(255px,auto) minmax(255px,auto);
  }
  .certifications-center{width:315px;padding:35px}
  .certifications-center h2{font-size:33px}
  .certifications-center p{font-size:14px}
  .certification-item{padding-left:25px;padding-right:25px}
  .certification-item h3{font-size:16px}
  .certification-item p{font-size:14px}
  .certification-logo-fssc{width:205px}
}

@media (max-width:860px){
  .certifications-layout{
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-template-rows:auto;
    grid-template-areas:
      "center center"
      "fssc kosher"
      "gluten vegan";
    gap:18px;
  }
  .certifications-layout::before,
  .certifications-layout::after{display:none}
  .certifications-center{
    width:min(330px,82vw);
    margin:0 auto 18px;
  }
  .certification-item{
    min-height:310px;
    padding:34px 24px;
    border:1px solid #dce8e1;
    border-radius:12px;
    background:rgba(255,255,255,.62);
  }
  .certification-fssc,
  .certification-kosher,
  .certification-gluten,
  .certification-vegan{padding-top:34px;padding-bottom:34px}
}

@media (max-width:600px){
  .certifications-layout{
    grid-template-columns:1fr;
    grid-template-areas:
      "center"
      "fssc"
      "kosher"
      "gluten"
      "vegan";
  }
  .certifications-center{
    width:min(300px,86vw);
    padding:34px;
  }
  .certifications-center h2{font-size:31px}
  .certifications-center p{font-size:14px}
  .certification-item{min-height:0;padding:34px 22px}
  .certification-item h3{font-size:17px}
  .certification-item p{font-size:14px}
}

/* Formulario Elaboración para Terceros */
.third-party-contact-section{
  background:#f7f9fb;
  border-top:1px solid #e2e7ea;
  border-bottom:1px solid #e2e7ea;
}
.third-party-intro{
  max-width:850px;
  margin:0 auto 38px;
  text-align:center;
}
.third-party-intro h2{
  margin:0 0 16px;
  color:#173b60;
  font-size:34px;
  line-height:1.16;
  font-weight:800;
  letter-spacing:-.45px;
}
.third-party-intro>p:last-child{
  max-width:760px;
  margin:0 auto;
  color:#4f5e69;
  font-size:16px;
  line-height:1.7;
}
.contact-form-wrap{
  max-width:900px;
  margin:0 auto;
  scroll-margin-top:30px;
}
.contact-form-heading{
  margin:0 0 24px;
  text-align:left;
}
.contact-form-heading h3{
  margin:0 0 7px;
  color:#173b60;
  font-size:27px;
  line-height:1.2;
  font-weight:800;
}
.contact-form-heading p{
  margin:0;
  color:#5b6872;
  font-size:15px;
  line-height:1.55;
}
.contact-form-card{
  padding:38px;
  border:1px solid #dfe5e9;
  border-radius:16px;
  background:#fff;
  box-shadow:0 8px 24px rgba(28,55,76,.05);
}
#pharma-contact-form{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
}
.contact-field{min-width:0}
.contact-field-full{grid-column:1/-1}
.contact-field label{
  display:block;
  margin:0 0 7px;
  color:#173b60;
  font-size:13px;
  line-height:1.35;
  font-weight:700;
}
.contact-field label span{color:#008f45}
.contact-field input,
.contact-field select,
.contact-field textarea{
  width:100%;
  min-height:48px;
  padding:12px 14px;
  border:1px solid #d8dee3;
  border-radius:9px;
  outline:none;
  background:#f7f9fb;
  color:#394957;
  font:inherit;
  font-size:14px;
  line-height:1.45;
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.contact-field textarea{
  min-height:130px;
  resize:vertical;
}
.contact-field input::placeholder,
.contact-field textarea::placeholder{color:#8a959d}
.contact-field input:focus,
.contact-field select:focus,
.contact-field textarea:focus{
  border-color:#369765;
  background:#fff;
  box-shadow:0 0 0 3px rgba(0,143,69,.11);
}
.contact-honeypot{
  position:absolute!important;
  left:-10000px!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
}
.contact-recaptcha-row{padding-top:2px}
.contact-recaptcha-help{
  margin:7px 0 0;
  color:#7a858d;
  font-size:11px;
  line-height:1.4;
}
.contact-config-warning{
  display:inline-block;
  margin:0;
  padding:11px 13px;
  border:1px solid #e5b9b9;
  border-radius:7px;
  background:#fff5f5;
  color:#9d2525;
  font-size:12px;
}
.contact-submit-row{
  grid-column:1/-1;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-top:2px;
}
.contact-form-status{
  flex:1;
  min-height:20px;
  margin:0;
  font-size:13px;
  line-height:1.45;
}
.contact-form-status.is-success{color:#167044}
.contact-form-status.is-error{color:#a32c2c}
.contact-form-status.is-loading{color:#53616c}
.contact-submit{
  min-width:165px;
  padding:14px 28px;
  border:0;
  border-radius:7px;
  background:#286746;
  color:#fff;
  font-family:inherit;
  font-size:13px;
  line-height:1;
  font-weight:700;
  cursor:pointer;
  box-shadow:0 6px 13px rgba(28,89,59,.18);
  transition:background .18s ease,transform .18s ease,opacity .18s ease;
}
.contact-submit:hover,.contact-submit:focus-visible{
  background:#1d583c;
  transform:translateY(-1px);
}
.contact-submit:disabled{
  cursor:wait;
  opacity:.62;
  transform:none;
}

@media (max-width:760px){
  .third-party-intro{text-align:left}
  .third-party-intro h2{font-size:30px}
  .contact-form-card{padding:28px 24px}
  #pharma-contact-form{grid-template-columns:1fr}
  .contact-field-full,.contact-submit-row{grid-column:1}
}
@media (max-width:520px){
  .third-party-intro{margin-bottom:30px}
  .third-party-intro h2{font-size:27px}
  .third-party-intro>p:last-child{font-size:15px}
  .contact-form-heading h3{font-size:24px}
  .contact-form-card{padding:23px 18px;border-radius:12px}
  .contact-submit-row{align-items:stretch;flex-direction:column}
  .contact-submit{width:100%}
}
