:root{
  --navy:#0B1840;
  --purple:#3B1F6B;
  --white:#fff;
  --ink:#11182f;
  --muted:#65708a;
  --line:#e6e9f0;
  --soft:#f6f7fa;
  --shadow:0 18px 50px rgba(11,24,64,.12);
}
*{box-sizing:border-box} body{margin:0;font-family:Inter, Arial, Helvetica, sans-serif;color:var(--ink);background:#f2f3f5;line-height:1.55} a{text-decoration:none;color:inherit} .site{width:min(1440px,100%);margin:0 auto;background:white;min-height:100vh;box-shadow:0 0 0 1px rgba(11,24,64,.04)}
.header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 52px;background:#fff;border-bottom:1px solid #f0f1f4}.brand-logo{display:block;width:245px;height:auto}.nav{display:flex;align-items:center;gap:42px;font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--navy)}.nav a{position:relative;white-space:nowrap}.nav a.active{color:var(--purple)}.nav a.active:after{content:"";position:absolute;left:0;right:0;bottom:-16px;height:3px;background:var(--purple);border-radius:8px}.cta{background:var(--purple);color:#fff;padding:17px 28px;border-radius:5px;font-weight:850;letter-spacing:.06em;text-transform:uppercase;font-size:13px}.hero{background:linear-gradient(90deg,rgba(11,24,64,.98),rgba(11,24,64,.92)),radial-gradient(circle at 70% 20%,rgba(59,31,107,.45),transparent 35%);color:#fff;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,24,64,.98),rgba(11,24,64,.60)),url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="900" height="480" viewBox="0 0 900 480"><g fill="none" stroke="%23ffffff" stroke-opacity="0.08"><path d="M0 120h900M0 240h900M0 360h900M80 0v480M240 0v480M400 0v480M560 0v480M720 0v480"/><rect x="120" y="80" width="650" height="310" rx="8"/></g></svg>');opacity:.9}.hero-content{position:relative;z-index:1}.home-hero{height:460px;padding:70px 52px;display:grid;grid-template-columns:1.05fr .95fr;gap:40px}.eyebrow{font-size:13px;letter-spacing:.12em;font-weight:900;text-transform:uppercase;color:var(--purple)}h1{font-size:48px;line-height:1.12;margin:0 0 22px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.home-hero p{font-size:22px;margin:0 0 32px;color:#f8f9ff}.accent{color:#b789ff}.feature-row{display:flex;gap:34px;margin:28px 0 34px}.feature{display:flex;gap:12px;align-items:flex-start;font-size:14px}.feature svg{width:28px;height:28px;color:#9b68e8;flex:0 0 auto}.feature strong{display:block;color:#fff}.feature span{color:#d9ddeb}.buttons{display:flex;align-items:center;gap:34px}.link-btn{font-weight:800;color:#fff}.products-hero{position:relative;display:flex;align-items:flex-end;justify-content:center;gap:18px;height:100%}.map-dots{position:absolute;inset:0;opacity:.7;background:radial-gradient(circle,#8f63ff 1.5px,transparent 2px);background-size:14px 14px;clip-path:polygon(18% 8%,43% 12%,48% 31%,33% 34%,26% 45%,14% 32%);}.map-dots.right{clip-path:polygon(75% 24%,95% 32%,94% 58%,78% 57%,68% 46%);}.arc{position:absolute;width:540px;height:180px;border-top:3px solid #8b50dd;border-radius:50%;top:28px;right:55px;transform:rotate(4deg);opacity:.9}.product{position:relative;border-radius:22px;background:#111;color:white;box-shadow:0 25px 45px rgba(0,0,0,.25);display:flex;align-items:center;justify-content:center;text-align:left;font-weight:900;letter-spacing:.04em}.product span{display:block;color:#b789ff;font-size:12px;margin-top:6px}.tub{width:230px;height:270px;border-radius:34px 34px 22px 22px;background:linear-gradient(120deg,#121212,#2a2a2a 45%,#050505)}.jar{width:160px;height:165px;border-radius:26px;background:#f0f0f0;color:#111;align-self:flex-end;margin-bottom:8px}.box{width:150px;height:230px;border-radius:6px;background:linear-gradient(130deg,#151515,#2b183f);align-self:flex-end}.bottle{width:105px;height:185px;border-radius:24px;background:#111;align-self:flex-end;margin-bottom:8px}.section{padding:36px 52px;border-bottom:1px solid var(--line)}.split{display:grid;grid-template-columns:1fr 1fr;gap:0}.split>div{padding-right:36px}.split>div+div{border-left:1px solid var(--line);padding-left:36px}.section-title{font-size:18px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--navy);margin:0 0 24px}.category-icons{display:grid;grid-template-columns:repeat(6,1fr);gap:20px}.cat{text-align:center;color:var(--navy);font-size:13px;font-weight:800}.cat svg{display:block;margin:0 auto 10px;width:32px;height:32px;color:var(--purple);stroke-width:1.8}.stats{text-align:center}.stats h3{margin:0 0 22px;font-size:18px;letter-spacing:.09em;text-transform:uppercase;color:var(--navy)}.stat-row{display:flex;justify-content:center;gap:48px}.stat{display:flex;align-items:center;gap:12px;text-align:left}.stat svg{width:32px;color:var(--purple)}.stat strong{font-size:24px;color:var(--navy)}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.card{border:1px solid var(--line);border-radius:8px;padding:24px;background:#fff}.card svg{width:42px;height:42px;color:var(--purple);margin-bottom:12px}.card h4{margin:0 0 6px;color:var(--navy)}.page-hero{height:280px;padding:0 52px;display:flex;align-items:center}.page-hero h1{margin:0}.building{background:linear-gradient(90deg,rgba(11,24,64,.98),rgba(11,24,64,.74)),url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="1000" height="280" viewBox="0 0 1000 280"><rect width="1000" height="280" fill="%2315253f"/><g opacity=".28" fill="none" stroke="%23ffffff" stroke-width="2"><rect x="450" y="45" width="430" height="185"/><path d="M450 95h430M450 145h430M450 195h430M520 45v185M610 45v185M700 45v185M790 45v185"/><rect x="390" y="75" width="95" height="155"/></g></svg>') center/cover}.about-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:80px;padding:90px 74px}.about-grid p{font-size:22px}.divider-left{border-left:1px solid var(--line);padding-left:80px}.value{display:grid;grid-template-columns:58px 1fr;gap:28px;margin-bottom:48px}.value svg{width:50px;height:50px;color:var(--purple)}.value h3{margin:0 0 8px;font-size:28px;letter-spacing:.12em;color:var(--navy)}.value p{margin:0;font-size:22px}.catalog-hero{display:grid;grid-template-columns:1fr 1fr;align-items:center}.catalog-layout{display:grid;grid-template-columns:280px 1fr;gap:50px;padding:40px 46px 60px}.sidebar h3,.contact-section h3{font-size:20px;letter-spacing:.08em;text-transform:uppercase;color:var(--navy)}.sidebar a{display:block;padding:10px 0;color:var(--navy);font-size:18px}.sidebar a.active{color:var(--purple);font-weight:800}.tools{display:flex;gap:24px;margin-bottom:24px}.search{flex:1;padding:16px 22px;border:1px solid var(--line);border-radius:6px;color:var(--muted)}.tool-btn{padding:16px 24px;border:1px solid var(--line);border-radius:6px;background:white;color:var(--navy);font-weight:800}.products-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.product-card{border:1px solid var(--line);border-radius:8px;padding:22px;background:white}.pack{height:190px;margin-bottom:18px;display:flex;align-items:center;justify-content:center}.pack .mini{width:120px;height:150px;border-radius:20px;background:#111;color:white;display:flex;align-items:center;justify-content:center;text-align:center;font-weight:900}.pack .mini.white{background:#eee;color:#111}.pack .mini.boxmini{border-radius:5px;background:#16121e}.product-card h4{font-size:20px;margin:0 0 3px;color:var(--navy)}.product-card p{margin:0 0 12px;color:var(--muted);font-size:16px}.price{font-size:18px;color:var(--navy)}.pagination{display:flex;align-items:center;justify-content:space-between;margin-top:32px;color:var(--muted)}.pages span{display:inline-flex;width:38px;height:38px;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:6px;margin-left:6px}.pages .current{background:var(--purple);color:#fff}.brands-intro{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:70px 70px 30px}.brand-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding:30px 70px 80px}.brand-card{height:190px;border:1px solid var(--line);border-radius:12px;background:white;display:flex;align-items:center;justify-content:center;padding:34px;box-shadow:0 14px 35px rgba(11,24,64,.05)}.brand-card img{max-width:100%;max-height:110px;object-fit:contain;filter:grayscale(0)}.contact-section{display:grid;grid-template-columns:1fr 1.1fr 1.25fr;gap:48px;padding:46px 64px}.info-list{display:grid;gap:20px;font-size:18px}.info-item{display:flex;align-items:flex-start;gap:16px;color:var(--navy)}.info-item svg{width:25px;height:25px;color:var(--purple);flex:0 0 auto}.form input,.form textarea{width:100%;padding:15px 18px;border:1px solid var(--line);border-radius:4px;margin-bottom:14px;font:inherit}.form textarea{height:108px}.form button{width:100%;border:0;background:var(--purple);color:white;font-weight:900;padding:16px;border-radius:4px;letter-spacing:.06em}.venezuela{height:250px;background:radial-gradient(circle at 65% 50%,rgba(59,31,107,.18),transparent 40%),#f1f2f5;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#b5bbc8;font-size:120px;font-weight:900;position:relative}.venezuela:after{content:"";position:absolute;inset:42px;background:radial-gradient(circle,#3B1F6B 4px,transparent 5px);background-size:70px 54px;opacity:.8;clip-path:polygon(9% 52%,20% 25%,44% 18%,69% 27%,86% 48%,72% 72%,43% 77%,20% 68%)}.footer{background:var(--navy);color:white;padding:52px 64px 24px}.footer-grid{display:grid;grid-template-columns:1.35fr .75fr .9fr 1fr;gap:70px}.footer-logo{width:255px;height:auto;margin-bottom:20px}.footer h4{margin:0 0 18px;letter-spacing:.08em;text-transform:uppercase}.footer a,.footer li{display:block;color:#e8ebf5;margin:8px 0}.footer ul{list-style:none;padding:0;margin:0}.socials{display:flex;gap:14px;margin-top:16px}.socials span{width:42px;height:42px;border:1px solid var(--purple);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:900}.copyright{border-top:1px solid rgba(255,255,255,.15);margin-top:34px;padding-top:20px;text-align:center;color:#d6d9e6}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding:70px}.service-large{padding:34px;border:1px solid var(--line);border-radius:12px}.service-large h3{font-size:24px;color:var(--navy)}.service-large p{font-size:18px;color:var(--muted)}
@media(max-width:900px){.header{height:auto;align-items:flex-start;gap:22px;flex-direction:column;padding:24px}.nav{flex-wrap:wrap;gap:18px}.home-hero,.split,.about-grid,.catalog-layout,.brands-intro,.contact-section,.footer-grid{grid-template-columns:1fr}.products-grid,.cards,.brand-grid,.services-grid{grid-template-columns:1fr 1fr}.category-icons{grid-template-columns:repeat(3,1fr)}.home-hero{height:auto}.products-hero{min-height:320px}.divider-left,.split>div+div{border-left:0;padding-left:0}.split>div{padding-right:0}}

/* --- Asset integration fixed v1.1: match approved 1024px mockup and prevent image cropping --- */
.site{width:1024px;max-width:1024px;min-width:1024px;margin:0 auto;overflow:hidden;}
.header{height:72px;padding:0 30px;gap:24px;}
.brand-logo{width:220px;max-height:48px;object-fit:contain;object-position:left center;}
.nav{gap:28px;font-size:10.5px;letter-spacing:.055em;}
.nav a.active:after{bottom:-17px;height:3px;}
.cta{padding:13px 24px;border-radius:4px;font-size:11px;line-height:1;white-space:nowrap;}
.hero{overflow:hidden;}
.hero:before{background:linear-gradient(90deg,rgba(11,24,64,.92),rgba(11,24,64,.62)),url('img/building.png') center/cover;opacity:.30;}
.feature svg,.cat svg,.stat svg,.card svg,.service-large svg,.value svg{display:none!important;}

/* Home hero */
.home-hero{height:328px;padding:48px 42px 30px;display:grid;grid-template-columns:47% 53%;gap:0;background:#071631;}
.home-hero h1{font-size:30px;line-height:1.18;letter-spacing:.075em;margin:0 0 14px;}
.home-hero p{font-size:18px;line-height:1.45;margin:0 0 22px;}
.feature-row{display:flex;gap:22px;margin:0 0 28px;align-items:flex-start;}
.feature{gap:9px;font-size:11px;line-height:1.28;min-width:0;}
.feature strong{font-size:12px;white-space:nowrap;}
.feature span{font-size:11px;color:#e1e5f0;display:block;white-space:nowrap;}
.feature-icon{width:26px;height:26px;object-fit:contain;flex:0 0 26px;filter:drop-shadow(0 0 4px rgba(155,104,232,.25));}
.buttons{gap:30px;margin-top:0;}
.buttons .cta{min-width:178px;text-align:center;}
.link-btn{font-size:12px;}
.asset-hero{position:relative;min-height:0;height:100%;display:block;overflow:visible;}
.hero-map-img{position:absolute;right:-18px;top:-46px;width:620px;height:310px;object-fit:cover;object-position:center;opacity:.86;z-index:0;mix-blend-mode:screen;}
.hero-products-img{position:absolute;right:6px;bottom:-3px;width:520px;height:auto;z-index:2;filter:drop-shadow(0 22px 28px rgba(0,0,0,.35));}
.map-dots,.arc,.product{display:none!important;}

/* Home middle panels */
.section{padding:24px 42px;border-bottom:1px solid var(--line);}
.split{height:128px;display:grid;grid-template-columns:53% 47%;}
.split>div{padding-right:28px;}
.split>div+div{padding-left:34px;}
.section-title{font-size:14px;margin:0 0 18px;letter-spacing:.075em;}
.category-icons{grid-template-columns:repeat(6,1fr);gap:15px;}
.cat{font-size:11px;line-height:1.1;}
.cat-icon{display:block;margin:0 auto 8px;width:27px;height:27px;object-fit:contain;}
.globe-panel{position:relative;min-height:100%;overflow:hidden;}
.globe-panel p{font-size:12px;line-height:1.55;margin:0 0 10px;width:285px;position:relative;z-index:1;}
.globe-panel .link-btn{position:relative;z-index:1;color:var(--purple)!important;font-size:11px;}
.globe-img{position:absolute;right:-85px;bottom:-105px;width:340px;opacity:.82;pointer-events:none;z-index:0;}

/* Stats */
.stats{padding:14px 42px 18px;}
.stats h3{font-size:13px;margin:0 0 12px;letter-spacing:.065em;}
.stat-row{gap:42px;align-items:center;}
.stat{gap:10px;}
.stat-icon{width:30px;height:30px;object-fit:contain;flex:0 0 30px;}
.stat strong{font-size:18px;line-height:1;color:var(--navy);}
.stat span{font-size:10px;color:var(--ink);}

/* Cards */
.cards{grid-template-columns:repeat(4,1fr);gap:16px;}
.card{min-height:72px;border-radius:7px;padding:16px 18px;display:grid;grid-template-columns:48px 1fr;grid-template-rows:auto auto;column-gap:12px;align-items:center;}
.card-icon{grid-row:1/3;width:42px;height:42px;object-fit:contain;}
.card h4{margin:0 0 2px;font-size:13px;}
.card p{margin:0;color:var(--ink);font-size:11px;line-height:1.4;}
.section h1[style]{font-size:21px!important;line-height:1.1;margin-bottom:18px!important;letter-spacing:.05em;}

/* Page heroes */
.page-hero{height:215px;padding:0 42px;}
.page-hero h1{font-size:42px;letter-spacing:.12em;}
.page-hero p{font-size:20px!important;line-height:1.35;}
.building{background:linear-gradient(90deg,rgba(11,24,64,.98),rgba(11,24,64,.55)),url('img/building.png') center 48%/cover!important;}
.catalog-hero{height:274px;grid-template-columns:40% 60%;padding:0 34px 0 34px;}
.catalog-hero h1{font-size:44px;}
.catalog-hero .hero-content:first-child{z-index:3;}
.catalog-products-real{height:100%;display:flex;align-items:flex-end;justify-content:flex-end;}
.catalog-hero-products-img{width:530px;max-width:none;height:auto;object-fit:contain;object-position:right bottom;margin-bottom:-6px;filter:drop-shadow(0 20px 28px rgba(0,0,0,.35));}

/* About */
.about-grid{grid-template-columns:44% 56%;gap:40px;padding:58px 52px;}
.about-grid p{font-size:17px;line-height:1.58;}
.divider-left{padding-left:54px;}
.value{grid-template-columns:46px 1fr;gap:20px;margin-bottom:36px;}
.value-icon{width:42px;height:42px;object-fit:contain;}
.value h3{font-size:22px;letter-spacing:.12em;margin-bottom:6px;}
.value p{font-size:16px;line-height:1.45;}

/* Catalog body */
.catalog-layout{grid-template-columns:190px 1fr;gap:34px;padding:28px 32px 48px;}
.sidebar h3,.contact-section h3{font-size:17px;margin-top:0;}
.sidebar a{font-size:15px;padding:7px 0;}
.tools{gap:16px;margin-bottom:18px;}
.search{padding:12px 18px;font-size:13px;}
.tool-btn{padding:12px 18px;font-size:12px;}
.products-grid{grid-template-columns:repeat(4,1fr);gap:18px;}
.product-card{padding:14px 16px;}
.pack{height:160px;margin-bottom:12px;}
.product-img{max-width:100%;max-height:158px;object-fit:contain;display:block;margin:auto;filter:drop-shadow(0 12px 16px rgba(11,24,64,.13));}
.product-card h4{font-size:17px;line-height:1.25;}
.product-card p,.price{font-size:14px;}
.pagination{font-size:13px;margin-top:22px;}
.pages span{width:31px;height:31px;}

/* Brands */
.brands-intro{padding:50px 52px 20px;gap:42px;}
.brands-intro p{font-size:17px!important;}
.brand-grid{grid-template-columns:repeat(3,1fr);gap:18px;padding:25px 52px 62px;}
.brand-card{height:150px;padding:24px;}
.brand-card img{max-height:90px;max-width:90%;}

/* Contact */
.contact-section{grid-template-columns:26% 31% 43%;gap:28px;padding:26px 46px 22px;align-items:start;}
.info-list{gap:17px;font-size:14px;}
.info-item svg{width:22px;height:22px;display:block!important;color:var(--purple);}
.form input,.form textarea{padding:10px 12px;margin-bottom:10px;font-size:13px;}
.form textarea{height:78px;}
.form button{padding:12px;font-size:12px;}
.venezuela-map-box{height:230px;border-radius:0;background:#fff;display:flex;align-items:center;justify-content:center;overflow:visible;}
.venezuela-map-box img{width:100%;height:100%;object-fit:contain;object-position:center;}

/* Footer */
.footer{padding:34px 46px 18px;}
.footer-grid{grid-template-columns:1.35fr .7fr .9fr 1fr;gap:55px;}
.footer-logo{width:200px;height:auto;margin-bottom:14px;filter:none;}
.footer p,.footer a{font-size:14px;line-height:1.5;}
.footer h4{font-size:13px;margin-bottom:12px;}
.socials span{width:32px;height:32px;font-size:13px;}
.copyright{font-size:12px;margin-top:22px;padding-top:14px;}

/* Keep mockup layout intact on tablet/desktop; only stack on very small screens */
@media(max-width:700px){
  .site{width:100%;min-width:0;max-width:100%;overflow:hidden;}
  .header{height:auto;align-items:flex-start;gap:16px;flex-direction:column;padding:24px;}
  .brand-logo{width:220px;}
  .nav{flex-wrap:wrap;gap:18px;}
  .home-hero,.split,.about-grid,.catalog-layout,.brands-intro,.contact-section,.footer-grid{grid-template-columns:1fr;height:auto;}
  .home-hero{padding:42px 24px;}
  .asset-hero{min-height:250px;margin-top:18px;}
  .hero-products-img{width:100%;right:0;bottom:0;}
  .hero-map-img{right:0;top:0;width:100%;height:100%;opacity:.35;}
  .products-grid,.cards,.brand-grid,.services-grid{grid-template-columns:1fr;}
  .category-icons{grid-template-columns:repeat(3,1fr);}
  .divider-left,.split>div+div{border-left:0;padding-left:0;}
  .split>div{padding-right:0;}
}

/* --- Final layout correction v1.2: wider desktop, home spacing, services proportions --- */
@media (min-width:701px){
  body{background:#f2f3f5;}
  .site{width:min(1440px,100%);max-width:1440px;min-width:1024px;overflow:hidden;}
  .header{height:92px;padding:0 46px;gap:34px;}
  .brand-logo{width:252px;max-height:56px;object-fit:contain;object-position:left center;}
  .nav{gap:38px;font-size:12px;}
  .cta{padding:16px 28px;font-size:12px;}

  /* Home hero: keep all CTA/buttons inside and avoid product overlap */
  .home-hero{height:460px;padding:68px 52px 52px;grid-template-columns:44% 56%;gap:0;overflow:hidden;background:#071631;}
  .home-hero:before{opacity:.24;}
  .home-hero h1{font-size:37px;line-height:1.16;margin:0 0 18px;letter-spacing:.075em;}
  .home-hero p{font-size:20px;line-height:1.42;margin:0 0 22px;}
  .feature-row{gap:32px;margin:0 0 34px;display:flex;flex-wrap:nowrap;}
  .feature{gap:12px;font-size:13px;line-height:1.35;min-width:0;}
  .feature strong{font-size:14px;white-space:nowrap;}
  .feature span{font-size:12px;white-space:nowrap;color:#e4e8f3;}
  .feature-icon{width:34px;height:34px;flex-basis:34px;}
  .buttons{gap:42px;position:relative;z-index:10;}
  .buttons .cta{min-width:230px;padding:18px 30px;font-size:13px;}
  .buttons .link-btn{font-size:14px;white-space:nowrap;}
  .asset-hero{height:100%;overflow:visible;position:relative;}
  .hero-map-img{right:-26px;top:-74px;width:750px;height:400px;object-fit:cover;opacity:.84;mix-blend-mode:screen;}
  .hero-products-img{right:10px;bottom:-2px;width:690px;max-width:none;height:auto;}

  /* Home categories / globe area */
  .section{padding:34px 52px;}
  .split{height:172px;grid-template-columns:53% 47%;}
  .split>div{padding-right:40px;}
  .split>div+div{padding-left:46px;}
  .section-title{font-size:16px;margin:0 0 22px;position:relative;z-index:3;}
  .category-icons{gap:22px;}
  .cat{font-size:12px;}
  .cat-icon{width:36px;height:36px;margin-bottom:10px;}
  .globe-panel{position:relative;overflow:hidden;}
  .globe-panel h2{color:var(--navy)!important;background:transparent;}
  .globe-panel p{font-size:15px;line-height:1.6;width:420px;position:relative;z-index:3;color:var(--ink);}
  .globe-panel .link-btn{position:relative;z-index:3;color:var(--purple)!important;font-size:13px;}
  .globe-img{right:-115px;bottom:-155px;width:480px;opacity:.72;z-index:0;}

  .stats{padding:20px 52px 24px;}
  .stats h3{font-size:15px;margin-bottom:17px;}
  .stat-row{gap:78px;}
  .stat-icon{width:36px;height:36px;flex-basis:36px;}
  .stat strong{font-size:20px;}
  .stat span{font-size:12px;}

  .cards{gap:22px;}
  .card{min-height:96px;padding:22px 24px;grid-template-columns:58px 1fr;column-gap:18px;}
  .card-icon{width:50px;height:50px;}
  .card h4{font-size:15px;}
  .card p{font-size:13px;line-height:1.45;}
  .section h1[style]{font-size:25px!important;margin-bottom:28px!important;}

  /* Page heroes: use actual warehouse/building photo, not placeholder */
  .page-hero{height:280px;padding:0 58px;}
  .page-hero h1{font-size:52px;}
  .page-hero p{font-size:23px!important;}
  .building{background:linear-gradient(90deg,rgba(11,24,64,.98),rgba(11,24,64,.55)),url('img/building-wide.png') center 52%/cover!important;}

  /* Nosotros closer to reference */
  .about-grid{grid-template-columns:43% 57%;gap:60px;padding:72px 72px 62px;}
  .about-grid p{font-size:19px;line-height:1.62;}
  .divider-left{padding-left:70px;}
  .value{grid-template-columns:52px 1fr;gap:26px;margin-bottom:42px;}
  .value-icon{width:48px;height:48px;object-fit:contain;}
  .value h3{font-size:25px;}
  .value p{font-size:18px;}

  /* Servicios: fix oversized icons and card proportions */
  .services-grid{grid-template-columns:repeat(3,1fr);gap:24px;padding:72px 72px;align-items:stretch;}
  .service-large{padding:30px 30px 34px;border-radius:12px;min-height:270px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;overflow:hidden;}
  .service-icon{width:64px;height:64px;object-fit:contain;margin:0 0 24px;display:block;flex:0 0 auto;}
  .service-large h3{font-size:22px;line-height:1.2;margin:0 0 14px;color:var(--navy);}
  .service-large p{font-size:16px;line-height:1.55;margin:0;color:var(--muted);}

  /* Preserve catalog proportion while respecting wider shell */
  .catalog-hero{height:340px;padding:0 52px;grid-template-columns:39% 61%;}
  .catalog-hero h1{font-size:56px;}
  .catalog-hero-products-img{width:670px;margin-bottom:-4px;}
  .catalog-layout{grid-template-columns:250px 1fr;padding:38px 52px 58px;gap:42px;}
  .pack{height:185px;}
  .product-img{max-height:180px;}

  .contact-section{padding:42px 64px 38px;}
  .venezuela-map-box{height:260px;}
}

@media (min-width:1024px) and (max-width:1180px){
  .site{width:1024px;min-width:1024px;max-width:1024px;}
  .header{height:72px;padding:0 30px;gap:24px;}
  .brand-logo{width:220px;max-height:48px;}
  .nav{gap:28px;font-size:10.5px;}
  .cta{padding:13px 24px;font-size:11px;}
  .home-hero{height:328px;padding:48px 42px 30px;grid-template-columns:47% 53%;}
  .home-hero h1{font-size:30px;margin-bottom:14px;}
  .home-hero p{font-size:18px;margin-bottom:22px;}
  .feature-row{gap:22px;margin-bottom:28px;}
  .feature strong{font-size:12px;}.feature span{font-size:11px;}.feature-icon{width:26px;height:26px;flex-basis:26px;}
  .buttons{gap:30px}.buttons .cta{min-width:178px;padding:13px 24px;font-size:11px}.buttons .link-btn{font-size:12px;}
  .hero-map-img{right:-18px;top:-46px;width:620px;height:310px;}
  .hero-products-img{right:6px;bottom:-3px;width:520px;}
  .section{padding:24px 42px}.split{height:128px}.section-title{font-size:14px;margin-bottom:18px}.globe-panel p{font-size:12px;width:285px}.globe-img{right:-85px;bottom:-105px;width:340px;}
  .stats{padding:14px 42px 18px}.stat-row{gap:42px}.cards{gap:16px}.card{min-height:72px;padding:16px 18px;grid-template-columns:48px 1fr}.card-icon{width:42px;height:42px}.card h4{font-size:13px}.card p{font-size:11px}.section h1[style]{font-size:21px!important;margin-bottom:18px!important;}
  .page-hero{height:215px;padding:0 42px}.page-hero h1{font-size:42px}.page-hero p{font-size:20px!important;}
  .catalog-hero{height:274px;padding:0 34px;grid-template-columns:40% 60%;}.catalog-hero h1{font-size:44px}.catalog-hero-products-img{width:530px;}
  .catalog-layout{grid-template-columns:190px 1fr;gap:34px;padding:28px 32px 48px}.pack{height:160px}.product-img{max-height:158px;}
  .about-grid{grid-template-columns:44% 56%;gap:40px;padding:58px 52px}.about-grid p{font-size:17px}.divider-left{padding-left:54px}.value{grid-template-columns:46px 1fr;gap:20px;margin-bottom:36px}.value-icon{width:42px;height:42px}.value h3{font-size:22px}.value p{font-size:16px;}
  .services-grid{grid-template-columns:repeat(3,1fr);gap:18px;padding:48px 52px}.service-large{min-height:230px;padding:24px}.service-icon{width:54px;height:54px;margin-bottom:18px}.service-large h3{font-size:19px}.service-large p{font-size:14px;}
  .contact-section{padding:26px 46px 22px}.venezuela-map-box{height:230px;}
}

/* --- Ajustes finales V4 solicitados: home, hero, servicios, marcas y contacto --- */
@media (min-width:701px){
  .site{width:min(1440px,100%);max-width:1440px;min-width:0;}

  /* HOME HERO: separa el texto de los productos y permite ver completos los mapas */
  .home-hero{
    height:430px;
    padding:58px 52px 42px;
    grid-template-columns:46% 54%;
    background:#071631;
  }
  .home-hero h1{font-size:39px;line-height:1.13;margin-bottom:20px;}
  .home-hero p{font-size:22px;line-height:1.4;margin-bottom:26px;}
  .feature-row{gap:26px;margin-bottom:30px;position:relative;z-index:6;}
  .feature{gap:10px;}
  .feature-icon{width:31px;height:31px;flex:0 0 31px;}
  .feature strong{font-size:13px;}
  .feature span{font-size:11px;}
  .buttons{gap:34px;z-index:8;}
  .buttons .cta{min-width:205px;padding:15px 24px;font-size:12px;}
  .buttons .link-btn{font-size:13px;}
  .asset-hero{height:100%;overflow:visible;z-index:2;}
  .hero-map-img{
    position:absolute;
    width:690px;
    height:auto;
    right:4px;
    top:30px;
    opacity:.9;
    object-fit:contain;
    mix-blend-mode:screen;
    z-index:0;
    pointer-events:none;
  }
  .hero-products-img{
    position:absolute;
    width:565px;
    max-width:none;
    height:auto;
    right:22px;
    bottom:-3px;
    z-index:2;
    filter:drop-shadow(0 20px 28px rgba(0,0,0,.35));
  }

  /* HOME: globo más proporcional y texto con aire */
  .split{height:150px;grid-template-columns:53% 47%;}
  .globe-panel{overflow:hidden;}
  .globe-panel .section-title{font-size:15px;margin-bottom:16px;letter-spacing:.08em;}
  .globe-panel p{width:360px;font-size:14px;line-height:1.55;margin-bottom:8px;color:var(--ink);}
  .globe-panel .link-btn{font-size:12px;color:var(--purple)!important;}
  .globe-img{width:390px;right:-70px;bottom:-125px;opacity:.68;}

  /* FOTO DE ALMACÉN / EDIFICIO: muestra mejor el logo en Nosotros y Servicios */
  .building{background:linear-gradient(90deg,rgba(11,24,64,.98),rgba(11,24,64,.55)),url('img/building-wide.png') center 34%/cover!important;}

  /* SERVICIOS: texto mejorado y proporciones estables */
  .services-grid{grid-template-columns:repeat(3,1fr);align-items:stretch;}
  .service-large{min-height:280px;overflow:visible;}
  .featured-service{min-height:340px;}
  .service-list{margin:14px 0 0;padding-left:18px;color:var(--muted);font-size:14px;line-height:1.48;}
  .service-list li{margin:5px 0;}

  /* MARCAS: conserva el diseño, pero agrega nombre y descripción */
  .brand-grid{grid-template-columns:repeat(4,1fr);gap:18px;padding:25px 52px 62px;}
  .brand-card{
    height:245px;
    padding:0;
    display:flex;
    flex-direction:column;
    align-items:stretch;
    justify-content:space-between;
    overflow:hidden;
    box-shadow:none;
  }
  .brand-logo-box{height:170px;display:flex;align-items:center;justify-content:center;padding:26px 28px;background:#fff;}
  .brand-card img{max-height:98px;max-width:92%;object-fit:contain;}
  .brand-meta{border-top:1px solid var(--line);background:#f7f8fb;padding:16px 20px 15px;display:flex;align-items:flex-end;justify-content:space-between;gap:16px;min-height:70px;}
  .brand-meta strong{font-size:14px;line-height:1.15;letter-spacing:.08em;text-transform:uppercase;color:var(--navy);}
  .brand-meta span{font-size:11px;color:var(--muted);text-align:right;line-height:1.35;}
  .add-brand{background:var(--navy);color:#fff;align-items:center;justify-content:center;text-align:center;padding:30px;}
  .add-brand strong{font-size:24px;display:block;margin-bottom:12px;}
  .add-brand p{font-size:14px;line-height:1.5;color:#d8ddec;margin:0;}

  /* CONTACTO: mapa de Venezuela más grande y alineado */
  .venezuela-map-box{height:300px;align-items:center;justify-content:center;}
  .venezuela-map-box img{width:108%;height:108%;object-fit:contain;object-position:center;}
}

@media (min-width:1024px) and (max-width:1180px){
  .home-hero{height:330px;padding:46px 40px 30px;grid-template-columns:47% 53%;}
  .home-hero h1{font-size:30px;margin-bottom:14px;}
  .home-hero p{font-size:18px;margin-bottom:22px;}
  .feature-row{gap:20px;margin-bottom:25px;}
  .feature-icon{width:26px;height:26px;flex:0 0 26px;}
  .feature strong{font-size:12px;}
  .feature span{font-size:10px;}
  .buttons .cta{min-width:176px;padding:13px 22px;font-size:11px;}
  .buttons .link-btn{font-size:12px;}
  .hero-map-img{width:520px;right:0;top:18px;}
  .hero-products-img{width:435px;right:20px;bottom:-2px;}
  .split{height:126px;}
  .globe-panel .section-title{font-size:13px;margin-bottom:12px;}
  .globe-panel p{width:270px;font-size:12px;line-height:1.5;}
  .globe-img{width:295px;right:-50px;bottom:-92px;opacity:.68;}
  .building{background-position:center 32%!important;}
  .featured-service{min-height:310px;}
  .service-list{font-size:12px;line-height:1.42;}
  .brand-grid{grid-template-columns:repeat(4,1fr);gap:16px;padding:25px 42px 58px;}
  .brand-card{height:220px;}
  .brand-logo-box{height:152px;padding:22px;}
  .brand-meta{padding:13px 16px;min-height:66px;}
  .brand-meta strong{font-size:12px;}
  .brand-meta span{font-size:10px;}
  .venezuela-map-box{height:260px;}
  .venezuela-map-box img{width:112%;height:112%;}
}


/* --- Cambios finales según instrucciones completas: mayo 2026 --- */
@media (min-width:701px){
  /* Home */
  .home-hero{position:relative;overflow:hidden;min-height:430px;}
  .asset-hero{position:absolute!important;inset:0 0 0 auto;width:62%;height:100%;z-index:1;pointer-events:none;}
  .home-hero > .hero-content:first-child{position:relative;z-index:4;max-width:600px;}
  .hero-map-img{position:absolute!important;top:8px;right:0;width:min(58vw,780px);height:auto;object-fit:contain;z-index:1;opacity:.9;mix-blend-mode:screen;}
  .hero-products-img{position:absolute!important;right:4%;bottom:0;width:min(44vw,575px);height:auto;object-fit:contain;z-index:2;filter:drop-shadow(0 18px 30px rgba(0,0,0,.35));}
  .outline-btn{border:2px solid #fff;color:#fff!important;background:transparent;padding:12px 24px;border-radius:5px;font-weight:850;letter-spacing:.06em;text-transform:uppercase;font-size:13px;transition:.18s ease;display:inline-flex;align-items:center;justify-content:center;}
  .outline-btn:hover{background:#fff;color:var(--navy)!important;}
  .buttons{align-items:center;}
  .buttons .cta{display:inline-flex;align-items:center;justify-content:center;}
  .cat{min-height:74px;height:auto;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;}
  .cat span{display:block;line-height:1.25;white-space:normal;}

  /* Globo home */
  .globe-panel{overflow:hidden;min-height:130px;}
  .globe-img{max-height:100%;height:auto;object-fit:cover;}
  .globe-panel .section-title,.globe-panel p,.globe-panel .link-btn{position:relative;z-index:3;}

  /* Page hero image position */
  .building{background-position:center 28%!important;}

  /* Servicios */
  .services-grid{grid-template-columns:repeat(3,1fr);gap:24px;padding:72px;}
  .service-large{min-height:420px;padding:28px 28px 30px;display:flex;flex-direction:column;align-items:flex-start;}
  .service-icon{width:54px;height:54px;margin-bottom:18px;object-fit:contain;}
  .service-large h3{font-size:21px;line-height:1.18;margin:0 0 12px;}
  .service-large p{font-size:15px;line-height:1.5;margin:0;color:var(--muted);}
  .service-list{margin:14px 0 0;padding-left:19px;color:var(--muted);font-size:13px;line-height:1.45;}
  .service-list li{margin:6px 0;}

  /* Catálogo */
  .product-card{cursor:pointer;transition:transform .18s ease, box-shadow .18s ease;}
  .product-card:hover{transform:translateY(-2px);box-shadow:0 16px 35px rgba(11,24,64,.08);}
  .catalog-access-box{background:#F5F6FA;border:1px solid var(--line);border-radius:10px;padding:24px 28px;margin:0 0 24px;display:grid;grid-template-columns:1fr auto;gap:12px 24px;align-items:center;}
  .catalog-access-box h2{grid-column:1 / -1;margin:0;color:var(--navy);font-size:21px;letter-spacing:.06em;text-transform:uppercase;}
  .catalog-access-box p{margin:0;color:var(--ink);font-size:15px;line-height:1.55;}
  .catalog-access-box .cta{white-space:nowrap;text-align:center;}

  /* Marcas: fichas grandes y horizontales, conservando nombre/categorías */
  .brand-grid{grid-template-columns:repeat(3,1fr)!important;gap:24px!important;padding:30px 70px 80px!important;}
  .brand-card{height:255px!important;border:1px solid var(--line);border-radius:10px;background:#fff;display:flex!important;flex-direction:column;justify-content:space-between;align-items:stretch;overflow:hidden;padding:0!important;box-shadow:none;}
  .brand-logo-box{height:178px;display:flex;align-items:center;justify-content:center;padding:34px;background:#fff;}
  .brand-card img{max-width:92%;max-height:112px;object-fit:contain;}
  .brand-meta{min-height:77px;border-top:1px solid var(--line);background:#F5F6FA;padding:18px 22px;display:flex;align-items:center;justify-content:space-between;gap:18px;}
  .brand-meta strong{font-size:15px;letter-spacing:.08em;line-height:1.15;color:var(--navy);text-transform:uppercase;}
  .brand-meta span{font-size:12px;color:var(--muted);line-height:1.35;text-align:right;}
  .add-brand{height:255px!important;background:var(--navy)!important;color:#fff!important;align-items:center!important;justify-content:center!important;text-align:center!important;padding:35px!important;}
  .add-brand strong{font-size:25px;display:block;margin-bottom:12px;}
  .add-brand p{font-size:15px;line-height:1.5;color:#d8ddec;margin:0;}
}

@media (min-width:1024px) and (max-width:1180px){
  .home-hero{height:340px;min-height:340px;}
  .asset-hero{width:60%;}
  .hero-map-img{width:570px;top:10px;right:-5px;}
  .hero-products-img{width:430px;right:4%;bottom:0;}
  .outline-btn{padding:10px 18px;font-size:11px;}
  .catalog-access-box{grid-template-columns:1fr;padding:20px 22px;}
  .services-grid{padding:48px 52px;gap:18px;}
  .service-large{min-height:450px;padding:23px;}
  .service-large h3{font-size:18px;}
  .service-large p{font-size:13px;}
  .service-list{font-size:11.5px;}
  .brand-grid{grid-template-columns:repeat(3,1fr)!important;padding:28px 42px 58px!important;}
  .brand-card{height:225px!important;}
  .brand-logo-box{height:158px;padding:25px;}
  .brand-meta{min-height:67px;padding:14px 16px;}
  .brand-meta strong{font-size:12px;}.brand-meta span{font-size:10px;}
}

.catalog-modal{position:fixed;inset:0;background:rgba(3,8,24,.68);display:none;align-items:center;justify-content:center;z-index:9999;padding:24px;}
.catalog-modal.is-open{display:flex;}
.catalog-modal__box{position:relative;background:#fff;border-radius:12px;max-width:520px;width:100%;padding:38px 36px 32px;box-shadow:0 25px 80px rgba(0,0,0,.25);text-align:left;}
.catalog-modal__box h2{margin:0 0 14px;color:var(--navy);font-size:25px;letter-spacing:.04em;text-transform:uppercase;line-height:1.15;}
.catalog-modal__box p{font-size:17px;line-height:1.55;color:var(--ink);margin:0 0 22px;}
.catalog-modal__cta{display:inline-flex;margin-bottom:18px;}
.catalog-modal__whatsapp{font-size:14px!important;color:var(--muted)!important;margin:0!important;}
.catalog-modal__close{position:absolute;top:14px;right:16px;width:34px;height:34px;border:0;background:transparent;color:var(--navy);font-size:30px;line-height:1;cursor:pointer;}

@media(max-width:700px){
  .outline-btn{border:2px solid #fff;color:#fff!important;background:transparent;padding:12px 20px;border-radius:5px;font-weight:850;letter-spacing:.06em;text-transform:uppercase;font-size:12px;display:inline-flex;}
  .catalog-access-box{background:#F5F6FA;border:1px solid var(--line);border-radius:10px;padding:22px;margin-bottom:24px;}
  .catalog-access-box h2{margin:0 0 12px;color:var(--navy);font-size:19px;line-height:1.2;text-transform:uppercase;}
  .catalog-access-box p{font-size:15px;line-height:1.5;}
  .catalog-modal__box{padding:34px 24px 28px;}
}


/* === FINAL INSTRUCTIONS PATCH — Grupo Fitcore Website === */
@media (min-width:701px){
  /* HOME: hero product image anchored to bottom and maps visible */
  .home-hero{
    position:relative!important;
    overflow:hidden!important;
  }
  .home-hero .asset-hero{
    position:absolute!important;
    inset:0 0 0 auto!important;
    width:60%!important;
    height:100%!important;
    display:flex!important;
    align-items:flex-end!important;
    justify-content:flex-end!important;
    overflow:hidden!important;
    z-index:1!important;
    pointer-events:none!important;
  }
  .home-hero > .hero-content:first-child{
    position:relative!important;
    z-index:4!important;
  }
  .hero-map-img{
    position:absolute!important;
    top:0!important;
    right:0!important;
    width:min(60vw,820px)!important;
    height:76%!important;
    object-fit:contain!important;
    object-position:top right!important;
    opacity:.92!important;
    mix-blend-mode:screen!important;
    z-index:1!important;
  }
  .hero-products-img{
    position:absolute!important;
    bottom:0!important;
    right:0!important;
    height:90%!important;
    width:auto!important;
    max-width:100%!important;
    object-fit:contain!important;
    object-position:right bottom!important;
    display:block!important;
    z-index:2!important;
    filter:drop-shadow(0 18px 30px rgba(0,0,0,.35));
  }

  /* HOME: categories and CTA spacing */
  .cat{
    min-height:100px!important;
    height:auto!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:8px!important;
  }
  .cat span{line-height:1.25!important;white-space:normal!important;}
  .globe-link{
    margin-top:16px!important;
    display:inline-block!important;
  }

  /* HOME: globe image only clipped inside its internal wrapper */
  .globe-panel{
    overflow:visible!important;
    position:relative!important;
    min-height:150px!important;
  }
  .globe-img-wrap{
    position:absolute!important;
    top:0!important;
    right:0!important;
    bottom:0!important;
    width:48%!important;
    overflow:hidden!important;
    z-index:1!important;
    pointer-events:none!important;
  }
  .globe-img-wrap .globe-img{
    position:absolute!important;
    right:-22px!important;
    bottom:-12px!important;
    width:115%!important;
    max-height:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:left center!important;
    opacity:.72!important;
  }
  .globe-panel .section-title,
  .globe-panel p,
  .globe-panel .link-btn{
    position:relative!important;
    z-index:3!important;
    max-width:52%!important;
  }

  /* NOSOTROS */
  .about-grid > div:first-child .section-title{
    font-size:1.8rem!important;
    font-weight:700!important;
    color:#0B1840!important;
    margin-bottom:20px!important;
  }
  .text-link{
    color:#3B1F6B!important;
    font-weight:700!important;
    text-decoration:underline!important;
  }
  .text-link:hover{color:#5a2fa0!important;}

  /* CATÁLOGO: brands marquee */
  .marquee-wrapper{
    overflow:hidden;
    width:100%;
    padding:32px 0;
    border-top:1px solid #E4E6EE;
    background:#fff;
  }
  .marquee-title{
    margin:0 0 18px;
    text-align:center;
    font-size:14px;
    font-weight:900;
    color:var(--navy);
    letter-spacing:.12em;
    text-transform:uppercase;
  }
  .marquee-track{
    display:flex;
    width:max-content;
    animation:scroll 20s linear infinite;
    align-items:center;
  }
  .marquee-track img{
    height:48px;
    width:auto;
    max-width:170px;
    object-fit:contain;
    margin:0 40px;
    filter:grayscale(100%);
    opacity:.6;
    transition:filter .3s ease, opacity .3s ease;
  }
  .marquee-track img:hover{
    filter:none;
    opacity:1;
  }
  @keyframes scroll{
    0%{transform:translateX(0);}
    100%{transform:translateX(-50%);}
  }

  /* SERVICIOS: hover bullets */
  .service-card{
    transition:box-shadow .3s ease, transform .3s ease;
    cursor:default;
    min-height:300px!important;
  }
  .service-card:hover{
    box-shadow:0 8px 24px rgba(0,0,0,.12);
    transform:translateY(-4px);
  }
  .service-card .bullets{
    max-height:0!important;
    overflow:hidden!important;
    opacity:0!important;
    transition:max-height .4s ease, opacity .3s ease;
    margin-top:0!important;
  }
  .service-card:hover .bullets{
    max-height:300px!important;
    opacity:1!important;
    margin-top:14px!important;
  }
  .service-card .bullets li{
    color:#0B1840!important;
    font-weight:500!important;
  }
}

@media (min-width:1024px) and (max-width:1180px){
  .home-hero .asset-hero{width:58%!important;}
  .hero-products-img{height:82%!important;right:0!important;}
  .hero-map-img{height:76%!important;width:58vw!important;}
  .globe-panel .section-title,
  .globe-panel p,
  .globe-panel .link-btn{max-width:56%!important;}
  .globe-img-wrap{width:44%!important;}
}

@media(max-width:700px){
  .marquee-wrapper{overflow:hidden;width:100%;padding:28px 0;border-top:1px solid #E4E6EE;background:#fff;}
  .marquee-title{margin:0 0 16px;text-align:center;font-size:13px;font-weight:900;color:var(--navy);letter-spacing:.12em;text-transform:uppercase;}
  .marquee-track{display:flex;width:max-content;animation:scroll 20s linear infinite;align-items:center;}
  .marquee-track img{height:40px;width:auto;max-width:150px;object-fit:contain;margin:0 28px;filter:grayscale(100%);opacity:.6;}
  @keyframes scroll{0%{transform:translateX(0);}100%{transform:translateX(-50%);}}
  .cat{min-height:92px!important;height:auto!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;}
  .globe-link{margin-top:16px!important;display:inline-block!important;}
  .text-link{color:#3B1F6B!important;font-weight:700!important;text-decoration:underline!important;}
  .service-card .bullets{max-height:none!important;opacity:1!important;overflow:visible!important;}
}


/* Contact page custom icons */
.contact-icon{width:25px;height:25px;object-fit:contain;flex:0 0 25px;display:block;}
.info-item svg{display:none;}
@media(max-width:900px){.contact-icon{width:30px;height:30px;flex-basis:30px;}}

/* Fix: counter span inside stat strong was being caught by .stat span and made tiny */
.stat strong .counter,.stat .counter{font-size:inherit!important;color:inherit!important;line-height:inherit!important;}

/* === V4 FINAL FIXES: hero centered, products normal blend, stats prominence === */
@media (min-width:701px){

  /* HERO: más alto */
  .home-hero{
    height:520px!important;
    min-height:520px!important;
  }

  /* MAPA: más arriba y más a la izquierda */
  .home-hero .hero-map-img{
    top:-90px!important;
    right:75px!important;
    width:min(52vw,700px)!important;
    height:65%!important;
    object-fit:contain!important;
    object-position:top right!important;
    opacity:.92!important;
    mix-blend-mode:screen!important;
    z-index:1!important;
  }

  /* PRODUCTOS: fondo negro confirmado → mix-blend-mode:screen elimina el negro
     Los productos se superponen sobre el mapa usando screen blend igual que el mapa */
  .home-hero .hero-products-img{
    left:50%!important;
    right:auto!important;
    transform:translateX(-44%)!important;
    bottom:-38px!important;
    width:620px!important;
    height:auto!important;
    max-width:none!important;
    mix-blend-mode:screen!important;
    filter:brightness(1.08) contrast(1.05)!important;
    z-index:2!important;
  }

  /* SPLIT SECTION: columnas 50/50 para verse más equilibradas */
  .split.global-local-section{
    grid-template-columns:50% 50%!important;
  }

  /* STATS: sección más grande y prominente */
  .stats{
    padding:44px 52px 50px!important;
    border-bottom:1px solid var(--line)!important;
  }
  .stats h3{
    font-size:21px!important;
    margin-bottom:30px!important;
    letter-spacing:.1em!important;
    color:var(--navy)!important;
    font-weight:900!important;
  }
  .stat-row{
    gap:90px!important;
  }
  .stat{
    gap:14px!important;
  }
  .stat-icon{
    width:46px!important;
    height:46px!important;
    flex-basis:46px!important;
  }
  .stat strong{
    font-size:30px!important;
    color:var(--navy)!important;
    line-height:1!important;
  }
  .stat span{
    font-size:14px!important;
    color:var(--ink)!important;
  }
  .stat strong .counter,
  .stat .counter{
    font-size:inherit!important;
    color:inherit!important;
    line-height:1!important;
  }
}

/* Smaller desktop */
@media (min-width:1024px) and (max-width:1180px){
  .home-hero{height:390px!important;min-height:390px!important;}
  .home-hero .hero-map-img{width:500px!important;height:56%!important;top:0!important;right:0!important;}
  .home-hero .hero-products-img{width:520px!important;left:50%!important;right:auto!important;transform:translateX(-40%)!important;bottom:-18px!important;mix-blend-mode:normal!important;filter:drop-shadow(0 18px 28px rgba(0,0,0,.45))!important;}
  .stats{padding:30px 42px 34px!important;}
  .stats h3{font-size:17px!important;margin-bottom:22px!important;}
  .stat-row{gap:60px!important;}
  .stat strong{font-size:24px!important;}
  .stat span{font-size:13px!important;}
  .stat-icon{width:36px!important;height:36px!important;flex-basis:36px!important;}
}

/* === V2 COMPLETE CHANGES — language button, home hero, stats and marquees === */
#lang-toggle {
  background: transparent;
  border: 1.5px solid #3B1F6B;
  color: #3B1F6B;
  font-weight: 700;
  font-size: 0.85rem;
  padding: 6px 14px;
  border-radius: 6px;
  cursor: pointer;
  transition: background 0.2s ease, color 0.2s ease;
  letter-spacing: 0.05em;
  font-family: inherit;
  line-height: 1;
}
#lang-toggle:hover { background: #3B1F6B; color: #ffffff; }

.global-local-section { padding-bottom: 80px !important; }

.marquee-wrapper {
  overflow: hidden;
  width: 100%;
  padding: 32px 0;
  background: #ffffff;
}
.home-marquee { border-top: 0; border-bottom: 1px solid #E4E6EE; }
.marquee-track {
  display: flex;
  width: max-content;
  animation: scroll 20s linear infinite;
  align-items: center;
}
.marquee-track img {
  height: 48px;
  width: auto;
  max-width: 170px;
  object-fit: contain;
  margin: 0 40px;
  filter: grayscale(100%);
  opacity: 0.6;
  transition: filter 0.3s ease, opacity 0.3s ease;
}
.marquee-track img:hover { filter: none; opacity: 1; }
@keyframes scroll { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } }

@media (min-width:701px){
  .home-hero {
    position: relative !important;
    overflow: hidden !important;
  }
  .home-hero .asset-hero {
    position: absolute !important;
    inset: 0 0 0 auto !important;
    width: 60% !important;
    height: 100% !important;
    display: flex !important;
    align-items: flex-end !important;
    justify-content: flex-end !important;
    overflow: hidden !important;
    z-index: 1 !important;
    pointer-events: none !important;
  }
  .home-hero > .hero-content:first-child {
    position: relative !important;
    z-index: 4 !important;
    max-width: 600px !important;
  }
  .home-hero .hero-map-img {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    width: min(60vw, 820px) !important;
    height: 76% !important;
    object-fit: contain !important;
    object-position: top right !important;
    opacity: .92 !important;
    mix-blend-mode: screen !important;
    z-index: 1 !important;
  }
  .home-hero .hero-products-img {
    position: absolute !important;
    bottom: 0 !important;
    right: 0 !important;
    height: 88% !important;
    width: auto !important;
    max-width: 100% !important;
    object-fit: contain !important;
    object-position: right bottom !important;
    display: block !important;
    z-index: 2 !important;
    filter: drop-shadow(0 18px 30px rgba(0,0,0,.35));
  }
}

@media (min-width:1024px) and (max-width:1180px){
  .home-hero .asset-hero{width:58%!important;}
  .home-hero .hero-products-img{height:82%!important;right:0!important;bottom:0!important;}
  .home-hero .hero-map-img{height:76%!important;width:58vw!important;}
}

@media(max-width:700px){
  #lang-toggle{padding:7px 14px;font-size:.78rem;}
  .marquee-wrapper{padding:28px 0;}
  .marquee-track img{height:40px;max-width:150px;margin:0 28px;}
  .global-local-section{padding-bottom:54px!important;}
}

/* === V2.1 FIXES — Home hero product baseline, map position, section separator === */
@media (min-width:701px){
  .home-hero{
    position:relative!important;
    overflow:hidden!important;
  }
  .home-hero .asset-hero{
    position:absolute!important;
    inset:0 0 0 auto!important;
    width:60%!important;
    height:100%!important;
    overflow:hidden!important;
    z-index:1!important;
    pointer-events:none!important;
  }
  .home-hero .hero-map-img{
    position:absolute!important;
    top:-62px!important;
    right:-40px!important;
    width:740px!important;
    height:auto!important;
    max-width:none!important;
    object-fit:contain!important;
    object-position:top right!important;
    opacity:.92!important;
    mix-blend-mode:screen!important;
    z-index:1!important;
  }
  .home-hero .hero-products-img{
    position:absolute!important;
    right:-80px!important;
    bottom:-76px!important;
    width:720px!important;
    height:auto!important;
    max-width:none!important;
    object-fit:contain!important;
    object-position:right bottom!important;
    display:block!important;
    z-index:2!important;
    filter:drop-shadow(0 20px 28px rgba(0,0,0,.35))!important;
  }
}

/* Move the divider line below the second Home section content */
.split.global-local-section{
  height:auto!important;
  min-height:170px!important;
  padding-bottom:64px!important;
  align-items:start!important;
}
.global-local-section .globe-panel{overflow:hidden!important;}
.global-local-section .globe-img{bottom:-76px!important;}

@media (max-width:700px){
  .split.global-local-section{
    height:auto!important;
    min-height:0!important;
    padding-bottom:54px!important;
  }
}


/* === COMPOSITE HERO IMAGE — single PNG (RGBA transparent bg) replaces map + products === */
/*
  PNG: 2172x1629 RGBA. Top blank 156px, bottom blank 100px.
  FIX: .asset-hero is clamped to the right 56% (= right grid column).
  overflow:hidden on the container clips image horizontally.
  Image positioned with right:0 bottom:offset to anchor products at floor.
  Bottom offset = (100/1629) * rendered_height.
*/

/* Base: mobile fallback — image flows normally */
.home-hero .hero-composite-img {
  position: absolute !important;
  bottom: 0 !important;
  right: 0 !important;
  width: 100% !important;
  height: auto !important;
  max-width: none !important;
  object-fit: contain !important;
  object-position: right bottom !important;
  mix-blend-mode: normal !important;
  z-index: 2 !important;
  display: block !important;
}

/* Override asset-hero container to stay in the right 56% only */
@media (min-width: 701px) {
  .home-hero .asset-hero {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: auto !important;
    width: 56% !important;
    height: 100% !important;
    overflow: hidden !important;
    z-index: 1 !important;
    pointer-events: none !important;
    display: block !important;
  }
}

/* Large desktop ≥1181px: hero 620px
   Image 108% of 620px = 670px tall → rendered width = 670*(2172/1629) = 893px
   right_blank = 670*(192/1629) = 79px  → right: -79px  (push transparent right margin off-screen)
   bottom_blank = 670*(100/1629) = 41px → bottom: -41px (products sit at floor)
*/
@media (min-width: 1181px) {
  .home-hero {
    height: 620px !important;
    min-height: 620px !important;
    align-items: center !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .home-hero .hero-composite-img {
    position: absolute !important;
    width: auto !important;
    height: 108% !important;
    bottom: -41px !important;
    right: -79px !important;
    left: auto !important;
  }
}

/* Medium desktop 1024–1180px: hero 500px
   108% of 500px = 540px → right_blank = 540*(192/1629)=64px; bottom = 540*(100/1629)=33px */
@media (min-width: 1024px) and (max-width: 1180px) {
  .home-hero {
    height: 500px !important;
    min-height: 500px !important;
    align-items: center !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .home-hero .hero-composite-img {
    position: absolute !important;
    width: auto !important;
    height: 108% !important;
    bottom: -33px !important;
    right: -64px !important;
    left: auto !important;
  }
}

/* Small desktop 701–1023px: hero 460px
   108% of 460px = 497px → right_blank = 497*(192/1629)=58px; bottom = 497*(100/1629)=30px */
@media (min-width: 701px) and (max-width: 1023px) {
  .home-hero {
    align-items: center !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .home-hero .hero-composite-img {
    position: absolute !important;
    width: auto !important;
    height: 108% !important;
    bottom: -30px !important;
    right: -58px !important;
    left: auto !important;
  }
}

@media (max-width: 700px) {
  .home-hero .asset-hero {
    position: relative !important;
    width: 100% !important;
    height: 280px !important;
    overflow: hidden !important;
  }
  .home-hero .hero-composite-img {
    position: absolute !important;
    width: auto !important;
    height: 100% !important;
    bottom: 0 !important;
    right: 0 !important;
    left: auto !important;
    opacity: 0.5 !important;
  }
}


/* ============================================================
   HOME SECTION IMPROVEMENTS — Split + Servicios B2B
   ============================================================ */

/* --- SPLIT SECTION: Center & expand Categorías / Marcas Globales --- */
@media (min-width: 701px) {
  .split.global-local-section {
    height: auto !important;
    min-height: 0 !important;
    padding: 52px 64px 60px !important;
    align-items: center !important;
    grid-template-columns: 52% 48% !important;
  }
  .split.global-local-section > div:first-child {
    padding-right: 52px !important;
  }
  .split.global-local-section .section-title {
    font-size: 13px !important;
    margin-bottom: 28px !important;
  }
  .split.global-local-section .category-icons {
    grid-template-columns: repeat(6, 1fr) !important;
    gap: 10px 18px !important;
  }
  .split.global-local-section .cat-icon {
    width: 42px !important;
    height: 42px !important;
    margin-bottom: 10px !important;
  }
  .split.global-local-section .cat {
    font-size: 12px !important;
    font-weight: 800 !important;
  }
  .globe-panel {
    padding-left: 52px !important;
    border-left: 1px solid var(--line) !important;
  }
  .globe-panel .section-title {
    font-size: 18px !important;
    margin-bottom: 14px !important;
    line-height: 1.25 !important;
  }
  .globe-panel p {
    font-size: 16px !important;
    width: auto !important;
    max-width: 380px !important;
    margin-bottom: 18px !important;
  }
  .globe-panel .link-btn {
    font-size: 14px !important;
    font-weight: 800 !important;
  }
  .globe-img {
    width: 380px !important;
    right: -80px !important;
    bottom: -120px !important;
    opacity: 0.65 !important;
  }
}

/* --- SERVICIOS B2B: 2x2 grid, bigger cards, animations --- */
.section.servicios-section {
  padding: 64px 72px 72px !important;
  background: #f8f9ff !important;
  border-bottom: 1px solid var(--line) !important;
}
.section.servicios-section .section-title {
  text-align: center !important;
  font-size: 13px !important;
  letter-spacing: .12em !important;
  color: var(--purple) !important;
  margin-bottom: 10px !important;
}
.section.servicios-section h1 {
  font-size: 28px !important;
  text-align: center !important;
  color: var(--navy) !important;
  margin-bottom: 48px !important;
  letter-spacing: .06em !important;
}
.cards-2x2 {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 28px !important;
  max-width: 900px !important;
  margin: 0 auto !important;
}
.card-big {
  background: #fff !important;
  border: 1px solid var(--line) !important;
  border-radius: 16px !important;
  padding: 40px 36px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 0 !important;
  box-shadow: 0 4px 24px rgba(11,24,64,.06) !important;
  transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease !important;
  cursor: default !important;

  /* start hidden for animation */
  opacity: 0;
  transform: translateY(32px);
}
.card-big.visible {
  opacity: 1 !important;
  transform: translateY(0) !important;
  transition: opacity 0.55s ease, transform 0.55s ease,
              box-shadow 0.3s ease, border-color 0.3s ease !important;
}
.card-big:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 16px 40px rgba(59,31,107,.14) !important;
  border-color: var(--purple) !important;
}
.card-big .card-icon-wrap {
  width: 64px;
  height: 64px;
  background: rgba(59,31,107,.08);
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 22px;
  transition: background 0.3s ease;
}
.card-big:hover .card-icon-wrap {
  background: var(--purple) !important;
}
.card-big .card-icon-wrap img {
  width: 36px;
  height: 36px;
  object-fit: contain;
  transition: filter 0.3s ease;
}
.card-big:hover .card-icon-wrap img {
  filter: brightness(0) invert(1) !important;
}
.card-big h4 {
  font-size: 18px !important;
  font-weight: 900 !important;
  color: var(--navy) !important;
  margin: 0 0 10px !important;
  letter-spacing: .03em !important;
}
.card-big p {
  font-size: 15px !important;
  color: var(--ink) !important;
  line-height: 1.6 !important;
  margin: 0 !important;
}

/* Staggered animation delays */
.card-big:nth-child(1) { transition-delay: 0s; }
.card-big:nth-child(2) { transition-delay: 0.12s; }
.card-big:nth-child(3) { transition-delay: 0.24s; }
.card-big:nth-child(4) { transition-delay: 0.36s; }

@media (max-width: 700px) {
  .cards-2x2 { grid-template-columns: 1fr !important; gap: 18px !important; }
  .section.servicios-section { padding: 42px 24px 48px !important; }
  .section.servicios-section h1 { font-size: 22px !important; }
  .split.global-local-section { padding: 36px 24px 44px !important; }
  .globe-panel { padding-left: 0 !important; border-left: 0 !important; margin-top: 32px !important; }
}


/* === HOME HERO ONLY: remove background texture / SVG grid, keep pure navy === */
.home-hero:before {
  display: none !important;
}
.home-hero {
  background: #0B1840 !important;
}
/* Nosotros / Contacto page heroes ONLY — real warehouse photo */
.hero.almacen-bg {
  background: linear-gradient(90deg,rgba(11,24,64,.82),rgba(11,24,64,.38)),
              url('img/almacen-fitcore.png') center 22% / cover !important;
}

/* Contact form select dropdown matches input style */
.form-select {
  width: 100%;
  padding: 15px 18px;
  border: 1px solid var(--line);
  border-radius: 4px;
  margin-bottom: 14px;
  font: inherit;
  font-size: inherit;
  color: var(--muted);
  background: #fff;
  appearance: none;
  -webkit-appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%233B1F6B' stroke-width='1.8' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 18px center;
  cursor: pointer;
}
.form-select:focus {
  outline: none;
  border-color: var(--purple);
}
.form-select option { color: var(--navy); }

/* Contact form label for select */
.form-label {
  display: block;
  font-size: 13px;
  font-weight: 800;
  color: var(--navy);
  letter-spacing: .04em;
  margin-bottom: 6px;
  margin-top: 4px;
}

/* === HOME HERO: USA & Venezuela accent word animations === */
@keyframes accent-glow {
  0%   { color: #b789ff; text-shadow: 0 0 0px transparent; }
  50%  { color: #d4aaff; text-shadow: 0 0 18px rgba(183,137,255,0.55), 0 0 32px rgba(183,137,255,0.25); }
  100% { color: #b789ff; text-shadow: 0 0 0px transparent; }
}

@keyframes accent-slide-in {
  from { opacity: 0; transform: translateY(8px); }
  to   { opacity: 1; transform: translateY(0); }
}

.home-hero .accent {
  display: inline-block;
  animation:
    accent-slide-in 0.7s ease both,
    accent-glow 3s ease-in-out infinite;
}

/* Stagger: USA slides in first, Venezuela a bit after */
.home-hero p .accent:nth-of-type(1) {
  animation-delay: 0.4s, 1.2s;
}
.home-hero p .accent:nth-of-type(2) {
  animation-delay: 0.7s, 1.8s;
}


/* === V16.1 PAGE HERO BACKGROUNDS ===
   - Warehouse photo only on Nosotros and Contacto.
   - Globe image as background texture only on Servicios and Marcas.
*/
.hero.almacen-bg,
.hero.globe-bg {
  background-repeat: no-repeat !important;
  background-size: cover !important;
}

.hero.almacen-bg::before,
.hero.globe-bg::before {
  display: none !important;
}

.hero.almacen-bg {
  background: linear-gradient(90deg, rgba(11,24,64,.84), rgba(11,24,64,.46)),
              url('img/almacen-fitcore.png') center center / cover no-repeat !important;
}

.hero.globe-bg {
  background: linear-gradient(90deg, rgba(11,24,64,.96), rgba(11,24,64,.84)),
              url('img/globe.png') center center / cover no-repeat !important;
}

/* === V16.2 warehouse hero adjustment ===
   Lower the warehouse photo slightly and give the hero a bit more height
   so the building logo is fully visible on Nosotros and Contacto.
*/
.hero.page-hero.almacen-bg {
  height: 320px !important;
  min-height: 320px !important;
  background-position: center 18% !important;
}

/* === V16.3 warehouse hero fine tune ===
   Move the warehouse image a little higher than V16.2 while keeping the extra hero height.
*/
.hero.page-hero.almacen-bg {
  background-position: center 24% !important;
}

/* === V16.4 Nosotros page subtle motion ===
   Gentle corporate animations for titles and icons, keeping Grupo Fitcore's visual system clean.
*/
@keyframes gfFadeUp {
  from { opacity: 0; transform: translateY(18px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes gfTitleLine {
  from { transform: scaleX(0); opacity: 0; }
  to { transform: scaleX(1); opacity: 1; }
}

@keyframes gfIconFloat {
  0%, 100% { transform: translateY(0) scale(1); }
  50% { transform: translateY(-5px) scale(1.04); }
}

@keyframes gfIconGlow {
  0%, 100% { box-shadow: 0 0 0 rgba(59, 31, 107, 0); }
  50% { box-shadow: 0 12px 28px rgba(59, 31, 107, 0.14); }
}

/* Hero title */
body:has(.about-grid) .page-hero .hero-content h1 {
  animation: gfFadeUp 0.75s ease both;
}

/* Main About intro */
.about-grid .section-title {
  position: relative;
  display: inline-block;
  animation: gfFadeUp 0.7s ease both;
}

.about-grid .section-title::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -10px;
  width: 72px;
  height: 3px;
  background: var(--purple);
  border-radius: 999px;
  transform-origin: left center;
  animation: gfTitleLine 0.8s ease 0.28s both;
}

.about-grid > div:first-child > p {
  animation: gfFadeUp 0.75s ease both;
}

.about-grid > div:first-child > p:nth-of-type(1) { animation-delay: 0.15s; }
.about-grid > div:first-child > p:nth-of-type(2) { animation-delay: 0.28s; }

/* Mission / Vision / Values blocks */
.about-grid .value {
  animation: gfFadeUp 0.75s ease both;
  transition: transform 0.25s ease, background 0.25s ease;
  border-radius: 14px;
}

.about-grid .value:nth-child(1) { animation-delay: 0.18s; }
.about-grid .value:nth-child(2) { animation-delay: 0.32s; }
.about-grid .value:nth-child(3) { animation-delay: 0.46s; }

.about-grid .value:hover {
  transform: translateY(-4px);
  background: rgba(59, 31, 107, 0.035);
}

.about-grid .value-icon {
  border-radius: 16px;
  animation: gfIconFloat 4.2s ease-in-out infinite, gfIconGlow 4.2s ease-in-out infinite;
  transition: transform 0.25s ease, filter 0.25s ease;
}

.about-grid .value:hover .value-icon {
  transform: translateY(-6px) scale(1.08);
  filter: saturate(1.15) contrast(1.04);
}

.about-grid .value h3 {
  position: relative;
  display: inline-block;
}

.about-grid .value h3::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -6px;
  width: 0;
  height: 2px;
  background: var(--purple);
  border-radius: 999px;
  transition: width 0.28s ease;
}

.about-grid .value:hover h3::after {
  width: 100%;
}

@media (prefers-reduced-motion: reduce) {
  .about-grid .section-title,
  .about-grid > div:first-child > p,
  .about-grid .value,
  .about-grid .value-icon,
  body:has(.about-grid) .page-hero .hero-content h1 {
    animation: none !important;
    transition: none !important;
  }
}

/* === V16.5 full-width + mobile responsive polish ===
   Removes desktop side margins and improves phone layout across all pages.
*/
html, body {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: hidden !important;
  background: #ffffff !important;
}

.site {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  box-shadow: none !important;
}

@media (min-width: 701px) {
  .site {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
  }
}

/* Tablet balance */
@media (min-width: 701px) and (max-width: 1100px) {
  .header {
    padding: 0 28px !important;
    gap: 18px !important;
  }
  .brand-logo { width: 210px !important; }
  .nav { gap: 18px !important; font-size: 11px !important; }
  .cta { padding: 14px 18px !important; font-size: 11px !important; }
  .home-hero { grid-template-columns: 48% 52% !important; padding: 54px 34px 42px !important; }
  .home-hero h1 { font-size: 34px !important; }
  .hero-products-img { width: 560px !important; right: -45px !important; }
  .hero-map-img { width: 610px !important; right: -80px !important; }
  .products-grid { grid-template-columns: repeat(2, 1fr) !important; }
  .brand-grid { grid-template-columns: repeat(2, 1fr) !important; }
  .contact-section { grid-template-columns: 1fr 1fr !important; }
  .venezuela-map-box { grid-column: 1 / -1 !important; }
}

/* Phone layout */
@media (max-width: 700px) {
  body { background: #ffffff !important; }

  .site {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
  }

  .header {
    height: auto !important;
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 14px !important;
    padding: 16px 18px !important;
  }

  .brand-logo {
    width: 205px !important;
    max-width: 82vw !important;
  }

  .nav {
    width: 100% !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    gap: 20px !important;
    padding: 4px 0 8px !important;
    font-size: 11px !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
  }
  .nav::-webkit-scrollbar { display: none !important; }
  .nav a { flex: 0 0 auto !important; }
  .nav a.active:after { bottom: -8px !important; height: 2px !important; }
  #lang-toggle { flex: 0 0 auto !important; }

  .header > .cta {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    padding: 14px 18px !important;
    font-size: 12px !important;
  }

  h1,
  .page-hero h1,
  .catalog-hero h1 {
    font-size: 36px !important;
    line-height: 1.12 !important;
    letter-spacing: .08em !important;
  }

  .home-hero {
    height: auto !important;
    min-height: 0 !important;
    grid-template-columns: 1fr !important;
    padding: 44px 22px 0 !important;
    gap: 12px !important;
  }
  .home-hero h1 { font-size: 33px !important; margin-bottom: 16px !important; }
  .home-hero p { font-size: 18px !important; line-height: 1.45 !important; margin-bottom: 24px !important; }
  .feature-row {
    flex-direction: column !important;
    gap: 14px !important;
    margin: 22px 0 26px !important;
  }
  .feature { font-size: 13px !important; }
  .feature strong,
  .feature span { white-space: normal !important; }
  .buttons {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 14px !important;
  }
  .buttons .cta,
  .buttons .link-btn {
    width: 100% !important;
    text-align: center !important;
  }
  .asset-hero {
    min-height: 255px !important;
    height: 255px !important;
    margin-top: 18px !important;
  }
  .hero-products-img {
    width: 118% !important;
    max-width: none !important;
    right: -9% !important;
    bottom: -2px !important;
  }
  .hero-map-img {
    width: 130% !important;
    height: 100% !important;
    right: -20% !important;
    top: 0 !important;
    opacity: .38 !important;
  }

  .section,
  .stats,
  .brands-intro,
  .brand-grid,
  .catalog-layout,
  .contact-section,
  .about-grid,
  .footer {
    padding-left: 22px !important;
    padding-right: 22px !important;
  }

  .split,
  .about-grid,
  .catalog-layout,
  .brands-intro,
  .contact-section,
  .footer-grid,
  .catalog-hero {
    display: grid !important;
    grid-template-columns: 1fr !important;
    height: auto !important;
    gap: 26px !important;
  }
  .split > div,
  .split > div + div,
  .divider-left {
    border-left: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .category-icons {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 18px 14px !important;
  }
  .cat { font-size: 12px !important; }
  .cat-icon { width: 34px !important; height: 34px !important; }

  .globe-panel p {
    width: 100% !important;
    font-size: 15px !important;
  }
  .globe-img {
    width: 280px !important;
    right: -95px !important;
    bottom: -120px !important;
    opacity: .38 !important;
  }

  .stats h3 {
    font-size: 14px !important;
    line-height: 1.35 !important;
  }
  .stat-row {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 18px !important;
  }

  .cards,
  .cards-2x2,
  .services-grid,
  .products-grid,
  .brand-grid {
    grid-template-columns: 1fr !important;
  }
  .card,
  .card-big,
  .product-card,
  .brand-card {
    width: 100% !important;
  }

  .page-hero {
    height: 220px !important;
    min-height: 220px !important;
    padding: 0 22px !important;
  }
  .hero.page-hero.almacen-bg {
    height: 240px !important;
    min-height: 240px !important;
    background-position: center center !important;
  }
  .hero.globe-bg {
    background-position: center center !important;
  }

  .about-grid {
    padding-top: 48px !important;
    padding-bottom: 38px !important;
  }
  .about-grid p,
  .value p {
    font-size: 16px !important;
    line-height: 1.6 !important;
  }
  .value {
    grid-template-columns: 44px 1fr !important;
    gap: 18px !important;
    margin-bottom: 30px !important;
  }
  .value h3 { font-size: 21px !important; }
  .value-icon { width: 40px !important; height: 40px !important; }

  .catalog-hero {
    padding: 42px 22px 0 !important;
    min-height: 360px !important;
    overflow: hidden !important;
  }
  .catalog-hero .hero-content:first-child { order: 1 !important; }
  .catalog-products-real {
    order: 2 !important;
    height: 190px !important;
    justify-content: center !important;
    align-items: flex-end !important;
  }
  .catalog-hero-products-img {
    width: 124% !important;
    max-width: none !important;
    margin: 0 0 -4px !important;
  }

  .tools {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 12px !important;
  }
  .search {
    grid-column: 1 / -1 !important;
    width: 100% !important;
  }
  .tool-btn { width: 100% !important; }
  .sidebar {
    border-bottom: 1px solid var(--line) !important;
    padding-bottom: 14px !important;
  }
  .sidebar a {
    display: inline-block !important;
    margin-right: 16px !important;
    font-size: 14px !important;
  }
  .pack { height: 175px !important; }
  .product-img { max-height: 172px !important; }

  .brand-card { height: 135px !important; }
  .contact-section { padding-top: 36px !important; }
  .info-list { font-size: 15px !important; }
  .venezuela-map-box { height: 230px !important; }
  .form input,
  .form textarea,
  .form-select { font-size: 15px !important; padding: 13px 14px !important; }

  .footer-grid { gap: 26px !important; }
  .footer-logo { width: 190px !important; }
}

@media (max-width: 390px) {
  h1,
  .page-hero h1,
  .catalog-hero h1 {
    font-size: 31px !important;
  }
  .home-hero h1 { font-size: 30px !important; }
  .asset-hero { height: 230px !important; min-height: 230px !important; }
  .hero-products-img { width: 126% !important; right: -13% !important; }
}

/* === V16.6 HOTFIX — full width without stretching hero assets ===
   Fixes the large navy empty space in the Home hero on wide screens
   and restores the warehouse photo framing for Nosotros/Contacto.
*/
@media (min-width: 1181px) {
  .home-hero {
    /* Full blue background stays, but the real hero content keeps a controlled width */
    grid-template-columns: minmax(420px, 520px) minmax(680px, 820px) !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 44px !important;
    padding-left: 48px !important;
    padding-right: 48px !important;
  }

  .home-hero > .hero-content:first-child {
    max-width: 520px !important;
  }

  .home-hero .asset-hero {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    height: 100% !important;
    overflow: visible !important;
    display: block !important;
  }

  .home-hero .hero-composite-img {
    position: absolute !important;
    width: auto !important;
    height: 108% !important;
    left: 47% !important;
    right: auto !important;
    bottom: -41px !important;
    transform: translateX(-50%) !important;
    object-fit: contain !important;
    object-position: center bottom !important;
  }
}

@media (min-width: 1024px) and (max-width: 1180px) {
  .home-hero {
    grid-template-columns: 44% 56% !important;
    justify-content: center !important;
    gap: 18px !important;
  }
  .home-hero .asset-hero {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    height: 100% !important;
    overflow: visible !important;
  }
  .home-hero .hero-composite-img {
    position: absolute !important;
    width: auto !important;
    height: 108% !important;
    left: 50% !important;
    right: auto !important;
    bottom: -33px !important;
    transform: translateX(-50%) !important;
  }
}

/* Keep the warehouse photo from over-zooming on very wide screens */
.hero.page-hero.almacen-bg {
  background-size: 100% 100%, min(1440px, 100%) auto !important;
  background-position: center center, center 24% !important;
  background-repeat: no-repeat, no-repeat !important;
}

@media (min-width: 1441px) {
  .hero.page-hero.almacen-bg {
    background-size: 100% 100%, 1440px auto !important;
    background-position: center center, center 24% !important;
  }
}

@media (max-width: 700px) {
  .hero.page-hero.almacen-bg {
    background-size: 100% 100%, cover !important;
    background-position: center center, center 24% !important;
  }
}



/* === V16.8 FINAL MOBILE / iPHONE FIX ===
   Paste at the very bottom of style.css.
   This keeps the desktop hero intact and forces a clean mobile layout.
*/
@media (max-width: 768px) {
  html, body {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
    background: #fff !important;
  }

  .site {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    box-shadow: none !important;
    overflow-x: hidden !important;
  }

  .header {
    height: auto !important;
    min-height: 78px !important;
    padding: 14px 18px !important;
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    gap: 12px !important;
    align-items: center !important;
  }

  .brand-logo {
    width: 205px !important;
    max-width: 68vw !important;
  }

  .nav {
    grid-column: 1 / -1 !important;
    order: 3 !important;
    width: 100% !important;
    display: flex !important;
    gap: 14px !important;
    overflow-x: auto !important;
    white-space: nowrap !important;
    padding: 8px 0 2px !important;
    scrollbar-width: none !important;
    font-size: 11px !important;
    letter-spacing: .04em !important;
  }

  .nav::-webkit-scrollbar {
    display: none !important;
  }

  .nav a.active:after {
    bottom: -5px !important;
    height: 2px !important;
  }

  .header > .cta {
    order: 2 !important;
    padding: 11px 12px !important;
    font-size: 10px !important;
    border-radius: 4px !important;
    white-space: nowrap !important;
  }

  .lang-toggle,
  .translate-btn,
  button[onclick*="toggleLanguage"] {
    order: 2 !important;
    min-width: 42px !important;
    height: 30px !important;
    font-size: 11px !important;
  }

  .home-hero {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 18px !important;
    padding: 42px 22px 0 !important;
    overflow: hidden !important;
  }

  .home-hero > .hero-content:first-child {
    max-width: 100% !important;
    width: 100% !important;
    text-align: left !important;
  }

  .home-hero h1 {
    font-size: clamp(32px, 9vw, 42px) !important;
    line-height: 1.08 !important;
    letter-spacing: .09em !important;
    margin: 0 0 18px !important;
  }

  .home-hero p {
    font-size: 18px !important;
    line-height: 1.45 !important;
    margin-bottom: 24px !important;
    max-width: 92% !important;
  }

  .feature-row {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 15px !important;
    margin: 24px 0 28px !important;
  }

  .feature {
    font-size: 13px !important;
    align-items: flex-start !important;
  }

  .feature svg,
  .feature img {
    width: 30px !important;
    height: 30px !important;
    flex: 0 0 30px !important;
  }

  .buttons {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    width: 100% !important;
  }

  .buttons .cta,
  .buttons .link-btn {
    width: 100% !important;
    display: block !important;
    text-align: center !important;
    padding: 15px 16px !important;
    font-size: 12px !important;
  }

  .home-hero .asset-hero {
    position: relative !important;
    width: 100% !important;
    height: 245px !important;
    min-height: 245px !important;
    margin-top: 10px !important;
    overflow: visible !important;
  }

  .home-hero .hero-composite-img {
    position: absolute !important;
    width: 118% !important;
    max-width: none !important;
    height: auto !important;
    left: 50% !important;
    right: auto !important;
    bottom: -2px !important;
    transform: translateX(-50%) !important;
    object-fit: contain !important;
    object-position: center bottom !important;
  }

  .section,
  .stats,
  .brands-intro,
  .brand-grid,
  .catalog-layout,
  .contact-section,
  .about-grid,
  .footer {
    padding-left: 22px !important;
    padding-right: 22px !important;
  }

  .split,
  .about-grid,
  .catalog-layout,
  .brands-intro,
  .contact-section,
  .footer-grid,
  .catalog-hero {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 28px !important;
    height: auto !important;
  }

  .split > div,
  .split > div + div,
  .divider-left {
    border-left: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .category-icons {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 20px 12px !important;
  }

  .stat-row {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 18px !important;
  }

  .cards,
  .cards-2x2,
  .services-grid,
  .products-grid,
  .brand-grid {
    grid-template-columns: 1fr !important;
  }

  .page-hero {
    height: 230px !important;
    min-height: 230px !important;
    padding: 0 22px !important;
    background-size: cover !important;
  }

  .page-hero h1,
  .catalog-hero h1 {
    font-size: clamp(34px, 11vw, 48px) !important;
    line-height: 1.08 !important;
  }

  .hero.page-hero.almacen-bg {
    height: 240px !important;
    min-height: 240px !important;
    background-size: 100% 100%, cover !important;
    background-position: center center, center 28% !important;
  }

  .catalog-hero {
    padding: 42px 22px 0 !important;
    min-height: 360px !important;
    overflow: hidden !important;
  }

  .catalog-products-real {
    height: 190px !important;
    justify-content: center !important;
    align-items: flex-end !important;
  }

  .catalog-hero-products-img {
    width: 124% !important;
    max-width: none !important;
    margin-bottom: -4px !important;
  }

  .tools {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 12px !important;
  }

  .search {
    grid-column: 1 / -1 !important;
    width: 100% !important;
  }

  .sidebar {
    border-bottom: 1px solid var(--line) !important;
    padding-bottom: 16px !important;
  }

  .sidebar a {
    display: inline-block !important;
    margin-right: 14px !important;
    margin-bottom: 8px !important;
  }

  .product-card,
  .brand-card,
  .card,
  .card-big {
    width: 100% !important;
  }

  .form input,
  .form textarea,
  .form-select {
    width: 100% !important;
    font-size: 16px !important;
  }
}

@media (max-width: 390px) {
  .brand-logo {
    width: 185px !important;
  }

  .home-hero {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  .home-hero h1 {
    font-size: 31px !important;
  }

  .home-hero .asset-hero {
    height: 225px !important;
    min-height: 225px !important;
  }

  .home-hero .hero-composite-img {
    width: 128% !important;
  }
}

/* === FINAL MOBILE STABILITY PATCH ===
   Fixes mobile image/icon overflow across Home, Catalog, Services, Brands, About and Contact.
*/
@media (max-width: 768px) {
  *, *::before, *::after {
    box-sizing: border-box !important;
  }

  html, body, .site {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  img, svg, video {
    max-width: 100% !important;
    height: auto !important;
  }

  .header {
    width: 100% !important;
    max-width: 100% !important;
    padding: 12px 16px !important;
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    align-items: center !important;
    gap: 10px !important;
  }

  .brand-logo {
    width: 188px !important;
    max-width: 64vw !important;
    height: auto !important;
  }

  .header > .cta {
    font-size: 9px !important;
    padding: 10px 10px !important;
    max-width: 150px !important;
    white-space: nowrap !important;
  }

  .nav {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    display: flex !important;
    gap: 13px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    white-space: nowrap !important;
    padding: 8px 0 2px !important;
    scrollbar-width: none !important;
  }

  .nav::-webkit-scrollbar { display: none !important; }

  .nav a, .nav button, #lang-toggle {
    flex: 0 0 auto !important;
    font-size: 10px !important;
    line-height: 1 !important;
  }

  .home-hero {
    padding: 36px 20px 0 !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    min-height: 0 !important;
    height: auto !important;
  }

  .home-hero h1 {
    font-size: clamp(29px, 8.6vw, 38px) !important;
    line-height: 1.1 !important;
    letter-spacing: .085em !important;
  }

  .home-hero p {
    font-size: 17px !important;
    line-height: 1.45 !important;
    max-width: 100% !important;
  }

  .feature-row {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 13px !important;
  }

  .feature, .info-item, .stat {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    min-width: 0 !important;
  }

  .feature-icon, .stat-icon, .contact-icon, .service-icon,
  .value-icon, .cat-icon, .card-icon-wrap img {
    width: 34px !important;
    height: 34px !important;
    max-width: 34px !important;
    max-height: 34px !important;
    object-fit: contain !important;
    flex: 0 0 34px !important;
  }

  .buttons {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  .buttons .cta, .buttons .outline-btn, .buttons .link-btn,
  .catalog-modal__cta, .catalog-modal__whatsapp {
    width: 100% !important;
    text-align: center !important;
  }

  .home-hero .asset-hero {
    height: 215px !important;
    min-height: 215px !important;
    width: 100% !important;
    overflow: hidden !important;
    margin-top: 6px !important;
  }

  .home-hero .hero-composite-img {
    position: absolute !important;
    width: 118% !important;
    max-width: none !important;
    left: 50% !important;
    right: auto !important;
    bottom: -1px !important;
    transform: translateX(-50%) !important;
    object-fit: contain !important;
  }

  .section, .stats, .servicios-section, .brands-intro,
  .contact-section, .about-grid, .catalog-layout, .footer {
    width: 100% !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  .split, .about-grid, .contact-section, .catalog-layout,
  .brands-intro, .footer-grid, .services-grid, .brand-grid,
  .products-grid, .cards-2x2, .stat-row {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }

  .divider-left, .split > div + div {
    border-left: 0 !important;
    padding-left: 0 !important;
  }

  .category-icons {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px 12px !important;
  }

  .cat {
    min-width: 0 !important;
    text-align: center !important;
  }

  .cat span {
    font-size: 12px !important;
    line-height: 1.25 !important;
    overflow-wrap: anywhere !important;
  }

  .globe-panel {
    overflow: hidden !important;
  }

  .globe-img-wrap {
    position: relative !important;
    width: 100% !important;
    height: 120px !important;
    overflow: hidden !important;
    opacity: .75 !important;
  }

  .globe-img {
    position: absolute !important;
    right: -20px !important;
    bottom: -30px !important;
    width: 86% !important;
    max-width: none !important;
    height: auto !important;
  }

  .page-hero, .catalog-hero {
    width: 100% !important;
    min-height: 230px !important;
    height: auto !important;
    padding: 48px 20px !important;
    overflow: hidden !important;
  }

  .page-hero h1, .catalog-hero h1 {
    font-size: clamp(34px, 10vw, 46px) !important;
    line-height: 1.08 !important;
    letter-spacing: .16em !important;
  }

  .hero.page-hero.almacen-bg {
    min-height: 235px !important;
    height: 235px !important;
    background-size: cover !important;
    background-position: center 32% !important;
  }

  .hero.globe-bg {
    min-height: 225px !important;
    height: 225px !important;
    background-size: cover !important;
    background-position: center center !important;
  }

  .catalog-hero {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    padding-bottom: 0 !important;
  }

  .catalog-products-real {
    height: 165px !important;
    min-height: 165px !important;
    width: 100% !important;
    overflow: hidden !important;
    display: flex !important;
    align-items: flex-end !important;
    justify-content: center !important;
  }

  .catalog-hero-products-img {
    width: 118% !important;
    max-width: none !important;
    height: auto !important;
    margin: 0 0 -2px !important;
  }

  .tools {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
  }

  .search {
    grid-column: 1 / -1 !important;
    width: 100% !important;
  }

  .product-card, .brand-card, .service-card, .service-large,
  .value, .card-big, .catalog-access-box, .catalog-modal__box {
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }

  .product-card .product-img,
  .product-img {
    width: 100% !important;
    max-height: 170px !important;
    object-fit: contain !important;
  }

  .brand-logo-box {
    height: 82px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
  }

  .brand-logo-box img,
  .brand-card img,
  .marquee-track img {
    max-width: 150px !important;
    max-height: 54px !important;
    object-fit: contain !important;
  }

  .service-card, .service-large, .value, .card-big {
    padding: 24px 20px !important;
  }

  .service-icon {
    margin-bottom: 10px !important;
  }

  .venezuela-map-box {
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-align: center !important;
  }

  .venezuela-map-box img,
  .gf-con-cov__map img,
  img[src*="cobertura"] {
    width: 100% !important;
    max-width: 330px !important;
    height: auto !important;
    object-fit: contain !important;
  }

  .info-list {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  .form input, .form textarea, .form select, .form-select {
    width: 100% !important;
    max-width: 100% !important;
    font-size: 16px !important;
  }

  .footer-logo {
    max-width: 210px !important;
    height: auto !important;
  }

  .marquee-wrapper {
    overflow: hidden !important;
  }
}

@media (max-width: 420px) {
  .brand-logo {
    width: 172px !important;
  }

  .header > .cta {
    font-size: 8.5px !important;
    padding: 9px 8px !important;
    max-width: 132px !important;
  }

  .home-hero {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  .home-hero h1 {
    font-size: 30px !important;
  }

  .home-hero .asset-hero {
    height: 200px !important;
    min-height: 200px !important;
  }

  .home-hero .hero-composite-img {
    width: 128% !important;
  }

  .catalog-products-real {
    height: 145px !important;
    min-height: 145px !important;
  }

  .category-icons {
    grid-template-columns: 1fr 1fr !important;
  }
}

/* === V16.8 iPhone normal + iPad hero image fix ===
   Fixes cropped protein/product hero images on iPhone 17 Pro normal size
   and the Home hero product image on iPad widths.
*/

/* iPhone normal and similar narrow phones */
@media (max-width: 430px) {
  .home-hero {
    padding-bottom: 0 !important;
    overflow: hidden !important;
  }

  .home-hero .asset-hero {
    height: 235px !important;
    min-height: 235px !important;
    width: 100% !important;
    overflow: visible !important;
    margin-top: 8px !important;
  }

  .home-hero .hero-composite-img {
    width: 104% !important;
    max-width: none !important;
    left: 50% !important;
    right: auto !important;
    bottom: 0 !important;
    transform: translateX(-50%) !important;
    object-fit: contain !important;
    object-position: center bottom !important;
  }

  .catalog-hero {
    min-height: 370px !important;
    padding-bottom: 0 !important;
    overflow: hidden !important;
  }

  .catalog-products-real {
    height: 170px !important;
    min-height: 170px !important;
    overflow: visible !important;
  }

  .catalog-hero-products-img {
    width: 104% !important;
    max-width: none !important;
    margin-bottom: 0 !important;
    object-fit: contain !important;
    object-position: center bottom !important;
  }
}

/* Very small phones */
@media (max-width: 375px) {
  .home-hero .asset-hero {
    height: 220px !important;
    min-height: 220px !important;
  }

  .home-hero .hero-composite-img,
  .catalog-hero-products-img {
    width: 106% !important;
  }
}

/* iPad / tablet portrait and small landscape: only Home hero */
@media (min-width: 769px) and (max-width: 1024px) {
  .home-hero {
    grid-template-columns: 47% 53% !important;
    min-height: 500px !important;
    height: 500px !important;
    padding: 56px 34px 0 !important;
    overflow: hidden !important;
  }

  .home-hero > .hero-content:first-child {
    max-width: 100% !important;
    z-index: 4 !important;
  }

  .home-hero h1 {
    font-size: 36px !important;
    line-height: 1.12 !important;
  }

  .home-hero p {
    font-size: 19px !important;
    line-height: 1.42 !important;
  }

  .home-hero .asset-hero {
    position: relative !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    overflow: visible !important;
  }

  .home-hero .hero-composite-img {
    position: absolute !important;
    width: min(54vw, 560px) !important;
    max-width: none !important;
    left: 50% !important;
    right: auto !important;
    bottom: 0 !important;
    transform: translateX(-46%) !important;
    object-fit: contain !important;
    object-position: center bottom !important;
  }
}

/* === V16.9 iPhone hero final fine tune ===
   Only mobile: gives the Home and Catalog hero more vertical room and
   lowers the protein/product images so they sit flush with the bottom edge.
*/
@media (max-width: 430px) {
  .home-hero {
    min-height: 690px !important;
    height: auto !important;
    padding-top: 64px !important;
    padding-bottom: 0 !important;
    overflow: hidden !important;
  }

  .home-hero .asset-hero {
    height: 270px !important;
    min-height: 270px !important;
    margin-top: 14px !important;
    margin-bottom: 0 !important;
    overflow: visible !important;
  }

  .home-hero .hero-composite-img {
    width: 101% !important;
    max-width: none !important;
    left: 50% !important;
    right: auto !important;
    bottom: -2px !important;
    transform: translateX(-50%) !important;
    object-fit: contain !important;
    object-position: center bottom !important;
  }

  .catalog-hero {
    min-height: 520px !important;
    height: auto !important;
    padding-top: 58px !important;
    padding-bottom: 0 !important;
    overflow: hidden !important;
  }

  .catalog-products-real {
    height: 245px !important;
    min-height: 245px !important;
    margin-top: 10px !important;
    margin-bottom: 0 !important;
    overflow: visible !important;
  }

  .catalog-hero-products-img {
    width: 98% !important;
    max-width: none !important;
    margin-bottom: 0 !important;
    transform: translateY(4px) !important;
    object-fit: contain !important;
    object-position: center bottom !important;
  }
}

@media (max-width: 375px) {
  .home-hero {
    min-height: 675px !important;
  }

  .home-hero .asset-hero {
    height: 250px !important;
    min-height: 250px !important;
  }

  .catalog-hero {
    min-height: 500px !important;
  }

  .catalog-products-real {
    height: 225px !important;
    min-height: 225px !important;
  }

  .home-hero .hero-composite-img,
  .catalog-hero-products-img {
    width: 100% !important;
  }
}

/* ============================================================
   FOOTER REBUILD (v5) — overrides all prior footer rules.
   Fixes mobile overflow/clipping and gives a clean B2B layout.
   Markup unchanged; works on all pages.
   ============================================================ */
.footer{
  background:#0B1840;
  color:#fff;
  padding:0 !important;
  border-top:3px solid #3B1F6B;
  overflow:hidden;
}
.footer-grid{
  max-width:1180px;
  margin:0 auto !important;
  padding:clamp(44px,6vw,64px) clamp(22px,5vw,64px) 34px !important;
  display:grid !important;
  grid-template-columns:1.7fr 1fr 1fr 1.2fr !important;
  gap:clamp(26px,4vw,56px) !important;
  align-items:start;
  height:auto !important;
}
.footer-grid > div{ min-width:0; }
.footer-logo{
  width:210px;
  max-width:72%;
  height:auto;
  margin:0 0 18px !important;
  filter:none;
}
.footer-grid > div:first-child p{
  font-size:15px !important;
  line-height:1.65 !important;
  color:#C9CDDC !important;
  margin:0 !important;
  max-width:330px;
  overflow-wrap:break-word;
}
.footer h4{
  font-size:13px !important;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-weight:800;
  color:#fff;
  margin:0 0 16px !important;
}
.footer a{
  display:block;
  color:#C9CDDC !important;
  text-decoration:none;
  font-size:14px !important;
  line-height:1.5;
  margin:0 0 11px !important;
  overflow-wrap:break-word;
  transition:color .15s ease;
}
.footer a:hover{ color:#fff !important; }
.socials{ display:flex; gap:12px; margin-top:18px !important; }
.socials span{
  width:40px; height:40px;
  border:1px solid rgba(255,255,255,.28);
  border-radius:8px;
  display:flex; align-items:center; justify-content:center;
  font-weight:800; font-size:14px; color:#fff; cursor:pointer;
  transition:border-color .15s ease, background .15s ease;
}
.socials span:hover{ border-color:#fff; background:rgba(255,255,255,.08); }
.copyright{
  max-width:1180px;
  margin:0 auto !important;
  padding:20px clamp(22px,5vw,64px) !important;
  border-top:1px solid rgba(255,255,255,.14);
  text-align:center;
  font-size:13px !important;
  color:#9aa1b8 !important;
}
@media (max-width:880px){
  .footer-grid{
    grid-template-columns:1fr 1fr !important;
    gap:32px 28px !important;
  }
  .footer-grid > div:first-child{ grid-column:1 / -1; }
  .footer-logo{ width:190px; }
}
@media (max-width:520px){
  .footer-grid{ grid-template-columns:1fr !important; }
}
