  :root{
    --cream:#FAF7F4;
    --text-dark:#333;
    --text-muted:#8C8C86;
    --border-soft:#E2DDD3;
    --blue:#6F93C9;
    --ph-light:#DAD6CE;
    --ph-dark:#5B5B56;
    --radius-lg:26px;
    --radius-md:16px;
    --transparent-white-soft:#ffffff40;
    --transparent-white-hard:#ffffff6e;
    --transparent-white-harder:#ffffffde;
  }
 
  /*Animations */
  .reveal {
      opacity: 0;
      transition:
          opacity 0.5s ease var(--delay, 0ms),
          transform 0.7s ease var(--delay, 0ms);
  }

  .reveal-up {
      transform: translateY(20px);
  }
  .reveal-up.reveal-long {
      transform: translateY(120px);
  }
  .reveal-down {
      transform: translateY(-20px);
  }
  .reveal-down.reveal-long {
      transform: translateY(-120px);
  }
  .reveal-left {
      transform: translateX(20px);
  }
  .reveal-left.reveal-long {
      transform: translateX(120px);
  }
  .reveal-right {
      transform: translateX(-20px);
  }
  .reveal-right.reveal-long {
      transform: translateX(-120px);
  }
  .reveal.visible {
      opacity: 1;
      transform: translate(0, 0);
  }

  *{ box-sizing:border-box; }
  
   html {

    overflow-y: scroll;
    overflow-x: hidden;
  } 

  body{
    font-family:'Poppins',sans-serif;
    background:var(--cream);
    color:var(--text-dark);
  }
 
  h1,h2,h3,h4,h5,h6{
    font-family:'Poppins',sans-serif;
    text-transform:uppercase;
    color:var(--text-dark);
    margin:0;
  }
 
  p{
     color:var(--text-muted);
     line-height:1.7; 
     font-weight:200; 
    }
 
  a{ text-decoration:none; }
  /* EMBLA SLIDER */
  .embla {
      width: 100%;
  }
  .embla__viewport {
      overflow: hidden;
  }

  .embla__container {
      display: flex;
      touch-action: pan-y pinch-zoom;
  }

  .embla__slide {
      flex: 0 0 400px;
      min-width: 0;
      margin-left: 1rem
  }
  .embla__dots {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      align-items: center;
      margin-top: 15px;
  }

  .embla__dot {
  -webkit-tap-highlight-color: rgba(var(--text-high-contrast-rgb-value), 0.5);
  -webkit-appearance: none;
  appearance: none;
  background-color: transparent;
  touch-action: manipulation;
  display: inline-flex;
  text-decoration: none;
  cursor: pointer;
  border: 0;
  padding: 0;
  margin: 0;
  width: 2.6rem;
  height: 2.6rem;

  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  position: relative;
  }

  .embla__dot:before,
  .embla__dot:after {
      width: 0.75rem;
      height: 0.75rem;

      border-radius: 50%;
      position: absolute;
      display: flex;
      align-items: center;
      content: '';
  }

  .embla__dot:before {
      border: 1px solid black;
      opacity: 0.5;
  }

  .embla__dot:after {
      border: 2px solid black;
      opacity: 0;
  }

  .embla__dot--selected:after {
  opacity: 1;
  }
    /*  --------------Menus---------------------*/
    
  /* Fixed */
  .fixedMenu {
    display: none;
  }
  .fixedMenu.active {
    position: fixed;
    z-index: 10;
    display: block;
    background-color: #333;
    right: 10px;
    border-radius: 10px;
    color: white;
    padding: 2px 20px;
    top: 10px;
    /* height: 60px; */
    cursor: pointer;
  }
  .fixedMenuHolder {
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 1200px;
    margin: 0 auto;
    height: 40px;
  }
  .fixedMenu span {
    text-transform: uppercase;
    font-size: 0.75rem;
  }
  .fixedMenuBtn {
    font-size: 1.5rem;
    cursor: pointer;
    color: white;
    padding-left: 20px;
  }
  /*Mobile*/
  .mobileMenu img {
    width: 80px;
    opacity: 0.6;
  }
  .mobileMenuBtn {
    font-size: 2rem;
    padding: 20px;
    cursor: pointer;
  }
  .mobileMenu {
    position: absolute;
    z-index: 1;
    color: white;
    flex-direction: row;
    width: 90%;
    display: none;
    align-items: center;
    justify-content: space-between;
    left: 5%;
  }
  .mobileMenuRender{
    display: none;
  }
  .mobileMenuRender.active {
    background: white;
    position: fixed;
    height: 100vh;
    width: 509px;
    display: block;
    z-index: 100;
    right: 0px;
    box-shadow: -10px 0px 10px #00000054;
  }
.gslide-media, .gslide-image img {
	border-radius: 20px;
  opacity: 0.9;
}
.goverlay {
	background: #ffffffea !important;
}
.mobileBackground {
	width: 0vw;
	height: 0vh;
	position: fixed;
}
.mobileBackground.active {
	width: 100vw;
	height: 100vh;
	position: fixed;
	z-index: 10;
}
.mobileMenuRender .linkHolder {
	display: flex;
	flex-direction: column;
	justify-content: center;
	height: 88vh;
}
  .mobileMenuRender .linkHolder a {
    height: 10vh;
    font-size: 2.5rem;
    color: #333;
    padding-left: 3vw;
    /* border-bottom: 1px solid black; */
    line-height: 12vh;
    width: 92vw;
  }
