@font-face {
	font-family: 'ASAP';
	src: url('../fonts/Asap-Regular.ttf');
}
@font-face {
	font-family: 'Open Sans';
	src: url('../fonts/OpenSans-Regular.ttf');
}
@media (min-width: 1600px) {
	.product-info {
		padding-top: 8vh;
	}
}
@media (max-width: 768px) {
	body {
		overflow-x: hidden;
		top: 0;
	}
	header {
		top: 20px;
		padding: 0 !important;
		margin: 0 20px !important;
		z-index: 9999 !important;
	}
	.header {
		position: sticky;
		width: calc(100vw - 40px);
		z-index: 999;
	}
	.menu-mobile-container {
		position: absolute;
		top: -20px;
		left: -20px;
		width: 100vw;
		height: 100vh;
		background-color: #fff;
		overflow: hidden;
		z-index: 9999999;
	}
	.menu-text-mobile {
		display: flex;
		flex-direction: column;
		text-align: center;
		padding: 10vh 0;
	}
	.menu-text-mobile .menu {
		width: auto;
		margin: 10px auto;
	}
	.menu-text-mobile span {
		padding: 0 10px;
		font-family: 'ASAP';
		font-size: 24px;
		font-weight: 700;
		line-height: 24px;
		text-transform: uppercase;
		cursor: pointer;
	}
	.menu-text-mobile .menu::after {
		display: block;
		content: '';
		height: 2px;
		width: 0;
		background-color: var(--tertiary);
		background-size: contain;
		background-position: center;
		background-repeat: no-repeat;
		transition: width 0.4s;
	}
	.menu-text-mobile .menu:hover::after {
		width:  100%;
		transition: width 0.4s;
	}
	.selected::after {
		display: block;
		content: '';
		height: 2px;
		width: 100% !important;
		background: var(--tertiary);
	}
	.close-menu {
		font-family: 'ASAP';
		position: absolute;
		top: 20px;
		right: 20px;
		border-radius: 50%;
		height: 20px;
		width: 20px;
		margin: auto;
		padding: 10px;
		text-align: center;
		border: 2px solid var(--primary);
		color: var(--primary);
		cursor: pointer;
	}
	.logo {
		width: calc(30vw);
	}
	.menu-text {
		display: none;
	}
	.menu-mobile {
		color: var(--primary);
		margin: 50px 0 0;
		cursor: pointer;
	}
	.shape-1 {
		top: 0;
		width: calc(70vw);
	}
	/* Section */
	.section {
		position: relative;
		padding: 150px 20px 0;
		width: calc(100vw - 40px);
		height: calc(100vh - 150px);
		overflow-x: hidden;
		scroll-snap-align: center;
		z-index: 0;
	}
	.section .content {
		display: flex;
		position: relative;
		width: calc(100vw - 10vw);
		height: calc(100vh - 340px);
		margin: 150px 5vw 150px;
	}
	.reverse {
		flex-direction: column-reverse;
	}
	/*	.section-content {
		width: calc(100vw - 10vw);
		height: calc(100vh - 10vh);
		padding: 5vh 5vw;
		display: flex;
	}*/
	.text {
		display: block;
		font-family: 'Open Sans';
		font-size: 18px;
		line-height: 24px;
		padding-bottom: 20px;
	}
	.align-left {
		display: none;
	}
	.align-right {
		display: none;
	}
	/* section 1 */
	.section-1 {
		position: relative;
		top: 0;
	}
	.content-text {
		width: calc(100%);
		height: 40vh;
		display: flex;
		position: absolute;
	}
	.image-word {
		display: none;
	}
	.image-pencil {
		top: -75px;
		left: -4vw;
		position: absolute;
		width: 100px;
		height: auto;
		transform: translateX(-100vw);
		transition: .6s ease-out;
		z-index: 999;
	}
	.content-video {
		position: relative;
		height: 100%;
	}
	.video {
		display: flex;
		flex-direction: column;
		position: relative;
		height: 100%;
		margin: 0 0 0 10px;
		border: 2px solid #000;
		z-index: 20;
		overflow: hidden;
		justify-content: end;
		background-color: #fff;
		box-shadow: -10px 10px #000;
	}
	.video-image {
		height: calc(100vh - 80vw - 40px);
		margin: 0 auto;
		background-color: #fff;
		transition: .6s;
	}
	.product-text {
		width: 100%;
		height: 40px;
		text-align: center;
		transition: .6s;
	}
	.shape-2 {
		position: absolute;
		width: 100px;
		top: 5vh;
		right: 2vw;
		fill: #ba786c;
	}
	.shape-3 {
		position: absolute;
		width: 150px;
		bottom: 5vh;
		left: 2vw;
		fill: #daab84;
	}
	.shape-4 {
		position: absolute;
		width: 300px;
		top: 75vh;
		right: 0;
		fill: var(--primary);
		z-index: -2;
	}
	.shape-4-alt {
		position: absolute;
		width: 300px;
		top: calc(100vh * 3 - 25vh);
		left: -20px;
		fill: var(--primary);
		transform: rotate(180deg);
	}
	.book-cta {
		display: none;
	}
	.book-cta-mobile {
		position: absolute;
		width: 100px;
		left: calc(50% - 50px);
		bottom: 40px;
		display: flex;
		flex-direction: column;
		cursor: pointer;
		z-index: 999;
	}
	.book-cta-mobile span {
		font-family: 'ASAP';
		font-size: 24px;
		font-weight: 500;
		text-transform: uppercase;
		color: var(--primary);
	}
	.book-cta-mobile svg {
		margin: 0 auto;
		stroke-width: 2px;
		color: var(--primary);
	}
	/* section 2 */
	.section-2 {
		display: none;
	}
	.book-section {
		width: calc(100% - 40px);
		padding: 40vw 20px 20vw;
		margin: 0;
		filter: opacity(0);
		height: calc(100vh - 60vw);
	}
	.book-section-2 {
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		width: calc(100% - 40px);
		padding: 40vw 20px 20vw;
		margin: 0;
		filter: opacity(0);
		height: calc(100vh - 60vw);
		transition: .6s ease-out;
	}
	.book-section .text {
		overflow: hidden;
	    text-overflow: ellipsis;
	    display: -webkit-box;
	    -webkit-line-clamp: 6;
	            line-clamp: 6; 
	    -webkit-box-orient: vertical;
	    padding-bottom: 0 !important;
	    margin-bottom: 40px;
	}
	.book-section-2 .text {
		overflow: hidden;
	    text-overflow: ellipsis;
	    display: -webkit-box;
	    -webkit-line-clamp: 5;
	            line-clamp: 5; 
	    -webkit-box-orient: vertical;
	    padding-bottom: 0 !important;
	    margin-bottom: 40px;
	}
	.book-1 {
		position: absolute;
		width: 35vw;
		right: 0;
		top: 10vh;
	}
	.book-2-mobile {
		position: absolute;
		width: 40vw;
		right: 0;
		top: 10vh;
		transform: translateX(100vw);
		transition: .6s ease-out;
	}
	.padding-right {
		padding-right: 35vw;
	    margin-bottom: 0 !important;
	}
	.padding-right-alt {
		padding-right: 35vw;
	    margin-bottom: 0 !important;
	}
	/* section 3 */
	.section-3 {
		display: none;
	}
	.section-3-mobile .section-content {
		position: relative;
		flex-direction: column;
		width: calc(100vw - 40vw);
		height: calc(100vh - 70vw);
		padding: 40vw 20vw 30vw;
		gap: 20px;
	}
	.section-3-mobile .title-content {
		text-align: center;
	}
	.section-3-mobile .horizontal-separator {
		display: none;
	}
	.products {
		margin-top: 10px;
		gap: 20px;
	}
	.product {
		width: 100%;
		height: calc(((60vw) + 5px) * .75 + 40px);
	}
	.product-image {
		width: 100%;
		aspect-ratio: 4/3;
		background-color: #fff;
		background-position: center;
		background-size: cover;
		transition: .6s;
	}
	.product-text {
		width: 100%;
		height: 40px;
		text-align: center;
		background-color: #fff;
		transition: .6s;
		position: relative;
		border-top: 2px solid #000;
	}
	.materials-cta {
		display: block;
		width: calc(60vw - 4px);
		margin-top: 20px;
		padding: 12px 0;
		border: 2px solid #000;
		box-shadow: -10px 10px #000;
	}
	.materials-cta span {
		display: block;
		font-family: 'ASAP';
		font-size: 16px;
		font-weight: 700;
		line-height: 16px;
		text-align: center;
		text-transform: uppercase;
	}
	#section-3-1 .product {
		transform: translateX(-100vw);
		transition: .6s ease-out;
	}
	#section-3-2 .product {
		transform: translateX(100vw);
		transition: .6s ease-out;
	}
	/* section 4 */
	.section-4 {
		display: none;
	}
	.section-4-mobile {
		z-index: 0 !important;
	}
	.section-4-mobile .section-content {
		position: relative;
		flex-direction: column;
		width: calc(100vw - 40px);
		height: calc(100vh - 70vw);
		padding: 40vw 20px 30vw;
		gap: 20px;
	}
	.horizontal-separator {
		display: none !important;
	}
	.sponsors-1 {
		width: calc(80vw * 5) !important;
		margin-top: 0;
	}
	.section-4-mobile .sponsors-1 {
		transform: translateX(0);
		transition: 20s linear;
		animation-iteration-count: infinite;
	}
	.sponsors-1 .sponsor-image {
		width: calc(80vw - 20px) !important;
	}
	.section-4-mobile .sponsors-2 {
		width: calc(30vw * 6) !important;
		transform: translateX(-110vw);
		transition: 20s linear;
		animation-iteration-count: infinite;
	}
	.sponsors-2 .sponsor-image {
		width: calc(30vw - 20px) !important;
	}
	.medios {
		width: calc(80vw * 5) !important;
		margin-top: 0;
	}
	.section-4-mobile .medios {
		transform: translateX(0);
		transition: 20s linear;
		animation-iteration-count: infinite;
	}
	.medios .medios-image {
		width: calc(50vw - 20px) !important;
	}
	footer {
		padding-top: 50px !important;
		height: 130px !important;
	}
	.section-footer {
		padding-left: 0 !important;
		padding-right: 0 !important;
		width: calc(100vw) !important;
	}
	.svg-footer{
		bottom: 0 !important;
	}
	.social-icon-container {
		border: 2px solid var(--primary) !important;
		border-radius: 50%;
		padding: 3px 5px;
		transition: border 0.4s;
		cursor: pointer;
	}
	.social-icon {
		position: relative;
		top: 2px;
		color: var(--primary) !important;
		stroke-width: 2px !important;
		margin: auto 0;
	}
	.social-icon-container:hover {
		border: 2px solid #000;
		background-color: var(--tertiary);
		transition: all 0.4s;
	}
	.social-icon-container:hover .social-icon {
		color: #000;
		transition: color 0.4s;
	}
	/* compi */
	.section-content {
		display: flex;
		flex-direction: column-reverse;
		gap: 20px;
	}
	.about-me {
		width: calc(100%);
		margin: auto;
		text-align: center;
	}
	.desktop {
		display: none;
	}
	.rrss {
		display: flex;
		justify-content: center;
		gap: 50px;
	}
	.photo {
		width: 200px;
		height: 200px;
		margin: auto;
		background-position: center;
		background-size: contain;
		background-repeat: no-repeat;
	}
	.rrss .social-icon-container {
		border: 2px solid var(--primary) !important;
	}
	.rrss .social-icon {
		color: var(--primary) !important;
	}
	.rrss .social-icon-container:hover {
		border: 2px solid #000 !important;
	}
	.rrss .social-icon:hover {
		color: #000 !important;
	}
	.section-content-alt {
		flex-direction: column;
		gap: 20px;
	}
	.contact {
		width: 100%;
		text-align: center;
		display: flex;
		flex-direction: column;
		gap: 40px;
		margin-top: 40px;
	}
	.contact-button {
		text-transform: uppercase;
		padding: 12px;
		box-shadow: -10px 10px #000;
		font-size: 16px;
		line-height: 20px;
		width: 300px;
		margin: auto;
		border: 2px solid #000;
		font-family: 'ASAP';
	}
	.instagram-feed {
		width: 100%;
	}
}
@media (min-width: 769px) {
	.menu-mobile {
		display: none;
	}
	.header {
		position: fixed;
		width: calc(100vw - 100px);
		top: 0;
		z-index: 999;
	}
	.menu-text {
		display: flex;
		gap: 30px;
		font-family: 'ASAP';
		margin: 5px 45px 0;
	}
	.menu-text span {
		font-size: 24px;
		font-weight: 700;
		line-height: 24px;
		cursor: pointer;
	}
	.language-separator {
		cursor: default !important;
	}
	.logo {
		width: 160px;
		height: auto;
		cursor: pointer;
	}
	.languages {
		display: flex;
		margin: auto 0;
	}
	.languages span {
		font-size: 24px;
		font-weight: 700;
		line-height: 24px;
		text-transform: uppercase;
	}
	.language {
		font-family: 'ASAP';
		cursor: pointer;
	}
	.menu-text .menu::after {
		display: block;
		content: '';
		height: 2px;
		width: 0;
		background-color: var(--tertiary);
		background-size: contain;
		background-position: center;
		background-repeat: no-repeat;
		transition: width 0.4s;
	}
	.menu-text .menu:hover::after {
		width:  100%;
		transition: width 0.4s;
	}
	.selected::after {
		display: block;
		content: '';
		height: 2px;
		width: 100% !important;
		background: var(--tertiary);
	}
	.language-separator {
		margin: 0 10px;
	}
	/* section */
	.section {
		width: 100vw;
		height: 100vh;
		overflow-x: hidden;
		scroll-snap-align: center;
	}
	.section .content {
		display: flex;
		position: relative;
		width: calc(100vw - 30vw);
		height: calc(100vh - 40vh);
		padding: 30vh 15vw 10vh;
	}
	.content-text {
		width: calc(55%);
	}
	.content-video {
		position: relative;
		width: calc(45%);
		height: auto;
		margin: -10vh 0 10vh;
	}
	.video {
		display: flex;
		flex-direction: column;
		position: relative;
		height: 100%;
		margin: 0 0 0 50px;
		border: 2px solid #000;
		z-index: 20;
		overflow: hidden;
		justify-content: end;
		box-shadow: -10px 10px #000;
		cursor: pointer;
	}
	.video-image {
		background-color: #fff;
		background-position: center;
		background-size: cover;
		transition: .6s;
		height: 100%;
		top: -48%;
	}
	.section-content {
		width: calc(100vw - 10vw);
		height: calc(100vh - 20vh);
		padding: 15vh 5vw 5vh;
		display: flex;
	}
	.horizontal-separator {
		width: 200px;
	}
	.image-word {
		position: absolute;
		right: -80px;
		width: 150px;
		height: auto;
		transform: translateX(calc(100vw + 45vw));
		transition: .6s ease-out;
		z-index: 30;
	}
	.image-pencil {
		bottom: 10vh;
		position: absolute;
		width: 100px;
		height: auto;
		transform: translateX(-100vw);
		transition: .6s ease-out;
	}
	.text {
		display: block;
		font-family: 'Open Sans';
		font-size: 18px;
		line-height: 24px;
		padding-bottom: 20px;
	}
	.align-left {
		padding-right: 20%;
		filter: opacity(0);
		transition: .6s ease-out;
	}
	.align-right {
		padding-left: 20%;
		filter: opacity(0);
		transition: .6s ease-out;
	}
	.text-mobile {
		display: none;
	}
	/* compi */
	.section-content {
		gap: 10vw;
	}
	.about-me {
		width: calc(50% - 5vw);
		margin: auto;
	}
	.mobile {
		display: none;
	}
	.rrss {
		display: flex;
		justify-content: center;
		gap: 50px;
	}
	.photo {
		width: 400px;
		height: 400px;
		margin: auto;
		background-position: center;
		background-size: contain;
		background-repeat: no-repeat;
	}
	.rrss .social-icon-container {
		border: 2px solid var(--primary) !important;
	}
	.rrss .social-icon {
		color: var(--primary) !important;
	}
	.rrss .social-icon-container:hover {
		border: 2px solid #000 !important;
	}
	.rrss .social-icon:hover {
		color: #000 !important;
	}
	.section-content-alt {
		flex-direction: column;
		gap: 50px;
	}
	.contact {
		width: 100%;
		text-align: center;
		display: flex;
		flex-direction: column;
		gap: 50px;
		margin-top: 50px;
	}
	.contact-button {
		text-transform: uppercase;
		padding: 12px;
		box-shadow: -10px 10px #000;
		font-size: 16px;
		line-height: 20px;
		width: 300px;
		margin: auto;
		border: 2px solid #000;
		font-family: 'ASAP';
	}
	.instagram-feed {
		width: 100%;
	}
}
:root {
	--primary: #95483c;
	--secondary: #ba786c;
	--tertiary: #eebea7;
}
a {
	text-decoration: none;
	color: unset;
}
html {
	scroll-behavior: smooth;
}
body {
	position: relative;
	width: 100vw;
	margin: 0;
	scroll-snap-type: y mandatory;
	overflow-x: hidden;
}
header {
	position: relative;
	display: flex;
	justify-content: space-between;
	padding: 20px 50px;
	z-index: 100;
}
.white {
	filter: brightness(0) invert(1);
}
.title {
	display: block;
	font-family: 'ASAP';
	font-size: 34px;
	font-weight: 500;
	text-transform: uppercase;
	color: var(--primary);
}
.shape-1 {
	position: absolute;
	left: 0;
	fill: var(--primary);
}
.content-text {
	position: relative;
}
.book-section {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	filter: opacity(0);
	transition: .6s ease-out;
}
.book-images-section {
	display: flex;
	position: relative;
	width: 40%;
	height: 100%;
	padding: 0 20px;
}
.books-shape {
	width: 100%;
	fill: var(--secondary);
}
.book-1 {
	position: absolute;
	transform: translateX(-100vw);
	transition: .6s ease-out;
}
.book-2 {
	position: absolute;
	transform: translateX(100vw);
	transition: .6s ease-out;
}
.books-image {
	width: calc(100%);
	height: auto;
	margin: auto 0;
}
.svg-separator {
	width: 40%;
	fill: var(--secondary);
	padding: 20px 0;
}
.product-buy-button-shadow {
	position: absolute;
	height: 46px;
	width: 100%;
	left: -8px;
	top: 8px;
	background-color: var(--primary);
	z-index: 0;
}
.product-buy-button {
	display: flex;
	gap: 10px;
	justify-content: center;
	position: relative;
	padding: 10px 0;
	text-align: center;
	border: 3px solid var(--primary);
	background-color: #fff;
	cursor: pointer;
	z-index: 10;
}
.product-buy-button span {
	font-family: 'ASAP';
	font-size: 20px;
	line-height: 20px;
	text-transform: uppercase;
	color: var(--primary);
}
.button {
	position: relative;
}
.button:hover .product-buy-button {
	border: 3px solid #000;
}
.button:hover .product-buy-button-shadow {
	background-color: #000;
}
.button:hover .amazon-icon {
	filter: brightness(1);
}
.button:hover .product-buy-button span {
	color: #000;
}
.amazon-icon {
	height: 20px;
	width: auto;
	filter: brightness(0);
}
/* section 3 */
.title-content {
	display: flex;
	justify-content: end;
}
.title-content-alt {
	display: flex;
	justify-content: start;
	margin-top: 40px;
}
.title-content svg {
	margin-right: 20px;
	width: calc(20vw);
	fill: var(--secondary);
}
.title-content-alt svg {
	margin-left: 20px;
	width: calc(20vw);
	fill: var(--secondary);
}
.products {
	display: flex;
	flex-wrap: wrap;
}
.product {
	position: relative;
	display: flex;
	flex-direction: column;
	border: 2px solid #000;
	background-color: #fff;
	box-shadow: -10px 10px #000;
	z-index: 20;
	overflow: hidden;
	cursor: pointer;
}
.product-title {
	display: block;
	font-family: 'ASAP';
	font-size: 16px;
	line-height: 20px;
	text-transform: uppercase;
	color: #000;
	padding: 10px 0;
}
.product-title-alt {
	display: block;
	font-family: 'ASAP';
	font-size: 20px;
	line-height: 20px;
	text-transform: uppercase;
	color: #000;
	padding: 10px 0;
}
.product-info {
	display: block;
	font-family: 'Open Sans';
	font-size: 16px;
	line-height: 20px;
	padding: 10px 20px 0;
	border-top: 2px solid #000;
	overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 5;
            line-clamp: 5; 
    -webkit-box-orient: vertical;
}
.product-button {
	display: block;
	margin: 20px;
	padding: 10px;
	font-family: 'Open Sans';
	font-size: 16px;
	font-weight: 700;
	line-height: 20px;
	text-transform: uppercase;
	color: var(--primary);
}
.product-button:hover {
	color: #000;
}
/* section 4 */
.sponsors-1 {
	display: flex;
	gap: 50px;
	margin-top: 20px;
	transform: translateX(100vw);
	transition: .6s ease-out;
}
.sponsors-1 .sponsor-image {
	display: block;
	width: calc(20% - 40px);
	height: auto;
	margin: auto 0;
	filter: saturate(0);
	cursor: pointer;
}
.sponsor-image img {
	width: 100%;
}
.sponsors-1 .sponsor-image:hover {
	filter: saturate(1);
}
.sponsors-2 {
	padding: 0 10vw;
	display: flex;
	gap: 40px;
	margin-top: 20px;
	transform: translateX(100vw);
	transition: .6s ease-out;
}
.sponsors-2 .sponsor-image {
	display: block;
	width: calc(16.66% - 33.33px);
	height: auto;
	margin: auto 0;
	filter: saturate(0);
	cursor: pointer;
}
.sponsors-2 .sponsor-image:hover {
	filter: saturate(1);
}
.medios {
	display: flex;
	gap: 40px;
	transform: translateX(-100vw);
	transition: .6s ease-out;
}
.medios .medios-image {
	width: calc(16.66% - 33.33px);
	height: auto;
	margin: auto 0;
	filter: saturate(0);
	cursor: pointer;
}
.medios .medios-image:hover {
	filter: saturate(1);
}
/* footer */
.section-footer {
	position: relative;
	height: fit-content;
	overflow: hidden;
}
footer {
	height: 150px;
	padding-top: 150px;
}
.svg-footer {
	position: absolute;
	width: 100vw;
	bottom: -100px;
}
.social-icons {
	position: relative;
	display: flex;
	justify-content: center;
	gap: 40px;
	z-index: 10;
}
.social-icon-container {
	border: 2px solid #fff;
	border-radius: 50%;
	padding: 3px 5px;
	transition: border 0.4s;
	cursor: pointer;
}
.social-icon {
	position: relative;
	top: 2px;
	color: #fff;
	stroke-width: 1.5px;
	margin: auto 0;
}
.social-icon-container:hover {
	border: 2px solid #000;
	background-color: var(--tertiary);
	transition: all 0.4s;
}
.social-icon-container:hover .social-icon {
	color: #000;
	transition: color 0.4s;
}
.copy {
	display: block;
	position: relative;
	padding-top: 50px;
	font-family: 'Open Sans';
	font-size: 16px;
	line-height: 20px;
	text-align: center;
	color: #fff;
	z-index: 10;
}
.tiktok-icon {
	padding: 3px 6.5px;
}
.tiktok-icon .social-icon {
	font-size: 21px;
}
.no-visible {
	display: none;
}