/*Specification*/
@font-face {
	font-family: "Proxima Nova";
	src: url(font/ProximaNova-Regular.ttf) format('truetype');
	font-weight: normal;
}

@font-face {
	font-family: "Proxima Nova";
	src: url(font/ProximaNova-Bold.ttf) format('truetype');
	font-weight: bold;
}

body {
	padding: 0;
	margin: 0;
	font-family: "Proxima Nova", sans-serif;
	font-weight: normal;
	font-size: 17px;
	color: #444852;
	line-height: 1.56em;
}

* {
	box-sizing: border-box;
}

h1, h2, h3, h4, h5, h6 {
	padding: 0;
	margin: 0;
	color: #1C3943;
	font-weight: bold;
	line-height: 1.2em;
	text-align: center;
}

p {
	margin: 0;
}

ul, li {
	padding: 0;
	margin: 0;
	list-style-position: inside;
	list-style-type: disc;
/*	display: block;*/
}

a {
	font-size: 17px;
	text-decoration: none;
}

h2 {
	font-size: 40px;
	padding-bottom: 40px;
}

h3 {
	font-size: 24px;
	text-align: left;
}

h4 {
	text-align: center;
	font-size: 20px;
	font-weight: normal;
	text-transform: uppercase;
}

.container {
	width: 1376px;
	margin: 0 auto;

}

/*Hero Section*/

header {
	position: relative;
}

.burger-menu {
  position: fixed;
  top: 0;
  right: -100%;
  width: 80%;
  height: 100vh;
  background-color: #1C3943;
  color: #fafafa;
  transition: right 0.4s ease;
  z-index: 999;
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding: 28px 20px 0 40px;
}

#burger-menu:target {
  right: 0;
}

.close-menu {
  display: block;
  text-align: right;
  border-bottom: 1px solid rgba(255, 255, 255, 0.20);
  padding-bottom: 24px;
}

.close-menu__icon {
  width: 36px;
  height: 100%;
  cursor: pointer;
}

/* === MENU ITEMS === */
.menu-nav__items {
	display: flex;
	flex-direction: column;
	gap: 28px;
	list-style: none;
	margin-top: 20px;
}

.menu-nav li {
	list-style: none;
}

.menu-nav-item a {
  text-decoration: none;
  color: #fafafa;
  font-size: 17px;
  transition: color 0.6s ease;
}

.menu-nav-item a:hover {
  opacity: 0.7;
}

.contacts-block {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding-top: 40px;
}

.menu-nav {
	display: flex;
	flex-direction: column;
	gap: 40px;
}

