/* Page Univers VFRP */

.page-univers .universe-hero{
  min-height:clamp(500px, 62svh, 680px);
  grid-template-columns:minmax(0,1.16fr) minmax(310px,.74fr);
  background:
    radial-gradient(circle at 18% 14%, rgba(255,249,230,.96), transparent 28rem),
    linear-gradient(105deg, rgba(255,249,230,.98) 0%, rgba(255,249,230,.91) 48%, rgba(255,249,230,.50) 74%, rgba(23,25,3,.18) 100%),
    var(--public-hero-img) center / cover no-repeat;
}

.page-univers .universe-hero h1{
  font-size:clamp(2.35rem, 4.7vw, 4.7rem);
}

.page-univers .universe-hero .hero-copy{
  max-width:900px;
}

.universe-compass{
  width:min(100%, 400px);
  padding:clamp(20px, 2.3vw, 28px);
  gap:15px;
}

.universe-card-kicker{
  margin:0;
  color:var(--public-wheat);
  font-size:.78rem;
  font-weight:950;
  letter-spacing:.09em;
  text-transform:uppercase;
}

.universe-compass h2{
  font-size:clamp(1.4rem, 2vw, 1.9rem);
  letter-spacing:-.03em;
}

.universe-compass ul{
  display:grid;
  gap:10px;
  margin:0;
  padding:0;
  list-style:none;
}

.universe-compass li{
  display:grid;
  grid-template-columns:88px 1fr;
  gap:12px;
  align-items:baseline;
  padding:11px 0;
  border-top:1px solid rgba(239,229,189,.14);
}

.universe-compass strong{
  color:#fff9e6;
}

.universe-compass span{
  color:rgba(255,249,230,.72);
  font-size:.9rem;
  line-height:1.4;
}

.page-univers .anchor-nav{
  top:calc(var(--site-header-h, 64px) + 10px);
  justify-content:center;
  overflow-x:auto;
  flex-wrap:nowrap;
  scrollbar-width:thin;
}

.page-univers .anchor-nav a{
  flex:0 0 auto;
  white-space:nowrap;
}

.fade-in-up{
  opacity:0;
  transform:translateY(12px);
  transition:opacity .42s ease-out, transform .42s ease-out;
}

.fade-in-up.is-visible{
  opacity:1;
  transform:none;
}

.universe-project-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}

.universe-project-card{
  position:relative;
  min-height:260px;
  padding:24px;
  overflow:hidden;
  border:1px solid var(--public-line);
  border-radius:20px;
  background:linear-gradient(155deg, rgba(255,249,230,.98), rgba(238,242,187,.62));
  box-shadow:0 14px 30px rgba(82,70,25,.09);
}

.universe-project-card > span{
  display:inline-flex;
  padding:6px 10px;
  border-radius:999px;
  color:var(--public-leaf-dark);
  background:rgba(238,242,187,.92);
  border:1px solid rgba(123,136,34,.22);
  font-size:.78rem;
  font-weight:950;
  letter-spacing:.07em;
  text-transform:uppercase;
}

.universe-project-card h3{
  max-width:320px;
  margin:42px 0 12px;
  color:var(--public-ink);
  font-size:clamp(1.25rem, 1.8vw, 1.6rem);
  line-height:1.12;
  letter-spacing:-.025em;
}

.universe-project-card p{
  margin:0;
  color:var(--public-muted);
  line-height:1.62;
}

.connected-world{
  display:grid;
  grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);
  gap:18px;
}

.connected-world-main{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:360px;
  padding:clamp(24px, 3vw, 38px);
  border-radius:22px;
  color:#fff9e6;
  background:
    radial-gradient(circle at 16% 12%, rgba(123,136,34,.34), transparent 20rem),
    linear-gradient(145deg, rgba(23,25,3,.98), rgba(52,58,13,.96));
  box-shadow:var(--public-shadow-soft);
}

.connected-world-main h3{
  margin:10px 0 12px;
  color:#fff9e6;
  font-size:clamp(1.55rem, 2.6vw, 2.35rem);
  line-height:1.08;
  letter-spacing:-.035em;
}

.connected-world-main p:not(.universe-card-kicker){
  margin:8px 0 0;
  color:rgba(255,249,230,.74);
  line-height:1.65;
}

.market-path{
  display:grid;
  gap:12px;
}

.market-path article{
  display:grid;
  grid-template-columns:1fr;
  align-items:start;
  padding:22px;
  border:1px solid var(--public-line);
  border-radius:20px;
  background:rgba(255,249,230,.92);
}

.market-path h3{
  margin:0 0 5px;
  color:var(--public-ink);
}

.market-path p{
  margin:0;
  color:var(--public-muted);
  line-height:1.52;
}

.season-timeline{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;
  margin:0;
  padding:0;
  list-style:none;
}

.season-timeline li{
  position:relative;
  min-height:235px;
  padding:28px;
  color:#fff9e6;
  background:linear-gradient(145deg, rgba(23,25,3,.96), rgba(52,58,13,.94));
  border-block:1px solid rgba(239,229,189,.18);
}

.season-timeline li:first-child{
  border-left:1px solid rgba(239,229,189,.18);
  border-radius:22px 0 0 22px;
}

