@charset "UTF-8";
/* CSS Document */
/* ©pascale moise v1 juillet 2025 */
/*     pascalemoise.com       */

/* Montserrat normal (de 100 à 900) */
@font-face {
  font-family: 'Montserrat';
  src: url('/fonts/Montserrat-VariableFont_wght.ttf') format('truetype');
  font-weight: 100 900;
  font-style: normal;
}

/* Montserrat italic (de 100 à 900) */
@font-face {
  font-family: 'Montserrat';
  src: url('/fonts/Montserrat-Italic-VariableFont_wght.ttf') format('truetype');
  font-weight: 100 900;
  font-style: italic;
}

@font-face {
  font-family: 'Material Symbols Rounded';
  font-style: normal;
  font-weight: 100 700;
  src: url('../fonts/MaterialSymbolsRounded.woff2') format('woff2');
  font-display: swap;
}

@font-face {
  font-family: 'Material Icons';
  font-style: normal;
  font-weight: 400;
  src: url(../fonts/MaterialIcons-Regular.eot); /* For IE6-8 */
  src: local('Material Icons'),
       local('MaterialIcons-Regular'),
       url(../fonts/MaterialIcons-Regular.woff2) format('woff2'),
       url(../fonts/MaterialIcons-Regular.woff) format('woff'),
       url(../fonts/MaterialIcons-Regular.ttf) format('truetype');
}

.material-icons {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  font-size: 24px;  /* Preferred icon size */
  display: inline-block;
  line-height: 1;
  text-transform: none;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;

  /* Support for all WebKit browsers. */
  -webkit-font-smoothing: antialiased;
  /* Support for Safari and Chrome. */
  text-rendering: optimizeLegibility;

  /* Support for Firefox. */
  -moz-osx-font-smoothing: grayscale;

  /* Support for IE. */
  font-feature-settings: 'liga';
}

@font-face {
        font-family: 'VinylCuts';
             src: url('../fonts/VinylCuts.ttf') format('truetype');
        font-weight: normal;
        font-style: normal;
}



html, body {
	height: 100%;
}
body { 
	margin: 0;
	width: 100%;
	overflow-x: hidden;
}

:root {
	--jaune: #ffbc00;
	--gris: #e9e9e6;
	--marginside: 50px;
}


h4 {
	font-size: 1.5rem;
}

* {
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
	color: #000;
	box-sizing: border-box;        
	-moz-box-sizing: border-box;  
	-webkit-box-sizing: border-box;
	line-height: 1em;
}
div {
	position: relative;
}
main *, p {
	white-space:normal;
}
.material-symbols-outlined {
  font-variation-settings:
  'FILL' 1,
  'wght' 400,
  'GRAD' 0,
  'opsz' 24
}

.hidden {
	display: none;
}
img, video {
	max-width: 100%;
	height: auto;
}
span.scrollicon {
	display: inline-block;
	position: fixed;
	left: 50vw;
	bottom: 36px ;
	width: 36px;
	height: 36px;
	border: 1px solid #333;
	background: url(../img/scroll_h.svg)no-repeat left center;
	background-size: 400% auto;
	will-change: background-position;
	background-position: 0px 0;
	-webkit-animation-name: scrollicon;
          animation-name: scrollicon;
  -webkit-animation-timing-function: steps(3);
          animation-timing-function: steps(3);
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
}
@-webkit-keyframes scrollicon {
	0% {
		background-position: 0 0;
	}
	  100% {
	    background-position-x: -102px;
	  }
}
section.overlap {
	/* margin-top: -5vw; */
}
/*------------------------- COMMONS  ---------------------*/
.flex {
	display: flex;
	gap: 30px;
}
div.wrapper {
	max-width: 1240px;
	padding: 0 5vw;
	margin: auto;
}

