@charset "utf-8";

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,		
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
input, textarea, select, button,
header, section, article, footer, aside, figure, figcaption {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-weight: inherit;
	font-style: inherit;
	font-size: 100%;
	font-family: inherit;
	text-decoration:none;
	color:inherit;
	background-color:transparent;
	}
strong {
	font-weight: bold;
	}
:focus {
	outline:0;
	}
body{
	line-height: 1;
	}
ol, ul {
	list-style: none;
	}
table {
	border-collapse: separate;
	border-spacing: 0;
	}
caption, th, td {
	text-align: left;
	font-weight: normal;
	}
blockquote:before, blockquote:after, q:before, q:after {
	content: "";
	}
blockquote, q {
	quotes: "" "";
	}
del {
	text-decoration: none;
}
html {
	height: 100%;
	font-size: 100%;
	overflow-x:hidden;
	overflow-y:scroll;
}

:root {
	--col-texto: #181A1F;
	--col-rojo: #D02225;
	--col-gris: #EFEFEF;
	--col-gris-osc: #494C52;
	--page: 1448px;
	--gap: 3.125rem;
	--col-half: calc(calc(var(--page) - calc(var(--gap) * 4)) / 10);
	--overflow: calc(calc(calc(100vw - .875rem) - var(--page)) * -.5);
}
@media (max-width: 1480px) {
	:root {
		--page: calc(100vw - calc(var(--gap) * 3) - .875rem);
	}
	html {
		font-size: 87.5%;
	}
}
@media (max-width: 800px) {
	:root {
		--gap: 2rem;
		--page: calc(100vw - calc(var(--gap) * 2));
	}
	html {
		font-size: 75%;
	}
}
@media (max-width: 370px) {
	:root {
		--gap: 1.75rem;
		--page: calc(100vw - calc(var(--gap) * 1.75));
	}
	html {
		font-size: 62.5%;
	}
}

body {
	font-family: 'Inter', sans-serif;
	font-weight: 300;
	font-size:100%;
	line-height:1;
	color: var(--col-texto);
	background: #fff;
	min-height:100%;
}
@media (min-width: 960px) {
	::-webkit-scrollbar {
	  width: .875rem;
	}
}
.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  white-space: nowrap;
}

@media (max-width: 960px) {
	.mobWrapper {
		position: relative;
		overflow: hidden;
		width: 100%;
	}
}

.page {
	width: 100%;
	max-width: var(--page);
	margin: 0 auto;
	clear:both;
}
.row {
	display: grid;
  	grid-template-columns: repeat(5, 1fr);
	gap: var(--gap);
}
.row.alig-c {
	align-items: center;
}
.col1 { grid-column: span 1; }
.col2 { grid-column: span 2; }
.col3 { grid-column: span 3; }
.col4 { grid-column: span 4; }
.col5 { grid-column: span 5; }

@media (max-width: 800px) {
	.row {
		width: 100%;
		max-width: 100%;
	  grid-template-columns: repeat(2, 1fr);
	}
	.col1 { grid-column: span 1; }
	.col2 { grid-column: span 2; }
	.col3 { grid-column: span 2; }
	.col4 { grid-column: span 2; }
	.col5 { grid-column: span 2; }
}

strong {
	font-weight: 500;
}
picture {
	display: block;
}
picture img {
	width: 100%;
	height: 100%;
}
img {
	display: block;
	max-width: 100%;
	object-fit: cover;
}
h1, h2, h3, h4, h5 {
	
}
p.dest {
	
}
.header {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	z-index: 9999;
	color: #fff;
}
.header.fixed {
	position: fixed;
	box-shadow: 0 .25rem .625rem 0 #0000001A;
	color: inherit;
	background: #fff;
	z-index: 99;
	transition: all 600ms ease;
	transform: translateY(-110%);
}
.header.fixed.visible {
	transform: translateY(0);
}
.header .page {
	display: flex;
	padding: 4.5rem 0;
	align-items: center;
}
.header.fixed .page {
	padding: 1.5rem 0;
}
.header .branding {
	margin-right: auto;
	position: relative;
	z-index: 20;
}
.header .branding img {
	display: block;
	height: 2.875rem;
	transition: all 100ms ease;
}
.header .branding img + img {
	position: absolute;
	left: 0;
	top: 0;
	opacity: 0;
}
.header.fixed .branding img {
	opacity: 0;
}
.header.fixed .branding img + img {
	opacity: 1;
}
.nav {
	display: flex;
	gap: 1.25rem;
	font-size: 1.125rem;
}

.menu {
	position: fixed;
	left: 0;
	top: 0;
	right: 0;
	background: var(--col-texto);
	z-index: 9;
	padding-top: 4.5rem;
	height: 100dvh;
	box-sizing: border-box;
	opacity: 0;
	visibility: hidden;
	transition: all 250ms ease;
	transform: translateY(-1rem);
	z-index: 99999;
}
.header.fixed + .menu {
	padding-top: 1.5rem;
}
.menu img {
  display: block;
  height: 2.875rem;
  margin-bottom: 4rem;
}
.menu.visible {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}
.menu .page {
	position: relative;
}
.bt-menu-close {
	position: absolute;
	right: 0;
	top: .875rem;
	color: #fff;
	padding-left: 2rem;
	background-size: auto .75rem;
	background-repeat: no-repeat;
	background-position: left bottom;
	background-image: url("data:image/svg+xml,%3Csvg width='19' height='12' viewBox='0 0 19 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 11L18 1' stroke='white' stroke-linecap='round'/%3E%3Cpath d='M18 11L1 1' stroke='white' stroke-linecap='round'/%3E%3C/svg%3E%0A");
}
.menu ul {
	position: relative;
	display: inline-block;
}
.menu ul ul {
	position: absolute;
	left: 100%;
	top: 0;
	margin-left: 5rem;
	opacity: 0;
	visibility: hidden;
	transform: translateY(-1rem);
}
.menu ul ul.visible {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}
.menu ul li {
	margin-bottom: 1.875rem;
}
.menu ul li a {
	font-size: 1.875rem;
	line-height: 1.875rem;
	font-weight: 300;
	color: #ffffff4d;
	transition: all 250ms ease;
	white-space: nowrap;
}
.menu ul li ul a {
	font-size: 1.5rem;
	padding-left: 1.5rem;
	border-left: solid 1px transparent;
}
.menu ul li a.active,
.menu ul li a:hover {
	color: #fff ;
}
.menu ul li ul a.active,
.menu ul li ul a:hover {
	border-left-color: var(--col-rojo);
} 
.menu ul li.mob {
	display: none;
}

@media (max-width: 960px) {
	.menu {
		padding-top: 2rem;
	}
	.menu ul li.mob {
		display: block;
	}
	.menu ul li ul li {
		margin-left: -1.75rem;
	}
	.menu ul li ul li.mob a {
		color: #fff;
	}
	.menu ul ul {
		position: absolute;
		width: 100%;
		height: 100%;
		left: 0;
		margin-left: 0;
		z-index: 1;
		background: var(--col-texto);
	}
}

.featured {
	position: relative;
	z-index: 999;
	height: 100dvh;
	overflow: hidden;
	color: #fff;
}
.featured > img,
.featured video {
	position: absolute;
	inset: 0;
	height: 100%;
	width: 100%;
	z-index: 1;
	object-fit: cover;
}
.featured:before {
	content: '';
	position: absolute;
	inset: 0;
	z-index: 2;
	background: #181A1F4D;
}
.featured:after {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	right: 0;
	height: 5.375rem;
	background-image: url("data:image/svg+xml,%3Csvg width='1729' height='86' viewBox='0 0 1729 86' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg style='mix-blend-mode:multiply'%3E%3Cpath d='M1729 86H835L1729 27V86Z' fill='%23181A1F' fill-opacity='0.5'/%3E%3C/g%3E%3Cpath d='M1.25968e-05 86.0001L1302 86L0 0L1.25968e-05 86.0001Z' fill='%23D02225'/%3E%3C/svg%3E%0A");
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: contain;
	z-index: 3;
}
.featured-sustentabilidad:after {
	background-image: url("data:image/svg+xml,%3Csvg width='1729' height='86' viewBox='0 0 1729 86' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg style='mix-blend-mode:multiply'%3E%3Cpath d='M1729 86H835L1729 27V86Z' fill='%23181A1F' fill-opacity='0.5'/%3E%3C/g%3E%3Cpath d='M1.25968e-05 86.0001L1302 86L0 0L1.25968e-05 86.0001Z' fill='%2308A660'/%3E%3C/svg%3E%0A");	
}
@media (min-width: 1729px) {
	.featured:after {
		height: auto;
		aspect-ratio: 4.97 / 1;
	}
}
.featured .page {
	height: 100dvh;
	position: relative;
	z-index: 9;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	padding-bottom: 20vh;
	box-sizing: border-box;
}
.featured.featured-home .page {
	justify-content: center;
	padding-bottom: 0;
}
.featured h1 {
	margin: 5rem 0 1.625rem;
	font-size: 3.75rem;
	line-height: 1.2em;
	font-weight: 500;
	max-width: 13em;
	text-wrap: balance;
}
.featured h1 strong {
	font-weight: 700;
}
.featured p {
	font-size: 1.625rem;
	line-height: 1.4em;
	font-weight: 400;
	max-width: 25em;
	text-wrap: balance;
}
.featured p strong {
	font-weight: 600;
}
.featured .bt {
	align-self: flex-start;
}
.featured .bt span {
	color: var(--col-rojo);
}

@media (max-width: 800px) {
	.featured {
		height: 85dvh;
	}
	.featured .page {
		height: 85dvh;
		padding-bottom: 10vh;
	}
}

