/* Aley Ridge — mountain stone / cool night-first (NOT cream Fraunces twin) */
@import url("https://fonts.googleapis.com/css2?family=Figtree:wght@400;500;600;700;800&family=Newsreader:ital,opsz,wght@0,6..72,500;0,6..72,600;0,6..72,700;1,6..72,500;1,6..72,600&display=swap");

.aley {
  --a-bg: #e4e8e3;
  --a-fg: #121c18;
  --a-card: #f3f5f2;
  --a-muted: #cfd6cf;
  --a-muted-fg: #4a5c52;
  --a-primary: #1f4a38;
  --a-primary-fg: #e4e8e3;
  --a-secondary: #d2d9d2;
  --a-accent: #b4532a;
  --a-accent-fg: #fff6f0;
  --a-gold: #c4a35a;
  --a-night: #0c1612;
  --a-night-fg: #e8ebe6;
  --a-whatsapp: #25d366;
  --a-border: #aeb8ae;
  --a-grad: linear-gradient(90deg, #b4532a, #c4a35a);
  --a-dusk: linear-gradient(180deg, rgba(12,22,18,0.15) 0%, rgba(12,22,18,0.6) 55%, rgba(12,22,18,0.97) 100%);
  --a-shadow: 0 24px 48px -28px rgba(12,22,18,0.45);
  --a-font: "Figtree", system-ui, sans-serif;
  --a-display: "Newsreader", Georgia, serif;
  --a-radius: 1.6rem;
  font-family: var(--a-font);
  color: var(--a-fg);
  background-color: var(--a-bg);
  background-image:
    radial-gradient(ellipse 70% 45% at 50% -5%, rgba(31, 74, 56, 0.14), transparent),
    linear-gradient(180deg, #dfe4de 0%, #e4e8e3 40%, #dce2db 100%);
  line-height: 1.55;
  overflow-x: clip;
  -webkit-font-smoothing: antialiased;
}
.aley *, .aley *::before, .aley *::after { box-sizing: border-box; }
.aley h1, .aley h2, .aley h3 { font-family: var(--a-display); letter-spacing: -0.015em; line-height: 1.08; margin: 0; font-weight: 600; }
.aley a { color: inherit; text-decoration: none; }
.aley img { max-width: 100%; display: block; }
.aley button, .aley input { font: inherit; }
.aley .wrap { max-width: 80rem; margin: 0 auto; padding-left: 1.5rem; padding-right: 1.5rem; }
.aley .italic, .aley em { font-style: italic; color: var(--a-accent); }
.aley-progress {
  position: fixed; inset-inline: 0; top: 0; z-index: 70; height: 4px;
  background-image: var(--a-grad); transform: scaleX(0); transform-origin: left; pointer-events: none;
}
.aley [data-reveal] {
  opacity: 0; transform: translateY(40px);
  transition: opacity 0.7s cubic-bezier(0.22,1,0.36,1), transform 0.7s cubic-bezier(0.22,1,0.36,1);
}
.aley [data-reveal].is-in { opacity: 1; transform: none; }
.aley [data-stagger] > [data-reveal]:nth-child(1) { transition-delay: .05s; }
.aley [data-stagger] > [data-reveal]:nth-child(2) { transition-delay: .12s; }
.aley [data-stagger] > [data-reveal]:nth-child(3) { transition-delay: .19s; }
.aley [data-stagger] > [data-reveal]:nth-child(4) { transition-delay: .26s; }
.aley [data-stagger] > [data-reveal]:nth-child(5) { transition-delay: .33s; }
.aley [data-stagger] > [data-reveal]:nth-child(6) { transition-delay: .4s; }

.aley-bar { height: 8px; overflow: hidden; border-radius: 999px; background: var(--a-muted); }
.aley-bar > i { display: block; height: 100%; width: 0; border-radius: 999px; background-image: var(--a-grad); transition: width 1.2s ease-out; }
.aley-bar.is-on > i { width: var(--bar, 0%); }
.aley-bar.gold > i { background: var(--a-gold); }
.aley-shine { position: relative; overflow: hidden; }
.aley-shine::after {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(115deg, transparent 30%, rgba(255,255,255,0.35) 50%, transparent 70%);
  transform: translateX(-120%); transition: transform 0.9s ease;
}
.aley-shine:hover::after { transform: translateX(120%); }
.aley-marquee-track { display: flex; overflow: hidden; }
.aley-marquee { display: flex; flex-shrink: 0; gap: 1.5rem; white-space: nowrap; animation: aley-marquee 40s linear infinite; padding-right: 1.5rem; }
.aley-marquee:hover { animation-play-state: paused; }
@keyframes aley-marquee { to { transform: translateX(-50%); } }
.aley-pulse { animation: aley-pulse 2s infinite; }
@keyframes aley-pulse {
  0% { box-shadow: 0 0 0 0 rgba(37,211,102,0.55); }
  70% { box-shadow: 0 0 0 22px rgba(37,211,102,0); }
  100% { box-shadow: 0 0 0 0 rgba(37,211,102,0); }
}

/* nav */
.aley-nav {
  position: fixed; inset-inline: 0; top: 0; z-index: 50;
  transition: background 0.4s, box-shadow 0.4s, color 0.4s;
  color: var(--a-night-fg);
}
.aley-nav.is-scrolled { background: rgba(246,241,230,0.92); backdrop-filter: blur(12px); box-shadow: var(--a-shadow); color: var(--a-fg); }
.aley-nav-inner { max-width: 80rem; margin: 0 auto; padding: 1rem 1.5rem; display: flex; align-items: center; justify-content: space-between; }
.aley-logo { display: flex; align-items: center; gap: 0.5rem; font-family: var(--a-display); font-size: 1.25rem; font-weight: 600; }
.aley-logo .ico { color: var(--a-accent); animation: aley-bob 6s ease-in-out infinite; }
@keyframes aley-bob { 0%,100%{transform:rotate(0)} 50%{transform:rotate(-8deg)} }
.aley-logo em { font-weight: 400; font-style: italic; }
.aley-nav-links { display: none; gap: 1.75rem; font-size: 0.875rem; font-weight: 600; }
@media (min-width: 1024px) { .aley-nav-links { display: flex; } }
.aley-nav-links a { position: relative; }
.aley-nav-links a::after {
  content: ""; position: absolute; left: 0; bottom: -4px; height: 1px; width: 0; background: var(--a-accent); transition: width 0.25s;
}
.aley-nav-links a:hover::after { width: 100%; }
.aley-nav-wa {
  display: inline-flex; align-items: center; gap: 0.5rem; border-radius: 999px;
  background: var(--a-whatsapp); color: #fff; padding: 0.5rem 1rem; font-size: 0.875rem; font-weight: 700;
  transition: transform 0.2s;
}
.aley-nav-wa:hover { transform: scale(1.05); }

/* sticky */
.aley-sticky {
  position: fixed; bottom: 1.5rem; right: 1.5rem; z-index: 50;
  display: inline-flex; align-items: center; gap: 0.5rem; border-radius: 999px;
  background: var(--a-whatsapp); color: #fff; padding: 1rem 1.25rem; font-weight: 700;
  box-shadow: var(--a-shadow); opacity: 0; transform: scale(0);
  transition: opacity 0.4s, transform 0.5s cubic-bezier(0.22,1,0.36,1);
}
.aley-sticky.is-in { opacity: 1; transform: scale(1); }
.aley-sticky:hover { transform: scale(1.1) rotate(-8deg); }
.aley-sticky span { display: none; }
@media (min-width: 640px) { .aley-sticky span { display: inline; } }

/* hero */
.aley-hero {
  position: relative; height: 100svh; min-height: 680px; overflow: hidden; background: var(--a-night); color: var(--a-night-fg);
}
.aley-hero-img {
  position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover;
  transform: scale(1.05); will-change: transform;
}
.aley-hero-rays {
  pointer-events: none; position: absolute; top: -33%; right: 0; width: 66%; height: 150%;
  background: radial-gradient(ellipse at top right, var(--a-gold), transparent 60%);
  mix-blend-mode: soft-light; opacity: 0.4; animation: aley-rays 9s ease-in-out infinite alternate;
}
@keyframes aley-rays { from { opacity: 0.25; transform: rotate(-4deg); } to { opacity: 0.6; transform: rotate(4deg); } }
.aley-hero-fog {
  pointer-events: none; position: absolute; inset-inline: -20%; bottom: 20%; height: 33%;
  background: radial-gradient(ellipse at center, rgba(244,236,220,0.45), transparent 70%);
  filter: blur(24px); animation: aley-fog 22s ease-in-out infinite alternate;
}
@keyframes aley-fog { from { transform: translateX(-8%); opacity: 0.5; } to { transform: translateX(8%); opacity: 0.85; } }
.aley-hero-dusk { position: absolute; inset: 0; background-image: var(--a-dusk); }
.aley-dust {
  position: absolute; bottom: 0; border-radius: 999px; background: var(--a-gold);
  animation: aley-dust linear infinite; opacity: 0;
}
@keyframes aley-dust {
  0% { transform: translateY(0); opacity: 0; }
  15% { opacity: 0.8; }
  100% { transform: translateY(-120vh) translateX(40px); opacity: 0; }
}
.aley-chip {
  position: absolute; display: none; border-radius: 999px; border: 1px solid rgba(244,236,220,0.3);
  background: rgba(26,46,36,0.5); backdrop-filter: blur(8px); padding: 0.5rem 1rem;
  font-size: 0.875rem; font-weight: 700; animation: aley-float 5s ease-in-out infinite;
}
@media (min-width: 768px) { .aley-chip { display: block; } }
@keyframes aley-float { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-14px)} }
.aley-chip i { display: inline-block; width: 8px; height: 8px; border-radius: 999px; background: var(--a-gold); margin-right: 0.5rem; }
.aley-hero-content {
  position: relative; z-index: 10; max-width: 80rem; margin: 0 auto; height: 100%;
  display: flex; flex-direction: column; justify-content: flex-end; padding: 0 1.5rem 6rem;
}
.aley-hero .eyebrow {
  font-size: 0.7rem; font-weight: 700; letter-spacing: 0.3em; text-transform: uppercase; color: var(--a-gold); margin-bottom: 1.25rem;
}
.aley-hero h1 { max-width: 56rem; font-size: clamp(2.75rem, 7vw, 5.5rem); font-weight: 600; }
.aley-hero h1 .word {
  display: inline-block; margin-right: 0.25em;
  opacity: 0; transform: translateY(60px) rotate(4deg);
  animation: aley-word 0.8s cubic-bezier(0.22,1,0.36,1) forwards;
}
@keyframes aley-word { to { opacity: 1; transform: none; } }
.aley-hero .lead { margin-top: 1.5rem; max-width: 36rem; font-size: 1.125rem; opacity: 0.85; }
.aley-hero-ctas { margin-top: 2rem; display: flex; flex-wrap: wrap; gap: 0.75rem; }
.aley-btn-accent {
  display: inline-flex; align-items: center; gap: 0.5rem; border-radius: 999px;
  background: var(--a-accent); color: var(--a-accent-fg); padding: 1rem 1.75rem; font-weight: 700;
  box-shadow: var(--a-shadow); transition: transform 0.2s;
}
.aley-btn-accent:hover { transform: scale(1.05); }
.aley-btn-ghost {
  display: inline-flex; align-items: center; gap: 0.5rem; border-radius: 999px;
  border: 1px solid rgba(244,236,220,0.4); padding: 1rem 1.75rem; font-weight: 700;
  backdrop-filter: blur(8px); transition: background 0.2s;
}
.aley-btn-ghost:hover { background: rgba(244,236,220,0.1); }
.aley-btn-wa {
  display: inline-flex; align-items: center; justify-content: center; gap: 0.5rem;
  border-radius: 999px; background: var(--a-whatsapp); color: #fff; font-weight: 700;
  padding: 0.75rem 1.5rem; transition: transform 0.2s;
}
.aley-btn-wa:hover { transform: scale(1.03); }
.aley-btn-wa.lg { padding: 1.25rem 2.5rem; font-size: 1.125rem; }

