@layer components {
.imprezy-hero {
    padding-top: var(--space-10);
}
.hero-layout {
    align-items: center;
}
.hero-copy {
    max-width: 34rem;
}
.hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-3);
    margin-top: var(--space-4);
}
.imprezy-hero-note {
    font-size: var(--text-sm);
    color: var(--color-muted);
    margin-top: var(--space-3);
}
.imprezy-hero-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: var(--space-3);
}
.imprezy-hero-tags span {
    padding: 0.2rem 0.8rem;
    border-radius: var(--radius-pill);
    border: 1px solid rgba(212,183,143,0.8);
    background-color: rgba(255,255,255,0.9);
    font-size: var(--text-xs);
    color: var(--color-text-soft);
}
.hero-media-card {
    display: grid;
    grid-template-rows: auto 1fr;
    gap: var(--space-4);
}
.hero-media-image {
    border-radius: var(--radius-lg);
    overflow: hidden;
    box-shadow: var(--shadow-soft-lg);
}
.hero-media-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.hero-media-title {
    font-size: 1.3rem;
    margin-bottom: var(--space-2);
}
.imprezy-bullets {
    margin-top: var(--space-3);
}
.imprezy-menu-grid {
    align-items: stretch;
}
.imprezy-drinks-card {
    display: flex;
    flex-direction: column;
    gap: var(--space-4);
}
.imprezy-drinks-image {
    border-radius: var(--radius-lg);
    overflow: hidden;
    box-shadow: var(--shadow-soft-lg);
}
.imprezy-drinks-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.imprezy-firm-card {
    display: grid;
    grid-template-rows: auto 1fr;
    gap: var(--space-4);
}
.imprezy-firm-image {
    border-radius: var(--radius-lg);
    overflow: hidden;
    box-shadow: var(--shadow-soft-lg);
}
.imprezy-firm-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.imprezy-gallery-grid {
    align-items: stretch;
}
.imprezy-gallery-image {
    border-radius: var(--radius-lg);
    overflow: hidden;
    box-shadow: var(--shadow-soft-lg);
    margin-bottom: var(--space-3);
}
.imprezy-gallery-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.imprezy-form {
    margin-top: var(--space-3);
}
}
@media (min-width: 900px) {
.imprezy-hero {
    padding-top: var(--space-16);
}
}