div.col1-large {
	width: 100%;
	padding: 0 5vw;
}
.col-1x3 {
	width: calc(100% / 3);
}
.col-2x3 {
	width: calc(((100% / 3) * 2) + 2.5vw);
}
.col-1x2 {
	width: calc(100% / 2);
}
.col-1x4 {
	width: calc(100% / 4);
}

/* RESPONSIVE MOBILE */
@media (max-width: 768px) {
	.flex.cols {
		display: block;
	}
	.col-1x3, .col-2x3 , .col-1x2 , .col-1x4 {
		width: 100%;
	}
}


section {
	position: relative;
	overflow: hidden;
	padding: 10vh 0 15vh 0;
}

section h3 {
	font-size: 2rem;
	line-height: 3rem;
}
section p, section p *, section a, footer p, footer p *, footer a {
	font-size: .95rem;
	line-height: 1.25rem;
}
footer p, footer p *, footer a {
	font-size: .85rem;
}
section .category {
	text-transform: uppercase;
	margin: 0;
}
a.arrow { 
	text-decoration: none;
	display: inline-block;
	position: relative;
	padding-left: 25px;
}
a.arrow::hover {
	text-decoration: underline;
}
a.arrow::before { 
	content: ' ';
	position: absolute;
	left: 0;
	top: 2px;
	display: inline-block;
	width: 20px;
	height: 15px;
	background: url(../img/arrow.svg)no-repeat center center;
	background-size: contain;
}

button.sound {
	display: inline-block;
	position: absolute;
	right: 1vw;
	top: 1vw;
	width: 4vw;
	height: 4vw;
	border-radius: 50%;
	border: none;
	color: #fff;
	background: #000;
}
button.sound::before {
	display: inline-block;
	width: 4vw;
	text-align: center;
	overflow: hidden;
	position: absolute;
	top: 0;left: 0;
	font-family: 'Material Icons';
	display: inline-block;
	content: '\e04f';
	font-size: 2.5vw;
	line-height:4vw;
}
button.sound.active::before {
	content: '\e050';
}
button.cta, a.cta {
	display: inline-block;
	background: #000;
	color: #fff;
	border-radius: 25px;
	padding: 0 25px;
	line-height:50px;
	text-transform:uppercase;
	text-decoration: none;
	border: 0;
}

@media screen and (max-width:768px)  {
	button.sound {
		right: 1vh;
		top: 1vh;
		width: 3vh;
		height: 3vh;
	}
	button.sound::before {
		width: 3vh;
		font-size: 1.8vh;
		line-height:3vh;
	}
}
/*------------------------- HOMEPAGE ONLY  ---------------------*/
body.homepage.main, body.homepage footer {
	visibility: hidden;
}

body.block-scroll {
  overflow: hidden;
}
body.homepage.block-scroll main {
  visibility: hidden;
}

/*------------------------- HEADER  ---------------------*/
header {
	width: 100%;
	background: var(--jaune);
	height: calc(110px + 5vw);
}
body.homepage header {
	background: #fff;
	height: 25vh;
}

header div.title {
	display: flex;
	align-items: flex-end;
	flex-wrap: wrap;
	gap:0;
	padding-top: 30px;
}
header div.title div.container {
	display: inline-block;
	overflow: hidden;
}
body:not(.homepage) header div.title {
	width: 50%;
	padding-top: 10px;
}

header h1, header a.logo {
 	display: inline-block;
    font-family: 'VinylCuts', sans-serif;
	font-size: 80px;
	line-height: 1em;
	text-transform:lowercase;
	font-weight: normal;
	color: #000;
	margin: 0;
	margin-right: 20px;
	cursor: pointer;
	text-decoration: none;
}
body.homepage header h1 {
    font-size: clamp(4rem, 12vw, 12vh); /* Reduced from clamp(5rem, 12vw, 14vh) */
	line-height: 1em;
}

