/* V19 — Landing luxury refinement. Loaded only by index.html. */
body {
    --font-heading: 'Playfair Display', Georgia, serif;
    --font-body: 'Manrope', Arial, sans-serif;
    --luxury-ink: #211d1c;
    --luxury-rose: #9f7169;
    --luxury-rose-deep: #7f554f;
    --luxury-blush: #efe0dd;
    --luxury-cream: #fffaf8;
    font-family: var(--font-body);
    color: var(--luxury-ink);
    letter-spacing: -0.012em;
}

body .title-primary,
body .title-secondary,
body .hero-title,
body .sobre-card-title,
body .results-title,
body .depoimentos-title,
body .faq-title,
body .final-cta-title,
body .brand-experience-card h3 {
    font-family: var(--font-heading);
    letter-spacing: -0.035em;
}

body p,
body a,
body button,
body span,
body input,
body select,
body textarea {
    font-family: var(--font-body);
}

.header .nav-link,
.header .btn,
.hero .text-small,
.eyebrow,
.premium-kicker,
.brand-experience-kicker {
    letter-spacing: .13em;
    font-weight: 600;
}

.hero-title,
.desktop-polish-title,
.hero-copy h1 {
    font-family: var(--font-heading) !important;
    font-weight: 600 !important;
    letter-spacing: -0.045em !important;
    line-height: .98 !important;
    text-wrap: balance;
}

.hero-copy p,
.hero-subtitle,
.sobre-card-text,
.servico-desc,
.results-subtitle,
.depoimentos-subtitle,
.faq-answer,
.final-cta-subtitle {
    line-height: 1.72;
}

/* Brand experience: public brand only. No employee/team showcase. */
.brand-experience-section {
    position: relative;
    overflow: hidden;
    padding: clamp(76px, 8vw, 128px) 0;
    background:
        radial-gradient(circle at 8% 18%, rgba(214, 178, 171, .20), transparent 28%),
        radial-gradient(circle at 90% 78%, rgba(240, 220, 216, .52), transparent 34%),
        linear-gradient(180deg, #fffaf8 0%, #fbf4f2 100%);
}

.brand-experience-section::before {
    content: '';
    position: absolute;
    inset: 26px;
    border: 1px solid rgba(138, 99, 91, .07);
    border-radius: 34px;
    pointer-events: none;
}

.brand-experience-shell {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: .88fr 1.12fr;
    gap: clamp(44px, 6vw, 92px);
    align-items: center;
    max-width: 1180px;
    margin: 0 auto;
}

.brand-experience-intro {
    max-width: 510px;
}

.brand-experience-kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 18px;
    color: var(--luxury-rose-deep);
    font-size: .68rem;
}

.brand-experience-kicker::before {
    content: '';
    width: 34px;
    height: 1px;
    background: currentColor;
}

.brand-experience-intro .title-secondary {
    margin: 0;
    font-size: clamp(2.5rem, 4vw, 4.65rem);
    line-height: 1.02;
    font-weight: 600;
}

.brand-experience-intro .title-secondary em {
    color: var(--luxury-rose-deep);
    font-weight: 500;
}

.brand-experience-intro > p {
    max-width: 470px;
    margin: 24px 0 28px;
    color: #6f5e59;
    font-size: .96rem;
    line-height: 1.85;
}

.brand-experience-link {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    color: var(--luxury-rose-deep);
    font-size: .82rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .09em;
    text-decoration: none;
    border-bottom: 1px solid rgba(127, 85, 79, .35);
    padding-bottom: 5px;
}

.brand-experience-link span {
    transition: transform .25s ease;
}
.brand-experience-link:hover span { transform: translateX(5px); }

.brand-experience-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.brand-experience-card {
    min-height: 290px;
    padding: 30px 24px 26px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    border: 1px solid rgba(138, 99, 91, .11);
    border-radius: 26px;
    background: rgba(255,255,255,.70);
    box-shadow: 0 18px 45px rgba(74, 48, 43, .06);
    backdrop-filter: blur(10px);
    transition: transform .4s cubic-bezier(.2,.75,.25,1), box-shadow .4s ease, background .4s ease;
}

