/* =========================================================
   NIVENTO HOME PAGE
   Page-specific visual layer. Keep shared/sitewide styles in style.css.
========================================================= */

.page-home {
  --home-ivory: #FFF8EF;
  --home-sand: #F4E6D6;
  --home-orange: #E8752D;
  --home-red: #B7473F;
  --home-navy: #0B1F33;
  --home-border: #E8C8AA;
}

/* Compact, professional hero: 60% content / 40% image. */
.page-home .home-hero {
  position: relative;
  overflow: hidden;
  background: var(--home-navy);
  color: #FFFFFF;
  padding-block: 34px;
  min-height: 430px;
  display: flex;
  align-items: center;
}

.page-home .home-hero__inner {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(0, 3fr) minmax(260px, 2fr);
  gap: 34px;
  align-items: center;
}

.page-home .home-hero__copy { max-width: 720px; }
.page-home .home-hero__eyebrow {
  margin-bottom: 9px;
  color: #FFB06D;
  font-size: .78rem;
  letter-spacing: .08em;
}

.page-home .home-hero h1 {
  max-width: 18ch;
  margin-bottom: 16px;
  color: #FFFFFF;
  font-size: clamp(2rem, 3.25vw, 3rem);
  line-height: 1.12;
  letter-spacing: -.025em;
}

.page-home .home-hero__lead {
  max-width: 62ch;
  margin-bottom: 0;
  color: rgba(255,255,255,.86);
  font-size: 1rem;
  line-height: 1.55;
}

