/* ========================================= */
/* HERO */
/* ========================================= */

.selected-hero {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 80% 20%,
      rgba(123,77,255,.18),
      transparent 35%),
    linear-gradient(
      135deg,
      #09051f 0%,
      #12082f 35%,
      #24107a 70%,
      #4b1fff 100%
    );
  padding: 180px 0 120px;
}

.selected-grid{
  position:absolute;
  inset:0;
  opacity:.08;
  background-image:
    linear-gradient(rgba(255,255,255,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.08) 1px, transparent 1px);
  background-size:60px 60px;
}

.selected-hero-container {

  position: relative;

  z-index: 2;

  display: grid;

  grid-template-columns: 1fr 1fr;

  gap: 90px;

  align-items: center;

  transform: translateY(-40px);

}

.selected-title{
  font-size:clamp(3.5rem, 6vw, 6rem);
  line-height:.95;
  font-weight:800;
  margin:20px 0 30px;
}

.title-white{
  display:block;
  color:#fff;
}

.title-gradient{

  background:linear-gradient(

    90deg,

    #A14BFF 0%,

    #7B4DFF 55%,

    #8B3FFC 100%

  );

  -webkit-background-clip:text;

  background-clip:text;

  -webkit-text-fill-color:transparent;

}

.selected-description{
  max-width:620px;
  color:rgba(255,255,255,.82);
  font-size:1.15rem;
  line-height:1.8;
  margin-bottom:40px;
}

.selected-hero-buttons .btn-secondary{

  display:inline-flex;
  align-items:center;
  justify-content:center;

  height:58px;

  padding:0 34px;

  border-radius:999px;

  text-decoration:none;

  font-size:.95rem;
  font-weight:600;

  color:#fff;

  border:1px solid rgba(255,255,255,.2);

  backdrop-filter:blur(20px);

  transition:.35s ease;

}

.selected-hero-buttons .btn-secondary:hover{

  background:rgba(255,255,255,.08);

}
.selected-hero-buttons{

  display:flex;

  gap:16px;

  margin-top:20px;

}

.hero-shape{

  aspect-ratio:1/1;

  max-width:560px;

  margin:0 auto;

  overflow:hidden;

  transform:rotate(-4deg);

  box-shadow:
    0 40px 80px rgba(0,0,0,.35);

}

.hero-shape img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.hero-bottom-wave{
  position:absolute;
  left:0;
  bottom:-1px;
  width:100%;
  z-index:3;
}

.hero-bottom-wave svg{
  display:block;
  width:100%;
  height:180px;
}

.hero-bottom-wave path{
  fill:#fff;
}

/* ========================================= */
/* IMPACT */
/* ========================================= */

.impact-section{
  position:relative;
  padding:120px 0;
}

.impact-grid{
  display:grid;
  grid-template-columns:2fr 1fr 1fr;
  gap:30px;
  margin-bottom:60px;
}

.impact-copy h2{
  font-size:clamp(2.5rem,4vw,4rem);
  line-height:1.1;
  max-width:700px;
}

.impact-copy h2 span{
  background:linear-gradient(
    90deg,
    #4d7cff,
    #7b4dff
  );
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
}

.impact-stat-card{
  background:#fff;
  border-radius:32px;
  padding:40px;
  box-shadow:
    0 20px 60px rgba(15,23,42,.08);
}

.impact-icon{
  width:70px;
  height:70px;
  display:grid;
  place-items:center;
  border-radius:20px;
  background:linear-gradient(
    135deg,
    #4d7cff,
    #7b4dff
  );
  color:#fff;
  font-size:1.6rem;
  margin-bottom:24px;
}

.impact-stat-card h3{
  font-size:3rem;
  margin-bottom:10px;
}

.impact-stat-card p{
  color:#64748b;
}

.impact-stat-card small{
  display:block;
  margin-top:16px;
  font-weight:700;
  color:#7b4dff;
}

.impact-cards{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:24px;
}

.impact-card{
  background:#fff;
  border-radius:30px;
  padding:35px;
  box-shadow:
    0 15px 50px rgba(15,23,42,.06);
  transition:.4s;
}

.impact-card:hover{
  transform:translateY(-8px);
}