/*
body.homepage header h1 {
	visibility: hidden;
}

header h1 .char {
  display: inline-block;
  transform: translateY(100%);
  font-size: inherit;
  line-height: inherit;
  font-family: inherit;
  font-weight: inherit;
  color: inherit;
}
header h2 {
	display: inline-block;
	width: auto;
	font-weight: 300;
	margin: 0px 0 8px 0;
	font-size: 1em;
}
body.homepage header h2 {
	margin: 0px 0 1.2vw 0;
}
header h2 img{
	height: 1.25em;
	transform:translateY(.3em);
}
header h3 .word {
	display: inline-block;
	white-space: pre; 
	font-size: inherit;
	line-height: inherit;
	font-family: inherit;
}
*/
header h3 {
	margin: 1vh 0;
	display: inline-block;
	width: 100%;
	font-weight: 300;
	font-size: 1.7em;
}
body:not(.homepage) header h3 {
	visibility: hidden;
}

header nav {
	position: absolute;
	right: 0;
	padding: 0px 20px;
	display: flex;
	justify-content:flex-end;
	z-index: 9;
}

body:not(.homepage) header nav {
	width: 80%;
	position: absolute;
	right: 0;
}
header nav ul {
	list-style:none;
	margin: 0;
	padding: 0;
}
header nav ul li {
	display: inline-block;
	margin: 0 5px;
}
header nav li a {
	display: inline-block;
	border-radius: 17px;
	background:transparent;
	border: 2px solid transparent;
	padding: 10px;
	font-size: .75em;
	text-transform: uppercase;
	text-decoration: none;
}
body.homepage header nav li a.home {
	display: none;
}
header nav li.lang {
	margin: 10px 0;
}
header nav li.lang a {
	height: 34px;
	width: 34px;
	padding: 10px 0;
	text-align: center;
}
header nav li.lang a.fr {
	margin: 10px 0px 0 40px;
}
body header nav a.buy,body  header nav a.product {
	background: #000;
	color: #fff;
}
body.homepage header nav a.buy,body.homepage  header nav a.product {
	background: var(--jaune);
	color: #000;
}
header nav li a.home {
	/*text-indent:-999em;*/
	height: 34px;
	width: 34px;
}
header nav li a.home::before {
	display: inline-block;
	content: '\e88a';
	font-family: 'Material Icons';
	transform: translate(-15px, 8px);
	font-size: 26px;
}

header nav a.active {
	border: 1px solid #000;
}

		
header nav.active ul li.lang {
	float: left;
	margin-top: 10vh;
	width: 15%;
}
header nav.active ul li.lang.first {
	margin-left: 25%;
}

/*---- desktop & mobile----*/

	header nav.active  {
		position: fixed !important;
		top: 0 !important;
		left: 0 !important;
		right: auto !important;
		height: 100vh !important;
		width: 100vw !important;
		background: var(--jaune);
	}
	header nav.active ul {
		visibility: visible;
		transition: transform 0.4s ease;
		transform: translateY(0vh);
	}
	header nav.active ul::before {
		display: block;
		position: absolute;
		top: 10vh;
		left: 0;
		text-align: center;
		width: 100vw;
		content: 'la machine';
		font-family: 'VinylCuts';
		font-size: 12vw;
	}
	header nav.active ul {
		display: block;
		top:0;left: 0;
		padding-top: 20vh;
		background: var(--jaune);
		width: 100vw;
		height: 100vh;
		/*transform: translateY(-100vh);*/
		text-align: center;
		z-index: 2;
	}
	
	header nav.active li a.home::before {
		transform: translate(48vw, 8px);
	}

	header nav.active ul li {
		display: block;
		height: 6vh;
		width: 100%;
		text-align: center;
	}

	header nav.active ul li:not(.lang) a {
		display: block;
		font-size: 2vw;
		line-height: 6vw;
		margin: 1vw 0;	
	}

	header nav.active li.lang a.fr {
		margin: 0;
	}
	header nav.active ul li::before {
		font-size: 18vh;
	}
	header nav.active ul li.lang {
		width: 50px;
	}
	header nav.active ul li.lang.first {
		margin-left: calc(50% - 75px);
	}
	
