@import url("../assets/bootstrap/bootstrap.min.css");
@import url("../assets/jquery/jquery-ui/jquery-ui.css");
@import url("../assets/aos/aos.css");
/* ============================================================
   ШРИФТЫ
   ============================================================ */
@import url("../assets/fonts/fontawesome-free-5.15.4-web/css/all.min.css");
@import url("../assets/fonts/bootstrap-icons-1.11.3/font/bootstrap-icons.min.css");
@import url("../assets/fonts/ColoPro/stylesheet.css");
/*
* ----------------------------------------------------------------------------------------
* General
* ----------------------------------------------------------------------------------------
*/ 
*, *::before, *::after {
	box-sizing: border-box;
}
html {
	scroll-behavior: smooth;
}
body {
	font-size: 16px;
	font-family: 'Roboto', -apple-system, BlinkMacSystemFont, sans-serif;
	color: #2c2c2c;
	line-height: 1.5;
	margin: 0;
	padding-top: 130px;
	background-color: #fff9f9;
	-webkit-font-smoothing: antialiased;
}
a {
	color: #8b0000;
	text-decoration: none;
	display: inline-block;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
a:hover {
	color: #ff5252;
	transform: translateY(-2px);
	text-shadow: 0 5px 15px rgba(255, 82, 82, 0.2);
}
a:focus {
	outline: 2px dashed #ff5252;
	outline-offset: 4px;
}
h1, h2, h3, h4, h5, h6 {
	margin: 0 0 1rem 0;
	font-family: "Georgia", serif;
	font-weight: 700;
	color: #1a1a1a;
	line-height: 1.2;
}
img {
	max-width: 100%;
	height: auto;
	vertical-align: middle;
	border-radius: 8px;
}
ul, ol {
	padding: 0;
	margin: 0;
	list-style: none;
}
/* ============================================================
   КНОПКА НАВЕРХ
   ============================================================ */
#button-to-top {
	position: fixed;
	bottom: 20px;
	right: 20px;
	height: 50px;
	width: 50px;
	display: none;
	place-items: center;
	border-radius: 50%;
	cursor: pointer;
	z-index: 100;
}
#button-to-top-progress-value {
	height: calc(100% - 15px);
	width: calc(100% - 15px);
	background-color: var(--bs-white);
	border-radius: 50%;
	display: grid;
	place-items: center;
	font-size: 1.5em;
	color: var(--bs-dark);
}
/* ============================================================
   КНОПКА ТЕЛЕФОНА
   ============================================================ */
#button-phone {
	position: fixed;
	bottom: 90px; 
	right: 20px;
	height: 50px;
	width: 50px;
	background-color: #25d366; 
	display: grid;
	place-items: center;
	border-radius: 50%;
	color: white;
	font-size: 24px;
	box-shadow: 0 4px 12px rgba(0,0,0,0.2);
	z-index: 101;
	text-decoration: none;
	animation: phone-shake 2s infinite;
	transition: transform 0.3s ease, background-color 0.3s ease;
}
#button-phone:active {
	transform: scale(0.9); 
	background-color: #1ebe57; 
}

@keyframes phone-shake {
 0% {
transform: rotate(0);
}
 10% {
transform: rotate(-15deg);
}
 20% {
transform: rotate(15deg);
}
 30% {
transform: rotate(-15deg);
}
 40% {
transform: rotate(15deg);
}
 50% {
transform: rotate(0);
}
 100% {
transform: rotate(0);
}
}

#button-phone::before {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	background-color: inherit;
	opacity: 0.6;
	z-index: -1;
	animation: phone-pulse 2s infinite;
}
 @keyframes phone-pulse {
 0% {
transform: scale(1);
opacity: 0.6;
}
 100% {
transform: scale(1.6);
opacity: 0;
}
}
.meat-phone-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	font-size: 1.6rem;
	font-weight: 900;
	color: #8b0000 !important;
	text-decoration: none !important;
	border: 2px solid #8b0000;
	border-radius: 4px;
	padding: 8px 15px;
	margin: 0;
	max-width: 95%;
	box-sizing: border-box;
}
.phone-text {
	letter-spacing: -0.5px;
}
.meat-phone-btn i {
	font-size: 1.3rem;
	flex-shrink: 0;
}
.meat-phone-btn:active {
	background-color: #8b0000;
	color: #fff !important;
}
/* ============================================================
   ВЕРТУШКА
   ============================================================ */