.lang-toggle-holder {
	height: 14vh;
	display: flex;
	justify-content: center;
	align-items: flex-end;
}
.mobileMenuRender .lang-toggle {
	display: flex;
	align-items: center;
	border: 2px solid #333;
	border-radius: 6px;
	overflow: hidden;
	width: 80%;
	margin: 0 auto;
	justify-content: center;
	height: 7vh;
}
  .mobileMenuRender .lang-toggle a {
    padding: 0px;
    font-size: 1.8rem;
    font-weight: 700;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .mobileMenuRender .lang-toggle a.active{ 
    color: #fff;
    background-color: #333;
  }

.mobileMenuRender h2 {
	height: 12vh;
	font-size: 4.5rem;
	color: #333;
	padding-left: 3vw;
	line-height: 12vh;
	width: 92vw;
}
.mobileMenuRender .linkHolder .closeMenu {
	background-color: #333;
	color: white;
	margin-top: auto;
	width: 100%;
	margin-top: auto;
  cursor: pointer;
}
   /* ---------------- generic section spacing ---------------- */
  .small-separator{
    display: block;
    width: 100%;
    height: 60px;
  }
  .home section {
    min-height: 100vh;
  }
  section {
    /* scroll-snap-align: start; */
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    margin-top: 50px;
    min-height: 100vh;
  }
  .section-head{
    display:flex;
    justify-content:space-between;
    align-items:center; 
    gap:2rem; 
    margin-bottom:1.5rem; 

    
  }

  .section-title{ 
    font-size:4.5rem; 
    line-height:1.25; 
  }
  .section-title .thin{ 
    font-weight:400; 
  }
 
  /* image placeholders stand in for photography */
.ph {
	background: var(--ph-light);
	background-size: cover;
	display: flex;
	flex-direction: column;
	align-items: baseline;
	justify-content: space-evenly;
  background-size: cover;
  background-position: center;
  background-color: rgba(255, 255, 255, 0.1);
  background-blend-mode: lighten;
}
  .ph-dark{ 
    background:rgba(0, 0, 0, 0.5);
  }
 
  .btn-outline-dark-rectangle{
    display:inline-block;
    border:1.5px solid var(--text-dark);
    color:var(--text-dark);
    font-size:1.1rem;
    letter-spacing:1px;
    padding:.9rem 2.1rem;
    border-radius:5px;
    background:transparent;
    white-space:nowrap;
    transition:.2s ease;
    width: 100%;
    margin-bottom: 20px;
    display: flex;
    justify-content: space-between;
    text-transform: uppercase;
  }
  .btn-outline-dark-rectangle:hover{ 
    background:var(--text-dark); 
    color:#fff; 
  }
 

  .btn-outline-dark-pill{
    display:inline-block;
    border:1.5px solid var(--text-dark);
    color:var(--text-dark);
    font-weight:700;
    font-size:.82rem;
    letter-spacing:1px;
    padding:.9rem 2.1rem;
    border-radius:50px;
    background:transparent;
    white-space:nowrap;
    transition:.2s ease;
    height: 50px;
  }
  .btn-outline-dark-pill:hover{ 
    background:var(--text-dark); 
    color:#fff; 
  }
 
  .btn-blue-pill{
    display:inline-block;
    background:var(--blue);
    border:none;
    color:#fff;
    font-weight:600;
    font-size:.82rem;
    letter-spacing:1px;
    padding:.9rem 2.3rem;
    border-radius:50px;
    text-transform: uppercase;
  }
  .btn-blue-pill:hover{ 
    background:#5c7fb5; 
    color:#fff; 
  }
 
  .arrow-btn{
    width:46px; 
    height:46px; 
    border-radius:50%;
    display:inline-flex; 
    align-items:center; 
    justify-content:center;
    background:transparent; 
    border:none; 
    color:var(--text-dark); 
    font-size:1.2rem;
  }
 
  /* ---------------- HERO (nav overlaid on photo) ---------------- */
    .hero__video {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 95vh;
        object-fit: cover;
        z-index: -1;
        pointer-events: none;
    }
  .heroSection {
    justify-content: flex-start;
    padding: 0px;
    margin-top: 0px;
  }
  .hero-wrap{ 
    padding:0px;     
    /* scroll-snap-align: start; */
    width: 100%; 
  }
  .hero-panel {
    position: relative;
    /* max-width: 1720px; */
    margin: 0 auto;
    /* border-radius: var(--radius-lg); */
    overflow: hidden;
    height: 95vh;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }

 .navHolder {
	max-width: 1320px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	width: 100%;
}
.hero-nav {
	position: relative;
	z-index: 3;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0;
	width: 100%;
}
  .logo {
    width: 100px;
    opacity: 0.55;
  }
  .logo-chip span{
    font-style:italic;
    font-weight:600;
    font-size:1rem;
    color:var(--text-dark);
    text-transform:lowercase;
  }
  .hero-right-nav{
    display:flex; 
    align-items:center;
    gap:2.5rem;
  }
  .hero-links{ 
    display:flex; 
    gap:2rem; 
  }
  .hero-links a {
    color: var(--transparent-white-hard);
    font-weight: 300;
    font-size: 1.02rem;
  }
  .hero-links a:hover{ 
    color:var(--ph-light); 
  }
  .lang-toggle{
    display:flex;
    align-items:center; 
    border:2px solid var(--transparent-white-hard); 
    border-radius:6px; 
    overflow:hidden;
  }
  .lang-toggle a{
    padding:.3rem .8rem; 
    font-size:.8rem; 
    font-weight:700; 
    color:#fff;
  }
  .lang-toggle a.active{ 
    background-color: var(--transparent-white-hard);
  }
 
  .hero-text{
    position:relative; z-index:3;
    padding:2rem 2.5rem 3.5rem;
    margin-top: auto;
    margin-bottom: auto;
  }
.hero-text h1 {
	color: var(--transparent-white-soft);
	font-weight: 300;
	font-size: clamp(5rem,14vw,17rem);
	line-height: 1;
	margin-bottom: .3rem;
	text-align: center;
}
.hero-text h1 b{
	color: var(--transparent-white-hard);
}
.hero-text h2 {
	color: var(--transparent-white-hard);
	font-weight: 500;
	font-size: 3.2rem;
	line-height: 1.2;
	margin-bottom: 1rem;
	white-space: nowrap;
}
.HeroSubtitles {
	/* width: 70%; */
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 68%;
}
  .hero-text p{
    color:rgba(255, 255, 255, 0.61); 
    font-size:1.2rem; 
    margin:0;
  }
.HeroInfoHolder {
	display: flex;
	justify-content: space-around;
	margin-top: 38px;
	/* display: none; */
}
.HeroInfo {
	color: #ffffff8c;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	font-size: 0.9rem;
	font-weight: 300;
  width: 33.3%;
}
.hero-icon-circle {
	/* background: rgba(0,0,0,0.4); */
	width: 50px;
	height: 50px;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 100%;
	color: #ffffff5c;
	font-size: 1.7rem;
}
.HeroInfo span {
	display: block;
	margin-top: 10px;
  font-weight: 300;
}

  /* stats row under hero */


.stats-row {
	/* max-width: 1720px; */
	margin: 0px 0px 0px auto;
	display: flex;
	justify-content: space-between;
	/* gap: 5.2rem; */
	/* padding: 0.2rem 4.5rem 1rem; */
	flex-wrap: wrap;
	width: 508px;
	height: 115px;
	align-items: center;
	/* margin: 10px; */
	background-image: url(../images/HeaderNotch.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position-y: bottom;
	margin-bottom: -3px;
	padding: 0px 47px;
	flex-wrap: nowrap;
	/* display: none; */
	background-position-x: center;
  text-align: center;
}
.stats-row .stat h3 {
	font-size: 1.7rem;
	font-weight: 600;
	margin-bottom: .25rem;
	text-transform: none;
  font-variant-numeric: tabular-nums;
}
  .stats-row .stat p{ 
    font-size:.9rem; 
    margin:0; 
    line-height:1.3; 
    color:var(--text-dark); 
    font-weight:300; 
  }
.stats-row .stat {
	z-index: 1;
	padding: 0px;
	width: 33%;
}
 
  /* ---------------- servicios: 3 photo cards ---------------- */
  .promo-card{
    position:relative; border-radius:var(--radius-md); overflow:hidden;
    min-height:450px;
    background-size: cover;
  }
  /*
  .promo-card::after{
    content:""; position:absolute; inset:0;
    background:linear-gradient(180deg, rgba(0,0,0,0) 45%, rgba(10,15,10,.75) 100%);
  }
  */
  .promo-card .promo-text{
    position:absolute; 
    left:0; 
    right:0; 
    bottom:0; 
    z-index:2; 
    padding:1.3rem 1.5rem;
  }
  .promo-card .promo-text h5{ 
    color:#fff; 
    font-weight:300; 
    font-size:2rem; 
    margin-bottom:.35rem; 
    text-transform:none; 
  }
  .promo-card .promo-text p{ 
    color:rgba(255,255,255,.85); 
    font-size:1rem; 
    margin:0; 
  }
   /* ---------------- Instalaciones ---------------- */
  .instalaciones.ph {
	  border-radius: var(--radius-lg);
	  min-height: 500px;
  }



  /* ---------------- Materiales grid ---------------- */
  .material-card {
    border-radius: var(--radius-md);
    position: relative;
    overflow: hidden;
    align-items: flex-start;
    justify-content: end;
    min-height:300px; 
  }

  .material-card::after{
    content:""; 
    position:absolute; 
    inset:0;
    background:linear-gradient(180deg, rgba(0,0,0,0) 50%, rgba(10,15,10,.75) 100%);
  }
  .material-card span.label{
    z-index:2;
    text-transform:none; 
    padding: 2rem;
  }
  .material-card span.label h3{
    color:#fff; 
    font-weight:300; 
    font-size:2rem; 
  }
.subsection-section-split {
	display: flex;
	justify-content: space-between;
  align-items: center;
}



  /* ---------------- instalaciones carousel ---------------- */
  .carousel-track{
    display:flex;
    gap:16px;
    overflow-x:auto;
    padding-bottom:.5rem;
    scroll-behavior:smooth;
    scrollbar-width:none;
  }
  .carousel-track::-webkit-scrollbar{ 
    display:none; 
  }
  .maquinaria-card{ 

    background: white;
    border-radius:var(--radius-md);
    margin-top: 1%;
    display: block;
  }
  .maquinaria-card .ph{ 
    border-radius:var(--radius-md); 
    aspect-ratio: 1.5/1;
    overflow: hidden;
    opacity: 0.95;
    position: relative;
  }
.maquinaria-card .ph::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        rgba(20, 55, 83, 0.1),
        rgba(5, 52, 90, 0.466)
    );
    z-index: 0 !important;
}
.maquinaria-card * {

    z-index: 1;
}

  .maquinaria-card h3{ 
    font-weight:500; 
    font-size:1rem; 
    margin:1.1rem 0 .5rem; 
  }
  .maquinaria-card p{ 
    font-size:.85rem; 
    margin:0; 
  }
  
  .install-text{padding: 25px;}
 




  /* ---------------- equestre banner ---------------- */
  .banner-panel{
    position:relative; 
    border-radius:var(--radius-lg);
    overflow:hidden;
    min-height:620px;
    display:flex; 
    align-items:center;
    background-position: center;
    background-size: cover;
    background-color: rgba(255, 255, 255, 0.2);
    background-blend-mode: lighten;
  }
  .banner-panel::after{
    content:""; 
    position:absolute; 
    inset:0;
    background:linear-gradient(90deg, rgba(10,15,10,.6) 0%, rgba(10,15,10,.15) 55%, rgba(10,15,10,0) 100%);
  }
  .banner-panel .banner-text{
    position:relative; 
    z-index:2; 
    padding:2.8rem 2.5rem; 
    max-width:600px;
  }
  .banner-panel .banner-text h2 {
    color: #fff;
    font-weight: 400;
    margin-bottom: 1rem;
  }
  .banner-panel .banner-text p{ 
    color:rgba(255,255,255,.9); 
    font-size:.95rem; 
  }
 
  /* ---------------- maquinaria / obras split ---------------- */
  .webLink h2{
    color: white !important;
  }
  .webLink p{
    color: white !important;
  }
  .webLink span{
    color: white !important;
    border-color: white;
  }
  .webLink.ph {
    border-radius: var(--radius-lg);
    aspect-ratio: 1.2/1;
    width: 100%;
  }
  .webLink span:hover{
    background-color: rgba(255, 255, 255, 0.384) !important;
  }
  .webLink p{ margin-bottom:1.6rem; }
  .emblaMaquinariaControlls {
    display: flex;
    justify-content: flex-end;
  }
  /* ---------------- resenas ---------------- */
  .review-card{
    border:1.5px solid var(--border-soft);
    border-radius:var(--radius-md);
    padding:1.7rem;
    height:100%;
  }
  .review-card .name{ 
    font-weight:700; 
    color:#9a978f; 
    font-size:1.05rem; 
    text-transform:none; 
  }
  .review-card .stars{ 
    color:var(--text-dark); 
    letter-spacing:2px; 
    margin:.4rem 0 .9rem; }
  .review-card .quote{ 
    font-size:.9rem; 
    color:var(--text-dark); 
    margin:0; 
  }
 
  /* ---------------- contacto ---------------- */
  .contact-row{ 
    display:flex; 
    gap:1.1rem; 
    margin-bottom:1.9rem; 
    align-items: baseline;
    margin-bottom: 50px;
  }
  .contact-row .icon-circle{
    flex:0 0 52px; 
    height:52px; 
    width:52px; 
    border-radius:50%;
    background:var(--ph-light);
    display:flex; 
    align-items:center; 
    justify-content:center;
    color:var(--text-dark); 
    font-size:1.25rem;
  }
  .contact-row h6 {
    font-weight: 600;
    letter-spacing: 1px;
    font-size: 1.5rem;
    margin-bottom: .3rem;
  }
  .contact-row .value{ 
    color:var(--text-dark); 
    font-weight:400; 
    font-size:1.4rem; 
    text-transform:none; 
    line-height:1.5; 
  }
 
  /* ---------------- footer signature banner ---------------- */
  .footer-panel{
    position:relative; 
    border-radius:var(--radius-lg); 
    overflow:hidden; 
    min-height:340px;
    display:flex; 
    align-items:center; 
    justify-content:center;
    margin-bottom:2rem;
  }
  #contacte {
    background-size: 100%;
    background-color: rgba(255, 255, 255, 0.3);
    background-blend-mode: lighten;
    padding-bottom: 0px;
    background-repeat: no-repeat;
    background-position: bottom;
    min-height: 100vh;
  }
  .wordmark {
    font-size: clamp(5rem,14vw,18rem);
    position: relative;
    color: rgba(255,255,255,0.3);
    text-align: center;
  }
  .footer-copy {
    text-align: right;
    font-size: .85rem;
    color: #ffffffb2;
  }
  .footerLinks{
    color: #ffffff96; 
  }
  .footerLinks a {
    color: #ffffff96;
    font-size: 0.8rem;
  }
 