/*---------- desktop ----------------*/
@media screen and (min-width:901px)  {
	header nav li a {
		display: inline-block;
		border-radius: 17px;
		background: transparent;
		padding: 10px;
		margin: 0;
		font-size: .75em;
		text-transform: uppercase;
		text-decoration: none;
	}
	header nav ul {
		display: block;
	}
	header nav.active ul li::before {
		font-size: 18vh;
	}
	header nav.active ul li.lang {
		width: 50px;
	}
	header nav.active ul li.lang.first {
		margin-left: calc(50% - 75px);
	}

	
	
}
/*------------mobile----------*/
@media screen and (max-width:900px)  {
	header nav {
		display: none;
		position: fixed;
		top:0;left: 0;
		width: 100%;height: 0%;
	}
	header nav.active {
		display: block;
	}
	header nav.active ul {
		position: absolute;
	}
	header nav.active li a.home::before {
		transform: translateX(-17px);
	}
	header nav.active ul li a.active, header nav ul li a{
		display: block;
		color: #000;
		font-size: 2rem;
		text-align: center;
		background: none;
		display: inline-block;
		}
	header nav.active ul li a:hover {
		border: 0 none;
	}
	header nav.active ul li a:after {
		height: 3px;
		background-color: #fff;
	}
	header nav.active ul li:not(.lang) a {
		font-size: 4vw;
		display: inline-block;
	border-radius: 6vw;
		padding: 1vw 4vw;
	}

	header nav.active ul li.lang {
		height: auto;
	}
	header nav.active ul li.lang a {
		margin: 5px auto;
		display: inline-block;
		font-size: .75rem;
	}
	header nav.active li.lang a.fr {
		margin: 5px auto;
	}
	header nav.active ul li.lang a.active {
		color: #fff;
	}
}


@media screen and (max-width:768px)  {
	body.homepage header div.title {
		padding-top: 3vh;
		display: block;
	}
	header div.title div.container {
		display: block;
	}
	header h1, header a.logo {
		font-size: 16vw;
	}
	header:not(.homepage) header h1, header:not(.homepage) a.logo {
		font-size: 4.5vh;
	}
	header h2 {
		font-size: 1em;
		margin-bottom: 1vh;
	}
	header h2 img {
		height: 1.25em;
	}
	header h3 {
		font-size: 4vw;
	}
}
@media screen and (max-width:500px)  {
	body.homepage header h1, body.homepage header a.logo {
		font-size: 18vw;
	}
	header:not(.homepage) h1, header:not(.homepage) a.logo {
		font-size: 6vh;
	}
}

/*----------------------- burger menu ---------------------*/

#burger {
	display: inline-block !important;
  	position: fixed;
	padding: 19px 2px;
	cursor: pointer;
	width: 50px;
	text-indent: -9999em;
	height: 50px;
	z-index: 99;
	top: 1.5vw;
	right: 2.5vw;
	background: #fff;
	border-radius: 50%;
}
#burger.desktopactive {
	opacity: 1;
	visibility:visible;
	transition: opacity 1s ease-in-out 0s;
}
#burger span {
	margin-top: 5px;
	margin-left:8px;
	height: 50px;
}

#burger span, #burger span:before, #burger span:after {
  position: absolute;
  display: block;
  cursor: pointer;
  border-radius: 1px;
  height: 3px;
  width: 30px;
  background: #000;
  content: '';
}
#burger span:before
 {
  top: -7px;
}
#burger span:after
 {
  bottom: -7px; 
}
#burger span, #burger span:before, #burger span:after {
  transition: all 500ms ease-in-out;
}

