/* Bloque C: negocios, galería horizontal, vista aérea, contacto + hojas y rastro de cursor.
   Estado inicial SIEMPRE visible: los estados ocultos los pone GSAP desde js/bloque-c.js. */

/* ---------- Sombra de hojas (SVG propio, generado) ---------- */
.hojas-c {
  position: absolute; inset: -30%; pointer-events: none; z-index: 1;
  background-image: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 600 600"%3E%3Cg fill="black"%3E%3Cellipse cx="179" cy="69" rx="33" ry="12" transform="rotate%28165 179 69%29"/%3E%3Cellipse cx="179" cy="69" rx="35" ry="13" transform="rotate%28249 179 69%29"/%3E%3Cellipse cx="157" cy="55" rx="27" ry="10" transform="rotate%28144 157 55%29"/%3E%3Cellipse cx="157" cy="55" rx="34" ry="13" transform="rotate%28227 157 55%29"/%3E%3Cellipse cx="132" cy="51" rx="30" ry="11" transform="rotate%28168 132 51%29"/%3E%3Cellipse cx="132" cy="51" rx="43" ry="16" transform="rotate%28257 132 51%29"/%3E%3Cellipse cx="108" cy="39" rx="44" ry="17" transform="rotate%28165 108 39%29"/%3E%3Cellipse cx="108" cy="39" rx="41" ry="16" transform="rotate%28246 108 39%29"/%3E%3Cellipse cx="86" cy="26" rx="28" ry="11" transform="rotate%28161 86 26%29"/%3E%3Cellipse cx="86" cy="26" rx="41" ry="15" transform="rotate%28242 86 26%29"/%3E%3Cellipse cx="61" cy="18" rx="38" ry="14" transform="rotate%28134 61 18%29"/%3E%3Cellipse cx="61" cy="18" rx="36" ry="14" transform="rotate%28228 61 18%29"/%3E%3Cellipse cx="35" cy="16" rx="30" ry="11" transform="rotate%28125 35 16%29"/%3E%3Cellipse cx="35" cy="16" rx="34" ry="13" transform="rotate%28214 35 16%29"/%3E%3Cellipse cx="11" cy="24" rx="34" ry="13" transform="rotate%28103 11 24%29"/%3E%3Cellipse cx="11" cy="24" rx="40" ry="15" transform="rotate%28195 11 24%29"/%3E%3Cellipse cx="588" cy="36" rx="36" ry="14" transform="rotate%28121 588 36%29"/%3E%3Cellipse cx="588" cy="36" rx="42" ry="16" transform="rotate%28210 588 36%29"/%3E%3Cellipse cx="463" cy="170" rx="40" ry="15" transform="rotate%28288 463 170%29"/%3E%3Cellipse cx="463" cy="170" rx="35" ry="13" transform="rotate%28373 463 170%29"/%3E%3Cellipse cx="487" cy="158" rx="40" ry="15" transform="rotate%28259 487 158%29"/%3E%3Cellipse cx="487" cy="158" rx="42" ry="16" transform="rotate%28360 487 158%29"/%3E%3Cellipse cx="504" cy="138" rx="37" ry="14" transform="rotate%28249 504 138%29"/%3E%3Cellipse cx="504" cy="138" rx="34" ry="13" transform="rotate%28351 504 138%29"/%3E%3Cellipse cx="517" cy="116" rx="35" ry="13" transform="rotate%28260 517 116%29"/%3E%3Cellipse cx="517" cy="116" rx="27" ry="10" transform="rotate%28370 517 116%29"/%3E%3Cellipse cx="537" cy="99" rx="44" ry="17" transform="rotate%28277 537 99%29"/%3E%3Cellipse cx="537" cy="99" rx="31" ry="12" transform="rotate%28384 537 99%29"/%3E%3Cellipse cx="559" cy="85" rx="26" ry="10" transform="rotate%28271 559 85%29"/%3E%3Cellipse cx="559" cy="85" rx="29" ry="11" transform="rotate%28369 559 85%29"/%3E%3Cellipse cx="580" cy="70" rx="40" ry="15" transform="rotate%28267 580 70%29"/%3E%3Cellipse cx="580" cy="70" rx="30" ry="12" transform="rotate%28342 580 70%29"/%3E%3Cellipse cx="594" cy="48" rx="27" ry="10" transform="rotate%28241 594 48%29"/%3E%3Cellipse cx="594" cy="48" rx="36" ry="14" transform="rotate%28344 594 48%29"/%3E%3Cellipse cx="6" cy="25" rx="42" ry="16" transform="rotate%28262 6 25%29"/%3E%3Cellipse cx="6" cy="25" rx="33" ry="13" transform="rotate%28359 6 25%29"/%3E%3Cellipse cx="240" cy="524" rx="30" ry="11" transform="rotate%28288 240 524%29"/%3E%3Cellipse cx="240" cy="524" rx="35" ry="13" transform="rotate%28368 240 524%29"/%3E%3Cellipse cx="262" cy="510" rx="26" ry="10" transform="rotate%28290 262 510%29"/%3E%3Cellipse cx="262" cy="510" rx="33" ry="12" transform="rotate%28377 262 510%29"/%3E%3Cellipse cx="285" cy="497" rx="38" ry="15" transform="rotate%28276 285 497%29"/%3E%3Cellipse cx="285" cy="497" rx="37" ry="14" transform="rotate%28383 285 497%29"/%3E%3Cellipse cx="309" cy="486" rx="42" ry="16" transform="rotate%28308 309 486%29"/%3E%3Cellipse cx="309" cy="486" rx="42" ry="16" transform="rotate%28398 309 486%29"/%3E%3Cellipse cx="334" cy="479" rx="33" ry="13" transform="rotate%28314 334 479%29"/%3E%3Cellipse cx="334" cy="479" rx="37" ry="14" transform="rotate%28396 334 479%29"/%3E%3Cellipse cx="360" cy="479" rx="30" ry="11" transform="rotate%28300 360 479%29"/%3E%3Cellipse cx="360" cy="479" rx="32" ry="12" transform="rotate%28376 360 479%29"/%3E%3Cellipse cx="384" cy="468" rx="29" ry="11" transform="rotate%28280 384 468%29"/%3E%3Cellipse cx="384" cy="468" rx="33" ry="12" transform="rotate%28352 384 468%29"/%3E%3Cellipse cx="402" cy="450" rx="37" ry="14" transform="rotate%28234 402 450%29"/%3E%3Cellipse cx="402" cy="450" rx="31" ry="12" transform="rotate%28330 402 450%29"/%3E%3Cellipse cx="411" cy="426" rx="28" ry="11" transform="rotate%28239 411 426%29"/%3E%3Cellipse cx="411" cy="426" rx="44" ry="17" transform="rotate%28339 411 426%29"/%3E%3Cellipse cx="302" cy="304" rx="31" ry="12" transform="rotate%28-33 302 304%29"/%3E%3Cellipse cx="302" cy="304" rx="29" ry="11" transform="rotate%2867 302 304%29"/%3E%3Cellipse cx="327" cy="309" rx="36" ry="13" transform="rotate%28-72 327 309%29"/%3E%3Cellipse cx="327" cy="309" rx="36" ry="14" transform="rotate%2826 327 309%29"/%3E%3Cellipse cx="353" cy="303" rx="44" ry="17" transform="rotate%28-85 353 303%29"/%3E%3Cellipse cx="353" cy="303" rx="39" ry="15" transform="rotate%2820 353 303%29"/%3E%3Cellipse cx="374" cy="287" rx="29" ry="11" transform="rotate%28-93 374 287%29"/%3E%3Cellipse cx="374" cy="287" rx="36" ry="14" transform="rotate%286 374 287%29"/%3E%3Cellipse cx="391" cy="268" rx="30" ry="11" transform="rotate%28-78 391 268%29"/%3E%3Cellipse cx="391" cy="268" rx="44" ry="17" transform="rotate%2821 391 268%29"/%3E%3Cellipse cx="412" cy="253" rx="41" ry="15" transform="rotate%28-72 412 253%29"/%3E%3Cellipse cx="412" cy="253" rx="30" ry="11" transform="rotate%2837 412 253%29"/%3E%3Cellipse cx="437" cy="246" rx="27" ry="10" transform="rotate%28-60 437 246%29"/%3E%3Cellipse cx="437" cy="246" rx="31" ry="12" transform="rotate%2820 437 246%29"/%3E%3Cellipse cx="462" cy="239" rx="43" ry="16" transform="rotate%28-80 462 239%29"/%3E%3Cellipse cx="462" cy="239" rx="43" ry="16" transform="rotate%2818 462 239%29"/%3E%3Cellipse cx="485" cy="226" rx="33" ry="12" transform="rotate%28-62 485 226%29"/%3E%3Cellipse cx="485" cy="226" rx="30" ry="11" transform="rotate%2837 485 226%29"/%3E%3Cellipse cx="100" cy="104" rx="35" ry="13" transform="rotate%28189 100 104%29"/%3E%3Cellipse cx="100" cy="104" rx="40" ry="15" transform="rotate%28296 100 104%29"/%3E%3Cellipse cx="88" cy="81" rx="42" ry="16" transform="rotate%28172 88 81%29"/%3E%3Cellipse cx="88" cy="81" rx="40" ry="15" transform="rotate%28278 88 81%29"/%3E%3Cellipse cx="70" cy="63" rx="40" ry="15" transform="rotate%28183 70 63%29"/%3E%3Cellipse cx="70" cy="63" rx="40" ry="15" transform="rotate%28266 70 63%29"/%3E%3Cellipse cx="51" cy="45" rx="33" ry="13" transform="rotate%28202 51 45%29"/%3E%3Cellipse cx="51" cy="45" rx="39" ry="15" transform="rotate%28305 51 45%29"/%3E%3Cellipse cx="40" cy="21" rx="29" ry="11" transform="rotate%28192 40 21%29"/%3E%3Cellipse cx="40" cy="21" rx="41" ry="15" transform="rotate%28288 40 21%29"/%3E%3Cellipse cx="23" cy="1" rx="44" ry="17" transform="rotate%28157 23 1%29"/%3E%3Cellipse cx="23" cy="1" rx="32" ry="12" transform="rotate%28264 23 1%29"/%3E%3Cellipse cx="1" cy="588" rx="26" ry="10" transform="rotate%28176 1 588%29"/%3E%3Cellipse cx="1" cy="588" rx="38" ry="14" transform="rotate%28274 1 588%29"/%3E%3Cellipse cx="580" cy="573" rx="34" ry="13" transform="rotate%28158 580 573%29"/%3E%3Cellipse cx="580" cy="573" rx="41" ry="16" transform="rotate%28273 580 573%29"/%3E%3Cellipse cx="559" cy="558" rx="31" ry="12" transform="rotate%28160 559 558%29"/%3E%3Cellipse cx="559" cy="558" rx="37" ry="14" transform="rotate%28243 559 558%29"/%3E%3Cellipse cx="173" cy="270" rx="34" ry="13" transform="rotate%2824 173 270%29"/%3E%3Cellipse cx="173" cy="270" rx="42" ry="16" transform="rotate%28117 173 270%29"/%3E%3Cellipse cx="183" cy="295" rx="35" ry="13" transform="rotate%286 183 295%29"/%3E%3Cellipse cx="183" cy="295" rx="35" ry="13" transform="rotate%28112 183 295%29"/%3E%3Cellipse cx="195" cy="318" rx="29" ry="11" transform="rotate%28-6 195 318%29"/%3E%3Cellipse cx="195" cy="318" rx="40" ry="15" transform="rotate%2875 195 318%29"/%3E%3Cellipse cx="215" cy="334" rx="39" ry="15" transform="rotate%28-24 215 334%29"/%3E%3Cellipse cx="215" cy="334" rx="32" ry="12" transform="rotate%2872 215 334%29"/%3E%3Cellipse cx="239" cy="345" rx="40" ry="15" transform="rotate%28-25 239 345%29"/%3E%3Cellipse cx="239" cy="345" rx="36" ry="14" transform="rotate%2862 239 345%29"/%3E%3Cellipse cx="262" cy="355" rx="40" ry="15" transform="rotate%28-30 262 355%29"/%3E%3Cellipse cx="262" cy="355" rx="36" ry="14" transform="rotate%2859 262 355%29"/%3E%3Cellipse cx="288" cy="361" rx="34" ry="13" transform="rotate%28-33 288 361%29"/%3E%3Cellipse cx="288" cy="361" rx="35" ry="13" transform="rotate%2875 288 361%29"/%3E%3Cellipse cx="311" cy="371" rx="34" ry="13" transform="rotate%28-27 311 371%29"/%3E%3Cellipse cx="311" cy="371" rx="35" ry="13" transform="rotate%2874 311 371%29"/%3E%3Cellipse cx="335" cy="383" rx="42" ry="16" transform="rotate%28-5 335 383%29"/%3E%3Cellipse cx="335" cy="383" rx="31" ry="12" transform="rotate%28106 335 383%29"/%3E%3Cellipse cx="350" cy="544" rx="34" ry="13" transform="rotate%28246 350 544%29"/%3E%3Cellipse cx="350" cy="544" rx="30" ry="12" transform="rotate%28321 350 544%29"/%3E%3Cellipse cx="356" cy="519" rx="40" ry="15" transform="rotate%28211 356 519%29"/%3E%3Cellipse cx="356" cy="519" rx="29" ry="11" transform="rotate%28320 356 519%29"/%3E%3Cellipse cx="353" cy="493" rx="29" ry="11" transform="rotate%28222 353 493%29"/%3E%3Cellipse cx="353" cy="493" rx="43" ry="16" transform="rotate%28331 353 493%29"/%3E%3Cellipse cx="355" cy="467" rx="33" ry="13" transform="rotate%28201 355 467%29"/%3E%3Cellipse cx="355" cy="467" rx="44" ry="17" transform="rotate%28307 355 467%29"/%3E%3Cellipse cx="350" cy="441" rx="34" ry="13" transform="rotate%28237 350 441%29"/%3E%3Cellipse cx="350" cy="441" rx="32" ry="12" transform="rotate%28324 350 441%29"/%3E%3Cellipse cx="353" cy="416" rx="39" ry="15" transform="rotate%28218 353 416%29"/%3E%3Cellipse cx="353" cy="416" rx="36" ry="14" transform="rotate%28297 353 416%29"/%3E%3Cellipse cx="349" cy="390" rx="32" ry="12" transform="rotate%28223 349 390%29"/%3E%3Cellipse cx="349" cy="390" rx="35" ry="13" transform="rotate%28309 349 390%29"/%3E%3Cellipse cx="343" cy="365" rx="40" ry="15" transform="rotate%28177 343 365%29"/%3E%3Cellipse cx="343" cy="365" rx="28" ry="11" transform="rotate%28296 343 365%29"/%3E%3Cellipse cx="329" cy="343" rx="40" ry="15" transform="rotate%28189 329 343%29"/%3E%3Cellipse cx="329" cy="343" rx="28" ry="11" transform="rotate%28266 329 343%29"/%3E%3C/g%3E%3C/svg%3E');
  background-size: 640px 640px;
  opacity: 0.32; filter: blur(7px); mix-blend-mode: multiply;
  will-change: transform;
}
.hojas-c::after { /* manchas de luz entre hojas */
  content: ""; position: absolute; inset: 0;
  background:
    radial-gradient(18% 14% at 22% 30%, rgba(246, 225, 180, 0.22), transparent 70%),
    radial-gradient(14% 12% at 64% 58%, rgba(246, 225, 180, 0.18), transparent 70%),
    radial-gradient(20% 16% at 80% 18%, rgba(246, 225, 180, 0.16), transparent 70%);
  mix-blend-mode: screen;
}

