
/* TEPLOOPORA_UI08 */

/* Шапка сохраняет место в потоке и скрывается без скачка страницы. */
html{scroll-padding-top:calc(var(--to-header-height,80px) + 12px)}
.site-header{
    position:sticky!important;
    top:0;
    z-index:90;
    width:100%;
    transform:translateY(0);
    transition:transform .24s ease;
}
.site-header.to-header-hidden{
    transform:translateY(calc(-100% - 2px));
    pointer-events:none;
}
.site-header .burger.icon-button{
    box-sizing:border-box;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:44px;
    height:44px;
    min-width:44px;
    min-height:44px;
    max-width:44px;
    max-height:44px;
    padding:0;
    border-radius:12px;
    flex:0 0 44px;
}
.site-header .burger svg{
    display:block;
    width:22px;
    height:22px;
    flex:none;
}

/* Ненавязчивая фактура на плашках разделов. */
.category-mosaic .category-tile{
    position:relative;
    isolation:isolate;
    overflow:hidden;
}
.category-mosaic .category-tile::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:-1;
    pointer-events:none;
    border-radius:inherit;
    background:
        radial-gradient(ellipse at 15% 10%,#ffffff85,transparent 65%),
        radial-gradient(ellipse at 90% 90%,#365b761c,transparent 70%),
        repeating-linear-gradient(
            135deg,
            #ffffff38 0,
            #ffffff38 1px,
            #27465a09 1px,
            #27465a09 4px
        );
}
.category-mosaic .category-tile img{
    mix-blend-mode:multiply;
    filter:drop-shadow(0 10px 12px #18384720);
}

/* Единые размеры текста футера. */
.site-footer .footer-tagline,
.site-footer .operator-requisites,
.site-footer .operator-requisites span,
.site-footer .footer-navigation a,
.site-footer .footer-legal a,
.site-footer .footer-legal button,
.site-footer .footer-contact a{
    font-family:inherit;
    font-size:14px;
    line-height:1.65;
    letter-spacing:normal;
}
.site-footer .operator-requisites span{display:block}
.site-footer .footer-label{
    font-size:13px;
    line-height:1.5;
    letter-spacing:.06em;
}
.site-footer .footer-contact a[href^="tel:"]{
    font-size:18px;
    line-height:1.5;
}
.site-footer .footer-fineprint p{
    font-size:13px;
    line-height:1.65;
}
.site-footer a,.site-footer button{
    overflow-wrap:anywhere;
}

/* Мобильная шапка и стандарт читаемости. */
@media(max-width:1023px){
    body{
        font-size:16px;
        -webkit-text-size-adjust:100%;
        text-size-adjust:100%;
    }
    .site-header .header-grid{
        display:grid;
        grid-template-columns:minmax(0,1fr) auto 44px;
        align-items:center;
        gap:10px;
        height:auto!important;
        min-height:72px;
        padding-top:12px;
        padding-bottom:12px;
    }
    .site-header .desktop-nav,
    .site-header .header-phone,
    .site-header .header-cta{
        display:none!important;
    }
    .site-header .brand{min-width:0}
    .site-header .brand img{
        display:block;
        width:clamp(132px,36vw,180px);
        max-width:100%;
        height:auto;
    }
    .site-header .mobile-call{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        min-height:44px;
        padding:10px 14px;
        font-size:14px;
        font-weight:600;
        line-height:1.2;
        white-space:nowrap;
        border-radius:12px;
    }
    .site-header .burger.icon-button{
        display:inline-flex!important;
    }
    main p{
        font-size:16px;
        line-height:1.6;
    }
    main .eyebrow,
    main .card-meta,
    main .fineprint,
    main .filter-error{
        font-size:13px;
        line-height:1.5;
    }
    .btn{
        font-size:15px;
        line-height:1.3;
        min-height:44px;
    }
    input,select,textarea{
        font-size:16px;
        line-height:1.4;
    }
    form label{
        font-size:14px;
        line-height:1.5;
    }
    .crumb{
        font-size:13px;
        line-height:1.5;
        flex-wrap:wrap;
    }
    .cookie p{
        font-size:13px;
        line-height:1.6;
    }
    .cookie button{
        font-size:14px;
        min-height:44px;
    }
    .catalog-layout,
    .catalog-sidebar,
    .catalog-content,
    .catalog-grid{
        min-width:0;
    }

    /* Фильтры и сортировка — одна строка. */
    .catalog-content .catalog-toolbar{
        display:grid;
        grid-template-columns:minmax(0,1fr) minmax(0,1fr);
        align-items:center;
        gap:12px;
    }
    .catalog-toolbar .count{
        grid-column:1/-1;
        order:-1;
        width:auto;
        margin:0;
        font-size:14px;
        line-height:1.4;
    }
    .catalog-toolbar .filter-open{
        display:flex;
        align-items:center;
        justify-content:center;
        width:100%;
        min-width:0;
        height:48px;
        min-height:48px;
        margin:0;
        padding:10px 12px;
        font-size:14px;
        line-height:1.3;
        border-radius:14px;
    }
    .catalog-toolbar .sort-field{
        display:block;
        width:100%;
        min-width:0;
        margin:0;
        padding:0;
    }
    .catalog-toolbar .sort-field>span{
        display:none;
    }
    .catalog-toolbar .sort-field select{
        box-sizing:border-box;
        width:100%;
        max-width:100%;
        min-width:0;
        height:48px;
        min-height:48px;
        margin:0;
        padding:10px 30px 10px 12px;
        border-radius:14px;
        font-size:14px;
        line-height:normal;
    }
}

/* Две карточки на обычном телефоне. */
@media(min-width:375px) and (max-width:700px){
    .catalog-content .catalog-grid{
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:12px;
        align-items:stretch;
    }
    .catalog-grid .equipment-card{
        display:flex;
        flex-direction:column;
        min-width:0;
        min-height:0;
        height:auto;
        padding:0;
        border-radius:16px;
        overflow:hidden;
    }
    .catalog-grid .equipment-card .card-photo{
        display:flex;
        align-items:center;
        justify-content:center;
        width:100%;
        height:auto;
        min-height:0;
        aspect-ratio:1/1;
        padding:12px;
        overflow:hidden;
    }
    .catalog-grid .card-photo img{
        display:block;
        width:100%;
        height:100%;
        max-height:170px;
        margin:0;
        object-fit:contain;
    }
    .catalog-grid .equipment-card .card-body{
        display:flex;
        flex-direction:column;
        flex:1;
        min-width:0;
        padding:12px;
        gap:0;
    }
    .catalog-grid .card-body .eyebrow{
        font-size:13px;
        line-height:1.4;
        letter-spacing:normal;
        margin:0 0 10px;
        overflow-wrap:anywhere;
    }
    .catalog-grid .card-body h3{
        font-size:17px;
        line-height:1.3;
        min-height:3.9em;
        margin:0 0 10px;
        overflow-wrap:anywhere;
    }
    .catalog-grid .card-meta{
        font-size:13px;
        line-height:1.4;
        margin:0 0 12px;
    }
    .catalog-grid .price{
        font-size:17px;
        line-height:1.4;
        margin: auto 0 10px;
        overflow-wrap:anywhere;
    }
    .catalog-grid .card-actions{
        display:flex;
        flex-direction:column;
        align-items:stretch;
        gap:6px;
        width:100%;
        margin:0;
    }
    .catalog-grid .card-actions .text-link{
        display:flex;
        align-items:center;
        min-height:44px;
        font-size:14px;
        line-height:1.3;
    }
    .catalog-grid .card-actions .btn{
        display:flex;
        align-items:center;
        justify-content:center;
        width:100%;
        min-width:0;
        min-height:44px;
        padding:10px 8px;
        font-size:13px;
        line-height:1.3;
        text-align:center;
        white-space:normal;
    }
}
@media(max-width:374px){
    .catalog-content .catalog-grid{
        grid-template-columns:minmax(0,1fr);
    }
}
@media(prefers-reduced-motion:reduce){
    .site-header{transition:none}
}

/* TEPLOOPORA_UI09 */
@media(min-width:1024px){
    .site-header .burger.icon-button,
    .site-header .mobile-call{
        display:none!important;
    }
}
@media(max-width:1023px){
    main a.to-product-anchor{
        display:inline-flex;
        align-items:center;
        min-height:44px;
        padding-top:10px;
        padding-bottom:10px;
        font-size:15px!important;
        line-height:1.4!important;
        letter-spacing:normal!important;
        text-transform:none;
        flex-shrink:0;
    }
}

/* TEPLOOPORA_ACCORDION_10 */
.story-questions details>summary>b[aria-hidden]{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-size:0!important;
    transform:none!important;
    flex-shrink:0;
}
.story-questions details>summary>b[aria-hidden]::before{
    content:"+";
    display:block;
    font:400 26px/1 Arial,sans-serif;
    transform:none!important;
}
.story-questions details[open]>summary>b[aria-hidden]::before{
    content:"−";
}
.story-questions details>summary>b[aria-hidden]::after{
    content:none!important;
}

/* TEPLOOPORA_CONSULT_COLOR_11 */
.consult-section{
    background:
        radial-gradient(ellipse at 100% 0,#b2407045,transparent 70%),
        linear-gradient(130deg,#341c31,#67233f 68%,#3c2444);
}
.consultation>div:first-child{
    color:#fff8fc;
}
.consultation>div:first-child h2{
    color:#fff8fc;
}
.consultation>div:first-child .eyebrow{
    color:#f0c3d4;
}
.consultation .order-steps p{
    color:#eed8e6;
    font-size:15px;
    line-height:1.65;
}
.consultation .order-steps b{
    color:#fff8fc;
    font-size:17px;
    line-height:1.4;
}
.consultation .order-steps>div>span{
    color:#fff8fc;
    border-color:#e8b8ce80;
    background:#ffffff0a;
    font-size:14px;
}
.consultation .consult-phone{
    color:#fff8fc;
    transition:color .18s ease;
}
.consultation .consult-phone:hover,
.consultation .consult-phone:focus-visible{
    color:#ffbf8f;
}
.consultation .form-card{
    background:#fff;
    color:#24232c;
    border-color:#ffffff70;
    box-shadow:0 18px 55px #190c2526;
}
.consultation .form-card>h3{
    color:#24232c;
}

/* TEPLOOPORA_PAIR_HEADER13 */
.site-header{
 background:linear-gradient(110deg,#f7e3ec,#f1d2e1 55%,#eed6e7)!important;
 border-bottom:1px solid #d9adc3!important;
 box-shadow:0 4px 20px #6323400c;
}
.site-header .desktop-nav a{
 background:#ffffff70;border-color:#c995b0;color:#68243f;
}
.site-header .desktop-nav a:hover,
.site-header .desktop-nav a:focus-visible{
 background:#9c2c50;border-color:#9c2c50;color:#fff;
}
.site-header .header-phone,
.site-header .mobile-call,
.site-header .burger{color:#68243f}
.site-header .header-phone:hover,
.site-header .mobile-call:hover{color:#a82e51}

.category-mosaic .tile-5 .to-equipment-pair{
 display:grid;
 grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);
 align-items:end;gap:12px;
 width:54%;min-width:0;flex:0 0 54%;
}
.category-mosaic .tile-5 .to-equipment-item{
 display:flex;flex-direction:column;
 align-items:center;justify-content:flex-end;
 min-width:0;gap:12px;
}
.category-mosaic .tile-5 .to-equipment-item img{
 display:block;width:100%;max-width:100%;
 height:190px;max-height:190px;margin:0;object-fit:contain;
}
.category-mosaic .tile-5 .to-equipment-caption{
 display:block;width:100%;min-height:36px;
 font-size:13px;line-height:1.4;font-weight:600;
 color:#693a54;text-align:center;overflow-wrap:anywhere;
}
@media(max-width:700px){
 .category-mosaic .tile-5 .to-equipment-pair{
  width:100%;flex:auto;grid-column:1/-1;gap:14px;
 }
 .category-mosaic .tile-5 .to-equipment-item img{
  height:155px;max-height:155px;
 }
}
/* END_TEPLOOPORA_PAIR_HEADER13 */

/* TEPLOOPORA_VISUAL14 */
.site-header{
 background:#f0f1f4!important;
 border-bottom:1px solid #dadce2!important;
 box-shadow:0 4px 20px #17192308;
}
.site-header .desktop-nav a{
 background:#ffffff80;
 border-color:#d3d5dd;
 color:#34313d;
}
.site-header .desktop-nav a:hover,
.site-header .desktop-nav a:focus-visible{
 background:#852743;
 border-color:#852743;
 color:#fff;
}
.site-header .header-phone,
.site-header .mobile-call,
.site-header .burger{color:#34313d}

.hero .hero-bottom > button[data-request]{display:none!important}

.category-mosaic .category-tile{
 background:radial-gradient(ellipse at 75% 80%,#d4d9e4 0%,transparent 65%),
 linear-gradient(145deg,#f6f7fa,#e9ecf2)!important;
 border:1px solid #dfe3eb;
 box-shadow:inset 0 1px 0 #ffffff;
}
.category-mosaic .category-tile::before{display:none!important}
.category-mosaic .category-tile h3{
 letter-spacing:-.035em;
 line-height:1.15;
}
.category-mosaic .category-tile > div > .eyebrow{
 display:inline-flex;
 align-items:center;
 justify-content:center;
 min-width:34px;
 min-height:34px;
 padding:4px 8px;
 border:1px solid #c8ceda;
 border-radius:10px;
 color:#677083;
}
.category-mosaic .category-tile .text-link{
 color:#792740;
 text-decoration:none;
 border-bottom:0;
}
.category-mosaic .category-tile:hover{
 border-color:#ae8293;
 box-shadow:0 8px 28px #29263810;
}
.category-mosaic .tile-0,
.category-mosaic .tile-5{
 background:radial-gradient(ellipse at 85% 65%,#56596c 0%,transparent 65%),
 linear-gradient(135deg,#24232d,#343440)!important;
 border-color:#464551;
 box-shadow:inset 0 1px 0 #ffffff12;
}
.category-mosaic .tile-0 h3,
.category-mosaic .tile-5 h3{color:#fff}
.category-mosaic .tile-0 > div > .eyebrow,
.category-mosaic .tile-5 > div > .eyebrow{
 border-color:#ffffff35;
 color:#d6d5df;
}
.category-mosaic .tile-0 .text-link,
.category-mosaic .tile-5 .text-link{color:#ffc198}
.category-mosaic .tile-0 img,
.category-mosaic .tile-5 img{
 mix-blend-mode:normal;
 filter:drop-shadow(0 18px 18px #00000038);
}
.category-mosaic .tile-5 .to-equipment-caption{display:none!important}
.category-mosaic .tile-5 .to-equipment-pair{align-items:center}
.category-mosaic .tile-5 .to-equipment-item img{
 height:225px;max-height:225px;
}
@media(max-width:700px){
 .category-mosaic .tile-5 .to-equipment-item img{
  height:165px;max-height:165px;
 }
}
/* END_TEPLOOPORA_VISUAL14 */

/* TEPLOOPORA_PAIR15 */
.category-mosaic .tile-5 .to-equipment-item img{
 transform:scale(1.4);
 transform-origin:center;
}
@media(max-width:700px){
 .category-mosaic .tile-5 .to-equipment-item img{
  transform:scale(1.12);
 }
}
/* END_TEPLOOPORA_PAIR15 */

/* TEPLOOPORA_BENEFITS16 */
.hero .hero-bottom.to-benefits-wrap{
 display:block;
 padding-top:30px;
 padding-bottom:32px;
}
.hero .to-benefits{
 display:grid;
 grid-template-columns:repeat(4,minmax(0,1fr));
 gap:28px;
 list-style:none;
 padding:0;
 margin:0;
}
.hero .to-benefit{
 display:grid;
 grid-template-rows:32px auto 1fr;
 align-content:start;
 gap:12px;
 min-width:0;
 margin:0;
 padding:0;
}
.hero .to-benefit svg{
 display:block;
 width:32px;
 height:32px;
 color:#ffbc8e;
}
.hero .to-benefit h3{
 margin:0;
 color:#fff8fc;
 font-size:18px;
 line-height:1.3;
 font-weight:600;
 letter-spacing:-.02em;
}
.hero .to-benefit p{
 margin:0;
 max-width:28ch;
 color:#ded6df;
 font-size:15px;
 line-height:1.5;
}
@media(max-width:900px){
 .hero .to-benefits{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:28px 24px;
 }
}
@media(max-width:600px){
 .hero .hero-bottom.to-benefits-wrap{
  padding-top:24px;
  padding-bottom:28px;
 }
 .hero .to-benefits{gap:26px 18px}
 .hero .to-benefit{gap:10px}
 .hero .to-benefit h3{font-size:16px}
 .hero .to-benefit p{font-size:14px;line-height:1.5}
}
@media(max-width:359px){
 .hero .to-benefits{grid-template-columns:1fr}
}
/* END_TEPLOOPORA_BENEFITS16 */

/* TEPLOOPORA_BENEFITS17 */
.hero .to-benefits{
 width:100%;
 margin:0;
 padding:0;
}
.hero .to-benefit{
 justify-items:center;
 text-align:center;
}
.hero .to-benefit h3{
 width:100%;
 max-width:26ch;
 margin:0;
 font-size:16px;
 line-height:1.35;
}
.hero .to-benefit p{
 width:100%;
 max-width:28ch;
 margin:0;
 font-size:14px;
 line-height:1.5;
}
@media(max-width:600px){
 .hero .to-benefit h3{font-size:15px}
 .hero .to-benefit p{font-size:14px}
}
/* END_TEPLOOPORA_BENEFITS17 */

/* TEPLOOPORA_PAGE_TOP20 */
#main > .catalog-page,
#main > .document-page,
#main > .contacts-grid{
 margin-top:0;
 padding-top:24px;
}
#main > .catalog-page .catalog-title{
 padding-top:0;
 padding-bottom:32px;
}
#main > .catalog-page .catalog-title h1,
#main > .document-page > h1,
#main > .contacts-grid > div:first-child > h1{
 margin-top:0;
 margin-bottom:24px;
 font-size:clamp(36px,4.6vw,66px);
 line-height:1.13;
 letter-spacing:-.035em;
}
#main > .catalog-page .catalog-title > p:last-child,
#main > .document-page > h1 + p{
 margin-top:0;
}
#main > .contacts-grid{
 align-items:start;
}
@media(max-width:700px){
 #main > .catalog-page,
 #main > .document-page,
 #main > .contacts-grid{
  padding-top:18px;
 }
 #main > .catalog-page .catalog-title{
  padding-top:0;
  padding-bottom:26px;
 }
 #main > .catalog-page .catalog-title h1,
 #main > .document-page > h1,
 #main > .contacts-grid > div:first-child > h1{
  margin-top:0;
  margin-bottom:20px;
  font-size:clamp(32px,8.8vw,40px);
  line-height:1.12;
 }
}
/* END_TEPLOOPORA_PAGE_TOP20 */

/* TEPLOOPORA_DOCUMENTS21 */
#main > .wrap.document-page{
 max-width:none;
 margin-inline:auto;
}
#main > .document-page > .document-link{
 width:100%;
 min-width:0;
 box-sizing:border-box;
}
/* END_TEPLOOPORA_DOCUMENTS21 */
