* {
  box-sizing: border-box;
}

body {
  background-color: rgb(22, 23, 29);
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
  min-width: 0;
  min-height: 100vh;
  margin: 0px;
  display: flex;
  flex-flow: column;
}

p,
a,
li {
  color: white;
  text-decoration: none;
  margin: 0;
}

a:hover {
  color: rgb(199, 35, 60);
}

/*HEADER*/
header {
  max-width: 1200px;
  min-width: 80%;
  display: flex;
  align-self: center;
  align-items: center;
}

.logo {
  display: inline-block;
}

/*.logo img {
  max-height: 40px;
  padding: 8px;
}*/

.logo p {
  font-weight: 900;
  font-size: 26px;
}

.textlogo1 {
  margin: 0 0 0 20px;
  display: inline-block;
  color: rgb(199, 35, 60);
}

.textlogo2 {
  margin: -4px;
  display: inline-block;
}

.textlogo3 {
  margin: -5px 0 0 20px;
  color: rgb(199, 35, 60);
}

nav {
  display: flex;
  margin-left: auto;
  padding: 5px 20px;
}

nav ul {
  padding: 0;
  margin: 0;
}

nav li {
  display: inline-block;
  text-transform: uppercase;
  font-weight: 500;
}

nav li a {
  padding: 0 15px;
  border-bottom: 3px solid transparent;
  transition: 300ms linear;
}


nav li a:hover {  
  border-bottom-color: rgb(199, 35, 60);
}

.active_page a{
  color: rgb(199, 35, 60);
  border-bottom-color: rgb(199, 35, 60);
}

nav ul:has(li:not(.active_page) a:hover) li.active_page a {
  color: rgb(255, 255, 255);
  border-bottom-color: transparent;
}

@media screen and (max-width: 720px) {
  nav {
    display: flex;
  }
}


/*MAIN*/
main {
  background-color: rgb(30, 31, 41);
  text-align: center;
  display: flex;
  flex-direction: column;
  align-content: center;

  flex-grow: 1;
}

h1 {
  color: white;
  padding: 20px;
  font-size: clamp(2rem, 4vw, 2.8rem);
  line-height: 1.15;
}

h2 {
  color: white;
}

h3 {
  color: white;
}

/*ОТСЮДА*/
.hero,
.directions,
.technologies {
  max-width: 1200px;
  width: 80%;
  margin: 0 auto;
  padding: 30px 0;
}

.hero p,
.direction p,
.technologies p {
  color: rgb(210, 210, 210);
}

.hero {
  text-align: left;
}

.hero h1 {
  padding: 0;
  margin: 0 0 15px;
}

.hero p {
  max-width: 1200px;
  font-size: 20px;
  line-height: 1.7;
}

.main_button {
  display: inline-block;
  margin-top: 30px;
  padding: 14px 24px;
  background-color: rgb(199, 35, 60);
  border-radius: 6px;
  font-weight: 600;
}

.main_button:hover {
  color: white;
  background-color: rgb(170, 25, 45);
}

.direction_list {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
}

.direction {
  background-color: rgba(64, 64, 64, 0.2);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 10px;
  padding: 25px;
  flex: 1 1 250px;
  text-align: left;
}

.direction h3 {
  color: white;
  margin-top: 0;
}

.direction p,
.technologies p {
  line-height: 1.6;
}


/*ДОСЮДА*/


.contacts {
  background-color: rgba(64, 64, 64, 0.1);
  border-radius: 10px;
  display: flex;
  flex-flow: column;
  margin: auto auto;
  width: clamp(300px, 80%, 600px);

}

.contact_list {
  display: flex;
  flex-wrap: wrap;
  margin: auto;
  width: 100%;

}

.contact {
  background-color: rgba(64, 64, 64, 0.1);
  border-radius: 10px;
  margin: 10px;
  padding: 5px;
  width: clamp(220px, 40%, 400px);
  flex-grow: 1;
}


/*FOOTER*/
footer {
  display: flex;
  align-self: center;
  margin-top: auto;
  font-size: 14px;
}

footer ul {
  display: flex;
  flex-wrap: wrap;
  margin: 8px;
  padding: 0;
}

footer li {
  display: inline;
  padding: 0 40px;
  color: rgb(180, 180, 180);
}

footer a {
  color: rgb(180, 180, 180);
}