/* trust */
.aley-trust { overflow: hidden; border-bottom: 1px solid var(--a-border); background: var(--a-primary); color: var(--a-primary-fg); padding: 1rem 0; }
.aley-trust .v { display: inline-flex; align-items: center; gap: 0.5rem; font-size: 0.875rem; font-weight: 600; }
.aley-trust .v::before { content: "Ã°ÂÂÂ"; color: var(--a-gold); }

/* stats */
.aley-stats { padding: 5rem 0; }
.aley-stats-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 1.5rem; }
@media (min-width: 768px) { .aley-stats-grid { grid-template-columns: repeat(4,1fr); } }
.aley-stat {
  border-radius: 1rem; border: 1px solid var(--a-border); background: var(--a-card);
  padding: 1.5rem; box-shadow: var(--a-shadow);
}
.aley-stat .n { font-family: var(--a-display); font-size: clamp(2rem,4vw,3rem); font-weight: 600; color: var(--a-primary); }
.aley-stat .l { margin-top: 0.5rem; font-size: 0.875rem; color: var(--a-muted-fg); }

/* section chrome */
.aley-sec { padding: 6rem 0; }
.aley-sec.alt { background: var(--a-secondary); }
.aley-eyebrow {
  display: flex; align-items: center; gap: 0.75rem; font-size: 0.7rem; font-weight: 700;
  letter-spacing: 0.25em; text-transform: uppercase; color: var(--a-accent); margin-bottom: 1rem;
}
.aley-eyebrow .n { font-family: var(--a-display); font-size: 1rem; letter-spacing: 0; text-transform: none; }
.aley-eyebrow .line { height: 1px; width: 2.5rem; background: var(--a-accent); }
.aley-sec h2 { font-size: clamp(2rem,5vw,3.75rem); max-width: 48rem; }