.section {
	padding: 7rem 0;
	min-height: 80.5vh;
	display: flex;
	flex-direction: column;
	justify-content: center;
	position: relative;
	box-sizing: border-box;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
}
.section + .section {
	margin-top: 5rem;
}
.section.bg-l {
	background-color: var(--col-gris);
}
.section.bg {
	background-color: var(--col-gris-osc);
	color: #fff;
}
.section.bg-i:after {
	content: '';
	position: absolute;
	inset: 0;
	z-index: 1;
	background: var(--col-gris-osc);
	opacity: .5;
}
.section.bg-i .page {
	position: relative;
  z-index: 9;
}
.section.section-sep {
	min-height: 0;
	padding: 4rem 0;
}

.bg-l-col3-r:before,
.bg-l-col3-l:before {
	content: '';
	position: absolute;
	width: calc(50% + var(--col-half));
	top: 0;
	bottom: 0;
	z-index: -1;
	background: var(--col-gris);
}
.bg-l-col3-r:before {
	right: 0;
}
.bg-l-col3-l:before {
	left: 0;
}
@media (max-width: 800px) {
	.bg-l-col3-r:before,
	.bg-l-col3-l:before {
		width: 100%;
	}

}

.section h2 {
	font-size: 2.5rem;
	line-height: 1.375em;
	text-wrap: balance;
	max-width: 13.5em;
	margin-bottom: 1.75rem;
}
.section .page > h2 {
	max-width: 100%;
	text-align: center;
}
.section h2.dest {
	font-size: 3rem;
	line-height: 1.2em;
	font-weight: 600;
}
.section h2.big {
	font-size: 3.75rem;
	line-height: 1.16em;
	font-weight: 300;
}
.section h2:last-child {
	margin-bottom: 0;
}
.section.section-sep h2 {
	font-size: 3.75rem;
	line-height: 1.16em;
	max-width: 15em;
	text-align: left;
}
.section h3 {
	font-size: 2.5rem;
	line-height: 1.375em;
	padding-bottom: 1.3125rem;
	margin-bottom: 1.3125rem;
	position: relative;
	text-wrap: balance;
}
.section h3:after {
	content: '';
	position: absolute;
	left: 0;
	bottom: -1px;
	width: 3.875rem;
	height: 2px;
	background: var(--col-rojo);
}
.section h3.big {
	font-size: 3.75rem;
	line-height: 1.16em;
	font-weight: 500;
}
.section h2 + h3,
.section ul.list + h3 {
	margin-top: 2.5rem;
}
.section p + h3 {
	margin-top: 2.0625rem;
}
.section h6 {
	font-weight: 300;
	font-size: 1.0625rem;
	text-transform: uppercase;
	letter-spacing: .18em;
	display: inline-block;
	padding-bottom: 1.375rem;
	border-bottom: solid 1px var(--col-rojo);
	margin-bottom: 1.875rem;
}
.section p {
	line-height: 1.5em;
	max-width: 35em;
}
.section .page > p {
	max-width: 100%;
	text-align: center;
} 
.section p + p,
.section p + ul,
.section ul.list + p {
	margin-top: 1em;
}
.section p.big { /* bajada */
	font-size: 1.625rem;
	line-height: 1.38em;
	font-weight: 400;
	text-wrap: balance;
}
.section p.dest {
	font-size: 1.25rem;
}
.section ul.list li {
	line-height: 1.5em;
	padding-left: 1.625rem;
	position: relative;
}
.section ul.list li:before {
	content: '';
	position: absolute;
	left: 0;
	top: .25rem;
	width: .9375rem;
	height: .9375rem;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	background-image: url("data:image/svg+xml,%3Csvg width='15' height='15' viewBox='0 0 15 15' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M15 7.5C15 3.36425 11.6358 1.80779e-07 7.5 0C3.36425 -1.8078e-07 1.80779e-07 3.36425 0 7.5C-1.8078e-07 11.6358 3.36483 15 7.5 15C11.6352 15 15 11.6358 15 7.5ZM1.16188 7.5C1.16189 4.00561 4.00503 1.16188 7.5 1.16188C10.995 1.16188 13.8381 4.00562 13.8381 7.5C13.8381 10.995 10.995 13.8381 7.5 13.8381C4.00503 13.8381 1.16188 10.9944 1.16188 7.5Z' fill='%23D02225'/%3E%3Cpath d='M6.70011 10.8153L9.60484 7.9106C9.83025 7.68402 9.83025 7.31804 9.60484 7.09146L6.70011 4.18673C6.48285 4.00026 6.16158 4.00026 5.94431 4.18673C5.70089 4.3953 5.67244 4.76245 5.881 5.00587L8.37323 7.49813L5.88097 9.99619C5.65556 10.2227 5.65556 10.5887 5.88097 10.8153C6.10755 11.0407 6.47356 11.0407 6.70011 10.8153Z' fill='%23D02225'/%3E%3C/svg%3E%0A");
}
.main-sustentabilidad .section ul.list li:before {
	background-image: url("data:image/svg+xml,%3Csvg width='15' height='15' viewBox='0 0 15 15' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M15 7.5C15 3.36425 11.6358 1.80779e-07 7.5 0C3.36425 -1.8078e-07 1.80779e-07 3.36425 0 7.5C-1.8078e-07 11.6358 3.36483 15 7.5 15C11.6352 15 15 11.6358 15 7.5ZM1.16188 7.5C1.16189 4.00561 4.00503 1.16188 7.5 1.16188C10.995 1.16188 13.8381 4.00562 13.8381 7.5C13.8381 10.995 10.995 13.8381 7.5 13.8381C4.00503 13.8381 1.16188 10.9944 1.16188 7.5Z' fill='%2308A660'/%3E%3Cpath d='M6.70011 10.8153L9.60484 7.9106C9.83025 7.68402 9.83025 7.31804 9.60484 7.09146L6.70011 4.18673C6.48285 4.00026 6.16158 4.00026 5.94431 4.18673C5.70089 4.3953 5.67244 4.76245 5.881 5.00587L8.37323 7.49813L5.88097 9.99619C5.65556 10.2227 5.65556 10.5887 5.88097 10.8153C6.10755 11.0407 6.47356 11.0407 6.70011 10.8153Z' fill='%2308A660'/%3E%3C/svg%3E%0A");
}
#sustentabilidad .bt {
	background-color: white;
	color: black;
}
#sustentabilidad .bt:hover {
	background-color: #08A660;
	color: white;
}
.col3 picture {
	height: 80vh;
}
@media (max-width: 800px) {
	.col3 picture {
		height: 60vh;
	}	
}
.to-edge-r {
	margin-right: var(--overflow);
}
.to-edge-r.half-col,
.half-col-l {
	margin-left: var(--col-half);
}
.to-edge-l {
	margin-left: var(--overflow);
}
.to-edge-l.half-col,
.half-col-r {
	margin-right: var(--col-half);
}
@media (max-width: 800px) {
	.to-edge-r,
	.to-edge-r.half-col {
		margin-left: var(--overflow);
	}
	.half-col-l {
		margin-left: 0;
	}
	.to-edge-l,
	.to-edge-l.half-col {
		margin-right: var(--overflow);
	}
	.half-col-r {
		margin-right: 0;
	} 
}

.card {
	padding: 2.75rem 2.5rem;
	background: var(--col-gris);
}
.card.bg {
	color: #fff;
	background: var(--col-texto);
}
.card.bg.to-edge-r {
	padding: 5rem;
}
.card.bg.to-edge-r > * {
	max-width: 35rem;
}
@media (max-width: 800px) {
	.card.bg.to-edge-r {
		padding: 3rem;
		margin-left: var(--overflow)!important;
	}
}
.main .card h3 {
	font-size: 1.625rem;
}
.main .card h5 {
	font-weight: 600;
	font-size: 1.25rem;
	line-height: 1.5em;
}
.main .card p + h5 {
	margin-top: 1em;
}
.card ul li {
	margin-top: .75rem;
}

.color {
	color: var(--col-rojo);
}

.bt {
	display: inline-block;
	padding: 1.3125rem 1.5rem;
	border: solid 1px transparent;
	border-radius: .375rem;
	transition: all 250ms ease;
	transition-property: all!important;
}
.bt span {
	transition: all 250ms ease;
}
.bt:hover {
	transition-duration: 250ms!important;
}
.bt.tr { /* transparente a rojo */
	border-color: var(--col-rojo);
}
.bt.tr:hover {
	background-color: var(--col-rojo);
	color: white;
}
.bt.tb { /* transparente a negro */
	border-color: var(--col-rojo);
}
.bt.tb:hover {
	background-color: black;
	color: white;
}
.bt.rw {
	background-color: var(--col-rojo);
	color: white;
}
.bt.rw span {
	color: white;
}
.bt.rw:hover {
	background-color: white;
	color: var(--col-rojo);
}
.bt.rw:hover span {
	color: var(--col-rojo);
}
.bt.wr {
	background-color: white;
	color: black;
}
.bt.wr span {
	color: var(--col-rojo);
}
.bt.wr:hover {
	background-color: red;
	color: white;
}
.bt.wr:hover span {
	color: white;
}
.bt.wb {
	background-color: white;
	color: black;
}
.bt.wb span {
	color: var(--col-rojo);
}
.bt.wb:hover {
	background-color: black;
	color: white;
}
.bt.wb:hover span {
	color: white;
}
.bt.rb {
	background-color: var(--col-rojo);
	color: white;
}
.bt.rb:hover {
	background-color: black;
	color: white;
}
* + .bt {
	margin-top: 2.625rem;
}

