/* ОБЪЕКТ — страница «О компании» (objab-*) и её блоки для шорткодов: команда, «один ответственный» (схема SVG),
   принципы, «показываем работу открыто». Разделительных линий между блоками нет — только воздух.
   main.css обнуляет рамки/отступы у всего внутри .page — поэтому селекторы из двух классов. */
.objab,
.objab *{box-sizing:border-box;}
body.objab-page{overflow-x:visible;overflow-x:clip;}
.objab{
  --objab-w:calc(100% - 32px);
  display:block;background:var(--objekt-color-bg);color:var(--objekt-color-cream);font-family:var(--objekt-font-body);font-variant-numeric:lining-nums;
}
@media (min-width:390px){ .objab{--objab-w:calc(100% - 40px);} }
@media (min-width:600px){ .objab{--objab-w:calc(100% - 64px);} }
@media (min-width:1200px){ .objab{--objab-w:min(81.77083vw, 1600px);} }
.objab .objab-wrap{width:var(--objab-w);margin:0 auto;}
.objab .objab-sec{padding:clamp(48px, 5vw, 96px) 0 0;}
.objab .objab-eyebrow{display:flex;align-items:center;gap:16px;margin:0 0 clamp(14px, 1.4vw, 22px);font-size:var(--objekt-fs-caption);letter-spacing:.24em;text-transform:uppercase;color:var(--objekt-color-accent);}
.objab .objab-eyebrow span{flex-shrink:0;}
.objab .objab-eyebrow i{display:block;flex:1 1 auto;max-width:320px;min-width:28px;height:1px;background:var(--objekt-color-line-strong);}
.objab .objab-h2{margin:0 0 clamp(24px, 2.4vw, 40px);font-family:var(--objekt-font-heading);font-weight:500;font-size:clamp(30px, 2.6vw, 52px);line-height:1.1;letter-spacing:var(--objekt-tracking-heading);color:var(--objekt-color-cream);}

/* ---------- 1. первый экран ---------- */
.objab .objab-hero{position:relative;display:flex;flex-direction:column;}
.objab .objab-hero__media{position:relative;width:100%;aspect-ratio:4 / 3;max-height:60svh;overflow:hidden;}
.objab .objab-hero__media picture{display:block;width:100%;height:100%;}
.objab .objab-hero__img{display:block;width:100%;height:100%;object-fit:cover;}
.objab .objab-hero__media::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(to bottom, rgba(28,26,26,0) 45%, rgba(28,26,26,0.7) 80%, var(--objekt-color-bg) 100%);}
.objab .objab-hero__inner{position:relative;z-index:1;margin-top:-32px;}
.objab .objab-hero__title{margin:0;font-family:var(--objekt-font-heading);font-weight:500;font-size:clamp(38px, 3.8vw, 76px);line-height:1.05;letter-spacing:var(--objekt-tracking-display);color:var(--objekt-color-cream);}
.objab .objab-hero__sub{max-width:34em;margin:clamp(14px, 1.3vw, 22px) 0 0;font-size:clamp(16px, 1.15vw, 21px);line-height:1.55;color:rgba(245,242,237,0.85);}
@media (min-width:1024px){
  .objab .objab-hero{justify-content:center;height:clamp(520px, 78svh, 900px);}
  .objab .objab-hero__media{position:absolute;inset:0;max-height:none;aspect-ratio:auto;}
  .objab .objab-hero__media::after{background:
    linear-gradient(to right, rgba(28,26,26,0.94) 0, rgba(28,26,26,0.78) 30%, rgba(28,26,26,0.25) 58%, rgba(28,26,26,0) 75%),
    linear-gradient(to bottom, rgba(28,26,26,0) 72%, var(--objekt-color-bg) 100%);}
  .objab .objab-hero__inner{margin-top:0;}
  .objab .objab-hero__inner > *{max-width:min(50%, 820px);}
}