.season-timeline li:last-child{
  border-right:1px solid rgba(239,229,189,.18);
  border-radius:0 22px 22px 0;
}

.season-timeline li + li::before{
  content:"";
  position:absolute;
  top:26px;
  bottom:26px;
  left:0;
  width:1px;
  background:rgba(239,229,189,.18);
}

.season-timeline span{
  display:inline-block;
  color:var(--public-wheat);
  font-size:.78rem;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.season-timeline h3{
  margin:42px 0 10px;
  color:#fff9e6;
  font-size:1.3rem;
}

.season-timeline p{
  margin:0;
  color:rgba(255,249,230,.70);
  line-height:1.6;
}

.universe-fairness{
  display:grid;
  grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);
  gap:clamp(24px, 4vw, 54px);
  background:
    radial-gradient(circle at 100% 0%, rgba(123,136,34,.17), transparent 23rem),
    linear-gradient(180deg, rgba(255,249,230,.98), rgba(239,229,189,.92));
}

.universe-fairness-copy{
  align-self:center;
}

.universe-fairness-copy h2{
  font-size:clamp(1.7rem, 2.8vw, 2.55rem);
}

.universe-fairness-copy > p:not(.section-eyebrow){
  color:var(--public-muted);
  line-height:1.65;
}

.framework-grid{
  display:grid;
  gap:12px;
}

.framework-grid article{
  padding:19px 21px;
  border:1px solid rgba(123,136,34,.24);
  border-radius:18px;
  background:rgba(255,249,230,.76);
}

.framework-grid h3{
  margin:0 0 6px;
  color:var(--public-ink);
  font-size:1.05rem;
}

.framework-grid p{
  margin:0;
  color:var(--public-muted);
  line-height:1.55;
}

.recruitment-gateway{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);
  gap:clamp(24px, 4vw, 56px);
  padding:clamp(24px, 3.4vw, 44px);
  border-radius:22px;
  background:
    radial-gradient(circle at 12% 20%, rgba(123,136,34,.34), transparent 22rem),
    linear-gradient(145deg, rgba(23,25,3,.98), rgba(52,58,13,.96));
  color:#fff9e6;
}

.recruitment-gateway h2{
  max-width:720px;
  color:#fff9e6;
  font-size:clamp(1.75rem, 3vw, 2.8rem);
}

.recruitment-gateway > div > p:not(.section-eyebrow){
  max-width:720px;
  color:rgba(255,249,230,.74);
  line-height:1.65;
}

.recruitment-route{
  display:grid;
  align-content:center;
  gap:12px;
  margin:0;
  padding:0;
  list-style:none;
}

.recruitment-route li{
  display:grid;
  grid-template-columns:38px 1fr;
  gap:12px;
  align-items:start;
  padding:15px;
  border:1px solid rgba(239,229,189,.17);
  border-radius:16px;
  background:rgba(255,249,230,.08);
}

.recruitment-route li > span{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:12px;
  color:var(--public-ink);
  background:var(--public-wheat);
  font-weight:950;
}

.recruitment-route p{
  margin:0;
  color:rgba(255,249,230,.72);
  line-height:1.5;
}

.recruitment-route strong{
  color:#fff9e6;
}

.universe-faq{
  display:grid;
  grid-template-columns:minmax(240px,.65fr) minmax(0,1.35fr);
  gap:clamp(20px, 4vw, 46px);
  align-items:start;
  margin-top:30px;
}

.universe-faq h2{
  font-size:clamp(1.55rem, 2.4vw, 2.2rem);
}

@media (max-width:980px){
  .page-univers .universe-hero,
  .connected-world,
  .universe-fairness,
  .recruitment-gateway,
  .universe-faq{
    grid-template-columns:1fr;
  }

  .universe-compass{
    justify-self:stretch;
    width:100%;
  }

  .universe-project-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .universe-project-card:last-child{
    grid-column:1 / -1;
  }
}

@media (max-width:720px){
  .page-univers .anchor-nav{
    justify-content:flex-start;
  }

  .page-univers .universe-hero{
    min-height:auto;
    background:
      linear-gradient(180deg, rgba(255,249,230,.96), rgba(255,249,230,.82)),
      var(--public-hero-img) 58% center / cover no-repeat;
  }

  .page-univers .universe-hero h1{
    font-size:clamp(2.15rem, 11vw, 3.4rem);
  }

  .universe-project-grid,
  .season-timeline{
    grid-template-columns:1fr;
  }

  .universe-project-card:last-child{
    grid-column:auto;
  }

  .season-timeline{
    gap:10px;
  }

  .season-timeline li,
  .season-timeline li:first-child,
  .season-timeline li:last-child{
    min-height:0;
    border:1px solid rgba(239,229,189,.18);
    border-radius:18px;
  }

  .season-timeline li + li::before{
    display:none;
  }

  .season-timeline h3{
    margin-top:24px;
  }

  .recruitment-gateway{
    padding:22px;
  }
}

@media (prefers-reduced-motion:reduce){
  .fade-in-up{
    opacity:1;
    transform:none;
    transition:none;
  }
}