.load-more {
	display: none !important;
	padding: 10px 0;
	width: 100%;
}
/* ============================================================
   СООБЩЕНИЯ
   ============================================================ */
.alert {
	position: relative;
	padding: 30px 20px 20px;
	margin: 20px auto;
	max-width: 600px;
	border-radius: 15px;
	border: none !important;
	font-family: "Georgia", serif;
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
	overflow: visible;
	background: #fffafa;
}
.alert::before {
	content: "!";
	position: absolute;
	top: -20px;
	left: 50%;
	transform: translateX(-50%);
	width: 40px;
	height: 40px;
	background: var(--meat-red, #8b0000);
	color: white;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: bold;
	font-size: 1.2rem;
	border: 4px solid white;
	box-shadow: 0 4px 10px rgba(0,0,0,0.2);
	z-index: 5;
}
.alert-info {
	background: #fff5f5 !important;
	color: #4a1010 !important;
	border-bottom: 4px solid var(--meat-red, #8b0000) !important;
}
.alert-success {
	background: #f8fff8 !important;
	color: #1b4a1b !important;
	border-bottom: 4px solid #2d7a2d !important;
}
.alert-success::before {
	content: "✓";
	background: #2d7a2d;
}
.alert-danger {
	background: #fff0f0 !important;
	color: #8b0000 !important;
	border-bottom: 4px solid var(--accent, #ff5252) !important;
}
.alert-danger::before {
	background: var(--accent, #ff5252);
}
.alert strong, .alert b {
	display: block;
	margin-bottom: 10px;
	color: var(--meat-red, #8b0000);
	text-transform: uppercase;
	font-size: 0.9rem;
	letter-spacing: 1px;
}
.alert .btn-close {
	position: absolute;
	right: 15px;
	top: 15px;
}
/* ============================================================
   МЕНЮ
   ============================================================ */
header.meat-header {
 --meat-red: #8b0000;
 --accent: #ff5252;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 100000;
	font-family: "Georgia", serif;
}
header.meat-header .navbar-custom {
	background: linear-gradient(135deg, #7a0a0a 0%, #a51c1c 100%);
	min-height: 130px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0 20px;
	position: relative;
	box-shadow: 0 2px 10px rgba(0,0,0,0.2);
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
header.meat-header .navbar-custom.sticky {
	min-height: 65px;
	background: var(--meat-red);
}
header.meat-header .brand-glass-oval {
	background: rgba(255, 255, 255, 0.94);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	padding: 15px 35px;
	border-radius: 50% / 30px;
	text-align: center;
	box-shadow: 0 10px 30px rgba(0,0,0,0.2), inset 0 0 15px rgba(255, 255, 255, 1);
	border: 1px solid #ffffff;
	display: flex;
	flex-direction: column;
	gap: 2px;
	z-index: 10;
	transition: all 0.4s ease;
}
header.meat-header .navbar-custom.sticky .brand-glass-oval {
	background: transparent;
	border: none;
	box-shadow: none;
	backdrop-filter: none;
	padding: 0;
	transform: translateX(-30vw) scale(0.9);
}
header.meat-header .brand-title {
	font-style: italic;
	font-size: 1.6rem;
	font-weight: bold;
	color: #2a1010;
	text-decoration: none;
	line-height: 1;
	transition: all 0.3s ease;
}
header.meat-header .navbar-custom.sticky .brand-title {
	color: #ffffff !important;
}
header.meat-header .brand-loc, header.meat-header .brand-phone {
	font-family: sans-serif;
	transition: all 0.2s ease;
}
header.meat-header .brand-phone {
	font-family: sans-serif;
	color: var(--accent) !important;
	font-weight: 800;
	text-decoration: none;
	font-size: 1.1rem;
	display: block;
	margin-top: 5px;
	transition: all 0.2s ease;
	text-shadow: 0 1px 2px rgba(255, 82, 82, 0.1);
}
header.meat-header .brand-phone:active {
	transform: scale(1.05);
	filter: brightness(1.1);
}
header.meat-header .navbar-custom.sticky .brand-loc, header.meat-header .navbar-custom.sticky .brand-phone {
	opacity: 0;
	visibility: hidden;
	height: 0;
	margin: 0;
}
header.meat-header .menu-btn-right {
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
	display: flex;
	flex-direction: column;
	align-items: center;
	cursor: pointer;
	width: 60px;
	z-index: 110000;
	transition: 0.3s;
}
header.meat-header .burger-lines {
	width: 30px;
	height: 18px;
	position: relative;
	margin-bottom: 5px;
}
header.meat-header .burger-lines span {
	position: absolute;
	width: 100%;
	height: 4px;
	background: #ffffff;
	border-radius: 4px;
	box-shadow: 0 2px 4px rgba(0,0,0,0.3);
	transition: 0.3s;
}
header.meat-header .line-t {
	top: 0;
}
header.meat-header .line-b {
	bottom: 0;
}
header.meat-header .menu-hint {
	color: #ffffff;
	font-family: sans-serif;
	font-size: 0.75rem;
	font-weight: 900;
	text-transform: uppercase;
	text-shadow: 0 0 8px rgba(255, 82, 82, 0.8);
}
header.meat-header .menu-btn-right.active .line-t {
	transform: rotate(45deg);
	top: 7px;
	background: var(--accent) !important;
}
header.meat-header .menu-btn-right.active .line-b {
	transform: rotate(-45deg);
	bottom: 7px;
	background: var(--accent) !important;
}
header.meat-header .full-screen-menu {
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	background: rgba(255, 252, 252, 0.8) !important;
	backdrop-filter: blur(20px) saturate(120%);
	-webkit-backdrop-filter: blur(20px) saturate(120%);
	display: none;
	z-index: 105000;
	overflow-y: auto;
}
header.meat-header .full-screen-menu nav {
	padding-top: 50px;
	padding-bottom: 50px;
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
}
header.meat-header .full-screen-menu ul {
	list-style: none;
	padding: 0 !important;
	margin: 0 !important;
}
header.meat-header .full-screen-menu li {
	width: 100%;
	max-width: 90vw;
	margin: 0 auto 15px !important;
	text-align: center;
}
header.meat-header .full-screen-menu li a {
	font-style: italic;
	font-weight: 700;
	font-size: 2.2rem;
	color: #2a1010;
	text-decoration: none;
	display: inline-block;
	line-height: 1.3;
	position: relative;
	transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	z-index: 1;
}
header.meat-header .full-screen-menu li a:hover, header.meat-header .full-screen-menu li a:active {
	color: var(--accent);
	transform: scale(1.12) rotate(-1deg);
	text-shadow: 0 0 15px rgba(255, 82, 82, 0.4), 0 0 30px rgba(255, 255, 255, 1);
}
header.meat-header .full-screen-menu li a:active {
	color: var(--accent);
	transform: scale(1.1);
}
header.meat-header .heart-anim {
	color: var(--accent);
	display: inline-block;
	animation: beat 1.5s infinite;
}
@keyframes beat {
0%, 100% {
transform: scale(1);
}
50% {
transform: scale(1.2);
}
}

@media (max-width: 768px) {
header.meat-header .navbar-custom {
	min-height: 65px;
	background: var(--meat-red);
}
header.meat-header .brand-glass-oval {
	background: transparent;
	border: none;
	box-shadow: none;
	backdrop-filter: none;
	padding: 0;
	transform: translateX(-30vw) scale(0.9);
}
header.meat-header .brand-title {
	color: #ffffff !important;
	margin-left: 50px !important;
}
header.meat-header .brand-loc, header.meat-header .brand-phone {
	opacity: 0;
	visibility: hidden;
	height: 0;
	margin: 0;
}
header.meat-header .full-screen-menu nav {
	padding-top: 80px;
	padding-bottom: 40px;
	justify-content: flex-start;
}
header.meat-header .full-screen-menu li {
	margin-bottom: 5px !important;
	text-align: center;
}
header.meat-header .full-screen-menu li a {
	font-size: 1.6rem;
	padding: 10px 20px;
	width: 100%;
	box-sizing: border-box;
}
header.meat-header .full-screen-menu li a:hover, header.meat-header .full-screen-menu li a:active {
	transform: scale(1.05);
	text-shadow: 0 0 10px rgba(255, 82, 82, 0.3);
}
}

@media (max-height: 500px) {
header.meat-header .full-screen-menu li a {
	font-size: 1.3rem;
	margin-bottom: 2px !important;
}
header.meat-header .full-screen-menu nav {
	padding-top: 60px;
}
}

@media (max-width: 480px) {
header.meat-header .full-screen-menu li a {
	font-size: 1.5rem;
	line-height: 1.2;
}
}
/* ============================================================
   ПРИВЕТСТВИЕ
   ============================================================ */
#home-welcome {
 --accent: #ff5252;
	background: #ffffff;
	position: relative;
	padding: 15px 0 80px;
	margin: 30px 0 60px;
	z-index: 10;
}
#home-welcome .paper-edge {
	position: absolute;
	left: 0;
	width: 100%;
	height: 40px;
	background-color: #ffffff;
	z-index: 5;
}
#home-welcome .edge-top {
	top: -39px;
	clip-path: polygon(0% 100%, 5% 30%, 11% 80%, 17% 15%, 23% 65%, 28% 10%, 34% 85%, 40% 35%, 46% 90%, 52% 25%, 58% 75%, 64% 20%, 71% 80%, 77% 30%, 83% 95%, 89% 40%, 94% 75%, 100% 100%);
}
#home-welcome .edge-bottom {
	bottom: -39px;
	clip-path: polygon(0% 0%, 5% 70%, 11% 20%, 17% 85%, 23% 35%, 28% 90%, 34% 15%, 40% 65%, 46% 10%, 52% 75%, 58% 25%, 64% 80%, 71% 20%, 77% 70%, 83% 5%, 89% 60%, 94% 25%, 100% 0%);
}
#home-welcome .welcome-banner-box {
	position: relative;
}
#home-welcome .welcome-banner {
	background-image: url(../images/banner.jpg);
	height: 460px;
	background-size: cover;
	background-position: left center;
	background-repeat: no-repeat;
	background-origin: border-box;
	border-radius: 20px;
	position: relative;
	z-index: 2;
	border: 8px solid #fff;
	box-shadow: 0 15px 35px rgba(0,0,0,0.1);
}
#home-welcome .banner-sticker {
	position: absolute;
	top: 30px;
	left: -15px;
	background: #fbc02d;
	color: #333;
	padding: 10px 22px;
	font-weight: 900;
	font-size: 0.85rem;
	text-transform: uppercase;
	transform: rotate(-5deg);
	box-shadow: 5px 5px 15px rgba(0,0,0,0.15);
	border-radius: 4px;
	z-index: 3;
}
#home-welcome .welcome-text-block {
	padding-left: 20px;
}
#home-welcome .welcome-label {
	color: var(--accent);
	font-size: 0.75rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 3px;
	display: block;
	margin-bottom: 8px;
}
#home-welcome h1 {
	font-family: "Georgia", serif;
	font-style: italic;
	font-weight: 700;
	font-size: 1.85rem;
	color: #2a1515;
	line-height: 1.2;
	margin-top: 0;
	margin-bottom: 20px;
}
#home-welcome .description {
	font-size: 1.1rem;
	color: #5a5050;
	line-height: 1.6;
	margin-bottom: 30px;
}
#home-welcome .btn-more {
	display: inline-block;
	padding: 16px 45px;
	background: var(--accent);
	color: #ffffff !important;
	text-decoration: none;
	border-radius: 50px;
	font-weight: 700;
	box-shadow: 0 10px 25px rgba(255, 82, 82, 0.3);
	transition: 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
