/* Measured against psyassist.ru, 04.10.2026. Styles stay inside .ssd-scope. */
@font-face{font-family:SSD Onest;src:url("fonts/onest-600.ttf") format("truetype");font-weight:600;font-style:normal;font-display:swap}
.ssd-scope{--ssd-accent:#525ab4;--ssd-background:#fff;--ssd-radius:20px;--ssd-cols:3;--ssd-detail-font-size:16px;width:100%;max-width:1140px;margin-inline:auto;container-type:inline-size;container-name:ssd-list;color:#54595f;font-family:"YS Normal",Arial,Helvetica,sans-serif;font-size:16px;line-height:1.5}
.ssd-scope *,.ssd-scope *::before,.ssd-scope *::after{box-sizing:border-box}
.ssd-scope .ssd-grid{display:grid;grid-template-columns:repeat(var(--ssd-cols),minmax(0,1fr));gap:20px;align-items:stretch;align-content:start}
.ssd-scope .ssd-card{display:flex;flex-direction:column;gap:20px;min-width:0;margin:0;padding:10px;background:var(--ssd-background);border:0;border-radius:var(--ssd-radius);box-shadow:none;overflow:hidden;container-type:inline-size;container-name:ssd-card}
/* Shared tracks make names, facts, prices and actions align within each row.
   Content remains complete: longer names and any number of facts expand the row. */
@supports(grid-template-rows:subgrid){
 .ssd-scope .ssd-card{display:grid;grid-row:span 5;grid-template-rows:subgrid;row-gap:20px;align-items:start}
 .ssd-scope .ssd-card>.ssd-photo-link,.ssd-scope .ssd-card>.ssd-photo{grid-row:1}
 .ssd-scope .ssd-name{grid-row:2}
 .ssd-scope .ssd-facts{grid-row:3}
 .ssd-scope .ssd-prices{grid-row:4}
 .ssd-scope .ssd-actions{grid-row:5}
}
.ssd-scope .ssd-photo-link{display:block;flex-shrink:0;width:100%;line-height:0;text-decoration:none}
.ssd-scope .ssd-photo{display:block;width:100%;max-width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;object-position:center;border:0;border-radius:var(--ssd-radius);margin:0;background:#eee}
.ssd-scope .ssd-placeholder{display:flex;align-items:center;justify-content:center;color:#54595f;line-height:1.5}
.ssd-scope .ssd-name{font-family:"YS Normal",Arial,Helvetica,sans-serif;font-size:24px;font-weight:600;line-height:1;margin:0 0 0 10px;padding:0;color:#000;letter-spacing:normal;text-transform:none;overflow-wrap:anywhere}
.ssd-scope .ssd-name a,.ssd-scope .ssd-name a:hover{font:inherit;letter-spacing:inherit;color:inherit;text-decoration:none}
.ssd-scope .ssd-facts{display:flex;flex-direction:column;gap:3px;margin:0;padding:0 30px 0 10px;list-style:none;color:#54595f}
.ssd-scope .ssd-facts li{display:flex;align-items:center;gap:8.5px;margin:0;padding:0;list-style:none;font-size:var(--ssd-detail-font-size);line-height:24px;min-width:0}
.ssd-scope .ssd-facts li span{min-width:0;overflow-wrap:anywhere}
.ssd-scope .ssd-icon{display:block;width:14px;height:14px;flex:0 0 14px;margin:0;border:0;border-radius:0}
.ssd-scope .ssd-facts li.ssd-fact-highlight{padding:6px 8px;border-radius:8px;background:#dcebdc;color:#54595f}
.ssd-scope .ssd-prices{display:flex;flex-direction:column;gap:15px;margin:0;width:100%;min-width:0;padding:0 10px 10px 10px;color:var(--ssd-accent);font-family:"SSD Onest",Onest,"YS Normal",Arial,sans-serif;font-size:18px;font-weight:600;line-height:1.5}
@supports not (grid-template-rows:subgrid){.ssd-scope .ssd-prices{margin-top:auto}}
.ssd-scope .ssd-price{display:grid;grid-template-columns:minmax(0,auto) minmax(4px,1fr) minmax(0,max-content);align-items:center;min-width:0;gap:6px}
.ssd-scope .ssd-price>span:first-child{min-width:0;white-space:nowrap;overflow-wrap:normal}
.ssd-scope .ssd-dots{flex:1 1 0;min-width:4px;border-bottom:2px dotted currentColor}
.ssd-scope .ssd-amount{grid-column:3;min-width:0;justify-self:end;white-space:normal;overflow-wrap:anywhere;text-align:right}
.ssd-scope .ssd-actions{display:flex;flex-direction:column;gap:10px;margin-top:-10px}
.ssd-scope .ssd-actions:empty{display:none}
.ssd-scope .ssd-button{display:flex;align-items:center;justify-content:center;width:100%;min-height:44px;margin:0;padding:12px 24px;border:2px solid var(--ssd-accent);border-radius:var(--ssd-radius);background:transparent;color:var(--ssd-accent);font-family:"YS Normal",Arial,Helvetica,sans-serif;font-size:17px;font-weight:400;line-height:17px;text-align:center;text-decoration:none;text-transform:none;letter-spacing:normal;overflow-wrap:anywhere;box-shadow:none;transition:background-color .15s ease,color .15s ease}
.ssd-scope .ssd-button-primary{background:var(--ssd-accent);color:#fff;border:0;min-height:41px}
.ssd-scope a.ssd-button:hover{background:var(--ssd-accent);color:#fff}
.ssd-scope a.ssd-button-primary:hover{filter:brightness(.94)}
.ssd-scope a:focus-visible{outline:3px solid var(--ssd-accent);outline-offset:3px}
.ssd-empty{padding:20px;background:#f0f0f1;border:1px dashed #525ab4;color:#404040;font:16px/1.5 Arial,sans-serif}
@media(max-width:1024px){.ssd-scope{--ssd-cols:2}}
@media(max-width:767px){.ssd-scope{--ssd-cols:1;--ssd-detail-font-size:14px}}
/* A narrow Elementor container is also responsive, even on a wide monitor. */
@container ssd-list (max-width:720px){.ssd-scope .ssd-grid{grid-template-columns:repeat(min(var(--ssd-cols),2),minmax(0,1fr))}}
@container ssd-card (max-width:300px){.ssd-scope .ssd-price{gap:6px}.ssd-scope .ssd-facts{padding-right:10px}.ssd-scope .ssd-button{padding-inline:12px}}
@container ssd-card (max-width:240px){.ssd-scope .ssd-price{flex-wrap:wrap;justify-content:space-between}.ssd-scope .ssd-dots{display:none}.ssd-scope .ssd-name{font-size:22px}}
/* One full-width mobile card, including widgets with older saved column settings. */
@media(max-width:767px){
 /* Elementor's flex item must shrink to the rendered list, rather than keep
    the intrinsic height calculated before lazy photos have been laid out. */
 .elementor .elementor-widget.elementor-widget-safespace-doctors,
 .elementor .elementor-widget.elementor-widget-safespace-doctor{height:auto;min-height:0}
 .elementor-widget-safespace-doctors>.elementor-widget-container,
 .elementor-widget-safespace-doctor>.elementor-widget-container{height:auto;min-height:0}
 .ssd-scope{min-width:0;max-width:100%;height:auto;min-height:0;container-type:normal}
 .ssd-scope .ssd-grid{display:flex;flex-direction:column;align-items:stretch;grid-template-columns:minmax(0,1fr);width:100%;min-width:0;height:auto;min-height:0;gap:16px}
 .ssd-scope .ssd-card{display:flex;grid-row:auto;flex:0 0 auto;flex-direction:column;align-items:stretch;justify-content:flex-start;container-type:normal;width:100%;max-width:100%;padding:10px;gap:12px;height:auto;min-height:0!important;max-height:none;overflow:visible}
 .ssd-scope .ssd-card>*{flex:0 0 auto;min-width:0;max-width:100%;min-height:0!important}
 .ssd-scope .ssd-photo-link{width:100%;background:#eee;border-radius:var(--ssd-radius)}
 .ssd-scope img.ssd-photo{width:100%;height:220px;height:clamp(180px,32svh,280px);max-width:100%;aspect-ratio:auto;max-height:280px;contain:none;contain-intrinsic-size:none;object-fit:contain;margin-inline:auto;align-self:center}
 .ssd-scope .ssd-placeholder{height:220px}
 .ssd-scope .ssd-name{margin-left:0;font-size:22px;line-height:1.15}
 .ssd-scope .ssd-facts{padding:0;gap:5px}
 .ssd-scope .ssd-facts li{font-size:var(--ssd-detail-font-size);line-height:1.4;gap:7px;align-items:flex-start}
 .ssd-scope .ssd-icon{width:14px;height:14px;flex-basis:14px;margin-top:2px}
 .ssd-scope .ssd-prices{margin-top:0;padding:0 10px;gap:8px;font-size:18px;line-height:1.4}
 .ssd-scope .ssd-price{display:grid;grid-template-columns:minmax(0,auto) minmax(8px,1fr) minmax(0,max-content);align-items:center;gap:8px;font-size:inherit}
 .ssd-scope .ssd-dots{display:block;width:100%;min-width:0;border-bottom:.5px solid currentColor;opacity:.45}
 .ssd-scope .ssd-amount{justify-self:end;white-space:normal;overflow-wrap:anywhere;text-align:right}
 .ssd-scope .ssd-actions{width:100%;min-width:0;align-self:stretch;align-items:stretch;margin-top:0;gap:8px}
 .ssd-scope .ssd-button{width:100%;max-width:100%;align-self:stretch;flex-shrink:0;padding:10px 12px;font-size:15px;line-height:20px;min-height:44px;height:auto;white-space:normal}
 .ssd-scope .ssd-button-primary{min-height:44px}
}
.ssd-scope .ssd-grid.ssd-grid-single{grid-template-columns:minmax(0,1fr)}
@media(prefers-reduced-motion:reduce){.ssd-scope .ssd-button{transition:none}}

.ssd-scope button.ssd-button{appearance:none;cursor:default}
.ssd-scope .ssd-button.ssd-button-disabled,.ssd-scope .ssd-button.ssd-button-disabled:hover{background:#e5e5e5;color:#777;border-color:#ccc;opacity:1;cursor:not-allowed;filter:none;transition:none}