.page-home .home-hero__actions { margin-top: 20px; gap: 14px; }
.page-home .home-hero__text-link { color: #FFFFFF; font-size: .92rem; font-weight: 600; }
.page-home .home-hero__text-link:hover { color: #FFB06D; }

.page-home .home-hero__visual {
  align-self: stretch;
  min-height: 300px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.page-home .home-hero__visual img {
  width: 100%;
  height: 330px;
  object-fit: cover;
  border: 0;
  border-radius: 8px 0 0 8px;
}

/* The principle is important, but no longer consumes a huge vertical block. */
.page-home .home-statement { background: #FFFFFF; text-align: center; }
.page-home .home-statement__inner {
  max-width: 900px;
  padding-block: 38px;
}
.page-home .home-statement h2 {
  max-width: 30ch;
  margin: 0 auto 12px;
  font-size: clamp(1.7rem, 2.7vw, 2.55rem);
  line-height: 1.16;
  letter-spacing: -.02em;
}
.page-home .home-statement .text-lead {
  max-width: 72ch;
  margin: 14px auto 0;
  font-size: 1rem;
  line-height: 1.55;
}
.page-home .home-statement__rule {
  display: block;
  width: 68px;
  height: 5px;
  margin: 15px auto 0;
  background: linear-gradient(90deg, var(--home-orange), var(--home-red));
}

/* How Nivento Works: image left, compact copy right, vertically centred. */
.page-home .home-works { background: var(--home-ivory); }
.page-home .home-works__inner {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(280px, .85fr);
  gap: 38px;
  align-items: center;
}
.page-home .home-works__figure {
  margin: 0;
  background: #FFFFFF;
  border: 1px solid var(--home-border);
  border-bottom: 4px solid var(--home-orange);
  box-shadow: 0 7px 18px rgba(11,31,51,.07);
  border-radius: 8px;
  overflow: hidden;
}
.page-home .home-works__figure img { width: 100%; height: auto; display: block; }
.page-home .home-works__copy { max-width: 410px; }
.page-home .home-works__copy h2 {
  font-size: clamp(1.65rem, 2.4vw, 2.25rem);
  line-height: 1.18;
  margin-bottom: 12px;
}
.page-home .home-works__copy p:last-child {
  margin-bottom: 0;
  font-size: 1rem;
  line-height: 1.58;
}

/* Keep audience cards compact. */
.page-home .home-audiences { background: #FFFFFF; }
.page-home .home-audiences .section-heading-row { margin-bottom: 22px; }
.page-home .home-audiences .section-heading-row h2,
.page-home .home-why .section-heading-row h2,
.page-home .home-reviews h2,
.page-home .home-close__heading h2 {
  font-size: clamp(1.7rem, 2.7vw, 2.5rem);
  line-height: 1.18;
}
.page-home .audience-grid { gap: 14px; }
.page-home .audience-card {
  min-height: 108px;
  grid-template-columns: 88px 1fr;
  border-radius: 8px;
  box-shadow: 0 5px 15px rgba(11,31,51,.05);
}
.page-home .audience-card img { width: 88px; min-height: 108px; }
.page-home .audience-card__body { padding: 14px; }
.page-home .audience-card__body strong { font-size: 1rem; }
.page-home .audience-card__body small { font-size: .86rem; }
.page-home .audience-card--wide { grid-template-columns: 120px 1fr; }
.page-home .audience-card--wide img { width: 120px; }

/* Why Nivento: retain the four-image concept, but reduce the visual weight. */
.page-home .home-why { background: var(--home-navy); }
.page-home .home-why .why-image-grid { gap: 14px; }
.page-home .why-image-card {
  border-radius: 8px;
  box-shadow: 0 7px 18px rgba(0,0,0,.12);
}
.page-home .why-image-card > div { padding: 13px 14px 15px; }
.page-home .why-image-card h3 { font-size: 1.12rem; margin: 4px 0 5px; }
.page-home .why-image-card p { font-size: .86rem; line-height: 1.5; }

/* Assessment + Insights remain a single two-column section. */
.page-home .home-discover { background: var(--home-sand); }
.page-home .home-discover__grid { gap: 14px; }
.page-home .discover-card {
  min-height: 185px;
  border-radius: 8px;
  box-shadow: 0 5px 15px rgba(11,31,51,.05);
}
.page-home .discover-card > div { padding: 17px; }
.page-home .discover-card h2 { font-size: clamp(1.25rem, 1.9vw, 1.7rem); line-height: 1.2; }

/* Reviews stay credible and compact. */
.page-home .home-reviews { background: #FFFFFF; }
.page-home .review-card { min-height: 260px; border-radius: 8px; padding: 17px; }

/* Closing choices: two cards, not another full-width CTA strip. */
.page-home .home-close {
  background: #FFFFFF;
  border-top: 1px solid var(--home-border);
  padding-block: 38px;
}
.page-home .home-close__heading { margin-bottom: 20px; }
.page-home .home-close__grid { gap: 14px; }
.page-home .home-close-card {
  min-height: 210px;
  padding: 23px;
  border-radius: 8px;
}
.page-home .home-close-card h3 { font-size: 1.35rem; }
.page-home .home-close-card p { font-size: .94rem; line-height: 1.55; }

/* WhatsApp should be only an icon on the home page. */
.page-home .whatsapp-float {
  width: 46px;
  min-height: 46px;
  height: 46px;
  padding: 8px;
  border-radius: 50%;
  right: 16px;
  top: auto;
  bottom: 22px;
  transform: none;
  display: grid;
  place-items: center;
  flex-direction: row;
  box-shadow: 0 7px 20px rgba(11,31,51,.2);
}
.page-home .whatsapp-float__icon {
  width: 29px;
  height: 29px;
  font-size: .65rem;
}

@media (max-width: 899px) {
  .page-home .home-hero { min-height: 0; padding-block: 30px; }
  .page-home .home-hero__inner { grid-template-columns: 1fr; gap: 24px; }
  .page-home .home-hero__visual { min-height: 0; }
  .page-home .home-hero__visual img { height: 250px; border-radius: 8px; }
  .page-home .home-works__inner { grid-template-columns: 1fr; gap: 22px; }
  .page-home .home-works__copy { max-width: 680px; }
}

@media (max-width: 767px) {
  .page-home .home-hero h1 { font-size: 2rem; max-width: 18ch; }
  .page-home .home-hero__lead { font-size: .96rem; }
  .page-home .home-hero__actions { margin-top: 16px; }
  .page-home .home-hero__visual img { height: 210px; }
  .page-home .home-statement__inner { padding-block: 30px; }
  .page-home .home-statement h2 { font-size: 1.72rem; }
  .page-home .home-works { padding-block: 34px; }
  .page-home .home-works__inner { gap: 18px; }
  .page-home .home-works__copy h2 { font-size: 1.65rem; }
  .page-home .home-close { padding-block: 32px; }
  .page-home .home-close__grid { grid-template-columns: 1fr; }
}