#home-welcome .btn-more:hover {
	transform: translateY(-5px);
	box-shadow: 0 15px 30px rgba(255, 82, 82, 0.4);
}
/* ============================================================
   ЗАГОЛОВКИ
   ============================================================ */
.headline {
	text-align: center;
	margin-bottom: 45px;
	padding: 0 15px;
}
.headline .title, .headline a {
	text-decoration: none !important;
	border-bottom: none !important;
	box-shadow: none !important;
	outline: none !important;
}
.headline-tag {
	color: #ff5252;
	font-size: 0.7rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 4px;
	display: block;
	margin-bottom: 8px;
}
.headline .title {
	font-family: "Georgia", serif;
	font-style: italic;
	font-weight: 700;
	font-size: 2.1rem;
	color: #2a1010;
	margin: 0;
	line-height: 1.1;
	text-decoration: none;
}
.headline-divider {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 15px;
	margin-top: 12px;
}
.headline-divider .line {
	height: 1px;
	width: 40px;
	background: #ff5252;
	opacity: 0.3;
}
.headline-divider .symbol {
	color: #ff5252;
	font-size: 0.8rem;
}
/* ============================================================
   КАРТОЧКА ТОВАРА
   ============================================================ */
.meat-card {
 --accent: #ff5252;
	background: #fff;
	border-radius: 35px;
	overflow: visible;
	box-shadow: 0 10px 25px rgba(0,0,0,0.04);
	transition: all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	cursor: pointer;
	border: 1px solid rgba(0,0,0,0.02);
	padding: 12px 0 25px;
	position: relative;
	margin-bottom: 30px;
}