footer a:hover {
  color: rgb(199, 35, 60);
}
/* Доработка существующего оформления: страницы и адаптивная навигация. */
html { scroll-behavior: smooth; scroll-padding-top: 24px; }
body { font-size: 16px; }
a:focus-visible { outline: 2px solid #ff6680; outline-offset: 5px; }
header { width: 80%; min-width: 0; padding: 8px 0; }
.logo { flex-shrink: 0; }
.logo p { line-height: 1.12; }
nav ul { display: flex; flex-wrap: wrap; gap: 6px; }
nav li a { display: inline-block; padding: 10px 12px; }
.hero p + p { margin-top: 12px; }
.direction_list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.direction { min-width: 0; display: flex; flex-direction: column; }
.direction h3 { font-size: 19px; line-height: 1.35; }
.direction p { font-size: 16px; }
.detail_link { display: inline-block; color: #ff7b90; font-size: 15px; margin-top: 22px; line-height: 1.5; }
.direction .detail_link { margin-top: auto; padding-top: 22px; }
.detail_link:hover, .contact_email:hover { color: #ffb1bd; text-decoration: underline; }
.three_columns { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.content_section { width: 80%; max-width: 1200px; margin: 0 auto; padding: 30px 0; text-align: left; }
.content_section h2 { margin: 0 0 18px; line-height: 1.35; }
.content_section p, .section_note { color: #d2d2d2; line-height: 1.75; }
.content_section p + p, .technologies p + p { margin-top: 14px; }
.content_section:last-child, .technologies:last-child { padding-bottom: 55px; }
.feature_list { padding-left: 22px; margin: 18px 0 0; }
.feature_list li { color: #d2d2d2; line-height: 1.7; margin-bottom: 10px; }
.feature_list li::marker { color: #e84b66; }
.section_note { text-align: left; margin-top: 24px; }
.service_section { border-top: 1px solid rgba(255,255,255,.09); }
.service_section > p:last-child:not(:first-child) { margin-top: 20px; }
.work_steps { list-style: none; counter-reset: step; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; padding: 0; margin: 24px 0 0; }
.work_steps li { border-left: 3px solid #c7233c; padding-left: 20px; }
.work_steps h3 { margin: 0 0 10px; font-size: 19px; }
.work_steps h3::before { counter-increment: step; content: '0' counter(step) ' / '; color: #f4778b; }
.contacts_section { padding-top: 0; }
.contacts_section .direction_list { grid-template-columns: repeat(2,minmax(0,1fr)); }
.contacts_section h2 { margin: 0 0 12px; font-size: 22px; }
.contact_email { color: #ff7b90; font-size: 20px; margin-top: 20px; overflow-wrap: anywhere; }
footer { width: 80%; max-width: 1200px; padding: 14px 0; }
footer ul { width: 100%; justify-content: space-between; gap: 12px 24px; margin: 0; }
footer li { padding: 0; }
.skip_link { position: absolute; top: 8px; left: 8px; transform: translateY(-200%); padding: 12px; background: #16171d; z-index: 10; }
.skip_link:focus { transform: translateY(0); }
@media screen and (max-width: 1100px) {
  header { flex-wrap: wrap; gap: 12px; }
  nav { padding: 0; }
  nav li a { padding: 10px; font-size: 14px; }
  .direction_list { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .three_columns { grid-template-columns: 1fr; }
}
@media screen and (max-width: 720px) {
  header, .hero, .directions, .technologies, .content_section, footer { width: calc(100% - 32px); }
  header { padding: 16px 0 10px; }
  .textlogo1, .textlogo3 { margin-left: 0; }
  nav { width: 100%; margin: 0; }
  nav ul { width: 100%; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 4px 10px; }
  nav li a { width: 100%; padding: 10px 4px; }
  .hero p { font-size: 18px; line-height: 1.65; }
  .hero h1 { font-size: clamp(1.8rem, 6vw, 2.4rem); overflow-wrap: break-word; }
  .hero, .directions, .technologies, .content_section { padding-top: 24px; padding-bottom: 24px; }
  .direction_list, .contacts_section .direction_list, .work_steps { grid-template-columns: 1fr; }
  .direction { padding: 22px; }
  .main_button { text-align: center; }
  footer ul { flex-direction: column; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } nav li a { transition: none; } }

@font-face { font-family:"IA Sans"; src:url("/fonts/home-81c3ad7075e5.woff") format("woff"); font-style:normal; font-weight:100 500; font-display:swap; }
@font-face { font-family:"IA Sans"; src:url("/fonts/home-d88bb4b8432b.woff") format("woff"); font-style:normal; font-weight:501 900; font-display:swap; }
/* Стили только главной страницы. Остальные страницы используют style.css. */
.home-page{--home-red:#c7233c;--home-light:#f5f5f7;--home-muted:#bfc0c9;--home-line:rgba(255,255,255,.13);color:var(--home-light);background:#16171d;font-size:16px;line-height:1.6}.home-page main{text-align:left;background:#1e1f29;display:block}.home-page header{width:calc(100% - 80px);max-width:1280px;min-height:90px;padding:12px 0;gap:24px}.home-page .logo{line-height:1}.home-page .logo p{font-size:26px}.home-page .textlogo1,.home-page .textlogo3{margin-left:0}.home-page .textlogo2{margin:0}.home-page nav{padding:0}.home-page nav li a{font-size:14px;padding:10px 13px}.home-page .home-container{width:calc(100% - 80px);max-width:1280px;margin-left:auto;margin-right:auto}.home-page h1,.home-page h2,.home-page h3,.home-page p{padding:0}.home-page h2{font-size:clamp(30px,3.1vw,46px);font-weight:600;line-height:1.17;letter-spacing:-1.1px;margin:16px 0 0}.home-page h2 span{color:#b5b5bf}.home-page h3{font-weight:600}.home-page .home-kicker{font-size:12px;font-weight:600;letter-spacing:1.6px;line-height:1.6;color:#d8d8df}.home-page .home-hero{min-height:650px;position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;justify-content:center;background:#14161d}.home-page .hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:65% center;z-index:-3;animation:hero-settle 1.5s ease-out both}.home-page .hero-scrim{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(15,16,22,.96),rgba(15,16,22,.77) 35%,rgba(15,16,22,.2) 75%),linear-gradient(0deg,rgba(15,16,22,.6),transparent 50%)}.home-page .hero-content{padding-top:72px;padding-bottom:95px}.home-page .hero-content .home-kicker{display:flex;align-items:center;gap:12px}.home-page .hero-content .home-kicker span{height:3px;width:28px;background:var(--home-red)}.home-page h1{font-size:clamp(40px,4.7vw,68px);line-height:1.07;letter-spacing:-2px;margin:27px 0 24px;max-width:820px;font-weight:650}.home-page .hero-title-line{display:block;font-size:.54em;color:inherit;letter-spacing:-.6px;line-height:1.35;margin-top:18px;font-weight:400}.home-page .hero-lead{font-size:18px;line-height:1.75;color:#dadbe1;max-width:580px}.home-page .hero-actions{display:flex;align-items:center;gap:30px;margin-top:32px;flex-wrap:wrap}.home-page .home-button{background:var(--home-red);border:1px solid var(--home-red);display:inline-flex;justify-content:space-between;align-items:center;gap:44px;padding:15px 22px;font-size:16px;min-height:54px;font-weight:600;border-radius:3px;transition:background .2s,transform .2s;color:white}.home-page .home-button:hover{background:#a91b31;transform:translateY(-2px)}.home-page .home-button span{font-size:23px;line-height:1}.home-page .home-text-link{display:inline-flex;align-items:center;gap:24px;font-size:15px;color:#eeeef2;padding:10px 0;border-bottom:1px solid #777781}.home-page .home-text-link:hover{color:#ff859b;border-color:#ff859b}.home-page .hero-base{position:absolute;bottom:25px;left:0;right:0;display:flex;justify-content:space-between;align-items:center;gap:20px}.home-page .hero-base p{font-size:12px;letter-spacing:1.8px;color:#c2c3ce}.home-page .hero-base a{font-size:13px;color:#cccdd5}.home-page .hero-base a span{padding-left:24px;font-size:20px}.home-page .expertise-strip{background:#16171d;border-bottom:1px solid var(--home-line)}.home-page .expertise-strip>.home-container{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.home-page .expertise-strip a{padding:24px 28px;display:flex;align-items:center;gap:18px;border-right:1px solid var(--home-line);transition:background .2s}.home-page .expertise-strip a:first-child{border-left:1px solid var(--home-line)}.home-page .expertise-strip strong{font-size:26px;font-weight:600;letter-spacing:-.7px}.home-page .expertise-strip a>span:first-of-type{font-size:14px;color:var(--home-muted)}.home-page .expertise-strip a>span:last-of-type{margin-left:auto;color:#ff758f;font-size:21px}.home-page .expertise-strip a:hover{background:#302630;border-color:#a8394d;color:#fff}.home-page .home-section{padding-top:85px;padding-bottom:85px}.home-page .section-intro{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:42px}.home-page .section-intro>p{max-width:380px;color:var(--home-muted);font-size:16px;line-height:1.8}.home-page .expertise-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.home-page .expertise-card{background:#24252e;border:1px solid var(--home-line);border-radius:6px;overflow:hidden;display:flex;flex-direction:column;scroll-margin-top:24px;transition:border-color .25s,transform .25s}.home-page .expertise-card:hover{border-color:#ae354b;transform:translateY(-5px)}.home-page .card-image{height:235px;position:relative;overflow:hidden;background:#13151c}.home-page .card-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,10,14,.6),transparent 60%)}.home-page .card-image img{width:100%;height:100%;object-fit:cover;object-position:90% center;transition:transform .6s}.home-page #hmi .card-image img{object-position:center 43%;transform:scale(1)}.home-page .scada-crop img{object-position:15% center}.home-page .expertise-card:hover .card-image img{transform:scale(1.05)}.home-page #hmi:hover .card-image img{transform:scale(1.05)}.home-page .card-number{position:absolute;left:24px;bottom:18px;z-index:1;font-size:13px;font-weight:600;letter-spacing:1.6px}.home-page .card-body{padding:26px;display:flex;flex-direction:column;flex:1}.home-page .card-body h3{font-size:22px;line-height:1.3;margin:0 0 16px;letter-spacing:-.4px}.home-page .card-body p{color:var(--home-muted);font-size:16px;line-height:1.7}.home-page .card-body ul{padding:20px 0 22px;margin:0;list-style:none}.home-page .card-body li{font-size:14px;line-height:1.6;color:#d7d7df;padding:6px 0 6px 16px;position:relative}.home-page .card-body li:before{content:'—';color:#ef6e83;position:absolute;left:0}.home-page .card-body a{padding-top:20px;border-top:1px solid var(--home-line);display:flex;justify-content:space-between;gap:15px;margin-top:auto;font-size:14px}.home-page .card-body a span{color:#f2778d}.home-page .task-section{background:#17181f;padding:76px 0;border-top:1px solid var(--home-line);border-bottom:1px solid var(--home-line)}.home-page .task-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.home-page .task-intro>p:last-child{max-width:360px;color:var(--home-muted);margin-top:28px;line-height:1.8}.home-page .task-tabs{display:flex;border-bottom:1px solid var(--home-line);gap:20px}.home-page .task-tabs[hidden]{display:none}.home-page .task-tabs button{appearance:none;background:none;border:0;border-bottom:3px solid transparent;padding:12px 0 17px;color:#b9bac5;font:inherit;font-size:15px;cursor:pointer}.home-page .task-tabs button[aria-selected=true]{color:white;border-color:var(--home-red)}.home-page button:focus-visible{outline:2px solid #ff7c94;outline-offset:4px}.home-page .task-panel{padding-top:24px;position:relative}.home-page .task-panel[hidden]{display:none}.home-page .task-panel h3{font-size:25px;line-height:1.35;margin:15px 0 20px;max-width:470px;position:relative}.home-page .task-panel p{color:var(--home-muted);max-width:500px;line-height:1.8}.home-page .task-panel ul{padding-left:20px;margin:22px 0}.home-page .task-panel li{color:#d2d3dc;font-size:15px;padding:5px 0}.home-page .task-panel li::marker{color:#ee7187}.home-page .task-index{font-size:14px;color:#f6788e;font-weight:600;letter-spacing:2px}.home-page .task-content.is-enhanced .task-panel{animation:panel-in .3s ease-out}.home-page .engineering-section{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:stretch}.home-page .engineering-photo{min-height:600px;position:relative;overflow:hidden;border-radius:5px}.home-page .engineering-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:47% center}.home-page .engineering-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(9,10,15,.8),transparent 50%)}.home-page .engineering-photo>span{position:absolute;left:28px;bottom:28px;z-index:1;font-size:12px;letter-spacing:1.7px}.home-page .engineering-copy>p:not(.home-kicker){color:var(--home-muted);margin:25px 0;line-height:1.8}.home-page .engineering-copy h2{font-size:clamp(30px,2.8vw,43px)}.home-page .engineering-point{display:flex;gap:23px;padding:20px 0;border-top:1px solid var(--home-line)}.home-page .engineering-point>span{color:#ec7188;font-size:12px;padding-top:5px}.home-page .engineering-point h3{margin:0 0 6px;font-size:18px}.home-page .engineering-point p{color:var(--home-muted);font-size:15px;line-height:1.7}.home-page .engineering-copy>a{margin-top:10px}.home-page .additional-section{padding:74px 0 80px;background:#23242d;border-top:1px solid var(--home-line);border-bottom:1px solid var(--home-line)}.home-page .additional-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.home-page .additional-card{position:relative;display:block;border:1px solid #49434d;border-radius:5px;padding:26px 28px 30px;transition:background .2s,border-color .2s}.home-page .additional-card:hover{background:#302630;border-color:#a8394d;color:white}.home-page .additional-index{color:#f08395;font-size:13px;letter-spacing:2px}.home-page .additional-card h3{font-size:24px;line-height:1.25;margin:25px 0 15px}.home-page .additional-card p{font-size:16px;color:var(--home-muted);max-width:300px;line-height:1.8;padding-right:12px}.home-page .additional-arrow{position:absolute;top:22px;right:26px;font-size:24px;color:#eaa5b1}.home-page .home-contact{display:flex;justify-content:space-between;align-items:center;gap:50px}.home-page .home-contact h2{font-size:clamp(34px,4.2vw,62px);line-height:1.12}.home-page .home-contact p:not(.home-kicker){color:var(--home-muted);margin-top:24px;line-height:1.8}.home-page .contact-actions{display:flex;flex-direction:column;align-items:center;gap:22px;flex-shrink:0}.home-page .contact-mail{font-size:16px;color:#d0d0da}.home-page footer{width:calc(100% - 80px);max-width:1280px;display:block;padding:25px 0}.home-page .home-reveal{opacity:1;transform:none}.home-page .home-reveal.will-reveal{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s ease}.home-page .home-reveal.will-reveal.is-visible{opacity:1;transform:none}.home-page main:focus{outline:none}@keyframes hero-settle{from{transform:scale(1.025);opacity:.7}to{transform:scale(1);opacity:1}}@keyframes panel-in{from{opacity:.3;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1700px){.home-page .home-hero{min-height:740px}.home-page .hero-photo{object-position:center}}
@media(max-width:1100px){.home-page .expertise-strip a{padding:20px 16px;gap:12px}.home-page .expertise-strip a>span:first-of-type{font-size:12px}.home-page .expertise-cards{gap:16px}.home-page .card-body{padding:22px}.home-page .card-body h3{font-size:20px}.home-page .task-layout{gap:45px;grid-template-columns:.8fr 1.2fr}.home-page .task-tabs{gap:15px}.home-page .task-tabs button{font-size:14px}.home-page .engineering-section{gap:40px}.home-page .section-intro{gap:40px}.home-page .section-intro>p{max-width:330px}.home-page .home-hero{min-height:620px}.home-page h1{font-size:53px}}
@media(max-width:800px){.home-page header,.home-page .home-container,.home-page footer{width:calc(100% - 40px)}.home-page header{gap:16px}.home-page .home-hero{min-height:620px}.home-page .hero-content{padding-top:50px;padding-bottom:100px}.home-page h1{font-size:clamp(33px,6.5vw,51px);letter-spacing:-1.2px}.home-page .hero-photo{object-position:70% center}.home-page .hero-scrim{background:linear-gradient(90deg,rgba(15,16,22,.95),rgba(15,16,22,.55)),linear-gradient(0deg,rgba(15,16,22,.8),transparent)}.home-page .hero-base p{max-width:230px;font-size:11px}.home-page .expertise-strip a{flex-wrap:wrap;gap:6px}.home-page .expertise-strip strong{font-size:23px}.home-page .expertise-strip a>span:first-of-type{order:3;flex-basis:100%;font-size:12px}.home-page .expertise-cards{grid-template-columns:1fr}.home-page .expertise-card{display:grid;grid-template-columns:.9fr 1.1fr}.home-page .card-image{height:100%;min-height:330px}.home-page .section-intro{display:block}.home-page .section-intro>p{max-width:550px;margin-top:24px}.home-page .home-section{padding:60px 0}.home-page .task-layout{grid-template-columns:1fr;gap:30px}.home-page .task-intro>p:last-child{max-width:550px}.home-page .task-section{padding:55px 0}.home-page .task-panel h3{font-size:24px}.home-page .engineering-section{grid-template-columns:1fr;gap:35px}.home-page .engineering-photo{min-height:380px}.home-page .additional-grid{grid-template-columns:1fr}.home-page .additional-card h3 br{display:none}.home-page .additional-card h3{margin:15px 0 12px}.home-page .additional-card p{max-width:100%}.home-page .home-contact{align-items:start;flex-direction:column;gap:35px}.home-page .contact-actions{align-items:start}.home-page .additional-section{padding:55px 0}}
@media(max-width:520px){.home-page header{gap:10px;min-height:0;padding:16px 0 8px}.home-page nav li a{font-size:13px;padding:8px 0}.home-page .logo p{font-size:24px}.home-page .home-kicker{font-size:11px;letter-spacing:1.4px}.home-page .hero-lead{font-size:16px;line-height:1.8}.home-page .desktop-break{display:none}.home-page .hero-actions{gap:18px;margin-top:26px;flex-direction:column;align-items:start}.home-page .hero-base p{max-width:180px;font-size:10px;letter-spacing:1px}.home-page .hero-base a{font-size:12px}.home-page .hero-base a span{padding-left:8px}.home-page .hero-title-line{font-size:.63em}.home-page .expertise-strip a{padding:16px 8px}.home-page .expertise-strip strong{font-size:20px}.home-page .expertise-strip a>span:last-of-type{font-size:16px}.home-page .expertise-strip a>span:first-of-type{font-size:12px;line-height:1.5}.home-page .expertise-card{display:flex}.home-page .card-image{height:215px;min-height:0}.home-page .card-body{padding:24px}.home-page .card-body h3{font-size:23px}.home-page .task-tabs{gap:14px}.home-page .task-tabs button{font-size:13px;padding:12px 0}.home-page .task-panel h3{font-size:22px}.home-page .engineering-photo{min-height:330px}.home-page .home-contact p br{display:none}.home-page .hero-content{padding-top:45px;padding-bottom:100px}.home-page .home-hero{min-height:630px}.home-page footer ul{gap:12px}}
@media(prefers-reduced-motion:reduce){.home-page *{animation:none!important;transition:none!important}.home-page .home-reveal.will-reveal{opacity:1;transform:none}.home-page .expertise-card:hover,.home-page .home-button:hover{transform:none}}

/* Центрирование футера главной на всех размерах экрана. */
.home-page footer { text-align: center; }
.home-page footer ul { justify-content: center; align-items: center; gap: 14px 40px; }
.home-page footer li { text-align: center; }
@media (max-width: 720px) { .home-page footer ul { gap: 12px; } }

/* Motion layer: restrained transitions confined to the home page. */
.home-page::before { content: ''; position: fixed; top: 0; left: 0; right: 0; height: 2px; z-index: 90; pointer-events: none; background: #c7233c; transform: scaleX(var(--reading-progress, 0)); transform-origin: left; }
.home-page .hero-photo { translate: 0 var(--hero-offset, 0px); }
.home-page .hero-content > .home-kicker { animation: home-intro .75s .05s both; }
.home-page .hero-content > h1 { animation: home-intro .85s .12s both; }
.home-page .hero-content > .hero-lead { animation: home-intro .85s .22s both; }
.home-page .hero-content > .hero-actions { animation: home-intro .85s .32s both; }
.home-page .home-reveal.will-reveal { transform: translateY(26px); transition: opacity .75s cubic-bezier(.22,1,.36,1) var(--reveal-delay, 0ms), transform .85s cubic-bezier(.22,1,.36,1) var(--reveal-delay, 0ms); }
.home-page .home-reveal.will-reveal.is-visible { transform: translateY(0); }
.home-page .expertise-card, .home-page .additional-card { transition: border-color .35s, background .35s, transform .45s cubic-bezier(.22,1,.36,1), box-shadow .45s; }
.home-page .card-image img { transition: transform .85s cubic-bezier(.22,1,.36,1); }
.home-page .home-button { transition: background .3s, transform .35s, box-shadow .35s; }
.home-page .home-button span, .home-page .home-text-link span, .home-page .card-body a span, .home-page .additional-arrow, .home-page .expertise-strip a>span:last-of-type { transition: transform .35s cubic-bezier(.22,1,.36,1); }
.home-page .task-tabs { position: relative; }
.home-page .task-tabs.has-indicator::after { content: ''; position: absolute; height: 3px; bottom: -1px; left: 0; width: var(--tab-width, 0px); transform: translateX(var(--tab-left, 0px)); background: #c7233c; transition: transform .38s cubic-bezier(.22,1,.36,1), width .38s cubic-bezier(.22,1,.36,1); pointer-events: none; }
.home-page .task-tabs.has-indicator button[aria-selected=true] { border-bottom-color: transparent; }
.home-page .task-content.is-enhanced .task-panel { animation: none; }
@media (hover: hover) and (pointer: fine) {
  .home-page .expertise-card:hover { box-shadow: 0 14px 34px rgba(0,0,0,.2); }
  .home-page .additional-card:hover { transform: translateY(-4px); box-shadow: 0 12px 30px rgba(0,0,0,.15); }
  .home-page .home-button:hover { box-shadow: 0 7px 22px rgba(199,35,60,.18); }
  .home-page .home-button:hover span, .home-page .home-text-link:hover span, .home-page .card-body a:hover span, .home-page .additional-card:hover .additional-arrow, .home-page .expertise-strip a:hover>span:last-of-type { transform: translate(3px,-2px); }
}
@keyframes home-intro { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width: 800px) { .home-page .home-reveal.will-reveal { transition-delay: 0ms; } }
@media (prefers-reduced-motion: reduce) {
  .home-page *, .home-page *::before, .home-page *::after { animation: none!important; transition: none!important; }
  .home-page .hero-photo { translate: none!important; }
  .home-page .home-reveal.will-reveal { opacity: 1; transform: none; }
  .home-page .expertise-card:hover, .home-page .additional-card:hover, .home-page .home-button:hover, .home-page .card-image img, .home-page #hmi .card-image img, .home-page #hmi:hover .card-image img { transform: none!important; }
  .home-page .home-button span, .home-page .home-text-link span, .home-page .card-body a span, .home-page .additional-arrow, .home-page .expertise-strip a>span:last-of-type { transform: none!important; }
}

@media (min-width: 801px) and (hover: hover) and (pointer: fine) { .home-page .hero-photo { top: -48px; height: calc(100% + 96px); } }

/* Компактная шапка, монограмма IA и футер главной. */
.home-page header { min-height: 65px; padding: 6px 0; }
.home-page .logo { display: inline-flex; align-items: center; gap: 13px; }
.home-page .brand-square { display: grid; place-items: center; width: 44px; height: 44px; flex-shrink: 0; background: #c7233c; color: #fff; font-size: 28px; font-weight: 750; letter-spacing: -1px; line-height: 1; }
.home-page .brand-wordmark { display: flex; flex-direction: column; gap: 3px; font-size: 16px; font-weight: 700; line-height: 1.15; letter-spacing: .6px; color: #fff; }
.home-page .brand-wordmark > span:last-child { color: #c7233c; }
.home-page footer { padding: 7px 0; }
.home-page a[href="mailto:mail@inautomation.ru"] { color: var(--home-light); text-decoration: none; transition: color .25s ease; }
.home-page a[href="mailto:mail@inautomation.ru"]:hover, .home-page a[href="mailto:mail@inautomation.ru"]:focus-visible { color: #c7233c; text-decoration: none; }
.home-page .expertise-strip a { transition: background .35s, border-color .35s; }
@media (max-width: 720px) {
  .home-page header { min-height: 0; padding: 5px 0 2px; gap: 4px; }
  .home-page .brand-square { width: 38px; height: 38px; font-size: 25px; }
  .home-page .brand-wordmark { font-size: 14px; gap: 2px; }
  .home-page nav li a { padding-top: 5px; padding-bottom: 5px; }
  .home-page footer { padding: 4px 0; }
  .home-page footer ul { gap: 4px; }
  .home-page footer li { line-height: 1.35; }
}

/* Векторные стрелки не зависят от emoji-шрифта устройства. */
.home-page .ui-arrow { display:inline-block; width:1em; height:1em; min-width:1em; flex-shrink:0; vertical-align:-.12em; color:inherit; overflow:visible; }

/* Единая сетка шапки и основного содержимого. */
.home-page { --site-gutter: 40px; --site-content-width: 1280px; }
.home-page header, .home-page .home-container {
  width: calc(100% - var(--site-gutter) * 2);
  max-width: var(--site-content-width);
  margin-left: auto;
  margin-right: auto;
}
.home-page header > nav { margin-left: auto; }
.home-page header > nav > ul { column-gap: 26px; }
.home-page header > nav > ul > li > a { padding-left: 0; padding-right: 0; }
@media (max-width: 800px) { .home-page { --site-gutter: 20px; } }
@media (max-width: 720px) {
  .home-page header > nav { width: 100%; margin-left: 0; }
  .home-page header > nav > ul { grid-template-columns: repeat(2,minmax(0,1fr)); column-gap: 20px; }
  .home-page header > nav > ul > li:nth-child(even) { text-align: right; }
}

.home-page .hero-location { color:#d8d8df; font-size:14px; line-height:1.6; margin:0 0 16px; }
.home-page .card-body li { padding-left:23px; }
.home-page .software-card { scroll-margin-top:24px; }
.services-page .service-mid-contact { display:flex; justify-content:space-between; align-items:center; gap:20px; padding-block:25px; border-bottom:1px solid var(--home-line); }
.services-page .service-mid-contact p { color:var(--home-muted); }
body.home-page.services-page .software-card:hover, body.home-page.services-page .network-service:hover, body.home-page.about-page .about-focus-card:hover { transform:none; background:#282730; border-color:#65525c; box-shadow:none; }
@media(max-width:760px) { .services-page .service-mid-contact { flex-direction:column; align-items:flex-start; gap:8px; } }

/* Опыт специалистов: факты и области компетенции. */
.home-page .experience-strip { padding:30px 0 36px; background:#191a22; border-bottom:1px solid var(--home-line); }
.home-page .experience-strip-heading { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-bottom:26px; }
.home-page .experience-strip-heading .home-text-link { font-size:13px; padding:4px 0; }
.home-page .experience-highlights { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:35px; }
.home-page .experience-highlights > div { border-left:2px solid var(--home-red); padding-left:20px; }
.home-page .experience-highlights strong { display:block; font-size:32px; font-weight:600; line-height:1.2; letter-spacing:-.6px; }
.home-page .experience-highlights p { color:var(--home-muted); font-size:14px; line-height:1.65; margin-top:10px; max-width:340px; }
.home-page .experience-detail { scroll-margin-top:24px; }
.home-page .experience-scale { display:grid; grid-template-columns:.8fr 1.2fr; align-items:center; gap:50px; padding:32px; background:#25242e; border-left:3px solid var(--home-red); margin-bottom:24px; }
.home-page .experience-scale strong { display:block; font-size:clamp(48px,6vw,76px); font-weight:600; line-height:1.1; letter-spacing:-2px; }
.home-page .experience-scale span { display:block; font-size:15px; color:var(--home-muted); margin-top:10px; }
.home-page .experience-scale p { color:#d8d8df; font-size:18px; line-height:1.8; max-width:650px; }
.home-page .experience-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.home-page .experience-card { padding:30px; border:1px solid var(--home-line); border-radius:4px; background:#24252e; }
.home-page .experience-card h3 { font-size:24px; line-height:1.3; margin:18px 0; }
.home-page .experience-card > p:not(.home-kicker) { color:var(--home-muted); line-height:1.8; }
.home-page .experience-industries { padding-top:34px; }
.home-page .experience-industries h3 { font-size:21px; margin:0 0 20px; }
.home-page .experience-industries ul { list-style:none; display:flex; flex-wrap:wrap; gap:10px; margin:0; padding:0; }
.home-page .experience-industries li { padding:9px 14px; border:1px solid #504852; border-radius:3px; color:#d8d8df; font-size:14px; }
@media(max-width:800px) { .home-page .experience-highlights { gap:20px; } .home-page .experience-highlights strong { font-size:27px; } .home-page .experience-scale { gap:25px; } }
@media(max-width:600px) { .home-page .experience-strip-heading { align-items:flex-start; flex-direction:column; gap:10px; } .home-page .experience-highlights,.home-page .experience-grid,.home-page .experience-scale { grid-template-columns:1fr; } .home-page .experience-highlights p { max-width:none; } .home-page .experience-card,.home-page .experience-scale { padding:24px; } .home-page .experience-scale p { font-size:16px; } }

/* Общая типографика и компактная мобильная навигация. */
body.home-page { font-family:"IA Sans",Arial,sans-serif; }
.home-page button { font-family:inherit; }
.home-page .brand-square { padding:0; background:none; }
.home-page .brand-square svg { display:block; width:100%; height:100%; }
.home-page .brand-wordmark { font-size:14px; letter-spacing:.35px; }
.home-page .hero-location { display:flex; flex-wrap:wrap; gap:4px 18px; }
.home-page .menu-toggle { display:none; }
.home-page header > nav[hidden] { display:none!important; }
@media(max-width:800px) {
  .home-page header { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; min-height:64px; padding:10px 0; gap:0; }
  .home-page .logo { gap:10px; }
  .home-page .brand-square { width:38px; height:38px; }
  .home-page .brand-wordmark { font-size:12px; line-height:1.2; gap:2px; }
  .home-page .menu-toggle:not([hidden]) { display:inline-flex; align-items:center; justify-content:center; gap:10px; margin-left:auto; min-height:44px; padding:9px 0 9px 12px; border:0; background:transparent; color:var(--home-light); font-size:13px; cursor:pointer; }
  .home-page .menu-glyph { position:relative; display:block; width:22px; height:20px; }
  .home-page .menu-glyph i { position:absolute; left:0; width:22px; height:2px; background:currentColor; top:6px; transition:transform .2s,top .2s; }
  .home-page .menu-glyph i:last-child { top:13px; }
  .home-page .menu-toggle[aria-expanded="true"] .menu-glyph i { top:9px; transform:rotate(45deg); }
  .home-page .menu-toggle[aria-expanded="true"] .menu-glyph i:last-child { transform:rotate(-45deg); }
  .home-page header > nav { flex-basis:100%; width:100%; margin:8px 0 0; padding:8px 0 0; border-top:1px solid var(--home-line); }
  .home-page header > nav > ul { display:flex; flex-direction:column; gap:2px; width:100%; }
  .home-page header > nav > ul > li, .home-page header > nav > ul > li:nth-child(even) { display:block; text-align:left; width:100%; }
  .home-page header > nav > ul > li > a { display:block; width:100%; padding:12px 14px; border:0; border-radius:3px; font-size:14px; line-height:1.5; }
  .home-page header > nav > ul > li.active_page > a { color:#f5f5f7; background:#302630; box-shadow:inset 3px 0 #c7233c; }
  .home-page header > nav > ul > li > a:hover { color:#fff; background:#302630; }
  .home-page header.menu-enhanced > nav:not([hidden]) { animation:mobile-menu-in .2s ease-out; }
  .home-page .home-hero { min-height:0; }
  .home-page .hero-content { padding-top:36px; padding-bottom:34px; }
  .home-page .hero-content h1 { font-size:clamp(28px,7.2vw,48px); margin-top:22px; margin-bottom:20px; letter-spacing:-1px; }
  .home-page .hero-title-line { font-size:.63em; line-height:1.4; margin-top:14px; }
  .home-page .hero-location { display:flex; flex-direction:column; gap:3px; font-size:13px; margin-bottom:18px; }
  .home-page .hero-lead { font-size:16px; line-height:1.7; }
  .home-page .hero-lead br { display:none; }
  .home-page .hero-actions { margin-top:24px; gap:18px; }
  .home-page .hero-base { position:static; margin-bottom:22px; }
  .home-page .hero-base p { max-width:none; font-size:10px; letter-spacing:1px; }
}
@keyframes mobile-menu-in { from { opacity:0; transform:translateY(-6px); } to { opacity:1; transform:none; } }
@media(prefers-reduced-motion:reduce) { .home-page header.menu-enhanced > nav:not([hidden]) { animation:none; } }

.home-skip{position:fixed!important;top:12px;left:12px;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;z-index:100}.home-skip:focus-visible{width:auto;height:auto;padding:12px 18px;clip-path:none;overflow:visible;background:#fff;color:#16171d;border:2px solid #c7233c}
.home-page .hero-lead>p{margin:0 0 8px}.home-page .hero-service-list{margin:0;padding:0;list-style:none}.home-page .hero-service-list li{position:relative;padding:2px 0 2px 18px;font-size:inherit;line-height:inherit}.home-page .hero-service-list li::before{content:"";position:absolute;left:0;top:.85em;width:5px;height:5px;background:var(--home-red)}
.home-page .hero-location{display:flex;flex-direction:column;align-items:flex-start;gap:3px}.home-page .hero-location>span{display:block}.home-page .hero-location>span+span{font-size:.93em;color:var(--home-muted)}

.home-page .home-hero{box-sizing:border-box;min-height:calc(100vh - var(--hero-top,77px));min-height:calc(100dvh - var(--hero-top,77px))}


.home-page .brand-wordmark{font-size:16px;font-weight:800;line-height:1.12;letter-spacing:.4px;-webkit-text-stroke:.15px currentColor}
.home-page header nav li a{font-weight:700}
@media(min-width:801px){
 .home-page header nav li a{font-size:15px;line-height:20px;padding-top:3px;padding-bottom:3px}
}
@media(max-width:800px){
 .home-page .brand-wordmark{font-size:14px;line-height:1.15;gap:2px}
 .home-page .menu-toggle:not([hidden]){font-size:14px;font-weight:700}
 .home-page header nav li a{font-size:15px}
}


.home-page .service-directions{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.home-page .service-directions .card-image{height:180px}
.home-page .service-directions .card-image img{object-position:center}
.home-page .service-directions .card-body{padding:22px}
.home-page .service-directions .card-body h3{font-size:21px;min-height:82px}
.home-page .service-directions .card-body p{margin-bottom:24px;font-size:15px}
@media(max-width:1100px){.home-page .service-directions{grid-template-columns:repeat(2,minmax(0,1fr))}.home-page .service-directions .card-body h3{min-height:0}}
@media(max-width:600px){.home-page .service-directions{grid-template-columns:1fr}.home-page .service-directions .card-image{height:200px}}

.home-page .service-directions .card-body h3{min-height:0}

.home-page .home-hero{justify-content:flex-start}
.home-page .hero-content{flex:1;display:flex;flex-direction:column;justify-content:center;padding-top:30px;padding-bottom:32px}
.home-page .hero-experience{flex:none;margin-top:auto;padding:24px 0 28px;border-top:1px solid rgba(255,255,255,.22)}
.home-page .hero-experience .experience-highlights{gap:30px}
.home-page .hero-experience .experience-highlights strong{font-size:30px}
.home-page .hero-experience .experience-highlights p{font-size:13px;line-height:1.5;color:#d8d8df;margin-bottom:0}
.home-page .service-directions .card-image{height:210px}
.home-page .service-directions .card-image::after{background:linear-gradient(0deg,rgba(10,10,14,.94),rgba(10,10,14,.12) 75%)}
.home-page .service-directions .service-image-title{position:absolute;z-index:1;left:20px;right:16px;bottom:18px;margin:0;color:#fff;font-size:23px;font-weight:700;line-height:1.15;letter-spacing:.2px;text-transform:uppercase;overflow-wrap:normal}
@media(max-width:800px){
 .home-page .hero-content{padding-top:24px;padding-bottom:28px}
 .home-page .hero-experience{padding:20px 0 24px}
 .home-page .hero-experience .experience-highlights{gap:16px}
 .home-page .hero-experience .experience-highlights strong{font-size:24px}
}
@media(max-width:600px){
 .home-page .hero-experience .experience-highlights{grid-template-columns:1fr;gap:14px}
 .home-page .hero-experience .experience-highlights>div{display:grid;grid-template-columns:108px 1fr;gap:12px;padding-left:12px;align-items:start}
 .home-page .hero-experience .experience-highlights p{margin-top:0;font-size:12px}
 .home-page .hero-experience .experience-highlights strong{font-size:21px}
 .home-page .service-directions .card-image{height:220px}
}


.home-page .service-directions .card-image{container-type:inline-size}
.home-page .service-directions .service-image-title{left:18px;right:18px;bottom:18px;font-size:15px;font-size:clamp(13px,5.2cqw,18px);line-height:1.25;letter-spacing:0;font-weight:700;white-space:normal;overflow-wrap:anywhere;word-break:normal;max-width:calc(100% - 36px)}


.home-page .section-number{color:var(--home-red)}
.home-page .service-directions>a.expertise-card{color:inherit;text-decoration:none;cursor:pointer}
.home-page .service-directions .card-more{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:auto;padding-top:12px;color:var(--home-red);font-size:14px;font-weight:700;opacity:0;transform:translateY(5px);transition:opacity .2s ease,transform .2s ease}
.home-page .service-directions .card-more>span{font-size:23px;line-height:1}
.home-page .service-directions>a.expertise-card:hover .card-more,.home-page .service-directions>a.expertise-card:focus-visible .card-more{opacity:1;transform:translateY(0)}
.home-page .service-directions>a.expertise-card:focus-visible{outline:2px solid var(--home-red);outline-offset:4px}
@media(prefers-reduced-motion:reduce){.home-page .service-directions .card-more{transition:none;transform:none}}


.home-page .service-directions .service-image-title,.home-page .engineering-photo>span{font-family:inherit;font-size:12px;font-weight:400;line-height:1.6;letter-spacing:1.7px;text-transform:uppercase}
.home-page .service-directions .service-image-title{left:22px;right:22px;bottom:22px;max-width:calc(100% - 44px)}
.home-page #software .card-image img{object-fit:cover;object-position:center}
.home-page .engineering-section{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:60px;row-gap:32px}
.home-page .engineering-heading{grid-column:1/-1;min-width:0}
.home-page .engineering-heading .engineering-slogan{font-size:clamp(24px,2.65vw,38px);letter-spacing:-.8px;white-space:nowrap}
.home-page .engineering-copy{grid-column:1;min-width:0}
.home-page .engineering-photo{grid-column:2;min-height:480px}
.home-page .engineering-copy>p:first-child{margin-top:0}
@media(max-width:900px){
 .home-page .engineering-section{grid-template-columns:minmax(0,1fr);gap:28px}
 .home-page .engineering-copy,.home-page .engineering-photo{grid-column:1}
 .home-page .engineering-heading .engineering-slogan{white-space:normal;font-size:clamp(25px,4.5vw,34px)}
 .home-page .engineering-photo{min-height:400px}
}


.home-page .hero-content .hero-location{margin-top:20px;margin-bottom:0}
.home-page .engineering-photo{grid-column:1;grid-row:2}
.home-page .engineering-copy{grid-column:2;grid-row:2}
@media(max-width:900px){
 .home-page .engineering-photo{grid-column:1;grid-row:2}
 .home-page .engineering-copy{grid-column:1;grid-row:3}
}

/* Shared publication update: let task copy use its full column. */
.home-page .task-intro>p:last-child,
.home-page .task-panel h3,
.home-page .task-panel p{max-width:none}
.home-page .task-intro,.home-page .task-content{min-width:0}
@media(min-width:901px){
 .home-page .task-layout{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:48px}
}

/* Match the header underline spacing in the task controls. */
.home-page .task-tabs button{line-height:20px;padding-top:3px;padding-bottom:3px}
.home-page .task-panel .home-text-link{line-height:20px;padding-top:3px;padding-bottom:3px}
.home-page .task-panel .home-text-link .ui-arrow{width:20px;height:20px}

/* All task panels share a grid cell; the tallest sets its height. */
.home-page .task-content.is-enhanced{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1fr;align-content:start}
.home-page .task-content.is-enhanced .task-tabs{grid-column:1;grid-row:1;align-self:start}
.home-page .task-content.is-enhanced .task-panel{grid-column:1;grid-row:2;min-width:0;align-self:start}
.home-page .task-content.is-enhanced .task-panel[hidden]{display:block;visibility:hidden;pointer-events:none}

.home-page .home-kicker .section-number{color:var(--home-red);font:inherit;letter-spacing:inherit}
.home-page .channel-top .section-number,.home-page .network-service>span .section-number{color:var(--home-red);font:inherit}