#burger.active span {
  background-color: transparent;
}
#burger.active span:before, #burger.active span:after {
  top: 0;
}
#burger.active span:before{
  transform: rotate(45deg);
}
#burger.active span:after {
  transform: rotate(-45deg);
}
@media screen and (orientation:portrait)  {
	header div.title {
		padding-top: 5vh;
	}
}
@media screen and (min-width:901px)  {
	/*----- burger on desktop-------*/
	#burger {
		display: inline-block;
		opacity: 0;
		visibility:hidden;
	}
}
@media screen and (max-width:900px)  {
	body:not(.homepage) header div.title {
		width: 100%;
		padding-top: 0;
	}
	body.homepage header h1 {
		font-size: 18vw;
	}
	#burger {
		display: inline-block;
	}


}


/*------------------------- FOOTER  ---------------------*/
footer {
	position: relative;
	padding: 10vh 0 20vw 0;
	background: var(--gris);
	overflow: hidden;
}
footer::after {
	display: block;
	position: absolute;
	bottom: -2vw;
	left: 2vw;
	content: url(../img/la_machine.svg);
	filter: invert(1);
	width: 96vw;
	height: 17vw;
	opacity: .5;
}
.homepage footer {
	margin-top: -15vw;
}
.homepage footer::after {
	bottom: 30px;
}
footer .flex {
	justify-content:space-between;
}
footer h4 {
	margin-bottom: 15px;
	margin-top: 50px;
	clear: both;
	line-height: 1.25em;
}
footer div.contact h4 {
	margin-top: 0;
	margin-bottom: 50px;
}
footer .social a {
	display: inline-block;
	margin-right: 5px;
}
footer .social img {
	height: 30px;
	width: 30px;
}
footer .links a {
	display: block;
	text-decoration:none;
	text-transform:uppercase;
}
footer .col {
	padding: 3vh 0;
}

footer div.multiplie {
	margin: 50px 0;
	font-size: .85rem;
	line-height: 1.25rem;
}
footer div.multiplie::before {
	display: block;
	content: ' ';
	height: 30px;
	background: url(../img/logo_multiplie.svg)no-repeat left center;
	background-size: contain;
	margin-bottom: 10px;
}


/*------------------------- PAGES LAMBDA  ---------------------*/
aside.parallax-container {
	display: flex;
	overflow: hidden;
	border-radius:5vw 5vw 0 0;
	justify-content: center;
	align-items:center;
	transform:translateY(-5vw);
	height: calc(50vh + 5vw);
}
img.parallax-img {
  width: 100%;
  height: auto;
  transform: translateY(0);
  position: absolute;
  top: -30%;
}
aside.parallax-container div.citation {
	width: 100%;
	max-width: 1240px;
	padding: 0 5vw;
	margin: auto;
	color: #fff;
}
aside.parallax-container div.citation * {
	color: #fff;
	font-size: 2rem;
	line-height: 2.5rem;
	font-weight: 600;
}
body.page main {
	border-radius:5vw 5vw 0 0;
	transform:translateY(-10vw);
	display: block;
	padding: 5vh 0 0 0;
	background: #fff;
}
body.page.team main, body.page.history main {
	transform:translateY(-5vw);
}

body.page main * {
	line-height: 1.5rem;
}
body.page main h1, body.page aside h1 {
	font-size: 3rem;
	padding-bottom: 2rem;
	line-height: 4rem;
}
body.page main h2, body.page section h2 {
	font-size: 1.5rem;
	line-height: 2rem;
}
@media (max-width: 900px) {
	aside.parallax-container {
		height: 20vh !important;
		display: block;
	}
	aside.parallax-container div.citation {
		position: absolute;
		bottom: 7vw;
	}
}
@media (max-width: 600px) {
	body.page main h1, body.page aside h1 {
		font-size: 2.25rem;
		line-height: 3rem;
	}
	aside.parallax-container {
		height: 10vh;
	}
	img.parallax-img {
		margin-top: 6vh;
	}
}
/*------------------------- HISTORY  ---------------------*/
body.page.history {
	background: var(--jaune);
}
body.page.history aside {
	background: #000;
	border-radius:5vw 5vw 0 0;
	padding: 5vw 0 15vw 0;
	margin-bottom: -5vw;
}
body.page.history aside div.wrapper.flex {
	flex-direction: row-reverse;
}
body.page.history aside div.container, body.page.history aside div.image {
	width: 50%;
}
body.page.history aside div.image {
	border-radius: 0 10vw 0 10vw ;
	background: #fff;
	overflow: hidden;
	display: flex;
	justify-content:center;
	align-items: center;
	padding: 3vw;
}
body.page.history aside div.image img {
	width: 100%;
	height: auto;
}