.meat-card:hover {
	transform: translateY(-10px) scale(1.02);
	box-shadow: 0 20px 40px rgba(255, 82, 82, 0.15);
	border-color: rgba(255, 82, 82, 0.2);
}
.card-thumb-wrapper {
	padding: 0 12px;
}
.card-thumb {
	height: 210px;
	background-size: cover;
	background-position: center;
	border-radius: 25px;
	position: relative;
}
.card-badge {
	position: absolute;
	bottom: 12px;
	left: 12px;
	background: var(--accent);
	color: #fff;
	font-size: 0.65rem;
	font-weight: 800;
	padding: 4px 12px;
	border-radius: 50px;
	text-transform: uppercase;
}
.card-body {
	padding: 15px 20px 0;
	text-align: center;
}
.card-name {
	font-family: "Georgia", serif;
	font-style: italic;
	font-size: 1.4rem;
	color: #2a1010;
	margin-bottom: 8px;
}
.card-price-tag {
	display: inline-block;
	color: var(--accent);
	font-weight: 900;
	font-size: 1.9rem;
	line-height: 1;
	text-shadow: 1px 1px 0px #fff, 2px 2px 5px rgba(255, 82, 82, 0.2);
}
.card-price-tag small {
	font-size: 0.9rem;
	color: #999;
	font-weight: 400;
	margin-left: 3px;
}
.card-tap-hint {
	font-size: 0.7rem;
	color: #bbb;
	margin-top: 12px;
	text-transform: uppercase;
	letter-spacing: 1px;
}
/* ============================================================
   ОВЕРЛЕЙ (ВСПЛЫВАЮЩЕЕ ОКНО)
   ============================================================ */
