BODY {
  background: white url('/img/bg.jpg') repeat-x top left;
  color: black;
  font-size: 14px;
  font-family: arial;
  margin: 0px;
}
A {
  color: rgb(137,169,40);
}
TD {
  font-size: 14px;
}
DIV.cap {
  width: 100%;
  height: 100%;
}
DIV.house {
  background: url('/img/house.jpg') no-repeat top left;
  width: 100%;
  height: 100%;
}
TD.fence {
  background: url('/img/fence.png') repeat-x;
  width: 100%;
  height: 100%;
  text-align: right;
}
DIV.flowers_left {
  background: url('/img/flowers_left.png') no-repeat top left;
  width: 100%;
  height: 100%;
}
DIV.flowers_right {
  background: url('/img/flowers_right.png') no-repeat top right;
  width: 100%;
  height: 100%;
}
TD.menu_bg {
  background: url('/img/menu_bg.jpg') repeat-x;
  width: 100%;
  padding-bottom: 8px;
  text-align: center;
}
TD.menu_bg A{
  font-size: 16px;
  color: black;
  text-decoration: none;
}
A#active{
  color: rgb(99,136,39);
}
DIV.bottom {
  width: 100%;
  height: 109px;
  background: url('/img/bottom_bg.jpg') repeat-x;
}
TABLE.apple_top {
  width: 100%;
  height: 100%;
  background: url('/img/apple_top.jpg') no-repeat bottom left;
}
DIV.apple_bottom {
  width: 100%;
  height: 100%;
  background: url('/img/apple_bottom.jpg') no-repeat left;
}
TD.flowers_top {
  width: 100%;
  height: 100%;
  background: url('/img/flowers_top.jpg') no-repeat bottom right;
}
DIV.flowers_bottom {
  width: 100%;
  height: 100%;
  background: url('/img/flowers_bottom.jpg') no-repeat top right;
}

A:link {
  font-size: 14px;
}
A:hover {
  font-size: 14px;
}
A:active {
  font-size: 14px;
}
A:visited {
  font-size: 14px;
}
TD#body {
  font-size: 14px;
  color: rgb(102,102,102);
  text-align: justify;
}
TD#bottom_left {
  text-align: left;
  vertical-align: middle;
  padding-left: 40px;
}
TD#bottom_right {
  text-align: right;
  vertical-align: middle;
  padding-right: 40px;
  font-size: 14px;
}

/* CSS для publication  */
TABLE.publication TR TD{
  font-size: 12px;
}
TABLE.publication TR TD P A{
  font-size: 18px;
}
TD.hr {
  background-color: red;
  background: url('/img/hr.jpg') repeat-x;
  height: 1px;
}
.error {
  text-align: center;
  font-size: 12px;
  color: red;
  font-weight: bold;
}
.notice {
  text-align: center;
  font-size: 12px;
  color: blue;
  font-weight: bold;
}
/* CSS для publication  */

.footer { color: rgb(230,230,230); font-size: 11px; }
.footer A { color: rgb(230,230,230); font-size: 11px; }

.separator455 { width: 455px; height: 100%; }
.separator130 { width: 130px; height: 100%; }
.ga_text { padding-top: 30px; }



.block .h { background: url('/img/heading_bg.jpg'); height: 24px; font-size: 14px; color: rgb(255,255,255); text-align: center; vertical-align: middle; padding-left: 10px; padding-right: 10px; }
.block .h A { color: rgb(255,255,255); }
.block .hl { background: url('/img/heading_left.jpg'); width: 2px; height: 24px; }
.block .hr { background: url('/img/heading_right.jpg'); width: 2px; height: 24px; }
.block .hebg { background: url('/img/heading_empty_bg.png'); width: 100%; height: 24px; }
.block .area { background-color: rgb(255,248,216); padding: 10px; font-size: 12px; }
.block .area TD, .block .area A { font-size: 12px; }
.area ul, .area ol { position:relative; }
.area ul li, .area ol li { list-style-position:inside; }
.block .hrl, .block .hrd { height: 1px; }
.block .hrl { background-color: rgb(184,201,110); }
.block .hrd { background-color: rgb(137,170,40); }

.block .hrg { height: 1px; border-top: 1px dotted rgb(137,170,40); }

