/* Confined to existing concierge listing cards; grid and imagery stay intact. */
#aimarinalWidget .overlay-card {
    border-radius: 40px; border: 1px solid rgba(255,255,255,.16);
    overflow: hidden; box-shadow: none; animation-fill-mode: backwards; container-type: inline-size;
    transition: transform 650ms cubic-bezier(.22,1,.36,1), border-color 650ms ease;
}
#aimarinalWidget .overlay-card-inner { position: relative; min-height: 100%; min-width: 0; grid-template-columns: minmax(0, 1fr); }
#aimarinalWidget .overlay-card-image { position: absolute; inset: 0; width: 100%; height: 100%; }
#aimarinalWidget .overlay-card-image::after {
    inset: 35% 0 0;
    background: linear-gradient(180deg, transparent 0%, rgba(5,14,23,.4) 20%, rgba(5,14,23,.85) 52%, rgba(3,11,19,.98) 100%);
}
#aimarinalWidget .overlay-card-image img { transition: transform 700ms cubic-bezier(.22,1,.36,1); }
#aimarinalWidget .yacht-category {
    position: absolute; top: 20px; left: 20px; z-index: 2; padding: 7px 11px;
    border-radius: 30px; border: 1px solid #fff5; background: #f4efe3cc;
    backdrop-filter: blur(12px); color: #17232c;
    font-size: 8px; line-height: 1.3; letter-spacing: .13em; text-transform: uppercase;
}
#aimarinalWidget .overlay-card-content,
#aimarinalWidget .recommendation-cards .overlay-card-content {
    position: relative; inset: auto; display: flex; flex-direction: column;
    justify-content: flex-end; width: 100%; aspect-ratio: auto; min-height: 390px;
    padding: 120px 20px 24px; gap: 0; color: #f8f5ed;
}
#aimarinalWidget .overlay-card-title,
#aimarinalWidget .recommendation-cards .overlay-card-title {
    position: static; margin: 0 0 4px; font-family: 'Cormorant Garamond', Georgia, serif;
    font-size: clamp(24px, 12cqw, 38px); font-weight: 400; line-height: 1.05;
    text-transform: uppercase; letter-spacing: .01em;
}
#aimarinalWidget .yacht-specification { font-size: 8px; letter-spacing: .12em; line-height: 1.7; color: #eee9dfba; }
#aimarinalWidget .yacht-location-block {
    display: flex; align-items: flex-start; gap: 6px; border-top: 1px solid #ffffff26;
    margin-top: 13px; padding-top: 13px;
}
#aimarinalWidget .yacht-location-block svg,
#aimarinalWidget .yacht-capacity svg {
    width: 13px; height: 13px; flex-shrink: 0; fill: none; stroke: currentColor; stroke-width: 1.2;
}
#aimarinalWidget .yacht-location-block svg { margin-top: 2px; color: #c9c4b6; }
#aimarinalWidget .yacht-location-copy { min-width: 0; }
#aimarinalWidget .yacht-region { font-size: 8px; letter-spacing: .09em; line-height: 1.5; text-transform: uppercase; color: #eeebe4; }
#aimarinalWidget .overlay-card-location,
#aimarinalWidget .recommendation-cards .overlay-card-location {
    display: block; margin-top: 4px; font-size: 9px; line-height: 1.55; color: #c4c8cb; overflow: visible;
}
#aimarinalWidget .yacht-capacities { display: flex; justify-content: space-between; gap: 8px; margin-top: 16px; }
#aimarinalWidget .yacht-capacity-number { display: flex; align-items: center; gap: 5px; font-size: 12px; line-height: 1.4; }
#aimarinalWidget .yacht-capacity-label { margin-top: 4px; font-size: 7px; letter-spacing: .12em; text-transform: uppercase; color: #aeb9bf; }
#aimarinalWidget .yacht-availability { margin-top: 16px; font-size: 8px; letter-spacing: .12em; text-transform: uppercase; color: #c8d2cf; }
#aimarinalWidget .yacht-availability::before { width: 4px; height: 4px; background: #9caaa9; }
#aimarinalWidget .yacht-availability[data-available=true]::before { background: #9bbeb0; }
#aimarinalWidget .yacht-listing-price { min-height: 50px; margin-top: 18px; padding-right: 52px; display: flex; flex-direction: column; justify-content: center; gap: 3px; }
#aimarinalWidget .yacht-price-label { font-size: 7px; text-transform: uppercase; letter-spacing: .14em; color: #bbc2c7; }
#aimarinalWidget .yacht-price-amount { font-size: clamp(13px, 6.8cqw, 22px); line-height: 1.35; font-weight: 500; }
#aimarinalWidget .yacht-price-application { font-size: 12px; line-height: 1.5; }
#aimarinalWidget .overlay-card-footer,
#aimarinalWidget .recommendation-cards .overlay-card-footer { right: 17px; bottom: 24px; }
#aimarinalWidget .overlay-ask-btn,
#aimarinalWidget .recommendation-cards .overlay-ask-btn {
    width: 48px; height: 48px; min-height: 48px; border: 1px solid #ffffff40;
    background: #ffffff08; box-shadow: none; font-size: 24px; transition: background 650ms ease;
}
#aimarinalWidget .overlay-ask-btn::before { display: none; }
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
    #aimarinalWidget .overlay-card:hover { transform: translateY(-4px); border-color: #ffffff55; background: transparent; }
    #aimarinalWidget .overlay-card:hover .overlay-card-image img { transform: scale(1.025); }
    #aimarinalWidget .overlay-card:hover .overlay-ask-btn { background: #ffffff18; box-shadow: none; }
}
@media (max-width: 700px) {
    #aimarinalWidget .overlay-card-content,
    #aimarinalWidget .recommendation-cards .overlay-card-content { min-height: 425px; padding-top: 130px; }
}
