*{box-sizing:border-box}
:root{--olive:#6F7650;--olive-dark:#4F5638;--olive-light:#858D63;--dark:#171A20;--text:#17191d;--muted:#7c8189;--bg:#f7f7f5}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Arial,sans-serif}
a{text-decoration:none;color:inherit}
.header{height:70px;position:fixed;z-index:100;inset:0 0 auto;background:rgba(23,26,32,.97);color:#fff;display:flex;align-items:center;padding:0 max(24px,calc((100% - 1240px)/2));gap:42px}
.brand {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #fff;
    text-decoration: none;
    font-size: 9px;
    line-height: 1.25;
    letter-spacing: .1em;
}
.brand img {
    width: 50px;
    height: 50px;
    object-fit: contain;
    display: block;
}
.header nav{height:100%;display:flex;align-items:center;gap:25px}
.header nav a{height:100%;display:flex;align-items:center;position:relative;font-size:10px;font-weight:700;opacity:.7}
.header nav a.active,.header nav a:hover{opacity:1}
.header nav>a:after,.services-dropdown>.services-link:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--olive);transform:scaleX(0);transition:transform .2s ease}
.header nav>a:hover:after,.services-dropdown:hover>.services-link:after{transform:scaleX(1)}
.header-right{margin-left:auto;display:flex;align-items:center;gap:18px}
.header-btn{background:var(--olive);padding:12px 12px;font-size:8px;font-weight:1000}
.burger{display:none;background:none;border:0;color:#fff;font-size:18px}

.header-phones {

  display: flex;

  flex-direction: row;

  align-items: center;

  gap: 15px;

}

.header-phones a {

  display: block;

  font-size: 11px;

  line-height: 1.2;

  font-weight: 700;

  white-space: nowrap;

}

/* WhatsApp buttons */
.header-btn.whatsapp-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  padding:10px 13px;
  background:transparent;
  color:#fff;
  border-radius:6px;
}

.header-btn.whatsapp-btn img,
.whatsapp-cta svg{
  width:34px;
  height:34px;
  object-fit:contain;
  flex:0 0 auto;
}

.whatsapp-cta{
  display:inline-flex;
  align-items:center;
  gap:9px;
}

.header-btn.whatsapp-btn:hover,
.whatsapp-cta:hover{
  filter:brightness(1.06);
}

/* Телефоны в шапке */
.header-right{
  margin-left:auto;
  display:flex;
  align-items:center;
  gap:18px;
  flex-shrink:0;
}

.header-phones{
  display:flex !important;
  flex-direction:row !important;
  align-items:center;
  gap:15px;
  width:max-content;
  white-space:nowrap;
  flex-shrink:0;
}

.header-phones a{
  display:inline-block !important;
  width:auto;
  margin:0;
  font-size:11px;
  line-height:1.2;
  font-weight:700;
  white-space:nowrap;
}

/* Выпадающее меню услуг */
.services-dropdown{
  height:100%;
  position:relative;
  display:flex;
  align-items:center;
}

.services-dropdown>.services-link{
  gap:5px;
}

.services-arrow{
  width:10px;
  height:10px;
  flex:0 0 10px;
  transition:transform .2s ease;
}

.services-dropdown:hover .services-arrow,
.services-dropdown.open .services-arrow{
  transform:rotate(180deg);
}

.services-menu{
  position:absolute;
  top:calc(100% - 1px);
  left:50%;
  transform:translateX(-50%) translateY(-8px);
  width:310px;
  padding:8px 0;
  background:rgba(23,26,32,.98);
  border-top:2px solid var(--olive);
  box-shadow:0 14px 30px rgba(0,0,0,.25);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .2s ease,transform .2s ease,visibility .2s ease;
}

.services-dropdown:hover .services-menu,
.services-dropdown.open .services-menu{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translateX(-50%) translateY(0);
}

.services-menu a{
  display:block;
  height:auto!important;
  padding:12px 18px;
  font-size:15px!important;
  line-height:1.4;
  font-weight:600!important;
  opacity:.78!important;
  white-space:normal;
}

.services-menu a:hover{
  background:rgba(111,118,80,.18);
  opacity:1!important;
}

.mobile-menu{
  display:none;
}

