.gc-form, .gc-apartment-card, .gc-offer, .gc-testimonial, .gc-faqs details {
    background: #fff;
    border: 1px solid rgba(11, 11, 11, .1);
    border-radius: 8px;
    box-shadow: 0 18px 50px rgba(11, 11, 11, .08);
}
.gc-form { padding: clamp(1rem, 3vw, 2rem); }
.gc-form-grid { display: grid; gap: 1rem; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }
.gc-form label { color: #0B0B0B; display: grid; font-weight: 700; gap: .4rem; }
.gc-form input, .gc-form textarea, .gc-form select {
    border: 1px solid rgba(11, 11, 11, .18);
    border-radius: 6px;
    font: inherit;
    padding: .85rem 1rem;
    width: 100%;
}
.gc-span { grid-column: 1 / -1; }
.gc-button, .gc-whatsapp-button {
    align-items: center;
    background: #C8B27A;
    border: 0;
    border-radius: 6px;
    color: #0B0B0B;
    cursor: pointer;
    display: inline-flex;
    font-weight: 800;
    justify-content: center;
    margin-top: 1rem;
    padding: .9rem 1.2rem;
    text-decoration: none;
}
.gc-hp { left: -9999px; position: absolute; }
.gc-form-message { font-weight: 700; margin: .85rem 0 0; }
.gc-apartment-grid, .gc-gallery-grid, .gc-offer-grid {
    display: grid;
    gap: 1.25rem;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}
.gc-apartment-card { overflow: hidden; transition: box-shadow .2s ease, transform .2s ease; }
.gc-apartment-card:hover { box-shadow: 0 24px 70px rgba(11, 11, 11, .12); transform: translateY(-4px); }
.gc-apartment-image { aspect-ratio: 4 / 3; background: #F8F6F1; display: block; overflow: hidden; position: relative; }
.gc-apartment-image img, .gc-gallery-grid img { height: 100%; object-fit: cover; width: 100%; }
.gc-price-badge {
    background: rgba(11, 11, 11, .86);
    border: 1px solid rgba(200, 178, 122, .42);
    border-radius: 999px;
    color: #C8B27A;
    font-size: .82rem;
    font-weight: 850;
    padding: .45rem .75rem;
    position: absolute;
    right: .85rem;
    top: .85rem;
}
.gc-card-body { padding: 1.25rem; }
.gc-card-body h3 { margin: .4rem 0 .55rem; }
.gc-card-body a { color: inherit; text-decoration: none; }
.gc-status {
    color: #C8B27A;
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.gc-card-meta { align-items: center; display: flex; gap: .75rem; justify-content: space-between; }
.gc-card-actions { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: 1rem; }
.gc-mini-button {
    background: #0B0B0B;
    border-radius: 6px;
    color: #fff !important;
    font-size: .86rem;
    font-weight: 850;
    padding: .55rem .75rem;
    text-decoration: none;
}
.gc-mini-button-alt { background: #C8B27A; color: #0B0B0B !important; }
.gc-card-amenities { display: flex; flex-wrap: wrap; gap: .35rem; margin: .75rem 0; }
.gc-card-amenities span, .gc-availability-row span {
    background: #F8F6F1;
    border-radius: 999px;
    font-size: .8rem;
    font-weight: 800;
    padding: .25rem .55rem;
}
.gc-gallery-grid a { aspect-ratio: 1 / 1; border-radius: 8px; overflow: hidden; }
.gc-gallery-placeholder {
    align-items: center;
    aspect-ratio: 1 / 1;
    background: #1E1E1E;
    border-radius: 8px;
    color: #fff;
    display: flex;
    font-weight: 800;
    justify-content: center;
    min-height: 180px;
}
.gc-availability-list { display: grid; gap: .6rem; }
.gc-availability-row {
    align-items: center;
    border: 1px solid rgba(11, 11, 11, .12);
    border-left: 5px solid #C8B27A;
    border-radius: 8px;
    display: flex;
    justify-content: space-between;
    padding: .75rem;
}
.gc-reserved { border-left-color: #C8B27A; }
.gc-blocked { border-left-color: #0B0B0B; }
.gc-attractions-grid, .gc-google-reviews {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}
.gc-attraction, .gc-google-reviews article {
    background: #fff;
    border: 1px solid rgba(11, 11, 11, .1);
    border-radius: 8px;
    padding: 1.2rem;
}
.gc-testimonials { display: grid; gap: 1rem; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); }
.gc-testimonial { margin: 0; padding: 1.4rem; }
.gc-testimonial blockquote { margin: 0; }
.gc-testimonial figcaption { font-weight: 800; margin-top: 1rem; }
.gc-testimonial span { color: #6f6a60; display: block; font-weight: 500; }
.gc-offer { padding: 1.4rem; }
.gc-offer span { color: #C8B27A; font-weight: 800; text-transform: uppercase; }
.gc-text-link { color: #0B0B0B; font-weight: 800; }
.gc-faqs { display: grid; gap: .75rem; }
.gc-faqs details { padding: 1rem 1.2rem; }
.gc-faqs summary { cursor: pointer; font-weight: 800; }
.gc-whatsapp-button { background: #25d366; color: #0B0B0B; }
@media (max-width: 720px) {
    .gc-card-meta { align-items: flex-start; flex-direction: column; }
}
