.hero-photo.bariloche-scene { display: grid; grid-template-columns: minmax(0, 1fr); grid-template-rows: 104px minmax(0, 1fr); height: 440px; padding: 32px 20px 76px; }
.hero-photo-wrap { min-height: 0; padding-bottom: 0; }
.hero-photo > .hero-marquee { z-index: 7; bottom: 58px; padding: 5px 0; }
.hero-photo .skyline-loop { height: 72%; }
.hero-photo > .hero-marquee .marquee-track span, .hero-photo > .hero-marquee .marquee-track b { font-size: 34px; line-height: 1.15; letter-spacing: 0; }
.hero-photo .hero-copy { position: relative; grid-column: 1; grid-row: 1; inset: auto; align-self: center; justify-self: center; max-width: 100%; padding: 0; transform: none; }
.hero-photo .hero-person { position: relative; grid-column: 1; grid-row: 2; inset: auto; align-self: end; justify-self: center; height: calc(100% + 76px); margin-bottom: -76px; width: 100%; min-height: 0; max-width: 100%; max-height: none; object-fit: contain; object-position: center bottom; transform: translate3d(var(--portrait-drift, 0px), 0, 0) scale(var(--portrait-scale, 1)) !important; transform-origin: center bottom; will-change: auto; }
.hero-photo .hero-back-marquee { z-index: 11; bottom: 20px; opacity: 1; }
.hero-photo .back-marquee-track span { color: rgba(255,255,255,.42); -webkit-text-stroke: 1px rgba(255,255,255,.65); }
.hero-photo .back-marquee-track b { color: rgba(255,255,255,.76); }
.hero-photo .back-marquee-track span, .hero-photo .back-marquee-track b { font-size: 38px; letter-spacing: 0; }
@media (min-width: 861px), (orientation: landscape) and (min-width: 600px) {
  .hero-photo.bariloche-scene { grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); grid-template-rows: minmax(0, 1fr); height: clamp(380px, 76svh, 580px); padding: 72px 9% 100px; gap: 24px; }
  .hero-photo .hero-copy { grid-column: 1; grid-row: 1; }
  .hero-photo .hero-person { grid-column: 2; grid-row: 1; height: calc(100% + 100px); margin-bottom: -100px; }
  .hero-title { max-width: 100%; }
  .hero-title span { font-size: 22px; letter-spacing: 0; }
  .hero-title strong { font-size: 64px; letter-spacing: 0; }
  .hero-photo .back-marquee-track span, .hero-photo .back-marquee-track b { font-size: 52px; }
  .hero-photo > .hero-marquee { bottom: 70px; }
  .hero-photo > .hero-marquee .marquee-track span, .hero-photo > .hero-marquee .marquee-track b { font-size: 42px; }
}
@media (prefers-reduced-motion: reduce) {
  .hero-photo .hero-person { transform: none !important; }
}
@media (orientation: landscape) and (max-height: 540px) and (min-width: 600px) {
  .hero-photo.bariloche-scene { height: 320px; padding: 36px 10% 72px; }
  .hero-photo .hero-person { height: calc(100% + 72px); margin-bottom: -72px; }
  .hero-title span { font-size: 17px; }
  .hero-title strong { font-size: 46px; }
  .hero-photo .back-marquee-track span, .hero-photo .back-marquee-track b { font-size: 32px; }
  .hero-photo > .hero-marquee { bottom: 54px; }
}
.resource-hub[aria-label="Guías y recursos"] { padding-top: 40px; padding-bottom: 40px; }
.resource-grid .resource-panel { padding-top: 64px; padding-bottom: 64px; }
.resource-copy h2,.closing h2 { letter-spacing: 0; }
.hero-motion-paused *, .hero-motion-paused::before, .hero-motion-paused::after { animation-play-state: paused !important; }
.hero-photo-wrap.reveal { opacity: 1; transform: none; transition: none; }
.resource-copy,.youtube-copy,.instagram-copy,.closing-links a { min-width: 0; }
.resource-copy h2,.closing h2,.social-row strong { text-wrap: balance; overflow-wrap: break-word; }
.resource-copy p { text-wrap: pretty; }
.resource-cta,.resource-form button[type="submit"],.social-action,.closing-links a { max-width: 100%; white-space: normal; }
.resource-cta:focus-visible,.resource-form input:focus-visible,.resource-form button:focus-visible,.social-action:focus-visible,.closing-links a:focus-visible,.trekking-entry a:focus-visible { outline: 3px solid #e000a8; outline-offset: 5px; }
.resource-panel-main { min-height: 0; padding-top: 64px; padding-bottom: calc(clamp(320px, 34vw, 520px) + 112px); }
.resource-panel-main .resource-copy h2 { font-size: 48px; line-height: 1.12; }
.resource-grid .resource-copy h2 { font-size: 34px; line-height: 1.15; }
.resource-cta,.resource-form button[type="submit"],.social-action { min-height: 48px; display: inline-flex; align-items: center; justify-content: center; padding: 12px 22px; font-size: 14px; line-height: 1.4; font-weight: 700; letter-spacing: 0; text-align: center; }
.resource-cta { border-radius: 6px; box-shadow: none; }
.resource-cta[hidden] { display: none; }
.resource-form button[type="submit"] { border-radius: 6px; text-transform: none; }
.resource-grid .resource-cta:not(.app-access-link) { background: transparent; color: inherit; border: 1px solid currentColor; box-shadow: none; }
.resource-grid .resource-cta:not(.app-access-link)::after { content: none; }
.resource-grid .resource-cta:not(.app-access-link):hover { background: #80808014; transform: none; filter: none; box-shadow: none; }
.resource-cta:hover { box-shadow: none; }
.social-row .social-action { min-height: 48px; border: 1px solid #15151a40; border-radius: 6px; background: transparent; color: #15151a; box-shadow: none; text-transform: none; }
.social-row .social-action:hover { transform: none; background: #15151a08; box-shadow: none; }
.speaker { padding-top: 56px; padding-bottom: 40px; }
.closing { padding-top: 48px; padding-bottom: 56px; }
.closing-kicker { letter-spacing: 0; text-transform: none; font-weight: 600; color: #62626a; }
.closing h2 { font-size: 40px; line-height: 1.15; max-width: 700px; margin-bottom: 30px; }
.closing-links { gap: 24px; padding: 0; border-radius: 0; background: transparent; box-shadow: none; }
.closing-links a { min-height: 64px; padding: 12px 8px; font-size: 15px; line-height: 1.5; font-weight: 600; letter-spacing: 0; background: transparent; border-top: 1px solid #15151a26; border-bottom: 1px solid #15151a26; text-decoration: none; }
.closing-links a:hover { background: transparent; color: #a6007d; transform: none; border-bottom-color: #a6007d; }
@media (max-width: 700px) {
  .resource-panel-main { padding-top: 40px; padding-bottom: calc(clamp(320px, 34vw, 520px) + 80px); }
  .resource-panel-main .resource-copy h2 { font-size: 34px; }
  .resource-hub[aria-label="Guías y recursos"] { padding-top: 24px; padding-bottom: 24px; }
  .resource-grid .resource-panel { padding-top: 36px; padding-bottom: 40px; }
  .resource-grid .resource-copy h2 { font-size: 28px; }
  .speaker { padding-top: 40px; padding-bottom: 32px; }
  .closing { padding-top: 36px; padding-bottom: 40px; }
  .closing h2 { font-size: 30px; }
  .closing-links { gap: 0; grid-template-columns: 1fr; }
  .closing-links a + a { border-top: 0; }
}