/* budget */
.aley-budget-grid { margin-top: 3rem; display: grid; gap: 2rem; }
@media (min-width: 1024px) { .aley-budget-grid { grid-template-columns: 1.3fr 1fr; } }
.aley-panel {
  border-radius: 1.5rem; background: var(--a-card); padding: 2rem; box-shadow: var(--a-shadow);
}
.aley-panel.night { background: var(--a-night); color: var(--a-night-fg); display: flex; flex-direction: column; align-items: center; justify-content: center; }
.aley-range { width: 100%; accent-color: var(--a-accent); margin-top: 0.5rem; }
.aley-band { margin-top: 1rem; }
.aley-band .row { display: flex; justify-content: space-between; font-size: 0.875rem; margin-bottom: 0.25rem; }
.aley-ring-wrap { position: relative; width: 10rem; height: 10rem; }
.aley-ring-wrap svg { transform: rotate(-90deg); width: 100%; height: 100%; }
.aley-ring-wrap .track { fill: none; stroke: rgba(244,236,220,0.15); stroke-width: 12; }
.aley-ring-wrap .val { fill: none; stroke: var(--a-accent); stroke-width: 12; stroke-linecap: round; stroke-dasharray: 339.292; stroke-dashoffset: 339.292; transition: stroke-dashoffset 0.6s ease; }
.aley-ring-wrap .lab {
  position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center;
  font-family: var(--a-display); font-size: 3rem; font-weight: 600;
}
.aley-ring-wrap .lab small { font-family: var(--a-font); font-size: 0.65rem; letter-spacing: 0.15em; text-transform: uppercase; opacity: 0.7; }
.aley-mini-results { margin-top: 2.5rem; display: grid; gap: 1rem; grid-template-columns: 1fr; }
@media (min-width: 640px) { .aley-mini-results { grid-template-columns: 1fr 1fr; } }
@media (min-width: 1024px) { .aley-mini-results { grid-template-columns: repeat(4,1fr); } }
.aley-mini {
  display: flex; align-items: center; gap: 0.75rem; border-radius: 1rem; background: var(--a-card);
  padding: 0.75rem; box-shadow: var(--a-shadow);
}
.aley-mini img { width: 3.5rem; height: 3.5rem; border-radius: 0.75rem; object-fit: cover; }
.aley-mini strong { display: block; font-size: 0.875rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.aley-mini span { font-size: 0.875rem; color: var(--a-accent); font-weight: 700; }

/* listings */
.aley-filters { margin-top: 2.5rem; display: flex; flex-wrap: wrap; gap: 0.5rem; align-items: center; }
.aley-filters button {
  border-radius: 999px; border: 0; padding: 0.5rem 1.25rem; font-size: 0.875rem; font-weight: 700;
  background: var(--a-secondary); color: var(--a-fg); cursor: pointer; transition: background 0.2s, color 0.2s;
}
.aley-filters button.is-on { background: var(--a-primary); color: var(--a-primary-fg); }
.aley-filters .count { margin-left: auto; font-size: 0.875rem; color: var(--a-muted-fg); }
.aley-grid { margin-top: 2rem; display: grid; gap: 1.5rem; }
@media (min-width: 640px) { .aley-grid { grid-template-columns: 1fr 1fr; } }
@media (min-width: 1024px) { .aley-grid { grid-template-columns: repeat(4,1fr); } }
.aley-card {
  border-radius: 1.5rem; border: 1px solid var(--a-border); background: var(--a-card);
  box-shadow: var(--a-shadow); overflow: hidden; transition: transform 0.3s; transform-style: preserve-3d;
}
.aley-card:hover { transform: translateY(-10px); }
.aley-card-media { position: relative; aspect-ratio: 4/3; overflow: hidden; }
.aley-card-media img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.7s; }
.aley-card:hover .aley-card-media img { transform: scale(1.1); }
.aley-card .tag {
  position: absolute; left: 0.75rem; top: 0.75rem; border-radius: 999px;
  background: var(--a-accent); color: var(--a-accent-fg); padding: 0.25rem 0.75rem; font-size: 0.7rem; font-weight: 700;
}
.aley-card .fav {
  position: absolute; right: 0.75rem; top: 0.75rem; border: 0; border-radius: 999px;
  background: rgba(255,252,245,0.9); width: 2.25rem; height: 2.25rem; cursor: pointer; font-size: 1rem;
}
.aley-card .fav.is-on { color: var(--a-accent); }
.aley-card .id-badge {
  position: absolute; bottom: 0.75rem; left: 0.75rem; border-radius: 999px;
  background: rgba(26,46,36,0.8); color: var(--a-night-fg); padding: 0.25rem 0.75rem; font-size: 0.7rem; backdrop-filter: blur(6px);
}
.aley-card-body { padding: 1.25rem; }
.aley-card .price { font-family: var(--a-display); font-size: 1.5rem; font-weight: 600; color: var(--a-primary); }
.aley-card .meta { display: flex; gap: 1rem; margin-top: 0.75rem; font-size: 0.75rem; color: var(--a-muted-fg); }
.aley-utils { margin-top: 1rem; display: grid; grid-template-columns: 1fr 1fr; gap: 0.5rem; }
.aley-util {
  display: flex; gap: 0.5rem; align-items: flex-start; border-radius: 0.75rem;
  background: var(--a-secondary); padding: 0.5rem 0.75rem; font-size: 0.7rem;
  transition: transform 0.25s;
}
.aley-util:hover { transform: rotate(-2deg) scale(1.04); }
.aley-util .lbl { font-size: 0.55rem; letter-spacing: 0.12em; text-transform: uppercase; color: var(--a-muted-fg); }
.aley-util .val { font-weight: 700; font-size: 0.75rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.aley-util.wide { grid-column: 1 / -1; }
.aley-card .ask {
  display: flex; margin-top: 1rem; align-items: center; justify-content: center; gap: 0.5rem;
  border-radius: 999px; background: var(--a-primary); color: var(--a-primary-fg);
  padding: 0.75rem; font-size: 0.875rem; font-weight: 700; transition: background 0.2s;
}
.aley-card .ask:hover { background: var(--a-accent); }

/* coverage panel */
.aley-cover { border-radius: 1.5rem; background: var(--a-card); padding: 1.5rem; box-shadow: var(--a-shadow); }

/* listing marquee night */
.aley-strip { overflow: hidden; background: var(--a-night); padding: 2.5rem 0; color: var(--a-night-fg); }
.aley-strip-item {
  display: flex; width: 20rem; flex-shrink: 0; align-items: center; gap: 1rem;
  border-radius: 1rem; background: rgba(244,236,220,0.05); padding: 0.75rem;
}
.aley-strip-item img { width: 6rem; height: 5rem; border-radius: 0.75rem; object-fit: cover; }

/* video tour */
.aley-tour-grid { display: grid; gap: 3rem; align-items: center; }
@media (min-width: 1024px) { .aley-tour-grid { grid-template-columns: 1fr 1fr; } }
.aley-check { list-style: none; padding: 0; margin: 1.5rem 0 0; }
.aley-check li { display: flex; align-items: center; gap: 0.75rem; margin-bottom: 0.75rem; }
.aley-check .tick {
  width: 1.5rem; height: 1.5rem; flex-shrink: 0; border-radius: 999px; background: var(--a-accent); color: #fff;
  display: grid; place-items: center; font-size: 0.75rem; font-weight: 800;
  transform: scale(0); transition: transform 0.4s cubic-bezier(0.22,1,0.36,1);
}
.aley-check .tick.is-on { transform: scale(1); }
.aley-player {
  position: relative; aspect-ratio: 4/5; overflow: hidden; border-radius: 2rem; box-shadow: var(--a-shadow);
}
.aley-player img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; transition: opacity 0.6s; transform: scale(1.05); }
.aley-player img.is-on { opacity: 1; transform: scale(1); }
.aley-player .dusk { position: absolute; inset: 0; background-image: var(--a-dusk); }
.aley-play {
  position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%);
  width: 5rem; height: 5rem; border-radius: 999px; display: grid; place-items: center;
  background: var(--a-whatsapp); color: #fff; font-size: 1.75rem;
}
.aley-player-meta { position: absolute; inset-inline: 0; bottom: 0; padding: 1.5rem; color: var(--a-night-fg); }
.aley-player-dots { margin-top: 1rem; display: flex; gap: 0.5rem; }
.aley-player-dots button {
  flex: 1; height: 4px; border: 0; border-radius: 999px; background: rgba(244,236,220,0.3); padding: 0; cursor: pointer; overflow: hidden;
}
.aley-player-dots button i { display: block; height: 100%; width: 0; background: var(--a-gold); }
.aley-player-dots button.is-on i { animation: aley-dotfill 4s linear forwards; }
.aley-player-dots button.is-done i { width: 100%; }
@keyframes aley-dotfill { to { width: 100%; } }
.aley-tour-float {
  position: absolute; left: -1.5rem; bottom: -1.5rem; border-radius: 1rem; background: var(--a-card);
  padding: 1rem; box-shadow: var(--a-shadow); color: var(--a-fg);
}