.accordion {
	padding: 1.625rem 0;
	border-top: solid 1px var(--col-gris-osc);
	border-bottom: solid 1px var(--col-gris-osc);
	margin-bottom: -1px;
}
.accordion a {
	display: block;
	position: relative;
}
.accordion a:after {
	content: '';
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: .9365rem;
	height: .9365rem;
	background-position: center center;
	background-size: contain;
	background-repeat: no-repeat;
	background-image: url("data:image/svg+xml,%3Csvg width='15' height='8' viewBox='0 0 15 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M14 0.5L7.5 7L1 0.5' stroke='white' stroke-linecap='round'/%3E%3C/svg%3E%0A");
}
.accordion a.active:after {
	background-image: url("data:image/svg+xml,%3Csvg width='14' height='15' viewBox='0 0 14 15' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.5 1L7 7.5L0.5 14' stroke='white' stroke-linecap='round'/%3E%3Cpath d='M13.5 14L7 7.5L13.5 1' stroke='white' stroke-linecap='round'/%3E%3C/svg%3E%0A");
}
.card .accordion a:after {
	background-image: url("data:image/svg+xml,%3Csvg width='15' height='8' viewBox='0 0 15 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M14 0.5L7.5 7L1 0.5' stroke='%23D02225' stroke-linecap='round'/%3E%3C/svg%3E%0A");
}
.card .accordion a.active:after {
	background-image: url("data:image/svg+xml,%3Csvg width='14' height='15' viewBox='0 0 14 15' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.5 1L7 7.5L0.5 14' stroke='%23D02225' stroke-linecap='round'/%3E%3Cpath d='M13.5 14L7 7.5L13.5 1' stroke='%23D02225' stroke-linecap='round'/%3E%3C/svg%3E%0A");
}
.accordion a h4 {
	font-size: 1.5rem;
	margin-right: 1.5rem;
}
.accordion a + div {
	padding-top: 0;
	max-height: 0;
	overflow: hidden;
	transition: all 0.3s ease-out;
}


/* ------------------------------------------------------------------------------ */

#numeros h2 {
	font-size: 2.125rem;
	line-height: 1.2em;
	font-weight: 600;
}
#numeros h2 span {
	font-weight: 500;
	color: var(--col-rojo);
}
#numeros p {
	font-size: 1.375rem;
	line-height: 1.27em;
	font-weight: 500;
	text-wrap: balance;
	max-width: 10em;
	height: 7.5rem;
}
#numeros p + p {
	margin-top: 3rem;
}
#numeros p span {
	display: block;
	font-size: 3.875rem;
	line-height: 1em;
	margin-bottom: 1rem;
	color: var(--col-rojo);
}

/* ------------------------------------------------------------------------------ */

#quienes-somos {
}
#quienes-somos:before {
	content: '';
	position: absolute;
	left: calc(50% - var(--col-half));
	top: 0;
	right: 0;
	bottom: 0;
	z-index: -1;
	background: var(--col-gris);
}
#quienes-somos picture {
	height: 85vh;
	margin-left: var(--overflow);
	margin-right: var(--col-half);
}
#quienes-somos picture + p.big {
	transform: translateY(3rem);
	height: 0;
}
#quienes-somos picture + p span {
	font-size: 3.125rem;
	vertical-align: middle;
	font-weight: 600;
	color: var(--col-rojo);
	margin-right: .25rem;
}
#quienes-somos picture + p strong {
	font-weight: 600;
}

/* ------------------------------------------------------------------------------ */

#que-hacemos {
	padding-bottom: 5rem;
}
#que-hacemos:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	right: 50%;
	bottom: 0;
	z-index: -1;
	background: var(--col-gris-osc);
}
#que-hacemos h6,
#que-hacemos h2,
#que-hacemos iframe + div p,
#que-hacemos .map + div p {
	color: #fff;
}
#que-hacemos .col2 p.dest {
	margin-top: 1rem;
}
#que-hacemos iframe,
#que-hacemos .map {
	margin: 3.5rem 0;
	border-radius: .25rem;
	width: 100%;
	aspect-ratio: 10 / 4.75;
	position: relative;
	z-index: 1;
}
#que-hacemos iframe + p,
#que-hacemos .map  + p {
	max-width: 30em;
	text-align: left;
}
@media (max-width: 800px) {
	#que-hacemos iframe,
	#que-hacemos .map {
		aspect-ratio: 1 / 1;
	}
}

/* ------------------------------------------------------------------------------ */

#servicios-carga:before {
	content: '';
	position: absolute;
	left: calc(50% + var(--col-half) + var(--gap));
	top: 0;
	right: 0;
	bottom: 0;
	z-index: -1;
	background: var(--col-gris);
}
#servicios-carga .card {
	margin-top: 2.75rem;
}
#servicios-carga picture {
	margin-left: var(--col-half);
	margin-right: var(--overflow);
	height: 72.5vh;
}
#servicios-carga picture + picture {
	margin-top: 4.75rem;
}
@media (max-width: 800px) {
	#servicios-carga picture {
		max-height: 50vh;
	}
}

/* ------------------------------------------------------------------------------ */

#operamos {
	min-height: 83.75vh;
}
#operamos iframe,
#operamos .map-wrapper {
	position: absolute;
	right: 0;
	top: 0;
	width: 50%;
	height: 100%;
	z-index: 1;
}
#operamos .map-wrapper .map {
	width: 100%;
	height: 100%;
}
#operamos .map-wrapper p {
	z-index: 999;
	font-size: .875rem;
	color: var(--col-texto);
	position: absolute;
	right: 0;
	bottom: 3rem;
	padding: 1rem;
	line-height: 1.5rem;
	padding-left: 3rem;
	background-image: url(../images/estacion-fepsa.png);
	background-position: 1rem 50%;
	background-size: auto 1.5rem;
	background-repeat: no-repeat;
	background-color: #fff;
	border-left: solid .25rem var(--col-rojo);
}
#operamos p {
	font-size: 2.5rem;
	text-wrap: balance;
}
#operamos .leaflet-popup-content p {
	font-size: 13px;
}

/* ------------------------------------------------------------------------------ */

#barcos {
	padding-bottom: 0;
	min-height: 0;
}
#barcos h2 strong {
	font-weight: 700;
	color: var(--col-rojo);
}
#anim-barcos {
	width: 100%;
	aspect-ratio: 1445 / 813;
}
@media (max-width: 800px) {
	#anim-barcos {
		margin-left: -2rem;
		width: calc(100% + 4rem);
	}
}

/* ------------------------------------------------------------------------------ */

#clientes {
	margin-top: 0;
	text-align: center;
	background: linear-gradient(to bottom,  #f5f5f5 0%,#ffffff 20%);
}
#clientes h2 {
	max-width: 100%;
	font-weight: 500;
	margin-bottom: 2rem;
}
#clientes p strong {
	font-weight: 600;
}
#clientes p span {
	color: var(--col-rojo);
}
.clientes-slider {
	white-space: nowrap;
	text-align: center;
	font-size: 0;
	margin: 5.25rem 0 3.875rem;
}
.swiper-slide img {
	height: 100%;
	width: auto;
	object-fit: contain;
}
.swiper-wrapper {
	margin-bottom: 5rem;
}
.swiper-pagination-bullet {
	display: inline-block;
	vertical-align: top;
	width: .625rem;
	aspect-ratio: 1 / 1;
	border-radius: 1rem;
	background: #D9D9D9;
	margin: 0 .25rem;
}
.swiper-pagination-bullet-active {
	background: var(--col-rojo);
}

/* ------------------------------------------------------------------------------ */

#cta {
	padding: 0;
	min-height: 0;
	margin-top: 0;
}
#cta .card {
	padding: 5.5% 13.25%;
	margin-top: 0;
	display: flex;
	gap: 1rem;
	align-items: center;
}
#cta .card p {
	font-weight: 600;
	margin-right: auto;
}
#cta .card a {
	margin: 0;
	white-space: nowrap;
	border: none;
	font-weight: 400;
}
#cta .card a span {
	margin-right: .5em;
}

/* ------------------------------------------------------------------------------ */

#rrhh {
}
#rrhh video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: 1;
}
#rrhh:after {
	content: '';
	position: absolute;
	inset: 0;
	z-index: 2;
	background: linear-gradient(to right,  rgba(24,26,31,1) 0%,rgba(24,26,31,0) 100%);
}
#rrhh .page {
	position: relative;
	z-index: 9;
}
#rrhh h2 {
	font-size: 3rem;
	line-height: 1.2em;
}
#rrhh p {
	font-weight: 300;
}

/* ------------------------------------------------------------------------------ */

#operacion-control {
	margin-top: 0;
	text-align: center;
	background: var(--col-texto);
}
#operacion-control p {
	font-weight: 300;
}
.cards-wrapper {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	width: 100%;
	margin: 7.125rem auto 0;
}
.cards-wrapper .card {
	flex: 1;
	min-width: 0;
	padding: 0 2rem 10rem;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-end;
	background-size: auto 100%;
	background-position: center bottom;
	aspect-ratio: 1 / 1.5;
	transition: all 250ms ease;
	position: relative;
}
.cards-wrapper .card:hover {
	background-size: auto 110%;
}
.cards-wrapper .card:after {
	content: '';
	position: absolute;
	inset: 0;
	z-index: 1;
	background: #00000033;
	transition: all 250ms ease;
}
.cards-wrapper .card:hover:after {
	background: #000000B3;
}
.cards-wrapper .card * {
	position: relative;
	z-index: 9;
}
.cards-wrapper .card h3 {
	font-size: 2.5rem;
	font-weight: 400;
	margin-bottom: 3rem;
	padding: 0;
	transition: all 250ms ease;
}
.cards-wrapper .card h3:after {
	display: none;
}
.cards-wrapper .card p {
	position: absolute;
	bottom: 12rem;
	max-width: 80%;
	max-height: 0;
	overflow: hidden;
	opacity: 0;
	transition: all 250ms ease;
}
.cards-wrapper .card:hover p {
	max-height: 12em;
	margin-bottom: 3.5rem;
	opacity: 1;
}
.cards-wrapper .card a {
	margin: 0;
	background: var(--col-rojo);
	color: #fff;
}
@media (max-width: 1000px) {
	.cards-wrapper .card {
		padding-bottom: 5rem;
		background-size: cover;
	}
	.cards-wrapper .card:after {
		background: #00000066;
	}
}