/* ---------- 2. кто мы ---------- */
.objab .objab-who__cols{display:grid;grid-template-columns:minmax(0, 1fr);gap:24px;}
.objab .objab-who__quote{margin:0;font-family:var(--objekt-font-heading);font-weight:500;font-size:clamp(26px, 2.2vw, 44px);line-height:1.2;letter-spacing:var(--objekt-tracking-heading);color:var(--objekt-color-cream);}
.objab .objab-who__text p{margin:0;font-size:clamp(16px, 1.05vw, 19px);line-height:1.65;color:rgba(245,242,237,0.8);}
.objab .objab-who__text p + p{margin-top:1em;}
@media (min-width:1024px){
  .objab .objab-who__cols{grid-template-columns:minmax(0, 1.15fr) minmax(0, 1fr);gap:0;align-items:center;}
  .objab .objab-who__quote{padding-right:clamp(40px, 4vw, 80px);}
  .objab .objab-who__text{padding-left:clamp(40px, 4vw, 80px);border-left:1px solid var(--objekt-color-line);}
}

/* ---------- 3. команда ---------- */
.objab .objab-team__grid{display:grid;grid-template-columns:minmax(0, 1fr);gap:16px;}
.objab .objab-tm{display:grid;grid-template-columns:minmax(0, 1fr);border:1px solid rgba(169,150,125,0.3);background:rgba(245,242,237,0.015);transition:border-color .3s ease;}
.objab .objab-tm__media{position:relative;overflow:hidden;aspect-ratio:16 / 10;background:#221f1e;}
.objab .objab-tm__img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:50% 25%;transition:inset .6s ease, width .6s ease, height .6s ease;}
.objab .objab-tm__mono{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;}
.objab .objab-tm__mono span{display:flex;align-items:center;justify-content:center;width:clamp(96px, 9vw, 150px);height:clamp(96px, 9vw, 150px);border:1px solid rgba(169,150,125,0.7);border-radius:50%;font-family:var(--objekt-font-heading);font-size:clamp(44px, 4vw, 72px);line-height:1;color:var(--objekt-color-accent);}
.objab .objab-tm__body{display:flex;flex-direction:column;padding:clamp(20px, 2vw, 34px);}
.objab .objab-tm__name{font-family:var(--objekt-font-heading);font-size:clamp(24px, 1.8vw, 34px);line-height:1.15;color:var(--objekt-color-cream);}
.objab .objab-tm__role{margin-top:6px;font-size:15px;line-height:1.4;color:rgba(245,242,237,0.7);}
.objab .objab-tm__quote{display:flex;gap:12px;margin:clamp(16px, 1.6vw, 26px) 0 0;padding:0;border:none;}
.objab .objab-tm__q{flex-shrink:0;font-family:var(--objekt-font-heading);font-size:44px;line-height:.8;color:var(--objekt-color-accent);}
.objab .objab-tm__quote p{margin:0;font-size:clamp(15px, 1vw, 17px);line-height:1.6;color:rgba(245,242,237,0.85);}
.objab .objab-tm__audio{margin-top:auto;padding-top:clamp(18px, 1.8vw, 28px);}
.objab .objab-tm__audio .objfaq-expert{display:none;} /* имя и должность уже в карточке */
@media (hover:hover) and (pointer:fine){
  .objab .objab-tm:hover{border-color:var(--objekt-color-accent);}
  .objab .objab-tm:hover .objab-tm__img{inset:-3%;width:106%;height:106%;} /* лёгкое увеличение без transform (без мыла) */
}
@media (min-width:768px){
  .objab .objab-team__grid--2{grid-template-columns:repeat(2, minmax(0, 1fr));gap:20px;}
  .objab .objab-team__grid--3{grid-template-columns:repeat(3, minmax(0, 1fr));gap:20px;}
}
@media (min-width:1024px){
  /* 1–2 человека: слева портрет ~40%, 3:4, лёгкое затемнение к правому краю */
  .objab .objab-team__grid--1 .objab-tm,
  .objab .objab-team__grid--2 .objab-tm{grid-template-columns:minmax(0, 2fr) minmax(0, 3fr);}
  .objab .objab-team__grid--1 .objab-tm{max-width:760px;}
  .objab .objab-team__grid--1 .objab-tm__media,
  .objab .objab-team__grid--2 .objab-tm__media{aspect-ratio:auto;min-height:clamp(300px, 24vw, 420px);} /* колонка ~40% на всю высоту карточки */
  .objab .objab-team__grid--1 .objab-tm__media::after,
  .objab .objab-team__grid--2 .objab-tm__media::after{content:"";position:absolute;inset:0;background:linear-gradient(to right, rgba(28,26,26,0) 60%, rgba(28,26,26,0.45) 100%);pointer-events:none;}
}

