[hidden]{display:none!important}.catalog-tools{display:flex;flex-wrap:wrap;gap:16px;margin-top:30px}.catalog-tools label{display:grid;gap:8px;flex:1;min-width:160px;font-size:14px}.catalog-tools input,.catalog-tools select{font:inherit;padding:13px;border:1px solid #c8cdc5;border-radius:8px;background:#fff;min-width:0;width:100%;box-sizing:border-box}.catalog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.catalog-card{background:#fff;border:1px solid #e3e2dc;border-radius:15px;overflow:hidden;display:flex;flex-direction:column}.flower-photo{display:block;background:#f9f8f4}.flower-photo img{width:100%;height:auto;aspect-ratio:1;object-fit:contain;display:block;transition:transform .2s}.flower-photo:hover img{transform:scale(1.03)}.catalog-content{padding:18px;display:flex;flex-direction:column;flex:1}.catalog-content h2{font-size:24px;margin:8px 0 16px;overflow-wrap:anywhere}.request-link{margin-top:auto;color:#234d37;font-size:14px;font-weight:600;padding-top:12px}.catalog-end{margin:40px 0}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #9a5044;outline-offset:4px}#photo-dialog{width:min(620px,90vw);max-height:90vh;padding:20px;border:0;border-radius:16px;background:#faf9f6}#photo-dialog::backdrop{background:#14251dd9}#large-photo{display:block;width:100%;max-height:68vh;object-fit:contain}#close-photo{display:block;margin-left:auto;background:#254b36;color:white;border:0;border-radius:8px;padding:12px;font:inherit;cursor:pointer}#photo-caption{text-align:center}.hero-art.hero-real{background:#f7f7f7}.hero-real::after{display:none}.hero-photo{width:100%;height:100%;object-fit:contain;display:block}.how-order{padding-block:55px}.order-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.order-steps h3{font-size:23px}.order-steps p,.about-copy{line-height:1.7;white-space:pre-line}.order-details{padding:20px 0;line-height:1.8}.about-copy{max-width:760px}.country-nav{display:flex;gap:20px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:950px){.catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:650px){.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.catalog-content{padding:12px}.catalog-content h2{font-size:21px}.order-steps{grid-template-columns:1fr;gap:8px}.hero-art.hero-real{aspect-ratio:3/4;max-height:530px}.country-nav{gap:10px}.request-link{font-size:13px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.request-basket { background: #fff; border: 1px solid #e3e2dc; border-radius: 12px; padding: 16px; margin: 24px 0; }
.request-basket summary { cursor: pointer; font-weight: 700; }
.request-basket li { margin-block: 8px; }
#basket-status { margin: 8px 0 0; font-size: 14px; }
#basket-status:empty { display: none; }
.add-to-request { display: grid; gap: 8px; margin-top: auto; }
.add-to-request input, #basket-items input { width: 4.5em; padding: 5px; font: inherit; }
.add-to-request button, #basket-items button { cursor: pointer; padding: 6px 8px; font: inherit; }

.request-basket { position: fixed; right: max(14px, env(safe-area-inset-right)); bottom: max(14px, env(safe-area-inset-bottom)); z-index: 20; padding: 0; margin: 0; border: 0; background: transparent; }
.basket-toggle { border: 0; border-radius: 999px; background: #234d37; color: #fff; padding: 13px 18px; font: inherit; font-weight: 700; cursor: pointer; box-shadow: 0 4px 18px #0003; }
#basket-status { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.basket-dialog { width: min(520px, calc(100vw - 28px)); max-height: min(80dvh, 680px); border: 0; border-radius: 16px; padding: 0; background: #fff; }
.basket-dialog[open] { display: grid; grid-template-rows: auto minmax(0, 1fr) auto; }
.basket-dialog::backdrop { background: #14251db0; }
.basket-dialog header, .basket-dialog footer { padding: 16px 20px; background: #f5f1e9; }
.basket-dialog header { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.basket-dialog h2, #basket-total { margin: 0; }
.basket-dialog header button { font: inherit; font-size: 24px; padding: 4px 12px; cursor: pointer; }
#basket-items { overflow-y: auto; margin: 0; padding: 10px 20px 10px 38px; }
#basket-send { margin-top: 10px; }
body:has(.request-basket:not([hidden])) .collection-section { padding-bottom: 90px; }

.basket-scroll { overflow-y: auto; }
#basket-items { overflow: visible; }
#delivery-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; padding: 12px 20px 20px; }
#delivery-form h3 { grid-column: 1 / -1; margin: 0; }
#delivery-form label { display: grid; gap: 5px; min-width: 0; font-size: 14px; }
#delivery-form input { box-sizing: border-box; width: 100%; min-width: 0; padding: 8px; border: 1px solid #c8cdc5; border-radius: 6px; font: inherit; }
@media (max-width: 480px) { #delivery-form { grid-template-columns: 1fr; } }

#delivery-form select { box-sizing: border-box; width: 100%; min-width: 0; padding: 8px; border: 1px solid #c8cdc5; border-radius: 6px; font: inherit; }
#delivery-dates-status:empty { display: none; }
