/* One shared diagonal defines both the image crop and the title's material change.
   hero.js projects that edge into the title's local coordinates. */
.seam-hero { --cut-top:41.07%; --cut-bottom:29%; --seam-gold:#e0b454; }
.seam-hero .seam-scene {
  inset:0; clip-path:polygon(var(--cut-top) 0,100% 0,100% 100%,var(--cut-bottom) 100%);
}
@media(min-width:851px) {
  /* Keep the reference image's exact crop: 29% inset + 17% of the remaining
     71% gives the same global edge, 41.07% at the top and 29% at the bottom. */
  .future-hero.seam-hero .future-hero__image {
    inset:0 0 0 29%; clip-path:polygon(17% 0,100% 0,100% 100%,0 100%);
  }
  .hero--small.seam-hero h1 { font-size:clamp(4rem,9.6vw,9rem); }
}
.seam-hero h1.seam-title { position:relative; width:max-content; max-width:100%; }
.seam-title .seam-solid,.seam-title .seam-outline { display:block; }
.seam-title .seam-solid > span,.seam-title .seam-outline > span { display:block; }
.seam-title.seam-ready .seam-solid {
  clip-path:polygon(0 0,var(--title-cut-top) 0,var(--title-cut-bottom) 100%,0 100%);
}
.seam-title .seam-outline {
  position:absolute; inset:0; pointer-events:none; user-select:none;
  clip-path:polygon(var(--title-cut-top) 0,100% 0,100% 100%,var(--title-cut-bottom) 100%);
}
.seam-title .seam-solid,.seam-title .seam-solid * {
  color:var(--text); -webkit-text-fill-color:var(--text); -webkit-text-stroke:0;
  background:none; animation:none;
}
.seam-title .seam-outline,.seam-title .seam-outline * {
  color:transparent; -webkit-text-fill-color:transparent; -webkit-text-stroke:1.5px var(--seam-gold);
  background:none; animation:none;
}
.seam-title:not(.seam-ready) .seam-outline { visibility:hidden; }
/* Keep the same composition when a title is wider than one word. */
.hero.seam-hero { min-height:min(820px,100svh); }
.hero.seam-hero .hero__body { padding-top:140px; padding-bottom:96px; }
.hero--small.seam-hero { min-height:620px; }
.hero__scene.seam-scene::after {
  background:linear-gradient(90deg,#0b0c0f80,transparent 68%),linear-gradient(0deg,#0b0c0f,transparent 45%,#0b0c0f20);
}
/* Team keeps its directory and all profile groups. Only its opening is aligned. */
.team-page .phead { background:#0b0c0f; min-height:min(820px,100svh); padding:150px 0 110px; }
.team-page .phead__edition { display:none; }
.team-page .phead h1 { max-width:1100px; font-size:clamp(4rem,8.6vw,8.2rem); line-height:.95; letter-spacing:-.045em; }
.team-page .phead::after { background:linear-gradient(90deg,#0a0b0d80,transparent 80%),linear-gradient(0deg,#0a0b0d,transparent 50%); }
.team-page .phead .lead { max-width:46ch; font-size:1.15rem; }
.team-page .dept__no { display:none; }
.team-page .dept__head h2 { margin-top:0; }
.team-page .profile-id { display:none; }
.team-page .team-intro .eyebrow { display:none; }
.team-page .team-creator { padding-block:38px 64px; border-top:1px solid var(--line); }
.team-page .team-creator h2 { font:600 1.6rem 'Corvent',sans-serif; }
.team-page .team-creator p { color:var(--dim); max-width:54ch; }
@media(max-width:850px) {
  .seam-hero { --cut-top:64%; --cut-bottom:18%; }
  .hero.seam-hero { min-height:660px; }
  .team-page .phead { min-height:680px; padding:140px 0 90px; }
  .team-page .phead h1 { font-size:clamp(3.2rem,10vw,6rem); }
}
@media(max-width:600px) {
  .hero.seam-hero,.hero--small.seam-hero { min-height:620px; }
  .hero.seam-hero .hero__body { padding:110px 0 54px; }
  .hero__scene.seam-scene::after { background:linear-gradient(0deg,#0b0c0f,#0b0c0f88 40%,#0b0c0f20 80%); }
  .seam-title .seam-outline,.seam-title .seam-outline * { -webkit-text-stroke-width:1px; }
  .team-page .phead { min-height:650px; padding:135px 0 70px; }
  .team-page .phead h1 { font-size:10.4vw; }
  .team-page .phead .lead { font-size:1rem; }
}