body.page.history aside div.wrapper h1 {
	color: #fff;
}
body.page.history main {
	padding: 5vh 0 15vw 0;
	background: #fff;
	margin-bottom: -10vw;
}
body.page.history main div.wrapper div.flex {
	margin-bottom: 3vh;
}
body.page.history main div.col-1x3 {
  padding-top: 1rem;
}
body.page.history main div.wrapper div.image {
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  border-radius: 50%;
  aspect-ratio: 1 / 1;
  width: 80%; 
  max-width: 100%;
}
body.page.history div.image.out::before {
	content: ' ';
	display: inline-block;
	position: absolute;
	top: 10%;
	left: 10%;
	width: 80%;
	height: 80%;
	opacity: .5;
	border-radius: 50%;
	background: var(--gris);
}
body.page.history main div.wrapper div.image.out {
	overflow: auto;
	border-radius: 0;
}
body.page.history div.image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
body.page.history div.image.out img {
  box-shadow: 0px 0px 10px rgba(0,0,0,.2);
}
body.page.history div.image.out.v img {
  width: auto;
  height: 85%;
  transform: rotate(-10deg);
}
body.page.history div.image.out.h img {
  width: 95%;
  height: auto;
  transform: rotate(-10deg);
}
body.page.history div.image.out.h.w85 img {
  width: 85%;
}

body.page.history section {
	background: var(--gris);
	border-radius:5vw 5vw 0 0;
	transform: translateY(-5vw);
	margin-bottom: -5vw;
	padding-top: 5vw;
}
body.page.history section#foot  {
	padding: 0;
	margin-top: -5vw;
}
body.page.history section#foot  {
	width: 100%;
	height: 100vh;
	background: url(../img/back_sofa.jpg)no-repeat center center;
	background-size: cover;
	margin-bottom: -10vw;

}
body.page.history section#foot div.wrapper p {
	display: block;
	width: 50%;
	padding: 10vh 0;
	color: #fff;
	font-size: 2rem;
	line-height: 3rem;
	font-weight: 600;
}

@media (max-width: 800px) {
	body.page.history aside div.wrapper.flex {
		display: block;
	}
	body.page.history aside div.container, body.page.history aside div.image {
		width: 100%;
	}
	body.page.history aside div.image {
		border-radius: 5vw 5vw 5vw 0  ;
		background: #fff;
		overflow: hidden;
		display: flex;
		justify-content:center;
		align-items: center;
		padding: 3vw;
	}
	body.page.history main .wrapper .flex {
		display: block;
	}
	body.page.history main .wrapper .flex .col.col-1x3 {
		padding: 3vh 0 1vh 0;
		text-align:center;
		width: 100%;
	}
	body.page.history main .wrapper .flex .col.col-2x3 {
		width: 100%;
	}
	body.page.history main .wrapper .flex .col.col-1x3 div.image {
		width: 50%;
		margin: auto;
	}
	body.page.history section#foot div.wrapper p {
		width: 100%;
		padding: 3vh 0;
	}

}
/*------------------------- TEAM  ---------------------*/

body.page.team aside.parallax-container  {
	height: 50vh;
}