/* ------------------------------------------------------------------------------ */

#sustentabilidad {
	margin-top: 0;
	padding-top: 25rem;
	text-align: center;
	background-position: 50% 50%;
}
#sustentabilidad:after {
	content: '';
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(to bottom,  rgba(24,26,31,0) 0%,rgba(24,26,31,.6) 100%);
}
#sustentabilidad .page {
	position: relative;
	z-index: 9;
}

/* ------------------------------------------------------------------------------ */

#calidad-seguridad {
	margin-top: 0;
	text-align: center;
	background-color: #fff;
}
#calidad-seguridad:before,
#calidad-seguridad:after {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: calc(50% + var(--gap) + calc(var(--col-half) * 3));
	z-index: 1;
	background: var(--col-rojo);
}
#calidad-seguridad:before {
	z-index: 2;
	opacity: .2;
	background-image: url(../images/home-compromiso-fondo.jpg);
	background-size: cover;
	background-position: center center;
}
#calidad-seguridad .page {
	position: relative;
	z-index: 9;
}
#calidad-seguridad h6 {
	border-color: #fff;
}
#calidad-seguridad h2 {
	font-weight: 300;
}
#calidad-seguridad picture {
	height: 74.5vh;
	margin-right: var(--overflow);
}

/* ------------------------------------------------------------------------------ */
/* INSTITUCIONAL */
/* ------------------------------------------------------------------------------ */

#institucional-quienes-somos {}
#institucional-quienes-somos:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: calc(50% + calc(var(--col-half) * 3) + var(--gap));
	z-index: -1;
	background: var(--col-gris);
}
#institucional-quienes-somos picture {
	margin-left: var(--col-half);
	height: 80vh;
}
#institucional-identidad h3 {
	padding-bottom: 0;
}
#institucional-identidad h3:after {
	display: none;
}
@media (max-width: 800px) {
	#institucional-quienes-somos picture {
		margin-left: 0;
		height: 60vh;
	}
	#institucional-quienes-somos:before {
		width: 100%;
	}
}

/* ------------------------------------------------------------------------------ */

#institucional-identidad {}
#institucional-identidad:after {
	content: '';
	position: absolute;
	inset: 0;
	z-index: 1;
	background: var(--col-texto);
	opacity: .8;
}
#institucional-identidad .page {
	position: relative;
	z-index: 9;
}

/* ------------------------------------------------------------------------------ */

.section.section-fichas {
	background: var(--col-gris);
}
.section.section-fichas h2 {
	font-weight: 500;
	margin-bottom: 1rem;
}
.section.section-fichas p.big {
	display: flex;
	align-items: center;
	max-width: 100%;
}
.section.section-fichas p.big span {
	display: flex;
	align-items: center;
}
.section.section-fichas p.big span:after {
	width: .5rem;
	margin: 0 .5rem;
	content: '';
	border-bottom: solid 2px var(--col-rojo);
	flex: 1;
}
.section.section-fichas p.big:after {
	content: '';
	border-bottom: solid 2px var(--col-rojo);
	flex: 1;
	margin-left: .5rem;
}
.section.section-fichas .row {
	margin: 4.5rem 0;
}
.section.section-fichas .anim {
	width: calc(100% + 3rem);
	aspect-ratio: 948 / 458;
}
.section.section-fichas .card {
	padding: 4rem;
	margin-left: 3rem;
	margin-right: var(--overflow);
	background: #fff;
	border-radius: .375rem 0 0 .375rem;
}
@media (max-width: 800px) {
	.section.section-fichas .card {
		margin-left: var(--overflow);
	}
}
.section.section-fichas .card > * {
	max-width: 25rem;
}
.section.section-fichas .card h5 {
	margin-bottom: 1.5rem;
}
.section.section-fichas .card ul {
	max-height: 16.375rem;
	overflow-y: scroll;
	padding-right: 1rem;
}
.section.section-fichas .card ul::-webkit-scrollbar-thumb {
  background: var(--col-gris);
  border-radius: 1rem;
}
.section.section-fichas .card ul li {
	line-height: 1.3em;
}
.section.section-fichas .card ul li + li {
	margin-top: .75em;
}
.fichas-list {
	width: 100%;
	overflow: hidden;
	overflow-x: auto;
	cursor: grab;
	-webkit-overflow-scrolling: touch;
}
.fichas-list-content {
	position: relative;
	display: flex;
	flex-wrap: nowrap;
	gap: 1.25rem;
}
.fichas-list-content a {
	position: relative;
	z-index: 1;
	flex: 0 0 14.3125rem;
	text-align: center;
	padding: 2rem 0;
	border-radius: .25rem;
	background: #fff;
	line-height: 1.75rem;
	transition: all 0.5s ease;
	user-select: none;
	-webkit-user-drag: none;
}
.fichas-list-indicator {
	position: absolute;
	background: #D02225;
	z-index: 0;
	transition: transform .3s ease, width .3s ease, height .3s ease, opacity .2s ease;
}
.fichas-list-content a span,
.fichas-list-content a strong {
	font-weight: 600;
	display: block;
	font-size: 1.25rem;
}
.fichas-list-content a span {
	color: var(--col-rojo);
}
.fichas-list-content a.active {
	background: var(--col-rojo);
	color: #fff;
	cursor: grabbing;
}
.fichas-list-content a.transition {
	background: transparent;
	color: #fff;
}
.fichas-list-content a.active span,
.fichas-list-content a.transition span {
	color: inherit;
}
.fichas-list-content a.active span {
	color: inherit;
}

/* ------------------------------------------------------------------------------ */
/* CONTACTO */
/* ------------------------------------------------------------------------------ */

#contacto h5 {
	margin-top: 2rem;
	font-size: 1.5rem;
	font-weight: 600;
	margin-bottom: 1rem;
}
#contacto h5 i {
	color: var(--col-rojo);
}

.featured.featured-contacto > img {
	object-position: 70% 50%;
}

.form {
	margin-left: var(--col-half);
}
.field {
	display: flex;
	gap: 3.5rem;
}
.field + .field {
	margin-top: 2rem;
}
.field * {
	flex: 1;
	padding: 1rem;
	border-bottom: solid 1px var(--col-gris-osc);
}

/* ------------------------------------------------------------------------------ */
/* TRANSPORTE */
/* ------------------------------------------------------------------------------ */

.main-transporte picture {
	height: auto;
}
.hr {
	margin: 3rem 0;
	border-top: solid 1px #fff;
}
.main-transporte .card {
	padding: 7% 6%;
}
.main-transporte .card h2,
.main-transporte .accordion * {
	max-width: 100%;
}
.main-transporte .section.bg .card {
	background: #181A1FCC;
	padding: 9% 10%;
}

/* ------------------------------------------------------------------------------ */
/* TRANSPORTE */
/* ------------------------------------------------------------------------------ */

.main-sustentabilidad .card.bg {
	background: #08A660;
}
.main-sustentabilidad .card.bg img {
	display: block;
	max-width: 100%;
	margin: 3rem 0;
}
#sustentabilidad-video {
	text-align: center;
}
#sustentabilidad-video h2 {
	display: inline-block;
	font-size: 2.5rem;
	line-height: 2.75rem;
	padding-left: 4rem;
	background-repeat: no-repeat;
	background-position: center left;
	background-size: contain;
	background-image: url("data:image/svg+xml,%3Csvg width='44' height='44' viewBox='0 0 44 44' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M22 42C33.0457 42 42 33.0457 42 22C42 10.9543 33.0457 2 22 2C10.9543 2 2 10.9543 2 22C2 33.0457 10.9543 42 22 42Z' stroke='%23181A1F' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M18 14L30 22L18 30V14Z' stroke='%23181A1F' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
}
#sustentabilidad-video video {
	max-width: 76.8125rem;
	margin: 3rem auto 0;
	width: 100%;
}
#sustentabilidad-calc {
	padding: 0;
	min-height: 0;
}
#sustentabilidad-calc:before {
	top: 5rem;
	bottom: 5rem;
}

