* {margin: 0; padding: 0; box-sizing: border-box; }
body {background-color: #EEEEEE; font-family: sans-serif;}
main {min-height: 1200px;}

li {padding-bottom: 4px; font-size: 18px; list-style: none;}
a {color: #000; text-decoration: none;}
a:hover {color: #FF8C00;}


.wrap {max-width: 1000px; width: 100%; margin: 0 auto;}
.part {margin-bottom: 20px; border-radius: 20px; overflow: hidden;}
.cont {background: #fff; min-height: 10px; margin-bottom: 10px; border-radius: 20px;}
.bl {padding: 20px;}


.header {min-height: 60px; position: sticky; top: 0; z-index: 3;}
.header-center {background-color: #EEEEEE; height: 100%; display: flex; justify-content: space-between; align-items: center; position: relative;}
.header-wrap {display: flex;}
.header-cont {width: 100px;}
.header-relative {position: relative;}
.header-logo-bl {color: #000;}
.header-bl {width: 100%; padding: 10px; cursor: pointer; display: flex; flex-direction: column; align-items: center; gap: 2px;}
.header-bl:hover {background-color: #FF8C00; color: #fff; border-radius: 10px;}
.header-menu-mini {background-color: #4F4F4F; width: 240px; min-height: 60px; padding: 20px 0; font-size: 18px; border-radius: 10px; box-shadow: 0 0 15px rgba(0, 0, 0, 0.3);}
.header-menu-mini {position: absolute; top: 100%; left: 50%; transform: translateX(-50%);}
.header-menu-mini a{color: #fff; padding: 15px 20px; display: block;}
.header-menu-mini a:hover{background-color: #FF8C00; color: #fff;}
.header-menu {background-color: #4F4F4F; max-height: 400px; overflow-y: auto; overflow-x: hidden; border-radius: 20px; position: absolute; top: 60px; left: 0;}
.header-menu-cont {display: grid; grid-template-columns: repeat(6, 1fr);}
.header-menu-bl {color: #fff; padding: 20px; cursor: pointer;}
.header-menu-bl {display: flex; flex-direction: column; align-items: center; gap: 10px;}

.header svg {width: 22px; height: 22px; fill: currentColor;}
.header-img {width: 22px; height: 22px; border-radius: 50%;}
.header span {font-size: 14px;}

.header-menu-bl:hover {background-color: #FF8C00; color: #fff; border-radius: 20px;}
.header-menu img{width: 40px; height: 40px;}
.header-menu span{font-size: 16px; text-align: center;}
.header-cart {background: #FF4500; color: #fff; width: 1.4rem; height: 1.4rem; border-radius: 50%; position: absolute; left: 54%; top: 6px;flex-shrink: 0; display: flex;justify-content: center;align-items: center;font-size: 16px;z-index: 5;}
.js-menu {display: none;} 
.js-menu.active {display: block;}


.home-banner-part {border-radius: 20px; overflow: hidden;}
.home-banner-part img {width: 100%; height: 200px; object-fit: cover;}
.home-h1 {padding-bottom: 20px;}
.cat-banner-part {background: linear-gradient(200deg, #EE82EE, #87CEFA); height: 100px; padding: 14px; border-radius: 20px; display: flex; align-items: center;}
.cat-banner-part img {background: #000; width: 60px; min-width: 60px; height: 60px; padding: 10px; margin: 0 10px 0 0; border-radius: 10px; object-fit: contain;}
.cat-list-part {display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px;}
.cat-list {background-color: #fff; border-radius: 20px; overflow: hidden;}
.cat-list:hover .cat-list-img img {transform: scale(1.05);}
.cat-list-img {height: 240px; overflow: hidden; display: block;}
.cat-list-info {padding: 16px;}
.cat-list-bl {height: 14px; display: flex; justify-content: space-between; align-items: center;}
.cat-list img {width: 100%; height: 100%; display: block; object-fit: contain; transition: transform 0.3s ease;}
.cat-list h3{font-size: 18px; font-weight: 500; line-height: 1.0;}
.cat-list h3:hover {color: #FF8C00;}
.cat-list-info a {height: 40px; margin: 2px 0 20px; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;}
.cat-status {font-size: 16px;}
.cat-price {font-size: 18px; font-weight: 600;}
.cat-text-part {margin-top: 50px; padding: 20px;}

.cat h1 {font-size: 22px;}
.cat h2 {padding-bottom: 10px; font-size: 20px;}
.cat p {padding-bottom: 40px; font-size: 19px;}
.cat-div {padding: 20px; font-size: 20px; font-weight: 600;}


.prod-top-part {display: flex; flex-direction: row-reverse; gap: 16px;}
.prod-bottom-part {background: #fff; min-height: 800px; padding: 20px;}
.prod-part {margin-bottom: 16px; border-radius: 20px; overflow: hidden;}

.prod-info-bl {flex: 3.1; display: flex; flex-direction: column; justify-content: center; gap: 14px;}
.prod-img-bl {flex: 6.9;}
.prod-bl {background: #fff;}

.prod-center {width: 90%; margin: 0 auto;}
.prod-between {min-height: 20px; display: flex; justify-content: space-between; align-items: center;}
.prod-link {color: #0071e3; font-size: 18px;}
.prod-link:hover {color: #FF8C00;}
.prod-status {font-size: 18px;}
.prod-price {font-size: 22px; font-weight: 600;}

.prod h1 {padding: 26px 0 20px; font-size: 21px;}
.prod h2 {padding-bottom: 20px; font-size: 21px;}
.prod h3 {padding: 0 20% 5px; font-size: 19px;}
.prod p {color: #363636; padding: 0 20% 40px; font-size: 19px; line-height: 1.3;}
.prod li {padding: 0 20% 10px;}

.slider {margin: 0 auto; position: relative; overflow: hidden; display: flex; align-items: center; justify-content: center;}
.slides {height: 660px; display: flex; transition: transform 0.5s;}
.slides img {width: 100%; border-radius: 20px; overflow: hidden; object-fit: contain; flex: 0 0 100%; display: flex; align-items: center; justify-content: center;}
.nav {width: 99%; position: absolute; display: flex; justify-content: space-between;}
.nav button {border: none; width: 50px; height: 50px; border-radius: 50%; cursor: pointer;}
.nav button span {font-size: 24px; color: #000; text-align: center;}
.nav button:hover {background: #FF8C00;}
.nav-dots {position: absolute;bottom: 20px; width: 100%; text-align: center;}
.nav-dots span {height: 10px; width: 10px; margin: 0 9px; background: #E8E8E8; border-radius: 50%; display: inline-block; cursor: pointer;}
.nav-dots .active {background: #FF8C00;}


.info {max-width: 1000px; margin: 0 auto;}
.info-cont {background: #fff; min-height: 50px; margin-bottom: 10px; border-radius: 20px;}
.info-bl {padding: 20px;}
.info-header {height: 50px; display: flex; justify-content: space-between; align-items: center;}
.info-footer {height: 50px; padding: 20px; display: flex; justify-content: flex-end; align-items: center;}
.info-img-cont {padding: 0 10px 10px 20px; display: flex; flex-wrap: wrap; justify-content: center;}
.info-img-bl {width: 100%; min-height: 70px; object-fit: contain; display: flex; justify-content: center; align-items: center;}
.info-img {width: 70px; height: 70px;}

.info h1, .info h2 {font-size: 20px; padding: 0 20px;}
.info p {font-size: 19px;}
.info span {font-size: 19px; display: block;}

.info-center {width: 70%; margin: 0 auto; padding: 20px 0;}
.info-form {min-height: 40px; margin-bottom: 10px; display: flex; justify-content: space-between; align-items: center; gap: 5px;}
.info-form label {width: 20%; font-size: 18px; display: flex; align-items: center;}
.info-form input, .info-form select {background: #f2f3f4; width: 80%; height: 40px; padding: 0 15px; font-size: 18px; border-radius: 20px; border: 2px solid #E8E8E8;}
.info-textrea {background: #f2f3f4; width: 100%; height: 200px; padding: 0 20px; font-size: 20px; border: 0;}


.user-img-cont {padding-bottom: 20px; display: flex; flex-wrap: wrap; justify-content: center; gap: 10px;}
.user-img {background: #E8E8E8; border-radius: 10px; border: 1px solid #E8E8E8; overflow: hidden; cursor: pointer; display: flex; align-items: center; justify-content: center; position: relative;}
.user-img:hover {background: #FF8C00; border: 1px solid #FF8C00;}
.user-img img {width: 125px; height: 110px;}
.user-img button {background: #9C9C9C; color: #fff; width: 100%; padding: 2px 0; position: absolute; bottom: 0; border: none; cursor: pointer; border-radius: 3px; font-size: 12px;}
.user-img button:hover {background: #FF4500;}
.user-editor {width: 80%; border: 1px solid #f2f3f4; border-radius: 10px;}
.user-bar {font-size: 16px; display: flex;}
.user-bar button {background: #fff; width: 50%; height: 40px; border: 0; border-radius: 10px 10px 0 0; cursor: pointer;}
.user-bar button:hover {background: #FF8C00;}
.user-bar button.active {background: #9C9C9C; color: #fff;}
.user-textrea {background: #f2f3f4; width: 100%; height: 200px; padding: 0 20px; font-size: 20px; border: 0;}


.footer {background: #4F4F4F; border-radius: 20px;}
.footer-link-part {padding: 20px 20px 30px;}
.footer-copy-part {height: 50px; font-size: 18px; border-top: 2px solid #fff; display: flex; justify-content: center; align-items: center;}
.footer span {color: #fff;}
.footer a {color: #E8E8E8; padding-top: 20px; font-size: 16px; font-weight: 600; display: inline-block;}
.footer a:hover {color: #FF8C00;}


.info-menu {width: 60px; height: 50px; border-radius: 10px 10px 0 0; position: relative; cursor: pointer; display: flex; align-items: center; justify-content: center;transition: background 0.2s ease; /* Плавная смена фона кнопки */}
input[type="file"] {display: none;}
.info-menu:hover .info-menu-bl {display: block;}
.info-menu:hover {background: #FF8C00;}
.info-menu-bl {background-color: #FF8C00; width: 200px; padding: 20px 0;right: 0; top: 100%;border-radius: 10px 0 10px 10px;position: absolute; z-index: 100;display: none;box-shadow: 0 4px 15px rgba(0, 0, 0, 0.15);}
.info-menu svg {width: 34px; height: 34px;display: block;}
.info-menu a {color: #000; padding: 20px;display: block;text-decoration: none; transition: background 0.2s ease;}
.info-menu a:hover {background: #fff; color: #000;}
.info-menu button {background: #FF8C00; color: #000; width: 100%; padding: 10px 20px; font-size: 16px; border: none;cursor: pointer; display: flex; align-items: center;}
.info-menu button:hover {background: #fff;}

.bl-mess {background: #FF4500; color: #fff; margin-bottom: 15px; padding: 12px; font-size: 22px; border-radius: 20px; text-align: center;}
.button {background: #0071e3; color: #fff; padding: 7px 18px; font-size: 16px; font-weight: 600; border: none; border-radius: 20px; cursor: pointer;transition: background 0.2s ease;}
.button:hover {background: #FF8C00;}

.list {background: #fff;border-radius: 20px;margin-bottom: 10px;display: flex;align-items: center;gap: 4px;}
.list-img {background: #CFCFCF;width: 90px;height: 90px;margin: 10px;padding: 6px;border-radius: 20px;overflow: hidden;}
.list-img img {width: 100%;height: 100%;object-fit: contain;transition: 0.3s;}
.list-img:hover img {transform: scale(1.1);}
.list-info {flex: 1; }
.list-info h3 {font-size: 18px;font-weight: 500;margin: 0 0 5px 0;display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;overflow: hidden;}
.list-info span {font-size: 18px;font-weight: 600;}
.list-control {width: 60px;height: 60px;display: flex;justify-content: center;align-items: center;}
.list-control button{    background: #0071e3;color: #fff;width: 30px;height: 30px;font-size: 30px;border-radius: 50%;border: none;cursor: pointer;transition: 0.2s;}
.list-control button:hover {background: #FF8C00;transform: scale(1.1);}

@media (max-width: 768px) {
body {background-color: #CFCFCF;}
.header {background-color: #CFCFCF; padding: 0 3px;}
.header-center {background-color: #CFCFCF;}
.header-wrap {display: contents;}
.header-icon-bl {width: 100%;}
.header-icon-cont {width: 100%;}
.header-menu {border-radius: 0;}
.header-menu-cont {display: grid; grid-template-columns: repeat(4, 1fr);}

.home-banner-part img {height: 140px;}
.cat {width: 94%;}
.cat-list-part {grid-template-columns: repeat(3, 1fr);}
.cat-list-info a {height: 38px;}
.cat-list-img {height: 200px;}

.prod-top-part {flex-direction: column-reverse; gap: 0;}
.prod-part {margin-bottom: 0; border-radius: 0;}
.prod-between {min-height: 40px;}
.prod-center {width: 90%; padding-top: 10px;}
.slides {height: 500px;}

.prod h1 {padding: 10px 0 10px; font-size: 21px;}
.prod h2 {padding: 40px 0 10px; font-size: 19px;}
.prod h3 {padding: 0 0 5px; font-size: 17px;}
.prod p {color: #363636; padding: 0 0 40px; font-size: 17px;}
.prod li {padding: 0 0 10px;}

.info {max-width: 94%;}
.info-center {width: 90%; margin: 0 auto; padding: 20px 0;}
.info-form {width: 100%; flex-direction: column; gap: 10px;}
.info-form label {width: 100%; align-items: left;}
.info-form input {width: 100%;}
.info-form select {width: 100%;}
.user-textrea {width: 100%;}
.user-editor {width: 100%;}

.footer {border-radius: 0;}
}

@media screen and (max-width: 500px) {
.header-menu-cont {display: grid; grid-template-columns: repeat(2, 1fr);}

.cat-list-part {grid-template-columns: repeat(2, 1fr);}
.cat-list-img {height: 140px;}

.slides {height: 300px;}
.nav button {border: none; width: 0; height: 0;}
.nav button span {font-size: 0; color: #000; text-align: center;}
}