.impact-card-icon{
  width:64px;
  height:64px;
  display:grid;
  place-items:center;
  border-radius:18px;
  background:
    rgba(77,124,255,.1);
  color:#4d7cff;
  font-size:1.4rem;
  margin-bottom:20px;
}

.impact-card h3{
  margin-bottom:18px;
}

.impact-card ul{
  padding-left:18px;
  color:#64748b;
  line-height:1.8;
}

/* =========================================
   PANORAMIC MOBILE
========================================= */

.selected-panoramic{

  min-height:650px;

}


.panoramic-content h2{

  font-size:2.3rem;

}

.panoramic-content .section-tag{

  display:none;

}



/* ========================================= */
/* ECOSYSTEM */
/* ========================================= */

.ecosystem-section{
  position:relative;
  padding:140px 0;
}

.ecosystem-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:90px;
  align-items:start;
}

.ecosystem-image{
  position:relative;
}

.ecosystem-shape{
  position:relative;
  z-index:2;

  width:100%;
  aspect-ratio:1/1;

  overflow:hidden;

  border-radius:
    58% 42% 61% 39% /
    39% 58% 42% 61%;

  transform:rotate(-6deg);

  box-shadow:
    0 40px 80px rgba(15,23,42,.15);

  animation:
    blobMorph 12s ease-in-out infinite;
}

.blob-support{
  position:absolute;
  border-radius:50%;
  filter:blur(20px);
}

.blob-a{
  width:220px;
  height:220px;
  background:
    rgba(77,124,255,.15);
  top:-50px;
  left:-40px;
}

.blob-b{
  width:180px;
  height:180px;
  background:
    rgba(123,77,255,.15);
  right:-20px;
  bottom:-20px;
}

.ecosystem-content h2{
  font-size:clamp(2.5rem,4vw,4rem);
  line-height:1.1;
  margin:20px 0 24px;
}

.ecosystem-content p{
  color:#64748b;
  line-height:1.9;
  margin-bottom:40px;
}

.tools-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:20px;
}

.tool-card{
  position:relative;
  overflow:hidden;
  padding:30px;
  border-radius:28px;
  background:
    rgba(255,255,255,.85);
  backdrop-filter:blur(20px);
  box-shadow:
    0 20px 60px rgba(15,23,42,.08);
  transition:.4s;
}

.tool-card:hover{
  transform:translateY(-6px);
}

.tool-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(
      135deg,
      rgba(77,124,255,.05),
      rgba(123,77,255,.05)
    );
}

.tool-icon{
  position:relative;
  z-index:2;

  width:58px;
  height:58px;
  display:grid;
  place-items:center;

  border-radius:16px;

  background:
    linear-gradient(
      135deg,
      #4d7cff,
      #7b4dff
    );

  color:#fff;
  font-size:1.2rem;
  margin-bottom:18px;
}

.tool-card h3{
  position:relative;
  z-index:2;
  margin-bottom:10px;
}

.tool-card p{
  position:relative;
  z-index:2;
  margin:0;
  color:#64748b;
  line-height:1.7;
}

/* ========================================= */
/* SEARCH MODEL */
/* ========================================= */

.search-model-section{
  position:relative;
  padding:140px 0;
  background:
    linear-gradient(
      180deg,
      #f8faff 0%,
      #ffffff 100%
    );
}

.search-model-header{
  text-align:center;
  max-width:900px;
  margin:0 auto 80px;
}

.search-model-header h2{
  font-size:clamp(2.8rem,4vw,4.5rem);
  line-height:1.05;
  margin:20px 0;
}

.search-model-header p{
  max-width:700px;
  margin:auto;
  color:#64748b;
  line-height:1.9;
}

.model-flow{
  display:grid;
  grid-template-columns:1fr auto 1fr auto 1fr;
  gap:20px;
  align-items:center;
}

.model-step{
  position:relative;
  background:#fff;
  border-radius:36px;
  padding:50px 40px;
  text-align:center;

  box-shadow:
    0 25px 70px rgba(15,23,42,.08);

  overflow:hidden;
}

.model-step::before{
  content:"";
  position:absolute;
  inset:0;

  background:
    linear-gradient(
      135deg,
      rgba(77,124,255,.04),
      rgba(123,77,255,.04)
    );
}

