/* Каталог и карточки товаров «Цветочного города» */
.cg-shop-shell{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:38px;align-items:start}
.cg-shop-sidebar{position:sticky;top:112px;background:#fff;border:1px solid var(--cg-line);border-radius:18px;padding:22px;box-shadow:0 8px 28px rgba(77,52,52,.05)}
.cg-shop-sidebar .widget{margin:0 0 26px}.cg-shop-sidebar .widget:last-child{margin-bottom:0}.cg-shop-sidebar .widget-title{font:600 22px/1.2 Georgia,serif;margin:0 0 14px}.cg-shop-sidebar ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}.cg-shop-sidebar a{color:var(--cg-muted)}.cg-shop-sidebar a:hover,.cg-shop-sidebar .current-cat>a{color:var(--cg-accent-dark)}
.cg-shop-content{min-width:0}.woocommerce-products-header{margin-bottom:25px}.woocommerce-products-header__title{font:500 clamp(38px,5vw,60px)/1.05 Georgia,serif;margin:0 0 12px}.term-description{max-width:760px;color:var(--cg-muted)}
.cg-shop-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 24px;padding:14px 16px;background:#fff;border:1px solid var(--cg-line);border-radius:14px}.woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering{float:none;margin:0}.woocommerce .woocommerce-ordering select{min-height:42px;border:1px solid var(--cg-line);border-radius:9px;background:#fff;padding:0 38px 0 13px;color:var(--cg-text)}
.cg-filter-toggle{display:none;border:1px solid var(--cg-line);border-radius:9px;background:#fff;min-height:42px;padding:0 14px;font-weight:600}
.woocommerce ul.products li.product{display:flex;flex-direction:column;min-height:100%;transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease;background:#fff;border-radius:18px!important;overflow:hidden}.woocommerce ul.products li.product:hover{transform:translateY(-6px);box-shadow:0 20px 46px rgba(77,52,52,.12);border-color:#e7d6d2}.woocommerce ul.products li.product .woocommerce-loop-product__link{display:flex;flex-direction:column;flex:1}.woocommerce ul.products li.product .woocommerce-loop-product__title{min-height:54px;margin:0;padding:0 18px!important;font-size:22px!important;line-height:1.2}.woocommerce ul.products li.product .star-rating{margin:10px 18px 8px;color:#d6a04d}.woocommerce ul.products li.product .price{display:flex;align-items:baseline;gap:8px;margin-top:auto;padding:10px 18px 0!important;font-size:18px!important}.woocommerce ul.products li.product .price del{color:#9b918e;opacity:1;font-size:14px}.woocommerce ul.products li.product .price ins{text-decoration:none}.woocommerce ul.products li.product .button{width:calc(100% - 36px);margin:16px 18px 18px!important;border-radius:999px!important}.woocommerce ul.products li.product .added_to_cart{margin:0 18px 18px;text-align:center;font-weight:600;color:var(--cg-accent-dark)}
.cg-product-image-wrap{position:relative;overflow:hidden;background:#f7f1ef;aspect-ratio:1/1}.cg-product-image-wrap img{width:100%;height:100%;object-fit:cover;margin:0!important;transition:transform .55s ease}.woocommerce ul.products li.product:hover .cg-product-image-wrap img{transform:scale(1.055)}
.cg-product-badges{position:absolute;z-index:3;top:14px;left:14px;display:flex;flex-wrap:wrap;gap:7px;max-width:78%}.cg-product-badge{display:inline-flex;align-items:center;min-height:28px;padding:5px 10px;border-radius:999px;background:#fff;color:var(--cg-text);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;box-shadow:0 5px 15px rgba(44,40,39,.12)}.cg-product-badge--sale{background:var(--cg-accent);color:#fff}.cg-product-badge--new{background:#496d5d;color:#fff}.cg-product-badge--hit{background:#2f2a29;color:#fff}
.cg-product-meta{padding:6px 18px 0;color:var(--cg-muted);font-size:12px}.cg-product-meta span+span:before{content:"•";margin:0 6px;color:#c5b5b1}
.woocommerce nav.woocommerce-pagination{margin-top:38px}.woocommerce nav.woocommerce-pagination ul{border:0;display:flex;gap:8px}.woocommerce nav.woocommerce-pagination ul li{border:0}.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{display:grid;place-items:center;min-width:42px;height:42px;border:1px solid var(--cg-line);border-radius:50%;background:#fff}.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--cg-accent);border-color:var(--cg-accent);color:#fff}
.woocommerce .woocommerce-info,.woocommerce .woocommerce-message,.woocommerce .woocommerce-error{border-radius:12px;background:#fff;box-shadow:0 8px 24px rgba(77,52,52,.05)}
/* Страница отдельного товара */
.single-product .cg-woo-wrap{padding-top:34px}.single-product div.product{gap:64px;align-items:start}.single-product div.product div.images{position:sticky;top:112px;margin-bottom:0}.single-product .woocommerce-product-gallery__wrapper{border-radius:22px;overflow:hidden;background:#f7f1ef}.single-product .woocommerce-product-gallery__image{overflow:hidden}.single-product .woocommerce-product-gallery__image img{width:100%;aspect-ratio:1/1;object-fit:cover;transition:transform .45s ease}.single-product .woocommerce-product-gallery__image:hover img{transform:scale(1.06)}.single-product .woocommerce-product-gallery__trigger{display:none!important}.single-product .flex-control-thumbs{display:grid!important;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px!important}.single-product .flex-control-thumbs li{width:auto!important;float:none!important}.single-product .flex-control-thumbs img{border:2px solid transparent;border-radius:11px;aspect-ratio:1/1;object-fit:cover;opacity:.72;transition:.2s}.single-product .flex-control-thumbs img.flex-active,.single-product .flex-control-thumbs img:hover{opacity:1;border-color:var(--cg-accent)}
.single-product div.product div.summary{margin:0;background:#fff;border:1px solid var(--cg-line);border-radius:22px;padding:36px;box-shadow:var(--cg-shadow)}.single-product .product_title{margin:8px 0 12px!important}.single-product .woocommerce-product-rating{display:flex;align-items:center;gap:10px;margin-bottom:12px!important}.single-product .woocommerce-product-rating .star-rating{color:#d6a04d;margin:0}.single-product div.product p.price{margin:18px 0!important;font-size:30px!important}.single-product div.product p.price del{font-size:18px;color:#9b918e}.single-product div.product p.price ins{text-decoration:none}.single-product .woocommerce-product-details__short-description{color:var(--cg-muted);font-size:16px}.single-product .product_meta{display:grid;gap:5px;padding-top:20px;border-top:1px solid var(--cg-line);font-size:13px;color:var(--cg-muted)}
.cg-product-status{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.cg-product-status__item{display:inline-flex;align-items:center;min-height:30px;padding:5px 10px;border-radius:999px;background:var(--cg-soft);font-size:12px;font-weight:700;color:var(--cg-text)}.cg-product-status__item--stock{background:#edf6f0;color:#326047}.cg-product-status__item--stock:before{content:"";width:7px;height:7px;border-radius:50%;background:#4d8a68;margin-right:7px}.cg-product-status__item--out{background:#fff0f0;color:#9a3f3f}
.single-product div.product form.cart{display:grid!important;grid-template-columns:100px minmax(0,1fr);gap:12px;margin:25px 0 20px!important}.single-product div.product form.cart .quantity{width:100%}.single-product div.product form.cart .qty{width:100%;height:52px;border:1px solid var(--cg-line);border-radius:10px}.single-product div.product form.cart .single_add_to_cart_button{min-height:52px!important;font-size:16px!important;border-radius:999px!important}.single-product div.product form.cart .variations{grid-column:1/-1;width:100%;margin-bottom:4px}.single-product div.product form.cart .variations td{padding:7px 0}.single-product div.product form.cart .variations select{width:100%;min-height:46px;border:1px solid var(--cg-line);border-radius:9px;padding:0 12px;background:#fff}.single-product div.product form.cart .single_variation_wrap{grid-column:1/-1}.single-product div.product form.cart .woocommerce-variation-add-to-cart{display:grid;grid-template-columns:100px minmax(0,1fr);gap:12px}
.cg-product-benefits{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:24px 0 0}.cg-product-benefit{display:flex;gap:12px;align-items:flex-start;padding:15px;border:1px solid var(--cg-line);border-radius:14px;background:#fffdfa}.cg-product-benefit__icon{width:34px;height:34px;flex:0 0 34px;display:grid;place-items:center;border-radius:50%;background:var(--cg-soft);color:var(--cg-accent-dark)}.cg-product-benefit__icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.cg-product-benefit strong{display:block;font-size:13px;line-height:1.25}.cg-product-benefit small{display:block;margin-top:4px;color:var(--cg-muted);font-size:11px;line-height:1.35}
.cg-product-guarantee{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:38px 0 8px}.cg-product-guarantee>div{position:relative;padding:24px 24px 24px 66px;border-radius:18px;background:var(--cg-soft)}.cg-product-guarantee__mark{position:absolute;left:22px;top:22px;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:var(--cg-accent);color:#fff;font-weight:700}.cg-product-guarantee strong{font:600 20px Georgia,serif}.cg-product-guarantee p{margin:6px 0 0;color:var(--cg-muted);font-size:14px}
.single-product .woocommerce-tabs{margin-top:36px}.single-product .woocommerce-tabs ul.tabs{display:flex;flex-wrap:wrap;gap:8px;padding:0!important;margin:0 0 18px!important}.single-product .woocommerce-tabs ul.tabs:before,.single-product .woocommerce-tabs ul.tabs li:before,.single-product .woocommerce-tabs ul.tabs li:after{display:none!important}.single-product .woocommerce-tabs ul.tabs li{border:1px solid var(--cg-line)!important;background:#fff!important;border-radius:999px!important;margin:0!important;padding:0!important}.single-product .woocommerce-tabs ul.tabs li a{padding:10px 17px!important;font-weight:600!important}.single-product .woocommerce-tabs ul.tabs li.active{background:var(--cg-accent)!important;border-color:var(--cg-accent)!important}.single-product .woocommerce-tabs ul.tabs li.active a{color:#fff!important}.single-product .woocommerce-tabs .panel{background:#fff;border:1px solid var(--cg-line);border-radius:18px;padding:28px!important}.single-product .woocommerce-tabs .panel h2{font:500 30px Georgia,serif;margin-top:0}
.single-product .related.products{margin-top:54px}.single-product .related.products>h2{font:500 clamp(34px,4vw,48px)/1.1 Georgia,serif;margin-bottom:28px}
/* Корзина и оформление заказа */
.woocommerce-cart .page-title,.woocommerce-checkout .page-title{margin-bottom:28px}.woocommerce-cart-form,.cart_totals,.woocommerce-checkout #customer_details,.woocommerce-checkout #order_review{background:#fff;border:1px solid var(--cg-line);border-radius:20px;box-shadow:var(--cg-shadow)}.woocommerce-cart-form{padding:20px}.woocommerce-cart table.shop_table{border:0;margin:0}.woocommerce-cart table.shop_table th{font-size:12px;text-transform:uppercase;letter-spacing:.07em;color:var(--cg-muted)}.woocommerce-cart table.shop_table td{border-top:1px solid var(--cg-line);padding:18px 12px}.woocommerce-cart table.cart img{width:96px;border-radius:12px}.woocommerce-cart .product-name a{font:600 18px Georgia,serif}.woocommerce-cart .quantity .qty{width:76px;border:1px solid var(--cg-line);border-radius:9px}.woocommerce-cart .cart-collaterals{margin-top:32px}.woocommerce-cart .cart_totals{float:none;width:min(100%,460px);margin-left:auto;padding:26px}.woocommerce-cart .cart_totals h2,.woocommerce-checkout h3{font:500 30px Georgia,serif}.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{width:100%;margin:12px 0 0!important}
.cg-order-reassurance{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:22px 0}.cg-order-reassurance>div,.cg-checkout-reassurance>div{display:grid;gap:4px;padding:16px;border:1px solid var(--cg-line);border-radius:14px;background:#fffdfa}.cg-order-reassurance span,.cg-checkout-reassurance span{font-size:12px;color:var(--cg-muted)}
.cg-checkout-intro{margin-bottom:24px;padding:24px 28px;border-radius:18px;background:var(--cg-soft)}.cg-checkout-intro span{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--cg-accent-dark);font-weight:700}.cg-checkout-intro strong{display:block;font:500 34px Georgia,serif;margin-top:4px}.cg-checkout-intro p{margin:6px 0 0;color:var(--cg-muted)}.woocommerce-checkout form.checkout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);gap:30px;align-items:start}.woocommerce-checkout #customer_details{padding:28px}.woocommerce-checkout #customer_details .col-1,.woocommerce-checkout #customer_details .col-2{float:none;width:100%}.woocommerce-checkout #order_review_heading{grid-column:2;margin:0}.woocommerce-checkout #order_review{grid-column:2;padding:26px;position:sticky;top:112px}.woocommerce-checkout .woocommerce-checkout-review-order-table{border:0}.woocommerce-checkout #payment{background:var(--cg-soft);border-radius:14px}.cg-checkout-reassurance{display:grid;gap:8px;margin-top:16px}.woocommerce-checkout #place_order{width:100%;min-height:54px!important;font-size:16px!important}
@media(max-width:980px){.cg-shop-shell{grid-template-columns:1fr}.cg-filter-toggle{display:inline-flex;align-items:center}.cg-shop-sidebar{display:none;position:static}.cg-shop-sidebar.is-open{display:block}.cg-shop-toolbar{flex-wrap:wrap}.woocommerce .woocommerce-ordering{margin-left:auto}.single-product div.product{gap:34px}.single-product div.product div.images{position:static}.single-product div.product div.summary{padding:26px}.cg-product-benefits{grid-template-columns:1fr}.cg-product-guarantee{grid-template-columns:1fr}.woocommerce-checkout form.checkout{grid-template-columns:1fr}.woocommerce-checkout #order_review_heading,.woocommerce-checkout #order_review{grid-column:1}.woocommerce-checkout #order_review{position:static}.cg-order-reassurance{grid-template-columns:1fr}}
@media(max-width:640px){.cg-shop-toolbar{align-items:stretch;padding:12px}.woocommerce .woocommerce-result-count{width:100%;font-size:13px}.woocommerce .woocommerce-ordering{width:100%;margin:0}.woocommerce .woocommerce-ordering select{width:100%;font-size:16px}.cg-filter-toggle{width:100%;justify-content:center}.woocommerce ul.products li.product .woocommerce-loop-product__title{min-height:auto;font-size:20px!important}.woocommerce ul.products li.product .star-rating{margin-left:12px}.cg-product-meta{padding-left:12px;padding-right:12px}.cg-product-badges{top:10px;left:10px}.single-product .cg-woo-wrap{padding-top:22px}.single-product div.product div.summary{padding:22px 18px;border-radius:16px}.single-product .product_title{font-size:34px!important}.single-product div.product p.price{font-size:26px!important}.single-product div.product form.cart,.single-product div.product form.cart .woocommerce-variation-add-to-cart{grid-template-columns:82px minmax(0,1fr)}.single-product div.product form.cart .qty,.single-product div.product form.cart .single_add_to_cart_button{min-height:50px!important}.cg-product-benefit{padding:12px}.cg-product-guarantee>div{padding:20px 18px 20px 58px}.cg-product-guarantee__mark{left:17px;top:18px}.single-product .woocommerce-tabs ul.tabs{display:grid}.single-product .woocommerce-tabs ul.tabs li{text-align:center}.single-product .woocommerce-tabs .panel{padding:20px!important}.woocommerce-cart-form{padding:10px}.woocommerce-cart table.shop_table_responsive tr{padding:12px 0}.woocommerce-cart table.shop_table_responsive td{padding:10px 8px}.woocommerce-cart .cart_totals,.woocommerce-checkout #customer_details,.woocommerce-checkout #order_review{padding:20px 16px}.cg-checkout-intro{padding:20px}.cg-checkout-intro strong{font-size:29px}.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select{font-size:16px}.woocommerce-checkout #place_order{min-height:52px!important}}
@media(max-width:420px){.single-product div.product form.cart,.single-product div.product form.cart .woocommerce-variation-add-to-cart{grid-template-columns:1fr}.single-product div.product form.cart .quantity,.single-product div.product form.cart .single_add_to_cart_button{width:100%}.single-product .flex-control-thumbs{grid-template-columns:repeat(3,1fr)}.woocommerce-cart .product-thumbnail{display:none!important}.woocommerce-cart .cart_totals{padding:18px 14px}.cg-checkout-intro strong{font-size:26px}}
@media(hover:none){.woocommerce ul.products li.product:hover{transform:none}.woocommerce ul.products li.product:hover .cg-product-image-wrap img,.single-product .woocommerce-product-gallery__image:hover img{transform:none}}