/* abroad steps */
.aley-process { position: relative; max-width: 64rem; margin: 4rem auto 0; }
.aley-process-line {
  position: absolute; left: 1.5rem; top: 0; bottom: 0; width: 4px; border-radius: 999px; background: var(--a-muted);
}
@media (min-width: 768px) { .aley-process-line { left: 50%; transform: translateX(-50%); } }
.aley-process-fill {
  position: absolute; left: 1.5rem; top: 0; width: 4px; height: 0; border-radius: 999px;
  background-image: var(--a-grad);
}
@media (min-width: 768px) { .aley-process-fill { left: 50%; transform: translateX(-50%); } }
.aley-step { position: relative; display: flex; align-items: center; margin-bottom: 3rem; }
.aley-step-num {
  position: absolute; left: 1.5rem; z-index: 1; width: 3rem; height: 3rem; transform: translateX(-50%);
  border-radius: 999px; border: 4px solid var(--a-bg); display: grid; place-items: center;
  font-family: var(--a-display); font-weight: 700; background: var(--a-muted); color: var(--a-muted-fg);
  transition: background 0.4s, color 0.4s, transform 0.3s;
}
@media (min-width: 768px) { .aley-step-num { left: 50%; } }
.aley-step.is-on .aley-step-num { background: var(--a-accent); color: var(--a-accent-fg); transform: translateX(-50%) scale(1.05); }
.aley-step-card {
  margin-left: 4rem; border-radius: 1rem; border: 1px solid var(--a-border); background: var(--a-card);
  padding: 1.5rem; box-shadow: var(--a-shadow); transition: border-color 0.4s; width: 100%;
}
@media (min-width: 768px) {
  .aley-step-card { margin-left: 0; width: 44%; }
  .aley-step:nth-child(odd) .aley-step-card { margin-right: auto; }
  .aley-step:nth-child(even) .aley-step-card { margin-left: auto; }
}
.aley-step.is-on .aley-step-card { border-color: var(--a-accent); }
.aley-step-card .tag { font-size: 0.7rem; font-weight: 800; letter-spacing: 0.15em; text-transform: uppercase; color: var(--a-accent); }
.aley-step-card h3 { margin-top: 0.25rem; font-size: 1.5rem; }
.aley-step-card p { margin: 0.5rem 0 0; font-size: 0.875rem; color: var(--a-muted-fg); }

