.shop-signs p { margin: var(--paragraph-margin,0 0 18px); }
.shop-signs a:focus, .shop-signs button:focus, .shop-signs summary:focus { outline: 3px solid var(--ui-focus); outline-offset: 4px; }
.shop-signs__breadcrumbs { display: flex; flex-wrap: wrap; align-items: center; padding: var(--mobile-breadcrumb-top,22px) 20px var(--mobile-breadcrumb-bottom,8px) 20px; }
.shop-signs__breadcrumbs > * { margin: var(--mobile-breadcrumb-item-margin,0 10px 8px 0); }
.shop-signs__separator { display: inline-flex; }
.shop-signs a.shop-signs__button, .shop-signs__button { display: inline-flex; align-items: center; justify-content: center; min-height: var(--mobile-button-height,var(--compact-button-height,48px)); text-align: center; cursor: pointer; }
.shop-signs__section { scroll-margin-top: 20px; }
.shop-signs__subheading { margin: 0 0 14px; }
.shop-signs__intro { max-width: 880px; }
.shop-signs__note { margin-top: 28px; }
.shop-signs__split { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 48px; align-items: start; }
.shop-signs__split > * { min-width: 0; }
.shop-signs__faq { max-width: 980px; }
.shop-signs__question summary { display: flex; justify-content: space-between; align-items: center; cursor: pointer; list-style: none; }
.shop-signs__question summary::-webkit-details-marker { display: none; }
.shop-signs__question summary svg { flex: 0 0 20px; margin-left: 18px; }
.shop-signs__question[open] summary svg { transform: rotate(180deg); }
.shop-signs__question p { padding-right: 40px; }
.shop-signs__checklist { padding-left: 20px; margin: 24px 0; }
.shop-signs__checklist li { margin-bottom: 10px; }
.shop-signs__field { display: block; }
.shop-signs__field input, .shop-signs__field textarea { display: block; width: 100%; max-width: 100%; box-sizing: border-box; }
.shop-signs__field textarea { resize: vertical; min-height: 130px; }
.shop-signs__field input:focus, .shop-signs__field textarea:focus { outline: 2px solid var(--ui-focus); outline-offset: 2px; }
.shop-signs__consent { display: flex; align-items: flex-start; margin: 8px 0 22px; }
.shop-signs__consent input { -webkit-appearance: checkbox; appearance: auto; width: 18px; height: 18px; flex: 0 0 18px; margin: 2px 10px 0 0; }

.shop-signs__elements { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; margin-top: 30px; }
.shop-signs__element { padding: 24px; min-width: 0; }
.shop-signs__number { display: block; margin-bottom: 18px; }
.shop-signs__services { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; margin-top: 30px; }
.shop-signs__services article { padding: var(--services-card-padding,24px); min-width: 0; }

.shop-signs__gallery { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; margin-top:30px; }
.shop-signs__gallery figure { margin:0;min-width:0; }
.shop-signs__gallery img { display:block; width:100%;height:320px;object-fit:contain; }
.shop-signs__gallery figcaption { margin-top:14px; }
@media (max-width: 1000px) {
  .shop-signs__split { gap: 28px; }
  .shop-signs__elements { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
   .shop-signs__split { grid-template-columns: minmax(0, 1fr); }
   .shop-signs__services { grid-template-columns: minmax(0, 1fr); }.shop-signs__gallery{grid-template-columns:minmax(0,1fr)}.shop-signs__gallery img{height:auto;max-height:440px} }
@media (max-width: 480px) {
  .shop-signs-production__shop-signs-services, .shop-signs-more__shop-signs-services { --services-card-padding: 12px; --ui-title-size: 14px; --paragraph-margin: 0; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 18px; }
  .shop-signs-production__shop-signs-services-card-text, .shop-signs-more__shop-signs-services-card-text { font-size: 12px; line-height: 1.4; }
  .shop-signs__question p { padding-right: 0; }
  .shop-signs__form .shop-signs__button { width: 100%; }
  .shop-signs__elements { --ui-title-size: 14px; --paragraph-margin: 0; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 18px; }
  .shop-signs__element { padding: 12px; }
  .shop-signs__number { margin-bottom: 6px; font-size: 11px; line-height: 1.2; }
  .shop-signs-situations__shop-signs-element-text { font-size: 12px; line-height: 1.4; }
}