/* Fondo de curvas de nivel + sondaje lateral (ver fondo.js) */
.fondo-curvas { position: fixed; inset: 0; z-index: 0; pointer-events: none; }
body > :not(.fondo-curvas):not(.sondaje):not(.site-header):not(.skip-link) { position: relative; z-index: 1; }
.site-header { z-index: 20; }
/* Las secciones con fondo propio dejan ver las curvas */
.method-section { background: rgba(38, 35, 50, .08); }

/* Sondaje: collar arriba, pozo vertical, broca que baja y muestras por sección */
.sondaje { --pozo-top: 150px; --pozo-largo: calc(100vh - 230px); position: fixed; right: 26px; top: 0; bottom: 0; width: 30px; z-index: 15; pointer-events: none; }
.sondaje-collar { position: absolute; left: 50%; top: calc(var(--pozo-top) - 22px); width: 0; height: 0; transform: translateX(-50%); border-left: 9px solid transparent; border-right: 9px solid transparent; border-top: 14px solid #b5abc8; }
.sondaje-linea { position: absolute; left: 50%; top: var(--pozo-top); height: var(--pozo-largo); width: 2px; transform: translateX(-50%); background: rgba(214, 200, 240, .18); }
.sondaje-perforado { position: absolute; inset: 0; background: #b5abc8; transform-origin: top; transform: scaleY(0); }
.sondaje-broca { position: absolute; left: 50%; width: 14px; height: 14px; margin: -7px 0 0 -7px; border-radius: 50%; background: #fbfaf7; box-shadow: 0 0 0 4px rgba(224, 112, 31, .35), 0 0 14px rgba(224, 112, 31, .55); transition: top .12s linear; }
.sondaje-muestra { position: absolute; left: 50%; width: 10px; height: 22px; margin: -11px 0 0 -5px; border-radius: 3px; background: rgba(214, 200, 240, .12); border: 1px solid rgba(214, 200, 240, .25); pointer-events: auto; transition: background .4s ease, border-color .4s ease, transform .4s cubic-bezier(.2, 1.6, .4, 1); }
.sondaje-muestra.is-dejada { background: var(--muestra); border-color: var(--muestra); transform: scale(1.15); }
.sondaje-muestra.es-contacto.is-dejada { border-radius: 50%; width: 16px; height: 16px; margin: -8px 0 0 -8px; box-shadow: 0 0 12px var(--muestra); }
.sondaje-etiqueta { position: absolute; right: 22px; top: 50%; transform: translate(6px, -50%); white-space: nowrap; padding: 4px 10px; border-radius: 8px; background: rgba(17, 16, 21, .9); color: #fbfaf7; font-size: 12px; opacity: 0; pointer-events: none; transition: opacity .2s ease, transform .2s ease; }
.sondaje-muestra:hover .sondaje-etiqueta, .sondaje-muestra:focus-visible .sondaje-etiqueta { opacity: 1; transform: translate(0, -50%); }
.sondaje-muestra:focus-visible { outline: 2px solid #e7b48c; outline-offset: 3px; }

/* En pantallas angostas el pozo ocuparía espacio de lectura: se oculta */
@media (max-width: 900px) { .sondaje { display: none; } }
@media (prefers-reduced-motion: reduce) { .sondaje-broca, .sondaje-muestra, .sondaje-etiqueta { transition: none; } }
