.mar-season { background: linear-gradient(135deg, var(--bg-3), var(--accent-2), var(--accent)); color: var(--ink-0); padding: 22px; border-radius: var(--radius); border: 1px solid var(--border); margin-bottom: 22px; }
.mar-season h3 { font-family: var(--font-display); font-size: 16px; font-weight: 800; letter-spacing: 0.04em; margin-bottom: 6px; }
.mar-season p { font-size: 13px; opacity: 0.9; }
.mar-season-events { display: flex; gap: 6px; flex-wrap: wrap; margin-top: 10px; }
.mar-event-tag { background: rgba(255,255,255,0.15); padding: 4px 10px; border-radius: 0; font-family: var(--font-display); font-size: 9.5px; font-weight: 700; letter-spacing: 0.10em; text-transform: uppercase; }

.mar-temp-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 10px; }
.mar-temp-card { padding: 14px; border-radius: var(--radius-sm); border: 1px solid var(--border); background: var(--bg-1); }
.mar-temp-warm { border-left: 3px solid var(--ok); }
.mar-temp-mild { border-left: 3px solid var(--warn); }
.mar-temp-cold { border-left: 3px solid var(--accent); }
.mar-temp-destino { font-family: var(--font-display); font-weight: 700; font-size: 11px; letter-spacing: 0.06em; text-transform: uppercase; margin-bottom: 4px; color: var(--ink-1); }
.mar-temp-value { font-family: var(--font-wordmark); font-size: 36px; font-weight: 400; color: var(--ink-0); }
.mar-temp-details { font-size: 11px; color: var(--ink-3); margin-top: 2px; font-family: var(--font-mono); }
.mar-condition { font-family: var(--font-display); font-size: 10px; margin-top: 6px; font-weight: 700; letter-spacing: 0.06em; }
.cond-excellent { color: var(--ok); }
.cond-good { color: var(--warn); }
.cond-caution { color: var(--danger); }
.mar-condition-badge { font-size: 11px; padding: 4px 10px; background: var(--surface-2); border: 1px solid var(--border); }
.mar-legend h4 { font-family: var(--font-display); font-size: 11px; color: var(--ink-2); text-transform: uppercase; letter-spacing: 0.10em; }
