/* Keep image dimensions bounded within the existing responsive layouts. */
.header-chat { display:inline-flex; align-items:center; justify-content:center; height:40px; padding:0 12px; border-radius:7px; color:#fff!important; font:700 12px/1 sans-serif; white-space:nowrap; text-decoration:none; }
.header-whatsapp { background:#146c43; }
.header-telegram { background:#176b96; }
.header-chat:hover { filter:brightness(1.1); }
.header-chat:focus-visible { outline:3px solid #f08537; outline-offset:3px; }
.page-actions,.header-actions { display:flex; align-items:center; gap:8px; flex-shrink:0; }
@media(min-width:1251px) { .header-inner,.page-header-inner { gap:12px; } .desktop-nav>a,.page-nav>a,.nav-categories>button { padding-left:8px; padding-right:8px; font-size:12px; } .header-actions>.search-jump { display:none; } }
@media(max-width:600px) { .header-chat { padding:0 7px; font-size:10px; height:36px; } .page-actions,.header-actions { gap:4px; } .page-brand img,.brand img { width:115px; } .header-actions .basket-button { padding:5px; font-size:10px; } .header-inner,.page-header-inner { gap:6px; } }
@media(max-width:360px) { .page-brand img,.brand img { width:90px; } .header-actions .basket-button { font-size:9px; padding:3px; } }
.medicine-top { display:block; }
.medicine-card .medicine-image-link { width:100%; height:auto; aspect-ratio:1; border-radius:10px; }
.medicine-card .medicine-image-link img { width:100%; height:100%; object-fit:contain; }
.shop-card .card-art { width:100%; height:auto; aspect-ratio:1; padding:0; }
.shop-card .card-art img { width:100%; height:100%; object-fit:contain; }
.category-product-grid .category-product-card { grid-template-columns:minmax(0,1fr); }
.category-product-card .category-product-art { width:100%; aspect-ratio:1; padding:0; }
.category-product-art img { min-height:0; }
.page-header-inner,.header-inner { align-items:center; }
.page-nav,.desktop-nav { align-items:center; flex-wrap:nowrap; }
.page-nav>a,.desktop-nav>a,.nav-categories>button { height:80px; min-height:80px; display:flex; align-items:center; }
.homepage-slider { background:#edf7fc; }
.slider-images img { display:block; width:100%; height:auto; aspect-ratio:2280/860; object-fit:contain; }
.slider-images img[hidden] { display:none; }
.slider-controls { display:flex; justify-content:center; align-items:center; flex-wrap:wrap; gap:8px; padding:14px; }
.slider-controls button { min-width:32px; min-height:36px; border:1px solid #b7cfdf; border-radius:6px; background:#fff; color:#1b4379; cursor:pointer; }
.slider-controls button[aria-pressed=true] { background:#1b4379; color:#fff; }
.contact-methods { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.contact-methods section { padding:24px; border:1px solid #dceaf2; border-radius:14px; }
@media(max-width:1250px) { .desktop-nav,.page-nav { display:none; } .menu-button,.page-menu { display:block; } .header-order { display:none; } }
@media(min-width:721px) and (max-width:1250px) { .mobile-nav,.page-mobile-nav { position:absolute; top:100%; left:0; right:0; background:#fff; padding:18px; z-index:200; } .mobile-nav.open,.page-mobile-nav.open { display:flex; flex-direction:column; opacity:1; transform:none; } }
@media(max-width:600px) { .contact-methods { grid-template-columns:1fr; } }
.medicine-photo img { display:block; width:100%; height:100%; max-width:100%; object-fit:contain; }
.card-art.medicine-photo { padding:0; }
.card-art.editorial-photo { padding:0; overflow:hidden; }
.card-art.editorial-photo::after, .card-art.medicine-photo::after { display:none; }
.card-art.medicine-photo img { min-height:0; }
.card-art.editorial-photo img { display:block; width:100%; height:100%; object-fit:cover; }
.article-photo { margin:0 0 30px; width:100%; overflow:hidden; border-radius:16px; }
.article-photo img { display:block; width:100%; height:auto; max-height:520px; object-fit:cover; }
.blog-photo-hero { background-size:cover; background-position:center; }
@media(max-width:600px) { .article-photo { margin-bottom:22px; border-radius:12px; } }

.floating-contacts { position:fixed; right:max(18px,env(safe-area-inset-right)); bottom:calc(18px + env(safe-area-inset-bottom)); display:flex; flex-direction:column; gap:12px; z-index:900; }
.floating-contacts a { display:flex; align-items:center; justify-content:center; width:52px; height:52px; border-radius:50%; color:#fff; box-shadow:0 4px 16px #0003; }
.floating-whatsapp { background:#146c43; }
.floating-telegram { background:#176b96; }
.floating-contacts svg { width:28px; height:28px; fill:currentColor; }
.floating-contacts a:hover { filter:brightness(1.15); }
.floating-contacts a:focus-visible { outline:3px solid #f08537; outline-offset:4px; }