/* ---------- 4. один договор — один ответственный (SVG) ---------- */
.objab .objab-resp__scheme{position:relative;margin:clamp(8px, 1vw, 16px) 0 0;}
.objab .objab-sch{display:block;width:100%;height:auto;overflow:visible;}
.objab .objab-sch--d{display:none;}
.objab .objab-sch--m{max-width:420px;margin:0 auto;}
.objab .objab-resp__brace-m{margin:6px 0 0;text-align:center;font-size:14px;color:rgba(245,242,237,0.6);}
.objab .objab-resp__note{margin:clamp(18px, 1.8vw, 28px) 0 0;font-size:clamp(15px, 1.05vw, 18px);line-height:1.5;color:rgba(245,242,237,0.8);}
@media (min-width:768px){
  .objab .objab-sch--d{display:block;}
  .objab .objab-sch--m,
  .objab .objab-resp__brace-m{display:none;}
}
.objab .objab-sch__ring{fill:var(--objekt-color-bg);stroke:rgba(169,150,125,0.75);stroke-width:1.4;}
.objab .objab-sch__ring--main{stroke:var(--objekt-color-accent);stroke-width:2;}
.objab .objab-sch__ico{color:var(--objekt-color-accent);}
.objab .objab-sch__you-t{font-family:var(--objekt-font-heading);font-size:22px;fill:var(--objekt-color-cream);}
.objab .objab-sch__main{fill:none;stroke:var(--objekt-color-accent);stroke-width:2.4;}
.objab .objab-sch__link-t{font-size:15px;fill:var(--objekt-color-accent);}
.objab .objab-sch__brand{font-family:var(--objekt-font-heading);font-size:25px;letter-spacing:.34em;fill:var(--objekt-color-cream);}
.objab .objab-sch__center-t{font-size:14px;fill:rgba(245,242,237,0.7);}
.objab .objab-sch__fan{fill:none;stroke:rgba(169,150,125,0.5);stroke-width:1.3;transition:stroke .25s ease;}
.objab .objab-sch__flow{fill:none;stroke:rgba(245,242,237,0.75);stroke-width:2.2;stroke-linecap:round;stroke-dasharray:.8 99.2;stroke-dashoffset:0;opacity:0;}
.objab .objab-sch__node{transition:stroke .25s ease, fill .25s ease;}
.objab .objab-sch__br-t{font-size:17px;fill:var(--objekt-color-cream);}
.objab .objab-sch__br-t--in{font-size:14px;}
.objab .objab-sch__brace{fill:none;stroke:rgba(245,242,237,0.35);stroke-width:1.3;}
.objab .objab-sch__brace-t{font-size:15px;fill:rgba(245,242,237,0.6);}
.objab .objab-sch__br{cursor:default;}
.objab .objab-sch__br:hover .objab-sch__fan{stroke:var(--objekt-color-accent);}
.objab .objab-sch__br:hover .objab-sch__node{stroke:var(--objekt-color-accent);fill:rgba(169,150,125,0.14);}