.model-number{
  position:relative;
  z-index:2;

  font-size:.8rem;
  letter-spacing:2px;
  font-weight:700;

  color:#7b4dff;
  margin-bottom:20px;
}

.model-icon{
  position:relative;
  z-index:2;

  width:90px;
  height:90px;

  margin:0 auto 24px;

  border-radius:28px;

  display:grid;
  place-items:center;

  background:
    linear-gradient(
      135deg,
      #4d7cff,
      #7b4dff
    );

  color:#fff;
  font-size:2rem;
}

.model-step h3{
  position:relative;
  z-index:2;

  font-size:1.8rem;
  margin-bottom:16px;
}

.model-step p{
  position:relative;
  z-index:2;

  color:#64748b;
  line-height:1.8;
}

.model-connector{
  font-size:3rem;
  font-weight:700;
  color:#7b4dff;
}

/* ========================================= */
/* PROCESS */
/* ========================================= */

.selection-process{
  position:relative;
  padding:150px 0;
}

.process-header{
  text-align:center;
  max-width:850px;
  margin:0 auto 80px;
}

.process-header h2{
  font-size:clamp(2.8rem,4vw,4.5rem);
  line-height:1.05;
  margin-top:20px;
}

/* ========================================= */
/* PROCESS TIMELINE */
/* ========================================= */
.selection-process{
  position:relative;
  overflow:hidden;
}

.process-bg-shape{
  position:absolute;

  z-index:0;

  opacity:.9;

  border-radius:
    58% 42% 61% 39% /
    39% 58% 42% 61%;

  animation:
    blobMorph 16s ease-in-out infinite;

  box-shadow:
    0 30px 80px rgba(77,124,255,.12);
}

.shape-a{

  width:420px;
  height:420px;

  left:-180px;
  top:120px;

  background:
    linear-gradient(
      135deg,
      rgba(77,124,255,.25) 0%,
      rgba(123,77,255,.18) 60%,
      rgba(255,255,255,.05) 100%
    );

  transform:rotate(-18deg);
}
.shape-b{

  width:260px;
  height:260px;

  right:-80px;
  top:500px;

  background:
    linear-gradient(
      135deg,
      rgba(123,77,255,.22),
      rgba(77,124,255,.12)
    );

  transform:rotate(22deg);
}
.shape-c{

  width:220px;
  height:220px;

  left:8%;

  top:700px;

  background:
    linear-gradient(
      135deg,
      rgba(77,124,255,.18),
      rgba(123,77,255,.08)
    );
}
.shape-d{

  width:320px;
  height:320px;

  right:-100px;

  top:900px;

  background:
    linear-gradient(
      135deg,
      rgba(123,77,255,.18),
      rgba(77,124,255,.10)
    );

  transform:rotate(-15deg);
}
.shape-e{

  width:260px;
  height:260px;

  left:50%;
  top:380px;

  transform:
    translateX(-50%)
    rotate(18deg);

  background:
    linear-gradient(
      135deg,
      rgba(77,124,255,.22),
      rgba(123,77,255,.12)
    );

  z-index:0;
}
.shape-f{

  width:320px;
  height:320px;

  left:50%;
  top:850px;

  transform:
    translateX(-50%)
    rotate(-22deg);

  background:
    linear-gradient(
      135deg,
      rgba(123,77,255,.18),
      rgba(77,124,255,.12)
    );

  z-index:0;
}
.shape-g{

  width:180px;
  height:180px;

  left:50%;
  top:620px;

  transform:
    translateX(-50%)
    rotate(35deg);

  background:
    linear-gradient(
      135deg,
      rgba(77,124,255,.15),
      rgba(123,77,255,.08)
    );
}

.selection-process{
  position:relative;
  padding:150px 0;
}

.process-header{
  text-align:center;
  max-width:850px;
  margin:0 auto 80px;
}

.process-header h2{
  font-size:clamp(2.8rem,4vw,4.5rem);
  line-height:1.05;
  margin-top:20px;
}

.process-timeline{
  position:relative;
  max-width:1000px;
  margin:100px auto 0;
}

