/* Dementor profile component contract.
   Identity colors are defined centrally in /visual-tokens.css.
   Batch 2: HERO geometry follows approved WEB / TABLET / MOBILE references. */

.dc-dementor--valentin{--dementor-bg:var(--dc-dementor-valentin-bg)}
.dc-dementor--nikita{--dementor-bg:var(--dc-dementor-nikita-bg)}
.dc-dementor--evgeniy{--dementor-bg:var(--dc-dementor-evgeniy-bg)}
.dc-dementor--gabil{--dementor-bg:var(--dc-dementor-gabil-bg)}

.dc-dementor-profile{background:var(--dementor-bg,var(--dc-paper));color:var(--dc-ink)}
.dc-dementor-profile .topbar{background:var(--dementor-bg);background:color-mix(in srgb,var(--dementor-bg) 94%,transparent);border-bottom-color:var(--dc-line)}

/* HERO / shared contract */
.dc-dementor-profile .dc-dementor-hero{
  min-height:calc(100vh - 72px);
  min-height:calc(100svh - 72px);
  padding:0;
  background:var(--dementor-bg);
  border-bottom:1px solid var(--dc-line);
  overflow:hidden;
}
.dc-dementor-profile .dc-dementor-hero>.dc-shell{
  min-height:calc(100vh - 72px);
  min-height:calc(100svh - 72px);
  display:block;
  padding-top:0;
  padding-bottom:0;
}
/* Approved comps do not show a second PROFILE/meta row. */
.dc-dementor-profile .dc-dementor-hero__meta{display:none}
.dc-dementor-profile .dc-dementor-hero__layout{
  min-height:calc(100vh - 72px);
  min-height:calc(100svh - 72px);
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:16px;
  align-items:center;
  position:relative;
  margin:0;
}
/* WEB reference: copy is bottom-anchored while portrait is vertically centred. */
.dc-dementor-profile .dc-dementor-hero__copy{
  grid-column:1/7;
  position:relative;
  z-index:3;
  align-self:end;
  min-width:0;
  padding:0 0 24px;
}
.dc-dementor-profile .dc-dementor-role{
  margin:0 0 12px;
  font-size:clamp(13px,1.15vw,17px);
  line-height:1.1;
  letter-spacing:0;
  text-transform:uppercase;
}
.dc-dementor-profile .dc-dementor-hero__copy .dc-display-xl{
  margin:0;
  max-width:6.2ch;
  font-size:clamp(88px,8.6vw,142px);
  line-height:.78;
  letter-spacing:-.075em;
  font-weight:900;
  text-wrap:balance;
}
/* Formula is a real visual block in the approved comps. */
.dc-dementor-profile .dc-dementor-quote{
  box-sizing:border-box;
  width:min(454px,82%);
  min-height:178px;
  margin:34px 0 0;
  padding:24px 24px 20px;
  border:1px dashed color-mix(in srgb,var(--dc-ink) 22%,transparent);
  color:color-mix(in srgb,var(--dc-ink) 34%,var(--dementor-bg));
  display:flex;
  align-items:center;
  font-size:clamp(31px,3.05vw,46px);
  line-height:.93;
  letter-spacing:-.045em;
  max-width:none;
  text-wrap:balance;
}
.dc-dementor--gabil .dc-dementor-quote{font-size:clamp(27px,2.55vw,40px)}
/* Tags/back belong to profile content, not to the reference HERO composition. */
.dc-dementor-profile .dc-dementor-hero .dc-dementor-tags,
.dc-dementor-profile .dc-dementor-hero .dc-profile-back{display:none}

.dc-dementor-profile .dc-dementor-hero__portrait{
  grid-column:8/13;
  position:relative;
  z-index:2;
  width:100%;
  aspect-ratio:500/560;
  border:0;
  background:transparent;
  overflow:hidden;
  align-self:center;
  margin:0;
}
.dc-dementor-profile .dc-dementor-hero__portrait img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  mix-blend-mode:multiply;
  display:block;
}
.dc-dementor-profile .dc-dementor-hero__portrait::after{display:none}

.dc-dementor-profile main>.dc-section{background:var(--dc-paper);color:var(--dc-ink)}
.dc-dementor-profile main>.dc-profile-section-muted{background:rgba(17,17,17,.035)}
.dc-dementor-profile footer{background:var(--dc-paper)}