/* ---------- 1. Negocios ---------- */
.negocios { background: var(--olivo); }
.negocios .medio { position: absolute; inset: 0; overflow: hidden; }
.negocios .medio img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transform-origin: 50% 50%; }
.negocios .medio .velo { z-index: 1; }
.negocios .cont { z-index: 2; }
.negocios .cont .etiqueta { color: var(--arena); margin-bottom: 18px; display: block; }
.negocios h2 .l { display: block; overflow: hidden; padding-bottom: 0.04em; }
.negocios h2 .l > span { display: block; }

/* ---------- 2. Galería horizontal ---------- */
.horizontal { position: relative; }
.horizontal figure { will-change: transform; }
.horizontal figure .marco { position: absolute; inset: 0; overflow: hidden; }
.horizontal figure img { position: absolute; top: 0; left: -10%; width: 120%; max-width: none; height: 100%; object-fit: cover; will-change: transform; }
.horizontal figcaption { z-index: 1; text-shadow: 0 1px 12px rgba(0, 0, 0, 0.4); }
.horizontal .contador {
  position: absolute; right: var(--gutter); bottom: 5vh; z-index: 3;
  font-family: var(--serif); font-size: clamp(28px, 2.6vw, 42px); line-height: 1; color: var(--olivo);
  display: flex; align-items: baseline; gap: 6px; font-variant-numeric: tabular-nums;
}
.horizontal .contador small { font-family: var(--sans); font-size: 12px; letter-spacing: 0.14em; opacity: 0.55; }
.horizontal .contador .actual { display: inline-block; min-width: 1.1em; }
.horizontal .barrita { position: absolute; left: var(--gutter); bottom: calc(5vh + 14px); width: 160px; height: 1px; background: rgba(46, 58, 40, 0.2); z-index: 3; }
.horizontal .barrita i { display: block; height: 100%; width: 100%; background: var(--olivo); transform: scaleX(0); transform-origin: 0 50%; }