/* PAGES -------------------------------------------------------- */


.CollectionPage .subPageHeader {
	background: green;
	min-height: 400px;
	height: 40vh;
	justify-content: flex-start;
	background-position: center center;
	background-size: cover;
  margin-bottom: 50px;
  margin-top: 0px;
}

.CollectionPage .subPageHeader .container{
  justify-content: center;
}

.CollectionPage .subPageHeader h1,
.CollectionPage .subPageHeader h2,
.CollectionPage .subPageHeader p{
    color: rgba(255, 255, 255, 0.445);
}
.HeaderBreadCrumbs {
	display: flex;
    align-items: center;
}
.HeaderBreadCrumbs a{
	background-color: rgba(255, 255, 255, 0.432);
    color: white;
    padding: 10px;
    font-size: 1.5rem;
    border-radius: 10px;
}
.HeaderBreadCrumbs p{

    color: white;
    padding: 10px;
    font-size: 2.5rem;
    margin: 0px;
    font-weight: 600;
}

.CollectionPage .MaquinariaHolder {
	display: flex;
	gap: 1%;
	flex-wrap: wrap;
	justify-content: center;
}

.CollectionPage .LocationHolder ,
.CollectionPage .InstalacionesHolder,
.CollectionPage .MaquinariaHolder {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 1%;
}
.CollectionPage .subPageHeaderTitle{
	flex: 1;
	justify-content: center;
	display: flex;
	flex-direction: column;
}
.CollectionPage .location {
	width: 32%;
	/* gap: 1%; */
	height: 275px;
	background-size: cover;
  background-position: center center;
	margin-top: 1%;
	border-radius: 10px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 2%;
  position: relative;
  color: white;
}
.CollectionPage .location::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(255, 255, 255, 0.2);
}