.process-timeline::before{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  left:50%;
  width:4px;
  transform:translateX(-50%);
  background:linear-gradient(
    180deg,
    #4d7cff,
    #7b4dff
  );
  border-radius:20px;
}

.process-node{
  position:relative;
  width:50%;
  margin-bottom:10px;
}

.process-node.left{
  padding-right:35px;
}

.process-node.right{
  margin-left:50%;
  padding-left:35px;
}

.process-node.center{
  width:100%;
  transform:translateY(60px);
}

.process-dot{
  position:absolute;
  top:38px;
  width:22px;
  height:22px;
  border-radius:50%;
  background:linear-gradient(
    135deg,
    #4d7cff,
    #7b4dff
  );
  box-shadow:
    0 0 0 8px rgba(77,124,255,.12);
}

.process-node.left .process-dot{
  right:-11px;
}

.process-node.right .process-dot{
  left:-11px;
}

.process-node.center .process-dot{
  left:50%;
  transform:translateX(-50%);
}

.process-content{
  background:#fff;
  border-radius:32px;
  padding:35px;
  box-shadow:
    0 20px 60px rgba(15,23,42,.08);
  transition:.35s;
}

.process-content:hover{
  transform:translateY(-6px);
}

.process-content i{
  font-size:2rem;
  color:#7b4dff;
  margin-bottom:18px;
}

.process-content h3{
  margin-bottom:14px;
}

.process-content p{
  color:#64748b;
  line-height:1.8;
}

.process-node.center .process-content{
  max-width:650px;
  margin:auto;
  text-align:center;
}
/* ========================================= */
/* ASSESSMENT + COMMITMENT */
/* ========================================= */

.assessment-commitment{
  position:relative;
  padding:150px 0;
  overflow:hidden;
}

.assessment-layout{
  display:grid;
  grid-template-columns:
    1.3fr
    1fr
    .9fr;

  gap:40px;

  align-items:start;
}

/* IMAGE */

.assessment-image-column{
  position:relative;

  transform:translateY(-450px);
}

.assessment-shape{
  width:100%;
  height:560px;

  overflow:hidden;

  border-radius:
    62% 38% 55% 45% /
    43% 57% 43% 57%;

  transform:rotate(2deg);

  box-shadow:
    0 40px 80px rgba(15,23,42,.15);

  animation:
    blobMorph 14s ease-in-out infinite;
}

.assessment-shape img{
  width:100%;
  height:100%;
  object-fit:cover;
}

@keyframes blobMorph{

  0%{
    border-radius:
      58% 42% 61% 39% /
      39% 58% 42% 61%;
  }

  50%{
    border-radius:
      44% 56% 37% 63% /
      63% 38% 62% 37%;
  }

  100%{
    border-radius:
      58% 42% 61% 39% /
      39% 58% 42% 61%;
  }

}

/* CONTENT */

.assessment-content{
  background:#fff;

  border-radius:38px;

  padding:50px;

  box-shadow:
    0 25px 70px rgba(15,23,42,.08);
}

.assessment-content h2{
  font-size:clamp(2rem,3vw,3rem);
  line-height:1.1;
  margin:20px 0;
}

.assessment-content p{
  color:#64748b;
  line-height:1.9;
  margin-bottom:35px;
}

.competencies-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}

.competencies-grid span{
  display:flex;
  align-items:center;

  min-height:58px;

  padding:14px 18px;

  border-radius:16px;

  background:
    rgba(77,124,255,.08);

  color:#1e293b;
  font-weight:600;
}

/* COMMITMENT */

.commitment-column{
  display:flex;
  flex-direction:column;
  gap:20px;
}

.commitment-card{
  background:#fff;

  border-radius:32px;

  padding:34px;

  box-shadow:
    0 20px 60px rgba(15,23,42,.07);

  position:relative;
  overflow:hidden;
}

.commitment-card::before{
  content:"";
  position:absolute;
  top:0;
  left:0;

  width:5px;
  height:100%;

  background:
    linear-gradient(
      180deg,
      #4d7cff,
      #7b4dff
    );
}

.commitment-card h3{
  font-size:1.4rem;
  margin-bottom:14px;
}