.hero{height:650px;margin-top:70px;position:relative;overflow:hidden;color:#fff}
.hero-bg{position:absolute;inset:0;background:url(images/site-main-hero-v4.webp) center/cover}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(17,21,22,.82),rgba(17,21,22,.38) 38%,rgba(17,21,22,.12) 58%,transparent 72%)}
.hero-content{position:relative;z-index:2;width:min(1240px,calc(100% - 48px));margin:auto;padding-top:185px}
.eyebrow{font-size:9px;letter-spacing:.17em;font-weight:700;opacity:.7}
.hero h1{font-size:clamp(52px,7vw,90px);line-height:.97;letter-spacing:-.055em;margin:17px 0}
.hero h1 em{font-style:normal;color:var(--olive-light)}
.hero p{font-size:14px;line-height:1.8;max-width:530px;color:#d7d9dc}
.hero-actions{display:flex;gap:12px;margin-top:32px}
.btn.hero-offer{width:min(400px,100%);justify-content:center;border:0;color:#fff;cursor:pointer;font-family:inherit;font-size:16px;font-weight:400;transition:background-color .2s ease}
.hero-offer:hover{background-color:var(--olive-dark)}
.btn{display:inline-flex;align-items:center;gap:25px;padding:16px 20px;font-size:9px;font-weight:800;letter-spacing:.04em}
.btn span{font-size:17px}.primary{background:var(--olive)}.outline{border:1px solid rgba(255,255,255,.45)}
.offer-modal{width:min(620px,calc(100% - 32px));border:0;padding:0;background:#f7f7f5;color:var(--text);box-shadow:0 24px 70px rgba(0,0,0,.35)}
.offer-modal::backdrop{background:rgba(10,13,17,.72);backdrop-filter:blur(3px)}
.offer-modal__header{display:flex;justify-content:space-between;gap:24px;padding:36px 40px 26px;background:var(--dark);color:#fff}
.offer-modal .section-label{display:block;margin:0 0 12px;color:#aab08e;font-size:9px}
.offer-modal h2{max-width:420px;margin:0;font-size:30px;line-height:1.05;letter-spacing:-.04em}
.offer-modal__close{width:34px;height:34px;flex:0 0 34px;padding:0;border:1px solid rgba(255,255,255,.4);background:transparent;color:#fff;cursor:pointer;font-size:26px;font-weight:300;line-height:1}
.offer-form{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:32px 40px 40px}
.offer-form label{display:flex;flex-direction:column;gap:8px;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.offer-form label:last-of-type{grid-column:1/-1}
.offer-form input,.offer-form textarea{width:100%;border:1px solid #d5d7d0;border-radius:0;background:#fff;color:var(--text);font:400 15px/1.4 Inter,Arial,sans-serif;letter-spacing:0;padding:12px 14px;resize:vertical}
.offer-form input:focus,.offer-form textarea:focus{outline:2px solid var(--olive);outline-offset:1px}
.offer-form__honeypot{display:none}
.offer-form__submit{grid-column:1/-1;display:flex;justify-content:center;align-items:center;gap:20px;padding:17px 20px;border:0;background:var(--olive);color:#fff;cursor:pointer;font:500 14px Inter,Arial,sans-serif;transition:background-color .2s ease}
.offer-form__submit:hover{background:var(--olive-dark)}
.offer-form__submit:disabled{cursor:wait;opacity:.7}
.offer-form__status{grid-column:1/-1;min-height:18px;margin:0;color:#9f3030;font-size:12px;line-height:1.4}
.thanks-modal{width:min(500px,calc(100% - 32px));border:0;padding:42px;background:var(--dark);color:#fff;box-shadow:0 24px 70px rgba(0,0,0,.35)}
.thanks-modal::backdrop{background:rgba(10,13,17,.72);backdrop-filter:blur(3px)}
.thanks-modal .section-label{display:block;margin:0 0 16px;color:#aab08e;font-size:9px}
.thanks-modal h2{margin:0;max-width:360px;font-size:32px;line-height:1.08;letter-spacing:-.04em}
.thanks-modal__close{position:absolute;top:16px;right:16px;width:34px;height:34px;border:1px solid rgba(255,255,255,.4);background:transparent;color:#fff;cursor:pointer;font-size:26px;font-weight:300;line-height:1}

/* Страница услуги: неразрушающий контроль */
.service-page{padding-top:70px;overflow-x:clip}
.service-page-hero{position:relative;min-height:580px;color:#fff;background:center/cover no-repeat}
.nk-page-hero{background-image:url(images/ndt-hero-v2.webp)}
.service-page-hero__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(17,21,22,.9),rgba(17,21,22,.55) 55%,rgba(17,21,22,.2))}
.service-page-hero__content{position:relative;z-index:1;width:min(1240px,calc(100% - 48px));margin:auto;padding:155px 0 56px}
.service-page-hero h1{margin:17px 0;font-size:clamp(52px,7vw,88px);line-height:.96;letter-spacing:-.055em}
.service-page[data-service="cranes"] .service-page-hero h1{font-size:clamp(48px,5.5vw,70px)}
.service-page-hero h1 em,.service-page-intro h2 em,.service-page-contact h2 em{font-style:normal;color:var(--olive-light)}
.service-page-hero p{max-width:520px;color:#d7d9dc;font-size:14px;line-height:1.8}
.service-page-hero p.service-page-hero__description--wide{max-width:850px}
.service-page-hero__button{margin-top:28px}
.service-page-section{width:min(1240px,calc(100% - 48px));margin:auto;padding:90px 0}
.service-page-intro{display:grid;grid-template-columns:1fr 1fr;gap:100px}
.service-page-intro h2,.service-page-contact h2{margin:0;font-size:54px;line-height:1.02;letter-spacing:-.05em}
.service-page-intro p{margin:0 0 18px;color:#777d85;font-size:14px;line-height:1.9}
.service-regulations{padding:20px 0 30px}.service-regulations h2{margin:0;font-size:54px;line-height:1.02;letter-spacing:-.05em}.service-regulations h2 em{font-style:normal;color:var(--olive-light)}.service-regulations p{max-width:850px;margin:0;color:#777d85;font-size:14px;line-height:1.9}.service-regulations a{display:inline-flex;align-items:center;gap:14px;margin-top:25px;padding-bottom:5px;border-bottom:1px solid var(--olive);color:var(--olive-dark);font-size:13px;font-weight:700;line-height:1.5}.service-regulations a span{font-size:17px}
.service-page[data-service="cranes"] .nk-methods{padding-top:70px}.service-page[data-service="cranes"] .nk-methods>.section-label{display:block;margin-bottom:3px;text-align:left}.service-page[data-service="cranes"] .nk-methods__grid{grid-template-columns:repeat(3,1fr);max-width:none;margin:0}.service-railways{padding-top:0;padding-bottom:0}.service-railways__content{position:relative;left:50%;width:100vw;overflow:hidden;padding:52px max(24px,calc((100vw - 1240px) / 2));transform:translateX(-50%);background:url(images/crane-rails-inspection.webp) center/cover;color:#fff}.service-railways__content:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(17,21,22,.9),rgba(17,21,22,.72) 58%,rgba(17,21,22,.45))}.service-railways__content>*{position:relative;z-index:1}.service-railways .section-label{color:#c7c9c2}.service-railways h2{margin:0;font-size:54px;line-height:1.02;letter-spacing:-.05em;color:#fff}.service-railways h2 em{font-style:normal;color:#aab08e}.service-railways p{max-width:850px;margin:22px 0 0;color:#eef0ea;font-size:14px;line-height:1.9}
.service-page[data-service="repair"] .nk-methods__grid{grid-template-columns:repeat(4,1fr);max-width:none;margin:0}
.service-page[data-service="repair"] .nk-methods{padding-bottom:100px}
.service-extra-section{width:100%;padding:0}.service-extra-section__content{position:relative;left:50%;width:100vw;overflow:hidden;transform:translateX(-50%);background:url(images/pressure-vessel-inspection.webp) center/cover;color:#fff}.service-extra-section__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(17,21,22,.92),rgba(17,21,22,.7) 60%,rgba(17,21,22,.35))}.service-extra-section__inner{position:relative;z-index:1;width:min(1240px,calc(100% - 48px));margin:auto;padding:72px 0}.service-extra-section h2{color:#fff}.service-extra-section h2 em{color:var(--olive-light)}.service-extra-section p{color:#eef0ea}
.vessel-frequency{padding-top:76px}.vessel-frequency>h2{margin:0;color:#17191a;font-size:54px;font-weight:800;line-height:1.02;letter-spacing:-.05em}.vessel-frequency>h2 em{font-style:normal;color:var(--olive-light)}.vessel-frequency__lead{max-width:960px;margin:28px 0 32px;color:#555c64;font-size:14px;line-height:1.9}.vessel-frequency__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid #d8dad5;border-left:1px solid #d8dad5}.vessel-frequency__item{min-height:245px;padding:28px 24px;border-right:1px solid #d8dad5;border-bottom:1px solid #d8dad5;background:#fff}.vessel-frequency__item>span{display:block;margin-bottom:44px;color:var(--olive);font-size:11px;letter-spacing:.12em;line-height:1}.vessel-frequency__item h3{margin:0 0 14px;font-size:19px;line-height:1.16;letter-spacing:-.03em}.vessel-frequency__item p{margin:0;color:#777d85;font-size:12px;line-height:1.7}
.boiler-schedule{position:relative;left:50%;width:100vw;margin:0;padding:72px max(24px,calc((100vw - 1240px) / 2));overflow:hidden;transform:translateX(-50%);background:url(images/boiler-inspection.webp) center/cover}.boiler-schedule:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(17,21,22,.94),rgba(17,21,22,.78) 62%,rgba(17,21,22,.5))}.boiler-schedule>*{position:relative;z-index:1;width:min(1240px,100%);margin-left:0;margin-right:0}.boiler-schedule.vessel-frequency>h2{color:#fff;font-size:30px;line-height:1.15;letter-spacing:-.03em}.boiler-schedule.vessel-frequency>h2 em{color:inherit}.boiler-schedule .vessel-frequency__lead{max-width:1240px;color:#eef0ea}.boiler-schedule .vessel-frequency__grid{margin-top:38px}
.pipeline-methods .vessel-frequency__grid{grid-template-columns:repeat(3,1fr)}
.pipeline-methods.vessel-frequency>h2{font-weight:600}.pipeline-methods.vessel-frequency>h2 em{font-style:normal}
.pipeline-methods .vessel-frequency__grid{gap:0}.pipeline-methods .vessel-frequency__item{position:relative;min-height:410px;aspect-ratio:1;padding-top:150px;overflow:hidden;color:#fff;background:center/cover no-repeat}.pipeline-methods .vessel-frequency__item:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,18,18,.36),rgba(15,18,18,.88))}.pipeline-methods .vessel-frequency__item>*{position:relative;z-index:1}.pipeline-methods .vessel-frequency__item:nth-child(1){background-image:url(images/pipeline-ultrasonic.webp)}.pipeline-methods .vessel-frequency__item:nth-child(2){background-image:url(images/pipeline-visual.webp)}.pipeline-methods .vessel-frequency__item:nth-child(3){background-image:url(images/pipeline-magnetic.webp)}.pipeline-methods .vessel-frequency__item>span{position:absolute;top:28px;left:24px;margin:0;color:#d8dda9}.pipeline-methods .vessel-frequency__item h3{min-height:44px;margin:0 0 14px;color:var(--olive-light)}.pipeline-methods .vessel-frequency__item p{color:#eef0ea}

/* Unified numbered cards */
.service-card,.nk-methods__grid article,.vessel-frequency__item{position:relative}
.service-card .number,.nk-methods__grid article>strong,.nk-methods__grid article>span,.vessel-frequency__item>span{position:absolute;top:28px;right:24px;left:auto;margin:0;color:var(--olive);font-size:11px;font-weight:700;letter-spacing:.12em;line-height:1}
.service-card .number{top:40px;right:40px}
.service-card h3,.nk-methods__grid h3,.vessel-frequency__item h3{font-weight:700;text-align:center}
.nk-methods__grid h3,.vessel-frequency__item h3{margin-top:72px}
.pipeline-methods .vessel-frequency__item>span{top:28px;right:24px;left:auto;color:#d8dda9}
.pipeline-methods .vessel-frequency__item h3{margin:0 0 14px;text-align:center;font-weight:700}

.nk-intro{padding:100px 0}.service-page-section.nk-methods{padding-top:15px;padding-bottom:45px}.nk-ultrasound{padding-top:45px}.nk-methods__grid{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid #d8dad5;border-left:1px solid #d8dad5}
.nk-methods__grid article{min-height:245px;padding:28px 24px;border-right:1px solid #d8dad5;border-bottom:1px solid #d8dad5;background:#fff}
.nk-methods__grid strong{display:block;color:var(--olive);font-size:11px;letter-spacing:.12em}.nk-methods__grid h3{font-size:19px;line-height:1.16;margin:72px 0 14px;letter-spacing:-.03em}.nk-methods__grid p{margin:0;color:#777d85;font-size:12px;line-height:1.7}
.nk-standards{padding-top:30px}.nk-standards__content{display:grid;grid-template-columns:1fr 1fr;gap:100px}.nk-standards h2{margin:0;font-size:42px;line-height:1.05;letter-spacing:-.045em}.nk-standards h2 em{font-style:normal;color:var(--olive)}.nk-standards ul{margin:0;padding:0;list-style:none;border-top:1px solid #d8dad5}.nk-standards li{border-bottom:1px solid #d8dad5}.nk-standards a{display:flex;justify-content:space-between;gap:18px;padding:18px 0;color:#4f5638;font-size:13px;line-height:1.55;transition:color .2s ease}.nk-standards a:hover{color:var(--olive-light)}.nk-standards a span{flex:0 0 auto;font-size:17px}
.nk-ultrasound__layout{position:relative;left:50%;width:100vw;display:grid;grid-template-columns:1fr 1fr;gap:100px;overflow:hidden;padding:52px max(24px,calc((100vw - 1240px) / 2));transform:translateX(-50%);background:url(images/ultrasonic-control.webp) center/cover;color:#fff}.nk-ultrasound__layout:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(17,21,22,.88),rgba(17,21,22,.7) 58%,rgba(17,21,22,.52))}.nk-ultrasound__layout>div{position:relative;z-index:1}.nk-ultrasound h2{margin:0;font-size:42px;line-height:1.05;letter-spacing:-.045em}.nk-ultrasound h2 em{font-style:normal;color:#aab08e}.nk-ultrasound p{margin:0 0 18px;color:#eef0ea;font-size:14px;line-height:1.9}
.service-page-contact{background:#20251f;color:#fff}.service-page-contact__inner{display:flex;justify-content:space-between;align-items:end;gap:35px}.service-page-contact .section-label{margin-bottom:28px}.service-page-contact .service-page-hero__button{width:100%;margin:0;white-space:nowrap}.service-page-contact__actions{display:flex;width:fit-content;max-width:100%;flex-direction:column;align-items:flex-end;gap:18px}.service-page-contact__details{display:flex;width:100%;align-items:center;justify-content:flex-start;gap:10px;color:#d8dbd3;font-size:11px}.service-page-contact__details a{color:inherit}.service-page-contact__details>div{display:flex;gap:6px}.service-page-contact__whatsapp{display:inline-flex;align-items:center;gap:7px}.service-page-contact__whatsapp img{width:18px;height:18px;object-fit:contain}
.service-page-contact__details>div a{white-space:nowrap}

.about-page-hero{background-image:url(images/about-hero-v2.webp)}
.about-page-spheres{padding-top:20px}.about-page-spheres__grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #d8dad5;border-left:1px solid #d8dad5}.about-page-spheres article{position:relative;min-height:230px;padding:28px 24px;border-right:1px solid #d8dad5;border-bottom:1px solid #d8dad5;background:#fff}.about-page-spheres strong{position:absolute;top:28px;right:24px;left:auto;margin:0;color:var(--olive);font-size:11px;font-weight:700;letter-spacing:.12em;line-height:1}.about-page-spheres h3{margin:72px 0 14px;font-size:19px;font-weight:700;line-height:1.16;letter-spacing:-.03em;text-align:center}.about-page-spheres p{margin:0;color:#777d85;font-size:12px;line-height:1.7}
.about-page-values{background:var(--dark);color:#fff}.about-page-values__grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.2);border-left:1px solid rgba(255,255,255,.2)}
.about-page-values article{position:relative;min-height:245px;padding:28px 25px;border-right:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2)}.about-page-values strong{position:absolute;top:28px;right:24px;left:auto;margin:0;color:var(--olive-light);font-size:11px;font-weight:700;letter-spacing:.12em;line-height:1}.about-page-values h3{margin:72px 0 14px;font-size:21px;font-weight:700;letter-spacing:-.03em;text-align:center}.about-page-values p{margin:0;color:#c7c9c4;font-size:12px;line-height:1.7}
.about-page{overflow-x:clip}.about-page-image{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:80px;padding-top:0;padding-bottom:0}.about-page-image>div{padding:90px 0}.about-page-image h2{margin:0;font-size:54px;line-height:1.02;letter-spacing:-.05em}.about-page-image h2 em{font-style:normal;color:var(--olive)}.about-page-image p{max-width:380px;color:#777d85;font-size:14px;line-height:1.8}.about-page-image img{--corner-cut:120px;--top-cut:38px;width:calc(100% + max(24px,calc((100vw - 1240px) / 2)));height:390px;object-fit:cover;clip-path:polygon(var(--top-cut) 0,100% 0,100% 100%,var(--corner-cut) 100%,0 calc(100% - var(--corner-cut)),0 var(--top-cut))}
.hero-meta{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);z-index:2;width:min(1240px,calc(100% - 48px));display:flex;justify-content:space-between;font-size:8px;letter-spacing:.12em;opacity:.55}

.section{width:min(1240px,calc(100% - 48px));margin:auto;padding:35px 0}
.section-label{font-size:9px;font-weight:800;letter-spacing:.16em;color:var(--olive);margin-bottom:48px}
.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}
.intro-title h2 {font-size:54px;line-height:1.02;letter-spacing:-.05em;margin:0}
.intro-title em,.services h2 em,.contacts h2 em{font-style:normal;color:var(--olive)}
.intro-copy{max-width:500px;padding-top:7px}
.intro-copy p{font-size:14px;line-height:1.9;color:#777d85;margin:0 0 18px}
.safety-image{height:470px;margin-top:75px;position:relative;overflow:hidden}
.safety-image img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.75)}
.safety-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,23,22,.76),rgba(20,23,22,.18))}
.safety-caption{position:absolute;left:55px;bottom:50px;color:white}.safety-caption span{display:block;font-size:9px;letter-spacing:.15em;color:#c7c9c2;margin-bottom:13px}.safety-caption strong{font-size:30px;line-height:1.15;letter-spacing:-.03em}

.services{width:100%;max-width:none;background:#fff;padding-left:max(24px,calc((100% - 1240px)/2));padding-right:max(24px,calc((100% - 1240px)/2))}
.services-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:65px}
.services h2{font-size:55px;line-height:1;letter-spacing:-.05em;margin:0}
.services-head>p{width:320px;color:#858a91;font-size:11px;line-height:1.8;margin:0}
.service-list{display:flex;flex-direction:column;gap:40px}
.service-row{display:flex;align-items:center;min-height:350px}
.service-row.reverse{flex-direction:row-reverse}
.service-photo{width:57%;height:350px;overflow:hidden;background:#ddd}
.service-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .65s ease}
.service-row:hover .service-photo img{transform:scale(1.035)}
.service-card{position:relative;z-index:2;width:48%;min-height:325px;margin-left:-5%;padding:54px 58px 48px;background:rgba(255,255,255,.98);box-shadow:0 15px 45px rgba(21,26,27,.1)}
.service-row.reverse .service-card{margin-left:0;margin-right:-5%}
.service-card .number{position:absolute;right:40px;top:40px;color:var(--olive);font-size:11px;font-weight:700;letter-spacing:.12em}

.service-card h3{font-size:28px;font-weight:700;line-height:1.15;letter-spacing:-.035em;margin:0 0 22px;text-align:center}
.service-card p{max-width:470px;color:#777d82;font-size:12px;line-height:1.8;margin:0 0 28px}
.service-card a{font-size:10px;font-weight:800;display:inline-flex;gap:14px;align-items:center}.service-card a b{font-size:17px;font-weight:400;color:var(--olive)}

.advantages-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}
.adv-list{border-top:1px solid #dedfda}
.adv-list article{display:grid;grid-template-columns:42px 1fr;gap:15px;padding:25px 0;border-bottom:1px solid #dedfda}
.adv-list strong{font-size:9px;color:var(--olive)}
.adv-list h3{font-size:16px;margin:0 0 8px}.adv-list p{font-size:11px;line-height:1.7;color:#858a90;margin:0}

.cta{background:var(--dark);color:#fff;padding:82px max(24px,calc((100% - 1240px)/2));display:flex;align-items:center;justify-content:space-between;gap:30px}
.cta h2{font-size:40px;line-height:1.05;letter-spacing:-.04em;margin:15px 0 0}.olive{background:var(--olive);white-space:nowrap}

.contacts{width:100%;max-width:none;background:#20241f;color:#fff;padding-left:max(24px,calc((100% - 1240px)/2));padding-right:max(24px,calc((100% - 1240px)/2))}
.section-label.light{color:var(--olive-light)}
.contacts-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}
.contacts h2{font-size:62px;line-height:.98;letter-spacing:-.05em;margin:0}
.contacts-grid>div>p{color:#91968f;font-size:11px;line-height:1.8;max-width:420px;margin-top:24px}
.contact-list{display:grid;grid-template-columns:1fr 1fr;gap:45px 55px}.contact-list>div:first-child{grid-column:span 2}
.contact-list small{display:block;color:#858a83;font-size:8px;letter-spacing:.15em;margin-bottom:12px}.contact-list a,.contact-list p{display:block;font-size:13px;margin:7px 0}.contact-list p{color:#c8cbc5;line-height:1.7}

/* Contacts page */
.contacts-page{padding-top:70px;background:#fff}
.contacts-page__grid{display:grid;grid-template-columns:minmax(380px,1fr) minmax(500px,1fr);min-height:calc(100vh - 70px)}
.contacts-page__content{display:flex;flex-direction:column;justify-content:center;padding:72px max(24px,calc((100vw - 1240px) / 2)) 72px max(24px,calc((100vw - 1240px) / 2));padding-right:70px}
.contacts-page .section-label{display:block;margin:0 0 22px}
.contacts-page h1{margin:0 0 48px;font-size:clamp(52px,5vw,76px);line-height:.96;letter-spacing:-.055em}
.contacts-page h1 em{font-style:normal;color:var(--olive-light)}
.contacts-page__list{display:grid;gap:30px;margin-bottom:46px}
.contacts-page__list h2{margin:0 0 11px;font-size:15px;line-height:1.2}
.contacts-page__list address,.contacts-page__list a{display:block;margin:0;color:#454b50;font-size:17px;font-style:normal;line-height:1.5}
.contacts-page__list a:hover{color:var(--olive-dark)}
.contacts-page__content .btn{align-self:flex-start}
.contacts-page__map{min-height:620px;background:#e7e8e3}
.contacts-page__map iframe{display:block;width:100%;height:100%;min-height:620px;border:0}

footer{background:#121511;color:#70766d;padding:22px max(24px,calc((100% - 1240px)/2));display:flex;justify-content:space-between;font-size:7px;letter-spacing:.1em}

/* Адаптивные стили */

@media(max-width:900px){
  .header nav{display:none}.burger{display:block}.header{gap:15px}.header-btn{display:none}
  .hero{height:650px}.hero-content{padding-top:160px}
  .intro-grid,.advantages-grid,.contacts-grid{grid-template-columns:1fr;gap:40px}
  .services-head{display:block}.services-head>p{margin-top:25px}
  .service-row,.service-row.reverse{display:flex;min-height:0}.service-photo{height:300px}.service-card{min-height:290px;padding:42px 40px}
  .service-list{gap:90px}
  .cta{display:block}.cta .btn{margin-top:30px}
}

@media(max-width:600px){
  .header{height:62px;padding:0 16px}.brand{min-width:0}.brand div{display:none}.header-right>a:first-child{font-size:9px}
  .hero{margin-top:62px;height:600px}.hero-content{width:calc(100% - 32px);padding-top:135px}.hero h1{font-size:49px}.hero-actions{flex-wrap:wrap}
  .section{width:calc(100% - 32px);padding:55px 0}.section-label{margin-bottom:32px}.intro-title h2,.advantages h2,.services h2{font-size:42px}
  .safety-image{height:320px;margin-top:50px}.safety-caption{left:25px;bottom:28px}.safety-caption strong{font-size:24px}
  .services{padding-left:16px;padding-right:16px}.service-row,.service-row.reverse{display:block}.service-photo{width:100%;height:235px}.service-card,.service-row.reverse .service-card{width:calc(100% - 20px);margin:-35px auto 0;min-height:0;padding:32px 25px 30px}.service-card h3{font-size:23px}.service-list{gap:75px}
  .cta{padding:65px 16px}.cta h2{font-size:32px}
  .contacts{padding-left:16px;padding-right:16px}.contacts h2{font-size:48px}.contact-list{grid-template-columns:1fr}.contact-list>div:first-child{grid-column:auto}
  footer{display:block;line-height:2}
}

@media (min-width:601px) and (max-width:900px){
  .service-page-hero{
    min-height:520px;
  }

  .service-page-hero__content{
    padding:130px 0 48px;
  }

  .service-page-hero h1{
    font-size:clamp(52px,7vw,68px);
  }

  .service-page-section{
    padding:65px 0;
  }

  .service-page-intro,
  .nk-ultrasound__layout,
  .nk-standards__content,
  .about-page-image{
    grid-template-columns:1fr;
    gap:42px;
  }

  .nk-methods__grid,
  .about-page-spheres__grid,
  .about-page-values__grid{
    grid-template-columns:repeat(2,1fr);
  }

  .service-page-intro h2,
  .service-page-contact h2,
  .about-page-image h2{
    font-size:46px;
  }

  .about-page-image>div{
    padding:65px 0 0;
  }
}

@media (min-width:601px) and (max-width:900px){
  .service-page[data-service="cranes"] .nk-methods__grid{
    grid-template-columns:repeat(2,1fr);
  }
}

@media (max-width:600px){
  .service-page[data-service="cranes"] .nk-methods__grid{
    grid-template-columns:1fr;
  }

  .service-page[data-service="cranes"] .nk-methods{
    padding-top:45px;
  }
}

@media(max-width:900px){
  .header nav{
    display:none;
  }

  .header{
    gap:15px;
  }

  .header-phones{
    display:none;
  }

  .header-btn.whatsapp-btn{
    display:inline-flex;
    width:48px;
    height:48px;
    padding:0;
    border-radius:6px;
    font-size:0;
    gap:0;
  }

  .header-btn.whatsapp-btn img{
    width:40px;
    height:40px;
  }

  .desktop-nav{
    display:none!important;
  }

  .mobile-menu{
    position:fixed;
    z-index:99;
    top:70px;
    right:0;
    left:0;
    width:100%;
    max-height:calc(100vh - 70px);
    overflow-y:auto;
    padding:18px 20px 24px;
    background:rgba(23,26,32,.99);
    border-top:2px solid var(--olive);
    box-shadow:0 18px 35px rgba(0,0,0,.3);
    display:flex;
    flex-direction:column;
    gap:0;
    transform:translateY(-12px);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .22s ease,transform .22s ease,visibility .22s ease;
  }

  .mobile-menu.open{
    transform:translateY(0);
    opacity:1;
    visibility:visible;
    pointer-events:auto;
  }

  .mobile-menu a{
    color:#fff;
    padding:17px 4px;
    border-bottom:1px solid rgba(255,255,255,.1);
    font-size:13px;
    line-height:1.4;
    font-weight:700;
  }

  .mobile-menu a:last-child{
    border-bottom:0;
  }

  .burger{
    display:block;
    cursor:pointer;
    width:36px;
    height:36px;
    padding:0;
    position:relative;
    background:none;
    border:0;
    color:#fff;
    font-size:0;
  }

  .burger::before,
  .burger::after{
    content:"";
    position:absolute;
    left:8px;
    right:8px;
    height:2px;
    background:#fff;
    transition:transform .2s ease,top .2s ease;
  }

  .burger::before{
    top:12px;
    box-shadow:0 10px 0 #fff;
  }

  .burger::after{
    top:22px;
  }

  .burger.open::before{
    top:17px;
    transform:rotate(45deg);
    box-shadow:none;
  }

  .burger.open::after{
    top:17px;
    transform:rotate(-45deg);
  }
}

@media(max-width:600px){
  .header{
    height:62px;
    padding:0 16px;
  }

  .header-right{
    gap:10px;
  }

  .brand{
    min-width:0;
  }

  .brand div{
    display:none;
  }

  .brand img{
    width:46px;
    height:46px;
  }

  .header-btn.whatsapp-btn{
    width:48px;
    height:48px;
  }

  .mobile-menu{
    top:62px;
    max-height:calc(100vh - 62px);
  }

  .offer-modal__header{
    padding:28px 24px 22px;
  }

  .offer-modal h2{
    font-size:25px;
  }

  .offer-form{
    grid-template-columns:1fr;
    padding:24px;
  }

  .service-page{
    padding-top:62px;
  }

  .service-page-hero{
    min-height:560px;
  }

  .service-page-hero__content{
    width:calc(100% - 32px);
    padding-top:130px;
  }

  .service-page-hero h1{
    font-size:48px;
  }

  .service-page-section{
    width:calc(100% - 32px);
    padding:50px 0;
  }

  .nk-intro{
    padding:40px 0;
  }

  .service-page-section.nk-methods{
    padding-bottom:25px;
  }

  .nk-ultrasound{
    padding-top:25px;
  }

  .service-page-intro,
  .nk-standards__content,
  .nk-ultrasound__layout{
    grid-template-columns:1fr;
    gap:35px;
  }

  .nk-standards h2{
    font-size:36px;
  }

  .nk-ultrasound h2{
    font-size:36px;
  }

  .nk-ultrasound__layout{
    padding:32px 16px;
  }

  .service-railways{
    padding-top:15px;
    padding-bottom:0;
  }

  .service-railways__content{
    padding:32px 16px;
  }

  .service-page-intro h2,
  .service-page-contact h2{
    font-size:42px;
  }

  .nk-methods__grid{
    grid-template-columns:1fr;
  }

  .about-page-values__grid{
    grid-template-columns:1fr;
  }

  .about-page-spheres__grid{
    grid-template-columns:1fr;
  }

  .about-page-spheres h3{
    margin-top:26px;
  }

  .about-page-values h3{
    margin-top:26px;
  }

  .about-page-values article,
  .about-page-spheres article{
    min-height:0;
    padding:24px;
  }

  .nk-methods__grid article{
    min-height:0;
  }

  .nk-methods__grid h3{
    margin-top:26px;
  }

  .service-page-contact__inner{
    display:block;
  }

  .service-page-contact__actions{
    align-items:center;
    width:100%;
    margin-top:30px;
  }

  .service-page-contact__details{
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:14px;
    text-align:center;
  }

  .about-page-image{
    grid-template-columns:1fr;
    gap:35px;
  }

  .about-page-image>div{
    padding:50px 0 0;
  }

  .about-page-image h2{
    font-size:42px;
  }

  .about-page-image img{
    --corner-cut:90px;
    --top-cut:28px;
    width:calc(100% + 16px);
    height:280px;
  }

  .service-page-contact .service-page-hero__button{
    margin-top:30px;
  }
}

@media (max-width:600px){
  .nk-methods__grid h3,.vessel-frequency__item h3{margin-top:56px}
  .pipeline-methods .vessel-frequency__item h3{margin:0 0 14px}
}

@media (max-width:600px){
  .about-page-spheres h3,.about-page-values h3{margin-top:56px}
}

@media (max-width:900px){
  .contacts-page__grid{grid-template-columns:1fr}
  .contacts-page__content{padding:70px max(24px,calc((100vw - 720px) / 2))}
  .contacts-page__map,.contacts-page__map iframe{min-height:460px}
}

@media (max-width:600px){
  .contacts-page{padding-top:62px}
  .contacts-page__content{padding:55px 16px}
  .contacts-page h1{margin-bottom:38px;font-size:48px}
  .contacts-page__list{gap:26px;margin-bottom:38px}
  .contacts-page__list address,.contacts-page__list a{font-size:16px}
  .contacts-page__content .btn{width:100%;justify-content:space-between}
  .contacts-page__map,.contacts-page__map iframe{min-height:360px}
}

@media (min-width:601px) and (max-width:1100px){
  .pipeline-methods .vessel-frequency__grid{grid-template-columns:1fr}
  .pipeline-methods .vessel-frequency__item{min-height:360px;aspect-ratio:auto;padding-top:125px}
}

@media (min-width:601px) and (max-width:900px){
  .service-page[data-service="repair"] .nk-methods__grid{grid-template-columns:repeat(2,1fr)}
  .service-page-contact__inner{display:block}
  .service-page-contact__actions{width:100%;margin-top:30px;align-items:center}
  .service-page-contact__details{justify-content:center;flex-wrap:nowrap}
}

@media (max-width:600px){
  .vessel-frequency{padding-top:50px}
  .vessel-frequency>h2{font-size:42px}
  .vessel-frequency__lead{margin:22px 0 28px;font-size:15px;text-align:left}
  .vessel-frequency__grid{grid-template-columns:1fr}
  .vessel-frequency__item{min-height:0;padding:28px 24px}
  .vessel-frequency__item>span{margin-bottom:45px}
  .vessel-frequency__item h3{font-size:23px}
  .boiler-schedule{padding:50px 16px}
  .boiler-schedule>*{width:100%}
  .boiler-schedule.vessel-frequency>h2{font-size:24px}
  .boiler-schedule .vessel-frequency__grid{margin-top:28px}
  .pipeline-methods .vessel-frequency__grid{grid-template-columns:1fr}
  .pipeline-methods .vessel-frequency__item{min-height:360px;aspect-ratio:auto;padding-top:125px}
  .service-page[data-service="repair"] .nk-methods__grid{grid-template-columns:1fr}
  .service-page[data-service="repair"] .nk-methods{padding-bottom:60px}
  .service-regulations h2,.service-railways h2{font-size:42px}
  .service-railways p{font-size:14px}
}