#sustentabilidad-calc p {
	font-size: 1.625rem;
	margin-bottom: 1.5rem;
}
#sustentabilidad-calc .form {
	margin-left: 0;
}
#sustentabilidad-calc .form > * {
	max-width: 45rem;
}
#sustentabilidad-calc .field {
	gap: 1.25rem;
}
#sustentabilidad-calc .field input {
	border: solid 1px #fff;
	border-radius: .5rem;
}
#sustentabilidad-calc .field input::placeholder {
	color: #fff;
}
#sustentabilidad-calc .field + p {
	margin-top: 2rem;
	padding-top: 2rem;
	border-top: solid 2px #fff;
	font-weight: bold;
}
#sustentabilidad-calc .calc-tren,
#sustentabilidad-calc .calc-camion {
	font-size: 1.4375rem;
	font-weight: 500;
	width: 14.5rem;
	display: inline-block;
	vertical-align: top;
	margin-bottom: 2rem;
	margin-top: 0;
	background-repeat: no-repeat;
	background-position: 0 .125rem;
	background-size: auto 1.875rem;
	padding-left: 2.5rem;
}
#sustentabilidad-calc .calc-tren span,
#sustentabilidad-calc .calc-camion span {
	margin-top: .5rem;
	margin-left: -2.5rem;
	display: block;
	font-size: 1.625rem;
	line-height: 1.2em;
	color: var(--col-texto);
	padding: .5rem 1rem;
	background: #fff;
	border-radius: .5rem;
}
#sustentabilidad-calc .calc-tren {
 	background-image: url("data:image/svg+xml,%3Csvg width='30' height='30' viewBox='0 0 30 30' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M22.2891 1.87562C17.9586 1.87904 12.041 1.87316 7.71094 1.87562C6.96526 1.87643 6.25036 2.17301 5.72309 2.70028C5.19582 3.22755 4.89925 3.94245 4.89844 4.68812V19.8392C4.89925 20.5848 5.19583 21.2997 5.7231 21.827C6.25037 22.3543 6.96527 22.6508 7.71094 22.6517H7.97487L5.90758 27.471C5.86065 27.5849 5.86041 27.7126 5.90691 27.8267C5.95341 27.9407 6.04292 28.0319 6.15609 28.0805C6.26926 28.129 6.397 28.1311 6.51171 28.0863C6.62642 28.0415 6.71888 27.9533 6.7691 27.8408L8.99505 22.6517H10.1324L8.49051 27.5058C8.45275 27.623 8.46264 27.7504 8.51803 27.8604C8.57343 27.9704 8.66989 28.0542 8.78656 28.0936C8.90323 28.1331 9.03074 28.125 9.14152 28.0712C9.2523 28.0174 9.33746 27.9221 9.37858 27.8061L9.73411 26.7551H20.3096L20.6361 27.72C20.6554 27.7789 20.6862 27.8333 20.7266 27.8802C20.7671 27.9271 20.8164 27.9655 20.8718 27.9932C20.9272 28.0209 20.9875 28.0374 21.0492 28.0417C21.111 28.0459 21.173 28.0379 21.2317 28.0181C21.2904 27.9982 21.3445 27.967 21.391 27.9261C21.4375 27.8852 21.4755 27.8355 21.5027 27.7799C21.5299 27.7242 21.5458 27.6638 21.5495 27.6019C21.5532 27.5401 21.5446 27.4782 21.5242 27.4197L19.9105 22.6517H21.0578L23.2504 27.7548C23.2997 27.8687 23.3921 27.9585 23.5074 28.0044C23.6228 28.0503 23.7516 28.0485 23.8657 27.9996C23.9797 27.9506 24.0697 27.8584 24.1159 27.7432C24.162 27.6279 24.1606 27.4991 24.1119 27.3849L22.0783 22.6517C22.4643 22.6777 22.8515 22.6243 23.2161 22.4949C23.5807 22.3655 23.915 22.1628 24.1982 21.8993C24.4815 21.6358 24.7078 21.3171 24.8632 20.9627C25.0185 20.6084 25.0997 20.226 25.1016 19.8392V4.68811C25.1008 3.94244 24.8042 3.22755 24.2769 2.70028C23.7497 2.17301 23.0348 1.87644 22.2891 1.87562ZM12.9874 2.81312H17.0084V3.67369H12.9874V2.81312ZM10.0513 25.8176L10.4283 24.7029H19.6152L19.9924 25.8176H10.0513ZM19.298 23.7654H10.7455L11.1222 22.6517H18.9211L19.298 23.7654ZM24.1641 19.8392C24.1636 20.3363 23.9659 20.8129 23.6144 21.1644C23.2628 21.516 22.7862 21.7137 22.2891 21.7142H7.71094C7.21382 21.7136 6.73722 21.5159 6.3857 21.1644C6.03419 20.8129 5.83647 20.3363 5.83594 19.8392V4.68812C5.83647 4.191 6.03419 3.7144 6.3857 3.36288C6.73722 3.01137 7.21382 2.81365 7.71094 2.81312H12.0499V4.14244C12.0498 4.20401 12.0619 4.26497 12.0855 4.32185C12.1091 4.37873 12.1436 4.43041 12.1871 4.47394C12.2306 4.51747 12.2823 4.55199 12.3392 4.57555C12.3961 4.5991 12.457 4.61121 12.5186 4.61119H17.4771C17.5387 4.61123 17.5996 4.59913 17.6565 4.57559C17.7134 4.55204 17.7651 4.51752 17.8086 4.47398C17.8522 4.43045 17.8867 4.37876 17.9102 4.32187C17.9338 4.26498 17.9459 4.20401 17.9459 4.14244V2.81312H22.2891C22.7862 2.81362 23.2629 3.01132 23.6144 3.36284C23.9659 3.71437 24.1636 4.19099 24.1641 4.68812V19.8392Z' fill='white'/%3E%3Cpath d='M7.74219 13.3144H22.1061C22.1677 13.3144 22.2287 13.3023 22.2855 13.2787C22.3424 13.2552 22.3941 13.2207 22.4377 13.1771C22.4812 13.1336 22.5157 13.0819 22.5393 13.025C22.5628 12.9681 22.5749 12.9072 22.5749 12.8456V6.39844C22.5749 6.33687 22.5628 6.2759 22.5393 6.21902C22.5157 6.16213 22.4812 6.11044 22.4377 6.0669C22.3941 6.02337 22.3424 5.98884 22.2855 5.9653C22.2287 5.94176 22.1677 5.92966 22.1061 5.92969H7.74219C7.68063 5.92967 7.61966 5.94179 7.56278 5.96534C7.50591 5.98889 7.45422 6.02342 7.41069 6.06695C7.36716 6.11048 7.33264 6.16216 7.30909 6.21904C7.28553 6.27592 7.27342 6.33688 7.27344 6.39844V12.8456C7.27342 12.9072 7.28553 12.9681 7.30909 13.025C7.33264 13.0819 7.36716 13.1336 7.41069 13.1771C7.45422 13.2206 7.50591 13.2552 7.56278 13.2787C7.61966 13.3023 7.68063 13.3144 7.74219 13.3144ZM8.21094 6.86719H21.6374V12.3769H8.21094V6.86719Z' fill='white'/%3E%3Cpath d='M9.42746 16.5469C8.87832 16.5517 8.35333 16.7733 7.96675 17.1633C7.58017 17.5534 7.36328 18.0803 7.36328 18.6295C7.36329 19.1786 7.58019 19.7056 7.96678 20.0956C8.35337 20.4856 8.87836 20.7072 9.4275 20.712C9.97663 20.7072 10.5016 20.4856 10.8882 20.0956C11.2748 19.7055 11.4917 19.1786 11.4917 18.6294C11.4917 18.0803 11.2748 17.5533 10.8882 17.1633C10.5016 16.7733 9.97659 16.5517 9.42746 16.5469ZM9.42746 19.7745C9.1258 19.7714 8.83756 19.6494 8.62536 19.435C8.41315 19.2206 8.29412 18.9311 8.29413 18.6294C8.29413 18.3278 8.41317 18.0383 8.62538 17.8239C8.83759 17.6095 9.12584 17.4875 9.42749 17.4844C9.72914 17.4875 10.0174 17.6095 10.2296 17.8239C10.4418 18.0383 10.5608 18.3278 10.5608 18.6295C10.5608 18.9311 10.4418 19.2206 10.2296 19.435C10.0173 19.6494 9.72911 19.7714 9.42746 19.7745Z' fill='white'/%3E%3Cpath d='M20.5901 16.543C20.0406 16.5472 19.5149 16.7685 19.1278 17.1586C18.7407 17.5487 18.5234 18.076 18.5234 18.6256C18.5234 19.1752 18.7407 19.7026 19.1278 20.0927C19.515 20.4828 20.0406 20.704 20.5902 20.7082C21.1398 20.704 21.6654 20.4827 22.0525 20.0926C22.4397 19.7025 22.6569 19.1752 22.6569 18.6256C22.6569 18.076 22.4396 17.5487 22.0525 17.1586C21.6654 16.7685 21.1397 16.5472 20.5901 16.543ZM20.5901 19.7707C20.2885 19.7676 20.0002 19.6456 19.788 19.4312C19.5758 19.2168 19.4568 18.9273 19.4568 18.6256C19.4568 18.3239 19.5759 18.0345 19.7881 17.82C20.0003 17.6056 20.2885 17.4836 20.5902 17.4805C20.8918 17.4836 21.1801 17.6057 21.3923 17.8201C21.6045 18.0345 21.7235 18.324 21.7235 18.6256C21.7235 18.9273 21.6045 19.2168 21.3922 19.4312C21.18 19.6456 20.8918 19.7676 20.5901 19.7707Z' fill='white'/%3E%3Cpath d='M17.1018 17.1523H12.8723C12.7492 17.154 12.6316 17.2042 12.5451 17.2919C12.4586 17.3796 12.4102 17.4979 12.4102 17.621C12.4102 17.7442 12.4586 17.8625 12.5451 17.9502C12.6316 18.0379 12.7492 18.088 12.8723 18.0898H17.1018C17.225 18.0881 17.3425 18.0379 17.429 17.9502C17.5155 17.8625 17.564 17.7442 17.564 17.621C17.564 17.4979 17.5155 17.3796 17.429 17.2919C17.3425 17.2042 17.225 17.154 17.1018 17.1523Z' fill='white'/%3E%3Cpath d='M17.1018 19.0859H12.8723C12.7492 19.0876 12.6316 19.1378 12.5451 19.2255C12.4586 19.3132 12.4102 19.4314 12.4102 19.5546C12.4102 19.6778 12.4586 19.796 12.5451 19.8837C12.6316 19.9715 12.7492 20.0216 12.8723 20.0234H17.1018C17.225 20.0216 17.3425 19.9715 17.429 19.8838C17.5155 19.796 17.564 19.6778 17.564 19.5546C17.564 19.4314 17.5155 19.3132 17.429 19.2255C17.3425 19.1378 17.225 19.0876 17.1018 19.0859Z' fill='white'/%3E%3C/svg%3E%0A");
 }