.CollectionPage .location .center {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: white;
    text-align: center;
}

.CollectionPage .location .bottom {
    margin-top: auto;
    color: white;
}
#instalacion .embla__slide {
    flex: 0 0 calc(100% - 10px);
    min-width: 0;
}

.emblaMunicipiosControlls {
	justify-content: flex-end;
	align-items: flex-end;
	display: flex;
}
.Instalacion {
    width: 24%;
    height: 400px;
    margin-top: 1%;
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 2%;
    position: relative;
    color: white;
    background-size: cover;
    background-position: center center;
    overflow: hidden;
    opacity: 0.9;
}
.embla__slide .Instalacion {
    width: 100%;
    height: 400px;
    margin-top: 0%;
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 15px;
    position: relative;
    color: white;
    background-size: cover;
    background-position: center center;
    overflow: hidden;
    opacity: 0.9;
}

.Instalacion::before {
    content: "";
    position: absolute;
    inset: 0;
background: linear-gradient(
    rgba(20, 55, 83, 0.1),
    rgba(5, 52, 90, 0.6)
);
    z-index: 0;
}
.Instalacion > * {
    position: relative;
    z-index: 1;
}
.Instalacion h3{
    color: var(--transparent-white-harder);
    font-size: 1.3rem;
}

 .Instalacion p{
    color: var(--transparent-white-harder);
    font-weight: 300;
}
.Instalacion span{
    color: var(--transparent-white-harder);
    font-weight: 300;
    font-size: 0.8rem;
    margin-bottom: 10px;
    text-transform: uppercase;

}