.commitment-card p{
  color:#64748b;
  line-height:1.8;
}

/* ========================================= */
/* FLOATING BLOBS */
/* ========================================= */

.assessment-commitment::before{
  content:"";
  position:absolute;

  width:400px;
  height:400px;

  border-radius:50%;

  background:
    rgba(77,124,255,.06);

  top:0;
  right:-150px;

  filter:blur(40px);
}

.assessment-commitment::after{
  content:"";
  position:absolute;

  width:350px;
  height:350px;

  border-radius:50%;

  background:
    rgba(123,77,255,.06);

  bottom:0;
  left:-120px;

  filter:blur(40px);
}

/* ========================================= */
/* SECTION HEADINGS */
/* ========================================= */

.section-heading{
  max-width:900px;
  margin:0 auto 80px;
}

.section-heading.center{
  text-align:center;
}

.section-heading h2{
  font-size:clamp(2.8rem,4vw,4.5rem);
  line-height:1.05;
  margin:20px 0;
}

.section-heading p{
  color:#64748b;
  line-height:1.9;
  max-width:760px;
  margin:auto;
}

/* ========================================= */
/* BE ON TIME */
/* ========================================= */

.be-on-time-section{
  position:relative;
  padding:160px 0;
  background:
    linear-gradient(
      180deg,
      #ffffff 0%,
      #f8faff 100%
    );
}

.timeline-wrapper{
  position:relative;

  display:grid;
  grid-template-columns:
    repeat(5,1fr);

  gap:24px;

  margin-top:100px;
}

.timeline-line{
  position:absolute;

  top:35px;
  left:5%;
  right:5%;

  height:2px;

  background:
    linear-gradient(
      90deg,
      #4d7cff,
      #7b4dff
    );
}

.timeline-item{
  position:relative;
  text-align:center;
}

.timeline-dot{
  width:22px;
  height:22px;

  margin:0 auto 24px;

  border-radius:50%;

  background:
    linear-gradient(
      135deg,
      #4d7cff,
      #7b4dff
    );

  box-shadow:
    0 0 0 8px rgba(77,124,255,.12);
}

.timeline-week{
  display:block;

  font-size:.8rem;
  font-weight:800;
  letter-spacing:2px;

  color:#7b4dff;

  margin-bottom:14px;
}

.timeline-item h3{
  margin-bottom:14px;
  font-size:1.25rem;
}

.timeline-item p{
  color:#64748b;
  line-height:1.7;
}

/* ========================================= */
/* TESTIMONIALS */
/* ========================================= */

.testimonials-section{
  padding:150px 0;
}

.testimonials-grid{
  display:grid;
  grid-template-columns:
    repeat(3,1fr);

  gap:30px;
}

.testimonial-card{
  position:relative;

  background:#fff;

  border-radius:36px;

  padding:45px;

  box-shadow:
    0 20px 60px rgba(15,23,42,.07);

  overflow:hidden;
}

.testimonial-card::before{
  content:"";
  position:absolute;

  top:0;
  left:0;

  width:100%;
  height:4px;

  background:
    linear-gradient(
      90deg,
      #4d7cff,
      #7b4dff
    );
}

.quote-icon{
  color:#7b4dff;
  font-size:1.8rem;
  margin-bottom:24px;
}

.testimonial-card p{
  color:#64748b;
  line-height:1.9;
  margin-bottom:35px;
}

.testimonial-author{
  display:flex;
  align-items:center;
  gap:16px;
}

.author-avatar{
  width:60px;
  height:60px;
  overflow:hidden;
  border-radius:50%;
}

.author-avatar img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.testimonial-author strong{
  display:block;
}

.testimonial-author span{
  font-size:.9rem;
  color:#64748b;
}

/* ========================================= */
/* CTA */
/* ========================================= */

.selected-cta{
  padding:100px 0 140px;
}

.cta-box{
  position:relative;
  overflow:hidden;

  border-radius:50px;

  background:
    linear-gradient(
      135deg,
      #09051f,
      #24107a,
      #4b1fff
    );

  padding:80px;

  display:grid;
  grid-template-columns:
    auto
    1fr
    auto;

  gap:50px;

  align-items:center;
}