#sustentabilidad-calc .calc-camion {
	margin-left: 4.5rem;
	background-image: url("data:image/svg+xml,%3Csvg width='30' height='30' viewBox='0 0 30 30' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M28.44 11.08H26.2V2.12C26.199 1.50176 25.698 1.00055 25.08 1H4.92001C4.30201 1.00055 3.80099 1.50176 3.79999 2.12V11.08H1.56C1.251 11.08 1 11.3307 1 11.64V16.12C1 16.4293 1.251 16.68 1.56 16.68H3.79999V21.72C3.79999 21.8704 3.86099 22.0145 3.96899 22.1192C3.85899 22.3437 3.80099 22.5901 3.79999 22.84V23.96C3.80099 24.8875 4.55301 25.6389 5.48001 25.64V27.32C5.48101 28.2475 6.233 28.9989 7.16 29H9.39999C10.328 28.9989 11.079 28.2475 11.08 27.32V25.64H18.92V27.32C18.921 28.2475 19.673 28.9989 20.6 29H22.84C23.768 28.9989 24.519 28.2475 24.52 27.32V25.64C25.448 25.6389 26.199 24.8875 26.2 23.96V22.84C26.199 22.5901 26.141 22.3437 26.031 22.1192C26.139 22.0145 26.2 21.8704 26.2 21.72V16.68H28.44C28.749 16.68 29 16.4293 29 16.12V11.64C29 11.3307 28.749 11.08 28.44 11.08ZM24.52 21.16V17.5397L25.08 17.1664V21.16H24.52ZM8.84 21.16V19.48C8.84 19.3315 8.78099 19.1891 8.67599 19.0841L7.556 17.9641C7.451 17.8591 7.308 17.8 7.16 17.8H6.60001V8.28C6.60101 7.3525 7.353 6.60109 8.28 6.6H21.72C22.648 6.60109 23.399 7.3525 23.4 8.28V17.8H22.84C22.692 17.8 22.549 17.8591 22.444 17.9641L21.324 19.0841C21.219 19.1891 21.16 19.3315 21.16 19.48V21.16H8.84ZM4.92001 21.16V17.1664L5.48001 17.5397V21.16H4.92001ZM6.60001 18.92H6.92801L7.72 19.7119V21.16H6.60001V18.92ZM22.28 19.7119L23.072 18.92H23.4V21.16H22.28V19.7119ZM4.92001 2.12H25.08V15.8203L24.52 16.1936V8.28C24.518 6.73426 23.266 5.48191 21.72 5.48H8.28C6.734 5.48191 5.48201 6.73426 5.48001 8.28V16.1936L4.92001 15.8203V2.12ZM2.12 15.56V12.2H3.79999V15.56H2.12ZM9.95999 27.32C9.95999 27.629 9.70899 27.8797 9.39999 27.88H7.16C6.851 27.8797 6.60001 27.629 6.60001 27.32V25.64H9.95999V27.32ZM23.4 27.32C23.4 27.629 23.149 27.8797 22.84 27.88H20.6C20.291 27.8797 20.04 27.629 20.04 27.32V25.64H23.4V27.32ZM25.08 23.96C25.08 24.269 24.829 24.5197 24.52 24.52H5.48001C5.17101 24.5197 4.92001 24.269 4.92001 23.96V22.84C4.92001 22.531 5.17101 22.2803 5.48001 22.28H24.52C24.829 22.2803 25.08 22.531 25.08 22.84V23.96ZM27.88 15.56H26.2V12.2H27.88V15.56Z' fill='white'/%3E%3Cpath d='M10.3203 16.6787H19.6803C19.7563 16.6787 19.8323 16.6631 19.9023 16.6331L22.5023 15.5131C22.7073 15.4245 22.8403 15.2224 22.8403 14.9987V8.83875C22.8503 8.23144 22.3683 7.7305 21.7603 7.71875H8.2403C7.6333 7.7305 7.15031 8.23144 7.16031 8.83875V14.9987C7.16031 15.2224 7.2933 15.4245 7.4993 15.5131L10.0993 16.6331C10.1693 16.6631 10.2443 16.6787 10.3203 16.6787ZM8.2403 8.83875H21.7203V14.6301L19.5653 15.5587H17.8453L18.1653 14.9987H19.7603C20.0703 14.9987 20.3203 14.748 20.3203 14.4387C20.3203 14.1295 20.0703 13.8787 19.7603 13.8787H16.4003C16.0913 13.8787 15.8403 14.1295 15.8403 14.4387C15.8403 14.748 16.0913 14.9987 16.4003 14.9987H16.8753L16.5553 15.5587H12.2453L12.5653 14.9987H14.1603C14.4703 14.9987 14.7203 14.748 14.7203 14.4387C14.7203 14.1295 14.4703 13.8787 14.1603 13.8787H10.8003C10.4913 13.8787 10.2403 14.1295 10.2403 14.4387C10.2403 14.748 10.4913 14.9987 10.8003 14.9987H11.2753L10.9553 15.5587H10.4363L8.27832 14.629L8.2403 8.83875Z' fill='white'/%3E%3Cpath d='M13.3195 22.8398H11.0795C10.7695 22.8398 10.5195 23.0906 10.5195 23.3998C10.5195 23.7091 10.7695 23.9598 11.0795 23.9598H13.3195C13.6285 23.9598 13.8795 23.7091 13.8795 23.3998C13.8795 23.0906 13.6285 22.8398 13.3195 22.8398Z' fill='white'/%3E%3Cpath d='M18.9211 22.8398H16.6811C16.3721 22.8398 16.1211 23.0906 16.1211 23.3998C16.1211 23.7091 16.3721 23.9598 16.6811 23.9598H18.9211C19.2301 23.9598 19.4811 23.7091 19.4811 23.3998C19.4811 23.0906 19.2301 22.8398 18.9211 22.8398Z' fill='white'/%3E%3Cpath d='M19.4809 19.4805H10.5209C10.2119 19.4805 9.96094 19.7312 9.96094 20.0405C9.96094 20.3497 10.2119 20.6005 10.5209 20.6005H19.4809C19.7899 20.6005 20.0409 20.3497 20.0409 20.0405C20.0409 19.7312 19.7899 19.4805 19.4809 19.4805Z' fill='white'/%3E%3Cpath d='M19.4809 17.8008H10.5209C10.2119 17.8008 9.96094 18.0515 9.96094 18.3608C9.96094 18.6701 10.2119 18.9208 10.5209 18.9208H19.4809C19.7899 18.9208 20.0409 18.6701 20.0409 18.3608C20.0409 18.0515 19.7899 17.8008 19.4809 17.8008Z' fill='white'/%3E%3C/svg%3E%0A");
}
#sustentabilidad-calc .calc-tons {
	font-size: 2.5rem;
	font-weight: 500;
	padding: 2rem;
	text-align: center;
	background: #ffffff;
	border-radius: .5rem;
	color: var(--col-texto);
}
#sustentabilidad-calc .calc-tons span {
	font-size: 3.75rem;
	font-weight: 300;
}
#sustentabilidad-calc .calc-tons + p {
	font-size: 1rem;
	margin: .75rem 0 2rem;
}
#sustentabilidad-calc .calc-trees {
	font-size: 1.625rem;
	font-weight: 500;
	display: flex;
	gap: 2rem;
	text-wrap: balance;
	align-items: center;
}
#sustentabilidad-calc .calc-trees > span {
	white-space: nowrap;
	border: solid 1px #fff;
	border-radius: .5rem;
	padding: 1.5rem 2rem;
	font-size: 2.5rem;
}
#sustentabilidad-calc .calc-trees > span span {
	font-size: 3.75rem;
	line-height: 1em;
	padding-left: 1.125em;
	background-repeat: no-repeat;
	background-position: center left;
	background-size: auto 70%;
	background-image: url("data:image/svg+xml,%3Csvg width='55' height='51' viewBox='0 0 55 51' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M55 27.3262C55 24.3211 53.8079 21.4424 51.7063 19.3172C51.9742 18.4825 52.1097 17.6129 52.1097 16.723C52.1097 12.0381 48.2983 8.2266 43.6133 8.2266C42.5282 8.2266 41.4627 8.4329 40.4682 8.8292C39.2504 3.85267 34.7536 0.148438 29.4072 0.148438C26.0472 0.148438 23.023 1.61163 20.937 3.93377C19.0966 1.56791 16.2527 0.148438 13.1994 0.148438C7.79507 0.148438 3.3984 4.54511 3.3984 9.9494C3.3984 11.0147 3.56662 12.055 3.89931 13.0511C1.4126 15.522 0 18.8944 0 22.4162C0 24.2595 0.372969 26.0433 1.10827 27.718C1.28509 28.1208 1.679 28.3606 2.09236 28.3606C2.23663 28.3606 2.38326 28.3314 2.52377 28.2698C3.067 28.0312 3.31396 27.3975 3.07549 26.8543C2.46028 25.4535 2.14844 23.9603 2.14844 22.4162C2.14844 19.2586 3.50485 16.2445 5.86996 14.1467C6.21468 13.841 6.32597 13.3494 6.14668 12.925C5.74868 11.983 5.54684 10.9819 5.54684 9.9494C5.54684 5.72986 8.97972 2.29687 13.1994 2.29687C15.7921 2.29687 18.1916 3.60796 19.6003 5.75511C18.5973 7.45055 18.0204 9.4266 18.0204 11.5352V19.7857L14.2736 23.5326V14.4389C14.2736 13.8456 13.7925 13.3647 13.1994 13.3647C12.6062 13.3647 12.1251 13.8456 12.1251 14.4389V19.6514L10.0525 17.5789C9.63295 17.1594 8.95297 17.1594 8.53327 17.5789C8.11379 17.9984 8.11379 18.6786 8.53327 19.0981L12.1251 22.6898V33.4142C11.177 33.323 10.2494 33.1121 9.35677 32.7811C8.80054 32.5747 8.18222 32.8584 7.97597 33.4147C7.76961 33.971 8.05342 34.5892 8.60954 34.7954C9.7422 35.2154 10.9206 35.475 12.1251 35.5719V42.109C11.3433 41.7528 10.4873 41.5654 9.60169 41.5654C6.2425 41.5654 3.50958 44.2983 3.50958 47.6575C3.50958 48.5547 3.70154 49.4208 4.0801 50.2316C4.2567 50.6098 4.63622 50.8515 5.05355 50.8515H49.5711C50.1643 50.8515 50.6453 50.3705 50.6453 49.7772C50.6453 49.1839 50.1643 48.703 49.5711 48.703H44.6875V38.6616C50.4642 38.1186 55 33.2425 55 27.3262ZM43.6133 10.375C47.1135 10.375 49.9613 13.2226 49.9613 16.723C49.9613 17.5795 49.7939 18.4099 49.4638 19.1912C49.2845 19.6156 49.3958 20.1071 49.7405 20.4129C51.7176 22.1667 52.8516 24.6864 52.8516 27.3262C52.8516 32.0566 49.277 35.9658 44.6875 36.5V32.7021L48.4263 28.9633C48.8458 28.5438 48.8458 27.8636 48.4263 27.4441C48.0067 27.0246 47.3267 27.0246 46.9071 27.4441L44.6875 29.6637V22.3171C44.6875 21.7238 44.2065 21.2429 43.6133 21.2429C43.0201 21.2429 42.5391 21.7238 42.5391 22.3171V26.3627L40.7939 24.6175V11.5352C40.7939 11.3692 40.7895 11.2043 40.7825 11.0402C41.6572 10.6038 42.6242 10.375 43.6133 10.375ZM40.7216 27.5837L42.5391 29.4011V36.5006C40.6858 36.2825 38.935 35.5053 37.5291 34.2765C39.2657 32.5074 40.4305 30.176 40.7216 27.5837ZM29.4072 2.29687C34.5012 2.29687 38.6455 6.44121 38.6455 11.5352V26.3044C38.6455 31.0348 35.0709 34.944 30.4814 35.4782V31.6803L34.2203 27.9415C34.6398 27.522 34.6398 26.8418 34.2203 26.4223C33.8008 26.0028 33.1208 26.0028 32.701 26.4223L30.4814 28.642V21.2955C30.4814 20.7022 30.0004 20.2213 29.4072 20.2213C28.814 20.2213 28.3329 20.7022 28.3329 21.2955V25.3411L26.8444 23.8526C26.4248 23.4331 25.7448 23.4331 25.3251 23.8526C24.9057 24.2721 24.9057 24.9523 25.3251 25.3718L28.3329 28.3797V35.4784C23.7435 34.9442 20.1689 31.0351 20.1689 26.3046V11.5352C20.1689 6.44121 24.3131 2.29687 29.4072 2.29687ZM26.5641 41.5655C25.9176 41.5655 25.2751 41.669 24.6643 41.8691C23.4449 39.8186 21.2434 38.5428 18.7967 38.5428C17.0914 38.5428 15.4944 39.1907 14.2736 40.2692V35.5724C16.5201 35.3943 18.6445 34.6575 20.5137 33.4066C22.3916 35.7533 25.1769 37.3434 28.3329 37.6402V41.8281C27.7729 41.6579 27.1791 41.5655 26.5641 41.5655ZM18.0204 22.824V26.3044C18.0204 28.2191 18.4962 30.0244 19.3345 31.6097C17.8157 32.6291 16.0946 33.2414 14.2736 33.4145V26.571L18.0204 22.824ZM5.65802 47.6576C5.65802 45.483 7.42715 43.7139 9.60169 43.7139C10.664 43.7139 11.6604 44.1306 12.4075 44.8874C12.6841 45.1674 13.0915 45.2739 13.4698 45.1649C13.8481 45.0557 14.1363 44.7485 14.221 44.364C14.6903 42.2359 16.6146 40.6914 18.7968 40.6914C20.7306 40.6914 22.4411 41.8537 23.1544 43.6526C23.268 43.9391 23.4992 44.1629 23.7891 44.2673C24.0787 44.3718 24.3998 44.3466 24.67 44.1983C25.2468 43.8815 25.9019 43.714 26.5641 43.714C28.7387 43.714 30.5078 45.4832 30.5078 47.6577C30.5078 48.0152 30.4608 48.365 30.3675 48.7032H5.79831C5.70496 48.3648 5.65802 48.015 5.65802 47.6576ZM32.5658 48.7031C32.6252 48.3603 32.6562 48.0115 32.6562 47.6576C32.6562 45.7891 31.81 44.1151 30.4814 42.9968V37.6402C32.4697 37.4533 34.3105 36.753 35.8704 35.6736C37.7039 37.3722 40.0536 38.424 42.5391 38.6609V48.7031H32.5658Z' fill='white'/%3E%3Cpath d='M5.63838 31.9939C5.83808 31.7941 5.95312 31.517 5.95312 31.2345C5.95312 30.9519 5.83818 30.6748 5.63838 30.475C5.43857 30.2752 5.16143 30.1602 4.87891 30.1602C4.59521 30.1602 4.31924 30.2752 4.11943 30.475C3.91855 30.6748 3.80469 30.9519 3.80469 31.2345C3.80469 31.517 3.91855 31.7941 4.11943 31.9939C4.31924 32.1937 4.59531 32.3087 4.87891 32.3087C5.16143 32.3087 5.43857 32.1937 5.63838 31.9939Z' fill='white'/%3E%3C/svg%3E%0A");
}
#sustentabilidad-calc .calc-trees + p {
	font-size: 1rem;
	margin: .75rem 0 0;
}