.CollectionPage .InstalacionImgHolder,
.CollectionPage .MaquinariaImgHolder{
    display: flex;
    gap: 1%;
    flex-wrap: wrap;
    justify-content: center;
}
 .imgCounter {
	background-image: url('camera.png');
	background-repeat: no-repeat;
	width: 25px;
	height: 44px;
	background-size: 20px;
	background-color: #306797;
	padding: 5px;
	background-position: center 6px;
	text-align: center;
	box-sizing: content-box;
	display: flex;
	align-items: flex-end;
	justify-content: center;
	font-size: 0.8rem;
	position: absolute;
	top: 20px;
	right: 20px;
	border-radius: 5px;
	opacity: 0.7;
}
.CollectionPage .InstalacionImgHolder .InstalacionImg,
.CollectionPage .MaquinariaImgHolder .MaquinariaImg {
	width: 24%;
	height: 250px;
	background-color: aquamarine;
	border-radius: 10px;
	margin-top: 1%;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
  position: relative;
}
.InstalacionImg::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(255, 255, 255, 0.09);
}
.CollectionPage .SuministrosMainCategoryHolder{
    display: flex;
    gap: 1%;
    flex-wrap: wrap;
    justify-content: center;
}

.CollectionPage .SuministrosMainCategoryHolder .SuministrosMainCategory {
    width: 18vw;
    aspect-ratio: 1/1;
	background-color: aquamarine;
	border-radius: 10px;
	margin-top: 1%;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	background-position: center center;
	background-size: cover;
	flex-direction: column;
	padding: 10px;
	text-align: center;
}
.CollectionPage .SuministrosMainCategoryHolder .SuministrosMainCategory h3 {
	color: white;
	font-size: 1rem;
}
.SuministrosMainCategory.active {
	border: 4px solid black;
	/* box-shadow: 1px 1px 5px 4px #80808038; */
}
.SuministrosMainCategoryHolder.active .SuministrosMainCategory p {
	display: block;
}
.SuministrosMainCategory p {
	display: none;
}
.SuministrosMainCategory.active::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: -20px;
	transform: translateX(-50%);
	border-left: 10px solid transparent;
	border-right: 10px solid transparent;
	border-top: 10px solid #333;
}