.product-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(255, 252, 252, 0.85);
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
	z-index: 200000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 40px 20px;
}
.product-popup {
	background: #fff;
	width: 100%;
	max-width: 420px;
	max-height: 90vh;
	border-radius: 40px;
	padding: 35px;
	box-shadow: 0 30px 70px rgba(0,0,0,0.15);
	text-align: center;
	position: relative;
	display: flex;
	flex-direction: column;
	overflow: hidden !important;
}
.close-pop {
	position: absolute;
	top: 15px;
	right: 15px;
	width: 42px;
	height: 42px;
	background: #fff;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 5px 15px rgba(0,0,0,0.1);
	color: var(--accent);
	font-size: 1.8rem;
	font-weight: bold;
	pointer-events: auto !important;
	cursor: pointer;
	transition: 0.3s;
	z-index: 9999 !important;
}
.close-pop:hover {
	transform: rotate(90deg) scale(1.1);
	color: #333;
}
.pop-img {
	width: 100%;
	max-height: 220px;
	object-fit: cover;
	border-radius: 25px;
	margin-bottom: 20px;
	flex-shrink: 0;
	box-shadow: 0 10px 20px rgba(0,0,0,0.05);
}
.pop-title {
	font-family: "Georgia", serif;
	font-style: italic;
	color: #2a1010;
	margin-bottom: 10px;
	font-size: 1.8rem;
	flex-shrink: 0;
}
.pop-price-tag {
	background: rgba(255, 82, 82, 0.05);
	display: inline-block;
	padding: 8px 25px;
	border-radius: 15px;
	color: var(--accent);
	font-weight: 900;
	font-size: 1.8rem;
	margin-bottom: 15px;
	flex-shrink: 0;
}
.pop-price-tag span {
	font-size: 1rem;
	opacity: 0.6;
}
.pop-text-scroll {
	max-height: 200px;
	overflow-y: auto;
	padding-right: 5px;
	display: block !important;
	text-align: center;
	-webkit-overflow-scrolling: touch;
}
 .pop-text-scroll::-webkit-scrollbar {
width: 4px;
}
.pop-text-scroll::-webkit-scrollbar-thumb {
background: var(--accent);
border-radius: 10px;
}
.pop-text {
	color: #5a5050;
	line-height: 1.6;
	font-size: 1.1rem;
}
.pop-footer {
	margin-top: 20px;
	font-size: 0.95rem;
	color: #ff5252;
	font-style: italic;
	font-weight: 600;
	padding-bottom: 10px;
}
.admin-pencil {
	position: absolute;
	top: 20px;
	right: 25px;
	z-index: 20;
	background: #fff;
	width: 38px;
	height: 38px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	box-shadow: 0 5px 15px rgba(0,0,0,0.1);
	color: #333;
	text-decoration: none !important;
	transition: 0.3s;
}
.admin-pencil:hover {
	background: var(--accent);
	color: #fff;
	transform: scale(1.1);
}
/* ============================================================
   КОНТАКТЫ
   ============================================================ */
