.ss-catalog { background: #fff; color: #242424; }
.ss-catalog * { box-sizing: border-box; }
.sc-wrap { width: min(1180px, calc(100% - 64px)); margin: auto; }
.ss-catalog h1,.ss-catalog h2,.ss-catalog h3 { color: #242424; font-weight: 500; letter-spacing: -.03em; }
.ss-catalog h1 { font-size: clamp(36px,4vw,56px); line-height: 1.15; margin: 16px 0 20px; }
.ss-catalog h2 { font-size: 34px; line-height: 1.2; margin: 0 0 20px; }
.ss-catalog p { color: #575757; line-height: 1.7; }
.sc-hero { background: #f6f5f3; border-bottom: 1px solid #e5e1db; padding: 65px 0 50px; }
.sc-kicker { color: #920000; font-size: 13px; letter-spacing: .06em; }
.sc-hero-copy { display: flex; align-items: end; justify-content: space-between; gap: 40px; }
.sc-hero-copy p { max-width: 700px; margin: 0; font-size: 18px; }
.ss-catalog .sc-link { color: #920000; text-decoration: underline; text-underline-offset: 4px; }
.sc-hero-copy > a { flex-shrink: 0; margin-bottom: 5px; }
.sc-list-section { padding: 42px 0 70px; }
.sc-toolbar { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 30px; }
.sc-search { flex: 1; max-width: 530px; }
.sc-search label { display: block; font-size: 14px; font-weight: 500; margin-bottom: 8px; }
.sc-search-box { display: flex; gap: 10px; }
.sc-search input { min-width: 0; width: 100%; font: inherit; font-size: 16px; min-height: 48px; padding: 10px 15px; border: 1px solid #d6d2cc; border-radius: 8px; background: #fff; }
.sc-search button { font: inherit; font-size: 14px; border: 1px solid #d6d2cc; border-radius: 8px; background: #fff; padding: 10px 14px; cursor: pointer; }
.sc-counter { color: #6b665f; font-size: 14px; padding-bottom: 12px; }
.sc-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; }
.sc-card { border: 1px solid #e3e0db; border-radius: 15px; overflow: hidden; background: #fff; display: flex; flex-direction: column; }
.sc-card[hidden] { display: none; }
.sc-art { height: 205px; padding: 18px; background: #f4f2ef; display: flex; align-items: center; justify-content: center; }
.sc-art img { display: block; max-width: 100%; width: 100%; height: 169px; object-fit: contain; }
.sc-art-mark { position: relative; overflow: hidden; text-decoration: none; background: linear-gradient(145deg,#f5f1eb 0%,#ebe5dc 100%); }
.sc-art-mark::before { content: ''; position: absolute; width: 155px; height: 155px; border: 1px solid rgba(146,0,0,.18); border-radius: 50%; right: -35px; top: -55px; }
.sc-art-mark::after { content: ''; position: absolute; width: 95px; height: 95px; background: rgba(146,0,0,.07); border-radius: 50%; left: -25px; bottom: -38px; }
.sc-art-mark span { position: relative; z-index: 1; color: #920000; font-size: 48px; line-height: 1; font-weight: 500; letter-spacing: -.06em; }
.sc-card-body { padding: 24px; display: flex; flex-direction: column; flex: 1; }
.sc-card-heading { display: flex; gap: 10px; justify-content: space-between; align-items: start; }
.ss-catalog .sc-card h2 { font-size: 24px; line-height: 1.25; margin: 0 0 13px; }
.sc-card h2 a { color: #242424; text-decoration: none; }
.sc-rate { background: #f8eeee; color: #960000; border-radius: 5px; padding: 3px 8px; font-size: 13px; white-space: nowrap; }
.sc-card p { font-size: 15px; margin: 0 0 23px; }
.sc-card-links { display: flex; flex-wrap: wrap; gap: 12px 18px; margin-top: auto; font-size: 14px; }
.sc-empty { padding: 45px 24px; text-align: center; border: 1px dashed #cec8bf; border-radius: 12px; }
.sc-empty[hidden] { display: none; }
.sc-note { font-size: 14px; margin: 28px 0 0; }
.sc-help { padding: 65px 0; background: #f5f2ee; }
.sc-help-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 70px; align-items: center; }
.sc-help p { max-width: 470px; }
.sc-form { background: #fff; border: 1px solid #e1dcd4; border-radius: 16px; padding: 30px; }
.sc-form .form-box { text-align: left; }
.sc-form .row { display: block; margin: 0; }
.sc-form .col-lg-4 { max-width: 100%; width: 100%; padding: 0; margin-bottom: 20px; }
.sc-form .col-lg-4:last-child { margin-bottom: 0; }
.sc-form input { font-size: 16px; min-height: 48px; border-radius: 7px; }
.sc-form button { width: 100%; min-height: 48px; border-radius: 7px; }
.ss-catalog a:focus-visible,.ss-catalog input:focus-visible,.ss-catalog button:focus-visible { outline: 2px solid #920000; outline-offset: 4px; }
@media(max-width:991.98px){ .sc-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }.sc-help-grid { gap: 35px; } }
@media(max-width:767.98px){
 .sc-wrap { width: calc(100% - 40px); }.sc-hero { padding: 42px 0; }
 .sc-hero-copy { display: block; }.sc-hero-copy > a { display: inline-block; margin-top: 18px; }
 .sc-hero-copy p { font-size: 16px; }.sc-toolbar { display: block; }.sc-search { max-width: none; }.sc-counter { display: block; padding: 16px 0 0; }
 .sc-help-grid { grid-template-columns: 1fr; }.sc-help { padding: 45px 0; }.sc-form { padding: 24px; }
}
@media(max-width:479.98px){ .sc-grid { grid-template-columns: 1fr; }.sc-card-body { padding: 22px; }.sc-art { height: 190px; }.sc-art img { height: 154px; } }