/* agents */
.aley-agents { display: grid; gap: 1.5rem; margin-top: 3rem; }
@media (min-width: 768px) { .aley-agents { grid-template-columns: repeat(3,1fr); } }
.aley-agent {
  border-radius: 1.5rem; background: var(--a-night); color: var(--a-night-fg); padding: 1.75rem;
  box-shadow: var(--a-shadow); transition: transform 0.2s;
}
.aley-agent:hover { transform: translateY(-6px); }
.aley-agent .av {
  width: 4rem; height: 4rem; border-radius: 999px; display: grid; place-items: center;
  background-image: var(--a-grad); font-family: var(--a-display); font-size: 1.5rem; font-weight: 600; color: var(--a-accent-fg);
}
.aley-agent .role { font-size: 0.875rem; color: var(--a-gold); }
.aley-agent-stats { margin-top: 1.25rem; display: grid; grid-template-columns: repeat(3,1fr); gap: 0.5rem; text-align: center; }
.aley-agent-stats div { border-radius: 0.75rem; background: rgba(244,236,220,0.05); padding: 0.5rem; }
.aley-agent-stats .n { font-family: var(--a-display); font-size: 1.25rem; }
.aley-agent-stats .l { font-size: 0.55rem; letter-spacing: 0.1em; text-transform: uppercase; opacity: 0.6; }

/* faq */
.aley-faq { max-width: 56rem; margin: 0 auto; }
.aley-faq-list { margin-top: 2.5rem; border-block: 1px solid var(--a-border); }
.aley-acc { border-bottom: 1px solid var(--a-border); }
.aley-acc:last-child { border-bottom: 0; }
.aley-acc button {
  width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 1rem;
  padding: 1.5rem 0; background: none; border: 0; text-align: left; cursor: pointer; color: inherit;
  font-family: var(--a-display); font-size: 1.25rem; font-weight: 600;
}
.aley-acc .plus {
  width: 2rem; height: 2rem; flex-shrink: 0; border-radius: 999px; display: grid; place-items: center;
  background: var(--a-secondary); transition: transform 0.35s;
}
.aley-acc.is-on .plus { transform: rotate(135deg); }
.aley-acc .panel {
  max-height: 0; overflow: hidden; opacity: 0; color: var(--a-muted-fg);
  transition: max-height 0.4s ease, opacity 0.3s, padding 0.3s; padding: 0;
}
.aley-acc.is-on .panel { max-height: 220px; opacity: 1; padding-bottom: 1.5rem; }

/* end cta */
.aley-end {
  position: relative; overflow: hidden; background: var(--a-night); color: var(--a-night-fg);
  padding: 7rem 0; text-align: center;
}
.aley-end img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0.3; }
.aley-end .fog {
  pointer-events: none; position: absolute; inset: 0;
  background: radial-gradient(ellipse at center, rgba(229,185,90,0.25), transparent 60%);
}
.aley-end .inner { position: relative; max-width: 48rem; margin: 0 auto; padding: 0 1.5rem; }