.block div.date { background: url('/img/date.jpg') no-repeat;; width: 33px; height: 42px; text-align: center; color: rgb(255,255,255); margin-top: 7px; margin-bottom: 7px; }
.block IMG.preview { border: 4px solid rgb(255,255,255); width: 40px; height: 40px; float: left; margin-right: 10px; }
.block div.date .day { font-size: 22px; font-weight: bold; }
.block div.date .month { font-weight: bold; }

FORM#search { padding: 0px; margin: 0px; }
FORM#search INPUT#text { width: 90%; }

DIV.video { float: left; width: 195px; margin-right: 10px; }
DIV.video IMG { border: 4px solid rgb(255,255,255); }

.comment { text-align: center; padding: 5px; }
.area .comment .subject { font-size: 20px; font-weight: bold; }
.comment TEXTAREA { width: 450px; height: 100px; font-family: arial; font-size: 12px; }
.comment BUTTON { width: 450px; }

DIV.dotted_hr { height: 1px; margin-top: 10px; margin-bottom: 10px; border-bottom: 1px dotted rgb(0,0,0); }
#gallery .element { float: left; margin-right: 10px; margin-bottom: 10px; }
#gallery .element .describe INPUT { width: 100%; }
#gallery .element .delete { float: left; }
#gallery .element .delete A { font-weight: bold; color: rgb(255,0,0); font-size: 18px; }
#gallery .element .select { float: right; }

.photos .photo, .main .photo {
float: left;
padding: 2px;
border: 8px solid rgb(255,255,255);
text-align: center;
margin-right: 10px;
margin-bottom: 10px;
}
.alboms .albom {
float: left;
padding: 2px;
text-align: center;
margin-right: 10px;
margin-bottom: 10px;
}
.alboms .albom IMG{
border: 8px solid rgb(255,255,255);
margin-bottom: 2px;
}
.alboms .albom SPAN {
font-size: 24px;
}
.cb {
clear: both;
}
a.more {
font-size: 12px;
}
span.date {
font-size: 10px;
color: rgb(100,100,100);
}
.subsubj a {
color: #003300;
font-weight: bold;
}

.catalog_items {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.catalog_item-image {
    width: 300px;
}
.catalog_item-image img {
    width: 100%;
}
.catalog_item {
    width: 300px;
    margin: 15px;
    border: 1px solid black;
    padding: 10px;
}
.catalog_item-title {
    font-weight: bold;
    font-size: 16px;
    margin-bottom: 15px;
}
.catalog_item-text {
    font-size: 14px;
    margin-bottom: 15px;
}
.product__name {
    font-size: 14px;
    font-weight: bold;
    margin-top: 10px;
    margin-bottom: 10px;
}
.product__price {
    font-size: 14px;
    margin-bottom: 15px;
}
.button {
    background: #517700;
    color: white;
    text-decoration: none;
    padding: 10px;
    margin: 10px;
}
.product__button {
    margin-bottom: 20px;
}
.product__items {
    width: min-content;
}
.category__items {
    padding: 20px;
}
.product__items {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    width: 100%;
}
.product__item {
    margin-right: 10px;
    width: min-content;
    margin-bottom: 15px;
    border: 1px solid black;
    padding: 20px;
}
.product__item-image img {
    height: 200px;
}
.product__item-name {
    font-size: 14px;
    font-weight: bold;
    margin-top: 10px;
}
.product__item-description {
    overflow-wrap: break-word;
    margin-top: 10px;
}
.product__item-price {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 10px;
}
.product__item-nav {
    display: flex;
    justify-content: space-between;
    margin-top: 20px;
}
.add-to-cart.active {
    background: #93c723;
}

div.category__items, div.category__items div {
    box-sizing: border-box
}

.category__item {
    overflow-wrap: break-word;
    word-break: break-word;
    min-width: 0;   /* критично для flex/grid-детей с текстом */
}
*, *::before, *::after {
    box-sizing: border-box;
}
.area.catalog {
    font-size: 16px;
}
#cart-count {
    color: red;
    font-weight: bold;
}
.catalog-preview .big-title {
    font-size: 20px !important;
    margin: 20px;
}

.catalog-preview .area {
    background: #fff690;
}
.product__item-category {
    margin-bottom: 15px;
    font-weight: bold;
}
.product__item {
    width: 330px;
}
.cart-summary {
    font-size: 20px;
    font-weight: bold;
}