


@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@300;500;700;800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Geologica:wght@300;500;700;800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;500;700;800&display=swap');

:root {

    --font1: 'Manrope', sans-serif;
    --font2: 'Geologica', sans-serif;
    --font3: 'Open Sans', sans-serif;


    --col1: #be1e2d;
    --col2: hsl(259, 14%, 58%);
    --col3: #416ac4;
    --col3: hsl(212, 40%, 85%);
    --col4: hsl(216, 25%, 25%);
    --col5: hsl(176, 77%, 48%);


    --white: #F0F8FF;
    --white: #FAF9F6;

    
}



::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}
::-webkit-scrollbar-track {
    background: hsla(0, 0%, 0%, 0.2);
}
::-webkit-scrollbar-thumb {
    background: hsla(0, 0%, 0%, 0.15);
    border-radius: 20px;
}
body::-webkit-scrollbar {
    width: 12px;
    height: 12px;
}
body::-webkit-scrollbar-track {
    background: hsla(0, 0%, 0%, 0.2);
}
body::-webkit-scrollbar-thumb {
    background: hsla(0, 0%, 0%, 0.15);
}







/* Main Layout */
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

body, body * { box-sizing: border-box; }
body {
  margin: 0;
  font-family: var(--font1);
  background: var(--cc0);
  background: #d6d6d6;
  color: hsl(0, 0%, 30%);
}
p { font-size: 16px; }
h1, h2, h3, h4, h5, h6 { margin: 0; font-family: var(--font2); }



/*  MARK: Common 
    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.clearfix:after {
    content: "";
    display: table;
    clear: both;
  }
.A-flex,
.fp-flex { display: flex; }
.A-flex-wrap { display: flex; flex-flow: row wrap; align-items: start; }
.fp-hidden { display: none !important; }
.A-col-2 { width: 50% !important; } 
.flex-0 { flex: 0 !important; }
.flex-1 { flex: 1 !important; }
.abs {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}
.space-32 { width: 100%; height: 32px; }
.space-64 { width: 100%; height: 64px; }
svg {
    width: 32px;
    height: 32px;
    fill: var(--cc0);
}
.svg-stroke {
    fill: transparent;
    stroke: var(--cc0);
}

.apexcharts-svg {
    width: unset;
    height: unset;
    fill: unset;
}

.half { width: calc(50% - 0px); }
.half1 { width: calc(50% - 8px); margin-right: 8px; }
.half2 { width: calc(50% - 8px); margin-left: 8px; }


.close {
    position: absolute;
    right: 16px;
    top: 16px;
    width: 24px;
    height: 24px;
    cursor: pointer;
    opacity: 0.3;
    transition: 0.2s all;
}
.close:hover {
    opacity: 1;
    transform: scale(0.8) rotate(90deg);
}




img { position: relative; }
img:after {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: hsl(0, 0%, 75%);
}



.svg-fill-stroke { fill: var(--cc0); stroke: var(--cc0); }
.svg-fill { fill: var(--cc0); }
.svg-stroke { stroke: var(--cc0); }



button {
	padding: 4px 8px;
	font-size: 12px;
    font-family: var(--font3);
	color: hsl(0, 0%, 80%);
	color: hsl(0, 0%, 35%);
	background: var(--cc1);
	background: hsl(202, 10%, 72%);
	border: none;
    border-radius: 6px;
	cursor: pointer;
}
button:hover {
    background: hsl(212, 82%, 63%);
    color: white;
}
button:disabled {
    background: hsl(0, 0%, 75%);
    color: hsl(0, 0%, 50%);
    cursor: not-allowed;
    pointer-events: none;
}





body, body * { box-sizing: border-box; }
body {
	margin: 0;
	font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
	background: hsl(259, 14%, 58%);
	color: white;
}
p { font-size: 16px; }
h1, h2, h3, h4, h5, h6 { margin: 0; }
a { text-decoration: none; color: #49F; }










footer,
header { text-align: center; }
footer img.logo,
header img.logo {
	margin: 64px auto 16px;
	width: auto;
	height: 14vh;
}

main {
	padding-bottom: 0px;
}

.offer {
	position: relative;
	margin: 96px 0 64px;
	padding: 48px 15%;
	background: white;
	color: var(--col1);
	border-top: 18px solid var(--col1);
	border-bottom: 18px solid var(--col1);
}
.offer h1 {
	font-size: 48px;
	font-family: var(--font2);
	font-weight: 800;
	margin-bottom: 16px;
}
.offer h2 {
	font-size: 36px;
	font-family: var(--font2);
	font-weight: 500;
}
.offer .star {
	position: absolute;
	right: 5%;
	top: -112px;
	filter: drop-shadow(0 18px 18px hsla(0, 0%, 0%, 0.5));
}
.offer .star img {
	width: auto;
	height: 400px;
	margin-right: 8px;
}
.offer .star .price {
	display: flex;
	align-items: center;
	place-content: center;
	position: absolute;
	left: 0;
	top: 0%;
	width: 100%;
	height: 100%;
}
.offer .star p {
	font-size: 80px;
	font-family: var(--font2);
	font-weight: 700;
	color: white;
}
.offer .star p span {
	font-size: 64px;
}





.phone {
	display: block;
	margin-bottom: 64px;
	text-align: center;
}
.phone img {
	width: auto;
	height: 100px;
}
.phone p {
	display: block;
	margin: 8px 0;
	font-size: 24px;
	font-family: var(--font2);
	font-weight: 700;
	text-decoration: none;
	color: hsla(0, 0%, 100%, 0.5);
}
.phone p span {
	font-size: 32px;
	color: white;
}
.phone:hover p,
.phone:hover p span {
	color: var(--col1);
}





.chicken {
	width: 100%;
	height: auto;
	margin: 0;
	line-height: 0;
}



.menu {
	padding: 64px 15%;
	background: white;
	color: #222;
}


.menu p {
	display: flex;
    align-items: baseline;
	font-size: 28px;
	font-family: var(--font1);
	margin-bottom: 32px;
}
.menu-top p b {
	font-size: 32px;
	font-family: var(--font2);
	font-weight: 900;
}
.menu p i {
	flex: 1;
	border-bottom: 3px dotted hsl(0, 0%, 85%);
}
.menu p em {
	margin-left: 12px;
	margin-right: 12px;
	padding-bottom: 2px;
	font-size: 22px;
	font-style: normal;
}
.menu p span {
	margin-left: 8px; 
	text-align: right;
	font-weight: 700;
}

.menu h3:first-child {
	margin-top: 0;
}
.menu h3 {
	font-size: 32px;
	font-weight: 900;
	font-family: var(--font2);
	margin: 64px 0 24px;
}
.menu-bottom p { font-size: 20px; }
.menu-bottom p em {
	margin-left: 12px;
	padding-bottom: 1px;
	font-size: 16px;
	opacity: 0.5;
}
.menu-bottom {
	display: flex;
	margin: 112px -5vw 64px;
}
.menu-bottom > div {
	padding: 0 5vw;
}
.menu-left {
	width: 50%;
}
.menu-right {
	width: 50%;
}

.menu-left {
	border-right: 12px solid var(--col1);
}

footer { padding-bottom: 64px; }
footer p {
	font-size: 24px;
}
footer .phone {
	margin: 16px 0;
}
footer img.logo {
	margin: 96px 0 32px;

}





@keyframes starEntrance {
    0% {
        transform: scale(0) rotate(-180deg);
        opacity: 0;
    }

    100% {
        transform: scale(1) rotate(0deg);
        opacity: 1;
    }
}

@keyframes priceEntrance {
    0% {
        transform: scale(0);
        opacity: 0;
    }
    100% {
        transform: scale(1);
        opacity: 1;
    }
}


.offer .star {
    animation: starEntrance 1.2s cubic-bezier(0.68, -0.55, 0.265, 1.55) forwards;
    transform: scale(0) rotate(-180deg);
}
.offer .star p {
    animation: priceEntrance 1s cubic-bezier(0.68, -0.55, 0.265, 1.55) 0.4s forwards;
    transform: scale(0);
}













/* MARK: 1500px
*/
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
@media (max-width: 1500px) {
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

	.offer {
		padding: 48px 10%;
	}

}




