
/* Projeto IATHAWK 1.33 — storytelling imersivo em fundos de tela cheia */
body.page-projeto-iat-hawk{
  background:#050606;
}
body.page-projeto-iat-hawk .site-footer{
  border-top:0;
}

.project-memorial{
  --project-muted:#a2a6a3;
  background:#050606;
  color:#f2f0ec;
  overflow:hidden;
}

.project-story{
  position:relative;
  min-height:94svh;
  display:grid;
  align-items:center;
  isolation:isolate;
  overflow:hidden;
  border-top:1px solid rgba(255,255,255,.07);
  background:#060707;
}
.project-story::before{
  content:"";
  position:absolute;
  z-index:-3;
  inset:-2%;
  background-image:var(--project-story-bg);
  background-position:center;
  background-size:cover;
  filter:saturate(.72) contrast(1.08);
  transform:scale(1.025);
}
.project-story::after{
  content:"";
  position:absolute;
  z-index:-2;
  inset:0;
  pointer-events:none;
}

/* Alternate the visual weight of image and text */
.project-story--left::after{
  background:
    linear-gradient(90deg,
      rgba(4,5,5,.97) 0%,
      rgba(4,5,5,.91) 34%,
      rgba(4,5,5,.58) 58%,
      rgba(4,5,5,.13) 100%),
    linear-gradient(0deg,rgba(5,6,6,.55),rgba(5,6,6,.08) 52%);
}
.project-story--right::before{
  background-position:left center;
}
.project-story--right::after{
  background:
    linear-gradient(270deg,
      rgba(4,5,5,.97) 0%,
      rgba(4,5,5,.91) 34%,
      rgba(4,5,5,.56) 59%,
      rgba(4,5,5,.14) 100%),
    linear-gradient(0deg,rgba(5,6,6,.5),rgba(5,6,6,.08) 52%);
}
.project-story--center::after{
  background:
    radial-gradient(circle at center,rgba(4,5,5,.48) 0%,rgba(4,5,5,.68) 45%,rgba(4,5,5,.87) 100%),
    linear-gradient(0deg,rgba(4,5,5,.88),rgba(4,5,5,.18) 58%);
}

.project-story__inner{
  position:relative;
  z-index:2;
  width:100%;
  padding-top:clamp(112px,11vw,165px);
  padding-bottom:clamp(88px,9vw,132px);
}
.project-story__content{
  width:min(690px,60%);
}
.project-story--right .project-story__content{
  margin-left:auto;
}
.project-story__content--center{
  width:min(820px,82%);
  margin-left:auto;
  margin-right:auto;
  text-align:center;
}
.project-story__index{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:25px;
}
.project-story__index strong{
  color:rgba(255,255,255,.24);
  font-size:clamp(2.6rem,4.8vw,4.9rem);
  font-weight:900;
  line-height:.8;
  letter-spacing:-.06em;
}
.project-story__index > span{
  display:block;
  width:43px;
  height:2px;
  background:#dc0000;
}
.project-story__index small{
  color:#f0efeb;
  font-size:.65rem;
  font-weight:900;
  letter-spacing:.17em;
  text-transform:uppercase;
}
.project-story__index--center{
  justify-content:center;
}
.project-eyebrow{
  display:flex;
  align-items:center;
  gap:12px;
  margin:0 0 10px;
  color:#ef2525;
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.2em;
  text-transform:uppercase;
}
.project-eyebrow::after{
  content:"";
  width:40px;
  height:1px;
  background:#dc0000;
}
.project-micro{
  margin:0;
  color:#c2c5c1;
  font-size:.61rem;
  font-weight:800;
  letter-spacing:.22em;
  text-transform:uppercase;
}
.project-story h1,
.project-story h2{
  max-width:760px;
  margin:18px 0 22px;
  color:#f3f1ed;
  font:900 clamp(3.15rem,6vw,6.5rem)/.86 var(--sans);
  letter-spacing:-.052em;
  text-transform:uppercase;
  text-wrap:balance;
}
.project-story h1 em,
.project-story h2 em{
  color:#e51e27;
  font-style:normal;
}
.project-story__content--center h2{
  margin-left:auto;
  margin-right:auto;
}
.project-story__lead{
  max-width:610px;
  margin:0 0 17px;
  color:#f1efea;
  font-size:clamp(1rem,1.25vw,1.16rem);
  font-weight:650;
  line-height:1.55;
}
.project-story__text{
  max-width:66ch;
  margin:0 0 15px;
  color:#b7bbb7;
  font-size:.95rem;
  line-height:1.68;
  text-align:justify;
  text-justify:inter-word;
}
.project-story__content--center .project-story__lead,
.project-story__content--center .project-story__text{
  margin-left:auto;
  margin-right:auto;
}
.project-story__content--center .project-story__text{
  text-align:center;
}