.CollectionPage .SuministrosSubCategoryHolder{
    display: flex;
    gap: 1%;
    flex-wrap: wrap;
    justify-content: center;
}
.CollectionPage .SuministrosSubCategoryHolder.active .SuministrosSubCategory{
    border-radius: 10px;
}
.CollectionPage .subCatImg {
	width: 140px;
	background-size: cover;
	aspect-ratio: 1/1;
	margin-right: 20px;
	border-radius: 10px;
	/* box-shadow: 0px 0px 8px rgba(0,0,0,0.1); */
	border: 3px solid #efecec;
  position: relative;
  overflow: hidden;
  opacity: 0.9;
}
.CollectionPage .subCatImg::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient( rgba(20, 55, 83, 0.1), rgba(5, 52, 90, 0.2) );
	z-index: 0 !important;
}
.CollectionPage .SuministrosSubCategory.active .subCatImg {
	border: 3px solid #333;
}
.CollectionPage .SuministrosSubCategory .suministroTextIcon {
	font-size: 1.5rem;
	width: 10%;
	display: block;
	color: #333;
	/* background: #333; */
	text-align: center;
	border-radius: 10px;
	/* aspect-ratio: 1/1; */
	display: flex;
	justify-content: center;
	align-content: center;
}
.CollectionPage .SuministrosSubCategory .suministrosText {
	background: #fffcfc;
	width: 100%;
	height: 100%;
	padding: 15px;
	display: flex;
	/* flex-direction: column; */
	border-radius: 10px;
	/* box-shadow: 0px 0px 8px rgba(0,0,0,0.1); */
	justify-content: space-between;
	border: 3px solid #efecec;
	align-items: center;
}
.CollectionPage .SuministrosSubCategory.active .suministrosText {
	border: 3px solid #333;
}
.suministrosText p {
	max-height: 50px;
	display: block;
	overflow: hidden;
	font-size: 0.8rem;
	font-weight: lighter;
	line-height: 1.1rem;
	margin-top: 5px;
}
.CollectionPage .SuministrosSubCategoryHolder .SuministrosSubCategory {
	border-radius: 10px;
	margin-top: 2%;
	display: flex;
	justify-content: flex-start;
	align-items: center;
  position: relative;
	width: 100%;
}

.producto-ref{
  font-weight: 600;
}


.closeCatBtn {
	background: #333;
	color: white;
	width: 50px;
    height: 50px;
	display: block;
	text-align: center;
	border-radius: 7px;
	cursor: pointer;
	display: flex;
	justify-content: center;
	align-items: center;
    font-size: 1.8rem;
}
.CollectionPage .SuministrosSubCategoryHolder  .suministroTextContent {
	width: 95%;
}
.CollectionPage .SuministrosSubCategoryHolder .SuministrosSubCategory h3 {
	color: #252525cc;
	font-size: 0.9rem;
	font-weight: 600;
}
.CollectionPage .SuministrosSubCategoryHolder .bi.bi-box-arrow-right {
	line-height: 1;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 50px;
	height: 50px;
	/* background: #333; */
	color: #333;
	border-radius: 10px;
	border: 2px solid #333;
  animation: 1s;
}

.CollectionPage .SuministrosSubCategory.active .bi.bi-box-arrow-right {
	color: white;
	background: #333;
}
.CollectionPage .subcategory-section-title{
	font-size: 3rem;
	line-height: 1.25;
}
.autoHeight{
  min-height: auto;
}
.CollectionPage .subcategory-section-head{
    
}
.CollectionPage .product {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 20px 0px;
	font-weight: lighter;
	padding: 10px;
	background: #e9e8e863;
	border-radius: 10px;
	width: 100%;
}
.CollectionPage  .producto-desc h4 {
	font-size: 1rem;
}
.CollectionPage .CaballosCategoria {
	display: flex;
	flex-wrap: wrap;
	gap: 1%;
  justify-content: center;
}
.CollectionPage .CaballosCategoria .categoria {
  width: 24%;
  aspect-ratio: 1 / 1;
	background: rgb(133, 133, 133);
	margin-top: 1%;
	border-radius: 10px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 2%;
	position: relative;
	background-size: cover;
  background-position:center;
}
.CollectionPage .CaballosCategoria .categoria::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient( rgba(20, 55, 83, 0.1), rgba(5, 52, 90, 0.466) );
	z-index: 0 !important;
}
.CollectionPage .CaballosCategoria .categoria h3 {
	color: white;
	text-align: center;
	font-size: 1.3rem;
}

.SingleInstalaciones section,
.SingleMaquinaria section
{
  justify-content: flex-start;
}










  /* =========================================================
   RESPONSIVE OVERRIDES
   ========================================================= */





/* =========================================================
   <= 1400px — Big desktop / laptop
   ========================================================= */

@media (orientation: landscape) and (max-width: 1400px) {
  /* ---------- GENERAL ---------- */
  section {
	  padding: 1rem 0;
  }
  .row > * {
    margin-top: 15px;
  }
  .section-head {
    margin-bottom: 1.5rem;
  }
  .section-title {
    font-size: 3.9rem;
    line-height: 1.25;
  }



  /* ---------- SERVICES ---------- */


  .promo-card {
    min-height: 400px;
  }
  .promo-card .promo-text h5 {
	  font-size: 1.8rem;
  }

  /* ---------- INSTALLATIONS ---------- */

  .webLink.ph ,  .instalaciones.ph {
    border-radius: var(--radius-lg);
    aspect-ratio: 1/1;
  }
  .btn-outline-dark-rectangle {
	  font-size: 0.9rem;
	  padding: .8rem 2.1rem;
  }
  .install-card .ph {
    border-radius: var(--radius-md);
    height: 225px;
  }
  .install-text {
    padding: 5px 25px 30px;
  }
    /* ---------- MATERIALS ---------- */
  .material-card {
    min-height: 272px;
  }
  .row > * {
    padding-right: 8px;
    padding-left: 8px;
  }
  .material-card span.label {
    top: 57%;


  }
    /* ---------- CONTACT ---------- */


}
/* =========================================================
   <= 1280px — Small desktop / laptop
   ========================================================= */

