/* Все стили изолированы внутри .tl-page. Цвета и размеры — здесь. */
.tl-page{--paper:#f6f8fb;--ink:#082e58;--sage:#dce7f2;--muted:#586779;--line:rgba(8,46,88,.2);font:16px/1.65 Inter,Arial,sans-serif;color:var(--ink);background:var(--paper);margin:0;overflow-x:clip}.tl-page *{box-sizing:border-box}.tl-page a{color:inherit;text-decoration:none}.tl-page button,.tl-page input,.tl-page textarea,.tl-page select{font:inherit}.tl-page button,.tl-page a,.tl-page summary{ -webkit-tap-highlight-color:transparent}.tl-page :focus-visible{outline:3px solid #2374b8;outline-offset:5px}.tl-page h1,.tl-page h2,.tl-page h3,.tl-page p{margin:0}.tl-page h1,.tl-page h2,.tl-page h3{font-family:Oswald,'Arial Narrow',Impact,sans-serif;font-weight:600;text-transform:uppercase;line-height:1.08}.tl-page h2{font-size:clamp(36px,5vw,70px)}.tl-page h3{font-size:clamp(29px,3vw,40px)}.tl-wrap{width:min(1200px,calc(100% - 96px));margin:auto}.tl-kicker{font-size:10px;letter-spacing:.3em;text-transform:uppercase;line-height:1.8}.tl-btn{display:inline-flex;align-items:center;justify-content:center;gap:28px;padding:19px 28px;border:1px solid var(--line);background:none;font-size:10px!important;font-weight:500;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;min-height:54px;transition:background .2s,color .2s}.tl-btn:hover{background:var(--ink);color:var(--paper)}.tl-btn--green{background:var(--sage);color:var(--ink)!important;border-color:var(--sage)}.tl-btn--green:hover{background:#e8eef5}.tl-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line)}.tl-header__inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:76px}.tl-logo{font:600 25px/1 Oswald,Impact,sans-serif;letter-spacing:-.03em;display:flex;align-items:center;gap:10px}.tl-logo svg{width:34px;height:30px}.tl-nav{display:flex;gap:26px;align-items:center}.tl-nav a{font-size:10px;letter-spacing:.16em;text-transform:uppercase}.tl-nav a:hover{text-decoration:underline;text-underline-offset:6px}.tl-header .tl-btn{padding:10px 18px;min-height:36px}.tl-menu{display:none;background:none;border:1px solid var(--line);padding:10px 14px;cursor:pointer}.tl-hero{position:relative;isolation:isolate;min-height:660px;display:flex;align-items:center;color:var(--paper);background:#213d59}.tl-hero:before,.tl-photo:before{content:'';position:absolute;inset:0;z-index:-1;background-image:linear-gradient(90deg,rgba(3,24,49,.85),rgba(3,24,49,.24)),var(--hero-photo);background-size:cover;background-position:center;background-repeat:no-repeat}.tl-hero__content{padding-block:100px}.tl-hero h1{font-size:clamp(55px,8.7vw,120px);letter-spacing:-.035em;max-width:1050px;margin:22px 0 26px}.tl-hero h1 span{color:var(--sage)}.tl-hero__text{font-size:21px;line-height:1.55;max-width:650px;color:#eee}.tl-strip{background:var(--ink);color:var(--paper)}.tl-strip__inner{display:grid;grid-template-columns:repeat(4,1fr) 1.3fr;align-items:center;gap:22px;padding-block:24px}.tl-strip strong{font-size:13px;font-weight:500;display:block}.tl-strip small{display:block;font-size:9px;letter-spacing:.15em;text-transform:uppercase;opacity:.5;margin-top:3px}.tl-section{padding-block:100px;scroll-margin-top:90px}.tl-intro{display:grid;grid-template-columns:1fr 2fr;gap:45px}.tl-intro .tl-kicker{padding-top:8px;color:#62788f}.tl-intro p{font-size:19px;color:var(--muted);max-width:710px;margin-top:28px}.tl-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;width:min(1392px,calc(100% - 48px));margin:auto;scroll-margin-top:100px}.tl-card{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:flex-end;padding:40px;min-height:330px;overflow:hidden}.tl-card p{margin:18px 0 26px;max-width:510px;line-height:1.6}.tl-card .tl-kicker{margin-bottom:17px}.tl-card .tl-btn{align-self:flex-start}.tl-card--photo{grid-column:span 2;min-height:440px;color:var(--paper);background:#284867}.tl-card--photo:before{content:'';position:absolute;inset:0;z-index:-1;background-image:linear-gradient(0deg,rgba(3,24,49,.93),rgba(3,24,49,.18)),var(--card-photo);background-size:cover;background-position:center;transition:transform .6s}.tl-card--photo:hover:before{transform:scale(1.03)}.tl-card--photo .tl-btn,.tl-banner .tl-btn{border-color:rgba(255,255,255,.5)}.tl-card--green{background:var(--sage);justify-content:center}.tl-card--dark{background:var(--ink);color:var(--paper)}.tl-card--dark .tl-btn{border-color:#777}.tl-card--light{background:#e8eef5}.tl-card--wide{grid-column:span 2}.tl-card__num{position:absolute;right:30px;top:20px;font:500 90px/1 Oswald,sans-serif;opacity:.07}.tl-card--wide h3{font-size:clamp(32px,4.5vw,62px);max-width:700px}.tl-banner{margin-top:16px;position:relative;isolation:isolate;padding:65px 40px;background:#123e6a;color:var(--paper);display:flex;align-items:center;justify-content:space-between;gap:30px;grid-column:1/-1}.tl-banner h3{max-width:650px;margin-top:12px}.tl-book{background:#eaf0f6}.tl-book__grid{display:grid;grid-template-columns:1fr 1.15fr;gap:70px}.tl-book h2{margin-top:18px}.tl-book__lead{margin-top:25px!important;color:var(--muted);max-width:400px}.tl-form{display:grid;grid-template-columns:1fr 1fr;gap:22px}.tl-field{display:flex;flex-direction:column;gap:8px;font-size:10px;letter-spacing:.13em;text-transform:uppercase;min-width:0}.tl-field input,.tl-field select,.tl-field textarea{width:100%;min-width:0;border:1px solid #a9b9cb;border-radius:0;background:transparent;padding:14px;color:var(--ink);font-size:14px;letter-spacing:normal;text-transform:none}.tl-field textarea{resize:vertical;min-height:100px}.tl-full{grid-column:1/-1}.tl-form__note{font-size:12px;color:var(--muted);letter-spacing:normal}.tl-form__status{font-size:13px;min-height:22px}.tl-consent{display:flex;align-items:flex-start;gap:10px;font-size:12px;line-height:1.5;color:var(--muted);letter-spacing:normal;text-transform:none;cursor:pointer}.tl-consent input{margin-top:3px;flex-shrink:0}.tl-consent a{text-decoration:underline;text-underline-offset:3px}.tl-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:42px;margin-top:55px}.tl-step{border-top:1px solid var(--line);padding-top:25px}.tl-step__num{font-size:12px;letter-spacing:.2em;color:var(--muted)}.tl-step h3{margin:22px 0 18px;font-size:30px}.tl-step p{color:var(--muted);font-size:15px}.tl-faq{display:grid;grid-template-columns:1fr 1.4fr;gap:70px}.tl-faq h2{margin-top:16px}.tl-faq details{border-top:1px solid var(--line)}.tl-faq details:last-child{border-bottom:1px solid var(--line)}.tl-faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:22px;padding:22px 0;font-size:16px}.tl-faq summary::-webkit-details-marker{display:none}.tl-faq summary:after{content:'+';font-size:23px;line-height:1}.tl-faq details[open] summary:after{content:'−'}.tl-faq details p{padding:0 25px 25px 0;color:var(--muted);font-size:14px}.tl-contact{background:var(--sage);padding:65px 0}.tl-contact__inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.tl-contact h2{font-size:clamp(35px,5vw,64px);margin-top:14px}.tl-footer{background:var(--ink);color:var(--paper);padding:55px 0 25px}.tl-footer__top{display:grid;grid-template-columns:2fr 1fr 1fr;gap:45px}.tl-footer p{font-size:13px;color:#c0cedc;max-width:360px;margin-top:22px}.tl-footer nav{display:grid;gap:10px;font-size:13px}.tl-footer__bottom{border-top:1px solid #365571;margin-top:50px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;color:#bacadb;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.tl-footer__legal{display:flex;gap:18px;flex-wrap:wrap}.tl-footer__legal a:hover{text-decoration:underline}.tl-skip{position:fixed;top:-100px;left:20px;z-index:99;background:var(--paper);padding:10px}.tl-skip:focus{top:10px}
@media(min-width:1500px){.tl-hero{min-height:760px}}
@media(max-width:1000px){.tl-wrap{width:calc(100% - 48px)}.tl-nav{gap:14px}.tl-nav a{font-size:9px}.tl-header__inner{gap:12px}.tl-strip__inner{grid-template-columns:repeat(2,1fr)}.tl-strip .tl-btn{grid-column:1/-1}.tl-hero{min-height:590px}.tl-card{padding:28px}.tl-book__grid,.tl-faq{gap:35px}.tl-intro{grid-template-columns:1fr 2.5fr}}
@media(max-width:700px){.tl-wrap{width:calc(100% - 40px)}.tl-header__inner{min-height:64px}.tl-header__inner>.tl-btn{display:none}.tl-menu{display:block}.tl-nav{display:none;position:absolute;top:64px;left:0;right:0;background:var(--paper);padding:24px;box-shadow:0 10px 15px #0001}.tl-nav.is-open{display:flex;flex-direction:column;align-items:flex-start;gap:22px}.tl-nav a{font-size:12px}.tl-hero{min-height:565px}.tl-hero__content{padding-block:65px}.tl-hero h1{font-size:clamp(46px,10.8vw,76px);line-height:1.1;margin-block:22px}.tl-hero__text{font-size:17px}.tl-hero .tl-kicker{font-size:9px;letter-spacing:.2em;max-width:270px}.tl-strip__inner{gap:24px 12px;padding-block:26px}.tl-strip strong{font-size:12px}.tl-strip small{font-size:8px}.tl-section{padding-block:65px}.tl-intro,.tl-book__grid,.tl-faq{grid-template-columns:1fr;gap:26px}.tl-intro p{font-size:16px;margin-top:24px}.tl-grid{width:calc(100% - 24px);grid-template-columns:1fr;gap:12px}.tl-card,.tl-card--photo,.tl-card--wide{grid-column:auto;min-height:340px;padding:30px 24px}.tl-card--green{min-height:260px}.tl-card--wide h3{font-size:38px}.tl-banner{padding:40px 24px;flex-direction:column;align-items:flex-start;margin-top:0}.tl-book__grid{gap:38px}.tl-form{gap:18px 12px}.tl-field{font-size:9px;letter-spacing:.08em}.tl-steps{grid-template-columns:1fr;gap:30px;margin-top:35px}.tl-step h3{margin-top:12px}.tl-contact__inner{align-items:flex-start;flex-direction:column}.tl-footer__top{grid-template-columns:1fr;gap:35px}.tl-footer__bottom{flex-direction:column;margin-top:35px}.tl-contact{padding-block:45px}}
@media(prefers-reduced-motion:reduce){.tl-page *{transition:none!important;scroll-behavior:auto!important}}

/* Фирменная палитра «Транспортный Альянс». Исходный PNG сохранён без изменений. */
.tl-page{--brand-red:#bd2027;--brand-red-hover:#9f1720}
.tl-logo{position:relative;display:block;flex-shrink:0;width:260px;height:64px;overflow:hidden}
.tl-logo img{position:absolute;width:280px;max-width:none;height:auto;left:-8px;top:-25px}
.tl-header__inner{min-height:86px}
.tl-btn--green{background:var(--brand-red);border-color:var(--brand-red);color:#fff!important}
.tl-btn--green:hover{background:var(--brand-red-hover);border-color:var(--brand-red-hover)}
.tl-hero h1 span{color:#d4e5f6}
.tl-intro h2:after{content:'';display:block;width:70px;height:5px;margin-top:28px;background:var(--brand-red)}
.tl-step__num{color:var(--brand-red)}
.tl-footer .tl-logo{background:#fff;border-radius:2px;width:280px;height:76px}
.tl-footer .tl-logo img{left:2px;top:-19px}
.tl-contact{background:#dce7f2}
@media(max-width:1100px) and (min-width:701px){.tl-header .tl-logo{width:210px;height:52px}.tl-header .tl-logo img{width:226px;left:-6px;top:-20px}.tl-header__inner>.tl-btn{display:none}}
@media(max-width:700px){.tl-header__inner{min-height:72px}.tl-header .tl-logo{width:210px;height:52px}.tl-header .tl-logo img{width:226px;left:-6px;top:-20px}.tl-nav{top:72px}}

/* Читаемость и новостная лента */
.tl-page{font-size:18px;line-height:1.7}
.tl-page h1,.tl-page h2,.tl-page h3{color:inherit}
.tl-page .tl-intro p{font-size:20px;color:#43566b}
.tl-page .tl-card p,.tl-page .tl-banner p,.tl-page .tl-book__lead,.tl-page .tl-step p,.tl-page .tl-faq details p{font-size:18px;line-height:1.7}
.tl-page .tl-faq summary{font-size:19px;font-weight:500}
.tl-page .tl-field{font-size:12px;letter-spacing:.08em}
.tl-page .tl-field input,.tl-page .tl-field select,.tl-page .tl-field textarea{font-size:16px;line-height:1.5}
.tl-page .tl-btn{font-size:12px!important;letter-spacing:.12em}
.tl-page .tl-kicker{font-size:11px;letter-spacing:.22em}
.tl-page .tl-form__note,.tl-page .tl-form__status{font-size:14px}
.tl-page .tl-footer p,.tl-page .tl-footer nav{font-size:15px}
.tl-card--photo{background:#061d35;color:#fff}
/* Непрозрачность 76% даже в самой светлой части: текст читается и на любом фото. */
.tl-card--photo:before{background-image:linear-gradient(0deg,rgba(3,24,49,.94),rgba(3,24,49,.76)),var(--card-photo)}
.tl-card--photo h3,.tl-card--photo p,.tl-card--photo .tl-kicker,.tl-banner h3,.tl-banner p,.tl-banner .tl-kicker{color:#fff}
.tl-banner{background:#123e6a;color:#fff}
.tl-contact__button{min-width:245px;min-height:64px;padding:22px 30px;font-weight:600;box-shadow:0 7px 18px rgba(143,21,32,.18)}
.tl-news{border-top:1px solid var(--line)}
.tl-news__head{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:42px}
.tl-news__head h2{margin-top:16px}
.tl-news__head>p{color:var(--muted);font-size:17px}
.tl-news__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:start}
.tl-news__card{border-top:3px solid var(--ink);padding:28px;background:#fff;min-width:0;display:flex;flex-direction:column}
.tl-news__card:nth-child(2){background:#e8eef5}
.tl-news__card:nth-child(3){border-top-color:var(--brand-red)}
.tl-news__meta{font-size:11px;text-transform:uppercase;letter-spacing:.14em;color:#596b7d;margin-bottom:24px}
.tl-page .tl-news__card h3{font-size:32px;line-height:1.18;min-height:76px}
.tl-news__card>p{font-size:17px;line-height:1.65;margin:22px 0 28px;color:#43566b;min-height:113px}
.tl-news__card details{border-top:1px solid var(--line);margin-top:auto}
.tl-news__card summary{display:flex;justify-content:space-between;gap:12px;cursor:pointer;padding-top:20px;font-size:12px;letter-spacing:.1em;text-transform:uppercase;list-style:none;font-weight:600}
.tl-news__card summary::-webkit-details-marker{display:none}
.tl-news__card details[open] summary span{transform:rotate(90deg)}
.tl-news__card details>div{font-size:16px;line-height:1.7;color:#43566b;padding-top:20px}
@media(max-width:1000px){.tl-news__grid{gap:14px}.tl-news__card{padding:22px}.tl-page .tl-news__card h3{font-size:28px}.tl-news__card>p{min-height:170px}}
@media(max-width:700px){.tl-page .tl-intro p{font-size:18px}.tl-page .tl-hero__text{font-size:19px}.tl-news__head{display:block}.tl-news__head>p{margin-top:22px}.tl-news__grid{grid-template-columns:1fr;gap:20px}.tl-news__card{padding:28px 24px}.tl-page .tl-news__card h3{font-size:32px;min-height:0}.tl-news__card>p{min-height:0}.tl-contact__button{width:100%}.tl-page .tl-faq summary{font-size:18px}}

/* Контакты справа: телефоны одной строкой над кнопкой; меню в общей строке. */
.tl-header__inner{flex-wrap:nowrap;gap:22px;padding-block:10px}
.tl-header__contact{display:flex;flex-direction:column;align-items:flex-end;gap:8px;flex-shrink:0}
.tl-header__phones{display:flex;flex-direction:row;align-items:center;gap:18px;white-space:nowrap;font-size:13px;font-weight:600;line-height:1.5}
.tl-header__phones a:hover{text-decoration:underline}
.tl-header .tl-header__cta{display:inline-flex;min-height:42px;padding:12px 18px;white-space:nowrap;font-size:11px!important;letter-spacing:.07em}
.tl-header .tl-nav{font-family:Inter,Arial,sans-serif;flex-shrink:0}
.tl-header .tl-nav a{font-size:10px;font-weight:400;letter-spacing:.16em}
.tl-page .tl-section,.tl-page .tl-grid{scroll-margin-top:110px}
@media(min-width:701px) and (max-width:1100px){.tl-header__inner{gap:14px}.tl-header .tl-nav{gap:14px}.tl-header .tl-nav a{font-size:9px}.tl-header__phones{font-size:11px;gap:12px}.tl-header .tl-header__cta{font-size:10px!important;padding-inline:12px}}
@media(min-width:701px) and (max-width:850px){.tl-header .tl-logo{width:160px;height:43px}.tl-header .tl-logo img{width:176px;left:-6px;top:-15px}.tl-header__inner{gap:12px}.tl-header .tl-nav{gap:10px}.tl-header .tl-nav a{letter-spacing:.08em}}
@media(max-width:700px){.tl-header__inner{flex-wrap:wrap;gap:8px 12px;padding-block:8px}.tl-header .tl-logo{width:190px;height:47px}.tl-header .tl-logo img{width:206px;left:-6px;top:-18px}.tl-menu{margin-left:auto;order:1}.tl-header__contact{order:2;width:100%;gap:6px;align-items:flex-end}.tl-header__phones{font-size:12px;gap:20px}.tl-header .tl-header__cta{min-height:40px;font-size:10px!important}.tl-nav{top:100%}.tl-header .tl-nav a{font-size:12px}.tl-page .tl-section,.tl-page .tl-grid{scroll-margin-top:180px}}

/* Телефоны — единая неразрывная строка, включая интеграцию в CMS. */
.tl-page .tl-header .tl-header__contact{min-width:max-content}
.tl-page .tl-header .tl-header__phones{display:block;width:max-content;max-width:none;white-space:nowrap!important;line-height:1.5;text-align:right}
.tl-page .tl-header .tl-header__phones>.tl-phone,
.tl-page .tl-header .tl-header__phones>a{display:inline!important;float:none;white-space:nowrap!important;font:inherit}
.tl-page .tl-header .tl-header__phones>.tl-phone-separator{display:inline!important;padding-inline:9px;color:#8293a5}
.tl-page .tl-header .tl-header__cta{align-self:flex-end}
@media(max-width:700px){.tl-page .tl-header .tl-header__contact{min-width:0}.tl-page .tl-header .tl-header__phones{font-size:12px}.tl-page .tl-header .tl-header__phones>.tl-phone-separator{padding-inline:5px}}

/* Внутренние страницы и раскрывающееся меню услуг */
.tl-dropdown{position:relative}
.tl-dropdown>summary{font:400 10px/1.65 Inter,Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;list-style:none;white-space:nowrap;display:flex;gap:7px;align-items:center}
.tl-dropdown>summary::-webkit-details-marker{display:none}
.tl-dropdown__panel{position:absolute;top:calc(100% + 20px);left:-20px;width:310px;display:grid;background:#fff;border:1px solid var(--line);box-shadow:0 16px 40px #082e5820;padding:10px;z-index:30}
.tl-header .tl-dropdown__panel a{display:block;padding:12px;font-size:13px;letter-spacing:0;text-transform:none;white-space:normal;line-height:1.5}
.tl-header .tl-dropdown__panel a:hover{background:#e8eef5;text-decoration:none}
.tl-inner-top{background:#e8eef5;padding:30px 0 65px}
.tl-crumbs{display:flex;flex-wrap:wrap;gap:9px;font-size:12px;color:#586779;margin-bottom:48px;line-height:1.6}
.tl-crumbs a{text-decoration:underline;text-underline-offset:3px}
.tl-inner-top h1{font-size:clamp(42px,5.5vw,76px);max-width:1040px;margin-top:18px;line-height:1.12;overflow-wrap:break-word}
.tl-inner-lead{font-size:21px;max-width:820px;margin-top:25px!important;line-height:1.65;color:#43566b}
.tl-inner-content{padding-top:65px}
.tl-services-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.tl-service-tile{padding:40px;background:#e8eef5;border-top:3px solid #082e58;display:flex;flex-direction:column;align-items:flex-start}
.tl-service-tile:nth-child(2),.tl-service-tile:nth-child(3){background:#fff}
.tl-service-tile:nth-child(4){border-color:#bd2027}
.tl-service-tile h2{font-size:40px;line-height:1.15;margin:25px 0}
.tl-service-tile p{font-size:18px;line-height:1.7;margin-bottom:30px}
.tl-read{display:inline-flex;align-items:center;justify-content:space-between;gap:15px;font-size:12px;letter-spacing:.09em;text-transform:uppercase;font-weight:600;margin-top:auto;padding-block:16px;border-top:1px solid var(--line)}
.tl-read:hover{text-decoration:underline;text-underline-offset:5px}
.tl-news__head .tl-read{margin-top:20px}
.tl-text-layout{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(250px,1fr);gap:70px;align-items:start}
.tl-prose{min-width:0;font-size:18px;line-height:1.8}
.tl-page .tl-prose h2{font-size:36px;margin:42px 0 20px;line-height:1.2}
.tl-page .tl-prose h2:first-child{margin-top:0}
.tl-prose p{margin:0 0 22px}
.tl-prose ul,.tl-prose ol{padding-left:24px;margin:20px 0 30px}
.tl-prose li{padding-left:6px;margin-bottom:12px}
.tl-prose li::marker{color:var(--brand-red)}
.tl-prose blockquote{margin:35px 0;padding:24px 28px;background:#e8eef5;border-left:4px solid var(--brand-red);font-size:21px;line-height:1.6}
.tl-side{background:#e8eef5;padding:28px}
.tl-side nav{display:grid;margin:20px 0 30px}
.tl-side nav a{font-size:15px;padding:15px 0;border-bottom:1px solid var(--line);line-height:1.5}
.tl-side nav a[aria-current]{font-weight:600;color:#bd2027}
.tl-side h2{font-size:32px;margin:18px 0}
.tl-side p:not(.tl-kicker){font-size:16px;margin-bottom:24px}
.tl-side .tl-btn{width:100%;padding-inline:12px;letter-spacing:.06em}
.tl-article-end{display:flex;flex-wrap:wrap;gap:20px;margin-top:45px}
.tl-contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}
.tl-contact-layout h2{font-size:42px;margin-bottom:28px}
.tl-contact-info dl{margin:0}
.tl-contact-info dt{text-transform:uppercase;letter-spacing:.13em;font-size:11px;margin:26px 0 8px;color:#586779}
.tl-contact-info dd{margin:0;font-size:20px}
.tl-contact-form{padding:36px;background:#e8eef5}
.tl-contact-form h2{margin-top:18px}
.tl-map-placeholder{border:1px solid var(--line);padding:40px 25px;margin-top:35px;background:#e8eef5;min-height:190px;display:flex;flex-direction:column;justify-content:center}
.tl-map-placeholder p{font-size:22px;margin:12px 0}
.tl-map-placeholder small{font-size:13px;color:#586779}
.tl-map{margin-top:35px}
.tl-map iframe{width:100%;height:320px;border:0;display:block}
@media(max-width:1100px) and (min-width:701px){.tl-dropdown>summary{font-size:9px}}
@media(max-width:850px){.tl-text-layout,.tl-contact-layout{gap:30px}.tl-side{padding:22px}.tl-service-tile{padding:28px}.tl-service-tile h2{font-size:34px}}
@media(max-width:700px){.tl-dropdown{width:100%}.tl-dropdown>summary{font-size:12px}.tl-dropdown__panel{position:static;width:100%;margin-top:15px;box-shadow:none}.tl-nav.is-open{max-height:calc(100dvh - 155px);overflow-y:auto}.tl-inner-top{padding:25px 0 45px}.tl-crumbs{margin-bottom:30px}.tl-inner-lead{font-size:18px}.tl-services-list,.tl-text-layout,.tl-contact-layout{grid-template-columns:1fr}.tl-service-tile h2{font-size:34px}.tl-inner-content{padding-top:45px}.tl-prose blockquote{font-size:19px;margin-inline:0;padding:22px}.tl-contact-form{padding:25px}.tl-contact-layout h2{font-size:36px}.tl-dropdown__panel a{letter-spacing:0!important}}

/* Попап заявки (переиспользуется на всех страницах вместо перехода на главную) */
.tl-popup-overlay{position:fixed;inset:0;background:rgba(8,24,45,.72);z-index:90;display:flex;align-items:center;justify-content:center;padding:24px;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}
.tl-popup-overlay.is-open{opacity:1;visibility:visible}
.tl-popup{background:#fff;max-width:520px;width:100%;max-height:90vh;overflow-y:auto;padding:44px;position:relative}
.tl-popup-close{position:absolute;top:18px;right:18px;background:none;border:none;font-size:22px;line-height:1;cursor:pointer;color:var(--muted);padding:6px}
.tl-popup-close:hover{color:var(--ink)}
.tl-popup h2{font-size:30px;margin:0 0 10px}
.tl-popup>p{color:var(--muted);margin-bottom:28px;font-size:16px}
.tl-popup .tl-form{grid-template-columns:1fr}
.tl-popup-success{display:none;text-align:center;padding:20px 0}
.tl-popup-success.is-visible{display:block}
.tl-popup-success h3{font-size:26px;margin-bottom:12px}
.tl-popup-success p{color:var(--muted)}
@media(max-width:700px){.tl-popup{padding:30px 24px}}

/* 404 */
.tl-notfound{min-height:60vh;display:flex;align-items:center;padding-block:80px}
.tl-notfound__code{font:700 clamp(90px,16vw,200px)/1 Oswald,sans-serif;color:var(--sage);letter-spacing:-.02em}
.tl-notfound p{font-size:19px;color:var(--muted);max-width:520px;margin:24px 0 36px}

/* Логотипы клиентов — серые по умолчанию, цветные при наведении, прокрутка на узких экранах */
.tl-clients{padding-block:60px}
.tl-clients__scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.tl-clients__track{display:flex;align-items:center;gap:56px;width:max-content;margin:auto;padding:4px 4px 12px}
.tl-clients__logo{display:flex;align-items:center;justify-content:center;height:56px;flex-shrink:0}
.tl-clients__logo img{max-height:56px;max-width:160px;width:auto;height:auto;object-fit:contain;filter:grayscale(1) opacity(.55);transition:filter .25s ease}
.tl-clients__logo:hover img{filter:grayscale(0) opacity(1)}
@media(max-width:700px){.tl-clients{padding-block:40px}.tl-clients__track{gap:36px}.tl-clients__logo{height:44px}.tl-clients__logo img{max-height:44px;max-width:120px}}

/* Яндекс Смарт-Капча — виджет сам по себе ограничен в ширину, просто даём отступы */
.smart-captcha{margin:4px 0;max-width:100%;overflow:hidden}