@media (max-width: 860px) {
  /* Carrusel táctil con scroll-snap (anula la columna de la cabeza) */
  .horizontal { padding: 12vh 0 14vh; }
  .horizontal .pista {
    flex-direction: row; width: 100%; height: auto; align-items: stretch; gap: 14px;
    padding: 0 var(--gutter); overflow-x: auto; overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory; scroll-padding-inline: var(--gutter);
    -webkit-overflow-scrolling: touch; scrollbar-width: none;
  }
  .horizontal .pista::-webkit-scrollbar { display: none; }
  .horizontal .intro-h { width: 70vw; align-self: center; scroll-snap-align: start; }
  .horizontal figure, .horizontal figure:nth-child(odd) { width: 78vw; height: 62vh; margin-top: 0; scroll-snap-align: start; }
  .horizontal .contador { position: static; margin: 22px var(--gutter) 0; justify-content: flex-end; }
  .horizontal .barrita { left: var(--gutter); bottom: calc(14vh + 14px); width: 120px; }
}

/* ---------- 3. Vista aérea ---------- */
.aerea { overflow: hidden; }
.aerea .lienzo { position: absolute; inset: 0; }
.aerea .lienzo img { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; }
.aerea.panear { height: auto; }
.aerea.panear .fijo { position: relative; }
.aerea.panear .lienzo { right: auto; width: max(180vw, 179vh); will-change: transform; }
.aerea .sombra { position: absolute; inset: 0; z-index: 1; pointer-events: none; background: radial-gradient(70% 60% at 50% 50%, rgba(31, 28, 24, 0.05), rgba(31, 28, 24, 0.45)); }
.aerea h2 { z-index: 3; }
.aerea h2 .w { display: inline-block; white-space: nowrap; }
.aerea h2 .c { display: inline-block; will-change: transform, opacity, filter; }
.aerea .marca-a {
  position: absolute; z-index: 1; display: flex; align-items: center; gap: 8px;
  font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase; font-weight: 600; color: var(--crema);
  text-shadow: 0 1px 10px rgba(0, 0, 0, 0.5); white-space: nowrap;
}
.aerea .marca-a::before { content: ""; width: 9px; height: 9px; border-radius: 50%; background: var(--arena); box-shadow: 0 0 0 6px rgba(201, 167, 124, 0.3); }
.aerea:not(.panear) .marca-a { display: none; }
.aerea .nubes { position: absolute; inset: 0; z-index: 2; pointer-events: none; }
.aerea .nube { position: absolute; border-radius: 50%; filter: blur(26px); will-change: transform; }
.aerea .n1 { width: 80vw; height: 46vh; left: -24vw; top: -8vh; opacity: 0.85;
  background: radial-gradient(40% 50% at 35% 55%, rgba(250, 246, 238, 0.95), transparent 70%), radial-gradient(35% 45% at 65% 45%, rgba(250, 246, 238, 0.8), transparent 70%), radial-gradient(30% 40% at 50% 70%, rgba(236, 228, 214, 0.75), transparent 72%); }
