/* Лендинги /st/: содержательные секции направления (22.10.2026). Стиль страниц Tilda:
   Rubik (заголовки) / Inter (текст), чёрный текст, акцент #ff542e, фоны #f4f6fb и #fffbf2. */
.gs-st { font-family: 'Inter', Arial, sans-serif; color: #000; }
#rec-glavstroi-content .gs-st__block { padding: 70px 20px; }
#rec-glavstroi-content .gs-st__block_tint { background: #f4f6fb; }
#rec-glavstroi-content .gs-st__block_warm { background: #fffbf2; }
#rec-glavstroi-content .gs-st__wrap { max-width: 1160px; margin: 0 auto; }
#rec-glavstroi-content .gs-st__h2 { font: 700 34px/1.2 'Rubik', Arial, sans-serif; margin: 0 0 28px; color: #000; }
#rec-glavstroi-content .gs-st__lead { font-size: 20px; line-height: 1.55; margin: 0 0 32px; max-width: 900px; }
#rec-glavstroi-content .gs-st__scope { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 40px; list-style: none; margin: 0; padding: 0; }
#rec-glavstroi-content .gs-st__scope li { position: relative; padding-left: 26px; font-size: 17px; line-height: 1.45; }
#rec-glavstroi-content .gs-st__scope li:before { content: ''; position: absolute; left: 0; top: .5em; width: 10px; height: 10px; border-radius: 50%; background: #ff542e; }
#rec-glavstroi-content .gs-st__steps { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 24px; list-style: none; margin: 0; padding: 0; counter-reset: st; }
#rec-glavstroi-content .gs-st__steps li { counter-increment: st; }
#rec-glavstroi-content .gs-st__steps li:before { content: counter(st); display: flex; align-items: center; justify-content: center; width: 44px; height: 44px;
    border-radius: 50%; border: 2px solid #ff542e; color: #ff542e; font: 700 20px 'Rubik', Arial, sans-serif; margin-bottom: 14px; }
#rec-glavstroi-content .gs-st__steps b { display: block; font: 700 18px/1.3 'Rubik', Arial, sans-serif; margin-bottom: 8px; }
#rec-glavstroi-content .gs-st__steps p { margin: 0; font-size: 15px; line-height: 1.5; color: #232323; }
#rec-glavstroi-content .gs-st__cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; list-style: none; margin: 0; padding: 0; }
#rec-glavstroi-content .gs-st__card a { color: #000; text-decoration: none; }
#rec-glavstroi-content .gs-st__card-img { display: block; aspect-ratio: 3 / 2; overflow: hidden; border-radius: 12px; background: #eef1f6; margin-bottom: 14px; }
#rec-glavstroi-content .gs-st__card-img img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .3s; }
#rec-glavstroi-content .gs-st__card:hover .gs-st__card-img img { transform: scale(1.04); }
#rec-glavstroi-content .gs-st__card-title { display: block; font: 700 18px/1.3 'Rubik', Arial, sans-serif; margin-bottom: 6px; }
#rec-glavstroi-content .gs-st__card a:hover .gs-st__card-title { color: #ff542e; }
#rec-glavstroi-content .gs-st__card-text { margin: 0; font-size: 15px; line-height: 1.5; color: #232323; }
#rec-glavstroi-content .gs-st__more { display: inline-block; margin-top: 26px; color: #ff542e; font-size: 17px; text-decoration: none; }
#rec-glavstroi-content .gs-st__more:hover { text-decoration: underline; }
#rec-glavstroi-content .gs-st__faq { max-width: 900px; }
#rec-glavstroi-content .gs-st__faq details { border-bottom: 1px solid #ffc2ae; padding: 18px 0; }
#rec-glavstroi-content .gs-st__faq summary { font: 700 19px/1.35 'Rubik', Arial, sans-serif; cursor: pointer; list-style: none; position: relative; padding-right: 40px; }
#rec-glavstroi-content .gs-st__faq summary::-webkit-details-marker { display: none; }
#rec-glavstroi-content .gs-st__faq summary:after { content: '+'; position: absolute; right: 4px; top: -4px; font: 300 30px 'Rubik', Arial, sans-serif; }
#rec-glavstroi-content .gs-st__faq details[open] summary:after { content: '−'; }
#rec-glavstroi-content .gs-st__faq p { margin: 12px 0 0; font-size: 16px; line-height: 1.6; }
#rec-glavstroi-content .gs-st__related { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; list-style: none; margin: 0; padding: 0; }
#rec-glavstroi-content .gs-st__related .gs-st__card-img { aspect-ratio: 16 / 10; }
#rec-glavstroi-content .gs-st__cta { display: flex; flex-wrap: wrap; align-items: center; gap: 18px 28px; margin-top: 34px; }
#rec-glavstroi-content .gs-st__btn { display: inline-block; padding: 16px 30px; border-radius: 20px; background: #ff542e; color: #fff !important;
    font: 700 14px 'Rubik', Arial, sans-serif; text-transform: uppercase; text-decoration: none; letter-spacing: .03em; }
#rec-glavstroi-content .gs-st__btn:hover { background: #ff7a5a; }
#rec-glavstroi-content .gs-st__phone { font: 700 22px 'Rubik', Arial, sans-serif; color: #000; text-decoration: none; }