#marshmallow-meat-contacts {
 --wine: #8b0000;
 --accent: #ff5252;
 --bg: #fffcfc;
	background: var(--bg);
	font-family: "Georgia", serif;
	overflow: visible;
}
#marshmallow-meat-contacts .m-title {
	font-weight: 900;
	font-size: 3rem;
	color: #2a1010;
	font-style: italic;
}
#marshmallow-meat-contacts .text-accent {
	color: var(--accent);
}
#marshmallow-meat-contacts .m-subtitle {
	text-transform: uppercase;
	letter-spacing: 3px;
	color: #a99;
	font-weight: 800;
	font-family: sans-serif;
	font-size: 0.75rem;
}
#marshmallow-meat-contacts .m-card {
	background: #ffffff;
	border-radius: 40px;
	padding: 40px 30px;
	text-align: center;
	height: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	transition: all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	border: 1px solid rgba(139, 0, 0, 0.03);
	box-shadow: 0 20px 40px rgba(139, 0, 0, 0.06);
}
#marshmallow-meat-contacts .m-card:hover {
	transform: translateY(-15px);
	box-shadow: 0 30px 60px rgba(139, 0, 0, 0.12);
}
#marshmallow-meat-contacts .main-card {
	border: 1px solid rgba(139, 0, 0, 0.1);
	background: linear-gradient(to bottom, #ffffff, #fffafa);
}
/* ИКОНКИ И БЛОБЫ */
#marshmallow-meat-contacts .m-icon-box {
	position: relative;
	width: 70px;
	height: 70px;
	margin-bottom: 25px;
	display: flex;
	align-items: center;
	justify-content: center;
}
#marshmallow-meat-contacts .main-icon {
	width: 100px;
	height: 100px;
}
#marshmallow-meat-contacts .m-icon-box i {
	position: relative;
	z-index: 5;
	font-size: 2rem;
	color: var(--wine);
}
#marshmallow-meat-contacts .main-icon i {
	font-size: 3rem;
}
#marshmallow-meat-contacts .m-blob {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	opacity: 0.15;
	animation: m-blob-anim 8s infinite alternate;
}
#marshmallow-meat-contacts .color-pink .m-blob, #marshmallow-meat-contacts .color-red .m-blob {
	background: var(--accent);
}
#marshmallow-meat-contacts .color-wine .m-blob {
	background: var(--wine);
	opacity: 0.2;
}
 @keyframes m-blob-anim {
 0% {
border-radius: 40% 60% 70% 30% / 40% 40% 60% 50%;
transform: rotate(0deg) scale(1);
}
 100% {
border-radius: 70% 30% 30% 70% / 60% 70% 40% 30%;
transform: rotate(180deg) scale(1.2);
}
}
#marshmallow-meat-contacts .m-label {
	font-family: sans-serif;
	font-weight: 800;
	text-transform: uppercase;
	font-size: 0.7rem;
	color: #b99;
	letter-spacing: 1px;
	margin-bottom: 10px;
}
#marshmallow-meat-contacts .m-val {
	font-size: 1.3rem;
	font-weight: bold;
	color: #2a1010;
	text-decoration: none;
	transition: 0.3s;
}
#marshmallow-meat-contacts .m-val:hover {
	color: var(--accent);
}
#marshmallow-meat-contacts .m-val-big {
	font-size: 1.8rem;
	font-weight: 900;
	color: #2a1010;
	line-height: 1.1;
	margin: 0;
}
#marshmallow-meat-contacts .m-val-small {
	font-size: 1rem;
	color: #5a4a4a;
	margin: 0;
}
#marshmallow-meat-contacts .m-status {
	margin-top: 20px;
	background: #fff5f5;
	color: var(--wine);
	padding: 6px 20px;
	border-radius: 50px;
	font-weight: 800;
	font-size: 0.75rem;
	box-shadow: 0 5px 15px rgba(139, 0, 0, 0.05);
	text-align: center !important;
}
#marshmallow-meat-contacts .map-polaroid-frame {
	position: relative;
	background: #ffffff;
	padding: 15px;
	border-radius: 60px;
	box-shadow: 0 30px 70px rgba(139, 0, 0, 0.1);
	border: 1px solid rgba(139, 0, 0, 0.05);
}
#marshmallow-meat-contacts .map-clean {
	height: 500px;
	width: 100%;
	border-radius: 50px;
	overflow: hidden;
	-webkit-mask-image: -webkit-radial-gradient(white, black);
	filter: sepia(0.2) contrast(0.9) saturate(1.1);
}
#marshmallow-meat-contacts .map-polaroid-frame::after {
	content: "";
	position: absolute;
	top: 15px;
	left: 15px;
	right: 15px;
	bottom: 15px;
	border-radius: 50px;
	box-shadow: inset 0 0 20px rgba(0,0,0,0.05);
	pointer-events: none;
	z-index: 2;
}
#marshmallow-meat-contacts .map-photo-tag {
	position: absolute;
	bottom: 10%;
	right: 40px;
	width: 250px;
	background: #fff;
	padding: 12px 12px 30px;
	box-shadow: 0 15px 35px rgba(0,0,0,0.15);
	transform: rotate(3deg);
	border-radius: 5px;
	z-index: 10;
}
#marshmallow-meat-contacts .map-photo-tag img {
	width: 100%;
	height: 180px;
	object-fit: cover;
	border-radius: 3px;
	margin-bottom: 12px;
}
#marshmallow-meat-contacts .map-photo-tag p {
	font-family: "Georgia", serif;
	font-style: italic;
	font-weight: bold;
	color: var(--wine);
	text-align: center;
	margin: 0;
}

