/* Giselle Castro — estilos do site público */
:root {
    --gc-purple: #3d194f;
    --gc-purple-light: #512069;
    --gc-rose: #d8a7b1;
    --gc-rose-dark: #c98a96;
    --gc-text: #4a2c4a;
    --gc-muted: #6c757d;
    --gc-border: #f0e6ef;
}

.site-body-padded {
    padding-top: 5.5rem;
}

.site-navbar {
    background: var(--gc-purple) !important;
}

.site-navbar .nav-link {
    color: rgba(255, 255, 255, 0.9) !important;
    font-weight: 500;
}

.site-navbar .nav-link:hover,
.site-navbar .nav-link.active {
    color: #fff !important;
}

.site-navbar .navbar-brand img {
    max-height: 52px;
    width: auto;
}

.site-brand-text {
    color: #fff;
    font-family: 'Newsreader', Georgia, serif;
    font-size: 1.35rem;
    font-weight: 600;
}

.btn-whatsapp-nav {
    background: #25d366 !important;
    color: #fff !important;
    border-radius: 2rem;
    padding: 0.4rem 1rem !important;
}

.btn-whatsapp-nav:hover {
    background: #1da851 !important;
    color: #fff !important;
}

.site-footer {
    background: var(--gc-purple);
    color: rgba(255, 255, 255, 0.85);
}

.site-footer a:hover {
    color: #fff !important;
}

.page-hero {
    padding: 7rem 0 3rem;
    background: linear-gradient(180deg, #faf5f9 0%, #fff 100%);
}

.page-hero h1 {
    font-family: 'Newsreader', Georgia, serif;
    color: var(--gc-text);
}

.product-card,
.news-card,
.portfolio-card {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    border: 1px solid var(--gc-border);
    border-radius: 10px;
    overflow: hidden;
    background: #fff;
    height: 100%;
}

.product-card:hover,
.news-card:hover,
.portfolio-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 24px rgba(61, 25, 79, 0.12);
}

.product-card img,
.portfolio-card img {
    width: 100%;
    height: 220px;
    object-fit: cover;
}

.btn-gc-primary {
    background-color: var(--gc-purple);
    border: none;
    color: #fff;
    font-weight: 500;
}

.btn-gc-primary:hover {
    background-color: var(--gc-purple-light);
    color: #fff;
}

.btn-gc-rose {
    background-color: var(--gc-rose);
    border: none;
    color: #fff;
}

.btn-gc-rose:hover {
    background-color: var(--gc-rose-dark);
    color: #fff;
}

.cms-content {
    font-family: 'Source Sans 3', system-ui, sans-serif;
    line-height: 1.7;
    color: var(--gc-muted);
}

.cms-content h2,
.cms-content h3 {
    font-family: 'Newsreader', Georgia, serif;
    color: var(--gc-text);
    margin-top: 1.5rem;
}

.contact-card {
    border: 1px solid var(--gc-border);
    border-radius: 12px;
    padding: 2rem;
    background: #fff;
}

.alert-success-gc {
    background: #e8f5e9;
    border-color: #c8e6c9;
    color: #2e7d32;
}

@media (max-width: 576px) {
    .product-card img,
    .portfolio-card img {
        height: 180px;
    }
}
