/* GRAND SERVICE 32 v1.5.0 · Модуль, 111 страниц услуг, главная, каталог, карта и мессенджеры. */

/* ===== module-home.css ===== */
/* Grand Service 32 · МОДУЛЬ каталога на ГЛАВНОЙ странице · v1.1 */
.gs4-home,
.gs4-home * { box-sizing: border-box; }
.gs4-home { color: #172820; font-family: inherit; line-height: 1.5; }
.gs4-home a { text-decoration: none; }
.gs4-home .gs4-overline { display: block; margin: 0 0 10px; color: #598931; font-size: 11px; font-weight: 850; letter-spacing: .13em; }
.gs4-home .gs4-topline { display: flex; align-items: end; justify-content: space-between; gap: 28px; margin: 0 0 28px; }
.gs4-home .gs4-topline h2 { margin: 0; color: #172820; font-size: clamp(32px, 3.2vw, 47px); font-weight: 850; line-height: 1.1; letter-spacing: -.035em; }
.gs4-home .gs4-topline p { max-width: 425px; margin: 0; color: #526256; font-size: 16px; line-height: 1.6; }
.gs4-home .gs4-group-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 26px; align-items: start; }
.gs4-home .gs4-group { min-width: 0; overflow: hidden; border: 1px solid #dee8dc; border-radius: 17px; background: #fff; box-shadow: 0 9px 28px rgba(16, 48, 28, .07); }
.gs4-home .gs4-group-media { position: relative; isolation: isolate; height: 215px; overflow: hidden; background: #1b3225; }
.gs4-home .gs4-group-media img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; }
.gs4-home .gs4-group-media__shade { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,.04), rgba(0,0,0,.35) 47%, rgba(0,0,0,.88)); }
.gs4-home .gs4-group-media__text { position: absolute; left: 22px; right: 18px; bottom: 21px; color: #fff; text-shadow: 0 1px 5px rgba(0,0,0,.25); }
.gs4-home .gs4-group-media__text>span { color: #c5ff89; font-size: 11px; font-weight: 900; letter-spacing: .13em; }
.gs4-home .gs4-group-media__text h3 { margin: 9px 0 7px; color: #fff; font-size: clamp(23px, 2vw, 29px); line-height: 1.12; font-weight: 850; letter-spacing: -.025em; }
.gs4-home .gs4-group-media__text p { margin: 0; color: #f2f8ef; font-size: 13px; line-height: 1.45; font-weight: 570; }
.gs4-home .gs4-list { list-style: none; margin: 0 !important; padding: 8px 19px 0 !important; }
.gs4-home .gs4-list li { display: flex; align-items: center; min-height: 51px; margin: 0 !important; padding: 12px 0; border-bottom: 1px solid #e8eee8; }
.gs4-home .gs4-list li:last-child { border-bottom: 0; }
.gs4-home .gs4-service-name { display: block; width: 100%; color: #243a2a !important; font-size: 15.5px; font-weight: 735; line-height: 1.35; }
.gs4-home a.gs4-service-name:hover { color: #387b23 !important; text-decoration: underline; text-underline-offset: 3px; }
.gs4-home .gs4-viewall { display: block; padding: 19px 20px; border-top: 1px solid #dbe8d5; background: #f0f7e9; color: #346c25 !important; text-align: center; font-size: 14px; font-weight: 850; }
.gs4-home .gs4-viewall:hover { background: #e2f1d7; }
.gs4-home .gs4-home-cta { display: flex; align-items: center; justify-content: space-between; gap: 26px; margin: 34px 0 0; padding: 31px 37px; border-radius: 17px; background: linear-gradient(120deg, #1d3d2e, #315b3a); color: #fff; }
.gs4-home .gs4-home-cta .gs4-overline { color: #b8ee81; }
.gs4-home .gs4-home-cta h3 { color: #fff; margin: 0 0 7px; font-size: clamp(23px, 2.1vw, 31px); font-weight: 850; line-height: 1.15; }
.gs4-home .gs4-home-cta p { max-width: 640px; margin: 0; color: #e0eae1; font-size: 14px; line-height: 1.6; }
.gs4-home .gs4-home-cta__actions { display: flex; flex-direction: column; align-items: stretch; gap: 9px; min-width: 235px; }
.gs4-home .gs4-cta-button { min-height: 49px; padding: 12px 19px; border: 0; border-radius: 9px; background: #bde987; color: #16361b; cursor: pointer; font: inherit; font-size: 15px; font-weight: 850; transition: background .17s ease; }
.gs4-home .gs4-cta-button:hover { background: #d2f5ad; }
.gs4-home .gs4-cta-link { padding: 5px; color: #fff !important; text-align: center; font-size: 13px; font-weight: 700; text-decoration: underline; text-underline-offset: 4px; }
.gs4-home .gs4-cta-button:focus-visible, .gs4-home a:focus-visible { outline: 3px solid #7caf46; outline-offset: 3px; }
@media(max-width:1080px) { .gs4-home .gs4-group-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } .gs4-home .gs4-home-cta { padding: 29px; } }
@media(max-width:670px) { .gs4-home .gs4-topline, .gs4-home .gs4-home-cta { display: block; } .gs4-home .gs4-topline p { margin-top: 13px; } .gs4-home .gs4-group-grid { grid-template-columns: 1fr; gap: 20px; } .gs4-home .gs4-group-media { height: 205px; } .gs4-home .gs4-group-media__text h3 { font-size: 26px; } .gs4-home .gs4-list li { min-height: 54px; } .gs4-home .gs4-service-name { font-size: 16px; } .gs4-home .gs4-home-cta { padding: 25px 20px; } .gs4-home .gs4-home-cta__actions { margin-top: 20px; } }
@media(prefers-reduced-motion:reduce) { .gs4-home *, .gs4-home *::before, .gs4-home *::after { transition: none !important; } }


/* ===== module-services.css ===== */
/* Grand Service 32 · МОДУЛЬ полного КАТАЛОГА на /uslugi · v1.1 */
.gs4-catalog,.gs4-catalog * { box-sizing: border-box; }
.gs4-catalog { --gs4-ink:#192f21; --gs4-line:#e3eae1; color:var(--gs4-ink); font:inherit; line-height:1.5; }
.gs4-catalog a { text-decoration:none; }
.gs4-catalog .gs4-catalog-nav { display:flex; flex-wrap:wrap; align-items:center; gap:9px; padding:0 0 22px; margin:0 0 15px; border-bottom:1px solid var(--gs4-line); }
.gs4-catalog .gs4-catalog-nav>span { color:#596d60; font-size:13px; font-weight:750; margin-right:6px; }
.gs4-catalog .gs4-catalog-nav a { border:1px solid #d6e9c9; border-radius:8px; background:#eef6e8; padding:10px 12px; color:#396729 !important; font-size:13px; font-weight:750; }
.gs4-catalog .gs4-catalog-nav a:hover { background:#dff0d4; }
.gs4-catalog .gs4-catalog-summary { font-size:14px; color:#5b6d61; margin-bottom:23px; }
.gs4-catalog .gs4-catalog-summary strong { color:#39712b; }
.gs4-catalog .gs4-catalog-groups { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:25px; align-items:start; }
.gs4-catalog .gs4-catalog-group { min-width:0; border:1px solid #dfe8df; background:#fff; border-radius:16px; overflow:hidden; scroll-margin-top:100px; box-shadow:0 8px 26px rgba(20,48,25,.05); }
.gs4-catalog .gs4-catalog-group__head { display:flex; justify-content:space-between; align-items:start; gap:15px; min-height:140px; padding:23px 24px; background:linear-gradient(115deg,#1b3c2c,#2f573b); color:#fff; }
.gs4-catalog .gs4-catalog-group__intro>span { color:#bce991; font-size:11px; font-weight:850; letter-spacing:.12em; }
.gs4-catalog .gs4-catalog-group__head h2 { font-size:25px; line-height:1.15; font-weight:850; color:#fff; margin:9px 0; }
.gs4-catalog .gs4-catalog-group__head p { color:#e2ebe2; font-size:13px; line-height:1.5; margin:0; }
.gs4-catalog .gs4-catalog-group__count { border:1px solid rgba(255,255,255,.2); border-radius:8px; padding:7px 9px; white-space:nowrap; color:#e8f5e1; font-size:12px; font-weight:750; }
.gs4-catalog .gs4-catalog-items { padding:5px 17px 10px; }
.gs4-catalog .gs4-catalog-item { display:flex; justify-content:space-between; align-items:center; gap:15px; min-height:76px; padding:13px 0; border-bottom:1px solid #e8eee8; }
.gs4-catalog .gs4-catalog-item:last-child { border-bottom:0; }
.gs4-catalog .gs4-catalog-item h3 { margin:0; font-size:16px; font-weight:760; line-height:1.3; }
.gs4-catalog .gs4-catalog-item h3 a { color:#223b27 !important; }
.gs4-catalog .gs4-catalog-item h3 a:hover { color:#407e29 !important; text-decoration:underline; }
.gs4-catalog .gs4-catalog-item p { margin:5px 0 0; font-size:12.5px; line-height:1.45; color:#6c796e; }
.gs4-catalog .gs4-catalog-item__actions { display:flex; align-items:center; flex:none; gap:10px; }
.gs4-catalog .gs4-more { font-size:12px; font-weight:780; color:#4d7738 !important; }
.gs4-catalog .gs4-more:hover { text-decoration:underline; }
.gs4-catalog .gs4-book { display:inline-flex; align-items:center; justify-content:center; min-height:37px; padding:9px 12px; border:1px solid #c9e5b6; border-radius:8px; background:#eaf6e1; color:#336c1d !important; font:inherit; font-size:12px; font-weight:850; white-space:nowrap; cursor:pointer; }
.gs4-catalog .gs4-book:hover { background:#d8edc5; }
.gs4-catalog a:focus-visible,.gs4-catalog button:focus-visible { outline:3px solid #8ebc58; outline-offset:3px; }
@media(max-width:1000px){ .gs4-catalog .gs4-catalog-groups { grid-template-columns:1fr; } }
@media(max-width:620px){ .gs4-catalog .gs4-catalog-nav { gap:6px; } .gs4-catalog .gs4-catalog-nav a { font-size:12px; padding:8px 9px; } .gs4-catalog .gs4-catalog-group__head { min-height:0; padding:20px 15px; } .gs4-catalog .gs4-catalog-group__head h2 { font-size:23px; } .gs4-catalog .gs4-catalog-group__count { font-size:10px; } .gs4-catalog .gs4-catalog-items { padding:4px 13px; } .gs4-catalog .gs4-catalog-item { display:block; } .gs4-catalog .gs4-catalog-item__actions { justify-content:flex-end; margin-top:10px; } .gs4-catalog .gs4-catalog-item h3 { font-size:16px; } }


/* ===== homepage.css ===== */
/* GRAND SERVICE 32: самостоятельные стили дополнительных блоков главной, ниже каталога. */
/* GS Services content blocks: paste article HTML, CSS lives in component media; no global overrides. */
.gs32p{--gsp-ink:#182820;--gsp-soft:#627267;--gsp-lime:#b9eb72;--gsp-green:#426d28;--gsp-line:#e1eadf;color:var(--gsp-ink);font:inherit;line-height:1.55}.gs32p *, .gs32p *::before,.gs32p *::after{box-sizing:border-box}.gs32p a{text-decoration:none}.gs32p section{margin:0}.gs32p h1,.gs32p h2,.gs32p h3{font-family:inherit;letter-spacing:-.035em;color:inherit}.gs32p h2{font-weight:860;font-size:clamp(28px,3.25vw,45px);line-height:1.11;margin:0}.gs32p h3{font-size:20px;font-weight:840;line-height:1.17;margin:0}.gs32p p{margin:0}.gs32p-kicker{display:block;font-size:11px;letter-spacing:.16em;font-weight:900;color:#4f8124;margin-bottom:13px}.gs32p-btn{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:45px;padding:12px 19px;border:1px solid transparent;border-radius:9px;line-height:1.15;font-weight:800;font-size:13px;cursor:pointer;text-decoration:none!important;white-space:nowrap;transition:transform .2s ease,background .2s ease}.gs32p-btn:hover{transform:translateY(-2px)}.gs32p-btn--dark{background:#203d2d;color:#fff!important}.gs32p-btn--dark:hover{background:#355b3c}.gs32p-btn--line{border-color:#cdddc8;color:#29522c!important;background:#fff}.gs32p-btn--line:hover{background:#edf7e7}.gs32p-btn--lime{background:#c8ef8d;color:#183b1c!important}.gs32p-btn--lime:hover{background:#ace875}.gs32p-btn--light{background:#fff;color:#23472b!important}.gs32p-opening{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;padding:67px 0 43px;align-items:start}.gs32p-opening h2{max-width:790px;font-size:clamp(31px,4vw,57px)}.gs32p-opening h2 em{font-style:normal;color:#669b38}.gs32p-opening__aside{padding-top:20px}.gs32p-opening__aside p{color:#536359;font-size:16px;line-height:1.7;margin-bottom:15px}.gs32p-opening__links{display:flex;gap:9px;flex-wrap:wrap;margin-top:23px}.gs32p-featureline{background:#f1f7ec;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-radius:15px;margin:0 0 74px;padding:24px 10px;gap:0}.gs32p-featureline>div{display:grid;grid-template-columns:32px 1fr;column-gap:12px;align-content:start;padding:9px 18px;border-right:1px solid #d5e6cf}.gs32p-featureline>div:last-child{border:0}.gs32p-featureline__icon{grid-row:span 2;display:grid;place-items:center;border-radius:8px;background:#d7ebc5;color:#457728;font-size:10px;font-weight:900;height:30px}.gs32p-featureline b{font-size:13px;line-height:1.25}.gs32p-featureline small{font-size:11px;color:#66776c;line-height:1.4;margin-top:5px}.gs32p-sectionheading{display:flex;justify-content:space-between;align-items:end;gap:28px;margin:0 0 26px}.gs32p-sectionheading p{max-width:420px;color:#627167;font-size:15px}.gs32p-symptoms{margin-bottom:72px!important}.gs32p-symptoms-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.gs32p-symptoms-grid article{display:flex;flex-direction:column;min-height:265px;align-items:start;padding:24px 20px;border:1px solid #dde7dc;border-radius:14px;background:#fff;box-shadow:0 10px 25px rgba(20,60,30,.04)}.gs32p-symptoms-grid article>span{font-size:10px;letter-spacing:.13em;color:#598834;font-weight:900;margin-bottom:20px}.gs32p-symptoms-grid h3{font-size:19px;margin-bottom:11px}.gs32p-symptoms-grid p{font-size:13px;color:#65736a;line-height:1.5;margin-bottom:20px}.gs32p-symptoms-grid a{font-size:12px;font-weight:850;color:#3e7425!important;margin-top:auto;text-decoration:underline!important;text-underline-offset:4px}.gs32p-dynamic{margin-bottom:76px}.gs32p-approach{display:grid;grid-template-columns:.73fr 1.27fr;gap:62px;border-radius:20px;background:#17372b;padding:55px 47px;margin-bottom:75px!important;color:#fff}.gs32p-approach .gs32p-kicker{color:#b8ef81}.gs32p-approach h2{font-size:clamp(29px,3vw,43px);color:#fff}.gs32p-approach__heading>p{margin:17px 0;color:#d2e1d6;line-height:1.7;font-size:15px}.gs32p-textlink{color:#bff58c!important;text-decoration:underline!important;text-underline-offset:5px;font-size:13px;font-weight:850}.gs32p-approach__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.gs32p-approach__grid article{border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.055);border-radius:13px;padding:21px}.gs32p-approach__grid strong{font-size:12px;color:#bdf293}.gs32p-approach__grid h3{color:#fff;font-size:18px;margin:12px 0}.gs32p-approach__grid p{color:#d6e5d9;font-size:13px;line-height:1.57}.gs32p-checkup{display:grid;grid-template-columns:1fr 1fr;gap:58px;align-items:center;margin-bottom:76px!important}.gs32p-checkup__visual{border-radius:18px;overflow:hidden;aspect-ratio:1.2;background:#1b342a}.gs32p-checkup__visual img{width:100%;height:100%;object-fit:cover}.gs32p-checkup h2{font-size:clamp(27px,3vw,40px)}.gs32p-checkup__text>p{margin:20px 0;font-size:15px;color:#59685c}.gs32p-checkup ul{margin:0 0 26px;padding:0;list-style:none}.gs32p-checkup li{border-bottom:1px solid #e1e9dc;padding:11px 0 11px 28px;font-size:14px;font-weight:730;position:relative}.gs32p-checkup li::before{content:'✓';color:#6ba83c;position:absolute;left:4px;font-weight:900}.gs32p-steps{margin-bottom:76px!important}.gs32p-steps ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;list-style:none;counter-reset:gsp;margin:0;padding:0}.gs32p-steps li{counter-increment:gsp;background:#f4f8f0;border:1px solid #dbe9d2;border-radius:15px;padding:26px 23px;min-height:165px}.gs32p-steps li::before{content:'0'counter(gsp);display:block;font-size:26px;color:#7cab44;font-weight:900;letter-spacing:-.08em;margin-bottom:17px}.gs32p-steps b{display:block;font-size:17px;line-height:1.3}.gs32p-steps li span{display:block;color:#647367;font-size:13px;margin-top:9px}.gs32p-booking{display:grid;grid-template-columns:1.12fr .88fr;gap:40px;background:linear-gradient(128deg,#254c37,#153b2f);padding:50px 48px;border-radius:20px;color:#fff;margin-bottom:77px!important}.gs32p-booking .gs32p-kicker{color:#bced8e}.gs32p-booking h2{font-size:clamp(27px,3.2vw,43px);color:#fff}.gs32p-booking__intro>p{max-width:600px;color:#d4e7d8;margin:19px 0 24px;font-size:15px;line-height:1.7}.gs32p-booking__intro small{display:block;max-width:500px;color:#a3c0ad;margin-top:17px;font-size:10px}.gs32p-booking__actions{display:flex;gap:10px;flex-wrap:wrap}.gs32p-booking__form{background:#fff;color:#263f30;border-radius:16px;padding:28px 25px;box-shadow:0 15px 40px rgba(0,0,0,.08)}.gs32p-booking__form>span{font-size:11px;font-weight:850;letter-spacing:.14em;color:#63953f}.gs32p-booking__form>p{font-size:14px;color:#66796a;margin:12px 0 20px}.gs32p-booking__form .gs32p-btn{width:100%}.gs32p-booking__slot:empty{display:none}.gs32p-booking__slot:not(:empty){margin-bottom:15px}.gs32p-faq{margin-bottom:68px!important}.gs32p-faq-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.gs32p-faq-list details{border:1px solid #dfebda;border-radius:12px;background:#fff;padding:0 20px;align-self:start}.gs32p-faq-list summary{padding:19px 28px 19px 0;position:relative;cursor:pointer;list-style:none;font-size:15px;font-weight:800;line-height:1.45}.gs32p-faq-list summary::-webkit-details-marker{display:none}.gs32p-faq-list summary::after{content:'+';position:absolute;right:0;top:14px;font-size:23px;color:#639c36;font-weight:400}.gs32p-faq-list details[open] summary::after{content:'−'}.gs32p-faq-list details p{color:#63756a;font-size:14px;line-height:1.62;padding:0 0 19px}.gs32p-faq-list details a,.gs32p-seo a{color:#3b7b25!important;text-decoration:underline!important}.gs32p-seo{border-top:1px solid #dfebdc;padding:35px 0 45px}.gs32p-seo h2{font-size:26px;margin:0 0 14px}.gs32p-seo p{color:#56665b;font-size:14px;line-height:1.72}

@media(max-width:1100px){.gs32p-symptoms-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gs32p-featureline{grid-template-columns:repeat(2,minmax(0,1fr))}.gs32p-featureline>div:nth-child(2){border:0}.gs32p-opening{gap:25px}.gs32p-approach{grid-template-columns:1fr;gap:24px}.gs32p-checkup{gap:26px}.gs32p-booking{gap:22px;padding:35px}.gs32p-services-help{display:block}.gs32p-services-help__buttons{margin-top:20px}}@media(max-width:720px){.gs32p-opening{grid-template-columns:1fr;padding:36px 0 28px}.gs32p-opening__aside{padding:0}.gs32p-featureline{margin-bottom:52px;padding:10px 7px}.gs32p-featureline>div{padding:12px 8px;grid-template-columns:24px 1fr;gap:9px}.gs32p-featureline b{font-size:11px}.gs32p-featureline small{font-size:10px}.gs32p-featureline__icon{height:23px;font-size:9px}.gs32p-sectionheading{display:block}.gs32p-sectionheading p{margin:14px 0 0}.gs32p-symptoms-grid{grid-template-columns:1fr}.gs32p-symptoms-grid article{min-height:210px}.gs32p-symptoms,.gs32p-dynamic,.gs32p-approach,.gs32p-checkup,.gs32p-steps,.gs32p-booking,.gs32p-faq{margin-bottom:53px!important}.gs32p-approach{padding:26px 18px}.gs32p-approach__grid{grid-template-columns:1fr}.gs32p-checkup{grid-template-columns:1fr}.gs32p-checkup__visual{aspect-ratio:1.5}.gs32p-steps ol{grid-template-columns:1fr}.gs32p-steps li{min-height:130px}.gs32p-booking{grid-template-columns:1fr;padding:27px 18px}.gs32p-faq-list{grid-template-columns:1fr}.gs32p-services-intro{display:block;padding:19px 0 12px}.gs32p-services-contact{margin-top:16px}.gs32p-services-help{padding:25px 19px}.gs32p-services-help__buttons{min-width:0}.gs32p-services-help .gs32p-btn{width:100%}}
@media(prefers-reduced-motion:reduce){.gs32p *, .gs32p *::before,.gs32p *::after{transition:none!important}}
.gs32p-booking__form:has(.gsf-form)>.gs32p-btn{display:none}


/* ===== services-page.css ===== */
/* GRAND SERVICE 32: самостоятельные стили контента страницы /uslugi. */
/* GS Services content blocks: paste article HTML, CSS lives in component media; no global overrides. */
.gs32p{--gsp-ink:#182820;--gsp-soft:#627267;--gsp-lime:#b9eb72;--gsp-green:#426d28;--gsp-line:#e1eadf;color:var(--gsp-ink);font:inherit;line-height:1.55}.gs32p *, .gs32p *::before,.gs32p *::after{box-sizing:border-box}.gs32p a{text-decoration:none}.gs32p section{margin:0}.gs32p h1,.gs32p h2,.gs32p h3{font-family:inherit;letter-spacing:-.035em;color:inherit}.gs32p h2{font-weight:860;font-size:clamp(28px,3.25vw,45px);line-height:1.11;margin:0}.gs32p h3{font-size:20px;font-weight:840;line-height:1.17;margin:0}.gs32p p{margin:0}.gs32p-kicker{display:block;font-size:11px;letter-spacing:.16em;font-weight:900;color:#4f8124;margin-bottom:13px}.gs32p-btn{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:45px;padding:12px 19px;border:1px solid transparent;border-radius:9px;line-height:1.15;font-weight:800;font-size:13px;cursor:pointer;text-decoration:none!important;white-space:nowrap;transition:transform .2s ease,background .2s ease}.gs32p-btn:hover{transform:translateY(-2px)}.gs32p-btn--dark{background:#203d2d;color:#fff!important}.gs32p-btn--dark:hover{background:#355b3c}.gs32p-btn--line{border-color:#cdddc8;color:#29522c!important;background:#fff}.gs32p-btn--line:hover{background:#edf7e7}.gs32p-btn--lime{background:#c8ef8d;color:#183b1c!important}.gs32p-btn--lime:hover{background:#ace875}.gs32p-btn--light{background:#fff;color:#23472b!important}/* /uslugi: immediate catalog, no hero */
.gs32p-services-intro{display:flex;justify-content:space-between;gap:38px;align-items:start;margin:0 0 25px;padding:36px 0 17px;border-bottom:1px solid #dbe7d6}.gs32p-services-intro>div:first-child{max-width:790px}.gs32p-services-intro h1{font-size:clamp(30px,3.4vw,46px);letter-spacing:-.045em;color:#1b2d21;font-weight:870;line-height:1.12;margin:0 0 15px}.gs32p-services-intro p{font-size:15px;color:#5e6f61;line-height:1.65}.gs32p-services-contact{background:#eaf5e1;border:1px solid #d4e9c6;border-radius:13px;padding:19px;min-width:265px}.gs32p-services-contact b{font-size:15px}.gs32p-services-contact p{font-size:12px;margin:7px 0 13px}.gs32p-services-contact .gs32p-btn{width:100%}.gs32p-dynamic--catalog{margin:0 0 50px}.gs32p-services-help{display:flex;align-items:center;justify-content:space-between;gap:20px;border-radius:16px;background:#1f402f;color:#fff;padding:30px 36px;margin-bottom:60px!important}.gs32p-services-help .gs32p-kicker{color:#bbef8b}.gs32p-services-help h2{color:#fff;font-size:30px}.gs32p-services-help p{color:#cfdfd3;font-size:14px;max-width:670px;margin-top:10px}.gs32p-services-help__buttons{display:flex;gap:9px;flex-wrap:wrap;min-width:max-content}.gs32p-services-help .gs32p-btn--line{background:transparent;color:#fff!important;border-color:rgba(255,255,255,.45)}.gs32p-services-seo{margin:40px 0 30px;padding-top:30px;border-top:1px solid #dbe8d8}.gs32p-services-seo h2{font-size:25px;margin:0 0 12px}.gs32p-services-seo p{color:#5f6c63;font-size:14px;line-height:1.72}

@media(max-width:1100px){.gs32p-symptoms-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gs32p-featureline{grid-template-columns:repeat(2,minmax(0,1fr))}.gs32p-featureline>div:nth-child(2){border:0}.gs32p-opening{gap:25px}.gs32p-approach{grid-template-columns:1fr;gap:24px}.gs32p-checkup{gap:26px}.gs32p-booking{gap:22px;padding:35px}.gs32p-services-help{display:block}.gs32p-services-help__buttons{margin-top:20px}}@media(max-width:720px){.gs32p-opening{grid-template-columns:1fr;padding:36px 0 28px}.gs32p-opening__aside{padding:0}.gs32p-featureline{margin-bottom:52px;padding:10px 7px}.gs32p-featureline>div{padding:12px 8px;grid-template-columns:24px 1fr;gap:9px}.gs32p-featureline b{font-size:11px}.gs32p-featureline small{font-size:10px}.gs32p-featureline__icon{height:23px;font-size:9px}.gs32p-sectionheading{display:block}.gs32p-sectionheading p{margin:14px 0 0}.gs32p-symptoms-grid{grid-template-columns:1fr}.gs32p-symptoms-grid article{min-height:210px}.gs32p-symptoms,.gs32p-dynamic,.gs32p-approach,.gs32p-checkup,.gs32p-steps,.gs32p-booking,.gs32p-faq{margin-bottom:53px!important}.gs32p-approach{padding:26px 18px}.gs32p-approach__grid{grid-template-columns:1fr}.gs32p-checkup{grid-template-columns:1fr}.gs32p-checkup__visual{aspect-ratio:1.5}.gs32p-steps ol{grid-template-columns:1fr}.gs32p-steps li{min-height:130px}.gs32p-booking{grid-template-columns:1fr;padding:27px 18px}.gs32p-faq-list{grid-template-columns:1fr}.gs32p-services-intro{display:block;padding:19px 0 12px}.gs32p-services-contact{margin-top:16px}.gs32p-services-help{padding:25px 19px}.gs32p-services-help__buttons{min-width:0}.gs32p-services-help .gs32p-btn{width:100%}}
@media(prefers-reduced-motion:reduce){.gs32p *, .gs32p *::before,.gs32p *::after{transition:none!important}}
.gs32p-booking__form:has(.gsf-form)>.gs32p-btn{display:none}


/* ===== map.css ===== */
/* Grand Service 32 · Живая Яндекс.Карта на всю ширину, карточка контактов поверх */
.gs32-map,.gs32-map *{box-sizing:border-box}
.gs32-map{position:relative;isolation:isolate;display:block;width:100%;margin:0;border:0!important;outline:0!important;border-radius:0;background:transparent;box-shadow:none!important;color:#203c2a;font-family:inherit;overflow:visible}
.gs32-map__frame{position:relative;z-index:1;width:100%;height:620px;min-height:520px;overflow:hidden;border:0;border-radius:18px;background:#eaf2e6}
.gs32-map__frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block;pointer-events:auto}
.gs32-map__details{position:absolute;z-index:2;top:25px;left:clamp(16px,2.7vw,48px);width:min(410px,calc(100% - 34px));max-height:calc(100% - 50px);overflow:auto;padding:29px 29px 27px;border:0;border-radius:16px;background:rgba(255,255,255,.985);box-shadow:0 19px 58px rgba(17,43,24,.22),0 1px 3px rgba(17,43,24,.06);backdrop-filter:blur(5px)}
.gs32-map__eyebrow,.gs32-map__label{display:block;color:#51802d;font-size:11px;font-weight:880;letter-spacing:.13em}
.gs32-map__eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 12px}
.gs32-map__eyebrow::before{content:'';display:block;flex:0 0 9px;width:9px;height:9px;border-radius:50%;background:#91d051;box-shadow:0 0 0 5px #e5f4d8}
.gs32-map h2{margin:0 0 10px;font-size:clamp(27px,2.5vw,34px);line-height:1.14;letter-spacing:-.034em;font-weight:880;color:#1c3424}
.gs32-map__intro{margin:0 0 17px;color:#53695a;font-size:14.5px;line-height:1.55}
.gs32-map__block{padding:14px 0;border-top:1px solid #e4ebe2}
.gs32-map__block p{margin:6px 0 3px;color:#1e3c28;font-size:15.5px;font-weight:790;line-height:1.42}
.gs32-map__block p span{font-weight:500;color:#6b7b6c}
.gs32-map__block a{display:block;width:fit-content;max-width:100%;padding:4px 0;color:#34712b!important;font-size:14.5px;font-weight:750;line-height:1.45;text-decoration:none}
.gs32-map__block a:hover{text-decoration:underline;text-underline-offset:3px}
.gs32-map__phones{display:grid;grid-template-columns:1fr;gap:2px}
.gs32-map__phones .gs32-map__label{grid-column:1/-1}
.gs32-map__phones a{padding:2px 0;color:#1d3927!important;font-size:18px;font-weight:850}
.gs32-map__hours{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-top:4px;padding-top:16px;border-top:1px solid #e4ebe2}
.gs32-map__hours strong{color:#264b2a;font-size:14.5px;font-weight:850}
.gs32-map__location-pill{position:absolute;z-index:2;right:24px;bottom:24px;display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border-radius:10px;background:#fff;box-shadow:0 7px 25px rgba(16,38,25,.16);color:#31652b!important;font-size:14px;font-weight:800;text-decoration:none!important}
.gs32-map__location-pill:hover{background:#ecf7e8}
.gs32-map a:focus-visible{outline:3px solid #83b455;outline-offset:3px}
@media(max-width:860px){.gs32-map__frame{height:530px;min-height:460px}.gs32-map__details{top:18px;left:18px;width:370px;max-height:calc(100% - 36px);padding:23px}.gs32-map__block{padding:11px 0}.gs32-map__intro{font-size:13.5px}}
@media(max-width:620px){.gs32-map{display:flex;flex-direction:column}.gs32-map__details{position:relative;top:auto;left:auto;max-height:none;width:auto;overflow:visible;margin:0 12px -17px;padding:26px 23px;box-shadow:0 9px 28px rgba(16,47,24,.12);border-radius:14px}.gs32-map__frame{height:330px;min-height:330px;border-radius:14px}.gs32-map__location-pill{right:17px;bottom:17px;padding:10px 13px;font-size:12px}.gs32-map h2{font-size:29px}.gs32-map__intro{font-size:14px}}
@media(prefers-reduced-motion:reduce){.gs32-map *{transition:none!important}}


/* ===== floating-buttons.css ===== */
/* Grand Service 32 · СТРОГО стили 2 компактных плавающих кнопок */
.gs32-messenger-float,.gs32-messenger-float * { box-sizing:border-box; }
.gs32-messenger-float { position:fixed; z-index:1050; right:20px; bottom:20px; width:172px; display:flex; flex-direction:column; gap:6px; font-family:Arial,Helvetica,sans-serif; }
.gs32-messenger-float a { display:flex; align-items:center; justify-content:center; gap:7px; width:100%; height:36px; min-height:36px; padding:8px 10px; border:0; border-radius:8px; color:#fff !important; font-size:11px; font-weight:760; line-height:1; white-space:nowrap; text-decoration:none !important; box-shadow:0 4px 14px rgba(21,28,42,.13); transition:transform .15s ease,filter .15s ease; }
.gs32-messenger-float a:hover { transform:translateY(-1px); filter:brightness(1.06); }
.gs32-messenger-float a:focus-visible { outline:3px solid #172c25; outline-offset:3px; }
.gs32-messenger-float svg { width:15px; height:15px; flex:0 0 15px; display:block; }
.gs32-messenger-float__max { background:#7045f4; }
.gs32-messenger-float__telegram { background:#249fda; }
@media(max-width:520px) { .gs32-messenger-float { right:10px; bottom:12px; width:161px; gap:5px; } .gs32-messenger-float a { height:35px; min-height:35px; padding:8px 7px; font-size:10.5px; } }
@media(prefers-reduced-motion:reduce) { .gs32-messenger-float a { transition:none; } }


/* ===== map-fullwidth-fix.css ===== */
/* Grand Service · исправление карты 05.11.2026
   Причина: старый CSS компонента переопределяет новый стиль карты,
   вновь включает grid с колонками 41%/59%.
   Этот блок можно ДОБАВИТЬ В КОНЕЦ подключённого CSS.
   Все правила относятся только к блоку карты. */

.gs32-map.gs32-map {
  display:block!important;
  grid-template-columns:none!important;
  gap:0!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}

.gs32-map .gs32-map__frame {
  display:block!important;
  grid-column:auto!important;
  grid-row:auto!important;
  width:100%!important;
  min-width:0!important;
  height:700px!important;
  min-height:700px!important;
  border:0!important;
  border-radius:18px!important;
  overflow:hidden!important;
}

.gs32-map .gs32-map__frame iframe {
  display:block!important;
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  border:0!important;
  pointer-events:auto!important;
}

.gs32-map .gs32-map__details {
  position:absolute!important;
  z-index:2!important;
  top:22px!important;
  left:clamp(16px,2.7vw,48px)!important;
  width:min(480px,calc(100% - 36px))!important;
  max-height:none!important;
  margin:0!important;
  padding:25px 27px!important;
  border:0!important;
  border-radius:16px!important;
  background:rgba(255,255,255,.985)!important;
  box-shadow:0 19px 58px rgba(17,43,24,.22)!important;
  overflow:visible!important;
}

.gs32-map .gs32-map__details h2 {
  font-size:clamp(27px,2.2vw,30px)!important;
  line-height:1.2!important;
  margin:0 0 11px!important;
}

.gs32-map .gs32-map__intro {
  font-size:14.5px!important;
  line-height:1.5!important;
  margin:0 0 16px!important;
}

.gs32-map .gs32-map__block {padding:12px 0!important;}
.gs32-map .gs32-map__hours {padding-top:13px!important;margin-top:3px!important;}

/* На узких экранах карточка перед картой, чтобы не перекрывать её целиком. */
@media (max-width:900px) {
  .gs32-map.gs32-map {display:flex!important;flex-direction:column!important;}
  .gs32-map .gs32-map__details {
    position:relative!important;
    top:auto!important;
    left:auto!important;
    width:auto!important;
    max-height:none!important;
    margin:0 13px -16px!important;
    padding:25px 24px!important;
    overflow:visible!important;
  }
  .gs32-map .gs32-map__frame {height:390px!important;min-height:390px!important;}
}

@media (max-width:620px) {
  .gs32-map .gs32-map__details {margin:0 10px -14px!important;padding:22px 20px!important;}
  .gs32-map .gs32-map__frame {height:330px!important;min-height:330px!important;}
  .gs32-map .gs32-map__details h2 {font-size:28px!important;}
}


/* ===== service-detail.css ===== */
/* Grand Service 32 · Service landing pages · 1.5.0
   Scoped to .gspage; no changes to legacy Joomla article templates. */
.gspage,.gspage *{box-sizing:border-box}
.gspage{--gs-ink:#19352a;--gs-muted:#5a6e60;--gs-green:#1b4331;--gs-lime:#bde985;--gs-line:#dce8d8;max-width:1380px;margin:0 auto 80px;color:var(--gs-ink);font-family:inherit;font-size:16px;line-height:1.7}
.gspage a{text-decoration:none}
.gspage .gspage-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:11px;margin:18px 0 28px;color:#69796e;font-size:13px;line-height:1.4}
.gspage .gspage-breadcrumb a{color:#3d7430;text-decoration:underline;text-underline-offset:3px}
.gspage .gspage-kicker{display:block;color:#568d34;font-size:11px;letter-spacing:.12em;font-weight:850;line-height:1.5;text-transform:uppercase}
.gspage .gspage-hero{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:clamp(24px,3.5vw,55px);align-items:center;padding:clamp(28px,4.2vw,62px);border-radius:23px;background:linear-gradient(130deg,#eef6e7,#f9fbf7 64%,#fff);border:1px solid #e3ecdc}
.gspage .gspage-hero__content{min-width:0}
.gspage .gspage-hero h1{margin:15px 0 23px;color:#183626;font-size:clamp(34px,4.3vw,62px);font-weight:850;line-height:1.08;letter-spacing:-.04em;overflow-wrap:break-word}
.gspage .gspage-summary{max-width:700px;margin:0;color:#4c6252;font-size:clamp(16px,1.35vw,19px);line-height:1.72}
.gspage .gspage-hero__actions{display:flex;align-items:center;gap:17px;flex-wrap:wrap;margin-top:27px}
.gspage .gspage-button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:12px 22px;border:1px solid #a5d478;border-radius:9px;background:var(--gs-lime);color:#17351e;font:inherit;font-size:15px;font-weight:820;line-height:1.3;text-align:center;cursor:pointer;transition:background .18s ease,transform .18s ease}
.gspage .gspage-button:hover{background:#a9e46e;color:#16361c;transform:translateY(-1px)}
.gspage .gspage-button:focus-visible,.gspage a:focus-visible,.gspage summary:focus-visible{outline:3px solid #76ae43;outline-offset:3px}
.gspage .gspage-call{font-size:18px;font-weight:820;color:#225235;text-decoration:underline;text-underline-offset:4px}
.gspage .gspage-address{margin:23px 0 0;color:#647669;font-size:13px}
.gspage .gspage-hero__media{min-width:0;position:relative;overflow:hidden;border-radius:17px;background:#213d30;box-shadow:0 18px 40px rgba(18,45,25,.12)}
.gspage .gspage-image{display:block;width:100%;height:auto;aspect-ratio:1.35;object-fit:cover}
.gspage .gspage-hero__media-caption{position:absolute;left:0;right:0;bottom:0;padding:27px 21px 15px;background:linear-gradient(transparent,rgba(10,30,18,.8));color:#fff;font-size:12px;font-weight:700;line-height:1.4}
.gspage .gspage-content{padding:0 clamp(0px,1.5vw,20px)}
.gspage .gspage-section{margin:clamp(44px,5.2vw,76px) 0}
.gspage .gspage-section h2,.gspage .gspage-related h2,.gspage .gspage-booking-wide h2{margin:11px 0 20px;color:#1b3928;font-size:clamp(27px,3.1vw,42px);font-weight:840;line-height:1.16;letter-spacing:-.025em}
.gspage .gspage-section p{margin:14px 0;color:#516659;font-size:16px;line-height:1.8}
.gspage .gspage-overview{max-width:1020px;padding:0 0 0 30px;border-left:4px solid #b3df84}
.gspage .gspage-overview p{max-width:910px;font-size:17px}
.gspage .gspage-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:25px}
.gspage .gspage-info-grid>div{padding:27px 29px;border:1px solid var(--gs-line);border-radius:15px;background:#f7faf5}
.gspage .gspage-info-grid>div:nth-child(2){background:#fff}
.gspage .gspage-info-grid h3{margin:0 0 13px;color:#234530;font-size:21px;line-height:1.3;font-weight:820}
.gspage .gspage-info-grid p{margin:10px 0;font-size:15px}
.gspage .gspage-stepgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-top:26px}
.gspage .gspage-stepgrid article{min-width:0;padding:25px 21px;border:1px solid #dfe9db;border-radius:15px;background:#f8fbf6}
.gspage .gspage-stepgrid article>span{color:#7fa84d;font-size:28px;font-weight:900;line-height:1;letter-spacing:-.07em}
.gspage .gspage-stepgrid h3{margin:17px 0 10px;color:#23432d;font-size:18px;line-height:1.28;font-weight:810}
.gspage .gspage-stepgrid p{margin:0;font-size:14px;line-height:1.65}
.gspage .gspage-cost{padding:clamp(25px,3.4vw,44px);border-radius:18px;background:#eaf4e2;border:1px solid #d8e9d0}
.gspage .gspage-cost p{max-width:1050px}
.gspage .gspage-after{max-width:1030px}
.gspage .gspage-vehicles{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:36px;align-items:start;padding:clamp(25px,3.6vw,46px);border:1px solid #dce9d5;border-radius:19px;background:#f3f8ef}
.gspage .gspage-vehicles h2{font-size:clamp(25px,2.8vw,37px)}
.gspage .gspage-vehicles p{font-size:14px}
.gspage .gspage-vehicles ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:0;padding:0;list-style:none}
.gspage .gspage-vehicles li{min-width:0;padding:10px 11px;border:1px solid #dce9d7;border-radius:9px;background:#fff;color:#2b4a35;font-size:13px;font-weight:730;line-height:1.4}
.gspage .gspage-faqgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start;margin-top:27px}
.gspage .gspage-faqgrid details{min-width:0;padding:0 20px;border:1px solid #dce9d7;border-radius:12px;background:#fff}
.gspage .gspage-faqgrid summary{position:relative;list-style:none;padding:18px 30px 18px 0;color:#26412e;font-size:16px;font-weight:790;line-height:1.4;cursor:pointer}
.gspage .gspage-faqgrid summary::-webkit-details-marker{display:none}
.gspage .gspage-faqgrid summary:after{content:'+';position:absolute;right:2px;top:12px;color:#629b39;font-size:25px;font-weight:450}
.gspage .gspage-faqgrid details[open] summary:after{content:'−'}
.gspage .gspage-faqgrid details p{margin:0 0 18px;font-size:14px;line-height:1.65}
.gspage .gspage-related{margin:65px 0;padding:33px 0;border-top:1px solid #dce8da;border-bottom:1px solid #dce8da}
.gspage .gspage-related h2{font-size:clamp(25px,2.6vw,35px)}
.gspage .gspage-related__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.gspage .gspage-related__grid a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:17px 18px;border:1px solid #dce8da;border-radius:11px;color:#23482f;font-size:15px;font-weight:770;line-height:1.4;background:#f8fbf6}
.gspage .gspage-related__grid a:hover{background:#e9f5e2}
.gspage .gspage-related__grid span{font-size:22px;font-weight:450;color:#669a43}
.gspage .gspage-booking-wide{width:100%;margin:65px 0 0;padding:clamp(23px,4vw,51px);border:1px solid #d7e6d2;border-radius:20px;background:#f0f7e9;scroll-margin-top:30px}
.gspage .gspage-booking-wide__heading{max-width:960px;margin-bottom:25px}
.gspage .gspage-booking-wide h2{margin:9px 0 14px}
.gspage .gspage-booking-wide__heading p{max-width:850px;color:#52685b;font-size:16px;line-height:1.7;margin:0}
.gspage .gspage-booking-wide__heading a{color:#265f33;text-decoration:underline;font-weight:800}
.gspage .gspage-booking-wide__body{width:100%;min-width:0}
.gspage .gspage-booking-wide__form{width:100%;max-width:none;min-width:0}
.gspage .gspage-booking-wide__form:empty{display:none}
.gspage .gspage-booking-wide__form .gsf-form{width:100%;max-width:none;box-sizing:border-box}
/* GSFeedback is a separate extension. Scope contrast corrections only to its form inside the new landing page. */
.gspage .gspage-booking-wide .gsf-form h2,.gspage .gspage-booking-wide .gsf-form h3{color:#f5fff3}
.gspage .gspage-booking-wide .gsf-form p{color:#d5e7d7}
.gspage .gspage-booking-wide .gsf-form label{color:#fff}
.gspage .gspage-booking-wide .gspage-button--secondary{margin-top:14px;background:#fff;border-color:#c8e2b8;color:#254d30}
.gspage .gspage-booking-wide:has(.gsf-form) .gspage-button--secondary{display:none}
@media(max-width:1120px){.gspage .gspage-stepgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.gspage .gspage-vehicles{grid-template-columns:1fr}.gspage .gspage-vehicles ul{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:800px){.gspage .gspage-hero{grid-template-columns:1fr}.gspage .gspage-hero__media{max-height:390px}.gspage .gspage-image{aspect-ratio:1.8}.gspage .gspage-info-grid,.gspage .gspage-faqgrid{grid-template-columns:1fr}.gspage .gspage-related__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gspage .gspage-vehicles ul{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:580px){.gspage{margin-bottom:42px}.gspage .gspage-hero{padding:23px 19px;border-radius:16px}.gspage .gspage-hero h1{font-size:clamp(30px,8vw,42px)}.gspage .gspage-hero__actions{align-items:stretch;flex-direction:column}.gspage .gspage-hero__actions .gspage-button{width:100%}.gspage .gspage-image{aspect-ratio:1.4}.gspage .gspage-overview{padding-left:17px}.gspage .gspage-stepgrid{grid-template-columns:1fr}.gspage .gspage-vehicles{padding:23px 18px}.gspage .gspage-vehicles ul{grid-template-columns:repeat(2,minmax(0,1fr))}.gspage .gspage-vehicles li{font-size:12px}.gspage .gspage-related__grid{grid-template-columns:1fr}.gspage .gspage-booking-wide{padding:25px 17px;border-radius:15px}}
@media(prefers-reduced-motion:reduce){.gspage .gspage-button{transition:none;transform:none}}

/* Grand Service 1.5.2 — two actions per DIRECTION only; no row booking buttons. */
.gs4-home .gs4-group-footer {
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:14px 18px;background:#f0f7e9;border-top:1px solid #dbe8d5;
}
.gs4-home .gs4-group-footer .gs4-viewall {
  display:inline-flex;align-items:center;flex:1;min-width:0;margin:0;padding:7px 0;
  border:0;background:transparent;color:#2d6724!important;text-align:left;
  font-size:14px;font-weight:850;line-height:1.4;
}
.gs4-home .gs4-group-footer .gs4-viewall:hover {color:#1d4c1b!important;text-decoration:underline;text-underline-offset:4px;background:transparent;}
.gs4-home .gs4-group-footer .gs4-group-book {
  flex:none;display:inline-flex;align-items:center;justify-content:center;min-height:42px;
  padding:10px 15px;border:1px solid #a3d87b;border-radius:9px;
  background:#bde987;color:#1d3b1c;font:inherit;font-size:13px;
  line-height:1.25;font-weight:850;cursor:pointer;
}
.gs4-home .gs4-group-footer .gs4-group-book:hover {background:#a8df73;}
.gs4-home .gs4-group-footer .gs4-group-book:focus-visible {outline:3px solid #6a9f45;outline-offset:3px;}
@media(max-width:380px) {
  .gs4-home .gs4-group-footer{padding:12px;gap:8px;}
  .gs4-home .gs4-group-footer .gs4-viewall{font-size:12px;}
  .gs4-home .gs4-group-footer .gs4-group-book{font-size:12px;padding:9px 10px;}
}

/* Grand Service 1.5.4: full-width booking directly after hero, correct GSFeedback contrast. */
.gspage .gspage-booking-wide{margin:28px 0 48px;padding:clamp(24px,3vw,38px);background:#f1f8eb}
.gspage .gspage-booking-wide__heading h2{font-size:clamp(26px,2.4vw,35px);color:#163a29}
.gspage .gspage-booking-wide__form :is(h1,h2,h3,h4,[class*="title"],[class*="heading"]){color:#f5fff3!important}
.gspage .gspage-booking-wide__form :is(p,label){color:#f0f9ef}
.gspage .gspage-booking-wide__form input{color:#1b3327}
.gspage .gspage-hero__media-caption{display:none!important}
.gspage .gspage-related__grid a{position:relative;display:flex;gap:12px;min-height:64px;align-items:center;text-decoration:none!important}
.gspage .gspage-related__grid span{flex:none;text-decoration:none!important;font-size:20px;line-height:1}
.gspage .gspage-related__grid a:after,.gspage .gspage-related__grid span:after{content:none!important}
.gspage .gspage-vehicles li{font-size:15px;padding:13px 14px}
.gspage .gspage-vehicles p{font-size:15px}
@media(max-width:580px){.gspage .gspage-booking-wide{margin:20px 0 36px;padding:24px 16px}}

/* GS 1.5.5 – category-appropriate marque chips (18 marques plus "И другие"). */
.gspage .gspage-vehicles ul{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px 12px;list-style:none;padding:0;margin:0}
.gspage .gspage-vehicles ul li{min-width:0;text-align:center;line-height:1.25;font-size:15px;white-space:normal;word-break:normal;overflow-wrap:anywhere}
.gspage .gspage-vehicles ul li:last-child{background:#e8f4dd;border:1px solid #cce2bc;color:#23562d;font-weight:700}
@media(max-width:1040px){.gspage .gspage-vehicles ul{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:620px){.gspage .gspage-vehicles ul{grid-template-columns:repeat(2,minmax(0,1fr))}}
