@charset "UTF-8";
/**
 * @file
 * About project styles — mobile-first.
 * Figma: Desktop 26:3310, Mobile 26:5735.
 *
 * Mobile: vertical stacked (title → body → cards stacked).
 * Desktop (>=992px): horizontal 2-col (text left + cards right).
 */
/* ==========================================================================
   Mobile base (xs)
   ========================================================================== */
.vel-about-project__inner {
  display: flex;
  flex-direction: column;
  gap: var(--vel-space-xl);
}

/* Order en mobile: title → cards → body */
.vel-about-project__text {
  order: 1;
}

.vel-about-project__cards {
  order: 2;
}

.vel-about-project__body {
  order: 3;
}

.vel-about-project__title {
  position: relative;
  margin: 0;
  margin-bottom: var(--vel-space-lg);
  font-family: var(--vel-font-heading);
  font-size: var(--vel-text-3xl-plus);
  font-weight: 800;
  color: var(--vel-primary);
  letter-spacing: var(--vel-tracking-snug);
  line-height: 40px;
  overflow-wrap: break-word;
  word-wrap: break-word;
}

.vel-about-project__title::after {
  content: "";
  position: absolute;
  bottom: -24px;
  left: 0;
  width: 75px;
  height: 5px;
  background: var(--vel-accent);
}

.vel-about-project__body {
  font-family: var(--vel-font-body);
  font-size: var(--vel-text-lg); /* 18px */
  font-weight: 500;
  color: var(--vel-primary);
  line-height: var(--vel-leading-card-body);
  overflow-wrap: break-word;
  word-wrap: break-word;
}

/* Cards — stacked on mobile */
.vel-about-project__cards {
  display: flex;
  flex-direction: column;
  gap: var(--vel-space-xl);
}

.vel-about-project__card {
  background: var(--vel-bg-white);
  border: 1px solid var(--vel-border);
  border-radius: var(--vel-card-radius-mobile); /* 24px */
  box-shadow: var(--vel-shadow-sm-mobile);
  padding: 16px 16px 24px;
  overflow: hidden;
}

.vel-about-project__card-image-wrapper {
  border-radius: 20px;
  overflow: hidden;
  margin-bottom: var(--vel-space-lg);
}

.vel-about-project__card-image {
  width: 100%;
  height: auto;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
}

.vel-about-project__card-title {
  font-family: var(--vel-font-heading);
  font-size: var(--vel-text-base); /* 20px */
  font-weight: 800; /* ExtraBold — Figma exact */
  color: var(--vel-primary);
  margin: 0 0 var(--vel-space-sm);
  line-height: var(--vel-leading-relaxed);
}

.vel-about-project__card-body {
  font-family: var(--vel-font-body);
  font-size: var(--vel-text-base); /* 16px */
  font-weight: 500;
  color: var(--vel-primary); /* Figma: #00466E, NOT muted gray */
  line-height: var(--vel-leading-snug);
  margin: 0;
  overflow-wrap: break-word;
  word-wrap: break-word;
}

/* ==========================================================================
   sm (576px)
   ========================================================================== */
@media (min-width: 576px) {
  .vel-about-project__title {
    font-size: var(--vel-text-4xl); /* 48px */
    line-height: var(--vel-leading-heading-md);
  }
  .vel-about-project__cards {
    flex-direction: row;
    gap: var(--vel-space-lg);
  }
  .vel-about-project__card {
    flex: 1;
  }
}
/* ==========================================================================
   md (768px)
   ========================================================================== */
@media (min-width: 768px) {
  .vel-about-project__inner {
    gap: var(--vel-space-2xl);
  }
  .vel-about-project__body {
    font-size: var(--vel-text-xl); /* 20px */
    line-height: var(--vel-leading-loose); /* 32.5px */
  }
  .vel-about-project__cards {
    gap: var(--vel-space-xl);
  }
  .vel-about-project__card {
    border-radius: 32px;
    padding: 16px 16px 24px;
  }
  .vel-about-project__card-image-wrapper {
    border-radius: 24px;
  }
  .vel-about-project__card-title {
    font-size: var(--vel-text-2xl); /* 24px */
    line-height: 28px;
  }
  .vel-about-project__card-body {
    font-size: var(--vel-text-lg); /* 18px */
    line-height: var(--vel-leading-card-body);
  }
}
/* ==========================================================================
   lg (992px) — Desktop 2-col layout
   ========================================================================== */
@media (min-width: 992px) {
  .vel-about-project__title {
    font-size: 64px;
    line-height: 68px;
    letter-spacing: var(--vel-tracking-tight);
    margin-bottom: var(--vel-space-3xl);
  }
  .vel-about-project__title::after {
    bottom: -32px;
    height: 10px;
  }
  .vel-about-project__body {
    font-size: var(--vel-text-xl);
    line-height: var(--vel-leading-loose);
  }
  .vel-about-project__cards {
    gap: 40px;
  }
  .vel-about-project__card {
    border-radius: var(--vel-card-radius-lg); /* 40px */
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.04);
    padding: 16px 16px 24px;
    width: 340px;
  }
  .vel-about-project__card-image-wrapper {
    border-radius: 27px;
  }
  .vel-about-project__card-title {
    font-size: var(--vel-text-2xl); /* 24px */
    line-height: var(--vel-leading-card-title);
  }
}
/* ==========================================================================
   xl (1200px)
   ========================================================================== */
@media (min-width: 1200px) {
  .vel-about-project__card {
    width: 380px;
  }
}
/* ==========================================================================
   xl (1327px)
   ========================================================================== */
@media (min-width: 1327px) {
  .vel-about-project__inner {
    display: grid;
    grid-template-columns: 1fr auto;
    grid-template-areas: "text cards" "body cards";
    -moz-column-gap: 60px;
         column-gap: 60px;
    row-gap: var(--vel-space-xl);
    align-items: start;
  }
  /* Reset order en desktop — usar grid areas */
  .vel-about-project__text {
    grid-area: text;
    order: unset;
  }
  .vel-about-project__body {
    grid-area: body;
    order: unset;
  }
  .vel-about-project__cards {
    grid-area: cards;
    order: unset;
    gap: 48px;
    height: 100%;
  }
  .vel-about-project__card {
    display: flex;
    flex-direction: column;
  }
  .vel-about-project__card-image-wrapper {
    flex: 1;
  }
  .vel-about-project__card-image {
    height: 100%;
  }
}
/* ==========================================================================
   xxl (1600px) — Full Figma spec sizes
   ========================================================================== */
@media (min-width: 1600px) {
  .vel-about-project__title {
    font-size: var(--vel-text-6xl); /* 80px */
    line-height: var(--vel-leading-heading-xl);
  }
  .vel-about-project__card {
    width: 412px; /* Figma exact */
  }
  .vel-about-project__cards {
    gap: 54px; /* Figma exact */
  }
}
/*# sourceMappingURL=about-project.css.map */
