.quote-banner-section {
position: relative;
width: 100%;
min-height: 50vh;
display: flex;
align-items: center;
justify-content: center;
overflow: hidden;
padding: 4rem 2rem;
} .quote-banner-background {
position: absolute;
top: -20%;
left: 0;
width: 100%;
height: 140%;
z-index: 1;
will-change: transform;
}
.quote-banner-bg-img {
width: 100%;
height: 100%;
object-fit: cover;
} .quote-banner-content {
position: relative;
z-index: 2;
max-width: 1200px;
margin: 0 auto;
width: 100%;
display: flex;
justify-content: center;
align-items: center;
padding: 2rem;
} .quote-banner-text {
font-family: var(--font-serif, 'Libre Bodoni', serif);
font-size: 2.5rem;
font-weight: 600;
color: var(--color-accent);
line-height: 1.4;
text-align: center;
margin: 0;
font-style: italic;
opacity: 0;
animation: fadeIn 1.5s ease-out forwards;
} @keyframes fadeIn {
from {
opacity: 0;
}
to {
opacity: 1;
}
} @media (max-width: 1024px) {
.quote-banner-section {
min-height: 40vh;
padding: 3rem 1.5rem;
}
.quote-banner-text {
font-size: 2rem;
}
}
@media (max-width: 768px) {
.quote-banner-section {
min-height: 35vh;
padding: 3rem 1rem;
}
.quote-banner-content {
padding: 1.5rem;
}
.quote-banner-text {
font-size: 1.5rem;
line-height: 1.5;
}
}
@media (max-width: 480px) {
.quote-banner-section {
min-height: 30vh;
padding: 2.5rem 1rem;
}
.quote-banner-content {
padding: 1rem;
}
.quote-banner-text {
font-size: 1.25rem;
}
}