/* Small improvements shared by English and Spanish; existing photography retained. */
.v4-home-panel { max-height: calc(100dvh - 90px); overflow-y: auto; }
.v4-home-panel h1 { font-size: clamp(2.3rem, 5.5vw, 4.5rem); line-height: 1.04; text-wrap: balance; }
.v4-home-description { max-width: 520px; margin: 20px auto 26px; color: #f4f0e9; font-size: clamp(1rem, 1.8vw, 1.2rem); line-height: 1.6; text-wrap: pretty; }
.v4-home-resume { margin-top: 24px; padding-top: 18px; border-top: 1px solid #ffffff35; }
.v4-home-resume button { background: transparent; color: #fff; border: 0; font: inherit; font-weight: 700; text-decoration: underline; text-underline-offset: 5px; cursor: pointer; min-height: 44px; padding: 8px 16px; }
.v4-home-resume p { color: #eee3d3; font-size: .85rem; margin: 4px 0 0; }
:is(button, a, input, select, textarea, [role="button"]):focus-visible { outline: 3px solid #b57916; outline-offset: 4px; }
#atlasCinematic :is(button, a):focus-visible { outline-color: #ffdb85; }
.export-option[aria-busy="true"] { opacity: .65; cursor: progress; }
.export-option { min-height: 44px; }
body #export-modal { z-index: 20000; }
body #toast-container { z-index: 20001; }
@media (max-width: 600px) {
  .v4-home-panel { padding: 24px 20px; }
  .v4-home-panel h1 { font-size: clamp(2rem, 9vw, 3rem); }
  .v4-home-actions { flex-direction: column; gap: 10px; }
  .v4-home-actions button { width: 100%; min-height: 48px; }
  .v4-home-description { margin: 16px auto 20px; }
}
@media (prefers-reduced-motion: reduce) {
  .v4-home-panel, .export-option, .modal-content { scroll-behavior: auto !important; transition: none !important; }
}