@media (max-width: 960px) {
    #rec-glavstroi-content .gs-st__steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    #rec-glavstroi-content .gs-st__cards, #rec-glavstroi-content .gs-st__related { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
    #rec-glavstroi-content .gs-st__block { padding: 48px 16px; }
    #rec-glavstroi-content .gs-st__h2 { font-size: 26px; margin-bottom: 22px; }
    #rec-glavstroi-content .gs-st__lead { font-size: 17px; }
    #rec-glavstroi-content .gs-st__scope { grid-template-columns: 1fr; }
    #rec-glavstroi-content .gs-st__steps { grid-template-columns: 1fr; gap: 18px; }
    #rec-glavstroi-content .gs-st__steps li { display: grid; grid-template-columns: 44px 1fr; column-gap: 14px; }
    #rec-glavstroi-content .gs-st__steps li:before { margin: 0; grid-row: span 2; }
    #rec-glavstroi-content .gs-st__cards { grid-template-columns: 1fr; }
    #rec-glavstroi-content .gs-st__related { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
    #rec-glavstroi-content .gs-st__faq summary { font-size: 17px; }
}

/* v2: расширенные тексты направлений (SEO, 22.10.2026) */
.gs-st__crumbs { font: 400 14px/1.4 'Inter', Arial, sans-serif; color: #6b6b6b; margin: 0 0 14px; }
.gs-st__crumbs a { color: #6b6b6b; text-decoration: none; border-bottom: 1px solid #d8d8d8; }
.gs-st__crumbs a:hover { color: #ff542e; border-color: #ff542e; }
.gs-st__crumbs span { margin: 0 6px; }
.gs-st__crumbs span:last-child { margin: 0; color: #000; }
#rec-glavstroi-content .gs-st__h3 { font: 700 20px/1.3 'Rubik', Arial, sans-serif; margin: 0 0 10px; color: #000; }
#rec-glavstroi-content .gs-st__text { font-size: 17px; line-height: 1.6; margin: 0 0 18px; max-width: 900px; }
#rec-glavstroi-content .gs-st__types { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 40px; }
#rec-glavstroi-content .gs-st__type p { margin: 0; font-size: 16px; line-height: 1.6; color: #232323; }
#rec-glavstroi-content .gs-st__scope_rich li b { font-weight: 700; }
#rec-glavstroi-content .gs-st__scope_rich { grid-template-columns: 1fr; max-width: 900px; }
#rec-glavstroi-content .gs-st__cols { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 40px; margin: 34px 0 10px; }
#rec-glavstroi-content .gs-st__cols .gs-st__scope { grid-template-columns: 1fr; }
#rec-glavstroi-content .gs-st__block .gs-st__h3 + .gs-st__scope { margin-bottom: 8px; }
#rec-glavstroi-content .gs-st__block > .gs-st__wrap > .gs-st__h3 { margin-top: 30px; }
#rec-glavstroi-content .gs-st__inline { color: #ff542e; text-decoration: none; border-bottom: 1px solid rgba(255, 84, 46, .35); }
#rec-glavstroi-content .gs-st__inline:hover { border-color: #ff542e; }
#rec-glavstroi-content .gs-st__steps_n6, #rec-glavstroi-content .gs-st__steps_n3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
#rec-glavstroi-content .gs-st__steps_n7, #rec-glavstroi-content .gs-st__steps_n8 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
#rec-glavstroi-content .gs-st__related .gs-st__card-text { font-size: 14px; }
@media (max-width: 960px) {
    #rec-glavstroi-content .gs-st__steps_n6, #rec-glavstroi-content .gs-st__steps_n7, #rec-glavstroi-content .gs-st__steps_n8 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
    #rec-glavstroi-content .gs-st__types, #rec-glavstroi-content .gs-st__cols { grid-template-columns: 1fr; gap: 22px; }
    #rec-glavstroi-content .gs-st__steps_n6, #rec-glavstroi-content .gs-st__steps_n7, #rec-glavstroi-content .gs-st__steps_n8 { grid-template-columns: 1fr; }
    #rec-glavstroi-content .gs-st__text { font-size: 16px; }
    .gs-st__crumbs { font-size: 13px; }
}
/* объектов 3 или 4 — ряд без «висячей» карточки */
@media (min-width: 961px) { #rec-glavstroi-content .gs-st__cards { grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); } }
/* без переносов по слогам: длинные слова («металлоконструкций») помещаются за счёт кегля на телефоне */
@media (max-width: 480px) {
    .t677__title, .t677__title div { font-size: min(34px, 7.6vw) !important; line-height: 1.22 !important; }
}
@media (max-width: 640px) {
    #rec-glavstroi-content .gs-st__related .gs-st__card-title { font-size: 15px; }
}
@media (max-width: 380px) {
    #rec-glavstroi-content .gs-st__related .gs-st__card-title { font-size: 14px; }
}
@media (max-width: 340px) {
    #rec-glavstroi-content .gs-st__related { grid-template-columns: 1fr; }
    #rec-glavstroi-content .gs-st__related .gs-st__card-title { font-size: 16px; }
}