.menu-contacts-block {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.menu-contacts-row {
	display: flex;
	flex-direction: row;
	gap: 8px;
}

.menu-contacts-icon {
	display: block;
	border-radius: 40px;
	background: #f2f2f2;
}

.menu-contacts-icon__item {
	display: block;
	padding: 16px;
	margin: 0 auto;
}

.menu-contacts-icon:hover {
	opacity: 0.7;
}

.contacts-bottom {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.contacts-phone a,
.contacts-email a {
	text-decoration: none;
	font-size: 28px;
	color: #FFB400;
	font-weight: bold;
}

.nav-topic__burger {
	display: block;
	margin-bottom: 20px;
}

.header-top__burger {
  display: none;
  position: relative;
  padding: 12px;
  /*z-index: 1000;*/
}

.header-top__burger img {
  width: 36px;
  height: 100%;
}

.hero{
	display: block;
	height: 100%;
	overflow: hidden;

}

.header {
	margin: 0 auto;
	border-bottom: 1px solid rgba(255, 255, 255, 0.20);
	background: #1C3943;
}

.header-top {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 28px 0;
}

.header-top__nav {
	display: flex;
	align-items: center;
	gap: 28px;
	margin: 0;
	padding: 0;
	list-style: none;

}

.header-top__menu li {
	list-style: none;
}

.header-top__item a {
	font-size: 17px;
	color: #F2F2F2;
	font-weight: regular;
	opacity: 1;
	padding: 0;
}

.header-top__item:hover,
.header-top__item a.active {
	opacity: 0.7;
}

.header-right {
	display: block;
}

.header-top__phone {
	display: block;
	text-align: right;
	font-size: 24px;
	color: #FFB400;
	font-weight: bold;
	opacity: 1;
}

.header-top__phone:hover {
	opacity: 0.7;
}

.header-top__burger {
	display: none;
}

.offer {
	display: flex;
	flex-direction: column;
	gap: 28px;
	padding: 80px 0 40px 0;
	background: #1C3943;
	align-items: center;

}

.offer__title {
	font-size: 80px;
	color: #F2F2F2;
}

.offer__description {
	width: 640px;
	font-size: 28px;
	color: #F2F2F2;
	text-align: center;
	line-height: 1.36em;
}

.content-wrapper {
	display: flex;
	flex-direction: column;
	gap: 12px;
	width: 80%;
	margin: 40px auto;

}

.content-wrapper h2 {
	text-align: left;
	padding: 20px 0 0 0;
}

.qr-text {
	color: #fafafa;
	font-size: 15px;
	text-align: center;
}

.qr-box {
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transition: 
    max-height 0.6s ease,
    opacity 0.4s ease;
}

.qr-box.open {
  max-height: 500px; /* більше ніж реальна висота */
  opacity: 1;
}


/*Footer*/

footer {
	padding-top: 62px;
	background: #1C3943;
}

.footer-wrapper {
	display: flex;
	justify-content: space-between;
}

.logo-section {
	display: block;
	width: 360px;
	margin-right: 76px;
}

.footer-text {
	line-height: 1.36em;
	padding: 20px 0 40px 0;
	color: #F2F2F2;
}

.payment-options {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.payment-item {
	display: flex;
	width: 51px;
	height: 51px;
	border-radius: 4px;
	border: 1px solid #295260;
	align-items: center;
	justify-content: center;

}

.nav-section {
	display: flex;
	justify-content: space-between;
	width: 1030px;
	padding-bottom: 40px;
}

.nav-topic {
	font-size: 14px;
	font-weight: normal;
	color: #94A9B2;
	line-height: 1.2em;
	letter-spacing: 0.2em;
	text-transform: uppercase;
}

.nav-items {
	margin-top: 40px;
}

.nav-column li {
	list-style: none;
}

.nav-item {
	padding-bottom: 28px;
}

.nav-item p {
	font-size: 17px;
	font-weight: normal;
	color: #F2F2F2;
	line-height: 1.2em;
}

.nav-item a {
	font-size: 17px;
	font-weight: normal;
	color: #F2F2F2;
	line-height: 1.2em;
}

.nav-item a:hover {
	opacity: 0.6;
}

.nav-column {
	padding-right: 53px;
}

.nav-column:last-child {
	padding-right: 0;
}

.contacts-block {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding-top: 40px;
}

.contacts-row {
	display: flex;
	flex-direction: row;
	gap: 4px;
}

.contacts-icon {
	display: block;
	border-radius: 4px;
	background: #f2f2f2;
}

.contacts-icon__item {
	display: block;
	padding: 12px;
	margin: 0 auto;
}

.contacts-icon:hover {
	opacity: 0.7;
}

.copyright {
	padding: 28px 0;
	border-top: 1px solid #295260;
}

.copyright__text {
	font-size: 15px;
	font-weight: normal;
	color: #94A9B2;
	text-align: center;
}

/*Content Section*/

.content-wrapper {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.content-wrapper ul {
	list-style-type: circle;
}

/* Responsive Design */

/*Large: 1200px - 1399px*/
 
@media (max-width: 1399px) {
.container {
	max-width: 1140px;
	margin: 0 auto;
}

body {
	font-size: 15px;
}

.header-top__item a {
	font-size: 15px;
}
}

/*Large: 992px - 1199px*/
 
@media (max-width: 1199px) {

.container {
	max-width: 960px;
	padding: 0 20px;
}

.header-top {
	position: relative;
	height: 127px;
}

.header-right {
	position: absolute;
	top: 40px;
	right: 0;
}

.header-top__menu {
	position: absolute;
	white-space: nowrap;
	top: 104px;
	left: 50%;
	transform: translate(-50%, -50%);
	justify-content: space-between;
}

.footer-wrapper {
	display: block;
	position: relative;
}

.logo-section {
	display: flex;
	width: 100%;
	justify-content: space-between;
}

.logo-description {
	display: flex;
}

.logo-footer {
	margin-right: 40px;
}

.footer-text {
	display: block;
	width: 320px;
	padding: 0;
}

.nav-section {
	padding: 40px 0;
	width: 100%;
}

.payment-options {
	display: flex;
	margin-right: 8px;
}

.payment-options:last-child {
	margin-right: 0;
}

}

/*Medium: 768px - 991px*/

@media (max-width: 991px) {

.container {
	max-width: 720px;
}

.content-wrapper {
	width: 100%;

}

.logo-section {
	display: block;
}

.payment-options {
	width: 270px;
	padding-top: 28px;
}
}

/*Small: 375px - 767px*/

@media (max-width: 767px) {

.container {
	display: block;
	width: 365px;
	padding: 0 5px;
	margin: 0 auto;
}

.header-top__burger {
    display: block;
}

h2 {
	font-size: 28px;
	padding-bottom: 28px;
}

h3 {
	font-size: 22px;
}

h4 {
	font-size: 18px;
}

.header-top {
	height: auto;
	padding: 20px 0 8px 0;
}

.header-top__logo img {
	width: 194px;
}

.header-top__menu {
	display: none;
}

.header-right {
	display: none;
}

.header-top__burger {
	display: block;
}

.offer {
	padding: 40px 12px;
}

.offer__title {
	font-size: 40px;
}

.offer__description {
	width: 100%;
	font-size: 18px;
}

.footer-wrapper {
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align: center;
	width: 100%;
}

.logo-section {
	width: 100%;
}

.logo-description {
	display: flex;
	flex-direction: column;
	width: 100%;
	padding: 0 28px;
}

.logo-footer {
	display: block;
	margin: 0 auto;
	margin-bottom: 20px;
}

.footer-text {
	width: 100%;
}

.payment-options {
	display: flex;
	flex-direction: row;
	gap: 8px;
	width: 100%;
	justify-content: center;
}

.nav-section {
	display: flex;
	flex-direction: column;
	gap: 20px;
	width: 100%;
}

.nav-column {
	display: flex;
	flex-direction: column;
	width: 100%;
	gap: 0;
	justify-content: center;
	padding-right: 0;
}

.nav-items {
	margin-top: 16px;
}

.nav-item {
	padding-bottom: 16px;
	font-size: 17px;
	font-weight: normal;
	color: #1C3943;
	line-height: 1.2em;
}

.contacts-block {
	display: block;
	margin: 0 auto;
	padding-top: 20px;
}

.contacts-row {
	padding-bottom: 12px;
	gap: 12px;
}

}

/*ExtraSmall: 0 - 374px*/

@media (max-width: 374px) {

.container {
	max-width: 310px;
	padding: 0 5px;
}

* {
	box-sizing: content-box;
}

a {
	font-size: 15px;
}

.header-top__logo img {
	width: 194px;
}

.header-top {
	padding: 20px 0 8px 0;
}

.offer__description {
	width: auto;
}

.logo-description {
	width: auto;
}
}