@media (orientation: landscape) and (max-width: 1280px) {
.fixedMenu.active {
	padding: 2px 10px;
	/* height: 60px; */
}
  .fixedMenu span {
   display: none;
  }
.fixedMenuBtn {
	padding-left: 0px;
}
/*
.hero-panel {
	min-height: 780px;
}
.hero__video {
	min-height: 780px;
}
  */
  .section-title {
    font-size: 3rem;
    line-height: 1.25;
  }
  .hero-text h2 {
  	font-size: 2.7rem;
  }
  .banner-panel {
    min-height: 500px;
  }
  .stats-row {

	  width: 448px;
	  height: 98px;

  }
  .stats-row .stat h3 {
	font-size: 1.5rem;
  }
  .material-card span.label h3 {
	  font-size: 1.3rem;
  }
}

/* =========================================================
   <= 992px — Tablet landscape / small laptop
   ========================================================= */

@media (orientation: landscape) and (max-width: 992px) {


  /* ---------- GENERAL ---------- */
  .container {
    max-width: 90% ;
  }
  .hero-nav {
    display: none;
    position: absolute;
  }
  .mobileMenu {
    display: flex;
  }

  .mobileMenuRender .linkHolder a,.mobileMenuRender h2 {
    padding-left: 8vw;
  }

  /* ---------- HERO ---------- */
  .hero-text {
    padding: 0px;
  }


.hero-text h1 {

	font-size: clamp(5rem,17vw,17rem);

}

  

  
  /* ---------- SERVICES ---------- */
  .promo-card {
    min-height: 300px;
  }

  /* ---------- MATERIALS ---------- */
  .btn-outline-dark-rectangle {
    font-size: 0.8rem;
    padding: .8rem 2.1rem;
  }
  .material-card span.label{
    padding: 1rem; 
  }
  .material-card span.label h3{
    color:#fff; 
    font-weight:300; 
    font-size:1.3rem;
  }

  /* ---------- MAQUINARIA ---------- */
  .install-card {
	  flex: 0 0 350px;
	  background: white;
	  border-radius: var(--radius-md);
  }
  /* ---------- OTROS (COCINA) ---------- */
    .webLink h2 {
      color: white !important;
      font-size: 2rem;
      min-height: 5rem;
    }

    .wordmark {

      line-height: 12rem;
    }
}


/* =========================================================
   <= 768px — Tablet / large phones
   ========================================================= */

@media  (orientation: landscape) and (max-width: 768px) {

  .section-head {
    flex-direction: column;
  }

  /* ---------- HERO ---------- */
  .hero-panel {
    justify-content: space-around;
    min-height: 740px;
  }
  .hero__video {
    min-height: 740px;
  }

  .hero-text h1 {
    text-align: left;
  }
  .HeroSubtitles {
    width: auto;
  }
  .hero-text h2 {
    white-space: inherit;
    /* text-align: center; */
    font-size: 2rem;
  }

  .HeroInfoHolder {
    display: flex;
    justify-content: space-between;
    margin: 38px 0px;
    /* display: none; */
    padding: 0px;
    min-width: 100%;
  }
    /* ---------- SECTIONS ---------- */



    /* ---------- BOOTSTRAP COLUMNS ---------- */



    /* ---------- MATERIALS ---------- */




    /* ---------- INSTALLATIONS ---------- */



    /* ---------- CONTACT ---------- */



}
@media (orientation: portrait) {
    /* html {
        scroll-snap-type: none !important;
        overflow-y: auto !important;
    } */
    section {
      padding-top: 3rem;
    }
    .webLink.ph {
      margin-top: 20px;
    }
    .HeroSubtitles {
      width: 100%;
      align-items: inherit;
    }
    .hero-text h1 {
      text-align: left; 
    }
    .hero-panel {
	    justify-content: center;
    }
    .hero-panel .container{
      width: 90%;
      max-width: 100% !important;
    }
    .hero-text {
      padding: 0px;
    }
    .hero-text h2 {
      white-space: normal;
	    font-size: 2.7rem;
    }
    .stats-row {
      display: none;
      width: 448px;
      height: 98px;
    }
    .stats-row .stat h3 {
      font-size: 1.5rem;
    }
    .hero-nav {
      display: none;
      position: absolute;
    }
    .mobileMenu {
      display: flex;
    }
    .fixedMenu.active {
      padding: 2px 10px;
      /* height: 60px; */
    }
    .fixedMenu span {
    display: none;
    }
    .fixedMenuBtn {
      padding-left: 0px;
    }

  .section-title {
    font-size: 3rem;
    line-height: 1.25;
  }
  .hero-text h2 {
  	font-size: 2.7rem;
  }
  .banner-panel {
    min-height: 500px;
  }
  .stats-row {

	  width: 448px;
	  height: 98px;

  }
  .stats-row .stat h3 {
	font-size: 1.5rem;
  }
  .webLink .section-title {
    font-size: 2rem;
  }
  .material-card span.label {
	  padding: 1rem;
  }
  .material-card span.label h3 {
    font-size: 1.2rem;
  }
}

