/* DAYSLUME — seção editorial 07 / Sobre. Escopo restrito à home. */
body.home-page main > .section.about-section {
  position: relative;
  isolation: isolate;
  min-block-size: auto;
  overflow: hidden;
  padding-block: clamp(72px, 6vw, 98px);
  color: var(--ink-deep, #202532);
  background:
    linear-gradient(112deg, rgba(243, 239, 232, .94), rgba(169, 197, 216, .24)),
    var(--warm-ivory, #f3efe8);
}

/* Linhas e pétalas abstratas, quase táteis, sem círculos decorativos genéricos. */
body.home-page main > .section.about-section::before {
  content: "";
  position: absolute;
  z-index: -2;
  inset: 0;
  pointer-events: none;
  opacity: .42;
  background: repeating-linear-gradient(
    90deg,
    transparent 0,
    transparent calc(12.5% - 1px),
    rgba(102, 117, 143, .075) calc(12.5% - 1px),
    rgba(102, 117, 143, .075) 12.5%
  );
}

body.home-page main > .section.about-section::after {
  content: "";
  position: absolute;
  z-index: -1;
  right: -8%;
  top: 7%;
  width: min(40vw, 560px);
  aspect-ratio: 1.55;
  border: 1px solid rgba(107, 83, 109, .13);
  border-radius: 68% 32% 63% 37% / 42% 62% 38% 58%;
  transform: rotate(-18deg);
  box-shadow:
    -72px 92px 0 -1px rgba(216, 182, 165, .10),
    -144px 184px 0 -1px rgba(107, 83, 109, .055);
  pointer-events: none;
}

body.home-page main .about-section .container.about-grid {
  position: relative;
  z-index: 1;
  width: min(calc(100% - 72px), 1320px);
  max-width: 1320px;
  display: grid;
  grid-template-columns: minmax(300px, 39%) minmax(0, 1fr);
  align-items: start;
  gap: clamp(50px, 6vw, 96px);
}

body.home-page main .about-section .about-visual-card {
  position: relative;
  width: 100%;
  max-width: 500px;
  min-width: 0;
  margin: clamp(40px, 4.2vw, 68px) 0 0;
  padding: 0;
}

body.home-page main .about-section .about-visual-card::before {
  content: "";
  position: absolute;
  z-index: -1;
  left: -22px;
  bottom: -20px;
  width: 68%;
  height: 47%;
  border: 1px solid rgba(107, 83, 109, .16);
  border-radius: 67% 33% 61% 39% / 44% 62% 38% 56%;
  transform: rotate(11deg);
  pointer-events: none;
}

body.home-page main .about-section .about-visual-inner {
  position: relative;
  display: block;
  width: 100%;
  min-height: 0;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  padding: 0;
  border: 1px solid rgba(243, 239, 232, .38);
  border-radius: clamp(20px, 2.3vw, 30px);
  background: var(--ink-deep, #202532);
  box-shadow: 0 28px 64px rgba(32, 37, 50, .16);
}

body.home-page main .about-section .about-visual-inner img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  max-width: none;
  height: 100%;
  margin: 0;
  object-fit: cover;
  object-position: center center;
  filter: none;
}

body.home-page main .about-section .about-copy {
  min-width: 0;
  max-width: 760px;
}

body.home-page main .about-section .about-copy > .eyebrow {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 0 0 clamp(20px, 2vw, 28px);
  color: var(--slate-mineral, #66758f);
  font: 700 11px / 1.45 "DM Sans", sans-serif;
  letter-spacing: .18em;
}

body.home-page main .about-section .about-copy > .eyebrow::before {
  content: "";
  width: 31px;
  height: 3px;
  flex: none;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--plum-mineral, #6b536d), var(--peach, #d8b6a5));
}

body.home-page main .about-section h2#about-title {
  max-width: 15ch;
  margin: 0 0 clamp(26px, 2.8vw, 38px);
  color: var(--ink-deep, #202532);
  font: 400 clamp(52px, 5vw, 82px) / .95 Manrope, sans-serif;
  letter-spacing: -.067em;
  overflow-wrap: normal;
  text-wrap: initial;
}

body.home-page main .about-section h2#about-title > span {
  display: block;
  white-space: nowrap;
}

body.home-page main .about-section .about-intro {
  display: grid;
  gap: 13px;
  max-width: 62ch;
}

body.home-page main .about-section .about-intro p {
  max-width: none;
  margin: 0;
  color: rgba(32, 37, 50, .76);
  font: 400 clamp(15px, 1.08vw, 17px) / 1.72 "DM Sans", sans-serif;
}

body.home-page main .about-section .about-signature {
  display: grid;
  gap: 3px;
  max-width: none;
  margin: clamp(25px, 2.6vw, 34px) 0 0;
  padding-left: 17px;
  border-left: 2px solid var(--peach, #d8b6a5);
}

body.home-page main .about-section .about-signature strong {
  color: var(--ink-deep, #202532);
  font: 500 clamp(19px, 1.6vw, 23px) / 1.25 Manrope, sans-serif;
  letter-spacing: -.035em;
}

body.home-page main .about-section .about-signature span {
  color: var(--plum-mineral, #6b536d);
  font: 600 10px / 1.5 "DM Sans", sans-serif;
  letter-spacing: .14em;
  text-transform: uppercase;
}

body.home-page main .about-section .about-copy > .about-cta {
  width: fit-content;
  min-height: 54px;
  margin-top: clamp(26px, 2.8vw, 38px);
  padding: 15px 20px 15px 23px;
  border: 1px solid rgba(32, 37, 50, .86);
  border-radius: 999px;
  background: var(--ink-deep, #202532);
  color: var(--warm-ivory, #f3efe8);
  font: 600 12px / 1.25 "DM Sans", sans-serif;
  letter-spacing: .035em;
  box-shadow: 0 12px 26px rgba(32, 37, 50, .12);
  transition: background-color 250ms ease, box-shadow 250ms ease, transform 250ms ease;
}

body.home-page main .about-section .about-cta > span {
  margin-left: 17px;
  transition: transform 250ms cubic-bezier(.22, 1, .36, 1);
}

body.home-page main .about-section .about-cta:hover,
body.home-page main .about-section .about-cta:focus-visible {
  background: #2b3141;
  box-shadow: 0 16px 34px rgba(32, 37, 50, .2);
  transform: translateY(-2px);
}

body.home-page main .about-section .about-cta:hover > span,
body.home-page main .about-section .about-cta:focus-visible > span {
  transform: translate(3px, -2px);
}

.days-motion-ready body.home-page main .about-section .about-visual-card.launch-reveal.is-visible {
  animation: about-image-reveal .72s cubic-bezier(.22, 1, .36, 1) var(--reveal-delay, 0ms) both;
}

@keyframes about-image-reveal {
  from { opacity: 0; transform: translate3d(-18px, 18px, 0); }
  to { opacity: 1; transform: translate3d(0, 0, 0); }
}

@media (max-width: 1080px) {
  body.home-page main .about-section .container.about-grid {
    width: min(calc(100% - 56px), 1120px);
    grid-template-columns: minmax(280px, 39%) minmax(0, 1fr);
    gap: clamp(34px, 4.2vw, 54px);
  }

  body.home-page main .about-section h2#about-title {
    font-size: clamp(44px, 5.4vw, 60px);
  }
}

@media (max-width: 820px) {
  body.home-page main .about-section .container.about-grid {
    width: min(calc(100% - 44px), 780px);
    grid-template-columns: minmax(245px, 39%) minmax(0, 1fr);
    gap: 30px;
  }

  body.home-page main .about-section .about-visual-card {
    margin-top: 46px;
  }

  body.home-page main .about-section h2#about-title {
    font-size: clamp(38px, 5.8vw, 48px);
  }

  body.home-page main .about-section .about-intro p {
    font-size: 14px;
  }
}

@media (max-width: 700px) {
  body.home-page main > .section.about-section {
    padding-block: 58px 68px;
  }

  body.home-page main .about-section .container.about-grid {
    width: calc(100% - 36px);
    grid-template-columns: minmax(0, 1fr);
    gap: 38px;
  }

  body.home-page main .about-section .about-copy {
    order: 1;
  }

  body.home-page main .about-section .about-visual-card {
    order: 2;
    max-width: 520px;
    margin: 0 auto;
  }

  body.home-page main .about-section h2#about-title {
    max-width: 14ch;
    font-size: clamp(37px, 10.7vw, 52px);
    line-height: .98;
  }

  body.home-page main .about-section h2#about-title > span {
    white-space: normal;
  }

  body.home-page main .about-section .about-intro {
    max-width: 58ch;
  }

  body.home-page main .about-section .about-intro p {
    font-size: 15px;
    line-height: 1.68;
  }

  body.home-page main .about-section .about-copy > .about-cta {
    max-width: 100%;
  }
}

@media (max-width: 390px) {
  body.home-page main .about-section h2#about-title {
    font-size: clamp(34px, 10.2vw, 40px);
  }

  body.home-page main .about-section .about-copy > .about-cta {
    width: 100%;
    padding-inline: 18px;
  }

}

@media (prefers-reduced-motion: reduce) {
  .days-motion-ready body.home-page main .about-section .about-visual-card.launch-reveal.is-visible {
    animation: none !important;
  }

  body.home-page main .about-section .about-cta,
  body.home-page main .about-section .about-cta > span {
    transition: none !important;
  }

  body.home-page main .about-section .about-cta:hover,
  body.home-page main .about-section .about-cta:focus-visible,
  body.home-page main .about-section .about-cta:hover > span,
  body.home-page main .about-section .about-cta:focus-visible > span {
    transform: none !important;
  }
}
