/* Acabamentos da LP aplicados à Home. Geometria, conteúdo e animações do Caterix preservados. */
.finesse-home [data-cursor], .finesse-home [data-cursor-text],
:is(.finesse-home,.finesse-theme) .section-title h1, :is(.finesse-home,.finesse-theme) .section-title h2 { cursor: auto; }
.finesse-home a, .finesse-home button, .finesse-home a[data-cursor-text] { cursor: pointer; }
.finesse-home .swiper-wrapper { cursor: grab; }
.finesse-home .swiper-wrapper:active { cursor: grabbing; }
.finesse-home .cb-cursor { display: none; }
.finesse-home {
    --primary-color: #191e24;
    --accent-color: #c59864;
    --bg-color: #fcf8f2;
    --secondary-color: #f2e9dd;
    --text-color: #605951;
    --divider-color: #b999723d;
    --dark-divider-color: #ffffff26;
}

/* A ação principal recebe o degradê aprovado e a seta original do tema. */
:is(.finesse-home,.finesse-theme) .btn-default {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    vertical-align: middle;
    max-width: 100%;
    min-height: 56px;
    /* Compensa a altura visual das letras da Bricolage em relação à seta. */
    padding: 17px 64px 13px 24px;
    border: 1px solid #e8bf8c;
    border-radius: 14px;
    background: linear-gradient(110deg,#cb9459 0%,#eac38f 52%,#dcac74 100%);
    color: #191e24;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.35;
    box-shadow: 0 6px 18px #9b6b381a;
}
:is(.finesse-home,.finesse-theme) .btn-default::before {
    right: 8px;
    width: 40px;
    height: 40px;
    background-color: #fff7ec;
    background-image: url('../images/arrow-primary.svg');
}
:is(.finesse-home,.finesse-theme) .btn-default::after {
    background: linear-gradient(110deg,#d5a16a,#f0cfa2 52%,#e5b781);
    border-radius: inherit;
}
:is(.finesse-home,.finesse-theme) .btn-default:hover,
:is(.finesse-home,.finesse-theme) .btn-default.btn-highlighted:hover { color: #191e24; box-shadow: 0 8px 22px #9b6b3826; }
:is(.finesse-home,.finesse-theme) .btn-default:hover::before,
:is(.finesse-home,.finesse-theme) .btn-default.btn-highlighted:hover::before { background-color: #fffaf4; background-image: url('../images/arrow-primary.svg'); }
.finesse-home :is(a,button,input,summary):focus-visible { outline: 3px solid #926434; outline-offset: 4px; }
.finesse-home .dark-section :is(a,button,input):focus-visible { outline-color: #f2c895; }
:is(.finesse-home,.finesse-theme) .section-title .section-sub-title { color: #926434; border-color: #b4825140; }
:is(.finesse-home,.finesse-theme) .dark-section .section-title .section-sub-title { color: #e6bd8e; border-color: #e6bd8e55; }
:is(.finesse-home,.finesse-theme) .dark-section .section-title p { color: #eee5da; }
.finesse-home .hero-counter-item-content h2 { color: #e6bd8e; }
.finesse-home .hero .row { align-items: center; }
.finesse-home .hero-content { margin-right: 18px; }
.finesse-home .hero-unit-preview {
    display: block;
    position: relative;
    width: 50%;
    margin: 0 0 0 auto;
    overflow: hidden;
    border: 1px solid #ffffff55;
    border-radius: 16px;
    box-shadow: 0 20px 50px #0006;
    color: #fff;
}
/* O seletor completo mantém o cartão alinhado mesmo enquanto o WOW aplica a entrada. */
.finesse-home a.hero-unit-preview.wow.fadeInUp {
    align-self: flex-end;
    margin-left: auto;
    margin-right: 0;
}
.finesse-home .hero-freguesia-preview {
    display: block;
    position: relative;
    width: 44%;
    max-width: 330px;
    aspect-ratio: 3 / 2;
    margin: 26px auto 0;
    overflow: hidden;
    padding: 0;
    border: 1px solid #ffffff55;
    border-radius: 16px;
    box-shadow: 0 16px 40px #0006;
    color: #fff;
    line-height: 0;
}
.finesse-home a.hero-freguesia-preview.wow.fadeInUp { align-self: flex-end; }
.finesse-home .hero-freguesia-preview img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; min-height: 100%; object-fit: cover; }
.finesse-home .hero-freguesia-preview span {
    position: absolute;
    top: 10px;
    left: 10px;
    right: 10px;
    width: fit-content;
    padding: 8px 10px;
    border: 1px solid #ffffff66;
    border-radius: 8px;
    background: #111b29df;
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.25;
}
.finesse-home .hero-unit-preview img { display: block; width: 100%; height: 220px; object-fit: cover; }
.finesse-home .hero-unit-preview span {
    position: absolute;
    top: 10px;
    left: 10px;
    right: 10px;
    width: fit-content;
    padding: 8px 10px;
    border: 1px solid #ffffff66;
    border-radius: 8px;
    background: #111b29df;
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.25;
}
.finesse-home .hero-unit-preview:hover span { color: #fff; }
@media (max-width: 1199px) {
    .finesse-home .hero-unit-preview { max-width: 310px; margin: 42px 0 0 auto; }
    .finesse-home a.hero-unit-preview.wow.fadeInUp { margin-left: auto; margin-right: 0; }
    .finesse-home .hero-unit-preview img { height: 150px; }
    .finesse-home .hero-freguesia-preview { width: 320px; margin-top: 24px; }
}
@media (max-width: 767px) {
    .finesse-home .hero-unit-preview { max-width: 240px; margin: 32px 0 0 auto; }
    .finesse-home a.hero-unit-preview.wow.fadeInUp { margin-left: auto; margin-right: 0; }
    .finesse-home .hero-unit-preview img { height: 115px; }
    .finesse-home .hero-unit-preview span { font-size: 12px; }
    .finesse-home .hero-freguesia-preview { width: 260px; margin-top: 22px; }
    .finesse-home .hero-freguesia-preview span { font-size: 12px; }
}
.finesse-home .hero .hero-client-box {
    padding: 12px 16px;
    background: rgba(12, 35, 62, .42);
    border: 1px solid rgba(177, 204, 232, .18);
    border-radius: 10px;
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
}
.finesse-home .hero .hero-client-content { padding: 0; background: transparent; }
.finesse-home .hero .hero-client-content p { margin: 0; color: #fff; line-height: 1.45; }
.finesse-home .hero-counter-list { display: grid; grid-template-columns: 1fr 1fr 1.6fr; gap: 20px 24px; }
.finesse-home .hero-counter-item { width: 100%; gap: 10px; }
.finesse-home .hero-counter-item-content { width: calc(100% - 40px); }
.finesse-home .hero-counter-item::before { right: -12px; }
.finesse-home .hero-units-caption { font-size: 14px; line-height: 1.5; }
.finesse-home .hero-units-caption span { display: block; white-space: nowrap; }

/* A direção aparece junto do depoimento para que a assinatura tenha rosto e contexto. */
.finesse-home .direction-founder-feature { margin-bottom: 55px; }
.finesse-home .direction-founder-photo {
    height: 480px;
    margin: 0 auto;
    overflow: hidden;
    border: 1px solid #b999723d;
    border-radius: 18px;
    background: transparent;
    box-shadow: 0 18px 45px #50351e14;
}
.finesse-home .direction-founder-photo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center bottom;
    mix-blend-mode: normal;
}
.finesse-home .direction-founder-feature .section-title { margin-bottom: 0; }
.finesse-home .direction-founder-feature .section-title p:last-child {
    color: #795431;
    font-family: var(--accent-font);
    font-weight: 700;
}
@media (max-width: 991px) {
    .finesse-home .direction-founder-photo { height: 390px; max-width: 430px; margin-bottom: 35px; }
}
@media (max-width: 575px) {
    .finesse-home .direction-founder-feature { margin-bottom: 35px; }
    .finesse-home .direction-founder-photo { height: 360px; }
}
@media(max-width:767px) {
    .finesse-home .hero-counter-list { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .finesse-home .hero-counter-item-content { width: 100%; }
    .finesse-home .hero-counter-item:last-child { grid-column: 1 / -1; justify-content: center; }
    .finesse-home .hero-counter-item:nth-child(2)::before { display: none; }
}
.finesse-home .readmore-btn { color: #795431; }
.finesse-home .dark-section .readmore-btn { color: #e6bd8e; }

/* Mesmos volumes; materiais e contornos alinhados aos cards da LP. */
.finesse-home #eventos { background: #191e24; color: #eee5da; }
.finesse-home #eventos .section-title h2,
.finesse-home #eventos .service-item-content h2 { color: #fff7ed; }
.finesse-home #eventos .service-item-content p { color: #ddd5cc; }
.finesse-home #eventos .section-title .section-sub-title { color: #e6bd8e; border-color: #e6bd8e55; }
.finesse-home #eventos .service-item,
.finesse-home #eventos .service-item:hover { background: transparent; }
.finesse-home .service-item-image,
.finesse-home .post-item-image { border-radius: 16px; }
.finesse-home .units-intro { padding: 110px 0; background: #fcf8f2; }
.finesse-home .units-intro-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; }
.finesse-home .unit-intro-card { display: flex; flex-direction: column; min-width: 0; overflow: hidden; border: 1px solid #b999723d; border-radius: 18px; background: #fffaf4; box-shadow: 0 12px 32px #50351e0f; }
.finesse-home .unit-intro-card > img { width: 100%; height: 310px; object-fit: cover; object-position: center; }
.finesse-home .unit-intro-card:nth-child(2) > img { object-position: center 58%; }
.finesse-home .page-gallery-box .photo-gallery figure { aspect-ratio: 4 / 3; overflow: hidden; }
.finesse-home .page-gallery-box .photo-gallery img { width: 100%; height: 100%; aspect-ratio: auto; object-fit: cover; }
.finesse-home .unit-intro-card-content { display: flex; flex: 1; flex-direction: column; padding: 30px; }
.finesse-home .unit-intro-location { margin-bottom: 10px; color: #795431; font-size: 14px; font-weight: 700; }
.finesse-home .unit-intro-card h3 { margin: 0 0 14px; color: #191e24; font-size: clamp(26px, 3vw, 36px); line-height: 1.2; }
.finesse-home .unit-intro-card p { margin: 0; color: #514b45; font-size: 17px; line-height: 1.55; }
.finesse-home .unit-intro-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 18px; margin-top: auto; padding-top: 28px; }
.finesse-home .unit-intro-more { color: #795431; font-weight: 700; text-decoration: underline; text-underline-offset: 4px; }
.finesse-home .unit-intro-more:hover { color: #191e24; }
@media (max-width: 767px) {
    .finesse-home .units-intro { padding: 70px 0; }
    .finesse-home .units-intro-grid { grid-template-columns: 1fr; gap: 22px; }
    .finesse-home .unit-intro-card > img { height: 230px; }
    .finesse-home .unit-intro-card-content { padding: 22px; }
}
.finesse-home .pricing-item {
    background: #fffaf4;
    border: 1px solid #b999723d;
    border-radius: 16px;
    box-shadow: 0 10px 28px #50351e08;
}
.finesse-home .pricing-item-header { border-color: #b999723d; }
.finesse-home #unidades-detalhes .pricing-item { display: flex; flex-direction: column; padding: 28px; }
.finesse-home #unidades-detalhes .pricing-item-body { display: flex; flex-direction: column; flex: 1; }
.finesse-home #unidades-detalhes .pricing-item-btn { margin-top: auto; padding-top: 28px; }
.finesse-home #unidades-detalhes .pricing-item-btn .btn-default { width: 100%; min-height: 56px; padding: 15px 48px 13px 12px; font-size: 15px; line-height: 1.3; text-align: center; white-space: nowrap; }
.finesse-home #unidades-detalhes .pricing-item-btn .btn-default::before { width: 34px; height: 34px; right: 8px; }
.finesse-home #unidades-detalhes .pricing-item-list ul { display: grid; grid-template-columns: minmax(0,1fr); gap: 14px; }
.finesse-home #unidades-detalhes .pricing-item-list ul li { width: 100%; }
@media(max-width:359px) {
    .finesse-home #unidades-detalhes .pricing-item .pricing-item-btn .btn-default { padding-right: 30px; padding-left: 6px; }
    .finesse-home #unidades-detalhes .pricing-item .pricing-item-btn .btn-default::before { width: 24px; height: 24px; right: 4px; background-size: 12px; }
}
@media(max-width:767px) {
    .finesse-home #unidades-detalhes .pricing-item { padding: 18px; }
    .finesse-home #unidades-detalhes .pricing-item-btn .btn-default { font-size: 14px; padding-left: 8px; padding-right: 44px; }
    .finesse-home #unidades-detalhes .pricing-item-btn .btn-default::before { width: 30px; height: 30px; right: 6px; }
}
.finesse-home .pricing-item-list ul li::before { color: #926434; }
.finesse-home .pricing-item:hover .pricing-item-header .icon-box img { filter: none; }
.finesse-home .testimonials-item { background: #fffaf4; border: 1px solid #b4825133; border-radius: 16px; box-shadow: 0 10px 28px #50351e08; }
.finesse-home .testimonials-item-rating i { color: #926434; }
.finesse-home .testimonials-client-box { background: #f2e5d3; border: 1px solid #c7a57a66; }
.finesse-home .faq-accordion .accordion-item { border-color: #b999723d; border-radius: 12px; background: #fffaf4; }
.finesse-home .faq-accordion .accordion-button { color: #191e24; background: #fffaf4; }
.finesse-home .faq-accordion .accordion-button:not(.collapsed) { background: #f2e9dd; color: #191e24; box-shadow: none; }
.finesse-home .faq-accordion .accordion-body { color: #605951; }
.finesse-home #faq .faq-accordion .accordion-item { background: #f8f1e7; border: 1px solid #d7b98e; }
.finesse-home #faq .faq-accordion .accordion-header .accordion-button,
.finesse-home #faq .faq-accordion .accordion-button:not(.collapsed) { background: #f8f1e7; color: #191e24; }
.finesse-home #faq .faq-accordion .accordion-button::before,
.finesse-home #faq .faq-accordion .accordion-button.collapsed::before { color: #e6bd8e; }
.finesse-home #faq .faq-accordion .accordion-body { background: #fffaf4; border-color: #d7b98e; }
.finesse-home #faq .faq-accordion .accordion-body p { color: #3f3932; }
.finesse-home .faqs-cta-box { background: #191e24; border: 1px solid #dfbd9340; border-radius: 16px; }
.finesse-home .faqs-cta-item .icon-box,
.finesse-home .faqs-cta-item:hover .icon-box { background: transparent; color: #25d366; font-size: 38px; }
.finesse-home .faqs-cta-item .icon-box::before { display: none; }
.finesse-home .faqs-cta-item-content h3 a { color: #fff7ed; }
.finesse-home .faqs-cta-item-content p { color: #e5dace; }

/* Rodapé: organização original com contraste e detalhes da LP. */
.finesse-home .main-footer { background: #12171c; border-top: 1px solid #bd92555c; }
.finesse-home .footer-links h2,
.finesse-home .footer-newsletter-form h3 { color: #fff7ed; }
.finesse-home .about-footer-content p,
.finesse-home .footer-links ul li,
.finesse-home .footer-copyright-text p { color: #d0c8bf; }
.finesse-home .footer-links ul { list-style: none; padding-left: 0; }
.finesse-home .footer-links ul li a:hover { color: #e6bd8e; }
.finesse-home .footer-social-links ul li a { background: transparent; border-color: #ffffff33; color: #fff7ed; }
.finesse-home .footer-social-links ul li a:hover { color: #191e24; background: #e6bd8e; border-color: #e6bd8e; }
.finesse-home .footer-newsletter-form .form-group { border: 1px solid #ffffff40; border-radius: 10px; background: #ffffff05; }
.finesse-home .footer-newsletter-form .form-control::placeholder { color: #d0c8bf; opacity: 1; }
.finesse-home .footer-newsletter-form .newsletter-btn { background: #ddb17e; border-radius: 7px; }
.finesse-home .footer-newsletter-form .newsletter-btn img { filter: brightness(0); }
.finesse-home .footer-copyright { border-top-color: #ffffff26; }

/* WhatsApp: verde oficial, logo branca e formato circular aprovado. */
.finesse-home .wedding-footer { padding: 72px 0 0; }
.finesse-home .wedding-footer .footer-logo { display: inline-block; margin-bottom: 24px; }
.finesse-home .wedding-footer .footer-brand-copy { max-width: 290px; font-size: 16px; margin-bottom: 26px; }
.finesse-home .wedding-footer h3 { color: #fff; font-size: 20px; margin-bottom: 20px; }
.finesse-home .wedding-footer p, .finesse-home .wedding-footer address { color: #ccc5be; font-size: 14px; line-height: 1.7; }
.finesse-home .wedding-footer-links { list-style: none; padding: 0; margin: 0; }
.finesse-home .wedding-footer-links li { margin-bottom: 10px; }
.finesse-home .wedding-footer-links a { color: #ccc5be; font-size: 14px; }
.finesse-home .wedding-footer a:hover { color: #ddb792; }
.finesse-home .wedding-footer .footer-hours-heading { margin-top: 25px; font-size: 17px; margin-bottom: 12px; }
.finesse-home .footer-unit h4 { color: #e0bc9b; font-size: 15px; font-weight: 500; margin-bottom: 7px; }
.finesse-home .footer-unit + .footer-unit { margin-top: 20px; }
.finesse-home .wedding-contact-links { display: flex; flex-wrap: wrap; gap: 10px 24px; margin-top: 24px; }
.finesse-home .wedding-contact-links a { font-size: 14px; color: #eee7e1; overflow-wrap: anywhere; }
.finesse-home .wedding-contact-links i { margin-right: 6px; color: #ddb792; }
.finesse-home .wedding-footer .footer-social-links { margin-top: 0; }
.finesse-home .wedding-footer .footer-social-links ul { display: flex; gap: 10px; }
.finesse-home .wedding-footer .footer-social-links ul li a { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 50%; border: 1px solid #ffffff33; background: transparent; color: #fff; }
.finesse-home .wedding-copyright { display: flex; justify-content: space-between; gap: 20px; margin-top: 50px; padding: 25px 0; border-top: 1px solid #ffffff26; }
.finesse-home .wedding-copyright p, .finesse-home .wedding-copyright a { font-size: 12px; margin: 0; color: #ccc5be; }
.finesse-home .wedding-copyright a i { font-size: 10px; margin-left: 5px; }
@media(max-width:767px) {
    .finesse-home .wedding-footer { padding-top: 52px; }
    .finesse-home .wedding-copyright { flex-direction: column; gap: 14px; padding-bottom: 88px; }
    .finesse-home .wedding-footer .footer-useful-heading,
    .finesse-home .wedding-footer-links { display: none; }
    .finesse-home .wedding-footer .footer-hours-heading { margin-top: 0; }
}
.finesse-home .whatsapp-fab { width: 48px; height: 48px; font-size: 28px; background: #25d366; color: #fff; border-radius: 50%; box-shadow: 0 5px 20px #0003; }
.finesse-home .whatsapp-fab:hover { background: #20bd5b; color: #fff; }
.finesse-home .satisfy-client-image.add-more { background: #25d366; color: #fff; }
.finesse-home .satisfy-client-image.add-more i { color: #fff; }
.finesse-home .home-promo-whatsapp { position: fixed; z-index: 995; right: 28px; bottom: 28px; width: 360px; max-width: calc(100vw - 32px); padding: 28px; border: 1px solid #d3b38b; border-radius: 20px; background: #fffaf3; color: #191e24; box-shadow: 0 16px 60px #0003; opacity: 0; visibility: hidden; transform: translateX(24px); transition: opacity .3s, transform .3s, visibility .3s; }
.finesse-home .home-promo-whatsapp.visible { opacity: 1; visibility: visible; transform: translateX(0); }
.finesse-home .home-promo-close { position: absolute; top: 10px; right: 10px; width: 36px; height: 36px; border: 0; border-radius: 50%; background: #eee5d9; color: #191e24; font-size: 22px; line-height: 1; }
.finesse-home .home-promo-badge { color: #856035; font-size: 13px; font-weight: 700; }
.finesse-home .home-promo-whatsapp h3 { margin: 14px 0; color: #191e24; font-size: 24px; line-height: 1.2; }
.finesse-home .home-promo-whatsapp p { margin: 0 0 18px; color: #62574c; font-size: 16px; line-height: 1.5; }
.finesse-home .home-promo-cta { display: flex; align-items: center; justify-content: center; gap: 12px; min-height: 54px; padding: 12px 18px; border-radius: 12px; background: linear-gradient(110deg,#cb9459,#eac38f 52%,#dcac74); color: #191e24; font-weight: 700; }
.finesse-home .home-promo-cta i { color: #fff; font-size: 27px; }
.finesse-home .home-promo-cta:hover { color: #191e24; filter: brightness(1.04); }
.finesse-home .home-promo-open { position: fixed; z-index: 996; right: 24px; bottom: 24px; display: grid; place-items: center; width: 56px; height: 56px; border: 0; border-radius: 50%; background: #25d366; color: #fff; font-size: 29px; box-shadow: 0 8px 24px #0004; transition: transform .2s; }
.finesse-home .home-promo-open:hover { color: #fff; transform: translateY(-3px); }
.finesse-home .home-promo-open.hidden { display: none; }
.finesse-home .intro-video-image.intro-video-fixed { background-size: cover; background-repeat: no-repeat; }
.finesse-home .intro-video-fixed figure { display:block; margin:0; height:clamp(340px,42vw,650px); position:relative; }
.finesse-home .intro-video-fixed figure img { display:block; width:100%; height:100%; object-fit:cover; object-position:center bottom; }
@media (min-width: 1025px) {
    .finesse-home .intro-video-image.intro-video-fixed { background-position: center 82%; background-attachment: fixed; }
    .finesse-home .intro-video-image.intro-video-fixed img { opacity: 0; }
}
@media (max-width: 1024px) {
    .finesse-home .intro-video-image.intro-video-fixed { background-image: none !important; background-attachment: scroll; }
    .finesse-home .intro-video-image.intro-video-fixed img { object-position: center 72%; }
}
.finesse-home .home-contact-section { position: relative; overflow: hidden; padding: 110px 0; border-top: 1px solid #ffffff26; background: #191e24; color: #fff7ed; }
.finesse-home .home-contact-section::before { content: ''; position: absolute; right: -12%; bottom: -46%; width: 620px; height: 620px; border: 1px solid #e6bd8e1f; border-radius: 50%; box-shadow: 0 0 0 64px #e6bd8e08, 0 0 0 128px #e6bd8e05; pointer-events: none; }
.finesse-home .home-contact-section .container { position: relative; z-index: 1; }
.finesse-home .home-contact-copy { max-width: 535px; }
.finesse-home .home-contact-section .section-title { margin-bottom: 30px; }
.finesse-home .home-contact-section .section-title h2 { color: #fff7ed; }
.finesse-home .home-contact-section .section-title p { max-width: 520px; }
.finesse-home .home-contact-points { display: grid; gap: 13px; margin: 0 0 28px; padding: 0; list-style: none; }
.finesse-home .home-contact-points li { color: #eae2d8; font-size: 17px; line-height: 1.5; }
.finesse-home .home-contact-points li::before { content: '✓'; display: inline-block; width: 24px; color: #e6bd8e; font-size: 20px; font-weight: 700; }
.finesse-home .home-contact-direct { display: inline-flex; align-items: center; gap: 10px; padding-bottom: 5px; border-bottom: 1px solid #e6bd8e70; color: #e6bd8e; font-family: 'Bricolage Grotesque', sans-serif; font-size: 15px; font-weight: 700; }
.finesse-home .home-contact-direct:hover { color: #fff7ed; }
.finesse-home .home-contact-direct i { font-size: 21px; }
.finesse-home .home-contact-form-card { display: grid; gap: 19px; padding: 36px; border: 1px solid #d2b08882; border-radius: 18px; background: #fffaf4; color: #191e24; box-shadow: 0 22px 55px #06090e42; }
.finesse-home .home-form-heading { display: flex; align-items: center; gap: 14px; }
.finesse-home .home-form-heading h3 { margin: 0; color: #191e24; font-size: 28px; line-height: 1.15; }
.finesse-home .home-form-heading p { margin: 5px 0 0; color: #62594f; font-size: 16px; line-height: 1.45; }
.finesse-home .home-form-wa-icon { display: grid; place-items: center; width: 48px; height: 48px; flex: 0 0 48px; border-radius: 50%; background: #1f9d62; color: #fff; font-size: 24px; }
.finesse-home .home-contact-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px 14px; }
.finesse-home .home-contact-field { display: flex; flex-direction: column; min-width: 0; }
.finesse-home .home-contact-field-full { grid-column: 1 / -1; }
.finesse-home .home-contact-field label { margin-bottom: 7px; color: #39342e; font-size: 14px; font-weight: 700; line-height: 1.35; }
.finesse-home .home-contact-field label span { color: #8a8176; font-weight: 400; }
.finesse-home .home-contact-field :is(input, select) { width: 100%; min-width: 0; min-height: 50px; padding: 12px 13px; border: 1px solid #cdb99f; border-radius: 9px; background: #fcf8f2; color: #191e24; font: 400 16px/1.4 'Source Sans 3', sans-serif; }
.finesse-home .home-contact-field input[type='date'] { color-scheme: light; }
.finesse-home .home-contact-field small { margin-top: 5px; color: #786f65; font-size: 12px; line-height: 1.4; }
.finesse-home .home-contact-consent { display: flex !important; align-items: flex-start; gap: 10px; margin: 0 !important; color: #62594f !important; font-size: 13px !important; font-weight: 400 !important; line-height: 1.45 !important; }
.finesse-home .home-contact-consent input { width: 18px !important; min-width: 18px; min-height: 18px !important; margin: 1px 0 0 !important; padding: 0 !important; accent-color: #926434; }
.finesse-home .home-contact-privacy { margin: 8px 0 0; color: #83796d; font-size: 12px; line-height: 1.45; }
.finesse-home .home-contact-privacy a { color: #795431; text-decoration: underline; }
.finesse-home .home-contact-submit { display: flex; align-items: center; justify-content: center; gap: 10px; width: 100%; margin-top: 2px; border-color: #1f9d62 !important; background: #1f9d62 !important; color: #fff !important; }
.finesse-home .home-contact-submit::after { background: #187c4d !important; }
.finesse-home .home-contact-submit::before { background-color: #fff !important; }
.finesse-home .home-contact-submit:hover { color: #fff !important; background: #1f9d62 !important; }
.finesse-home .home-contact-submit i { font-size: 20px; }
.finesse-home .home-contact-note { margin: 10px 0 0; color: #786f65; font-size: 12px; line-height: 1.5; text-align: center; }
.finesse-home .home-contact-status { padding: 15px 16px; border: 1px solid #1f9d6266; border-radius: 10px; background: #eaf7ef; color: #195536; font-size: 14px; line-height: 1.5; }
.finesse-home .home-contact-status p { margin: 0 0 8px; color: #195536; }
.finesse-home .home-contact-status a { color: #17613b; font-weight: 700; }
/* Mantém os rótulos do menu da home em uma linha no cabeçalho desktop. */
@media (min-width: 1200px) {
    .finesse-home .main-menu .nav-menu-wrapper { margin: 0 8px; }
    .finesse-home .main-menu .nav-menu-wrapper > ul { display: flex; flex-wrap: nowrap; }
    .finesse-home .main-menu ul li { margin: 0 3px; }
    .finesse-home .main-menu ul li a { padding: 12px 6px !important; font-size: 15px; white-space: nowrap; }
    .finesse-home .main-menu ul li.submenu > a:after { margin-left: 5px; }
    .finesse-home .main-menu ul ul li a { padding: 8px 20px !important; }
    .finesse-home .main-menu ul ul li a:hover,
    .finesse-home .main-menu ul ul li a:focus { padding: 8px 20px 8px 23px !important; }
    .finesse-home .header-btn .btn-default { white-space: nowrap; font-size: 14px; padding-right: 58px; padding-left: 17px; }
}
@media(max-width:767px) {
    :is(.finesse-home,.finesse-theme) .btn-default { font-size: 15px; min-height: 54px; padding: 16px 60px 12px 20px; border-radius: 12px; }
    :is(.finesse-home,.finesse-theme) .btn-default::before { width: 38px; height: 38px; right: 7px; }
    .finesse-home .whatsapp-fab { width: 46px; height: 46px; font-size: 27px; }
    .finesse-home .home-promo-whatsapp { right: 16px; bottom: 16px; width: calc(100vw - 32px); padding: 24px; }
    .finesse-home .home-promo-open { right: 16px; bottom: 16px; width: 52px; height: 52px; font-size: 27px; }
    .finesse-home .footer-copyright { padding-bottom: 88px; }
    .finesse-home .home-contact-section { padding: 70px 0; }
    .finesse-home .home-contact-section::before { right: -74%; bottom: -34%; width: 440px; height: 440px; }
    .finesse-home .home-contact-form-card { padding: 25px 22px; border-radius: 15px; }
    .finesse-home .home-form-heading { align-items: flex-start; }
    .finesse-home .home-form-heading h3 { font-size: 25px; }
    .finesse-home .home-contact-form-grid { grid-template-columns: 1fr; gap: 14px; }
    .finesse-home .home-contact-field-full { grid-column: auto; }
    .finesse-home .home-contact-points li { font-size: 16px; }
}
@media(prefers-reduced-motion:reduce) {
    :is(.finesse-home,.finesse-theme) .btn-default, :is(.finesse-home,.finesse-theme) .btn-default::before, :is(.finesse-home,.finesse-theme) .btn-default::after, .finesse-home .whatsapp-fab { transition: none; }
}
