.splide__container{box-sizing:border-box;position:relative}.splide__list{backface-visibility:hidden;display:-ms-flexbox;display:flex;height:100%;margin:0!important;padding:0!important}.splide.is-initialized:not(.is-active) .splide__list{display:block}.splide__pagination{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:center;justify-content:center;margin:0;pointer-events:none}.splide__pagination li{display:inline-block;line-height:1;list-style-type:none;margin:0;pointer-events:auto}.splide:not(.is-overflow) .splide__pagination{display:none}.splide__progress__bar{width:0}.splide{position:relative;visibility:hidden}.splide.is-initialized,.splide.is-rendered{visibility:visible}.splide__slide{backface-visibility:hidden;box-sizing:border-box;-ms-flex-negative:0;flex-shrink:0;list-style-type:none!important;margin:0;position:relative}.splide__slide img{vertical-align:bottom}.splide__spinner{animation:splide-loading 1s linear infinite;border:2px solid #999;border-left-color:transparent;border-radius:50%;bottom:0;contain:strict;display:inline-block;height:20px;left:0;margin:auto;position:absolute;right:0;top:0;width:20px}.splide__sr{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.splide__toggle.is-active .splide__toggle__play,.splide__toggle__pause{display:none}.splide__toggle.is-active .splide__toggle__pause{display:inline}.splide__track{overflow:hidden;position:relative;z-index:0}@keyframes splide-loading{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.splide__track--draggable{-webkit-touch-callout:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.splide__track--fade>.splide__list>.splide__slide{margin:0!important;opacity:0;z-index:0}.splide__track--fade>.splide__list>.splide__slide.is-active{opacity:1;z-index:1}.splide--rtl{direction:rtl}.splide__track--ttb>.splide__list{display:block}.splide__arrow{-ms-flex-align:center;align-items:center;background:#ccc;border:0;border-radius:50%;cursor:pointer;display:-ms-flexbox;display:flex;height:2em;-ms-flex-pack:center;justify-content:center;opacity:.7;padding:0;position:absolute;top:50%;transform:translateY(-50%);width:2em;z-index:1}.splide__arrow svg{fill:#000;height:1.2em;width:1.2em}.splide__arrow:hover:not(:disabled){opacity:.9}.splide__arrow:disabled{opacity:.3}.splide__arrow:focus-visible{outline:3px solid #0bf;outline-offset:3px}.splide__arrow--prev{left:1em}.splide__arrow--prev svg{transform:scaleX(-1)}.splide__arrow--next{right:1em}.splide.is-focus-in .splide__arrow:focus{outline:3px solid #0bf;outline-offset:3px}.splide__pagination{bottom:.5em;left:0;padding:0 1em;position:absolute;right:0;z-index:1}.splide__pagination__page{background:#ccc;border:0;border-radius:50%;display:inline-block;height:8px;margin:3px;opacity:.7;padding:0;position:relative;transition:transform .2s linear;width:8px}.splide__pagination__page.is-active{background:#fff;transform:scale(1.4);z-index:1}.splide__pagination__page:hover{cursor:pointer;opacity:.9}.splide__pagination__page:focus-visible{outline:3px solid #0bf;outline-offset:3px}.splide.is-focus-in .splide__pagination__page:focus{outline:3px solid #0bf;outline-offset:3px}.splide__progress__bar{background:#ccc;height:3px}.splide__slide{-webkit-tap-highlight-color:rgba(0,0,0,0)}.splide__slide:focus{outline:0}@supports(outline-offset:-3px){.splide__slide:focus-visible{outline:3px solid #0bf;outline-offset:-3px}}@media screen and (-ms-high-contrast:none){.splide__slide:focus-visible{border:3px solid #0bf}}@supports(outline-offset:-3px){.splide.is-focus-in .splide__slide:focus{outline:3px solid #0bf;outline-offset:-3px}}@media screen and (-ms-high-contrast:none){.splide.is-focus-in .splide__slide:focus{border:3px solid #0bf}.splide.is-focus-in .splide__track>.splide__list>.splide__slide:focus{border-color:#0bf}}.splide__toggle{cursor:pointer}.splide__toggle:focus-visible{outline:3px solid #0bf;outline-offset:3px}.splide.is-focus-in .splide__toggle:focus{outline:3px solid #0bf;outline-offset:3px}.splide__track--nav>.splide__list>.splide__slide{border:3px solid transparent;cursor:pointer}.splide__track--nav>.splide__list>.splide__slide.is-active{border:3px solid #000}.splide__arrows--rtl .splide__arrow--prev{left:auto;right:1em}.splide__arrows--rtl .splide__arrow--prev svg{transform:scaleX(1)}.splide__arrows--rtl .splide__arrow--next{left:1em;right:auto}.splide__arrows--rtl .splide__arrow--next svg{transform:scaleX(-1)}.splide__arrows--ttb .splide__arrow{left:50%;transform:translate(-50%)}.splide__arrows--ttb .splide__arrow--prev{top:1em}.splide__arrows--ttb .splide__arrow--prev svg{transform:rotate(-90deg)}.splide__arrows--ttb .splide__arrow--next{bottom:1em;top:auto}.splide__arrows--ttb .splide__arrow--next svg{transform:rotate(90deg)}.splide__pagination--ttb{bottom:0;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;left:auto;padding:1em 0;right:.5em;top:0}
.splide__track--nav>.splide__list>.splide__slide{border:3px solid transparent;cursor:pointer;opacity:.7}.splide__track--nav>.splide__list>.splide__slide.is-active{border:3px solid #00bfff;opacity:1}.splide__arrow{-ms-flex-align:center;align-items:center;background:transparent;border:0;border-radius:0;cursor:pointer;display:-ms-flexbox;display:flex;height:2.5em;-ms-flex-pack:center;justify-content:center;padding:0;position:absolute;top:50%;transform:translateY(-50%);width:2.5em;z-index:1}.splide__arrow svg{fill:#00bfff;height:2.5em;transition:fill .2s linear;width:2.5em}.splide__arrow:hover:not(:disabled) svg{fill:#66d9ff}.splide__arrow:disabled{opacity:.3}.splide__arrow:focus-visible{outline:3px solid #00bfff;outline-offset:3px}.splide__arrow--prev{left:1em}.splide__arrow--prev svg{transform:scaleX(-1)}.splide__arrow--next{right:1em}.splide.is-focus-in .splide__arrow:focus{outline:3px solid #00bfff;outline-offset:3px}.splide__pagination{bottom:.5em;left:0;padding:0 1em;position:absolute;right:0;z-index:1}.splide__pagination__page{background:#ccc;border:0;border-radius:50%;display:inline-block;height:10px;margin:3px;padding:0;position:relative;transition:background-color .2s linear,transform .2s linear;width:10px}.splide__pagination__page.is-active{background:#00bfff;transform:scale(1.4);z-index:1}.splide__pagination__page:hover{background:#66d9ff;cursor:pointer;opacity:.9}.splide__pagination__page:focus-visible{outline:3px solid #00bfff;outline-offset:3px}.splide.is-focus-in .splide__pagination__page:focus{outline:3px solid #00bfff;outline-offset:3px}.splide__container{box-sizing:border-box;position:relative}.splide__list{backface-visibility:hidden;display:-ms-flexbox;display:flex;height:100%;margin:0!important;padding:0!important}.splide.is-initialized:not(.is-active) .splide__list{display:block}.splide__pagination{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:center;justify-content:center;margin:0;pointer-events:none}.splide__pagination li{display:inline-block;line-height:1;list-style-type:none;margin:0;pointer-events:auto}.splide:not(.is-overflow) .splide__pagination{display:none}.splide__progress__bar{width:0}.splide{position:relative;visibility:hidden}.splide.is-initialized,.splide.is-rendered{visibility:visible}.splide__slide{backface-visibility:hidden;box-sizing:border-box;-ms-flex-negative:0;flex-shrink:0;list-style-type:none!important;margin:0;position:relative}.splide__slide img{vertical-align:bottom}.splide__spinner{animation:splide-loading 1s linear infinite;border:2px solid #00bfff;border-left-color:transparent;border-radius:50%;bottom:0;contain:strict;display:inline-block;height:20px;left:0;margin:auto;position:absolute;right:0;top:0;width:20px}.splide__sr{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.splide__toggle.is-active .splide__toggle__play,.splide__toggle__pause{display:none}.splide__toggle.is-active .splide__toggle__pause{display:inline}.splide__track{overflow:hidden;position:relative;z-index:0}@keyframes splide-loading{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.splide__track--draggable{-webkit-touch-callout:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.splide__track--fade>.splide__list>.splide__slide{margin:0!important;opacity:0;z-index:0}.splide__track--fade>.splide__list>.splide__slide.is-active{opacity:1;z-index:1}.splide--rtl{direction:rtl}.splide__track--ttb>.splide__list{display:block}.splide__progress__bar{background:#ccc;height:3px}.splide__slide{-webkit-tap-highlight-color:rgba(0,0,0,0)}.splide__slide:focus{outline:0}@supports(outline-offset:-3px){.splide__slide:focus-visible{outline:3px solid #00bfff;outline-offset:-3px}}@media screen and (-ms-high-contrast:none){.splide__slide:focus-visible{border:3px solid #00bfff}}@supports(outline-offset:-3px){.splide.is-focus-in .splide__slide:focus{outline:3px solid #00bfff;outline-offset:-3px}}@media screen and (-ms-high-contrast:none){.splide.is-focus-in .splide__slide:focus{border:3px solid #00bfff}.splide.is-focus-in .splide__track>.splide__list>.splide__slide:focus{border-color:#00bfff}}.splide__toggle{cursor:pointer}.splide__toggle:focus-visible{outline:3px solid #00bfff;outline-offset:3px}.splide.is-focus-in .splide__toggle:focus{outline:3px solid #00bfff;outline-offset:3px}.splide__arrows--rtl .splide__arrow--prev{left:auto;right:1em}.splide__arrows--rtl .splide__arrow--prev svg{transform:scaleX(1)}.splide__arrows--rtl .splide__arrow--next{left:1em;right:auto}.splide__arrows--rtl .splide__arrow--next svg{transform:scaleX(-1)}.splide__arrows--ttb .splide__arrow{left:50%;transform:translate(-50%)}.splide__arrows--ttb .splide__arrow--prev{top:1em}.splide__arrows--ttb .splide__arrow--prev svg{transform:rotate(-90deg)}.splide__arrows--ttb .splide__arrow--next{bottom:1em;top:auto}.splide__arrows--ttb .splide__arrow--next svg{transform:rotate(90deg)}.splide__pagination--ttb{bottom:0;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;left:auto;padding:1em 0;right:.5em;top:0}
.glightbox-container{width:100%;height:100%;position:fixed;top:0;left:0;z-index:999999!important;overflow:hidden;-ms-touch-action:none;touch-action:none;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;outline:0}.glightbox-container.inactive{display:none}.glightbox-container .gcontainer{position:relative;width:100%;height:100%;z-index:9999;overflow:hidden}.glightbox-container .gslider{-webkit-transition:-webkit-transform .4s ease;transition:-webkit-transform .4s ease;transition:transform .4s ease;transition:transform .4s ease,-webkit-transform .4s ease;height:100%;left:0;top:0;width:100%;position:relative;overflow:hidden;display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.glightbox-container .gslide{width:100%;position:absolute;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;opacity:0}.glightbox-container .gslide.current{opacity:1;z-index:99999;position:relative}.glightbox-container .gslide.prev{opacity:1;z-index:9999}.glightbox-container .gslide-inner-content{width:100%}.glightbox-container .ginner-container{position:relative;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-width:100%;margin:auto;height:100vh}.glightbox-container .ginner-container.gvideo-container{width:100%}.glightbox-container .ginner-container.desc-bottom,.glightbox-container .ginner-container.desc-top{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.glightbox-container .ginner-container.desc-left,.glightbox-container .ginner-container.desc-right{max-width:100%!important}.gslide iframe,.gslide video{outline:0!important;border:none;min-height:165px;-webkit-overflow-scrolling:touch;-ms-touch-action:auto;touch-action:auto}.gslide:not(.current){pointer-events:none}.gslide-image{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.gslide-image img{max-height:100vh;display:block;padding:0;float:none;outline:0;border:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;max-width:100vw;width:auto;height:auto;-o-object-fit:cover;object-fit:cover;-ms-touch-action:none;touch-action:none;margin:auto;min-width:200px}.desc-bottom .gslide-image img,.desc-top .gslide-image img{width:auto}.desc-left .gslide-image img,.desc-right .gslide-image img{width:auto;max-width:100%}.gslide-image img.zoomable{position:relative}.gslide-image img.dragging{cursor:-webkit-grabbing!important;cursor:grabbing!important;-webkit-transition:none;transition:none}.gslide-video{position:relative;max-width:100vh;width:100%!important}.gslide-video .plyr__poster-enabled.plyr--loading .plyr__poster{display:none}.gslide-video .gvideo-wrapper{width:100%;margin:auto}.gslide-video::before{content:'';position:absolute;width:100%;height:100%;background:rgba(255,0,0,.34);display:none}.gslide-video.playing::before{display:none}.gslide-video.fullscreen{max-width:100%!important;min-width:100%;height:75vh}.gslide-video.fullscreen video{max-width:100%!important;width:100%!important}.gslide-inline{background:#fff;text-align:left;max-height:calc(100vh - 40px);overflow:auto;max-width:100%;margin:auto}.gslide-inline .ginlined-content{padding:20px;width:100%}.gslide-inline .dragging{cursor:-webkit-grabbing!important;cursor:grabbing!important;-webkit-transition:none;transition:none}.ginlined-content{overflow:auto;display:block!important;opacity:1}.gslide-external{display:-webkit-box;display:-ms-flexbox;display:flex;width:100%;min-width:100%;background:#fff;padding:0;overflow:auto;max-height:75vh;height:100%}.gslide-media{display:-webkit-box;display:-ms-flexbox;display:flex;width:auto}.zoomed .gslide-media{-webkit-box-shadow:none!important;box-shadow:none!important}.desc-bottom .gslide-media,.desc-top .gslide-media{margin:0 auto;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.gslide-description{position:relative;-webkit-box-flex:1;-ms-flex:1 0 100%;flex:1 0 100%}.gslide-description.description-left,.gslide-description.description-right{max-width:100%}.gslide-description.description-bottom,.gslide-description.description-top{margin:0 auto;width:100%}.gslide-description p{margin-bottom:12px}.gslide-description p:last-child{margin-bottom:0}.zoomed .gslide-description{display:none}.glightbox-button-hidden{display:none}.glightbox-mobile .glightbox-container .gslide-description{height:auto!important;width:100%;position:absolute;bottom:0;padding:19px 11px;max-width:100vw!important;-webkit-box-ordinal-group:3!important;-ms-flex-order:2!important;order:2!important;max-height:78vh;overflow:auto!important;background:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,0)),to(rgba(0,0,0,.75)));background:linear-gradient(to bottom,rgba(0,0,0,0) 0,rgba(0,0,0,.75) 100%);-webkit-transition:opacity .3s linear;transition:opacity .3s linear;padding-bottom:50px}.glightbox-mobile .glightbox-container .gslide-title{color:#fff;font-size:1em}.glightbox-mobile .glightbox-container .gslide-desc{color:#a1a1a1}.glightbox-mobile .glightbox-container .gslide-desc a{color:#fff;font-weight:700}.glightbox-mobile .glightbox-container .gslide-desc *{color:inherit}.glightbox-mobile .glightbox-container .gslide-desc .desc-more{color:#fff;opacity:.4}.gdesc-open .gslide-media{-webkit-transition:opacity .5s ease;transition:opacity .5s ease;opacity:.4}.gdesc-open .gdesc-inner{padding-bottom:30px}.gdesc-closed .gslide-media{-webkit-transition:opacity .5s ease;transition:opacity .5s ease;opacity:1}.greset{-webkit-transition:all .3s ease;transition:all .3s ease}.gabsolute{position:absolute}.grelative{position:relative}.glightbox-desc{display:none!important}.glightbox-open{overflow:hidden}.gloader{height:25px;width:25px;-webkit-animation:lightboxLoader .8s infinite linear;animation:lightboxLoader .8s infinite linear;border:2px solid #fff;border-right-color:transparent;border-radius:50%;position:absolute;display:block;z-index:9999;left:0;right:0;margin:0 auto;top:47%}.goverlay{width:100%;height:calc(100vh + 1px);position:fixed;top:-1px;left:0;background:#000;will-change:opacity}.glightbox-mobile .goverlay{background:#000}.gclose,.gnext,.gprev{z-index:99999;cursor:pointer;width:26px;height:44px;border:none;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.gclose svg,.gnext svg,.gprev svg{display:block;width:25px;height:auto;margin:0;padding:0}.gclose.disabled,.gnext.disabled,.gprev.disabled{opacity:.1}.gclose .garrow,.gnext .garrow,.gprev .garrow{stroke:#fff}.gbtn.focused{outline:2px solid #0f3d81}iframe.wait-autoplay{opacity:0}.glightbox-closing .gclose,.glightbox-closing .gnext,.glightbox-closing .gprev{opacity:0!important}.glightbox-clean .gslide-description{background:#fff}.glightbox-clean .gdesc-inner{padding:22px 20px}.glightbox-clean .gslide-title{font-size:1em;font-weight:400;font-family:arial;color:#000;margin-bottom:19px;line-height:1.4em}.glightbox-clean .gslide-desc{font-size:.86em;margin-bottom:0;font-family:arial;line-height:1.4em}.glightbox-clean .gslide-video{background:#000}.glightbox-clean .gclose,.glightbox-clean .gnext,.glightbox-clean .gprev{background-color:rgba(0,0,0,.75);border-radius:4px}.glightbox-clean .gclose path,.glightbox-clean .gnext path,.glightbox-clean .gprev path{fill:#fff}.glightbox-clean .gprev{position:absolute;top:-100%;left:30px;width:40px;height:50px}.glightbox-clean .gnext{position:absolute;top:-100%;right:30px;width:40px;height:50px}.glightbox-clean .gclose{width:35px;height:35px;top:15px;right:10px;position:absolute}.glightbox-clean .gclose svg{width:18px;height:auto}.glightbox-clean .gclose:hover{opacity:1}.gfadeIn{-webkit-animation:gfadeIn .5s ease;animation:gfadeIn .5s ease}.gfadeOut{-webkit-animation:gfadeOut .5s ease;animation:gfadeOut .5s ease}.gslideOutLeft{-webkit-animation:gslideOutLeft .3s ease;animation:gslideOutLeft .3s ease}.gslideInLeft{-webkit-animation:gslideInLeft .3s ease;animation:gslideInLeft .3s ease}.gslideOutRight{-webkit-animation:gslideOutRight .3s ease;animation:gslideOutRight .3s ease}.gslideInRight{-webkit-animation:gslideInRight .3s ease;animation:gslideInRight .3s ease}.gzoomIn{-webkit-animation:gzoomIn .5s ease;animation:gzoomIn .5s ease}.gzoomOut{-webkit-animation:gzoomOut .5s ease;animation:gzoomOut .5s ease}@-webkit-keyframes lightboxLoader{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes lightboxLoader{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes gfadeIn{from{opacity:0}to{opacity:1}}@keyframes gfadeIn{from{opacity:0}to{opacity:1}}@-webkit-keyframes gfadeOut{from{opacity:1}to{opacity:0}}@keyframes gfadeOut{from{opacity:1}to{opacity:0}}@-webkit-keyframes gslideInLeft{from{opacity:0;-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0)}to{visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@keyframes gslideInLeft{from{opacity:0;-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0)}to{visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@-webkit-keyframes gslideOutLeft{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0);opacity:0;visibility:hidden}}@keyframes gslideOutLeft{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0);opacity:0;visibility:hidden}}@-webkit-keyframes gslideInRight{from{opacity:0;visibility:visible;-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0)}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@keyframes gslideInRight{from{opacity:0;visibility:visible;-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0)}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@-webkit-keyframes gslideOutRight{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0);opacity:0}}@keyframes gslideOutRight{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0);opacity:0}}@-webkit-keyframes gzoomIn{from{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:1}}@keyframes gzoomIn{from{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:1}}@-webkit-keyframes gzoomOut{from{opacity:1}50%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:0}}@keyframes gzoomOut{from{opacity:1}50%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:0}}@media (min-width:769px){.glightbox-container .ginner-container{width:auto;height:auto;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.glightbox-container .ginner-container.desc-top .gslide-description{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.glightbox-container .ginner-container.desc-top .gslide-image,.glightbox-container .ginner-container.desc-top .gslide-image img{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.glightbox-container .ginner-container.desc-left .gslide-description{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.glightbox-container .ginner-container.desc-left .gslide-image{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.gslide-image img{max-height:97vh;max-width:100%}.gslide-image img.zoomable{cursor:-webkit-zoom-in;cursor:zoom-in}.zoomed .gslide-image img.zoomable{cursor:-webkit-grab;cursor:grab}.gslide-inline{max-height:95vh}.gslide-external{max-height:100vh}.gslide-description.description-left,.gslide-description.description-right{max-width:275px}.glightbox-open{height:auto}.goverlay{background:rgba(0,0,0,.92)}.glightbox-clean .gslide-media{-webkit-box-shadow:1px 2px 9px 0 rgba(0,0,0,.65);box-shadow:1px 2px 9px 0 rgba(0,0,0,.65)}.glightbox-clean .description-left .gdesc-inner,.glightbox-clean .description-right .gdesc-inner{position:absolute;height:100%;overflow-y:auto}.glightbox-clean .gclose,.glightbox-clean .gnext,.glightbox-clean .gprev{background-color:rgba(0,0,0,.32)}.glightbox-clean .gclose:hover,.glightbox-clean .gnext:hover,.glightbox-clean .gprev:hover{background-color:rgba(0,0,0,.7)}.glightbox-clean .gprev{top:45%}.glightbox-clean .gnext{top:45%}}@media (min-width:992px){.glightbox-clean .gclose{opacity:.7;right:20px}}@media screen and (max-height:420px){.goverlay{background:#000}}
/* ============================================================
   ФИНСТАНДАРТ — стили эталонных страниц (October CMS)
   Подключать ОДИН раз глобально (в layout темы или в assets).
   ВСЕ селекторы скоуплены под .fs-home — не задевают остальной сайт.
   Бренд: брендбук 31.05.2026 (Oranienbaum + Montserrat).
   Палитра: #343A49 / #D0A87B / #FFFFFF / #A9A4A1 / #000000.
   ============================================================ */
body { margin: 0; }


.fs-home {
  --brand:        #343A49;   /* графит-синий */
  --brand-2:      #434B5F;   /* hover/осветление */
  --accent:       #D0A87B;   /* золотисто-бежевый */
  --accent-2:     #b98e5e;   /* hover акцента */
  --accent-soft:  #F3E7D7;   /* светлая подложка бежевого */
  --neutral:      #A9A4A1;   /* серо-бежевый */
  --ink:          #1c1f26;   /* основной текст */
  --ink-muted:    #5f6470;   /* служебный */
  --bg:           #FFFFFF;
  --bg-soft:      #F6F7F9;
  --line:         #E6E8EC;

  --font:         'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-display: 'Oranienbaum', Georgia, 'Times New Roman', serif;
  --wrap:         1140px;

  font-family: var(--font);
  color: var(--ink);
  line-height: 1.6;
  background: var(--bg);
  -webkit-font-smoothing: antialiased;
  overflow-x: clip;
}
.fs-home *, .fs-home *::before, .fs-home *::after { box-sizing: border-box; margin: 0; padding: 0; }
.fs-home img { max-width: 100%; display: block; }
.fs-home a { color: inherit; text-decoration: none; }
.fs-home__wrap { max-width: var(--wrap); margin: 0 auto; padding: 0 24px; }

.fs-home h1, .fs-home h2, .fs-home h3 { font-family: var(--font-display); font-weight: 400; line-height: 1.15; }
.fs-home section { padding: 72px 0; }

/* кнопки */
.fs-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  font-family: var(--font); font-weight: 600; font-size: .98rem;
  padding: 15px 30px; border-radius: 8px; cursor: pointer; border: 2px solid transparent;
  transition: background .18s, color .18s, border-color .18s; text-align: center;
}
.fs-home .fs-btn--accent { background: var(--accent); color: var(--brand); }
.fs-home .fs-btn--accent:hover { background: var(--accent-2); color: #fff; }
.fs-home .fs-btn--ghost { background: transparent; color: #fff; border-color: rgba(255,255,255,.5); }
.fs-home .fs-btn--ghost:hover { border-color: var(--accent); color: var(--accent); }
.fs-home .fs-btn--dark { background: var(--brand); color: #fff; }
.fs-home .fs-btn--dark:hover { background: var(--brand-2); color: #fff; }

.fs-eyebrow { font-family: var(--font); font-weight: 600; font-size: .8rem; letter-spacing: .14em;
  text-transform: uppercase; color: var(--accent-2); margin-bottom: 14px; }
.fs-sec-title { font-size: clamp(1.8rem, 3.2vw, 2.6rem); color: var(--brand); margin-bottom: 14px; }
.fs-sec-lead { color: var(--ink-muted); max-width: 720px; font-size: 1.05rem; margin-bottom: 44px; }

/* ===================== HEADER ===================== */
.fs-header { background: var(--brand); color: #fff; position: sticky; top: 0; z-index: 100; }
.fs-header__bar { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 18px 0; }
.fs-logo { display: flex; align-items: center; gap: 14px; }
.fs-logo__emblem { width: 52px; height: 52px; object-fit: contain; }
.fs-logo__txt { display: flex; flex-direction: column; }
.fs-logo__name { font-family: var(--font-display); font-size: 1.55rem; letter-spacing: .07em; line-height: 1; }
.fs-logo__sub { font-size: .66rem; letter-spacing: .26em; text-transform: uppercase; color: var(--accent); margin-top: 5px; }
.fs-header__contacts { display: flex; align-items: center; gap: 22px; }
.fs-header__phone { font-family: var(--font-display); font-size: 1.4rem; letter-spacing: .02em; white-space: nowrap; }
.fs-header__phone span { display: block; font-family: var(--font); font-size: .68rem; letter-spacing: .12em; text-transform: uppercase; color: var(--neutral); }
.fs-header__phones { display: flex; gap: 24px; align-items: center; }
.fs-nav { border-top: 1px solid rgba(255,255,255,.12); overflow: visible; }
.fs-nav__list { display: flex; flex-wrap: nowrap; gap: 2px; list-style: none; justify-content: space-between; }
.fs-nav__list > li > a { display: block; padding: 14px 13px; font-size: .9rem; font-weight: 500; color: #e9eaee; white-space: nowrap; transition: color .15s; }
.fs-nav__list > li > a:hover { color: var(--accent); }

/* — выпадающее меню — */
.fs-nav__list > li.with_items { position: relative; }
.fs-nav__list > li.with_items > a::after { content: ""; display: inline-block; width: 6px; height: 6px; border-right: 2px solid var(--accent); border-bottom: 2px solid var(--accent); transform: rotate(45deg); margin-left: 8px; vertical-align: middle; margin-top: -2px; }
.fs-nav__list > li.with_items > ul { display: none; position: absolute; top: 100%; left: 0; min-width: 240px; background: #fff; border-radius: 10px; box-shadow: 0 14px 36px rgba(0,0,0,.18); padding: 10px 0; z-index: 50; list-style: none; }
.fs-nav__list > li.with_items:hover > ul { display: block; }
.fs-nav__list > li.with_items > ul > li > a { display: block; padding: 10px 22px; font-size: .88rem; font-weight: 500; color: var(--brand); white-space: nowrap; transition: background .12s, color .12s; }
.fs-nav__list > li.with_items > ul > li > a:hover { background: var(--accent-soft); color: var(--brand); }

/* ===================== HERO ===================== */
.fs-hero { background: linear-gradient(160deg, #2c313e 0%, var(--brand) 60%, #404862 100%); color: #fff; }
.fs-hero__grid { display: grid; grid-template-columns: 1.25fr .9fr; gap: 56px; align-items: center; }
.fs-hero h1 { font-size: clamp(2.1rem, 4.4vw, 3.4rem); margin-bottom: 22px; }
.fs-hero h1 b { color: var(--accent); font-weight: 400; }
.fs-hero__lead { font-size: 1.12rem; color: #d7dae1; max-width: 560px; margin-bottom: 30px; }
.fs-hero__cta { display: flex; flex-wrap: wrap; gap: 14px; margin-bottom: 30px; }
.fs-hero__quick { display: flex; flex-wrap: wrap; gap: 10px 18px; font-size: .9rem; color: var(--neutral); }
.fs-hero__quick a { color: #cfd2da; border-bottom: 1px dashed rgba(208,168,123,.5); padding-bottom: 1px; }
.fs-hero__quick a:hover { color: var(--accent); }
/* hero — карточка экспресс-расчёта */
.fs-hero__card { background: #fff; color: var(--ink); border-radius: 14px; padding: 30px; box-shadow: 0 24px 60px rgba(0,0,0,.28); }
.fs-hero__card h2 { font-size: 1.45rem; color: var(--brand); margin-bottom: 8px; }
.fs-hero__card p { font-size: .92rem; color: var(--ink-muted); margin-bottom: 18px; }
.fs-hero__card .fs-field { width: 100%; padding: 13px 15px; border: 1px solid var(--line); border-radius: 8px; font-family: var(--font); font-size: .95rem; margin-bottom: 12px; }
.fs-hero__card .fs-btn { width: 100%; }
.fs-hero__card small { display: block; text-align: center; color: var(--ink-muted); margin-top: 12px; font-size: .78rem; }

/* ===================== ПРЕИМУЩЕСТВА ===================== */
.fs-adv { background: var(--bg-soft); }
.fs-adv__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; }
.fs-adv__card { background: #fff; border: 1px solid var(--line); border-radius: 12px; padding: 28px 24px; }
.fs-adv__num { font-family: var(--font-display); font-size: 2.3rem; color: var(--accent-2); line-height: 1; margin-bottom: 10px; }
.fs-adv__card h3 { font-family: var(--font); font-weight: 600; font-size: 1.02rem; color: var(--brand); margin-bottom: 6px; }
.fs-adv__card p { font-size: .9rem; color: var(--ink-muted); }

/* ===================== УСЛУГИ ===================== */
.fs-serv__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.fs-serv__card { border: 1px solid var(--line); border-radius: 12px; padding: 26px 24px; transition: border-color .18s, box-shadow .18s, transform .18s; }
.fs-serv__card:hover { border-color: var(--accent); box-shadow: 0 14px 34px rgba(52,58,73,.1); transform: translateY(-3px); }
.fs-serv__card h3 { font-family: var(--font); font-weight: 600; font-size: 1.08rem; color: var(--brand); margin-bottom: 8px; }
.fs-serv__card p { font-size: .9rem; color: var(--ink-muted); margin-bottom: 14px; }
.fs-serv__card a { font-size: .85rem; font-weight: 600; color: var(--accent-2); }
.fs-serv__card a:hover { color: var(--brand); }
.fs-serv__ico { width: 48px; height: 48px; border-radius: 12px; background: var(--accent-soft); display: flex; align-items: center; justify-content: center; margin-bottom: 16px; transition: background .18s; }
.fs-serv__card:hover .fs-serv__ico { background: var(--accent); }
.fs-serv__ico svg { width: 24px; height: 24px; stroke: var(--brand); fill: none; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }

/* ===================== B2B ДОВЕРИЕ ===================== */
.fs-trust { background: var(--brand); color: #fff; }
.fs-trust__head { max-width: 760px; margin-bottom: 44px; }
.fs-trust__head .fs-eyebrow { color: var(--accent); }
.fs-trust h2 { font-size: clamp(1.9rem, 3.4vw, 2.7rem); margin-bottom: 16px; }
.fs-trust h2 b { color: var(--accent); font-weight: 400; }
.fs-trust__lead { color: #cdd0d8; font-size: 1.06rem; }
.fs-trust__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; margin-bottom: 44px; }
.fs-trust__stat .fs-big { font-family: var(--font-display); font-size: 2.6rem; color: var(--accent); line-height: 1; }
.fs-trust__stat p { font-size: .9rem; color: #cdd0d8; margin-top: 8px; }
.fs-trust__cols { display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px; border-top: 1px solid rgba(255,255,255,.14); padding-top: 40px; }
.fs-trust__col h3 { font-family: var(--font); font-weight: 600; font-size: 1.05rem; color: #fff; margin-bottom: 10px; }
.fs-trust__col h3::before { content: ""; display: inline-block; width: 22px; height: 2px; background: var(--accent); vertical-align: middle; margin-right: 10px; }
.fs-trust__col p { font-size: .92rem; color: #c4c8d1; }

/* ===================== КЕЙСЫ (разворачиваются) ===================== */
.fs-cases { background: var(--bg-soft); }
.fs-cases__list { max-width: 880px; margin-top: 36px; display: flex; flex-direction: column; gap: 14px; }
.fs-case { background: #fff; border: 1px solid var(--line); border-left: 3px solid var(--accent); border-radius: 12px; }
.fs-case > summary { list-style: none; cursor: pointer; padding: 22px 26px; font-family: var(--font); font-weight: 600; font-size: 1.02rem; color: var(--brand); display: flex; justify-content: space-between; align-items: center; gap: 16px; }
.fs-case > summary::-webkit-details-marker { display: none; }
.fs-case > summary::after { content: "+"; flex: 0 0 auto; font-family: var(--font-display); font-size: 1.6rem; color: var(--accent); line-height: 1; }
.fs-case[open] > summary::after { content: "–"; }
.fs-case__body { padding: 0 26px 24px; }
.fs-case__body p { font-size: .94rem; color: var(--ink-muted); margin: 0 0 14px; }
.fs-case__body p:last-child { margin-bottom: 0; }
.fs-case__body strong { display: block; color: var(--brand); font-weight: 600; margin-bottom: 3px; }
.fs-case__body ul { margin: 4px 0 14px; padding-left: 20px; }
.fs-case__body li { font-size: .94rem; color: var(--ink-muted); margin-bottom: 5px; }

/* ===================== ПОПУЛЯРНЫЕ ===================== */
.fs-pop { background: var(--bg-soft); }
.fs-pop__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.fs-pop__card { background: #fff; border: 1px solid var(--line); border-radius: 12px; overflow: hidden; display: flex; flex-direction: column; }
.fs-pop__card .fs-pop__body { padding: 24px; display: flex; flex-direction: column; flex: 1; }
.fs-pop__card .fs-pop__body .fs-btn { margin-top: auto; align-self: flex-start; }
.fs-pop__card h3 { font-family: var(--font); font-weight: 600; font-size: 1.06rem; color: var(--brand); margin-bottom: 6px; }
.fs-pop__price { font-family: var(--font-display); font-size: 1.7rem; color: var(--accent-2); margin: 10px 0 4px; }
.fs-pop__price span { font-family: var(--font); font-size: .82rem; color: var(--ink-muted); }
.fs-pop__card p { font-size: .88rem; color: var(--ink-muted); margin-bottom: 16px; }

/* ===================== АКЦИЯ ===================== */
.fs-promo__box { background: linear-gradient(135deg, var(--accent-soft), #fff); border: 1px solid var(--accent); border-radius: 16px; padding: 44px; display: grid; grid-template-columns: 1.4fr auto; gap: 30px; align-items: center; }
.fs-promo__box h2 { color: var(--brand); font-size: 1.8rem; margin-bottom: 10px; }
.fs-promo__box p { color: var(--ink-muted); max-width: 560px; }

/* ===================== БАНКИ ===================== */
.fs-banks { text-align: center; }
.fs-banks__logos { display: flex; flex-wrap: wrap; justify-content: center; gap: 14px 18px; margin-top: 12px; }
.fs-banks__logos span { padding: 12px 22px; border: 1px solid var(--line); border-radius: 999px; font-weight: 600; font-size: .92rem; color: var(--brand); background: #fff; }

/* ===================== ПАРТНЁРЫ / НАМ ДОВЕРЯЮТ ===================== */
.fs-partners { background: var(--bg-soft); }
.fs-partners__groups { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 18px; }
.fs-partners__group { border: 1px solid var(--line); border-radius: 12px; padding: 26px 24px; background: #fff; }
.fs-partners__group h3 { font-family: var(--font); font-weight: 600; font-size: 1.02rem; color: var(--brand); margin-bottom: 12px; }
.fs-partners__group h3::before { content: ""; display: inline-block; width: 22px; height: 2px; background: var(--accent); vertical-align: middle; margin-right: 10px; }
.fs-partners__group ul { list-style: none; }
.fs-partners__group li { font-size: .94rem; color: var(--ink-muted); padding: 8px 0; border-top: 1px solid var(--line); }
.fs-partners__group li:first-child { border-top: none; }

/* ===================== CTA ===================== */
.fs-cta { background: var(--brand); color: #fff; text-align: center; }
.fs-cta h2 { font-size: clamp(1.9rem, 3.4vw, 2.6rem); margin-bottom: 14px; }
.fs-cta h2 b { color: var(--accent); font-weight: 400; }
.fs-cta p { color: #cdd0d8; max-width: 620px; margin: 0 auto 28px; font-size: 1.05rem; }

/* ===================== ЭТАПЫ (таймлайн с иконками) ===================== */
.fs-steps__grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 18px; counter-reset: step; position: relative; }
.fs-steps__item { position: relative; text-align: center; }
.fs-steps__item::before { content: ""; position: absolute; top: 29px; left: 50%; width: calc(100% + 18px); height: 2px; z-index: 0;
  background: repeating-linear-gradient(90deg, var(--accent) 0 7px, transparent 7px 15px); }
.fs-steps__item:last-child::before { content: none; }
.fs-steps__node { position: relative; z-index: 1; width: 58px; height: 58px; margin: 0 auto 16px; border-radius: 50%;
  background: var(--brand); border: 4px solid var(--bg); display: flex; align-items: center; justify-content: center;
  box-shadow: 0 6px 16px rgba(52,58,73,.16); transition: transform .18s; }
.fs-steps__item:hover .fs-steps__node { transform: translateY(-3px); }
.fs-steps__node svg { width: 24px; height: 24px; stroke: var(--accent); fill: none; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.fs-steps__node::after { counter-increment: step; content: counter(step); position: absolute; top: -6px; right: -6px;
  width: 22px; height: 22px; border-radius: 50%; background: var(--accent); color: var(--brand);
  font-family: var(--font-display); font-size: .82rem; display: flex; align-items: center; justify-content: center; border: 2px solid var(--bg); }
.fs-steps__item p { font-size: .9rem; color: var(--ink-muted); }

/* ===================== FOOTER ===================== */
.fs-footer { background: #23272f; color: #c4c8d1; padding: 56px 0 28px; }
.fs-footer__grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: 36px; margin-bottom: 36px; }
.fs-footer__name { font-family: var(--font-display); font-size: 1.5rem; color: #fff; letter-spacing: .06em; margin-bottom: 12px; }
.fs-footer h4 { font-family: var(--font); font-weight: 600; color: #fff; font-size: .95rem; margin-bottom: 14px; }
.fs-footer a, .fs-footer p { font-size: .9rem; color: #b6bac4; margin-bottom: 8px; }
.fs-footer a:hover { color: var(--accent); }
.fs-footer__bottom { border-top: 1px solid rgba(255,255,255,.1); padding-top: 22px; font-size: .8rem; color: #8b909c; }

/* ===================== АДАПТИВ ===================== */
/* ===================== ХЛЕБНЫЕ КРОШКИ (страницы-категории) ===================== */
.fs-crumb { font-size: .85rem; color: var(--neutral); margin-bottom: 16px; display: flex; flex-wrap: wrap; gap: 8px; }
.fs-crumb a { color: #cfd2da; }
.fs-crumb a:hover { color: var(--accent); }
.fs-crumb .sep { opacity: .5; }
.fs-crumb b { color: var(--accent); font-weight: 400; }

/* ===================== КОГДА НУЖНА ОЦЕНКА ===================== */
.fs-need { background: var(--bg-soft); }
.fs-need__grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; }
.fs-need__item { background: #fff; border: 1px solid var(--line); border-radius: 12px; padding: 22px 24px; display: flex; gap: 14px; align-items: flex-start; }
.fs-need__item::before { content: ""; flex: 0 0 auto; width: 9px; height: 9px; border-radius: 50%; background: var(--accent); margin-top: 7px; }
.fs-need__item b { color: var(--brand); font-weight: 600; display: block; margin-bottom: 3px; }
.fs-need__item span { font-size: .92rem; color: var(--ink-muted); }

/* ===================== FAQ ===================== */
.fs-faq__list { max-width: 860px; }
.fs-faq__item { border: 1px solid var(--line); border-radius: 12px; margin-bottom: 12px; background: #fff; overflow: hidden; }
.fs-faq__item summary { list-style: none; cursor: pointer; padding: 20px 24px; font-family: var(--font); font-weight: 600; color: var(--brand); font-size: 1rem; display: flex; justify-content: space-between; align-items: center; gap: 16px; }
.fs-faq__item summary::-webkit-details-marker { display: none; }
.fs-faq__item summary::after { content: "+"; color: var(--accent-2); font-size: 1.5rem; line-height: 1; flex: 0 0 auto; }
.fs-faq__item[open] summary::after { content: "\2013"; }
.fs-faq__item > p { padding: 0 24px 20px; font-size: .94rem; color: var(--ink-muted); }
.fs-faq__item ul { list-style: disc; margin: 0; padding: 2px 24px 20px 46px; }
.fs-faq__item li { font-size: .93rem; color: var(--ink-muted); margin-bottom: 6px; }
/* развёрнутые этапы (что делаете вы / что делаем мы / что вы получаете) */
.fs-faq__item .fs-stage { padding: 2px 24px 22px; }
.fs-faq__item .fs-stage h4 { font-family: var(--font); font-weight: 600; color: var(--brand); font-size: .9rem; margin: 14px 0 5px; }
.fs-faq__item .fs-stage h4:first-child { margin-top: 0; }
.fs-faq__item .fs-stage p { font-size: .93rem; color: var(--ink-muted); margin: 0; padding: 0; }
.fs-faq__item .fs-stage ul { list-style: disc; margin: 4px 0 0; padding: 0 0 0 22px; }
.fs-faq__item .fs-stage li { font-size: .93rem; color: var(--ink-muted); margin-bottom: 4px; }

/* ===================== СРАВНЕНИЕ «СЕЙЧАС / ПОТОМ» ===================== */
.fs-compare__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; }
.fs-compare__col { border: 1px solid var(--line); border-radius: 14px; padding: 30px 28px; }
.fs-compare__col--good { background: linear-gradient(135deg, var(--accent-soft), #fff); border-color: var(--accent); }
.fs-compare__col h3 { font-family: var(--font); font-weight: 600; font-size: 1.1rem; color: var(--brand); margin-bottom: 16px; }
.fs-compare__col ul { list-style: none; }
.fs-compare__col li { position: relative; padding-left: 28px; margin-bottom: 14px; font-size: .95rem; color: var(--ink-muted); }
.fs-compare__col li:last-child { margin-bottom: 0; }
.fs-compare__col li::before { position: absolute; left: 0; top: -1px; font-weight: 700; }
.fs-compare__col--bad li::before { content: "\2715"; color: var(--neutral); }
.fs-compare__col--good li::before { content: "\2713"; color: var(--accent-2); }

/* ===================== О КОМПАНИИ — медиа-блоки, фото, реквизиты ===================== */
.fs-media__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: center; }
.fs-media__grid--rev .fs-media__media { order: 2; }
.fs-media__media img { width: 100%; border-radius: 16px; display: block; box-shadow: 0 18px 44px rgba(52,58,73,.14); }
.fs-media__text h2 { color: var(--brand); font-size: clamp(1.7rem, 3vw, 2.3rem); margin-bottom: 16px; }
.fs-media__text p { color: var(--ink-muted); font-size: 1.02rem; margin-bottom: 12px; }
.fs-media__text ul { list-style: none; margin-top: 10px; }
.fs-media__text li { position: relative; padding-left: 26px; margin-bottom: 10px; font-size: .98rem; color: var(--ink-muted); }
.fs-media__text li::before { content: ""; position: absolute; left: 0; top: 9px; width: 9px; height: 9px; border-radius: 50%; background: var(--accent); }
.fs-hero__photo img { width: 100%; border-radius: 16px; display: block; box-shadow: 0 24px 60px rgba(0,0,0,.28); }
/* плейсхолдер фото (пока файлов нет) */
.fs-photo-ph { aspect-ratio: 4 / 3; background: var(--bg-soft); border: 1px dashed var(--neutral); border-radius: 16px;
  display: flex; align-items: center; justify-content: center; text-align: center; color: var(--ink-muted); font-size: .9rem; padding: 24px; }
.fs-hero__photo.fs-photo-ph { aspect-ratio: 3 / 4; }
/* реквизиты */
.fs-reqs { display: grid; grid-template-columns: repeat(2, 1fr); gap: 0 48px; max-width: 820px; }
.fs-reqs div { font-size: .95rem; color: var(--ink-muted); border-bottom: 1px solid var(--line); padding: 12px 0; }
.fs-reqs b { color: var(--brand); font-weight: 600; }

/* ===================== СЦЕНАРИИ «для чего нужна оценка» ===================== */
.fs-use__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 18px; }
.fs-use__card { background: #FFFFFF; border: 1px solid rgba(52,58,73,.10); border-radius: 16px; padding: 26px 24px; transition: transform .18s, box-shadow .18s; }
.fs-use__card:hover { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(52,58,73,.10); }
.fs-use__card h3 { margin: 0 0 8px; font-size: 1.08rem; }
.fs-use__card p { margin: 0 0 14px; font-size: .94rem; color: var(--ink-muted); }
.fs-use__card a { font-weight: 600; color: var(--brand); text-decoration: none; border-bottom: 1px solid var(--accent); }
.fs-use__card a:hover { color: var(--accent); }

/* ===================== АДАПТИВ ===================== */
@media (max-width: 980px) {
  .fs-hero__grid { grid-template-columns: 1fr; gap: 36px; }
  .fs-adv__grid, .fs-trust__grid { grid-template-columns: repeat(2, 1fr); }
  .fs-serv__grid, .fs-pop__grid, .fs-trust__cols, .fs-partners__groups { grid-template-columns: repeat(2, 1fr); }
  .fs-media__grid { grid-template-columns: 1fr; gap: 28px; }
  .fs-media__grid--rev .fs-media__media { order: 0; }
  .fs-steps__grid { grid-template-columns: repeat(2, 1fr); }
  .fs-steps__item::before { display: none; }
  .fs-header__contacts { display: none; }
  .fs-nav__list { flex-wrap: wrap; justify-content: flex-start; overflow-x: visible; }
  .fs-promo__box { grid-template-columns: 1fr; }
  .fs-footer__grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 560px) {
  .fs-home section { padding: 48px 0; }
  .fs-adv__grid, .fs-trust__grid, .fs-serv__grid, .fs-pop__grid, .fs-trust__cols, .fs-steps__grid, .fs-partners__groups, .fs-footer__grid, .fs-need__grid, .fs-compare__grid, .fs-reqs { grid-template-columns: 1fr; }
  .fs-nav__list { display: none; }
}

/* ===================== v2 CRO-КОМПОНЕНТЫ ===================== */
.fs-subhead { font-family: var(--font-display); font-size: 1.5rem; line-height: 1.25; color: #FFFFFF; margin: 14px 0 10px; }
.fs-proof { display: flex; flex-wrap: wrap; gap: 10px 22px; margin-top: 22px; list-style: none; padding: 0; }
.fs-proof li { display: flex; align-items: center; gap: 8px; font-size: .9rem; color: var(--ink-muted); }
.fs-proof svg { width: 18px; height: 18px; stroke: var(--accent); fill: none; stroke-width: 2.2; flex: none; }
.fs-field--sel { appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23343A49' stroke-width='1.6' fill='none'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 16px center; }
.fs-wa { display: inline-flex; align-items: center; gap: 8px; margin-top: 12px; font-weight: 600; color: #1f8a4c; text-decoration: none; }
.fs-wa:hover { text-decoration: underline; }
.fs-wa svg { width: 18px; height: 18px; }
.fs-anchors { position: sticky; top: 0; z-index: 30; background: #fff; border-bottom: 1px solid rgba(52,58,73,.1); }
.fs-anchors__row { display: flex; gap: 26px; overflow-x: auto; padding: 14px 0; }
.fs-anchors a { white-space: nowrap; color: var(--brand); text-decoration: none; font-size: .92rem; font-weight: 600; }
.fs-anchors a:hover { color: var(--accent); }
.fs-deliver__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 14px; }
.fs-deliver__item { display: flex; gap: 10px; align-items: flex-start; background: #fff; border: 1px solid rgba(52,58,73,.1); border-radius: 12px; padding: 16px 18px; }
.fs-deliver__item svg { width: 20px; height: 20px; stroke: var(--accent); fill: none; stroke-width: 2.2; flex: none; margin-top: 2px; }
.fs-anti { background: #fbf2ee; border: 1px solid #e6c9bd; border-radius: 18px; padding: 32px; }
.fs-anti ul { margin: 16px 0 0; padding-left: 20px; }
.fs-anti li { margin-bottom: 8px; color: #7a4a3a; }
.fs-clients__row { display: flex; flex-wrap: wrap; gap: 14px; justify-content: center; }
.fs-clients__row span { padding: 12px 22px; border: 1px solid rgba(52,58,73,.14); border-radius: 10px; font-family: var(--font-display); font-size: 1.1rem; color: var(--brand); }
.fs-expert { display: grid; grid-template-columns: 170px 1fr; gap: 28px; align-items: center; background: #fff; border: 1px solid rgba(52,58,73,.1); border-radius: 18px; padding: 28px; }
.fs-expert__ph { width: 170px; height: 170px; border-radius: 16px; background: var(--accent-soft); display: flex; align-items: center; justify-content: center; color: var(--ink-muted); font-size: .8rem; text-align: center; padding: 10px; }
.fs-badges { display: flex; flex-wrap: wrap; gap: 12px; }
.fs-badges span { display: inline-flex; align-items: center; gap: 8px; padding: 10px 16px; border: 1px solid rgba(52,58,73,.14); border-radius: 999px; font-size: .9rem; color: var(--brand); }
.fs-mobilebar { display: none; }
@media (max-width: 760px) {
  .fs-subhead { font-size: 1.25rem; }
  .fs-expert { grid-template-columns: 1fr; }
  .fs-expert__ph { width: 100%; height: 130px; }
  .fs-mobilebar { display: flex; position: fixed; left: 0; right: 0; bottom: 0; z-index: 60; background: var(--brand); box-shadow: 0 -4px 16px rgba(0,0,0,.18); }
  .fs-mobilebar a { flex: 1; text-align: center; padding: 13px 6px; color: #fff; text-decoration: none; font-size: .85rem; border-right: 1px solid rgba(255,255,255,.15); }
  .fs-mobilebar a:last-child { border: none; background: var(--accent); color: var(--brand); font-weight: 700; }
}

/* — два входа (страница «Акции» v2) — */
.fs-pop__grid--2 { display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: 20px; }
.fs-pop__card--big { background: #fff; border: 1px solid rgba(52,58,73,.1); border-radius: 18px; padding: 32px; display: flex; flex-direction: column; }
.fs-pop__card--big h3 { font-family: var(--font-display); font-size: 1.45rem; color: var(--brand); margin-bottom: 12px; }
.fs-pop__card--big p { color: var(--ink-muted); margin-bottom: 22px; }
.fs-pop__card--big .fs-btn { margin-top: auto; align-self: flex-start; }

/* — строка мессенджеров (WhatsApp / Telegram / MAX) — */
.fs-msgr { display: flex; align-items: center; gap: 10px; margin-top: 12px; flex-wrap: wrap; }
.fs-msgr > span { font-size: .85rem; color: var(--ink-muted); }
.fs-msgr a { width: 36px; height: 36px; display: inline-flex; align-items: center; justify-content: center; border-radius: 9px; background: var(--accent-soft); color: var(--brand); transition: background .15s, color .15s; }
.fs-msgr a:hover { background: var(--accent); color: #fff; }
.fs-msgr a svg { width: 20px; height: 20px; }
.fs-msgr__max { font-family: var(--font); font-weight: 700; font-size: .72rem; letter-spacing: .02em; }

/* — таблица «фото или выезд» (движимое v2) — */
.fs-vtable { width: 100%; border-collapse: collapse; background: #fff; border: 1px solid var(--line); border-radius: 14px; overflow: hidden; }
.fs-vtable th, .fs-vtable td { text-align: left; padding: 14px 18px; border-bottom: 1px solid var(--line); font-size: .95rem; }
.fs-vtable th { background: var(--bg-soft); color: var(--brand); font-family: var(--font); font-weight: 600; }
.fs-vtable tr:last-child td { border-bottom: none; }
.fs-vtable td:last-child { color: var(--ink-muted); }
@media (max-width: 560px) { .fs-vtable th, .fs-vtable td { padding: 11px 12px; font-size: .88rem; } }

/* — блок «пример выгоды» (оспаривание кадастра v2) — */
.fs-example { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; background: #fff; border: 1px solid rgba(52,58,73,.1); border-radius: 18px; overflow: hidden; }
.fs-example__cell { padding: 26px 22px; text-align: center; position: relative; }
.fs-example__cell + .fs-example__cell::before { content: "→"; position: absolute; left: -10px; top: 50%; transform: translateY(-50%); color: var(--accent); font-size: 1.4rem; }
.fs-example__lbl { font-size: .85rem; color: var(--ink-muted); margin-bottom: 8px; }
.fs-example__val { font-family: var(--font-display); font-size: 1.7rem; color: var(--brand); line-height: 1.1; }
.fs-example__val--accent { color: var(--accent); }
.fs-example__note { margin-top: 16px; color: var(--ink-muted); font-size: .92rem; }
@media (max-width: 680px) { .fs-example { grid-template-columns: 1fr; } .fs-example__cell + .fs-example__cell::before { content: "↓"; left: 50%; top: -12px; transform: translateX(-50%); } }

/* — хелпер блока fs-promo (коммерческая v2) — */
.fs-promo__txt { flex: 1 1 380px; }

/* — перечень-плашки (квартиры v2: «что оцениваем») — */
.fs-serv__item { background: #FFFFFF; border: 1px solid rgba(52,58,73,.10); border-radius: 14px; padding: 18px 20px; font-weight: 600; color: var(--brand); display: flex; align-items: center; gap: 12px; transition: transform .18s, box-shadow .18s; }
.fs-serv__item:hover { transform: translateY(-2px); box-shadow: 0 12px 26px rgba(52,58,73,.08); }
.fs-serv__item svg { width: 22px; height: 22px; stroke: var(--accent); fill: none; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; flex: none; }
/* — примечание под блоком (about v2) — */
.fs-note { margin-top: 16px; color: var(--ink-muted); font-size: .92rem; }
/* — маркер инфо-колонки сравнения (судебная v2) — */
.fs-compare__col--info li::before { content: "\2022"; color: var(--accent); font-size: 1.1em; top: -2px; }

/* ===================== СТЕНА ЛОГОТИПОВ КЛИЕНТОВ (графит) ===================== */
.fs-trustlogos { background: var(--bg-soft); text-align: center; }
.fs-trustlogos .fs-sec-title { margin-bottom: 26px; }
.fs-logos { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 30px 44px; }
.fs-logos img { max-height: 50px; max-width: 155px; width: auto; height: auto; opacity: .7; transition: opacity .2s ease; filter: saturate(0); }
.fs-logos img:hover { opacity: 1; }
@media (max-width: 600px) { .fs-logos { gap: 22px 28px; } .fs-logos img { max-height: 38px; max-width: 118px; } }

/* ===================== ОФЕРТА: юр-документ + вкладки ===================== */
/* ===== юридический документ: читаемая колонка ===== */
.fs-legal { padding: 56px 0 72px; }
.fs-legal__wrap { max-width: 860px; margin: 0 auto; padding: 0 28px; }
.fs-legal h1 { font-family: var(--font-display); font-size: clamp(2rem, 4vw, 2.8rem); color: var(--brand); margin-bottom: 8px; }
.fs-legal__sub { color: var(--ink-muted); margin-bottom: 22px; font-size: .98rem; }
.fs-legal__card { background: var(--bg-soft, #f6f4f2); border: 1px solid rgba(52,58,73,.1); border-radius: 16px; padding: 26px 28px; margin-bottom: 26px; }
.fs-legal__card h2 { font-size: 1.2rem; color: var(--brand); margin-bottom: 14px; font-family: var(--font); font-weight: 600; }
.fs-lreqs { list-style: none; margin: 0; padding: 0; }
.fs-lreqs li { display: flex; flex-wrap: wrap; gap: 6px 14px; padding: 9px 0; border-top: 1px solid rgba(52,58,73,.1); font-size: .93rem; }
.fs-lreqs li:first-child { border-top: none; }
.fs-lreqs b { color: var(--brand); font-weight: 600; min-width: 200px; }
.fs-lreqs span { color: var(--ink-muted); }
.fs-terms { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 14px; margin-bottom: 30px; }
.fs-terms__item { background: #fff; border: 1px solid rgba(52,58,73,.1); border-radius: 12px; padding: 18px 20px; }
.fs-terms__item h3 { font-size: .92rem; color: var(--accent); font-weight: 600; margin-bottom: 6px; }
.fs-terms__item p { font-size: .95rem; color: var(--brand); margin: 0; }
.fs-legal__body { font-size: .97rem; line-height: 1.7; color: #1c2230; }
.fs-legal__body h2 { font-family: var(--font); font-size: 1.2rem; color: var(--brand); margin: 28px 0 10px; }
.fs-legal__body p { margin-bottom: 12px; }
.fs-legal__body ul { margin: 0 0 14px; padding-left: 22px; }
.fs-legal__body li { margin-bottom: 7px; }
.fs-legal__banner { background: #fbf2ee; border: 1px solid #e6c9bd; border-radius: 12px; padding: 16px 20px; color: #7a4a3a; font-size: .9rem; margin-bottom: 24px; }
/* ===== вкладки (CSS-only, два экземпляра) ===== */
.fs-tabin { position: absolute; opacity: 0; pointer-events: none; width: 0; height: 0; }
.fs-tabs { display: flex; gap: 10px; flex-wrap: wrap; margin: 6px 0 28px; }
.fs-tab { cursor: pointer; padding: 13px 22px; border: 1px solid rgba(52,58,73,.18); border-radius: 999px; font-weight: 600; font-size: .93rem; color: var(--brand); background: #fff; user-select: none; transition: background .15s, color .15s; }
.fs-tab:hover { border-color: var(--accent); }
.fs-pane { display: none; }
#t-ooo:checked ~ .fs-pane--ooo { display: block; }
#t-chpo:checked ~ .fs-pane--chpo { display: block; }
#t-ooo:checked ~ .fs-tabs label[for="t-ooo"],
#t-chpo:checked ~ .fs-tabs label[for="t-chpo"] { background: var(--brand); color: #fff; border-color: var(--brand); }

/* ===================== СВЕДЕНИЯ ОБ ОЦЕНЩИКАХ: карточки персон ===================== */
/* ===== страница оценщиков: карточки персон + таблица допусков ===== */
.fs-people { display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: 22px; }
.fs-person { background: #fff; border: 1px solid rgba(52,58,73,.1); border-radius: 18px; padding: 30px 28px; }
.fs-cred { list-style: none; margin: 0; padding: 0; }
.fs-cred li { display: flex; justify-content: space-between; gap: 14px; padding: 11px 0; border-top: 1px solid rgba(52,58,73,.1); font-size: .93rem; }
.fs-cred li:first-child { border-top: none; }
.fs-cred b { color: var(--brand); font-weight: 600; }
.fs-cred span { color: var(--ink-muted); white-space: nowrap; }

/* ===================== НЕЙТРАЛИЗАЦИЯ СТАРЫХ ZONE-ОБЁРТОК ===================== */
.fs-home .zone-intro { display: contents; }
.fs-home .zone-main { padding: 0; container-type: unset; }
.fs-home .zone-main__container { display: block; }
.fs-home .zone-main__content { max-width: none; }
.fs-home .zone-page { /* сброс fr-view */ }
.fs-home .zone-outro { display: contents; }

.block-about-brand {
    position: relative;
    container-type: inline-size;
    background-color: #001617;

    .image {
        position: absolute;
        inset: 0;
        overflow: hidden;
        img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center;
        }
    }

    .container {
        position: relative;
        padding-block: 3rem;
        display: flex;
        flex-direction: column;
        gap: 1rem;
        @container (width < 1024px) {
            padding-block: 2rem;
        }
    }

    h3 {
        margin: 0;
        color: white;
        font-weight: 600;
        font-size: 2rem;
        max-width: 600px;
        @container (width < 1024px) {
            font-size: 1.6rem;
            max-width: 500px;
        }
        span {
            color: var(--pico-primary);
        }
    }

    .text {
        color: white;
        line-height: 2;
        @container (width < 1024px) {
            text-shadow: 1px 1px 2px black;
        }
        @container (width < 768px) {
            br {
                display: none;
            }
        }
    }

    .image {
        img {
            @container (width < 1280px) {
                object-position: left;
            }
            @container (width < 768px) {
                object-position: center;
            }
        }
    }
}

.block-about-content {
    margin-block: 2rem;
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 2rem;
    container-type: inline-size;

    @media (width < 620px) {
        grid-template-columns: 1fr;
    }

    .content {
        flex: 1;
    }

    .title {
        margin-bottom: 1rem;
    }

    .text {
        font-size: 1.2rem;
    }

    .link {
        align-self: center;
        justify-self: center;
        a {
            color: var(--secondary);
            font-weight: bold;
            font-size: 1.2rem;
            display: flex;
            gap: 1rem;
            align-items: center;
        }
    }
}

.block-advantages-icons {
    text-align: center;
    margin-bottom: 1rem;
    container-type: inline-size;
    .title {
        text-align: center;
    }
    .items {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 2rem;
        font-size: 18px;
        font-style: italic;
        @container (width < 1024px) {
            font-size: 16px;
        }
        @container (width < 800px) {
            grid-template-columns: repeat(2, 1fr);
        }
        @container (width < 420px) {
            font-size: 14px;
        }
        .image {
            margin-bottom: 1rem;
            height: 60px;
            display: flex;
            align-items: flex-end;
            justify-content: center;
        }
    }

}
.block-advantages {
    margin-block: 2rem;

    .header-text {
        text-align: center;
        margin-bottom: 2rem;

        .pretitle {
            font-size: 0.875rem;
            text-transform: uppercase;
            letter-spacing: 0.05em;
            color: #686868;
            margin-bottom: 0.5rem;
            margin-inline: auto;
            max-width: 660px;
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 0;

            &::before,
            &::after {
                content: '';
                flex: 1;
                height: 1px;
                background: currentColor;
            }

            span {
                display: inline-block;
                background: #fff;
                padding-inline: 1rem;
            }
        }

        .title {
            font-size: 2rem;
            font-weight: bold;
            margin: 0 auto;
            max-width: 660px;
            text-transform: uppercase;
            @media (width < 728px) {
                font-size: 1.6rem;
            }
        }
    }

    .layout {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 2rem;
        align-items: start;

        @media (width < 1024px) {
            grid-template-columns: 1fr;
        }
    }

    .layout-image {
        img {
            width: 100%;
            height: auto;
            border-radius: calc(var(--pico-border-radius) * 2);
            display: block;
        }
    }

    .items-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 1rem;

        @media (width < 480px) {
            grid-template-columns: 1fr;
        }
    }

    .card {
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        gap: .5rem;
        padding: 1rem .5rem;
        width: 100%;
        background: #fff;
        border-radius: calc(var(--pico-border-radius) * 2);
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);

        .card-icon {
            width: 48px;
            height: 48px;
            flex-shrink: 0;
            display: flex;
            align-items: center;
            justify-content: center;
            margin-bottom: .25rem;

            img {
                height: 48px;
                width: auto;
                object-fit: contain;
            }
        }

        .card-title {
            font-size: .8rem;
            font-weight: bold;
            line-height: 1.2;
            max-width: 140px;
            word-break: normal;
            overflow-wrap: normal;
            hyphens: none;
        }

        &:nth-child(2n) .card-title {
            max-width: 75px;
        }

        .card-description {
            font-size: 0.8rem;
            line-height: 1.2;
            color: #555;
        }
    }
}

.block-akcia {
    margin-block: 2rem;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2rem;

    @media (width < 860px) {
        grid-template-columns: 1fr;
    }
   
    > .image {

    }

    > .text {

    }
}
.block-akcii {
    margin-block: 2rem;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2rem;
    text-align: center;
    @media (width < 640px) {
        grid-template-columns: 1fr;
        justify-items: center;
    }

    .record {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        gap: 1rem;
        @media (width < 640px) {
            max-width: 480px;
        }
    }

    .image {
        img {
            width: 100%;
        }
    }

    .name {
        text-transform: uppercase;
        flex: 1;
    }

    a[role="button"] {
        align-self: center;
    }
}
.block-certs {
    margin-block: 2rem;
    h3 {
        text-align: center;
    }
    .splide__slide {
        text-align: center;
    }
}

.block-colored-expander {
    margin-block: 2rem;
    //padding-top: .5rem;
}

.block-columns_two {
    container-type: inline-size;
    margin-block: 2rem;
    display: grid;
    gap: 2rem;

    @container (width > 840px) {
        grid-template-columns: 1fr 1fr;

        &.two2one {
            grid-template-columns: 2fr 1fr;
        }

        &.two2three {
            grid-template-columns: 2fr 3fr;
        }

        &.two2five {
            grid-template-columns: 2fr 5fr;
        }

        &.one2four {
            grid-template-columns: 1fr 4fr;
        }

        &.five2two {
            grid-template-columns: 5fr 2fr;
        }

        &.three2two {
            grid-template-columns: 3fr 2fr;
        }
        &.one2two {
            grid-template-columns: 1fr 2fr;
        }
    }

    @container (640px <= width <= 840px) {
        grid-template-columns: 1fr 1fr;

        &.two2three, &.two2five, &.one2four {
            grid-template-columns: 2fr 5fr;
        }

        &.five2two, &.three2two {
            grid-template-columns: 5fr 2fr;
        }
    }

    @container (width <= 640px) {
        gap: 0;
    }

    &.textpad {
        .block-text {
            padding-block: 2rem;
            @container (width <= 640px) {
                padding-bottom: 0;
            }
        }
    }

    & > .first, & > .second {
        display: flex;
        flex-direction: column;

        & > .block-bgbox {
            flex: 1;
        }
    }

    &.invert {
        @container (width < 640px) {
            & > .first {
                order: 2;
            }

            & > .second {
                order: 1;
            }
        }
    }
}

.block-contacts {
    margin-block: 2rem;

    .container {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 1.5rem;

        @media (width < 1024px) {
            grid-template-columns: repeat(2, 1fr);
        }
        @media (width < 620px) {
            grid-template-columns: 1fr;
        }
    }

    .card {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: .75rem;
        padding: 1rem;
        background: #fff;
        border-radius: calc(var(--pico-border-radius) * 2);
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
        text-align: center;

        .icon {
            width: 48px;
            height: 48px;
            display: flex;
            align-items: center;
            justify-content: center;

            img {
                height: 48px;
                width: auto;
                object-fit: contain;
            }
        }

        .title {
            font-weight: bold;
            font-size: 1rem;
        }

        .value {
            font-size: 1rem;
            color: var(--pico-muted-color);

            &.value--small {
                font-size: .875rem;
            }

            a {
                color: var(--pico-primary);
                text-decoration: none;

                &:hover {
                    text-decoration: underline;
                }
            }
        }
    }
}

.block-contactsbox {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin-bottom: 2rem;

    .block_title {
        font-size: 1.35rem;
        font-weight: bold;
        line-height: 1.2;
    }

    > .description {
    }

    .items {
        display: grid;
        grid-template-columns: 1fr;
        gap: 1rem;
    }

    .item {
        display: flex;
        gap: .75rem;
        align-items: flex-start;

        .icon {
            flex-shrink: 0;
            width: 24px;
            height: 24px;
            margin-top: .15rem;

            img {
                width: 100%;
                height: auto;
            }
        }

        .content {
            display: flex;
            flex-direction: column;
        }

        .title {
            font-weight: bold;
            font-size: 1rem;
        }

        .description {
            font-size: 1rem;
            padding-left: .5rem;
        }
    }
}

.block-credit-info {
    position: relative;
    container-type: inline-size;
    border-radius: var(--pico-border-radius);
    overflow: hidden;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    .container {
        position: relative;
        display: flex;
        align-items: center;
        gap: 1rem;
        padding: .7rem 1.5rem;
        background: rgba(0, 22, 23, .7);

        @media (width < 540px) {
            flex-wrap: wrap;
            padding: .7rem 1rem;
        }
    }

    .credit-icon {
        flex-shrink: 0;
        width: 43px;
        height: 43px;
        border-radius: 50%;
        background-color: var(--pico-primary);
        display: flex;
        align-items: center;
        justify-content: center;

        svg {
            width: 26px;
            height: 26px;
            display: block;
        }
    }

    .credit-text {
        flex: 1;
        min-width: 0;
    }

    .credit-title {
        margin: 0;
        color: white;
        font-size: 1rem;
        font-weight: 600;
    }

    .credit-description {
        margin: 0;
        color: white;
        font-size: .8rem;
        opacity: .85;
    }

    .credit-action {
        flex-shrink: 0;

        a[role="button"] {
            white-space: nowrap;
            padding: .5rem 1.5rem;
            font-size: .95rem;
        }

        @media (width < 540px) {
            width: 100%;

            a[role="button"] {
                width: 100%;
                text-align: center;
            }
        }
    }
}

.block-credit-months {
    margin-block: 2rem;

    .header-text {
        text-align: center;
        margin-bottom: 2rem;

        .pretitle {
            font-size: 0.875rem;
            text-transform: uppercase;
            letter-spacing: 0.05em;
            color: #686868;
            margin-bottom: 0.5rem;
        }

        .title {
            font-size: 2rem;
            font-weight: bold;
            margin: 0 0 0.5rem;
        }

        .subtitle {
            font-size: 1.125rem;
        }
    }

    .container {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 1.5rem;

        @media (width < 1024px) {
            grid-template-columns: repeat(2, 1fr);
        }
        @media (width < 620px) {
            grid-template-columns: 1fr;
        }
    }

    .card {
        display: flex;
        flex-direction: column;
        gap: .5rem;
        padding: 1rem;
        background: #fff;
        border-radius: calc(var(--pico-border-radius) * 2);
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);

        .header {
            display: flex;
            align-items: center;
            gap: .75rem;
            margin-bottom: .5rem;

            .icon {
                width: 48px;
                height: 48px;
                flex-shrink: 0;
                display: flex;
                align-items: center;
                justify-content: center;

                img {
                    height: 48px;
                    width: auto;
                    object-fit: contain;
                }
            }

            .title {
                display: flex;
                flex-direction: column;
                gap: 0;
                line-height: 1;
                color: var(--pico-primary);

                .title-number {
                    font-size: 2rem;
                    font-weight: bold;
                }

                .title-label {
                    font-size: 1rem;
                    font-weight: bold;
                }
            }
        }

        .value {
            font-size: 1rem;
            line-height: 1.2;
        }
    }
}

.block-creditages {
    margin-block: 3rem;
    container-type: inline-size;
    .items {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 1rem;
        @container (width < 800px) {
            grid-template-columns: repeat(2, 1fr);
        }
        @container (width < 480px) {
            grid-template-columns: 1fr;
            max-width: 360px;
            margin-inline: auto;
        }
    }
    .item {
        display: grid;
        grid-template-columns: 60px auto;
        gap: 0.5rem;
        align-items: center;
    }
    .image {
        display: flex;
        align-items: center;
        justify-content: center;
        img {
            max-width: 100%;
            height: auto;
        }
    }
    .text {
        text-align: left;
        @container (width < 800px) {
            font-size: 14px;
        }
        @container (width < 540px) {
            font-size: 16px;
        }
    }

}

.block-delivery-operators {
    margin-block: 2rem;

    .items {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
        gap: 2rem;
    }

    .item {
        display: flex;
        align-items: center;
        justify-content: center;

        img {
            max-width: 120px;
            height: auto;
            object-fit: contain;
        }
    }
}

.block-deliverytages {
    margin-block: 2rem;

    .container {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 1rem;

        @media (width < 1024px) {
            grid-template-columns: repeat(2, 1fr);
        }
        @media (width < 620px) {
            grid-template-columns: 1fr;
        }
    }

    .card {
        display: flex;
        flex-direction: column;
        gap: .75rem;
        padding: 1rem .75rem;
        background: #fff;
        border-radius: calc(var(--pico-border-radius) * 2);
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
        text-align: center;
    }

    .card-image {
        display: flex;
        align-items: center;
        justify-content: center;

        img {
            height: 64px;
            width: auto;
            object-fit: contain;
        }
    }

    .card-title {
        font-size: 1rem;
        font-weight: bold;
        /*color: var(--pico-primary);*/
    }

    .card-description {
        font-size: .75rem;
        line-height: 1.4;
    }
}

.block-feature {
    margin-block: 2rem;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2rem;
    align-items: center;
    container-type: inline-size;

    @container (width < 860px) {
        grid-template-columns: 1fr;
    }

    .content {
        display: flex;
        flex-direction: column;
        gap: 1rem;
    }

    .title {
        margin: 0;
        font-size: 1.8rem;
        font-weight: bold;
        span {
            color: var(--pico-primary);
        }
        @container (width < 640px) {
            font-size: 1.6rem;
        }
    }

    .text {
        @container (width < 640px) {
            br {
                display: none;
            }
        }
    }

    .items {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 1rem;
        margin-top: 1rem;
    }

    .item {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: .5rem;
        text-align: center;
    }

    .item-icon {
        flex-shrink: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 48px;
        height: 48px;

        img {
            height: 48px;
            width: auto;
            object-fit: contain;
        }
    }

    .item-title {
        font-size: .75rem;
        font-weight: 600;
    }

    .image {
        display: flex;
        justify-content: center;

        img {
            max-width: 100%;
            height: auto;
            object-fit: contain;
        }
    }
}

.block-form {
    color: white;
    margin-block: 2rem;
    padding-block: 4rem;
    background: #e7e5e3 url(../themes/finstandart/assets/images/blocks/form/bg.webp) center no-repeat;
    background-size: cover;
    container-type: inline-size;


    .container {
        display: grid;
        gap: 3rem;
        grid-template-columns: 3fr 4fr;

        @container(width < 940px) {
            grid-template-columns: 1fr;
        }
    }


    .title {
        font-size: 2rem;
        line-height: 1.2;
        color: white;
        span {
            color: var(--pico-primary);
        }

        @container (width < 1200px) {
            /*font-size: 60px;*/
        }

        @container (width < 992px) {
            /*font-size: 50px;*/
        }

        @container (width < 768px) {
            /*font-size: 40px;*/
        }

        @container (width < 940px) {
            text-align: center;
        }
    }

    .subtitle {
        font-size: 20px;
        margin: 0;
        @container (width < 940px) {
            text-align: center;
        }
    }

    .items {
        display: flex;
        flex-direction: column;
        gap: 1.5rem;
        margin-top: 2rem;
    }

    .item {
        display: flex;
        align-items: center;
        gap: 1rem;

        .image {
            padding: 4px;
            background-color: #010206;
            border-radius: var(--pico-border-radius);
        }

        img {
            flex-shrink: 0;
            width: 48px;
            height: 48px;
            object-fit: contain;
        }

        .label {
            display: flex;
            flex-direction: column;

            strong {
                font-size: 18px;
                line-height: 1.3;
            }
        }
    }

    .form {

    }

    .input {
        width: 100%;
        background-color:  rgb(11 23 26 / 65%);
        border-color: #596668;
        backdrop-filter: blur(2px);
        color: white;
        &:focus {
            border-color: var(--pico-primary);
        }
        &::placeholder {
            font-size: 16px;
            color: #ccc;
        }
    }

    button {
        width: 100%;
    }


}

.block-icontages {
    margin-block: 2rem;
    display: flex;
    justify-content: space-around;
    gap: 1.5rem;

    text-align: center;
    @media (width < 768px) {
        flex-direction: column;
        max-width: 360px;
        margin-inline: auto;
    }

    .item {
        display: flex;
        flex-direction: column;
        gap: 1.5rem;
        grid-template-columns: 60px auto;
        align-items: center;
    }
    .title {
        margin-bottom: 1.5rem;
        font-weight: bold;
        font-size: 1.1rem;
    }
    .image {
        text-align: center;
    }
}

.block-image {
    container-type: inline-size;

    & img {
        width: 100%;
    }
}
.block-intro-proizvodstvo {
    position: relative;
    container-type: inline-size;
    color: white;
    /* margin-bottom: 2rem; */

    .image {
        position: absolute;
        inset: 0;
        overflow: hidden;
        img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center;
            @container (width < 1200px) {
                object-position: left center;
            }
        }
    }

    .container {
        position: relative;
        padding-block: 2rem;
    }

    .title {
        display: flex;
        flex-direction: column;
        text-transform: uppercase;
        font-weight: 900;
        font-size: 62px;
        line-height: 1;
        color: white;
        text-shadow: 0px 0px 6px rgba(0, 0, 0, 0.567);
        @container (width < 720px) {
            font-size: 48px;
        }
        @container (width < 540px) {
            font-size: 34px;
        }
        span:nth-child(1) {
            
        }
        span:nth-child(2) {
            padding-left: 80px;
            @container (width < 720px) {
                padding-left: 40px;
            }
            @container (width < 540px) {
                padding-left: 0px;
            }
        }
        span:nth-child(3) {
            font-weight: 400;
            font-size: 36px;
            padding-left: 240px;
            @container (width < 720px) {
                font-size: 26px;
                padding-left: 200px;
            }
            @container (width < 540px) {
                font-size: 22px;
                padding-left: 0px;
                text-align: right;
            }
        }
    }

    .cards {
        display: grid;
        gap: 1rem;
        grid-template-columns: 1fr 1fr;
        max-width: 460px;
    }

    .card {
        border-radius: 1rem;
        background-color: #7c4e4e9a;
        padding: 4px;
        text-align: center;
        line-height: 1;
    }

    .icon {
        font-size: 56px;
        font-weight: 700;
        margin-bottom: 2px;
    }
}
.block-intro {
    position: relative;
    container-type: inline-size;
    background-color: #001617;

    .image {
        position: absolute;
        inset: 0;
        overflow: hidden;
        img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center;
        }
    }

    .container {
        position: relative;
        padding-block: 3rem;
        display: flex;
        flex-direction: column;
        gap: 1rem;
        @container (width < 1024px) {
            padding-block: 2rem;
        }
        @container (width < 860px) {
        }
        @container (width < 500px) {
        }
    }

    h1 {
        margin: 0;
        color: white;
        font-weight: bold;
        font-size: 2.5rem;
        @container (width < 1024px) {
            font-size: 2rem;
        }
        @container (width < 728px) {
            font-size: 1.6rem;
        }
    }

    .text {
        color: white;
    }

    &.video {
        padding-top: 4rem;
        padding-bottom: 10rem;
        @container (width < 1024px) {
            padding-top: 3rem;
            padding-bottom: 8rem;
        }
        .image {
            @container (width < 680px) {
                opacity: .5;
            }
        }
        .text {
            font-size: 1.2rem;
            @container (width < 1024px) {

            }

        }
    }

    &.product {
        padding-top: 2rem;
        padding-bottom: 5rem;
        @container (width < 1024px) {
            padding-top: 1.5rem;
            padding-bottom: 4rem;
        }
        h1 {
            max-width: 540px;
        }
        .image {
            @container (width < 680px) {
                opacity: .5;
            }
        }
        .text {
            max-width: 540px;
            font-size: 1.2rem;
            @container (width < 1024px) {

            }

        }
    }

    &.catalog {
        padding-top: 2rem;
        padding-bottom: 5rem;
        @container (width < 1024px) {
            padding-top: 1.5rem;
            padding-bottom: 4rem;
        }
        h1 {
            max-width: 540px;
        }
        .image {
            @container (width < 680px) {
                opacity: .5;
            }
        }
        .text {
            max-width: 540px;
            font-size: 1.2rem;
            @container (width < 1024px) {

            }

        }
    }

    &.credit {
        padding-top: 3rem;
        padding-bottom: 8rem;
        @container (width < 1024px) {
            padding-top: 3rem;
            padding-bottom: 5rem;
        }
        h1 {
            font-weight: 500;
        }
        .image {
            @container (width < 680px) {

            }
        }
        .text {
            font-size: 1.2rem;
            @container (width < 1024px) {

            }
        }
    }

    &.about {
        h1 {
            font-weight: 600;
            max-width: 600px;
            @container (width < 1024px) {
                max-width: 500px;
            }
            span {
                color: var(--pico-primary);
            }
        }
        .image {

            img {
                @container (width < 1280px) {
                    object-position: left;
                }
                @container (width < 768px) {
                    object-position: center;
                }
            }
        }
        .text {
            font-size: 1.2rem;
            @container (width < 1024px) {
                text-shadow: 0 0 2px black;
            }
            @container (width < 768px) {
                br {
                    display: none;
                }
            }
        }
    }

    &.service {
        h1 {
            font-weight: 600;
            max-width: 660px;
            @container (width < 1024px) {
                max-width: 500px;
            }
            span {
                color: var(--pico-primary);
            }
        }
        .image {

            img {
            }
        }
        .text {
            font-size: 1.2rem;
            @container (width < 1024px) {
                text-shadow: 0 0 2px black;
            }
            @container (width < 768px) {
                br {
                    display: none;
                }
            }
        }
        h1 {
            @container (width < 1024px) {
                text-shadow: 0 0 4px rgba(0,0,0,.6);
            }
        }
        .note {
            margin-top: 1.5rem;
            padding: 1.5rem;
            max-width: 600px;
            display: flex;
            gap: 1rem;
            border: 1px solid var(--pico-primary);
            border-radius: var(--pico-border-radius, 6px);
            background: rgb(3 184 136 / 22%);
            .note-icon {
                flex-shrink: 0;
                padding-top: .2rem;
                img {
                    display: block;
                    width: 20px;
                    height: 20px;
                }
            }
            .note-body {
                flex: 1;
                min-width: 0;
            }
            h4 {
                margin: 0 0 .5rem;
                color: white;
                font-weight: 600;
                font-size: 1.2rem;
            }
            .note-text {
                color: white;
                font-size: 1rem;
                line-height: 1.6;
            }
        }
    }

    &.delivery {
        padding-top: 3.333rem;
        padding-bottom: 2rem;
        background: white;
        .container {
            padding-bottom: 0;
        }
        h1 {
            font-weight: 600;
            color: #333;
            max-width: 400px;
            @media (width < 640px) {
                font-size: 2.2rem;
            }
        }
        .image {
            left: 0;
            right: 0;
            img {
                object-fit: contain;
                object-position: right;
                filter: brightness(1.01);
            }
            @media (width < 1024px) {
                width: 60%;
                left: auto;
            }
            @media (width >= 1280px) {
                right: calc((100% - 1024px) / 2);
                left: auto;
                width: 50%;
                img {
                    object-position: center;
                }
            }
            @media (width < 640px) {
                left: 0;
                right: 0;
                width: auto;
                img {
                    object-position: center;
                    opacity: .2;
                }
            }
        }
        .text {
            font-size: 1.2rem;
            color: #333;
            max-width: 400px;
            @container (width < 1024px) {

            }
            @media (width < 768px) {
                font-size: 1rem;
            }
            @media (width < 640px) {
                max-width: 320px;
            }
        }
        .buttons {
            display: flex;
            gap: 1rem;
            flex-wrap: wrap;
            margin-top: 1rem;
            .outline {
                font-size: calc(1em - 0.2rem);
                color: black;
            }
        }
    }

    &.home {
        padding-top: 1rem;
        padding-bottom: 12rem;
        background-color: transparent;
        @media (width < 1024px) {
            /*padding-top: 3rem;*/
            padding-bottom: 5rem;
        }
        .container {
            gap: 3rem;
        }
        .image {

            img {
                object-position: bottom;
                @container (width < 1024px) {
                    object-position: bottom left;
                }
                @container (width < 728px) {
                    object-position: bottom center;
                }
            }
        }
        h1 {
            font-weight: normal;
            max-width: 600px;
            text-shadow: 0 0 2px black;
            @container (width < 1024px) {
                max-width: 500px;
            }
            @container (width < 728px) {
                max-width: 400px;
            }
        }
        .text {
            max-width: 340px;
            font-size: 1.2rem;
            text-shadow: 0 0 2px black;
            @container (width < 1024px) {

            }

        }
        .buttons {
            display: flex;
            gap: 1rem;
            flex-wrap: wrap;
            margin-top: 1rem;
            a {
                padding: .2rem 1rem;
            }
            .contrast {
                background: white;
                color: black;
                &:hover {
                    background-color: var(--pico-primary);
                }
            }

        }
    }

}

.block-introslider {
    .slide-image img {
        width: 100%;
    }

    .splide__pagination {
        margin: 0 auto;
        justify-content: flex-start;
        max-width: 1040px;
        gap: 6px;
        button {
            display: block;
            background-color: #a97e74;
            width: 38px;
            height: 10px;
            border-radius: 0;

            &.is-active {
                background-color: #d5c3b2;
                transform: none;
            }
        }
    }
}
.block-mall-category {
    display: grid;
    grid-template-columns: 260px 1fr;
    gap: 2rem;
    margin-block: 2rem;
    container-type: inline-size;

    @container (width < 900px) {
        grid-template-columns: 1fr;
    }
}

.block-mall-category__sidebar {
    position: sticky;
    top: 1rem;
    align-self: start;
    padding: .5rem;
    background: #f4f5f7;
    border: 1px solid var(--pico-muted-border-color, #e0e0e0);
    border-radius: var(--pico-border-radius, 12px);

    @container (width < 900px) {
        position: static;
    }
}

.block-mall-category__content {
    min-width: 0;

    .mall-products-filter {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 0.75rem;
        margin-bottom: 1.5rem;
    }

    .mall-products-filter__sorter {
        display: flex;
        align-items: center;
        gap: 0.5rem;
    }

    .mall-products-filter__sorter-label {
        flex-shrink: 0;
        font-size: 0.9375rem;
        color: #000;
    }

    .mall-products-filter__sorter-select {
        max-width: 220px;
    }

    .mall-products-filter__count {
        margin-left: auto;
        font-size: 0.875rem;
        color: #555;
    }

    .mall-products-filter__count-text strong {
        color: #000;
    }

    .snippet-mall-products {
        grid-template-columns: repeat(3, 1fr);

        @container (width < 800px) {
            grid-template-columns: repeat(2, 1fr);
        }
        @container (width < 540px) {
            grid-template-columns: repeat(1, 1fr);
        }
    }
}

/* Category Tree */
.category-tree {
    overflow: hidden;
}

.category-tree ul,
.category-tree ol {
    list-style: none;
    margin: 0 !important;
    padding: 0;
}

.category-tree__item {
    margin: 0;
    padding: 0 !important;
}

.category-tree__item--current > .category-tree__link {
    background-color: #e8eaed;
    color: var(--pico-primary);
}

.category-tree__link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    padding: 0.625rem 1rem;
    text-decoration: none;
    color: #000;
    font-size: 0.9375rem;
    line-height: 1.4;
    transition: background-color 0.15s ease;

    &:hover {
        background-color: #e8eaed;
    }
}

.category-tree__name {
    flex: 1;
    min-width: 0;
    word-break: break-word;
}

.category-tree__count {
    flex-shrink: 0;
    font-size: 0.75rem;
    color: var(--pico-primary);
    line-height: 1;
}

.category-tree__children .category-tree__link {
    padding-left: 1.75rem;
    font-size: 0.875rem;
}

.category-tree__children .category-tree__children .category-tree__link {
    padding-left: 2.5rem;
    font-size: 0.8125rem;
}

.block-mall-comingsoon {
    & > .empty {
        text-align: center;
        padding-block: 2rem;
        background-color: #eee;
    }
}
.block-mall-hits {
    margin-block: 2rem;
    container-type: inline-size;

    & > h3 {
        text-align: center;
    }

    & > .products {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 1rem;
        @container (width < 860px) {
            grid-template-columns: repeat(2, 1fr);
        }
    }
}
.block-mall-maincategories {
    margin-block: 2rem;
    container-type: inline-size;
    display: block;

    .grid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        margin: 0;
        gap: 2rem;
        @container (width < 480px) {
            grid-template-columns: repeat(1, 1fr);
        }
    }

    .card {
        display: block;
        position: relative;
        width: 100%;
        aspect-ratio: 16 / 9;
        overflow: hidden;
        border-radius: 2rem;
        background-color: #000;
        text-decoration: none;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);

        &:hover {
            .image-grid__cell img {
                opacity: 0.8;
            }
        }

        &:focus {
            outline: 1px solid rgb(192, 128, 72);
        }

        @container (width < 860px) {
            border-radius: 20px;
        }
    }

    .image-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        grid-template-rows: 1fr 1fr;
        width: 100%;
        height: 100%;
        position: absolute;
        inset: 0;
    }

    .image-grid__cell {
        overflow: hidden;
        position: relative;

        img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block;
            opacity: 0.5;
            transition: opacity 0.3s;
        }

        &--empty {
            background-color: #e0e0e0;
        }
    }

    .name {
        position: absolute;
        inset: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        z-index: 2;
        font-weight: bold;
        font-size: 2rem;
        color: #fff;
        text-shadow: 0 2px 8px rgba(0, 0, 0, 0.6), 0 0 4px rgba(0, 0, 0, 0.4);
        padding: 1rem;
        text-align: center;
        line-height: 1.2;
        pointer-events: none;

        @container (width < 1015px) {
            font-size: 1.4rem;
        }
        @container (width < 860px) {
            font-size: 1.2rem;
        }
    }

    &.inhome {
        .grid {
            grid-template-columns: repeat(3, 1fr);
            @container (width < 640px) {
                grid-template-columns: repeat(1, 1fr);
            }
        }
        .moloko {
            display: none;
        }
        .name {
            font-size: 1.2rem;
        }
    }
}

.block-mall-similar {
    margin-block: 2rem;
    & > h3 {
        text-align: center;
    }
}

.block-map {
    height: 480px;
    
    iframe {
        height: 100%;
    }
}
.block-optages {
    margin-block: 2rem;
    text-align: center;
    container-type: inline-size;
    .title {
        margin-bottom: 1rem;
    }
    .items {
        display: grid;
        grid-template-columns: repeat(5, 1fr);
        justify-items: center;
        gap: 1rem;
        @container (width < 540px) {
            grid-template-columns: 1fr;
        }
    }
    .item {
        @container (width < 540px) {
            width: 100%;
            max-width: 360px;
            display: grid;
            gap: 1rem;
            grid-template-columns: 120px auto;
            align-items: center;
        }
    }
    .image {
        height: 160px;
        display: flex;
        align-items: center;
        justify-content: center;
        @container (width < 540px) {
            height: 80px;
        }
        img {
            @container (width < 540px) {
                height: 80px;
            }
        }
    }
    .text {
        font-weight: bold;
        @container (width < 680px) {
            font-size: 14px;
        }
        @container (width < 540px) {
            font-size: 16px;
            text-align: left;
        }
    }

}
.block-packprod {
    margin-block: 2rem;
    text-align: center;
    container-type: inline-size;
    .title {
        
    }
    .items {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 1rem;
        @container (width < 640px) {
            grid-template-columns: repeat(2, 1fr);
        }
    }

    .image {
        margin-bottom: 10px;
    }
    .text {
        line-height: 1.1;
        @container (width < 728px) {
            font-size: 14px
        }
    }
}
.block-promolinks {
    position: relative;
    width: 100%;
    overflow: hidden;
    border-radius: 2rem;

    .promolinks-bg {
        line-height: 0;

        img {
            width: 100%;
            height: auto;
            display: block;
        }
    }

    .promolinks-container {
        position: absolute;
        inset: 0;
        z-index: 1;
        width: 100%;
        height: 100%;
        max-width: 1024px;
        margin: 0 auto;
        padding:  .5rem 2rem;
        display: grid;
        grid-template-columns: 1fr 1fr;
        grid-template-rows: 1fr 1fr;
        gap: 1.5rem;
        align-content: center;
    }

    .promolinks-item {
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        gap: 0.5rem;
        max-width: 200px;

        &:nth-child(1) {
            grid-column: 1 / -1;
            justify-self: center;
            align-self: start;
        }

        &:nth-child(2) {
            justify-self: start;
            align-self: end;
        }

        &:nth-child(3) {
            justify-self: end;
            align-self: end;
        }
    }

    .promolinks-item-title {
        font-size: 1.25rem;
        font-weight: bold;
        line-height: 1.3;
    }

    .promolinks-item-text {
        font-size: 0.8rem;
        line-height: 1.2;
        flex: 1;
    }

    .promolinks-item-link {
        margin-top: 0.25rem;
        padding: 0.4rem 1.2rem;
        font-size: 0.9rem;
    }

    /* >= 1024px — второй item белым текстом */
    @media (width >= 1024px) {
        .promolinks-item:nth-child(2) {
            .promolinks-item-title,
            .promolinks-item-text,
            .promolinks-item-link {
                color: #fff;
            }
        }
    }

    /* < 1280px — уменьшаем шрифт в item */
    @media (width < 1280px) {
        .promolinks-item-title {
            font-size: 1.1rem;
        }
        .promolinks-item-text {
            font-size: 0.85rem;
        }
        .promolinks-item-link {
            font-size: 0.8rem;
        }
    }

    /* < 1024px — изображение сверху на всю ширину, items снизу в 3 колонки */
    @media (width < 1024px) {
        .promolinks-item-title {
            font-size: 1rem;
        }
        .promolinks-item-text {
            font-size: 0.8rem;
        }
        .promolinks-item-link {
            font-size: 0.75rem;
        }

        .promolinks-container {
            position: relative;
            inset: auto;
            height: auto;
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            grid-template-rows: none;
            gap: 1rem;
            padding: 1.5rem 1rem;
        }

        .promolinks-item {
            max-width: 200px;
            justify-self: center;

            &:nth-child(1) {
                order: 2;
            }

            &:nth-child(2) {
                order: 1;
            }

            &:nth-child(3) {
                order: 3;
            }

            &:nth-child(1),
            &:nth-child(2),
            &:nth-child(3) {
                grid-column: auto;
                justify-self: center;
                align-self: auto;
            }
        }
    }

    /* < 728px — ещё уменьшаем шрифт */
    @media (width < 728px) {
        .promolinks-item-title {
            font-size: 0.9rem;
        }
        .promolinks-item-text {
            font-size: 0.75rem;
        }
        .promolinks-item-link {
            font-size: 0.7rem;
        }
    }

    /* < 540px — items в одну колонку */
    @media (width < 540px) {
        .promolinks-container {
            grid-template-columns: 1fr;
            justify-items: center;
        }

        .promolinks-item {
            max-width: 280px;
            width: 100%;

            &:nth-child(1) {
                order: 2;
            }

            &:nth-child(2) {
                order: 1;
            }

            &:nth-child(3) {
                order: 3;
            }
        }
    }
}

.block-reviews {
    margin-block: 2rem;
    container-type: inline-size;

    .images {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 1rem;

        @container (width < 576px) {
            grid-template-columns: 1fr;
        }
    }
}

.block-samples {
    margin-block: 2rem;
    container-type: inline-size;

    .title {
        text-align: center;
    }

    .images {
        display: grid;
        grid-template-columns: 8fr 4fr 3fr;
        grid-template-rows: 460px 460px;
        gap: 1rem;

        @container (width < 1200px) {
            grid-template-rows: 360px 360px;
        }

        @container (width < 992px) {
            grid-template-rows: 320px 320px;
        }

        @container (width < 768px) {
            grid-template-rows: 240px 240px;
        }

        @container (width < 576px) {
            grid-template-rows: 140px 140px;
        }

        @container (width < 480px) {
            grid-template-rows: 100px 100px;
        }
    }

    .image {
        overflow: hidden;
        img {
            width: 100%;
            height: 100%;
            object-position: center;
            object-fit: cover;
        }
    }

    .image-1 {
        grid-row: 1 / 3;
    }

    .image-2 {
        grid-column: 2 / -1;
        grid-row: 1;
    }

    .image-3 {
        grid-column: 2;
        grid-row: 2;
    }

    .image-4 {
        grid-column: 3;
        grid-row: 2;
    }
}
.block-service-deadlines {
    margin-block: 2rem;
    position: relative;
    container-type: inline-size;

    .bg {
        position: absolute;
        inset: 0;
        z-index: 0;
        overflow: hidden;
        border-radius: calc(var(--pico-border-radius) * 2);

        img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }
    }

    .content {
        position: relative;
        z-index: 1;
        max-width: 580px;
        padding: 2rem;
        display: flex;
        flex-direction: column;
        gap: 1.5rem;
        color: #fff;
        text-shadow: 0 1px 4px rgba(0, 0, 0, 0.5);
    }

    .title {
        margin: 0;
        font-size: 1.8rem;
        font-weight: bold;
        color: #fff;
        text-shadow: 0 1px 4px rgba(0, 0, 0, 0.5);

        @container (width < 640px) {
            font-size: 1.4rem;
        }
    }

    .items {
        display: flex;
        flex-direction: column;
        gap: 1rem;
    }

    .item {
        display: flex;
        align-items: flex-start;
        gap: 1rem;
    }

    .item-icon {
        flex-shrink: 0;
        width: 48px;
        height: 48px;
        display: flex;
        align-items: center;
        justify-content: center;

        img {
            max-width: 100%;
            max-height: 100%;
            object-fit: contain;
        }
    }

    .item-text {
        flex: 1;
        min-width: 0;
        font-size: 0.95rem;
        line-height: 1.5;
        color: #fff;
        text-shadow: 0 1px 4px rgba(0, 0, 0, 0.5);

        @container (width < 640px) {
            br {
                display: none;
            }
        }
    }
}

.block-service-steps {
    margin-block: 3rem;
    container-type: inline-size;

    .items {
        display: grid;
        grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr;
        align-items: start;
        justify-items: center;
        gap: 1rem;

        @container (width < 640px) {
            grid-template-columns: 1fr auto 1fr;
            row-gap: 2rem;
        }

        @container (width < 480px) {
            grid-template-columns: 1fr;
            max-width: 360px;
            margin-inline: auto;
        }
    }

    /* Desktop: 4 items in one row with arrows between */
    & .items > :nth-child(1) { grid-column: 1; }
    & .items > :nth-child(2) { grid-column: 2; }
    & .items > :nth-child(3) { grid-column: 2; }
    & .items > :nth-child(4) { grid-column: 3; }
    & .items > :nth-child(5) { grid-column: 4; }
    & .items > :nth-child(6) { grid-column: 4; }
    & .items > :nth-child(7) { grid-column: 5; }
    & .items > :nth-child(8) { grid-column: 6; }
    & .items > :nth-child(9) { grid-column: 6; }
    & .items > :nth-child(10) { grid-column: 7; }

    @container (width < 640px) {
        & .items > :nth-child(1) { grid-column: 1; }
        & .items > :nth-child(2) { grid-column: 2; }
        & .items > :nth-child(3) { display: none; }
        & .items > :nth-child(4) { grid-column: 3; }
        & .items > :nth-child(5) { display: none; }
        & .items > :nth-child(6) { display: none; }
        & .items > :nth-child(7) { grid-column: 1; }
        & .items > :nth-child(8) { grid-column: 2; }
        & .items > :nth-child(9) { display: none; }
        & .items > :nth-child(10) { grid-column: 3; }
    }

    @container (width < 480px) {
        & .items > :nth-child(1) { grid-column: 1; }
        & .items > :nth-child(2) { display: none; }
        & .items > :nth-child(3) { grid-column: 1; }
        & .items > :nth-child(4) { grid-column: 1; }
        & .items > :nth-child(5) { display: none; }
        & .items > :nth-child(6) { grid-column: 1; }
        & .items > :nth-child(7) { grid-column: 1; }
        & .items > :nth-child(8) { display: none; }
        & .items > :nth-child(9) { grid-column: 1; }
        & .items > :nth-child(10) { grid-column: 1; }
    }

    .item {
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        gap: 0.75rem;
        width: 100%;

        @container (width < 480px) {
            flex-direction: row;
            text-align: left;
            gap: 1rem;
        }
    }

    .item-image {
        width: 110px;
        height: 110px;
        border-radius: 50%;
        background: #f0f0f2;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-shrink: 0;

        @container (width < 480px) {
            width: 80px;
            height: 80px;
        }

        img {
            max-width: 60%;
            max-height: 60%;
            object-fit: contain;
        }
    }

    .item-text {
        display: flex;
        flex-direction: column;
        gap: 0.5rem;
    }

    .item-title {
        font-weight: bold;
        font-size: 1rem;
        line-height: 1.2;
        @container (width < 1024px) and (width >= 480px) {
            font-size: .8rem;
        }
    }

    .item-description {
        font-size: 0.8rem;
        line-height: 1.3;
    }

    /* Arrow styles */
    .arrow {
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 1.5rem;
        color: #ccc;
        user-select: none;
        pointer-events: none;
    }

    .arrow-right {
        display: flex;
        margin-top: calc(55px - 0.5em);

        @container (width < 480px) {
            display: none;
        }
    }

    .arrow-down {
        display: none;

        @container (width < 480px) {
            display: flex;
        }
    }
}

.block-service-talon {
    margin-block: 2rem;


    .service-talon-inner {
        max-width: 960px;
        margin-inline: auto;
        border: 1px solid var(--pico-primary);
        border-radius: var(--pico-border-radius);
        padding: 1rem 2rem;
        display: flex;
        align-items: center;
        gap: 1.5rem;
        background-color: #f5f7f6;
    }

    .service-talon-icon {
        flex-shrink: 0;

        img {
            display: block;
            width: 60px;
            height: auto;
        }
    }

    .service-talon-text {
        flex: 1;
        min-width: 0;
    }

    .service-talon-title {
        font-weight: bold;
        font-size: 1.1rem;
        line-height: 1.3;
        margin-bottom: 0.25rem;
    }

    .service-talon-description {
        font-size: 0.9rem;
        line-height: 1.4;
    }

    .service-talon-action {
        flex-shrink: 0;
    }

    .service-talon-btn {
        white-space: nowrap;
        padding: 0.5rem 1.5rem;
        font-size: 0.95rem;
    }

    /* Mobile: stack vertically */
    @media (width < 640px) {
        .service-talon-inner {
            flex-direction: column;
            text-align: center;
            padding: 1.5rem 1rem;
        }

        .service-talon-text {
            text-align: center;
        }

        .service-talon-action {
            width: 100%;
        }

        .service-talon-btn {
            width: 100%;
        }
    }
}

.block-service-terms {
    margin-block: 2rem;

    .title {
        text-align: center;
    }

    .items-grid {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        gap: 1rem;

        @media (width < 640px) {
            grid-template-columns: 1fr 1fr;
        }

        @media (width < 480px) {
            grid-template-columns: 1fr;
        }
    }

    .card {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        text-align: left;
        gap: .5rem;
        padding: 1rem;
        width: 100%;
        background: #fff;
        border-radius: calc(var(--pico-border-radius) * 2);
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);

        .card-header {
            display: flex;
            align-items: center;
            gap: .75rem;
        }

        .card-number {
            width: 62px;
            height: 62px;
            flex-shrink: 0;
            display: flex;
            align-items: center;
            justify-content: center;

            img {
                height: 62px;
                width: auto;
                object-fit: contain;
            }
        }

        .card-icon {
            width: 48px;
            height: 48px;
            flex-shrink: 0;
            display: flex;
            align-items: center;
            justify-content: center;

            img {
                height: 48px;
                width: auto;
                object-fit: contain;
            }
        }

        .card-title {
            font-size: .8rem;
            font-weight: bold;
            line-height: 1.2;
            max-width: 140px;
            word-break: normal;
            overflow-wrap: normal;
            hyphens: none;
        }

        .card-description {
            font-size: 0.8rem;
            line-height: 1.2;

            @media (width < 640px) {
                br {
                    display: none;
                }
            }
        }
    }
}

.block-simpleslider {
    .splide__pagination {
        gap: 6px;
        button {
            display: block;
            background-color: white;
            border-radius: 50%;
            width: 12px;
            height: 12px;
            border: 1px solid var(--primary);
        }
    }
}
.block-snippet {
    container-type: inline-size;
}
.block-soon {
    background-color: blanchedalmond;
    padding: 2rem;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: space-around;
    flex-direction: column;
    gap: 2rem;
    margin-block: 2rem;

    .title {
        font-weight: 600;
        font-size: 2rem;
        color: #cc947c;
        text-transform: uppercase;
    }

    .name {
        font-weight: 600;
        font-size: 3rem;
        color: #ab745c;
        text-transform: uppercase;
    }
}
.block-title {
    &.center {
        text-align: center;
    }
    &.right {
        text-align: right;
    }
}
.block-video {
    container-type: inline-size;
    margin-block: 2rem;

    .tabs {
        display: flex;
        flex-wrap: wrap;
        gap: 0.5rem;
        margin: 0 0 2rem;
        padding: 0;
        list-style: none;
        justify-content: center;

        @container (width < 1024px) {
            justify-content: flex-start;
        }
    }

    .tab {
        display: inline-block;
        padding: 0.6rem 1.5rem;
        border-radius: var(--pico-border-radius);
        background: transparent;
        color: #0e2231;
        text-decoration: none;
        font-weight: 500;
        font-size: 1rem;
        transition: background-color 0.2s, color 0.2s;
        white-space: nowrap;
        cursor: pointer;

        &:first-child {
            margin-right: 2rem;
            padding-inline: 4rem;
        }

        &:hover {
            background-color: #f0f0f0;
        }

        &.active {
            background: linear-gradient(135deg, #39936d 0%, #075859 100%);
            color: #fff;
        }

        &:focus {
            outline: 1px solid var(--pico-primary);
        }
    }

    .records-grid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 1.5rem;

        @container (width < 560px) {
            grid-template-columns: 1fr;
        }
    }

    .record-card {
        border-radius: var(--pico-border-radius);
        overflow: hidden;
        background-color: #f3f4f6;
        display: flex;
        flex-direction: column;

        &:nth-child(n + 7) {
            display: none;
        }

        &.show {
            display: flex;
        }
    }

    .record-image {
        width: 100%;
        height: 180px;
        overflow: hidden;

        img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block;
        }
    }

    .record-image-link {
        cursor: pointer;
        display: block;
        position: relative;
    }

    .play-btn {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 56px;
        height: 56px;
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.6);
        display: flex;
        align-items: center;
        justify-content: center;
        color: #0e2231;
        pointer-events: none;
        transition: background 0.2s, transform 0.2s;
    }

    .play-btn svg {
        margin-left: 3px;
    }

    .record-image-link:hover .play-btn {
        background: rgba(255, 255, 255, 0.85);
        transform: translate(-50%, -50%) scale(1.08);
    }

    .record-info {
        padding: 1rem;
        display: flex;
        gap: 0.5rem;
        flex: 1;
    }

    .record-info-main {
        display: flex;
        flex-direction: column;
        gap: 0.3rem;
        flex: 1;
        min-width: 0;
    }

    .record-name,
    .record-name-link {
        font-weight: 600;
        font-size: 1.1rem;
        color: #0e2231;
        text-decoration: none;
    }

    .record-name-link:hover {
        color: var(--pico-primary);
    }

    .record-date {
        font-size: 0.85rem;
        color: var(--pico-muted-color);
    }

    .record-fav {
        flex-shrink: 0;
        width: 2rem;
        height: 2rem;
        padding: 0;
        border: none;
        background: none;
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
        color: var(--pico-primary);
        outline: none;
        border: none;
        box-shadow: none;

        .fav-icon {
            stroke: var(--pico-primary);
            fill: none;
            transition: fill 0.2s;
        }

        &.active .fav-icon {
            fill: url(#fav-gradient);
            stroke: none;
        }
    }

    .show-more-wrap {
        display: flex;
        justify-content: center;
        margin-top: 2rem;
    }

    .show-more-btn {
        padding: 0.6rem 3rem;
        font-size: 1rem;
        cursor: pointer;

        &.hidden {
            display: none;
        }
    }

    @container (width < 480px) {
        .tabs {
            gap: 0.4rem;
        }
        .tab {
            padding: 0.5rem 1rem;
            font-size: 0.9rem;
        }
    }
}

/* Hide prev/next arrows in glightbox */
.gprev,
.gnext {
    display: none !important;
}

.block-videobox {
    container-type: inline-size;
    margin-block: 2rem;

    h3 {
        text-align: center;
    }

    .videobox-grid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 1.5rem;

        @container (width < 560px) {
            grid-template-columns: 1fr;
        }
    }

    .videobox-card {
        overflow: hidden;
        /*background-color: #f3f4f6;*/
    }

    .videobox-image {
        border-radius: var(--pico-border-radius);
        width: 100%;
        height: 220px;
        overflow: hidden;

        img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block;
        }
    }

    .videobox-image-link {
        cursor: pointer;
        display: block;
        position: relative;
    }

    .play-btn {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 56px;
        height: 56px;
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.6);
        display: flex;
        align-items: center;
        justify-content: center;
        color: #0e2231;
        pointer-events: none;
        transition: background 0.2s, transform 0.2s;
    }

    .play-btn svg {
        margin-left: 3px;
    }

    .videobox-image-link:hover .play-btn {
        background: rgba(255, 255, 255, 0.85);
        transform: translate(-50%, -50%) scale(1.08);
    }

    .videobox-info {
        padding: 0.75rem;
        text-align: center;
    }

    .videobox-title {
        font-weight: 600;
        font-size: 1.1rem;
        color: #0e2231;
    }
}

.block-wewant {
    margin-block: 2rem;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2rem;
    align-items: center;
    container-type: inline-size;

    @container (width < 860px) {
        grid-template-columns: 1fr;
    }

    .content {
        display: flex;
        flex-direction: column;
        gap: 1rem;
    }

    .title {
        margin: 0;
        font-size: 1.8rem;
        font-weight: bold;
        span {
            color: var(--pico-primary);
        }
        @container (width < 640px) {
            font-size: 1.6rem;
        }
    }

    .text {
        @container (width < 640px) {
            br {
                display: none;
            }
        }
    }

    .items {
        display: flex;
        flex-direction: column;
        gap: 1rem;
        margin-top: 1rem;
    }

    .item {
        display: flex;
        align-items: flex-start;
        gap: .75rem;
    }

    .item-icon {
        flex-shrink: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 48px;
        height: 48px;

        img {
            height: 48px;
            width: auto;
            object-fit: contain;
        }
    }

    .item-text {
        display: flex;
        flex-direction: column;
        gap: .25rem;
    }

    .item-title {
        font-size: 1rem;
        font-weight: 600;
    }

    .item-description {
        font-size: .875rem;
        line-height: 1.4;
    }

    .image {
        position: relative;
        display: flex;
        justify-content: center;

        img {
            max-width: 100%;
            height: auto;
            object-fit: contain;
            border-radius: 1rem;
        }

        &::after {
            content: '';
            position: absolute;
            inset: 0;
            border-radius: 1rem;
            box-shadow: inset 0 0 50px rgba(255, 255, 255, 0.5);
            pointer-events: none;
        }
    }
}

.block-whywe {
    position: relative;
    container-type: inline-size;
    margin-block: 2rem;
    margin-bottom: 150px;
    height: 730px;

    @container (width < 800px) {
        height: auto;
        margin-bottom: unset;
    }

    .bg {
        position: absolute;
        inset: 0;
        overflow: hidden;
        img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center;
        }
    }

    .container {
        position: relative;
        bottom: -300px;

        @container (width < 800px) {
            bottom: unset;
            padding-block: 2rem;
        }
    }

    .block_title {
        color: white;
        text-transform: uppercase;
        font-size: 3rem;
        font-weight: bold;
        text-shadow: 0px 0px 6px rgba(0, 0, 0, 0.567);
        span {
            font-size: 4rem;
            font-weight: 900;
        }
        @container (width < 640px) {
            font-size: 2rem;
            span {
                font-size: 2rem;
            }
        }
    }

    .cards {
        display: grid;
        gap: 2rem;
        grid-template-columns: repeat(4, 1fr);
        @container (width < 900px) {
            gap: 1rem;
        }
        @container (width < 800px) {
            grid-template-columns: repeat(2, 1fr);
        }
        @container (width < 400px) {
            grid-template-columns: repeat(1, 1fr);
        }
    }

    .card {
        display: flex;
        flex-direction: column;
        gap: 1rem;
        background-color: #f8f4ee;
        border-radius: 1rem;
        padding: 1rem;

        .title {
            font-weight: bold;
        }

        &:nth-child(3) .title {
            max-width: 120px;
        }

        &:nth-child(4) .title {
            max-width: 140px;
        }
    }

}

.block-xraylabstages {
    container-type: inline-size;

    & table {
        font-weight: bold;
        border-collapse: collapse;

        & th, & td {
            border: 1px solid black;
        }

        & td {
            padding: 10px;
            vertical-align: top;
        }

        @container (width < 768px) {
            & td {
                padding: 6px;
            }
        }

        @container (width < 320px) {
            display: block;

            & tbody {
                display: flex;
                flex-wrap: wrap;

                & tr {
                    display: flex;
                    flex-wrap: wrap;
                }

                & td:first-child {
                    border-right: none;
                    background-color: var(--primary);
                    color: white;
                }

                & td:nth-child(2) {
                    flex: 1;
                    border-left: none;
                }

                & td:last-child {
                    min-width: 100%;
                    flex: 1;
                    font-weight: normal;
                }
            }
        }
    }

    & > .text {
        font-weight: bold;
    }
}
.block-youtube {
    &.aspect-video {
        aspect-ratio: 16 / 9;
    }
}
.dialog-agreement {
    container-type: inline-size;
}
.dialog-backcall {
    container-type: inline-size;
    border-radius: 0;

    & .logo {
        margin: var(--spacing) 0;
        text-align: center;

        & img {
            height: 80px;
        }
    }

    & p {
        text-align: center;
        font-size: 14px;

        & a {
            text-decoration: none;

            &:hover {
                text-decoration: underline;
            }
        }
    }

    & h2 {
        font-size: 18px;
        text-align: center;
        color: black;
    }

    & label {
        font-size: 14px;
    }

    & input[type="text"], & textarea {
        width: 100%;
        margin-bottom: var(--spacing);
    }

    & textarea {
        resize: vertical;
    }

    & .snippet-agreement {
        margin: var(--spacing) 0;
    }

    & .modal-button {
        display: block;
        margin: var(--spacing) auto;
    }
}

#BackcallForm_forms_flash {
    display: none;
}
.dialog-info {
    container-type: inline-size;
    color: white;
    background-color: var(--secondary);
    max-width: 640px;
}
.dialog-menu {
    container-type: inline-size;
    text-align: center;
}
.el-anchor {
    top: -60px;
    position: relative;
}

.el-dummy {
    padding: 2rem;
    margin-block: 2rem;
    border: 2px dashed var(--secondary);
    color: var(--secondary);
    display: flex;
    align-items: center;
    justify-content: center;

    &.clear {
        border: none;
        background: none;
        color: var(--color);
    }
}

.expander-container {
    margin-left:  calc(-1 * var(--spacing));
    margin-right: calc(-1 * var(--spacing));
}

.expander {
    width: auto;
    max-width: var(--wrapper);

    @media (width >= 1980px) {
        margin-left:  calc(50% - var(--wrapper) / 2);
        margin-right: calc(50% - var(--wrapper) / 2);
    }

    &.padded {
        padding-left:  calc(var(--spacing) * 2);
        padding-right: calc(var(--spacing) * 2);
    }

    @media (width < 1980px) {
        width: 100vw;
        margin-left:  calc(50% - 50vw);
        margin-right: calc(50% - 50vw);
    }
}

/*
 * hh - Header Height
 * необходимо чтобы делать верхний отступ контента при плавающей шапке
 * переменная --hh обновляется в theme.js
 */
.el-hh {
    height: var(--hh);
}
.el-margin-block {
    margin-block: 4rem;
    @media(width < 1080px) {
        margin-block: 3rem;
    }
    @media(width < 960px) {
        margin-block: 2rem;
    }
}

.el-menu {
    display: flex;
    list-style: none;
    padding: 0;
    position: relative;
    margin: 0 !important;
    gap: 30px;

    li {
        padding: 0;
        &:not(.fulldrop) {
            position: relative;
        }
    }

    a, span {
        margin: 0;
        padding: 0;
        display: inline-block;
    }

    & > li  ul  {
        display: none;
        position: absolute;
        z-index: 3;
        list-style: none;
        margin: 0;
        font-size: 16px;
        padding: 0;
        min-width: 240px;
        box-shadow: 0px 2px 4px rgba(black, .3);
        a, span {
            text-transform: none;
            white-space: nowrap;
        }
        li {
            width: 100%;
            a {
                display: block;
                width: 100%;
            }
        }
    }

    & > li:not(.fulldrop) > ul {
       transform: translateX(-50%);
       left: 50%;
    }

    & > li.fulldrop > ul {
        width: 100%;
        left: 0;
    }

    & li:hover > ul {
        display: block;
    }

}

.el-wrapper {
    max-width: var(--wrapper);
    margin: 0 auto;
    overflow: hidden;
}
body.layout-default {
    overflow-x: hidden;

    & > .fs-home {
        box-shadow: 0px 0px 10px rgba(0,0,0, .5);
        min-height: 100vh;
        display: flex;
        flex-direction: column;
    }

    & .flash-message {
        top: 50%;
        font-size: 20px;
    }

    & button {
        /*width: auto;*/
    }

    & .splide__arrow {
        background-color: transparent;

        &:disabled {
            display: none;
        }

        & svg {
            fill: var(--primary);
        }
    }

    & .splide__pagination__page.is-active {
        background: var(--primary);
    }

    & .splide__arrow:hover:not(:disabled) svg {
        fill: var(--primary);
    }

    & [aria-busy="true"]:not(input, select, textarea):not(:empty)::before {
        display: none;
    }

    & .splide[aria-busy="true"] {
        white-space: normal !important;
    }
}

.mall-product {
    container-type: inline-size;

    .mall-product__body {
        display: grid;
        gap: 3rem;
        grid-template-columns: 1fr 1fr;

        .firstcol {
            display: flex;
            flex-direction: column;
            gap: 1rem;
        }

        .secontcol {
            display: flex;
            flex-direction: column;
            gap: 2rem;
        }

        @container (width < 728px) {
            grid-template-columns: 1fr;
            & > .images {
                max-width: 360px;
                margin-inline: auto;
            }
        }
    }

    .mall-product__images {
        .main-slider {
            margin-bottom: 1.5rem;
            position: relative;

            .splide__slide {
                text-align: center;
                background-color: white;
                border-radius: var(--pico-border-radius);

                img {
                    border-radius: var(--pico-border-radius);
                    overflow: hidden;
                }
            }

            .splide__arrow {
                position: absolute;
                top: 50%;
                transform: translateY(-50%);
                z-index: 1;


            }
            .splide__arrow--prev {
                left: -16px;
            }
            .splide__arrow--next {
                right: -16px !important;
            }
        }
        .thumb-slider {
            .splide__track {
                margin-inline: 40px;
            }
            .splide__slide {
                background-color: white;
                border: none;
                padding: 0;
                text-align: center;
                aspect-ratio: 260 / 200;
                border-radius: var(--pico-border-radius);
                overflow: hidden;

                img {
                    width: 100%;
                    height: 100%;
                    object-fit: cover;
                }

                &:focus {
                    border: none;
                }
            }
            .splide__arrow--prev {
                left: 0;
            }
            .splide__arrow--next {
                right: 0;
            }

            .splide__slide:focus,
            .splide__slide:focus-visible {
                outline: none !important;
                border: none !important;
                box-shadow: none !important;
            }
        }
    }

    .mall-product__description {
        .mall-product__description-text {
            display: -webkit-box;
            -webkit-line-clamp: 5;
            -webkit-box-orient: vertical;
            overflow: hidden;
        }

        .mall-product__description-btn {
            display: block;
            margin: 0.5rem auto 0;
            width: fit-content;
            cursor: pointer;
            font-weight: 600;
            font-size: 0.9rem;

            &:hover {
                opacity: 0.9;
            }
        }

        &:has(.mall-product__description-toggle:checked) {
            .mall-product__description-text {
                -webkit-line-clamp: unset;
                display: block;
            }

            .mall-product__description-btn {
                display: none;
            }
        }
    }

    .mall-product__info {
        display: grid;
        gap: 1.5rem;
        container-type: inline-size;
        align-content: start;
    }

    h1 {
        margin-bottom: 0;
        font-size: 1.875rem;
    }

    .mall-product__description-short {
        font-size: 1rem;
        font-weight: 400;
        margin: 0;
    }

    .mall-product__quantity_min {
        font-weight: bold;
        display: flex;
        gap: 1rem;
        align-items: baseline;
        .value {
            font-size: 1.4rem;
        }
    }

    .mall-product__properties {
        display: flex;
        flex-direction: column;
        gap: 1rem;
        font-size: 1.2rem;

        h2 {
            font-size: 1.2rem;
            margin: 0;
        }

        .name {
            font-weight: bold;
        }
        .value {
            color: #7b0202;
        }
        .unit {
            color: #7b0202;
        }
    }

    .snippet-clickbuybutton {
        justify-self: start;
        margin-block: 2rem;
    }

    .mall-product__advantages-list {
        ul {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: .5rem 1rem;
            margin: 0;
            padding: 0;
            list-style: none;
        }

        li {
            margin: 0;
            padding: 0 0 0 1.5rem;
            position: relative;
            font-size: .8rem;
            line-height: 1.3;
            list-style: none;

            &::before {
                content: '';
                position: absolute;
                left: 0;
                top: 2px;
                width: 16px;
                height: 16px;
                background: url("../themes/finstandart/assets/images/mall/product/check.png") center no-repeat;
                background-size: contain;
            }
        }
    }

    .mall-product__advantages {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 0;
        border: 1px solid var(--pico-muted-border-color);
        border-radius: var(--pico-border-radius);
        overflow: hidden;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    }

    .mall-product__advantages-item {
        display: flex;
        align-items: center;
        gap: .5rem;
        padding: .75rem 1rem;
        font-size: .8rem;
        line-height: 1.2;

        img {
            width: 32px;
            height: 32px;
            flex-shrink: 0;
            object-fit: contain;
        }
    }

    .mall-product__actions {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 1rem;
        margin-top: 1rem;
    }

    .mall-product__prices {
        display: flex;
        align-items: baseline;
        gap: 0.5rem;
    }

    .mall-product__price {
        font-size: 1.5rem;
        font-weight: 700;
    }

    .mall-product__old-price {
        font-size: 1rem;
        color: var(--pico-muted-color);
        text-decoration: line-through;
    }

    .mall-product__video {
        h3 {
            margin: 0 0 1rem;
            font-size: 1.2rem;
        }

        .splide__arrow {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            z-index: 1;
        }

        .splide__arrow--prev {
            left: -16px;
        }

        .splide__arrow--next {
            right: -16px !important;
        }

        .splide__slide {
            background: none;
            border-radius: 0;
        }
    }

    .mall-product__video-card {
        display: flex;
        flex-direction: column;
        gap: 0.5rem;
    }

    .mall-product__video-preview {
        position: relative;
        display: block;
        border-radius: var(--pico-border-radius);
        overflow: hidden;
        cursor: pointer;

        img {
            width: 100%;
            height: 180px;
            object-fit: cover;
            display: block;
            border-radius: var(--pico-border-radius);
        }
    }

    .mall-product__video-play {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 56px;
        height: 56px;
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.6);
        display: flex;
        align-items: center;
        justify-content: center;
        color: #0e2231;
        pointer-events: none;
        transition: background 0.2s, transform 0.2s;

        svg {
            margin-left: 3px;
        }
    }

    .mall-product__video-preview:hover .mall-product__video-play {
        background: rgba(255, 255, 255, 0.85);
        transform: translate(-50%, -50%) scale(1.08);
    }

    .mall-product__video-info {
        padding: 0;
    }

    .mall-product__video-name {
        font-weight: 400;
        font-size: 0.95rem;
        color: #0e2231;
        text-decoration: none;
        line-height: 1.3;
    }

    .mall-product__video-name:hover {
        color: var(--pico-primary);
    }
}

.mall-products-filter {
    display: flex;
    gap: 1rem;

    @media (width < 1080px) {
        flex-wrap: wrap;
    }

    @media (width < 540px) {
        flex-direction: column;
        & > * {
            width: 100%;
        } 
    }

    .mall-property {
        flex: 1;
    }

    .mall-property__label {
        display: none;
    }

    select {
        padding: 6px;
        padding-left: 20px;
        padding-right: 50px;
        font-size: 16px;
        margin-bottom: 0;
        min-width: 210px;
    }

    .mall-products-filter-clear {
        align-self: flex-end;
        border: none;
    }
}
.mall-products {
    container-type: inline-size;
    position: relative;

    .mall-loader {
        position: absolute;
        inset: 0;
        display: flex;
        align-items: flex-start;
        padding-top: 3rem;
        justify-content: center;
        background-color: rgba(173, 173, 173, 0.398);
        border-radius: 1rem;
        display: none;
        z-index: 1;
    }

    .snippet-mall-products {

    }

    .mall-products-empty {
        text-align: center;
        background: #eee;
        border-radius: 1rem;
        padding: 2rem;
    }
}

.fs-steps__item {
  position: relative; z-index: 1; text-align: center;
}

.fs-steps__item::before {
  content: ""; position: absolute; top: 29px; left: 50%; width: calc(100% + 18px); height: 2px; background: repeating-linear-gradient(90deg, var(--accent) 0 7px, transparent 7px 15px);
}

.fs-steps__node {
  position: relative; z-index: 1; width: 58px; height: 58px; margin: 0 auto 16px; border-radius: 50%; background: var(--brand); border: 4px solid var(--bg); display: flex; align-items: center; justify-content: center; box-shadow: 0 6px 16px rgba(52,58,73,.16);
}

@media (max-width: 980px) {
  .fs-steps__item::before { display: none; }
}

.fs-deliver__item small {
  display: block; color: var(--ink-muted); font-size: .82rem; margin-top: 2px;
}

@media (max-width: 760px) {
  .fs-subhead { font-size: 1.25rem; }
  .fs-mobilebar { display: flex; position: fixed; left: 0; right: 0; bottom: 0; z-index: 60; background: var(--brand); box-shadow: 0 -4px 16px rgba(0,0,0,.18); }
  .fs-mobilebar a { flex: 1; text-align: center; padding: 13px 6px; color: #fff; text-decoration: none; font-size: .85rem; border-right: 1px solid rgba(255,255,255,.15); }
  .fs-mobilebar a:last-child { border: none; background: var(--accent); color: var(--brand); font-weight: 700; }
  body { padding-bottom: 52px; }
}
.fs-steps__item {
  position: relative; z-index: 1; text-align: center;
}

.fs-steps__item::before {
  content: ""; position: absolute; top: 29px; left: 50%; width: calc(100% + 18px); height: 2px; background: repeating-linear-gradient(90deg, var(--accent) 0 7px, transparent 7px 15px);
}

.fs-steps__node {
  position: relative; z-index: 1; width: 58px; height: 58px; margin: 0 auto 16px; border-radius: 50%; background: var(--brand); border: 4px solid var(--bg); display: flex; align-items: center; justify-content: center; box-shadow: 0 6px 16px rgba(52,58,73,.16);
}

@media (max-width: 980px) {
  .fs-steps__item::before { display: none; }
}

@media (max-width: 760px) {
  .fs-subhead { font-size: 1.25rem; }
  .fs-expert { grid-template-columns: 1fr; }
  .fs-expert__ph { width: 100%; height: 130px; }
  .fs-mobilebar { display: flex; position: fixed; left: 0; right: 0; bottom: 0; z-index: 60; background: var(--brand); box-shadow: 0 -4px 16px rgba(0,0,0,.18); }
  .fs-mobilebar a { flex: 1; text-align: center; padding: 13px 6px; color: #fff; text-decoration: none; font-size: .85rem; border-right: 1px solid rgba(255,255,255,.15); }
  .fs-mobilebar a:last-child { border: none; background: var(--accent); color: var(--brand); font-weight: 700; }
  body { padding-bottom: 52px; }
}

.fs-trustlogos {
  background: var(--bg-soft, #f6f4f2); text-align: center;
}

.fs-steps__grid {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; counter-reset: step; position: relative;
}

.fs-steps__item {
  position: relative; z-index: 1; text-align: center;
}

.fs-steps__item::before {
  content: ""; position: absolute; top: 29px; left: 50%; width: calc(100% + 18px); height: 2px; background: repeating-linear-gradient(90deg, var(--accent) 0 7px, transparent 7px 15px);
}

.fs-steps__node {
  position: relative; z-index: 1; width: 58px; height: 58px; margin: 0 auto 16px; border-radius: 50%; background: var(--brand); border: 4px solid var(--bg); display: flex; align-items: center; justify-content: center; box-shadow: 0 6px 16px rgba(52,58,73,.16);
}

@media (max-width: 980px) {
  .fs-steps__item::before { display: none; }
}
/* ===================== ГЛАВНАЯ: уникальные стили ===================== */

/* --- мессенджеры в hero/cta (расширенный вариант с кнопками-пилюлями) --- */
.fs-msgr { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.fs-msgr__btn {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: var(--font); font-weight: 600; font-size: .9rem;
  padding: 11px 18px; border-radius: 8px; border: 1.5px solid var(--line);
  color: var(--brand); background: #fff; transition: border-color .18s, color .18s, background .18s;
}
.fs-msgr__btn svg { width: 18px; height: 18px; fill: currentColor; }
.fs-msgr__btn:hover { border-color: var(--accent); color: var(--accent-2); }
.fs-msgr--light .fs-msgr__btn { background: transparent; color: #fff; border-color: rgba(255,255,255,.4); }
.fs-msgr--light .fs-msgr__btn:hover { border-color: var(--accent); color: var(--accent); }

/* --- hero: сильный подзаголовок (только главная) --- */
.fs-hero h1 { font-size: clamp(2.1rem, 4.4vw, 3.4rem); margin-bottom: 18px; }
.fs-hero__sub { font-size: 1.18rem; font-weight: 500; color: #fff; max-width: 580px; margin-bottom: 14px; line-height: 1.45; }
.fs-hero__lead { font-size: 1rem; color: #c3c7d0; max-width: 560px; margin-bottom: 26px; }
.fs-hero__cta { display: flex; flex-wrap: wrap; gap: 14px; margin-bottom: 18px; }
.fs-hero__msgr { margin-bottom: 26px; }

/* --- Выберите задачу --- */
.fs-tasks__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.fs-tasks__card {
  display: flex; flex-direction: column; gap: 6px;
  border: 1px solid var(--line); border-radius: 12px; padding: 22px 20px;
  background: #fff; transition: transform .18s, box-shadow .18s, border-color .18s;
}
.fs-tasks__card:hover { border-color: var(--accent); box-shadow: 0 14px 34px rgba(52,58,73,.1); transform: translateY(-3px); }
.fs-tasks__ico { width: 42px; height: 42px; border-radius: 10px; background: var(--accent-soft); display: flex; align-items: center; justify-content: center; margin-bottom: 8px; }
.fs-tasks__ico svg { width: 22px; height: 22px; stroke: var(--brand); fill: none; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.fs-tasks__card h3 { font-family: var(--font); font-weight: 600; font-size: 1rem; color: var(--brand); }
.fs-tasks__card p { font-size: .85rem; color: var(--ink-muted); }
.fs-tasks__foot {
  margin-top: 28px; display: flex; flex-wrap: wrap; align-items: center; gap: 16px; justify-content: center;
  background: var(--bg-soft); border: 1px dashed var(--accent); border-radius: 12px; padding: 22px 24px;
}
.fs-tasks__foot p { color: var(--ink-muted); font-size: 1rem; }
.fs-tasks__foot b { color: var(--brand); }

/* --- Два входа (B2C / B2B) --- */
.fs-doors { background: var(--bg-soft); }
.fs-doors__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.fs-door { border: 1px solid var(--line); border-radius: 16px; padding: 36px 32px; background: #fff; display: flex; flex-direction: column; }
.fs-door--b2b { background: var(--brand); color: #fff; border-color: var(--brand); }
.fs-door__tag { font-family: var(--font); font-weight: 600; font-size: .78rem; letter-spacing: .12em; text-transform: uppercase; color: var(--accent-2); margin-bottom: 8px; }
.fs-door--b2b .fs-door__tag { color: var(--accent); }
.fs-door h3 { font-size: 1.7rem; color: var(--brand); margin-bottom: 12px; }
.fs-door--b2b h3 { color: #fff; }
.fs-door p { font-size: .95rem; color: var(--ink-muted); margin-bottom: 18px; }
.fs-door--b2b p { color: #cdd0d8; }
.fs-door__links { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 24px; }
.fs-door__links a { font-size: .86rem; padding: 7px 14px; border-radius: 999px; border: 1px solid var(--line); color: var(--brand); transition: border-color .15s, color .15s; }
.fs-door__links a:hover { border-color: var(--accent); color: var(--accent-2); }
.fs-door--b2b .fs-door__links a { border-color: rgba(255,255,255,.25); color: #e9eaee; }
.fs-door--b2b .fs-door__links a:hover { border-color: var(--accent); color: var(--accent); }
.fs-door__contact { margin-top: auto; padding-top: 18px; border-top: 1px solid var(--line); }
.fs-door--b2b .fs-door__contact { border-top-color: rgba(255,255,255,.15); }
.fs-door__phone { font-family: var(--font-display); font-size: 1.5rem; color: var(--brand); display: inline-block; margin-bottom: 14px; }
.fs-door--b2b .fs-door__phone { color: #fff; }

/* --- CTA мессенджеры по центру --- */
.fs-cta__msgr { justify-content: center; margin-top: 22px; }

/* ===================== АДАПТИВ (главная) ===================== */
@media (max-width: 980px) {
  .fs-tasks__grid { grid-template-columns: repeat(2, 1fr); }
  .fs-doors__grid { grid-template-columns: 1fr; }
}

@media (max-width: 560px) {
  .fs-adv__grid, .fs-trust__grid, .fs-serv__grid, .fs-pop__grid,
  .fs-trust__cols, .fs-steps__grid, .fs-partners__groups,
  .fs-footer__grid, .fs-tasks__grid { grid-template-columns: 1fr; }
}

.fs-steps__grid {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; counter-reset: step; position: relative;
}

.fs-steps__item {
  position: relative; z-index: 1; text-align: center;
}

.fs-steps__item::before {
  content: ""; position: absolute; top: 29px; left: 50%; width: calc(100% + 18px); height: 2px; background: repeating-linear-gradient(90deg, var(--accent) 0 7px, transparent 7px 15px);
}

.fs-steps__node {
  position: relative; z-index: 1; width: 58px; height: 58px; margin: 0 auto 16px; border-radius: 50%; background: var(--brand); border: 4px solid #FFFFFF; display: flex; align-items: center; justify-content: center; box-shadow: 0 6px 16px rgba(52,58,73,.16);
}

.fs-steps__node::after {
  counter-increment: step; content: counter(step); position: absolute; top: -6px; right: -6px; width: 22px; height: 22px; border-radius: 50%; background: var(--accent); color: var(--brand); font-family: var(--font-display); font-size: .82rem; display: flex; align-items: center; justify-content: center; border: 2px solid #FFFFFF;
}

@media (max-width: 980px) {
  .fs-steps__item::before { display: none; }
}
.fs-steps__grid {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; counter-reset: step; position: relative;
}

.fs-steps__item {
  position: relative; z-index: 1; text-align: center;
}

.fs-steps__item::before {
  content: ""; position: absolute; top: 29px; left: 50%; width: calc(100% + 18px); height: 2px; background: repeating-linear-gradient(90deg, var(--accent) 0 7px, transparent 7px 15px);
}

.fs-steps__node {
  position: relative; z-index: 1; width: 58px; height: 58px; margin: 0 auto 16px; border-radius: 50%; background: var(--brand); border: 4px solid #FFFFFF; display: flex; align-items: center; justify-content: center; box-shadow: 0 6px 16px rgba(52,58,73,.16);
}

.fs-steps__node::after {
  counter-increment: step; content: counter(step); position: absolute; top: -6px; right: -6px; width: 22px; height: 22px; border-radius: 50%; background: var(--accent); color: var(--brand); font-family: var(--font-display); font-size: .82rem; display: flex; align-items: center; justify-content: center; border: 2px solid #FFFFFF;
}

@media (max-width: 980px) {
  .fs-steps__item::before { display: none; }
}

.fs-use__card p {
  margin: 0; font-size: .94rem; color: var(--ink-muted);
}
.fs-steps__item {
  position: relative; z-index: 1; text-align: center;
}

.fs-steps__item::before {
  content: ""; position: absolute; top: 29px; left: 50%; width: calc(100% + 18px); height: 2px; background: repeating-linear-gradient(90deg, var(--accent) 0 7px, transparent 7px 15px);
}

.fs-steps__node {
  position: relative; z-index: 1; width: 58px; height: 58px; margin: 0 auto 16px; border-radius: 50%; background: var(--brand); border: 4px solid var(--bg); display: flex; align-items: center; justify-content: center; box-shadow: 0 6px 16px rgba(52,58,73,.16);
}

@media (max-width: 980px) {
  .fs-steps__item::before { display: none; }
}

@media (max-width: 760px) {
  .fs-subhead { font-size: 1.25rem; }
  .fs-expert { grid-template-columns: 1fr; }
  .fs-expert__ph { width: 100%; height: 130px; }
  .fs-mobilebar { display: flex; position: fixed; left: 0; right: 0; bottom: 0; z-index: 60; background: var(--brand); box-shadow: 0 -4px 16px rgba(0,0,0,.18); }
  .fs-mobilebar a { flex: 1; text-align: center; padding: 13px 6px; color: #fff; text-decoration: none; font-size: .85rem; border-right: 1px solid rgba(255,255,255,.15); }
  .fs-mobilebar a:last-child { border: none; background: var(--accent); color: var(--brand); font-weight: 700; }
  body { padding-bottom: 52px; }
}
.fs-steps__grid {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; counter-reset: step; position: relative;
}

.fs-steps__item {
  position: relative; z-index: 1; text-align: center;
}

.fs-steps__item::before {
  content: ""; position: absolute; top: 29px; left: 50%; width: calc(100% + 18px); height: 2px; background: repeating-linear-gradient(90deg, var(--accent) 0 7px, transparent 7px 15px);
}

.fs-steps__node {
  position: relative; z-index: 1; width: 58px; height: 58px; margin: 0 auto 16px; border-radius: 50%; background: var(--brand); border: 4px solid #FFFFFF; display: flex; align-items: center; justify-content: center; box-shadow: 0 6px 16px rgba(52,58,73,.16); transition: transform .18s;
}

.fs-steps__node::after {
  counter-increment: step; content: counter(step); position: absolute; top: -6px; right: -6px; width: 22px; height: 22px; border-radius: 50%; background: var(--accent); color: var(--brand); font-family: var(--font-display); font-size: .82rem; display: flex; align-items: center; justify-content: center; border: 2px solid #FFFFFF;
}

@media (max-width: 980px) {
  .fs-steps__item::before { display: none; }
}
.fs-steps__item {
  position: relative; z-index: 1; text-align: center; padding-top: 0;
}

.fs-steps__item::before {
  counter-increment: none; content: ""; position: absolute; top: 29px; left: 50%; width: calc(100% + 18px); height: 2px; border-radius: 0; z-index: 0; background: repeating-linear-gradient(90deg, var(--accent) 0 7px, transparent 7px 15px);
}

@media (max-width: 980px) {
  .fs-steps__item::before { display: none; }
}

@media (max-width: 560px) {
  .fs-steps__item::before { display: none; }
}
.fs-steps__item {
  position: relative; z-index: 1; text-align: center;
}

.fs-steps__item::before {
  content: ""; position: absolute; top: 29px; left: 50%; width: calc(100% + 18px); height: 2px; background: repeating-linear-gradient(90deg, var(--accent) 0 7px, transparent 7px 15px);
}

.fs-steps__node {
  position: relative; z-index: 1; width: 58px; height: 58px; margin: 0 auto 16px; border-radius: 50%; background: var(--brand); border: 4px solid var(--bg); display: flex; align-items: center; justify-content: center; box-shadow: 0 6px 16px rgba(52,58,73,.16);
}

@media (max-width: 980px) {
  .fs-steps__item::before { display: none; }
}

@media (max-width: 760px) {
  .fs-subhead { font-size: 1.25rem; }
  .fs-mobilebar { display: flex; position: fixed; left: 0; right: 0; bottom: 0; z-index: 60; background: var(--brand); box-shadow: 0 -4px 16px rgba(0,0,0,.18); }
  .fs-mobilebar a { flex: 1; text-align: center; padding: 13px 6px; color: #fff; text-decoration: none; font-size: .85rem; border-right: 1px solid rgba(255,255,255,.15); }
  .fs-mobilebar a:last-child { border: none; background: var(--accent); color: var(--brand); font-weight: 700; }
  body { padding-bottom: 52px; }
}

.fs-trustlogos {
  background: var(--bg-soft, #f6f4f2); text-align: center;
}
.fs-steps__item {
  position: relative; z-index: 1; text-align: center;
}

.fs-steps__item::before {
  content: ""; position: absolute; top: 29px; left: 50%; width: calc(100% + 18px); height: 2px; background: repeating-linear-gradient(90deg, var(--accent) 0 7px, transparent 7px 15px);
}

.fs-steps__node {
  position: relative; z-index: 1; width: 58px; height: 58px; margin: 0 auto 16px; border-radius: 50%; background: var(--brand); border: 4px solid var(--bg); display: flex; align-items: center; justify-content: center; box-shadow: 0 6px 16px rgba(52,58,73,.16);
}

@media (max-width: 980px) {
  .fs-steps__item::before { display: none; }
}

.fs-trustlogos {
  background: var(--bg-soft, #f6f4f2); text-align: center;
}

@media (max-width: 760px) {
  .fs-subhead { font-size: 1.25rem; }
  .fs-mobilebar { display: flex; position: fixed; left: 0; right: 0; bottom: 0; z-index: 60; background: var(--brand); box-shadow: 0 -4px 16px rgba(0,0,0,.18); }
  .fs-mobilebar a { flex: 1; text-align: center; padding: 13px 6px; color: #fff; text-decoration: none; font-size: .85rem; border-right: 1px solid rgba(255,255,255,.15); }
  .fs-mobilebar a:last-child { border: none; background: var(--accent); color: var(--brand); font-weight: 700; }
  body { padding-bottom: 52px; }
}
.fs-steps__item {
  position: relative; z-index: 1; text-align: center;
}

.fs-steps__item::before {
  content: ""; position: absolute; top: 29px; left: 50%; width: calc(100% + 18px); height: 2px; background: repeating-linear-gradient(90deg, var(--accent) 0 7px, transparent 7px 15px);
}

.fs-steps__node {
  position: relative; z-index: 1; width: 58px; height: 58px; margin: 0 auto 16px; border-radius: 50%; background: var(--brand); border: 4px solid var(--bg); display: flex; align-items: center; justify-content: center; box-shadow: 0 6px 16px rgba(52,58,73,.16);
}

@media (max-width: 980px) {
  .fs-steps__item::before { display: none; }
}

@media (max-width: 760px) {
  .fs-subhead { font-size: 1.25rem; }
  .fs-mobilebar { display: flex; position: fixed; left: 0; right: 0; bottom: 0; z-index: 60; background: var(--brand); box-shadow: 0 -4px 16px rgba(0,0,0,.18); }
  .fs-mobilebar a { flex: 1; text-align: center; padding: 13px 6px; color: #fff; text-decoration: none; font-size: .85rem; border-right: 1px solid rgba(255,255,255,.15); }
  .fs-mobilebar a:last-child { border: none; background: var(--accent); color: var(--brand); font-weight: 700; }
  body { padding-bottom: 52px; }
}

.fs-trustlogos {
  background: var(--bg-soft, #f6f4f2); text-align: center;
}
.fs-steps__item {
  position: relative; z-index: 1; text-align: center;
}

.fs-steps__item::before {
  content: ""; position: absolute; top: 29px; left: 50%; width: calc(100% + 18px); height: 2px; background: repeating-linear-gradient(90deg, var(--accent) 0 7px, transparent 7px 15px);
}

.fs-steps__node {
  position: relative; z-index: 1; width: 58px; height: 58px; margin: 0 auto 16px; border-radius: 50%; background: var(--brand); border: 4px solid var(--bg); display: flex; align-items: center; justify-content: center; box-shadow: 0 6px 16px rgba(52,58,73,.16);
}

@media (max-width: 980px) {
  .fs-steps__item::before { display: none; }
}

.fs-banks__logos span {
  padding: 12px 22px; border: 1px solid var(--line, #E6E8EC); border-radius: 999px; font-weight: 600; font-size: .92rem; color: var(--brand); background: #fff;
}

@media (max-width: 760px) {
  .fs-subhead { font-size: 1.25rem; }
  .fs-mobilebar { display: flex; position: fixed; left: 0; right: 0; bottom: 0; z-index: 60; background: var(--brand); box-shadow: 0 -4px 16px rgba(0,0,0,.18); }
  .fs-mobilebar a { flex: 1; text-align: center; padding: 13px 6px; color: #fff; text-decoration: none; font-size: .85rem; border-right: 1px solid rgba(255,255,255,.15); }
  .fs-mobilebar a:last-child { border: none; background: var(--accent); color: var(--brand); font-weight: 700; }
  body { padding-bottom: 52px; }
}

.fs-trustlogos {
  background: var(--bg-soft, #f6f4f2); text-align: center;
}
.fs-steps__grid {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; counter-reset: step; position: relative;
}

.fs-steps__item {
  position: relative; z-index: 1; text-align: center;
}

.fs-steps__item::before {
  content: ""; position: absolute; top: 29px; left: 50%; width: calc(100% + 18px); height: 2px; background: repeating-linear-gradient(90deg, var(--accent) 0 7px, transparent 7px 15px);
}

.fs-steps__node {
  position: relative; z-index: 1; width: 58px; height: 58px; margin: 0 auto 16px; border-radius: 50%; background: var(--brand); border: 4px solid #FFFFFF; display: flex; align-items: center; justify-content: center; box-shadow: 0 6px 16px rgba(52,58,73,.16);
}

.fs-steps__node::after {
  counter-increment: step; content: counter(step); position: absolute; top: -6px; right: -6px; width: 22px; height: 22px; border-radius: 50%; background: var(--accent); color: var(--brand); font-family: var(--font-display); font-size: .82rem; display: flex; align-items: center; justify-content: center; border: 2px solid #FFFFFF;
}

@media (max-width: 980px) {
  .fs-steps__item::before { display: none; }
}
.order-success {
    display: flex;
    justify-content: center;
    padding: 4rem 1rem;
}

.order-success__card {
    text-align: center;
    max-width: 480px;
    width: 100%;
}

.order-success__icon {
    margin-bottom: 1.5rem;
}

.order-success__title {
    font-size: 1.75rem;
    font-weight: 700;
    margin-bottom: 1rem;
    color: var(--heading-color, #1a1a2e);
}

.order-success__number {
    font-size: 1.125rem;
    margin-bottom: 0.75rem;
    color: var(--text-color, #4a4a6a);
}

.order-success__number strong {
    color: var(--heading-color, #1a1a2e);
}

.order-success__note {
    font-size: 0.9375rem;
    color: var(--muted-color, #888);
    margin-bottom: 2rem;
    line-height: 1.5;
}

.fs-steps__grid {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; counter-reset: step; position: relative;
}

.fs-steps__item {
  position: relative; z-index: 1; text-align: center;
}

.fs-steps__item::before {
  content: ""; position: absolute; top: 29px; left: 50%; width: calc(100% + 18px); height: 2px; background: repeating-linear-gradient(90deg, var(--accent) 0 7px, transparent 7px 15px);
}

.fs-steps__node {
  position: relative; z-index: 1; width: 58px; height: 58px; margin: 0 auto 16px; border-radius: 50%; background: var(--brand); border: 4px solid var(--bg); display: flex; align-items: center; justify-content: center; box-shadow: 0 6px 16px rgba(52,58,73,.16);
}

@media (max-width: 980px) {
  .fs-steps__item::before { display: none; }
}

@media (max-width: 760px) {
  .fs-subhead { font-size: 1.25rem; }
  .fs-steps__grid { grid-template-columns: repeat(2, 1fr); }
  .fs-mobilebar { display: flex; position: fixed; left: 0; right: 0; bottom: 0; z-index: 60; background: var(--brand); box-shadow: 0 -4px 16px rgba(0,0,0,.18); }
  .fs-mobilebar a { flex: 1; text-align: center; padding: 13px 6px; color: #fff; text-decoration: none; font-size: .85rem; border-right: 1px solid rgba(255,255,255,.15); }
  .fs-mobilebar a:last-child { border: none; background: var(--accent); color: var(--brand); font-weight: 700; }
  body { padding-bottom: 52px; }
}

.fs-trustlogos {
  background: var(--bg-soft, #f6f4f2); text-align: center;
}
.fs-steps__item {
  position: relative; z-index: 1; text-align: center;
}

.fs-steps__item::before {
  content: ""; position: absolute; top: 29px; left: 50%; width: calc(100% + 18px); height: 2px; background: repeating-linear-gradient(90deg, var(--accent) 0 7px, transparent 7px 15px);
}

.fs-steps__node {
  position: relative; z-index: 1; width: 58px; height: 58px; margin: 0 auto 16px; border-radius: 50%; background: var(--brand); border: 4px solid var(--bg); display: flex; align-items: center; justify-content: center; box-shadow: 0 6px 16px rgba(52,58,73,.16);
}

@media (max-width: 980px) {
  .fs-steps__item::before { display: none; }
}

.fs-deliver__item span {
  font-size: .95rem;
}

@media (max-width: 760px) {
  .fs-subhead { font-size: 1.25rem; }
  .fs-mobilebar { display: flex; position: fixed; left: 0; right: 0; bottom: 0; z-index: 60; background: var(--brand); box-shadow: 0 -4px 16px rgba(0,0,0,.18); }
  .fs-mobilebar a { flex: 1; text-align: center; padding: 13px 6px; color: #fff; text-decoration: none; font-size: .85rem; border-right: 1px solid rgba(255,255,255,.15); }
  .fs-mobilebar a:last-child { border: none; background: var(--accent); color: var(--brand); font-weight: 700; }
  body { padding-bottom: 52px; }
}

.fs-trustlogos {
  background: var(--bg-soft, #f6f4f2); text-align: center;
}
.fs-deliver__item small {
  display: block; color: var(--ink-muted); font-size: .82rem; margin-top: 2px;
}

.fs-person__name {
  font-family: var(--font-display); font-size: 1.5rem; color: var(--brand); margin-bottom: 4px;
}

.fs-person__role {
  color: var(--accent); font-weight: 600; font-size: .9rem; letter-spacing: .02em; margin-bottom: 14px;
}

.fs-person__meta {
  color: var(--ink-muted); font-size: .92rem; margin: 0 0 14px; line-height: 1.5;
}

.fs-person__ins {
  margin-top: 14px; padding-top: 14px; border-top: 1px solid rgba(52,58,73,.1); font-size: .9rem; color: var(--ink-muted);
}

.fs-person__ins b {
  color: var(--brand);
}

.fs-trustlogos {
  background: var(--bg-soft, #f6f4f2); text-align: center;
}

@media (max-width: 760px) {
  .fs-subhead { font-size: 1.25rem; }
  .fs-mobilebar { display: flex; position: fixed; left: 0; right: 0; bottom: 0; z-index: 60; background: var(--brand); box-shadow: 0 -4px 16px rgba(0,0,0,.18); }
  .fs-mobilebar a { flex: 1; text-align: center; padding: 13px 6px; color: #fff; text-decoration: none; font-size: .85rem; border-right: 1px solid rgba(255,255,255,.15); }
  .fs-mobilebar a:last-child { border: none; background: var(--accent); color: var(--brand); font-weight: 700; }
  body { padding-bottom: 52px; }
}
.fs-steps__grid {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; counter-reset: step; position: relative;
}

.fs-steps__item {
  position: relative; z-index: 1; text-align: center;
}

.fs-steps__item::before {
  content: ""; position: absolute; top: 29px; left: 50%; width: calc(100% + 18px); height: 2px; background: repeating-linear-gradient(90deg, var(--accent) 0 7px, transparent 7px 15px);
}

.fs-steps__node {
  position: relative; z-index: 1; width: 58px; height: 58px; margin: 0 auto 16px; border-radius: 50%; background: var(--brand); border: 4px solid #FFFFFF; display: flex; align-items: center; justify-content: center; box-shadow: 0 6px 16px rgba(52,58,73,.16);
}

.fs-steps__node::after {
  counter-increment: step; content: counter(step); position: absolute; top: -6px; right: -6px; width: 22px; height: 22px; border-radius: 50%; background: var(--accent); color: var(--brand); font-family: var(--font-display); font-size: .82rem; display: flex; align-items: center; justify-content: center; border: 2px solid #FFFFFF;
}

@media (max-width: 980px) {
  .fs-steps__item::before { display: none; }
}
.fs-serv__ico {
  width: 48px; height: 48px; border-radius: 12px; background: var(--accent-soft, #F3E7D7); display: flex; align-items: center; justify-content: center; margin-bottom: 16px; transition: background .18s;
}

.fs-serv__card:hover .fs-serv__ico {
  background: var(--accent, #D0A87B);
}

.fs-serv__ico svg {
  width: 24px; height: 24px; stroke: var(--brand, #343A49); fill: none; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round;
}

.fs-steps__grid {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; counter-reset: step; position: relative;
}

.fs-steps__item {
  position: relative; z-index: 1; text-align: center;
}

.fs-steps__item::before {
  content: ""; position: absolute; top: 29px; left: 50%; width: calc(100% + 18px); height: 2px; background: repeating-linear-gradient(90deg, var(--accent) 0 7px, transparent 7px 15px);
}

.fs-steps__node {
  position: relative; z-index: 1; width: 58px; height: 58px; margin: 0 auto 16px; border-radius: 50%; background: var(--brand); border: 4px solid #FFFFFF; display: flex; align-items: center; justify-content: center; box-shadow: 0 6px 16px rgba(52,58,73,.16);
}

.fs-steps__node::after {
  counter-increment: step; content: counter(step); position: absolute; top: -6px; right: -6px; width: 22px; height: 22px; border-radius: 50%; background: var(--accent); color: var(--brand); font-family: var(--font-display); font-size: .82rem; display: flex; align-items: center; justify-content: center; border: 2px solid #FFFFFF;
}

@media (max-width: 980px) {
  .fs-steps__item::before { display: none; }
}
.snippet-agreement {
    display: flex;
    gap: 1rem;
    margin-bottom: var(--pico-spacing);

    input {
        margin: 0;
    }
    .link {
        font-size: .8rem;
    }
}

.snippet-mall-cart {
    container-type: inline-size;

    .cart-layout {
        display: grid;
        grid-template-columns: 1fr 240px;
        gap: 2rem;
        align-items: start;

        @container (width < 768px) {
            grid-template-columns: 1fr;

            .cart-sidebar {
                display: grid;
                grid-template-columns: 1fr 1fr;
                gap: 1rem;

                .cart-sidebar__card {
                    height: 100%;
                }
            }
        }

        @container (width < 540px) {
            .cart-sidebar {
                grid-template-columns: 1fr;
            }

            .cart-item {
                grid-template-columns: auto 1fr;
            }

            .cart-item__total {
                grid-column: 2;
                text-align: left;
            }
        }

        @container (width < 480px) {
            .cart-item {
                grid-template-columns: 1fr;
            }

            .cart-item__image {
                width: 100%;
                height: auto;
                aspect-ratio: 4 / 3;
            }

            .cart-item__total {
                grid-column: 1;
                text-align: left;
            }
        }
    }

    .cart-left {
        display: flex;
        flex-direction: column;
        gap: 1rem;
    }

    .cart-items {
        display: flex;
        flex-direction: column;
        background: #fff;
        border-radius: 0.75rem;
        box-shadow: 0 2px 8px rgba(0,0,0,0.08);
        padding: 1rem;
    }

    .cart-items__header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding-bottom: 0.75rem;
        border-bottom: 1px solid #eee;
        margin-bottom: 0.5rem;
    }

    .cart-items__count {
        font-size: 1rem;
    }

    .cart-items__clear {
        background: none;
        border: none;
        color: #c00;
        cursor: pointer;
        font-size: 0.75rem;
        padding: 0;

        &:hover {
            text-decoration: underline;
        }
    }

    .cart-checkout-bottom {
        align-self: flex-start;
    }

    .cart-divider {
        border: none;
        border-top: 1px solid #eee;
        margin: 0;
    }

    .cart-item {
        position: relative;
        display: grid;
        grid-template-columns: auto 1fr auto;
        gap: 1rem;
        padding: 1rem 0;
        align-items: start;
    }

    .cart-item__image {
        flex-shrink: 0;
        width: 120px;
        height: 90px;
        background: #f5f5f5;
        border-radius: 0.5rem;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;

        img {
            width: 100%;
            height: 100%;
            object-fit: contain;
        }
    }

    .cart-item__info {
        min-width: 0;
    }

    .cart-item__name {
        font-weight: bold;
        text-decoration: none;
        color: inherit;
        display: block;
        margin-bottom: 0.25rem;

        &:hover {
            text-decoration: underline;
        }
    }

    .cart-item__desc {
        font-size: 0.8rem;
        color: #666;
        margin-bottom: 0.5rem;
        line-height: 1.4;
    }

    .cart-item__prices {
        display: flex;
        align-items: center;
        gap: 0.5rem;
        margin-bottom: 0.5rem;
    }

    .cart-item__unit-price {
        font-weight: bold;
        font-size: 1rem;
    }

    .cart-item__old-price {
        font-size: 0.875rem;
        color: #999;
        text-decoration: line-through;
    }

    .cart-item__actions {
        display: flex;
        align-items: center;
        gap: 1rem;
    }

    .cart-item__quantity {
        display: flex;
        align-items: center;
        gap: 4px;
        border-radius: 0.375rem;
    }

    .cart-item__qty-btn {
        width: 2rem;
        height: 2rem;
        border: none;
        background: #f5f5f5;
        cursor: pointer;
        font-size: 1.125rem;
        display: flex;
        align-items: center;
        justify-content: center;
        color: #333;
        transition: background 0.15s;

        &:hover {
            background: #e0e0e0;
        }
    }

    .cart-item__qty-input {
        width: 3rem;
        height: 2rem;
        border: none;
        text-align: center;
        font-size: 0.875rem;
        margin: 0;
        -moz-appearance: textfield;

        &::-webkit-inner-spin-button,
        &::-webkit-outer-spin-button {
            -webkit-appearance: none;
            margin: 0;
        }
    }

    .cart-item__remove {
        background: none;
        border: none;
        color: #c00;
        cursor: pointer;
        font-size: 0.75rem;
        padding: 0;

        &:hover {
            text-decoration: none;
        }
    }

    .cart-item__total {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        align-self: stretch;
    }

    .cart-item__total-price {
        font-weight: bold;
        font-size: 1.125rem;
        white-space: nowrap;
    }

    .cart-item > .cart-item__remove {
        position: absolute;
        top: 0.25rem;
        right: 0.25rem;
        background: rgba(255,255,255,0.7);
        border: none;
        border-radius: 50%;
        width: 1.5rem;
        height: 1.5rem;
        display: flex;
        align-items: center;
        justify-content: center;
        color: #333;
        cursor: pointer;
        font-size: 0.875rem;
        padding: 0;
        line-height: 1;
        z-index: 1;

        &:hover {
            color: #c00;
            background: rgba(255,255,255,0.9);
        }
    }

    .cart-sidebar {
        position: sticky;
        top: calc(var(--hh, 0px) + 1rem);
        display: flex;
        flex-direction: column;
        gap: 1rem;
    }

    .cart-sidebar__card {
        background: #00414b;
        background-size: cover;

        border-radius: 0.75rem;
        padding: 1rem;
        box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    }

    .cart-sidebar__order {
        color: white;
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
    }

    .cart-order__title {
        font-size: 1.125rem;
        font-weight: bold;
        margin-bottom: 1rem;
    }

    .cart-installment {
        margin-bottom: .5rem;
    }

    .cart-installment__label {
        font-size: 0.7rem;
        margin-bottom: 0.25rem;
    }

    .cart-installment__price {
        font-size: 2rem;
        font-weight: bold;
    }

    .cart-installment__period {
        font-size: 0.875rem;
        font-weight: normal;
        opacity: 0.8;
    }

    .cart-order__note {
        margin-top: 1rem;
        font-size: 0.8rem;
        line-height: 1.4;
        text-align: center;
    }

    .cart-totals {
        margin-bottom: 1rem;
    }

    .cart-total-row {
        display: flex;
        align-items: baseline;
        gap: .5rem;
    }

    .cart-total-row__label {
        font-weight: normal;
        font-size: .8rem;

    }

    .cart-total-row__value {
        font-weight: bold;
        font-size: 1.25rem;
    }

    .cart-checkout-btn {
        width: 100%;
        font-weight: bold;
    }

    .cart-sidebar__accessories {
        min-height: 340px;
        background-size: cover;
        background-color: white;
        background-position: center;
        background-repeat: no-repeat;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        padding: 1rem;
    }

    .cart-accessories__title {
        font-size: 1.2rem;
        font-weight: bold;
    }

    .cart-accessories__link {
        align-self: flex-start;
    }

    .cart-empty {
        text-align: center;
        padding: 3rem 1rem;
        background: #f5f5f5;
        border-radius: 1rem;
        font-size: 1.125rem;
        color: #666;
    }
}

/* Скрываем исходный блок-шаблон вне диалога */
.cart-installment-items-source:not(#dialog-backcall *) {
    display: none;
}

.installment-items {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    margin-bottom: 0.5rem;
}

.installment-items__title {
    font-weight: bold;
    font-size: 0.9rem;
    margin-bottom: 0.25rem;
}

.installment-item {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem;
    background: #f9f9f9;
    border-radius: 0.375rem;
    cursor: pointer;
    transition: background 0.15s;
    width: 100%;
    min-width: 100%;

    &:hover {
        background: #f0f0f0;
    }

    input[type="checkbox"] {
        flex-shrink: 0;
    }
}

.installment-item__name {
    flex: 1;
    font-size: 0.85rem;
    line-height: 1.3;
}

.installment-item--all {
    border: 1px solid #ddd;
    font-weight: bold;
    background: #f0f0f0;

    &:hover {
        background: #e8e8e8;
    }
}

.installment-item__price {
    flex-shrink: 0;
    font-weight: bold;
    font-size: 0.85rem;
    white-space: nowrap;
    margin-left: auto;
}

.snippet-mall-product-card {
    display: flex;
    flex-direction: column;
    border-radius: var(--pico-border-radius);
    overflow: hidden;
    background: #fff;
    border: 1px solid var(--pico-muted-border-color);
    box-shadow: 0 4px 16px rgba(0,0,0,.08);
    min-height: 340px;
    white-space: normal;
}

.snippet-mall-product-card .image {
    display: block;
    aspect-ratio: 260 / 190;
    overflow: hidden;
    background: #f5f5f5;
    border-radius: var(--pico-border-radius);
}

.snippet-mall-product-card .image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.snippet-mall-product-card .image .none {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    color: var(--pico-muted-color);
    font-size: .875rem;
}

.snippet-mall-product-card .body {
    display: flex;
    flex-direction: column;
    gap: .5rem;
    padding: .75rem;
    flex: 1;
}

.snippet-mall-product-card .name {
    font-weight: 600;
    font-size: 1rem;
    color: #000;
    text-decoration: none;
    line-height: 1.3;
}

.snippet-mall-product-card .name:hover {
    color: var(--pico-primary);
}

.snippet-mall-product-card .description-short {
    font-size: .875rem;
    color: #000;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.snippet-mall-product-card .prices {
    display: flex;
    align-items: baseline;
    gap: .5rem;
    margin-top: auto;
}

.snippet-mall-product-card .current-price {
    font-size: 1.125rem;
    font-weight: 700;
    color: #000;
}

.snippet-mall-product-card .old-price {
    font-size: .875rem;
    color: #000;
    text-decoration: line-through;
}

.snippet-mall-product-card .actions {
    display: flex;
    align-items: center;
    gap: .5rem;
    margin-top: .25rem;
}

.snippet-mall-product-card .actions .button {
    flex: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: .5rem 1rem;
    font-size: .875rem;
    font-weight: 500;
    text-decoration: none;
    cursor: pointer;
}

.snippet-mall-product-card .cart-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    padding: 0;
    background: none;
    border: none;
    cursor: pointer;
    flex-shrink: 0;
}

.snippet-mall-product-card .cart-button img {
    display: block;
    width: 24px;
    height: 24px;
    transition: filter .2s ease;
}

.snippet-mall-product-card .cart-button:hover img {
    filter: brightness(0) saturate(100%) invert(36%) sepia(93%) saturate(374%) hue-rotate(118deg) brightness(96%) contrast(89%);
}

.snippet-mall-products-slider {
    .splide__track {
        margin-inline: 40px;
    }

    .splide__slide {
        display: flex;
        height: auto;
        overflow: hidden;

        .snippet-mall-product-card {
            width: 100%;
        }
    }

    .splide__arrow {
        border-radius: 50%;
        width: 32px;
        height: 32px;
        padding: 0;
        margin: 0;
        background-color: white;
        opacity: 1;
        border: 1px solid #ccc;
        box-shadow: 0 2px 4px rgba(0,0,0,.15);

        &:hover:not(:disabled) {
            border-color: #4caf50;
        }

        svg {
            height: 24px;
            fill: #000;
        }
    }

    .splide__arrow--prev {
        left: 0;
    }

    .splide__arrow--next {
        right: 0;
    }
}

.snippet-mall-products {
    container-type: inline-size;
    display: grid;
    gap: 2rem 1rem;
    grid-template-columns: repeat(4, 1fr);

    @container (width < 1080px) {
        grid-template-columns: repeat(3, 1fr);
    }
    @container (width < 840px) {
        grid-template-columns: repeat(2, 1fr);
    }
    @container (width < 540px) {
        grid-template-columns: repeat(1, 1fr);
    }

}

.snippet-pagination {
    display: flex;
    justify-content: center;
    margin-block: 2rem;
}

.snippet-pagination ul {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    list-style: none;
    margin: 0 !important;
    padding: 0 !important;
}

.snippet-pagination li {
    margin: 0 !important;
    padding: 0 !important;
}

.snippet-pagination li::before {
    display: none !important;
}

.snippet-pagination a,
.snippet-pagination span {
    display: flex !important;
    align-items: center;
    justify-content: center;
    min-width: 2.5rem;
    height: 2.5rem;
    margin: 0 !important;
    padding: 0 0.75rem;
    font-size: 0.9375rem;
    font-weight: 500;
    text-decoration: none;
    color: #0e2231;
    background: #fff;
    border: 1px solid var(--pico-muted-border-color, #e0e0e0);
    border-radius: var(--pico-border-radius, 0.6rem);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
    transition: all 0.2s ease;
    cursor: pointer;
    line-height: 1;
}

.snippet-pagination a:hover {
    border-color: var(--pico-primary, #03b888) !important;
    color: var(--pico-primary, #03b888) !important;
    box-shadow: 0 4px 12px rgba(3, 184, 136, 0.2);
    background: #fff !important;
}

.snippet-pagination li.active span {
    background: linear-gradient(135deg, #39936d 0%, #075859 100%) !important;
    color: #fff !important;
    border-color: transparent !important;
    box-shadow: 0 4px 12px rgba(7, 88, 89, 0.3);
}

.zone-breadcrumbs {
    container-type: inline-size;
    font-size: 14px;
    font-family: var(--font-family);

    &, a {
        color: #888D8E;
    }

    & ul {
        list-style: none;
        display: flex;
        flex-wrap: wrap;
        padding: 0;
        margin: 0;

        & li {
            margin-right: calc(var(--spacing) / 2);
            margin-bottom: calc(var(--spacing) / 2);
            display: inline;

            &:before {
                content: "\200B";
            }

            & a {
                text-decoration: none;
            }
        }
    }

    & a:after {
        content: ' > ';
        display: inline-block;
        margin-left: calc(var(--spacing) / 2);
    }

    & ul li:last-child a:after {
        display: none;
    }

    @container (width < 640px) {
        & ul > li:first-child,
        & ul > li:last-child {
            display: none;
        }
    }
}
.zone-flash {
    container-type: inline-size;

    & .alert {
        margin: var(--spacing) 0;
        border: 1px solid var(--primary);
        padding: 10px;
        background-color: var(--error);
    }

    & .alert.success {
        background-color: var(--success);
        color: white;
        border-color: var(--success);
    }
}
.zone-footer {
    container-type: inline-size;
    padding-block: 3rem;

    & a {
        color: black;
        font-weight: 500;
        text-decoration: none;

        &:hover {
            text-decoration: underline;
        }
    }

    .logo {
        align-self: center;
    }

    & .container {
        display: flex;
        gap: 4rem;
        flex-direction: column;
        @container (width < 1024px) {
            gap: 2rem;
        }
    }

    .columns {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 2rem 1rem;

        & > * {
            padding-left: 1.5rem;
            border-inline-start: 1px solid #e0e0e0;

            &:first-child {
                padding-left: 0;
                border-inline-start: none;
            }
        }

        @container (width < 1024px) {
            grid-template-columns: repeat(2, 1fr);

            & > * {
                border-inline-start: 0;
                &:nth-child(odd) {
                    padding-inline-start: 0;
                    border-inline-start: 0;
                }
            }
        }

        @container (width < 640px) {
            grid-template-columns: 1fr;

            & > * {
                padding-inline: 0;
                border-inline-start: 0;
                border-block-start: 1px solid #e0e0e0;
                padding-block-start: 1.5rem;

                &:first-child {
                    border-block-start: 0;
                    padding-block-start: 0;
                }
            }
        }
    }

    h3 {
        font-size: .8rem;
        text-transform: uppercase;
        color: #686868;
    }

    h4 {
        font-size: 1rem;
        font-weight: normal;
        margin-bottom: 0;
        color: var(--pico-color)
    }


    & .snippet-nav {
        list-style: none;
        justify-content: center;

        a {
            padding: 0;
            margin: 0;
        }

        & ul {
            margin: 0;
            gap: 1rem;
            display: flex;
            align-items: flex-start;
            flex-direction: column;
        }

        li {
            padding: 0;
        }

        a {

        }

        & li ul {
            display: none;
        }
    }

    & .snippet-phones {

        margin-bottom: 1.4rem;
        .label {
            display: none;
        }
        .number {
        }
    }

    .email {
        max-width: 320px;
        display: flex;
        text-align: left;
        gap: 10px;
        align-items: flex-start;
        align-self: center;
    }

    .address {
        max-width: 320px;
        gap: 10px;
        align-items: flex-start;
        align-self: center;
    }

    .snippet-socials {
        margin-bottom: 1.2rem;
    }

    .copyrights {
        text-align: center;
        font-size: .8rem;
    }

    & .policy {
        display: flex;
        max-width: 860px;
        width: 100%;
        justify-content: space-around;
        text-align: center;
        gap: 1rem;
        margin-inline: auto;
        margin-top: 1rem;
        @container (width < 480px) {
            flex-direction: column;
        }
        a {
            font-size: .8rem;
        }
    }
}

.zone-headbox {
    container-type: inline-size;
    display: flex;
    flex-direction: column;
    margin-bottom: var(--spacing);
}

.zone-main.layoutRemovePaddingTop .zone-headbox {
    margin-bottom: 0;
}
.zone-header {
    position: relative;
    z-index: 3;
    max-width: var(--wrapper);
    background-color: white;
    container-type: inline-size;
    transition: padding .3s, box-shadow .3s;

    &:not(.static) {
        position: fixed;
        top: 0;
        width: 100%;
        z-index: 2;

        &.compact {
            box-shadow: 0 2px 4px rgb(30 30 30 / 46%);
        }
    }

    & .container {
        display: flex;
        padding-block: 1rem;
        gap: 2rem;

        @container (width < 768px) {
            padding-block: 1rem;
        }
    }

    & .mobiletoggle {
        display: none;
        padding: 0;
        background-color: transparent;
        cursor: pointer;
        align-self: center;

        & span {
            width: 30px;
            display: block;
            margin: 4px 0;
            background-color: var(--pico-primary);
            height: 2px;
        }

        @container (width < 768px) {
            display: inline-block;
        }
    }

    & .logo {
        @container (width < 768px) {
            margin-right: auto;
        }
        & img {
            @container (width < 992px) {
                max-height: 64px;
            }

            @container (width < 576px) {
                max-height: 54px;
            }
        }
    }


    & nav {
        flex: 1;

        @container (width < 768px) {
            display: none;
        }

        & > ul {
            gap: .2rem;
            width: 100%;
            margin: 0;
            flex-wrap: wrap;
            justify-content: space-between;
            @media (width < 1024px) {
                justify-content: flex-start;
            }
        }

        & li {
            padding: 0;

            a {
                font-size: .8rem;
            }

            &.active > a {
                background-color: rgba(226, 226, 226, 0.75);
            }
        }

        & li.with_items ul {
            display: none;
            background-color: white;
            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
        }

        & li.with_items:hover > ul {
            display: block;
        }

        & li.with_items.catalog:hover ul {
            display: flex;
            left: 0;
            transform: none;
            align-items: stretch;
            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
            li {

                width: 220px;
                @media (width < 1180px) {
                    width: 160px;
                }
                @media (width < 800px) {
                    width: 140px;
                }
            }
            a {
                height: 100%;
                display: flex;
                flex-direction: column;
                align-items: center;
                gap: 10px;
                text-align: center;
            }
            .icon {
                height: 120px;
                display: flex;
                align-items: center;
                justify-content: center;
            }
            .name {
                white-space: normal;
                padding: 10px;
            }
        }

        & a {
            white-space: nowrap;
            padding: 6px 10px;

            &:not(:hover) {
                color: black;
            }

            &:focus {
                outline: 1px solid #e0e0e0;
            }
        }
    }

    &.compact {
        background-color: white;
        & .container {
            padding-block: 5px 10px;
        }
        & .logo img {
            max-height: 120px;
        }
    }
}

.zone-main {
    container-type: inline-size;
    flex: 1;
    padding-bottom: 2rem;
    padding-top: 2rem;
    position: relative;

    @container (width < 992px) {
        padding-top: var(--spacing);
    }

    &.paddingTopRemove {
        padding-top: 0;
    }

    &.paddingBottomRemove {
        padding-bottom: 0;
    }

    &__container {
        display: flex;
        flex-wrap: wrap;
        z-index: 1;
        position: relative;
    }

    &__content {
        flex: 1;
        order: 1;
        max-width: 100%;
    }

    &__sidebar {
        flex: 0 1 300px;
        margin-right: -15px;
        margin-left: 15px;
        order: 2;

        &.__left {
            margin-left: -15px;
            margin-right: 15px;
            order: 0;
        }
    }

    @container (width <= 992px) {
        &__content {
            flex: auto;
        }

        &__sidebar {
            flex: 1;
            width: 100%;
            order: 2;
            margin: 0;
        }
    }
}
.zone-modals {
    container-type: inline-size;
}
.zone-page {
    container-type: inline-size;
}
.zone-sidebar {
    container-type: inline-size;
    padding: var(--spacing);
    box-sizing: border-box;
    height: 100%;
}