@media (max-width: 991px) {
#marshmallow-meat-contacts .side-card {
	padding: 30px 15px;
}
#marshmallow-meat-contacts .main-card {
	padding: 50px 20px;
}
#marshmallow-meat-contacts .m-val-big {
	font-size: 1.5rem;
}
#marshmallow-meat-contacts .map-photo-tag {
	display: none;
}
}
/* ============================================================
   НИЗ
   ============================================================ */
#footer-glassy {
 --meat-red: #8b0000;
 --accent: #ff5252;
	position: relative;
	margin-top: 100px;
	padding: 0 0 30px;
	background: var(--meat-red);
	color: #ffffff;
	font-family: "Georgia", serif;
	border: none;
	z-index: 100;
	overflow: visible !important;
}
.css-wave-container {
	position: absolute;
	top: -59px;
	left: 0;
	width: 100%;
	height: 60px;
	overflow: hidden;
	pointer-events: none;
	z-index: 101;
}
.wave-logic {
	position: absolute;
	top: 0;
	left: 50%;
	width: 250%;
	height: 600px;
	background: var(--meat-red);
	border-radius: 50% 50% 0 0;
	transform: translateX(-50%);
}
#footer-glassy .ya-share2__badge, #footer-glassy .ya-share2__icon {
	border-radius: 50% !important;
}
#footer-glassy .f-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: relative;
	z-index: 50;
}
#footer-glassy .f-copy {
	font-size: 1rem;
	color: #ffffff;
	line-height: 1.4;
	text-shadow: 0 1px 2px rgba(0,0,0,0.2);
}
#footer-glassy .f-copy span {
	font-weight: 800;
	color: var(--accent);
}
#footer-glassy .f-dev {
	font-size: 0.75rem;
	color: rgba(255, 255, 255, 0.7);
	text-decoration: none;
	transition: color 0.3s;
	display: inline-block;
	margin-top: 5px;
}
#footer-glassy .f-dev:hover {
	color: var(--accent);
}
#footer-glassy .share-pill {
	background: #ffffff;
	padding: 8px 22px;
	border-radius: 50px;
	box-shadow: 0 10px 25px rgba(0,0,0,0.2);
}
#footer-glassy .f-counter {
	height: 32px;
	filter: brightness(0) invert(1);
	opacity: 0.6;
	transition: opacity 0.3s;
}
#footer-glassy .f-counter:hover {
	opacity: 1;
}
.visually-hidden {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0,0,0,0);
	border: 0;
}