/* MARK: 1280px
*/
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
@media (max-width: 1280px) {
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

	.offer { padding: 48px 5%; }
	.offer h1 { font-size: 44px; }
	.offer .star { right: 2%; top: -60px; }
	.offer .star img { height: 340px; }

	.menu { padding: 64px 10%; }
	.menu-top p { flex-flow: row wrap; }
	.menu-top p b { width: 100%; }
	.menu-top p em { margin-left: 0; }





}




/* MARK: 1024px
*/
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
@media (max-width: 1024px) {
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

	.offer h1 { width: 60%; margin-bottom: 8px; }
	.offer h2 { margin-top: 0; }
	.offer .star { right: 3%; top: -40px; }

	.menu-bottom p { margin-bottom: 16px; }
	

}






/* MARK: 800px
*/
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
@media (max-width: 800px) {
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

	.offer { padding: 48px 10%; margin: 64px 0; }
	.offer h1 { width: 60%; font-size: 40px; }
	.offer h2 { width: 60%; }
	.offer .star { right: 3%; top: 10px; }
	.offer .star img { height: 320px; }
	.offer .star p { font-size: 60px; }
	.offer .star p span { font-size: 40px; }

	.menu-top p span { font-size: 20px; }
	.menu-top p { margin-bottom: 56px; }
	.menu-top p b {
    	font-size: 32px;
	}
	.menu-bottom {
		flex-flow: column;
		margin: 64px -5vw 32px;
	}
	.menu-left {
		width: 100%;
		margin-bottom: 40px;
		border-right: unset;
	}
	.menu-right { width: 100%; }


	.chicken {
		width: 100%;
		height: 200px;
		object-fit: cover;
	}

}






/* MARK: 640px
*/
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
@media (max-width: 640px) {
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

	.offer { text-align: center; padding: 32px 5% 0; margin: 32px 0 64px; }
	.offer h1 { width: 100%; font-size: 36px; }
	.offer h2 { width: 100%; font-size: 28px; }
	.offer .star { right: 3%; top: 10px; }
	.offer .star { 
		position: relative;
		right: unset;
		top: unset;
		margin: 8px auto -64px;
	}
	.offer .star img {
		height: 260px;
		width: 50vw;
		height: 30vw;
	}
	.offer .star p { font-size: 50px; padding-bottom: 8px; }
	.offer .star p span { font-size: 40px; }

}





/* MARK: 480px
*/
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
@media (max-width: 480px) {
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */


	footer img.logo,
	header img.logo {
		margin: 64px auto 16px;
		width: 70vw;
		height: auto;
	}


	.phone img { height: 70px; margin-top: 16px; }

	.offer { padding: 24px 5% 0; margin: 32px 0 64px; }
	.offer h1 { font-size: 32px; }
	.offer h2 { font-size: 24px; }
	.offer .star img {
		height: 260px;
		width: 65vw;
		height: 35vw;
	}
	.offer .star p { font-size: 40px; padding-bottom: 8px; }
	.offer .star p span { font-size: 32px; }


    .menu-top p b { font-size: 28px; }
    .menu-top p em { font-size: 20px; }
    .menu-top p i { display: none; }
    .menu-top p span {
		margin-left: 0;
		font-size: 28px;
	}



}