.aerea .n2 { width: 70vw; height: 40vh; right: -30vw; bottom: -6vh; opacity: 0.8;
  background: radial-gradient(42% 50% at 40% 50%, rgba(250, 246, 238, 0.9), transparent 70%), radial-gradient(30% 40% at 70% 60%, rgba(240, 232, 218, 0.8), transparent 70%); }
.aerea .n3 { width: 46vw; height: 26vh; left: 40vw; top: 30vh; opacity: 0.45; filter: blur(34px);
  background: radial-gradient(50% 50% at 50% 50%, rgba(250, 246, 238, 0.9), transparent 70%); }
@media (max-width: 860px) {
  .aerea .n1 { width: 140vw; left: -50vw; }
  .aerea .n2 { width: 130vw; right: -60vw; }
  .aerea .n3 { width: 90vw; left: 20vw; }
}

/* ---------- 4. Contacto y pie ---------- */
.contacto {
  position: relative; overflow: hidden; padding-bottom: 6vh;
  background:
    radial-gradient(60% 35% at 50% 78%, rgba(231, 168, 108, 0.42), transparent 70%),
    linear-gradient(180deg, var(--olivo) 0%, var(--olivo-2) 30%, #6f7149 52%, #a8956a 70%, #d9c39c 86%, #eadcbf 100%);
}
.contacto > *:not(.hojas-c) { position: relative; z-index: 2; }
.contacto .hojas-c { inset: -20% -30% 40% -30%; }
.contacto .foto { margin: 14vh auto 0; width: min(1100px, 100%); }
.contacto .foto .marco { position: relative; height: clamp(320px, 72vh, 720px); overflow: hidden; border-radius: 48vw 48vw 28px 28px / 22vw 22vw 28px 28px; box-shadow: 0 40px 80px -40px rgba(31, 28, 24, 0.45); }
.contacto .foto img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 40%; }
.contacto .foto figcaption { margin-top: 14px; font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase; font-weight: 600; color: rgba(31, 28, 24, 0.6); text-align: center; }
.contacto .marca { margin-top: 8vh; font-family: var(--serif); font-weight: 400; color: var(--olivo); font-size: clamp(76px, 21vw, 340px); line-height: 0.85; letter-spacing: -0.02em; text-align: center; white-space: nowrap; }
.contacto .marca .c { display: inline-block; will-change: transform, opacity, filter; }
.contacto .pie { color: rgba(31, 28, 24, 0.7); border-top-color: rgba(31, 28, 24, 0.2); margin-top: 6vh; }
@media (max-width: 860px) {
  .contacto .foto .marco { height: 56vh; border-radius: 45vw 45vw 22px 22px / 28vw 28vw 22px 22px; }
}

/* ---------- 5. Rastro de cursor ---------- */
.rastro-c { position: fixed; inset: 0; width: 100vw; height: 100vh; pointer-events: none; z-index: 45; }
.contacto .hojas-c { opacity: 0.2; filter: blur(10px); }

/* v4 · móvil: el título de la galería arriba, con pista para deslizar */
.horizontal .desliza { display: none; }
@media (max-width: 860px) {
  .horizontal .intro-h { align-self: flex-start; width: 62vw; padding-top: 4vh; }
  .horizontal .desliza { display: block; margin-top: 18px; color: var(--terracota); }
}