@media (orientation: portrait) and (max-width: 700px) {
    .section-head {
      flex-direction: column;
    }
    #contacte {
	    background-size: 269%;
    }
    .btn-outline-dark-rectangle {
      font-size: 0.9rem;
    }
}

/* =========================================================
   <= 576px — Phones
   ========================================================= */

@media (orientation: portrait) and (max-width: 576px) {

  .CollectionPage .CaballosCategoria .categoria {
	  width: 32% !important;
  }
    .section-title {
      font-size: 2.5rem;
      line-height: 1.25;

    }
    section {
      padding-top: 3rem;
    }

    /* ---------- HERO ---------- */

    .hero-text h1 {
      font-size: clamp(4rem,13vw,17rem);
    }
    .hero-text h2 {
	    font-size: 2rem;
    }
    .webLink.ph {

      margin-top: 20px;
    }
    .hero-text p {
      color: rgba(255, 255, 255, 0.61);
      font-size: 1rem;
      margin: 0;
    }
    .HeroInfo {
      font-size: 0.75rem;

    }
    .HeroInfoHolder {
      width: 100% !important;
      padding: 0px;
    }


}


@media (max-width: 750px) {
  .embla__slide {
    flex: 0 0 300px;
  }
  .emblaMaquinariaControlls{
    display: none;
  }
  .CollectionPage .SuministrosSubCategory .suministroTextIcon {
	  display: none;
  }
  .suministrosText p {
  	display: none;
  }
  .CollectionPage .subcategory-section-title {
    font-size: 1.5rem;
    line-height: 1.25;
  }
}

/* Disable scroll snap and fix the header if we don't have enough height to 
fit most sections in 1 screen*/

@media (orientation: landscape) and (max-height: 850px) {

    .hero-nav {
      padding: 0rem 2.5rem 0;
      width: 100%;
    }
    .hero-text h1 {
      font-size: clamp(5rem,10vw,17rem);
      text-align: center;
    }
    .HeroInfoHolder {
      margin-top: 20px;
    }
    .hero-text p {
      font-size: 1rem;
      margin: 0;
      display: none;
    }
    .hero-text h2 {
      font-size: 2.2rem;
      line-height: 1.2;
      margin-bottom: 1rem;
      text-align: center;
      width: 100%;
    }
    .HeroSubtitles {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      width: 100%; 
    }
    .hero-icon-circle {

      width: auto; 
      height: auto; 
      font-size: 1.5rem;
    }
    .HeroShopData {
      width: 100%;
    }
}

/* Disable scroll snap and fix the header for psychopaths who browse in landscape mode on a phone*/

@media (orientation: landscape) and (max-height: 600px) {
    /* html {
        scroll-snap-type: none !important;
        overflow-y: auto !important;
    } */
    section{
      padding-bottom: 20vh !important;
    }
    .hero-nav {
      padding: 0rem 2.5rem 0;
      width: 100%;
    }
    .hero-text h1 {
      font-size: clamp(5rem,7vw,17rem);
      text-align: left;
      text-align: center;
    }
    .HeroInfoHolder {
      margin-top: 20px;
    }
    .hero-text p {
      display: none;
    }
    .hero-text h2 {
      font-size: 1.2rem;
      text-align: center;
      width: 100%;
    }
    .stats-row{
        display: none;
    }
    .HeroShopData{
      width: 100%;
    }
    .HeroInfoHolder {
      width: 100%;
    }
    .mobileMenu img {
      width: 80px;
      opacity: 0.6;
    }
    .mobileMenuBtn {
      font-size: 2rem;
      padding: 20px;
      cursor: pointer;
    }
}
@media (max-width: 800px) {
  .mobileMenuRender.active{
    background: white;
    position: fixed;
    height: 100vh;
    width: 100vw;
    display: block;

  }
  .CollectionPage .subPageHeader p{
      display: none;
  }
  .linkHolder {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 88vh;
    padding-left: 15px;
  }
  .mobileMenuRender h2 {
	  padding-left: 25px;
  }
}



@media (max-width: 992px) {
    .CollectionPage .InstalacionImgHolder .InstalacionImg {
        width: 32%;
        height: 250px;
        margin-top: 2%;
    }
    .CollectionPage .InstalacionImgHolder{
        gap: 2%;
    }
    .CollectionPage .Instalacion {
	    width: 49%;
    }
}
@media (max-width: 768px) {
    .CollectionPage .InstalacionImgHolder .InstalacionImg {
        width: 48%;
        height: 250px;
        margin-top: 3%;
    }
    .CollectionPage .InstalacionImgHolder{
        gap: 3%;
    }
    .HeaderBreadCrumbs a {
	    font-size: 1.1rem;
    }
    .CollectionPage .Instalacion {
	    height: 350px;
    }
    .CollectionPage .location {
	    width: 49%;
    }
    .closeCatBtn {
      width: 35px;
      height: 35px;
      font-size: 0.8rem;
    }
    .product .producto-desc p {
      font-size: 0.8rem;
    }
    .product .producto-desc h4 {
      font-size: 0.8rem;
    }
}

@media (max-width: 500px) {
    .CollectionPage .InstalacionImgHolder .InstalacionImg {
        width: 100%;
        height: 250px;
        margin-top: 4%;
    }
    .CollectionPage .Instalacion {
	    height: 350px;
        width: 100%;
        padding: 5%;
    }
    .CollectionPage .location {
	    width: 100%;
        padding: 5%;
    }
}