.brand-experience-card:nth-child(2) {
    transform: translateY(26px);
    background: linear-gradient(155deg, rgba(159,113,105,.96), rgba(127,85,79,.96));
    color: #fff;
}

.brand-experience-card:nth-child(2) p,
.brand-experience-card:nth-child(2) .brand-experience-number { color: rgba(255,255,255,.78); }

.brand-experience-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 28px 65px rgba(74, 48, 43, .12);
}
.brand-experience-card:nth-child(2):hover { transform: translateY(18px); }

.brand-experience-number {
    margin-bottom: auto;
    color: #ad8179;
    font-size: .69rem;
    font-weight: 700;
    letter-spacing: .14em;
}

.brand-experience-card h3 {
    margin: 0 0 12px;
    font-size: 1.55rem;
    line-height: 1.08;
    font-weight: 600;
}

.brand-experience-card p {
    margin: 0;
    color: #74635e;
    font-size: .78rem;
    line-height: 1.72;
}

/* Stronger editorial hierarchy throughout the landing. */
.servicos-section .title-secondary,
.results-section .title-secondary,
.depoimentos-section .title-secondary,
.faq-section .title-secondary {
    font-size: clamp(2.3rem, 3.2vw, 3.9rem);
    line-height: 1.02;
}

.servico-card {
    border-color: rgba(138,99,91,.11) !important;
    box-shadow: 0 16px 42px rgba(71,47,42,.065) !important;
}

.servico-title {
    font-family: var(--font-heading) !important;
    font-size: 1.35rem !important;
    font-weight: 600 !important;
    line-height: 1.08 !important;
}

.servico-price { font-weight: 700; letter-spacing: -.02em; }

.results-section,
.depoimentos-section,
.faq-section {
    position: relative;
}

.depoimento-card {
    border: 1px solid rgba(138,99,91,.10) !important;
    box-shadow: 0 18px 48px rgba(71,47,42,.065) !important;
}

.faq-item {
    border-color: rgba(138,99,91,.11) !important;
}

.final-cta-section,
.final-cta {
    background: linear-gradient(135deg, #9e7169 0%, #815850 100%) !important;
}

.footer-brand-copy,
.footer p,
.footer a {
    letter-spacing: -.005em;
}

@media (min-width: 1024px) {
    .hero-copy { max-width: 570px; }
    .hero-copy .hero-title,
    .hero-copy h1 { font-size: clamp(3.7rem, 5vw, 5.8rem) !important; }
    .hero-subtitle { max-width: 520px; font-size: 1rem; }
    .about-section, .sobre-section { padding-top: 105px; padding-bottom: 105px; }
}

@media (max-width: 800px) {
    body { letter-spacing: -.008em; }
    .brand-experience-section { padding: 64px 0 72px; }
    .brand-experience-section::before { inset: 12px; border-radius: 24px; }
    .brand-experience-shell { grid-template-columns: 1fr; gap: 30px; }
    .brand-experience-intro { text-align: center; margin: 0 auto; }
    .brand-experience-kicker { justify-content: center; }
    .brand-experience-intro .title-secondary { font-size: 2.55rem !important; }
    .brand-experience-intro > p { margin: 18px auto 24px; font-size: .86rem; line-height: 1.75; }
    .brand-experience-grid { grid-template-columns: 1fr; gap: 11px; }
    .brand-experience-card,
    .brand-experience-card:nth-child(2) {
        min-height: 0;
        padding: 21px 20px;
        transform: none;
        text-align: left;
    }
    .brand-experience-card:hover,
    .brand-experience-card:nth-child(2):hover { transform: none; }
    .brand-experience-number { margin-bottom: 24px; }
    .brand-experience-card h3 { font-size: 1.5rem; }
    .brand-experience-card p { font-size: .8rem; }
    .hero-copy .hero-title,
    .hero-copy h1 { font-size: clamp(2.3rem, 11vw, 3.2rem) !important; line-height: 1.02 !important; }
    .servicos-section .title-secondary,
    .results-section .title-secondary,
    .depoimentos-section .title-secondary,
    .faq-section .title-secondary { font-size: 2.15rem !important; }
}