/* LARGE TABLET / compact desktop. */
@media(max-width:1280px) and (min-width:901px){
  .dc-dementor-profile .dc-dementor-hero{min-height:700px}
  .dc-dementor-profile .dc-dementor-hero>.dc-shell{min-height:700px}
  .dc-dementor-profile .dc-dementor-hero__layout{
    min-height:700px;
    grid-template-columns:repeat(12,minmax(0,1fr));
    align-items:center;
  }
  .dc-dementor-profile .dc-dementor-hero__copy{
    grid-column:1/7;
    align-self:end;
    padding:0 0 28px;
  }
  .dc-dementor-profile .dc-dementor-role{font-size:15px;margin-bottom:14px}
  .dc-dementor-profile .dc-dementor-hero__copy .dc-display-xl{
    font-size:clamp(72px,9.4vw,104px);
    line-height:.78;
    max-width:5.9ch;
  }
  .dc-dementor-profile .dc-dementor-quote{
    width:min(410px,92%);
    min-height:126px;
    margin-top:26px;
    padding:20px 24px;
    font-size:clamp(28px,3.8vw,40px);
  }
  .dc-dementor-profile .dc-dementor-hero__portrait{
    grid-column:4/13;
    width:100%;
    max-width:468px;
    justify-self:end;
    aspect-ratio:468/528;
  }
}

/* TABLET reference (767×590): portrait centred vertically, copy anchored to baseline. */
@media(max-width:900px) and (min-width:561px){
  .dc-dementor-profile .dc-dementor-hero,
  .dc-dementor-profile .dc-dementor-hero>.dc-shell,
  .dc-dementor-profile .dc-dementor-hero__layout{min-height:590px}
  .dc-dementor-profile .dc-dementor-hero__layout{
    grid-template-columns:repeat(12,minmax(0,1fr));
    align-items:center;
  }
  .dc-dementor-profile .dc-dementor-hero__copy{
    grid-column:1/7;
    align-self:end;
    padding:0 0 28px;
  }
  .dc-dementor-profile .dc-dementor-role{font-size:15px;margin-bottom:14px}
  .dc-dementor-profile .dc-dementor-hero__copy .dc-display-xl{
    font-size:clamp(72px,13.6vw,104px);
    line-height:.78;
    max-width:5.9ch;
  }
  .dc-dementor-profile .dc-dementor-quote{
    width:min(268px,92%);
    min-height:126px;
    margin-top:26px;
    padding:20px 24px;
    font-size:clamp(28px,4.7vw,36px);
  }
  .dc-dementor-profile .dc-dementor-hero__portrait{
    grid-column:4/13;
    width:468px;
    max-width:calc(100vw - 299px);
    justify-self:end;
    margin-right:24px;
    aspect-ratio:468/528;
  }
}

/* MOBILE — typography/formula stack first, image is a separate block below. */
@media(max-width:560px){
  .dc-dementor-profile .dc-dementor-hero{min-height:0;overflow:visible}
  .dc-dementor-profile .dc-dementor-hero>.dc-shell{min-height:0;padding-top:0;padding-bottom:0}
  .dc-dementor-profile .dc-dementor-hero__layout{
    min-height:0;
    display:grid;
    grid-template-columns:1fr;
    gap:0;
    align-items:start;
  }
  .dc-dementor-profile .dc-dementor-hero__copy{
    grid-column:1;
    grid-row:1;
    padding:16px 0 12px;
  }
  .dc-dementor-profile .dc-dementor-role{
    margin:0 0 16px;
    font-size:15px;
    line-height:1;
  }
  .dc-dementor-profile .dc-dementor-hero__copy .dc-display-xl{
    margin:0;
    max-width:100%;
    font-size:clamp(50px,15.6vw,66px);
    line-height:.76;
    letter-spacing:-.075em;
    overflow-wrap:normal;
    word-break:normal;
  }
  .dc-dementor-profile .dc-dementor-quote{
    width:min(240px,68%);
    min-height:144px;
    margin-top:28px;
    padding:18px 24px;
    font-size:clamp(25px,7vw,31px);
    line-height:.92;
  }
  .dc-dementor--gabil .dc-dementor-quote{font-size:clamp(22px,6.2vw,27px)}
  .dc-dementor-profile .dc-dementor-hero__portrait{
    grid-column:1;
    grid-row:2;
    width:calc(100% + 16px);
    margin:0 -8px;
    aspect-ratio:368/414;
    justify-self:center;
  }
  .dc-dementor-profile .dc-dementor-hero__portrait img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center center;
  }
}

@media(max-width:390px){
  .dc-dementor-profile .dc-dementor-role{font-size:14px;margin-bottom:14px}
  .dc-dementor-profile .dc-dementor-hero__copy .dc-display-xl{font-size:clamp(48px,15.2vw,60px)}
  .dc-dementor-profile .dc-dementor-quote{width:68%;min-height:142px;padding:17px 22px}
}