.cta-shape{
  position:absolute;

  width:280px;
  height:280px;

  border-radius:50%;

  background:
    rgba(255,255,255,.06);

  top:-100px;
  right:-100px;

  filter:blur(20px);
}

.shape-two{
  width:220px;
  height:220px;

  bottom:-100px;
  left:-80px;
  top:auto;
}

.cta-symbol{
  position:relative;
  z-index:2;
}

.cta-symbol img{
  width:100px;
}

.cta-content{
  position:relative;
  z-index:2;
}

.cta-content h2{
  color:#fff;

  font-size:clamp(
    2.4rem,
    4vw,
    4rem
  );

  line-height:1.05;

  margin:18px 0;
}

.cta-content p{
  color:
    rgba(255,255,255,.8);

  line-height:1.8;
}

.cta-actions{
  position:relative;
  z-index:2;

  display:flex;
  flex-direction:column;
  gap:16px;
}


/* =========================================
   HERO BUTTONS
========================================= */

.selected-hero .btn-link{

  color:#fff;

  border:1px solid rgba(255,255,255,.18);

  background:
    rgba(255,255,255,.08);

}

.selected-hero .btn-link:hover{

  background:
    rgba(255,255,255,.16);

}

@media (max-width:768px){

  .impact-copy .section-tag,
  .section-tag.light{
    display:none !important;
  }

  .container{
    padding-left:24px;
    padding-right:24px;
  }

  section{
    overflow:hidden;
  }

  /* HERO */

  .selected-hero{
    padding-top:120px;
    padding-bottom:50px;
  }

  .selected-hero-container{
    grid-template-columns:1fr;
    gap:0;
    transform:none;
  }

  .selected-hero-media{
    display:none;
  }

  .selected-title{
    font-size:3.2rem;
    line-height:.95;
    margin-bottom:20px;
  }

  .selected-description{
    font-size:1rem;
    line-height:1.7;
    margin-bottom:28px;
  }

  .selected-hero-buttons{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
    margin-top:0;
  }

  .selected-hero-buttons a{
    width:100%;
    justify-content:center;
  }

  .hero-bottom-wave{
    height:80px;
  }

  /* SECCIONES */

.impact-section,
.ecosystem-section,
.search-model-section,
.selection-process,
.assessment-commitment,
.be-on-time-section,
.testimonials-section{

  padding-top:60px;
  padding-bottom:60px;

}

.section-heading,
.search-model-header,
.process-header{

  margin-bottom:35px;

}

.section-heading h2,
.search-model-header h2,
.process-header h2,
.ecosystem-content h2,
.impact-copy h2{

  font-size:2.2rem;

  line-height:1.05;

}

/* IMPACT */

.impact-grid{

  display:grid;

  grid-template-columns:1fr !important;

  gap:18px;

  margin-bottom:20px;

}

.impact-copy{

  width:100%;

}

.impact-stat-card{

  width:100%;

  padding:20px;

  border-radius:20px;

}

.impact-stat-card h3{

  font-size:2rem;

}

.impact-stat-card p{

  font-size:.95rem;

}

.impact-icon{

  width:52px;
  height:52px;

  font-size:1.1rem;

  margin-bottom:16px;

}

.impact-cards{

  display:grid;

  grid-template-columns:1fr 1fr;

  gap:14px;

}

.impact-card{

  padding:18px;

  border-radius:20px;

}

.impact-card-icon{

  width:48px;
  height:48px;

  margin-bottom:12px;

}

.impact-card h3{

  font-size:1rem;

  margin-bottom:10px;

}

.impact-card ul{

  font-size:.85rem;

  line-height:1.5;

}

  /* PANORAMIC */

  .selected-panoramic{
    position:relative;
    height:420px;
    min-height:420px;
    overflow:hidden;
  }

  .panoramic-image{
    position:absolute;
    inset:0;
  }

  .panoramic-parallax{
    position:absolute;
    inset:0;
  }

  .panoramic-parallax img{
    width:100%;
    height:100%;
    object-fit:cover;
  }

  .panoramic-content{
    position:absolute;
    inset:0;
    z-index:10;
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:24px;
  }

  .panoramic-content h2{
    font-size:2.3rem;
    line-height:1.05;
    max-width:100%;
    color:#fff;
  }

  /* ECOSYSTEM */

.ecosystem-grid{

  grid-template-columns:1fr;

  gap:24px;

}

.ecosystem-image{

  display:none;

}

.ecosystem-shape{

  display:none;

}

.blob-support{

  display:none;

}

.ecosystem-content h2{

  font-size:1.9rem;

  line-height:1.1;

}

.ecosystem-content p{

  font-size:.95rem;

  line-height:1.7;

}

.tools-grid{

  grid-template-columns:1fr 1fr;

  gap:12px;

}

.tool-card{

  padding:18px;

  border-radius:20px;

}

.tool-icon{

  width:46px;
  height:46px;

  font-size:1rem;

  margin-bottom:12px;

}

/* SEARCH MODEL */

.model-flow{

  display:flex;

  flex-direction:column;

  gap:16px;

}

.model-connector{

  display:none !important;

}

.model-step{

  width:100%;

  padding:24px;

  border-radius:24px;

}

.model-number{

  margin-bottom:12px;

}

.model-icon{

  width:60px;
  height:60px;

  margin-bottom:14px;

  font-size:1.3rem;

}

.model-step h3{

  font-size:1.2rem;

}

.model-step p{

  font-size:.95rem;

  line-height:1.6;

}

/* PROCESS */

.process-timeline::before{

  left:18px;

}

.process-node,
.process-node.left,
.process-node.right,
.process-node.center{

  width:100%;

  margin-left:0;

  padding-left:60px;

  padding-right:0;

}

.process-node.left .process-dot,
.process-node.right .process-dot,
.process-node.center .process-dot{

  left:7px;

  right:auto;

  transform:none;

}

.process-content{

  padding:24px;

  border-radius:24px;

}

/* ASSESSMENT */

.assessment-layout{

  display:flex;

  flex-direction:column;

  gap:20px;

}

.assessment-image-column{

  display:none;

}

.assessment-content{

  padding:24px;

  border-radius:24px;

}

.assessment-content h2{

  font-size:2.1rem;

  line-height:1.05;

  margin-bottom:18px;

}

.assessment-content p{

  font-size:1rem;

  line-height:1.7;

}

.competencies-grid{

  grid-template-columns:1fr;

}

.competencies-grid span{

  min-height:auto;

  padding:12px 16px;

}

.commitment-column{

  width:100%;

}

.commitment-card{

  padding:22px;

  border-radius:22px;

}

.commitment-card h3{

  font-size:1.3rem;

}

.commitment-card p{

  font-size:.95rem;

  line-height:1.6;

}

/* TIMELINE */

.timeline-wrapper{

  display:flex;

  flex-direction:column;

  gap:24px;

  margin-top:40px;

}

.timeline-line{

  display:none;

}

.timeline-item{

  text-align:left;

  padding-left:40px;

  position:relative;

}

.timeline-dot{

  position:absolute;

  left:0;

  top:6px;

  margin:0;

}

.timeline-week{

  display:block;

  margin-bottom:8px;

  font-size:.8rem;

}

.timeline-item h3{

  font-size:1.4rem;

  margin-bottom:10px;

}

.timeline-item p{

  font-size:1rem;

  line-height:1.6;

}

  /* HIDE TESTIMONIALS MOBILE */

.testimonials-section{

  display:none;

}

/* CTA */

.selected-cta{

  padding-top:40px;
  padding-bottom:60px;

}

.cta-box{

  display:flex;

  flex-direction:column;

  align-items:flex-start;

  padding:32px 24px;

  gap:24px;

  border-radius:32px;

}

.cta-symbol{

  display:none;

}

.cta-content{

  width:100%;

}

.cta-content .section-tag{

  display:none;

}

.cta-content h2{

  font-size:1.8rem;

  line-height:1.05;

  margin-bottom:16px;

}

.cta-content p{

  font-size:1rem;

  line-height:1.7;

}

.cta-actions{

  width:100%;

  display:block;

}

.cta-actions .btn-white{

  display:flex;

  width:100%;

  justify-content:center;

  min-width:0;

  max-width:100%;

  box-sizing:border-box;

}
}