#sustentabilidad-reporte {
	border-top: solid 15rem #08A660;
	padding-top: 0;
	text-align: center;
	min-height: 0;
}
#sustentabilidad-reporte img {
	height: 28rem;
	margin-top: -15rem;
	display: inline-block;
}
#sustentabilidad-reporte h2 {
	max-width: 20em;
	margin-left: auto;
	margin-right: auto;
}
#sustentabilidad-reporte .bt {
	background-color: #08A660;
	border-color: #08A660;
	color: white;
}
#sustentabilidad-reporte .bt:hover {
	background-color: black;
	border-color: black;
	color: white;
}

@media (max-width: 800px) {
	#sustentabilidad-calc .field input {
		width: 50%;
	}
	#sustentabilidad-calc .calc-tren,
	#sustentabilidad-calc .calc-camion {
		width: calc(50% - 1.5rem);
	}
	#sustentabilidad-calc .calc-camion {
		margin-left: 1rem;
	}
	#sustentabilidad-calc .calc-trees {
		flex-direction: column;
	}
	#sustentabilidad-calc .calc-trees > span {
    align-self: stretch;
  }
}

/* ------------------------------------------------------------------------------ */
/* SEGURIDAD */
/* ------------------------------------------------------------------------------ */

#seguridad-valores .card {
	background: #fff;
	margin-top: 3rem;
}
#seguridad-valores .card h3 {
	padding-bottom: 0;
}
#seguridad-valores .card h3:after {
	display: none;
}

#seguridad-consejos h2 {
	text-align: left;
	margin-bottom: 3rem;
}
#seguridad-consejos .row {
	grid-template-columns: repeat(2, 1fr);
}
#seguridad-consejos h4 {
	font-size: 1.625rem;
	font-weight: 500;
	text-transform: uppercase;
	margin-bottom: 1.5rem;
}
#seguridad-consejos ul li {
	margin-top: .75rem;
}
#seguridad-consejos img,
#anim-peaton,
#anim-auto {
	display: block;
	height: 12rem;
	width: auto;
	aspect-ratio: 1 / 1;
	margin-bottom: 1rem;
}
#seguridad-senales {
	padding-top: 0;
}
#seguridad-senales h2 {
	text-align: left;
	margin-bottom: 3rem;
}
#seguridad-senales .col2 .card {
	background: var(--col-rojo);
	color: #fff;
	padding: 5rem;
}
#seguridad-senales .card h5 {
	text-wrap: balance;
	margin-bottom: 1rem;
}

#seguridad-senales .row {
	grid-template-columns: repeat(4, 1fr);
}
#seguridad-senales .row + .row {
	margin-top: 5rem;
	grid-template-columns: repeat(4, 1fr);
	grid-template-rows: repeat(2, 1fr);
}
#seguridad-senales .col1 {
	display: flex;
}
#seguridad-senales .col1 .card {
	background: var(--col-gris);
	text-align: center;
	width: 100%;
	align-self: stretch;
}
#seguridad-senales .col1 .card img {
	display: inline-block;
	height: 6.25rem;
	margin-bottom: 1rem;
	mix-blend-mode: multiply;
}

#seguridad-escuelas {
	background: linear-gradient(to bottom,  #f5f5f5 0%,#ffffff 20%);
}
#seguridad-escuelas .row {
	grid-template-columns: repeat(2, 1fr);
}
#seguridad-escuelas .card {
	padding: 5rem 3rem 5rem 20rem;
	position: relative;
	margin-top: 10rem;
	max-width: 19rem;
}
#seguridad-escuelas .card img {
	position: absolute;
	left: 1rem;
	top: 50%;
	transform: translateY(-50%);
	width: 18rem;
}
#seguridad-escuelas .card p {
	font-size: 1.625rem;
	font-weight: 500;
	line-height: 1.2em;
}
#seguridad-escuelas .card .bt.bt-s {
	margin-top: 2rem;
}
@media (max-width: 800px) {
	#seguridad-escuelas .card {
		padding: 8rem 3rem 3rem;
		max-width: 100%;
		text-align: center;
	}
	#seguridad-escuelas .card img {
		left: 50%;
		top: 0;
		transform: translate(-50% , -50%);
		width: auto;
		height: 15rem;
	}
}