/* Horizontal training timeline */
.project-timeline-scroll{
  width:100%;
  min-width:0;
}
.project-timeline{
  position:relative;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  width:min(1120px,100%);
  margin:clamp(55px,6.4vw,82px) auto 0;
  padding-top:32px;
}
.project-timeline__rail{
  position:absolute;
  top:9px;
  left:12.5%;
  right:12.5%;
  height:1px;
  background:linear-gradient(90deg,rgba(220,0,0,.18),#dc0000 20%,#dc0000 80%,rgba(220,0,0,.18));
  box-shadow:0 0 20px rgba(220,0,0,.16);
}
.project-timeline__item{
  position:relative;
  min-width:0;
  padding:14px 22px 0;
  text-align:center;
}
.project-timeline__dot{
  position:absolute;
  top:-30px;
  left:50%;
  width:12px;
  height:12px;
  transform:translateX(-50%);
  border:2px solid #dc0000;
  border-radius:50%;
  background:#090a0a;
  box-shadow:0 0 0 5px rgba(220,0,0,.08),0 0 18px rgba(220,0,0,.18);
}
.project-timeline__item time{
  display:block;
  margin-bottom:9px;
  color:#e51e27;
  font-size:.67rem;
  font-weight:900;
  letter-spacing:.15em;
}
.project-timeline__item h3{
  margin:0 0 8px;
  color:#f3f1ed;
  font-size:.83rem;
  font-weight:900;
  line-height:1.18;
  letter-spacing:.055em;
  text-transform:uppercase;
}
.project-timeline__item p{
  max-width:210px;
  margin:0 auto;
  color:#969b97;
  font-size:.7rem;
  line-height:1.48;
}
.project-digital{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:18px;
  margin-top:48px;
  padding-top:23px;
  border-top:1px solid rgba(255,255,255,.11);
  text-align:center;
}
.project-digital span{
  color:#dc0000;
  font-size:.58rem;
  font-weight:900;
  letter-spacing:.17em;
}
.project-digital strong{
  color:#e8e8e5;
  font-size:.75rem;
  font-weight:900;
  letter-spacing:.13em;
}

/* Closing */
.project-closing{
  position:relative;
  min-height:88svh;
  display:grid;
  align-items:end;
  overflow:hidden;
  isolation:isolate;
  background:#080909;
}
.project-closing::before{
  content:"";
  position:absolute;
  z-index:-2;
  inset:0;
  background-image:var(--project-closing-bg);
  background-position:center;
  background-size:cover;
  filter:saturate(.86) contrast(1.05);
}
.project-closing::after{
  content:"";
  position:absolute;
  z-index:-1;
  inset:0;
  background:
    linear-gradient(90deg,rgba(4,5,5,.94),rgba(4,5,5,.61) 49%,rgba(4,5,5,.17)),
    linear-gradient(0deg,rgba(4,5,5,.93),rgba(4,5,5,.06) 58%);
}
.project-closing__content{
  padding-top:130px;
  padding-bottom:80px;
}
.project-closing h2{
  max-width:760px;
  margin:15px 0 20px;
  color:#f3f1ed;
  font:900 clamp(3.2rem,7vw,7rem)/.88 var(--sans);
  letter-spacing:-.055em;
  text-transform:uppercase;
}
.project-closing h2 em{
  color:#e51e27;
  font-style:normal;
}
.project-closing__lead{
  max-width:690px;
  margin:0 0 14px;
  color:#f0efeb;
  font-size:1rem;
  font-weight:650;
  line-height:1.6;
}
.project-closing__content > p:not(.project-eyebrow):not(.project-closing__lead){
  max-width:700px;
  margin:0;
  color:#b1b5b1;
  font-size:.94rem;
  line-height:1.65;
}
.project-closing__signature{
  display:flex;
  align-items:center;
  gap:27px;
  margin-top:42px;
}
.project-closing__logo{
  display:flex;
  align-items:center;
  flex:0 0 auto;
}
.project-closing__logo-image{
  display:block;
  width:auto;
  max-width:190px;
  max-height:58px;
  object-fit:contain;
}
.project-closing__signature strong{
  color:#fff;
  font-size:1.15rem;
  font-weight:900;
  letter-spacing:.11em;
}
.project-closing__signature span{
  padding-left:27px;
  border-left:1px solid rgba(255,255,255,.23);
  color:#8f9491;
  font-size:.57rem;
  font-weight:800;
  letter-spacing:.16em;
}

/* Existing reveal system */
.project-memorial .reveal{
  transform:translateY(22px);
}
.project-memorial .reveal.is-visible{
  transform:none;
}

@media(max-width:980px){
  .project-story{
    min-height:82svh;
  }
  .project-story__content{
    width:min(720px,76%);
  }
  .project-story__content--center{
    width:min(820px,92%);
  }
  .project-story h1,
  .project-story h2{
    font-size:clamp(3rem,8vw,5.3rem);
  }
  .project-timeline__item{
    padding-left:12px;
    padding-right:12px;
  }
}

@media(max-width:700px){
  body.page-projeto-iat-hawk{
    overflow-x:hidden;
  }
  .project-memorial,
  .project-story,
  .project-story__inner,
  .project-story__content,
  .project-closing,
  .project-closing__content{
    width:100%;
    max-width:100%;
    min-width:0;
  }

  .project-story{
    min-height:auto;
    overflow:hidden;
  }
  .project-story::before{
    inset:0;
    transform:none;
  }
  .project-story--left::after,
  .project-story--right::after{
    background:
      linear-gradient(0deg,#050606 0%,rgba(5,6,6,.91) 50%,rgba(5,6,6,.50) 100%),
      linear-gradient(90deg,rgba(4,5,5,.64),rgba(4,5,5,.18));
  }
  .project-story--center::after{
    background:
      linear-gradient(0deg,#050606 0%,rgba(5,6,6,.90) 52%,rgba(5,6,6,.48) 100%),
      radial-gradient(circle at center,rgba(4,5,5,.34),rgba(4,5,5,.70));
  }
  .project-story__inner{
    overflow:visible;
    padding-top:104px;
    padding-bottom:64px;
  }
  .project-story__content,
  .project-story--right .project-story__content,
  .project-story__content--center{
    width:100%;
    max-width:100%;
    min-width:0;
    margin-left:0;
    margin-right:0;
    text-align:left;
  }
  .project-story__index,
  .project-story__index--center{
    justify-content:flex-start;
    max-width:100%;
  }
  .project-story__index strong{
    flex:0 0 auto;
    font-size:2.45rem;
  }
  .project-story__index small{
    min-width:0;
    overflow-wrap:anywhere;
  }

  .project-eyebrow,
  .project-micro{
    max-width:100%;
    overflow-wrap:anywhere;
  }
  .project-eyebrow{
    font-size:.61rem;
    letter-spacing:.16em;
  }
  .project-micro{
    font-size:.56rem;
    line-height:1.45;
    letter-spacing:.16em;
  }

  .project-story h1,
  .project-story h2{
    width:100%;
    max-width:100%;
    margin-top:16px;
    font-size:clamp(2.35rem,11vw,3.6rem);
    line-height:.91;
    letter-spacing:-.042em;
    overflow-wrap:break-word;
    word-break:normal;
  }
  .project-story__lead{
    width:100%;
    max-width:100%;
    font-size:.92rem;
    line-height:1.52;
  }
  .project-story__text,
  .project-story__content--center .project-story__text{
    width:100%;
    max-width:100%;
    font-size:.87rem;
    line-height:1.62;
    text-align:left;
    overflow-wrap:break-word;
  }

  /* Timeline stays horizontal, but lives inside its own scroll viewport. */
  .project-timeline-scroll{
    width:100%;
    max-width:100%;
    min-width:0;
    margin-top:46px;
    overflow-x:auto;
    overflow-y:hidden;
    overscroll-behavior-inline:contain;
    scroll-snap-type:x proximity;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
  }
  .project-timeline-scroll::-webkit-scrollbar{
    display:none;
  }
  .project-timeline{
    display:flex;
    grid-template-columns:none;
    width:max-content;
    min-width:100%;
    margin:0;
    padding:30px 18px 8px;
  }
  .project-timeline__rail{
    top:9px;
    left:120px;
    right:120px;
  }
  .project-timeline__item{
    flex:0 0 min(72vw,240px);
    width:min(72vw,240px);
    min-width:0;
    padding:14px 14px 0;
    scroll-snap-align:center;
  }
  .project-timeline__item h3,
  .project-timeline__item p{
    max-width:100%;
    overflow-wrap:break-word;
  }
  .project-timeline__item p{
    font-size:.67rem;
  }

  .project-digital{
    width:100%;
    max-width:100%;
    align-items:flex-start;
    flex-direction:column;
    gap:7px;
    margin-top:32px;
    text-align:left;
  }
  .project-digital strong,
  .project-digital span{
    max-width:100%;
    overflow-wrap:anywhere;
  }

  .project-closing{
    min-height:72svh;
    overflow:hidden;
  }
  .project-closing::after{
    background:
      linear-gradient(0deg,rgba(4,5,5,.96),rgba(4,5,5,.20) 75%),
      linear-gradient(90deg,rgba(4,5,5,.72),rgba(4,5,5,.10));
  }
  .project-closing__content{
    padding-top:96px;
    padding-bottom:52px;
  }
  .project-closing h2{
    width:100%;
    max-width:100%;
    font-size:clamp(2.65rem,12.5vw,4.4rem);
    line-height:.91;
    overflow-wrap:break-word;
  }
  .project-closing__lead,
  .project-closing__content > p{
    width:100%;
    max-width:100%;
    overflow-wrap:break-word;
  }
  .project-closing__signature{
    width:100%;
    max-width:100%;
    align-items:center;
    flex-direction:column;
    gap:13px;
    text-align:center;
  }
  .project-closing__logo{
    width:100%;
    justify-content:center;
  }
  .project-closing__logo-image{
    max-width:178px;
    max-height:56px;
    margin-inline:auto;
  }
  .project-closing__signature strong,
  .project-closing__signature span{
    max-width:100%;
    overflow-wrap:anywhere;
  }
  .project-closing__signature span{
    padding-left:0;
    border-left:0;
    text-align:center;
  }
}

@media(prefers-reduced-motion:reduce){
  .project-memorial .reveal{
    transform:none;
  }
}
