/* Banner de inicio: geometria vectorial y texto adaptable. */
.hero-inicio { min-height: clamp(440px, 38vw, 560px); padding: 0; isolation: isolate; background: #193f30; }
.hero-inicio__video { inset: 0; width: 100%; height: 100%; min-width: 0; min-height: 0; transform: none; }
.hero-inicio__container { max-width: none; min-height: inherit; display: grid; grid-template-columns: 47% 53%; gap: 0; align-items: stretch; }
.hero-inicio__left { min-width: 0; max-width: none; justify-content: center; padding: clamp(28px, 3vw, 46px) clamp(28px, 5vw, 88px) clamp(28px, 3vw, 46px) clamp(32px, 6.5vw, 112px); }
.hero-inicio__left .logo-wrapper { width: min(100%, 320px); margin-left: 24px; }
.hero-inicio__left .hero-inicio__title { font-size: clamp(23px, 1.95vw, 32px); max-width: 620px; }
.hero-inicio__left .hero-inicio__services { font-size: clamp(12px, .85vw, 15px); max-width: 620px; }
.hero-inicio__right { position: relative; min-width: 0; align-items: stretch; }
.hero-inicio__right .hero-inicio__organic-card { position: relative; width: 100%; max-width: none; min-height: 100%; height: auto; padding: 32px 4% 48px 10%; background: none; display: grid; place-items: center; }
.hero-panel-shape { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; overflow: visible; }
.hero-panel-shadow { fill: #fff; opacity: .4; }
.hero-panel-white { fill: #fff; }
.hero-quote { position: relative; width: min(100%, 620px); min-height: 360px; display: grid; grid-template-columns: 23% 1fr; align-items: center; gap: 5%; padding: 65px 9% 60px 0; color: #241710; text-align: left; }
.hero-quote__outline { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; pointer-events: none; }
.hero-quote__outline path { fill: none; stroke: #8ba08d; stroke-width: 2; vector-effect: non-scaling-stroke; }
.hero-quote__mark { position: absolute; top: -8px; left: 27%; font: 700 112px/1 Georgia, serif; background: white; padding: 0 8px; }
.hero-quote__bird { position: relative; display: block; width: 100%; aspect-ratio: 1119 / 1681; overflow: hidden; transform: translateX(-12px); }
/* Recorta solamente el margen transparente del PNG mediante CSS. */
.hero-quote__bird img { position: absolute; width: 374.531%; max-width: none; height: auto; left: -135.389%; top: -45.092%; }
.hero-quote__text { position: relative; margin: 0; font: 500 clamp(16px, 1.65vw, 25px)/1.5 'Poppins', sans-serif; color: #080808; text-align: justify; overflow-wrap: break-word; }
.hero-quote__star { position: absolute; line-height: 1; font-size: 30px; transform-origin: center; }
.hero-quote__star--one { top: 1%; right: 17%; }
.hero-quote__star--two { right: 1%; bottom: 16%; font-size: 39px; }
.hero-quote__star--three { right: 15%; bottom: 5%; font-size: 28px; }
.hero-quote__star--four { right: 6%; bottom: 3%; font-size: 19px; }
@media (max-width: 968px) {
  .hero-inicio__container { grid-template-columns: 1fr; text-align: center; }
  .hero-inicio__left { align-items: center; padding: 32px 28px; }
  .hero-inicio__right { min-height: 320px; }
  .hero-inicio__right .hero-inicio__organic-card { padding: 24px 24px 28px; }
  .hero-panel-shape { display: none; }
  .hero-inicio__right::before { content: ''; position: absolute; inset: 0; background: white; border-radius: 22% 12% 0 0 / 15% 8% 0 0; }
  .hero-inicio__left .logo-wrapper { margin-left: 0; }
  .hero-quote { width: min(100%, 420px); min-height: 320px; }
  .hero-quote__text { font-size: 16px; text-align: left; }
}
@media (max-width: 420px) {
  .hero-inicio__left { padding: 28px 24px; }
  .hero-inicio__left .logo-wrapper { width: 240px; max-width: 85%; }
  .hero-inicio__right .hero-inicio__organic-card { padding-inline: 20px; }
  .hero-quote { min-height: 295px; padding-block: 65px; padding-right: 9%; }
  .hero-quote__text { font-size: 15px; }
  .hero-quote__mark { font-size: 92px; top: 4px; }
}

/* Más aire alrededor de la composición del banner. */
.hero-quote { transform: scale(.85); transform-origin: center; }
@media (max-width: 968px) { .hero-quote { transform: scale(.94); } }
