/* ----------------- HERO ----------------- */

.hero {

  min-height: 100vh;

  display: flex;

  align-items: center;

  padding-top: 10rem;

}

.hero__content {

  max-width: 720px;

}

.hero__tag {

  display: inline-block;

  margin-bottom: 2rem;

  color: var(--color-gold);

  font-size: 0.7rem;

  letter-spacing: 0.3em;

  text-transform: uppercase;

}

.hero__title {

  font-size: clamp(3rem, 6vw, 5rem);

  line-height: 1.05;

  margin-bottom: 2rem;

}

.hero__title em {

  font-style: italic;

  color: var(--color-gold-light);

}

.hero__description {

  max-width: 580px;

  color: var(--color-gray-light);

  font-size: 1rem;

  line-height: 1.9;

}

/* ----------------- ABOUT ----------------- */

.about-section {

  background: var(--color-navy-mid);

}

.section-title {

  max-width: 700px;

  margin-bottom: 2rem;

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

  line-height: 1.15;

}

.section-title em {

  font-style: italic;

  color: var(--color-gold-light);

}

.about-grid {

  display: grid;

  grid-template-columns: 1.5fr 1fr;

  gap: 4rem;

  margin-top: 4rem;

}

.about-content {

  display: flex;

  flex-direction: column;

  gap: 1.5rem;

}

.about-content p {

  color: var(--color-gray-light);

  line-height: 1.9;

}

.about-card {

  padding: 2.5rem;

  border: var(--border-gold-soft);

  background: rgba(255,255,255,0.02);

}

.about-card h3 {

  margin-bottom: 1rem;

  font-size: 1.8rem;

}

.about-card p {

  color: var(--color-gray-light);

}

/* ----------------- SOLUTIONS ----------------- */

.solutions-section {

  position: relative;

}

.solutions-grid {

  display: grid;

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

  gap: 2px;

  margin-top: 5rem;

}

.solution-card {

  position: relative;

  padding: 3rem 2.5rem;

  background: var(--color-navy-mid);

  overflow: hidden;

  transition: var(--transition-default);

}

.solution-card:hover {

  background: var(--color-navy-light);

  transform: translateY(-4px);

}

.solution-card::after {

  content: '';

  position: absolute;

  left: 0;

  bottom: 0;

  width: 100%;

  height: 2px;

  background: var(--color-gold);

  transform: scaleX(0);

  transform-origin: left;

  transition: var(--transition-default);

}

.solution-card:hover::after {

  transform: scaleX(1);

}

.solution-number {

  position: absolute;

  top: 1rem;

  right: 1.5rem;

  font-family: var(--font-heading);

  font-size: 5rem;

  color: rgba(201,168,76,0.08);

}

.solution-card h3 {

  margin-bottom: 1.5rem;

  font-size: 1.8rem;

  max-width: 260px;

}

.solution-card p {

  margin-bottom: 2rem;

  color: var(--color-gray-light);

  line-height: 1.9;

}

.solution-card a {

  display: inline-flex;

  align-items: center;

  gap: 0.5rem;

  color: var(--color-gold);

  font-size: 0.72rem;

  letter-spacing: 0.2em;

  text-transform: uppercase;

}

.solution-card a::after {

  content: '→';

  transition: var(--transition-default);

}

.solution-card a:hover::after {

  transform: translateX(4px);

}

/* ----------------- DIFFERENTIALS ----------------- */

.differentials-section {

  background: var(--color-navy-mid);

}

.differentials-grid {

  display: grid;

  grid-template-columns: 1.2fr 0.8fr;

  gap: 5rem;

  align-items: start;

}

.differentials-list {

  display: flex;

  flex-direction: column;

  gap: 2rem;

  margin-top: 4rem;

}

.differential-item {

  display: flex;

  gap: 1.5rem;

  padding-bottom: 2rem;

  border-bottom: 1px solid rgba(255,255,255,0.05);

}

.differential-item span {

  font-family: var(--font-heading);

  font-size: 1.2rem;

  color: var(--color-gold);

  min-width: 2rem;

}

.differential-item h3 {

  margin-bottom: 0.8rem;

  font-size: 1.2rem;

}

.differential-item p {

  color: var(--color-gray-light);

  line-height: 1.9;

}

.differentials-quote {

  padding-left: 4rem;

  border-left: 1px solid rgba(201,168,76,0.25);

}

.differentials-quote blockquote {

  font-family: var(--font-heading);

  font-size: clamp(2rem, 3vw, 3rem);

  line-height: 1.3;

  font-style: italic;

  margin-bottom: 2rem;

}

.differentials-quote cite {

  color: var(--color-gray);

  font-size: 0.72rem;

  letter-spacing: 0.2em;

  text-transform: uppercase;

  font-style: normal;

}

