/* Готовые композиции живут в том же стеклянном каталоге, что и цветы. */
.catalog-tabs {
  position: relative; z-index: 2; display: flex; width: fit-content; max-width: 100%;
  padding: 5px; margin: 0 0 20px; gap: 4px; border: 1px solid #fff9; border-radius: 28px;
  background: linear-gradient(130deg,#fff8,#f9edf43d);
  backdrop-filter: blur(24px); -webkit-backdrop-filter: blur(24px);
  box-shadow: inset 1px 1px 2px #fffc,0 6px 20px #7950630a;
}
.catalog-tabs button {
  display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 42px;
  padding: 10px 18px; border: 1px solid transparent; border-radius: 23px;
  color: #866d7b; font-size: 12px; font-weight: 400; white-space: nowrap;
}
.catalog-tabs button[aria-selected=true] {
  color: #76466d; border-color: #fffd; background: linear-gradient(130deg,#f6def0ad,#dfb7d679);
  box-shadow: inset 0 1px 2px #fffe,0 3px 12px #95617d12;
}
.catalog-tabs button:focus-visible { outline: 2px solid #986c91; outline-offset: 2px; }
.catalog-tabs button span {
  display: grid; place-items: center; min-width: 22px; height: 22px; border-radius: 50%;
  padding: 0 4px; background: #fff6; color: #987b91; font-size: 10px;
}
.ready-catalog-intro { position: relative; z-index: 2; margin: -2px 0 22px; max-width: 510px; color: #896b7c; font-size: 12px; line-height: 1.7; }
.ready-catalog-intro[hidden] { display: none; }
#catalog .ready-bouquet-card .ph { aspect-ratio: .85; overflow: hidden; }
#catalog .ready-bouquet-card .ph img { object-fit: cover; object-position: center 48%; filter: none; }
#catalog .ready-bouquet-card h3 { min-height: 2.44em; }
#catalog .ready-bouquet-card .card-price small { white-space: normal; font-size: 8px; }
#catalog .ready-bouquet-card .price-on-request { white-space: normal; font-size: 10px; line-height: 1.35; }
#catalog .ready-bouquet-card .card-plus { font-size: 19px; }
#pv.ready-bouquet-view .hero2 { padding: 70px 24px 35px; height: min(55svh,500px); min-height: 290px; }
#pv.ready-bouquet-view .hero2 img { object-fit: contain; filter: drop-shadow(0 12px 18px #62415126); border-radius: 18px; animation: none; transform: none; }
#pv.ready-bouquet-view .hero2 figcaption { bottom: 14px; top: auto; text-align: center; left: 0; right: 0; }
.ready-eyebrow { display: block; color: #a07d92; font-size: 9px; letter-spacing: .18em; margin: 0 0 12px; }
#pv .ready-included { display: flex; gap: 9px; align-items: center; margin: 20px 0; color: #8e7484; font-size: 11px; line-height: 1.5; }
.ready-included > span { font-size: 21px; color: #b48aa5; }
#pv.ready-bouquet-view .product-unit-price { flex-wrap: wrap; gap: 4px 10px; }
.ready-estimate-note { padding: 14px 16px; border: 1px solid #fff8; border-radius: 18px; background: #fff3; color: #846476; }
.ready-estimate-note strong { font-size: 12px; font-weight: 500; }
.ready-estimate-note p { margin: 7px 0 0; font-size: 11px; line-height: 1.65; }
.ready-breakdown { margin: 15px 0; color: #856b7c; font-size: 11px; }
.ready-breakdown summary { cursor: pointer; min-height: 34px; padding-block: 8px; }
.ready-breakdown ul { list-style: none; padding: 0; margin: 8px 0 12px; }
.ready-breakdown li { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 10px 0; border-bottom: 1px solid #946d811c; }
.ready-breakdown li span { min-width: 0; }
.ready-breakdown li small { display: block; padding-top: 3px; color: #a08a98; }
.ready-breakdown li b { font-weight: 400; white-space: nowrap; }
.ready-breakdown > p { line-height: 1.6; color: #987e8f; }
#pv .ready-fulfillment { font-size: 11px; line-height: 1.65; color: #8e7484; margin: 16px 0; }
#pv .ready-contact { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin: 24px 0 0; padding: 15px 20px; min-height: 56px; font-size: 13px; font-weight: 400; color: #805679; border: 1px solid #fffc; border-radius: 28px; background: linear-gradient(110deg,#edcde39c,#fff7); box-shadow: inset 0 1px 2px #fff,0 6px 18px #a7759418; }
.ready-contact > span { font-size: 20px; }
@media (max-width:359px) {
  .catalog-tabs { width: 100%; padding: 4px; gap: 0; }
  .catalog-tabs button { padding-inline: 12px; font-size: 11px; flex: 1; }
  #catalog .ready-bouquet-card .card-price { font-size: 10px; }
}
@media (min-width:700px) {
  .catalog-tabs button { font-size: 14px; padding-inline: 24px; min-height: 46px; }
  .ready-catalog-intro { font-size: 14px; }
  #catalog .ready-bouquet-card .card-price small { font-size: 10px; }
  #catalog .ready-bouquet-card .price-on-request { font-size: 14px; }
}
@media (min-width:1024px) {
  .catalog-tabs { margin-bottom: 24px; }
  .catalog-tabs button { min-height: 44px; font-size: 13px; }
  #catalog .ready-bouquet-card .ph { aspect-ratio: .9; }
  #catalog .ready-bouquet-card h3 { min-height: 2.6em; }
  #catalog .ready-bouquet-card .card-price small { font-size: 9px; }
  #catalog .ready-bouquet-card .card-plus { font-size: 22px; }
  #pv.ready-bouquet-view .hero2 { left: 50%; right: 5%; top: 10vh; height: 78vh; min-height: 0; padding: 0 0 35px; }
  #pv.ready-bouquet-view .hero2 img { border-radius: 24px; }
  #pv.ready-bouquet-view .info { margin-top: 98px; }
  #pv .ready-included, #pv .ready-fulfillment, .ready-estimate-note p, .ready-breakdown { font-size: 12px; }
  .ready-estimate-note strong { font-size: 13px; }
  #pv .ready-contact { min-height: 62px; font-size: 15px; }
}