#seguridad-escuelas .slider-wrapper {
	position: relative;
	z-index: 1;
	margin: -3rem 0 0;
	padding: 12rem 0;
}
#seguridad-escuelas .slider-wrapper:after {
	content: '';
	position: absolute;
	left: 33.333%;
	top: 0;
	bottom: 0;
	width: 100vw;
	z-index: -1;
	background: var(--col-rojo);
}
#seguridad-escuelas .slider-wrapper > img {
	float: left;
	margin-left: 35%;
}
@media (max-width: 800px) {
	#seguridad-escuelas .slider-wrapper:after {
		left: -3rem;
		width: calc(100vw + 3rem);
	}
	#seguridad-escuelas .slider-wrapper > img {
    margin-left: 50%;
    transform: translateX(-50%);
  }
  #seguridad-certificaciones:before {
  	width: 100%;
  }
}

#seguridad-certificaciones {
	margin-top: 0;
}
#seguridad-certificaciones:before {
	width: 33.333%;
}
#seguridad-certificaciones .row {
	grid-template-columns: repeat(2, 1fr);
}
#seguridad-certificaciones p.big {
	font-weight: 300;
}
#seguridad-certificaciones .card.bg {
	background: var(--col-rojo);
	padding: 7rem;
}
#seguridad-certificaciones .card.bg img {
	display: block;
	height: 6.75rem;
	margin-bottom: 2rem;
}
#seguridad-certificaciones .card.bg * {
	max-width: 25rem;
}

@media (max-width: 800px) {
	#seguridad-consejos .row,
	#seguridad-senales .row,
	#seguridad-senales .row + .row,
	#seguridad-escuelas .row,
	#seguridad-certificaciones .row {
		grid-template-columns: repeat(1, 1fr);
	}	
}

/* ------------------------------------------------------------------------------ */
/* TRABAJA */
/* ------------------------------------------------------------------------------ */

#nosotros-gente {
	padding-top: 70vh;
}
#nosotros-gente:after {
	content: '';
	position: absolute;
	inset: 0;
	z-index: 1;
	background: var(--col-texto);
	opacity: .2;
}
#nosotros-gente .page {
	position: relative;
	z-index: 10;
}
#nosotros-gente .row {
	grid-template-columns: repeat(2, 1fr);
}
@media (max-width: 800px) {
	#nosotros-gente .row {
		grid-template-columns: repeat(1, 1fr);
	}	
	#nosotros-gente {
		padding-top: 60vh;
		background-size: 270% auto;
	  background-position: 56% 0%;
	  background-color: var(--col-rojo);
	  padding-bottom: 0;
	}
}
#nosotros-gente .big {
	font-size: 2.5rem;
	text-wrap: balance;
	font-weight: 300;
}
#nosotros-gente .card {
	padding: 5rem;
	background: var(--col-rojo);
}

#nosotros-carrera .card,
#nosotros-jovenes  .card {
	background: var(--col-rojo);
	padding: 5rem;
	margin-top: 5rem;
}
#nosotros-carrera .card .bt,
#nosotros-jovenes  .card .bt {
	vertical-align: middle;
}
#nosotros-carrera .card p,
#nosotros-jovenes  .card p {
	max-width: 20em;
	display: inline-block;
	vertical-align: middle;
}
@media (min-width: 960px) {
	#nosotros-carrera .card .bt,
	#nosotros-jovenes  .card .bt {
		margin: 0 0 0 15%;
	}
}
#nosotros-cultura,
#nosotros-presentes {
	padding-top: 40vh;
}
#nosotros-cultura:after,
#nosotros-presentes:after {
	content: '';
	position: absolute;
	inset: 0;
	z-index: 1;
	background: var(--col-texto);
	opacity: .2;
}
#nosotros-cultura .page,
#nosotros-presentes .page {
	position: relative;
	z-index: 10;
}

#nosotros-comunidades .card {
	padding: 5rem;
	background: var(--col-rojo);
}
#nosotros-comunidades .card h3 {
	padding-bottom: 0;
}
#nosotros-comunidades .card:after {
	display: none;
}

#nosotros-testimonios .row {
	grid-template-columns: repeat(2, 1fr);
}
.card.card-testimonio {
	padding: 4rem;
	text-align: center;
	background: #ffffff;
	border-radius: .625rem;
	box-shadow: 0 0 1.25rem 0 rgba(0,0,0,.1);
}
.card.card-testimonio p {
	font-size: 1.625rem;
	margin-bottom: 3rem;
}
.card.card-testimonio p:before,
.card.card-testimonio p:after {
	content: '“”';
	font-size: 1.5em;
	color: var(--col-rojo);
	font-weight: bold;
}
.card.card-testimonio p:before {
	content: '“';
}
.card.card-testimonio p:after {
	content: '”';
}
.card.card-testimonio h4 {
	display: inline-block;
	padding-left: 10rem;
	position: relative;
	width: 15rem;
	text-align: left;
	line-height: 1.3em;
	margin: 3rem auto;
}
.card.card-testimonio h4 strong {
	display: block;
	font-size: 1.625rem;
	font-weight: 500;
	margin-bottom: .5rem;
}
.card.card-testimonio h4 img {
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 8rem;
	aspect-ratio: 1 / 1;
	border-radius: 100rem;
	box-shadow: 0 0 0 .625rem #fff, 0 0 0 .6875rem var(--col-gris-osc);
}
#nosotros-social {
	margin-top: 0;
}
#nosotros-social:before {
	background: var(--col-gris-osc);
	height: 65%;
}
#nosotros-social h2 {
	font-size: 2.25rem;
	max-width: 100%;
	color: #fff;
}
#nosotros-social .row {
	grid-template-columns: repeat(2, 1fr);
}
#nosotros-social .card.card-testimonio {
	margin-top: -5rem;
}
#nosotros-social .card.card-testimonio h4 {
	width: 25rem;
}
@media (max-width: 800px) {
	#nosotros-social .row {
		grid-template-columns: repeat(1, 1fr);
	}	
	#nosotros-jovenes picture {
		height: auto;
	}
	#nosotros-cultura {
	    padding-top: 45vh;
	    background-position: 70% 0;
	}

}

/* ------------------------------------------------------------------------------ */

.footer {
	padding: 8.625rem 0;
	background: var(--col-rojo);
	color: #fff;
}
.footer .logo {
	height: 3.25rem;
	display: inline-block;
}
.footer ul {
	float: right;
	display: flex;
	gap: 2rem;
	font-size: 1rem;
	margin-top: .875rem;
	line-height: 1.5rem;
}
.footer ul i {
	font-size: 1.5rem;
}
.footer p {
	margin-top: 6rem;
	border-top: solid 1px #ffffff80;
	padding-top: 1.5rem;
	font-size: .9375rem;
	font-weight: 200;
}
.footer p strong {
	font-weight: 400;
}
.footer p a {
	float: right;
}
.footer p a strong {
	text-decoration: underline;
}

@media (max-width: 800px) {
	.header .page {
		padding: 2rem 0;
	}
	.section {
		min-height: 0;
		padding: 5rem 0;
	}
	.section + .section {
		margin-top: 0;
	}
	.featured h1 {
		font-size: 3rem;
	}
	.section h2.big {
		font-size: 3rem;
	}

	#numeros .col1 {
		grid-column: span 2;
		display: flex;
	}
	#numeros p span {
		font-size: 3rem;
	}
	#numeros .col1 p {
		flex: 1;
		margin: 0;
		height: auto;
	}

	#quienes-somos:before {
		display: none;
	}
	#quienes-somos picture {
		margin-right: var(--overflow);
	}
	#quienes-somos picture + p.big {
		margin: 2rem 0;
		transform: none;
		font-size: 1rem;
	}

	#que-hacemos {
		color: #fff;
		background: var(--col-gris-osc);
	}
	#servicios-carga:before {
		display: none;
	}

	#servicios-carga picture {
		margin-left: var(--overflow);
	}
	#servicios-carga picture + picture {
		margin-top: .5rem;
	}

	#operamos {
		min-height: 0;
		padding-bottom: calc(50vw + 3rem);
	}
	#operamos iframe,
	#operamos .map-wrapper {
		top: auto;
		bottom: 0;
		width: 100%;
		height: 50vw;
	}

	#cta .card {
		flex-direction: column;
		text-align: center;
		margin: 0 0 5rem;
	}

	.cards-wrapper {
		grid-template-columns: repeat(1, 1fr);
	}
	#operacion-control h3 {
		transform: none!important;
	}
	#operacion-control p {
		max-height: 100%;
		margin: -1rem 0 3rem;
		position: static;
    opacity: 1;
	}

	.card.card-testimonio {
		max-width: 100%;
		box-sizing: border-box;
		padding: 2rem;
	}
	.card.card-testimonio p {
		font-size: 1.5rem;
	}
	.card.card-testimonio h4 {
		padding-left: 0;
		padding-top: 8rem;
		text-align: center;
	}
	.card.card-testimonio h4 img {
		left: 50%;
		top: 0;
		transform: translateX(-50%);
		width: 6rem;
	}
	#nosotros-social .card.card-testimonio h4 {
		width: auto;
	}
	#nosotros-social .card.card-testimonio {
		margin-top: 2rem;
	}
	#nosotros-testimonios .row {
		grid-template-columns: repeat(1, 1fr);
	}

	#calidad-seguridad:before, 
	#calidad-seguridad:after {
		width: 100%;
	}
	#calidad-seguridad picture {
		margin-left: var(--overflow);
	}
	.footer * {
		display: block;
		text-align: center;
		justify-content: center;
		float: none!important;
	}
	.footer ul,
	.footer p a {
		margin-top: 1.5rem;
	}
}

@media (min-width: 640px) and (max-width: 880px) {
    html {
        font-size: 75% !important;
    }
}