
.nav .nav__cta { display: none !important; }

.unica { --hfs: min(calc(var(--t1) * .9), calc((100vw - 2 * var(--m)) / 12.4)); --pt: var(--reserva); position: relative; min-height: calc(100svh - var(--foot-real, 150px)); display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); grid-template-rows: auto auto 1fr; column-gap: 24px; align-items: start; padding: var(--pt) var(--m) 28px; overflow: clip; }
.unica__izq { grid-column: 1 / 6; grid-row: 2; min-width: 0; align-self: stretch; display: flex; flex-direction: column; padding-top: 14px; }
.unica__form { grid-column: 7 / 13; grid-row: 2; min-width: 0; position: relative; z-index: 1; }
.unica__datos { flex: 1; display: flex; flex-direction: column; align-items: flex-start; justify-content: space-between; gap: 20px; }
.unica__trab { margin: 0; max-width: 46ch; font-size: calc(var(--t4) * 1.12); font-weight: 500; line-height: 1.5; color: var(--on-chapter-2); scroll-margin-top: calc(var(--nav-h) + 24px); }
.unica__trabt { display: block; margin-bottom: 10px; font-size: calc(var(--t2) * .85); line-height: 1.05; letter-spacing: -.02em; color: var(--on-chapter); font-weight: 700; }
.unica__trab a { color: var(--on-chapter); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; transition: color var(--t-hover) var(--ease-out); }
.unica__trab a:hover { color: #fff; }

.unica__marco {  position: absolute; left: 0; right: 0; top: 0; height: calc(var(--pt) + var(--hfs) * 1.9 + 28px); overflow: hidden; pointer-events: none; -webkit-mask-image: linear-gradient(#000 70%, transparent); mask-image: linear-gradient(#000 70%, transparent); }
.unica__trama { position: absolute; inset: -48px;  background-image: repeating-linear-gradient(0deg, rgba(201,216,234,.07) 0 1px, transparent 1px 48px), repeating-linear-gradient(90deg, rgba(201,216,234,.07) 0 1px, transparent 1px 48px); animation: trama-deriva 48s linear infinite; }

.unica__h { grid-column: 1 / -1; grid-row: 1; position: relative; margin: 0 0 28px; font-size: var(--hfs); font-weight: 400; line-height: .95; white-space: nowrap; letter-spacing: -.03em; color: var(--ink); text-wrap: pretty; }
.js .unica__h:not(.is-listo) { -webkit-text-fill-color: transparent; }
.unica__h.is-listo { transition: -webkit-text-fill-color 300ms linear; }
.unica__t { position: absolute; left: 0; top: 0; overflow: visible; pointer-events: none; font: inherit; letter-spacing: inherit; white-space: pre; fill: #fff; stroke: #fff; stroke-width: 2px; stroke-linejoin: round; stroke-linecap: round; }
.unica__t tspan.unica__punto { fill: var(--accent-on-azul); stroke: var(--accent-on-azul); }
.unica__t tspan { stroke-dasharray: calc(var(--L, 360) * 1px) 9999px; stroke-dashoffset: 0; }
.unica__bosq line { stroke: #C9D8EA; stroke-opacity: .55; stroke-width: 1px; stroke-dasharray: 1px 3px; transform-box: fill-box; transform-origin: left;  }
.destaque::after { display: none; }
.unica__h .destaque { position: relative; z-index: 2; }

.unica__h.is-listo .destaque { animation: u-respira 4s ease-in-out 200ms infinite; }
.unica__h.is-listo .destaque::after { display: block; bottom: -9px; transform: scaleX(0); animation: u-subrayado 600ms var(--ease-out) 100ms forwards; }

@media (prefers-reduced-motion: no-preference) {
  .unica__bosq line { animation: u-guia 400ms var(--ease-out) both; animation-delay: calc(var(--i) * 40ms); }
  .unica__t tspan { animation: u-trazo 450ms var(--ease-out) both; animation-delay: calc(20ms + var(--o) * 8ms); }
  .unica__t { animation: u-relleno 400ms ease-out 600ms both; }
  .unica__bosq { animation: u-bosq-fuera 300ms ease-out 700ms both; }
  .unica__form { animation: u-entra var(--t-reveal) var(--ease-out) 300ms both; }
  .unica__datos { animation: u-entra var(--t-reveal) var(--ease-out) 500ms both; }
}
@media (prefers-reduced-motion: reduce) { .unica__trama { animation: none; } .unica__h .destaque::after { display: block; } }
@keyframes u-trazo { from { stroke-dashoffset: calc(var(--L, 360) * 1px); stroke-opacity: 0; } 8% { stroke-opacity: 1; } to { stroke-dashoffset: 0; stroke-opacity: 1; } }
@keyframes u-guia { from { transform: scaleX(0); } to { transform: scaleX(1); } }
@keyframes u-bosq-fuera { from { opacity: 1; } to { opacity: 0; } }
@keyframes u-relleno { from { fill-opacity: 0; } to { fill-opacity: 1; } }
@keyframes u-subrayado { from { transform: scaleX(0); } to { transform: scaleX(1); } }
@keyframes u-respira { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.035); } }
@keyframes u-entra { from { opacity: .35; transform: translateY(14px); } to { opacity: 1; transform: none; } }

.unica .form__fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 24px; }
.unica .form__fields .field:has(textarea), .unica .form__fields .hp { grid-column: 1 / -1; }
.unica .field { margin-top: 2px; }
.unica .field textarea { min-height: 108px; height: 108px; resize: none; }
.unica .form__foot { margin-top: 16px; flex-wrap: nowrap; align-items: center; gap: 20px; }
.unica .form { position: relative; }
.unica .form__estado { position: absolute; left: 0; right: 0; top: 100%; margin: 6px 0 0; min-height: 0; line-height: 1.3; }
.unica .form__note { max-width: none; margin: 0; }

.foot__legal { text-wrap: balance; }

@media (max-width: 820px) {
  .unica__trab { font-size: var(--t4); } .unica__trabt { font-size: var(--t3); }
  .unica { --hfs: calc(var(--t1) * .9); display: flex; flex-direction: column; align-items: stretch; min-height: 0; padding-top: var(--reserva); padding-bottom: 44px; }
  .unica__h { white-space: normal; font-size: var(--hfs); margin-bottom: 32px; }
  .unica__br { display: none; }
  .unica__marco { height: calc(var(--reserva) + var(--hfs) * 2.9 + 32px); }

  .unica__izq, .unica__datos { display: contents; }
  .unica__datos > .button { order: 2; align-self: flex-start; margin-top: 28px; }
  .unica__trab { order: 3; margin-top: 44px; }
  .unica .form__estado { position: static; margin-top: 8px; min-height: 0; }
  .unica__form { order: 1; margin-top: 8px; }
  .unica .form__fields { grid-template-columns: 1fr; }
  .unica .form__foot { flex-wrap: wrap; }
  .unica .field textarea { height: 104px; }
}
@media (max-width: 599px) { .unica { --hfs: var(--t2); } .unica__marco { height: calc(var(--reserva) + var(--hfs) * 3.2 + 32px); } }