body.page.team aside img.parallax-img {
	top: 0;
}
body.page.team main {
	transform: translateY(-10vw);
}
body.page.team main div.wrapper h1 {
}
body.page.team main div.wrapper div.flex {
	border-radius: 3vw;
	background: var(--gris);
	padding: 3vw 3vw 6vw 3vw;
	margin-bottom: -4vw;
	border: 5px solid #fff;
}
body.page.team main div.wrapper div.flex.prems {
	margin-top: 150px;
}
body.page.team main div.wrapper div.flex:last-of-type {
}
body.page.team main div.wrapper div.image {
	display: flex;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	border-radius: 3vw;
	aspect-ratio: 1 / 1;
	width: 80%;
	max-width: 100%;
	margin-top: 1vw;
}
body.page.team main div.wrapper div.image img {
  width: 100%;
}
body.page.team div.flex:last-of-type h2 {
  width: calc(100% / 3);
}

@media (max-width: 900px) {
	body.page.team main div.flex {
		display: flex;
		gap:15px
	}
	body.page.team main div.flex div.col-1x3 {
		width: 20%;
	}
	body.page.team main div.flex div.col-2x3 {
		width: 80%;
	}
}
@media (max-width: 600px) {
	body.page.team main div.flex {
		flex-wrap: wrap;
	}
	body.page.team main div.flex div.col-1x3 {
		width: 100%;
	}
	body.page.team main div.flex div.col-2x3 {
		width: 100%;
	}
	body.page.team main div.wrapper div.image {
		width: 50%;
	}
	body.page.team main div.wrapper div.flex.prems {
		margin-top: 80px;
	}
}

/*------------------------- CONTACT  ---------------------*/
body.page.contact aside img.parallax-img {
	top: -10%;
}
body.page.contact main div.flex {
	align-items: stretch;
}
body.page.contact main div.col.col-1x3 {
	margin-bottom: 5vh;
	background: var(--gris);
	border-radius: 3vw;
	padding: 30px;
}
body.page.contact main div.col.col-2x3 {
	margin-bottom: 5vh;
}

body.page.contact div.general::before,
body.page.contact div.support::before,
body.page.contact div.press::before,
body.page.contact div.partner::before {
	display: inline-block;
	content: ' ';
	background: #fff url(../img/ico_contact.svg)no-repeat center center;
	background-size: 50%;
	height: 80px;
	width: 80px;
	filter: invert();
	border-radius: 50%;
}
body.page.contact div.support::before {
	background-image:url(../img/ico_support.svg);
}
body.page.contact div.press::before {
	background-image:url(../img/ico_press.svg);
}
body.page.contact div.partner::before {
	background-image:url(../img/ico_partner.svg);
}
body.page.contact iframe {
	border-radius: 0 5vw 0 5vw;
}


/* RESPONSIVE MOBILE */
@media (max-width: 1200px) {
	body.page.contact main .flex .col p, body.page.contact main .flex .col a {
		font-size:.9rem;
	}
}
@media (max-width: 768px) {
	body.page.contact main .flex  {
		display: block;
	}
}


/*------------------------- LIGHTBOX  ---------------------*/
.overlay {
	z-index: 99;
	display: flex;
	justify-content:center;
	align-items: center;
	padding: 5vh 5vw;
	position: fixed;
	top: 0;left: 0;
	width: 100vw;height: 100vh;
	background: rgba(0,0,0,.9);
	cursor: pointer;
}
.overlay img {
	width: auto;
	  height: auto;
	  max-width: 100%;
	  max-height: 100%;
	  object-fit: contain;
}
.overlay a.close {
	position: absolute;
	top: 3vh;right: 3vh;
	text-decoration: none;
}
.overlay a.close::before {
	content: '\e5cd';
	font-family: 'Material Icons';
	color: #fff;
	font-size: 4vh;
}


/*------------------------- PAGES LEGALES  ---------------------*/
body.page.data img.parallax-img {
		top: -5vh;
}