/* анимация: «Вы» → линия договора → «ОБЪЕКТ» со вспышкой → веер линий → круги бригад лесенкой → «поток работ» */
.objab .objab-resp.is-js .objab-sch__you,
.objab .objab-resp.is-js .objab-sch__link-t{opacity:0;transition:opacity .5s ease;}
.objab .objab-resp.is-js .objab-sch__main{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset .6s ease .35s;}
.objab .objab-resp.is-js .objab-sch__center{opacity:0;transition:opacity .6s ease .95s;}
.objab .objab-resp.is-js .objab-sch__glow{opacity:.35;}
.objab .objab-resp.is-js .objab-sch__fan{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset .5s ease 1.5s, stroke .25s ease;}
.objab .objab-resp.is-js .objab-sch__node,
.objab .objab-resp.is-js .objab-sch__ico,
.objab .objab-resp.is-js .objab-sch__br-t,
.objab .objab-resp.is-js .objab-sch__brace,
.objab .objab-resp.is-js .objab-sch__brace-t{opacity:0;transition:opacity .45s ease calc(1.9s + var(--i, 0) * 80ms), stroke .25s ease, fill .25s ease;}
.objab .objab-resp.is-in .objab-sch__you,
.objab .objab-resp.is-in .objab-sch__link-t,
.objab .objab-resp.is-in .objab-sch__center,
.objab .objab-resp.is-in .objab-sch__node,
.objab .objab-resp.is-in .objab-sch__ico,
.objab .objab-resp.is-in .objab-sch__br-t,
.objab .objab-resp.is-in .objab-sch__brace,
.objab .objab-resp.is-in .objab-sch__brace-t{opacity:1;}
.objab .objab-resp.is-in .objab-sch__main,
.objab .objab-resp.is-in .objab-sch__fan{stroke-dashoffset:0;}
.objab .objab-resp.is-in .objab-sch__glow{animation:objab-glow 1.6s ease 1s 1 both;}
.objab .objab-resp.is-in .objab-sch__flow{animation:objab-flow 7s linear calc(2.6s + var(--i, 0) * .9s) infinite;}
.objab .objab-resp:not(.is-js) .objab-sch__flow{animation:objab-flow 7s linear calc(var(--i, 0) * .9s) infinite;}
@keyframes objab-glow{0%{opacity:.35;}40%{opacity:1;}100%{opacity:.75;}}
@keyframes objab-flow{0%{stroke-dashoffset:0;opacity:0;}8%{opacity:.8;}85%{opacity:.8;}100%{stroke-dashoffset:-100;opacity:0;}}

/* ---------- 5. принципы ---------- */
.objab .objab-pr__list{display:grid;grid-template-columns:minmax(0, 1fr);margin:0;padding:0;list-style:none;}
.objab .objab-pr__item{display:grid;grid-template-columns:auto minmax(0, 1fr);column-gap:18px;margin:0;padding:18px 0;border-bottom:1px solid var(--objekt-color-line);}
.objab .objab-pr__item:first-child{border-top:1px solid var(--objekt-color-line);}
.objab .objab-pr__n{font-family:var(--objekt-font-heading);font-size:clamp(36px, 3vw, 56px);line-height:.95;color:var(--objekt-color-accent);min-width:1.3em;}
.objab .objab-pr__t{font-family:var(--objekt-font-heading);font-size:clamp(19px, 1.3vw, 24px);line-height:1.25;color:var(--objekt-color-cream);}
.objab .objab-pr__d{margin:8px 0 0;font-size:15px;line-height:1.55;color:rgba(245,242,237,0.7);}
@media (min-width:1024px){
  .objab .objab-pr__list--3{grid-template-columns:repeat(3, minmax(0, 1fr));}
  .objab .objab-pr__list--4{grid-template-columns:repeat(4, minmax(0, 1fr));}
  .objab .objab-pr__list--5{grid-template-columns:repeat(5, minmax(0, 1fr));}
  .objab .objab-pr__list--6{grid-template-columns:repeat(3, minmax(0, 1fr));row-gap:32px;}
  .objab .objab-pr__item,
  .objab .objab-pr__item:first-child{grid-template-columns:minmax(0, 1fr);row-gap:14px;padding:4px clamp(20px, 2vw, 36px);border:none;border-left:1px solid var(--objekt-color-line);}
  .objab .objab-pr__item:first-child{padding-left:0;border-left:none;}
  .objab .objab-pr__list--6 .objab-pr__item:nth-child(4){padding-left:0;border-left:none;}
}

