/* Hallmark · component: destination preview · Edumax system
 * Pre-emit critique: P5 H5 E5 S5 R5 V4. Native links keep stable targets. */
:root {
 --color-flag-australia-blue: #012169;
 --color-flag-canada-red: #d80621;
 --color-flag-cyprus-copper: #d57800;
 --color-flag-hungary-red: #ce293d;
 --color-flag-malaysia-blue: #010066;
 --color-flag-uk-blue: #012169;
 --color-flag-usa-red: #b22234;
 --color-flag-korea-blue: #003478;
}
.edumax-landing :is(.em-destinations,.em-mega,.em-directory) .em-destination-card {
 --destination-color: var(--color-ink);
 --destination-shade: color-mix(in srgb, var(--destination-color) 55%, var(--color-ink));
}
.edumax-landing :is(.em-destinations,.em-mega,.em-directory) [data-destination="australia"] { --destination-color: var(--color-flag-australia-blue); }
.edumax-landing :is(.em-destinations,.em-mega,.em-directory) [data-destination="canada"] { --destination-color: var(--color-flag-canada-red); }
.edumax-landing :is(.em-destinations,.em-mega,.em-directory) [data-destination="cyprus"] { --destination-color: var(--color-flag-cyprus-copper); }
.edumax-landing :is(.em-destinations,.em-mega,.em-directory) [data-destination="hungary"] { --destination-color: var(--color-flag-hungary-red); }
.edumax-landing :is(.em-destinations,.em-mega,.em-directory) [data-destination="malaysia"] { --destination-color: var(--color-flag-malaysia-blue); }
.edumax-landing :is(.em-destinations,.em-mega,.em-directory) [data-destination="uk"] { --destination-color: var(--color-flag-uk-blue); }
.edumax-landing :is(.em-destinations,.em-mega,.em-directory) [data-destination="usa"] { --destination-color: var(--color-flag-usa-red); }
.edumax-landing :is(.em-destinations,.em-mega,.em-directory) [data-destination="south-korea"] { --destination-color: var(--color-flag-korea-blue); }
.edumax-landing :is(.em-destinations,.em-mega,.em-directory) .em-destination-copy:after {
 inset: 0 0 calc(-1 * var(--space-3xl));
 background: linear-gradient(180deg,
  color-mix(in srgb, var(--destination-shade) 96%, transparent) 0%,
  color-mix(in srgb, var(--destination-shade) 94%, transparent) 20%,
  color-mix(in srgb, var(--destination-shade) 85%, transparent) 38%,
  color-mix(in srgb, var(--destination-shade) 64%, transparent) 54%,
  color-mix(in srgb, var(--destination-shade) 36%, transparent) 70%,
  color-mix(in srgb, var(--destination-shade) 12%, transparent) 85%,
  color-mix(in srgb, var(--destination-shade) 3%, transparent) 94%, transparent 100%);
}
.edumax-landing .em-destinations-all {
 position: relative;
 isolation: isolate;
 display: flex;
 flex-direction: column;
 align-items: flex-start;
 min-width: 0;
 min-height: 330px;
 overflow: clip;
 padding: var(--space-md);
 border: 1px solid var(--color-ink);
 border-radius: var(--radius-card);
 background: var(--color-ink);
 color: var(--color-on-dark);
 text-decoration: none;
 transition: border-color var(--dur-short), background-color var(--dur-short);
}
.edumax-landing .em-destinations-all-kicker {
 color: var(--color-dark-muted);
 font-size: .75rem;
 letter-spacing: .08em;
 text-transform: uppercase;
}
.edumax-landing .em-destinations-all-art {
 display: grid;
 place-items: center;
 width: 100%;
 flex: 1;
 padding-block: var(--space-sm);
 color: var(--color-accent);
}
.edumax-landing .em-destinations-all-art > .em-icon {
 width: 88px;
 height: 88px;
 stroke-width: .8;
 color: inherit;
}
.edumax-landing .em-destinations-all strong {
 font-family: var(--font-display);
 font-size: var(--text-lg);
 line-height: 1.4;
 letter-spacing: -.025em;
}
.edumax-landing .em-destinations-all-intro {
 margin-top: var(--space-2xs);
 color: var(--color-dark-muted);
 font-size: var(--text-xs);
 line-height: 1.5;
}
.edumax-landing .em-destinations-all-action {
 display: flex;
 align-items: center;
 justify-content: space-between;
 gap: var(--space-xs);
 width: 100%;
 margin-top: var(--space-md);
 padding-top: var(--space-sm);
 border-top: 1px solid var(--color-muted);
 color: var(--color-on-dark);
 font-size: var(--text-xs);
 font-weight: 700;
 white-space: nowrap;
}
.edumax-landing .em-destinations-all-action .em-icon { flex: 0 0 auto; width: 20px; height: 20px; }
.edumax-landing .em-destinations-all:focus-visible { outline: 3px solid var(--color-focus); outline-offset: 4px; }
@media (hover:hover) {
 .edumax-landing .em-destinations-all:hover { border-color: var(--color-accent); background: var(--color-accent-hover); }
}
.edumax-landing .em-destinations-all:is(:hover,:focus-visible,:active) .em-destinations-all-art { color: var(--color-on-dark); }
.edumax-landing .em-destinations-all:active { background: var(--color-accent); }
@media (prefers-reduced-motion:no-preference) {
 .edumax-landing .em-destinations-all-art > .em-icon,
 .edumax-landing .em-destinations-all-action > .em-icon { transition: transform var(--dur-short) var(--ease-out); }
 .edumax-landing .em-destinations-all:is(:hover,:focus-visible) .em-destinations-all-art > .em-icon { transform: rotate(-8deg); }
 .edumax-landing .em-destinations-all:is(:hover,:focus-visible) .em-destinations-all-action > .em-icon { transform: translateX(3px); }
}
@media (max-width:900px) { .edumax-landing .em-destinations-all { min-height: 280px; } }
@media (prefers-reduced-motion:reduce) { .edumax-landing .em-destinations-all { transition: none; } }