@media (max-width: 768px) {
#footer-glassy {
	margin-top: 30px;
	padding: 0 0 30px;
}
.wave-logic {
	width: 450%;
	top: 2px;
}
#footer-glassy .f-row {
	flex-direction: column;
	gap: 20px;
	text-align: center;
}
}
/*
* ----------------------------------------------------------------------------------------
* СТРАНИЦА
* ----------------------------------------------------------------------------------------
*/
#meat-page-style {
	background-color: #fff9f9;
	position: relative;
	overflow: visible;
	display: block;
}
#meat-page-style .white-container {
	background-color: #ffffff;
	position: relative;
	padding: 60px 0;
	z-index: 10;
	box-shadow: 0 5px 15px rgba(0,0,0,0.02);
}
#meat-page-style .paper-edge {
	position: absolute;
	left: 0;
	width: 100%;
	height: 40px;
	background-color: #ffffff;
	z-index: 5;
}
#meat-page-style .edge-top {
	top: -39px;
	clip-path: polygon(0% 100%, 5% 30%, 11% 80%, 17% 15%, 23% 65%, 28% 10%, 34% 85%, 40% 35%, 46% 90%, 52% 25%, 58% 75%, 64% 20%, 71% 80%, 77% 30%, 83% 95%, 89% 40%, 94% 75%, 100% 100%);
}
#meat-page-style .edge-bottom {
	bottom: -39px;
	clip-path: polygon(0% 0%, 5% 70%, 11% 20%, 17% 85%, 23% 35%, 28% 90%, 34% 15%, 40% 65%, 46% 10%, 52% 75%, 58% 25%, 64% 80%, 71% 20%, 77% 70%, 83% 5%, 89% 60%, 94% 25%, 100% 0%);
}
#meat-page-style .page-title {
	font-size: 2.5rem;
	font-weight: 900;
	color: #2c2c2c;
	text-transform: uppercase;
	margin-bottom: 10px;
}
#meat-page-style .meat-separator {
	width: 60px;
	height: 5px;
	background: #8b0000;
	margin: 20px auto 40px;
}
#meat-page-style .page-content {
	font-size: 1.15rem;
	line-height: 1.8;
	color: #333;
}

@media (max-width: 768px) {
#meat-page-style .page-title {
	font-size: 1.8rem;
}
#meat-page-style {
	padding: 40px 0;
}
}
/*
* ----------------------------------------------------------------------------------------
* Error Page
* ----------------------------------------------------------------------------------------
*/

#error-meat-major {
	background-color: #fff9f9 !important;
	padding: 100px 0 !important;
	position: relative !important;
	overflow: visible !important;
	display: block !important;
}
#error-meat-major .white-container {
	background-color: #ffffff !important;
	position: relative !important;
	padding: 60px 0 !important;
	z-index: 10 !important;
}
#error-meat-major .paper-edge {
	position: absolute !important;
	left: 0 !important;
	width: 100% !important;
	height: 40px !important;
	background-color: #ffffff !important;
	z-index: 5 !important;
}
#error-meat-major .edge-top {
	top: -39px !important;
	clip-path: polygon(0% 100%, 5% 30%, 11% 80%, 17% 15%, 23% 65%, 28% 10%, 34% 85%, 40% 35%, 46% 90%, 52% 25%, 58% 75%, 64% 20%, 71% 80%, 77% 30%, 83% 95%, 89% 40%, 94% 75%, 100% 100%) !important;
}
#error-meat-major .edge-bottom {
	bottom: -39px !important;
	clip-path: polygon(0% 0%, 5% 70%, 11% 20%, 17% 85%, 23% 35%, 28% 90%, 34% 15%, 40% 65%, 46% 10%, 52% 75%, 58% 25%, 64% 80%, 71% 20%, 77% 70%, 83% 5%, 89% 60%, 94% 25%, 100% 0%) !important;
}
#error-meat-major .giant-display-wrapper {
	max-width: 500px !important;
	margin: 0 auto !important;
}
#error-meat-major .giant-svg {
	width: 100% !important;
	height: auto !important;
	animation: majorFloat 4s infinite ease-in-out !important;
}
#error-meat-major .svg-digit-main {
	fill: #8b0000 !important;
	font-weight: 900 !important;
	font-size: 200px !important;
}
#error-meat-major .svg-digit-shadow {
	fill: #f0f0f0 !important;
	font-weight: 900 !important;
	font-size: 200px !important;
	transform: translate(6px, 6px) !important;
}
#error-meat-major .fw-black {
	font-size: 1.8rem !important;
	font-weight: 900 !important;
	margin-top: -10px !important;
	color: #2c2c2c !important;
}
#error-meat-major .separator {
	width: 60px !important;
	height: 5px !important;
	background: #8b0000 !important;
	margin: 20px auto !important;
}
#error-meat-major .btn-major {
	display: inline-block !important;
	background: #8b0000 !important;
	color: #fff !important;
	padding: 15px 45px !important;
	font-weight: 900 !important;
	text-decoration: none !important;
	margin-top: 20px !important;
}
@keyframes majorFloat {
 0%, 100% {
transform: translateY(0);
}
 50% {
transform: translateY(-15px);
}
}