/* footer + anystack */
.aley-footer { background: var(--a-primary); color: var(--a-primary-fg); padding: 3.5rem 0; }
.aley-footer-grid { display: grid; gap: 2.5rem; }
@media (min-width: 768px) { .aley-footer-grid { grid-template-columns: 2fr 1fr 1fr 1fr; } }
.aley-footer .gold { color: var(--a-gold); font-weight: 700; margin-bottom: 0.75rem; }
.aley-footer .muted { font-size: 0.875rem; opacity: 0.8; margin-bottom: 0.35rem; }
.aley-footer-bottom { margin-top: 2.5rem; font-size: 0.75rem; opacity: 0.6; }
.aley-anystack {
  padding: 3.5rem 1.25rem; text-align: center;
  background: linear-gradient(160deg, #122018, #1a2e24); color: #f4ecdc;
}
.aley-anystack h2 { font-family: var(--a-display); font-size: clamp(1.75rem,4vw,2.5rem); margin: 0 0 0.75rem; }
.aley-anystack p { margin: 0 0 1.5rem; opacity: 0.75; }
.aley-anystack a {
  display: inline-flex; border-radius: 999px; background: var(--a-gold); color: var(--a-night);
  padding: 0.9rem 1.75rem; font-weight: 800;
}
.aley-pad-bottom { padding-bottom: 5rem; }

.aley-head-row {
  display: grid; gap: 2.5rem; align-items: end;
}
@media (min-width: 1024px) { .aley-head-row { grid-template-columns: 1.2fr 1fr; } }

@media (prefers-reduced-motion: reduce) {
  .aley *, .aley *::before, .aley *::after {
    animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important;
  }
  .aley [data-reveal] { opacity: 1; transform: none; }
}

/* ============================================================
   MOTION UPGRADE Â append to aley.css
   ============================================================ */

@property --angle { syntax: '<angle>'; inherits: false; initial-value: 0deg; }

/* ---------- hero: extra life ---------- */
.aley-hero::before {
  content: ""; position: absolute; inset: 0; pointer-events: none; z-index: 2;
  background:
    radial-gradient(2px 2px at 15% 35%, rgba(229,185,90,.9), transparent 60%),
    radial-gradient(2px 2px at 78% 22%, rgba(229,185,90,.75), transparent 60%),
    radial-gradient(1.5px 1.5px at 42% 68%, rgba(200,105,58,.7), transparent 60%),
    radial-gradient(2px 2px at 88% 58%, rgba(229,185,90,.55), transparent 60%),
    radial-gradient(1.5px 1.5px at 28% 88%, rgba(244,236,220,.6), transparent 60%);
  animation: aley-ambient 9s ease-in-out infinite;
}
@keyframes aley-ambient { 0%,100% { opacity: .35; transform: translateY(0); } 50% { opacity: .9; transform: translateY(-6px); } }

/* reveal curtain on hero image load */
.aley-hero-img.is-boot { animation: aley-hero-reveal 1.4s cubic-bezier(.22,1,.36,1) both; }
@keyframes aley-hero-reveal {
  0%   { clip-path: inset(0 0 100% 0); filter: brightness(.4) saturate(.6); }
  60%  { filter: brightness(.85) saturate(1.05); }
  100% { clip-path: inset(0 0 0 0); filter: none; }
}

/* word stagger gets a little more spring */
.aley-hero h1 .word { text-shadow: 0 6px 24px rgba(0,0,0,.35); }

/* scroll hint */
.aley-hero-scroll {
  position: absolute; left: 50%; bottom: 1.75rem; transform: translateX(-50%);
  z-index: 11; display: flex; flex-direction: column; align-items: center; gap: .35rem;
  color: var(--a-night-fg); font-size: .65rem; letter-spacing: .25em; text-transform: uppercase;
  opacity: 0; animation: aley-fade-in 1s ease .9s forwards;
}
@keyframes aley-fade-in { to { opacity: .7; } }
.aley-hero-scroll i {
  width: 1.5px; height: 2.25rem; background: linear-gradient(var(--a-gold), transparent);
  animation: aley-scroll-bounce 1.8s ease-in-out infinite;
  transform-origin: top;
}
@keyframes aley-scroll-bounce {
  0%,100% { transform: scaleY(.35); opacity: .4; }
  50%     { transform: scaleY(1); opacity: 1; }
}

/* FRESH USD stamp */
.aley-hero-stamp {
  position: absolute; top: 6.5rem; right: 1.5rem; z-index: 11;
  display: flex; flex-direction: column; align-items: center; gap: 2px;
  border: 3px double var(--a-gold); border-radius: .6rem;
  padding: .4rem .65rem; color: var(--a-gold);
  background: rgba(26,46,36,.55); backdrop-filter: blur(6px);
  font-family: var(--a-display); font-weight: 700; line-height: 1.05; letter-spacing: .1em;
  transform: rotate(-10deg) scale(0); opacity: 0;
}
.aley-hero-stamp span:nth-child(1) { font-size: .75rem; }
.aley-hero-stamp span:nth-child(2) { font-size: .5rem; letter-spacing: .3em; opacity: .8; }
.aley-hero-stamp span:nth-child(3) { font-size: .55rem; letter-spacing: .18em; }
.aley-hero-stamp.is-in { animation: aley-stamp-in .75s cubic-bezier(.2,1.4,.4,1) forwards; }
@keyframes aley-stamp-in {
  0%   { transform: rotate(-35deg) scale(2.6); opacity: 0; }
  60%  { transform: rotate(-6deg) scale(.94); opacity: 1; }
  100% { transform: rotate(-10deg) scale(1); opacity: 1; }
}
@media (max-width: 767px) { .aley-hero-stamp { top: 5rem; right: .75rem; } }

/* mouse spark */
.aley-spark {
  position: fixed; width: 8px; height: 8px; border-radius: 999px; pointer-events: none; z-index: 9998;
  background: radial-gradient(circle, #fff7d6 0%, var(--a-gold) 55%, transparent 72%);
  transform: translate(-50%,-50%);
  animation: aley-spark-fly .95s ease-out forwards;
}
@keyframes aley-spark-fly {
  0%   { opacity: 1; transform: translate(-50%,-50%) scale(1); }
  100% { opacity: 0; transform: translate(calc(-50% + var(--dx,0px)), calc(-50% + var(--dy,-30px))) scale(.15); }
}

/* ---------- nav: scrollspy + shine ---------- */
.aley-nav-links a.is-active { color: var(--a-accent); }
.aley-nav-links a.is-active::after { width: 100%; }
.aley-nav-wa { position: relative; overflow: hidden; }
.aley-nav-wa::after {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(110deg, transparent 30%, rgba(255,255,255,.45) 50%, transparent 70%);
  background-size: 220% 100%;
  animation: aley-nav-shine 3.6s linear infinite;
}
@keyframes aley-nav-shine { 0% { background-position: 220% 0; } 100% { background-position: -100% 0; } }

/* ---------- eyebrow line draw ---------- */
.aley-eyebrow .line { transform-origin: left; transform: scaleX(0); transition: transform .8s cubic-bezier(.22,1,.36,1) .3s; }
.aley-eyebrow.is-in .line { transform: scaleX(1); }
.aley-eyebrow .n { transition: color .35s; }
.aley-eyebrow.is-in .n { color: var(--a-gold); }

/* ---------- stats: glow + tilt ---------- */
.aley-stat { position: relative; overflow: hidden; transition: transform .3s, box-shadow .3s; }
.aley-stat::after {
  content: ""; position: absolute; inset: 0; pointer-events: none; border-radius: inherit;
  background: linear-gradient(120deg, transparent 40%, rgba(229,185,90,.18) 50%, transparent 60%);
  background-size: 200% 100%;
  opacity: 0; transition: opacity .4s;
  animation: aley-stat-shine 4s linear infinite;
}
@keyframes aley-stat-shine { 0% { background-position: 200% 0; } 100% { background-position: -100% 0; } }
.aley-stat:hover { transform: translateY(-6px) rotate(-1deg); box-shadow: 0 30px 60px -25px rgba(30,46,40,.5); }
.aley-stat:hover::after { opacity: 1; }

/* ---------- budget ring: ping + glow ---------- */
.aley-ping-wrap { position: relative; }
.aley-ping-wrap::before, .aley-ping-wrap::after {
  content: ""; position: absolute; inset: -6%; border-radius: 999px;
  border: 2px solid var(--a-accent); pointer-events: none; opacity: 0;
}
.aley-ping-wrap.is-ping::before { animation: aley-ping 1.6s ease-out; }
.aley-ping-wrap.is-ping::after  { animation: aley-ping 1.6s ease-out .4s; }
@keyframes aley-ping { 0% { transform: scale(.85); opacity: .8; } 100% { transform: scale(1.35); opacity: 0; } }

.aley-ring-wrap .val { filter: drop-shadow(0 0 0 var(--a-accent)); transition: stroke-dashoffset .6s ease, filter .35s; }
.aley-ping-wrap.is-ping .val { filter: drop-shadow(0 0 10px var(--a-accent)); }

/* range slider glow on focus */
.aley-range:focus-visible { outline: none; filter: drop-shadow(0 0 8px rgba(200,105,58,.6)); }

/* budget bar flash */
.aley-bar.is-flash > i,
#aley-pct-bar.is-flash { animation: aley-bar-flash .6s ease; }
@keyframes aley-bar-flash {
  0%   { filter: brightness(1); }
  50%  { filter: brightness(1.5) drop-shadow(0 0 8px var(--a-gold)); }
  100% { filter: brightness(1); }
}

/* mini result pop */
.aley-mini.is-fresh { animation: aley-mini-in .55s cubic-bezier(.22,1,.36,1) backwards; }
.aley-mini.is-fresh:nth-child(1) { animation-delay: 0s; }
.aley-mini.is-fresh:nth-child(2) { animation-delay: .06s; }
.aley-mini.is-fresh:nth-child(3) { animation-delay: .12s; }
.aley-mini.is-fresh:nth-child(4) { animation-delay: .18s; }
.aley-mini.is-fresh:nth-child(5) { animation-delay: .24s; }
.aley-mini.is-fresh:nth-child(6) { animation-delay: .30s; }
@keyframes aley-mini-in {
  from { opacity: 0; transform: translateY(16px) scale(.95); }
  to   { opacity: 1; transform: none; }
}
.aley-mini:hover { transform: translateX(3px) scale(1.02); box-shadow: 0 20px 40px -20px rgba(30,46,40,.45); transition: transform .25s, box-shadow .25s; }
.aley-mini img { transition: transform .35s; }
.aley-mini:hover img { transform: scale(1.08) rotate(-3deg); }

/* ---------- listing cards: pop-in + tilt + tricks ---------- */
.aley-card { will-change: transform; }
#aley-listings .aley-card.is-fresh { animation: aley-card-in .6s cubic-bezier(.22,1,.36,1) backwards; }
#aley-listings .aley-card.is-fresh:nth-child(1) { animation-delay: 0s; }
#aley-listings .aley-card.is-fresh:nth-child(2) { animation-delay: .06s; }
#aley-listings .aley-card.is-fresh:nth-child(3) { animation-delay: .12s; }
#aley-listings .aley-card.is-fresh:nth-child(4) { animation-delay: .18s; }
#aley-listings .aley-card.is-fresh:nth-child(5) { animation-delay: .24s; }
#aley-listings .aley-card.is-fresh:nth-child(6) { animation-delay: .30s; }
#aley-listings .aley-card.is-fresh:nth-child(7) { animation-delay: .36s; }
#aley-listings .aley-card.is-fresh:nth-child(8) { animation-delay: .42s; }
@keyframes aley-card-in {
  from { opacity: 0; transform: translateY(32px) rotate(-2deg) scale(.95); }
  to   { opacity: 1; transform: none; }
}

/* utility chips: entrance + hover already exists */
.aley-card.is-fresh .aley-util { animation: aley-util-in .45s cubic-bezier(.22,1,.36,1) backwards; }
.aley-card.is-fresh .aley-util:nth-child(1) { animation-delay: .28s; }
.aley-card.is-fresh .aley-util:nth-child(2) { animation-delay: .34s; }
.aley-card.is-fresh .aley-util:nth-child(3) { animation-delay: .40s; }
.aley-card.is-fresh .aley-util:nth-child(4) { animation-delay: .46s; }
.aley-card.is-fresh .aley-util:nth-child(5) { animation-delay: .52s; }
@keyframes aley-util-in {
  from { opacity: 0; transform: translateY(8px) rotate(-1.5deg); }
  to   { opacity: 1; transform: none; }
}

/* image scan on hover */
.aley-card-media::after {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(180deg, transparent 40%, rgba(26,46,36,.5) 100%);
  opacity: 0; transition: opacity .35s;
}
.aley-card:hover .aley-card-media::after { opacity: 1; }

/* tag badge pulse */
.aley-card .tag { animation: aley-tag-pulse 2.4s ease-in-out infinite; }
@keyframes aley-tag-pulse {
  0%,100% { box-shadow: 0 0 0 0 rgba(200,105,58,.5); }
  50%     { box-shadow: 0 0 0 8px rgba(200,105,58,0); }
}
.aley-card .tag.plain { animation: none; }

/* favorite button burst */
.aley-card .fav { transition: transform .3s cubic-bezier(.34,1.56,.64,1), background .2s, color .2s; }
.aley-card .fav:hover { transform: scale(1.12) rotate(-6deg); }
.aley-card .fav.is-on { background: var(--a-accent); color: #fff; animation: aley-fav-pop .5s cubic-bezier(.34,1.56,.64,1); }
@keyframes aley-fav-pop {
  0%   { transform: scale(.8) rotate(-30deg); }
  60%  { transform: scale(1.25) rotate(8deg); }
  100% { transform: scale(1) rotate(0); }
}

/* price glow */
.aley-card .price { transition: color .3s, text-shadow .3s; }
.aley-card:hover .price { text-shadow: 0 0 22px rgba(200,105,58,.35); }

/* ask button arrow slide */
.aley-card .ask { position: relative; overflow: hidden; }
.aley-card .ask::after {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(110deg, transparent 30%, rgba(255,255,255,.18) 50%, transparent 70%);
  background-size: 220% 100%; background-position: 220% 0;
  transition: background-position .8s;
}
.aley-card:hover .ask::after { background-position: -100% 0; }

/* ---------- marquee fade edges ---------- */
.aley-marquee-track {
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
          mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
}
.aley-strip-item { transition: transform .3s; }
.aley-strip-item:hover { transform: scale(1.03); }

/* ---------- video tour: live badge + player float ---------- */
.aley-live {
  position: absolute; top: 1rem; left: 1rem; z-index: 3;
  display: inline-flex; align-items: center; gap: .4rem;
  background: rgba(200,105,58,.92); color: #fff; border-radius: 999px;
  padding: .35rem .65rem; font-size: .65rem; font-weight: 800; letter-spacing: .15em; text-transform: uppercase;
  box-shadow: 0 10px 25px -10px rgba(200,105,58,.8);
}
.aley-live i {
  width: 6px; height: 6px; border-radius: 999px; background: #fff;
  animation: aley-live-blink 1.2s ease-in-out infinite;
}
@keyframes aley-live-blink { 0%,100% { opacity: 1; } 50% { opacity: .35; } }

.aley-play { transition: transform .3s; }
.aley-play:hover { transform: translate(-50%,-50%) scale(1.08); }

/* tick pop already exists, add color pulse */
.aley-check .tick.is-on { animation: aley-tick-pop .4s cubic-bezier(.34,1.56,.64,1); }
@keyframes aley-tick-pop {
  0%   { transform: scale(0) rotate(-45deg); }
  60%  { transform: scale(1.25) rotate(8deg); }
  100% { transform: scale(1) rotate(0); }
}

/* ---------- process: icon pulse ---------- */
.aley-step-num { position: absolute; }
.aley-step.is-on .aley-step-num::after {
  content: ""; position: absolute; inset: -6px; border-radius: 999px;
  border: 2px solid var(--a-accent); pointer-events: none;
  animation: aley-step-ping 1.8s ease-out infinite;
}
@keyframes aley-step-ping { 0% { transform: scale(.9); opacity: .55; } 100% { transform: scale(1.4); opacity: 0; } }

/* ---------- agents: avatar glow + hover lift ---------- */
.aley-agent { position: relative; overflow: hidden; }
.aley-agent::after {
  content: ""; position: absolute; inset: 0; pointer-events: none; border-radius: inherit;
  background: radial-gradient(circle at 20% 0%, rgba(229,185,90,.14), transparent 45%);
  opacity: 0; transition: opacity .4s;
}
.aley-agent:hover { transform: translateY(-8px) rotate(-.5deg); }
.aley-agent:hover::after { opacity: 1; }
.aley-agent .av {
  transition: transform .5s cubic-bezier(.34,1.56,.64,1), box-shadow .35s;
}
.aley-agent:hover .av {
  transform: rotate(-8deg) scale(1.08);
  box-shadow: 0 12px 30px -10px rgba(229,185,90,.55);
}
.aley-agent-stats div { transition: background .3s, transform .3s; }
.aley-agent:hover .aley-agent-stats div:nth-child(1) { transition-delay: 0s; }
.aley-agent:hover .aley-agent-stats div:nth-child(2) { transition-delay: .05s; }
.aley-agent:hover .aley-agent-stats div:nth-child(3) { transition-delay: .1s; }
.aley-agent:hover .aley-agent-stats div { transform: translateY(-2px); background: rgba(244,236,220,.1); }

/* ---------- FAQ: panel content slide ---------- */
.aley-acc.is-on .panel p { animation: aley-panel-in .55s cubic-bezier(.22,1,.36,1) both; }
@keyframes aley-panel-in { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }

/* ---------- end section: stamp ---------- */
.aley-end-stamp {
  display: inline-block; border: 2px solid var(--a-gold); border-radius: .4rem;
  padding: .35rem .8rem; margin-bottom: 1.5rem; color: var(--a-gold);
  font-family: var(--a-display); font-weight: 700; font-size: .7rem;
  letter-spacing: .2em; text-transform: uppercase; transform: rotate(-3deg);
}

/* end section sun glow */
.aley-end::before {
  content: ""; position: absolute; top: -20%; left: 50%; transform: translateX(-50%);
  width: 60%; aspect-ratio: 1; pointer-events: none; z-index: 1;
  background: radial-gradient(circle, rgba(229,185,90,.35), transparent 65%);
  animation: aley-end-glow 6s ease-in-out infinite;
}
@keyframes aley-end-glow { 0%,100% { opacity: .4; transform: translateX(-50%) scale(.9); } 50% { opacity: .8; transform: translateX(-50%) scale(1.05); } }

/* ---------- sticky: badge + wobble ---------- */
.aley-sticky-badge {
  position: absolute; top: -4px; right: -4px; min-width: 1.3rem; height: 1.3rem;
  border-radius: 999px; background: var(--a-accent); color: #fff8f0;
  font-size: .7rem; font-weight: 800; display: grid; place-items: center;
  box-shadow: 0 0 0 2px var(--a-bg);
}
.aley-sticky-badge::after {
  content: ""; position: absolute; inset: 0; border-radius: 999px;
  border: 2px solid var(--a-accent); animation: aley-ping 2.2s ease-out infinite;
}
.aley-sticky.is-wobble { animation: aley-wobble .9s ease-in-out; }
@keyframes aley-wobble {
  0%,100% { transform: scale(1) rotate(0); }
  20% { transform: scale(1.1) rotate(-6deg); }
  40% { transform: scale(1.04) rotate(6deg); }
  60% { transform: scale(1.1) rotate(-4deg); }
  80% { transform: scale(1.02) rotate(3deg); }
}

/* ---------- flying chat bubble ---------- */
.aley-plane {
  position: fixed; pointer-events: none; z-index: 9999; font-size: 1.6rem;
  transform: translate(-50%,-50%);
  animation: aley-plane-fly 1.15s cubic-bezier(.2,.8,.3,1) forwards;
}
@keyframes aley-plane-fly {
  0%   { opacity: 1; transform: translate(-50%,-50%) scale(.5) rotate(0); }
  60%  { opacity: 1; transform: translate(calc(-50% + 120px), calc(-50% - 180px)) scale(1.4) rotate(20deg); }
  100% { opacity: 0; transform: translate(calc(-50% + 220px), calc(-50% - 40px)) scale(.3) rotate(60deg); }
}

/* ---------- progress bar leading glow ---------- */
.aley-progress { position: fixed; }
.aley-progress::after {
  content: ""; position: absolute; right: 0; top: 0; bottom: 0; width: 60px;
  background: radial-gradient(circle at right, rgba(255,220,140,1), transparent 70%);
  filter: blur(2px); pointer-events: none;
}

/* ---------- reduced motion guard ---------- */
@media (prefers-reduced-motion: reduce) {
  .aley-spark, .aley-plane, .aley-hero::before,
  .aley-ping-wrap.is-ping::before, .aley-ping-wrap.is-ping::after,
  .aley-step.is-on .aley-step-num::after,
  .aley-sticky-badge::after, .aley-end::before,
  .aley-nav-wa::after, .aley-stat::after { display: none !important; }
  .aley-hero-stamp { opacity: 1; transform: rotate(-10deg) scale(1); }
  .aley-card, .aley-mini { animation: none !important; }
}

/* --- brand shape: soft mountain / large organic radii --- */
.aley-stat,
.aley-panel,
.aley-mini,
.aley-card,
.aley-cover,
.aley-step-card,
.aley-agent,
.aley-acc {
  border-radius: var(--a-radius) !important;
}
.aley-player { border-radius: calc(var(--a-radius) + 0.4rem) !important; }
.aley-btn-accent,
.aley-btn-ghost,
.aley-btn-wa,
.aley-filters button,
.aley-card .ask,
.aley-anystack a {
  border-radius: 999px !important;
}
.aley-sticky { border-radius: 999px !important; }