/* ---------- 7. показываем работу открыто ---------- */
.objab .objab-open__row{display:flex;flex-direction:column;gap:24px;}
.objab .objab-open__title{font-family:var(--objekt-font-heading);font-weight:500;font-size:clamp(26px, 2.2vw, 44px);line-height:1.15;color:var(--objekt-color-cream);}
.objab .objab-open__side{display:flex;flex-wrap:wrap;align-items:center;gap:18px 28px;}
.objab .objab-open__ch{display:flex;gap:12px;margin:0;padding:0;list-style:none;}
.objab .objab-open__ch li{margin:0;padding:0;}
.objab .objab-ch{display:flex;align-items:center;justify-content:center;width:56px;height:56px;margin:0;padding:0;border:1px solid rgba(169,150,125,0.75);border-radius:50%;background:transparent;color:var(--objekt-color-cream);cursor:pointer;transition:background-color .2s ease, border-color .2s ease, color .2s ease;}
.objab .objab-ch svg{display:block;width:24px;height:24px;}
.objab .objab-ch:hover{background:var(--objekt-color-accent);border-color:var(--objekt-color-accent);color:var(--objekt-color-bg);}
.objab .objab-ch[aria-disabled="true"]{cursor:default;}
.objab .objab-ch:focus-visible,
.objab .objab-open__link:focus-visible{outline:2px solid var(--objekt-color-accent) !important;outline-offset:3px;}
.objab .objab-open__meta{display:flex;flex-direction:column;gap:8px;}
.objab .objab-open__note{margin:0;font-size:14px;color:rgba(245,242,237,0.65);}
.objab .objab-open__link{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;padding-bottom:2px;border-bottom:1px solid rgba(169,150,125,0.55);font-size:15px;color:var(--objekt-color-accent);text-decoration:none;transition:color .2s ease, border-color .2s ease;}
.objab .objab-open__link svg{width:18px;height:18px;transition:transform .2s ease;}
.objab .objab-open__link:hover{color:var(--objekt-color-accent-hover);border-color:var(--objekt-color-accent-hover);}
.objab .objab-open__link:hover svg{transform:translateX(3px);}
.objab .objab-open__foot{flex-basis:100%;margin:0;font-size:11px;line-height:1.45;color:rgba(245,242,237,0.45);}
@media (min-width:1024px){
  .objab .objab-open__row{flex-direction:row;align-items:center;gap:0;}
  .objab .objab-open__text{flex:1 1 55%;padding-right:clamp(40px, 4vw, 80px);}
  .objab .objab-open__side{flex:1 1 45%;padding-left:clamp(40px, 4vw, 80px);border-left:1px solid var(--objekt-color-line);}
}

/* готовые блоки на этой странице: одинаковый шаг между блоками */
.objab .objv{padding-top:clamp(48px, 5vw, 96px);padding-bottom:0;}
.objab .objf{padding-top:clamp(48px, 5vw, 96px);padding-bottom:0;}

/* ---------- появление по очереди ---------- */
.objab.is-js .objab-rv{opacity:0;transform:translateY(12px);transition:opacity .6s ease, transform .6s ease;transition-delay:calc(var(--i, 0) * 90ms);}
.objab.is-js .is-in .objab-rv,
.objab.is-js .objab-hero.is-in .objab-rv{opacity:1;transform:none;}
.objab.is-js .objab-hero.is-in .objab-rv:nth-child(2){transition-delay:.08s;}
.objab.is-js .objab-hero.is-in .objab-rv:nth-child(3){transition-delay:.16s;}
@media (prefers-reduced-motion:reduce){
  .objab.is-js .objab-rv{opacity:1;transform:none;transition:none;}
  .objab .objab-resp .objab-sch *{opacity:1 !important;stroke-dashoffset:0 !important;transition:none !important;animation:none !important;}
  .objab .objab-resp .objab-sch__flow{opacity:0 !important;}
}
/* телефон: надписи внутри кругов схемы помещаются */
.objab .objab-sch__brand--m{font-size:19px;letter-spacing:.26em;}
.objab .objab-sch--m .objab-sch__br-t--in{font-size:12.5px;}
/* принципы: у пунктов разной длины заголовки стоят на одной линии */
.objab .objab-pr__item{align-content:start;} /* короткий пункт не растягивает строки — заголовки на одной линии */
